From 41d0a925de9ca1ecf182c87a9e7617801caf44c3 Mon Sep 17 00:00:00 2001 From: LeeJu Date: Sat, 23 May 2026 09:20:42 +0800 Subject: [PATCH] add ensp14ing --- ensp14ing/README.md | 21 + ensp14ing/ensp14/.clang-format | 64 + .../ensp14/.hvigor/cache/file-cache.json | 1 + ensp14ing/ensp14/.hvigor/cache/meta.json | 1 + .../ensp14/.hvigor/cache/task-cache.json | 1 + .../.hvigor/dependencyMap/dependencyMap.json5 | 1 + .../dependencyMap/entry/oh-package.json5 | 1 + .../.hvigor/dependencyMap/oh-package.json5 | 1 + .../.hvigor/outputs/build-logs/build.log | 574 ++ .../.hvigor/outputs/logs/details/details.json | 44 + .../.hvigor/outputs/sync/fileCache.json | 1 + .../ensp14/.hvigor/outputs/sync/output.json | 168 + .../report/report-202511231558490680.json | 8746 +++++++++++++++++ ensp14ing/ensp14/.hvigor/report/report.json | 141 + .../.idea/.deveco/module/entry.cache.json | 22 + .../ensp14/.idea/.deveco/project.cache.json | 16 + ensp14ing/ensp14/.idea/.gitignore | 3 + ensp14ing/ensp14/.idea/misc.xml | 6 + ensp14ing/ensp14/.idea/modules.xml | 9 + ensp14ing/ensp14/.idea/modules/ensp14.iml | 34 + .../ensp14/.idea/modules/entry/entry.iml | 8 + .../default/defaultSettingConfig_Default.json | 25 + .../.idea/previewer/previewConfigV2.json | 37 + .../tablet/tabletSettingConfig_Tablet.json | 25 + .../tablet/tabletSettingConfig_rd.json | 53 + ensp14ing/ensp14/.idea/vcs.xml | 6 + ensp14ing/ensp14/AppScope/app.json5 | 10 + .../resources/base/element/string.json | 8 + .../resources/base/media/app_icon.png | Bin 0 -> 2041 bytes ensp14ing/ensp14/build-profile.json5 | 36 + .../entry/.preview/PreviewBuildParam.json | 1 + .../.default/ArkTS/ArkTSLinter_output.json | 1715 ++++ .../.preview/cache/.default/ResourceTable.txt | 18 + .../entry/src/main/ets/classes/Datas.protoBin | Bin 0 -> 95070 bytes .../entry/src/main/ets/classes/Datas.ts | 220 + .../main/ets/classes/OtherSimObjects.protoBin | Bin 0 -> 228453 bytes .../src/main/ets/classes/OtherSimObjects.ts | 409 + .../src/main/ets/classes/SimBase.protoBin | Bin 0 -> 24056 bytes .../entry/src/main/ets/classes/SimBase.ts | 46 + .../src/main/ets/classes/TopMenu.protoBin | Bin 0 -> 9868 bytes .../entry/src/main/ets/classes/TopMenu.ts | 16 + .../ets/components/ButtomMenuBar.protoBin | Bin 0 -> 108623 bytes .../src/main/ets/components/ButtomMenuBar.ts | 263 + .../src/main/ets/components/Dialog.protoBin | Bin 0 -> 686431 bytes .../entry/src/main/ets/components/Dialog.ts | 1513 +++ .../ets/components/MiddleContent.protoBin | Bin 0 -> 597189 bytes .../src/main/ets/components/MiddleContent.ts | 1313 +++ .../src/main/ets/components/Table.protoBin | Bin 0 -> 222603 bytes .../entry/src/main/ets/components/Table.ts | 498 + .../main/ets/components/TopMenuBar.protoBin | Bin 0 -> 231877 bytes .../src/main/ets/components/TopMenuBar.ts | 531 + .../ets/entryability/EntryAbility.protoBin | Bin 0 -> 25551 bytes .../src/main/ets/entryability/EntryAbility.ts | 36 + .../src/main/ets/functions/functions.protoBin | Bin 0 -> 20247 bytes .../entry/src/main/ets/functions/functions.ts | 59 + .../entry/src/main/ets/pages/Index.protoBin | Bin 0 -> 117897 bytes .../entry/src/main/ets/pages/Index.ts | 311 + .../.preview/cache/.default/filesInfo.txt | 12 + .../.preview/cache/.default/modules.cache | 13 + .../cache/.default/npmEntries.protoBin | Bin 0 -> 75 bytes .../.preview/cache/.default/npmEntries.txt | 0 .../entry/.preview/cache/.default/preview.ets | 0 .../.preview/cache/.default/sourceMaps.json | 122 + .../entry/.preview/config/buildConfig.json | 1 + .../esmodule/compileInfo.json | 1 + .../debug/ArkTS/ArkTSLinter_output.json | 1680 ++++ .../esmodule/debug/ResourceTable.txt | 18 + ...s-5efecddd1c9b6f1542c3aebf923313e6.msgpack | 850 ++ ...s-007a285b5f8c66d211e5520be968fd62.msgpack | 854 ++ ...s-71348831137b26caeedca752aaca8e64.msgpack | 4952 ++++++++++ ...s-7db146a6e9d97499c40c7b70ed22a64f.msgpack | Bin 0 -> 14722 bytes ...s-215e635e82c73e4fa549984d7db0de5b.msgpack | 960 ++ ...s-4daec6e061a3eb5a292e370b71741fd4.msgpack | 4219 ++++++++ ...s-ce90a14154a20ebde9a582b2856f4bb9.msgpack | 1865 ++++ ...s-8becb04d499e0e671eaf15d10e215471.msgpack | Bin 0 -> 13009 bytes ...s-3fe5e53fe6343621127cbafe07d701dd.msgpack | 1684 ++++ ...s-1aee16f3970fdc246c6e874cecdca34a.msgpack | Bin 0 -> 4982 bytes ...s-b99966be60652c5bba2b18a253f20632.msgpack | 1720 ++++ ...s-c3985e4dd1692731c2379e8e5c36923d.msgpack | Bin 0 -> 19403 bytes .../other/pkgName2SourceRoots.msgpack | 1 + .../compiler.cache/plugins/plugins.msgpack | Bin 0 -> 10080 bytes .../esmodule/debug/dep_info.json | 1 + .../entry/src/main/ets/classes/Datas.protoBin | Bin 0 -> 95074 bytes .../debug/entry/src/main/ets/classes/Datas.ts | 220 + .../main/ets/classes/OtherSimObjects.protoBin | Bin 0 -> 228453 bytes .../src/main/ets/classes/OtherSimObjects.ts | 409 + .../src/main/ets/classes/SimBase.protoBin | Bin 0 -> 24056 bytes .../entry/src/main/ets/classes/SimBase.ts | 46 + .../src/main/ets/classes/TopMenu.protoBin | Bin 0 -> 9872 bytes .../entry/src/main/ets/classes/TopMenu.ts | 16 + .../ets/components/ButtomMenuBar.protoBin | Bin 0 -> 108627 bytes .../src/main/ets/components/ButtomMenuBar.ts | 263 + .../src/main/ets/components/Dialog.protoBin | Bin 0 -> 686435 bytes .../entry/src/main/ets/components/Dialog.ts | 1513 +++ .../ets/components/MiddleContent.protoBin | Bin 0 -> 597189 bytes .../src/main/ets/components/MiddleContent.ts | 1313 +++ .../src/main/ets/components/Table.protoBin | Bin 0 -> 222607 bytes .../entry/src/main/ets/components/Table.ts | 498 + .../main/ets/components/TopMenuBar.protoBin | Bin 0 -> 231883 bytes .../src/main/ets/components/TopMenuBar.ts | 531 + .../ets/entryability/EntryAbility.protoBin | Bin 0 -> 25555 bytes .../src/main/ets/entryability/EntryAbility.ts | 36 + .../src/main/ets/functions/functions.protoBin | Bin 0 -> 20251 bytes .../entry/src/main/ets/functions/functions.ts | 59 + .../entry/src/main/ets/pages/Index.protoBin | Bin 0 -> 117897 bytes .../debug/entry/src/main/ets/pages/Index.ts | 311 + .../esmodule/debug/filesInfo.txt | 12 + .../esmodule/debug/modules.cache | 13 + .../esmodule/debug/npmEntries.protoBin | Bin 0 -> 75 bytes .../esmodule/debug/npmEntries.txt | 0 .../esmodule/debug/preview.ets | 0 .../esmodule/debug/sourceMaps.json | 122 + .../esmodule/debug/watch_logs.cache.json | 1 + .../generated/r/default/ResourceTable.h | 41 + .../assets/default/ets/modules.abc | Bin 0 -> 578160 bytes .../assets/default/ets/sourceMaps.map | 122 + .../intermediates/loader/default/loader.json | 23 + .../merge_profile/default/module.json | 55 + .../process_profile/default/module.json | 58 + .../res/default/ResourceTable.txt | 18 + .../default/app_compiled/12827611826178336895 | Bin 0 -> 110 bytes .../default/app_compiled/897159066498233754 | Bin 0 -> 160 bytes .../res/default/ids_map/id_defined.json | 95 + .../intermediates/res/default/module.json | 1 + .../module_compiled/10580750280879350585 | Bin 0 -> 172 bytes .../module_compiled/10646380563940590597 | Bin 0 -> 178 bytes .../module_compiled/11213201727408963998 | Bin 0 -> 178 bytes .../module_compiled/12591516603000343113 | Bin 0 -> 365 bytes .../module_compiled/13346930149730069584 | Bin 0 -> 172 bytes .../module_compiled/14776038471789566508 | Bin 0 -> 160 bytes .../module_compiled/14800250669292906942 | Bin 0 -> 181 bytes .../module_compiled/17802602488540885802 | Bin 0 -> 175 bytes .../module_compiled/17821087964157098802 | Bin 0 -> 163 bytes .../module_compiled/1873027210265857131 | Bin 0 -> 413 bytes .../module_compiled/5334465202777172314 | Bin 0 -> 166 bytes .../module_compiled/7615957933737073028 | Bin 0 -> 124 bytes .../module_compiled/7813705467349408760 | Bin 0 -> 169 bytes .../module_compiled/9598306224695187522 | Bin 0 -> 187 bytes .../module_compiled/9691874802280713449 | Bin 0 -> 185 bytes .../module_compiled/9730315321514649119 | Bin 0 -> 419 bytes .../intermediates/res/default/resources.index | Bin 0 -> 2106 bytes .../resources/base/profile/main_pages.json | 1 + .../router_map/default/loader-router-map.json | 1 + .../router_map/default/temp-router-map.json | 1 + ensp14ing/ensp14/entry/build-profile.json5 | 31 + ensp14ing/ensp14/entry/hvigorfile.ts | 6 + ensp14ing/ensp14/entry/obfuscation-rules.txt | 18 + ensp14ing/ensp14/entry/oh-package.json5 | 10 + .../entry/src/main/ets/classes/Datas.ets | 248 + .../src/main/ets/classes/OtherSimObjects.ets | 442 + .../entry/src/main/ets/classes/SimBase.ets | 58 + .../entry/src/main/ets/classes/TopMenu.ets | 19 + .../src/main/ets/components/ButtomMenuBar.ets | 91 + .../entry/src/main/ets/components/Dialog.ets | 477 + .../src/main/ets/components/MiddleContent.ets | 332 + .../entry/src/main/ets/components/Table.ets | 91 + .../src/main/ets/components/TopMenuBar.ets | 196 + .../main/ets/entryability/EntryAbility.ets | 43 + .../src/main/ets/functions/functions.ets | 62 + .../ensp14/entry/src/main/ets/pages/Index.ets | 49 + ensp14ing/ensp14/entry/src/main/module.json5 | 37 + .../main/resources/base/element/color.json | 8 + .../main/resources/base/element/string.json | 16 + .../src/main/resources/base/media/icon.png | Bin 0 -> 2041 bytes .../main/resources/base/media/jiaohuanji.png | Bin 0 -> 5044 bytes .../resources/base/media/jiaohuanji_tm.png | Bin 0 -> 3666 bytes .../main/resources/base/media/jixianqi.png | Bin 0 -> 10309 bytes .../main/resources/base/media/jixianqi_tm.png | Bin 0 -> 9634 bytes .../src/main/resources/base/media/luyouqi.png | Bin 0 -> 12094 bytes .../main/resources/base/media/luyouqi_tm.png | Bin 0 -> 11198 bytes .../src/main/resources/base/media/packet.png | Bin 0 -> 26968 bytes .../main/resources/base/media/startIcon.png | Bin 0 -> 4351 bytes .../src/main/resources/base/media/zhuji.png | Bin 0 -> 19448 bytes .../main/resources/base/media/zhuji_tm.png | Bin 0 -> 16883 bytes .../resources/base/profile/main_pages.json | 5 + .../main/resources/en_US/element/string.json | 16 + .../main/resources/zh_CN/element/string.json | 16 + .../src/ohosTest/ets/test/Ability.test.ets | 35 + .../entry/src/ohosTest/ets/test/List.test.ets | 5 + .../ohosTest/ets/testability/TestAbility.ets | 50 + .../ohosTest/ets/testability/pages/Index.ets | 17 + .../ets/testrunner/OpenHarmonyTestRunner.ets | 47 + .../ensp14/entry/src/ohosTest/module.json5 | 37 + .../resources/base/element/color.json | 8 + .../resources/base/element/string.json | 16 + .../ohosTest/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../resources/base/profile/test_pages.json | 5 + ensp14ing/ensp14/entry/src/test/List.test.ets | 5 + .../ensp14/entry/src/test/LocalUnit.test.ets | 33 + ensp14ing/ensp14/hvigor/hvigor-config.json5 | 17 + ensp14ing/ensp14/hvigorfile.ts | 6 + ensp14ing/ensp14/local.properties | 9 + ensp14ing/ensp14/oh-package-lock.json5 | 20 + ensp14ing/ensp14/oh-package.json5 | 13 + .../oh_modules/@ohos/hypium/LICENSE | 177 + .../oh_modules/@ohos/hypium/README.md | 219 + .../oh_modules/@ohos/hypium/index.d.ts | 140 + .../oh_modules/@ohos/hypium/index.ets | 79 + .../oh_modules/@ohos/hypium/index.js | 78 + .../oh_modules/@ohos/hypium/oh-package.json5 | 11 + .../@ohos/hypium/src/main/Constant.js | 49 + .../oh_modules/@ohos/hypium/src/main/core.js | 159 + .../oh_modules/@ohos/hypium/src/main/event.js | 94 + .../@ohos/hypium/src/main/interface.js | 51 + .../src/main/module/assert/ExpectExtend.js | 85 + .../src/main/module/assert/assertClose.js | 41 + .../src/main/module/assert/assertContain.js | 35 + .../src/main/module/assert/assertFail.js | 23 + .../src/main/module/assert/assertFalse.js | 23 + .../main/module/assert/assertInstanceOf.js | 29 + .../src/main/module/assert/assertLarger.js | 23 + .../main/module/assert/assertLargerOrEqual.js | 23 + .../src/main/module/assert/assertLess.js | 23 + .../main/module/assert/assertLessOrEqual.js | 23 + .../src/main/module/assert/assertNaN.js | 23 + .../main/module/assert/assertNegUnlimited.js | 23 + .../src/main/module/assert/assertNull.js | 23 + .../main/module/assert/assertPosUnlimited.js | 23 + .../module/assert/assertPromiseIsPending.js | 42 + .../module/assert/assertPromiseIsRejected.js | 40 + .../assert/assertPromiseIsRejectedWith.js | 57 + .../assertPromiseIsRejectedWithError.js | 78 + .../module/assert/assertPromiseIsResolved.js | 45 + .../assert/assertPromiseIsResolvedWith.js | 59 + .../main/module/assert/assertThrowError.js | 44 + .../src/main/module/assert/assertUndefined.js | 23 + .../module/assert/deepEquals/DeepTypeUtils.js | 138 + .../assert/deepEquals/assertDeepEquals.js | 315 + .../src/main/module/assert/isPromiseLike.js | 32 + .../src/main/module/config/DataDriver.js | 116 + .../hypium/src/main/module/config/Filter.js | 81 + .../src/main/module/config/configService.js | 293 + .../main/module/coverage/coverageCollect.js | 31 + .../hypium/src/main/module/kit/SysTestKit.js | 88 + .../src/main/module/mock/ArgumentMatchers.js | 122 + .../src/main/module/mock/ExtendInterface.js | 57 + .../hypium/src/main/module/mock/MockKit.js | 256 + .../src/main/module/mock/VerificationMode.js | 49 + .../hypium/src/main/module/report/OhReport.js | 152 + .../src/main/module/report/ReportExtend.js | 137 + .../@ohos/hypium/src/main/service.js | 996 ++ ensp14ing/ensp14/oh_modules/.ohpm/lock.json5 | 42 + ensp14ing/figs/evolution.png | Bin 0 -> 137500 bytes ensp14ing/figs/overall.png | Bin 0 -> 319475 bytes ensp14ing/figs/relation.png | Bin 0 -> 105784 bytes 245 files changed, 49108 insertions(+) create mode 100644 ensp14ing/README.md create mode 100644 ensp14ing/ensp14/.clang-format create mode 100644 ensp14ing/ensp14/.hvigor/cache/file-cache.json create mode 100644 ensp14ing/ensp14/.hvigor/cache/meta.json create mode 100644 ensp14ing/ensp14/.hvigor/cache/task-cache.json create mode 100644 ensp14ing/ensp14/.hvigor/dependencyMap/dependencyMap.json5 create mode 100644 ensp14ing/ensp14/.hvigor/dependencyMap/entry/oh-package.json5 create mode 100644 ensp14ing/ensp14/.hvigor/dependencyMap/oh-package.json5 create mode 100644 ensp14ing/ensp14/.hvigor/outputs/build-logs/build.log create mode 100644 ensp14ing/ensp14/.hvigor/outputs/logs/details/details.json create mode 100644 ensp14ing/ensp14/.hvigor/outputs/sync/fileCache.json create mode 100644 ensp14ing/ensp14/.hvigor/outputs/sync/output.json create mode 100644 ensp14ing/ensp14/.hvigor/report/report-202511231558490680.json create mode 100644 ensp14ing/ensp14/.hvigor/report/report.json create mode 100644 ensp14ing/ensp14/.idea/.deveco/module/entry.cache.json create mode 100644 ensp14ing/ensp14/.idea/.deveco/project.cache.json create mode 100644 ensp14ing/ensp14/.idea/.gitignore create mode 100644 ensp14ing/ensp14/.idea/misc.xml create mode 100644 ensp14ing/ensp14/.idea/modules.xml create mode 100644 ensp14ing/ensp14/.idea/modules/ensp14.iml create mode 100644 ensp14ing/ensp14/.idea/modules/entry/entry.iml create mode 100644 ensp14ing/ensp14/.idea/previewer/default/defaultSettingConfig_Default.json create mode 100644 ensp14ing/ensp14/.idea/previewer/previewConfigV2.json create mode 100644 ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_Tablet.json create mode 100644 ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_rd.json create mode 100644 ensp14ing/ensp14/.idea/vcs.xml create mode 100644 ensp14ing/ensp14/AppScope/app.json5 create mode 100644 ensp14ing/ensp14/AppScope/resources/base/element/string.json create mode 100644 ensp14ing/ensp14/AppScope/resources/base/media/app_icon.png create mode 100644 ensp14ing/ensp14/build-profile.json5 create mode 100644 ensp14ing/ensp14/entry/.preview/PreviewBuildParam.json create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/ArkTS/ArkTSLinter_output.json create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/ResourceTable.txt create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.ts create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/filesInfo.txt create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/modules.cache create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.txt create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/preview.ets create mode 100644 ensp14ing/ensp14/entry/.preview/cache/.default/sourceMaps.json create mode 100644 ensp14ing/ensp14/entry/.preview/config/buildConfig.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/compileInfo.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ArkTS/ArkTSLinter_output.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ResourceTable.txt create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-ButtomMenuBar.ets-5efecddd1c9b6f1542c3aebf923313e6.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Datas.ets-007a285b5f8c66d211e5520be968fd62.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Dialog.ets-71348831137b26caeedca752aaca8e64.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-EntryAbility.ets-7db146a6e9d97499c40c7b70ed22a64f.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Index.ets-215e635e82c73e4fa549984d7db0de5b.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-MiddleContent.ets-4daec6e061a3eb5a292e370b71741fd4.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-OtherSimObjects.ets-ce90a14154a20ebde9a582b2856f4bb9.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-SimBase.ets-8becb04d499e0e671eaf15d10e215471.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Table.ets-3fe5e53fe6343621127cbafe07d701dd.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenu.ets-1aee16f3970fdc246c6e874cecdca34a.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenuBar.ets-b99966be60652c5bba2b18a253f20632.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-functions.ets-c3985e4dd1692731c2379e8e5c36923d.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/dep_info.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/filesInfo.txt create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/modules.cache create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.protoBin create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.txt create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/preview.ets create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/sourceMaps.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/watch_logs.cache.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/generated/r/default/ResourceTable.h create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/modules.abc create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/sourceMaps.map create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/loader/default/loader.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/merge_profile/default/module.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/process_profile/default/module.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ResourceTable.txt create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/12827611826178336895 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/897159066498233754 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ids_map/id_defined.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10580750280879350585 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10646380563940590597 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/11213201727408963998 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/12591516603000343113 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/13346930149730069584 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14776038471789566508 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14800250669292906942 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17802602488540885802 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17821087964157098802 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/1873027210265857131 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/5334465202777172314 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7615957933737073028 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7813705467349408760 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9598306224695187522 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9691874802280713449 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9730315321514649119 create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources.index create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources/base/profile/main_pages.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/loader-router-map.json create mode 100644 ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/temp-router-map.json create mode 100644 ensp14ing/ensp14/entry/build-profile.json5 create mode 100644 ensp14ing/ensp14/entry/hvigorfile.ts create mode 100644 ensp14ing/ensp14/entry/obfuscation-rules.txt create mode 100644 ensp14ing/ensp14/entry/oh-package.json5 create mode 100644 ensp14ing/ensp14/entry/src/main/ets/classes/Datas.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/classes/SimBase.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/classes/TopMenu.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/components/ButtomMenuBar.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/components/Dialog.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/components/MiddleContent.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/components/Table.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/components/TopMenuBar.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/entryability/EntryAbility.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/functions/functions.ets create mode 100644 ensp14ing/ensp14/entry/src/main/ets/pages/Index.ets create mode 100644 ensp14ing/ensp14/entry/src/main/module.json5 create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/element/color.json create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/element/string.json create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/icon.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji_tm.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi_tm.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi_tm.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/packet.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/startIcon.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji_tm.png create mode 100644 ensp14ing/ensp14/entry/src/main/resources/base/profile/main_pages.json create mode 100644 ensp14ing/ensp14/entry/src/main/resources/en_US/element/string.json create mode 100644 ensp14ing/ensp14/entry/src/main/resources/zh_CN/element/string.json create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/ets/test/Ability.test.ets create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/ets/test/List.test.ets create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/ets/testability/TestAbility.ets create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/ets/testability/pages/Index.ets create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/ets/testrunner/OpenHarmonyTestRunner.ets create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/module.json5 create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/color.json create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/string.json create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/resources/base/media/icon.png create mode 100644 ensp14ing/ensp14/entry/src/ohosTest/resources/base/profile/test_pages.json create mode 100644 ensp14ing/ensp14/entry/src/test/List.test.ets create mode 100644 ensp14ing/ensp14/entry/src/test/LocalUnit.test.ets create mode 100644 ensp14ing/ensp14/hvigor/hvigor-config.json5 create mode 100644 ensp14ing/ensp14/hvigorfile.ts create mode 100644 ensp14ing/ensp14/local.properties create mode 100644 ensp14ing/ensp14/oh-package-lock.json5 create mode 100644 ensp14ing/ensp14/oh-package.json5 create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/LICENSE create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/README.md create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.d.ts create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.ets create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/oh-package.json5 create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/Constant.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/core.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/event.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/interface.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/Filter.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/configService.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/service.js create mode 100644 ensp14ing/ensp14/oh_modules/.ohpm/lock.json5 create mode 100644 ensp14ing/figs/evolution.png create mode 100644 ensp14ing/figs/overall.png create mode 100644 ensp14ing/figs/relation.png diff --git a/ensp14ing/README.md b/ensp14ing/README.md new file mode 100644 index 0000000..de12341 --- /dev/null +++ b/ensp14ing/README.md @@ -0,0 +1,21 @@ +# ensping +### 1、项目说明 +总体思路:网络协议仿真项目开发的总体思路如图1.1示意,网络协议仿真项目拟实现一个仿真系统,具体功能描述:(1)能够仿真主机和路由器上各种数据包的产生、分解(将一个数据包拆分成多个数据包)、封包(将地址等信息与数据包封装成一个新的数据包)、解包(将接收的数据包解析并提取出地址等相关信息)等数据传输过程,进而理解一个数据包是如何经网络由一台主机传输到另一台主机。(2)能够支持用户交互地进行各层(应用层、传输层、网络层、链路层、物理层)封包与解包操作,并由系统自动判断用户封包与解包操作的正确性。(3)能够完整地实现由一台主机经五层协议变换发送一个完整数据,再经由多个路由器三层协议正向变换与逆向变换,最终到达目的主机以及目的主机经五层协议逆向变换正确解析出完整数据的全过程。 + 图1.1 项目开发的总体思路图 + + + +### 2、开发环境说明 +(1)系统版本:OpenHarmony 4.0 Release +(2)SDK版本:API 10 +(3)Model类型:Stage +(4)DevEco Studio版本:Deveco Studio 4.0 release +(5)硬件环境:Unionpi Whale、RK3566开发板 +(6)预览器参数:(1)DeviceType:default;(2)Resolution:560-1280;(3)DPI:240;其余参数自定。 +### 3、项目主要函数调用关系图与项目输出界面演进图 + 图3.1 项目主要函数调用关系图 + + + + 图3.2 项目输出界面演进图 + \ No newline at end of file diff --git a/ensp14ing/ensp14/.clang-format b/ensp14ing/ensp14/.clang-format new file mode 100644 index 0000000..48439ed --- /dev/null +++ b/ensp14ing/ensp14/.clang-format @@ -0,0 +1,64 @@ +Language: Cpp +# BasedOnStyle: LLVM +ColumnLimit: 120 +SortIncludes: CaseSensitive +TabWidth: 4 +IndentWidth: 4 +UseTab: Never +AccessModifierOffset: -4 +ContinuationIndentWidth: 4 +IndentCaseBlocks: false +IndentCaseLabels: false +IndentGotoLabels: true +IndentWrappedFunctionNames: false +SortUsingDeclarations: false +NamespaceIndentation: None +SpaceAfterCStyleCast: false +SpaceAfterLogicalNot: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +SpaceBeforeCaseColon: false +SpaceBeforeCpp11BracedList: false +SpaceBeforeCtorInitializerColon: true +SpaceBeforeInheritanceColon: true +SpaceBeforeRangeBasedForLoopColon: true +SpaceBeforeSquareBrackets: false +SpaceInEmptyBlock: false +SpaceInEmptyParentheses: false +SpacesInAngles: false +SpacesInCStyleCastParentheses: false +SpacesInConditionalStatement: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +AlignTrailingComments: true +AlignAfterOpenBracket: true +AllowShortCaseLabelsOnASingleLine: false +AllowShortEnumsOnASingleLine: true +AllowShortFunctionsOnASingleLine: All +AllowShortIfStatementsOnASingleLine: Never +AllowShortLambdasOnASingleLine: All +AllowShortLoopsOnASingleLine: false +AlwaysBreakTemplateDeclarations: MultiLine +BinPackArguments: true +BinPackParameters: true +BreakBeforeTernaryOperators: true +BreakConstructorInitializers: BeforeColon +BreakInheritanceList: BeforeColon +BreakStringLiterals: true +InsertBraces: false +IndentExternBlock: NoIndent +BreakBeforeBraces: Custom +BraceWrapping: + AfterCaseLabel: false + AfterClass: false + AfterControlStatement: Never + AfterEnum: false + AfterFunction: false + AfterNamespace: false + AfterStruct: false + AfterUnion: false + AfterExternBlock: false + BeforeCatch: false + BeforeElse: false +ReflowComments: true +MaxEmptyLinesToKeep: 2 \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/cache/file-cache.json b/ensp14ing/ensp14/.hvigor/cache/file-cache.json new file mode 100644 index 0000000..1757418 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/cache/file-cache.json @@ -0,0 +1 @@ +{"E:\\jiaocai\\ensp14\\AppScope\\app.json5":{"hashValue":"4e6ab81348750bd2f28dfb71c4231eb0","name":"app.json5","path":"E:\\jiaocai\\ensp14\\AppScope\\app.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":220,"lastModifiedTime":1723111052000}},"E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5":{"hashValue":"3625656890da25e9c5177799618179f3","name":"module.json5","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":942,"lastModifiedTime":1723111054000}},"E:\\jiaocai\\ensp14\\build-profile.json5":{"hashValue":"9af39273ae7f41f679da5542c5e79cc2","name":"build-profile.json5","path":"E:\\jiaocai\\ensp14\\build-profile.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":623,"lastModifiedTime":1723111530000}},"E:\\jiaocai\\ensp14\\entry\\build-profile.json5":{"hashValue":"e82fa09e48e8e64ec7ed13728ded8225","name":"build-profile.json5","path":"E:\\jiaocai\\ensp14\\entry\\build-profile.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":640,"lastModifiedTime":1723111052000}},"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile\\main_pages.json":{"hashValue":"1532b3b66c3de89402c5229ec8197cf2","name":"main_pages.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile\\main_pages.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":37,"lastModifiedTime":1723111050000}},"E:\\jiaocai\\ensp14\\hvigor\\hvigor-config.json5":{"hashValue":"985666d82b05ee69dc3fffc9cd3e485c","name":"hvigor-config.json5","path":"E:\\jiaocai\\ensp14\\hvigor\\hvigor-config.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":754,"lastModifiedTime":1763884580242}},"E:\\jiaocai\\ensp14\\entry\\oh-package.json5":{"hashValue":"1fc4836e74752ec6125e99240f55a58f","name":"oh-package.json5","path":"E:\\jiaocai\\ensp14\\entry\\oh-package.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":207,"lastModifiedTime":1724054364000}},"E:\\jiaocai\\ensp14\\oh-package.json5":{"hashValue":"e1dda867019b9043f47ab9b2a628a52c","name":"oh-package.json5","path":"E:\\jiaocai\\ensp14\\oh-package.json5","type":"file","isSymbolicLink":false,"fileMetaData":{"size":275,"lastModifiedTime":1763884580272}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\profile\\default\\ModuleInfo.ts":{"hashValue":"","name":"emptyroot","path":"","type":"unknown","isSymbolicLink":false,"children":[]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json":{"hashValue":"bfd0df23a17217d5832d19a2373b809a","name":"module.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1241,"lastModifiedTime":1763884729690}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\pkgContextInfo.json":{"hashValue":"","name":"emptyroot","path":"","type":"unknown","isSymbolicLink":false,"children":[]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json":{"hashValue":"a09d9e19724c5e060443bd0b76e93e38","name":"module.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1326,"lastModifiedTime":1763884729843}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\temp-router-map.json":{"hashValue":"45ffc66384ec7d3d0dc22c622465e2fb","name":"temp-router-map.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\temp-router-map.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":16,"lastModifiedTime":1763884729850}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\loader-router-map.json":{"hashValue":"36dc7152efc8f219812301a9007644d8","name":"loader-router-map.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\loader-router-map.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":16,"lastModifiedTime":1763884729850}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\loader.json":{"hashValue":"ae2a9cb88d2c42831a3adae6babbd29b","name":"loader.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\loader.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":771,"lastModifiedTime":1763884729886}},"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources":{"hashValue":"851024451fd2d6df956bce27220366e3","name":"resources","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"88b481d7614d65e68bcd854cf7c8a131","name":"base","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"a50a2b59a802e990e242b71c4757cbeb","name":"element","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\element","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"607fdf9acb81fc227036b591e1ad963d","name":"color.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\element\\color.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":105,"lastModifiedTime":1723111050000}},{"hashValue":"c0b74d531896f0b9d9df8630fa9200f2","name":"string.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\element\\string.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":247,"lastModifiedTime":1723111052000}}]},{"hashValue":"6214f54b15ce793912041a99feaa760d","name":"media","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"33f4465605a641b6758e951b4dd8ea92","name":"icon.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\icon.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2041,"lastModifiedTime":1723111050000}},{"hashValue":"d6960be17fad1fd58bd6936ddb68459d","name":"jiaohuanji_tm.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\jiaohuanji_tm.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":3666,"lastModifiedTime":1717715416000}},{"hashValue":"631aa71e7f230d00f30900bd5af61fc4","name":"jiaohuanji.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\jiaohuanji.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":5044,"lastModifiedTime":1717715416000}},{"hashValue":"39618c7260d89995c2c74c5eed701b87","name":"jixianqi_tm.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\jixianqi_tm.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":9634,"lastModifiedTime":1717715416000}},{"hashValue":"33faa9234667d42609ba3b29dae0fda7","name":"jixianqi.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\jixianqi.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":10309,"lastModifiedTime":1717715416000}},{"hashValue":"0a1e36a47c810be180d953201bc25c53","name":"luyouqi_tm.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\luyouqi_tm.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":11198,"lastModifiedTime":1717715416000}},{"hashValue":"9d167cd31817f78f2c0309ce9166dcee","name":"luyouqi.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\luyouqi.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":12094,"lastModifiedTime":1717715416000}},{"hashValue":"2ac84c7e9d424590e53dd3b4cae6aaec","name":"packet.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\packet.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":26968,"lastModifiedTime":1717715416000}},{"hashValue":"97031819f6944b04a30026fa7bc5fa88","name":"startIcon.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\startIcon.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":4351,"lastModifiedTime":1723111050000}},{"hashValue":"033314b32c3307f84f8f4a93b19a3ec7","name":"zhuji_tm.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\zhuji_tm.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":16883,"lastModifiedTime":1717715416000}},{"hashValue":"a56df46edbad5cefe7d57aba3d51c7b6","name":"zhuji.png","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\media\\zhuji.png","type":"file","isSymbolicLink":false,"fileMetaData":{"size":19448,"lastModifiedTime":1717715416000}}]},{"hashValue":"d3b2bf59d42be81df33328d916864440","name":"profile","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"1532b3b66c3de89402c5229ec8197cf2","name":"main_pages.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile\\main_pages.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":37,"lastModifiedTime":1723111050000}}]}]},{"hashValue":"8f3c68b9d76bc69727e252d56cf0e4cd","name":"en_US","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\en_US","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"4952b1288bb7bf034074cb4f6714e5b2","name":"element","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\en_US\\element","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"c0b74d531896f0b9d9df8630fa9200f2","name":"string.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\en_US\\element\\string.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":247,"lastModifiedTime":1723111052000}}]}]},{"hashValue":"","name":"rawfile","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\rawfile","type":"directory","isSymbolicLink":false,"children":[]},{"hashValue":"73f3b10c0db01aa26957880bbeee430e","name":"zh_CN","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\zh_CN","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"f572a0d58799b1b0022b057fa45e4051","name":"element","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\zh_CN\\element","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"4a735c9713ad5dbb7347714f81eb67ba","name":"string.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\zh_CN\\element\\string.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":241,"lastModifiedTime":1723111052000}}]}]}]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default":{"hashValue":"e9e8cdc8b5677494465092e9b759e62a","name":"default","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"dca1dd31f74003e5a798680d20742840","name":"app_compiled","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\app_compiled","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"4848bcf640f5cb51bf016ad55f3a024f","name":"12827611826178336895","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\app_compiled\\12827611826178336895","type":"file","isSymbolicLink":false,"fileMetaData":{"size":110,"lastModifiedTime":1763884731502}},{"hashValue":"6a5e9149b62bbcacd5770b4dad64d91f","name":"897159066498233754","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\app_compiled\\897159066498233754","type":"file","isSymbolicLink":false,"fileMetaData":{"size":160,"lastModifiedTime":1763884731502}}]},{"hashValue":"0bb08cd115bbb1209ce612fec8867020","name":"ids_map","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ids_map","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"aac610d4f929ac911715eb637a050d86","name":"id_defined.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ids_map\\id_defined.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2166,"lastModifiedTime":1763884731625}}]},{"hashValue":"55c7f01f5f579a9de15d14e2b2d79473","name":"module_compiled","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"e3bf5e581735ee7b4b20107c69bd61c6","name":"10580750280879350585","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\10580750280879350585","type":"file","isSymbolicLink":false,"fileMetaData":{"size":172,"lastModifiedTime":1763884731533}},{"hashValue":"6f24ae42664fd2d33e869ca8c70b2d5d","name":"10646380563940590597","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\10646380563940590597","type":"file","isSymbolicLink":false,"fileMetaData":{"size":178,"lastModifiedTime":1763884731533}},{"hashValue":"eb99914b628b85e3b7bfe9585bc79107","name":"11213201727408963998","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\11213201727408963998","type":"file","isSymbolicLink":false,"fileMetaData":{"size":178,"lastModifiedTime":1763884731533}},{"hashValue":"80d1a00b5cfe937e101fdf1a2d6e0069","name":"12591516603000343113","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\12591516603000343113","type":"file","isSymbolicLink":false,"fileMetaData":{"size":365,"lastModifiedTime":1763884731532}},{"hashValue":"8aac10ac92bfc823650e2b3106555b90","name":"13346930149730069584","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\13346930149730069584","type":"file","isSymbolicLink":false,"fileMetaData":{"size":172,"lastModifiedTime":1763884731534}},{"hashValue":"ee659923e4a9cc65ddb8140bad5c0c4b","name":"14776038471789566508","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\14776038471789566508","type":"file","isSymbolicLink":false,"fileMetaData":{"size":160,"lastModifiedTime":1763884731532}},{"hashValue":"d74745519c88d655c158118443588dd8","name":"14800250669292906942","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\14800250669292906942","type":"file","isSymbolicLink":false,"fileMetaData":{"size":181,"lastModifiedTime":1763884731533}},{"hashValue":"d3c52ff7ea24785de6fe313734d90bc5","name":"17802602488540885802","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\17802602488540885802","type":"file","isSymbolicLink":false,"fileMetaData":{"size":175,"lastModifiedTime":1763884731534}},{"hashValue":"b5d78649ee1adfcc51b438a6f9702e8d","name":"17821087964157098802","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\17821087964157098802","type":"file","isSymbolicLink":false,"fileMetaData":{"size":163,"lastModifiedTime":1763884731534}},{"hashValue":"d64305ebbb15cf926db84fe5085de475","name":"1873027210265857131","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\1873027210265857131","type":"file","isSymbolicLink":false,"fileMetaData":{"size":413,"lastModifiedTime":1763884731535}},{"hashValue":"69e32e8586e4a0ac8567dad94d0a3505","name":"5334465202777172314","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\5334465202777172314","type":"file","isSymbolicLink":false,"fileMetaData":{"size":166,"lastModifiedTime":1763884731533}},{"hashValue":"88604b2f663b2c55a120b20367659cf1","name":"7615957933737073028","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\7615957933737073028","type":"file","isSymbolicLink":false,"fileMetaData":{"size":124,"lastModifiedTime":1763884731532}},{"hashValue":"52dda52ff69a0ae62ba3a47a13de47fd","name":"7813705467349408760","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\7813705467349408760","type":"file","isSymbolicLink":false,"fileMetaData":{"size":169,"lastModifiedTime":1763884731533}},{"hashValue":"c15d1e582ec75b0962220c4dc5669c4d","name":"9598306224695187522","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\9598306224695187522","type":"file","isSymbolicLink":false,"fileMetaData":{"size":187,"lastModifiedTime":1763884731533}},{"hashValue":"a816e978d833b82050afc5df55b23b6a","name":"9691874802280713449","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\9691874802280713449","type":"file","isSymbolicLink":false,"fileMetaData":{"size":185,"lastModifiedTime":1763884731534}},{"hashValue":"30bd040534f3eb6e0341c58155c42d55","name":"9730315321514649119","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled\\9730315321514649119","type":"file","isSymbolicLink":false,"fileMetaData":{"size":419,"lastModifiedTime":1763884731535}}]},{"hashValue":"eda0dcfba2dcf7c1673028a0923dbbbe","name":"module.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1355,"lastModifiedTime":1763884731743}},{"hashValue":"8f80d05b5e926d9361b9f1e4f696b986","name":"resources","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"48732637fb92bd5db20ba2c25d98f520","name":"base","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"04800d7a8f85c3f9989c58a30f5a8914","name":"profile","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"6f1c01a4ff25d715101325b8389c45c8","name":"main_pages.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":24,"lastModifiedTime":1763884731720}}]}]}]},{"hashValue":"e972e7b73a914646901c3a9a606b113a","name":"resources.index","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources.index","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2106,"lastModifiedTime":1763884731624}},{"hashValue":"b47e446f8c900340f78315d6cc147cfd","name":"ResourceTable.txt","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ResourceTable.txt","type":"file","isSymbolicLink":false,"fileMetaData":{"size":515,"lastModifiedTime":1763884731630}}]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default":{"hashValue":"861e65272b4d6fffcfb8fe52145a7781","name":"default","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"f3d73d3407f6e52c76016757427a8b5f","name":"ResourceTable.h","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default\\ResourceTable.h","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1527,"lastModifiedTime":1763884731627}}]},"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile":{"hashValue":"d3b2bf59d42be81df33328d916864440","name":"profile","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"1532b3b66c3de89402c5229ec8197cf2","name":"main_pages.json","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile\\main_pages.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":37,"lastModifiedTime":1723111050000}}]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile":{"hashValue":"04800d7a8f85c3f9989c58a30f5a8914","name":"profile","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"6f1c01a4ff25d715101325b8389c45c8","name":"main_pages.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":24,"lastModifiedTime":1763884731720}}]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json":{"hashValue":"eda0dcfba2dcf7c1673028a0923dbbbe","name":"module.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1355,"lastModifiedTime":1763884731743}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json":{"hashValue":"6f1c01a4ff25d715101325b8389c45c8","name":"main_pages.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":24,"lastModifiedTime":1763884731720}},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default":{"hashValue":"c7b37e1c89cb0558eccb3978e95d7fdd","name":"default","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"ae2a9cb88d2c42831a3adae6babbd29b","name":"loader.json","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\loader.json","type":"file","isSymbolicLink":false,"fileMetaData":{"size":771,"lastModifiedTime":1763884729886}}]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ResourceTable.txt":{"hashValue":"b47e446f8c900340f78315d6cc147cfd","name":"ResourceTable.txt","path":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ResourceTable.txt","type":"file","isSymbolicLink":false,"fileMetaData":{"size":515,"lastModifiedTime":1763884731630}},"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets":{"hashValue":"2c080f7bde804890ebe227b7e55f8cdb","name":"ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"0c0d37906296d3b45aa44882a4ae60c5","name":"classes","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\classes","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"6766048231b1151ac9f6e16e2d047643","name":"Datas.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\classes\\Datas.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":9823,"lastModifiedTime":1723914440000}},{"hashValue":"2317c2723c15e911c30b646b0b984527","name":"OtherSimObjects.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\classes\\OtherSimObjects.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":19797,"lastModifiedTime":1724059800000}},{"hashValue":"938243b3942e90c6447e195dfe1337ba","name":"SimBase.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\classes\\SimBase.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2064,"lastModifiedTime":1723910786000}},{"hashValue":"107f22f8a441d556e3d3e12d4066783f","name":"TopMenu.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\classes\\TopMenu.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":434,"lastModifiedTime":1720149762000}}]},{"hashValue":"9c7ee62bd13a2cd2e92950e37f9ec006","name":"components","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"8f0a5a9c04e4586c57e2941a885bc4c6","name":"ButtomMenuBar.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\ButtomMenuBar.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2528,"lastModifiedTime":1723640174000}},{"hashValue":"3e1b3470ce9f9c6c56d4514473c69d5d","name":"Dialog.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\Dialog.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":14119,"lastModifiedTime":1723781158000}},{"hashValue":"6edb98c1f67c036b742a4aa3d660f157","name":"MiddleContent.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\MiddleContent.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":12647,"lastModifiedTime":1723995260000}},{"hashValue":"898cd6f72211f6b488be4e43f313b2d0","name":"Table.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\Table.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2245,"lastModifiedTime":1723641806000}},{"hashValue":"f1761836fc2c86c713487e59ae887fa3","name":"TopMenuBar.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\TopMenuBar.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":7260,"lastModifiedTime":1723640326000}}]},{"hashValue":"859bae57b6d66d587544bb850f18fb0c","name":"entryability","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\entryability","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"26c6fc26f628b45b41d5d27e9316557c","name":"EntryAbility.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\entryability\\EntryAbility.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1598,"lastModifiedTime":1723111052000}}]},{"hashValue":"41586e91a24d2faf295588674ee626f1","name":"functions","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\functions","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"d77d6c93d4d072d53e242d6cd3d8f381","name":"functions.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\functions\\functions.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":2004,"lastModifiedTime":1724047874000}}]},{"hashValue":"11437dc766f053a18ec4498f8487bb34","name":"pages","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\pages","type":"directory","isSymbolicLink":false,"children":[{"hashValue":"21c569f45db0b8d4388a55830c119a15","name":"Index.ets","path":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\pages\\Index.ets","type":"file","isSymbolicLink":false,"fileMetaData":{"size":1946,"lastModifiedTime":1723995260000}}]}]},"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader_out\\default\\ets":{"hashValue":"","name":"emptyroot","path":"","type":"unknown","isSymbolicLink":false,"children":[]}} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/cache/meta.json b/ensp14ing/ensp14/.hvigor/cache/meta.json new file mode 100644 index 0000000..3b3de66 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/cache/meta.json @@ -0,0 +1 @@ +{"compileSdkVersion":10,"hvigorVersion":"5.17.6","toolChainsVersion":"4.0.10.16"} diff --git a/ensp14ing/ensp14/.hvigor/cache/task-cache.json b/ensp14ing/ensp14/.hvigor/cache/task-cache.json new file mode 100644 index 0000000..c5756ba --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/cache/task-cache.json @@ -0,0 +1 @@ +{":ensp14:entry:default@PreBuild":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"compileApiVersion\",\"_value\":10,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compatibleApiVersion\",\"_value\":9,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"targetStatusCode\",\"_value\":1,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"apiType\",\"_value\":\"stageMode\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"deviceType\",\"_value\":[\"default\",\"tablet\"],\"_valueType\":\"object\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"codeType\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"sdkToolchainsComponentVersion\",\"_value\":\"4.0.10.16\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"profileModuleName\",\"_value\":\"entry\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"moduleJsonOpt\",\"_value\":\"{\\\"jsonFilePath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\src\\\\\\\\main\\\\\\\\module.json5\\\",\\\"profile\\\":{\\\"module\\\":{\\\"name\\\":\\\"entry\\\",\\\"type\\\":\\\"entry\\\",\\\"description\\\":\\\"$string:module_desc\\\",\\\"mainElement\\\":\\\"EntryAbility\\\",\\\"deviceTypes\\\":[\\\"default\\\",\\\"tablet\\\"],\\\"deliveryWithInstall\\\":true,\\\"installationFree\\\":false,\\\"pages\\\":\\\"$profile:main_pages\\\",\\\"abilities\\\":[{\\\"name\\\":\\\"EntryAbility\\\",\\\"srcEntry\\\":\\\"./ets/entryability/EntryAbility.ets\\\",\\\"description\\\":\\\"$string:EntryAbility_desc\\\",\\\"icon\\\":\\\"$media:icon\\\",\\\"label\\\":\\\"$string:EntryAbility_label\\\",\\\"startWindowIcon\\\":\\\"$media:startIcon\\\",\\\"startWindowBackground\\\":\\\"$color:start_window_background\\\",\\\"exported\\\":true,\\\"skills\\\":[{\\\"entities\\\":[\\\"entity.system.home\\\"],\\\"actions\\\":[\\\"action.system.home\\\"]}]}]}},\\\"deviceTypes\\\":[\\\"default\\\",\\\"tablet\\\"],\\\"deviceConfig\\\":\\\"deviceTypes\\\",\\\"configurationProfile\\\":\\\"module.json5\\\"}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isSupportOhpmProj\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"removePermissions\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"customTypes\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"useNormalizedOHMUrl\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"integrated_hsp\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"sourceRoots\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"transformLib\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"byteCodeHar\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"configuration\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"configurationFileJson\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@PreBuild","_key":":ensp14:entry:default@PreBuild","_executionId":":ensp14:entry:default@PreBuild:1763884729299","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\AppScope\\app.json5",{"isDirectory":false,"fileSnapShotHashValue":"4e6ab81348750bd2f28dfb71c4231eb0"}],["E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5",{"isDirectory":false,"fileSnapShotHashValue":"3625656890da25e9c5177799618179f3"}],["E:\\jiaocai\\ensp14\\build-profile.json5",{"fileSnapShotHashValue":"9af39273ae7f41f679da5542c5e79cc2"}],["E:\\jiaocai\\ensp14\\entry\\build-profile.json5",{"fileSnapShotHashValue":"e82fa09e48e8e64ec7ed13728ded8225"}],["E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile\\main_pages.json",{"fileSnapShotHashValue":"1532b3b66c3de89402c5229ec8197cf2"}],["E:\\jiaocai\\ensp14\\hvigor\\hvigor-config.json5",{"isDirectory":true,"fileSnapShotHashValue":"985666d82b05ee69dc3fffc9cd3e485c"}],["E:\\jiaocai\\ensp14\\entry\\oh-package.json5",{"fileSnapShotHashValue":"1fc4836e74752ec6125e99240f55a58f"}],["E:\\jiaocai\\ensp14\\oh-package.json5",{"fileSnapShotHashValue":"e1dda867019b9043f47ab9b2a628a52c"}]]},"_outputFiles":{"dataType":"Map","value":[]}},":ensp14:entry:default@CreateModuleInfo":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"ohosUiTransformOptimization\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":false,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@CreateModuleInfo","_key":":ensp14:entry:default@CreateModuleInfo","_executionId":":ensp14:entry:default@CreateModuleInfo:1763884729662","_inputFiles":{"dataType":"Map","value":[]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\profile\\default\\ModuleInfo.ts",{"isDirectory":false,"fileSnapShotHashValue":""}]]}},":ensp14:entry:default@MergeProfile":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"targetSdkVersion\",\"_value\":10,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compatibleSdkVersion\",\"_value\":9,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"releaseType\",\"_value\":\"Release\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"buildRoot\",\"_value\":\".preview\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isDebug\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"asanEnable\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"tsanEnable\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"hwasanEnable\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"ubsanEnable\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"moduleJsonOpt\",\"_value\":\"{\\\"module\\\":{\\\"name\\\":\\\"entry\\\",\\\"type\\\":\\\"entry\\\",\\\"description\\\":\\\"$string:module_desc\\\",\\\"mainElement\\\":\\\"EntryAbility\\\",\\\"deviceTypes\\\":[\\\"default\\\",\\\"tablet\\\"],\\\"deliveryWithInstall\\\":true,\\\"installationFree\\\":false,\\\"pages\\\":\\\"$profile:main_pages\\\",\\\"abilities\\\":[{\\\"name\\\":\\\"EntryAbility\\\",\\\"srcEntry\\\":\\\"./ets/entryability/EntryAbility.ets\\\",\\\"description\\\":\\\"$string:EntryAbility_desc\\\",\\\"icon\\\":\\\"$media:icon\\\",\\\"label\\\":\\\"$string:EntryAbility_label\\\",\\\"startWindowIcon\\\":\\\"$media:startIcon\\\",\\\"startWindowBackground\\\":\\\"$color:start_window_background\\\",\\\"exported\\\":true,\\\"skills\\\":[{\\\"entities\\\":[\\\"entity.system.home\\\"],\\\"actions\\\":[\\\"action.system.home\\\"]}]}]}}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isHarModule\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"multiProjects\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"buildProfileAbilities\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"projectConfigAppOpt\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"appJsonOpt\",\"_value\":\"{\\\"app\\\":{\\\"bundleName\\\":\\\"com.example.ensp_fourteen\\\",\\\"vendor\\\":\\\"example\\\",\\\"versionCode\\\":1000000,\\\"versionName\\\":\\\"1.0.0\\\",\\\"icon\\\":\\\"$media:app_icon\\\",\\\"label\\\":\\\"$string:app_name\\\"}}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"integratedHsp\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"removePermissions\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isBundledDependencies\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"packageName\",\"_value\":\"entry\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"ohLibs\",\"_value\":[],\"_valueType\":\"object\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@MergeProfile","_key":":ensp14:entry:default@MergeProfile","_executionId":":ensp14:entry:default@MergeProfile:1763884729666","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\AppScope\\app.json5",{"fileSnapShotHashValue":"4e6ab81348750bd2f28dfb71c4231eb0"}],["E:\\jiaocai\\ensp14\\build-profile.json5",{"fileSnapShotHashValue":"9af39273ae7f41f679da5542c5e79cc2"}],["E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5",{"fileSnapShotHashValue":"3625656890da25e9c5177799618179f3"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json",{"fileSnapShotHashValue":"bfd0df23a17217d5832d19a2373b809a"}]]}},":ensp14:entry:default@GeneratePkgContextInfo":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"pkgContextInfoMap-@ohos/hypium\",\"_value\":\"250face05ca988dfd476ff3031775f67\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"pkgContextInfoMap-entry\",\"_value\":\"a8164913e569f3b3b2485e1811ddf44d\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"useNormalizedOHMUrl\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":false,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@GeneratePkgContextInfo","_key":":ensp14:entry:default@GeneratePkgContextInfo","_executionId":":ensp14:entry:default@GeneratePkgContextInfo:1763884729717","_inputFiles":{"dataType":"Map","value":[]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\pkgContextInfo.json",{"isDirectory":false,"fileSnapShotHashValue":""}]]}},":ensp14:entry:default@ProcessProfile":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"arkEnable\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compileMode\",\"_value\":\"esmodule\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"deviceTypes\",\"_value\":[\"default\",\"tablet\"],\"_valueType\":\"object\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"dependency\",\"_value\":\"[]\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compatibleSdkVersionStage\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@ProcessProfile","_key":":ensp14:entry:default@ProcessProfile","_executionId":":ensp14:entry:default@ProcessProfile:1763884729721","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json",{"fileSnapShotHashValue":"bfd0df23a17217d5832d19a2373b809a"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json",{"fileSnapShotHashValue":"a09d9e19724c5e060443bd0b76e93e38"}]]}},":ensp14:entry:default@ProcessRouterMap":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"useNormalizedOHMUrl\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"obfuscated\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"byteCodeHar\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@ProcessRouterMap","_key":":ensp14:entry:default@ProcessRouterMap","_executionId":":ensp14:entry:default@ProcessRouterMap:1763884729848","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\oh-package.json5",{"fileSnapShotHashValue":"1fc4836e74752ec6125e99240f55a58f"}],["E:\\jiaocai\\ensp14\\oh-package.json5",{"fileSnapShotHashValue":"e1dda867019b9043f47ab9b2a628a52c"}],["E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5",{"fileSnapShotHashValue":"3625656890da25e9c5177799618179f3"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\temp-router-map.json",{"fileSnapShotHashValue":"45ffc66384ec7d3d0dc22c622465e2fb"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\loader-router-map.json",{"fileSnapShotHashValue":"36dc7152efc8f219812301a9007644d8"}]]}},":ensp14:entry:default@GenerateLoaderJson":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"projectRootPath\",\"_value\":\"E:\\\\jiaocai\\\\ensp14\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"modulePathMap\",\"_value\":\"{\\\"entry\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\"}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"module_dependencies\",\"_value\":\"{}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"overrides\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"project_dependencies\",\"_value\":\"{}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"useNormalizedOHMUrl\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isOhosTest\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isFullCompilationEnabled\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"patchConfig\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compileMode\",\"_value\":\"esmodule\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"nodeModulesPath\",\"_value\":\"E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\loader_out\\\\default\\\\node_modules\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"targetConfig\",\"_value\":\"{\\\"name\\\":\\\"default\\\"}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"hspNameOhmMap\",\"_value\":\"{}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"harNameOhmMap\",\"_value\":\"{}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"anBuildMode\",\"_value\":\"type\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"apPath\",\"_value\":\"E:\\\\jiaocai\\\\ensp14\\\\entry\\\\modules.ap\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"fallbackAnBuild\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isHarWithCoverage\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compileApiVersion\",\"_value\":10,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compatibleApiVersion\",\"_value\":9,\"_valueType\":\"number\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isByteCodeHar\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"shouldTreatHarAsHap\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isBundledDependencies\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"needSubmitArkTsWidget\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@GenerateLoaderJson","_key":":ensp14:entry:default@GenerateLoaderJson","_executionId":":ensp14:entry:default@GenerateLoaderJson:1763884729878","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\temp-router-map.json",{"fileSnapShotHashValue":"45ffc66384ec7d3d0dc22c622465e2fb"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\loader.json",{"isDirectory":false,"fileSnapShotHashValue":"ae2a9cb88d2c42831a3adae6babbd29b"}]]}},":ensp14:entry:default@PreviewCompileResource":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"PREVIEWER_REPLACE_PAGE\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"PREVIEWER_REPLACE_SRCPATH\",\"_valueType\":\"undefined\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"TARGET_CONFIG\",\"_value\":\"{\\\"name\\\":\\\"default\\\"}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"D:\\\\Huawei\\\\OpenHarmony\\\\10\\\\10\\\\toolchains\\\\restool.exe\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@PreviewCompileResource","_key":":ensp14:entry:default@PreviewCompileResource","_executionId":":ensp14:entry:default@PreviewCompileResource:1763884729893","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\src\\main\\resources",{"fileSnapShotHashValue":"851024451fd2d6df956bce27220366e3"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json",{"fileSnapShotHashValue":"bfd0df23a17217d5832d19a2373b809a"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default",{"isDirectory":true,"fileSnapShotHashValue":"e9e8cdc8b5677494465092e9b759e62a"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default",{"isDirectory":true,"fileSnapShotHashValue":"861e65272b4d6fffcfb8fe52145a7781"}]]}},":ensp14:entry:default@CopyPreviewProfile":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@CopyPreviewProfile","_key":":ensp14:entry:default@CopyPreviewProfile","_executionId":":ensp14:entry:default@CopyPreviewProfile:1763884731662","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile",{"fileSnapShotHashValue":"d3b2bf59d42be81df33328d916864440"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile",{"fileSnapShotHashValue":"04800d7a8f85c3f9989c58a30f5a8914"}]]}},":ensp14:entry:default@PreviewUpdateAssets":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"previewBuildConfigJson\",\"_value\":\"{\\\"deviceType\\\":\\\"tablet\\\",\\\"buildMode\\\":\\\"debug\\\",\\\"note\\\":\\\"false\\\",\\\"logLevel\\\":\\\"3\\\",\\\"isPreview\\\":\\\"true\\\",\\\"checkEntry\\\":\\\"true\\\",\\\"localPropertiesPath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\local.properties\\\",\\\"Path\\\":\\\"D:\\\\\\\\Program Files\\\\\\\\Huawei\\\\\\\\DevEco Studio\\\\\\\\tools\\\\\\\\node\\\\\\\\\\\",\\\"aceProfilePath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\res\\\\\\\\default\\\\\\\\resources\\\\\\\\base\\\\\\\\profile\\\",\\\"hapMode\\\":\\\"false\\\",\\\"img2bin\\\":\\\"true\\\",\\\"projectProfilePath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\build-profile.json5\\\",\\\"watchMode\\\":\\\"true\\\",\\\"appResource\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\res\\\\\\\\default\\\\\\\\ResourceTable.txt\\\",\\\"aceBuildJson\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\loader\\\\\\\\default\\\\\\\\loader.json\\\",\\\"aceModuleRoot\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\src\\\\\\\\main\\\\\\\\ets\\\",\\\"aceSoPath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\cache\\\\\\\\nativeDependencies.txt\\\",\\\"cachePath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\cache\\\\\\\\.default\\\",\\\"aceModuleBuild\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\assets\\\\\\\\default\\\\\\\\ets\\\",\\\"aceModuleJsonPath\\\":\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\res\\\\\\\\default\\\\\\\\module.json\\\",\\\"stageRouterConfig\\\":{\\\"paths\\\":[\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\res\\\\\\\\default\\\\\\\\module.json\\\",\\\"E:\\\\\\\\jiaocai\\\\\\\\ensp14\\\\\\\\entry\\\\\\\\.preview\\\\\\\\default\\\\\\\\intermediates\\\\\\\\res\\\\\\\\default\\\\\\\\resources\\\\\\\\base\\\\\\\\profile\\\\\\\\main_pages.json\\\"],\\\"contents\\\":[\\\"{\\\\\\\"module\\\\\\\":{\\\\\\\"pages\\\\\\\":\\\\\\\"$profile:main_pages\\\\\\\",\\\\\\\"name\\\\\\\":\\\\\\\"entry\\\\\\\"}}\\\",\\\"{\\\\\\\"src\\\\\\\":[\\\\\\\"pages/Index\\\\\\\"]}\\\"]}}\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@PreviewUpdateAssets","_key":":ensp14:entry:default@PreviewUpdateAssets","_executionId":":ensp14:entry:default@PreviewUpdateAssets:1763884731705","_inputFiles":{"dataType":"Map","value":[]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json",{"isDirectory":false,"fileSnapShotHashValue":"eda0dcfba2dcf7c1673028a0923dbbbe"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json",{"isDirectory":false,"fileSnapShotHashValue":"6f1c01a4ff25d715101325b8389c45c8"}]]}},":ensp14:entry:default@PreviewArkTS":{"_inputs":[{"dataType":"ValueEntry","value":"{\"_name\":\"debuggable\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"isArk\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"needCoverageInsert\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"ark.tsImportSendable\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"customTypes\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"caseSensitiveCheck\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"useNormalizedOHMUrl\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"transformLib\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"compatibleSdkVersionStage\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"autoLazyImport\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"allowEmptyBundleName\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"reExportCheckMode\",\"_value\":\"noCheck\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"arkTsWdiget\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"OBFUSCATION_ENABLE\",\"_value\":\"undefined\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"copyCodeResourceEnable\",\"_value\":true,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"copyCodeResourceExcludes\",\"_value\":[],\"_valueType\":\"object\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"noExternalImportByPath\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"ohos.uiTransform.Optimization\",\"_value\":false,\"_valueType\":\"boolean\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_COMMAND\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_TOOLCHAIN\",\"_value\":\"\",\"_valueType\":\"string\"}"},{"dataType":"ValueEntry","value":"{\"_name\":\"BUILTIN_TASK_ENV\",\"_value\":\"\",\"_valueType\":\"string\"}"}],"_successful":true,"_projectName":"ensp14","_moduleName":"entry","_taskName":"default@PreviewArkTS","_key":":ensp14:entry:default@PreviewArkTS","_executionId":":ensp14:entry:default@PreviewArkTS:1763884731728","_inputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default",{"isDirectory":true,"fileSnapShotHashValue":"c7b37e1c89cb0558eccb3978e95d7fdd"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ResourceTable.txt",{"fileSnapShotHashValue":"b47e446f8c900340f78315d6cc147cfd"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json",{"fileSnapShotHashValue":"a09d9e19724c5e060443bd0b76e93e38"}],["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile",{"isDirectory":true,"fileSnapShotHashValue":"04800d7a8f85c3f9989c58a30f5a8914"}],["E:\\jiaocai\\ensp14\\entry\\src\\main\\ets",{"isDirectory":true,"fileSnapShotHashValue":"2c080f7bde804890ebe227b7e55f8cdb"}]]},"_outputFiles":{"dataType":"Map","value":[["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader_out\\default\\ets",{"isDirectory":true,"fileSnapShotHashValue":""}]]}}} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/dependencyMap/dependencyMap.json5 b/ensp14ing/ensp14/.hvigor/dependencyMap/dependencyMap.json5 new file mode 100644 index 0000000..f81a356 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/dependencyMap/dependencyMap.json5 @@ -0,0 +1 @@ +{"basePath":"E:\\jiaocai\\ensp14\\.hvigor\\dependencyMap\\dependencyMap.json5","rootDependency":"./oh-package.json5","dependencyMap":{"entry":"./entry/oh-package.json5"},"modules":[{"name":"entry","srcPath":"..\\..\\..\\entry"}]} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/dependencyMap/entry/oh-package.json5 b/ensp14ing/ensp14/.hvigor/dependencyMap/entry/oh-package.json5 new file mode 100644 index 0000000..6957326 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/dependencyMap/entry/oh-package.json5 @@ -0,0 +1 @@ +{"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/dependencyMap/oh-package.json5 b/ensp14ing/ensp14/.hvigor/dependencyMap/oh-package.json5 new file mode 100644 index 0000000..1ff90f1 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/dependencyMap/oh-package.json5 @@ -0,0 +1 @@ +{"modelVersion":"5.0.5","license":"","devDependencies":{"@ohos/hypium":"1.0.11"},"author":"","name":"ensp_fourteen","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/outputs/build-logs/build.log b/ensp14ing/ensp14/.hvigor/outputs/build-logs/build.log new file mode 100644 index 0000000..b393307 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/outputs/build-logs/build.log @@ -0,0 +1,574 @@ +[2025-11-23T15:56:50.410] [DEBUG] debug-file - env: nodejsVersion=v18.20.1 +[2025-11-23T15:56:56.411] [DEBUG] debug-file - Hvigor init with startParameters:{ + hvigorfileTypeCheck: false, + parallelExecution: true, + incrementalExecution: true, + printStackTrace: false, + daemon: false, + analyze: 0, + logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } +} +[2025-11-23T15:56:56.431] [DEBUG] debug-file - hvigorfile, resolving E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:57:25.407] [DEBUG] debug-file - hvigorfile, require result: { default: { system: [Function: appTasks], plugins: [] } } +[2025-11-23T15:57:25.623] [DEBUG] debug-file - Obtain build option for product 'default'in this build. +[2025-11-23T15:57:25.618] [DEBUG] debug-file - Start initialize project's product build option map with build mode debug. +[2025-11-23T15:57:25.680] [DEBUG] debug-file - hvigorfile, resolving E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:57:25.670] [DEBUG] debug-file - Project task initialization takes 24 ms +[2025-11-23T15:57:25.699] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=entry, buildMode=debug +[2025-11-23T15:57:25.706] [DEBUG] debug-file - Module entry task initialization takes 4 ms +[2025-11-23T15:57:25.709] [DEBUG] debug-file - project has submodules:entry +[2025-11-23T15:57:25.750] [DEBUG] debug-file - Configuration task cost before running: 29 s 354 ms +[2025-11-23T15:57:25.752] [DEBUG] debug-file - Executing task :entry:clean +[2025-11-23T15:57:25.755] [DEBUG] debug-file - entry : clean cost memory 0.22447967529296875 +[2025-11-23T15:57:25.637] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-11-23T15:56:50.412] [DEBUG] debug-file - env: hvigor-config.json5 content = { + modelVersion: '5.0.5', + dependencies: {}, + execution: {}, + logging: {}, + debugging: {} +} +[2025-11-23T15:56:56.413] [DEBUG] debug-file - Since current hvigor version 5.17.6 differs from last hvigor version + undefined, delete file-cache.json and task-cache.json. +[2025-11-23T15:57:25.772] [DEBUG] debug-file - Obtain build option for module 'entry' target 'default'in this build. +[2025-11-23T15:57:25.819] [DEBUG] debug-file - Create resident worker with id: 0. +[2025-11-23T15:57:25.408] [DEBUG] debug-file - hvigorfile, binding system plugins [Function: appTasks] +[2025-11-23T15:57:25.625] [DEBUG] debug-file - No signingConfig found, initRemoteHspCache failed. +[2025-11-23T15:57:25.618] [DEBUG] debug-file - Picking option from product 'default' with build mode 'debug'. +[2025-11-23T15:57:25.686] [DEBUG] debug-file - hvigorfile, require result: { default: { system: [Function: hapTasks], plugins: [] } } +[2025-11-23T15:57:25.671] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-11-23T15:57:25.699] [DEBUG] debug-file - Target 'default' config initialized +[2025-11-23T15:57:25.707] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-11-23T15:57:25.710] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-11-23T15:57:25.753] [DEBUG] debug-file - clean: Worker pool is inactive. +[2025-11-23T15:57:25.755] [DEBUG] debug-file - runTaskFromQueue task cost before running: 29 s 360 ms +[2025-11-23T15:56:50.414] [DEBUG] debug-file - env: daemon=false +[2025-11-23T15:57:25.644] [DEBUG] debug-file - The file does not exist. At D:\Huawei\OpenHarmony\10\10\previewer\common\resources\module.json +[2025-11-23T15:56:56.414] [DEBUG] debug-file - Cache service initialization finished in 3 ms +[2025-11-23T15:57:25.774] [DEBUG] debug-file - Obtain build option for module 'entry' target 'ohosTest'in this build. +[2025-11-23T15:57:25.822] [DEBUG] debug-file - Create resident worker with id: 1. +[2025-11-23T15:57:25.619] [DEBUG] debug-file - Product 'default' build option initialized +[2025-11-23T15:57:25.686] [DEBUG] debug-file - hvigorfile, binding system plugins [Function: hapTasks] +[2025-11-23T15:57:25.671] [DEBUG] debug-file - hvigorfile, no custom plugins were found in E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:57:25.707] [DEBUG] debug-file - hvigorfile, no custom plugins were found in E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:57:25.719] [DEBUG] debug-file - load to the disk finished +[2025-11-23T15:57:25.700] [DEBUG] debug-file - Target 'ohosTest' config initialized +[2025-11-23T15:57:25.756] [INFO] debug-file - Finished :entry:clean... after 3 ms +[2025-11-23T15:56:50.414] [DEBUG] debug-file - no-daemon, use the parent process.execArgv --max-old-space-size=8192,--expose-gc +[2025-11-23T15:57:25.645] [DEBUG] debug-file - Sdk init in 19 ms +[2025-11-23T15:57:25.824] [DEBUG] debug-file - Current worker pool is stopped or closed. +[2025-11-23T15:57:25.789] [DEBUG] debug-file - Since there is no instance or instance is terminated, create a new worker pool. +[2025-11-23T15:57:25.619] [DEBUG] debug-file - End initialize project's product build option map with build mode 'debug'. +[2025-11-23T15:57:25.671] [DEBUG] debug-file - hvigorfile, resolve finished E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:57:25.700] [DEBUG] debug-file - Module 'entry' target 'default' build option initialized +[2025-11-23T15:57:25.720] [DEBUG] debug-file - Start to initialize dependency information. +[2025-11-23T15:57:25.707] [DEBUG] debug-file - hvigorfile, resolve finished E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:57:25.825] [DEBUG] debug-file - Clear worker 0. +[2025-11-23T15:57:25.756] [DEBUG] debug-file - Executing task ::clean +[2025-11-23T15:57:25.790] [DEBUG] debug-file - Worker pool is initialized with config: { + minPoolNum: 2, + maxPoolNum: undefined, + maxCoreSize: undefined, + cacheCapacity: undefined, + cacheTtl: undefined +} +[2025-11-23T15:57:25.700] [DEBUG] debug-file - Module 'entry' target 'ohosTest' build option initialized +[2025-11-23T15:57:25.739] [DEBUG] debug-file - Module ensp14 Collected Dependency: +[2025-11-23T15:57:25.825] [DEBUG] debug-file - Worker 0 has been cleared. +[2025-11-23T15:57:25.756] [DEBUG] debug-file - clean: Worker pool is inactive. +[2025-11-23T15:57:25.700] [DEBUG] debug-file - End initialize module-target build option map, moduleName=entry +[2025-11-23T15:57:25.739] [DEBUG] debug-file - Module ensp14's total dependency: 0 +[2025-11-23T15:57:25.825] [DEBUG] debug-file - Current idle worker size: 1. +[2025-11-23T15:57:25.757] [DEBUG] debug-file - ensp14 : clean cost memory 0.0274200439453125 +[2025-11-23T15:57:25.701] [DEBUG] debug-file - Obtain build option for module 'entry' target 'default'in this build. +[2025-11-23T15:57:25.740] [DEBUG] debug-file - Start to initialize dependency information. +[2025-11-23T15:57:25.825] [DEBUG] debug-file - Current busy worker size: 0. +[2025-11-23T15:57:25.757] [DEBUG] debug-file - runTaskFromQueue task cost before running: 29 s 361 ms +[2025-11-23T15:57:25.741] [DEBUG] debug-file - Module entry Collected Dependency: +[2025-11-23T15:57:25.825] [DEBUG] debug-file - Clear worker 1. +[2025-11-23T15:57:25.757] [INFO] debug-file - Finished ::clean... after 1 ms +[2025-11-23T15:57:25.741] [DEBUG] debug-file - Module entry's total dependency: 0 +[2025-11-23T15:57:25.834] [DEBUG] debug-file - Worker 1 has been cleared. +[2025-11-23T15:57:25.757] [DEBUG] debug-file - Executing task :entry:init +[2025-11-23T15:57:25.745] [DEBUG] debug-file - Configuration phase cost:29 s 324 ms +[2025-11-23T15:57:25.834] [DEBUG] debug-file - Current idle worker size: 0. +[2025-11-23T15:57:25.757] [DEBUG] debug-file - entry : init cost memory 0.0101470947265625 +[2025-11-23T15:57:25.835] [DEBUG] debug-file - Current busy worker size: 0. +[2025-11-23T15:57:25.757] [DEBUG] debug-file - runTaskFromQueue task cost before running: 29 s 362 ms +[2025-11-23T15:57:25.836] [DEBUG] debug-file - hvigor build process will be closed. +[2025-11-23T15:57:25.758] [INFO] debug-file - Finished :entry:init... after 1 ms +[2025-11-23T15:57:25.840] [DEBUG] debug-file - worker[1] exits with exit code 0. +[2025-11-23T15:57:25.758] [DEBUG] debug-file - Executing task ::init +[2025-11-23T15:57:25.840] [DEBUG] debug-file - worker[0] exits with exit code 0. +[2025-11-23T15:57:25.758] [DEBUG] debug-file - ensp14 : init cost memory 0.0089263916015625 +[2025-11-23T15:57:25.840] [DEBUG] debug-file - Current worker pool is terminated. +[2025-11-23T15:57:25.758] [DEBUG] debug-file - runTaskFromQueue task cost before running: 29 s 362 ms +[2025-11-23T15:57:25.758] [INFO] debug-file - Finished ::init... after 1 ms +[2025-11-23T15:57:54.119] [DEBUG] debug-file - env: nodejsVersion=v18.20.1 +[2025-11-23T15:57:54.278] [DEBUG] debug-file - env: daemon=true +[2025-11-23T15:57:54.121] [DEBUG] debug-file - env: hvigor-config.json5 content = { + modelVersion: '5.0.5', + dependencies: {}, + execution: {}, + logging: {}, + debugging: {} +} +[2025-11-23T15:57:56.553] [DEBUG] debug-file - java daemon tryConnect failed Error: connect ECONNREFUSED 127.0.0.1:45050 +[2025-11-23T15:57:59.876] [DEBUG] debug-file - java daemon started at port 45050 pid 20456 +[2025-11-23T15:57:59.908] [DEBUG] debug-file - session manager: set active socket. socketId=vPQXs0zHP2bzyRCrAAAB +[2025-11-23T15:57:59.972] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-11-23T15:57:59.999] [DEBUG] debug-file - Hvigor init with startParameters:{ + hvigorfileTypeCheck: false, + parallelExecution: true, + incrementalExecution: true, + printStackTrace: false, + daemon: true, + analyze: 0, + logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } +} +[2025-11-23T15:58:00.004] [DEBUG] debug-file - Cache service initialization finished in 2 ms +[2025-11-23T15:58:00.042] [DEBUG] debug-file - hvigorfile, resolving E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:58:01.688] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-11-23T15:58:01.689] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-11-23T15:58:01.876] [DEBUG] debug-file - Start initialize project's product build option map with build mode debug. +[2025-11-23T15:58:01.876] [DEBUG] debug-file - Picking option from product 'default' with build mode 'debug'. +[2025-11-23T15:58:01.877] [DEBUG] debug-file - Product 'default' build option initialized +[2025-11-23T15:58:01.877] [DEBUG] debug-file - End initialize project's product build option map with build mode 'debug'. +[2025-11-23T15:58:01.880] [DEBUG] debug-file - Obtain build option for product 'default'in this build. +[2025-11-23T15:58:01.883] [DEBUG] debug-file - No signingConfig found, initRemoteHspCache failed. +[2025-11-23T15:58:01.892] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-11-23T15:58:01.892] [DEBUG] debug-file - The file does not exist. At D:\Huawei\OpenHarmony\10\10\previewer\common\resources\module.json +[2025-11-23T15:58:01.892] [DEBUG] debug-file - Sdk init in 8 ms +[2025-11-23T15:58:01.909] [DEBUG] debug-file - Project task initialization takes 16 ms +[2025-11-23T15:58:01.910] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-11-23T15:58:01.910] [DEBUG] debug-file - hvigorfile, no custom plugins were found in E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:58:01.910] [DEBUG] debug-file - hvigorfile, resolve finished E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:58:01.916] [DEBUG] debug-file - hvigorfile, resolving E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:58:01.922] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-11-23T15:58:01.922] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-11-23T15:58:01.935] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=entry, buildMode=debug +[2025-11-23T15:58:01.935] [DEBUG] debug-file - Target 'default' config initialized +[2025-11-23T15:58:01.937] [DEBUG] debug-file - Target 'ohosTest' config initialized +[2025-11-23T15:58:01.937] [DEBUG] debug-file - Module 'entry' target 'default' build option initialized +[2025-11-23T15:58:01.937] [DEBUG] debug-file - Module 'entry' target 'ohosTest' build option initialized +[2025-11-23T15:58:01.937] [DEBUG] debug-file - End initialize module-target build option map, moduleName=entry +[2025-11-23T15:58:01.938] [DEBUG] debug-file - Obtain build option for module 'entry' target 'default'in this build. +[2025-11-23T15:58:01.942] [DEBUG] debug-file - Module entry task initialization takes 4 ms +[2025-11-23T15:58:01.943] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-11-23T15:58:01.943] [DEBUG] debug-file - hvigorfile, no custom plugins were found in E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:58:01.943] [DEBUG] debug-file - hvigorfile, resolve finished E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:58:01.960] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 15 ms +[2025-11-23T15:58:01.961] [DEBUG] debug-file - project has submodules:entry +[2025-11-23T15:58:01.963] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-11-23T15:58:01.969] [DEBUG] debug-file - load to the disk finished +[2025-11-23T15:58:01.970] [DEBUG] debug-file - Start to initialize dependency information. +[2025-11-23T15:58:01.974] [DEBUG] debug-file - Module ensp14 Collected Dependency: +[2025-11-23T15:58:01.974] [DEBUG] debug-file - Module ensp14's total dependency: 0 +[2025-11-23T15:58:01.974] [DEBUG] debug-file - Start to initialize dependency information. +[2025-11-23T15:58:01.976] [DEBUG] debug-file - Module entry Collected Dependency: +[2025-11-23T15:58:01.976] [DEBUG] debug-file - Module entry's total dependency: 0 +[2025-11-23T15:58:01.980] [DEBUG] debug-file - Configuration phase cost:1 s 952 ms +[2025-11-23T15:58:01.983] [DEBUG] debug-file - Configuration task cost before running: 2 s 8 ms +[2025-11-23T15:58:01.984] [DEBUG] debug-file - Executing task :entry:init +[2025-11-23T15:58:01.984] [DEBUG] debug-file - entry : init cost memory 0.01548004150390625 +[2025-11-23T15:58:01.984] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 9 ms +[2025-11-23T15:58:01.984] [INFO] debug-file - Finished :entry:init... after 1 ms +[2025-11-23T15:58:01.985] [DEBUG] debug-file - Executing task ::init +[2025-11-23T15:58:01.985] [DEBUG] debug-file - ensp14 : init cost memory 0.01280975341796875 +[2025-11-23T15:58:01.985] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 10 ms +[2025-11-23T15:58:01.985] [INFO] debug-file - Finished ::init... after 1 ms +[2025-11-23T15:58:01.997] [DEBUG] debug-file - Obtain build option for module 'entry' target 'default'in this build. +[2025-11-23T15:58:02.000] [DEBUG] debug-file - Obtain build option for module 'entry' target 'ohosTest'in this build. +[2025-11-23T15:58:02.004] [DEBUG] debug-file - Since there is no instance or instance is terminated, create a new worker pool. +[2025-11-23T15:58:02.004] [DEBUG] debug-file - Worker pool is initialized with config: { + minPoolNum: 2, + maxPoolNum: undefined, + maxCoreSize: undefined, + cacheCapacity: undefined, + cacheTtl: undefined +} +[2025-11-23T15:58:02.005] [DEBUG] debug-file - Create resident worker with id: 0. +[2025-11-23T15:58:02.007] [DEBUG] debug-file - session manager: send message to worker process. +[2025-11-23T15:58:02.007] [DEBUG] debug-file - session manager: send message to worker process. +[2025-11-23T15:58:02.010] [DEBUG] debug-file - Create resident worker with id: 1. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Cleanup worker 0. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Worker 0 has been cleaned up. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Current idle worker size: 1. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Current resident worker size: 2. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Cleanup worker 1. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Worker 1 has been cleaned up. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Current idle worker size: 0. +[2025-11-23T15:58:02.012] [DEBUG] debug-file - Current resident worker size: 2. +[2025-11-23T15:58:02.013] [DEBUG] debug-file - hvigor build process will be closed. +[2025-11-23T15:58:02.017] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-11-23T15:58:02.017] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-11-23T15:58:02.027] [DEBUG] debug-file - worker[0] exits with exit code 0. +[2025-11-23T15:58:02.028] [DEBUG] debug-file - worker[1] exits with exit code 0. +[2025-11-23T15:58:49.024] [DEBUG] debug-file - session manager: set active socket. socketId=BHgztvG5se-tAEEKAAAD +[2025-11-23T15:58:49.054] [DEBUG] debug-file - watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread. +[2025-11-23T15:58:49.126] [DEBUG] debug-file - Hvigor init with startParameters:{ + hvigorfileTypeCheck: false, + parallelExecution: true, + incrementalExecution: true, + printStackTrace: false, + daemon: true, + analyze: 0, + logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' } +} +[2025-11-23T15:58:49.132] [DEBUG] debug-file - Cache service initialization finished in 6 ms +[2025-11-23T15:58:49.165] [DEBUG] debug-file - hvigorfile, resolving E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:58:49.175] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-11-23T15:58:49.176] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-11-23T15:58:49.180] [DEBUG] debug-file - Start initialize project's product build option map with build mode debug. +[2025-11-23T15:58:49.180] [DEBUG] debug-file - Picking option from product 'default' with build mode 'debug'. +[2025-11-23T15:58:49.180] [DEBUG] debug-file - Product 'default' build option initialized +[2025-11-23T15:58:49.180] [DEBUG] debug-file - End initialize project's product build option map with build mode 'debug'. +[2025-11-23T15:58:49.181] [DEBUG] debug-file - Obtain build option for product 'default'in this build. +[2025-11-23T15:58:49.183] [DEBUG] debug-file - No signingConfig found, initRemoteHspCache failed. +[2025-11-23T15:58:49.187] [DEBUG] debug-file - Start recording SDK configuration permission data. +[2025-11-23T15:58:49.187] [DEBUG] debug-file - The file does not exist. At D:\Huawei\OpenHarmony\10\10\previewer\common\resources\module.json +[2025-11-23T15:58:49.187] [DEBUG] debug-file - Sdk init in 4 ms +[2025-11-23T15:58:49.199] [DEBUG] debug-file - Project task initialization takes 12 ms +[2025-11-23T15:58:49.199] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-11-23T15:58:49.199] [DEBUG] debug-file - hvigorfile, no custom plugins were found in E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:58:49.199] [DEBUG] debug-file - hvigorfile, resolve finished E:\jiaocai\ensp14\hvigorfile.ts +[2025-11-23T15:58:49.204] [DEBUG] debug-file - hvigorfile, resolving E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:58:49.207] [DEBUG] debug-file - hvigorfile, require result: { default: { plugins: [] } } +[2025-11-23T15:58:49.207] [DEBUG] debug-file - hvigorfile, binding system plugins null +[2025-11-23T15:58:49.211] [DEBUG] debug-file - Start initialize module-target build option map, moduleName=entry, buildMode=debug +[2025-11-23T15:58:49.212] [DEBUG] debug-file - Target 'default' config initialized +[2025-11-23T15:58:49.212] [DEBUG] debug-file - Target 'ohosTest' config initialized +[2025-11-23T15:58:49.212] [DEBUG] debug-file - Module 'entry' target 'default' build option initialized +[2025-11-23T15:58:49.212] [DEBUG] debug-file - Module 'entry' target 'ohosTest' build option initialized +[2025-11-23T15:58:49.212] [DEBUG] debug-file - End initialize module-target build option map, moduleName=entry +[2025-11-23T15:58:49.212] [DEBUG] debug-file - Obtain build option for module 'entry' target 'default'in this build. +[2025-11-23T15:58:49.224] [DEBUG] debug-file - Module entry task initialization takes 2 ms +[2025-11-23T15:58:49.224] [DEBUG] debug-file - hvigorfile, binding custom plugins [] +[2025-11-23T15:58:49.224] [DEBUG] debug-file - hvigorfile, no custom plugins were found in E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:58:49.224] [DEBUG] debug-file - hvigorfile, resolve finished E:\jiaocai\ensp14\entry\hvigorfile.ts +[2025-11-23T15:58:49.244] [DEBUG] debug-file - hvigorfile, resolve hvigorfile dependencies in 20 ms +[2025-11-23T15:58:49.249] [DEBUG] debug-file - project has submodules:entry +[2025-11-23T15:58:49.255] [DEBUG] debug-file - start to load updatedOhPackageInfo to the disk +[2025-11-23T15:58:49.268] [DEBUG] debug-file - load to the disk finished +[2025-11-23T15:58:49.272] [DEBUG] debug-file - Start to initialize dependency information. +[2025-11-23T15:58:49.278] [DEBUG] debug-file - Module ensp14 Collected Dependency: +[2025-11-23T15:58:49.278] [DEBUG] debug-file - Module ensp14's total dependency: 0 +[2025-11-23T15:58:49.278] [DEBUG] debug-file - Start to initialize dependency information. +[2025-11-23T15:58:49.282] [DEBUG] debug-file - Module entry Collected Dependency: +[2025-11-23T15:58:49.282] [DEBUG] debug-file - Module entry's total dependency: 0 +[2025-11-23T15:58:49.286] [DEBUG] debug-file - Configuration phase cost:137 ms +[2025-11-23T15:58:49.292] [DEBUG] debug-file - Configuration task cost before running: 220 ms +[2025-11-23T15:58:49.293] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.294] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.294] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.297] [DEBUG] debug-file - Executing task :entry:default@PreBuild +[2025-11-23T15:58:49.300] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.301] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.301] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.648] [DEBUG] debug-file - current product is not Atomic service. +[2025-11-23T15:58:49.649] [DEBUG] debug-file - Use tool [win32: JAVA_HOME, CLASSPATH] + [ + { JAVA_HOME: 'D:\\Program Files\\Huawei\\DevEco Studio\\jbr' }, + { CLASSPATH: undefined } +] +[2025-11-23T15:58:49.649] [DEBUG] debug-file - Use tool [win32: NODE_HOME] + [ + { + NODE_HOME: 'D:\\Program Files\\Huawei\\DevEco Studio\\tools\\node' + } +] +[2025-11-23T15:58:49.649] [DEBUG] debug-file - entry : default@PreBuild cost memory 14.41229248046875 +[2025-11-23T15:58:49.652] [DEBUG] debug-file - runTaskFromQueue task cost before running: 580 ms +[2025-11-23T15:58:49.655] [INFO] debug-file - Finished :entry:default@PreBuild... after 355 ms +[2025-11-23T15:58:49.656] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.656] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.657] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.661] [DEBUG] debug-file - Executing task :entry:default@CreateModuleInfo +[2025-11-23T15:58:49.662] [DEBUG] debug-file - Task 'entry:default@CreateModuleInfo' cost while wrapping incremental declarations: 1 ms +[2025-11-23T15:58:49.663] [DEBUG] debug-file - entry : default@CreateModuleInfo cost memory 0.0558624267578125 +[2025-11-23T15:58:49.663] [DEBUG] debug-file - runTaskFromQueue task cost before running: 591 ms +[2025-11-23T15:58:49.663] [INFO] debug-file - Finished :entry:default@CreateModuleInfo... after 2 ms +[2025-11-23T15:58:49.664] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.665] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.665] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.665] [DEBUG] debug-file - Executing task :entry:default@MergeProfile +[2025-11-23T15:58:49.666] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.666] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.666] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.666] [DEBUG] debug-file - Change app api release type with 'Release' +[2025-11-23T15:58:49.666] [DEBUG] debug-file - Change app compile API version with '4.0.10.16' +[2025-11-23T15:58:49.666] [DEBUG] debug-file - Change app target API version with '10' +[2025-11-23T15:58:49.666] [DEBUG] debug-file - Change app minimum API version with '9' +[2025-11-23T15:58:49.666] [DEBUG] debug-file - Use cli appEnvironment +[2025-11-23T15:58:49.676] [DEBUG] debug-file - Clean the ArkTS cache due to SDK version is changed. +[2025-11-23T15:58:49.692] [DEBUG] debug-file - entry : default@MergeProfile cost memory 0.29676055908203125 +[2025-11-23T15:58:49.695] [DEBUG] debug-file - runTaskFromQueue task cost before running: 623 ms +[2025-11-23T15:58:49.697] [INFO] debug-file - Finished :entry:default@MergeProfile... after 30 ms +[2025-11-23T15:58:49.704] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.704] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.704] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.705] [DEBUG] debug-file - Executing task :entry:default@PreCheckSyscap +[2025-11-23T15:58:49.706] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.706] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.706] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.706] [DEBUG] debug-file - entry : default@PreCheckSyscap cost memory 0.12535858154296875 +[2025-11-23T15:58:49.706] [DEBUG] debug-file - runTaskFromQueue task cost before running: 635 ms +[2025-11-23T15:58:49.706] [INFO] debug-file - Finished :entry:default@PreCheckSyscap... after 2 ms +[2025-11-23T15:58:49.708] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.708] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.708] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.717] [DEBUG] debug-file - Executing task :entry:default@GeneratePkgContextInfo +[2025-11-23T15:58:49.717] [DEBUG] debug-file - Task 'entry:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms +[2025-11-23T15:58:49.717] [DEBUG] debug-file - entry : default@GeneratePkgContextInfo cost memory 0.03743743896484375 +[2025-11-23T15:58:49.717] [DEBUG] debug-file - runTaskFromQueue task cost before running: 646 ms +[2025-11-23T15:58:49.718] [INFO] debug-file - Finished :entry:default@GeneratePkgContextInfo... after 1 ms +[2025-11-23T15:58:49.719] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.719] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.719] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.720] [DEBUG] debug-file - Executing task :entry:default@ProcessProfile +[2025-11-23T15:58:49.721] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.721] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.721] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.723] [DEBUG] debug-file - [ + 'D:\\Program Files\\Huawei\\DevEco Studio\\tools\\node\\node.exe', + 'D:\\Huawei\\OpenHarmony\\10\\10\\ets\\build-tools\\ets-loader\\bin\\ark\\ts2abc.js', + '--target-api-version', + '9' +] +[2025-11-23T15:58:49.841] [DEBUG] debug-file - 9.0.0.0 +[2025-11-23T15:58:49.844] [DEBUG] debug-file - entry : default@ProcessProfile cost memory -11.834396362304688 +[2025-11-23T15:58:49.844] [DEBUG] debug-file - runTaskFromQueue task cost before running: 772 ms +[2025-11-23T15:58:49.844] [INFO] debug-file - Finished :entry:default@ProcessProfile... after 124 ms +[2025-11-23T15:58:49.846] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.846] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.846] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.847] [DEBUG] debug-file - Executing task :entry:default@ProcessRouterMap +[2025-11-23T15:58:49.848] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.848] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.848] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.851] [DEBUG] debug-file - entry : default@ProcessRouterMap cost memory 0.11864471435546875 +[2025-11-23T15:58:49.851] [DEBUG] debug-file - runTaskFromQueue task cost before running: 779 ms +[2025-11-23T15:58:49.856] [INFO] debug-file - Finished :entry:default@ProcessRouterMap... after 4 ms +[2025-11-23T15:58:49.860] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.860] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.860] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.862] [DEBUG] debug-file - restool module names: entry; moduleName=entry, taskName=default@PreviewProcessResource +[2025-11-23T15:58:49.867] [DEBUG] debug-file - Executing task :entry:default@PreviewProcessResource +[2025-11-23T15:58:49.867] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.867] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.867] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.867] [DEBUG] debug-file - entry : default@PreviewProcessResource cost memory 0.11865997314453125 +[2025-11-23T15:58:49.868] [DEBUG] debug-file - runTaskFromQueue task cost before running: 796 ms +[2025-11-23T15:58:49.869] [INFO] debug-file - Finished :entry:default@PreviewProcessResource... after 4 ms +[2025-11-23T15:58:49.871] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.871] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.871] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.873] [DEBUG] debug-file - Executing task :entry:default@GenerateLoaderJson +[2025-11-23T15:58:49.885] [DEBUG] debug-file - entry : default@GenerateLoaderJson cost memory 0.9593353271484375 +[2025-11-23T15:58:49.885] [DEBUG] debug-file - runTaskFromQueue task cost before running: 814 ms +[2025-11-23T15:58:49.889] [INFO] debug-file - Finished :entry:default@GenerateLoaderJson... after 13 ms +[2025-11-23T15:58:49.890] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.890] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:49.890] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:49.891] [DEBUG] debug-file - restool module names: entry; moduleName=entry, taskName=default@PreviewCompileResource +[2025-11-23T15:58:49.892] [DEBUG] debug-file - Executing task :entry:default@PreviewCompileResource +[2025-11-23T15:58:49.906] [DEBUG] debug-file - Use tool [D:\Huawei\OpenHarmony\10\10\toolchains\restool.exe] + [ + 'D:\\Huawei\\OpenHarmony\\10\\10\\toolchains\\restool.exe', + '-x', + 'E:\\jiaocai\\ensp14\\AppScope\\resources', + '-o', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\app_compiled' +] +[2025-11-23T15:58:49.908] [DEBUG] debug-file - current process memoryUsage: { + rss: 176553984, + heapTotal: 132415488, + heapUsed: 106880504, + external: 3197477, + arrayBuffers: 191274 +} os memoryUsage :12.917472839355469 +[2025-11-23T15:58:51.503] [DEBUG] debug-file - Info: restool resources compile success. + +[2025-11-23T15:58:51.508] [DEBUG] debug-file - Use tool [D:\Huawei\OpenHarmony\10\10\toolchains\restool.exe] + [ + 'D:\\Huawei\\OpenHarmony\\10\\10\\toolchains\\restool.exe', + '-x', + 'E:\\jiaocai\\ensp14\\entry\\src\\main\\resources', + '-o', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled' +] +[2025-11-23T15:58:51.509] [DEBUG] debug-file - current process memoryUsage: { + rss: 176652288, + heapTotal: 132415488, + heapUsed: 107157120, + external: 3197603, + arrayBuffers: 191415 +} os memoryUsage :12.913017272949219 +[2025-11-23T15:58:51.536] [DEBUG] debug-file - Info: restool resources compile success. + +[2025-11-23T15:58:51.571] [DEBUG] debug-file - Use tool [D:\Huawei\OpenHarmony\10\10\toolchains\restool.exe] + [ + 'D:\\Huawei\\OpenHarmony\\10\\10\\toolchains\\restool.exe', + '-m', + 'entry', + '-f', + '-j', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json', + '-p', + 'c***n', + '-r', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default\\ResourceTable.h', + '-z', + '--ids', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ids_map', + '--defined-ids', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ids_map\\id_defined.json', + '-i', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\app_compiled', + '-i', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module_compiled', + '-o', + 'E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default' +] +[2025-11-23T15:58:51.572] [DEBUG] debug-file - current process memoryUsage: { + rss: 176652288, + heapTotal: 132415488, + heapUsed: 107444480, + external: 3197729, + arrayBuffers: 192345 +} os memoryUsage :12.9140625 +[2025-11-23T15:58:51.630] [DEBUG] debug-file - Info: restool resources compile success. + +[2025-11-23T15:58:51.653] [DEBUG] debug-file - entry : default@PreviewCompileResource cost memory 1.2355880737304688 +[2025-11-23T15:58:51.654] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 583 ms +[2025-11-23T15:58:51.656] [INFO] debug-file - Finished :entry:default@PreviewCompileResource... after 1 s 762 ms +[2025-11-23T15:58:51.658] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.658] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.658] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.659] [DEBUG] debug-file - Executing task :entry:default@PreviewHookCompileResource +[2025-11-23T15:58:51.659] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.659] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.659] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.659] [DEBUG] debug-file - entry : default@PreviewHookCompileResource cost memory 0.04883575439453125 +[2025-11-23T15:58:51.659] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 588 ms +[2025-11-23T15:58:51.659] [INFO] debug-file - Finished :entry:default@PreviewHookCompileResource... after 1 ms +[2025-11-23T15:58:51.661] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.661] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.661] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.662] [DEBUG] debug-file - Executing task :entry:default@CopyPreviewProfile +[2025-11-23T15:58:51.662] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.662] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.662] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.682] [DEBUG] debug-file - entry : default@CopyPreviewProfile cost memory 0.14804840087890625 +[2025-11-23T15:58:51.683] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 611 ms +[2025-11-23T15:58:51.684] [INFO] debug-file - Finished :entry:default@CopyPreviewProfile... after 22 ms +[2025-11-23T15:58:51.691] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.691] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.691] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.692] [DEBUG] debug-file - Executing task :entry:default@ReplacePreviewerPage +[2025-11-23T15:58:51.692] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.692] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.692] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.692] [DEBUG] debug-file - entry : default@ReplacePreviewerPage cost memory 0.04885101318359375 +[2025-11-23T15:58:51.692] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 621 ms +[2025-11-23T15:58:51.692] [INFO] debug-file - Finished :entry:default@ReplacePreviewerPage... after 1 ms +[2025-11-23T15:58:51.697] [DEBUG] debug-file - Executing task :entry:buildPreviewerResource +[2025-11-23T15:58:51.697] [DEBUG] debug-file - entry : buildPreviewerResource cost memory 0.01218414306640625 +[2025-11-23T15:58:51.698] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 626 ms +[2025-11-23T15:58:51.698] [INFO] debug-file - Finished :entry:buildPreviewerResource... after 1 ms +[2025-11-23T15:58:51.703] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.703] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.703] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.704] [DEBUG] debug-file - Executing task :entry:default@PreviewUpdateAssets +[2025-11-23T15:58:51.705] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.705] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.705] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.720] [DEBUG] debug-file - entry : default@PreviewUpdateAssets cost memory 0.3285064697265625 +[2025-11-23T15:58:51.720] [DEBUG] debug-file - runTaskFromQueue task cost before running: 2 s 649 ms +[2025-11-23T15:58:51.721] [INFO] debug-file - Finished :entry:default@PreviewUpdateAssets... after 16 ms +[2025-11-23T15:58:51.722] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.722] [DEBUG] debug-file - jsonObjWithoutParam {} at undefined +[2025-11-23T15:58:51.722] [DEBUG] debug-file - jsonObjWithoutParam {"license":"","devDependencies":{},"author":"","name":"entry","description":"Please describe the basic information.","main":"","version":"1.0.0","dependencies":{}} at undefined +[2025-11-23T15:58:51.725] [DEBUG] debug-file - Executing task :entry:default@PreviewArkTS +[2025-11-23T15:58:51.742] [DEBUG] debug-file - session manager: binding session. socketId=BHgztvG5se-tAEEKAAAD, threadId=1@1. +[2025-11-23T15:58:51.743] [DEBUG] debug-file - entry : default@PreviewArkTS cost memory -5.783134460449219 +[2025-11-23T15:59:10.193] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchStart +[2025-11-23T15:59:10.194] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchStart +[2025-11-23T15:59:15.204] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchLog +[2025-11-23T15:59:15.207] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchLog +[2025-11-23T15:59:15.209] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchLog +[2025-11-23T15:59:15.210] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchLog +[2025-11-23T15:59:15.474] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchLog +[2025-11-23T15:59:15.476] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchLog +[2025-11-23T15:59:15.475] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchLog +[2025-11-23T15:59:15.477] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchLog +[2025-11-23T15:59:15.476] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchLog +[2025-11-23T15:59:15.482] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchLog +[2025-11-23T15:59:15.476] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchLog +[2025-11-23T15:59:15.483] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchLog +[2025-11-23T15:59:19.602] [DEBUG] debug-file - watch worker: send response to session manager. Response type: WatchResult +[2025-11-23T15:59:19.612] [DEBUG] debug-file - session manager: watch message received from worker 1. Type: WatchResult +[2025-11-23T15:59:19.610] [DEBUG] debug-file - Ark compile finished. +[2025-11-23T15:59:19.624] [INFO] debug-file - Finished :entry:default@PreviewArkTS... after 27 s 899 ms +[2025-11-23T15:59:19.626] [DEBUG] debug-file - Executing task :entry:PreviewBuild +[2025-11-23T15:59:19.626] [DEBUG] debug-file - entry : PreviewBuild cost memory 0.01180267333984375 +[2025-11-23T15:59:19.626] [DEBUG] debug-file - runTaskFromQueue task cost before running: 30 s 555 ms +[2025-11-23T15:59:19.626] [INFO] debug-file - Finished :entry:PreviewBuild... after 1 ms +[2025-11-23T15:59:19.637] [DEBUG] debug-file - BUILD SUCCESSFUL in 30 s 566 ms +[2025-11-23T15:59:19.638] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\AppScope\app.json5 cache by regenerate. +[2025-11-23T15:59:19.639] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\entry\src\main\module.json5 cache by regenerate. +[2025-11-23T15:59:19.640] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\build-profile.json5 cache by regenerate. +[2025-11-23T15:59:19.640] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\entry\build-profile.json5 cache by regenerate. +[2025-11-23T15:59:19.640] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\entry\src\main\resources\base\profile\main_pages.json cache by regenerate. +[2025-11-23T15:59:19.640] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\hvigor\hvigor-config.json5 cache by regenerate. +[2025-11-23T15:59:19.640] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\entry\oh-package.json5 cache by regenerate. +[2025-11-23T15:59:19.640] [DEBUG] debug-file - Update task entry:default@PreBuild input file:E:\jiaocai\ensp14\oh-package.json5 cache by regenerate. +[2025-11-23T15:59:19.641] [DEBUG] debug-file - Incremental task entry:default@PreBuild post-execution cost:3 ms . +[2025-11-23T15:59:19.641] [DEBUG] debug-file - Update task entry:default@CreateModuleInfo output file:E:\jiaocai\ensp14\entry\.preview\default\generated\profile\default\ModuleInfo.ts cache. +[2025-11-23T15:59:19.641] [DEBUG] debug-file - Incremental task entry:default@CreateModuleInfo post-execution cost:1 ms . +[2025-11-23T15:59:19.641] [DEBUG] debug-file - Update task entry:default@MergeProfile input file:E:\jiaocai\ensp14\AppScope\app.json5 cache by regenerate. +[2025-11-23T15:59:19.641] [DEBUG] debug-file - Update task entry:default@MergeProfile input file:E:\jiaocai\ensp14\build-profile.json5 cache by regenerate. +[2025-11-23T15:59:19.642] [DEBUG] debug-file - Update task entry:default@MergeProfile input file:E:\jiaocai\ensp14\entry\src\main\module.json5 cache by regenerate. +[2025-11-23T15:59:19.642] [DEBUG] debug-file - Update task entry:default@MergeProfile output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\merge_profile\default\module.json cache. +[2025-11-23T15:59:19.642] [DEBUG] debug-file - Incremental task entry:default@MergeProfile post-execution cost:1 ms . +[2025-11-23T15:59:19.642] [DEBUG] debug-file - Update task entry:default@GeneratePkgContextInfo output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\loader\default\pkgContextInfo.json cache. +[2025-11-23T15:59:19.642] [DEBUG] debug-file - Incremental task entry:default@GeneratePkgContextInfo post-execution cost:1 ms . +[2025-11-23T15:59:19.642] [DEBUG] debug-file - Update task entry:default@ProcessProfile input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\merge_profile\default\module.json cache by regenerate. +[2025-11-23T15:59:19.643] [DEBUG] debug-file - Update task entry:default@ProcessProfile output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\process_profile\default\module.json cache. +[2025-11-23T15:59:19.643] [DEBUG] debug-file - Incremental task entry:default@ProcessProfile post-execution cost:1 ms . +[2025-11-23T15:59:19.643] [DEBUG] debug-file - Update task entry:default@ProcessRouterMap input file:E:\jiaocai\ensp14\entry\oh-package.json5 cache by regenerate. +[2025-11-23T15:59:19.643] [DEBUG] debug-file - Update task entry:default@ProcessRouterMap input file:E:\jiaocai\ensp14\oh-package.json5 cache by regenerate. +[2025-11-23T15:59:19.643] [DEBUG] debug-file - Update task entry:default@ProcessRouterMap input file:E:\jiaocai\ensp14\entry\src\main\module.json5 cache by regenerate. +[2025-11-23T15:59:19.644] [DEBUG] debug-file - Update task entry:default@ProcessRouterMap output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\router_map\default\temp-router-map.json cache. +[2025-11-23T15:59:19.644] [DEBUG] debug-file - Update task entry:default@ProcessRouterMap output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\router_map\default\loader-router-map.json cache. +[2025-11-23T15:59:19.644] [DEBUG] debug-file - Incremental task entry:default@ProcessRouterMap post-execution cost:2 ms . +[2025-11-23T15:59:19.645] [DEBUG] debug-file - Update task entry:default@GenerateLoaderJson input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\router_map\default\temp-router-map.json cache by regenerate. +[2025-11-23T15:59:19.645] [DEBUG] debug-file - Update task entry:default@GenerateLoaderJson output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\loader\default\loader.json cache. +[2025-11-23T15:59:19.645] [DEBUG] debug-file - Incremental task entry:default@GenerateLoaderJson post-execution cost:2 ms . +[2025-11-23T15:59:19.646] [DEBUG] debug-file - Update task entry:default@PreviewCompileResource input file:E:\jiaocai\ensp14\entry\src\main\resources cache by regenerate. +[2025-11-23T15:59:19.659] [DEBUG] debug-file - Update task entry:default@PreviewCompileResource input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\merge_profile\default\module.json cache by regenerate. +[2025-11-23T15:59:19.660] [DEBUG] debug-file - Update task entry:default@PreviewCompileResource output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\res\default cache. +[2025-11-23T15:59:19.661] [DEBUG] debug-file - Update task entry:default@PreviewCompileResource output file:E:\jiaocai\ensp14\entry\.preview\default\generated\r\default cache. +[2025-11-23T15:59:19.662] [DEBUG] debug-file - Incremental task entry:default@PreviewCompileResource post-execution cost:17 ms . +[2025-11-23T15:59:19.662] [DEBUG] debug-file - Update task entry:default@CopyPreviewProfile input file:E:\jiaocai\ensp14\entry\src\main\resources\base\profile cache by regenerate. +[2025-11-23T15:59:19.662] [DEBUG] debug-file - Update task entry:default@CopyPreviewProfile output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\res\default\resources\base\profile cache. +[2025-11-23T15:59:19.662] [DEBUG] debug-file - Incremental task entry:default@CopyPreviewProfile post-execution cost:1 ms . +[2025-11-23T15:59:19.663] [DEBUG] debug-file - Update task entry:default@PreviewUpdateAssets output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\res\default\module.json cache. +[2025-11-23T15:59:19.663] [DEBUG] debug-file - Update task entry:default@PreviewUpdateAssets output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\res\default\resources\base\profile\main_pages.json cache. +[2025-11-23T15:59:19.663] [DEBUG] debug-file - Incremental task entry:default@PreviewUpdateAssets post-execution cost:1 ms . +[2025-11-23T15:59:19.664] [DEBUG] debug-file - Update task entry:default@PreviewArkTS input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\loader\default cache by regenerate. +[2025-11-23T15:59:19.664] [DEBUG] debug-file - Update task entry:default@PreviewArkTS input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\res\default\ResourceTable.txt cache by regenerate. +[2025-11-23T15:59:19.664] [DEBUG] debug-file - Update task entry:default@PreviewArkTS input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\process_profile\default\module.json cache by regenerate. +[2025-11-23T15:59:19.665] [DEBUG] debug-file - Update task entry:default@PreviewArkTS input file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\res\default\resources\base\profile cache by regenerate. +[2025-11-23T15:59:19.665] [DEBUG] debug-file - Update task entry:default@PreviewArkTS input file:E:\jiaocai\ensp14\entry\src\main\ets cache by regenerate. +[2025-11-23T15:59:19.666] [DEBUG] debug-file - Update task entry:default@PreviewArkTS output file:E:\jiaocai\ensp14\entry\.preview\default\intermediates\loader_out\default\ets cache. +[2025-11-23T15:59:19.667] [DEBUG] debug-file - Incremental task entry:default@PreviewArkTS post-execution cost:4 ms . +[2025-11-23T15:59:19.681] [DEBUG] debug-file - Current worker pool is stopped or closed. +[2025-11-23T15:59:19.681] [DEBUG] debug-file - There's no busy workers and idle workers need to be cleared. +[2025-11-23T15:59:19.682] [DEBUG] debug-file - hvigor build process will be closed. +[2025-11-23T15:59:19.684] [DEBUG] debug-file - Current worker pool is terminated. +[2025-11-23T16:01:13.245] [DEBUG] debug-file - session manager: send message to worker process. +[2025-11-23T16:01:13.245] [DEBUG] debug-file - session manager: send message to worker process. +[2025-11-23T16:01:13.430] [DEBUG] debug-file - bad codeSnippet [object Object] +[2025-11-23T16:01:13.525] [DEBUG] debug-file - watch worker: worker is ready to be terminated. +[2025-11-23T16:01:13.526] [DEBUG] debug-file - Server currently has 0 watch-worker diff --git a/ensp14ing/ensp14/.hvigor/outputs/logs/details/details.json b/ensp14ing/ensp14/.hvigor/outputs/logs/details/details.json new file mode 100644 index 0000000..20b087d --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/outputs/logs/details/details.json @@ -0,0 +1,44 @@ +{ + "HVIGOR_OHOS_PLUGIN": { + "MODULES": [ + { + "MODULE_NAME": "1043bfc77febe75fafec0c4309faccf1", + "API_TYPE": "stageMode" + } + ], + "BUILD_MODE": "debug" + }, + "HVIGOR": { + "IS_INCREMENTAL": true, + "IS_DAEMON": true, + "IS_PARALLEL": true, + "IS_HVIGORFILE_TYPE_CHECK": false, + "TASK_TIME": { + "1043bfc77febe75fafec0c4309faccf1": { + "init": 704600, + "PreBuild": 357989000, + "CreateModuleInfo": 2293100, + "MergeProfile": 30274900, + "PreCheckSyscap": 1206200, + "GeneratePkgContextInfo": 755800, + "ProcessProfile": 123592500, + "ProcessRouterMap": 7508700, + "PreviewProcessResource": 4800500, + "GenerateLoaderJson": 15193100, + "PreviewCompileResource": 1764038600, + "PreviewHookCompileResource": 575700, + "CopyPreviewProfile": 22562700, + "ReplacePreviewerPage": 523800, + "buildPreviewerResource": 277200, + "PreviewUpdateAssets": 16280600, + "PreviewArkTS": 27900467700, + "PreviewBuild": 275300 + }, + "APP": { + "init": 280200 + } + }, + "BUILD_ID": "202511231558490680", + "TOTAL_TIME": 30565983600 + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/outputs/sync/fileCache.json b/ensp14ing/ensp14/.hvigor/outputs/sync/fileCache.json new file mode 100644 index 0000000..29d792d --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/outputs/sync/fileCache.json @@ -0,0 +1 @@ +{"CACHE_SYNC_FILE_HASH":{"E:\\jiaocai\\ensp14\\hvigor\\hvigor-config.json5":"334a374b888911d2ab8202ff66556e3721271120256ad94f9facea1e6655b42f","E:\\jiaocai\\ensp14\\build-profile.json5":"2eee20db821c2e0229c0e680b3a52f86d9e32f0ee6b1fee3d8461184c86dce40","E:\\jiaocai\\ensp14\\hvigorfile.ts":"72f0dcd1eefa94e7b020ebba799a661b26e91815f0b8c3f9fd58c4b743bb07bf","E:\\jiaocai\\ensp14\\oh-package.json5":"46ff84d32c523c28c24b8b9da299c7cf8b9477396f11766e67ab8c2e340df38e","E:\\jiaocai\\ensp14\\entry\\build-profile.json5":"f931211b917ee41047c061552afeca79100b06c76b55ab8f29c2fd861881e616","E:\\jiaocai\\ensp14\\entry\\hvigorfile.ts":"72f0dcd1eefa94e7b020ebba799a661b26e91815f0b8c3f9fd58c4b743bb07bf","E:\\jiaocai\\ensp14\\entry\\oh-package.json5":"280616c9d6433d295128fad70eb12627c718739d6a21dbd5dfe1896667ed5f58","E:\\jiaocai\\ensp14\\.hvigor\\outputs\\sync\\output.json":"5c0908842edbbf6b0c8a2d42eb700108e9035d1a3302c1ee68c0378afa32e8a1","SDK_LOCATION":"D:/Program Files/Huawei/DevEco Studio/sdk"},"OHPM_INSTALL_FILE_HASH":{"E:\\jiaocai\\ensp14\\oh-package.json5":"46ff84d32c523c28c24b8b9da299c7cf8b9477396f11766e67ab8c2e340df38e","E:\\jiaocai\\ensp14\\oh_modules\\.ohpm\\lock.json5":"aca9115dc765530c0236034b04e66fcb1e557cff53fa631297cead7ddce0336c","E:\\jiaocai\\ensp14\\entry\\oh-package.json5":"280616c9d6433d295128fad70eb12627c718739d6a21dbd5dfe1896667ed5f58","E:\\jiaocai\\ensp14\\oh_modules":true,"E:\\jiaocai\\ensp14\\entry\\oh_modules":false}} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/outputs/sync/output.json b/ensp14ing/ensp14/.hvigor/outputs/sync/output.json new file mode 100644 index 0000000..7ddb303 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/outputs/sync/output.json @@ -0,0 +1,168 @@ +{ + "ohos-module-entry": { + "SELECT_TARGET": "default", + "MODULE_BUILD_DIR": "E:\\jiaocai\\ensp14\\entry\\build", + "DEPENDENCY_INFO": {}, + "TARGETS": { + "default": { + "SOURCE_ROOT": "E:\\jiaocai\\ensp14\\entry\\src\\main", + "RESOURCES_PATH": [ + "E:\\jiaocai\\ensp14\\entry\\src\\main\\resources" + ], + "BUILD_PATH": { + "OUTPUT_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\outputs\\default", + "INTERMEDIA_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates", + "JS_ASSETS_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader_out\\default", + "JS_LITE_ASSETS_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader_out_lite\\default", + "RES_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\res\\default", + "RES_PROFILE_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\res\\default\\resources\\base\\profile", + "ETS_SUPER_VISUAL_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule", + "JS_SUPER_VISUAL_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\cache\\default\\default@CompileJS\\jsbundle", + "WORKER_LOADER": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader\\default\\loader.json", + "MANIFEST_JSON": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\manifest\\default", + "OUTPUT_METADATA_JSON": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\hap_metadata\\default\\output_metadata.json", + "SOURCE_MAP_DIR": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\source_map\\default" + }, + "BUILD_OPTION": { + "debuggable": true + } + }, + "ohosTest": { + "SOURCE_ROOT": "E:\\jiaocai\\ensp14\\entry\\src\\ohosTest", + "RESOURCES_PATH": [ + "E:\\jiaocai\\ensp14\\entry\\src\\ohosTest\\resources" + ], + "BUILD_PATH": { + "OUTPUT_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\outputs\\ohosTest", + "INTERMEDIA_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates", + "JS_ASSETS_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader_out\\ohosTest", + "JS_LITE_ASSETS_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader_out_lite\\ohosTest", + "RES_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\res\\ohosTest", + "RES_PROFILE_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\res\\ohosTest\\resources\\base\\profile", + "ETS_SUPER_VISUAL_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\cache\\ohosTest\\ohosTest@OhosTestCompileArkTS\\esmodule", + "JS_SUPER_VISUAL_PATH": "E:\\jiaocai\\ensp14\\entry\\build\\default\\cache\\ohosTest\\ohosTest@OhosTestCompileJS\\jsbundle", + "WORKER_LOADER": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader\\ohosTest\\loader.json", + "MANIFEST_JSON": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\manifest\\ohosTest", + "OUTPUT_METADATA_JSON": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\hap_metadata\\ohosTest\\output_metadata.json", + "SOURCE_MAP_DIR": "E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\source_map\\ohosTest" + }, + "BUILD_OPTION": { + "debuggable": true + } + } + }, + "BUILD_OPTION": { + "default-default": { + "debuggable": true, + "copyFrom": "default", + "arkOptions": {}, + "name": "debug" + } + }, + "BUILD_PROFILE_OPT": { + "apiType": "stageMode", + "buildOption": { + "arkOptions": {} + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } + }, + { + "name": "default" + }, + { + "name": "debug" + } + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest" + } + ] + }, + "BUILD_CACHE_DIR": "" + }, + "ohos-project": { + "SELECT_PRODUCT_NAME": "default", + "MODULE_BUILD_DIR": "E:\\jiaocai\\ensp14\\build", + "BUNDLE_NAME": "com.example.ensp_fourteen", + "BUILD_PATH": { + "OUTPUT_PATH": "E:\\jiaocai\\ensp14\\build\\outputs\\default" + }, + "MODULES": [ + { + "name": "entry", + "srcPath": "E:\\jiaocai\\ensp14\\entry", + "targets": [ + { + "name": "default", + "applyToProducts": [ + "default" + ] + } + ], + "belongProjectPath": "E:\\jiaocai\\ensp14" + } + ], + "PROFILE_OPT": { + "app": { + "signingConfigs": [], + "products": [ + { + "name": "default", + "signingConfig": "default", + "compileSdkVersion": 10, + "compatibleSdkVersion": 9, + "runtimeOS": "OpenHarmony" + } + ], + "buildModeSet": [ + { + "name": "debug" + }, + { + "name": "release" + } + ] + }, + "modules": [ + { + "name": "entry", + "srcPath": "./entry", + "targets": [ + { + "name": "default", + "applyToProducts": [ + "default" + ] + } + ] + } + ] + }, + "CONFIG_PROPERTIES": { + "enableSignTask": true, + "skipNativeIncremental": false, + "hvigor.keepDependency": true + }, + "OVERALL_PROJECT_PATHS": [ + "E:\\jiaocai\\ensp14" + ], + "BUILD_CACHE_DIR": "" + }, + "version": 1 +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/report/report-202511231558490680.json b/ensp14ing/ensp14/.hvigor/report/report-202511231558490680.json new file mode 100644 index 0000000..611ffc7 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/report/report-202511231558490680.json @@ -0,0 +1,8746 @@ +{ + "version": "2.0", + "ppid": 23648, + "events": [ + { + "head": { + "id": "252677ff-bd74-4e16-887d-9c975506f7cd", + "name": "hvigor build process will be closed.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320701253554800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ab2250ed-1dba-4a34-8128-5209fd6737dc", + "name": "watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320701257538800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2c6bc154-0e14-4c05-b409-86d67f79392c", + "name": "watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320701257720800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "464bed52-d1fa-4e0b-98ef-8f1c0cc8f43f", + "name": "worker[0] exits with exit code 0.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320701267520500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "00d8bb6f-abb7-40eb-8659-701b6158cdf0", + "name": "worker[1] exits with exit code 0.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320701268013500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "545f0f2d-cb65-48cf-bea3-0fefced7bac5", + "name": "watch worker: worker id should be larger than 0. Nothing will be sent to any worker thread.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748293060000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "name": "init", + "description": "Initialize and build task graph.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748333351400, + "endTime": 320748531748100 + }, + "additional": { + "children": [ + "917af5f1-4bff-4bc3-a3bc-72d447519b10", + "4bd12c45-3e48-498f-b6da-810be6fe595e", + "9ae9787e-cc29-45f0-a8a0-a1b298655839", + "72034f4b-0702-40f1-8f13-4ef398e603ef", + "e37ab93b-de9d-43f2-85c1-a71329ff9eef", + "784f252b-1d67-4b5a-b364-ee46adacf761", + "0ab733e7-70ee-4834-add3-feb9489208a2" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "Init", + "taskRunReasons": [], + "logId": "49b82cff-4c7f-477e-952f-f960e1702f89" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "917af5f1-4bff-4bc3-a3bc-72d447519b10", + "name": "create hvigor project model", + "description": "Initialize hvigor project model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748333362600, + "endTime": 320748372393800 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "e1bda0a5-c48a-41e1-a4c0-45d701d99f9d" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "name": "configure hvigor plugin", + "description": "Configure hvigor plugin.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748372409200, + "endTime": 320748526293900 + }, + "additional": { + "children": [ + "b2ee0941-b4eb-4cd5-85f2-b219db9cb487", + "748d71b6-cc40-4282-8f31-dbc856bec81c", + "bb68ad0c-8f2c-4923-9603-e3b2c2d02fba", + "e195cef5-1335-439c-91ef-4f2263a4c6c9", + "a0bc3a06-297b-448d-95b6-037ed5f70c81", + "6ce1a686-d1f8-4c5b-9d69-8c19606c72ea", + "d8c056e2-89a0-4dfc-841f-be2236369238", + "364ec7ef-9ddd-4541-a247-4fb22e35349f", + "8f91017b-77c1-412c-9b8c-60d2768ec264" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "510576dd-bd54-48b3-aee8-71601c0745f5" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "9ae9787e-cc29-45f0-a8a0-a1b298655839", + "name": "build task graph", + "description": "Build task graph.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748526339200, + "endTime": 320748531722100 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "2c5ee60e-e9b6-4827-8908-0aeb8d38a2f1" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "72034f4b-0702-40f1-8f13-4ef398e603ef", + "name": "init task execution option", + "description": "Init task execution option.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748531726700, + "endTime": 320748531744400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "840de202-130e-4e93-87f5-245eecda2961" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "e37ab93b-de9d-43f2-85c1-a71329ff9eef", + "name": "\"configEvaluated\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748348967500, + "endTime": 320748349015600 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "cf32c636-6f31-4264-a147-e78cf95e6df5" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "cf32c636-6f31-4264-a147-e78cf95e6df5", + "name": "\"configEvaluated\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748348967500, + "endTime": 320748349015600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "e37ab93b-de9d-43f2-85c1-a71329ff9eef", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "784f252b-1d67-4b5a-b364-ee46adacf761", + "name": "\"nodesInitialized\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748364431800, + "endTime": 320748364562700 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "b96160c6-bdba-404c-a8df-cd6891839f23" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "b96160c6-bdba-404c-a8df-cd6891839f23", + "name": "\"nodesInitialized\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748364431800, + "endTime": 320748364562700 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "784f252b-1d67-4b5a-b364-ee46adacf761", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "d63c841e-3d94-48dc-98de-eaa7a0f104f8", + "name": "Hvigor init with startParameters:{\n hvigorfileTypeCheck: false,\n parallelExecution: true,\n incrementalExecution: true,\n printStackTrace: false,\n daemon: true,\n analyze: 0,\n logLevel: Level { level: 20000, levelStr: 'INFO', colour: 'green' }\n}", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748365883000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4a68af90-aae0-44b5-9998-5a650e37ca47", + "name": "Cache service initialization finished in 6 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748372285100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "e1bda0a5-c48a-41e1-a4c0-45d701d99f9d", + "name": "create hvigor project model", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748333362600, + "endTime": 320748372393800 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "917af5f1-4bff-4bc3-a3bc-72d447519b10", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "b2ee0941-b4eb-4cd5-85f2-b219db9cb487", + "name": "init configuration", + "description": "Initialize configuration.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748389915100, + "endTime": 320748390039900 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "9dd2ca0b-b5eb-42ad-b58d-219cdd9f54e0" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "748d71b6-cc40-4282-8f31-dbc856bec81c", + "name": "configure project task", + "description": "Configure project task.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748390197100, + "endTime": 320748403006100 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "1a0cb291-83b8-40e8-bd3a-547c70d979e8" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "bb68ad0c-8f2c-4923-9603-e3b2c2d02fba", + "name": "eval project", + "description": "Evaluate project.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748403018000, + "endTime": 320748440223300 + }, + "additional": { + "children": [ + "920dc652-6f89-490e-b992-a70f8830b2d4", + "47b5f977-1d2f-4301-b924-df8f285cfb1b", + "11501c23-a458-4bc8-82ac-51a291cd905e" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "efa19170-a794-4daf-a3be-6ddbdf365e90" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "e195cef5-1335-439c-91ef-4f2263a4c6c9", + "name": "eval modules", + "description": "Evaluate modules.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748440239500, + "endTime": 320748465115200 + }, + "additional": { + "children": [ + "acebf26b-869e-408d-9030-8748a807266a" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "32a443b6-b8f5-441c-9877-aa416a22f663" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "a0bc3a06-297b-448d-95b6-037ed5f70c81", + "name": "add config dependencies", + "description": "Add configuration dependencies.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748465122000, + "endTime": 320748485536500 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "18a37463-2ffc-4e72-b763-5e36ce7fcfcb" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "6ce1a686-d1f8-4c5b-9d69-8c19606c72ea", + "name": "ohpm install", + "description": "Ohpm install event.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748489656900, + "endTime": 320748512222100 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "0be0243d-7f4e-4cda-835e-f35504721eb6" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "d8c056e2-89a0-4dfc-841f-be2236369238", + "name": "eval hook", + "description": "EvaluateEvent hook.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748512377600, + "endTime": 320748526121800 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "016aeb4d-38ed-49f0-8818-c9acbb8b90be" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "364ec7ef-9ddd-4541-a247-4fb22e35349f", + "name": "fin configuration", + "description": "Finish configuration.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748526142900, + "endTime": 320748526277200 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "cfcaff76-aa00-4ad9-888e-e696aeb731d7" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "9dd2ca0b-b5eb-42ad-b58d-219cdd9f54e0", + "name": "init configuration", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748389915100, + "endTime": 320748390039900 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "b2ee0941-b4eb-4cd5-85f2-b219db9cb487", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "1a0cb291-83b8-40e8-bd3a-547c70d979e8", + "name": "configure project task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748390197100, + "endTime": 320748403006100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "748d71b6-cc40-4282-8f31-dbc856bec81c", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "920dc652-6f89-490e-b992-a70f8830b2d4", + "name": "\"beforeNodeEvaluate\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748403588000, + "endTime": 320748403607800 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "bb68ad0c-8f2c-4923-9603-e3b2c2d02fba", + "logId": "a5edf59f-ab7c-4a1f-9ee6-83345ddcaae1" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "a5edf59f-ab7c-4a1f-9ee6-83345ddcaae1", + "name": "\"beforeNodeEvaluate\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748403588000, + "endTime": 320748403607800 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "920dc652-6f89-490e-b992-a70f8830b2d4", + "parent": "efa19170-a794-4daf-a3be-6ddbdf365e90" + } + }, + { + "head": { + "id": "47b5f977-1d2f-4301-b924-df8f285cfb1b", + "name": "eval hvigorfile", + "description": "Evaluate hvigorfile.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748405291200, + "endTime": 320748439702600 + }, + "additional": { + "children": [ + "09902609-f2f1-4a11-b5d1-35d6daa85520", + "0ce2f268-3ccf-49b0-bafe-a8226a3e5d66" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "bb68ad0c-8f2c-4923-9603-e3b2c2d02fba", + "logId": "08a0a696-d0e3-4360-96a2-cd0b61310f56" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "09902609-f2f1-4a11-b5d1-35d6daa85520", + "name": "require hvigorfile", + "description": "Require hvigorfile.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748405310700, + "endTime": 320748416079700 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "47b5f977-1d2f-4301-b924-df8f285cfb1b", + "logId": "122bc02c-a05e-4501-8d5c-6427d9e47e41" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "0ce2f268-3ccf-49b0-bafe-a8226a3e5d66", + "name": "bind plugins", + "description": "Bind plugins.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748416102200, + "endTime": 320748439694600 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "47b5f977-1d2f-4301-b924-df8f285cfb1b", + "logId": "42ced1df-2e2f-46b5-9624-18d2856ca67e" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "215fe16f-0ea9-4621-888d-e32e208f9c9c", + "name": "hvigorfile, resolving E:\\jiaocai\\ensp14\\hvigorfile.ts", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748405319300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0aa4b4c3-55a3-4835-9e04-1d265119b579", + "name": "hvigorfile, require result: { default: { system: [Function: appTasks], plugins: [] } }", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748415909500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "122bc02c-a05e-4501-8d5c-6427d9e47e41", + "name": "require hvigorfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748405310700, + "endTime": 320748416079700 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "09902609-f2f1-4a11-b5d1-35d6daa85520", + "parent": "08a0a696-d0e3-4360-96a2-cd0b61310f56" + } + }, + { + "head": { + "id": "bdaf0a63-a005-4cd9-8dba-f06d49448688", + "name": "hvigorfile, binding system plugins [Function: appTasks]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748416122700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b873e552-4e4c-4bc9-8cbe-cf95e28c24cb", + "name": "Start initialize project's product build option map with build mode debug.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748420099600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f2730070-f48d-41cb-87e9-910e87934a53", + "name": "Picking option from product 'default' with build mode 'debug'.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748420196500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b4194fcd-50f2-4fb2-87c5-ae0880c23ec8", + "name": "Product 'default' build option initialized", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748420275300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "7993f5de-9407-40de-aac1-1b6ab5cf7d10", + "name": "End initialize project's product build option map with build mode 'debug'.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748420458600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "aa1bf3c2-568f-4827-837f-70dd02da15ca", + "name": "Obtain build option for product 'default'in this build.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748421303900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "cc36dea3-6c04-4ecc-b2b9-7079077a80a5", + "name": "No signingConfig found, initRemoteHspCache failed.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748422962600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "e26aa9e9-3297-453b-b547-b35bf2f8a741", + "name": "Start recording SDK configuration permission data.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748427063500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "870015fb-7aec-4962-8fc9-a8731dfb6f3b", + "name": "The file does not exist. At D:\\Huawei\\OpenHarmony\\10\\10\\previewer\\common\\resources\\module.json", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748427238500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b4bb923b-5959-495b-8cd6-26767ce90692", + "name": "Sdk init in 4 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748427382200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "5f75287d-bd89-4c76-b161-792b640ec758", + "name": "sdkVersion", + "description": "4.0.10.16", + "type": "mark" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748427451100 + }, + "additional": { + "time": { + "year": 2025, + "month": 11, + "day": 23, + "hour": 15, + "minute": 58 + }, + "markType": "other" + } + }, + { + "head": { + "id": "6b3f06f0-e076-4e47-9c80-5ff78cf20f8c", + "name": "caseSensitiveCheckOff", + "description": "caseSensitiveCheck check is off", + "type": "mark" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748427480600 + }, + "additional": { + "time": { + "year": 2025, + "month": 11, + "day": 23, + "hour": 15, + "minute": 58 + }, + "markType": "other" + } + }, + { + "head": { + "id": "5d1656fe-61ec-4741-8073-51a159a9252c", + "name": "Project task initialization takes 12 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748439495400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "bf6e89cd-34fb-4b2b-b072-7138605ce171", + "name": "hvigorfile, binding custom plugins []", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748439582500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1fbfd91c-20af-43ea-8da1-95589d675eda", + "name": "hvigorfile, no custom plugins were found in E:\\jiaocai\\ensp14\\hvigorfile.ts", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748439625400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "77926272-8e2f-41a3-bc24-e0661f927f47", + "name": "hvigorfile, resolve finished E:\\jiaocai\\ensp14\\hvigorfile.ts", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748439659800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "42ced1df-2e2f-46b5-9624-18d2856ca67e", + "name": "bind plugins", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748416102200, + "endTime": 320748439694600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "0ce2f268-3ccf-49b0-bafe-a8226a3e5d66", + "parent": "08a0a696-d0e3-4360-96a2-cd0b61310f56" + } + }, + { + "head": { + "id": "08a0a696-d0e3-4360-96a2-cd0b61310f56", + "name": "eval hvigorfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748405291200, + "endTime": 320748439702600 + }, + "additional": { + "logType": "info", + "children": [ + "122bc02c-a05e-4501-8d5c-6427d9e47e41", + "42ced1df-2e2f-46b5-9624-18d2856ca67e" + ], + "durationId": "47b5f977-1d2f-4301-b924-df8f285cfb1b", + "parent": "efa19170-a794-4daf-a3be-6ddbdf365e90" + } + }, + { + "head": { + "id": "11501c23-a458-4bc8-82ac-51a291cd905e", + "name": "\"afterNodeEvaluate\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748440093500, + "endTime": 320748440202800 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "bb68ad0c-8f2c-4923-9603-e3b2c2d02fba", + "logId": "5c8561fd-60ec-4116-9c59-4a0f3dee8523" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "5c8561fd-60ec-4116-9c59-4a0f3dee8523", + "name": "\"afterNodeEvaluate\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748440093500, + "endTime": 320748440202800 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "11501c23-a458-4bc8-82ac-51a291cd905e", + "parent": "efa19170-a794-4daf-a3be-6ddbdf365e90" + } + }, + { + "head": { + "id": "efa19170-a794-4daf-a3be-6ddbdf365e90", + "name": "eval project", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748403018000, + "endTime": 320748440223300 + }, + "additional": { + "logType": "info", + "children": [ + "a5edf59f-ab7c-4a1f-9ee6-83345ddcaae1", + "08a0a696-d0e3-4360-96a2-cd0b61310f56", + "5c8561fd-60ec-4116-9c59-4a0f3dee8523" + ], + "durationId": "bb68ad0c-8f2c-4923-9603-e3b2c2d02fba", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "acebf26b-869e-408d-9030-8748a807266a", + "name": "eval submodule", + "description": "Evaluate submodule.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748440639400, + "endTime": 320748465104200 + }, + "additional": { + "children": [ + "d08eb970-38a7-4d4a-bb9a-29cc6180b46a", + "71ecc406-ec77-4634-8c32-b7987cfec53b", + "fbcc0694-d814-46f8-9f09-64e48a62c7f2" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "e195cef5-1335-439c-91ef-4f2263a4c6c9", + "logId": "24a2571c-f6d0-4bc5-9af2-29e1a3357354" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "d08eb970-38a7-4d4a-bb9a-29cc6180b46a", + "name": "\"beforeNodeEvaluate\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748442946600, + "endTime": 320748442962200 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "acebf26b-869e-408d-9030-8748a807266a", + "logId": "ec3e7cb4-1562-4870-81ec-0d970fccedd1" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "ec3e7cb4-1562-4870-81ec-0d970fccedd1", + "name": "\"beforeNodeEvaluate\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748442946600, + "endTime": 320748442962200 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "d08eb970-38a7-4d4a-bb9a-29cc6180b46a", + "parent": "24a2571c-f6d0-4bc5-9af2-29e1a3357354" + } + }, + { + "head": { + "id": "71ecc406-ec77-4634-8c32-b7987cfec53b", + "name": "eval hvigorfile", + "description": "Evaluate hvigorfile.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748443975700, + "endTime": 320748464317600 + }, + "additional": { + "children": [ + "9fe631cc-4fc1-4e13-8c1b-fa63a7c7249e", + "6b75a779-bdb3-413c-be12-e475fc0cd7f6" + ], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "acebf26b-869e-408d-9030-8748a807266a", + "logId": "c10d664e-bf14-411b-bb27-f54132abb868" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "9fe631cc-4fc1-4e13-8c1b-fa63a7c7249e", + "name": "require hvigorfile", + "description": "Require hvigorfile.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748443976400, + "endTime": 320748447168000 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "71ecc406-ec77-4634-8c32-b7987cfec53b", + "logId": "925d5635-98a3-42bc-ac8f-a0dd283c758f" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "6b75a779-bdb3-413c-be12-e475fc0cd7f6", + "name": "bind plugins", + "description": "Bind plugins.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748447262000, + "endTime": 320748464309900 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "71ecc406-ec77-4634-8c32-b7987cfec53b", + "logId": "fdd5c4a1-7c68-4cf5-b563-35d70cef574c" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "330bed40-b132-4675-b27e-05584ba510be", + "name": "hvigorfile, resolving E:\\jiaocai\\ensp14\\entry\\hvigorfile.ts", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748443980700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "947381bc-0786-46f1-a987-d4d0fd4009b0", + "name": "hvigorfile, require result: { default: { system: [Function: hapTasks], plugins: [] } }", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748447073900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "925d5635-98a3-42bc-ac8f-a0dd283c758f", + "name": "require hvigorfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748443976400, + "endTime": 320748447168000 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "9fe631cc-4fc1-4e13-8c1b-fa63a7c7249e", + "parent": "c10d664e-bf14-411b-bb27-f54132abb868" + } + }, + { + "head": { + "id": "d21315fc-fe36-4ab5-95b7-5010dcaf0d6d", + "name": "hvigorfile, binding system plugins [Function: hapTasks]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748447291300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "7940f3b3-46f7-4e46-87b3-4573d861eb81", + "name": "Start initialize module-target build option map, moduleName=entry, buildMode=debug", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748451826600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ee64754d-6a7b-4ed8-8bf2-f3924a111afe", + "name": "Target 'default' config initialized", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748451945300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "e715bf31-01ce-47a2-860c-7932e95a2fb3", + "name": "Target 'ohosTest' config initialized", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748452116200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "fa2293f7-569f-40e4-9f7e-2cc28a2c3591", + "name": "Module 'entry' target 'default' build option initialized", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748452299600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b681cdde-a53f-4d5e-aafe-fb8fde54ef8f", + "name": "Module 'entry' target 'ohosTest' build option initialized", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748452356700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "379cb437-9032-4ce8-9d6c-f0a090186d8f", + "name": "End initialize module-target build option map, moduleName=entry", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748452386500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ef23953a-f9c7-4fc9-b2d7-ffdb85b8fc81", + "name": "Obtain build option for module 'entry' target 'default'in this build.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748452421500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "bf14d1c7-1596-4282-a81d-bb66912bbf2d", + "name": "Module entry task initialization takes 2 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748464083700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "678e5b34-296e-414e-a165-f0b4cba453c4", + "name": "hvigorfile, binding custom plugins []", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748464200100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "74b7649b-95ac-4827-931d-f718dfcabbb1", + "name": "hvigorfile, no custom plugins were found in E:\\jiaocai\\ensp14\\entry\\hvigorfile.ts", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748464244400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "03238888-7f79-4596-a49e-e6d5f27bdc03", + "name": "hvigorfile, resolve finished E:\\jiaocai\\ensp14\\entry\\hvigorfile.ts", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748464280700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "fdd5c4a1-7c68-4cf5-b563-35d70cef574c", + "name": "bind plugins", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748447262000, + "endTime": 320748464309900 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "6b75a779-bdb3-413c-be12-e475fc0cd7f6", + "parent": "c10d664e-bf14-411b-bb27-f54132abb868" + } + }, + { + "head": { + "id": "c10d664e-bf14-411b-bb27-f54132abb868", + "name": "eval hvigorfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748443975700, + "endTime": 320748464317600 + }, + "additional": { + "logType": "info", + "children": [ + "925d5635-98a3-42bc-ac8f-a0dd283c758f", + "fdd5c4a1-7c68-4cf5-b563-35d70cef574c" + ], + "durationId": "71ecc406-ec77-4634-8c32-b7987cfec53b", + "parent": "24a2571c-f6d0-4bc5-9af2-29e1a3357354" + } + }, + { + "head": { + "id": "fbcc0694-d814-46f8-9f09-64e48a62c7f2", + "name": "\"afterNodeEvaluate\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748465078800, + "endTime": 320748465092200 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "acebf26b-869e-408d-9030-8748a807266a", + "logId": "893bc9b7-6774-4786-91e7-b72f2259acc1" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "893bc9b7-6774-4786-91e7-b72f2259acc1", + "name": "\"afterNodeEvaluate\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748465078800, + "endTime": 320748465092200 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "fbcc0694-d814-46f8-9f09-64e48a62c7f2", + "parent": "24a2571c-f6d0-4bc5-9af2-29e1a3357354" + } + }, + { + "head": { + "id": "24a2571c-f6d0-4bc5-9af2-29e1a3357354", + "name": "eval submodule", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748440639400, + "endTime": 320748465104200 + }, + "additional": { + "logType": "info", + "children": [ + "ec3e7cb4-1562-4870-81ec-0d970fccedd1", + "c10d664e-bf14-411b-bb27-f54132abb868", + "893bc9b7-6774-4786-91e7-b72f2259acc1" + ], + "durationId": "acebf26b-869e-408d-9030-8748a807266a", + "parent": "32a443b6-b8f5-441c-9877-aa416a22f663" + } + }, + { + "head": { + "id": "32a443b6-b8f5-441c-9877-aa416a22f663", + "name": "eval modules", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748440239500, + "endTime": 320748465115200 + }, + "additional": { + "logType": "info", + "children": [ + "24a2571c-f6d0-4bc5-9af2-29e1a3357354" + ], + "durationId": "e195cef5-1335-439c-91ef-4f2263a4c6c9", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "31ae0204-fc06-43f4-837f-548116d2d2fc", + "name": "watch files: [\n 'E:\\\\jiaocai\\\\ensp14\\\\hvigorfile.ts',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\hvigorfile.ts'\n]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748483329200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "7fa2bd5b-beb9-4ae2-9b18-f2662478235a", + "name": "hvigorfile, resolve hvigorfile dependencies in 20 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748484685200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "18a37463-2ffc-4e72-b763-5e36ce7fcfcb", + "name": "add config dependencies", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748465122000, + "endTime": 320748485536500 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "a0bc3a06-297b-448d-95b6-037ed5f70c81", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "8f91017b-77c1-412c-9b8c-60d2768ec264", + "name": "\"nodesEvaluated\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748489438100, + "endTime": 320748489647100 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "logId": "0cdcb736-4505-47e7-87c6-f219b5679ffc" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "5dc0948d-7b9c-4af9-8fca-38320a6c72b8", + "name": "project has submodules:entry", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748489489100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0cdcb736-4505-47e7-87c6-f219b5679ffc", + "name": "\"nodesEvaluated\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748489438100, + "endTime": 320748489647100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "8f91017b-77c1-412c-9b8c-60d2768ec264", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "5a22e440-53db-46c0-8766-ff1f9ad48086", + "name": "start to load updatedOhPackageInfo to the disk", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748495063800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2861e3dd-76b2-416a-99aa-d3af1ccf0331", + "name": "load to the disk finished", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748508416300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0be0243d-7f4e-4cda-835e-f35504721eb6", + "name": "ohpm install", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748489656900, + "endTime": 320748512222100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "6ce1a686-d1f8-4c5b-9d69-8c19606c72ea", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "165d81bc-55e6-46d3-ba63-5c4b82d84a7b", + "name": "Start to initialize dependency information.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748512473600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "a41a16df-48bb-47c1-a863-3cb802f83fae", + "name": "Module ensp14 Collected Dependency: ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748518138500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2a904d78-3c2e-4dfb-b8ab-fd1eebbc02b5", + "name": "Module ensp14's total dependency: 0", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748518247100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "150bfd91-396e-4c04-8c2e-a2242bfaa9f7", + "name": "Start to initialize dependency information.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748518543300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "601db279-843a-4765-9b9a-ea86900cd4ca", + "name": "Module entry Collected Dependency: ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748522116100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "e887224f-fc90-4ffd-bf68-809b8307cda1", + "name": "Module entry's total dependency: 0", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748522809500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "016aeb4d-38ed-49f0-8818-c9acbb8b90be", + "name": "eval hook", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748512377600, + "endTime": 320748526121800 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "d8c056e2-89a0-4dfc-841f-be2236369238", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "12efdcf1-8e8f-49d0-a42e-4f7c40b4d1d9", + "name": "Configuration phase cost:137 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748526177800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "cfcaff76-aa00-4ad9-888e-e696aeb731d7", + "name": "fin configuration", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748526142900, + "endTime": 320748526277200 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "364ec7ef-9ddd-4541-a247-4fb22e35349f", + "parent": "510576dd-bd54-48b3-aee8-71601c0745f5" + } + }, + { + "head": { + "id": "510576dd-bd54-48b3-aee8-71601c0745f5", + "name": "configure hvigor plugin", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748372409200, + "endTime": 320748526293900 + }, + "additional": { + "logType": "info", + "children": [ + "9dd2ca0b-b5eb-42ad-b58d-219cdd9f54e0", + "1a0cb291-83b8-40e8-bd3a-547c70d979e8", + "efa19170-a794-4daf-a3be-6ddbdf365e90", + "32a443b6-b8f5-441c-9877-aa416a22f663", + "18a37463-2ffc-4e72-b763-5e36ce7fcfcb", + "0be0243d-7f4e-4cda-835e-f35504721eb6", + "016aeb4d-38ed-49f0-8818-c9acbb8b90be", + "cfcaff76-aa00-4ad9-888e-e696aeb731d7", + "0cdcb736-4505-47e7-87c6-f219b5679ffc" + ], + "durationId": "4bd12c45-3e48-498f-b6da-810be6fe595e", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "0ab733e7-70ee-4834-add3-feb9489208a2", + "name": "\"taskGraphResolved\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748531697400, + "endTime": 320748531712000 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac", + "logId": "8277d826-7b65-4ac7-bec9-44dcb235a106" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "8277d826-7b65-4ac7-bec9-44dcb235a106", + "name": "\"taskGraphResolved\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748531697400, + "endTime": 320748531712000 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "0ab733e7-70ee-4834-add3-feb9489208a2", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "2c5ee60e-e9b6-4827-8908-0aeb8d38a2f1", + "name": "build task graph", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748526339200, + "endTime": 320748531722100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "9ae9787e-cc29-45f0-a8a0-a1b298655839", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "840de202-130e-4e93-87f5-245eecda2961", + "name": "init task execution option", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748531726700, + "endTime": 320748531744400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "72034f4b-0702-40f1-8f13-4ef398e603ef", + "parent": "49b82cff-4c7f-477e-952f-f960e1702f89" + } + }, + { + "head": { + "id": "49b82cff-4c7f-477e-952f-f960e1702f89", + "name": "init", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748333351400, + "endTime": 320748531748100 + }, + "additional": { + "logType": "info", + "children": [ + "e1bda0a5-c48a-41e1-a4c0-45d701d99f9d", + "510576dd-bd54-48b3-aee8-71601c0745f5", + "2c5ee60e-e9b6-4827-8908-0aeb8d38a2f1", + "840de202-130e-4e93-87f5-245eecda2961", + "cf32c636-6f31-4264-a147-e78cf95e6df5", + "b96160c6-bdba-404c-a8df-cd6891839f23", + "8277d826-7b65-4ac7-bec9-44dcb235a106" + ], + "durationId": "b5fc1c3c-71ab-4284-9a90-8b7942f6f5ac" + } + }, + { + "head": { + "id": "53eb4c14-1b02-4d6d-9a25-ad888fe6dc68", + "name": "Configuration task cost before running: 220 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748532115100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "444dea71-4149-45ba-be7a-280d6d7f49e7", + "name": "entry:default@PreBuild", + "description": "Pre-build in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748537270400, + "endTime": 320748892941000 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Verification", + "taskRunReasons": [], + "detailId": "cbdf98bd-4c96-41c0-9c99-afdd634ef88a", + "logId": "71fb769c-bda8-4dd6-826f-cb32d76e2fea" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "cbdf98bd-4c96-41c0-9c99-afdd634ef88a", + "name": "create entry:default@PreBuild task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748533394900 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "444dea71-4149-45ba-be7a-280d6d7f49e7" + } + }, + { + "head": { + "id": "7f8bf9b5-217a-4798-90c7-434f82763a66", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748533879100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2f7c49b2-3492-4e57-b281-ac58205bad0a", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748534056800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c89001ed-b96e-4909-8040-93c7d72dbdd3", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748534108500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "cb85eb43-44b3-49bb-a23d-78d44872cf7c", + "name": "Executing task :entry:default@PreBuild", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748537281500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0aced106-1d9a-40a1-966c-da99dd6e9961", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748540904500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "aa5b440b-6948-4e9d-8f3a-f614f79f766f", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748541072900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "509c79d8-9b8d-47a1-9142-bda1f50e853a", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748541127800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b6c96ff3-6e07-48d5-89f7-710bd4c68a2e", + "name": "current product is not Atomic service.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748888842700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6686391b-0dc7-4c65-805b-bad7df3c2fb6", + "name": "Use tool [win32: JAVA_HOME, CLASSPATH]\n [\n { JAVA_HOME: 'D:\\\\Program Files\\\\Huawei\\\\DevEco Studio\\\\jbr' },\n { CLASSPATH: undefined }\n]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748889069300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "59aa99a8-0379-4e43-9caa-7eceda2c0661", + "name": "Use tool [win32: NODE_HOME]\n [\n {\n NODE_HOME: 'D:\\\\Program Files\\\\Huawei\\\\DevEco Studio\\\\tools\\\\node'\n }\n]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748889177200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "87438d1a-9570-4a04-987b-dd61f9428afd", + "name": "entry : default@PreBuild cost memory 14.41229248046875", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748889644800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8d4e76c2-0578-4556-a09f-f6144fa61c0b", + "name": "runTaskFromQueue task cost before running: 580 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748892337500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "71fb769c-bda8-4dd6-826f-cb32d76e2fea", + "name": "Finished :entry:default@PreBuild", + "description": "Pre-build in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748537270400, + "endTime": 320748892941000, + "totalTime": 354838500 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "444dea71-4149-45ba-be7a-280d6d7f49e7" + } + }, + { + "head": { + "id": "0747d200-2ee0-4c7a-92b2-498b0e7423b2", + "name": "entry:default@CreateModuleInfo", + "description": "Create the ModuleInfo.ts file for the hap/hsp package.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748901150300, + "endTime": 320748903191500 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Generate", + "taskRunReasons": [], + "detailId": "68e0b81c-640f-4d8e-a0bf-59cb4b35df2c", + "logId": "d173b97e-1acc-4e53-8645-34db506913a7" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "68e0b81c-640f-4d8e-a0bf-59cb4b35df2c", + "name": "create entry:default@CreateModuleInfo task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748896419200 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "0747d200-2ee0-4c7a-92b2-498b0e7423b2" + } + }, + { + "head": { + "id": "38c7b717-75dd-415a-8c2a-e30782dddd56", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748896736500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6f9c7f0f-eaa4-4c29-8364-fe914173ced6", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748896822700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "fa825d80-eb1d-433f-89e8-e7379aa3ebae", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748897567000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "36968d69-2503-4677-9108-481e5eb81803", + "name": "Executing task :entry:default@CreateModuleInfo", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748901294200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "dd70aa98-82d5-4796-a81b-e9ce68bb8141", + "name": "Task 'entry:default@CreateModuleInfo' cost while wrapping incremental declarations: 1 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748902293800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "67e4004f-c171-4058-86de-869577004832", + "name": "entry : default@CreateModuleInfo cost memory 0.0558624267578125", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748903035000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0de077ad-e1e2-4934-97e3-735c56df3baa", + "name": "runTaskFromQueue task cost before running: 591 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748903146100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "d173b97e-1acc-4e53-8645-34db506913a7", + "name": "Finished :entry:default@CreateModuleInfo", + "description": "Create the ModuleInfo.ts file for the hap/hsp package.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748901150300, + "endTime": 320748903191500, + "totalTime": 1993400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "0747d200-2ee0-4c7a-92b2-498b0e7423b2" + } + }, + { + "head": { + "id": "f346ad91-5544-4f11-8927-42b39a96b619", + "name": "entry:default@MergeProfile", + "description": "Merge app config manifest files in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748905499800, + "endTime": 320748935681300 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Config", + "taskRunReasons": [], + "detailId": "98d04d90-0130-47d8-87d9-8394cd942250", + "logId": "b636ff81-4e34-4465-8058-bbfac9a92a51" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "98d04d90-0130-47d8-87d9-8394cd942250", + "name": "create entry:default@MergeProfile task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748904574200 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "f346ad91-5544-4f11-8927-42b39a96b619" + } + }, + { + "head": { + "id": "b15060d7-dc38-4074-b4a1-fc3f8f670dc8", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748904894000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "862e0300-9eab-4429-94f4-4b101cb9ee7d", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748904983200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c8bd1525-1fd1-4b2b-adfa-5ea841b730e2", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748905023300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "635f662d-8f4d-4eae-a20f-d9ef01ce9c0c", + "name": "Executing task :entry:default@MergeProfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748905509200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "56f7212a-ed0d-45fc-81a8-3b889ea46aef", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906071500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0e2b8adc-8ad0-4176-addd-80ee05f79d9e", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906143800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "601b0a30-7299-4959-8669-7c644c8a9c0e", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906182200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "5e44d06e-5203-4242-9ae2-c1bd82cb333a", + "name": "Change app api release type with 'Release'", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906517100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1a6947ad-7b94-4f5b-8b2a-b9c92f31eba1", + "name": "Change app compile API version with '4.0.10.16'", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906648600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c72ce371-7352-4120-829e-3f68472d88b7", + "name": "Change app target API version with '10'", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906689100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8c665859-5202-44d5-b358-198e2169c960", + "name": "Change app minimum API version with '9'", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906716400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8187875d-8fb6-4b39-9ed6-2484b3418bba", + "name": "Use cli appEnvironment", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748906814300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "df132f2d-e672-4c74-bdab-516f3fcb58b8", + "name": "Clean the ArkTS cache due to SDK version is changed.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748916547900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "dc80fa3c-0c74-4d89-ad47-14d121eef76f", + "name": "entry : default@MergeProfile cost memory 0.29676055908203125", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748931863400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c0cefcf1-8fc7-4dc3-a409-244bf7b3e0d4", + "name": "runTaskFromQueue task cost before running: 623 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748935339600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b636ff81-4e34-4465-8058-bbfac9a92a51", + "name": "Finished :entry:default@MergeProfile", + "description": "Merge app config manifest files in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748905499800, + "endTime": 320748935681300, + "totalTime": 29694600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "f346ad91-5544-4f11-8927-42b39a96b619" + } + }, + { + "head": { + "id": "d418a5f6-3e03-45ed-8a6f-ed2e191ed639", + "name": "entry:default@PreCheckSyscap", + "description": "Pre-check SysCap.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748945627600, + "endTime": 320748946812300 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Verification", + "taskRunReasons": [], + "detailId": "ab173bfd-eaec-487a-8917-1b570fd42627", + "logId": "76d7fb87-8a6c-4c78-b87e-f88ef2dae065" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "ab173bfd-eaec-487a-8917-1b570fd42627", + "name": "create entry:default@PreCheckSyscap task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748944277300 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "d418a5f6-3e03-45ed-8a6f-ed2e191ed639" + } + }, + { + "head": { + "id": "13b29cc8-a445-4585-bc5c-15a7870d1e94", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748944648300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f35085c7-e52c-4ed3-bf28-472c092b7bad", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748944759000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4fbf1502-e09b-4122-9711-8732204ef0fe", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748944803900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c8702aab-ea25-4a58-8828-bd978f480c10", + "name": "Executing task :entry:default@PreCheckSyscap", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748945643900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "de67855a-a75e-4b99-ab72-fb29439b65ec", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748946007200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "cfa1a249-2afb-4c8f-94fb-59d5a6963e4d", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748946095900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "259664a6-5d06-42cb-8861-d344dfbcc1bd", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748946137300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c2a85f00-95ed-4474-9e17-1c18400238c4", + "name": "entry : default@PreCheckSyscap cost memory 0.12535858154296875", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748946451900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "a321244d-a7a9-412e-9e10-12128ea9fe40", + "name": "runTaskFromQueue task cost before running: 635 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748946699800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "76d7fb87-8a6c-4c78-b87e-f88ef2dae065", + "name": "Finished :entry:default@PreCheckSyscap", + "description": "Pre-check SysCap.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748945627600, + "endTime": 320748946812300, + "totalTime": 1049000 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "d418a5f6-3e03-45ed-8a6f-ed2e191ed639" + } + }, + { + "head": { + "id": "e9b56575-dc35-4a01-a2f0-60af21a5ca2f", + "name": "entry:default@GeneratePkgContextInfo", + "description": "Generate pkgContextInfo.json to ets-loader.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748957162000, + "endTime": 320748957907000 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Generate", + "taskRunReasons": [], + "detailId": "fa03a43f-480d-4946-81d4-5e0051350ed5", + "logId": "aa0a82ed-72de-4ff7-a51b-1155da592735" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "fa03a43f-480d-4946-81d4-5e0051350ed5", + "name": "create entry:default@GeneratePkgContextInfo task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748948274600 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "e9b56575-dc35-4a01-a2f0-60af21a5ca2f" + } + }, + { + "head": { + "id": "1612c1cd-c751-437f-9e32-cb4b39d93447", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748948570500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "92dc2317-557d-425e-b33e-dca953c8edb1", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748948663600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "465846e1-96c1-4858-a9de-35df1e1a5aa7", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748948739500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "eb102d30-3fb0-49b1-8bb6-43099081e2e9", + "name": "Executing task :entry:default@GeneratePkgContextInfo", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748957178600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "42942baa-6b08-48a9-a6a5-bd672212729e", + "name": "Task 'entry:default@GeneratePkgContextInfo' cost while wrapping incremental declarations: 1 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748957485200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "985be177-dc4e-4186-852e-2797625cef9f", + "name": "entry : default@GeneratePkgContextInfo cost memory 0.03743743896484375", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748957720000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "890d181a-18f7-4d08-9ff7-13250f93d918", + "name": "runTaskFromQueue task cost before running: 646 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748957845100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "aa0a82ed-72de-4ff7-a51b-1155da592735", + "name": "Finished :entry:default@GeneratePkgContextInfo", + "description": "Generate pkgContextInfo.json to ets-loader.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748957162000, + "endTime": 320748957907000, + "totalTime": 667100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "e9b56575-dc35-4a01-a2f0-60af21a5ca2f" + } + }, + { + "head": { + "id": "8f1252fe-f5df-49c8-8f72-a508b6cf54d0", + "name": "entry:default@ProcessProfile", + "description": "Process app config manifest files in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748960746300, + "endTime": 320749084309300 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Config", + "taskRunReasons": [], + "detailId": "10374997-3deb-418b-811f-5810c38c27be", + "logId": "f36946e3-7b54-4666-909c-f2c3ace86199" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "10374997-3deb-418b-811f-5810c38c27be", + "name": "create entry:default@ProcessProfile task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748959183400 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "8f1252fe-f5df-49c8-8f72-a508b6cf54d0" + } + }, + { + "head": { + "id": "2b7e755a-b2a6-402c-ab8a-0b32aecb978e", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748959487100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "083623c3-6841-4fa1-adfb-c4a75c1aa5bb", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748959579900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "79b9a550-52e8-41cf-866d-7f083a8797ed", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748959659700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "5f1f3922-129d-45d5-b77b-dc2494587204", + "name": "Executing task :entry:default@ProcessProfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748960756500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "d407e358-6277-4d94-9bd3-6d373513d1b2", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748961541200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b2813cd8-d846-4e6d-a55d-89ecb5af9175", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748961621500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "896bdeff-2b19-4084-aa09-acae9e53e928", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748961711300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "52b1304b-c7e0-4d35-a75e-4f8950e32f8f", + "name": "9.0.0.0", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749081842900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "52538804-9f7a-4044-92a0-77ccff71ef74", + "name": "entry : default@ProcessProfile cost memory -11.834396362304688", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749084047400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "d9f1b1b6-9070-4827-9b06-1855007e8dae", + "name": "runTaskFromQueue task cost before running: 772 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749084214900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f36946e3-7b54-4666-909c-f2c3ace86199", + "name": "Finished :entry:default@ProcessProfile", + "description": "Process app config manifest files in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748960746300, + "endTime": 320749084309300, + "totalTime": 123434400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "8f1252fe-f5df-49c8-8f72-a508b6cf54d0" + } + }, + { + "head": { + "id": "57d93d68-84a9-482f-8f3d-eeb46565c0f4", + "name": "entry:default@ProcessRouterMap", + "description": "Process router map configuration.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749087337500, + "endTime": 320749091358400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Generate", + "taskRunReasons": [], + "detailId": "ff5246f7-aab4-40bb-a053-557021917b60", + "logId": "0dcb5376-af83-4751-955f-b60abb6b2357" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "ff5246f7-aab4-40bb-a053-557021917b60", + "name": "create entry:default@ProcessRouterMap task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749085670400 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "57d93d68-84a9-482f-8f3d-eeb46565c0f4" + } + }, + { + "head": { + "id": "ef846a01-7a1e-4234-b8fa-6eabd1d49db5", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749086009500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ba2be279-9364-4e10-9144-a468c81f81b0", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749086114400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b9998149-1976-4703-b70c-c1deea5752d4", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749086181800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1d2ea8c1-fdb0-4ade-9037-f951503d28fd", + "name": "Executing task :entry:default@ProcessRouterMap", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749087351400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "058cf185-c850-4612-9926-2c721f4270e1", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749088461600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b4cfded7-565f-489d-903f-41a970d7bcd4", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749088546100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ff7cb96f-3761-46a1-ba72-7040803699b8", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749088590000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3f8c34ef-9b15-433a-86c1-a862b6a03c8d", + "name": "entry : default@ProcessRouterMap cost memory 0.11864471435546875", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749091056000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "a9c458e0-d8f5-4f58-a359-e76c4a74ab33", + "name": "runTaskFromQueue task cost before running: 779 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749091260500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0dcb5376-af83-4751-955f-b60abb6b2357", + "name": "Finished :entry:default@ProcessRouterMap", + "description": "Process router map configuration.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749087337500, + "endTime": 320749091358400, + "totalTime": 3878200 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "57d93d68-84a9-482f-8f3d-eeb46565c0f4" + } + }, + { + "head": { + "id": "f6bdf782-27a9-4b05-ada6-2f1804e64649", + "name": "entry:default@PreviewProcessResource", + "description": "Process preview resources incrementally in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749104466300, + "endTime": 320749108593900 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Resources", + "taskRunReasons": [], + "detailId": "9c95d44a-8e51-4fc0-935e-3d8a87505b9c", + "logId": "4e5a13de-13ef-4b0e-b923-0289a10d32ed" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "9c95d44a-8e51-4fc0-935e-3d8a87505b9c", + "name": "create entry:default@PreviewProcessResource task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749098183700 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "f6bdf782-27a9-4b05-ada6-2f1804e64649" + } + }, + { + "head": { + "id": "0b180a27-778c-4bc5-afb3-a000ba31c9df", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749098884500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6aa58952-8dda-42a2-913d-18ae9bae05aa", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749100409700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1fcf11bc-b177-4ccc-b94c-130a4fe2506a", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749100534800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f06d13ba-eb65-4596-ba55-2d045f03df98", + "name": "restool module names: entry; moduleName=entry, taskName=default@PreviewProcessResource", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749101930500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3473f4bc-9795-404a-9ac7-c4c7f1a40401", + "name": "Executing task :entry:default@PreviewProcessResource", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749107219000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b029b616-2988-4334-a6b7-f71131152431", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749107495600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "9794428c-08d7-4121-9a3f-99dac1acf70e", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749107572500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b96a254d-2151-4dfb-a8d7-8d7d4611ae0b", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749107611200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ee34516d-511d-476a-9a84-dae2f764af5d", + "name": "entry : default@PreviewProcessResource cost memory 0.11865997314453125", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749107697600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "297924b9-a92b-4022-bd44-7b4d0adc3a7a", + "name": "runTaskFromQueue task cost before running: 796 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749108492800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4e5a13de-13ef-4b0e-b923-0289a10d32ed", + "name": "Finished :entry:default@PreviewProcessResource", + "description": "Process preview resources incrementally in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749104466300, + "endTime": 320749108593900, + "totalTime": 3287100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "f6bdf782-27a9-4b05-ada6-2f1804e64649" + } + }, + { + "head": { + "id": "322a3fb5-7a20-498a-98cb-4d925082f280", + "name": "entry:default@GenerateLoaderJson", + "description": "Generate loader.json in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749113551500, + "endTime": 320749125948600 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Generate", + "taskRunReasons": [], + "detailId": "b2d151bc-e925-427d-ba9c-2e89bc49e1c0", + "logId": "1dcc909a-41e3-4668-9c74-05ce0565533c" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "b2d151bc-e925-427d-ba9c-2e89bc49e1c0", + "name": "create entry:default@GenerateLoaderJson task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749110640100 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "322a3fb5-7a20-498a-98cb-4d925082f280" + } + }, + { + "head": { + "id": "dedb2c42-8237-4dad-8669-1e8a3e712c5f", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749110958500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8c321c70-6d5f-4004-9161-6b50f8979fbf", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749111049100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8bc77cba-907c-4472-895d-1c7f8370936d", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749111090400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f103d359-0957-4776-95e1-679514eff761", + "name": "Executing task :entry:default@GenerateLoaderJson", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749113567300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f613458b-14ba-4e13-84f8-8884b5c1beef", + "name": "entry : default@GenerateLoaderJson cost memory 0.9593353271484375", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749125723900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0dfdba4e-4213-4f18-976b-433bbbfff478", + "name": "runTaskFromQueue task cost before running: 814 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749125884900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1dcc909a-41e3-4668-9c74-05ce0565533c", + "name": "Finished :entry:default@GenerateLoaderJson", + "description": "Generate loader.json in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749113551500, + "endTime": 320749125948600, + "totalTime": 12308800 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "322a3fb5-7a20-498a-98cb-4d925082f280" + } + }, + { + "head": { + "id": "e2a586f5-1981-4d00-a72b-46be5de53002", + "name": "entry:default@PreviewCompileResource", + "description": "Use Preview to compile project resources in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749132669700, + "endTime": 320750895608000 + }, + "additional": { + "children": [ + "9791c873-8b64-4d04-8b58-776ed73076c3", + "c3607d5f-ec6c-452f-ba8b-b59301f3652a", + "b4c895db-545d-476e-91b9-d89ad9a948f8", + "4d54831e-e9db-4d9e-8da0-be79f036f8fe" + ], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Resources", + "taskRunReasons": [], + "detailId": "478e42a2-fa97-4f9d-921f-f2d37733a9ad", + "logId": "49b81216-7f13-420f-865c-158a5615efb9" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "478e42a2-fa97-4f9d-921f-f2d37733a9ad", + "name": "create entry:default@PreviewCompileResource task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749130454900 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "e2a586f5-1981-4d00-a72b-46be5de53002" + } + }, + { + "head": { + "id": "c4cf4f11-c0d2-434f-a402-9a22b18abd51", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749130785200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b0fdda3e-7d9c-42ea-89e4-30884a8e735e", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749130880900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6f4f5e9b-d9a1-4779-9732-f186f8f124ef", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749130940600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "be5a208e-fbce-4f94-981c-37d6ce467d8a", + "name": "restool module names: entry; moduleName=entry, taskName=default@PreviewCompileResource", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749131375100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2a83cdb8-a0a6-4056-88b2-e76a5ac6afae", + "name": "Executing task :entry:default@PreviewCompileResource", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749132773400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "9791c873-8b64-4d04-8b58-776ed73076c3", + "name": "generate compilation link command", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749134457700, + "endTime": 320749146190400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "e2a586f5-1981-4d00-a72b-46be5de53002", + "logId": "88c183d2-dded-4ca5-8a0c-27bb33be10fd" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "88c183d2-dded-4ca5-8a0c-27bb33be10fd", + "name": "generate compilation link command", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749134457700, + "endTime": 320749146190400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "9791c873-8b64-4d04-8b58-776ed73076c3", + "parent": "49b81216-7f13-420f-865c-158a5615efb9" + } + }, + { + "head": { + "id": "7c401f28-a064-45d8-814a-2f2edfa7debb", + "name": "Use tool [D:\\Huawei\\OpenHarmony\\10\\10\\toolchains\\restool.exe]\n [\n 'D:\\\\Huawei\\\\OpenHarmony\\\\10\\\\10\\\\toolchains\\\\restool.exe',\n '-x',\n 'E:\\\\jiaocai\\\\ensp14\\\\AppScope\\\\resources',\n '-o',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default\\\\app_compiled'\n]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749146779500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c3607d5f-ec6c-452f-ba8b-b59301f3652a", + "name": "execute compile resource command using restool", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749147623400, + "endTime": 320750748600500 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "e2a586f5-1981-4d00-a72b-46be5de53002", + "logId": "8569f5e5-ea89-4d7e-a166-a532b94be823" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "15d7ecaf-0c94-471f-bd82-09bb0bdbaf93", + "name": "current process memoryUsage: {\n rss: 176553984,\n heapTotal: 132415488,\n heapUsed: 106880504,\n external: 3197477,\n arrayBuffers: 191274\n} os memoryUsage :12.917472839355469", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749148666900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "16bb4e12-0fcd-45a2-9b7a-8451f3a23a6a", + "name": "Info: restool resources compile success.\r\n", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750743731200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8569f5e5-ea89-4d7e-a166-a532b94be823", + "name": "execute compile resource command using restool", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749147623400, + "endTime": 320750748600500 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "c3607d5f-ec6c-452f-ba8b-b59301f3652a", + "parent": "49b81216-7f13-420f-865c-158a5615efb9" + } + }, + { + "head": { + "id": "064713e4-0a0b-44f8-bf3b-7a02f4fe6189", + "name": "Use tool [D:\\Huawei\\OpenHarmony\\10\\10\\toolchains\\restool.exe]\n [\n 'D:\\\\Huawei\\\\OpenHarmony\\\\10\\\\10\\\\toolchains\\\\restool.exe',\n '-x',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\src\\\\main\\\\resources',\n '-o',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default\\\\module_compiled'\n]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750748807800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b4c895db-545d-476e-91b9-d89ad9a948f8", + "name": "execute compile resource command using restool", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750749419700, + "endTime": 320750810720600 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "e2a586f5-1981-4d00-a72b-46be5de53002", + "logId": "10a07c5e-c5b9-4e63-8e1f-7f6784037b50" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "4405b6fd-52dc-481d-b3af-22396c8671e1", + "name": "current process memoryUsage: {\n rss: 176652288,\n heapTotal: 132415488,\n heapUsed: 107157120,\n external: 3197603,\n arrayBuffers: 191415\n} os memoryUsage :12.913017272949219", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750749859100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3c14a9c3-66bf-465d-af03-512e82ad29fe", + "name": "Info: restool resources compile success.\r\n", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750776024600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "10a07c5e-c5b9-4e63-8e1f-7f6784037b50", + "name": "execute compile resource command using restool", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750749419700, + "endTime": 320750810720600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "b4c895db-545d-476e-91b9-d89ad9a948f8", + "parent": "49b81216-7f13-420f-865c-158a5615efb9" + } + }, + { + "head": { + "id": "5e403fe4-6fe9-4d97-9496-69cd73bc6dd6", + "name": "Use tool [D:\\Huawei\\OpenHarmony\\10\\10\\toolchains\\restool.exe]\n [\n 'D:\\\\Huawei\\\\OpenHarmony\\\\10\\\\10\\\\toolchains\\\\restool.exe',\n '-m',\n 'entry',\n '-f',\n '-j',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\process_profile\\\\default\\\\module.json',\n '-p',\n 'c***n',\n '-r',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\generated\\\\r\\\\default\\\\ResourceTable.h',\n '-z',\n '--ids',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default\\\\ids_map',\n '--defined-ids',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default\\\\ids_map\\\\id_defined.json',\n '-i',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default\\\\app_compiled',\n '-i',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default\\\\module_compiled',\n '-o',\n 'E:\\\\jiaocai\\\\ensp14\\\\entry\\\\.preview\\\\default\\\\intermediates\\\\res\\\\default'\n]", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750811348200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4d54831e-e9db-4d9e-8da0-be79f036f8fe", + "name": "execute compile resource command using restool", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750812042100, + "endTime": 320750884685900 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "e2a586f5-1981-4d00-a72b-46be5de53002", + "logId": "838cbf68-c26a-42d9-98d2-ec044de4777f" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "c784697e-f5e7-4751-8d15-21c5cdf0ea05", + "name": "current process memoryUsage: {\n rss: 176652288,\n heapTotal: 132415488,\n heapUsed: 107444480,\n external: 3197729,\n arrayBuffers: 192345\n} os memoryUsage :12.9140625", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750812513400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "319802d8-ab5d-4aa3-b87c-ce4e9e5a30eb", + "name": "Info: restool resources compile success.\r\n", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750870773100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "838cbf68-c26a-42d9-98d2-ec044de4777f", + "name": "execute compile resource command using restool", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750812042100, + "endTime": 320750884685900 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "4d54831e-e9db-4d9e-8da0-be79f036f8fe", + "parent": "49b81216-7f13-420f-865c-158a5615efb9" + } + }, + { + "head": { + "id": "f1c7ab2c-ab25-4f48-b15d-136bfc2d4265", + "name": "entry : default@PreviewCompileResource cost memory 1.2355880737304688", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750893050200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "23188779-8915-4e31-b923-a3c9074e501b", + "name": "runTaskFromQueue task cost before running: 2 s 583 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750894803800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "49b81216-7f13-420f-865c-158a5615efb9", + "name": "Finished :entry:default@PreviewCompileResource", + "description": "Use Preview to compile project resources in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320749132669700, + "endTime": 320750895608000, + "totalTime": 1761706500 + }, + "additional": { + "logType": "info", + "children": [ + "88c183d2-dded-4ca5-8a0c-27bb33be10fd", + "8569f5e5-ea89-4d7e-a166-a532b94be823", + "10a07c5e-c5b9-4e63-8e1f-7f6784037b50", + "838cbf68-c26a-42d9-98d2-ec044de4777f" + ], + "durationId": "e2a586f5-1981-4d00-a72b-46be5de53002" + } + }, + { + "head": { + "id": "44b7e41c-046b-4647-8f43-911927ae79b7", + "name": "entry:default@PreviewHookCompileResource", + "description": "Add a hook task for compiling preview resources.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899048300, + "endTime": 320750899607600 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Hook", + "taskRunReasons": [], + "detailId": "f4b3cb72-4c31-41ab-8a5a-b18cb6af1a0f", + "logId": "6e88978f-4bb8-417d-8ac6-d11f3582e16e" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "f4b3cb72-4c31-41ab-8a5a-b18cb6af1a0f", + "name": "create entry:default@PreviewHookCompileResource task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750898326400 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "44b7e41c-046b-4647-8f43-911927ae79b7" + } + }, + { + "head": { + "id": "46c84fce-3dde-454f-8d84-8eab5a1667f6", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750898746000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "eae406bd-8248-4c46-bc57-3d8c867782c6", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750898864300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "594bab92-19fe-408b-89d0-6a14ba6ec4b4", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750898933300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4dd08a8a-3e5d-4592-8da3-51e1a6f16b9d", + "name": "Executing task :entry:default@PreviewHookCompileResource", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899061700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ceb76758-62e6-4de4-aa91-0e857522e228", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899189400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "167d8a5e-efa6-416c-af6c-5569253c407a", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899259200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3e690b95-d887-4c12-b119-49f7e0f32ff5", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899312500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "d54fe3d7-cb58-4081-93e8-2ef4dc779840", + "name": "entry : default@PreviewHookCompileResource cost memory 0.04883575439453125", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899434300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "45deabe1-c551-4871-b7df-8db80056810d", + "name": "runTaskFromQueue task cost before running: 2 s 588 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899539200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6e88978f-4bb8-417d-8ac6-d11f3582e16e", + "name": "Finished :entry:default@PreviewHookCompileResource", + "description": "Add a hook task for compiling preview resources.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750899048300, + "endTime": 320750899607600, + "totalTime": 465600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "44b7e41c-046b-4647-8f43-911927ae79b7" + } + }, + { + "head": { + "id": "877d5933-179d-4d40-8834-7ff5d045d415", + "name": "entry:default@CopyPreviewProfile", + "description": "Copy preview profile.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750902064600, + "endTime": 320750924499400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Other", + "taskRunReasons": [], + "detailId": "746d2e04-f0de-4ff3-8573-16c82a66189c", + "logId": "338e5343-0e26-46a5-a464-088f38eb53fa" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "746d2e04-f0de-4ff3-8573-16c82a66189c", + "name": "create entry:default@CopyPreviewProfile task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750901039200 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "877d5933-179d-4d40-8834-7ff5d045d415" + } + }, + { + "head": { + "id": "69d40ac6-fd95-4797-b239-80cdb3d30248", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750901412500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c4907d97-82f6-4b63-9b16-b59cd1ac9c18", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750901531400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "cb00d291-5611-4aff-84c5-23e567bf0438", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750901595700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "13931ea2-4fe6-470a-a4fa-a312c1a8d6f3", + "name": "Executing task :entry:default@CopyPreviewProfile", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750902081000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "37cc6928-848c-4fcb-966b-ab0d878fb57b", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750902639600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "534e4403-0cb0-4ca2-aef1-0c3c35ade9a6", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750902744700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3f39561e-4f4e-4788-bebd-c776fd09fb1a", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750902802200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "5349a585-bfba-4d5c-a2ac-71e95bcb7de6", + "name": "entry : default@CopyPreviewProfile cost memory 0.14804840087890625", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750922091400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2c3acd88-64e1-44ab-a433-086e2546d44d", + "name": "runTaskFromQueue task cost before running: 2 s 611 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750923422200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "338e5343-0e26-46a5-a464-088f38eb53fa", + "name": "Finished :entry:default@CopyPreviewProfile", + "description": "Copy preview profile.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750902064600, + "endTime": 320750924499400, + "totalTime": 21081900 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "877d5933-179d-4d40-8834-7ff5d045d415" + } + }, + { + "head": { + "id": "34fc7746-05d7-4ae5-8c78-29a3f34258a3", + "name": "entry:default@ReplacePreviewerPage", + "description": "Accept previewer arguments, then use them to replace the ones in the page file.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932106500, + "endTime": 320750932619400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Other", + "taskRunReasons": [], + "detailId": "1fb7620a-3b99-4d9c-9806-cf890f7a393f", + "logId": "4d75cc07-d433-48d3-baa2-79787a8f77d7" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "1fb7620a-3b99-4d9c-9806-cf890f7a393f", + "name": "create entry:default@ReplacePreviewerPage task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750930947800 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "34fc7746-05d7-4ae5-8c78-29a3f34258a3" + } + }, + { + "head": { + "id": "ce1e922b-e01c-4965-b59f-7f587c1c6021", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750931351000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "281de09c-0b13-449e-b72a-7254fe2c3ed7", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750931470500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "66a79ca1-16d1-4d72-a373-f332c818d831", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750931581500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ad9038e1-90fe-4220-8bb6-987eaf157272", + "name": "Executing task :entry:default@ReplacePreviewerPage", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932116200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8b3304ea-3fd7-4b32-a445-85bf21a192e2", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932224400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ed7cdfed-16bf-4a45-8ba0-9966d67b4bd9", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932270300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c538f0b3-11c5-4a04-9df1-38db5bd98f4d", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932303000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "97a64be7-cd99-420c-9061-dece82d8f35a", + "name": "entry : default@ReplacePreviewerPage cost memory 0.04885101318359375", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932488000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8dc15763-2a1b-4c81-9fd1-c559f27316a9", + "name": "runTaskFromQueue task cost before running: 2 s 621 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932579400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4d75cc07-d433-48d3-baa2-79787a8f77d7", + "name": "Finished :entry:default@ReplacePreviewerPage", + "description": "Accept previewer arguments, then use them to replace the ones in the page file.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750932106500, + "endTime": 320750932619400, + "totalTime": 440800 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "34fc7746-05d7-4ae5-8c78-29a3f34258a3" + } + }, + { + "head": { + "id": "1711a125-9350-4572-adcd-d0b2e13ec86f", + "name": "entry:buildPreviewerResource", + "description": "Build the preview resources.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750937750000, + "endTime": 320750938006300 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "entry", + "category": "Hook", + "taskRunReasons": [], + "detailId": "aee3fd3a-5cfd-4548-a158-70df266581d9", + "logId": "933514c6-561d-465d-8a3b-574f80d17e98" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "aee3fd3a-5cfd-4548-a158-70df266581d9", + "name": "create entry:buildPreviewerResource task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750937700800 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "1711a125-9350-4572-adcd-d0b2e13ec86f" + } + }, + { + "head": { + "id": "56f22827-2bea-473b-b94e-65a0fe96a196", + "name": "Executing task :entry:buildPreviewerResource", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750937757200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f46be147-9a62-4fab-99c4-4ecfd990d1e7", + "name": "entry : buildPreviewerResource cost memory 0.01218414306640625", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750937890600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "876466ba-dd7d-4f56-be08-e5b698d5e6da", + "name": "runTaskFromQueue task cost before running: 2 s 626 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750937967200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "933514c6-561d-465d-8a3b-574f80d17e98", + "name": "Finished :entry:buildPreviewerResource", + "description": "Build the preview resources.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750937750000, + "endTime": 320750938006300, + "totalTime": 198100 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "1711a125-9350-4572-adcd-d0b2e13ec86f" + } + }, + { + "head": { + "id": "b6e05068-13cf-4ed4-a8af-47ccfa6c4e66", + "name": "entry:default@PreviewUpdateAssets", + "description": "Update main_pages.json and module.json before PreviewBuild.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750944621900, + "endTime": 320750960593500 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Config", + "taskRunReasons": [], + "detailId": "fa068a78-0f7b-4234-8bdf-6cd5e9713920", + "logId": "9c5bed6a-f564-4afb-8627-d2fb74da139a" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "fa068a78-0f7b-4234-8bdf-6cd5e9713920", + "name": "create entry:default@PreviewUpdateAssets task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750942576000 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "b6e05068-13cf-4ed4-a8af-47ccfa6c4e66" + } + }, + { + "head": { + "id": "f2637aef-f073-4e0d-907e-235fa14df724", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750943723900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1a2df747-2008-406e-a8bf-597341435a91", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750943841800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "23eca402-c2c2-443b-afde-691d3b59c2b8", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750943913100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "0bb54c4e-e896-48cb-923f-bd1481940a6a", + "name": "Executing task :entry:default@PreviewUpdateAssets", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750944637100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "97545a22-1fd8-45ee-9e42-f6ba344b4cd0", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750945685900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "94c7a28a-21e4-4c7c-bce8-cc354c1b3d05", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750945765300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c130878f-9258-4500-964e-4b53b4954c7e", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750945804100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1c0bd39a-8fa7-441b-af14-658d9b023ca7", + "name": "entry : default@PreviewUpdateAssets cost memory 0.3285064697265625", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750960372900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3379fac3-1c98-4f18-8de4-c61ef6456b7a", + "name": "runTaskFromQueue task cost before running: 2 s 649 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750960536400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "9c5bed6a-f564-4afb-8627-d2fb74da139a", + "name": "Finished :entry:default@PreviewUpdateAssets", + "description": "Update main_pages.json and module.json before PreviewBuild.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750944621900, + "endTime": 320750960593500, + "totalTime": 15883000 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "b6e05068-13cf-4ed4-a8af-47ccfa6c4e66" + } + }, + { + "head": { + "id": "ac8c4965-3269-4363-9e23-bc8ffd5c872b", + "name": "entry:default@PreviewArkTS", + "description": "Compile ArkTS components on preview in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750964963000, + "endTime": 320778863468600 + }, + "additional": { + "children": [ + "eef76a16-d7bd-413a-a028-4f7bfb1c27d6" + ], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "Generate", + "taskRunReasons": [], + "detailId": "cfbcdc85-b033-43a2-97d0-d11d21e6efb8", + "logId": "8e861671-274a-4748-8bb4-129a95daf390" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "cfbcdc85-b033-43a2-97d0-d11d21e6efb8", + "name": "create entry:default@PreviewArkTS task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750962229500 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "ac8c4965-3269-4363-9e23-bc8ffd5c872b" + } + }, + { + "head": { + "id": "9e3b1d0b-f55c-4c22-aaf6-4e6ebe0b3936", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750962492500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "9b75dfce-bac5-424e-aea3-1e9112dc5631", + "name": "jsonObjWithoutParam {} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750962575500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "442b31c2-a356-41a0-935b-fef6f19dfd57", + "name": "jsonObjWithoutParam {\"license\":\"\",\"devDependencies\":{},\"author\":\"\",\"name\":\"entry\",\"description\":\"Please describe the basic information.\",\"main\":\"\",\"version\":\"1.0.0\",\"dependencies\":{}} at undefined", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750962614600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "418c9553-cf37-48f9-bd65-f27287777370", + "name": "Executing task :entry:default@PreviewArkTS", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750964973200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "name": "entry:default@PreviewArkTS", + "description": "Compile ArkTS components on preview in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320750981052800, + "endTime": 320778848328400 + }, + "additional": { + "children": [ + "82e72c94-e5ae-4c76-8f8f-40df2266d6d7", + "52fb6c29-5916-4b6f-8eb1-e41c86d6145c", + "6b47bddd-a3a9-4dcc-8b37-6ea69c300802", + "41a48835-24e2-48a6-83a1-0dba2e6f2d5f", + "73cbf46d-52ac-4b3b-ad70-e673dc5b0966", + "f141d0d3-bac0-4f56-a693-27d1b2cc1b37", + "30c05621-e154-4f4c-b5be-011c77b12220", + "10ac967a-5385-4e54-bf3c-6b2d4c2a3f14", + "ee0c9b2b-6381-49c7-9cdf-3841ee7483b8", + "0307a630-8ba3-4d8d-8004-2f034925825f", + "6b9c9c8c-0c44-4a4e-aac3-9d5557eeae86" + ], + "state": "success", + "targetName": "default", + "moduleName": "entry", + "category": "", + "taskRunReasons": [], + "parent": "ac8c4965-3269-4363-9e23-bc8ffd5c872b", + "logId": "9069b570-a50c-42a7-8d63-69376e5bef70" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "f308fbe6-5ccd-4f9f-846a-cf5b3e76a95b", + "name": "entry : default@PreviewArkTS cost memory -5.783134460449219", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750983121000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "bb35c51e-e897-44ec-9438-c15734bfd56b", + "name": "watch worker: send response to session manager. Response type: WatchStart", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320769432942100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "82e72c94-e5ae-4c76-8f8f-40df2266d6d7", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320769434444600, + "endTime": 320769434504400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "1056b685-281c-44ab-8d9c-6f24c43e3f10" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "1056b685-281c-44ab-8d9c-6f24c43e3f10", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320769434444600, + "endTime": 320769434504400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "82e72c94-e5ae-4c76-8f8f-40df2266d6d7", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "7be44445-d4f7-447c-9e9f-4e6b74c5326a", + "name": "watch worker: send response to session manager. Response type: WatchLog", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774444758100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "52fb6c29-5916-4b6f-8eb1-e41c86d6145c", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320774447051600, + "endTime": 320774447080400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "9dc15e48-8038-44b7-b1c4-12223a599bde" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "9dc15e48-8038-44b7-b1c4-12223a599bde", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774447051600, + "endTime": 320774447080400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "52fb6c29-5916-4b6f-8eb1-e41c86d6145c", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "8f63cdb4-4932-4478-9c30-55ef3cd975c9", + "name": "watch worker: send response to session manager. Response type: WatchLog", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774449236200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6b47bddd-a3a9-4dcc-8b37-6ea69c300802", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320774450622500, + "endTime": 320774450645700 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "427d061c-a657-41da-95cc-34d3c3e8fcc0" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "427d061c-a657-41da-95cc-34d3c3e8fcc0", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774450622500, + "endTime": 320774450645700 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "6b47bddd-a3a9-4dcc-8b37-6ea69c300802", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "8dd13b65-d10f-449a-8217-260ef91f465b", + "name": "watch worker: send response to session manager. Response type: WatchLog", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774715469200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "41a48835-24e2-48a6-83a1-0dba2e6f2d5f", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320774716282500, + "endTime": 320774716336000 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "5815e1b5-32e3-489b-b33f-9c88df007d9e" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "5815e1b5-32e3-489b-b33f-9c88df007d9e", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774716282500, + "endTime": 320774716336000 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "41a48835-24e2-48a6-83a1-0dba2e6f2d5f", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "61ca74f5-cd9a-4eb4-b7dc-2006899a8385", + "name": "watch worker: send response to session manager. Response type: WatchLog", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774716423800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "73cbf46d-52ac-4b3b-ad70-e673dc5b0966", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320774716982200, + "endTime": 320774717001400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "5132e888-4347-47fa-8e01-88d7035cd2c7" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "5132e888-4347-47fa-8e01-88d7035cd2c7", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774716982200, + "endTime": 320774717001400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "73cbf46d-52ac-4b3b-ad70-e673dc5b0966", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "c563a664-915f-40ea-ae71-b5b482bdb71c", + "name": "watch worker: send response to session manager. Response type: WatchLog", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774717062200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f141d0d3-bac0-4f56-a693-27d1b2cc1b37", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320774717575500, + "endTime": 320774717590400 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "450c571b-6b0e-468c-84a4-174f0f89fa11" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "450c571b-6b0e-468c-84a4-174f0f89fa11", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774717575500, + "endTime": 320774717590400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "f141d0d3-bac0-4f56-a693-27d1b2cc1b37", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "5db505e2-d5d4-454c-b9c0-8c9f591796dc", + "name": "watch worker: send response to session manager. Response type: WatchLog", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774717645900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "30c05621-e154-4f4c-b5be-011c77b12220", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320774722732300, + "endTime": 320774722885500 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "5043f0e2-dd69-4d11-98f4-d71ca190d0f6" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "5043f0e2-dd69-4d11-98f4-d71ca190d0f6", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320774722732300, + "endTime": 320774722885500 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "30c05621-e154-4f4c-b5be-011c77b12220", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "bbd7b496-a78b-4d95-b080-91e4f1e9ca18", + "name": "watch worker: send response to session manager. Response type: WatchResult", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778843312600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "10ac967a-5385-4e54-bf3c-6b2d4c2a3f14", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320778847097400, + "endTime": 320778847240700 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "7a9b7e2e-f045-4647-bc53-9bd456c18c3a" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "7a9b7e2e-f045-4647-bc53-9bd456c18c3a", + "name": "\"onWatchWorkerMessage\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778847097400, + "endTime": 320778847240700 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "10ac967a-5385-4e54-bf3c-6b2d4c2a3f14", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "9069b570-a50c-42a7-8d63-69376e5bef70", + "name": "entry:default@PreviewArkTS", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320750981052800, + "endTime": 320778848328400 + }, + "additional": { + "logType": "info", + "children": [ + "1056b685-281c-44ab-8d9c-6f24c43e3f10", + "9dc15e48-8038-44b7-b1c4-12223a599bde", + "427d061c-a657-41da-95cc-34d3c3e8fcc0", + "5815e1b5-32e3-489b-b33f-9c88df007d9e", + "5132e888-4347-47fa-8e01-88d7035cd2c7", + "450c571b-6b0e-468c-84a4-174f0f89fa11", + "5043f0e2-dd69-4d11-98f4-d71ca190d0f6", + "7a9b7e2e-f045-4647-bc53-9bd456c18c3a", + "e632d91c-e2d6-4acd-a4b0-2b8700da5552", + "00991816-fced-480d-81e8-fcddcbecfe23", + "ec057c4e-bb31-45a5-82ea-5b8430387cf9" + ], + "durationId": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "parent": "8e861671-274a-4748-8bb4-129a95daf390" + } + }, + { + "head": { + "id": "ee0c9b2b-6381-49c7-9cdf-3841ee7483b8", + "name": "generate configuration information", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320752558110500, + "endTime": 320769317947000 + }, + "additional": { + "children": [], + "state": "success", + "totalTime": 0, + "frequency": 0, + "fromHook": false, + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "e632d91c-e2d6-4acd-a4b0-2b8700da5552" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "e632d91c-e2d6-4acd-a4b0-2b8700da5552", + "name": "generate configuration information", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320752558110500, + "endTime": 320769317947000 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "ee0c9b2b-6381-49c7-9cdf-3841ee7483b8", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "0307a630-8ba3-4d8d-8004-2f034925825f", + "name": "read build package cache", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320769319212700, + "endTime": 320769319321400 + }, + "additional": { + "children": [], + "state": "success", + "totalTime": 0, + "frequency": 0, + "fromHook": false, + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "00991816-fced-480d-81e8-fcddcbecfe23" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "00991816-fced-480d-81e8-fcddcbecfe23", + "name": "read build package cache", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320769319212700, + "endTime": 320769319321400 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "0307a630-8ba3-4d8d-8004-2f034925825f", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "6b9c9c8c-0c44-4a4e-aac3-9d5557eeae86", + "name": "compile ArkTS with rollup", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Worker1", + "startTime": 320769319425000, + "endTime": 320778843251900 + }, + "additional": { + "children": [], + "state": "success", + "totalTime": 0, + "frequency": 0, + "fromHook": false, + "parent": "eef76a16-d7bd-413a-a028-4f7bfb1c27d6", + "logId": "ec057c4e-bb31-45a5-82ea-5b8430387cf9" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "ec057c4e-bb31-45a5-82ea-5b8430387cf9", + "name": "compile ArkTS with rollup", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320769319425000, + "endTime": 320778843251900 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "6b9c9c8c-0c44-4a4e-aac3-9d5557eeae86", + "parent": "9069b570-a50c-42a7-8d63-69376e5bef70" + } + }, + { + "head": { + "id": "8e861671-274a-4748-8bb4-129a95daf390", + "name": "Finished :entry:default@PreviewArkTS", + "description": "Compile ArkTS components on preview in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320750964963000, + "endTime": 320778863468600, + "totalTime": 27898459300 + }, + "additional": { + "logType": "info", + "children": [ + "9069b570-a50c-42a7-8d63-69376e5bef70" + ], + "durationId": "ac8c4965-3269-4363-9e23-bc8ffd5c872b" + } + }, + { + "head": { + "id": "a04723a6-c879-41ba-abd2-898556466911", + "name": "entry:PreviewBuild", + "description": "Build preview in the stage model.", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778866954500, + "endTime": 320778867219900 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "entry", + "category": "Hook", + "taskRunReasons": [], + "detailId": "e822c6c8-b142-4f9e-86f9-c28ee32caa22", + "logId": "ac2f78a5-760f-4897-ba3d-e1b770d91551" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "e822c6c8-b142-4f9e-86f9-c28ee32caa22", + "name": "create entry:PreviewBuild task", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778866895700 + }, + "additional": { + "logType": "detail", + "children": [], + "durationId": "a04723a6-c879-41ba-abd2-898556466911" + } + }, + { + "head": { + "id": "7ab1fd1b-d47d-413c-bf41-a04b34d924f5", + "name": "Executing task :entry:PreviewBuild", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778866967100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "a1c1b93e-58b4-4131-b1f5-96e51ab28a33", + "name": "entry : PreviewBuild cost memory 0.01180267333984375", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778867091900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "50c482eb-04fb-437b-9667-e8a92d5f8ded", + "name": "runTaskFromQueue task cost before running: 30 s 555 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778867170600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ac2f78a5-760f-4897-ba3d-e1b770d91551", + "name": "Finished :entry:PreviewBuild", + "description": "Build preview in the stage model.", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778866954500, + "endTime": 320778867219900, + "totalTime": 189600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "a04723a6-c879-41ba-abd2-898556466911" + } + }, + { + "head": { + "id": "4e4789d8-8352-4bd8-82d1-6dd00a3c9f30", + "name": "\"buildFinished\" hook function", + "description": "", + "type": "duration" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778878454700, + "endTime": 320778878476600 + }, + "additional": { + "children": [], + "state": "success", + "targetName": "", + "moduleName": "", + "category": "", + "taskRunReasons": [], + "parent": "ec903ec8-6151-4833-bcec-602a04be552b", + "logId": "7083ae58-79ef-4d99-b1b7-1be33e70f58c" + }, + "log": { + "_logger": { + "category": "DurationEvent", + "context": {}, + "callStackSkipIndex": 0 + }, + "_filelogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + }, + "anonymizeFileLogger": { + "fileLogger": { + "category": "debug-file", + "context": {}, + "callStackSkipIndex": 0 + } + } + } + }, + { + "head": { + "id": "7083ae58-79ef-4d99-b1b7-1be33e70f58c", + "name": "\"buildFinished\" hook function", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778878454700, + "endTime": 320778878476600 + }, + "additional": { + "logType": "info", + "children": [], + "durationId": "4e4789d8-8352-4bd8-82d1-6dd00a3c9f30" + } + }, + { + "head": { + "id": "6fb69c3c-6aea-4a05-bd97-813ff95efae4", + "name": "BUILD SUCCESSFUL in 30 s 566 ms ", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778878558800 + }, + "additional": { + "logType": "info", + "children": [] + } + }, + { + "head": { + "id": "73e411e4-2076-4ff4-9904-127ad7d905fa", + "name": "PreviewBuild", + "description": "", + "type": "mark" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320748312509300, + "endTime": 320778879035600 + }, + "additional": { + "time": { + "year": 2025, + "month": 11, + "day": 23, + "hour": 15, + "minute": 59 + }, + "completeCommand": "{\"mode\":\"module\",\"completeCommand\":\"--mode module -p module=entry@default -p product=default -p pageType=page -p compileResInc=true -p requiredDeviceType=tablet -p previewMode=true -p buildRoot=.preview PreviewBuild --watch --analyze=normal --parallel --incremental --daemon\",\"watch\":true,\"parallel\":true,\"prop\":[\"module=entry@default\",\"product=default\",\"pageType=page\",\"compileResInc=true\",\"requiredDeviceType=tablet\",\"previewMode=true\",\"buildRoot=.preview\"],\"incremental\":true,\"_\":[\"PreviewBuild\"],\"daemon\":true,\"analyze\":\"normal\"};--mode module -p module=entry@default -p product=default -p pageType=page -p compileResInc=true -p requiredDeviceType=tablet -p previewMode=true -p buildRoot=.preview PreviewBuild --watch --analyze=normal --parallel --incremental --daemon", + "hvigorVersion": "5.17.6", + "markType": "history", + "nodeVersion": "v18.20.1", + "category": "build", + "state": "success" + } + }, + { + "head": { + "id": "f2998597-4111-4e71-8a58-0a53c6115c24", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\AppScope\\app.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778879537100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "8ad1dec7-8d9c-4ba1-97ac-7445dfcfb12c", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778880434900 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b8eb88bd-6526-40f1-b5f5-cedf226be955", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\build-profile.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778880780800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "dd709744-b0bd-42f2-ba71-18efb799582a", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\entry\\build-profile.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778880959800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1a1d01a6-e18d-4fbc-a140-551d692cea73", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile\\main_pages.json cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778881092200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "44120d02-1c61-4abc-9024-f5df24cfd286", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\hvigor\\hvigor-config.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778881226400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "7b06e9aa-5700-4019-b329-4e7c3b141e5f", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\entry\\oh-package.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778881332300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "9a14eec9-be79-480a-b23d-c912e1fd0fdd", + "name": "Update task entry:default@PreBuild input file:E:\\jiaocai\\ensp14\\oh-package.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778881433600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2fddd681-6fd0-4133-b518-7ad8d2b140d5", + "name": "Incremental task entry:default@PreBuild post-execution cost:3 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778881774800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "5bc85738-4c19-4195-a2f1-deabc4087a5b", + "name": "Update task entry:default@CreateModuleInfo output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\profile\\default\\ModuleInfo.ts cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778881886200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c5cc19ab-e761-4332-9b09-2dbfaf72c701", + "name": "Incremental task entry:default@CreateModuleInfo post-execution cost:1 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778882379100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "3db84dca-438d-41b9-89b2-03d6deafdbab", + "name": "Update task entry:default@MergeProfile input file:E:\\jiaocai\\ensp14\\AppScope\\app.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778882483200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "687daa9f-3cb4-4a57-8418-bbf48c773174", + "name": "Update task entry:default@MergeProfile input file:E:\\jiaocai\\ensp14\\build-profile.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778882679600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "82b52a92-77ca-4589-babe-231605a21067", + "name": "Update task entry:default@MergeProfile input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778882822000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c61d64eb-375b-49c8-86d7-26b199666946", + "name": "Update task entry:default@MergeProfile output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883093100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "004f24c3-a77e-4f0a-9d10-a46ca5429050", + "name": "Incremental task entry:default@MergeProfile post-execution cost:1 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883306600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "61507e9c-70ca-4f5b-91a6-b2e933196c55", + "name": "Update task entry:default@GeneratePkgContextInfo output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\pkgContextInfo.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883385600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "e7d42d31-5ec4-4b5b-9e2f-f611f11491b8", + "name": "Incremental task entry:default@GeneratePkgContextInfo post-execution cost:1 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883526800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "240141fe-8d45-4321-9dfd-afaa2c2b2a08", + "name": "Update task entry:default@ProcessProfile input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883578800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "2c9851f9-16b1-4472-a1fd-503e43609826", + "name": "Update task entry:default@ProcessProfile output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883709800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "bd198642-9942-4d78-9c5b-c5acd0c1eebf", + "name": "Incremental task entry:default@ProcessProfile post-execution cost:1 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778883923500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "db7023ea-418a-4a90-8f7e-a846a06b9d73", + "name": "Update task entry:default@ProcessRouterMap input file:E:\\jiaocai\\ensp14\\entry\\oh-package.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778884395200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b70ad44f-f476-4d55-a143-719e92d23a1e", + "name": "Update task entry:default@ProcessRouterMap input file:E:\\jiaocai\\ensp14\\oh-package.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778884558400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "face6acd-353a-4de6-8bd7-5e5c611d0679", + "name": "Update task entry:default@ProcessRouterMap input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\module.json5 cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778884671700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b91b7a06-02bc-44aa-9582-0d81e7578735", + "name": "Update task entry:default@ProcessRouterMap output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\temp-router-map.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778884775100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "4da960ca-29ff-4fc1-88ca-9c439da80a49", + "name": "Update task entry:default@ProcessRouterMap output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\loader-router-map.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778884873300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "46d6e292-561e-485c-8d11-fa2d558b82b8", + "name": "Incremental task entry:default@ProcessRouterMap post-execution cost:2 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778884994300 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "02f2b844-c643-4cc3-97ee-1a2dfcd80940", + "name": "Update task entry:default@GenerateLoaderJson input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\router_map\\default\\temp-router-map.json cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778886188000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "1f50a01c-91c3-46e4-9952-73d88d4c5893", + "name": "Update task entry:default@GenerateLoaderJson output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\loader.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778886387000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "966e4032-b201-4620-9db1-0a1b2c8a460c", + "name": "Incremental task entry:default@GenerateLoaderJson post-execution cost:2 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778886546200 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "da2f2a65-dc89-4944-9c1c-76cbd16d25e6", + "name": "Update task entry:default@PreviewCompileResource input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\resources cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778886870400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "9b3ac856-c1a2-4c3f-a9c8-866c1a545e10", + "name": "Update task entry:default@PreviewCompileResource input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\merge_profile\\default\\module.json cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778900574000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "558d14c7-88e4-4e66-b347-88e7764f7f9f", + "name": "Update task entry:default@PreviewCompileResource output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778900827500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "bee7f6e9-c027-4171-b82d-75a1e40172db", + "name": "Update task entry:default@PreviewCompileResource output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778902535400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "cb214840-58c7-4025-832e-d2890cdbb7a0", + "name": "Incremental task entry:default@PreviewCompileResource post-execution cost:17 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778902847700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "12ccd87d-00d1-439c-b876-cae3bb92212a", + "name": "Update task entry:default@CopyPreviewProfile input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\resources\\base\\profile cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778902975700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c9ad1fc8-957a-4f34-9e08-c2ac7bedc03d", + "name": "Update task entry:default@CopyPreviewProfile output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778903183800 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "b6c78e32-0f6b-4ee2-bb8d-95738f0bbc79", + "name": "Incremental task entry:default@CopyPreviewProfile post-execution cost:1 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778903426500 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "6ff1ba35-83b2-41cc-a0bb-bb6bafa88e1c", + "name": "Update task entry:default@PreviewUpdateAssets output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778903797700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "a1b57374-c4f7-44a3-8b8b-7f74fd6fecc5", + "name": "Update task entry:default@PreviewUpdateAssets output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778903972000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "c1dae740-e354-4376-adf4-47fe47bceb75", + "name": "Incremental task entry:default@PreviewUpdateAssets post-execution cost:1 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778904144100 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "ee2f2f38-dc4b-4899-b089-61983c0718e4", + "name": "Update task entry:default@PreviewArkTS input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778905194600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "234987e7-6c07-4a04-b5d8-4eb0c10f8027", + "name": "Update task entry:default@PreviewArkTS input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ResourceTable.txt cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778905500400 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "78089dae-2960-4bc9-98e1-858bd1bfaa9a", + "name": "Update task entry:default@PreviewArkTS input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\process_profile\\default\\module.json cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778905643700 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "f923a0c6-4e77-475a-8c59-d7ae6344b3cb", + "name": "Update task entry:default@PreviewArkTS input file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778905753000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "bbc664f5-3c43-42fe-8b4a-c7e6d56a2176", + "name": "Update task entry:default@PreviewArkTS input file:E:\\jiaocai\\ensp14\\entry\\src\\main\\ets cache by regenerate.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778905948000 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "a83d524f-67fb-435c-993e-b1ccda26d708", + "name": "Update task entry:default@PreviewArkTS output file:E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader_out\\default\\ets cache.", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778907642600 + }, + "additional": { + "logType": "debug", + "children": [] + } + }, + { + "head": { + "id": "26d389ab-ff61-45ce-9236-cb8387fbcb39", + "name": "Incremental task entry:default@PreviewArkTS post-execution cost:4 ms .", + "description": "", + "type": "log" + }, + "body": { + "pid": 4384, + "tid": "Main Thread", + "startTime": 320778907876400 + }, + "additional": { + "logType": "debug", + "children": [] + } + } + ], + "workLog": [] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.hvigor/report/report.json b/ensp14ing/ensp14/.hvigor/report/report.json new file mode 100644 index 0000000..6bbdc25 --- /dev/null +++ b/ensp14ing/ensp14/.hvigor/report/report.json @@ -0,0 +1,141 @@ +{ + "version": "1.0", + "workLog": [], + "workerIdList": [ + -1 + ], + "metrics": [ + { + "type": "build_line", + "endTime": 1724055739231, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@PreBuild", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739227 + }, + { + "type": "build_line", + "endTime": 1724055739235, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@MergeProfile", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739233 + }, + { + "type": "build_line", + "endTime": 1724055739241, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@GenerateLoaderJson", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739235 + }, + { + "type": "build_line", + "endTime": 1724055739245, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@ProcessProfile", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739244 + }, + { + "type": "build_line", + "endTime": 1724055739245, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@PreviewProcessResource", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739245 + }, + { + "type": "build_line", + "endTime": 1724055739855, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@PreviewCompileResource", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739246 + }, + { + "type": "build_line", + "endTime": 1724055739856, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@PreviewHookCompileResource", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739856 + }, + { + "type": "build_line", + "endTime": 1724055739867, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@ReplacePreviewerPage", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739856 + }, + { + "type": "build_line", + "endTime": 1724055739868, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "buildPreviewerResource", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739867 + }, + { + "type": "build_line", + "endTime": 1724055739871, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@PreviewUpdateAssets", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739868 + }, + { + "type": "build_line", + "endTime": 1724055750773, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "default@PreviewArkTS", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055739871 + }, + { + "type": "build_line", + "endTime": 1724055750777, + "status": "closed", + "children": [], + "name": "overallTime", + "taskName": "PreviewBuild", + "taskPath": "entry", + "workerId": -1, + "startTime": 1724055750777 + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/.deveco/module/entry.cache.json b/ensp14ing/ensp14/.idea/.deveco/module/entry.cache.json new file mode 100644 index 0000000..08d936a --- /dev/null +++ b/ensp14ing/ensp14/.idea/.deveco/module/entry.cache.json @@ -0,0 +1,22 @@ +{ + "CommonInfo":{ + "current.select.target":"default" + }, + "BuildOptions":{ + "SELECT_BUILD_TARGET":"default", + "BUILD_PATH":{ + "OUTPUT_METADATA_JSON":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\hap_metadata\\default\\output_metadata.json", + "OUTPUT_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\outputs\\default", + "RES_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\res\\default", + "ETS_SUPER_VISUAL_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\cache\\default\\default@CompileArkTS\\esmodule", + "JS_ASSETS_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader_out\\default", + "SOURCE_MAP_DIR":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\source_map\\default", + "INTERMEDIA_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates", + "RES_PROFILE_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\res\\default\\resources\\base\\profile", + "WORKER_LOADER":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader\\default\\loader.json", + "MANIFEST_JSON":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\manifest\\default", + "JS_LITE_ASSETS_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\intermediates\\loader_out_lite\\default", + "JS_SUPER_VISUAL_PATH":"E:\\jiaocai\\ensp14\\entry\\build\\default\\cache\\default\\default@CompileJS\\jsbundle" + } + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/.deveco/project.cache.json b/ensp14ing/ensp14/.idea/.deveco/project.cache.json new file mode 100644 index 0000000..4de8f50 --- /dev/null +++ b/ensp14ing/ensp14/.idea/.deveco/project.cache.json @@ -0,0 +1,16 @@ +{ + "CommonInfo":{ + "crossplatform.projectType":"", + "project.ide.version":"5.0.13.240", + "current.select.product":"default", + "current.select.buildMode":"" + }, + "BuildOptions":{ + "BUNDLE_NAME":"com.example.ensp_fourteen", + "SELECT_BUILD_MODE":"", + "BUILD_PATH":{ + "OUTPUT_PATH":"E:\\jiaocai\\ensp14\\build\\outputs\\default" + }, + "SELECT_BUILD_PRODUCT":"default" + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/.gitignore b/ensp14ing/ensp14/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/ensp14ing/ensp14/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/ensp14ing/ensp14/.idea/misc.xml b/ensp14ing/ensp14/.idea/misc.xml new file mode 100644 index 0000000..639900d --- /dev/null +++ b/ensp14ing/ensp14/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/modules.xml b/ensp14ing/ensp14/.idea/modules.xml new file mode 100644 index 0000000..e19ab51 --- /dev/null +++ b/ensp14ing/ensp14/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/modules/ensp14.iml b/ensp14ing/ensp14/.idea/modules/ensp14.iml new file mode 100644 index 0000000..b71a54a --- /dev/null +++ b/ensp14ing/ensp14/.idea/modules/ensp14.iml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/modules/entry/entry.iml b/ensp14ing/ensp14/.idea/modules/entry/entry.iml new file mode 100644 index 0000000..e561f58 --- /dev/null +++ b/ensp14ing/ensp14/.idea/modules/entry/entry.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/previewer/default/defaultSettingConfig_Default.json b/ensp14ing/ensp14/.idea/previewer/default/defaultSettingConfig_Default.json new file mode 100644 index 0000000..98098e5 --- /dev/null +++ b/ensp14ing/ensp14/.idea/previewer/default/defaultSettingConfig_Default.json @@ -0,0 +1,25 @@ +{ + "setting": { + "1.0.1": { + "Language": { + "args": { + "Language": "zh_CN" + } + } + } + }, + "frontend": { + "1.0.0": { + "Resolution": { + "args": { + "Resolution": "360*780" + } + }, + "DeviceType": { + "args": { + "DeviceType": "default" + } + } + } + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/previewer/previewConfigV2.json b/ensp14ing/ensp14/.idea/previewer/previewConfigV2.json new file mode 100644 index 0000000..ab5ecbb --- /dev/null +++ b/ensp14ing/ensp14/.idea/previewer/previewConfigV2.json @@ -0,0 +1,37 @@ +{ + "1.0.0": { + "LastPreviewDevice": {} + }, + "1.0.1": { + "profileList": [ + { + "id": "Default", + "deviceType": "default", + "width": 1080, + "height": 2340, + "shape": "rect", + "dpi": 480, + "orientation": "portrait", + "language": "zh_CN", + "colorMode": "light" + }, + { + "id": "Tablet", + "deviceType": "tablet", + "width": 2560, + "height": 1600, + "shape": "rect", + "dpi": 400, + "orientation": "landscape", + "language": "zh_CN", + "colorMode": "light" + } + ], + "runningProfileList": [ + "Tablet" + ], + "availableProfileList": [ + "Default" + ] + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_Tablet.json b/ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_Tablet.json new file mode 100644 index 0000000..278b671 --- /dev/null +++ b/ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_Tablet.json @@ -0,0 +1,25 @@ +{ + "setting": { + "1.0.1": { + "Language": { + "args": { + "Language": "zh_CN" + } + } + } + }, + "frontend": { + "1.0.0": { + "Resolution": { + "args": { + "Resolution": "1024*640" + } + }, + "DeviceType": { + "args": { + "DeviceType": "tablet" + } + } + } + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_rd.json b/ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_rd.json new file mode 100644 index 0000000..33a1647 --- /dev/null +++ b/ensp14ing/ensp14/.idea/previewer/tablet/tabletSettingConfig_rd.json @@ -0,0 +1,53 @@ +{ + "setting": { + "1.0.1": { + "Language": { + "args": { + "Language": "zh_CN" + } + }, + "AvoidArea": { + "args": { + "topRect": { + "posX": 0, + "posY": 0, + "width": 2560, + "height": 97.5 + }, + "leftRect": { + "posX": 0, + "posY": 97.5, + "width": 0, + "height": 0 + }, + "rightRect": { + "posX": 2560, + "posY": 97.5, + "width": 0, + "height": 0 + }, + "bottomRect": { + "posX": 0, + "posY": 2256, + "width": 1530, + "height": 70 + } + } + } + } + }, + "frontend": { + "1.0.0": { + "Resolution": { + "args": { + "Resolution": "2560*1600" + } + }, + "DeviceType": { + "args": { + "DeviceType": "tablet" + } + } + } + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/.idea/vcs.xml b/ensp14ing/ensp14/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/ensp14ing/ensp14/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ensp14ing/ensp14/AppScope/app.json5 b/ensp14ing/ensp14/AppScope/app.json5 new file mode 100644 index 0000000..8a1b59e --- /dev/null +++ b/ensp14ing/ensp14/AppScope/app.json5 @@ -0,0 +1,10 @@ +{ + "app": { + "bundleName": "com.example.ensp_fourteen", + "vendor": "example", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:app_icon", + "label": "$string:app_name" + } +} diff --git a/ensp14ing/ensp14/AppScope/resources/base/element/string.json b/ensp14ing/ensp14/AppScope/resources/base/element/string.json new file mode 100644 index 0000000..6dc1883 --- /dev/null +++ b/ensp14ing/ensp14/AppScope/resources/base/element/string.json @@ -0,0 +1,8 @@ +{ + "string": [ + { + "name": "app_name", + "value": "ENSP_fourteen" + } + ] +} diff --git a/ensp14ing/ensp14/AppScope/resources/base/media/app_icon.png b/ensp14ing/ensp14/AppScope/resources/base/media/app_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cd45accb1dfd2fd0da16c732c72faa6e46b26521 GIT binary patch literal 2041 zcmaJ?c~nzZ9u6@;0AXaYAVN(;Kr(@>EJ+}skOWf=BA~*l4us@ELY9{%0m5QX6pnb} z(jZF|S&pLAS}3BZAfeQSvJ_h>F2Q1PYqi?o5`;m_yjZdG$1v}l_wK#F^L^iMz2}uD z#K$>1dON~kFlWvhW+Jp=tuN9J`ZlM-rl4h+ij|^D0y9;4JOuz-EdVnB6i3R-0ulk9 zApi4zAQA>!N9@-o026$1@L`d124`3G5<@_m`0f)Ug_Ie~;HT2q<_a=HH> zDwTdfD^-cW-|_xWVP$f@93UhDN-#&khZ>jZXLTi~$0`7x3REP6pk%&^2|`c>DutjN zMJD4Zs6Z}{FOpd;*mo2zm(GzXRXiCV;4m3zNCYnu3Fy=i5;2An&Lp!#LP;bRD~1&s z%VH6UY+}r6YDgG+p34OJIZ{BTn&%4s=CT&#TBkuOhdeU@g(w#guoa*b^)73=XyI65 z7Swys6)YS}?1EeZ6b!-I+yCnIya^g0>-NLsLWd8t56GZ_S3r|ZGbR+mV2ErEb9J)X zIF!njY-D-7{qtF2(?nlQ$0}!pzt=}hc*m%%)0Jb#N_K4@IC-`Pi5DahPZN7N9rH;ol;Gc*>-Go@gXKTM{eP)iJj6CYTIi}B#zLKZYD@_;m zrXmXXsFq@~ou-z!9bHoM8*(hwl>X(zm)TDcdkF4lZm$1jP*HbnD`o1$g}_R#+bu2D zr%7Y8KdsaC-V*aem5#@*M%r^GPgu%P2e-BnBClhP2yoGFe40>);=}>{NONtkXQ01p z)OX^t2Ojhddot9eg0WTIVSTNBa}7V-^_pO595w|Hx9q?k4dMp@$G7PK*TD=y;ck6J zdGRB!_RAI2nR3%tO1IkdWp*bw*?<=pM_LZb30?!oK)s;En( z!#nnd9=cXJ<}+e{XLdx(q3&ikJISe?eSHHohk+pz+$6Cv{ytvc{QXmMn2XQ9U8rvt zrJdAn(0gpSD@N=yTrI_2^P#*zQg7MTp1)k(lv(*(KtUR6@M|2WB>2wRwC-h=wk6XF zPtSes*_JwI+^d>xW489MJw5R6=t5?{R zc|E8i?RL@p9)A3ZJAQOg`}+F;<_vnWA!KxR#g%jZ@y_1Qu#Uw)kFPw_xmZ?a^e*1{ zM|ImtqA|(CaDQ@Fyvcof`MN66&VI6m6gAyAXx`%cDx6BI{Bj#}V*Rn1(b~;Am)D2u zX7(027IO?Z2VYK^1vXXpoZ@AtH~N?0rYWwtyA15`6vEf6fk&;o-L;7zFt`5nk*iOy z`<918zB+k;EytI$FAXug)jk*e@e};4e9g__w4A5ev!!)H$yC@{?vsRqJ##X1R%xPG z&_R3oDi$MtTkVqfPj)HEUDx_7wd!y{8#1%$U*Dd0sK@=#6+!XlsE-s^1f5E`R9Wo71^b~mbVdU;Fw0LG~mUQg;xsX4QYRo3B@rH_=ry>DE8ef!c2ta8UcI#26# zF|`*4wtMHe@%#eGZw`#Yj|QWuB`eRD)b~)r9mM95p_JVG%-IdcbIX5qG#GpGD+IrS zEqxb1Rg&Dadk5#7t4j68I1f!@A$efp1?I%&d*56)yl!tkz!14<$0Od_&6cGw$WW0r zjSlQA7l*6;vgfhv!cR|RmAD$+w6j`rVf=-?-D@q>kOseUVSb*~jbAS^*1h?ZL)n(9 zDa}`4etXO6`}9;{k5E^N{rcfnV_(LPwsDg``wtyS*V<19c3!PGJ3Kqy9ksvkwbJ%Z z*N(fT0{e*Wji-Ck5!3YE0j|PZ@&z`v=kitWL$bqSt!e4bH!+(|Q)CZ30^nVPfkx{s zX{6of`p=BiPb@u@IyL!tRk>?qgBqCmo-Zlt!636g?z`s~zdfwuB7DXZHvV`Usp+%Z zo*&;Biu@MHE&2j+?j^o`Cr12u<>vOe=a&8a2hlcmFjJiDR>XnD4c4DAhZWCkiAgW{ E51q9-lK=n! literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/build-profile.json5 b/ensp14ing/ensp14/build-profile.json5 new file mode 100644 index 0000000..cc9434a --- /dev/null +++ b/ensp14ing/ensp14/build-profile.json5 @@ -0,0 +1,36 @@ +{ + "app": { + "signingConfigs": [], + "products": [ + { + "name": "default", + "signingConfig": "default", + "compileSdkVersion": 10, + "compatibleSdkVersion": 9, + "runtimeOS": "OpenHarmony", + } + ], + "buildModeSet": [ + { + "name": "debug", + }, + { + "name": "release" + } + ] + }, + "modules": [ + { + "name": "entry", + "srcPath": "./entry", + "targets": [ + { + "name": "default", + "applyToProducts": [ + "default" + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/PreviewBuildParam.json b/ensp14ing/ensp14/entry/.preview/PreviewBuildParam.json new file mode 100644 index 0000000..8b7b4cf --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/PreviewBuildParam.json @@ -0,0 +1 @@ +{"APP_RESOURCES":"E:\\jiaocai\\ensp14\\AppScope\\resources","MODULE_RESOURCES":"{\"E:\\\\jiaocai\\\\ensp14\\\\entry\\\\src\\\\main\\\\resources\":\"module_compiled\"}","HAR_RESOURCES":"{}","PREVIEW_GENERATE_SOURCE_DIR":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\generated\\r\\default","PREVIEW_COMPILE_MODULE_NAMES":"entry"} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/ArkTS/ArkTSLinter_output.json b/ensp14ing/ensp14/entry/.preview/cache/.default/ArkTS/ArkTSLinter_output.json new file mode 100644 index 0000000..8581552 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/ArkTS/ArkTSLinter_output.json @@ -0,0 +1,1715 @@ +[ + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 5, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 7, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 15, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 18, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 24, + "character": 40, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 24, + "character": 113, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 39, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 39, + "character": 109, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 51, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 53, + "character": 16, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 56, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 64, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 64, + "character": 95, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 67, + "character": 24, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 76, + "character": 42, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 76, + "character": 117, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 76, + "character": 239, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 101, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 101, + "character": 111, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 113, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 115, + "character": 13, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 116, + "character": 16, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 123, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 123, + "character": 61, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 126, + "character": 21, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 132, + "character": 39, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 132, + "character": 111, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 132, + "character": 157, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 149, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 149, + "character": 108, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 161, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 163, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 164, + "character": 13, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 173, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 173, + "character": 58, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 176, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 184, + "character": 40, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 184, + "character": 113, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 184, + "character": 157, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 201, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 201, + "character": 109, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 212, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 214, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 221, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 223, + "character": 13, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 230, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 232, + "character": 16, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 239, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 241, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 46, + "character": 35, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 5, + "character": 29, + "messageText": "RegExp literals are not supported (arkts-no-regexp-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 6, + "character": 32, + "messageText": "RegExp literals are not supported (arkts-no-regexp-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 15, + "character": 21, + "messageText": "Usage of standard library is restricted (arkts-limited-stdlib)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 21, + "character": 24, + "messageText": "Usage of standard library is restricted (arkts-limited-stdlib)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 30, + "character": 21, + "messageText": "Usage of standard library is restricted (arkts-limited-stdlib)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 58, + "character": 7, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 9, + "character": 3, + "messageText": "Property 'targetHost' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 21, + "character": 3, + "messageText": "Property 'level' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 86, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 86, + "character": 41, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 87, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 87, + "character": 41, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 91, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 92, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 97, + "character": 24, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 98, + "character": 24, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 99, + "character": 14, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 99, + "character": 46, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 110, + "character": 3, + "messageText": "Property 'macData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 111, + "character": 3, + "messageText": "Property 'ipData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 112, + "character": 3, + "messageText": "Property 'transData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 113, + "character": 3, + "messageText": "Property 'appData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 137, + "character": 9, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 5, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 142, + "character": 55, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 163, + "character": 37, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 163, + "character": 54, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 163, + "character": 77, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 163, + "character": 99, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 163, + "character": 144, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 163, + "character": 169, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 177, + "character": 25, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 178, + "character": 33, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 178, + "character": 59, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 178, + "character": 88, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 178, + "character": 120, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 178, + "character": 139, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 178, + "character": 173, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 179, + "character": 28, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 181, + "character": 62, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 196, + "character": 25, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 35, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 58, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 84, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 110, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 131, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 157, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 183, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 197, + "character": 214, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 198, + "character": 29, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 222, + "character": 11, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 225, + "character": 7, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 283, + "character": 7, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 332, + "character": 48, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 341, + "character": 28, + "messageText": { + "messageText": "Argument of type '(item: symbol) => void' is not assignable to parameter of type '(value: symbol | null, index: number, array: (symbol | null)[]) => void'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Types of parameters 'item' and 'value' are incompatible.", + "category": 1, + "code": 2328, + "next": [ + { + "messageText": "Type 'symbol | null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322 + } + ] + } + ] + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 348, + "character": 38, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 349, + "character": 51, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 351, + "character": 59, + "messageText": { + "messageText": "Argument of type 'SimBase | undefined' is not assignable to parameter of type 'SimBase'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'SimBase'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 356, + "character": 11, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 369, + "character": 24, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 401, + "character": 28, + "messageText": { + "messageText": "Argument of type '(item: symbol) => void' is not assignable to parameter of type '(value: symbol | null, index: number, array: (symbol | null)[]) => void'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Types of parameters 'item' and 'value' are incompatible.", + "category": 1, + "code": 2328, + "next": [ + { + "messageText": "Type 'symbol | null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322 + } + ] + } + ] + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 405, + "character": 38, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 406, + "character": 59, + "messageText": { + "messageText": "Argument of type 'SimBase | undefined' is not assignable to parameter of type 'SimBase'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'SimBase'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 411, + "character": 11, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 420, + "character": 26, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 450, + "character": 28, + "messageText": { + "messageText": "Argument of type '(item: symbol, index: number) => void' is not assignable to parameter of type '(value: symbol | null, index: number, array: (symbol | null)[]) => void'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Types of parameters 'item' and 'value' are incompatible.", + "category": 1, + "code": 2328, + "next": [ + { + "messageText": "Type 'symbol | null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322 + } + ] + } + ] + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 455, + "character": 59, + "messageText": { + "messageText": "Argument of type 'SimBase | undefined' is not assignable to parameter of type 'SimBase'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'SimBase'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 460, + "character": 11, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 18, + "character": 7, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 19, + "character": 11, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 34, + "character": 15, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 95, + "character": 17, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 279, + "character": 20, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 309, + "character": 11, + "messageText": "Destructuring variable declarations are not supported (arkts-no-destruct-decls)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 317, + "character": 14, + "messageText": "Usage of standard library is restricted (arkts-limited-stdlib)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 317, + "character": 31, + "messageText": "Usage of standard library is restricted (arkts-limited-stdlib)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 341, + "character": 35, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 370, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 371, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 401, + "character": 35, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 421, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 422, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 450, + "character": 35, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 20, + "character": 3, + "messageText": "Property 'objLabel' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 21, + "character": 3, + "messageText": "Property 'ip' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 22, + "character": 3, + "messageText": "Property 'mac' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 23, + "character": 3, + "messageText": "Property 'img' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 24, + "character": 3, + "messageText": "Property 'imgTm' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 25, + "character": 3, + "messageText": "Property 'interface' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 26, + "character": 3, + "messageText": "Property 'connections' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 27, + "character": 3, + "messageText": "Property 'routerTable' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 28, + "character": 3, + "messageText": "Property 'switchTable' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 48, + "character": 5, + "messageText": "Type 'undefined' is not assignable to type 'MACData[] | null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 17, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 25, + "character": 20, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 26, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 34, + "character": 18, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 68, + "character": 37, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 68, + "character": 79, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 70, + "character": 78, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 70, + "character": 97, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 70, + "character": 119, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 156, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 157, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 159, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 160, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 178, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 179, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 181, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 182, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 200, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 201, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 203, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 204, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 222, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 223, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 225, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 226, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 261, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 262, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 264, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 265, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 283, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 284, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 286, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 287, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 305, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 306, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 308, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 309, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 327, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 328, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 330, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 331, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 412, + "character": 19, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 466, + "character": 34, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 11, + "character": 51, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 15, + "character": 50, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 19, + "character": 53, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 23, + "character": 57, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 27, + "character": 57, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 31, + "character": 49, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 35, + "character": 54, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 29, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 56, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 91, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 118, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 177, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/Table.ets", + "line": 77, + "character": 3, + "messageText": "Property 'host' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 45, + "character": 26, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 46, + "character": 26, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 47, + "character": 26, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 230, + "character": 3, + "messageText": "Property 'thisIndex' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 10, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 190, + "character": 12, + "messageText": "Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 198, + "character": 12, + "messageText": "Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 224, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 235, + "character": 39, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/components/ButtomMenuBar.ets", + "line": 37, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/pages/Index.ets", + "line": 9, + "character": 23, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/pages/Index.ets", + "line": 10, + "character": 24, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "F:/jiaocai/ensp14/entry/src/main/ets/pages/Index.ets", + "line": 11, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + } +] \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/ResourceTable.txt b/ensp14ing/ensp14/entry/.preview/cache/.default/ResourceTable.txt new file mode 100644 index 0000000..f0beb89 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/ResourceTable.txt @@ -0,0 +1,18 @@ +string EntryAbility_desc 0x01000004 +string EntryAbility_label 0x01000005 +string app_name 0x01000000 +string module_desc 0x01000006 +color start_window_background 0x01000008 +media app_icon 0x01000001 +media icon 0x01000003 +media jiaohuanji 0x01000010 +media jiaohuanji_tm 0x0100000b +media jixianqi 0x0100000c +media jixianqi_tm 0x01000009 +media luyouqi 0x0100000d +media luyouqi_tm 0x01000011 +media packet 0x0100000f +media startIcon 0x01000002 +media zhuji 0x0100000a +media zhuji_tm 0x0100000e +profile main_pages 0x01000007 \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..ae4abd3d12c6d32d9931970411b2e6febea84505 GIT binary patch literal 95070 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 BX!QU9 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.ts new file mode 100644 index 0000000..bfa0ac3 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.ts @@ -0,0 +1,220 @@ +import type { SimHost } from "./OtherSimObjects"; +// 应用层数据包(解封包) +export class AppData { + objId: symbol; // 主机id + objLabel: string; // 主机标识 + appPackId: symbol; // 应用层数据包id + appPackSize: number; // 应用层数据包大小 + appPackTag: string; // 应用层数据包内容 + sourceAppAddr: string; // 源主机应用层信息 + targetAppAddr: string; // 目的主机应用层信息 + timeStamp: number; // 时间戳 + appPackedString: string; // 上述所有信息总和 + constructor(objId: symbol, objLabel: string, appPackSize: number, appPackTag: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId; + this.objLabel = objLabel; + this.appPackId = Symbol(); + this.appPackSize = appPackSize; + this.appPackTag = appPackTag; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.timeStamp = Date.parse(new Date().toString()); + this.appPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",appPackId: " + this.appPackId.toString() + ",appPackSize: " + this.appPackSize.toString() + ",appPackTag: " + this.appPackTag + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n"; + } + pack(): AppData { + return this; + } // 应用层封包 + unpack(simHost: SimHost) { + simHost.appData = { + objId: this.objId, + objLabel: this.objLabel, + appPackId: this.appPackId, + sourceAppAddr: this.sourceAppAddr, + targetAppAddr: this.targetAppAddr, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",appPackId:" + this.appPackId.toString() + ",sourceAppAddr:" + this.sourceAppAddr.toString() + ",targetAppAddr:" + this.targetAppAddr.toString() + "\n"; + } + }; + } // 应用层解包 + isValid(sourceAppAddr: string, targetAppAddr: string) { + return this.sourceAppAddr === sourceAppAddr && this.targetAppAddr === targetAppAddr; + } // 根据用户输入的应用层地址判断是否正确 +} +// 传输层数据包(解封包) +export class TransData { + objId: symbol; + objLabel: string; + transPackId: symbol; + transSeq: number; + transTag: string; + appPackId: symbol; + sourcePort: number; + targetPort: number; + sourceAppAddr: string; + targetAppAddr: string; + timeStamp: number; + transPackedString: string; + constructor(objId: symbol, objLabel: string, transSeq: number, transTag: string, appPackId: symbol, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId; + this.objLabel = objLabel; + this.transPackId = Symbol(); + this.transSeq = transSeq; + this.transTag = transTag; + this.appPackId = appPackId; + this.sourcePort = sourcePort; + this.targetPort = targetPort; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.timeStamp = Date.parse(new Date().toString()); + this.transPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",transPackId: " + this.transPackId.toString() + ",transSeq: " + this.transSeq.toString() + ",transTag: " + this.transTag + ",appPackId: " + this.appPackId.toString() + "\nsourcePort: " + this.sourcePort.toString() + "\ntargetPort: " + this.targetPort.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n"; + } + calcNumSplits(): number { + const MTU = 2048; + return (this.transPackedString.length + MTU - 1) / MTU; + } // 计算拆分数量 + pack(): Array { + const numSplits = this.calcNumSplits(); + let transDataList: TransData[] = []; + for (let i = 0; i < numSplits; i++) { + transDataList.push(new TransData(this.objId, this.objLabel, i + 1, this.transTag, this.appPackId, this.sourcePort, this.targetPort, this.sourceAppAddr, this.targetAppAddr)); + } + return transDataList; + } // 传输层封包 + unPack(simHost: SimHost) { + simHost.transData = { + objId: this.objId, + objLabel: this.objLabel, + transPackId: this.transPackId, + sourcePort: this.sourcePort, + targetPort: this.targetPort, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",transPackId:" + this.transPackId.toString() + ",sourcePort:" + this.sourcePort.toString() + ",targetPort:" + this.targetPort.toString() + "\n"; + } + }; + } // 传输层解包 + isValid(sourcePort: number, targetPort: number) { + return this.sourcePort === sourcePort && this.targetPort === targetPort; + } // 根据用户输入的端口判断是否正确 +} +// 网络层数据包(解封包) +export class IPData { + objId: symbol; + objLabel: string; + ipPackId: symbol; + transPackId: symbol; + sourceIp: string; + targetIp: string; + sourceAppAddr: string; + targetAppAddr: string; + ipPackedString: string; + constructor(objId: symbol, objLabel: string, transPackId: symbol, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId; + this.objLabel = objLabel; + this.ipPackId = Symbol(); + this.transPackId = transPackId; + this.sourceIp = sourceIp; + this.targetIp = targetIp; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.ipPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",ipPackId: " + this.ipPackId.toString() + ",transPackId: " + this.transPackId.toString() + "\nsourceIp: " + this.sourceIp.toString() + "\ntargetIp: " + this.targetIp.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n"; + } + pack(): IPData { + let ipData: IPData; + ipData = new IPData(this.objId, this.objLabel, this.transPackId, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr); + return ipData; + } // 网络层封包 + unpack(simHost: SimHost) { + simHost.ipData = { + objId: this.objId, + objLabel: this.objLabel, + ipPackId: this.ipPackId, + sourceIp: this.sourceIp, + targetIp: this.targetIp, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",ipPackId:" + this.ipPackId.toString() + ",sourceIp:" + this.sourceIp.toString() + ",targetIp:" + this.targetIp.toString() + "\n"; + } + }; + } // 网络层解包 + isValid(sourceIp: string, targetIp: string) { + return this.sourceIp === sourceIp && this.targetIp === targetIp; + } // 根据用户输入的ip地址判断是否正确 +} +// 链路层数据包(解封包) +export class MACData { + objId: symbol; + objLabel: string; + macPackId: symbol; + ipPackId: symbol; + sourceMac: string; + targetMac: string; + sourceIp: string; + targetIp: string; + sourceAppAddr: string; + targetAppAddr: string; + macPackedString: string; + constructor(objID: symbol, objLabel: string, ipPackID: symbol, sourceMac: string, targetMac: string, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objID; + this.objLabel = objLabel; + this.macPackId = Symbol(); + this.ipPackId = ipPackID; + this.sourceMac = sourceMac; + this.targetMac = targetMac; + this.sourceIp = sourceIp; + this.targetIp = targetIp; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.macPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",macPackId: " + this.macPackId.toString() + ",ipPackId: " + this.ipPackId.toString() + "\nsentMac: " + this.sourceMac.toString() + ",rpctMac: " + this.targetMac.toString() + ",sourceIp: " + this.sourceIp.toString() + ",targetIp: " + this.targetIp.toString() + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n"; + } + pack(): MACData { + let macData: MACData; + macData = new MACData(this.objId, this.objLabel, this.ipPackId, this.sourceMac, this.targetMac, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr); + return macData; + } // 链路层封包 + unPack(simHost: SimHost) { + simHost.macData = { + objId: this.objId, + objLabel: this.objLabel, + macPackId: this.macPackId, + sourceMac: this.sourceMac, + targetMac: this.targetMac, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",macPackId:" + this.macPackId.toString() + ",sourceMac:" + this.sourceMac.toString() + ",targetMac:" + this.targetMac.toString() + "\n"; + } + }; + } // 链路层解包 + isValid(sentMac: string, rcptMac: string) { + return this.sourceMac === sentMac && this.targetMac === rcptMac; + } // 根据用户输入的mac地址判断是否正确 +} +export interface macData { + objId: symbol; + objLabel: string; + macPackId: symbol; + sourceMac: string; + targetMac: string; + toString: Function; +} // 主机收到的链路层数据包的数据结构 +export interface ipData { + objId: symbol; + objLabel: string; + ipPackId: symbol; + sourceIp: string; + targetIp: string; + toString: Function; +} // 主机收到的网络层数据包的数据结构 +export interface transData { + objId: symbol; + objLabel: string; + transPackId: symbol; + sourcePort: number; + targetPort: number; + toString: Function; +} // 主机收到的传输层数据包的数据结构 +export interface appData { + objId: symbol; + objLabel: string; + appPackId: symbol; + sourceAppAddr: string; + targetAppAddr: string; + toString: Function; +} // 主机收到的链路层数据包的数据结构 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..072f7bc64fa4f7c83a25ae87a211ec3071e56fbb GIT binary patch literal 228453 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.ts new file mode 100644 index 0000000..e659fda --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.ts @@ -0,0 +1,409 @@ +import { SimBase } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/SimBase"; +import { AppData, IPData, MACData, TransData } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/Datas"; +import type { macData, ipData, transData, appData } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/Datas"; +import { updatePacketLog } from "@bundle:com.example.ensp_fourteen/entry/ets/functions/functions"; +@Observed +export class SimPacket { + firstSendHost: SimHost; + sendHost: SimBase; + targetHost: SimBase; + sourceMac: string; // 源主机mac地址 + sourceIp: string; // 源主机ip地址 + targetMac: string; // 目的主机mac地址 + targetIp: string; // 目的主机ip地址 + message: string; // 数据包内容 + size: number; // 数据包大小 + allSimObj: SimBase[]; + allSimPacket: SimPacket[]; + id: symbol; // 使用symbol()生成数据包对象唯一标识 + upJump: any; // 上一跳连接对象,可以根据具体类型定义 + points: number[][]; // 路径点 + level: number; // 数据包展示优先级 + constructor(firstSendHost: SimHost, sendHost: SimBase, sourceMac: string, sourceIp: string, targetMac: string, targetIp: string, message: string, size: number, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + this.firstSendHost = firstSendHost; + this.sendHost = sendHost; + this.sourceMac = sourceMac; + this.sourceIp = sourceIp; + this.targetMac = targetMac; + this.targetIp = targetIp; + this.message = message; + this.size = size; + this.allSimObj = allSimObj; + this.allSimPacket = allSimPacket; + this.id = Symbol(); + this.upJump = null; + this.points = []; + } +} +@Observed +export class SimConnect { + nObjS: SimBase | null; // 线一端节点S + nObjE: SimBase | null; // 线一端节点E + ifsS: number; // 线一端节点S的端口 + ifsE: number; // 线一端节点E的端口 + width: number; // 线的粗细 + configCorrect: boolean; // 配置正确与否 + constructor(nobjs: SimBase | null, nobje: SimBase | null, ifss: number, ifse: number) { + this.nObjS = nobjs; + this.nObjE = nobje; + this.ifsS = ifss; + this.ifsE = ifse; + if (nobjs != null && nobje != null) { + this.configCorrect = true; + } + else { + this.configCorrect = false; + } + this.width = this.configCorrect === false ? 1 : 4; + } + updateObjConn() { + this.nObjS.interface[this.ifsS - 1] = this.nObjE.objID; + this.nObjE.interface[this.ifsE - 1] = this.nObjS.objID; + } // 更新仿真对象的接口信息 + deleteObjConn() { + this.nObjS.interface[this.ifsS - 1] = null; + this.nObjE.interface[this.ifsE - 1] = null; + } // 删除仿真对象的接口信息 + equals(other: any): boolean { + if (other instanceof SimConnect) { + const otherIdS = other.nObjS.objID; + const otherIdE = other.nObjE.objID; + return this.nObjS.objID == otherIdS && this.nObjE.objID == otherIdE; + } + return false; + } // 判断两个连接线是否相同 +} +@Observed +export class SimHost extends SimBase { + isOnline: boolean = false; // 主机联网状态 + port: number; + appAddr: string; + macData: macData; + ipData: ipData; + transData: transData; + appData: appData; + constructor(x: number, y: number, type: number = 1) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.ip = ""; + this.mac = ""; + this.img = { "id": 16777226, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 主机图片 + this.imgTm = { "id": 16777230, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 主机配置成功图片 + this.interface = [null]; // 主机只有一个接口 + this.connections = [null]; // 一个接口对应一根连接线 + this.port = 8080; + this.appAddr = this.ip + ":" + this.port; + } + setDefaultName() { + return `SHO${++SimBase.flag}`; + } // 生成组件默认名称 + onlineSwitch() { + this.isOnline = !this.isOnline; + } // 切换联网状态 + createPacket(mac: string, ip: string, message: string, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + let isNewPacket: number = AppStorage.get("isNewPacket"); + console.log(isNewPacket.toString()); + AppStorage.set("isNewPacket", isNewPacket + 1); + isNewPacket = AppStorage.get("isNewPacket"); + console.log(isNewPacket.toString()); + let packet = new SimPacket(this, this as SimBase, this.mac, this.ip, mac, ip, message, 1024, allSimObj, allSimPacket); + packet.level = 1; + packet.points.push([this.objX, this.objY]); + packet.allSimPacket.push(packet); + updatePacketLog(`主机-${this.objLabel}创建数据包成功,信息为[${packet.message}]!`); + this.send(packet); + } // 创建数据包 + createAppPacket(appPackSize: number, appPackTag: string, sourceAppAddr: string, targetAppAddr: string): AppData | null { + let appPacket = new AppData(this.objID, this.objLabel, appPackSize, appPackTag, sourceAppAddr, targetAppAddr); + if (appPacket.isValid(sourceAppAddr, targetAppAddr)) { + appPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建应用层数据包成功,信息为[${appPacket.appPackTag}]!`); + return appPacket; + } + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } // 创建应用层数据包 + createTransPackets(appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string): TransData[] | null { + const appPacket = this.createAppPacket(appPackSize, appPackTag, sourceAppAddr, targetAppAddr); + let transPacket = new TransData(appPacket.objId, appPacket.objLabel, 1, appPacket.appPackTag, appPacket.appPackId, sourcePort, targetPort, appPacket.sourceAppAddr, appPacket.targetAppAddr); + if (transPacket.isValid(sourcePort, targetPort)) { + let transSplitedPackets = transPacket.pack(); + let numbers = transSplitedPackets.length; + updatePacketLog(`主机-${this.objLabel}创建传输层数据包成功,并成功分割为${numbers}个,信息为[${transPacket.transTag}]!`); + return transSplitedPackets; + } + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } // 创建传输层数据包 + createIpPacket(appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetIp: string, sourceAppAddr: string, targetAppAddr: string): IPData[] | null { + const transPacketList = this.createTransPackets(appPackSize, appPackTag, sourcePort, targetPort, sourceAppAddr, targetAppAddr); + let ipPacketList: IPData[] = []; + for (let i = 0; i < transPacketList.length; i++) { + let ipPacket = new IPData(transPacketList[i].objId, transPacketList[i].objLabel, transPacketList[i].transPackId, this.ip, targetIp, transPacketList[i].sourceAppAddr, transPacketList[i].targetAppAddr); + if (ipPacket.isValid(this.ip, targetIp)) { + ipPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建网络层数据包成功,信息为[${transPacketList[i].transTag}]!`); + ipPacketList.push(ipPacket); + } + } + if (ipPacketList) { + return ipPacketList; + } + else { + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } + } // 创建网络层数据包 + createMacPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): MACData[] | null { + const ipPacketList = this.createIpPacket(appPackSize, appPackTag, sourcePort, targetPort, targetIp, sourceAppAddr, targetAppAddr); + let macPacketList: MACData[] = []; + for (let i = 0; i < ipPacketList.length; i++) { + let macPacket = new MACData(ipPacketList[i].objId, ipPacketList[i].objLabel, ipPacketList[i].ipPackId, this.mac, targetMac, ipPacketList[i].sourceIp, ipPacketList[i].targetIp, ipPacketList[i].sourceAppAddr, ipPacketList[i].targetAppAddr); + if (macPacket.isValid(this.mac, targetMac)) { + macPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建链路层数据包成功,信息为[${appPackTag}]!`); + macPacketList.push(macPacket); + } + } + if (macPacketList) { + this.createPacket(targetMac, targetIp, appPackTag, allSimObj, allSimPacket); + return macPacketList; + } + else { + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } + } // 创建链路层数据包 + createPhysicsPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): boolean { + if (this.createMacPacket(allSimObj, allSimPacket, appPackSize, appPackTag, sourcePort, targetPort, targetMac, targetIp, sourceAppAddr, targetAppAddr)) { + return true; + } + return false; + } // 创建物理层数据包 + receive(packet: SimPacket) { + if (packet.targetIp == this.ip && packet.targetMac == this.mac) { + let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived"); + console.log(isNewPacketArrived.toString()); + AppStorage.set("isNewPacketArrived", isNewPacketArrived + 1); + isNewPacketArrived = AppStorage.get("isNewPacketArrived"); + console.log(isNewPacketArrived.toString()); + packet.points.push([this.objX, this.objY]); + updatePacketLog(`主机-${this.objLabel}链路层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}网络层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}传输层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}应用层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}获取数据包成功,信息为[${packet.message}]!`); + } + else { + console.log(`主机${this.objLabel}获取数据包失败!`); + } + } // 接收数据包 + receiveMacPacket(packet: SimPacket, macPacket: MACData) { + if (macPacket.targetMac == this.mac && macPacket.targetIp == this.ip) { + this.receive(packet); + macPacket.unPack(this); + updatePacketLog(`主机-${this.objLabel}获取链路层数据包成功,信息为[${this.macData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}链路层数据包解包失败!`); + } + } // 接收链路层数据包 + receiveIpPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData) { + if (ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveMacPacket(packet, macPacket); + ipPacket.unpack(this); + updatePacketLog(`主机-${this.objLabel}获取网络层数据包成功,信息为[${this.ipData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}网络层数据包解包失败!`); + } + } // 接收网络层数据包 + receiveTransPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData, transPacket: TransData) { + if (transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveIpPacket(packet, macPacket, ipPacket); + transPacket.unPack(this); + updatePacketLog(`主机-${this.objLabel}获取传输层数据包成功,信息为[${this.transData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}传输层数据包解包失败!`); + } + } // 接收传输层数据包 + receiveAppPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData, transPacket: TransData, appPacket: AppData) { + if (appPacket.targetAppAddr == this.appAddr && transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveTransPacket(packet, macPacket, ipPacket, transPacket); + updatePacketLog(`主机-${this.objLabel}获取应用层数据包成功,信息为[${this.appData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}应用层数据包解包失败!`); + } + } // 接收应用层数据包 + send(packet: SimPacket) { + const connObj: symbol = this.objID; + packet.upJump = connObj; + updatePacketLog(`主机-${this.objLabel}发送数据包成功,信息为[${packet.message}]!`); + if (packet.allSimObj.find(item => item.objID === this.interface[0]) != undefined) { + packet.allSimObj.find(item => item.objID === this.interface[0]).receive(packet); + } + // console.log("packet.targetIp:" + packet.targetIp) + } // 发送数据包 +} +@Observed +export class SimRouter extends SimBase { + constructor(x: number, y: number, type: number = 2) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.ip = ""; + this.mac = ""; + this.img = { "id": 16777229, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 路由器图片 + this.imgTm = { "id": 16777233, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 路由器配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + this.routerTable = []; + } + setDefaultName() { + return `SRO${++SimBase.flag}`; + } // 生成组件默认名称 + checkDestinationIp(destinationIp: string, network: string): boolean { + // 解析目标 IP 和网络地址 + const [networkAddress, subnetMask] = network.split('/'); + // 分解目标 IP 地址和网络地址为数组 + const destinationIpParts = destinationIp.split('.'); + const networkAddressParts = networkAddress.split('.'); + // 计算目标 IP 的网络地址(根据子网掩码) + const calculatedNetworkAddressParts = destinationIpParts.map((part, index) => { + return parseInt(part) & parseInt(networkAddressParts[index]); + }); + // 构建目标 IP 的网络地址和网络地址的比较字符串 + const calculatedNetworkAddress = calculatedNetworkAddressParts.join('.'); + const inputNetworkAddress = networkAddressParts.join('.'); + // 比较目标 IP 的网络地址和给定的网络地址是否相同,并检查是否在同一网络范围内 + return calculatedNetworkAddress === inputNetworkAddress && subnetMask === '24'; + } // 检查目标ip是否属于指定的网段范围内 + receive(packet: SimPacket) { + updatePacketLog(`路由器-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + try { + this.checkDestinationIp(packet.targetIp, this.ip); + } + catch (e) { + console.log("packet router err:" + JSON.stringify(e)); + } + this.transmit(packet); + } // 接收数据包 + transmit(packet: SimPacket) { + let flag = 0; + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); // 当前遍历到的接口对应的仿真对象 + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); // 当前数据包的上一跳仿真对象 + if (item != null) { + // console.log(String(obj != objUpJump) + " " + String(this.routerTable.some(table => { + // return table.net === packet.targetIp // && obj.objID === this.interface[table.port-1] + // })) + " " + String(packet.targetIp)) + if (item != packet.upJump && this.routerTable.some(table => { + return table.net === packet.targetIp && obj.objID === this.interface[table.port - 1]; + })) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + flag++; + } + } + }); + if (!flag) { + updatePacketLog(`路由器-${this.objLabel}找不到对应端口进行转发!`); + } + } // 转发数据包 + getTableConfig(): string { + let str = ""; + const routerTables = this.routerTable; + for (let router of routerTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['segment']}\n`; + } + return str; + } // 获取路由表配置信息用于展示 +} +@Observed +export class SimSwitch extends SimBase { + constructor(x: number, y: number, type: number = 3) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.mac = ""; + this.img = { "id": 16777232, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 交换机图片 + this.imgTm = { "id": 16777227, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 交换机配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + this.switchTable = []; + } + setDefaultName() { + return `SSW${++SimBase.flag}`; + } // 生成组件默认名称 + receive(packet: SimPacket) { + updatePacketLog(`交换机-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + this.transmit(packet); + } // 接收数据包 + transmit(packet: SimPacket) { + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); + if (item != null) { + if (item != packet.upJump && this.switchTable.some(table => table.net === packet.targetMac)) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + } + } + }); + } // 转发数据包 + getTableConfig(): string { + let str = ""; + const macTables = this.switchTable; + for (const router of macTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['mac']}\n`; + } + return str; + } // 获取交换机表配置信息用于展示 +} +@Observed +export class SimHub extends SimBase { + constructor(x: number, y: number, type: number = 4) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.img = { "id": 16777228, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 集线器图片 + this.imgTm = { "id": 16777225, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 集线器配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + } + setDefaultName(): string { + return `SHU${++SimBase.flag}`; // 生成组件默认名称 + } + receive(packet: SimPacket) { + updatePacketLog(`集线器-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + this.transmit(packet); + } // 接收数据包 + transmit(packet: SimPacket): void { + this.interface.forEach((item: symbol, index) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); + if (item != null) { + if (item != packet.upJump) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + } + } + }); + } // 转发数据包 +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..e1075da2000e6b2fa53071611f504e32aae8f949 GIT binary patch literal 24056 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.ts new file mode 100644 index 0000000..913f7d7 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.ts @@ -0,0 +1,46 @@ +import type { SimPacket } from "./OtherSimObjects"; +import type { MACData } from "../classes/Datas"; +// 路由表和mac表项 +export interface Table { + port: number; // 设备哪个端口 + net: string; // 连接哪个网络或设备(下一跳可到达网段或设备mac地址) +} +@Observed +export class SimBase { + static flag = 0; // 当前仿真对象数量 + objX: number; // x坐标 + objY: number; // y坐标 + objType: number | null; // 对象类型,1为主机,2为路由器,3为交换机,4为集线器 + objID: symbol; // 使用symbol()生成仿真对象唯一标识 + configCorrect: boolean; // 是否配置正确 + isChose: boolean; // 是否被选中 + objLabel: string; // 对象标签 + ip: string | null; // ip地址 + mac: string | null; // mac地址 + img: Resource | null; // 仿真对象图片 + imgTm: Resource | null; // 仿真对象配置成功图片 + interface: Array; // 接口网络配置信息 + connections: Array; // 连接线对象 + routerTable: Array | null; // 路由表 + switchTable: Array
| null; // 交换表 + constructor(x: number, y: number, type: number) { + this.objX = x; + this.objY = y; + this.objType = type; + this.objID = Symbol(); + this.configCorrect = false; + this.isChose = false; + } + receive(packet: SimPacket) { + } // 接收数据包 + createPacket(mac: string, ip: string, message: string, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + } // 创建数据包 + createMacPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): MACData[] | null { + return; + } // 创建链路层数据包 + transmit(packet: SimPacket) { + } // 转发数据包 + changeIsChose() { + this.isChose = !this.isChose; + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..6e62cbb73ecabbc2c8e628125f7e5aea1bd82430 GIT binary patch literal 9868 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.ts new file mode 100644 index 0000000..81855c7 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.ts @@ -0,0 +1,263 @@ +interface BottomMenuBar_Params { + simClickObjArr?: SimClickObj[]; + allSimObj?: SimBase[] // 仿真对象数组 + ; + isNewObj?: boolean // 是否新增对象 + ; + newObjType?: number // 新增对象类型 + ; + choseIndex?: number | null // 选中对象下标 + ; + TempConn?: any[] // 是否正在新增连接线 + ; + isNewConn?: boolean // 选中连接线下标 + ; + scroller?: Scroller; + logText?: string; +} +import type { SimBase } from "../classes/SimBase"; +interface SimClickObj { + name: string; + image: Resource; + type: number; +} +export class BottomMenuBar extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.simClickObjArr = [ + { + name: "主机", + image: { "id": 16777226, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 1 + }, + { + name: "路由器", + image: { "id": 16777229, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 2 + }, + { + name: "交换器", + image: { "id": 16777232, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 3 + }, + { + name: "集线器", + image: { "id": 16777228, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 4 + }, + ] // 底部菜单栏数组 + ; + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.scroller = new Scroller(); + this.__logText = this.createStorageLink("LogText", "", "logText"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: BottomMenuBar_Params) { + if (params.simClickObjArr !== undefined) { + this.simClickObjArr = params.simClickObjArr; + } + if (params.scroller !== undefined) { + this.scroller = params.scroller; + } + } + updateStateVars(params: BottomMenuBar_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__logText.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__logText.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private simClickObjArr: SimClickObj[]; // 底部菜单栏数组 + private __allSimObj: ObservedPropertyAbstractPU; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 是否正在新增连接线 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 是否正在新增连接线 + ) { + this.__TempConn.set(newValue); + } + private __isNewConn: ObservedPropertyAbstractPU; // 选中连接线下标 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean // 选中连接线下标 + ) { + this.__isNewConn.set(newValue); + } + private scroller: Scroller; + private __logText: ObservedPropertyAbstractPU; + get logText() { + return this.__logText.get(); + } + set logText(newValue: string) { + this.__logText.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 10 }); + Row.debugLine("components/ButtomMenuBar.ets(44:5)"); + Row.layoutWeight(1); + Row.margin({ left: '5%' }); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/ButtomMenuBar.ets(46:9)"); + Column.margin({ top: 5 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Image.create(item.image); + Image.debugLine("components/ButtomMenuBar.ets(47:11)"); + Image.border({ + color: item.type == this.newObjType && this.isNewObj ? Color.Red : Color.Transparent, + width: 1 + }); + Image.width(50); + Image.onClick(() => { + this.isNewConn = false; + this.TempConn = []; + if (!this.isNewObj) { // 选择创建对象 + this.isNewObj = true; + this.newObjType = item.type; + } + else if (this.newObjType != item.type) { // 选择创建其他对象 + this.newObjType = item.type; + } + else { // 取消选择 + this.isNewObj = false; + this.newObjType = -1; + } + this.allSimObj.forEach(item => { + item.isChose = false; + }); // 创建对象时必须全部设置为非选中状态 + this.choseIndex = null; + }); + if (!isInitialRender) { + Image.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.name); + Text.debugLine("components/ButtomMenuBar.ets(70:11)"); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simClickObjArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Scroll.create(this.scroller); + Scroll.debugLine("components/ButtomMenuBar.ets(76:7)"); + Scroll.border({ + color: Color.Black, + width: 1 + }); + Scroll.layoutWeight(1); + Scroll.height('100%'); + Scroll.margin(2); + if (!isInitialRender) { + Scroll.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.logText); + Text.debugLine("components/ButtomMenuBar.ets(77:9)"); + Text.fontSize(15); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Scroll.pop(); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..1c8a5c0e2a9a4c61721c3bca8a1e02997901eccf GIT binary patch literal 686431 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 C&2=dN literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.ts new file mode 100644 index 0000000..0f990c6 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.ts @@ -0,0 +1,1513 @@ +interface BatchPacketSet_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip?: string; + mac?: string; + message?: string; + allSimObj?: SimBase[]; + allSimPacket?: SimPacket[]; + packets?: any[]; +} +interface PacketSet_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip?: string; + mac?: string; + message?: string; + allSimObj?: SimBase[]; + allSimPacket?: SimPacket[]; +} +interface SwitchTableConfig_Params { + controller?: CustomDialogController; + simObj?: SimBase; + mac1?: string; + mac2?: string; + mac3?: string; + mac4?: string; +} +interface RouterTableConfig_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip1?: string; + ip2?: string; + ip3?: string; + ip4?: string; +} +interface NetworkConfig_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip?: string; + mac?: string; +} +interface LineDelete_Params { + controller?: CustomDialogController; + simObj?: SimBase; + allSimConn?: SimConnect[]; +} +interface LabelRevise_Params { + controller?: CustomDialogController; + simObj?: SimBase; + newLabel?: string; +} +import type { SimBase, Table } from "../classes/SimBase"; +import type { SimConnect, SimPacket } from "../classes/OtherSimObjects"; +import promptAction from "@ohos:promptAction"; +import { checkNetwork } from "@bundle:com.example.ensp_fourteen/entry/ets/functions/functions"; +export class LabelRevise extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__newLabel = new ObservedPropertySimplePU("", this, "newLabel"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: LabelRevise_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.newLabel !== undefined) { + this.newLabel = params.newLabel; + } + } + updateStateVars(params: LabelRevise_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__newLabel.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__newLabel.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __newLabel: ObservedPropertySimplePU; + get newLabel() { + return this.__newLabel.get(); + } + set newLabel(newValue: string) { + this.__newLabel.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create({ space: 5 }); + Column.debugLine("components/Dialog.ets(13:5)"); + Column.margin(10); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("原标签: " + this.simObj.objLabel); + Text.debugLine("components/Dialog.ets(14:7)"); + Text.fontSize(28); + Text.fontColor(Color.Gray); + Text.width('80%'); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(19:7)"); + Row.width('80%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("新标签:"); + Text.debugLine("components/Dialog.ets(20:9)"); + Text.fontSize(28); + Text.fontColor(Color.Gray); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入新标签" }); + TextInput.debugLine("components/Dialog.ets(24:9)"); + TextInput.onChange((value) => { + this.newLabel = value; + }); + TextInput.width('65%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 40 }); + Row.debugLine("components/Dialog.ets(32:7)"); + Row.margin({ top: 5 }); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(33:9)"); + Button.height(35); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(39:9)"); + Button.height(35); + Button.onClick(() => { + this.simObj.objLabel = this.newLabel; + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class LineDelete extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: LineDelete_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + } + updateStateVars(params: LineDelete_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __allSimConn: ObservedPropertyAbstractPU; + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[]) { + this.__allSimConn.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(62:5)"); + Column.width('100%'); + Column.margin(10); + Column.backgroundColor(Color.White); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.simObj.objLabel + " 连接线列表"); + Text.debugLine("components/Dialog.ets(63:7)"); + Text.fontSize(18); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/Dialog.ets(66:7)"); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objID === item.nObjE.objID || this.simObj.objID === item.nObjS.objID) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ + content: this.simObj.objLabel + " : " + (this.simObj.objID === item.nObjE.objID ? item.nObjS.objLabel : item.nObjE.objLabel) + }); + MenuItem.debugLine("components/Dialog.ets(69:13)"); + MenuItem.height(25); + MenuItem.contentFont({ size: 18 }); + MenuItem.onChange(() => { + item.deleteObjConn(); // 删除线时应该先将线两端的设备的connection设置为null + this.allSimConn.splice(index, 1); // 然后将连接线对象数组中的该连接线对象删除 + this.controller.close(); + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + }; + this.forEachUpdateFunction(elmtId, this.allSimConn, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class NetworkConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: NetworkConfig_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + } + updateStateVars(params: NetworkConfig_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip: ObservedPropertySimplePU; + get ip() { + return this.__ip.get(); + } + set ip(newValue: string) { + this.__ip.set(newValue); + } + private __mac: ObservedPropertySimplePU; + get mac() { + return this.__mac.get(); + } + set mac(newValue: string) { + this.__mac.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(97:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(98:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(103:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(108:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(109:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(114:9)"); + Button.onClick(() => { + if (this.simObj.objType == 3) { + this.simObj.mac = this.mac; + } + else { + this.simObj.ip = this.ip; + this.simObj.mac = this.mac; + } + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class RouterTableConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip1 = new ObservedPropertySimplePU("", this, "ip1"); + this.__ip2 = new ObservedPropertySimplePU("", this, "ip2"); + this.__ip3 = new ObservedPropertySimplePU("", this, "ip3"); + this.__ip4 = new ObservedPropertySimplePU("", this, "ip4"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: RouterTableConfig_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip1 !== undefined) { + this.ip1 = params.ip1; + } + if (params.ip2 !== undefined) { + this.ip2 = params.ip2; + } + if (params.ip3 !== undefined) { + this.ip3 = params.ip3; + } + if (params.ip4 !== undefined) { + this.ip4 = params.ip4; + } + } + updateStateVars(params: RouterTableConfig_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip1.purgeDependencyOnElmtId(rmElmtId); + this.__ip2.purgeDependencyOnElmtId(rmElmtId); + this.__ip3.purgeDependencyOnElmtId(rmElmtId); + this.__ip4.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip1.aboutToBeDeleted(); + this.__ip2.aboutToBeDeleted(); + this.__ip3.aboutToBeDeleted(); + this.__ip4.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip1: ObservedPropertySimplePU; + get ip1() { + return this.__ip1.get(); + } + set ip1(newValue: string) { + this.__ip1.set(newValue); + } + private __ip2: ObservedPropertySimplePU; + get ip2() { + return this.__ip2.get(); + } + set ip2(newValue: string) { + this.__ip2.set(newValue); + } + private __ip3: ObservedPropertySimplePU; + get ip3() { + return this.__ip3.get(); + } + set ip3(newValue: string) { + this.__ip3.set(newValue); + } + private __ip4: ObservedPropertySimplePU; + get ip4() { + return this.__ip4.get(); + } + set ip4(newValue: string) { + this.__ip4.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(142:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(143:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口1下一跳:192.168.1.0/24" }); + TextInput.debugLine("components/Dialog.ets(144:9)"); + TextInput.onChange((value) => { + this.ip1 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(150:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 1, + net: this.ip1 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(165:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口2下一跳:" }); + TextInput.debugLine("components/Dialog.ets(166:9)"); + TextInput.onChange((value) => { + this.ip2 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(172:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 2, + net: this.ip2 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(187:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口3下一跳:" }); + TextInput.debugLine("components/Dialog.ets(188:9)"); + TextInput.onChange((value) => { + this.ip3 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(194:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 3, + net: this.ip3 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(209:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口4下一跳:" }); + TextInput.debugLine("components/Dialog.ets(210:9)"); + TextInput.onChange((value) => { + this.ip4 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(216:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 4, + net: this.ip4 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class SwitchTableConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__mac1 = new ObservedPropertySimplePU("", this, "mac1"); + this.__mac2 = new ObservedPropertySimplePU("", this, "mac2"); + this.__mac3 = new ObservedPropertySimplePU("", this, "mac3"); + this.__mac4 = new ObservedPropertySimplePU("", this, "mac4"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: SwitchTableConfig_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.mac1 !== undefined) { + this.mac1 = params.mac1; + } + if (params.mac2 !== undefined) { + this.mac2 = params.mac2; + } + if (params.mac3 !== undefined) { + this.mac3 = params.mac3; + } + if (params.mac4 !== undefined) { + this.mac4 = params.mac4; + } + } + updateStateVars(params: SwitchTableConfig_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__mac1.purgeDependencyOnElmtId(rmElmtId); + this.__mac2.purgeDependencyOnElmtId(rmElmtId); + this.__mac3.purgeDependencyOnElmtId(rmElmtId); + this.__mac4.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__mac1.aboutToBeDeleted(); + this.__mac2.aboutToBeDeleted(); + this.__mac3.aboutToBeDeleted(); + this.__mac4.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __mac1: ObservedPropertySimplePU; + get mac1() { + return this.__mac1.get(); + } + set mac1(newValue: string) { + this.__mac1.set(newValue); + } + private __mac2: ObservedPropertySimplePU; + get mac2() { + return this.__mac2.get(); + } + set mac2(newValue: string) { + this.__mac2.set(newValue); + } + private __mac3: ObservedPropertySimplePU; + get mac3() { + return this.__mac3.get(); + } + set mac3(newValue: string) { + this.__mac3.set(newValue); + } + private __mac4: ObservedPropertySimplePU; + get mac4() { + return this.__mac4.get(); + } + set mac4(newValue: string) { + this.__mac4.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(247:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(248:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口1下一跳:mac11" }); + TextInput.debugLine("components/Dialog.ets(249:9)"); + TextInput.onChange((value) => { + this.mac1 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(255:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 1, + net: this.mac1 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(270:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口2下一跳:" }); + TextInput.debugLine("components/Dialog.ets(271:9)"); + TextInput.onChange((value) => { + this.mac2 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(277:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 2, + net: this.mac2 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(292:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口3下一跳:" }); + TextInput.debugLine("components/Dialog.ets(293:9)"); + TextInput.onChange((value) => { + this.mac3 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(299:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 3, + net: this.mac3 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(314:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口4下一跳:" }); + TextInput.debugLine("components/Dialog.ets(315:9)"); + TextInput.onChange((value) => { + this.mac4 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(321:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 4, + net: this.mac4 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class PacketSet extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.__message = new ObservedPropertySimplePU("", this, "message"); + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: PacketSet_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + if (params.message !== undefined) { + this.message = params.message; + } + } + updateStateVars(params: PacketSet_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + this.__message.purgeDependencyOnElmtId(rmElmtId); + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + this.__message.aboutToBeDeleted(); + this.__allSimObj.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip: ObservedPropertySimplePU; + get ip() { + return this.__ip.get(); + } + set ip(newValue: string) { + this.__ip.set(newValue); + } + private __mac: ObservedPropertySimplePU; + get mac() { + return this.__mac.get(); + } + set mac(newValue: string) { + this.__mac.set(newValue); + } + private __message: ObservedPropertySimplePU; + get message() { + return this.__message.get(); + } + set message(newValue: string) { + this.__message.set(newValue); + } + private __allSimObj: ObservedPropertyAbstractPU; + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[]) { + this.__allSimObj.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[]) { + this.__allSimPacket.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(353:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(354:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(359:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入发送信息" }); + TextInput.debugLine("components/Dialog.ets(364:7)"); + TextInput.onChange((value) => { + this.message = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(369:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(370:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(375:9)"); + Button.onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }); + } + else if (this.simObj.objType == 1) { + // this.simObj.createPacket(this.mac, this.ip, this.message, this.allSimObj, this.allSimPacket) + this.simObj.createMacPacket(ObservedObject.GetRawObject(this.allSimObj), ObservedObject.GetRawObject(this.allSimPacket), 1024, this.message, 8080, 8080, this.mac, this.ip, `${this.simObj.ip}:8080:app1`, `${this.ip}:8080:app1`); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class BatchPacketSet extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.__message = new ObservedPropertySimplePU("", this, "message"); + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.__packets = new ObservedPropertyObjectPU([], this, "packets"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: BatchPacketSet_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + if (params.message !== undefined) { + this.message = params.message; + } + if (params.packets !== undefined) { + this.packets = params.packets; + } + } + updateStateVars(params: BatchPacketSet_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + this.__message.purgeDependencyOnElmtId(rmElmtId); + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + this.__packets.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + this.__message.aboutToBeDeleted(); + this.__allSimObj.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + this.__packets.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip: ObservedPropertySimplePU; + get ip() { + return this.__ip.get(); + } + set ip(newValue: string) { + this.__ip.set(newValue); + } + private __mac: ObservedPropertySimplePU; + get mac() { + return this.__mac.get(); + } + set mac(newValue: string) { + this.__mac.set(newValue); + } + private __message: ObservedPropertySimplePU; + get message() { + return this.__message.get(); + } + set message(newValue: string) { + this.__message.set(newValue); + } + private __allSimObj: ObservedPropertyAbstractPU; + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[]) { + this.__allSimObj.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[]) { + this.__allSimPacket.set(newValue); + } + private __packets: ObservedPropertyObjectPU; + get packets() { + return this.__packets.get(); + } + set packets(newValue: any[]) { + this.__packets.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(415:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(416:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(421:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入发送信息" }); + TextInput.debugLine("components/Dialog.ets(426:7)"); + TextInput.onChange((value) => { + this.message = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(431:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(432:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("新增"); + Button.debugLine("components/Dialog.ets(437:9)"); + Button.onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }); + } + else if (this.simObj.objType == 1) { + this.packets.push({ + ip: this.ip, + mac: this.mac, + message: this.message, + allSimObj: this.allSimObj, + allSimPacket: this.allSimPacket + }); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("批量发送"); + Button.debugLine("components/Dialog.ets(464:9)"); + Button.onClick(() => { + this.packets.forEach(item => { + this.simObj.createPacket(item.mac, item.ip, item.message, ObservedObject.GetRawObject(item.allSimObj), ObservedObject.GetRawObject(item.allSimPacket)); + }); + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..e3629022a5a2025dcadb37efad88f9a694f1491e GIT binary patch literal 597189 zcmeEv34C2ey+7wA5SHt9=J5uZNU zD*GxTBC?2p2ncR~AmWCKh(5%9f6Air5cmDB|KImJbLO78_uQM9+W_(5$MU)P&Tr<- z%sFSyZ~rB}e%^iG_d4$X_`;3@k~{aUT)leZ@Ys=CHmw;LIcR8Tc&vYHaCoR=Vb!KR zT9YkFKe=7|=?8Y~mz*U79DCa4fk;;s1Mab7a#pe}nM@`I-Z(ZeGSt5j-Oq1K?z?t) z(~^NV_HWv}abU^7(CFsA^}}06#s&t4_8Ax&8#!&Cfw9qjgl6;bko-Nm&k=*`)@>YE zF+4OTe|9|FP~QN1G$$LemadFU&EL|Kl7B&C$M&0FfAW$2n+6W#6jB|UsKXDuRCCf# z`0d*r=yfe|x+DijR}633G(2?5XchWXW&I6Xa@iFA6C^rjZW>;cgXQGKQxm&9?_MaRxO;4!Hr#TDstG8_0)IW0C zQR~-_4veLaiA;1AC%S)K6HQ~9sgJfM*VHr2lFm#zo$1N<_N03Xy~S)H-JLELJGX3J z*FQF}S|00x!IeX5=k9kY|k(!tV!*QU8W(X~tB;0}Mg#L^uT z{|Nu*wd2=J<#jDUqu080r;5hFQ@(EYlX1t_PDk<|_o=WufjSg-)YRxHo_=)X8@}$~956~PUJE(R&fJNF> zN7oz~pg~?5>1!|Eq2}nmO<~_TYOe0vppjHCSEV$KnNBK5srj15BJ|Qk&c~w9ZL3j%^qmjo?13~Fdix7|FvaZDq)wvk%t_Q(>m+K5J4;F@QFB}~P9nTLe{5*)HE$1oR(X3G z(mvjvbo|?c)}510>5A7!8tQsU8mH!UIM?%2mp3Pm+xD+RU#7F;-li!UIdzVoJljv6 zfp7IAv9H9(;$Mkt^(*m?7uzc#yY=FHDSq5&Ukdzu>7|&UoCB7u^5pBwPT5P5?fln! zDY7rpm*RmY`%>WNOD{!zFGX(3UW(km;7gHvk-ijXH`|v2KVNz&>U$~jQ}$Bi{{>%) z{EPIZcze>m6!`gn=B4=GMDoOXWr{+fn9pQ#x!&G%cTb^E=;`egp-XfbP{DPaKh;-A zUE(J%^pod7#&|qd#&{rJ#<*F_81H#uWsI7;Hz`@8`Ng0LyvZw91rl*ofkdDR+)XrX zZGC;Er^cuQN#Ljhi8$&&A~EVf;*L6yh@%b^WLH-mNW`iGq0eJ4r~^y-Jg5Q*Llp>( z1pY7@3H+>bdNihYsG_mkp{Aa1hiodDki9v+f8&;ch^`MBy&dXORy@xdz2?+!63Mz1 z=#?*w2<4?mr{m(OzeY;iA1=U=^NrXe=fU_R=l%M~x$ebwK7 zJajrPNL$_0pcDy=oNG50JevY{1F~H^7ExbC*F+Eochj; zy3LZAbS~SI&Gi;C*>t|po6F@g71qz+B%hDVOmFMw1om-Kr%(Hff#tbbtgx>2lZbQr z5W(p~<6>Xm@S0Or8)k=1&bdRxId_P}oIAvwbBBm??g%p1Wp;?za|gChA~<(;7LKgZ zOb+Z08yw3g5y$c=NFu1Td=iG`)0&BI0b!SVdC81Q{0vbzTofJcVD%??h7NaAajHL)q$GEOlEFypjxhJ zEV5i3Y&Qy%YYRIctX@&p`4#Gwy0g9HE7jook=5)u;s;7HUlXVQL zFr0ym7jGgCrV~Tip4tZTs~CpU#k@$c#aup{&xwyqy0d@d#?^zH#1(32Tgb1quQ0vk z*V=2F)M5UjkY6vVkY9;7hdGf5D_MGK%#lt4=SU~w9O*=2j&$PAkxs-p(gi7#Uy0Zw z9fu8jRkD(VLsk-hn8OA?s~$El$*=XxmN74kNMEH#XIsdx<6UEV%dg|DZu%ZN=Rv-6 z{O5=`hYpcihYksxLx+fS=n#oHbcj2L4iV?j5v1(UA>tf5>{WT_5DpI={9z6q{Cw%q zsV2XEWp>@}YMFFTwwUYg&UNPs#hzTD&|T>4_`{A?KBR#v*MZ?Rf}=R?TBk`5#f^FzKuJ^H7C{fU3(@DNOc@PIB=@CZm)g)(Idla z2S!JSM-0<)Yomxi+pAe635LilwPQ*AA+n>|scUbM6H_wG$k-tRV+XCpK-%kmaOmV! z9MTgWgycJ^d3s35XGG?yUG$KUx&&Dj?4lNE8pwG>7O34cjqSCY+Fc7yEeV;i={h&q zUF|8t*a4}=VM9hNbMOUZ%%{+(zVOYA-#eMfOsAYe94E$bfjWOLtt3#CxlZ z?rxEc%5|j@`=@3cdi0am-1X#pPJiwbS8M8pL5@PGI6q?n(tlw9A#|t2zSvy(husi( zNzkKu^{_KSq*pD|v$DuCwVyVPXzt)>xmomfHe)Xd_EQJxK_J?4*n`xH%Bvk1tPn|+ zKG~2nh48@OV6{qL%_6HrXr&>h>}qE01A|wH#L7Xo4+lA19jOPg$dMwxQnj&hVCdwr z4YFbg#k}It>R8>~BFC!ZyJjW&O55_<;CS`guGxth9bTKDc51IxC+V(cYYq%fQm@lj zwwv`jwMKdtJG`XyoEh%N8a1GMwuZ=nI$8I$$jNF@-c@l%m&aJVtPkBR1I!A^2h}DS zHYqn$&>c0pFxaFv>tXF}-mFISu=X(-QDc$kbhhp~HyBfIbe_{W(r`PT(>JO&>oM_E z5_z-wFWDdQt#4VH)X0CS)4i@;Wv;F32G(pj`S8IZJgYk|ouQjg_te>5R|lN$n?vku zPrc3S%FFZGDTdzISRXigtDeHrOyOm^*W%!9o;uHrlnAl&JaqvunUEd*0#9A!$$G@q zov-7(@UjM}#zDA*m1?F)j-JoR=@KKY$uG815a*WARBsg}bJTE6n|zKkZCAH3aD z?*NfsB04-I%7#Sm@YFj!+1+1zU19&Ur#mc=z71jDC`C3(u`r~FOd%bP{!UN5%ag~r zbeQZSO?S$SgLirAJ!W58LhL=By3Q=sV%K@<22a)}5el1!@j%TFsc-PqO=bk_B1gT+ zQ@5BAEOv{hZuLZcwYS`U>A!18d#k5zcbA^#!tlg&Ev|a92h#sTc+771)LoGk5WCA$ zAC9bm*oQs!QLk$+S;3suW5b&(k9V2W?%|*x_0+wQMR9<8J#}AXQN-@^)F&c~>J0mT z!cz~*t(2PrGQ$<(XAKwbrt}f+czkYw&ZP_4Uh$yK zXT@XonZ%TgJIxu&n4OvwLy3qfM0mB-Vki@FJYOlUA~paFaTS_F@#LKbhw`_C9CbRf zOFkvwq=;zARE~d(Kr+P)=)lMuBzV+(VOD^Tl3-UE5OH1Xo=|Q20|$cwkv56+ zIwg@y)f?p_O4}SQbA@!VSN`=BGo5l}AOG~VmWurr{42kVy!z4r{3~q|c0N0)o%JWX zsad*$wd6E+7Cvg$%0MCL&-^Ij*JIU3F?hg#H$Q zMIdFTT3p%@B8$na$`)fzM8K@h##f+8t_pU8=w4zg!EuQ{%yEgIRfOnM52?{h~d&u};^uOd*#|r+a(4yYu;CwkO}+-Pl3hLIx0INj>?V*RCbj{Up6_)IwFp;j!2BMj<}<&BjPCQ1SvE660yoU$QnfA zjJ|AejJ`x1qpu)wMqk2?(f3IZI!0e2j?tG$ywR6Uj?tHhWAr5wWAr8N7=4L2Mqfe7 zjJ`x1qc4#-qc0mAqc0K1=qpGfs5JT#hSAqr$Dab>(droeWxx$0aty_13WElL_-vl2 zwPLB1&qI4ie7yQM-5sAAcK~OTNb^I9&lmfyQR{SHd=Uki z8?007HI13x++e-hplK|!L7k$l<7RS@fZ6#JHB{Dlh~l(iEO<$X(kegNkde$kIgL3|X48a+8Q5ghYNmQ;Q+; z=RDb+#rm_G3JK2i)K-XfM}!h7WJY$~>Zx;#wBrl*GtBLrk`Rqc5Q_-W4I0}i&_c8o z+l6kYK;-93BGMDFODI$0o^d4*N{NeHEh6*0#0r_MZdwptP6Xwv>-Q`T=!u7SFTe>Tap;&Z%FtDdY;>-I?BEul(!I_VjcY zJ3G#tnsKMO$P}|vlj0DT7!Dy>OJs^oYf%!J+TtXtQc{fV)QLbS;;0ts6cs){XpR=1 z#8!!qDG;$re2YMdPe}>-GEAOyd(($3IwvT!AHkd~JAoMxvFwCJz)sAU6W39=Lg`F; z%T!^Su8gjcFV%XS>9 z?=NF@hpHoF471}zj!;LHcAUsj>Qz)yHk~@Sj@o)~5NvssI!^b-%7`4NUfs2$tgKOT z0qv>5dBLkgMgvn9vU!2SXs{y~jncycK7%m$4EJFHhwvz-z9!0E5OLTGB4980uxuC@ zJb42wK0AfoErWr%lNby}hs?d9z^MzC3O1`zy+TZ#$f(+)_s90zqE3xWedlnvQ`LW# zO?{p;eFanhPxV&O*>l&E8hNWa!+gl09VXEko;u5uvq|#HtdR^=1K>-*W3cfo!%4^( zPzDpzoWya7mQUy(Z zc23uO>b>Rje6Oe8XXxxUz0XrON39Wi=t0|pn?3abLkw%gSDV^r1s|XyU0WjrXfL-$ z0E4#tgP}FT5INQe5`B;=^{A~OLzTQV&N9{r_Ki|#YlNYIHG&jn)(BvMR?b8JR614{ z$|C+7jiRN$+w2UUE@F2ZWjtjCgK1@a#2&F{NG&S)Pnr?1j~wBXp88Z|Z;5@%Q=f^b z?iYu&pYhZ~aU7=H%(fc#2w0lFh8N}`Pdyx20kMZY^@zDXRz>U)Pdz%GJ)$cle$-Qs zMHa;Y9`n@Wkwp=E+*99(Eb8T9|8IEe+gcC+nNhIeXAL!4Q~LOLH5wYK*(1;rZ;v>B ze0#+4b@9;2c#Ydsp;a|`OSTPjo$txyGU;rtyI3sddL%?+8!^|F<4$+xx^hMTx0vfQ zaqKwEH4%roCNgp6n&b|1O~hfY1u0{$i8#zPdsQ;mgyWg(v#=P4xhCQ;*F@r(Yc@H| zH4%roCQ`v%6OCuC&&He_=9-AZTob9vT(i|-u8B;LxlU&_b1i+!m}?>qbIoxpnQOxF z%=K2R&S9>JILtMXSmv574s%VUoVgaTjJYP_FxTu@$y^hTXRhCdsXNRy5r?@Z63<+- z$ziUElrh(Wl`+>u9Ojz+Dw%7-@yzu(n7YGU6LFbqLe-dSHkL8h#I_l8oy!>JT86D) zu8CD)uBEMlxh7V|TobFtT(hw{b1luOpp3aDR>oWtD`Tz&YYXC-Yc`ZI*XNcq*8)^9 z*T5X++7LO+HHoS**U}g=*X&!#TpJ27*Q6+8u7Oo$uFs2Mu8EZ~*TiC(Yqpdz*Tl-0 zYhp3XHSuc9HTHcR=K2EMvohwISQ&FoY@*CHiOZO4Vr9%Vu^8r>c!{~jpN6@{&zG2M zBv+kGUey}R^}BbeUvn)E6-<&>=q~nV3%!}Vc#nTJH6`OtbLKi`rzXW*A7C`sZM8Jl zvAXAy<~mmQT+&?6j8jdQG}p1N>F_v0?!ThX7IBRLbpr=c5q(DB59R%EUH*0NwcBX zIaJ$3z*)1iMS9dy-Fa~R=t|*JY{OE}9{s;DiU<)Wd26`HmHTy*J%K|f6xEOhjS zL9Kir=#Nt;$hBoQP~j6fL43;X4I}bebz-GbAI{xuJyG@R5ikcL{c7z5l=|6p&(b24 z`qF2YU~Qu-MVHLGOG&);2^ZbF(%ga5A@RBQho?a^9-- zQpjQT;G3X(of{7D2HM7D08D}8u#I=n2Y;p*#sx|RZ`KNH-q0Bu(mb_w{bo;LrNtIr za{Yz^n+;+LKhJfahQj$1SU^PK48x=qjBbz zF`zuhcWGasgl2Lg3)Hv|U|(+Y)SYH*>;bVmJ@p}@ue8{QJoOQeQ5s3? z%d11v2ei5D^bt?pV+O*6h~493+I**hSdR??kqS!+gh6-@`Lp3eVyAso;B_ z`o1BCRYQnV!S_A&L$e->{m@fC_PTbLYqqW3I4nM}D~}!?9D+4!pRn7HJ@tec3OmW6 zp77LDW+;n2<*A<;T{I3!1VoVbXP$bdy#F(vde-#E)^aV+dg{68``eQ zl*wnnf#Ln>5S$;GWqdTNN%U9=s zn&+Vz;T&I`XGXxza)k4Ib%9?B#pns~3w(94F9&!j3Pp!v;C9rI&X!95&)~tn*jJaE z>thAPF89?HkrfcT!dF-NXPJ(%DEg)5l0v(+67OO&=rUn?6SBGJUj7m60QU+^W*q0jbB^l7sa+G56+k zNJ-U`&h-=}3umDx+qr&tWM%)_4e(VzWMF8OlonwHoF`{Ik5@}+-{p6}efdYR?#ogn zBd$)*hqe3ituL(m@`QJFQu1B0>!ie1uU>0@rbj*$ew>JC{ExPa4fufnkuC@nTk)q! z3izx89UY-G2_b=ql_o6$X>ua5E$ogE z5$lFZ1fk5^BDN(fiRbe9LMGGQo6Z!oMX6>Jjct)@EfM>VDM`wKpJ&? zwMe&A0-h1of8XMJO8u|w1aEt`_H7IGQ>#NclfBH`qTJ@`v zOucibx^;7Lk6p)u^=G1p8+Ur^{Nh$Lsc%9U&oceIRTJ&AU4#0=KpcZQk%=4BN$wcb zi8uyzL6(~!KI$sOTNQ|7P-m}7gF0at)ZL@+OPID}Oef+P(}~0z)7j)0(}_67bRreT zbfPe(mo$U;ggufF&0ty*P|Qx;=cO8PVuffXn*We=Ft4{t_+}Hj?JixEC?(`fr@Jc# z>XwufbE2UO<^o7O;eI2(4Dw}RmP8!*L~Ou}MW899`|;rVl^aI~mW#9B+6~9CEM&-Z z$_${uO;l#Vo$0+si+5@nyjgVcZQ=pK|eKfsMPdb4J|FoWwpI4K0aKo5{5xcg389 zm5?*x8li2h6cTaE%eMWm*!B~{To>46A~x5BMUd-a{B4J>lml3cKbAlQs>o924S{-s z4U*`B91OOd$R;(sO*j|{6R(IBmp$(=`!3g777SC5DX%g1oe1=p)NI;GBh)9d@6gu@ zB@$=6#o1r2f50u#10a<4?XBWZ@fPvT)&8FH=Uh?y*z6NI(R~67=ue=NPmpGA>3-%# zLMDw?hDPsbj_#h)I8Vk$@(K2hQsko)(0G{9?F^9Gf}@9O)sQ9INgA%e)U;Za+6rh3 zh>1S+0;Afo*adXzjktQw38_WXdYRFfK)1mWM3YLFUZcSz_IAb-+0+wrLt4?WUgfHK zv==M4x_asfD2A_Wm6P=S|)*rSSfUt0#P#iNBv(S#X{B({P>mS%bH1O20Cmw?soVS5LIW>pNaKzP{s?b#bOI z7FW;RQs1dR-YJ{Qi9jS}Jtdo&9OV*9(cRf`#?*{E%{kMUothM9I&I^q-rgW;R>#$o zh{Kr@nK)-ka)&b|;&7&dl(~8maX3@Pe)kt0!9>S5G3~H8T>ivxo3})st2gOc<4PDf9Fs;&^&; z*h)`N!ttJ-S7LFFrza6>qXs`lB-YcDEsm!rk#bK@0n0o+i8!8~>{#jPNjToq^PQNw z<@+#EBGv?Lk$6u}5<8xrM9Mrp1uOIPB;t5_vR|dAC*gQc&#N$X$J3LD>*-0Tnx`il z%RD`aZ97lTyfCk@YRj+{o}R>n*OK^c#~KZmL)t1lJ&9?ai!2L_i^Q}=yE2T5jnzFp zrMbe>lUSLjC$Tb5Pr>3nJ=sv^>G`gPvM?$EDlCb>98XU}WaT7qz9g#V=_!q&C6Rrj ze6?mk4F&jWQj}Q|fmQYNyc&&VVN}G*JUxlUdU~>@%+r%tnWrbQ7*9{))jU11?=@_R z2&1|N_e_lK(J(4vWuBhIChF-);z!*uDq<1KJA?>g+VXA%23YQii^<)DQQ=R+TjOU< z-uk65s>Y-k&EoaORkglLQopM|Ie9i$?9CO68PSk*_hclmo1}G%rUUJ`bn34$y_1uV zw}X@7zh4v;5q?ln5rK%4>4=E7@hwm7(AO7zc8t1*Bu>U7B2LC5A~6|{h&vgNh&UOK z1PR+~;V?Zp{xByNepV6QU#jVsda@?_WMq6-qJ5?$m~7G-XJ~kdG>L10)%g->ksK)S=u7tXg%5-|N7&p-w{lVa;jJcO zJp(KP&j6aKCAYKmwU?j8^pDaP`eF99^0`GIpWEb%7M-V%bFm-XX7$1a4e1%+a`IA{ z@>u4Tj@X(#h1NOA#<2~9qY+%3^V2ix()3MH%Ee2)=G2#G)ooPHNfb%0N8a&#x|qpl z(~=9Rv*UN|Q!?)KR^7$z)TG|$T}>cKYn+!5(r`#hSufTNs1!&N>jqQ`B#CtcDg~0n z`T>of0_nblNHvb?j)jqHJ+HMJ%CRkK9y zSJe`UmUv6#e&bsr_p6IPd9nD&?V7r^eqXkna4|(FOnQ3Ka2L+!@|_)z)n8R9Zrth4 z&Q$Kyq}Z87)0LgM4oX^wogw0|GejoN&XC+;XNWlLj38y~3=xN&VXsPdhOlL4B2|^H z$5I@2hKR$?5Q%4J*yOM?M8MAME(X7jCoj3|=ck|X#J%@Fb6Q3#~OX>H<2qJ@ksfo=2 zN&5X+7np~>p+}17@pC{HdX{D~V1i_nU8EkG^>N%$~H z>lj@dn4tG!ZAYoqrL_@R&8&`QZA8G=l!uFg4PxV~898f~Mg+cWnhnAyT%eRVteJe# z*lZ#;Uo`FtyMenY%^YkH;q^=rT`IE!mf}Xt+?pP7SBTgY(G~%dLDhg035jX3gH9D~ z=1v6uV+$&xAi+>b^ZZi%C9H#pt-q8Iwt)!iFGT|&;Ty%4(@Uk75Yb2MY?fZKAAiBx zP*~~QXp|nf2R5ARsSAxG6r%Lr2iw|(p1L@U(i5P=&9+;Y&FuN=0GiEt0V&VrTNvSQT zMeJ(&hDE&AU@c{fc!)6}q+zRwg_ca?wMI-^GA&z$*k9t}3?{{uq6^ckB6huoWev5B zZowVXVY_w(#BTG{9g!6fyMr;jwRuIv0+U#RdnJ&UgTjhN>?5A~m>JY!A7ebPT@(U_ zNh>kEQd|jMYxvXfiuhTRS3Im5uXtEhUJ)(vyy9Ww^NNT4OYn+|QrETBUHK!IL0y`j zOm`tu%x5GIcu%oLsgV!Pcz!Q9y-SV!Q+qopwsWRoJ73UJBR^=7!VpfW5hAVu4m2>p z@tfY)H#)fKs5Pe;l{v{>(;LWL(;JXD(;INt^ajK=y&+0|u1b}d4!L3~u%|Vmv7u~Gr3n&OZiKKcH-f;yA0oiomKy;hLd2FEu?Sd5GI!9$A1YPf z-YB~T7J&3tM}~_NfsPF4uKa-@3sWHi{3M%Wf-H#J>YlJa{0Ngnbx(4h7@Ej_>Hy90 zVF7|H2o4A{gJZfx9Mu>RsKzQ5fRGEeLPNHjt_;x{T_LzfA%Ldr$e52KHZ)vjXa<#a zR5yd}Uc=bYnBG0s*a5s+eTd!b`gA0hBCkA^BT+ingyuPy#RCknhlYodm&LZzh-F+ zbua82RZ(c&i=lw-g%o9e&A_VqHJ^{hGQVbGWq!@XV*Q%gQs&o8tjw>OSd3pY@oIj} z*!LRR7x*<_hHj8wWZrn(|AeF7=bz({Q_v zugAI>elp(8@D}Z6c>0-Z`Aj)>dC5z#(4MzKN) zN3lZ0QLGS&QLGSm6e~m=#fl)ixr!AcRD@t?;voYWF3d=F|ta zfpb7lUVNJK*&c~d7RP|@Tp``r@wIK>91t_^G#BS%Ry3&-W!gFiT#Q`(jyO-m5$B0a zT%0GlBhC|X#Cbu=#Cal)IL}^{;ymFv=YUJF6i1jR;t2CZ;)QuOIl?><>m2a(1D8F0 z|203~dePGleDH|}Z+PmAJLTvTk}~H2B93zahpBW9AROl$a4FW|I0q1MoCAndbq-*w z;~YQ)&H*{`b68k2usM^?8Sen;ROTH(#PJT`z?I$sgyXyeF2mv+?*Jl>cL0%U-T`cM zyaR~1-T?xYc?S@2yaU*+(mQ}~oOi(Gn7I|;p_d`zcn1)v?j68p$2)*Xb?*RaF7pl` z;&=xTiS-U(OPO~7u`=%f!Q#CG*ihyj@OIQ#iFyYJP$8iLbG!o#kt3m!sG4_xG=>r? z`&LS*h5`~QDas^NU_rchz!hjJ^9~?Z<{dyR);oYLW!?eALVZA((*{?H@eUwuHSYlI zdJXv$-T_zQj+J=_5G(TzAU09&01}sZ2M{as4j>le9YDO~9e_U#$A_Oa<!?34CT84e&Md~PXj05#=XCWXea@3($6*$U zILsoEi8G5NcbG*Y4znmo8M8>lVHVk|l364SW^s;q-!&XFe5#1e5LthPl{ma25r9}=IEEi06^0+8F#JR&1PlJJF(Jq5L&UNA5UFbQVXI^HAu=(mPu4`mNSBlw z6+^_a`f%7vs}EsVeIhG^Kj?3;GRNdY#4-60i8cAK#WDF1DL45DILECBPQ)?!uw$jk zhcHY&k$J-#^tYI|WA7p2*n5b?+k4n#*+tlUh**11F~6tAc6Q5w3)RknWA9rO1k!fz}jhrVe&F|3?u`nU2ATe!WvM!s%bn?N7%O-qT*>VAs z-&pTPViMiLkP3(3JrVJ&<|A+_XO57A9J*2*TutTh^Dt+`edb4y%7yHXT$BCZ)x%sjf`miOgmaW1r3 z3BaKcu~`W$f~*9K#2B#S7N$BrcyMIww3QnNHVq7oA&ivSgfW&)Pk;{t$Fk`OEQ0g| zHpPIQ#Vj?O?sw>9jtcy&@@6-rTWh%Ap*23&KxZrOY+2e zO@5VcZ(pYL{{EycbI7S4&x8=4&&!b@30is+eePdk<<1W7#rQEsvf*k z(vVerf%_ug;3;~COIP^UdxuMFdlA3G-)Jp=hlx1vFp&wo!=!WGVIs~uOr+u+CK|rO z_`|%z`1#U1T-Q6CoAU2)=?edP?{H~tFXDIj+GP1VOvHJIiA>-fCY|#R6LH>QA{Fm2 z(eNF{ALbp#&;Kj$@Go1EeRcEFMG3j+?#X7mrF2SnzPr%Vxw(I&f79sU{hQXT>+d*! z>aQ`q(}GGu)tWmvsW-X7NX1RHq~hi{v9}}@#|q7midQFE>Mc*0>o&shbAJ0`Vak!* zPgHUceTm@JcMBf<%5Q(UNX6fxl@yRnOB*Yd52mr^UT^Wb9-E~A6ENpm=)LDB=tI(1+cLr zt~nvqIQOiYPYar^|Cf-2yE9mjllpdp;9JZ$5>7g#fjN;?t5%QokBl8MFm}+|wF9H0 z#|*3;9$7aybn>d<5jijLN|Ss?slUnd0%jW`uq<*&#K#J9WH2u*yNQ5ZA}G5_8ry4u z+AWfM#B>dU-4raq2c!~6)Q3X3#whuBET>Z~*4M`5i7Zwx)8kqMc18vHC8k6J-*oEWy0Hy%S73W&o7fcJ5y`AVOb49pnCKJ2K~1<% zAc1CKH8Lzl2=@sh)yQDuV`p8Bth5+dDcK-yW>R^qd@(RWo`J=P9Z(96*}O5tq}bR8 zfH4D;q5FWRZuj_FG;bIfJb442F&G`$;dW2m67STrG`AuX_w3RwIPz zK-|DSZmx#au=B?~b$>Mf5X_ToxZhI`R<5Q~n$N^)9`w{_&G@)A#6Ih(hs^jElX$H! zc#M>oVP2V4^5)2rkh+GwzTl}x%t)9Ou}3`hsMmE|{VZoDFPB=Rhb;t=I4^99T&fW0 zIImsh5p2cGR*#*w5oh;e-TsO|V!pm*riVf-(&rVyw>) zd-w}a{j%}~E|KQ5a07qoso$9KakGg1##6sD<6G=^p8A6)pZw*i_Q(xfF}#sq=Y7Ji zfAG{_%y5_*hx?1C{#I7=CZpSy27mL^>Arp&usoq(8l3K{Gl9w5V6iiOb+#{cbL7=N zWJHuqva2W%L;ACQb#D0>=lbe=GlreV`M$c)my~GX@q@~ZoZyANy40_DW4opKY;4h` zzPiGUkL@6Kg|DtO<6G=XUtNV^mZuWKLn}7)51ouBs2Fy+%2(HzVK5~QbB(XA^}AkQ ze-YDMcQKn5j=Y%9cV~;)T(+C#zP^GErtSqEu@G{AstTPL%#Y*G+{HC=kMJ|QAel_Z=fH1DpYDlV z-juG$g3p$D$>xELo5l`Z7fFyWhCOteSH-_Yn)XP}L>iyLvBCb0$7olLhW??`QuvP~ zPeS*)ME4!y#qp^^tBU!nQh%IRx0s(#XM1{z>F!Lv(A(Wz$anWj%9-n?X58s5=Ev>S zq{RH9aC(w*f4dpA#QfNd`X!xRY)1W3KK>oz(zcifJNIBv&+l(`)faompCtJ3Y5aD2*{o3R+j^O%U^c}yhU^O#MJ=P?n-^O#75 z=P^-u9?ug7v{|^SEt|mNKnT7Cb8?)Ii8#*3M5;O;v(<4vCIaW<@zc>tpsLQvFMY~# z&Jc0Dk2!9o_c7u4oHOso>Kq4TB8~$x5eWU%5o{hFl~a5e+XIoCjgAj85%?f)1I0=j z3>1WM8Faq*Fuzty%aH7e=o;?(g3FSB(3c3jd#PAEZXgj`tlc6g*6t>|L*;T3TgPUo zD2Q0cW{W_Bu(Plsjl*kBd5v5fB0Wjr*1WTpFg)a}Ln2#gm>&$O(K6kRz}@1`Jf;_A zX4V~8C4xnuL~!RiPmkJNN{?%1)*aXYxK?pk<|Rr2a5C8wWKO8k%@!R1H_uG>G-*P9 zS5EhAPn~Ck5OAx+v}-YCXN!qbF_iZ6S6O)7zdXlEuMwS^3s%8Qdt2t#Y|N1b$4K=ZekUKF#=e90^d0?_TP;?w^nPklK|#wcHP^xW4|%OdVTkwmhXD%hh_wbI>dhHsUMr|ve=J3^^=GjJmfRd z{=`#Hx{KH15AH|}@drwPJMr>9>8YPbRzU3Mo_fYyAFCqvjHjL*uXIN)B!1RYB8}RB z1rG3QPyIHsC}O|$)bAsUDun%i@2Nj&-+qu8@drO^SQnep{qfdCG)P*^Sm6gP@xJ~2 z|XUE5bDH(T~OFl6> zH7UtwwUK<1l25E?Q<8jQ&7+OtmQdTk`9QNAJ1t@dr2z#77b1{z zXxgy|9Fitx;N$=^#U5&HGDLP{NkaKV!AdE}(m=~O#-c>T8bM)OWG@&&OT`sT*S266 zv3s&C#NmTO_{<`D;geVjET48ML?GqZr4ZRu44{?9O*SnSyQiHt5lA`K$VFstF@V~V zO<9`59b8)k)l3x+|qE)^NaPKwC>>c9y|J(87O zOFhzOm*7CPLXUze6M>9lm&S2dN}-O@Zo^JW_z*E|M%M--;-|1SYu3bLLd2RiEdsM9 zRE^e}1%ZdOt3|xA>mu@MF>CH9cDu$*I=!bR+gU7|ky2zrwsYW=B4fwOQe=ctiYz*D z7#%;2iLX-|^rbOPBG#B`5g0T1m{`jd#1j(Rs$h6di6A9Mbmjui4MxAWOtAHkt<<#l1d*nZLzaDZvd8idZQvrmd8aHJeArMuuOHmjq@+ zcGzm95_$E&(h$>9NlGr+6xu^z43xIHfk-Ep7!Cp~FR@6-qs7ELDS`>@8_PHLuYJ8- z6Os_=BXWtQkH{r<9$GGOr5;XDiy}}hgnI&+=d;)okw|Vd^TP%ZyU~afa^P4@ixa!a zrX)wtR?Kj@X?P7IsdQ1Zfg4 z2t;BKnAMzlPZA%uq)ew{;@wPyq2)x}P!EzL7E;fg>EmBN7A zwS%$e0K$a-FP?0(_KXbfg>C<9_-lF6@MH`9{2=77`EfIt=C3J=*oRAa>pw;fo?zN# zfVSX|p8Bh)I%7@%@Z+CD(_cOH53?9N*~I?gsWT!r5@Kig>MUc)6I(&}tivG4=Cgct zPQ)rg>>OX6=gXepS?|$=k}20$7Z^gUPY6@N1-`ln*0t#UmWEw|i+pvlA;!HWb}=oJ zT)4%=9C^8KpY@e;z21=ga$}X0y~Dlb5ZWrqAuJ}Q$g4|3;8|Z5l3z`Wq`lu9LJWu3 zV{P!0z_Tvk%Y*A_Ikfj1b}$l)_3-_$)SCOfzx2Vg&bIf{SXi<4Gz^3vbl08^KIp5v zfXTyQ)}9XT^3{h+6UW*Q)MJaMgRky3Lzs1@gS&louNlH(_xkF-(hzvoVeOLXrGxu? z^+_`Xo^@iM^wp=rwc}YA@SxyRzIq7eF7uwl+(qJteD%f1+A%*o>umd?uO2mXvCqPz zzWS=UpvAuGtH%r-o^|Ql7Ch#w$DKnu1QiWB&0D^NU(3ELc&l$Awh~Vg#@tR2fq3dZba#;bf_%h z^Jw~!uYPLw1@9@bpZe-avs8;c>8qz5YwRmS>Zg76j2QvD$Pu3L)w5;4{+ zk1UD<{M}clH|Vzniz0Sfj3o@gQz|Wf2*ej}9W2L2tau#P|WsbdV64v-8wbnPIH|^ z%uY>8C!vf^qCHM0(I759sE!`%Hr=3_b+aGqHr*_t4eZ^pW1Ka%Rki8n#@TVrZK6o1 zt&_MFISH)-0rD6Tt3a>_6bKX3NpOIjLx*ZeZA7d?H53biyi)9@yOl&XBD<;GOClS4 z!ID~%l1hQ?x z#r14tENop)O@%Oou+Itol0a)JO6(`$1A;@;EA+acej(v2)GN1z4K>>J zN^$$(rY)CQ862sOmS>`DK1T&d)5}{X4$o~NJSu=Xgc<;gATueIKm8jwt`19@nfV_T z92a_eLmR^p;OSj)sguOb+o(yPoe{#5N@@~|KuyB3qH8w{j}C+d!OS8~3UuZ6(riy+ z<#ubgtkQjn4sw4=DeOo)aA{v+og-B%ax$y5}GBVD;eWQ zUH%wx_I63hl#5qQ+TRkul*|1$o3cbKxNnk2N-ohXiV~sO>IEpRP9ihQB{b^JOC+>h z+rdYi#7o5Y`^<=Z$O)Zkik`}tVATW*0x{>l&4_EXsm%@>r1I(cFezE~6JCStaz0C+ zMwv@v5|Tr%On~|bE^(pjCQeLSf+<8`D#Wz@B`3;)U3H=s2|O7aIKF>m^r-bKHi)@% zxnymDhnXyMPS{BlG*SO?4y66ZIe3GnI~eZcG#JYb0!uG+2M1a)vklysb1?g&wyX?$ zco4BLLtG)IEzGWj_0c8~*ThErUUQ!yO%Z!9J=Lv*MeKb{Q$-_c^reE>$M&!$imVSJ z6*29qUUAW7sDpBcxoDdvUS{<_e5N_TvOw#9s9kbiFZc<_6_!B{#2To4>haXh@lv>Dev(8RP> zsCK?G=-)^z>Y{I(L9qm4+N{e#EvEHEHecDIkXCd>;=_(ohv;gA2>h&R(>$S?P4k4R zHchm|OAsfFZ__*>yKAz|iA65Cdp4`~w5rSI**;a0MEtl_@CzNLHj?6=l6osy9Dh&wYQTJRT4&2c|l9i{uG&6oD#G|oN_5ds+FK+ zqf;q`h*K$rNKB;^;!dR$B2J|gLCQ+d60wz1z+V%IFG0&Drvxn#rv$AaaV2O8qXaEZ zO#ER^O#G~Jz%{04)kxch*0{87z^heFomJOq_dHikO{AW!Kh0ZSl4eVBr(8~A)eD(? zCMQx|iM8msV5+Y$z0=Fo-n~hkQ(;-BmN=CP;?tl~iOt1Wa`R}7Q;ImL8gEUs&n%^R zqp|{sO)p~+T*);%t-DT$qFZ2OmDVZen?i8?#@9c+~*gqQ-6`v<$hAzH4t57PclHwrds+|4-Mq!3%dZ}T- zVM3%$?I4HDYW5P0i93 z`Y6s4US~Ur4bVSyy}(%eyOXj%Hq(YhY^Dv1Kmp9-S4U#vY-eAaW&_tIf;1c4TZ?2= zu5|oD6-&CDIGlk`!ykrE!_O*wT64PN#d)G8Q}@lP|FA3Oa>aCyg4 zQNPhX^%t4uC+c{6IH?nL*KKm5W}!>;tt3$(bAo#%}L&`q6FLKiqRugu2puV5^;`H&ZqK7C9IFss6pjcY*43KD2JeM zr8q!|EL4m1v1pM+N{#!;vBXNfTn~s-l>@$9E$P}I8}zFBHmKN}P8Yg+yNlw6Ur6WD z=`6OVh0iOmv?y32=QkHajvgD9W7Z@2e%jgStVfdVfnOXP@|1UF^*kdL?We z_iL89UvjNQ;)#4x>3$Kh5s`L2h=`edq+xtZXRy4~a5J4QIyzB9%gAc z8neGRAz!G~^7zv*FZfxNdC9&wnU`HtpPrXoQ{Mq1?)#ZcF5gq^$z+Q8bh;;7=dP2BjyQ2&u;wXcNKpE62 zW3-n)XyzCsk)s(R;%J75RA`2XLNjC+_G>H*s%joLSQwFARiJ4s5~w{wHJ4tP1S=zQ z-V*FV7QiqC90V+YJwu5IP<3Vas*~P&6iVwTJW530^;OS!5MdWC8Ole(2j#0R>2|uLy{HPr;rHBu2oxC zD(tpJKF)Ss>~@+{gbnjW5w@KYdkY`T@23=11Ns(qy7|=l@=5(YAW2RTy0*Y7PAuZu zVlnO7vb)?g(I!hyBUzjYVMiK1cGFHSwB$F1n09aB*WF^`!g8_6vKDiU1Yy^UJ#~46 zS>Pou_tX^;W`WohESP4Q1qAC5zp|9o0IU52R;!&HbMS_a3GGdXSB8%yuBIcBfS?!{*Yb3M?tPzLPp+%N8BBmpY>}pj=E8ZmxB9fyB ztNkNZ8wL@{$%mB@(?LYm3xb$L58Z3>7WVb=(KRPcSJ>-b6HCN1)QlwVBoa$xZ!JfX zAfiuIzqJV2A=#%GSH#IKwZuN}sV|z4b3Dh0*CGBzrcqoZ4C<`aTh@%O z9T{9RFmgoyQ2)tH;()N6KVbtN@zhr_rc4{YCB(kUP$W*^sbeXdOuqr$gHBl`;n4i69oq7+^7-F@W)S>&UvvBoNWV4ibtK zrbonf5qqkX9ufCju*HE+j~HF<;@}sIOo}ddaqz#)mdHq`!F7EIctQR?4iU+eXx6qk z_)RHOqQ!p4Oo?{A2+m>uKX~fTX2&htkkbD%o^lj~5Sqhv{l8MA64v!+ z+(sR##C2iAh)HlK9p|OFHq5h4sRs`{I2#ID21D7x_Viz!Q z$egpMx`5yuyYNQ^HIamN>jh~tYR$f97bN@+$7o;O6SFAjJ>_JV*zeNZ!0 zf8a|A!w&~13;r-C3w~BPSsK$j#GW0%=O>f-_#BjIO(hf3czplHEdx%fNojkbPn~$9 zd;D3{ochoX$+h*LMR`dnTj=S5f-jfO<$Ow5FA^CTswk96bsVM~^~eJUt4D z96bsVM~_0JLXScedX$CL_y znnNfunZ8c;M~;TfDAXF@%x3fqdaewEi*UG;4#7oMz$fxbb-3PL%jM4si4PAIC-?}E z*eXt-h7e?N0L2MKf3u9m!Ld^RA-b@|Qv2aGVoH!C5r(%%#zl61O&9@$8%o4UltKgs z3%fEH5{SM|t<{&cJ=dxMeOWu%0nwS13>&Z{NLMIMjG6>%_z)1NNw@}V6Om17SPy2A zVbPV)=u?A_he?9n|07JJg1Hc}X;dtNG%8llvr9;KnuGx1D~nF%D~q31zOoJJY>lre zTH{^P>a#&i8UMZ@b@48B$L$s}S@Azj_lm7IUo41aESu}>xH~l^<4*6m-MF2a)HiTn z^9`I5CsWr*dv8PgY_Tmgmflw)nh6(86W&)MV8X{U(&E!d;zZ~chPRUloEWx&7gujl z0$jyCGGCNP^6pG`w%2hvkV|EQ9ioZHh}gJcI~{yrOGg>JxHwD12S;tRSpBE5L&!E} zPc$MnDA>{jQ?X6R|#E7J(0#J-lFyAl+VKjBsz)XE2#1Vf`gsnuv7_ zvj`l+#=BiGU9fvDG*nyc4wTs7((S^BoU>f6Rynr|-|0uNL#y~zrYh4Q_$u4)G-(bOyGG=8!QMgq zNZK-_FRo5Rf0B&_hzLH(_IAOnK@=sK+}rhKOy&gIHq2y*z_wv0Lj<4c@opEa9wa`A zHV!jGBCv66gWDyyCzJ2Vb@%k-i^YP(lNaa#F~{64xl~r-fg@%TBGycT4dZn1{V&}v zFbafW9*MqP_`H7uJ7hoaczlW2&$~tNd5_#Km`X@#y%lhEBGy}>QM?t1&|ASO)ZuGD zSbP=EE>BtYP0U9uA)ylkG>^n0P7D^)P7KsW*6?kG^@Kx+Zv#_2^UfJe2lj4*$|;h< zA3g#-;xXQx&1Va8G{So&;JxF;vVlYl)3zcLfa+Ezl?}9Q#i~O&QL(FB6;<6L5|j;B zv8WVt-54(x1bO}ldv=Ydt~Y97><_W)O|UM%BL>sKx)Ilrg(0O~slxh=~$azA0hVT+hy#N=Z4 zhnN^!zF|hd?1+7X1{ixkVcH=sMi|NZ=7wYc0#lQaUa3uGjRnNS3iE@=)QJ6nA-?0? zPo!QZ`HwvH)5v^@{gmmPx5fP|^!66h>3p^~m+Q?+I9Im7`-y^HxSw*hERsL}!ps2g zC$Wfi2Rp`DY3okue!`5z25sAk-cOi)ev3^L6ORt5RO4A-yI( z7F!zX(rZppfDo(K?wk5rOY-=7m6#IcEdS3H^1VHf%?jyGsHQsp*gRE3r_S}0Tm9sj zFq(WhR#ka-ysGj#t*X58g;iC?@7JUxv(QX3C6XCgLh!|ZZ!Qo2BjRW$iNtFs+2m*^ zi8$IxA~At~#2tks5l10Oq(UJ{v=sO!e^%GB{EG$tJyCy6sRHCAv6A*m@%emjF`E_E zyW_&C8F!j%Sz>l-Qt$H1jh1C*T<}O3${U+h-3z1j{Mh7a$hoewqs1mqYZ2omn;T=3 zr=b#j?d)iG`;w8_7M6mZn20SbWfAB-!2YDhElJG*c47f)3I}FLU4U9X?$D43%__{O+T9ToY14j=tK^of*5EThE zR7g=KNLR323R&wxJYh0X)Jfpp;NUQm8q_}|L?*RuP-H3(Ue;V4dDsrq^MT1mE^~mS zia)~4M~A5rJ|s9o^f0rrsK!AlQ?7{*5g$_&$Cl>|${y){NGWZaMUXZPjB3-+QQ9Qjc%mee_~z6 zjdVu{f6YtVKzEH7gnpz#xP$K8Wm2T2!YpgEWz~>oq(fH_aUex9Dq;}_Qn>30HXk|A z#DSC&4%4h5e;FIJ%V=4eHMU$%bJ=f$G;8^SY&}!{ z`%>juJXdcqm%`S|rCx#ZSGPt*Y-V%!#joX7R`Q-xdJZKiIdIXvgqhHgHjS9}SLM1a zCMp*xo5eZ+;me66Xr$Lk(3mT*m380nda_CYrX=amM1xY2`puM9K-qCWJVotE!QoZ} z_Zufw*=lq76@hkAjZSGrAReioiA)JEBl4!nlvW@MzIdiari4~#y|_!_qbjP9iYdJg z&Zm+Xt$a$aL&7t0N)3lIuPZcV98UBiVe)%>BfefLTxGFumI_zdXXx9eaFwm;wWl6+ zK9nMo&n)`*>m+S>H)5jTRFf#na;zo`Q;u13YaiSDDv< z*fXqL#X+$wV$XW&IpYNkdpn$xi9g4x-cT9fPopxx&l-w>ru2#NiUBlKD?Ejk_#|y7 zj-RCM#Bq|eb=9Shm>KUSHC1Sw_Z4*)FHe198;B$MT%kv}uR^{kHin*V@d)kgc%uF! z(1nFqN^8z=HKQEX65IMZ_sgMI^p36`P#GR76mis>I2H!54U8 zuy-iBfEOoXU9T*nb3LOpP?&BQf(nV9T+c+DT+c+1>zUDA!dxHTzh(eV_h7!+XtO=r zA+13ddnYt=ne4eFB7$!vTyD?>Cw&g+tw9$e5)o_AwFnHl6(zJ_5+=Ph>tYT>VAdVK zaBwbLTv~jY?gL*eQ?LqalTj8+G2IhN&jrWT*_kC?pW-i^zX-op1dOQl6HZ&_Vr_k) z>lIc)#JXNt1g=-y@byxqb@kwz24urw4<@;Gz~VR7ATYqrVx1GLUx*e3o5DzO%$$gg z6vvKmAVi9n?h0b%2){w3iRjD`?{*$${wDQbav8aBi-<2ojNBkH0vHBDr!)KvF^-8y z&0{3uWwS^Sl2Dl(FxUZNA|;%=P3p_0yJeric*?Mgf^!*LZkcUjp`cMpGeP3L0ueMW zG4n!NULoEK_S4IN$?_~F36-Vd6~lV$y95g}J48xefj1?lh4(N_i^F^P>0V@~WIQv+9a&}_)c;NxWM!^NYL z4VYSz3vVA9IL+c$1`pD}sTYrI%tH8@KrEcXz|Tp{(3!o#)p7t~-5-X5QxYa8Qr>AY zHh5EMS`<9YTDDvdL@#1rDP=0QSR_-ieL%lP7QR%X3=FFbFc(FvzHOcmSnJMDN{KDa zv+F`O0?Zd>fz@*%3JsVkXVogUz$OAhWHX7wLP;XYSuDkAD|vieMwsJl*Km(?=`U}Ovsvf*NHvFkhO^M5awjINZ^{3 z&$6#MF>S`=9l*{K`=zIT6_Et?3GrXCTy1n=TDr%s*AQ>8zZc=g{FY_5>|4w05l&U_NGG?eNID!J(7o5yJf-@n1`IxUc|X|0qSbSxiT_ z(IN`*CLhvDgxlM+MHF3)c!Qrc#hdlj#GCb1#T&H5i#O}X7jM?rCBD2^YS?tAe!XM; zKCAhBp*w@Hk#t5JVl(h(>v-4Hj62=Mm&%=*l=u?HgG@Us&F2zQKg(Kaz;zL^RvL>; z+)Bd%td$1LArZ$)BgoQ{l?Dty5o@Kfy{wgn3RXxy91K<()BtT+H9WGif9(c2uOPuZ zgw^aR#u%!VF?S;HTcuQF5eOx&odfJ8iT7suLb8hnftM<~V^*X=`YU=?qQImbv>?Wl z(>*Z*4c2J}%Jhm@EiO1c>71w`a=qf@*tuRW^iZ)r95OJpYRk}Clavyr7hsP6d_s7? z9tkGl+OZpgbVwM<0cGOX)u`Zp0KHdbm6$ydc(2+`A_CKll5fmT=GwMe+R9MB3s7J=|XAx!G34vehtUkgbELI~+0191~AeV^*rdxLEinpHu6C=Qt^ ztqLFxK?f+!Ci@lyM*I~(F49bs{5hz{-d;BjGNXs)ilhrS!XZS*)8#bI#a*hQrNG#$UYccH{OQr`K3JVTtb%w9#qBJLmovy*j!L)KMZiYx~ zml{qIJUX#UO(GGwMHbWcpxT@qq)-kZ#vt){wd^6Wt2}izFvA`ayP6KLc2N*5iHrB^ zbvkVs{*=47M(z!MR%N_a)#UM3RpaqiWmR%c{D~Eb?rl;{=~Y#^!Byk)e5>l>`Ccq4 z>jkNc+Uw`}3c~OevXa8FS4tO3LbhIsfBM+WDH(T~^L#NoH7TBNo>5u1*7D3r#-*t) zCE1@5*Ni0l+B2sut{HJq+B0YSxMpPGuI-s~TZ0@>O%gK9Zw%+fLj++?b}>Yt#;#=f*kn0IOo52y7%c*hkt`o%V|9auGagbKk>^Ko8j+o;j zj<~erU`+_GREO$K1V{0~2H_}>d`)u{@@EA{0gMhbnxilz4o5+fBP88w^wX+23TX;C z3igarXpX{AfTJKqgrNaP0gSw&`;>sMyAw^X5>Fialn^H5VLC%P2PM__+zyr$5ae+W;}Iw@ml=S*Y+6S0~( z6G0-@m(|n-A%L2s8(HB{9tKRBh^}yGmO%s>ce@OPMG+knE|4M0n7HN~fY;;?^40i* zeATZ$THr@%5Z+ z8|Z)vmE%r#exPzili~*!O;>*4lE!j=fQZ8n5SchXKyrs4AmZ=?f|T(CL>zvAy(;+u z!r%v@20w5EmtrXnH$cSU28hIS18j1*0V3cAc2De|>Uiqno1VJj?kDcO|EX*4``Mj0 zKXuktea*R2sMus=1#2Lk=F$_F90-nD4g+&`=__jp+gP?Zx(;vG*UBeao0IXm z6DSp&7&^vc=0vPxtnCKJ*wW1L+2&~QijB@3U*xxA=BKD3ePPU;$WT}|*dq9-GG8tX z;jbPTJb43>IbvGuFd`OgJ9i=|6udxq+vKWf2Yh^`dA?K)HYI|w4kB-+QCpq_s6vR) zs7?Fi^5KoBrVCvJTg0|45yVs*K<_|If`@6)=7*nH8{A&Spk1;T!YNaT+pI}ih+!|h zqER?OZIaf!paAXV_CjDVPm2~rbAyH`!VPky_CTveqAZf;2XPtc3k?(dMkzEuXehuB zn$aT~CNsKLute>JuzSA)vnx}l5Gzxs5Yy_Eh`kVQplpeR6T^%~?D|qTvBloY+P~Jc z29HkCN-(i_yG9qLxkK!F4J{K)&IWI=!|2#QNgknC+ILLxt|N6aeYY7jlyPa`lGcQ<<$4>hX?uC7zGVO!NHx z0$&>1|cuKIFln=?} z>lwTqx$#yUDljkFP{OhsNc1rxqRgryk896 zDk>rqS5cANQBe_bR8)eja!po5?9l)v0((`es0hcYsQwpAaa2@992FIjcoh|!92FH2 zsHifcqT1u<*PQ;do6mUilFNR6`Wa7OefCrDxa+BlKKSH?Tc0}pe);{}C$7%OoTbY` zS7k-SMqprF9JW$rMHtZ+QRN6!R?lKxj>?LNqp~7WRb|CiM`cB1Vk)cd-ldrWj9$`b zv8%Eo;;5`RZl%hKFjQ95L*d;2B`j!gKhla0`O`@NfV~99uy3vAFeDK*harJ}D=O)0 zB?m5GlpO3CrO-+aLjfg+89SonFk?eg7QG)(vpt7-SuGh7~NIX7-)%CV|0(N#_0Z+P-DzX zeW8ASA}$wQ$8+`b6LI5CZ+;?fMgO<>iT}Yt~363Ar6fS=e)_=)*X-t%G2Oq4i@cii>!b1pHQ zgb zt>h#KJDkK5E+-*>R&Wx)BAkRFaX1N*#B&nT6mk;m8T|ljPQp-tlORQz`wTG2NmI#5 zJXyg>5OFvOA~Bo3 z2_hAo1ksR_z#oQ_z|WUBiH826(}Ep38k3@Si+7WWM{79G+?lA`d8Rv4kVL4GzOpx6 z5XYHpx;Nd~@vW9A8F#vK5|ukODNdrvIL}Opve6APd9F#02B(++5vP~{k%<-)AhAxlv)$rn6`927F{@^~oe?koNVmG=l&Q>i+mzY{y3Fo;u~+U;PKrKAye0l4 z?)Te3ml-$iG(Rz7c4|^5#a?7?1@ zvIpTf+2b2niX(dvabyo7@v;Y-9NB|NnJ!a1-Bs0PN|!PTgoq=7aM(%-gm9b$@=dJE zkwAzz5(ts15(rxz353YRB#@p^mnnV9BoHEw1j2DEB@n`n1oEv$N0%voR!AVgA`*xp zaU>9u#7iL36iOiMSt)@S3P>QND3d^d#Y!OGMuVfvB;rUQL}DZm;*JDD#F0RVR7fC1 z<0TO6?l=<2ckv845(p7T0wFRn352AM1VY4-K!{XGAVfn61b-L_1V3MrK&C(fdA22a zVx9gFV$K(5h~B)&A2}&XEPfHaouy*;9T!aX6;hY@$qW7DdGLmKJk}fHfp~9-o3%H@ zdtOj)h}ye1DQ+Y5!I~2JgvJQO@ZXRqcZMM1I71MDGsJG<4AIutS9&are-#NFUkDVJCFKccCuU0Uq0Ad62?=+T zI=^!gN2FQ~KWO>N!~0-TC%%VTC<7o9oVm)fV4+$hW^PHX+_HLb(<_EY$29G-U{RRz z#azB9nek1^7brSpycOc^u(zHf@{bVNn-vPhrQIT^P&iwTRS%cNwv#R+*=+XgB0QNh|<7S~?x^~pz+HD3qi@8i@GgIa~Nop^YmwJI@ zGdUm8I_8n<&<%2Z$y6T}@I#stp?+g<5%WYcEq;S0l=S&JQ6w*xw4lxuNy-u^86qVM zJ&HLqJK>I&T2j%!%gndcf;vy6p6^VJUh4&tB2r54alUvGce3OXFmq!hJc;v_H1Ibe z4Z3+8QQHw||JimEQ$C^bjD^YrG9kIZM?H17Cy!$v7eMqLFSwhz zBzF#v!jvVKOp>2OB1n507HpGF7C)N@Vv|N6^h~<=`Qg*L`qaU(wHs{fXFTqg;_@9S2%sjjQ;{`wW)Gs5?ZeYidM3BFB7cCS1HM2nO z5J*RjO2=up9!wqS{w-0+?NFDu=4X}sN6clplI)Lpu_(OaI6hqVQt2N@&t zQ0-EVm{f3=uRe@9MpFZy3x@K;zWRt?iuxq>5np`_nA}=Kf)e|fukP`?c9o54?ccaj z9wp6JqWUJ=@A1|BW*mG@h~4k22h2DYd%#x@`pmG>xOvOy23bAQs*?OcUwzgLfsjaI zpY_#4W(cfBFcm!Ht1lQjGd&f2!B-C(I@|YQUp;~~huN!}Y%0?wyZqeau&1GgHCzh<(jhUyn?g*w=maO`kkVBEpn2VJ?RGrmw#1 z4l^(KuCKoD3#;BKT2L8dUNmyHS6^#h@O@wX5Jb$h3nH8t3Bw{Y8LoiA4}JAxcU8T7 zd^oI0wTsSk5^_q}-cb^$V#_CiTAILuAN%Sj<=pdPS3fn&!u==qQ(rx4cE@5* z`s(SJXDb)>dD>Ucm~n7(InFb_de)3%v1fhtoO!lJhc_WvABu^R{5fC!)(l~8)Ly}F zef4|4Yg^PqE%x?^BS20{6^kXVJ1vzg^Dw>^HOb9}xV-SAR2$ zu(SG`ul{bH+GZpXGTXdY@ONLG*4zxb6$hG$c%%1Cw5VTx+LbJoxvpy>QY0DH&uu`gG(FK z<>sOmySzbN(LhaAa_xrU(SbvU)(wDd*f;ESMT5G^3}j~78C=z%t~LYN*q#E2Gbu*qhQN|8yeJ&?sb+0H#Vr7-0Lh0Zfa1s;5vpe zKQQcnOM|-2^f$Y+EV!*f-O(VQJ}`I4(I*#L8QjsJK8yi`Er%erJRIP|4eDbJlB!`v zhu6e#L&x3_Y4t%ge^z}38E+(CrOix zCX<+%h~WM21pxs80TH>fh-|JG6*pW!To7?VxwwG1FW?65%XR1o-?#mFcQxksGvN=TySt+Sj|_g834ap1 zyDK8%pJc+Hdv})!;-76=cL{!;34c|;(UF>Wx~HCT(md%OD6oQCFY$3ac}U~O!#+uQHT9K6Q0$P@a~=%bvmmf zJh!8E@@SxQJHpoxvnP*c@|uqDf{xm|dr~y(3p&D!Y=7Qe(O%RMUebZHkXau9JQLT~ z8#8-&bQup2Z0pGp?Ij)I>#0k_x6LY#1|sHZo(ES1lMkpnKrhADKX`pdctva)!mj8D zuZ*SvAb{kjX~aMB&&NDOd}T*?bw}OEmvQ8)JHl&XBMZBxBfPG|9vb|F0PGE}>j-bO zgna&hJvF$oBfOaycG6)tcZ6?c=Y6mZFNg@=+7Z6JW6@L11bylBg@$Hc@b-@I*7_-4 z&MDs75xzS%MPcvm2;a-aGbKNOr@FDdBm6}eTjcNU2tQaq_Uk$J2Rp(K#l{x)p^osw z(Z&LJ3i9e`W4pyYEi*L(S7B&Tf4C#Ovwr9+IP{$z;m2b`3;TFS_z7-KCpKpYBLED7 zPjrNzvV`14VV~*<@9uDS^rY&>&Gx#h4aL0R?vC(t9de7}$k+-dO68x$1&N^=9r-_| zihDJ!0t zO_Nf5rXeYX5HBf(5GJLt_R`u@gL8th<0A0#Q3&z!Q3y%MM_&d=!|JI=SK}Eju7v}5yBJ4rK@lcjy-Zj;T<_bydy_Q!jU7~ zJ9310M-GsE{3Az*cjTy7OpsGA0Qd%oB+^@HYKozDIvmHlf9j$QX8I(EG`*|F4EZr%==c(EQ0;1%l;;uY%wQdg`;h*zvfy&8-42yRlW=PO)| z^Zw@Cg*eX*ha?y45wTaSM~GLfM@U1l9-%DO^B<_yv%bC8wy%UN%jL>IserNzl}e?5 zpfrA|p084e?v?5Rl2oea@7yAbI(z`BE7c>U zu~ZM>Sg9WRl?ZXAdK|)1J<3oUw=U78L-by?9wDw;5B+a|92&4%kGw9J8D9uJPZ+d> zAGXpdYwhqC+)P&Ci$${uey%qC?A2DIi0Kd-sary$O{~sZJN#u!`bcplWUfm3xLP|q z;@eHX6VT2@MIV;&0WG~o{*gvLR95OSHXZzI$c#@cVCfz+HA~_-){A6gxXII88J8L~ zMVV05Gp_P7hCxd~YmO-D9P5b%n@}I9uGS9AzMjR@_%BBpAm`#FgjIjELcWGVSgR+N zCxqEPgr5QD7U$z6#MS9x#Z@7y)8h)#uu6|$ROvxx+W2yeRgQbyBL69?^t_tc@sY(A z8Eai;TVbf53cna<;}iy$n2X0N2fuqXXsmP(71SCaR=USwCbO(t6fFRvMOxXbO#V~; z#2u&dh<`R=pE~o)TDsvcOOB~yw~1ESS%yo`s&3dgwtQ_&nUq2Oon_;v7+KbqzUhfl zWoM7vpS!cG+B@tEl|Gc#DfJEFpf4e1VX0i|>)kxGWoYB*aYGwduN~@nMd zx^(s;y5@f^k%PM{nS*<~;oz>{wjA6zJ2)wZZjNQ>X0>wVot@;2TXW^@N@}Jn@5-*( zxx?CdZdM_1*UEh#;ny`2&Nk;Iza2v8*IV3NHSZitY((6y^$7*+owGz&jp z9k={Giq7-w7edc|=Bw@;fiuTST%10*YN2m`j)jIhWQ1fJKl_@-u5j7)r|~gPBZmlK zZyG}P2=}f{L&)A?00iGePE1Gu*IqY`BXKF$@>F>8#-_nGI)Q2$`@wbBpT-@W#?!(B z{b>k25I(%oKx>TkfX=WQ=%BFAOvr6CEAVu~IM7Lgpvifh$?x3aJZ9_eNveD_v~^I< znno4;oZP$HFDX(%d9nUNe;FPTg99un!V+U&Z@;8S(zr7`Mj>IRCUvmQ*peb&>jZb^ z#W)M`Vw{CcJjPk%PWUA!F2o7HJjQ_3l@t-;!k1jH#u#S}mK5XsbuPt=aTemmI15RR zaaNO)aybDZlydh)ex==ha{GIJ{D#{O`q4*ke)N(Xe{#dye{|OkkDmP=LsnN-1Rd+j zifE|DxMsmgam^2MEnZx+5HGG-NYl7xwR&;QLMVThu$+bXP;TBd0%PXrK`VyWuH8_D zX>|-g7gxtd!$KjdD}qjSbwz}Dfz2AYF|b*1QeBaUxHzw_h!C%?h>&J=Mbzk`jCres zP}npv1}xwKsIIPv5U;L?x;54n5u8+4x!tQuC9o%y1F93lIx170iqhjGKp%eEAnt>U0o3X4Ru9`d38lBQB0QB zNX_et@G{^6s0C2pxcF(LX-h$A+KwJexoJmFt}F6Q&aSSmh_Jf4BEk~uim0Wou86R@ zx+207>WT<&R#$|(-a@WsU6F6|j@8u_5%w;>u86RS))f(PU0o4jb#+CACDauWUaKp@ zpH{BspDnnx&is>gMOq}+N-}3$kV;>c+AsIh+1XRuk$M*QA`edAKpCviKqX%+6bDLu zeU)CP1njwBnlF$uLh=QalOITwlkZ5DlW#F{^0nJmPHwe#lj0>KhmGltVE^0f`UrL* zE|!&FRUwpl8FVmb)hhQ)KnkSrt9CDdU5F><3P}iH7w!eH3vnDEML{7A0qjC+0qpqM z%-;FGE}8#d7G$5(_PdTklkm^#?;q$d!)3m|x967W7&UiJI(t?+`#0JzKb!bg-vo-!Xt+O`9OK?=wGydl6I={+EW$(jveR9 zgfRZS2V!)lSlriO3lQ{Pt<4-%3t)U)SDU%|t%EtTc3*amh8u>#(SL3!!Tydj-w0!% zGujDxc{o~|xsXv91ywP9eN@46x2XG8*aFp^Qx`F#-gm~-I|}(c=MFFzyh>Fn^-N_A zB5Be&wW}w@$X7GCHj3t(4=F?quU3u9J-m|dtV#I?E&#i&1Ap zxnCDw3`<3-;ks0KLkj11yna3FK>iOGbA!U&H999Q3}No54e1sm4072!Qj2=Am>pia zb#!d_v@@)F1#1eTj);Q4HMS;oG=kdRxO(?d8>+87e8cd%5%girN3=gRh{BiP zRQT!oo!TFbf96hoTG8unr-Yf{b+=Q(OzgTQx?$)HByn(6Si@+jFQmdR$M#9xzHEco z8Pdh*41hs^Aoj1vRwV4}3SoEmUY!xW{&0Lni=rz%oC?2Vmrp&%Usyl&JE`z{EREU= zB?Ev4JqNMid#UgTQT}RR)F}qlYJ*N2iSOryv28$X2^uMtq@W~MNn^gEa zJA%W0mkR%og8RYK@w(&QFydFVe@KOY@)vJB2zWzUXgV06`wu=(2&4a7Yz4ypmJ0t7 zTY<2Dq{6e)$cVo*x7*6GO`DIdjvc;cO?7ni#Oj(&TkNS)j0QbB9iC?+Lb(79a9%n* z-$sNw?EG|iVY;>`=CKg%g$kdigA0FJO$YyMsp(jsY?tcHuWxGoXG?PFk@e&I1*~t& z+|}K_x$B=9p{b^$oO`JK#NJ6^!aZkA&$u((G?oxhJt-L|V`ZReQD^Mcbwp1(lTC67 zFp0xq<)*y}(b`8NbJwgIFC@fygOfWFLT~UKd5~HdBQ+grbAI3yDumDv+=c!>4_0sF z%wkj;n=LK66?bvMCEi0D;&sPX|TQB?+? zFZf;E^9ue8F2sAmg*17=)#kn6LTWEKeje_>;3BBK;P`pKlP@^4^yW;e-ZMM!W^5-b zMP@1@O9v2bk?+s<(S>^uA*P7+>a7JjPeo*D>nqIc$kNtpo79UR87j7EWa+I9ab7~) zi%<2AkXU4C?Ww`HnxA(OxVN9ofDkXtOGrYPmvAr4ONbZd1*9&rREQVmrCyC;UV@`A zFaEGn2LEh&-0VQcAR&f*2l5$x$cuN<(3W+Gj;y_{Da5hwP|Rh!(0KCDhOO0D8)Mve zXp5!jN@fV!N0V3zhI##_t8EwJgck<>9VBBZi27 z=n!dn=#aoabcpze4w0lohq!;}5b+P4u7*R0h=1s?SHht~*d03f5gj`C^T|V}*`afP z`>wkK1-M|8`;lL~GROql#WF;g|7qWKH)-6Nt)EC*(WDNPeXV|C#s!&vh;>VxL6wJ) z5NA+z$i#z8HGm5;B_AZj3o-?ARImpOtuiaoPAS9%nYvys$aFR{ZBq-Q!5Cy3FM&;E z%I#c=GqG~wLR^HYLy{v*MeHI>IRPOwl zw4usoxS=|-PUcP;az#u#s^;L3lfsj&XRV#+slmyJ^;8=5xmc&0+6$xH;dW~dujLMR zn?>8{F3b;@MNj7a)_yqaDUH=aob}Wpw4TcTJSO%Pw-qDMN-KIAQFrOen#ArjtpZ&L z`{`!07<(@k2K3E!_GHk^S0eG6RdyHCbv}}aztVeBX;l3%>0cTCn;DbOr4Z+h%RovY zvY#qh>)Pt-t?P~(9;sroj9pYSY^eySlzEI+24Th}w+~NjZ%gm&fwJn}s@MLsuU=?J zqV*3W?H^p23NNyT5jXlpDP|k5S#KEzsmmhe_~n+EMz4?1=6-o9ydpAs0oXI1`jjRa zV!;(kHg5EvmdG=Di3o|u5o8%RX&Ivz8lxIi>Kmsp&b^j`MlVs+8NG-FSIOE-(|N~9 z)mM&ThiNhXD4SsPg@M-@AceuUd%ayMO0oTJO!*@3GTgvgZ+hpJn|pp;oe(8#hRYBE7o9~hH+;&OPR2u zNwJi@mZh9=ZhzO$hNaze`xD~1{Rx@4+n>lCmrCADh~rYp7Xqns`xD~1{i#=@+n->% z{msWWpmXIIvVP$sK%Vj~T#M)RC&csm6O!!przXdea^6B5OX?7^q`O4!4rDS!_w+FD zPl?Rg4V+S5!LIU#vIv7+#gLGl5Di(;21h$GP--1O1sm~aoP!WXfsOBISIid=?x&+2 z`s^7zGh#_OXCbD(4J@W^T-LX#F-GJab-5$q*XQjwxwsp-xaHxB8fPSAMR8Z&Dg>mXa7!($tI=}_sJ?Xn=r!IuP zdv5CL$b=rXsqY?*cRKv`L`cv0n`gr_iN$J+UlM*cWHKQZFu{jm&_uF(t(rvquwsTV9`7!oJ*!h;3 z#Y0F2O_*V3V+5$~B zbk5Bpcf4^#!kJI5M2K-jvI#hZ&~iWlZvLj#qtz|1KrptA&R({qIy5%CiH^H8REoGO zoNGQJ{1OP68}6{^rO1)Cvdu@azpvCkfNVMaeHE0l9VnM71y<2W^Pjm^5%!6l&DHs( z!_|uc^^5Myr1_9@(N!_OoZ>%JHh1@c-xnIw1*G^jO%NGap<>El!U}3OOEDa3idxuAc$A*VCoLEH>ku5!! zO#d}zw4HR^9h}rDx8tH0cb%7NHz87?pjUtAu75=TrRMRk9Z?%qzL(o2W@}=N)IFJD zC^1Z+aMwPh2gjx#Qha< zh-^@9gM=K2V|N%It2X(jfnuRDP{^0_eR-69LhO3KzEuo5;I|5w+AmlP3y?0({So3q z<+wkZjtiC3w~8MJ!HuDEl;9uW9=T9CE>egKm2(JX>Dbqbvb!iNTs*H2RG^vltuw|L2r3AM*g;IELX^K z+>8o9a#Pj7uYxsbirqWdyX{bPG*d6 zAmAk^8BUEVHr-BYNkEON$*yIImch2a273mJJEc78Sk-k+y!f{er%82Jr6#quXEfGp zGSs5R3YfF_w{YrG<8PU&>(&AAJ4A=3__+O>X*smv9*3!3H@ z3t`Z7kLm|*2fZnvgQ0yrE2gFs1fxCzq@9{hJrNrXL%-@FQuw3;fN&W5BkiYBYH{L5 z`)NwVn)6V^htZxN#Za>V8wNOx)x)ElTn;la)LhrB(WpKw^{wh)La2A^ng`|(Gohhe zGeH?s_o3qr|xOoh%`Bwi*=K zu~0PJIbH~Rw>7lm@S^=&m@%}=fnykn@wS|XAZm<5?%Aqu%&;>*sAMi)#zqetzE;7DwI!@%XHmjLV&13ya4$ z|9D$h+^`NHIzIk3u$C<`mKpzf6z*+_9P?0)h<=_5ANQ>brb@Uv*tB-MK>T1cwWcja z%NO$TRQOA7AB(gy0REd@^9~7qsVe8HGM`0(XjaR^V-vOh+J6j zZnO2w@fg_oof(*V=DX;tn!>RF!V6LXs+ivqD;#gYJJR9D>#z9nbodFzWf_u~9eSDh0@6dB` ziJ3CU?@NdG+dZ<28w~DOS@Ilf%=5F)W7NHKC{K=3QxJnlC zI9)>{>EN)4996=9YKP!rME+A-85~3Kzy)@A5LE`ZFTF5R8C++F>x+`$zm6B$UK$Ph zYt;pJr}%fc5vbn%$JqRZ{V^T>$!-MKB5cT^GhPoybzJ){a>%>R&hrH%nGU1IZj*LY4b2o2+g$t=UXxoa~Z?t8;?dGYEDf8_f z8(}E%{SI4Xd361z(@)woG)mTpRh-rS4wd_M@0T!C`+iSm(R14`5m4yIrC84y!!8Tn zlL_A+yN$x$uL9zlG9OA|C>wrzJ>Bh@@FT?Ro1xfl(PP8VJ5=Yta`297t zl6mtzxTM=osR>6_jeDEZ^)pJJs4o7A*xeNNiA?w@I}hGrVV}x`cPAALUl|eHZL5sq zUh(-+CsSqIlp_YP1TT)2HJ%%hpw9Sxe1KQvqC(J7%YB*f%k{6+&pG8U+cM<161P*B zDMRkISQtu>e>I`>Hj7ZJ{i~Vqq1e)eJ(LL_PPk|#c-Yn?$3^-0g1BO9lIx-lLp}2E zChZeTPOH;*Rh(SUqMdz(waFi`8}3&0NGAL-Pa1s9`1-MCv}X9@O!zZ9YwokKpJl?w zGFAZv;6$AID9zjv&slM5MEjTum&czQQ+hk$0eKwabbzAfzlmK>*l#l7@1pAg=yPwr zG;cUwG2s{Ef+GH%DxCX|-Y+;Z%AEf>HnOlktHQbA1j)n#tgyuS*|Cz*z{7L{Lk1H zfVdp|r;3-mEf98fM|f?Ava@<+xvQ9s+OO>h-{OzcAG}2+%#DBpqW-vmLnextt!Zww zqas>>Z%)^7hc7+yxK)LGL}jX+#~-dioj&SeBpm&@8!NxN-Zc`H6z|A+b6;l$Ul^cT z`nybNZ;Y`Jk2|X~@y{luy)*fLv?}eb=ETz8YC*j88Zb<;sOOIG<@qDpvY|{t1@ES& z`{CRNcE}F3=k9?zmU)!2EES3{qoI&xVX${-H8QZBv}tMei0X#wSaogBm$v^GTqSo! zI(u0q#L%SU(y72aZ)yyy{ye;TCyuhT}+d~<1}cZzF1A! zE5u6!Ere;Hr7&H!%BdD8$3hws zLJMU=Xt%0ga8(Rzb}DQkuJ94nz(QE~$QA!x31;%Rq1Dw5n31Dk0VJnxS088SpmtaY z4IRyvMk9oXoV|k!5kh;1rtA<_2yvEQ8X-higmGgbw1GRV+`4*n&6eTS)h#QAMuyf^ zw_u{QH~f;z^^6=sJR^q?8aZT@hAI$!X=lo zbI8fa?<#}G@Y+>O2}z5BNS`0KV+f%gL!Iqf_g9FbTN#Z2qI(I98}9KDvPKDB#jcB{ zO9@_UW(>M&gRm=DhZ2+SS^O0dR+MzxB!mSdMZ;|p!m^L@JE?y`mQ(*cGQ`JnK}788 zKyu^M-PM6~2xYh`3$bpk5>bi8gzFY6grQSrq4@cf zNR0Kw0e(J3`*eI7{diOLm5yHSXcoe+q&u30 z9D?NN`n-&8+DI!PKe}o-6mDK_O+xsY+yL*k=}BjZYwv)6e5P=<1A-&ATaKX(CJ;EcZXkRhfouaN;Qi8FE)BNBd!;{u@Zkl_XF zomI~`h4GNF6f|+!vEAkAAwvu)2A*Gc%RfQ*`EefxA&ou^fcLBUF!0$G;=cV3c`;JE zH#m-vJrVs&!nN*M_vC%@7rOLXC3KI!fS=?XhvDC#=YkKRke7xV%zbgl1~@y2Epq%c zc@GhfC`ExiT!d^1$4qz5T*z4X3d6dtSwA$guDX15+4@bRd^pL5h~gFDnPw7v6oj0q z#08dv5yHd;yHdYRt=HQ= z5+Dl9ANw;L8xdd1N}$(xPM0u~l|bvGj!+o#5!_V2Neuf^<4rZc2=277m|uj$j9-Mz zBlQmsWBk?cU8(RrvBe5|Pb$2PnAKJbyDb&I--e*^@!2=(kA(E_jfg!zv^}ba@sNl= zKgLXv@cewX8+8fbJ@FAc6RtqmM{M4Ds|yrn^49y$&;C&dB(VQvY&q)iN#(A0%Mpf@ z^`B{Yeh!F6`AjPOoIlEf;B%?)3sIU34BaSEf!wG=!_?da|#r7Hrlz_@4lj~*Hd%$WaxzrTgxfmHZaVzvD(1YcEV z{e2+5`+85hQfQ#BE2X}BKZHG;3ctmLr_9ujsM!PP9w3r$$%VuC9s%$+(9PcXbojHs zmoE++JCJo>7o|pCm`Sp)**ok7OF4`MBCbtex&epW`jMNE!0ob0O^Fbojai;{Afx$zManeA_|1A6+#rwP>lEVR0USad`P1=j&S97>V~r(Gj?$168a0565TGa`#6<{D zu>j;)Bu=r)0Se$koN~bRqH;jmPnY0NgPDL_eKoqfe%%RO2?KJ?H=aM^q9$cMkuXB{ zbcoF_Y0sq9UqSdha~%y75fFwtriC(+_HG{9GPH5@xS@@!*A8KC`Q_sN{-$$Y2^H6< zgx6s&WFg`Wijd1t{)so{gy({oEB+%F!cyHL=B@}~rWT3Y4jBj!He%fxhHh8Uo%cz^ z2O~|3x;x~Vh%eYlUNZI?#ee|@Ir_+CPa0Z{vfS%&OU(eqU@4Rf8h|PBFyvw=0FK5z zh|8aV4+)Nr)bdnwh>&XeDJWN0r2C7#`m*3ym1e`{Q6YlMEDN5k(rk6}SrMEN1uZa) z0fZ|87qs9I1}!A2X+-ZL7ihE)(kS%FZ81E0|sn8-3%0XCaa+;*8B*=GnE(dIPy-7BBf`r~sf%OmVu%A<>@6nw(N$Jm zOt?av-7uO19vO8)@t=7K2>3`>=y-c!$W*9&FP1wNcB!%#mT>y*ZQT8E298xv9@;W` z{AtV94{unz^o%1nY#dv@7Sr4flToM374o3L$`CBX+%;qCRazg@z=1RpxwQj?<@LIHr(gnRQf>yEuN^$S(-1tX4=B6_%oR<&V5*X&SUxwhH8KJ3g z5$1k8JNv@+_@7dLk-QJGi1+su%9V0HZwtB81G?w@=^Z}@2cFlav#5)-UC)0fy77E0 z*^TFB)QK_IYAUA1<zqueOO0`a8&exoXv>)h}HM4vj~Nn!KteLUxdsgIE$vLobI#IFEMM zQ|q4AGooh|!lXC4ghLiX@i5N%sZ-E+E@v#Qzd~HjSjvJx4pjL9 zw|*hiMCh8X*TKjfD~-)8#za#$puwI2Ed+T${;)hC|7^mtb>wp`4r8_^xr7nVWxKX) zv?o!m^c2fW<=Q%^r@&n-nS)E>)h>f<|CzSaGopMQi`i8weSKxc$`77uU}r^fN;#$Col&%<;Iw0ni3J#{hYl3IN!o>@ZNsp}AT>N>>Lm!j8+Cg)CF zmkm;IR9}ie?5V>)o18isl&3@Sx_ol+I<_`Rzt~>ox@qD8WlieLeZMRFf;QQ}as`Rv zAngqfR4VyOp_DK5Mvj6#ub$T7a~G$x7pAkXAyapMB2)L#WTx&W!_-~9O_{nD`!=cb zC6e~GDerb2>$Z8kn-Gt86T%Zm3h-5{qNfFKJ`Wf*d;FUakAD-wBS*0WqlzUUuO{5% z)r7cHgS-lmJ$+tHh&wfSD5{q`HN>m%FcBP`8vJ2T4gT5W)L>D|WNzgDOexGewr^YH zs}w2~O(EWKB_vtYRFij9 z3Gt39ArlleMe7}3LcHS(NS&xD#5=y!tMT{}?1`GcX%IDqc%r6|WKmO1o~S9r6E%fQ zP}CHyCu$1uL`@)dqNWf})KsrVQByEQO($yqmg}dz+sUm$m{3nNWT=I(2A&nQ8KsL) z6)mW0Ix6k~FT{DklO+{G5BPCJZQ4dfOSgE(oeMGXXHZ@6^9AID(pj_1* z2d`ewN0E}6s7({F;1?kJjG{Jw*v}XLZ2I}yucfHHUz3m9el0}p{brJ=-IKd>_qJu? zfjmOAN&|UhjV+YQdF0#f?Rj*!=@@oqi`ohMG^uY(aXLk9-`VBu9q`z6@mk~^g}7|7 z4&gUtB1yf~-7BylWU2}*6!HT_)K@5%$|blemHPXk_Myma#co`yuE2s2=kY}@So5KE zr51R~gGq2wfrSrni@X90LYzAnw@64rfd%1SfdwI6fdwHA1r~&|z=D6jKFG-|4iBmw zu|f_~idP)5oQx2rcpdM4QGY4o5(2z*W^;dpRFLs?DhgsGRT<{j$KEeos~8MMUS0g& z2%%S(z6NeS{K(br7rk{f&87IR#S3E4LFwb%BKK9}h6r(AHHYx47E3YCPmCzt7mQaI z;=W)G;TOz>1~YT3=uSptm4CnP;$%*V>TU7TLR`HqhtS7ry!*vkTk6g#T<(4eSq+b? zDaZ*Ao$3J8A;mI8lme>xF{K4=)o%87;ZjAoat)h{^L7atj>5IMJ(>=~wQIMF0ab!G zB0@WUyBLjqFL%gAV{<=*xM*yLFd92{yK)ib8K~mrHbZ?`v`ao*9q{22q8eS!vztj% z1)r_xD&JM-bDR(Sv(B?_A#$20cAiZ*tG5h}^2E+pxh=YmwkkZs+^HhJu;!CRuXAC> zC+lVH=krII19)s!Dusc;LVtdsKi^m4y$f{jbg^OpXD`HXIlnDTpct5tEqU>{Ng-Mb zNoi|owCKd6*&;LTwJETYwR*Ai&v}4*acwGmOKi`CnGCcVoBJrt_*uouk|h2{WNs?tTipPmx!#`^m5% zwR~CmYc&FAA`Dq;zs6DR{S@{!WwLemlL0=$ACw~&xqbe$+&=$o!tH1BC$>~^pV&;r zePUZI{dB6hi@D#;$-b;j6*tW9#eOhM17J{#19+wed!ch&Zi)D- zhOO0}bN{v1%UzewUY*WfMJ4$66P4g!NLGS>z$n4rwM~`a|IE%#N)(v)L{Kx`NHv3} z6&K>EnS>;(nbhQ|nS^+1CLswLap9gyNry>}2L!1rpZk5Gs(OjiO%$ zl||~znhfH#9I2PBNS7p|UE3(?g#JjHheN z$CVxuL0f11zt}@!UhdBB?2Fqx_E}F3m9L6@dHObHQkrUnWS{^Y2B{p ztBHsE$CD5Dx0%EJ&D->FA7}q2b)I)lNmaRGNlaiuINpq_Dt8BuOs}e(5U;A75PmMk z6Od_t6|q-UPRNv1l|zX}h*-v=|`YdYbc?^qKd-6&xx-iOSJkU8P@6O8i} z`S!@TsUgXD3E4@(#9)=kP60W}*6s!CNCr-bbKG~m=(sPA$i?|;um#~>;Ie9(6f$iO zaVdMLcCTeeg;2HZmLh~%#Kb|mC|O=kP5Xu{-;3@Jp?3M{UC+$z{m7-4|MaZ0AHDLu zk6!ZbM=n0^k(=N4$a^pS?zrI*2LCd!Q?1X8?3|o~5VEO7 zEUOoc(&kMg)seB$gH{Z$U5lXKO-T7TGPbxnHX4>I2N(JeFn#t%Rk5SZ=5WdwWq*YF zvY?n{i@OVSWL;T^)yuE_s5tVBz-DD8`RhI$`Bzr1M*Q5aBPms9O zHB12}62|Q|hQ;v$7@S4&)H6RyT8V7Q(t_?imuofZzk5kKJwM*rv^mk^Fd|m?TW3TNDm#-xDDw9N0bz zLKqJ0QkznbE%Z#NocWdJ5BrtopDmP6ok$R!=wHc(W-)(kNsjp|k00|_ZcE;of+Qfx z9^uJolApL-JQw7CuzhxYdxB73sjq(k`9@2Hf&TtVrP4o8>OF1KmLrGOtY1D>-FS3$ z$Ri{*^k>kSl+zLO{%-J2{N-DZTNw{J_~XySW1DOMyqC1O&a@y2c; zCM8zKCc`0qB$Z9#M><_nlf+n{St!okg4uC}xf6LED$piSm|I64S&*-#@f9LhWOF7Wk7+av1mk`c8~j`={W6PjYZ?KsonGU z=jVi7CRXl-5N2X^A0i=7hmn4~{UOIE;)CK@ScNbP>lEw{B-B9&PIPgvl*@>7G~#Mh z$=uCH&fQbfV(d;#CLO0iO@g)y8poulV2N@p)fXV2qj z?8}Ltv5zEw#%?s9u{Ukg&sg(ao78vfi4nw*syEkMN5nJN2;tYJNe}}&cqSWl@Ju#B z5==J2J(G4&WZ|{V3?R$X|@x4HaOxO#Q#J(3O zk*V?mg$F}lz7Gzdkmrgp)4-=8&h=qA?;m*>A&!To{zgkq@B-yD$*q#Bd0VIR zI^my9PM1txxiy*wR?bQ0YS67M=4Cp)PC9dUx39iWa7XKTynXe3!mu;@yhvEkq|S>O ztG@qy2i`ePeJ{jQ-wTKjBr0_-GkU@cb$E4@9x z+j%;Mo!M+e!ahxkjo8ncfjMY@A)ZPnz3Jm%2k1kaocXKI@58%XwkPmQ5W+7BNH+li6>FEjyv(`-^ z3<=ADjhM6igh#G@?<3cp1;f7?dSOtCC*}tALZ!pAFX*Xz>7vid9I)wGV zlqu2F3p-(G&C8VHf@))Rapf}U9w3C}G8?XTSg=fy%vc27NI`fQ?Dt2RJ#ffT@JUU& znjQPF;22f(!XUKdYY;|$X(Ju-Y){U))nV3GWB0eE1pXm?=f7NQif#`*Z zUw$F%#B-3v7hT=dUZ_%;xU$`v!&E9$S9Y8A62x*T4>nWu(mapx76+?UDib}KDqIM^ z$?EBlbqK^#McL6!TeqyKF5ip+Sb0n2!-&Azr7H`g2T)eq0=h8RD0?}EwYOqnU=nEC z=M*&al|Z}poYMF%cnqnsM zq7<`ZDs#w}VR zlOsFM4VoOtyo`1BP~SL(arUqjj=)_Mc8jfQH zO$wPfHz{(Dn-t=4lR)aYNg*CLsa}oTq+oKB;u5Iiemsqnf8TI_oJ;&}@Mqjdk$MJ^ zFde}w5V5+dJri`HgaG71e|Z4$Mb<@#i;Hpy`QSnX^pwXH?KW zYCJUZK_wFg@drbcdR+Mg0I8yMj7@DoCR#L1Z7@G7wnFyW z(k?b)n_P8*EWrD7Cz&^?0IJnL+0a7GHnGjeDM3~8hP>ZwQ4h?@y&kLCj0aa*st378H zM*&)J;0*;wc8&%FH;%%yV!7N!P;U11mfv*P>uvf1%WrCHO!|UY!I53fsC%;H>@_Le zwwk-KVYYdrTX39|O8(5#KUPtO+@&zXA8V!#180n~vaLBzm8s#Nu`;vdE;XoOnH|R| z4D9l|VjO2KqJ38?e7E5^NoF}t{@Ie_JhB{=aJ)coJWpRaAfcQ6&&fF zxerVM>sWwuUa8dI2gj{`cvckpdV9Xzwtlle-#F|H=SUkDG%1dBq2)+tT$IxVnR#=4 zGpP{IOe$pJW>S$mCYN6uA&$xA*9OSJew33C&rGUbjb>88G?R*@TefM#){RU(NDb$O zT#RQZ72+96g(MqF)#MbUoVXAwNT-6wVvRmBl^8UKXegU)%ONh?mP4po6=UQO`tLf< zMw9DDlC7FvjVz1cO1PwMf2bOKE%#>$SW%5iWQ7wZfL`qc0C8#G9r>~ByG0A4A0YwL) zJryxi?_83Zw-a@v;Lc3E8i0BAYD{7QShd%ZC=I6G5_xJ&5jEB#G@KP0cS2vrtf_CD z_cCfsOF?l|6!W`0H6}4uE__`Ir!*>vx-*0P&+FLux*A(Z225CtEp%AK7B0bMM*(qzM>?@u9mIjpDo$S zW1F#+$2Mgv*^l;d2Cy3;}a#OZDH;+ZC9`AFBJ-v!Tt(z5DfP9mj?PPsM0%b z^{V^Yu3j~%>(1zu;*(nOq&U+jMD?nlcGm|F2=RgkgfMtO*2h(=Mu#^Zzxt&(W2tUZ zqZc|L#0wn|GQp(cqV>WFgm~cuKofLFgth?i7c2$PBj z;7+z@4TzQNH=Qn3A+~`Zc2Rh_#f7+3P>yDTxy9An=|IUs3voJ7vg$xeeiQ=72+MW zKP{LV-btfgjVF!Z=%nEfd(!aFCr_Fr4;$80 zzNUTmno0$tDDvYK1_x1~6T#>My*+ogZzD+>Pj8oq zit22kPe)!h-);IsRFdZ7zTZNOfkJlk?k*uTP|zcHj_MaWA8mSnsJ$PK-o|f;KkNO5 zL_*JR|LV8%>PwW^4Vr7}@rBUU#%cD2FblDK@P|)3a>HnK>6W39HS3?ddF{|xHA=>W z4W=DKg2%$5~R8%qPFBA)q$A<0A4*~iTF*z=w3zT;Y@U{g3|uFicIGN!z4_E`rqFJNd`Y~ShA zF8q~ntBLQgv0~hgF6MEiQ`nzrI-$3XF`VG%Jot?}t3?Se?!*GQ-x#}zXy(^4{q;f1 zE*dz~oa37gO8FFY?r4ncCh8lXQ(v5db`v|gn?W%e{T#XK&_~}KPrISvFPs|ubt0#D zS{H=HoZ=m3oZ@57-*kl$b>tNCh|V~{JM#j)>V?Da9rZ-w%QEI5ZT0?` zanH%a)zepwAyNd@2-Z|bM>lQ3O{UG}Z#-a4*%4Ke;B18%`;4ydFxX~LgQT_1gdXi0 z0L4jejv0c4p#;fWt=)_^6Jc*vSrWG>dbA5iX%e{T&}PD)mc`_s|BGxU+39lgP98Uj zHB}zKUZ>+k9;JWe_qOX@`9t=+;hr6T4v@aYlY2tVr)1LWD3Iid;8L zn4B@8q%g2rcR*@BjX*9_NKd#+Fo*;h}+JXB|RzR+*mGtluqhtcP~Wt-~r#@)mJou^ozJ;i?8aEb|OJjH(3 zaEb}>PB9@(PcgN6rPtB-P05b@ic`(Cax(Ixu+=<;%f>4 z)oBWaP*ccasn2bXH7+D*3c(v==ObMqu2!cj6yoU$fh6h*g(vF@x%o8_=Z77ht`I*P zbcMv?xDOjn4;NLQ%7aiyBk6>g$bM{l;x7S2x+ONpY-^FW&4{R_(4N!*k85omkm}R&D8{ z(qLU)J$v4cQ0R36v2jE~I;G;X)*~Sljup$ZY84*=D@m)VJ1V_Fg_samdcz?sy`f^Q z>y!k`U3#ZTZ%5^r`Z^ZVA!IRS^`+9yp$o!2tr890nmM%Cw8VWQ)zeQJ+JbAxGRmYv zw(geg7+XI)8pE+aPt2^ubWgdqZPBxw??)ljO1=UKv<%NK z(4=1E87q38m8};&g?OT;kco?)BKJg3A)e?7q)zk{;?4z%p6b;odJ1k7JO^n7&|JfPPNx$PX4TyIYrVa zbDqPidorgGPv#UdahX%(p3Eu4mpK8|$(%x_NaidcLn_RfgZ-s^o>@R)<)q{j$(*=U zoy;l3lR1GT%ACRzWKQA9GAD0*oy>U!NB3k-A)d@BWa2WX$UT`;h%a*js*^c|OsCAL zIs}o-iL2GgoI*UA6G)=WDLh%`{j<(`_Ed<+o(h>bdn$5|Jr&}yr$Fl1 zQz0IEs$Pxkso+NT^ygfN$DRuD*i#|N?5UbO_Ed<+o(gGTPlYzJr;l~wbL7}l`mqRc z?5RV@o;EtvkULcea;HwMAcV|lcNd*K@v|2~{XFC@0hdM>XAvxckF@c(=FfVDRwU#~ zeP1KMPYVuHQW&el5W=J|&eurDGUOw)-ri)VPa0aifyK3%h)?ZDA}!1~S2u+6)B%=li%bcfaeF5@=k9U--h+jPYOl$X!6wwT`DLdcI! zg|~MZiMR$)HM1}XeF1!q^MiTv(>rnH=2|6iv#ZSwrq?m9UP7*!wY5Fhq}RfEI_7oE zBG|%D3ttA@WmRGBLE$fhA9b9wGTz>NQtR&exwEkE8{@^Wg?RNegfO}H`1?+GXpwt0 zHH6S{y5{W-D35gC|Ie(P`!0me(Hp19h9f`w-L&&rUabT^_FU_<%d~)kOsa6_i41I> zO?DGY3rJsPwIIU{Qh&!c+PHo59@H}CoIeX}HQ35aql`HKyo@;|j7KcER2jpK=eH$t z_m-aDA~MWq{G!J58;ucXt-f&zW6iM?o!_)Dq&h@;@R;W}^X;ewNy3rsMxNJnh!%znHb{8r_FEY88X`TobCRZ$wQyv% zdAq;c#`9ad-JG+gll5z7;o|@%_P=5)5QbFX$bslqAne^r58m4In<;oijJ)Bu3;lhz3{A0%Rn?EgQ%|Bam)+>|U7CZAR5tEpl_M0uq*>YBn zpDkx)Ti%dQ6l+dz?%~aA2Tsuv{(|^S#DfwdZfMrf=}vYtz~D z)7f)r(fLxMMd!oG7M&Z6Mdv@arA4Rto=u9^{@2)ae%D=Z(-Gp?bcE2Rla#$ijh*l?pbw&IQE$K8zBu=9icU=4u1ZhvFhC3)3(?QjVD+&$j@@HLD{JF&WE)0VZvBkPV*bQ(n?ZA=D)GztttcnavUt`{o-C>5omLv7c&C@!@R>NXvkn~lpJIkbkw ziD+EDj;q-x?5(Xv2qk5=8X>Fz;Ah3BT&1S{RZ$AF;v9rfQg*Wv@^s`sl?|Gegt$dQ z4+@J@AZ(pxR5s0C#3FxL42k>u<}?J{A~L5+)Z?;&^aK^i*S;kDdG5wwcyMhu zgt$7DoVXAgdqVg$?rN{y5OmD+tDU*K!@66RtEvaAQDoSio|W zqOq$uOhqK!4F%0yRF6Cb5v=*1j;`+P99)2Mw;E0fSDE4XrTRh|0??{(2;6NiWDorG zloFI$i3LO98jvtus3md2Pcb54fyuaFW8^Jf06m#3R6XMqMn`wL-efA?lkiWYi$ zc&4{nBgS)sTO3c!4*MnEoHOHTUxn1tzOtf~Ad~jBwXj2ZSHw{&SiR*IGpS&m1SLAi z#mM|B365_%Wk}&j_6m8KVXpjXg&qFcR5m%Jr5JQbGco9pVwl}6`9z5MsC0&%`9qot zOoxmw79G--STr{|aCN%SrU7Mpku|DuPKm5hjdMz5jWXdZo316XGUqG^L#;WdFLj|fj}wddJrv@^ zB8N~cni%J#0i3i%jzox)miUPU^6bFyNjSZDW(#o@lUy&>->fC^wp{~R7MMr6YejWr zE13+OYy4DxnaeSyk}U5dgp88=R0?5bq(;_BO$UfkLU&F=2pOd*h&V2kF-xu$gXV*S z;+f@z(Dbk?vW3q=Dey-wy~z+R3Hnj{$Z;YdT!K=a2ZJ!Kum`*>I2e`)5z_PkWGOsi z4vA@b0X-`?1ci=NK9U7@$g+xXX;jsS+=UQUHPV(jgbC&)S&wa6IkpANG6o>SBJ$ttxqoCl|Ksu|pErz=6^5a)&B?jyZWY7Y~+2@DoM!G9VS=08kK7k@t+PgCI``!ES% z;UV`h3E2RReM72#vJGk-fv#R#!+8kVg3Kl*+~|c+el<_k4`0TE3xxwrr&2Hmo?xMgDc1R zDM%}^oc&}Z)Q0Lnr~>4)uELB<$Ie}=aNCYDga=XW9+mzf%LBrLf>@4s>Y>%yT9EA>ncdxDgc;8aw-{k?z_^i#=$GbZxitP%Osnxmn<+#m zfW?d_hFOgz%u|CMrDo@9&^aI6nhM_&Q#NZrlbXG@8s>Ia!)>YXgDkx4KYC2v{uQp~ zgQ@T%vDFCsh!oUrHNrlY3hzuUV#4A%_Ek9wZw&UG)htDEXDa+;>;?(@WGei0YS9#w zl`61s*}mpd{lTYG;b-loxGA_)fAHB<_&K{N4*Ogx{6an57gFJUmX42trg>i~{Bpby z!hTW1ms815%ypz{DvLhVc$rF-{de$b6uN8maQKeSx58f z0a2H4ro!*qVK^lX^W9YV{nVnD!7z4Wd)n(_f3eipS1JzVEBU?xYV4Ke-}f|3fR(p! zv10K3RQRZ!0QXMVqp9#Gb{%d~KS_l@i|^Bc(QJQ~3V&gVSuo-^UGw%0evt})6`8*P zEUYgWK`i)HD*R1UFv1eWBtVU{F!)U>{GD$FGBO}9V`V_~ZIl5m1!X`xdQ1kiqyH`y z{-N<6FUB%{%NhP575>@o4ezJ0Kc~XK+T}Xzuc`3wo)PSzi2Cm+vyrZyTpHok>F``) zI#}(f=cdEgq-#bn)&>^sYtrF`X&kw=N@PYT&%pnu6eX9Yy+P6ZSBu9}ANL}q)Azl&>^=hnr zE7+@j`wiCTtku5dPaMp#Z%22RNGRcL#W(uJ?R}$>(P98aZ}a_?a=wVKbbo)Jmzf9O zYKCypf9T4$CEQ5XrJEWqbxdGnUB7JZk61Pr@-7OVd1Z5jqt@Bw31xFx z;8p{|sqBrGiFFr&=!;C7TBE}douG>b%`8m{p4T zKjw$y26=)x=~@`Pz}^;Pw}nllz8T%nMEs7L5Y1aGtWJm)R#)GQZfL?GL)-dh{Arn0 z{@IdQJ-QjQdUR7}l`YB4>e1sft4EJhHaBRCncXp&>6|XKDKoow?jPG{huZtzmInsP zNXlF;6_IBig>wc5^1WM?J{l(bvFgb~TSj}{^sl%|?uvBwvUK(m`glE<=;QUtWFN10 z8XvD4wyBTT_`5hM&Ue1$e5WO;r{R1PliJfmL?06d**`X`zL<^>uf&BAmbj?J_pih; zPVPZXUU>^4JA^j&jvrMa3FR$>d*v;Jc;zjC%=c@S3325u_=Ob0@)o<}d)R^G1DqU< z^J*|v%dE~>h^bnJW1dD1AYB2gmPyq+Yc{&NIqw%Ps%_NcBwQ38XjlVYSBNWB<`9-D zt8LVg7?A9zh#iZ{O9*i+szb=4%G5rpLkx)3*o}g!l};SwqeOhNirh+RY!Mc@bu67|$Th|`iarU#UmOJ;aMnUx&;d6J z$o#-Ci1winVi-g`6n1*^k+A)xW~1!nXoC=`;}0FF;}6{>8Bjqm6Y_`TYx%=| zUioK}uVF|2Abxn8B&T3&QgRC7@RT+gPh&0tcG@zV@5Zi`I}acR=2#Ox-7C3N`N2U#G{8FGZA+w12qQZ7eoki zw@yLQyK;hm1TIY70zbsK)WN|Hk&h%l2SS{Wq?-#S6cJh(*&!9=im-6vvbB}aoU)UZGUqQL^K7?Yx zZ@UlntxBoC)az2A_nbGq&z`?g@6*#CLDzo;GJUl)x0?oi;*RoHlCrP8%WKX(J@zv=Q!|HbT7921wm$ zBg8vx)T{Bd5geU1{9#WU{`ur-lf>9C$>2Tn+7+NGD0 zL2^8w%de!BId597?}XKnA7 z5c*lWwP{?Fpaqs&t&JvQ!Ox03tSQrex&t2+dRUvNF8uV|A{f<0EMR1riR!W>F`qt5 z!cenDDarB{=(A&cUKzv`v=)EH=+S*Q8=i;!_fC~7gjrv-54;~j zUW72Vn7B{XtMFBbR8wEx2_Xzjb9*SH8m=?qKGo$^yb4_hg=u^t#(R&u+rpEETGe~_ z40&2rAx^8xISZjy^#CYxc3U~NX>()1DJHXPMCxT}QD@rV-7HAp zcj~BDTsIQ=NJ(mS+z)7G(* zHZ83lQQc4-tFG;N=Z^n^tITLet_keoq|TlwL+-Sgg(R}jK>P>#)nww8ScG_4yM*|a zSRzj?HM!t)sw0HB;B<#DIK3Af(Y*R63`~)mhYLxkxU7MkX2c;43A{wd1YT}Uf8?5Y z%s7ct$lhU46V-$S;Zq}DAzNLB;;EXR3g<0#=L&@E7lx+0LjW{glg!ne$D&9xBC|FT zrx|ewH6zZ@P5p;1SVXY7ThsrrXMdE8htm|oWIRs%6vAY;zW)<_vDCCAJhZkZA%`k` zt@UaU!t}Mx?h`$;M6@i@h;Ri$oJPbU)QGq>Q4b)xXNAvRv=9ocomOsLJ-TMg@apQ8 z6+#AGu98l)}6W96dxSy90&(BMUsnWMJmx08NzKjMJ?m2l0@tnMb(8U_k7DdDTB8V;N8+yWuP%7KI3jz@VhQ#Q}}Y@AvU~r6+^QZL=7(wx0(y^?u(R3aNOM&!hmzPvOOZYGs1tX>-ld= zb%UvOz>gn2y8@-UQ3SL+Kp3zs9QkgP^i|84)AeW4MoC|>kWSDEi>0-3m`Q8HoD}ox zU;E`q7_enzXag3=)Swyy*>2#AFYk56!3u*P{$t0MqSx*7}&$qprS>b`jsYI z4u4uEf`2w)A~N}BwD5#uYmz4%@V4|MQ{eBG%o6nGE^6O`(uWe71I0pduux(k6|5+| zJs)V_f|4-o%(kE;END_+`59|Lxw;__z7WrXB4pwg6p?!t6d|4k1xQ^Ud?Aic;Mu5N zjTRKaw4f}&2WZx^O&hjuq>moY_G=n);S2F>C_<8LC~ER-C_=nk_(B?T;R|Ihe1A^l z0j}kooNqTj4?>)8w?pXLooE9Qz4P$q&IqB+Wc=JFg?yCT1fBMR6Zqlg6GFyDh?nSI z12fTm&A>w=h+yWo*H?-k#_Kwf+K#+|F@oS{Luxx>NNv9YBus5*NjxKnNSMARZW%D4 zQfP`&+o@-q!Wcm;1&tu0s0&RcCNqtHOK1jpGn<|hrTOCx5b|6EC%SLA5T^O7GlK{} zMFtamHhD9I&|u;|;X;`A&wawl5(ynbiu?Fdj2VRcJB}ITEqsjDMuCc)vk>~ByEzMC z(wyJS%!jla>kBD z;Fnp5V-XyZoS{I(jz8cn65?klVEj1X#ta3^HjPA0UWNh?CuJxAT$iChgj1EFfElhB zS&u>MG871D%uoRMsKyKhLYbjJpEt5FLR_+6htLCqH9I;-jyIu!WZ6XfTzva;CRITc zHb@N&+MXGl0>wiuy8-Vv;5A50unONwB!B1_Mxw+BT@{6#*^92J)wyv9L(beZ7THvf0lSrP)jSoPKaBl6PN@*4ahBUArneDwvh>;)MBa|Hu6$D5TJNr&PEdpG^guUUIM8D zF1A_;URKz}R#SmJaG23ll<-W9pFLr>XdtLE-e3o3Y`q3Isr6j?1Ym~+vD5-gpCHVn z7MP0k2?JR3d^7AZ@eF<3dR*$5z+~w2(S|~5xC4Vs41Zk&27x47UkGvIyQ7$79icg`x>XT zEO?(%`ANHEFTafW`);?|C5PRvoPKUfd~v7@)7Z%Ehdh36k`$gOIU&NS z&>NOfJCpISWh6H%7myVK5wTOCH%u6IW=jeQ3!0RqFk|(G-={vp^Sl<~=?#TUTyH3H zCwx$~BE$(F^t=XAr#BSh=?&GZQEwN(;NQC z*BjzzgWix>OmApO90ORyIz*DJH$+pUH&oB~2iNEgEd}+4qNtM%i8aw1KGL8!6yoU( zg(T<=g?oBKA)ek)NQ2%`XtLgr`#X-_@W*_NJiVb1Pj4t>VtPZ7dU``4p59PMgWgbR zq&MUb%PsKFmfXUVdc%$^eEE`Ht&>cM)_wY}`PtF7R2#jO$^dKr_2&zHEcn-tKYBNB z-Lj6kp@v!h_K51{>d4ya$eQ8m=*ZrC`sd~MHXci$%0&E1mD-k8o_Pq)XPCb~T$ zZnS6BNoQ=X9)H^MkMRzxX*9!gN#4q9cSJOZ#8}bE8mwsO)I*aw*m?8J+zm7$5dUX1gq>dbV5e@ew2w|?O`jVS8EvnIdmuH2N-ju-tH^U zwFq%vdF}v^#R0$a(l>Gkgp47Hm3s=*%cM7jW>5LknC(jNE9J~&pMsxp2aGe5b|Bj& zq*k|!Di1-XZWmvNEQ2zhT|FI&Tf7X^dx;=ctBYD0VKJvBhZ(1)16v;qOrEI`Vm?iD zixL*|X<~jfbA7*zod ztGX0s)O$}cN5zPChMzm^4l8Mh1d6^$p~syN7E|as%qaB6*&UYG&Y z6a2iLAXlgnKA#G|XeY?s0agsYm0ICYQ{e;g-C-pT4f;ST{JJIP zv-3E2=j*BPq1d3p9!iA|TRQHJu!mFOw`^$>`(D`-c2Pv}E$RAn^SBY}^}SU113Qw# zevk@(lv*^-=CEjnM);Afuz@Y-0)_oV6*hF2xjDcJ0g7up=C7j=JXR~X;rjkU1vhGs z4og^Q&|j&322COSX@w8|*+jG0kzd`ytB|cpUWLSS*{&@cEi;@M8aX4!|1lR?esx=l z#wqYPoVXBiSt_5qsVh6pIo*3cF?+f%ku#}fk*I3Bp06g#1s_kA3*Khrf;VqdxnP`} z_>&R=I;{xM*(%$^tk&5cW+yc>+rt!8Zz~Pri$$aAH(4GwgGvozG3a(Cgdq&R_4Qln zc?Y7lUe>q13T3GV8G1T$vrN5u3{GRXhT0yoL2W3)-=^Wd2buPiroO{ZQ%}A}{dNxL z8!pF9YJQl*nKFdq1q4BpGbNMnZlUU6Ym+Q?-EAEloyo8LKZ7>aGj!&z+#~y(HuVgH zc{nJ+=FnFe?9Z3-c^Dn;%1y(lxpUIlv(nkWrEnH}Ht{UDE%_|C+METKZ_~4&ahE3b z`X6dv{~1?%{GGF*%5=5IDRBsKwZ|PY@!I1Wz||h7m?XsI)#M8gBvyM|zBoi^U~uB4 zdb!%;N*-dnn%d*>L>v^S-o>T3!sDE{5Ska9#3v-V@VJ^>;c-q|2+a%rX$E+H@boBj ziB2IxTO6efC?m>T!@+P-R%g2O zsIy5zjm{1^46=WHu}ezzB3~NS26yveZE$UoLzswK9;#7UOZ7Z9DwFBxT$xO_Urgds zb9AO`j;?d%863Z1l(7Gc4Ri@|(yowGluJc2n5AJZl?E?vMm354MNw=L=OBc!N#kd- zDdtNDSD48Lef9{}sDcSNX0A<$OHl2`rR-l@8-t^CIVMtxuZ!zqaTOi1`WDoeQ|e1`z#AmT?=M&$lNDCQ1C z5kfspSdjwad!fPx&*CgzkRCt}euEVZN zh1c7%o=0z~R;j?F{4DzGQ{heZW87qGfZzsjUo;O>1EjVul#A7XLLl!-Dfl4T7s|Bn z;d>tsr=Vlh+VLjo2BK+(b9=KU$@8MEA%=T(Q-t!G5u|7Y(z;Or{O_PKTM-UO0t zAS6rBqX8LLh3y4DjPxQ+f&~ltQZ^b4Nlb#sCw|g97>Y>mH6YSKIwI1W^de0~K$bxy|#f&-7RxFsZ<-FOtZIqWPsv3^p zIBI+D3d4a~*I0rzbjVhu9T!RZ&|9Z}4}>xllAGjC>H zqr=BQ*k*z()vdMhItto&UF*IJ?O_+*%$c{7-%JmR&S&r5&Y5=|U-*3pdpBoxja?Qg zY}dTmJuk=2!u)yj!CBtysFL0DX7AX|kiz!X6_)zy$XQ{ymU92t&5->ezJJ~vly%)D zxjuxq*qW$+A>Y_Rd2@(+K1U$zki0o8HUeRX<;~$syYBMyVFQQf%~7#Isez+(g{2>q zuw(M(xY(f93hN)2Hz(TbE=lH8F#L0fLs6-HLH41D1@+=aSd#56wqWVrVhb8NYmNM8 zPF0Q5);*U^ZoRGHdnx+{`Z~J%yKqTDcVAymf9F6?&!m>u$2J@{lF{r(+Z!xnK=12l zwyHatedOXsZY!kYMud3REee%F-h14L$P;lRLK1N!KvHodLK1N!s#O~|BA9U_acP)G zv)efo@65%H3-Qie9^q+AIRs`b7{q;9Sp6yaiuiM;Ba(%MbeJx@+b^_^+-%y6KOJ-K zpN`$-#Vd}s$HidYWr{ z?O-EWVbNtq6sQqeVbx`iY>pd(#K}2>bHB6byWk`bfFj<~Y;F7C5gJ{`=u|;<9f-aK ztLry$0vv%`B~jIP?VB>OM$B5us|4GJ@s|EQdyA@{Iy`kn z=QbK+QFVN<2>B`FGnHo4J6K@NsOT%_r4XMJq6w!iAu^*f*?;rQ!Rb4EXVckpIa^o6 zwya{9RQGVw4&@SId*sYsxwh`5rdaLmRf<*BS}lN`710`A9z{#5@m#jQ6A^vuh{eEJ zEfUokE1<{Xz=rD@B~4JCyt4q;LmbEs4dqDy6Vvh}vEWdh+H9n;BTC4VBC^N0xU^_p z@KG2hTvgpTh4mS96qF}L5ff=CPZHxn@W`Y*$smWjSahU259&2J%$^7R8BBCI2OqpLSp2XDSFIJ}?`3Os)?hPx6F%H>Vk_ zx#zm)Q=SwSv)p>jT5frtPW?2j42e(!p*0t5;nWZoT65jWPMEdk`aw+!X<^aDL6Rmt zk~w*je-0^6ZdOm8+^nuV$&ze&aKBqw^$U6Ls(z6tRQ*B{ zs(v6TRlksgs$aEgRsDi_lh$}@2{+yzxv;SQQlPwmV@c@xg(P(SLb7%JDoW`3h1BZ$ z0Z)i@{S;J$cwN6osOy)w+=W&${LkBg*nlCM?Q8!2p##}gUWrN z-KyMCXChqvm>UEe6$dATKK>F3eY-RUM1!L&sK5#OwSLrZN|u7D z&`VkBW&pRP!PGbC}JE>5tQ==zE zVj=a$!a^fK7*R{bGYUQ%KsG!h*{jb6@Z4KM4C0pS>1Tr_k`-y_i99AK2&xe)2#%{5 z8|+OBgq{jv5axsNmCah4HeGw2^*5bLxmYC^C}1~XJfQ@KvNajF`zzNa*Z(zXGPvAz z$zzu*U{}Gsq49(U4z&Su!nHLa;(9VH2iGO_$5!a&9H@Q!8wJ-zLB5U|8wJ+YFV3Ki z0yy*`$T!KLPucEl#5iAh_TiPf?r-Eh`@m(7Sc+N#_3_hKTsO9LmIoa%7My~dzy9`xf=OK|#oDfv>n+H>HN9v<(LJ=+OhnZf6k*3t}T?Bm>IK>(*f*eb*k zzc^Uagg?ZJ&RQZw$CC=Mk%6@zM2A?u78O|Qf%p*00o^FOjFn(TfW<(K^UNd+wt_ul zdU;`c%6_2PF>mg=b7s%@9$pRY6Doxz0agRG!tMxz#o)kv+xL*rWUI!!ak`-Mg)dHj z2aL|`eO;Z%Bsd8VXJ!trTXtlmjC#-*c-rQ&{M_Y3DDYfsJ!?``<(6PK_j}Nr@ z)&ufY+!eVOoqq4kbo9F{+tKf2>*#mXhw11y6yM&L8X&xMT&D93!-{K0fqJvLj(n|G%F|octeZA2XqTHZyz|XxzT$8`g=R^k>h5i_MZ0c zPTUmV)jw&6`7>b=o3aT1hfv{#Ew@zu1yA`%-#+jjxcI(4{fg57eyHKTe_$X|BHUL< zBHUL9!+qsoICZMmO)(Hag^5^SA&FRDAsLsR2v5ZI3Q5HE0%=Xg^$PKEz0}4CVO(!g zb;k8WMK-n<$1P86V|yXtQVR&0O2F7&X<8K3Mg@%EPnkAZG5EvDHvF@W(V^HrW{5S2 zrCDnbak$IabcHdQg<(l!8d{zH#bHU6)`!M5Y={`>89-ixPJDHp1Kqv-$aXZTW%m!H z*^jm%B7;xwYZ(eJL8%TEa+G<4Y;?hF<_)sZ1+$qq$VL~;E|(RswDb#RPiFd*M4BTZ zi8Mz--g}xOktfm|3Gu!%3>*NGN^>N{%Q9R#RI4`4kzl4dS^)=#gU40xpzbLq5)ellD$h0sq%5~WAFaD9s6 z{u3d)v^uClPv{cE9tfdJOfy2fO8hwqlHO>Tm%)XRA;ISnm0&e%q=y*kkNE8&2`v{j z{rwEg7cP6cd)Q}!L>448_nClMkUk0h70!vgXi^ts%$hcX+C4hFh=wVVmeK=z6K$l! zZLXX~j(sU~ry+lYcy}6)(4FRU=t1l3S?kYPIJge@ZhJPtX|}NYsFL zvEiVEL@qYmd;u}Bfx9%8_75QpbeP?^wyC?jx36L05a=44I1_$$fw z?GZL1GYXk3Bys<&5c={go$WN=h&*uztq>+kh&-DBwZpsT$C3F)$dAoW+O`MVztY&* zyaP7)fu8Q3PF$`IC0~0tME9xE^NkbdtL$V~@DuMDM6InL>lx%#p}XqDX1oi8)szI%C<@l}4>=SpfGUH~@Lwt}qyQ6deL7 zkosO>N6Q;1=Hw4_uPY3mKZ*@O3)KAyv#}xGA%=D*;V}Kc!V@2sRm_Xq ztD(m&U!6U;BhF!Fb%}LjBe}FaU?AQo|!QgX_Q;~B7!p@O5(9m8! z43H5qEJH}<;0GlPo97b~}e9~8ZWgu^2U_8@xs@Fyn7bob|wUOrRmdHGDC z7(8fGRmG$8OYJPl_VSssbT6MN4av~e#y!FRnHK7LjZbRbui?9g2D;jN;N&yV1*Kni zUq{D4JMJF3py9iRvYP!!3)fi#dSAlzM>dD((Z#fIEhHga3wiItwa62~wUC5x4J0L8 z3rPsqs#Pmo3(n3VdJG4X5U_>|Wx z^YTdD9HOF6n7DcfKNB*12S!OO zmO|8#ctL^QF(S!MA&R03GNFs%(kcK;a1!pb)>aQ&}&h z#snxdG6CXeJ@xzlcP79;RjS`?Oql=`I{)iv?|>@3rw{hP-k7C-&kwf!)&uiZB=_2z zrvAG!P5qZ=oBB_&rv9TpOjG}moNMSi|4Ln?=VvDvQN`j<-e+rz%jOznuRH2Z$gPiXyVzG^*-mT5sY z@i9}^pTY#IYtNlK555jeCVpl1T63CRYmWUlTWjLn`v|W#*sPQ81s4%Xt~Nx5T5VXK zTy2OXR~sT(s}1qwYC|Ns+Ei**8zRZohP5(Q8^V6I!H;mY!Jq%P+GMFR>DcsY!?&i= zL!b|b7i7N}=%X@o0Jo+d`++q3(bi*T@acUmCf&|g=_BVP@K!FZ#}ty#V+wiidQ6cg z^q4{tdQ2cGJ*E(U+M#MiwQBX4f~m(;fR_wHF#A#D`8&swP-6;7s4<0Pt1(rSP-6;7 zs4<1qs4<07jhW~Y?fmbsO9?Hekc1XfNL?+aN)uX4A=F}aAjQEaA(qUaHy42>3)k3e z_RN`c2H~Q-2tQXJT(r=1_S!f=RGFB(KV3*diK%95m6(F5#7vBh7Wj8LwvEGFh18@8 z@wo~;!d!)kI6$T=6s^}L@_h@THn9ccD)jWOYO(Rb*KiMk4+I3&_~0AnTagW2^}eNR zO_8Zz2`p(s7rZUZ?}?7nhP`VZ9iJX1B4js(_(X&rp_))GbKea!$}t(Ch?$H~ePYjr z(5gNbJuh~&x3lX2Cj|3xg{kkl5Z+wsV=q;a7nepcjLd2%ct`W2WY;I4WOsJ`N3f%h zVPGU<7=`@A<|cHOT0y%aS|=UDNMo%Ek)&|%m|auY-b#Qm40n0A>TF^3__K1nM%QfA2HO1r%=T>?*LTTADeAEvLxiF(9B}4q)Eya|k~62p(|<6CPz9$c8c|~k*CdAd z?a4}rN|YU1ugqcA4y`fKHZ3}sn{jVwDsqZR3{{H!6f!)c6&jv}S;O-jI8{t(?0nME z*WQ7EslI{EfsX#p&aUqM_HH_}tcHJ#!o<^Bd0heS9`#HT7R!j}du1~sMxj$C>@K1j zl@AddrSHVg@-T;K`hO zs#|LmaTGL)xYlESRj&10l!`I&f*G;+b9V2xS zJ*9MvL%UBfL{SYON;16ofCCVQ7|0i5gA(?F;v&8K1fvm!Bg7FY8mXz^Pj`0UpF>(q zrq*+xm|E9;f+gAR6H}M&J~6c+UBH)Ltsm~sn4S!yR2rWeP?MCw! zGWw6HRz&_iGtV}_TsK1IneW>MJo0^Dz5OZTjFGG{B53B43DOgwNZ@a|+N^ zf*r%u=6;?qwYmDmlM86Z>+-U3mGJB|4u=ZC|H~vO@zm42r|fc8*i9MsBnMJ35N7>o zy*w)n9<=-A6fc>`-bb%fmG7rqCTfTBfv|&eX7PK<-q-E2_o3Emyt^zsHBfvP7CSZg z*6pbwl1!OuMUS;d26dm3=@rc0XPsTGWD1}rdmpg?ey_-lZY5Jkl#onCWRv5?r86s; zqA<+fr@C

;CE}D4B{P=G99vi&$XYY~yc=r>QGh1aI5Zoy5*JCCuj8^KVKRa_k`q zdrUCpSxP0b9PH$xuwUlPc`+GI*m+8#;$=7v3QjHYfmy+nTpvO(<+m~L55Fx|4QV9Jtg!F0=|3#MB(B$$r=XS{M7r_EA^>o(xkTAy06xrs4TfK3Wyt>Rh%~^Tf2}cvX)H637wfDYsHMP#idM^adTSB~8%h3b*6tYE6w(U@A6*3t?aN{eT zU?cce;6GbZK``9de)Sp|3Z47Po$vM#vSI@$(fZ#X!2 zaKW@i^A=3SP$*%l=AiEH`71U^n@-J2GGtfOkz>hFI^D)PB5Y2mSSLe;P_e!S0)Qq? z*$KgbgEJBSGk)vO+TH9+FFMfl z1q@izcq!Kl`Jp6b%rTEpQl>~$gt*PSp+-P57U|Ar7bjFPs~(_nflV1Gp(<~&^(ZDI zIrZ{(#xVaBDAxb^RV?%PUMreYlg`*vaGg4i3+mBNCkydPL3~<%UQtys)Ek=9nCe zPD_6iV{Dby;25WA*LSLB#s#6K9h_#z(R5#MQgpR1c_Pee+Qm_iou(i$nqOQV`)}C3F1L@xv5j<%$qT7&J-+P$aoubP=lZW3Y&2Pmeg2DAyzVN`-QQR zqDnqi9cdTFO{Z-?ede@Sc~e-kCVUURKJDLVNK#*}aq0VC+d`JCzc@Fs^}4oU5%f3S z{yQyie0sQ=`sfS#;K%zC^w<7R7xZs!N(=fxB0--&B0-Fzl!`M1ec?$#A5cor2a*!> zg(L-iK?y-0NIgNHMUf1LUnxN!NF?aHA=iz?0#^o56lK7Pamef(Mrcfw=|`Yf`Y zq0oI>Q(Dj$k`VNPqy&8-2|*u7O3)XQDd?jlCFl!D2>L=&g1)eXpfBW0q3a8IB_tu} z-`-Rs=mSa#`a-eL+Ylc2Af*@8Y<5efQt zk?AQxUsyuW7vl3$kfA_Uf+W8nen1drlYm1|3$W+KVxRwbeFjA6WX7J zJ8aKXCOj3Wp1*&_BfNiR0;KR}dnM2o)3<}j58BS)fBo&B6h;ME51ZB`xymL7aInE0 zG!m64B!Ygj%QWFdHFd#i$d!F!#7N5WuJx4y=*E#!Vv?2RM@*gSdjz88Y?Bo_%N*vU zFA7w@Bd-sWkRKDMgjz9Q9ip5jEEMt~iM!ep11sbwYfq#cAJ6rT+7r{czJ*!Y{!{fh zKiWQdBISK}(RfK#b**gAi>9h}taxK{ZG|pocYuCc704k}=;H05zo3UxMuoM5UqqL_ z@CBg4+Fr=VcquFEsaD93y#O94R0264`Mp=MFJNT&0@x|Mf#oe#g&DuEioJom`39g} zz9w;`5_*l3^D%Sz283BTUsHl_09dQb+8uiXLPI%U^WITfIbXFYkBbhnJW_bqeFHpo zi0)P=-=jV9LYS5BIsYqRoTDx32q5O)8{JXfF>cLf!71W1K_R*cIa?+DJyn_uMZXOSddEBJ-W zh3)tZ^0fk+3tPSQPedN<3z=bijh2Gl6=--;UoKRJ>*%uxpMbZsnx(;#ls8w!Cdqx| z{Z)B$O=6M=y(Vvd9pk;QU+2wllC>uWzsZ~5rfW|OeyhaRp7*FdF}N{rZg#c#K7`$z zH@D{NFG-&c>2A%NJ6&(c3DvzbZ+@4zYdj*!zsVH;*Rx|Cz8qkLJxE^07@J>J;9<=PVT#ro4ID zwaM9kzZRyvc{agAq0i>cbFN36{lcEhn-`L`vGU~2OX=DZgO~E=WmlWrM(v5g%X#yv ztL?E@^XBy--T<8dRrmG0dCRp&UI=?DZ~pEW8fCGwgP zB{;BP4smVr4Lm^Xkb*g^5ML;T9#$}iyB_fk2s^xBj!4#CDLA5Fj!M^FDLATNj&Zfg zZPZ>VIHq8ZbG1EoT)~`BsQ(S{iU8F;pqvNy?c7MS<=;%0l)qSvF9xh;)hChz9 zr@Y-j1rHa@V~&_i)hYb3f_Wk_RH084%pVHyN|**~B&*iB6`<07RgRYsbYm6ExP(B( zD^`o-drXs=hrSZ^KCu)9DoAimfxQDIR+}1BUsS6?MbXEH)S=qCnM%~F8oR#W{}V0h z+O1EnSlwtC+$H2-*7CDqY^?RIT=j3c>Z^2_xGK|S;*4yUiG!`n#6BOo%Y=CHzI3T8 z{io|vA8bzRQh`LeRQ`yxkJP2AI762zJgG|sl+vXFN$FCBBz38R61r3%^>nE$igc;? zmC~gGiFB#_5silGEEQ+yQiX@QRQ!nPQt_*vE|o=*F7=`2v@TUhLYE38rArl((4_)N z=~9Jc>QYgX(xnPX=u(BGbg9A;x>O+vU8<0TF7@H&8eJ-&lrB|BmM#?q8M;)FXXsLe zCv>Tg@KGsUs<4DERY*dY3gkWMQdKismr7Pdy3|L>^pq}DSVEU7#!E0c0TQG$AD6G$Dje6O77>?%$)^go=`G6M)92-6nu-RO>b&H03s-+IuN?FMVVp zg$4>XPdiSCxQ^q5%Bu2wPMQ9x6~{-N5Qq{h?0Jg+>*wz%jMP*szxuD^KpKR?uH| z>eN`bAndPT$tuC+QmlG5KF*h5)v7Tz3Jn#jPQ58Cbf0kNOkq~7x>RAGIiW=lm23Ql zL}5^+-p=8pT?+faRtrM+2|S;#OjzhX0Xj|$)rDRa?h}!)PuF-A+>qJcybK7T|qF(rHzXGr+MlM+6ll!Ol?CE*K6O89~j5;R{bl z_z!2eMGH$v_(BpAK9Kh$;j3o0gilsP68`VW^pu1zEFs|w`DY}2R7kl+14+3>14+3> z3rR@$LbBYVRgjeL0oAxg1IuuW7MhapRolwZuaWH^ zB~~Nb3r)%P!mMonUhK#e%2B1pEgD#jTQsm5w`gGy=;b;ADUuq0VW(xfMXLz1et0bg z1yNu%ZqdLp+@gh^8%g%=VdI=+AHEd2MT4})Em{w%;})&5A>5)-UgH-17%?l=#{^)Z zpSELiuSQQ!Adw_xv`B4{**J%#C_FW$LW)R4po9@qU0Ssl{`)iP7%1&Jl08}FGa2r zI_!|rx=M_#Fj$1~r63$bUx_#AMIuL!+yWHw_7%19rt^TnROi#4U>nv0BK9<))(1l4 zp>hOXV$)6RCM>&MIZ@`cG8WLd(nWUls}CQfvd&tWsv3jT*>hkyOL5+d}3Ym?MxW zMp1-x`o0wR83rQ}h^xpuhCTurqfE7o8RZXqrYfnsu6VQ=8xL&cMTe@!WHI)#MErDV zU;I;;HzpozYLgCtumx~DZON~gqIN|y-u8*Hqe8};R@-lnFyAfH3yhyPec|AOAHbp5 zC0xbLpLs~_o=y4(9Yx;xtk`UaS%jlrxu zh2mMCLbUK|_UR1W6tbH6v>gtauKqBsWptk}<01ur21#m?47!fvSp&%}_0q@=A?>Eq zw&;;g)4fy%dE)Lce+@gN2K&vL!@{7R?(QDs^Y7|vZ|@jD7OFlZp#pO%jzM_Vr;rrK zMFx{WLU;t$JoWuya?FT9j7C*A*F{(`lfX40^U(U!W_%aT((U{N>Y_JPFfgP#4pWFd z_2T>V2v5Db{eAwt`KZfaQ&Daa#{aSdLU_>iT@u3Nn7UPlcY-o$jZmh?y2wRxTz-cx3;`FFr3YOl=tWaU*6XqJ>BVM zM`dlWVakfkoD@0Z_TPMFPKqLSSf!09Wagx3!v3k^VrEW?s#(?+mojrwENe#F;&NtA z3hs+GWyQFxjd?5*RE(l%P+qfASr1xICUqZWvq}&cr5hy5YZm!8GS~Wi6}GTd*D!C^ z>SFlY)yOE9JdG!~oRBqxkDFEE%?{|Mcs;mT6a#@(z|w=<))`P<3Uwvy8}m;rUx`u% zaJy#5+U*dU)Y4i?N|6}C>e!cRhLCrCZAUJO6{3tA9S&xAnys^`?ReNa^G?J&!2}iT z#9Fo!1=L?3o)*-)`c4pFE(#5}B#LnXb*`eQI)Ird{JU5m8xXe}QH&79rvmOaD<(5j z@M)ER`%Ua=HVcK?;xI`;UF(=IEro@+?f6$f8tyu3C9K4p%%b4nH-LAA%|BsNQV_JUL8lN7jQq^7_?QH_cYEs9BSuiYU6{+e?~0=j5||RdX{Vg z-xcd1p{gNtk}^uHT94PGT}^0H;U1yJIDR%}y(8#u9gjm}S(o#T5IMO*$ht;kk+1C> zBScPyZvtm`>lfh}&Iekzh#13LTu-c5gbM+zjX-0Ap-+To+m`@YmxvhK2wL5#`a+Hq zvWnAK)mEoBO;nX;^k&B-viD0+mfA2g&v8Q54Wcf`nO2Zw@Qgqb3D0ptR#Q5jD@z#W zCE|_%ic*A_d47Kh;WY>?dyq~fY2vkl2Xp2TM@(*i3AQyGU*@^ZhgnT&jN9W~$Dk{P zUer08rz6fR!=N60mQTRf!r8qkcxWTbVhkf_L(4p`30W;^tZHjuRiufktxiX(s^s;i z=rJ^;h$i#ACiJ?3$?EcYqO18v&ivhRgtMD9|1O=X*cZkQsicFN)m`%uuQvs+cg>sK z83zMiCy3Vyc2_8wx=CJd3SL83x)1BSrGyXLN9xlUuRrE`0Uas=$Rb{ctwTfzL=r}j zd4_EU9@+r17{dr!Eve@H%is~4;ls1RW1iQ9Z0wllH6a^1 zR+rbGbdA}_F*QbBv!)Fk)6x*d38@SLt%@8IIaiX+u#(uou`F_gvnp~-RXWQoBqzxO3v5laO8dG1mk`S^%W3j4X z%vhpo7&4}+oZXwF&o*MrbDWS37^};1<7(P?F*Qbxv!)Ff6APobAeDvDVj?HUHwVXU zuviv(7%L`na(r_iDyFW6544eDF^;#np4dRKh~rUr!12$DD2x;HY}*2yd|F{*F}4x3 zQDW)~IZnt1iN&g}Ti6S4tfbveGet7+rI)EF7Snl?O4 z!ikRrQc+L*8y&j{L(Fm;9OCS)VRVpUgm0bz-%E4z3wRVBN(q@Sn4!92SO z*=Vr3?Cy3oZ7`S`BfDAC#)2{CJ>j~^!fqD~CVDcQkc|b)q+izsgNdFj-x6+{HWtjY zoR74jU@?~Wy1v**Fc%ZwltO1-o;R>4bh;FgFsyW)wm<7R=2BoEqw6g;>+oyt!a*ca4$hZ0z=e zxzh&JRjp$xeZ*AO72K)lFVFKYV^y)iUs_dC;cz0S^j0LDi0LQL$0gg10O1w zM;HR;MezS}J$XdoUeT%&wU2531rb#OM1MWy8l;r66*&1+!91N{8^Naw=2_Pla-7h! z1@l~@>L-Hd3g(4W)lUR36wFJmD%rc$=uZSM70k=7Y6!htFs}~5@h`fXuNKT3t}!xz zjlEGYZxxUv9Qn`f5WSg31pUEV1@n%p!>PX2=>FiHf_Zm{I$sLjEtuVkcAAj)TaErw zuv^jWLCDE0eDoegvsW?B`*mEO_9~kFi*3dls>g&r%D!WG0qcpf66{|zi(RXH0aL)( z#YJ;SF+Ohz9#S-ixeoCK5IU@A4o_5FIXJv%j!0F-;!`w7xvJ#$6nv*g70ofOY6u-u zG{+U|Px%d8&EtyZB-a>U02@20Xih0Ah}W$%TTh!lXHbRR!6`*^x}zuar(m5qy=cy? zL%(itX3?DO=*jpgSZB^InsZ!d!$+P|H0LH5zme<9xkYnPF^u^2>x?=Crf(vuN^nup zT;^IN)3*jQFDsfW5}YG=MbTX4Izy%tx~gcdNmTtT2FtG`G6O$N@HXYth_ZlwbZxn*n7@+-o$*m1gVFJ;Cio zbC;_?t`oYeXzs38Vg2ClqPfpiAltVdy?$_C(LCU~8$R@bqIoF6_RU>y9x9s0I1V{x zAX#3#OW^yKBC7o_4(<-w8ckG|wigt{gmDG|#1~ zt{gm9G%vWSWb#)qKVK-Cmt55ldZ}n$c6_%NEV#seOc#p&ZslseTr{t{#>fIT_IlC0 z;V19rgFAY*e+4u9jiPzm(Ua|j-Y%MVitwtT7L;d+uV6yIQ#8AkqQ!;KZY8rvDg1_# z&2A9vQ8Ifw`sLKb2EpDXvo9gH7_n#jmdySo9KhOJibw>p9G+}94b8so~QTQi- z>Z_uHI;La}cTMu;d=*STykw3j#aAMNN0iJ_t~Y!+gpMkiV-i(Y363e5<5E>u363k7 z6I@lkiLXLCcS6aW z<*dD6!R#Ll&J@k(gC!;N3s;Tr=&PeYAN-stpGm&~tRHNL8^j@~->RmogV$h|7|^YW6pGWn{$A>vhnD@*3O5-g+oke27h;a`;- z2Hx1WL|h53E14Tz%Y0*B!<)FVWNuEdo#4$SbF1qVIYsE!lDR$BDMGiG%$+6OpE6`7 z&~04{cb3dOu2D_{ws23$+~*oC3R*3=uVfx@RD8W(ga6Y5CG(J@3M)QTGLMv?E)K)k z|JybANXb0zNI5{-As#Q8CldoC_+-iavD8*U4119ssT;z6On%4^b`)oau%lpUA?zTj z7sBp~YJHthG;|2Nt()oXbWFY>ljo>^Z5q$UpO&2nbb9N_P1W@q@uyim)FZY$SRSU9 zT5aU|Um4kQd8U)oso73W2U#blJwHSzr;r=(%XV6Jw$rAeY^RydNm080Oz)(;DZtKw zC6spAgcdo2k}mO=@TvPNL#wm{ipSy%dBji_56I8-okSU3$Za(%(nx5#C2Dp9i`qd2|ANgRDy?s?~FKD723l!X=ZX zS;>llH?$@+eNbO%xpmJ;)y*3EN~cYqx5J{X=dCli-r$_UMT0Y2F8Jgyx7hk_u4=s# zmua~!^Q-+u_E&qj{b~>V5Wm_qciz|6JLtaN%1~c#=I0rGy_v3o{Cd4XbS@+Xe!Q}N z(xy*<->xV^ApCSwwnLhINzYGL4bY5EfM2c}2myY$pM(Nubec8#iftu+#A>DJTH!aW zRziTE@K|2yV?SYAjbE@I&OAJvm)ZN_5cn8e`uuPR(4+5T=uO%($KkU4lenS7kB0#L zApCd;@OqAVicxXf>*a;^GKc4vj=-lAPL%_N*VEJW# z3DAv!ch4qQ){(CC^KxN;ZyR3*$*l_m>W2Vb80w8?IakShGw@}w6$X#_(GZ|FgCEUk zNA)G#2R z;mFt+7oqZzx@6jqk&wMG&X19hy&jI&9b(ms8zojj%Ot?na3{NNaXf@h&Y4qVLnL&n z?s2O(L|X7jg`3@wC0AYIcnH}fxqgU*tjB^MBF$-pZ59Vn@-^-ND0EhkN2`Ubvw|NY zso*>Y>&HmQx-ZllBP~^=f-A%CV`C(Q3!Wcyec~7iJ(e?1FzCx|Wi%TR zenM9{`xm(*pg-y+XFof02ZqmV1LNBw6Zh+I>g{mj~S7><3CH=H0-t6SCe7 z^#)4o5UE~vz73dR92Ft!+n|nx5d0XBC)W>@rW#Vdl{4=+mhff%5YRh0^RDX~-yETL zonM1?Ity99hQy2w)ycH9uofH~_IBP791)?tl_l4|O+q$FZoNU$AVaGC+--QzgBs>j;jU_h!bL? zWJ}iF!H<#Df2`E(lj=TY%k|Ti z&_ha=tG;opgscaI|2C;+Ck+3GC-PAEPHr7DWryhtXDpaKeQ?2M)8^u)9maT4jlDC- zp2(X&Ies=d=udg`XV>2l`g7hq!^G9=v=(p!G^&5a(LR$m&%5g66Y?XFEs|CBj6zPnmA+(z^hMDg=I4%- zqxmsNe_k+0x(4~_5IVA8j&@WbbacTSTWI?%xHdk0R+Gha?lj(AJk2$5Y{8u9+GLN| z=7|M!vTHMhPA-^J-3WPdo8c%=EtoS3a_B}qD2%5=VT`}(D2xm3ONPpMs^Tn#F$)^f z!wf?>O18Fiu=T8_26F*L_bs$MRvxytKFYa(B96Q-t;@egXS#2V&QwT3XDWn>7u~oX zT5;F42??k*6+uF4DkPyb6_TMf6`s(V3Q1^9h16(Gg+^La{QQs6nx5X&;LT)qZbF~Y z@<@5On))bTa_0H*Z~Uq5TJxz2Nqnk8_^DFSQ==nouBbfmr3y)WsX{WoRN;v)RY>AX z6;ku13XQ&0{QQskQZHz#ZrqrCW6qo@v$wY%3oU;t4`XYsZ|AD^0`g^AuFkY;oSALc zIKO{zFOgluU1In zs})l7)e4QiTKxQv`D!0;s;<}2S37-&*>h$NE@=7rFg4U_6JowZ&wZ&? zB`lG_!67zbi40v1Sq_2O)J7C>eK60l^dL~>(PsI`gFwjgh{CSv>t_**y<(!TpG69i z3AV3vDp1u4W+haG|CEm89$v|OT=^A97X4}ql_y)Sh`}h)LwJN z2MQWG?S4RB2m9pmi*x1154@4Fsqq7E)YeD&z#EO?-|t)ZPC{qaY{^0rTe6VYfj1f$ zK2(0?B1mk=LJ}LYkcZ#i!^ zE@Qu~a~NCuD2vf?uDq{rc4y}rG&ajMs9;lz#=Ln8X3m~FZPDPuu#l-x#+kH zWuLG)a+7Re2Q~s#-7wY)Hh|}jp6hrrUamXinOBs#w#Wo#W7Ckog!Ch#b;!to`A3p- zV@5q3h(oRovZ7QbueVFkD? zFRMPC9ayO)Hwrkf9~LpZZI-wOcp+ml=AFYbNqiUbMM0{brs^zQ>(i z3XnLvc6MGenu(l9ys%gG;VScrtM7QVbMQ*eyvCWRevTyF-nrnlocS9;Fm<^#L-21( zpe)J=d^2a>W)dH_7JS-Mzbyxuag~vHFX+Q(!al%D2DeCy2aef02R4IpYiynPtZip; zj(15T+ef@B0QXV8k9b!A?x%doG@yq|#pir02Pj9fT3ObEHc4`P=tt!OBuGBYJ+H-5 z0z6E>m8$^bG=x@Q^Q9_IY7X@F&=~m%yDcNe2&25~q%ZgkzMx%``PYw?l+z+iWkMbb$d%*w2wvn^wk{n%N za1Zo~TsSykx;^=Yd2>lk8<)t>MMH_0X+2%WQ;o13+vu@v;Jv`%M znDuJ03m5ai16(tJUkh%3_N<;9Hh|RD%$|jWaIkLJ#GVDSFUj!@I!{~GV$L_U7FSZKy*DcSYqaYv*cRItB zMI7*$^=0u(GH)XgEgV{Y=AJ`AK-kaZ%%b`pv)(LTIM^_xg-c6#uQQi_)whW}BH;kw zwoK&#KNT+=Y#b89Sp}CiYXICX)c`JQhNns-8~~gioKY~pU;|D#*d!$Wg}aqmYrSj0 zrsB{DJok`=<3e{`u!Msz*#nhP6RyIYj413n4;TIl>Qw!oe1{S;!Jf#i1tLq=CRtFt@t5 z>#zdD78&?8$=pBiZVNgRR5*e^ly?IJ+P) zDDy^~T|2wf8(uj0YFHonH(qqlcYN77c(Gvq%7HrJ0R4n;@YjNQg`g7-Eci;nyyhq= z99ZzRg83V#j9U)A?hF1_FmH1VPB{2R*oU_Z<{z#Pj@dg0|0tMUidg!ib>f@09c(ST zD6K}kD*$a`4RzXe1t5}Y?88Rl#s#h)Q5zR1iH3#}F%vm6E-50tKqwr{v~7URmlVzAMZ0)VIG7dAgv*sZLyHH6 zgYQ^;7E@?k%ajOUAB6+-a6)ix(Ok!O>x2WIGbtRX?7E`4!O`;)4PYaK8;a&8Vs1k} zin@}UisqJByTWcMn%f*5pC#>K%$&V&(X_cU2JyJt3%bcJZ-(d`117t~8EFR0wM|cE3Jv7T zh%;bvU=wDj8NLHFy;*?l7_T}y$AHa(SCuhCbdCYrxRe=c&oN*dX3BUg$$-hhTSfDC z&M;&$vJ99X_UP|Lvn%rhjIrvX1tAl5Ro0C0QQF@2ummYH_F_s0%n$d%W(9kd%s$Mz zuxXg5xFe+Ar)2gkLB*8JDO}Q2vyHexFAVl8nFErf%>3&~F{ewm)sevgC38@z?JJe0 zM(=y*?7(bTh-Qy&f`7n4C36UehDUKW2s@-?4s*lhF0rBPgf@R@+gv3$Q+YYU$Fb;t!p9*$$N8=qKjQP1pTovcV;J>ac=s48=R=_# z#S^Q|Q~+C(L1Eh5om%;SFcGVCqT-@0&i4QHtvW+QRIOCoYDcWqvWgor zr;h!gg1C2X9VY9HWA!juXKZU9ed~-J$G^LEX7Nzg85Jh1GeA<-86YX^jF5zNMo8Q` z!xI7Ru_{PdXM`lIGeWYgGb%_}XM`lJGk`LzGa^h_XMm)vGeA<-86gSljF7l>h6AH@ zMgkN=O))|#}>kQpw zfMi)`4j#%nqr!xB21v>}10-dg5t6XZ2#H%~Xy_uFRFJUF2uWCHgk)J~RFJUF2uWIJ z0A*NbM3}J72uWCHfTXN5LK4;)Aq=KYSZ9PLtTRF~turX8vCarfS!aZ0TW3_1vd#!g zS!aONSZ9Q#tTVzgtTVz>))`?b>x{4r>x}S}bw*g)Is-7%IwRtgbw*g)Is-7%IwRtg zbw*gqIs6Is-h@Is?4MIs>f6Is>f6IwQ=6J4*S$i))^J0 ztTV!pnEg&?8KI&yxh&E-N5tg#f0IRjmSTJRsv0#RE#uj8)XHc*+W0>RC8DZJh85B|1 zlC;iPFlC*wV77I}mZhvS7ED=Z0M=S(ESR#+STMsnV+&H&84ISYGZxIS&e(#Kb;g2e z>kQCr>x?B&S!XPmw$1>}w$51cly$~}DeDYCyr(Sdj4jEq&Y)oDAj3KXyv8~MtgdxN zWijgvPnW>5tuu!VZJkkZ$~ptA#ySJ6#yTS`Wt|b0w9athqIE_^DeH`|lyyc}wsl5D zDeH`|v~>nxrgcWdDeH`|lywGJjdey?$~q$~!#X28Wt|b0ZJj|;jdey?$~q$~+d8A7 zlyyc}$~ptA#yTS`Wt|b0VVx14vd#!gS!aZ0SZ9Q%tTV#W))|1A))^6}tTV#W))|1A z))^6}tTVz=))`)>>zTr>rx=Qq~z^ zHZgj_IwL$~oe`F@&H$^m&R8&Iov~nsb;cHCSZ7eMbC9ym2+Ow4pa`2z$~t4gly$~} z+143bma@)RFlC(qSZkfJV9GjU!3^t+El62sESR#+STMsnV+&H&84ISZGeEPgGnPDM zov~orIs-J@I%COG))@tZ&QLx9R%4wJ7PHRKC;+U+IwLG)odGsJ$h6L=#3nWO z`gmbBtGUh$G!6r+vCasySx?j));!BPqvDixMp()^1FXh6BP?c}aSW)j&Va7Q zI-_S~T4z*}VVwa!KFGArs3c~caWAZnbw7^{q3G6ebf|r9e8I)|pOh zh_ucemSLR{7PHRq@xW@VGs05V8DSaL8R6O185E6Tmi5p&;~rOIodI2qbw*f*bw+r$ zbw-a%S!aaBtup{BnR&I}gYjiTwbDInhq*JhKmr4ALy22ZtkOKgE(5bocfB|^YZCG{ zpSbBv()voSiWt`C8OC}^W*F;<*B!w`}$OQgUfm?`DH$kJoWaD@61Hl3_G`Xe2>VwhP$Yo_VQ_J zuH0QlYBT#;LvEqDO$a}0Me;B_3dk75%8h_Y5I2UDt(yivbCHff=(!IJx`)k;HZ3+V zh|LLUQ4~5J$sjZ!V**B@ht1IqgOO(<9T&#H5&2yi%Mh)s)&+wEb)w2k?bRVt*|Rh& zl|AvX)!YxGZJ&#t1$T;pU|D;$A%BTs2tWU4JT9^mvlUw}8QI|F6QM6#%kv|Ksilwd zH5MT^-q-Tb;+BVzS<$XJ7wx)i))yQl!e1_{n2GT1@-Ql^I9eV?XB8KbB!9)26D>dV z11SzPVFgf3AiV*Ej8KRyK5LI~hnM4ki^0oy{W*rssuUVt}*;c8doM;}wPY z6ciqz6NXIIbQR;`BsylG@ZpL;CIlZ>e5_k>fUFwO1H(r{3Ylb9wLNgHuNtgsR*PDv z$AsusL%{6vp?A6)>I4MMu5R07{HdPFJowfXf@>F`PGrLGK~*@_Hlw=?5*1;O>9_O zGA%b{%AFTv%bmwqx%1EuQSQv<)ce|Fs%_g=_RKZv8r(gA?<<$JO*uhxnatakC}?UQ z%4J^XQt~+)GNsru_945AWlFJ4$eZN1kK^-**sCC$gO&^~+(5a$T2ZQZ6N#EQ0Pk&BQJingD@0eJkp=|~CkgTZy@ zZ9jkB+`+kv)?F|-jWgUmN5spU@lh9rj5n=qvnyS#TQ&4;P3r4u@9FLB=p5+l?`t3E z=;`ksn1l!C`Oo&WGiVJrNp4|ycxSXpl0WJWH%Tq2Wu|QAW+ZqL_QfQBE+T(cLw*Ty zoZJw?`(ykfEu_tScB%Z~<3;>g?4bS?3gJ~U+krogtv!=Edb+v?I@>$i2YShyzRu2` z9x{ldB!lp*PTWxA@>Y;RLcC|B?;$-SBL;DEQa9-r*#rmu3-hB#yA)XbbBIJ&rS|dJ ziLO{sZ;w%xsk5J zdF#PpY_0W*LiJaL>cs`@9UnEFMT{wS!>F5!bL`*`=i}D!!I@Kb+J5@HIa}{Ee{f;T zzk${zF@nx77FyP*t~ho5DO2XmTeSHO+aqWH+H>d5TcoA6W%+6~!duGKe5E{k$6?v> zdit?4REOH~GIynD%Nv<>wu-jA%yS*Lyzw}CmA^V0cm93_J>X4b>yDnJvzNb*Y2DFn z0gqm%<|;kZ$86Hj-m%&2nKS2L+nT!wn^vQeLJ!SU+(QfMcpGvijf*aDV#mi}3-tFw ztvhJY{^Xy;GJjVaTjm1Pr8gX zc^4!z3qGmi9Z0!K3*qsujAZjn+6)^`a5DB>UG z4RmA-&W>)M;}J~=_qhtVW;-{wvVX3n*i@;89pu(jGs@jL%08VO-6)0dwtjclTmgk#kA9@Kxry>Bo8-vs7`gV)w(1omT zHq01$Gw+S#bl4Eb&Ri;^hhyI~Oya~hEQCp%GROX998eQu=lOJ7jD5p~ z#vb(vW8^&*e8uQViw?UIWjIbDyuWRTSNtucda51g{v78t9CXzd$0=l{nUy`xSvdSA z#`#^dUE3mz^V$|>dMw-81xWWHlw1(z86kCA7JU-9tV z+>7y1&%pcD(T~x=Ps|=JM-IIz1ljxJqG7HOeaBTz=Dl)ef95BO4-~Ef9O(Wz-WeBp zco4%4af@?)u)5Zz8IR{@vDjT6C+(Ys4$imd>AyVVAIxqe*cXM6r#oL?fxRP(v*o(*V zt+Nr<@}B;#zRteBNii-kzMk(LJsi!e@ve(;LD+RUbA1*U{CmG%>A6F z9}og^TkOpXv-jR*zIl89UEpAR<74q zd{@`NKznb0Pft((z@!8(n4pU@0KIHslCkGwGeFq$IrCx`FZ>L6F=t-QLA=8Zi1Of~ z#WTo@SCvi7e+j~DxJo83Y|u(#1|VDo7w|Pc1ERiR#7vRL8G!z@@IJpV@P+H0FdO(% zyWaU3fasTf^BJQ)i=)PseFwOlM+`g{hCr8t^4SajLCR2;7`2Un8IBpy-_hOK-qYUQ zkEMU0v#YnSr*~3<7tGkj8Gv54Fa_GrUC+r2VL#8CBl8(6p`QUqD!*APWK$5f5^KDb{F*GK+`>tWU%$COYkM4{KPS?*&(Sr3HDkVjW5#`f7stjd?Bcw+w9f0lG;c18T}Hakz&OiO3OA4ufH*Om{{j9W~SWZ1VD$z zGRqsTD)i$Pc3<8+FysVyKsnqp#(g=*jd-EQV^cub<9YLBohk5S-uy8&?myFyZl?e6b{o^$|HV9Iyr?Wi{eMvQfn0KFU=Je45f zym{HJhS9yXVDB~L#mg>RoZAnD*?6SPIe?I)H&eWLQ#s@s-vgq)VZ_V3DS-a8Fe4rA zPxMnj*e<$2v3Asc4cM(<_Ab~xAZi(-zK)~bTh}M5Mb3O-`|19~%uyduFbBE22t%p& zpn_Rk7>*gx0Ruu0mi~TBfxdzEfp$y>HwCtYz7Tv^0spuRpqDMd;wY~j_W)rwa;laW zei=X*6_VKnSO!K}Uiix|(8P^o2!f}McPu7DgdML-88aCYyPPp(2qLO*IpZLff=wF| zic=lL*vH`?mjiTa#Q>K*E{V+rVM_|;>_WyK=;y-O1#@2A@!!JnpQj{xenJRCgx1CO zUP-L_Hi2>|VqUD&dWoG7S@kX}wEYO0t1i`diw|Z`#Zy>A>_sc zHw)0su>oS)o{7x@Vb2uIU$VI2XTe_z<|Xa`<( zm?Pg)nF;;Kg(2o`zhd?|VLv4+OpM$H!~GB=hqLzfs}KHg+V=D346Z&ncj5f0v*zsp zW6yvjE*38(dm6SH`#@?8>6KI*S{A7F=C4zbUp&!dKA}YkKVk3ugada3)^- zpUITpMA;iT8HCyFjhU0dh6yH^Vxt7Vi*I9#hQ5v3K7s=ub8`ayY7G#3_`4Vvg#E5) z?#beUpA+{e=VN^?JWDPh3FITOsUhr|P((@^Lpo(An1D$)fplj5WgkTr|&QvBpo3XNu;9)G%I9 za>*GOMq{?o*>h(vnmujKR)ceK{T@0RxcB%x55S0re685FDpMCWwJw_`{RE~V$cn*h zN zT-j3jfm$NAY+!>TS4x?=5(?%{XwVmP&(~YTMf*S_$mP0uQOR7!^rd#V>!aqS9PVW$b7gF}!mccttLqN;>XNxOJ=|+c=DJ}TF4N+D z#tj#p85vwxGB?JCE9}OSxp^tWy}4xWNO$v&lDVri9D8inKnMQo?d^nSt`kbxcIabL ztI}uP7%pdE&0QsPU#ae@^f|l>kQIabO6K8opC2xn-Ax?TCri);Xc>(!R!p-Ciem6&$^6;%)qjP5E}3WCt8!R5c&23j zlB6pKe<_*gORy}5E}zs}VAhs{=S$`VzSr$BjqfOrZiyB${t8|wnU_j!r@4i!F=b-x zac(j5(rvr)1vESjxJ>w%;w8 z-OH9STy9in_p;fO801MZUf7;xv$vyjSUK3cZ1zpkm4kiDX8&^RWw=Jm!Tx1)00Ud& zu1`H^{r)mS0S+je#jbVkGr)piaoHSF_6|^uS^MlhL)})xZ>I-urWgOX(Wsw?l+DpG z&ImiYY>ssp-wv>HaBSHeALEwjjxU=N%e5N~uSHS$iDh%DYln;!c52z2UiK?5H=1|2 z@}6EcOB^XT8evPy=IpXI8rF<98nttF*_`A0LEudAn< zD?>+DPx~ad`_R#xVhnmXGB~$vE^@u*?j!7?vbm(}b|3XSvHPg+mz2#F5f8Zg?20&$ z;EJ-jI>rNGSC`GTb$M`Y*<6?A!F6SG{jl($XJDYGqpNeEyQjUk3%)e{z1`#ix1=>4 z575Jr!S!WxbBqVVZZ4Z!m%@Wv%jPb}gBf&~8d2GkJh-cD?uqe0*ga))UtJ#DS2ho% zdGJ8lJX9VAfrA~xP(Sa6i_VM;9x9v1V#5{oSlK+Wl;J*6HczFy`Bd3FU2gjtrt23P zny%kN|8zSLn7D7#=u+@>**sr{^NKbs-Mhtmc2HCdo-do1)BSk4Y+fx7gF8wXYl!Yl z#y@TV2asj2md%@GzkkN4zGx|m!JB3Ck94p8Q8v3Y4TBQQ-uY=0WT02;;2*!=pEkio zWS1thXH(lMmQf>9l*P2Xzp zYwCl=y0@p3AyAzia9-%{?o0R~Z{?;X`Z*?eu*p2?`cC0O*rQG6@g^r+sP_rsLL+#* z$^0pU9q*DIe`+#M$Jin4=_d1RU3NU%WS&d2@- zO0*Y<#8Adi!9@Ogb=c?WPC1*%IttG5fG5SbsQHVf$3f zewCr8$9@&_(@F+A_9i=iS}}*XHu<>-JEUR`tJM2k4y%~M)9g6BVveY^4TlXU!=u|z z5NO>fn=u51GX!02367|kV`D54c5KBQpUIMFh8$lpr&MZOo(~{HPN|sFV+;{?dc~Ys zmmz0X%vouMoK-QusI(1(*YiLZA_TiIFZ${K+=qz4_PE#cSKahLFGmNzsF?F(ybyMN z#ax)l3n=m3*K%RS{Hm50KP4}IRWVn@cp>bHin*#TFRrSXYtp>9rec0w8IH9y!vh?1 zBjyACH8(TR&(XoJE9Qn6H-z0#F*jv$BbpgERm|-bdHt6c&fb2D>Dz%#hmjYzSIk{8 zUI@FZV(zZXi@Pi4-ZU@nt(f~OZQsJavTj5BitQSP`*k+~(4FOi`zz*=*pP)iQZbKa z4mp|tk556$aJ?LjE=DA^6EMej8@4yy< z^|Gh0w~I$rXWB!T!H8`fGtkY^!E+V!*BCQ|{k39VSqd{=shBrvnQ=6k@kYhG9b<;D zw=3qIy3BZ|V%|+NNMIWMII=b3BteMmD;v3)vS4s48bg*l) z*{eC)IE3xhZ1!o++Bl+bVV`DmV6)vgB9Cjdc>=j{V6$25+T_L|Y;m(Wq`BV4aY(Z{ zj1^?`b!*RI&F1jtVUhoP`w#=vH_+Vg*_>XNA*VN+Gt&$?v)P>0JS;nDhTl9^%ji9V z9p7?u1YK%@uW7 zaz(SbD$SCsn$0!CGe;0f(hg^#uC8u`5p;BSbakX0$-nL92s+vlT+?i>k1<5p_08sn zOol{r8(QN)0ooWNE@giYteQirUTu{oosQQGvSM&Z)%-l&zn@plk=5Z?r8}{OBdnAARSE_1C@*9Pnp!DUr*MRl00tJZv{=!Ax~ZGB)S_5B=~ zI(kLbTpweNuGE8OzmORdbIcrU)qPo~pU8DiM%%?F-~lQ!U+BH4nHR`PLt(nun@w-^Y>Y z>kS==CiQl;_jL3q3>=?RFT4}lC;4*{6$f0o(Z}V2hpOf=*Kg`kggsU@PlPL#dY(|T zsrOG*%~RFT_0vb6pn<=U8BbNsGcjfed!}msQkNNjsha20%y_hX(xP`}+Dj zAQB_D&_D-5XmwQby#_nxIhLTOV}lo~=G7QWguPlduP=oquUF06nJjsWEP1?o#lM>-(pokR})!XSFeU#P#{fXeJMz=dsUl66E^&r)cKt z2x4cS>Eh)oaCtoQ)|OLx9dg0H$0i_+&&-l^|yYZaupL~Lre|z#n zNpEA&O?OlFX@k?+amORlEss69{n{J0ZhBI z=8h+?-*)kB+aG<>S6TQdp(?zu&FgG_aNCs+!LPp3US1$=TOa@E*7Gi6v`JJ6e_bGV zuDEaO&DZ;?I356~G)#6W$U$fZlg`x+>4JAIQ6%j)9jWT`fW9S?8X ze);|TZ+Z0AZ5Q3V8q_5eQeu3s28_gbnn&+&)V{t8+SbM z(d}2C`TR9!Z{2vVix~T^4Pap!MyPZ93%_e26#xl=n_V;2G-OztT3C{*b^sIy(({ z=9V_K@t7=DDy7Q)E2`^CGtdmU*+KtT96~TDT$)nD*w*P*aGA8*7#`k#j1vg7;U|Z% zQ`2;29J;PJ1B^McR6V&ob0YoCu6|G}jBsw?QM}L)%i5Tx6r^41EnPYVQuvKm(ky#m znyvPrcPrJI*|BPQhO95beG#Aw{snVjNqS^tvOHFtTm|2XYfDSgrOB!4^6@l0Ft3S1 zM--<<$BO`h(JQT)m@bVk=7>=aE3@lM4%%RJi`j&vV!I|yaOlcwI0*v#JKvce#JrC* zU#{E$*20x(n2`*Lqf0YIAa?{PVjzaXY2!mwJnVWSBetH0DijsB%P0N~@0L_%r%Ghd zE;G0!E&U>qPHPHeC;|rWl(q*4r_vyly=55MB#)DR;U zauCwrYT>h;rVWwWB^}HTs1|yvUK*liN{CJ$>?8Ztk5XRU>fn@%A+4_8{aERka(&N5 zc?@%Gm$?2~Ia6Lw*u-X~0B45MYA=O@b+Ph=QczqUxwygTYeRhSHdQHAmow+V1s;_%X%F*%GQ{P{+JH(_f7WFLkSaZrKXW$#BfBAE(TLzm6%+RCqJZ)LcJ1vli=2 zpp|o2X+2&toF1DfRaQ(dqe}#tnPNYP7K8NdFhyfm-{7z8Xlq%S_rEL*wqO2`bO_Y^{sEN{&)HG4r5tF70J95!|NnDHMdPo5QiyLfXSifPLxHP?jJ;O1M)<9{dy5Zna*!~p9 zsw}}CH7Jqfa0II~WC<3k#}kS~^nxY2zS@J?z*!y8bAe*GiGB-JT({rc zjmCP;o&LdIMr46NS%(FpNH7b;SBV9FM_zFI0o)MSn&F1C*wp0*^QLij1bgg}5e~LG ztZ)hiGsF2Vv7_OEK>!~dM9px*SxB4UM4FvKFox7Phd_onNb4}fDHO~Q=ewUF4NpS? z_~PJehA(tBp;D>KmLP$tdB|eR4Ap)zh3-|wZaSDR_GgJLezB=Zh1@RRa@iQ0V~lMc zwagmt0V3mwjjzsRk-RUpxZ|ye?!Kx?M9us#n3dITy;pQ$u!n>6SGa;>eS^JSpDK`jjdfx zoUS3qub!SGsPV)NA^;K+!Ylw`^If2xXoMw71u-6m{SD=}T zV!FoHdYFf5ugC%K7%F?u!mIn`K zKs}7*=|d+c#!dvuI|&Zr0VDpl41W%gIYfqYlljRot1398KuKZ?J1)3w$L*(Y3*H}N zMfuMdh5)3?qbG=yEzm!J3SWFo!^yjrJ`i`YBA$cMHhfC@ZE4+vm;j`1cmw>VnTyj) znfJ?$Kz9(Z_>b06WE~VNZlnPULGSEny@HOnTV@C4CtEmy3*djRtRu*rVg*@%@f?e( ze~@u^>mv_sf9$HQ=RV{MwvutWl>mMzO+v^BRV}XZOD|f)Sm+Q?DMJVXzUhi;7ylie zs2mDGICO9zbfdIbUK!<9-90&u{_5;>j~|9!y${Bm4Ivv)*0XCKgxvbDN0HKT( ze{KTvu{LHlIV8--hQMt1J-wy~ER?V^pTqX^AKG@>>035Gy6xJ#8N{WWka+)KxQF1K z66&p&T(Rw;bJ^H3)IM~yvOMD|-c7r*6hOgRTX`3@sSAA9!OW5`QZlPL~X&adzMRt(mp^GbzTh{(jBK+C5!6H%bT ze{rrgVU)>L;6&6F6b9@AYuIPY%2mYA+zA)VE>TGQ3u<-MQl_b=VFg(wtsF~yA}A`! z{{n(#5`twCf`;`!o0uFwWCM>`5xbrGn6S}yIZ$`-yvkJc z4*#v)_duy?w4ZRHmi86`?r$!bC%g27;F$P#&ghBe6b&p9aE5_PMBS;0y=$O28hoy$ zSEv^nr%@QivILhp-j7{MM&?G{QJu32$1|6xmf;4_(KKf9a2^V7JE&+8wqt^oYI;dJ z*k1Cex@OH)VW4&1EUnR!GCdo(TC`?^2@-={bs&h~N(kmYnp@Od1&1O8jGj`%^kOJ> znXO_;Nq5U^t*{(xbUA2l`M`Ne?*zgcf+Jd2-E?jdfor9-N?uUzI0Xxxu12} zK4-N&&WBxQWe2vOO;3%^NhG}{9w?K$BoMi7|MBm%#HYZeTJ6Rzl%2I=^n_YwmTQ}j z4r(ZfzS^DD{PMdi1KpH!$x4HxsM)D$;m0{OU0Dw)AC{)GzSAgPu-OwiGw4K)&J5zH^Od}pfe5ezy9^$eluKSk#yf)7Pk%oL~b z264?((Ou(TCp2O;+}swjJh=6eOP|LBuE(}r`{<5Mw{QE%S>A95TD)nAE-ckF--Mtj z)|98KtKb?m(KXMUvp>I=g-sj|CE1U|hmMZEwot0U$3@n~QK<$mK^Ej>G&T+kCCuO`4mL&cgXic`} z_>s|35#k;omqPmGXRaPhzf}$o;IWmoSFUKp$N<=YIUZv7rpGZ?2u38(y@QAK zzP6jyZaHHqgr#^Dq>QdvS&-`lX%P84{@i8D9-C}L)=oFGmap7;?R{IXJFVSW1y7cb zm6oqpHkr&_lL_Y;{j<|eruP)b#B92zEgeN?6JSv`opQUTlbB6AMaW6Os%Pim+Is69 zTkpFB6qT0IjS~;4x8hJVO)p^iU6W)do+J-Hz_x4lJb@pcKZni}byEa(aJy_AK1p`E zW$F2APlHHpHcKFdpEFTTdklU?g`#evSi2?)ohIHhF}JN=Bbp zy=HeHurclYPTb!}uoEB{s!aM6>{mI3!Ep-wW3#JpewWkKb%|?dxSZs&)*u=5w#y$< z<}}Uka+-o7eW^-&VVBbs4mex7yxEe|lwVkVnfgxQG#OPB8I*Mrdbk$XjN@^svXD+O z7+AQ5tj;M`=!jFS4JM&wM;R4hBvGr6|K&FJ1Z#(fM+4}GUo_W#%*IQwi>uo2V zBFy#1W=V%#Z-rg1H#Sk~yTW$4-dyQpf}L!wK$WfSfwpmL<{?|RdZDjPBUxV@#|%nD_nbgCjo^gYN_Aq*2Dl;z55ZK) z;gh9P4xXG?J3YJ#!-Efj*Jw(m>2{G%7B@idaUKxp4H#_J$KALqs78V%0Kd35cY%|( z(S}aeP;*Iq+`{1*CH}Ele>NOa?}`GJvy$y}4sCz3N$)Ws-GMhhA+kY%q7=ujFkpB@ zW&#pm*w>AHc}ILXL;^KWYs;ltd568MKgzpVt^Bgow~bxePAaYRek^g5oxO|Y*tIjf zcEHsge037nKxK;-B9s3pnA9>l{26DUPnv3XO;itYB^pt*l%)eJh%1$pwRUDUUqUsP zF^lzr{&;TPwOItmV&%~yQXLcZ$d3v7u3k1EJmjrR?1S6#^7g96#?D)elBq0B4`Np} za@+Ej$A`a{VNCC4U2mbnl8;0p(`Umkxby*?Ll?sH?21^ zg6VppG<_3b1Kh_i*^hr7S*n!AA(Ih2bGhrd z%4I&3@OX>L*T3zo&7POPZEiBI&_{C^7iqVpk&-&^YwTCVyGKE&*T`{v zn|)&0&AesJR%3kfK3VIRbv`8ig3i>I2c=%Q?!Byw{DU`I>xh+jR`&qb4G2D_`LkX9 zcfWB+#{|kbnhrVdyygqvA;);@Z7!?d<}&}2R6EDZN%$<1@B~W|j7+1Snmz-fi6h48mPe_ta9uyErtR3VLo zu`+#st5_{nxLt6{Qh01+3SQr4g1N!{t86vcC6}b_Qt}#2N97b)4^Q!^sto|!z+hf; z1v7u|vRB+Q#Zm8b-d-6QfeC_7&NORPVR738!e4wQ&fBX$way$%{iIH-Im zv7@s2guhGr3Y82uzh>YJxrU8x<3kRK;trpfdSHLox5nl~zZs!(-DtCU&L;XCw)Nzh zw#z20y}b*zLtD2A9Xk|-xv?F3D3pTzrDXnMy*j2Se)gN9qFH!nP+ql93_?U5esn{J ze;o@s*61XGpP9k4IK4lAHc*&S@AH;JG!>07FA*9Sl72 z5g(D`A2+a%GKE_<-@5&bM|M1X-S*obqZE!!!UK6Tt5#B5Qf?hXN01Tp3tzt^>TT9F zvKJ*S&QY?)v^qFfIX0+Bk~afG;c$Wu6AmfwytX*d})GDUCiXBL|qO3l=U1=lJoz+#u3Z=maw!aUb zLM>tE_YLBG9Jac#*~jLXOF&&yr8(9IveZAEtg(8tPnywU0yRIJ(oRWK4mF&N+>9k@qF>v|#rvFJOCjlcCL3^R#~qOldCweKK@QoUsiTRzo8C3!zt&6 znV@mtth+7)!$U^16Nlq2jmkp6+o;M1m-hRx(t3=PnI7A) zVwykOJTt|9kj9!5EF`v#HXZS7qp~B5ZB(}9u-Uq7R`@-?(&Kur0R&Ao>@V%iWmjQ3 z+D(+UhqsBcd_0>dX%Ao%Wu*~oqO>$bO_X-Vq+a3f1zp%uyfnRH6x^IAIT1|KK*$}?Q$iivb zh!yE%^xjb1aPBTijUA1ZJ#@n}Dao^UP zulLX+v|$~JM3LZO5MQNX;BDhT)Mz0ls0iSTgRdFB(Ak74tu9-FgyfUAY`ykQCMvf6 zw5N)Vwhm+LGQoVYKTB-!3rtNa0ytx1Y|I#34EfX5@_DbFQs6zM=~>+ILO3_>jbXC* z+M6TZJ*2dTpPzne+RdLe0^Ix*#Y}O0VzxpG(jEXeF3q~mD2|tx`~L9q%(CLxx*Fp$ z2L7XJdJQYHyjq%qu=~S#bUw^BGBN?MCG64n#lcTlGZa`3D$w%I76Zoy|4@TZ#Vlp$ zYIw?9yH+hw)lB~(3gF~o-GjI-ul$KZ;$Pa+I+yDkyb0(+qmp3)G5#BP%+Mb5WV9$; zIEBPiI~9UOX#TOKX-t8=^^#lgH7+s%+xk=B2W_$B^Y=YhEF%^_+YL0YNCLCr2z>It zHg0x~n9q1Lj9gayY}esOi`kYcapvHQssu9Nfirh$S~FT>M0pzS{Y|ee5m@_tsfh%c z-hZjGWb?FgWa;EXVMUf#6mN0w@3iLX($spa2)>KTIu=S}?;BY_Hx{GInm26Qi%1BM)6y%e`}=1s8t+U=A!Mm%<-5Ch{D+J05byZ=Pfe~@lmCjHIQ=; zej1yc9WPag*vP}a7j~(`?koe{t(_&4XYDLJZiJ&37|PP#DXf zguJe{ZMfyho3@?4iCTyTj7<=?vkM8)*7Hy zoh><3ew)@DX|$%qGG@-TP}knpL8DCB+mOasnwczgZEhn^8csgj90}Oq1WnGy0~Kf} zHoD9d*i-{m-z@31SQy-u2D*|>!M5Icllw@~yqrw+x26Xn=RVWigRR-CO&jj{Oi&t2 zneF0dd+IR5UCVeQ#Y92*U%Qez%RRd!U8!!Egw+i#`c?Sj@bYSLa$>AC7J(sxIhzql zqtG_FN8)F@XKif_LNE355`P=p^f_~-`DMA?<-EmZyp}o<%*212DYHv!`vM!AVPUY= zZk3t-)E=(31MRs`3tP~P2qwal&WElP+}C#W`f)hd6s|Tq;V>=2kDKhh^Ohqb1Z`{+ua0N02*D0;A*+QXL)<@rSwd z7VO~UQ}LpTJYULid!F7_@c@tY=`fCJ6n6Bm)2%`>8Du?pp+;vXCLuk|(wYz4qG(a{ zuH%Ve$SgBSofn>|hs8gHIcJY5Rn~)hqJ*Jy!$*{-*RGs_&7h}rvlG?kgiq@zo~N{@ zDondTiD}K_x_k<@&cd}SkMP9QS`Qyt(WY%JD-#eh&2TWA%Jlj**~d}12?!~HPW5Tn zG0gqI=cesJ0*Bc_^MZs6WG3wx6&O8y|lXKjFj68<523Ots0GptDLS&EJ2KRF~{ihGL!-?4xF>e{hOWQ2($=yK5hb#q;{e(hluIO`efxmX0=e6UNg z3jxlrl377%g-FEZ({M8m#CyZanes^!=k%9*ao1)SeX^5sPPYFN&C?}w7QD@Bcq1>tza)HqoY@bx!Z!$%Vhw(2~^^xML@2G zKhvtsZZorbK462=fR+8aq#~FiVc6`+OoY`eto2xeld1 zz)X|NIBUNQ#h(KQwUv`LuX!mNs7IE!j+?w1r)P~s0@Ab83P!5mUb9TE;c9j5M%rSh zOrE6@H0zb*fn)2*S6%r%t564O~8}=_%EBiwkaL2*#mHpo{ zF+M(t_lWV-38Iv!eRmYiQl0w#(JIj`_**3Tmq_xD5g_=pk>smJmaRf};K9?=6?hQRyHCe76 zNt0_z{di3>>A+L{Kz(BVGm)VW44f5Na8MXJMs!mfj1EMXzIs4RsTU*j@y9($eCQ1W zhoz#s^)G#m?_)Yn`i5RVaC|B<5cIW=^bhSf@J_(I8~ztmq@N5h1oMKv4v?gTAQDt0 zNp>H4&A>Z&8t3+ZxnJ_b0M@G#s64ai_)(p zuVbwz1mtz(4XishJ#Qdy0!|F4qJ0Ud8WUu`i7fOm=+DTYh2+f)BeH`+-b@xTj5cHu zAq^R17bav0Lx==XgiFZq&;&5(sBjFjOx?^wGM7TZu<}_G_+=q~`Z<4~sYU5wl4Xq} ze<&nNOx7El9FycF{tO5z^W^Ow{#+9U{=A*MgJHxDQph{V0Su!JIe;A0kUvRL{UCA} zLx==XgolyCRq!X5H3}NcAx+B{^t_=N*&Om`56&NGYEk-d@=vUB>(ipP#M)+CAahH<3xJ$a@)DWC?}5mmJH`+K^+(aYL^KDT{#- z19j(%lE;w|Ru>7Nbw^0iA&EkYWNc`!fwzIoLd}#YH%8WYM(kTi%o?)RA%;TMk_m?x z3Yj1$HXO0NpdDKHL{fGrq>wWC*P*pAqgRHT(ON#6DOh>SG)-MI^jrbQ>$UJ7$~!c) zDE+VGB-S*J7loWePGNmPc2QzZA^#?g*WLpBZ{)*6uXB&rzDtt>XU2dC?xsYS9VHZZo#Ss{GK6I}a zWiO79OCxkT_0gO!(C0V8x3iJBOC#iC5_J^zu?V?RqK?9@jF6AJsC$#Z@bL(_PNI&M zzAi#;kf@`u8zST;iMstn{hK1>*2vJ_(rU8%z&S|Ttr2pYL>h(N79n>?q*2%%5pq{# z=xq(wl!ee9Eq+&od{Uy9!af-xn<7IehF6sDpaaThd9fi zwMFSKM#$GV1;{cA`&xv2gLllP>KhUAO_^nH736+1LcZf=+4ab>??lLVIc8)Jg?%?d zzRxk+u?(au@HHP1Idc@(Gz^ z2MTIG5ha`O!+{H;%hv$rgWZ ztx>YWD+*^IX*;6id5JU%dp=5jE|ErIKaZ0CZ7d2ap*>psf1~8r61^1m>nQoH8tnnQ zGtGq8e!^$30nBM-}GCXef9kq;*{wkZ8jj6B8(z~Q8@ z$71Ah-Y;Y#CF=1Qc~TzEQSsr)82NWE$8JH6{dvqElPhQM!wAnK#l3@PK{nHrP&M_bz6vOryd0wK8!k&+jpG(t!Qk4C9jJy!@te?~H@p&Zgg&6sb zL>`6xCPscIkw;;_i;+LL$SVsBe~6L4NaWGde~FR5O5{=4Ut{F&5_$hB>i->-YTQF! z1wQ@^$vZtx&Wbx4m%`49lXDQpH7`4*9Vgei$lD+=TpK4hO61Yf zH^#}$5_uGMbDZ2Nk$0-7e`}oF5%;WBzd+LNh?6@d(kSfCIJsLQjl%AZlY8O~*QyUe zd$jmHadMwTFNNI~ClAD_r~046x~+1sNM&=dF({Zh%gRwd_5b673T-V)KM*Gm^Y&3t zDeU1md4zWhhm+FuNSr)|9A_(4Y~Zwr`0`ksJn7}w>3zVlC*$O^95qTMg?%l@+j;}aq^Y;(3Ap~f@XqqHmiXnCYQ&Jf|Z5+ zRBYhP2D&>`r_;PQLHu+C|8<@5jjx zIBMh&h5aB-e#BARuphBwqR&^@QfC~2Lm1j zI1zz0AvSQH;2JcyDE(ZVZ095(*C=dzoIKCFW|Q@Nocvto+WB@TejX>kj8ktU^DD## zF2rwFA>)1-C%@&`kx3Nx+c^0>$8N)ZA18l|gK5Pb+_8a+Y!rWtlmFu=kQj>M|Kj9t z5`h%Wtb2ah^SV*{7i2wsenGx|K*$)m7a`p9icm{tHs44i-Ig`BQiMy`-Umt<_F~kOL#IH{ygz_vqK~{F5l3M! z^pRgR7K^*FL0bM-edKo%#T53tKJte?MeAzT%;hvVM1%iwdI1Cj<>DS87tq|I^dI`j z|8WvfE-38(`pDmS*KjgYvi{abUX<{eH$g7sc#%8`yD&j6PAK6TcqhS6Y32%+WfjobfZpBM!2N=2 z(A=W*#R>9JP6Bd`!akZHALCuK$@*A=T$zwm@B?-yu1t_?60UXiLHzb(WZX3gas$VX zx`V=QNRXR2b{lq6g4~jj^~tAg6t^VE9UKJ`Ls8t3Aa_XwQrKMy@(CO~u1_Ae5qu&+ z?)8r9vq;>%39?Bdj>0x2$o&#=6n1}te5&!NK7tL>@}EkOhb4+B?BN7?B%x$o&4H^P ze9soF4OR}^_jw%$^)WH1(AuK(BMI^ZrvL|)!k$Qw&+?ujA1PIzO^~PLLH&%~ho=(c zX)n{BN2WcUAYbIDar7wciwW{&j@pKOIYGYKm}yU7gA~VC6XZWQUL=pg{v$!YrG#mq zI>0#tj59RY%a{giXOL;16-#fuwj?=lglLvziA`5yq{d@rSL!T z>qcz(%6@WiZ@Kj5Uxn6f!xb?8sJ< z$UGNa%41F|Gh_Qt6(=ABwO;Tke3V0F`&$W$4K5oLD!VcAOk}|w{mH{aIa%zyPpM}T zs!%QXQzZHONb)xrAp4oX0NLAv17t5@0kUWJGC)?Ol4QZL`_~SR-OCjmo1nq5321x2ApEV7KLE+D-AfcA^l|D z&>O*1uscuej+d>$544-8F^{~0;lSWIisKbzPlm&W>`7h)Zcy+xz-1!pL*gZ0MP9?| zVtg2_`x>%0t7}8{Ci^&r$;H}xmq9bQUT!b7p3v7Sq)L$-k3I013pE%ij8tlk+ctCuoaJ-64g z%6Kw|#q}pXaitKKxKap;YZ}D$6P(}FH(rVy7jQ%Ha`Q@Bf-Da0ks6ylR+ z3U#Czetp?U^OOC_BSK0uCJ?Z*x}{!7s71Jd2{G(&cS}7LD985%%kjsU9ADT|Id<`8 z4h!*@eL_qjE+M866yi675WfnA*ws5O!L*c1f+@r$!4wi8!4&S2UfyEQPovmO=s~ zmcm^UOCc_ar4XOQQm7-b@axM)Vn5NJe3ybXcV&5|n)-1<8LkC?jwJsON&XgB+Q$P| z+BD$fu#_az*2~B zeWg9)5=%?CB$h&45=$Wg5=-GOiKP&i#8QY)Vky*-Sorm2Be6eACJzX;zMh!6BQ%Ny zzlL|W9AL_D>n5L*&$2uh-;d@NMP zLtt9e7DYU+1<0OhTNHVj{n99k^q`p2vR`^%n%oBhR%{3+_Yn;&g9h-d7SQdNegoN$ zRpzwpm);N3``D+C7P~T1XBT}7Sq#U&yR&R6nE!@SxLD5HLm`;Ahoa;(8<1Wn z(Cz9ki*Hl?FNvenBE4^Ela zL5^gVZOD;irCk}R!~8e2@=CJW;pnRvG@D)xS#kCnctt7_hq9QphH~}2VKEG=>9W+<6AG{_07t{GBFXw<1L=HbAf4VrcLQ=^ z4$I~v32(d_g}7vsLQppGW?N!p1iQqgl74bYC55=8l0pKclEPh5Ng*z&q!6D}Qm7-9 z@arzAY&QEU+PF%ja@9^Qm8<5kRDRkgl@#KVN(ymHrP#dCPcEsX5SLU^NPtvQxJxQ2 z#3hv!;*&}Wb)*u0ec4FmF9(v#L#>tY(o}J(azt@zbiA0lNhP)g5Z1zCzIRJK8Mt=d z6})y{#@5dBdboDVTxm;M=W$0vqMoB6FqyIAXb8+^jE;s?1N~t$EgLz$j@}lX{}14+ zz#wtRQ;hZ~g`jvl360SVzCAjBC_N8SA@4QtXk76(rgoL zL(*i>Ap>m*`^z9C9+t?!Z@6!#WGo_YWq545~HfSS#ZX~)fGH=1HZ%%$7oW_}j$o*rAGZT2&a9C+QW@Dco zn?hn!G5QJRg$Nr@j-Yn;@JvC|f(6E@HO!>wBr28u70! zg|)hqo>7{+J+^z0<1_}T-S@aCU_MC=Ed~U8*LbuDkO^v1kY1f4>*L5?OZH*NVicgI z_W>0p(W`-SdOa&4s=OZb(q5QkCV|<);~dc&K@-^>AAyb!LN0V05dtt3y4`UEU?z0D zxdTV8tmFLZ4)zPbWAbym=LkR_s@-!0pbND@&j&cN40uxQo?~5u4AIDgx#YkbiLyA>d!gC@X=O5im-|MZd)(oY3zS z|2j_AvHI9=EWVDM!0HRY31qTSzxU#GC&_w-3_F3y){_~A4EtS#ZqAS@E5WGCq^po0 zoN`7~!SvuxzhBD{okBjyiebM;0rLkTIkU32 zV-%#PH%7>1ycDBWPhS=xm-AAh;^h%?1t#hhV*h%M@QMhzniq`%Xbk##b%b0iAw4|{`Uttv=7{s0B}|7m@)9@F#Njqauo9#Uzn$Yjjv(mv2)Q#t)6du8NSYVE zGeYj+q+!Rf{yh{JxX(Y+j9g#klp)<2#rDUTxEPSNApC4JjKyq@3GEP5%PK7m;ik~ zLY{8OkVU-y(-HC&juQKYD8E8;aZ}2WA>;G4G)u)zM*zN37mLtOc zBcf*`Dy!7WyXvL=ekd zO-mt55Clo9zY`rAgqiY6VQ|{F+797mz7r)ska&XCeh?);l6ZokA4SPC4S8}HNBK;Y zJj+qyXk-0nqvSb>Clm9H^m9?Ng_mOV8tE-jvW=G#6}QpE)(%e&=LjLM^)Gl)fwlfXvrSXx3J^;+ z-9U2wk=KVT)PLtFv1f?#?==53MTyho1eg=2#mE^kCbEp&Z2F8CITJx#p*dHiYz%1ik=@M7fJ{bbYYBK%u8V#2)dZ&g(fgfYF(N-l9z;R(U2M1 z)+tySazbCh@gZjrbOlWl-GDPId100~+7=+J&+LfYZXQ5+6wq#`?^uz0t12a?H z3t}f50rwn!4CND25M0r`r)Xnj^@2Z#%|{>}Bus5mg=uHbY#_MNmTw1B6Jr9BjyR+3 z7_G|_AVYQn67;K5h<$WqL(sRp2-L-^*~`|4P0Um`ESoG%;fsy1ok3?at!bYlq1Tl{ zY`3xvLASE~HW$WX(Q>bXXYw$Y5B|b)`QVQ=-L&)ShC9ux5$-fEltgyOOS=)==>L;Q z9uvw%Tl0DI)JHmodcnETYN<~9xdV75p%@`9xb6O7FW4r=f8uma`00PnTcnjbz}y=24&(w_&&)5J6)4< z^xy&)E}d3i@ahyE8gvq};F|vAq2UBd7e_OgaCgcO3y+UsCh8yFd3uZ;7xjDED&GF$~I#9qs6 zNI*;kE$NDhpb%F~1cmrwA}G{}iGW{gFMltw_`%PHz1`335_lT2iszJ-)Gzx&rVH>O z+?mq_c)HS-;P!ffJ8r(t7dZH7*8(R$*v=kYANuYYk#N_OMlz{O0Y@SgABd7ja^65R z)i(fc@fZc|1E9kP_DLNw80rqxh(`LA;?ou5%PPiaD8^?h#+Or!FRvJ1K`}l{!uKwi z&xZ~k7{)9d(K4zL$`Yc4LRmzVAe3c92|`&&lpvI)LqQgqdlqN|n^UA3g>swG8NEh)NcNzqkHN>;U`WK~N_R<)#LRZB`%wWMTK zOG;L?q-0e~N>;U`WK~Owp;}T5)skYUmJ~y^q!_9t#ZWCNhH6PMR7;AXT2c(vl47cs z6jQaNn5rekR4pl{YDqCwONyylQcTs7Vyc!DQ?;bzR7*-uwWQ=!OG-|)q~ugfN=~(; zRsQI-`o7-eBmgHe_iH5g@aQG-#I7d04V zfl-4|mKZe{Wsy;XQMt^xj_Z}ss415jO}Wfy%4J4VE;E{PnbDNXjHX;>H03g*DVG`7 z!Mzfhah=?&!KhqjTxa)cXjCpUuG4!pG%A-F*ZI8~8kNh8>jYm3jjkhnH5iqzGp<8? zH8d(;XI#hlYG_ox&bSWp)zGMXopBxItD#Z(I^#ObS3;xfG+zxy=JYNls%GVj! ziM|>dm9I0dGkrBQDqm+@r}|20bRFxf!Ki$laUJZdp;7rd<2u?`L!!@E1M&;{_>#$!9jmp;<*KxlZ8kMgzt^x}E{Uk#1Q*BRI8zY-c<$Ny?DDqm+@0RU=fRKCu*LIBjz zsC=Dq1p%m`QTaOK3Ik9>qv~}=&!~03J-&PI+6@~t35SShvs8|=A#CWT)1jtisjO5jo`^*rBbTwzoNRXGy^Cgtx{>M zS^>K6j3z_J#H4=eZV@E>AGd)3b}l)vz+=!_&JqL!7D5x zg-kQzr({kUMlP>gmX*;8X2!~Ddafzy1MTjYJ{3yH=#3IGV47qMGhZ-GV25TEETgj% z2Hw{UtFO&erKS0@C+MKv2m8lMYl^dz)h1MI@F1TZeyZnEpKEQZ9}lD-J9u7L`M`v#e5Jomf3tbMrZ?U|Lqzg2mR#X_;)kDcNd&QvEy{)>PM0 zz-{-EJ5bZ&^_!k(1HT$H)1HI7v&S}$D2|pUxngy!P^{=~MCcO-rGOyHR|3l9V1lL9 zlu~4=$RQ_o(EgSiKonTbTBaxS67-y=f$)O8TrhK{k+ZDMO7NMX7f4ORH$>fYrW;$a z9PBDAE2nE##?)bX%vd3e!SISq>&@l?_MkaEV_Jr8WGzhxmEYmbLwH+I%kHeUpk~Y+ zTd=8>U1(}YzwbsOLw`tyHRm-mb$`+$^CE+&UpKp2_tX*;I<>?aE3Gcdfp|wLBv&h)SHw_EiULZa-Lh-!Qmu%?$U-8y8-8 zY@_&QI9i^qt}Y(} zujEdas-D4#3xXtfZN{$Zm z>)^g1j~VTdUzaO@3|$kRG5OT@T4PL;>a!l3#Bzg4vz6px73$8#)1gblbEkk0x3prT z*VXTHfG1l*yCgL$1@F_e!jl#kpk}z_8fd?O4P7@ctlL0O{cyn3%VyjLvR%W~r+D63 zQlCmDy$Cp{$1kCxP@AVfo4;}}>AbV8nxH1tIpr!6^eQ0e6@&Ba7tdAGBTm3uWRUX` zv1)=u5LB}SaR$+Mvf(Usn$zPdrYt}xDkrpYOD}FI) zepc5_RF;FSbxNqtxdvqDv!T_no=JVsGxqfjn)(*Fi#!irF{hk)hr8hi!*@YTt@kwL z??PJIDEbZho{+7#O}5w{v`+Tp;klhnZD`1CG1NHy>ufh#r+;&J`i)ezCHjMRFRhb) zXL!=h)VPOq;jKXvSdEJV%mD>w^Lnl~M{tIwXY=5_H}Y0CV`d;yp~L>z@5RD8^Ynb` zQWhZL%qg+6aUepXT*}ik8AKVUmY5zWhx5Qp>KlxNTYe-&8x*Z$qOXX$=5ATp{I;JZ zaG2z08$gDh4KJ>R)HPna%D*s)*6Vh^9ltZ`A533Hcnbc4A^iV29#6Jz3A@+OY#msVQ#U&$%TgW3L;F|L9 z2>jS;(||MA#s*$eVV%^Yt$A$1=h{9tuK0wH(?KNU#9>fvvYaxnl$h9gePzEXf?RIW zXQoV9+Nn#h@wzT4bxn%hHa6L!$44Cz!Ucgu)Zg%^Yg71PuucCCMO{0>d*E(I2(7wy zZvQxic2ZMKW>X<1shqGSzmtiz7!=FWEwOwaX z({L@MvcKz=$cUEJUkYbYLVY^s3YzTU&!V!~o%bv%m?z=SqO!(La26Hb*PAtWdS7og z*S6DCY$O_JX1euq3te~@bvEBN*}^dE3E74A$d>H9*2%sM#tR~V0I1tcj!mNKhMed19YqgzvaCiL7jwA3jr z&E48NgnBF%MyYc0^)TeSHXN;!AO3L5*vSvKjGgyz%jm-47N!eUaJXgk=y0o$&F2iu zGPObmZsBEg_`S2YQ*IBxT;x+fY3&T;SnzlpJ^0Vzu5ae8OvZ$pWqCLUG&9*uro-3E z!rxgmdUR(|%NO$WuB(~LTe@j!hS}LU_4(I@Js~ly)Qbx|Yh-Q5y=#T@)Do+pv((6O zcRVU-WW*DBR}W)tIwbGf$cQg^u6>;R2twe5EFZpe*;Ws8xJdy=L+ilp7#y?IDo&fs z+EHk&qO`}SW*l0p810VNi9~A^CpUjbMqGC^+aGTp%-2dZS?x*bO#HpOda7mTQ%0%i z_NkWrq%t<%ol`A4H#0Wbt5Yrep=KnaOQ%|P!e?x=PN1%m*d_a&=dLs+pQF`_iB{7! z;rhg`b-p$EOpPlr&myR7Z*D&7 z<9R+0eT${Ko{7^m>{;hqlTYAzYd#A|UEc!qM+aMz^+%2S0P4CXtB;O1CLhi7SmWi8 zFK%W{ajf*7()6tA^LaZ*H%`hr!OhCpX+PI3$# zc4HzQ&t)4cI4CzWyAH|&56VsLrEpL#!b#lICj3FUsqef8<-t4&e^72_Uls@DrqSbr z@<&3SBbjDu)}vqj$8>3F(_dqA)?gi=O}HiRg3wN5Gnab0vC}vt@xm#B%e0bvw8AoW zbK}wQBbiT~)Y3@S+8(w(loy5{%0lXktqo;6)GHrLvF~t?W%$cyrq#sdGkIbMZ-`qT z$qPc?pU9=&?U{w*Hi1KpIJkG%CPM5TNCKkR&JR7Wa+%Z@TANp`b5i-N68lSs8Q@GF zdMLDp$Z5Vb;`McXkn6)4MKJF@BP}3q!o!P0PH#^fJf4)+N&jkio@Y~Mw>1G`*E4MwiL!SH#H z>UAerq{A=xxqO=oeoNGg!BA$r31^&Ju)>?+xk7tpIMotTu8!7+5)uxDOd6iEQs=ZL zS2cWn^@tZE=`bEk`*qxJ<6#|6`P8PkXI*P16OXWR(D@d8jY&nWU9n-W$0{MR5+%}Y zOB4kaln8ff>y(H9>t0d9qj+b0@ee{#H`66onW1ln7NUG61-7?4xsKmBlZUpB58FkY z2dQ6>M5KZvTDU%i50cDlJ9h?LfVDAit7wJN#Cn61Rzhw<0s~0j52@eY)TpVb|Vh9%L@DF+vdi0=& z27+wDUywHqUNyrPubR3v5zL10OJPCpjZu_^r<*i*q|`Jscy|P@M`+E=2B9Zh7Qf#{ z@IzF{O>dq9%))DckYg{Ohj#(t<&&(QYwGGq$0kgVHXH_A#DY6CIk-7v<>;G1bN)HN zLXVyU3~%ogay@w$3La9;!$W{M+*|4f=mc}_D}{Vd7SpU|fO!nef|sM=;Y1x?p>0Ne z1}g=)X&%ytT_~i!-P(Rp&GV6Ycoh^j2fCr>jC>9(WZf8PYRWY0#{1*$p;=?49@xEx z6VY$$`PVgn83!U(L$sQ?KXYWH-n(~Vi|wEgjBp@gjv!L*l2dZ4%4s1f#Y1&IwVx#( zl*bNr`x2BTzdX~OOHh_LJpSC!nBZxE?t7ML^u()85DbgCnid+ome8o1Y6=W z*e`bKniI#SU20Cg#L$h%drQ8^5PS-tj+adyybb-w9${S}R_cO1Jc_>=SBRYWG&q_H znV}?>QcPni#%l*tlthN|;F+0;lk6Au+Q-ao3by*#7qWb3^R4pK=E16U z<&)LCq0E&BqjY6?Mo5O!_fSNxE{;x$B(d$ItQE56U~FaRT>_xsij}qNid8xAik0<} zxMC&t3eIH1NRseZtgM~*id8UA!e6nnULIGhtX^NS3LkcFnLP=+e=Kwmg_TR4>@j5g zA!%v9FT}r-bgd&El)^T0D~)f2r#_!L&ufQufPCS9a>y4}fCEtzPiGZ&?sz(@nM+M# zHlWcNypwKyE`2(ZJRnS-xDh>7@l4u&Y1Y3NY~xjfD;BPrn8HZx(pYujL8G(NKX`GCa& z1}ug?TGBIGPmY#yaNMrJ`5_#j=Hc`Z4pN(nJ`f&umolPrq5&lQd9$9;dvdg-Sy=-@ z7A+Iv6?5=&p*cT`{kY%x%{M5sB1qlqmIQ_sQKZ5{%HAz*K$sl$0eihIudxG&_H8-z=wuI@_?3`F4$ zAKEP3{c=zl5-l!WKU1DsUp;uNI#I?4x&8^3pLY!&s$|JY9tOw`8hl4f$bcHYsTD2^ zMmYM4xj*s9QuXBW%!!AtD^jmXFmzyG9&|TKqQXt0Q~R$(`&z=i_nDfc zz^{dwm>PVg$TVEz1VRY5!#uH*b|7L9P@K5td-)|Bmf~V+pXap7&DX;i?K8L+2HV(3 zYn|w{ihEzc{hGm7i9nv(XF9DSmN-%SRHs#>_PnZduG1<`523;=LPhJc6g~Q+NdbW6 z2YdvpH>~%c7PUgCBW4T1CP3Oy%<6_SDLMa@qkCG2W>V6&I1b02HVkG`(xM0mz!uwx zWl}}1W8iz6|X;Pf2W0M_@alm(49S6Fc1)K6zqu zv9nP-uBVDS+?1?rg2OCSjaF9HEgf!3Rw{gA_!b3a{gSmu#~YLN25+omfj?PUadf;f zS#xkL<&7XxHe@11P}07gYRmNsam}C`RXuaPLEQP)WbMHxh|fw?)-_pwbi6THgVc?{ zQr10LjdZ6)S(muxifoT7>z}MlI^UYCP52I`gE5cch;I^Ue@)fbzW_CA%NB@)dSu7_H_hci&$T+}lcC2vpJFE>C@A&D9L_g}?g&4S1z%W_e9XoP zn5dTgVkOip63Qpt1gs@^awtUAKIc@S3au`x!jDD6o^0ta$p=irpX)*#T=&j(!=H`A z38m_@aRo%_%861iu-PsS?E0{3RyR^h?4{Lvzc*;j4Bw*J^%iq2ws=+O|7mlT}B$Nl&Z_w zQSs!4l{4j&CdNzS#}p@L#a3}1wBuZ(60ys5BYKgv)j-k>)e9N zVcNnDi@>Qs_{oEnaD)SgHAuG&ultymrJH%(EG+D_T$~7muN@ocJutRr+mqIhOr7bC}0*}`ZPKM;MW@aJfgjLAp3?r`> zj2t}W&>=CL0D?<{#c%|}TQWIK*C0_eB-77i^PoL;4k^rQ`FsK23M%9bD+5^>jE+m8 z5{Bmu$eduoTLoISpzCI)kZV^4?+!03xzyGk%1Tzl*DVTK&eZaTmdimBk~u9ag`5u0 z41wx|Hz)Arr9!r_Q^*Pkim90}*ECQ^IUU{=(K;?GYHS3c6drjhKr(-rA(;#qI6V}W zd{2eN$bz+jucH;R`FzIAYnIt5VNo-7@T6bCunO>`j|Daoyj+pb?-bHvW?`~fCS+?d zEyKiz96K*9N>&zlJqbj_g13XA`MZyUS;LMithe9c1F z=6qyjai%yWHolHKOAgKB$4H0Hlwg|-NzwR*(oCVmyEx+5$Z>}%2>8{mRkwp#L;DN=w64GC*RzixH<&=$;%QNE> z)4(M^L**QEZpxtBwb~E~+L5x?!SL-p_-alW?S8Fl^T4WqGPI8|m-?V*w;%??;kP_Z z>bn~Jb^H)_yvF9xJ;=BB3_H7fvtslF-)t1!ZAAL{p-)r`sizy~&Pq#DkV{f4vf1uq|1t6HOMr$FfrLA zX1Y?8Y4U=wvkwBDzS!FAYlq{?r=Pf@BldgtS(Kh#}uM% zYmxIpkE5RYLTlsLI_b(sQC$2|J&M`(Mv-2%4zm_~CG`9=QfId{iY<^XM$ut9YDVxi2GvUvv8*ZrZ;VdLVMCb6Xn-t`=J&-ai!LjR$vk!Vg8hy`k`> zaPTwU4{_5TeuXNuxk9x>ych~)29mgG>gGmhLl*)BXIomKxUuL>BjF!5Kg3P?{bB7R zBUScLF55?|z&=_r_)pY6njKYS9(^^e9)Qrkb6V2_ZSY&nJ%`^o7JiNVXz1Q(y?Ynn z>!FF)=hU+Rp>;CE9k#XA@g*|x3$7pHOf6j6Lobhp(dP2l67kK-#S@{YmYF)$qnhfQ z{dM!8__^XgnC!^6KFfaP)2;E`x~ux#OqjE{@L z?&%>W^2@DBb$eVFvq+WgYrhof9>&lb0Rl1GeAdXDg2+GP{17+sp)~@8Ww!gOQ7hDo zv2>^p-crJI4dFBbgyXSm6AtIkfGZ{bIR(;qfr*b6XoFrq5{NtfIv$ z8WJc8L*e05Dkh`<>m4?T z!Vhu2H$!}DSW7NfNIlz{LV6#p^s5I~hF$3)aMXf`R}-EAg;lN4SrPuP&?0Q5AQ!1y z^(vO(_RaZw!+HYqsYy@YWGi(g4EPa)?_NmVuk>BN*34ArRxEemhTnhWGd)>)a&Xnr z$eH??cG#i}Kf>9a zb%c9kKH`O>jGoP!Mn;3x2Q0{@wo>hD=g@AcyxAKo448yYDGQVyygQAXtPaaUcuw`m zUd?9kVyHzgvRd#?wUM3kb1L7PIc36i@T>_Q9@8q|l|Xphyt6B4_=Tv@6H^1s3%CWA z&6}EK!6j)EUdQb$qdpRLCy}>OaOI{I6IqRK3{p90kW|2eQKphEu^?W{5LB zAk5BYq>wty!voorCSXdxc`&_De(-u>&@<@aP2@svOk^t$c`D$>sDVcrISp*74x7lK z1-zj3M8FMLQ^Cst89m@~G~`3b&wWPq#v}*EXhtCmIU|gG-Yn?gGiXM>+c((4&!}u~ zW>iMU3+r(09`4&4kd_CM@pSYUF|@r_FnVK!FTkAglRBbH{sa%SW*St|=+4UkKyiTTn#r@}95Jqr4O zoER{ffJdOU^RQ#gbl9RiJ?tL9N*!2d53msS0B;(69R}7OQmm8~4iE1?Hd(AxN|pUN z2x6H+50=#%^WTJ30utxI0Uj)@uq`tn+gnFx^%-Het(KO8n-Z;TTi*`@c+B8YVYZ3G zkU0_ZwdwG;sb{rp4o(!BVpNBg3rp{fA*MlgCCE$$4o1*`g{*1jI&9mAUM{R`Z#Y$e z*eFP&2<{Eo4?&cap6jq77G4AO#=j5ofdz2z!^YYG1(c^5i8`u*!ZXV3&2|w|WSOv~ z)(Q|r1G~nI(Ujk;eFG%C?DfdK4>5NZq_)k1TPp{LAn;d*IdxX(MJ=C#s|>9yYRAK( zcI@EM;TAPW_3GOMjWngFg4ea%Li3@J`bleiI2QPD^x!{-(j4mineMYxjV+ zng<46gg<-oY*%<|;@t!Lqz)Sl_c*dbYAyu=2nI*ssk!9_W+@&T|&Q^FWEn zWpE-$mCa2i7+qt6oj?4ny2~H3Mg2nLIdT;Ci2-LsoG}8okiTPTD;+1BR%_+VdK`FC8@# zz;jSDZmxGn&6r)9>r~D3e4i2I)b5&%4LiD_)1p1zX=!k|2TtoUaB>GXdGRc~ixzeP za{-(YOWxDdHNK@MdAhgiWV^HDhm-9&F%QiwUKNFVX7C@pqXJQOU9;~&`vMDkuZ#jb zY+X}E@U-+CP)2x97+pUm#8|>RIxsi8Hwg?_`G&5DChzL4GQvv<;9D&~>Wn;W^&sqI z;hOTyvf|jf<<-*EyGqlC&rXk3C(6?}HM-&l$)g{n=L?k%j{zEnso@hhaHb09VO^XX z`8lB=f^PYAOF`sumH2J1x8o480#|qPkWB_pi}ATaomqG5I6=%V?oPn* zbWKln62!h}5F}X8HMl1LAutePx=`e6M~-)AXOioZJw$gVJy&-SmI^BX@Y{e3YlaSY zW~}Zlg?aRM_S_x{x~kVTbw_>wz22F$^Z;V_B+-OzTLagOI#*=xr(r;xbhoBq0qu_8 zM3dL|RR6=BVhtYOgxq&DI8&M_ zO^=smx~K1T@mN)dkDloH2kbF=d(0ZZbMVD?pX)}KxK90lbCT=5nCtm&?lR^i*RwsC z>lU~l8?5XqEJ_yL1`j&*HmCr+7hqH7AZ=>S${RUIQ&m{Fo<41RL~&|#yx6TZZjS79 ztpYqroH5{%FXS452jAg6W#m9te4B+iaR>*OAPV65&Vj$%%H>SRH_*M{CNMC-(&@Rm zYiQuxGa)Z5IQa0gw+7j~x;6`R-0goc*5jjCxQ1+i7~~Ib#QS;jxAzs>?5^tI7HPRG8it|ir;0>kuYf*sn_!pWr&)wbUdgifU`OS7pyIF zVWm`EK0Q&LfS`^ID`(0lO^lbuk10;hmbz!hTmC`thSaEAWqWShz@;*{ii{UqAyiU> z3uanwq4T0*_qd*G951PY>kzI5O6(8O`RCv!jh=%az|hGpoM7|*s4j0? zt;X&m6^v&_W$zger^We90el1nI6cDm|w3 zfm1SbVR5uPTU}i~q;yzmvQ#aNcTd@vU2+;wWdp3gwWrDkl1)JNS2&r>!ra%uH4VC^ zVm~%@@XXA_NsRejaZfkFdu8tFKSz_d^qTdM3mons6fjT+;s+snMDM1({a{;%H4gPq z_WVRDD2*bjn6>skA^295irJUPK(Sv$lUMY1_JMT`|A+Lg=n~iPY@|GT!m94+*(NT* zsIVo z7ad{nQWvmbYtJVdMEK?4?oSpRKoH`kVWv%-Xz<>%J43>2CHI69LBk+NyNzJ=siqx_ zqwD<&5|G=uYb(f{h@}k5>DDa{6!2^rHjKSZZveUCAvFvzw~)MQ!17ddZ+Yvy$+{=;C9$7LfSPr_kj?11G0v5#vf4}EluJq z>`p|b)tKulblx1vDG`((wQCYTC$xT0F5RwiU{0Je0kFqnGwXnamc~H@U|Mc_-#VyDSHS0rBaSQ&r=sllRVSwc@yHw8;slZ#L zkjga&5tVSO0+s-X$KeLp%JNM2?hrK*;HQG;)adPb3^~3v0-KDSVIkiOdDwl(zIxOI zUD;`vjpO^2G5y(Sa$`^3q>$X+{cO1+5&s z0SURZ^SKP1iLubZZg3!n+uEL|Netis&zISqIAWXzJvVIOnGzj>XWPW8> zl)_syI%I>@3kF;mfGZRQaA@}^+&15x=yIlh?u_?#=IP)-GT>fr0g`2+8ws8cpfhiy z*PA(|*iR?BFXq8*kiLN{BOPzzA=ORz4Fs=;K*>r~KzHLGqsg0ksieRM15v>i+;M}a z(eTYdtA~M-mfz3Y2^+ya^6lyJkcG!+tsI=SLv#~7^r*utUR_%rz{Lr3@99`?)fD87 z$ia>PUc`YbNtzD+7J_w#J_qOMa@SiW{E&gloBwfeT^=;F(l-`+MQ~*_pMaV~R5q#nDN) z-LW38G)<39lqxHxmrYJpmv`~1hvs*)cVsMR%=>fE9xJjOJQfF+!yz#_gskaVxOzZU zx$iI|rq~$jmZgF_%3np3SNC+n=imYpuo;5t;o2%>SzurD1bdH^7>Cqz z-E$q2*B}@WGny7)FAuDTr-kQ`j>&e%Tx8cA{@!D6LeM*}UGpfR6aDm9@)JFke^~Ey zIGBe^T^S1!kKw!MbKu&#)+M8ZE_A()4hAzF{s&e&0R?%A^yzk(|Y zkPAxBz~jW=dElwAe0yCv50nZGfIA}3xxLq;rlc8ksP%f5LDU{FI14w(L9;{ZIk<>L z9SYr;Wi-8duXmni7V?!?CWMHBd)UNO^V(e6d0PIt*a`0zJE(Y}$Bq{h-m!py$vhZe zkVykVO0&6zt4mYs4=qpAXI{EvX2?g2!G0GN(l5f%dm5z~z;FoKky+jye>&cW@Mzpl z%yQ;W@43pwXX8!C@~FX$SBOp1GllM{T#V0yVDX+N(udTJAm$LSQ_$f81Ox^{ZZvP+ z*RDh>{{QyQ@5iw#spFcS?jE)#lB||Iq*-Zq9wv6(AHJRkq|Brz+bEM6#*?tW zpmE!`yS?MK8{5rHgM)B`VSyKIjFfR{l54A0-q zGQ8zu{THc(2j!UzLSK_bmb#5CtLJ@XJC!Q2rJuELPk9&#V0fDx_(_R&*I4?h-wycp zsTbuP^rw!(w^xw1?B$w0l$t!kC)A%&3=2m4C>xulq){v=Ymceq6+9nv zzO0Qq$_lp`Z!|~lG5H7i>?k}YUpKSN*$i|NqPz}8S$edb(QUPd4mKEu7ZVr%YSu&1QaX7V|MAr3BBqz|M5NAu9m;pXcJTFT29i-vdG5P(;L6!9U`>aj=fYud`A_!^Q zA|iQ#6J!@douW5ndX&#x+{+$aP(9%ZaOCcjXKN8~HR_#`b!(SCy{S7~FKpQZ4H1jy@ZX=wznUQrC(E&{ zxJ6Sah}7Jof1b(T&XBg_pt`NlSSA~3snPiFv)$w3+^~U@X@|O#eazIT`*+zo7$cc? zc8EJU7bi91VxIkamg*r&YrI;m-3aY%ZLUS;{kLQJ&u2*AwVg(@9(L3)vr_OGXu)U3 z>Tnbi!HUFAQO}o}#C~-?Q;DrL+ug9Ue6`((jnO-ELpwYM4E*s#W6V_C97&36JV&uV z#}gktme1v$I5V4D;oT^5``Q%O{PK~mHEx@JXVBAp{9@ya{&Jd&zCXC=ac(w!(#9#? z`*XrlnP-Zm-gM?s_47~&NacqD(!yQsK0WHalJ}T!+Wyx%+NywKn1 zM(f=3>Q=SUS}iCWes^J?-J46;v}rgUlH8j5JNC@c&+%Gvj#Ly#F{9IkO!p(m8zV59H>~oPO%mi0jgKTh#SVORJvE_+aq>exH?C*%W}$ zX%IMS|CsU7!AMfS72-Nc*&ScApBiy9KDD*q9({7nT57cYmzn&X46W>lw(+UVGo4Q3 z7sCi{$_fWhQ5l#TmC3Eka{ozCSuJ@x5Eo4c#2SIY6>Fblgzji$RK&q4s|VVat{UbURQucd%7X%xgW7^_?wyh zuhiOG=fYdnt?g!bE^KwTSJ&G+on9EWp5}0-v-@<&2@Th5x5pjUn0)!%4W+525dUPO zHy!W$AxLg$MUX((cem~F>=X@ZQd77YA5Gcq0zE~FZ7O^l)sbXR*@``lFcPyKuV&Mu z?0+81G$ChyBYP|7AgT%fJ=?Y_Q=ykyv6)o9Y#IC+2VFX0N0F$bghDH{ouUb4YMal$ z&g6e5Lx1&91XL@;o&t$8HDbfapUaZimYb>iljAO_>_}0=tBeCLV|r8DVPAXrl`>0T zglIg(m6jGJB!jtjpZRcC+1)d4B9{wPayftvq;3Wv!fye;b8S zBp-iJr(YH>HN#uaG#eXy^Af3ImELYMl)S$EnXs|3*^?8O;(Q1>{#@9TMP9B|6*Dxf z^%oY3ZKKuk@W|d_>a%GJaVS>i} zh0I^+R9nn={90I-#cN>~ce5L+55uq8HziMJW367%MW5jP$J^bW%2wf0Ug z>_l%XHygd$rYu&rtF`a~v+6C*(FYxpe~2HQ9yEBSR%7MY!djFLwE>OfgOy%;`{1AC zbY*9)TkAB|!p`Mt3%YdV!xusgVwt1n7E3K+yUnj2J($?Wy; zR!>e|=SI62WH{F{|578o$rsM(&uD=RsOw@i`PJ3oR~J`T_X>FA0WZX%<~DV=~spaO*-=6U_?&!-}k@$qaz>taeXb@(BViCUe=P|0zz~mAP6ZxD}%q$WoCW zXJyazgnrTm5D;BOI+qvIACyibM>4D&&9KhV4C^k*&zjN}P-?dbDi+YdJ_yxbP+m$f zI1=}N52&4k9}W)Bqf1O+x_;QKP@;u7mCJ4fw^Jzed&jGW71Q;P8J_hgYpSauzc zE7Ii#918k}>H1BH0wgbkLKIky{$vP@zho>PAe@z*Qi(1^iXZ@|!Du79)~5}rE>2Jc zAc7W}H2ZNB#LgMw#2b@@{fURkz;1ySrBZ;k&FSngR!OM>YK^jt>!77gA0CaKJkOzZ zJG20l#bu9OlAklAEqqY)6~l?1X?_4unUwmy_+wMYc+r8&vvVbY*`NXnu8;yH!1yXD zBP*J3$qg8FNldv6aR^u;{qbo}j?@K3SsFxsjCa^EgR_Mk>F`IqdS`F-ru(Zlg)MqM zs01{O)&_oFFw!d8Tyn~RQ=|zs4Z*elGCKp7qbX+toD#6b_-rg-`*|+i$Wj=zh&BZw zfIiXe+l2x>v{M*V;qDO>EITmUise98YHD)<8AEqZMN-9Hq?F46Za3j({Jf!Ff(dkg z0)pVIoAjmu#sT2hw# z-6&&cZs3cW@}UPxn&Y4lLGb~Ot}KG}^pfe)L0(hvH4o?t9UrZYk6SSo8oHp;6}4C> zBjfZgWHU>_s$qNeFvpNV@VZLu25E>l2-2Q{DA253O#Af?@^@B!UEi*-X_wk1T@FW}SF!h?_qWDlmOyC43zR`CyyE901O>kiu34}L* z1L`3021D`+z6g<9!K4Coop1@;$EdMvxM+|J5I08x0^x`e@M*^oi6i2 zj3N{v7_M`ON4M}L*)*dufg%r;pxP3rS|N>`_X`An(r_kph5AW&O-w={SZ$Yd9wt18 zgmC7=O%%#RNPHfqAwv@kA$~zL7>gc^Np=)=e$z2kPZ9?p;2@qJIjAdUI40&h_BL@5 zaO{0xF?pIPj9Fwn2d9~5g^PesV=T;y9fA#2g3&n2!Egi8Vt9&fXi<$Bn@xE*x+#VA zD90n3Rm88uo&amuSXB_if*S0{;Az5U;L7-;kwU|u(3tU|2)PZ_t?u*Ht+jg9nC~#I z*z<^k;5};e%t7W1qcymW9Q47=9_Io<0b9k@Xw9=2^Zbf?bKLCI6EZj zLG%MpiDOQpri}RsGZpD8)DV8NLnsd?Oih5Leg=ji591htiH#rw-X6qhyEloX`!=NIK*E zC|$}>4UZW-Qabo7(eQ>UM`0EBV_z9RzcFx9a>>Xji4&T+;Z(-agz1l`u%1}yKbOKt zQRMumj0PG_#Wovjq-&8Z8?9^T0GZJ#ksoNrN_!T}iqUa0k0TwQ(~k+=E(Dg1CACznBM4K?Sz?DNR(Zqv7|VS@h6Q)bwkWx>0>hKA~|3FnEb?qk(~3z z;^eDJ(Nz;BES9F2uoz4;p~y57dWG}eBr-@rrn$(OOi;qUQ(WY@I^E$^Ckh$e-cyG@ z8;M4maE-4^nlM|bFaAaYo4!_8shMRo% zd~qT-`Q9`a`O{nk3rwDlyPJGbIlAa@T9&4uWoa5(2Gh_on1)QjG-L{2iF7LgD$%xO{lFQD0q^4>i`8o89mN#jCZ=eP5hytaq11Un_FFf$yDbv}(;={ncdvt%oCEwVy zvhoQ-ssD%A)|qYes7`+5vpd~hV||xpMUU**4OwhfcPT3F6K%d3wl*kho@)^tUygrN zB%iQVW+QVW$7>un(9ado*H1*RpOnYjanbX|!M+=XJ(S|Pc8hXhEr343J8G^l!OLZ=t=>3p}>Y2OHCt{auC=lBbJ zr{9X->9-bon~m-YtG^|=Uc1ukC_#QCZXWP#gTm|OX1JvoGIA>Z<(0M1@(5eR$L#wbQ+_esL3+vkQD7qQKnEMxCd5?3Ntcl{0tmeEGeXUwQXCZ{2(Sdk^0D#=XzI zDvu_Ar)BX^#=p4t+i%{x{mr{ydiCzt|K#qQclZmHc_}*)OJ{%zN*9E@&;GM5>fz0!A_s$>5nfU6FH9fg+g#Al6bN}rx-+$}%_g=ky z|Lt$S`_9+yz4C^9@WHp=xc}O>o__axU%z+z4b=)re(;S~;uYWj%IEi% S_3~T1*ZY$GHSw(DulZlXA#+*) literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.ts new file mode 100644 index 0000000..3ca13c8 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.ts @@ -0,0 +1,1313 @@ +interface CreateLabel_Params { + simObj?: SimBase; + isShowLabel?: boolean // 是否显示标签 + ; +} +interface CreateImg_Params { + allSimObj?: SimBase[] // 仿真对象数组 + ; + allSimConn?: SimConnect[] // 仿真连接线数组 + ; + TempConn?: any[] // 临时any数组 + ; + simObj?: SimBase // 当前对象 + ; + isNewObj?: boolean // 是否新增对象 + ; + newObjType?: number // 新增对象类型 + ; + choseIndex?: number | null // 选中对象下标 + ; + isNewConn?: boolean // 是否正在新增连接线 + ; + thisIndex?: number; +} +interface CreatePort_Params { + objS?: SimBase; + objE?: SimBase; + conn?: SimConnect; + r?: number; +} +interface CreateCon_Params { + objS?: SimBase; + objE?: SimBase; +} +interface MiddleContent_Params { + allSimObj?: SimBase[] // 仿真对象数组 + ; + allSimConn?: SimConnect[] // 仿真连接线数组 + ; + TempConn?: any[] // 临时any数组 + ; + isNewObj?: boolean // 是否插入新增对象 + ; + newObjType?: number // 新增对象类型 + ; + choseIndex?: number | null // 选中对象下标 + ; + isNewConn?: boolean // 是否正在新增连接线 + ; + isShowLabel?: boolean // 是否显示标签 + ; + isShowPort?: boolean // 是否显示接口 + ; + isShowInterface?: boolean // 是否显示网络配置信息 + ; + isShowTable?: boolean // 是否显示路由/交换表信息 + ; + allSimPacket?: SimPacket[] // 单次数据包传输的集合 + ; + isNewPacket?: number; + isNewPacketArrived?: number; +} +import promptAction from "@ohos:promptAction"; +import { SimConnect, SimHost, SimHub, SimRouter, SimSwitch } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/OtherSimObjects"; +import type { SimPacket } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/OtherSimObjects"; +import type { SimBase } from "../classes/SimBase"; +import { TableChart, NetworkChart } from "@bundle:com.example.ensp_fourteen/entry/ets/components/Table"; +export class MiddleContent extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.__isShowPort = this.initializeConsume("isShowPort", "isShowPort"); + this.__isShowInterface = this.initializeConsume("isShowInterface", "isShowInterface"); + this.__isShowTable = this.initializeConsume("isShowTable", "isShowTable"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.__isNewPacket = this.createStorageProp("isNewPacket", 0, "isNewPacket"); + this.__isNewPacketArrived = this.createStorageProp("isNewPacketArrived", 0, "isNewPacketArrived"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: MiddleContent_Params) { + } + updateStateVars(params: MiddleContent_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + this.__isNewPacket.purgeDependencyOnElmtId(rmElmtId); + this.__isNewPacketArrived.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + this.__isNewPacket.aboutToBeDeleted(); + this.__isNewPacketArrived.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __allSimObj: ObservedPropertyAbstractPU; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyAbstractPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[] // 仿真连接线数组 + ) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 临时any数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 临时any数组 + ) { + this.__TempConn.set(newValue); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否插入新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否插入新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __isNewConn: ObservedPropertyAbstractPU; // 是否正在新增连接线 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean // 是否正在新增连接线 + ) { + this.__isNewConn.set(newValue); + } + private __isShowLabel: ObservedPropertyAbstractPU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean // 是否显示标签 + ) { + this.__isShowLabel.set(newValue); + } + private __isShowPort: ObservedPropertyAbstractPU; // 是否显示接口 + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue: boolean // 是否显示接口 + ) { + this.__isShowPort.set(newValue); + } + private __isShowInterface: ObservedPropertyAbstractPU; // 是否显示网络配置信息 + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue: boolean // 是否显示网络配置信息 + ) { + this.__isShowInterface.set(newValue); + } + private __isShowTable: ObservedPropertyAbstractPU; // 是否显示路由/交换表信息 + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue: boolean // 是否显示路由/交换表信息 + ) { + this.__isShowTable.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; // 单次数据包传输的集合 + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[] // 单次数据包传输的集合 + ) { + this.__allSimPacket.set(newValue); + } + private __isNewPacket: ObservedPropertyAbstractPU; + get isNewPacket() { + return this.__isNewPacket.get(); + } + set isNewPacket(newValue: number) { + this.__isNewPacket.set(newValue); + } + private __isNewPacketArrived: ObservedPropertyAbstractPU; + get isNewPacketArrived() { + return this.__isNewPacketArrived.get(); + } + set isNewPacketArrived(newValue: number) { + this.__isNewPacketArrived.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/MiddleContent.ets(24:5)"); + Row.width('100%'); + Row.height('74%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // 画布 + Stack.create(); + Stack.debugLine("components/MiddleContent.ets(26:7)"); + // 画布 + Stack.width('56%'); + // 画布 + Stack.height('100%'); + // 画布 + Stack.border({ color: Color.Black, width: 1 }); + // 画布 + Stack.onClick((event: ClickEvent) => { + if (this.isNewObj) { // 若要插入新增对象 + const obj = this.newObjType == 1 ? new SimHost(event.x - 25, event.y - 15) : this.newObjType == 2 ? new SimRouter(event.x - 25, event.y - 15) : this.newObjType == 3 ? new SimSwitch(event.x - 25, event.y - 15) : new SimHub(event.x - 25, event.y - 15); + this.allSimObj.push(obj as SimBase); // 插入并绘制新增对象 + } + else if (!this.isNewObj && this.allSimObj.some(item => item.isChose == true)) { + this.allSimObj[this.choseIndex].objX = event.x - 25; // 更新X坐标 + this.allSimObj[this.choseIndex].objY = event.y - 15; // 更新Y坐标 + this.allSimObj[this.choseIndex].isChose = false; // 更新选中状态为未选中 + } + this.isNewObj = false; // 取消新增状态 + this.newObjType = -1; // 取消新增类型 + this.choseIndex = null; // 取消选中下标 + this.isNewConn = false; // 取消新增连接线 + this.TempConn = []; // 清空临时连接线对象 + }); + if (!isInitialRender) { + // 画布 + Stack.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + objS: item.nObjS as SimBase, + objE: item.nObjE as SimBase + }; + }; + ViewPU.create(new CreateCon(this, { objS: item.nObjS as SimBase, objE: item.nObjE as SimBase }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + objS: item.nObjS as SimBase, objE: item.nObjE as SimBase + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + objS: item.nObjS as SimBase, + objE: item.nObjE as SimBase, + conn: item + }; + }; + ViewPU.create(new CreatePort(this, { objS: item.nObjS as SimBase, objE: item.nObjE as SimBase, conn: item }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + objS: item.nObjS as SimBase, objE: item.nObjE as SimBase, conn: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }; + this.forEachUpdateFunction(elmtId, this.allSimConn, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: item, + thisIndex: index + }; + }; + ViewPU.create(new CreateImg(this, { simObj: item, thisIndex: index }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: item + }; + }; + ViewPU.create(new CreateLabel(this, { simObj: item }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }; + this.forEachUpdateFunction(elmtId, this.allSimObj, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + // 画布 + Stack.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create({ space: 3 }); + Column.debugLine("components/MiddleContent.ets(56:7)"); + Column.width('22%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(57:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机详情"); + Text.debugLine("components/MiddleContent.ets(58:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(62:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isNewPacket) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.allSimPacket[this.allSimPacket.length - 1].sendHost.objLabel); + Text.debugLine("components/MiddleContent.ets(64:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.allSimPacket[this.allSimPacket.length - 1].sourceIp); + Text.debugLine("components/MiddleContent.ets(65:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.allSimPacket[this.allSimPacket.length - 1].sourceMac); + Text.debugLine("components/MiddleContent.ets(66:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送数据包大小:1024kB"); + Text.debugLine("components/MiddleContent.ets(67:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已发送数据包数量:1"); + Text.debugLine("components/MiddleContent.ets(68:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要发送的数据包总数:1"); + Text.debugLine("components/MiddleContent.ets(69:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(77:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收主机详情"); + Text.debugLine("components/MiddleContent.ets(78:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(82:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isNewPacketArrived) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // Text("接收主机:") + Text.create("IP地址:" + this.allSimPacket[this.allSimPacket.length - 1].targetIp); + Text.debugLine("components/MiddleContent.ets(85:15)"); + if (!isInitialRender) { + // Text("接收主机:") + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + // Text("接收主机:") + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.allSimPacket[this.allSimPacket.length - 1].targetMac); + Text.debugLine("components/MiddleContent.ets(86:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收数据包大小:1024kB"); + Text.debugLine("components/MiddleContent.ets(87:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已接收数据包数量:1"); + Text.debugLine("components/MiddleContent.ets(88:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要接收的数据包总数:1"); + Text.debugLine("components/MiddleContent.ets(89:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // 配置信息展示 + Column.create({ space: 3 }); + Column.debugLine("components/MiddleContent.ets(101:7)"); + // 配置信息展示 + Column.width('22%'); + // 配置信息展示 + Column.height('100%'); + // 配置信息展示 + Column.padding(2); + // 配置信息展示 + Column.justifyContent(FlexAlign.SpaceBetween); + // 配置信息展示 + Column.layoutWeight(1); + if (!isInitialRender) { + // 配置信息展示 + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(102:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("网络配置信息"); + Text.debugLine("components/MiddleContent.ets(103:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(107:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.choseIndex != null && this.isShowInterface) { + this.ifElseBranchUpdateFunction(0, () => { + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + ViewPU.create(new NetworkChart(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: this.allSimObj[this.choseIndex] + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(117:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("路由/交换表信息"); + Text.debugLine("components/MiddleContent.ets(118:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(122:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.choseIndex != null && this.isShowTable) { + this.ifElseBranchUpdateFunction(0, () => { + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + ViewPU.create(new TableChart(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: this.allSimObj[this.choseIndex] + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + // 配置信息展示 + Column.pop(); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateCon extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__objS = new SynchedPropertyNesedObjectPU(params.objS, this, "objS"); + this.__objE = new SynchedPropertyNesedObjectPU(params.objE, this, "objE"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreateCon_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + } + updateStateVars(params: CreateCon_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__objS.purgeDependencyOnElmtId(rmElmtId); + this.__objE.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__objS.aboutToBeDeleted(); + this.__objE.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __objS: SynchedPropertyNesedObjectPU; + get objS() { + return this.__objS.get(); + } + private __objE: SynchedPropertyNesedObjectPU; + get objE() { + return this.__objE.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Line.create(); + Line.debugLine("components/MiddleContent.ets(150:5)"); + Line.width('100%'); + Line.height('100%'); + Line.stroke(Color.Black); + Line.startPoint([this.objS.objX + 25, this.objS.objY + 15]); + Line.endPoint([this.objE.objX + 25, this.objE.objY + 15]); + if (!isInitialRender) { + Line.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + rerender() { + this.updateDirtyElements(); + } +} +class coordinates { + x: number; + y: number; + constructor(x: number, y: number) { + this.x = x; + this.y = y; + } +} +class CreatePort extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__objS = new SynchedPropertyNesedObjectPU(params.objS, this, "objS"); + this.__objE = new SynchedPropertyNesedObjectPU(params.objE, this, "objE"); + this.__conn = new SynchedPropertyNesedObjectPU(params.conn, this, "conn"); + this.r = 30; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreatePort_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + this.__conn.set(params.conn); + if (params.r !== undefined) { + this.r = params.r; + } + } + updateStateVars(params: CreatePort_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + this.__conn.set(params.conn); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__objS.purgeDependencyOnElmtId(rmElmtId); + this.__objE.purgeDependencyOnElmtId(rmElmtId); + this.__conn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__objS.aboutToBeDeleted(); + this.__objE.aboutToBeDeleted(); + this.__conn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __objS: SynchedPropertyNesedObjectPU; + get objS() { + return this.__objS.get(); + } + private __objE: SynchedPropertyNesedObjectPU; + get objE() { + return this.__objE.get(); + } + private __conn: SynchedPropertyNesedObjectPU; + get conn() { + return this.__conn.get(); + } + private r: number; + k() { + return (this.objS.objY - this.objE.objY) / (this.objS.objX - this.objE.objX); + } // 直线斜率 + distance(point1: coordinates, point2: coordinates) { + return Math.sqrt((point1.x - point2.x) ** 2 + (point1.y - point2.y) ** 2); + } // 两点距离 + closerSPoint() { + let objEPoint = new coordinates(this.objE.objX + 25, this.objE.objY + 15); + let objSPoint1 = new coordinates(this.objS.objX + 25 + this.r / Math.sqrt(this.k() ** 2 + 1), this.objS.objY + 15 + this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objSPoint2 = new coordinates(this.objS.objX + 25 - this.r / Math.sqrt(this.k() ** 2 + 1), this.objS.objY + 15 - this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objSPoint = this.distance(objSPoint1, objEPoint) < this.distance(objSPoint2, objEPoint) ? objSPoint1 : objSPoint2; + return { x: objSPoint.x, y: objSPoint.y }; + } + closerEPoint() { + let objSPoint = new coordinates(this.objS.objX + 25, this.objS.objY + 15); + let objEPoint1 = new coordinates(this.objE.objX + 25 + this.r / Math.sqrt(this.k() ** 2 + 1), this.objE.objY + 15 + this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objEPoint2 = new coordinates(this.objE.objX + 25 - this.r / Math.sqrt(this.k() ** 2 + 1), this.objE.objY + 15 - this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objEPoint = this.distance(objEPoint1, objSPoint) < this.distance(objEPoint2, objSPoint) ? objEPoint1 : objEPoint2; + return { x: objEPoint.x, y: objEPoint.y }; + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Stack.create(); + Stack.debugLine("components/MiddleContent.ets(202:5)"); + Stack.width('100%'); + Stack.height('100%'); + if (!isInitialRender) { + Stack.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.conn.ifsS.toString()); + Text.debugLine("components/MiddleContent.ets(203:7)"); + Text.fontSize(15); + Text.fontColor(Color.Green); + Text.fontWeight(FontWeight.Bold); + Text.position(this.closerSPoint()); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.conn.ifsE.toString()); + Text.debugLine("components/MiddleContent.ets(208:7)"); + Text.fontSize(15); + Text.fontColor(Color.Green); + Text.fontWeight(FontWeight.Bold); + Text.position(this.closerEPoint()); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Stack.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateImg extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.thisIndex = undefined; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreateImg_Params) { + this.__simObj.set(params.simObj); + if (params.thisIndex !== undefined) { + this.thisIndex = params.thisIndex; + } + } + updateStateVars(params: CreateImg_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__simObj.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __allSimObj: ObservedPropertyAbstractPU; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyAbstractPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[] // 仿真连接线数组 + ) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 临时any数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 临时any数组 + ) { + this.__TempConn.set(newValue); + } + private __simObj: SynchedPropertyNesedObjectPU; // 当前对象 + get simObj() { + return this.__simObj.get(); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __isNewConn: ObservedPropertyAbstractPU; // 是否正在新增连接线 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean // 是否正在新增连接线 + ) { + this.__isNewConn.set(newValue); + } + private thisIndex: number; + InterfaceMenu(parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/MiddleContent.ets(234:5)"); + Menu.radius(8); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (item === null) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: "接口" + (index + 1).toString() }); + MenuItem.debugLine("components/MiddleContent.ets(237:11)"); + MenuItem.width(70); + MenuItem.height(30); + MenuItem.contentFont({ size: 14 }); + MenuItem.onChange(() => { + if (!this.isNewConn) { + this.TempConn.push(this.allSimObj[this.thisIndex]); + this.TempConn.push(index + 1); + } + else { + if (this.TempConn[0] != this.simObj && !this.TempConn[0].interface.includes(ObservedObject.GetRawObject(this.simObj))) { + const conn = new SimConnect(this.TempConn[0], this.allSimObj[this.thisIndex], this.TempConn[1], index + 1); + this.allSimConn.push(conn); + // 更新两个连接对象中的连接线信息 + conn.updateObjConn(); + this.TempConn = []; + } + else { + this.TempConn = []; + promptAction.showToast({ + message: "请选择连接不同的对象", + duration: 3000, + bottom: 50 + }); + } + } + if (this.choseIndex != null) { + this.allSimObj[this.choseIndex].isChose = false; + } + this.isNewObj = false; + this.newObjType = -1; + this.choseIndex = null; + this.isNewConn = !this.isNewConn; + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: "接口" + (index + 1).toString() + "已连接" }); + MenuItem.debugLine("components/MiddleContent.ets(270:11)"); + MenuItem.width(105); + MenuItem.height(30); + MenuItem.contentFont({ size: 13, style: FontStyle.Italic }); + MenuItem.contentFontColor(Color.Green); + MenuItem.onChange(() => { + promptAction.showToast({ + message: "该接口已连接", + duration: 3000, + bottom: 50 + }); + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.interface, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(289:5)"); + Column.position({ x: this.simObj.objX, y: this.simObj.objY }); + Column.bindContextMenu({ builder: () => { + this.InterfaceMenu.call(this); + } }, ResponseType.LongPress); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Image.create(this.simObj.img); + Image.debugLine("components/MiddleContent.ets(290:7)"); + Image.width(50); + Image.border({ + color: this.TempConn[0] === this.simObj ? Color.Green : this.simObj.isChose ? Color.Red : Color.Transparent, + width: 1.2 + }); + Image.onClick(() => { + this.TempConn = []; + this.isNewObj = false; // 取消插入新对象状态 + this.newObjType = -1; + this.isNewConn = false; + if (!this.allSimObj.some(item => item.isChose == true)) { // 若没有对象被选中 + this.choseIndex = this.thisIndex; // 更新选中对象的下标 + this.simObj.changeIsChose(); // 更新对象选中状态 + } + else if (this.simObj.isChose) { // 若要取消选中对象 + this.choseIndex = null; // 更新选中下标为null + this.simObj.changeIsChose(); // 更新对象选中状态 + } + else if (!this.simObj.isChose && this.choseIndex != null) { // 若要更换选择对象 + this.allSimObj[this.choseIndex].changeIsChose(); // 更新上一个选中对象选中状态 + this.choseIndex = this.thisIndex; // 更新选中下标 + this.simObj.changeIsChose(); // 更新当前对象选中状态 + } + }); + if (!isInitialRender) { + Image.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateLabel extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreateLabel_Params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params: CreateLabel_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __isShowLabel: ObservedPropertyAbstractPU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean // 是否显示标签 + ) { + this.__isShowLabel.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isShowLabel) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.simObj.objLabel); + Text.debugLine("components/MiddleContent.ets(327:7)"); + Text.fontSize(15); + Text.position({ x: this.simObj.objX + 25, y: this.simObj.objY - 12 }); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..80e83ac787d261f40a0fe07d46a643ed1d47d55e GIT binary patch literal 222603 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 + get simObj() { + return this.__simObj.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(9:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objType == 1 || this.simObj.objType == 2) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(11:9)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simObj.ip); + Text.debugLine("components/Table.ets(12:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址:" + this.simObj.mac); + Text.debugLine("components/Table.ets(14:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }); + } + else if (this.simObj.objType == 3) { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(17:9)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址:" + this.simObj.mac); + Text.debugLine("components/Table.ets(18:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(2, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class TableChart extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: TableChart_Params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params: TableChart_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(32:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objType == 2) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Table.ets(35:11)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("端口" + item.port.toString() + ":"); + Text.debugLine("components/Table.ets(36:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.net); + Text.debugLine("components/Table.ets(38:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Row.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.routerTable, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + }); + } + else if (this.simObj.objType == 3) { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Table.ets(43:11)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("端口" + item.port.toString() + ":"); + Text.debugLine("components/Table.ets(44:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.net); + Text.debugLine("components/Table.ets(46:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Row.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.switchTable, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(2, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class sendHost extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simPacket = new SynchedPropertyNesedObjectPU(params.simPacket, this, "simPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: sendHost_Params) { + this.__simPacket.set(params.simPacket); + } + updateStateVars(params: sendHost_Params) { + this.__simPacket.set(params.simPacket); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simPacket: SynchedPropertyNesedObjectPU; + get simPacket() { + return this.__simPacket.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(61:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.simPacket.sendHost); + Text.debugLine("components/Table.ets(62:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simPacket.targetIp); + Text.debugLine("components/Table.ets(63:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.simPacket.targetMac); + Text.debugLine("components/Table.ets(64:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送数据包大小:" + this.simPacket.size); + Text.debugLine("components/Table.ets(65:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已发送数据包数量:" + 1); + Text.debugLine("components/Table.ets(66:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要发送的数据包总数:" + 1); + Text.debugLine("components/Table.ets(67:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class targetHost extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simPacket = new SynchedPropertyNesedObjectPU(params.simPacket, this, "simPacket"); + this.host = undefined; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: targetHost_Params) { + this.__simPacket.set(params.simPacket); + if (params.host !== undefined) { + this.host = params.host; + } + } + updateStateVars(params: targetHost_Params) { + this.__simPacket.set(params.simPacket); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simPacket: SynchedPropertyNesedObjectPU; + get simPacket() { + return this.__simPacket.get(); + } + private host: string; + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(80:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.host); + Text.debugLine("components/Table.ets(81:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simPacket.targetIp); + Text.debugLine("components/Table.ets(82:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.simPacket.targetMac); + Text.debugLine("components/Table.ets(83:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收数据包大小:" + this.simPacket.size); + Text.debugLine("components/Table.ets(84:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已接收数据包数量:" + this.host); + Text.debugLine("components/Table.ets(85:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要接收的数据包总数:" + this.host); + Text.debugLine("components/Table.ets(86:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..e14c7ad7fdbe6431a06498fa801edd3393812a17 GIT binary patch literal 231877 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 bYtHU3e0cXWcL;jt?fLv;yKi~I=Fa~IpDeTR literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.ts new file mode 100644 index 0000000..9981a2e --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.ts @@ -0,0 +1,531 @@ +interface TopMenuBar_Params { + // 修改标签控制器 + reviseLabelController?: CustomDialogController; + // 删除连接线控制器 + deleteLineController?: CustomDialogController; + // 网络配置控制器 + NetworkController?: CustomDialogController; + // 路由表配置配置器 + RouterController?: CustomDialogController; + // 转换表配置控制器 + SwitchController?: CustomDialogController; + // 数据包设置控制器 + PacketController?: CustomDialogController; + // 批量数据包设置控制器 + BatchPacketController?: CustomDialogController; + menuArr?: TopMenu[]; + allSimObj?: SimBase[] // 仿真对象数组 + ; + allSimConn?: SimConnect[] // 仿真连接线数组 + ; + TempConn?: any[] // 临时any数组 + ; + isNewObj?: boolean // 是否新增对象 + ; + newObjType?: number // 新增对象类型 + ; + choseIndex?: number | null // 选中对象下标 + ; + isShowLabel?: boolean // 是否显示标签 + ; + isShowPort?: boolean // 是否显示接口 + ; + isShowInterface?: boolean // 是否显示网络配置信息 + ; + isShowTable?: boolean // 是否显示路由/交换表信息 + ; + allSimPacket?: SimPacket[] // 单次数据包传输的集合 + ; +} +import promptAction from "@ohos:promptAction"; +import type { SimBase } from "../classes/SimBase"; +import type { SimConnect, SimPacket } from "../classes/OtherSimObjects"; +import { TopMenu, TopMenuItem } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/TopMenu"; +import { LabelRevise, LineDelete, NetworkConfig, RouterTableConfig, SwitchTableConfig, PacketSet, BatchPacketSet } from "@bundle:com.example.ensp_fourteen/entry/ets/components/Dialog"; +export class TopMenuBar extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.reviseLabelController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new LabelRevise(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 修改标签控制器 + reviseLabelController); + ViewPU.create(jsDialog); + } + }, this); + this.deleteLineController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new LineDelete(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 删除连接线控制器 + deleteLineController); + ViewPU.create(jsDialog); + } + }, this); + this.NetworkController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new NetworkConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 网络配置控制器 + NetworkController); + ViewPU.create(jsDialog); + } + }, this); + this.RouterController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new RouterTableConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 路由表配置配置器 + RouterController); + ViewPU.create(jsDialog); + } + }, this); + this.SwitchController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new SwitchTableConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 转换表配置控制器 + SwitchController); + ViewPU.create(jsDialog); + } + }, this); + this.PacketController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new PacketSet(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 数据包设置控制器 + PacketController); + ViewPU.create(jsDialog); + } + }, this); + this.BatchPacketController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new BatchPacketSet(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 批量数据包设置控制器 + BatchPacketController); + ViewPU.create(jsDialog); + } + }, this); + this.menuArr = [ + new TopMenu("删除与修改", [new TopMenuItem("删除对象", () => { + if (this.choseIndex != null) { + this.allSimConn = this.allSimConn.filter((item) => { + if (this.allSimObj[this.choseIndex].objID === item.nObjE.objID || this.allSimObj[this.choseIndex].objID === item.nObjS.objID) { + item.deleteObjConn(); // 删除线时应该先将线两端的设备的connection设置为null + return false; + } + return true; + }); + this.allSimObj.splice(this.choseIndex, 1); + this.isNewObj = false; + this.newObjType = -1; + this.choseIndex = null; + } + else { + promptAction.showToast({ + message: "请先选择要删除的对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("删除连接线", () => { + if (this.choseIndex != null) { + this.deleteLineController.open(); + } + else { + promptAction.showToast({ + message: "请选择要删除的连接线对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("修改标签", () => { + if (this.choseIndex != null) { + this.reviseLabelController.open(); + } + else { + promptAction.showToast({ + message: "请选择仿真对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("基础配置", [new TopMenuItem("网络配置", () => { + if (this.choseIndex != null && (this.allSimObj[this.choseIndex].objType == 1 || this.allSimObj[this.choseIndex].objType == 2 || this.allSimObj[this.choseIndex].objType == 3)) { + this.NetworkController.open(); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("路由器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 2) { + this.RouterController.open(); + } + else { + promptAction.showToast({ + message: "请选择路由器对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("交换器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 3) { + this.SwitchController.open(); + } + else { + promptAction.showToast({ + message: "请选择交换机对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("显示设置", [new TopMenuItem("显示/不显示标签", () => { + this.isShowLabel = !this.isShowLabel; + }), new TopMenuItem("显示/不显示接口", () => { + this.isShowPort = !this.isShowPort; + }), new TopMenuItem("显示/不显示配置信息", () => { + this.isShowInterface = !this.isShowInterface; + }), new TopMenuItem("显示/不显示交换表信息", () => { + this.isShowTable = !this.isShowTable; + })]), + new TopMenu("发送数据包", [new TopMenuItem("发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1) { + this.PacketController.open(); + } + else { + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("批量发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1) { + this.BatchPacketController.open(); + } + else { + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("清除屏幕", [new TopMenuItem("清除屏幕", () => { + this.allSimObj = []; + this.allSimConn = []; + this.TempConn = []; + this.isNewObj = false; + this.choseIndex = null; + })]) + ] // 顶部菜单栏数组 + ; + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.__isShowPort = this.initializeConsume("isShowPort", "isShowPort"); + this.__isShowInterface = this.initializeConsume("isShowInterface", "isShowInterface"); + this.__isShowTable = this.initializeConsume("isShowTable", "isShowTable"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: TopMenuBar_Params) { + if (params.reviseLabelController !== undefined) { + this.reviseLabelController = params.reviseLabelController; + } + if (params.deleteLineController !== undefined) { + this.deleteLineController = params.deleteLineController; + } + if (params.NetworkController !== undefined) { + this.NetworkController = params.NetworkController; + } + if (params.RouterController !== undefined) { + this.RouterController = params.RouterController; + } + if (params.SwitchController !== undefined) { + this.SwitchController = params.SwitchController; + } + if (params.PacketController !== undefined) { + this.PacketController = params.PacketController; + } + if (params.BatchPacketController !== undefined) { + this.BatchPacketController = params.BatchPacketController; + } + if (params.menuArr !== undefined) { + this.menuArr = params.menuArr; + } + } + updateStateVars(params: TopMenuBar_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + // 修改标签控制器 + private reviseLabelController: CustomDialogController; + // 删除连接线控制器 + private deleteLineController: CustomDialogController; + // 网络配置控制器 + private NetworkController: CustomDialogController; + // 路由表配置配置器 + private RouterController: CustomDialogController; + // 转换表配置控制器 + private SwitchController: CustomDialogController; + // 数据包设置控制器 + private PacketController: CustomDialogController; + // 批量数据包设置控制器 + private BatchPacketController: CustomDialogController; + MenuItem(menuItemArr: TopMenuItem[], parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/TopMenuBar.ets(40:5)"); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: item.title }); + MenuItem.debugLine("components/TopMenuBar.ets(42:9)"); + MenuItem.onChange(() => { + if (item.fun) { + item.fun(); + } + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }; + this.forEachUpdateFunction(elmtId, menuItemArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + } // 顶部菜单栏按钮每小项 + MenuButton(menuArr: TopMenu[], parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel(item.title); + Button.debugLine("components/TopMenuBar.ets(55:7)"); + Button.type(ButtonType.Normal); + Button.fontColor(Color.Black); + Button.border({ color: Color.Black, width: 1 }); + Button.backgroundColor(Color.Transparent); + Button.bindMenu({ builder: () => { + this.MenuItem.call(this, item.menuItemArr); + } }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + }; + this.forEachUpdateFunction(elmtId, menuArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + } // 顶部菜单栏按钮 + private menuArr: TopMenu[]; // 顶部菜单栏数组 + private __allSimObj: ObservedPropertyAbstractPU; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyAbstractPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[] // 仿真连接线数组 + ) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 临时any数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 临时any数组 + ) { + this.__TempConn.set(newValue); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __isShowLabel: ObservedPropertyAbstractPU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean // 是否显示标签 + ) { + this.__isShowLabel.set(newValue); + } + private __isShowPort: ObservedPropertyAbstractPU; // 是否显示接口 + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue: boolean // 是否显示接口 + ) { + this.__isShowPort.set(newValue); + } + private __isShowInterface: ObservedPropertyAbstractPU; // 是否显示网络配置信息 + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue: boolean // 是否显示网络配置信息 + ) { + this.__isShowInterface.set(newValue); + } + private __isShowTable: ObservedPropertyAbstractPU; // 是否显示路由/交换表信息 + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue: boolean // 是否显示路由/交换表信息 + ) { + this.__isShowTable.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; // 单次数据包传输的集合 + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[] // 单次数据包传输的集合 + ) { + this.__allSimPacket.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/TopMenuBar.ets(190:5)"); + Row.height('12%'); + Row.width('100%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.MenuButton.bind(this)(this.menuArr); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..1a2eebea530f587e5bded16b2b823c31fdc28518 GIT binary patch literal 25551 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 XM__qh60lmT--WZ>@1k4klkWcqkm*6I literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.ts new file mode 100644 index 0000000..766393b --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.ts @@ -0,0 +1,36 @@ +import type AbilityConstant from "@ohos:app.ability.AbilityConstant"; +import hilog from "@ohos:hilog"; +import UIAbility from "@ohos:app.ability.UIAbility"; +import type Want from "@ohos:app.ability.Want"; +import type window from "@ohos:window"; +export default class EntryAbility extends UIAbility { + onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + } + onDestroy(): void { + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); + } + onWindowStageCreate(windowStage: window.WindowStage): void { + // Main window is created, set main page for this ability + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + windowStage.loadContent('pages/Index', (err, data) => { + if (err.code) { + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? ''); + }); + } + onWindowStageDestroy(): void { + // Main window is destroyed, release UI related resources + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + onForeground(): void { + // Ability has brought to foreground + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onForeground'); + } + onBackground(): void { + // Ability has back to background + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onBackground'); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..9afe2bc2fd915d3f62d9dabcdd43de48252e8f97 GIT binary patch literal 20247 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 255) { + return false; + } + } + // 检查子网掩码的取值范围是否在 0-32 之间 + const subnetMask = parseInt(matchWithSubnet[5]); + if (subnetMask < 0 || subnetMask > 32) { + return false; + } + return true; + } + else if (matchWithoutSubnet) { + // 不带子网掩码的IP地址 + // 检查每个组件的取值范围是否在 0-255 之间 + for (let i = 1; i <= 4; i++) { + const group = parseInt(matchWithoutSubnet[i]); + if (group < 0 || group > 255) { + return false; + } + } + return true; + } + else { + // IP地址格式不正确 + return false; + } +} +export function checkNetwork(allSimObj: SimBase[]) { + for (const item of allSimObj) { + if (item.objType == 4 || item.objType == 3) { + continue; + } + else if (!ValidateIPAddress(item.ip)) { + return false; + } + } + return true; +} // 检查创建虚拟对象的IP地址是否正确 +export function getNewDate() { + return new Date().toLocaleString() + "\t"; +} // 获取当前时间 +export function updatePacketLog(text: string) { + let logText = AppStorage.get("LogText"); + logText = logText + getNewDate() + text + "\n"; + AppStorage.set("LogText", logText); + console.log(text); +} // 更新主页面底部日志信息 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..68a9ec6af964c5efb13ce7c67cf8875c2067c8ca GIT binary patch literal 117897 zcmeHw2Yg(`@xR}@>a(%sa~H;bmMG)H$akkZoz8Tdniy;_B>X~%BTHvnAWQm5GT;CS z-3HTp3t)OTy_Zmv&7I1{8UFD5_!r%GXJ=<-XZLNL z4L|$HN6!q4etS+Rx@~0aydCGxZR_aSeaYhaxvuTo+dF!idRjZ$qZ=1Zsu>&!MfAv^ zs>8R7ZXFqc4E9>unX_dD7qDhzWJF|WBoYbd4(`cywKug<_7{DTY0Vvr>v9J-E$(c~ z)#ci|JLfIvSkl##%e7C-wfA%_otEqAp4Qp4FxNe8*Y=j&!O@lF=cx%s{3LNKfdc4D z8msZ2;g4?6dBDQmn-=G`YH5QIUw% z#-rrh!Kz?v!|)DKeNcG%$ndx7Kdp-X8V*`)BTCc;Paj>7XlS5|WIf`Rtb-^7;fa$ruOKf=0?T$*6`2g2v1> z0Vc*qhwGwxFof*=irGY{iG`*ISlig(@O=4aa$F>wTCk+OdG`GMqrRs0rPcKRz#ku$ z924>PENbnxP(x>YLL`!E&mFW^Q`f>=k1bW>)apnW6Mxdwwj^guLxabMO|KE1X?Iui zw8c%W*ta@+)jIq=M|r`w+CJg=qo})3LK(xN+=2EV?Q(Gal^d&>vKeWil)L-1?+FxAi-d~&``irC1 zMSoG!EZ^Pk;--S`f)Ph|!3cF1ldz!=oj1>N2iaRNfupxz#L-(Y;?i3%?&vKTar735 zOmy}Zj5vA=&Q;i3FsynD`XPG@`tyh0VpzX>i&Uy1-Ox~<$YdJo7+bI8lCA$Fy{gLC07h6Ne?~^YNHOxKxd0<0VRUQ@9B@=4o35Unb3NNP6C*L}Z*5<= z6SLG5`Dhp~Sklyl8H|Sw1xuQ6AhM0IA#5aQ!V1|4CJ7od*Cd!MCLEzKN-VQh8IxfX zK}b`Oll7`m#wM^C_6{54%!7X7Bxv{Q(5&re>^N&)T#;-BQ(_Ck_0_Y>bga7C`gFQJ zlg>0IGO30{L%K0t+u79Bw77d#)8hFpO(R@wMuBj)7*{NDMsS&mk*-d0C*d{h2 zd@vGGWt>T6Yy;b&m)xyYZ?IcyOG{f02LnAgTT;o}!A!wpu;5x_%!D1$>RTa?K^C7H zV@KFY5JnW?POuAF-H%qsfz;4DaVRys5m)yp0Um$qtAzCApjM}NHgRt z0T{`_!dL<;cH)xG7OYroT0Oa+G<9{)UNCb}Yg@~Vr8~AQ?%A~k^&+cqmW6PDU`v`Z zasVtAY{{00G#ZPcL(q^1G13A5E9(h=ZYL7SF!am#U+5MLOqSiS1T8Qv>I<=DhO45M zz^@z@NU#OS5leJ4BQW=Q)Xn?~evO{V%ODYf{2C6|Vo~yg(DWe!I$VPzwbHg6KjzKl%os! zGl}aEarbqIKzz&O*hnB=uzW!Y<08QvSD9mZLZrAYg;2`m$ne(gUE5oGTASMT%;5@f zmo2j&h-6}9sJ+9nr3axZKEB+wkKz4a2yP5 zwlNV;W3QY^XR~seGY3C$xNh`Xs1j_eztkfC)FPkKfaV_80nO#^1Dcb>faaKWurSh_ zX*`W?){B+YzZOh(7;#K?7@^6|Wb8kN&6_7CJHjcj-P2MklQ^b3j5ww{jJQm97^dOm}S4or^t9cT%|Vl5A*5CgYiOB9V+I zQt8_0i=L)CZmhlo(;YXlJ#`4*+3C)IwfyN0BaZ0~BYmIlFu7y8!-!+LgGkCRT=eqilG4eT}5+~!*?e{O?FvANBW1#=rl z9CI5++~+o&>$$=fs8y zt%(g1&|DLTm^4A)L^ZL&q$whaCN`YpnAl)?$~m!N8pp&2X|{4sY?#J%V#6tpi47x; zi47v7jKYZx!!8pW#@#12g&XYiSs5ljO9&i7;~A}Fm6q3 z=%*Y<(4Rj{Y?fAbt5;5JyzTa;8gYDryEgH7Lu0BwldW%z*ETQe=+23QLEd(IOEdj0 z?BA5uz|#n3y_nM6Sumwx#4)8|#I}E9xr3b0Fo9!2!-!)-!-&g-hH=M)h7rev29dn| z8%7)x8qQTXpg2?d9U}`&_J`S7Kh0GPRk#6xGsOJbYK2BUMzncu@06$N}1%l+fQ6t&`&Vp=qDJV zeqtkB`iRV%ryN1{5}fSlB^Yt^5{$U?5{x@~2}T^f1R@ih%N~q4dI`=|*h?_1dI|a= zdkOmUhhD}0B6bu*)EX)Jg6t_c-O*Dp;^-+D zap@@-ck~pDIC=_1Hgfh9j5vA<&Q;h`FsynC`XPG?`tygL!q!tf5RU9!{&=D>nQBbn zSRxxwr130BCfg8~r_*=E{o<|#P0hLJ>QIF^SN}_ki2ap8(feI{jjP;yjZ;Ohv3wo$ z8htR(cen3&p`h#>MVE#&M#@IK1*bMk#}QcYBI!3VI4g96bdiw&{p+ z1KCAzvZIS&#L-1C;?hMh?&u;IadZ)gMwO5HQ;t;)Vll@bW5hoZ{oz?skn27e>UOi zDg1L>k+$KB>m~LaDAn~a6(*E>s>xr@nIw1GA}5uqKMHubmswD&^Ae6@qtSCJ!Sy?E z+p{;rtgjA#iRJM4=l9y-ulBOkRNs(JWz*?oDw9gavuV75B&UyiHO+6!MPKx?)Kr@1 zccE`DX%tVczFzEIy;?8`WW+HDWP}ERj*HFg4RRdF6pnEqBaU$(BQE1W#vS88MjYcn zMDi{+GvXKra<0O0Aj4`LNI&E_kp3+4t^5D;V)L`n$c|-C6;s)GeKwoK^LXi0DxSjK z?rd%J*n#3y{hk(CqecEkQ^V_Br-o;{PYn+jQ^SMH)TjKbM{fFi>I`b-KyPrVfu3s^ z18bn?8pgniaxm0w97s_P#Lc4(+>-I!dWn-WbP)Gbt!k(dfWhJb6H!n;almqVwabV27clF7VYMCN3~Jc4H;bOdh#F6a$z$<1G~a8_$O z-7uoVZcJ~U!XvR5p;LGphqtL7Z3|jM;T51hJv}`|P;G>ljGj zn4H8tBMc|OHl{l+T)>X7Yo3ki2FgE4pIu=$%f^iC2D2?2Gcp_Yz)L|hssjhLw)8AQ zU8+>>Jz#H^k*JFwL$hom!12aU`KAz__#@GgY&;*Ra@Mi#;T!aWw{S{E*&5FVpd_WhyVlAVd$q0=Ed zg4ISRU*?grGeT$HOxZc(5;({v`&d=NL2!s5q)T;QXjLPOL*Ov{>eb>54}VtKPnpuC zD8h`x;5SI3E0VF+y{Y8%h#>h59HC)(*2O7tZHP+1tUi_1PLbq`MUsLp^>O**?3en6 z2v=+(@LnEz{XnzJ-G z&!z!m=V@?(O#{X*(BQ(}u1!r+OfS^n5}Q)Y;1Ufkvnj>cWg1*zQ);rxe}x8Di)&Lv zCdWneXNj49Aik6POrH{pU7Mm5_iIx-^?q$?r*an%2D>i`R0=J!*l>zgTYZ(6=~qJv zZ*wQI^$kh97=&+owWtF!{1MqKN~^y{gD=@%o8=@%n3 z{gQ!VL|iFy2JGQz2*w1C*%u>@*%u=&voFRSvoA&*voA#Qjt(;7n0;}s!r2$YYW77x zWG_R17U>lJ|D1i@Hp0W~D}zfkiF9KonaVb1lXS1Wo+Ce$KaX?cwEoY&+@$u@7kpz;O|Z5ywR+MDi{|G2*xg#kmSELNV;P2z4>t=&<5G z&`UPx1g2)eu6uTXD8A)zV&1javh&eSg5%=3s zOl;1}sHzyTZbwn)eg&0bMShsk(bLnh*t#Ia$&L$B$iwY|6cXk|eqciDf)o3NYKn8tBI3Tg5pKQN8!1u0H(T##bKaX|_Zw+m7XyIhcB-2H+S zc_hwj>|rvlCgzR{Qj9n*NHJ301u4$rxFE%d$aYTM##CbuAp}t;_V&c3DQjFzYkYdc`f)wM{1u6O|2N(2b z$tlbaksl(1%9#!oo#KqCzRb&&hb$gV%rrFM+$M{ImUtpw-yjYc@s)??yj*!G$?`jJ z<)Nhfp2jrm#r)=hg82<2j`Q}VLOIqZ4 z+B~|zb@S+0_syeD4wt>COmWNJJ7V=j%Z?Y1h&|d75gWtVV?^w;X`z%tVh<~|Sv1^j zKgZfEa*blA<8}}42Kij0*aa}$wb(3jjbazZJs(aExJI!Xf`P9&IXKEqv|$*%j*~;9 z-I7PZsMv4{F%_I14v(se8>285_Heq-KbV2x1~uy7bU!8z$Mtj&!Ndm1#Bmt5ZghAz z6$~scVG+A-9`-aEBhzvBr^e1UYt+ETqF_-@*4P*}#r5?`W}d9EDS*hMWW(RMzhkYG z(_%3R78jgCT-Me`45r%48g5L*kaGnp=u*}?NZ3_KNH_uYGS4i*OmVM=v_lA5t|uY3 z7DD(i|LCe=MjA4f5Cmi(D<}d?F~-QkmVzQ8fh|GuAbm$yZE9={+X{*y64(}ZjmCzP zq7Hm$Dp6V(H;;C-mlnpD4Lgg{NX^k0WqoJdH5w7VO_TN|Xjk~LprI-t;K#Uq#C5MS z(e4p@2Pr?MYNSD%M^)ho$b_^QgG=yxz+91sm=G`*cag^6o>7=Wn^UBG#y2+h#*lNS z{|J6VjeTHWyYZ8f$G)(iD3=5oi%j=}c}jY6J%Z*zlT|PQO&C(n6n1RY#siR@mK%zDPUEXK zG{jtDJXX?R5d#Xv!=!4Qi{Q-R7)`{X+dxtu!`npTDUM(Sg&T_h{4xo5i*RSCM%Xy- zw$w1D2^+XabP91~AtT`p(M+dkaGHkBz}`3r=?FYcgEM5w5ec2a+e4gHLAc{{4wZ-j zteRTLya%?nb;(A@UUC zQVlN86M2epxdvCttYq2^tEL!N^5zeVte~qkxK`s;<~$2UWu9v_Se3_Sl?FFS36u&q zX>f~%tsmnKMut!&jFP(DqQRXuX(ym9@6_OKhqMIVt--yr7~)CLy&Bw)?}+r`v16Fp zFz(mjA<2NMV*(oQAq^g(eKGRdv5aMnM>Kd$l934}RAr6FH28yr$i|fO4;nm9kaUZU z&`}@P;7Nzn1U{+3(++MEjHfktR*O}m`$nvI&B%5m^xtPScwUl||58cMYw)6m`^M6L z$4URCq!%@KMT^x6|HWYO7CR)W=KNvf6%F37Njeej_J#&;IV2_UEe-xEizf3B^j8hu zky#b=js|OrIq(FTZH)%+OHNc%#OZwvK6KN0B5LuW1|LguvMxa%Yk;3g)4CI@V#cQ$ ze3mD3%=k=$&t+DsE28^cgD+)P1%0W(*BT#F%eT=)ndxf{{+q|=zZ!fi`6wm6)!+!- z?!t!D?g$-@)h%%+p~A=Nuw1wI5d<#R;dr9s;YlP+(D6E)p!e#+HCWIj+-^BRhf^d2 zs*p)|B;XVsPSd3e*D{tdPSfEGNk%r9gzIo;=x~;V$jFrQEFI1vNV>3r-g=G>=Q*S% z@H`zZaB!iuYFU_9X77i;X0d?lhJ0^>2QNXN&;`t;YL|7nTDVnb+}n(RnW~k+^QGpe?exu zRfjtzC#rekbf*q?7wS71J@sxK?vuo1SAy=-;Q?8!&JY+6={ba+dT zg>e+<$KM&zFvyCO_?8ZTwFy>>j`&v{-f;*<;5$03k$lNyly!{`@57QORb z9X^o6tr(%XA3Cex<{| zWWl68LI2X>KQgO={-eV;#k{j#X8T5mBYjpMLY$8D!O=d^8kLAlJi$2H2g@We*>z*| z&SgG0jv(3UH%6~J&Ic=e_P&b16+SpoW+l54bfOPVmRS{avJX!6DeqK;qkYmc%c(v% zGmp!eJ~&%)Ax|O&&i28%K6}TSkqPJe;6h1D-nj|VUg(319l{cLu@5eh#Sl+|F7d%- zKKG8*=ABulHjK-BaFt|0m9YsL>M9>xunCS0R{7v2DWZaI z^1&^XlO}`HCD|=LxJ~AynxF!1^T8c5Cn>inI`bVqxXYm&fp_`f9!H@QjC*`=pHB=S ztOsJ4N0o7(4}K@f$;YXr-}&GnpVb3ziE_~pn35jy!DBw#5W-@IL|Zda*m%qbPuL{g z49)w551w*JO5jsIct#dYRwU>dA3P_sD(E>MJnt*g2X8C0J@12;B`2y-;`Fi)UUAcT zGt}Z0AG{{X$+`r+=7Tq6!DQXdaA@#`58ld?IcB`&gTKnGRDVSGS0B71vnuEvAFT1I zA%w$5+sjOAeDHoApZ9(6q2!~K_|OL*IXrzPXAc`6`QS52OX315{Fx6vcZf^i=RWvS z7DGG<`qBqq7x8r4ylqFOHjJ-*@L$P*Dg@9}|MkJQKJ15S-UwA$s~@JsZ+&ot-|8=> zphF(vhok)V{(``x{BR7>;n;?ZMp=*X!!p0{QY)|(rcJ?~c$puLm*nK7M1H&ZV+9buvsBxwr&UQ#j;MsmSR~AhcAn05_oG-H~ z=zKr?)?dU+ez4pg*n0k`&upfRe8Bm36 zjqk}nyJvOeR7=g94F zHGw~1w8wx+Q_)GE^TP|0nw*rVU+}|AHYeRfIw>W+U==7-fXtAbYhVQn!V-CJf`>xT~{C#nkK^noA# z?xOJ)=#PK*!zYrOT$G?s{O}K1F4g%KxJvL3Km0RKNlsfMt@Fq^(1Bmj&Rs zfW5mS@VEf1AUZh}BWOhcP7L(wq5Cq|$;OERI8`#B>ZrrrqEiEKdO&(;UDb5ULn-m} z0Gw$PY#KV_nE^Q4AsB&Y2jE=EmuyB^&kex&0bJbQrh16&^+-&dhCX_J04|jD9zpe;i`2Uo$`(V+%4(JPYJp^0Qbt0 zspjKVn;Z8A;Ql`Ey;*GN39+psijF!0XCW6ZS7YCB7bjH*JC?(J9{yz}pVN2z)yLf0KO4YLxYF0azUn zUwrF4DyAjTQCA1xT}e)kO62bb;C-8;E|iW+N$&^Xqk!#;Z?Qw7R?d%urT~0qle8X9 z^H~5scSuU$=K=Uq7EKl)=*s|nEwd`<>j3<_n4caXv;8{&-%3tY8N}(^02~o?(YYSA zI3fr~2d#d9preCuEJ1SqRgYitV}r0fXz!p1TponuWmd8-LB|K-1esMqCj{Z7p!(uF zY_wQrIw=UJN{KUqa8}UXpLR&?&I-c$l9s$Qg$kb^gx@;ECGfXFxJVX5 zJPEoe2rGlV_NV{L)SDP9gK)WIKoydznrvJige!xxKTTE9!$;U#Q*)=pD}!*gO|UdN zy*9PHw$(M{qS+5Vmsvv%YwyDOqS?GOcGsY1Tq|sGZ1>t6yhg_BN+#G~k zgI1qP>-98+qNH1caAzVY!bqe1wiEs0s zRnv@TgYc(3!KWF23c?FAD;b;UUI@ZVGOL1K3c{a*xV2Rz%GAL!=bwY{S{}34g7Ai9 zrqp>O2yZz&_g9=9*RzALTGEot8B~3B5Y{?mCU9*K-jl@;PlDbH!Uw&3?x9RQ+4vv` zA4>*QH5vTOejJ2PmFH&cBLPbMGzg#B1ZzYm{VWKdI|L)}^B{aF`I6-*>z6_JnojVT zBLTi{jfsuuwO8SLo5ZvUDn82GtaEmO5m=bhL2yP4E9okacw!ZK(Drq_%_Ps3xcS#OZEz@yV z;jR$eLnQ@jeBtGSZcF2y5Zou}$Pm-3wlwYw!2=Q^OH|2SKe30=@=*+(l!Q(OmIWv{@cnF>h;fIzt!hGT5 z=qv#B!Ibu72%ZhaHWhtv{@Xyl@Cu<-*myPsFWThY8SVFC2wrx`OW?~PctsXZRwC$? z5WFh0D(KY^yk5+oPoyF#-|HcGTe6}mBk1iA{LNkUozZ*$7J@Z01DTniH6eIcmQC)l zbJbMi-4MK=C-zk1{SbU8vr?rI-G?FgNM=>gM=-$x3PRMF_rfc=V}C?XN=cUr9_N?}BRoHw520L?-at5F8P8|e6GJbLfxR65Zg6Ncj?R}z(=ZYa z5rz{b6mBWoi4%EIqR`E2*J-P5&%&p1W9`E=s}WeQ#P=|-hwzm6`4N}X>EyPXoW z&NmKrOQv8Le21Ri9lBV<7VE5OdYKW~u1s&OYntD&q-U>=8Mz&DZMmLY zOZ1^h{by2*acJJsBCk`EyVAAEVGLupCU*!ox$ZKRD7(q!EA6T2{f|6a94^)LT-%n_ z^jyQ#IGWxO=(5hH$B3ipF+xqRNPu%rceFi59Bq#gYI`&jsmeEyY=}(cXo!qB8X_YF z4Uti5h-RO1Bq>Js1k65#k%?dk8tP>jG4PnNywB}8%ViSO0G%?%Sr+vnoP|yqb3rCT z$Bc_ z;bR#6F~3pG6B&Gcj`R{Y717wF1ta2(YNRm{x~VAjvK@b*h%ubOysk*K!-#oZ(M0Gy zw_PJ0mlsXF7@=#6re2K9hZak(F)C*ZK10oP^m#dk^jZk5f){DQNGrcPE%joA zZXZfdbZmEzQ&|?{qtj-MaTfEXY0``l3Qki@vuZ`O1eOX$RAZcNDcC~QFhZefMpI-Y z`qpU5^bacG!dvnFM06fK?{ zK35h^+Abq)&(+|3DI&dw&Di-G{8rML*l#tsNF0F7+m_r|<+_NE46}5k7;_S5hFLlj z6Gw(=>CR2rO;uJrMvP~MO=X$gwHjP61tVn{yPl5@o63U1@%-@3l9rTRPRib_!L5=f zDaP2X8r&}FOzd_(PfSOw&E=X|P4jbYXv~<(hX;)DEU~FB^Ad-NO?4T=Bg4NdUbj;f zyWh!U#Mo7kYMfOZBR1=nF>#LARJTsi;$h+^Z0a6I>OP^tQ#N%OdrE_6Z0a)hj0VqX zyitXo?AQT_BYP%!j!zJq+A@YmhhLVgsB#&5nU50}tK6g_!vn>yOUX!E&ic9rZ%TG1 z_NE4J%K$^<$tgwqHlHeH%TVPWPuhxO#VjIKBx87t_+6W}jJ?Z8i#Nr}bzNw0P_|Ok_k{*uNp>dol?MN^sXSfL{)^8S zn<}p$mBj&LQ)R})31g-sGcbmSi;ohA0!@EbtF&7wnxk}BMu&iTU?B4?)8RP6uvaH_ znb&bTtk8@0Rof`C6*`i>3rDORQCi@SDZFB z)n!Z^H#XH}Oq@2RuSWhdo*tfo1uzkwKfc(eFJl+$aEVP{#xBv}vf}#gpx9le!&NqY zIqOwATw~Lhv1|A&vZ?P*DnA}bUZvyeZNNOvOH zV3iKH$Z{xR8DqETaGNa0#BS5!4m!Y!GsB&EX1J@OzC(w5BnNU3=5P-mK{l<(m^g#X zl7>)%A1hisi2RVuPfo$K59#oTl)%Iu(cv*22mLdugDpH+LMFSZ43FvXxMV`Ez)T+3 z;YrDa8Z}~@8Bgl)w4{@&ZDu^J!?Tjk#GcjRPjm!#Mzz1SWgeZkoUK^=iO(XNUc+p~ zQDnQmo5{1troMZq{CMj4bt!_h*Jj4+I=m@GFvWjUhqvi`G_LUlf+)aTrPtd!td_*2 z*GW{3t94i_nUcX6TdTu+lFr25v`{g{s+ zv#utFXO2I!wYr}w+RykbatPz;QC3_Am@oe|3!G+V<`39X(BSdoYUcp1IBb zm+IOhF~(7fMmdQ4XZnZPmeXT&k_ zXT)XEjd90ZpApAgpOJ#OKBLy68~*%0FS@-GjAYC7SlQHQtK*9PAujpqVjhH8cGAeQsu-1S4CO>94YxiEZ5Is(v!4ep8Ex_BJSbscU09(Y>)9#Eq?^ zOyNB?Hlgf#+}_?SXm5--+8ZO(-e@hVaK=MlHYRa2IYt~!juDq8$GD@(G2&=)j1)9E zMy)1?KfljS&dVUuS~m1Fh_te=?}JE7()GBp-B!@p7;!WQBz|AM^j_O z(bO1mX=;o+ni?aHrp8D?Q)AR>YWVZ}+|*WHrbV_a^9xZ&$7SX%Zfb3x7mvP$pQQdU zsD49>h;tHyqWD;~%TV$J_pjT5{B>(DQ}(jIZZ=&#wYP@Y9NZtNPL?ZYI*F}7bKBvS zkAVzweJg|>1K|iwn(JF30SJm@eVE(Xiy)q>7>5gI!Jo9|4&n>r6d-3L2CEEV+$atf zL&0`N;{7UmD&$BloQ`UtYHwk~JlG^bHo<=ssfdKwK*g7$073*%d?^-_q8^Q`3i8{v z9MeWoP{=r1NgLeR)zQ<@gUbWRj{@FM_6fKL%-JcN4*|3VOo0__p=}0-PsJ|5sKM7o zc*kup_Ed~ecw7n$h4};%ip4`rC@3z=pt#awBXh#3YVXrGl-ZB}sF%dDM;M#)b}=qE z(_12p&~~x7%un)+#AV~CKRkGdk|~M1#083-L5gKyx}_K+(_t%j#V87{Lotehy8soN zU8c9!)h0?l6OXFWriF&ep+qB$?Jzy#t7|57pi8~ z5fYLmJLs=aHfNk(Yz z+ErcJ!gi=jZ>vy~^n6kfRSI)GMyTj2<2PcPo15ei0f}vHOS92dql|Dzft%bbD7cVa zw;|z6NVgTdugy#EgK>$OG2Fz)U|32&^SD2CIU*<)AKDG$20cMydz-3s_wuVWjqNj& zPN(V3>BfdkvJtCP9Unxk2Xlq8SXBn@ne*PbR2@aFl6&KYs$-=J>2Ra`VyU`1xq)h4 zL8@PD?S_-;jEUWFSJhP|q)r(S9QQ)qJ zZJIOoum+F1X>L~Uqa2`%uF6EL11xB_>q&PE)ulGqse&03o9nK+i#>LSZ{wai2I`uN zx|iJ(TjHRSLuD1C2vG|4^=F%+jQv@Izql!iy|Hk$zwp+3p`tgEqPPc-LA}gMW=ur& za#d7p!#fleyYQ{3sF!{j-$>77Gl_IE6HjIm$z(QJ>rj6KS;pBxO#RG%>s4a`-23IY=wGQ=%%X&t^q7n?;-6)&@oec##VCFG1qFwsAHGQ$V;l4FXupHd!m<@JwmnzF{qNY zj1r8Hk;_;rs%6ITqyUC4D|BbGHDeevJR(q_=KZ859u>IVR>_Rr&cVuD)f7R?9F6&I z9q!e6kX8N{xnwMI)O&=iViaqHaW4lvGj(U|L5_D;sJmIk82#)II^PI$#5oueeu%XH z0|z=YE19t;IMSJ`_9Eh$Lwk&M_M9Hu3oE(o6#NvCiGrrvs11{f*p8YLS^;npyynpxM3;aLWZs#a(Kv#v3=+CS)k33l7o zp*1w$A4&gz=|6aR_6_```qhd$)ap4^EOnqEyFqk`GSt z;R85cX27MNPeaW|<3CNv6*W%bP;RF7C~MRZvD^x^H>(*VyInwWvs|v)4+%d@Cb+-{ z7uig}*hM~AS;Pb@eQ;@>2`=@)<-XWHXo79aoo0x-Hn0Dqx?}Jk4Y^T{vBu>x1e~mJ z#;)FZkdk zH&x9>{*n(~_1U{~rRrZu)mJ$bo!Ol;CSuXKs;VN=*#>8S<%o3NT6ulRH|kOK@v^2- zu8{@?x_i&2K4b6s-~%`H&6@te2cP(Gl{fz?_mJ=#r2i)z+s@RVF%jI(Reu%Y&ZfTz zakn@6d%rfuQPFDrM|F)tjG|b0-`JF8>>D2(PGQCi>{BRC*=cer2q$~!#Tkf~M z-Ha{gV0W&{ilBE6zs6v9C;4Lspt5_G-?(wYl}!rR!=lS6Rf9xkH^w#AH-P+#T)7sRw zXRf`4kIPbceyXC6X&`w4huGUB+=EM?)f?oKZY0S36n2k8>)Cupgx2%41k;tnd(uJ} zis4DZ+^A!SehkfbJ;m2!VZt^lLs0mQ>-})Ev`j$G&u_Lu?)exB8Y1N0Cb;bprEQP7 zJx$FA;8phKTz7W|9T={`)x=wM1Hf z?}vvZOS+|lEFbd2BmNSP6>oy7-KtmB8ISnk57JY@3j2c}9w&^=F6kck!;}741~)uv zwr`^=={>pKa|i9%wixg2x9rr>wR`U1o|zqsJ3HF(E;=f^sbcn|AD)#3(9vKn^jSar zNfuyYf8wZoeAbuNKk3p4(_(18m-F+#?1xvR!KA*g_~BJQ&aUyKZ;)1nW5Nuta$vqm zSS3T-I+|K`=xAQDSjaaO32xIVOdm$%GjBX0A_DTU@;;Q|HXYqnMC9YHj?Nn+wt;~W z_}=r!=v*%T94op8Qic=X_oHbpxaI{YNTI{)WhZI6R-}fryCc zd{eN#$6)M%PCT%_eKUFTp1J0Zu9ntzit3dVnK5eL(eh$7)dprhIsnHKf(|5+V*{`} zAg-~I#wkI!oWu16ru#5cEQBYU>5n4kn*H$;^b+TqIoa)8GbfCT1jGwNR_p~IaLSm% zlwkaWKAnV~@o28Ky(ibTps6`$h!=k5G<9LT1>=y2f&YoE3Oqcx?R2B5ed)gYZE1t) z@U9bA%ivB_ts5gczoVlq*VHb!SnF+=(!OLdUQG}Q)&h;0U>u4RZEYgmT-eCxC z7j#deSBTwH%%Qe>G7p>blZ17|=L^&DJhS+l%yd`;BaLHe#v#UD9i8$4Oye+PL089O zqh`DLOWIr7a(!B%#jlp=lDel^oNBhT`0v)*g1oRcdaz&UZxIe=_EH=#dG@!I8B1)> zf?B1}7Bm{nG^ANfUEQ?iwx;gxT=%ruJ&ST(NP$j?FTZrx7}KU1?=HJ$^$q8}bJuZe z&b)EWi8ri1;h42I-Lv|_6_G6?oK3j4f&DvvJ-ZFDqc2^&xkE;q=;#6whGeQC9<`Zj zI3t%#HAFlSV{2oJgd&>Nw0M3?6GB*_xdpB5xt1xCF}0uWCHP8>$=03S6yelF-nzg5 zvO&iJDT3m@_0~p>diJNrUI68yz$Sd3 z1N-hrwtnZH2i9J2(dt!qy?fJ2H22zjj!q=&O`cO(nyE&O*>lv`^kYe#&&z;~Qe>{P ziIksLB~jN?j=1kWaN(MhE?;~11480r;u70F%FCpA0uxp!vFa52DDR!Ot~vX5Q(n8B z3#C@9dzINFG$mF@p}eZQE+Q{BJ$^v}7BsbW=g1@0oU>~6DOapH>&DfWTqxu%lvFY8 zRZ^4ClvE*wl3E{--elb(!GhXElpO@M1Nu*thJI`D>{V17sVS_56^d(p){2NLy0kfa z1AXd9;P(zc?wvcY7dCz8&J}AeURG#Xi)*g}+el4;Ev!&rwtR`EX1W4K>#=*n^_Q-` z;40w{rXv>$ZgTHcZi~_s+l1VtrpTE*2q7yDJeV#66LNSGSoaaTEckfuW_KcgRy>s_vYfil6-IZ6BR!A)HrF>ZS2-izP8|Ma!z9sS<<$F4qQ zxmh9D8Eq#6xXo&9KLBdD0m_w|DTeKr8p>nw@jhkWzN@PhU-ZLajg5;0i!qb8R=4l$ z%r$j^eL#eQ8b&jY>2RV^*VeHR=Js^qR1c6;%3p_Z`nD3&jcuHIOf}+DrcAL5Z5SAj z$u5^oAR9-FlI7%-$HXpA&7xNNzsZv)*OZ{LnWC zzJ7{p9!tBLHU%VgF+HpSsqk@g@Tk1Y8oQPlKT2Y=nb_xM`R$}=phg<0)_AQCrPzqgaxAQulB|JNA4;+jnY;0~_`}}Sa>uELKiFl|F&i`c z(!$J^ypFuoY&>LEJ(`ECs-yCd)#`gZWVX5!51GwA!c$(e-|(E9+Og-%W`p$1fm@h| z-1Y|3*X*KM+%S=2ohU_bTGPC~0-TCDfFQCEQNexUZp;mKLuPdRj#8np){LU4;NH zs#?^2QP%o?6e^1y6>cZa*;}p*$^B+gvqhHSNoR{?37st>cb%>D0-dECE~;CZ`l34f z1hw%(%}aW7(WQLTt+|)6%jfKs&4S%kHCDrKj~#EoxcwtbTzq^ zsA=1TwwS&a8+2az9V(@=3rpIA2DcR$h5_hB=Hj9_P9!U}dWcbBkJ*!;mJmrEyT&s5wY z`mteCDyzBjZ{HLt+&d6EKgdYV8gMVczELwkn>5U(KN~a!aujUN6j1OdNO(=bh6WSc zwoTAeT{oJP5zS2*H$@7KYU50e%Dx4sIEoFKQbJ2gH`&EXgX1K#!@Kz-+%dm9*L5JC zHj{_aW_IN`oG5@e95odkL%xC~&P`7-w%*2eB8s*-3Xc}o;Syn2&&~xWH1Slf&a?3>9p zo(HwI^elqS@UGb=o4J>|DA&4hQI9(b?Z!+lFu@__-dmoGogJO|(u-u_2T7!D2*8ja}>=sFQI9x@due5vlr54o43;%vu6dN%X%( zU~xoH`4@hojDi}Z+}P6ITY39?M_sl0_>0~>>b^A>pX^Fzo!jIUmZ`=ehfTG10oA!e z=aEAD0t^*J|2bWQkQ|-Ca#k_H^dDDs-U9sW1v3}5wzbSyD%a9gn?1ztF(SKLX|5IC zn==wSJ9|qBr`$idrZT+z-+sF$o*jGd>|58~bI$7Jx350oZdccIocH~~J8ezu2k+$7 z)rxhTtM5J&J5F3%S+nBmVjZXB(D@JEY4c7w0J4oAM8B%;eie?~#HV0~)~+7x{d07O zs9TL04#VpTu6=vakGTu=_PySz;!OqnB_^8lh~qP0o{6E4BYpc^N^rl$LrTo~R{f{# zGqf@h{g-RnDOyAIN5doiyGIzkuD=|r#jAc8-G5LNLsq(ki9E?YOyt2FCbF~4YmjA! ziFC{$JOzpz?=?_l94}_+r2<8U+(JE4pvVd0s^I9ba-?syD*AJ{L4jH)hqp$~gXo_d z1AK8-FmQcoFbokJ1I>*=1Vc)W4sRvPpm=bf(3RaGFx0x($H-6^W?f2SWEfP%Hpe?| zUA>RaLo6y^c3};}=Je!gzFXOQs=HpG-DlWCyYd#TO%+Ap4lH6Fz*% z8jznb@?+RdXh1e$5q87il$K34Q1EP+n`e^?$tH90`9sqtjO+zJ5ge)N8Tkq9)2mH} zE8=}H^dvJRfjIlm;TIm8P9~K}CDM(VWGdU3O=cPsnR+q_1u7zwAorN@3uqSQkx3Y7 zhMZ8qlpu#MC|V|=w;frqh4^UVcnV!B1_{WOUTeHT#~$SX6=9N$zz9W{G+l)edM=S4 z|HZ)t<{hmlyWt?q0!(=jN14Q?M-nkYQ6|k7EXOMJ5coA;GbR%G{15$^9OwGpcrd<2 zxv%(C>^EkUvsi=qK0KT4WG%-e8ni%7bCdP=Pi7`^p#2B@j z82|XQj>^lQzIHqI+}GoF z_gq1{W5m(!7@>BzG0qWPpQfee$5f8y$B3i(G2+tv7iqUd$~%fG%qE@D%4J#KOj7c@CW98Hc9YH|iPIrC{`6`_=x8&f!%8zYY9 z#)wOEW8Bf)7;!W=Mhco6qgHdnpWo-^=H=lm>#&-qhqJ8g>-)o5mZa-(TYJ2qtuf+g zYm87^ldrE@ipjYf6F8b0BaWuVh)Yvr+|kq+aWpkX3Yr?DR#U^D-{+?0{maHD`ug!@ zHnj525 zbHktC=jP_+%Z3}RxKKhbfP4C~S=rb3FPkOldfe7-C}?YpINBN`wlABdm~3iH;Am=$ zIGP$GE=`SbM^j_O(bO0zXljgFO$~p3pPSnCf$|?bwx3Uoe(3KXgZ2HvW4p4R8r&d! zYGH?{KFII3Yp==o8v|~8<{Ieo{l=hMvJO7nYNF`1hwD|7@Xsdk=eQ!fPQJLFoDhk` zv7PPJgfR$uqE?_)4JdVNBoL=VinatSB(9gcS>>3!OpAO%r&#WGT?WLnEzx=O$(p@jR~e(TwWB?XFMQ*MX6$IK(hGsT8pe~u?;;&O zT*~2H&yiRTA1UVW{M@N;h+8rS3l`7((F32|xE1Wj_fO4dObH0$DHeVRklr;VfDW$E za{Un73C3-rF!VKueQ39$U8l(8jV~d32KxRsssQvj;$}65P#l2;E z;Iz9cA)hbB7cYc(34@+5<>Kf)Q_3;{CgSF^il6P5=tO+Cl*y>59we*5BP6Ec1kec* zQ*i?50Les@d#F;JE;*vGq!*>rnGsWS0_ezysW}04_y}n)n$yFXL>h;bU`A>Xkb(xm zj5P15N*WE&C@4sC0vhpMQd4uvLeG*~n$yFkgl>grK1|J*Ag~?Guow|A0}pzbniD|h zJSL##k$LmfU1`*NC^Dqfo#00zKN*66AK_b~rrre1g57)5dzj3-JM1Z#k=~SdPdu{0 z%t-GgRdIt(Y?u{A03Fz13YBFad?D1*yGk>BTy!Mh*KoLeMlOUA z{|Px9UwqSer4pUpF~%GxDUQ_OSjxoei%j@9=W@v>D5;ifaJqC6$6M?k|k+IEb(E=_oW78l3!KT8}DoIp`;Sx)*Byc@R6ia89&nC z6T3<3B*Rbm(Mr=t4#6_;smd>G3<>%|gRdk*DubY}H29aTt7-Awf6maI2)EG6=er-->j! z9kqbCl_bHZBkz`s$Rw0Yybo!bgdlv$@%~;-vW?7tzYY&cmZTZwe@KT%q-O`(aHe{AhNO8xhd)bBWE0AUPc{BUa#GM=ba<^-o9rO-zs8R_nyrUe zinknDTe8Wot5Sw~!%=>P2@-EOnl_<~_|)RNcAM-Z%Xn9Z55?n%NQIAA&Bw>9@UNl| zq@1Red>{pr-5*H7gbgEM6&lbsL#H=VPV3WKDE2!f;r>t2-8pm(jabVH!+zz*$?u?3 zv|Xxi4@SySS#-&3FfDndiY<8!PL7HAT~@pXm%HK>bZ-phpzaOFUwzT0kzLDN z2%?}FGDJb!QheR)z}A*r3rFIKKDWsLa;yHk7I|NbtfdvMn_O48&UatoI$Er79a^Sd zWuJ5_Y6nk^Z7BxZq=b# z+t1i>*1WicN5W`pDn1M8XlsSnGKebyw6nrq)l%iv;+oc|@TXc#NgCH!C%NWFY<5Snkjj#RfEcfJ;W``{j{sWh z;-wN{JUJDlr3y-|gQUn$1RDJ`;AvGbC)jh(j@2`=Sze z#-%R1{St-t+XKmH0nDsL0(OTvmK+4k!F8`{biS}{fsNM0C~Z%*;ziaYfL6T7dV5qE zmi1_zixT&NeeJ%Nl<>Z=pD2;6wv;%O#%Wk=3q2=~Mp~Ny6uQG+h1c+rY>3IauG8oHX zTcR6{g;3go@GDD40)B;yVPv_z?3NoVsSkzU;GD+vyL$Z2Ql8(y5pr5f1NglWIYNV@ zji4agNbonQdxI&@v5 zC$Kysz@;^{jz*>>NUWogX@6No*R|!~s9q-Hn%c>_y+_E%gp+kRRTfXCZ9-P3>TtST z;2`b3h5v{ne zar0=X`lb(`&d0xiK&GOoAX;;^n_b&C$SNsEwmTaflP9qzDkC+H3x?vhkw-4^Ts?$Y5N zNkyh4=pG&JlT-@2PlpF|(cd~W*-~bCK!=BQv%htaY%Rrkm{-;8wrwo5?E(~1thJf0 zOAs!zJ!zAOpeK3dtrnZoa8aBYWfMp0+hUnSglloU@FqWK1c`+=GVp?`%`ErbUgp3x zx0f9T&dP+Bb$CUJKn7ljtX|RKRcShMUxHrM;dMzx23}ZIYrL+*o05vGNzj`*ye+8| z^tKLv(_=-{nIZH2O^3BQE+?=HyQod8d?dwMUV*clI$LP!RwVpThmUNs5%iG`pV(w0 z=o20O;b>ZF@pdOHj|l#u!xxeb8G@iMbofdv0=C+FiCtv!S33M#kB!4|Ls(3r60~JN z8UL-re`Wb(=lv1-uMXeZ*c0@v4oCQ`9(aFj-$(f1D1u~@BZdf8woaKY_BpERy|aQQvW|5;@E&!VyaEV4Eh)6umWYLewTY$84YJna7IRSvs@dgWpFP_I1fF6xzs-ABFh zusf+&9(FJF%ERuaUU>|FpC$*uPm=@Sr^x~E)8qj7X>tJkG&ul%nj8Q>O%8ycCI`Sz zlLO$V^#kCi^#kCi^#kCi^#kCi^#kCi^#kCi^#kCi^#kCi^#kCi^#kCisR8iQ)ByNt zY5@E+H2{8^8UQ~{4S=7f2Eb2K1K_7A<)_v}W)L2yxK1m7PLzlqls6>`$th6)r$qaP z1JR$>%&m1q?5^EzKE`!!%T4dga29DgJK8BM^|TpFdU`q*@0M#{GNY*r!|yKFBOXS? z(dV>0fqhb7hcTFjR2YdW46hl|+#xTU;oBo(zE((XApyy9JWmwI<3w=~{zX&AiXgFX zH4mmpME_8pDJG*SHmVt4^ng$w41;$j*$n-dFROOwuw?9WFBV8f?=Q~+W6=U5Yli2o z3jJT|{gM~G>!TNyr}q@pdy|^Uz21E+!xE0_D{LCEo4qKOiXO_Wtd>~1agRg2M%7g1 zzhc`5HL$;Q5&Bv$LZ_okdKKD`#Ziwm0)^h7#yX|uS=x`iNZSy-vv=R=r?>;qOQ6Fso3`iWxw46Cu77xP>}cn!LIaT}v|l~+Mt05Ab*$FgcjufaxO-woS&Pca-N&|4u{x6t6) zz!^O4&EVDI`^C9g7gKPDw=Qf@U8obbiG3VLXKX`5m(iZWnA|j=z1>-WDCB>g;NIma8|Adh!bUe7}B%BG0t__yT$d< z|IHif*w1|@tE4+u!amY9$V!_>1=dqueGFB18I3~G}h9HnhhN99eS>&Uza~Z zNJV$elh-~%*aD@SQnN|z+}6e72yty)-L&SmrtWTh3Vn9ZqFfiI%$~o0t{EQ!4aK}H z$E4zYm_geuCRYs9rGC%GTH&F3Q;F!_dFH}nm5lVm{csOAc7liPsZ=uhV(%@?ZoA#E zK6kAdn0FfcV0dL4N4sKc^@7As^kROp zWsc!!jv+OnmfV7-C2c)@&_~(QQJdcCF1^m`&h0J9KIrP*mp#>8!~ad)dFqBT>#7@a zd-HPrtGdSjo2vVduly-gDjR*&Cl9C7G-Oxo0d}m}-s6!A`zkS15o&NPuGdk?T-| zB3tb1P=ew!r+x^bW<_PzM8RTuKSWRq<$V>Q$a1kYJ|RZV5u);?!Xj+$owotzonOf% zDDP~GE{1w%Dce=SYM*zG4k7JJD&AR2AqzIlERJe3tgw1}L1Gtr7;>lM(M5UwrN)i6 zzRJ2cS9I_~)I;$L8m{5sX$5q+=n*?TQ2qx$oru2XX9=ldfeVu+ zH5!bpt*;}sOp>eQ!8wvC2dvuP#TG~ z3yQTv&31h`Kik=~5EpiKZEwjPTvz0nn`JE;ojChaKYHa-4^Ekk&dlSa7WK#**bO8#}Cg)|u!od92Yqd5G#93i~Sy!77X$ z?_uw+v0$l6sn(AVG9HbOoi@3AV`QVR8F{*^DlY7YE#1{Q=t3F`v5!XO_rQ91K>A53 zj>Y95=aVBV6;qcY)%BaF{17UhxPIDimSgZ+5v|D!{o8M@rt$@2I`0NGmCxVP_s-I+ z^`gVHLO&{9>*LX!qiYIdZui@wvM-|$`1C@w{X~Fw{mp7BF<2|t0(pYE57)|NY6@Cn zz*Y`Vs}q=Ho03WoE4+h2{hrr*tLlza8N;Uj6sN9J^*S2rPa*2Q6%|tEaHl`Tsw-Ml zZ0XTUe@ao8xTus86Lhcspzf7ah`m|`A@;I+vm%PhUZ_9TQ4{M*@mFgH#J~6wkyqoZ zOOF-dZeB09anJj(^uzMz#q-K=w>RlxljHtKZ*RMm;BRlWl7GS2qd)T7n{6fd+uLoC z#i;&>Z*R60U~g}=j@26bIHf=G+Z%2r3NWwSQ|prTTQDf& z-iRw!h`l8{s@gu3?2i`qrd*K%>}^?&TUyoG&HP6~aA|B5)rW4t0wlS4Sr|KKC^|iLC97cSL-fHbI z48^El;qbTk-*7oU>4z!IzKu*FIDa!RoGExi>^?nmRK=e|MFS?YiA*+=NGCJ#WG0bJ zW|OtnY_O8{GsEP3x9yioHKZFF>JynvLw&qHp3XMZS~G)6+ApE{lFHccC|_i0nM>4V zKURY7mrXX**JBgTG-T?N$;O6ks+Np)O#V`KwEqp(jNf7PUE^$AJq7?&BLu4!2B?3b zkR`DP^vE&mpclYSAf0Y#%r++C>2#(slg?(P7mH)2mGomX?2cu@f$T@ujUT7*8>#613%2@ASJ#yqa zuwFy5F_p;Fr{n2*biq`jKAn-hC~hfL(tHUuHL8sH9?~Pr*Ma#Olc~l8I$k!ONaHvl zlWmC0vAh}jzmi5Y!{JrNh*XtZ`!(;F&F4K zFR{+F#0g7m-E_tE4e3-iold4QsboBx#)+BiNqDiVqP<9EyJEahb8y9HWvOhuKATPA zcs89%#Zx$v%JN{gQr?eKsCDEQ4Jn*$CbIPnNu287;IJ{Bl#Vf{qpPQ)eo;729LVwE zk-l}{7jD-*$YvFptlL*N#7X-Bn5?U9eCsPUP?H?o35ueyq!9`&+W`AXDbeSGGpwc#47xTS@+N7wA znXc0#-IX>|{&Cz&w!DOW#b@BR8m`bIiz{xfwl=()Ug<6>p*G|z<5!pKk+yYXs0vTl z5^A%yGIqL3k94dXJFSD|>B_p)x@ddrXa%&gK6RlUX|J?TEm+dtJa2JRYx}%7b>|oW z&Uv3gUB;wcV~^WK_7C4++>Q=}@k!bNiCA&99_g&KfgEQQD*44T-%+Sc2emFba`QZW zCGBLs&r%sXt&8#II$549ocImo)a6<|(pB-M#}^dV%}RLTUf@7l>&kV|ldq#QK<2YV zm1%zKVsKy`$E;*OWggV5jG@+@OI3aWxw6Bkb>UL$==@k^d#R_i%Fkie)%FrDAFP`L znY}(SQpr9hQCWvr7h@q6M6Z%&avb3u_{F5#^vI!=9t#zH!>E#WOMLgoka_VIDr&8Y z?sp~qc<_6ZWX<+%Z5_=`Jvlt!uw&ceT+gm8J9TvJo;$c_rh0fRxq%~=R5CcTqixCJ z_M~s;Tu*WXM_{PrxY_f&b6p4KTIO_hbmqExmf|WLM$(+KcVP;yWp=jZFr|8KPg7S9 zGTXknIoI92XRf)UtEIJlAcm+F&4)zx)cUri2Czfk;S-W7BrwU&d3)SRXg zM>Q8q7GAYZZs52iO^mFeqm{_xBTBRe0m*_Fnv&!4SI>D~)85pU9M;rA=0C8tCD-zk zCREcpOr5kIO-ee#=q4jJmC6qH(d#9G zeR`nO5n##OqD*GXEmeG_=!3hJx2$3#t9+qtU%su&E!nY}U%t-P$f4{?GRGNZhYS;A z4s#haxnFez1Ob+hs>geg{S=yOPj^)LT9deyH49C{qymWRuPC0PK zkqnzA^5MiZS^S0F;*FywYIg)Kni9bIHk|Z literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.ts new file mode 100644 index 0000000..50fb192 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.ts @@ -0,0 +1,311 @@ +interface Index_Params { + allSimObj?: any[]; + allSimConn?: any[]; + TempConn?: any[]; + isNewObj?: boolean; + newObjType?: number; + choseIndex?: number | null; + isNewConn?: boolean; + isShowLabel?: boolean; + isShowPort?: boolean; + isShowInterface?: boolean; + isShowTable?: boolean; + allSimPacket?: SimPacket[]; +} +import { TopMenuBar } from "@bundle:com.example.ensp_fourteen/entry/ets/components/TopMenuBar"; +import { MiddleContent } from "@bundle:com.example.ensp_fourteen/entry/ets/components/MiddleContent"; +import { BottomMenuBar } from "@bundle:com.example.ensp_fourteen/entry/ets/components/ButtomMenuBar"; +import type { SimPacket } from "../classes/OtherSimObjects" // 自定义数据包类型 +; +class Index extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = new ObservedPropertyObjectPU([] // 仿真对象数组123 + , this, "allSimObj"); + this.addProvidedVar("allSimObj", this.__allSimObj); + this.__allSimConn = new ObservedPropertyObjectPU([] // 仿真连接线数组 + , this, "allSimConn"); + this.addProvidedVar("allSimConn", this.__allSimConn); + this.__TempConn = new ObservedPropertyObjectPU([] // 临时连接线对象数组 + , this, "TempConn"); + this.addProvidedVar("TempConn", this.__TempConn); + this.__isNewObj = new ObservedPropertySimplePU(false // 是否新增对象 + , this, "isNewObj"); + this.addProvidedVar("isNewObj", this.__isNewObj); + this.__newObjType = new ObservedPropertySimplePU(-1 // 新增对象类型 + , this, "newObjType"); + this.addProvidedVar("newObjType", this.__newObjType); + this.__choseIndex = new ObservedPropertyObjectPU(null // 选中对象下标 + , this, "choseIndex"); + this.addProvidedVar("choseIndex", this.__choseIndex); + this.__isNewConn = new ObservedPropertySimplePU(true // 是否正在新增连接线 + , this, "isNewConn"); + this.addProvidedVar("isNewConn", this.__isNewConn); + this.__isShowLabel = new ObservedPropertySimplePU(true // 是否显示标签 + , this, "isShowLabel"); + this.addProvidedVar("isShowLabel", this.__isShowLabel); + this.__isShowPort = new ObservedPropertySimplePU(true // 是否显示接口 + , this, "isShowPort"); + this.addProvidedVar("isShowPort", this.__isShowPort); + this.__isShowInterface = new ObservedPropertySimplePU(true // 是否显示网络配置信息 + , this, "isShowInterface"); + this.addProvidedVar("isShowInterface", this.__isShowInterface); + this.__isShowTable = new ObservedPropertySimplePU(true // 是否显示路由/交换表信息 + , this, "isShowTable"); + this.addProvidedVar("isShowTable", this.__isShowTable); + this.__allSimPacket = new ObservedPropertyObjectPU([] // 单次数据包传输的集合 + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + , this, "allSimPacket"); + this.addProvidedVar("allSimPacket", this.__allSimPacket); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: Index_Params) { + if (params.allSimObj !== undefined) { + this.allSimObj = params.allSimObj; + } + if (params.allSimConn !== undefined) { + this.allSimConn = params.allSimConn; + } + if (params.TempConn !== undefined) { + this.TempConn = params.TempConn; + } + if (params.isNewObj !== undefined) { + this.isNewObj = params.isNewObj; + } + if (params.newObjType !== undefined) { + this.newObjType = params.newObjType; + } + if (params.choseIndex !== undefined) { + this.choseIndex = params.choseIndex; + } + if (params.isNewConn !== undefined) { + this.isNewConn = params.isNewConn; + } + if (params.isShowLabel !== undefined) { + this.isShowLabel = params.isShowLabel; + } + if (params.isShowPort !== undefined) { + this.isShowPort = params.isShowPort; + } + if (params.isShowInterface !== undefined) { + this.isShowInterface = params.isShowInterface; + } + if (params.isShowTable !== undefined) { + this.isShowTable = params.isShowTable; + } + if (params.allSimPacket !== undefined) { + this.allSimPacket = params.allSimPacket; + } + } + updateStateVars(params: Index_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __allSimObj: ObservedPropertyObjectPU; // 仿真对象数组123 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: any[]) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyObjectPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: any[]) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyObjectPU; // 临时连接线对象数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[]) { + this.__TempConn.set(newValue); + } + private __isNewObj: ObservedPropertySimplePU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertySimplePU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyObjectPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null) { + this.__choseIndex.set(newValue); + } + private __isNewConn: ObservedPropertySimplePU; // 是否正在新增连接线 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean) { + this.__isNewConn.set(newValue); + } + private __isShowLabel: ObservedPropertySimplePU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean) { + this.__isShowLabel.set(newValue); + } + private __isShowPort: ObservedPropertySimplePU; // 是否显示接口 + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue: boolean) { + this.__isShowPort.set(newValue); + } + private __isShowInterface: ObservedPropertySimplePU; // 是否显示网络配置信息 + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue: boolean) { + this.__isShowInterface.set(newValue); + } + private __isShowTable: ObservedPropertySimplePU; // 是否显示路由/交换表信息 + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue: boolean) { + this.__isShowTable.set(newValue); + } + private __allSimPacket: ObservedPropertyObjectPU; // 单次数据包传输的集合 + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[]) { + this.__allSimPacket.set(newValue); + } + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("pages/Index.ets(35:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 顶部功能栏 + TopMenuBar(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 中间绘制区 + MiddleContent(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 底部选择栏 + BottomMenuBar(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +ViewStackProcessor.StartGetAccessRecordingFor(ViewStackProcessor.AllocateNewElmetIdForNextComponent()); +loadDocument(new Index(undefined, {})); +ViewStackProcessor.StopGetAccessRecording(); diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/filesInfo.txt b/ensp14ing/ensp14/entry/.preview/cache/.default/filesInfo.txt new file mode 100644 index 0000000..c92b0fd --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/filesInfo.txt @@ -0,0 +1,12 @@ +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.ts;com.example.ensp_fourteen/entry/ets/entryability/EntryAbility;esm;entry/src/main/ets/entryability/EntryAbility.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.ts;com.example.ensp_fourteen/entry/ets/pages/Index;esm;entry/src/main/ets/pages/Index.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.ts;com.example.ensp_fourteen/entry/ets/components/TopMenuBar;esm;entry/src/main/ets/components/TopMenuBar.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.ts;com.example.ensp_fourteen/entry/ets/components/MiddleContent;esm;entry/src/main/ets/components/MiddleContent.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.ts;com.example.ensp_fourteen/entry/ets/components/ButtomMenuBar;esm;entry/src/main/ets/components/ButtomMenuBar.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.ts;com.example.ensp_fourteen/entry/ets/classes/TopMenu;esm;entry/src/main/ets/classes/TopMenu.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.ts;com.example.ensp_fourteen/entry/ets/components/Dialog;esm;entry/src/main/ets/components/Dialog.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.ts;com.example.ensp_fourteen/entry/ets/classes/OtherSimObjects;esm;entry/src/main/ets/classes/OtherSimObjects.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.ts;com.example.ensp_fourteen/entry/ets/components/Table;esm;entry/src/main/ets/components/Table.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.ts;com.example.ensp_fourteen/entry/ets/functions/functions;esm;entry/src/main/ets/functions/functions.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.ts;com.example.ensp_fourteen/entry/ets/classes/SimBase;esm;entry/src/main/ets/classes/SimBase.ets;entry +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.ts;com.example.ensp_fourteen/entry/ets/classes/Datas;esm;entry/src/main/ets/classes/Datas.ets;entry diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/modules.cache b/ensp14ing/ensp14/entry/.preview/cache/.default/modules.cache new file mode 100644 index 0000000..70be4de --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/modules.cache @@ -0,0 +1,13 @@ +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.protoBin +F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.ts;F:/jiaocai/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.protoBin +F:\jiaocai\ensp14\entry\.preview\cache\.default\npmEntries.txt;F:\jiaocai\ensp14\entry\.preview\cache\.default\npmEntries.protoBin diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..c8be1d869c29ebf0c5215b64982774d98b3753c5 GIT binary patch literal 75 zcmd=1^Zw&X79nR2Mj?AH@p#wZ;GFytztY^K)FQ{cy!?{HlFa-(Ar+ibN}OEmTufXH H0u2rT+YA^L literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.txt b/ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.txt new file mode 100644 index 0000000..e69de29 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/preview.ets b/ensp14ing/ensp14/entry/.preview/cache/.default/preview.ets new file mode 100644 index 0000000..e69de29 diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/sourceMaps.json b/ensp14ing/ensp14/entry/.preview/cache/.default/sourceMaps.json new file mode 100644 index 0000000..f1903b4 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/sourceMaps.json @@ -0,0 +1,122 @@ +{ + "entry/src/main/ets/pages/Index.ets": { + "version": 3, + "file": "Index.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Index.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/entryability/EntryAbility.ets": { + "version": 3, + "file": "EntryAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entryability/EntryAbility.ets" + ], + "names": [], + "mappings": "YAAO,eAAe;OACf,KAAK;OACL,SAAS;YACT,IAAI;YACJ,MAAM;AAEb,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,GAAG,IAAI;QAClE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,IAAI,IAAI;QACf,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI;QACxD,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,CAAC,CAAC;QAE3E,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACnD,IAAI,GAAG,CAAC,IAAI,EAAE;gBACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,+CAA+C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3G,OAAO;aACR;YACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,oDAAoD,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAClH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,IAAI,IAAI;QAC1B,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,oCAAoC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF" + }, + "entry/src/main/ets/components/MiddleContent.ets": { + "version": 3, + "file": "MiddleContent.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/MiddleContent.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/TopMenuBar.ets": { + "version": 3, + "file": "TopMenuBar.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/TopMenuBar.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/ButtomMenuBar.ets": { + "version": 3, + "file": "ButtomMenuBar.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/ButtomMenuBar.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/Table.ets": { + "version": 3, + "file": "Table.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/Table.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/Dialog.ets": { + "version": 3, + "file": "Dialog.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/Dialog.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/classes/TopMenu.ets": { + "version": 3, + "file": "TopMenu.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/TopMenu.ets" + ], + "names": [], + "mappings": "AAAA,MAAM,OAAO,OAAO;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;IAEtC,YAAY,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE;QACpD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,CAAC;CACF,CAAC,QAAQ;AAEV,MAAM,OAAO,WAAW;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,QAAQ,GAAG,SAAS,CAAA;IAEzB,YAAY,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;CACF,CAAC,UAAU" + }, + "entry/src/main/ets/classes/OtherSimObjects.ets": { + "version": 3, + "file": "OtherSimObjects.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/OtherSimObjects.ets" + ], + "names": [], + "mappings": "OAAO,EAAE,OAAO,EAAE;OACX,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAuC;cAArC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;OAC1E,EAAE,eAAe,EAAE;AAE1B,CAAC,QAAQ;AACT,MAAM,OAAO,SAAS;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC,CAAC,WAAW;IAC9B,QAAQ,EAAE,MAAM,CAAC,CAAC,UAAU;IAC5B,SAAS,EAAE,MAAM,CAAC,CAAC,YAAY;IAC/B,QAAQ,EAAE,MAAM,CAAC,CAAC,WAAW;IAC7B,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ;IACzB,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ;IACtB,SAAS,EAAE,OAAO,EAAE,CAAC;IACrB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC,CAAC,wBAAwB;IACpC,MAAM,EAAE,GAAG,CAAC,CAAC,qBAAqB;IAClC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM;IAC1B,KAAK,EAAE,MAAM,CAAC,CAAC,WAAW;IAE1B,YAAY,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE;QAC7M,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,CAAA;QAClB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,CAAC;CACF;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,UAAU;IACrB,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC,SAAS;IAChC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC,SAAS;IAChC,IAAI,EAAE,MAAM,CAAC,CAAC,YAAY;IAC1B,IAAI,EAAE,MAAM,CAAC,CAAC,YAAY;IAC1B,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO;IACtB,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS;IAEjC,YAAY,KAAK,EAAE,OAAO,GAAG,IAAI,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;QAClF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;SAC1B;aAAM;YACL,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;SAC3B;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,aAAa;QACX,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,GAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QACpD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,GAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;IACtD,CAAC,CAAC,cAAc;IAEhB,aAAa;QACX,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,GAAC,CAAC,CAAC,GAAG,IAAI,CAAA;QACxC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,GAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IAC1C,CAAC,CAAC,cAAc;IAEhB,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;QACzB,IAAI,KAAK,YAAY,UAAU,EAAE;YAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;YACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;YACnC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,QAAQ,CAAC;SACrE;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,cAAc;CACjB;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,OAAQ,SAAQ,OAAO;IAClC,QAAQ,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC,SAAS;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAEhB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;QAChD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACrC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,GAAG,kHAAwB,CAAA,CAAC,OAAO;QACxC,IAAI,CAAC,KAAK,kHAA2B,CAAA,CAAC,WAAW;QACjD,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,WAAW;QACnC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,cAAc;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAA;IAC1C,CAAC;IAED,cAAc;QACZ,OAAO,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,CAAA;IAC/B,CAAC,CAAC,WAAW;IAEb,YAAY;QACV,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAA;IAChC,CAAC,CAAC,SAAS;IAEX,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE;QACpG,IAAI,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QACvD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;QACnC,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,GAAG,CAAC,CAAC,CAAA;QAC9C,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAC3C,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;QACnC,IAAI,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;QACrH,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;QAChB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAChC,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,eAAe,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;QACrE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACnB,CAAC,CAAC,QAAQ;IAEV,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI;QACpH,IAAI,SAAS,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,CAAC,CAAA;QAC7G,IAAI,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE;YACnD,SAAS,CAAC,IAAI,EAAE,CAAA;YAChB,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,SAAS,CAAC,UAAU,IAAI,CAAC,CAAA;YAC9E,OAAO,SAAS,CAAA;SACjB;QACD,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,UAAU,CAAC,CAAA;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,WAAW;IAEb,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,IAAI;QACnK,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,CAAC,CAAA;QAC7F,IAAI,WAAW,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,aAAa,EAAE,SAAS,CAAC,aAAa,CAAC,CAAA;QAC5L,IAAI,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;YAC/C,IAAI,mBAAmB,GAAG,WAAW,CAAC,IAAI,EAAE,CAAA;YAC5C,IAAI,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAA;YACxC,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,oBAAoB,OAAO,SAAS,WAAW,CAAC,QAAQ,IAAI,CAAC,CAAA;YAChG,OAAO,mBAAmB,CAAA;SAC3B;QACD,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,UAAU,CAAC,CAAA;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,WAAW;IAEb,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;QAC9K,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,CAAC,CAAA;QAC9H,IAAI,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,QAAQ,GAAG,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;YACvM,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACvC,QAAQ,CAAC,IAAI,EAAE,CAAA;gBACf,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAA;gBACrF,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;aAC5B;SACF;QACD,IAAI,YAAY,EAAE;YAChB,OAAO,YAAY,CAAA;SACpB;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,UAAU,CAAC,CAAA;YAC1C,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,CAAC,WAAW;IAEb,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,IAAI;QACpP,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,CAAA;QACjI,IAAI,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,CAAA;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC5C,IAAI,SAAS,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;YAC7O,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE;gBAC1C,SAAS,CAAC,IAAI,EAAE,CAAA;gBAChB,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,UAAU,IAAI,CAAC,CAAA;gBACpE,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;aAC9B;SACF;QACD,IAAI,aAAa,EAAE;YACjB,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;YAC3E,OAAO,aAAa,CAAA;SACrB;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,UAAU,CAAC,CAAA;YAC1C,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,CAAC,WAAW;IAEb,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO;QAC/O,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE;YACrJ,OAAO,IAAI,CAAA;SACZ;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,WAAW;IAEb,OAAO,CAAC,MAAM,EAAE,SAAS;QACvB,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;YAC9D,IAAI,kBAAkB,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;YACrE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC1C,UAAU,CAAC,GAAG,CAAC,oBAAoB,EAAE,kBAAkB,GAAG,CAAC,CAAC,CAAA;YAC5D,kBAAkB,GAAG,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;YACzD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAC1C,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;YACxE,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;YACxE,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;YACxE,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;YACxE,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,eAAe,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;SACtE;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,QAAQ,UAAU,CAAC,CAAA;SAC1C;IACH,CAAC,CAAC,QAAQ;IAEV,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO;QACpD,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE;YACpE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YACpB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACtB,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAA;SAChF;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAA;SAC9C;IACH,CAAC,CAAC,WAAW;IAEb,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;QACrE,IAAI,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;YACnE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YACxC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACrB,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAA;SAC/E;aACI;YACH,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAA;SAC9C;IACH,CAAC,CAAC,WAAW;IAEb,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS;QAChG,IAAI,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;YAC1G,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;YACjD,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACxB,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,CAAC,CAAA;SAClF;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAA;SAC9C;IACH,CAAC,CAAC,WAAW;IAEb,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO;QAClH,IAAI,SAAS,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;YACrJ,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;YACjE,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,kBAAkB,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAA;SAChF;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAA;SAC9C;IACH,CAAC,CAAC,WAAW;IAEb,IAAI,CAAC,MAAM,EAAE,SAAS;QACpB,MAAM,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAA;QAClC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAA;QACvB,eAAe,CAAC,MAAM,IAAI,CAAC,QAAQ,eAAe,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;QACrE,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE;YAChF,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;SAChF;QACD,oDAAoD;IACtD,CAAC,CAAC,QAAQ;CACX;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,SAAU,SAAQ,OAAO;IACpC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;QAChD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACrC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,GAAG,kHAA0B,CAAA,CAAC,QAAQ;QAC3C,IAAI,CAAC,KAAK,kHAA6B,CAAA,CAAC,YAAY;QACpD,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,WAAW;QACrD,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,cAAc;QAC1D,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;IACvB,CAAC;IAED,cAAc;QACZ,OAAO,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,CAAA;IAC/B,CAAC,CAAC,WAAW;IAEb,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;QACjE,gBAAgB;QAChB,MAAM,CAAC,cAAc,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAExD,qBAAqB;QACrB,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpD,MAAM,mBAAmB,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEtD,wBAAwB;QACxB,MAAM,6BAA6B,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC3E,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,MAAM,wBAAwB,GAAG,6BAA6B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzE,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE1D,0CAA0C;QAC1C,OAAO,wBAAwB,KAAK,mBAAmB,IAAI,UAAU,KAAK,IAAI,CAAC;IACjF,CAAC,CAAC,qBAAqB;IAEvB,OAAO,CAAC,MAAM,EAAE,SAAS;QACvB,eAAe,CAAC,OAAO,IAAI,CAAC,QAAQ,cAAc,CAAC,CAAA;QACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1C,IAAI;YACF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;SAClD;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;SACtD;QACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,QAAQ;IAEV,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACtC,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA,CAAC,kBAAkB;YAC7E,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,CAAA,CAAC,gBAAgB;YACtG,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,uFAAuF;gBACvF,0FAA0F;gBAC1F,uCAAuC;gBACvC,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACzD,OAAO,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,QAAQ,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,GAAC,CAAC,CAAC,CAAA;gBACpF,CAAC,CAAC,EAAE;oBACF,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;oBAC7L,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;oBAC5B,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAA;oBACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;oBACvC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC7B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;oBAChB,IAAI,EAAE,CAAA;iBACP;aACF;QACH,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,EAAE;YACT,eAAe,CAAC,OAAO,IAAI,CAAC,QAAQ,cAAc,CAAC,CAAA;SACpD;IACH,CAAC,CAAC,QAAQ;IAEV,cAAc,IAAI,MAAM;QACtB,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,KAAK,IAAI,MAAM,IAAI,YAAY,EAAE;YAC/B,GAAG,IAAI,QAAQ,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YACtC,GAAG,IAAI,QAAQ,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;SACtC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,gBAAgB;CACnB;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,SAAU,SAAQ,OAAO;IACpC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;QAChD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACrC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,GAAG,kHAA6B,CAAA,CAAC,QAAQ;QAC9C,IAAI,CAAC,KAAK,kHAAgC,CAAA,CAAC,YAAY;QACvD,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,WAAW;QACrD,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,cAAc;QAC1D,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;IACvB,CAAC;IAED,cAAc;QACZ,OAAO,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,CAAA;IAC/B,CAAC,CAAC,WAAW;IAEb,OAAO,CAAC,MAAM,EAAE,SAAS;QACvB,eAAe,CAAC,OAAO,IAAI,CAAC,QAAQ,cAAc,CAAC,CAAA;QACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,QAAQ;IAEV,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACtC,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;YAC1D,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,CAAA;YACrF,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,SAAS,CAAC,EAAE;oBAC3F,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;oBAC7L,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;oBAC5B,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAA;oBACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;oBACvC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC7B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;iBACjB;aACF;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,QAAQ;IAEV,cAAc,IAAI,MAAM;QACtB,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;QACnC,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE;YAC9B,GAAG,IAAI,QAAQ,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YACtC,GAAG,IAAI,QAAQ,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;SAClC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,iBAAiB;CACpB;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,MAAO,SAAQ,OAAO;IACjC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;QAChD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACrC,IAAI,CAAC,GAAG,kHAA2B,CAAA,CAAC,QAAQ;QAC5C,IAAI,CAAC,KAAK,kHAA8B,CAAA,CAAC,YAAY;QACrD,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,WAAW;QACrD,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,cAAc;IAC5D,CAAC;IAED,cAAc,IAAI,MAAM;QACtB,OAAO,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,CAAA,CAAC,WAAW;IAC3C,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,SAAS;QACvB,eAAe,CAAC,OAAO,IAAI,CAAC,QAAQ,cAAc,CAAC,CAAA;QACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,QAAQ;IAEV,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;QAC/B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7C,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;YAC1D,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,CAAA;YACrF,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE;oBACzB,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;oBAC7L,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;oBAC5B,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAA;oBACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;oBACvC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC7B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;iBACjB;aACF;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,QAAQ;CACX" + }, + "entry/src/main/ets/classes/SimBase.ets": { + "version": 3, + "file": "SimBase.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/SimBase.ets" + ], + "names": [], + "mappings": "cAAS,SAAS,QAAQ,mBAAmB;cAEnB,OAAO,QAAwD,kBAAkB;AAE3G,YAAY;AACZ,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAA,CAAC,SAAS;IACtB,GAAG,EAAE,MAAM,CAAA,CAAC,8BAA8B;CAC3C;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,OAAO;IAClB,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW;IAC5B,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM;IACpB,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,8BAA8B;IACtD,KAAK,EAAE,MAAM,CAAC,CAAC,uBAAuB;IACtC,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS;IACjC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ;IAC1B,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO;IACzB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO;IAC1B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,QAAQ;IAC5B,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,SAAS;IAC/B,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,aAAa;IACrC,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;IAC5C,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ;IACjC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM;IACxC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM;IAExC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;QAC5C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,SAAS;IAEzB,CAAC,CAAC,QAAQ;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE;IAEtG,CAAC,CAAC,QAAQ;IAEV,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,IAAI;QACpP,OAAM;IACR,CAAC,CAAC,WAAW;IAEb,QAAQ,CAAC,MAAM,EAAE,SAAS;IAE1B,CAAC,CAAC,QAAQ;IAEV,aAAa;QACX,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAA;IAC9B,CAAC;CACF" + }, + "entry/src/main/ets/classes/Datas.ets": { + "version": 3, + "file": "Datas.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/Datas.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/functions/functions.ets": { + "version": 3, + "file": "functions.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/functions/functions.ets" + ], + "names": [], + "mappings": "cAAS,OAAO,QAAQ,oBAAoB;AAE5C,SAAS,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IACpD,iBAAiB;IACjB,MAAM,iBAAiB,GAAG,yDAAyD,CAAC;IACpF,MAAM,oBAAoB,GAAG,8CAA8C,CAAC;IAE5E,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3D,MAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAEjE,IAAI,eAAe,EAAE;QACnB,cAAc;QACd,0BAA0B;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;SACF;QACD,yBAAyB;QACzB,MAAM,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,EAAE,EAAE;YACrC,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,kBAAkB,EAAE;QAC7B,cAAc;QACd,0BAA0B;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,IAAI,CAAC;KACb;SAAM;QACL,YAAY;QACZ,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE;IAC/C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;QAC5B,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE;YAC1C,SAAQ;SACT;aAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACtC,OAAO,KAAK,CAAA;SACb;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,oBAAoB;AAEtB,MAAM,UAAU,UAAU;IACxB,OAAO,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE,GAAG,IAAI,CAAA;AAC3C,CAAC,CAAC,SAAS;AAEX,MAAM,UAAU,eAAe,CAAC,IAAI,EAAE,MAAM;IAC1C,IAAI,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,OAAO,GAAG,OAAO,GAAG,UAAU,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA;IAC9C,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC,cAAc" + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/config/buildConfig.json b/ensp14ing/ensp14/entry/.preview/config/buildConfig.json new file mode 100644 index 0000000..3431dab --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/config/buildConfig.json @@ -0,0 +1 @@ +{"deviceType":"tablet","buildMode":"debug","note":"false","logLevel":"3","isPreview":"true","checkEntry":"true","port":"29900","localPropertiesPath":"E:\\jiaocai\\ensp14\\local.properties","Path":"D:\\Program Files\\Huawei\\DevEco Studio\\tools\\node\\","aceProfilePath":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile","hapMode":"false","img2bin":"true","projectProfilePath":"E:\\jiaocai\\ensp14\\build-profile.json5","watchMode":"true","appResource":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\ResourceTable.txt","aceBuildJson":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader\\default\\loader.json","aceModuleRoot":"E:\\jiaocai\\ensp14\\entry\\src\\main\\ets","aceSoPath":"E:\\jiaocai\\ensp14\\entry\\.preview\\cache\\nativeDependencies.txt","cachePath":"E:\\jiaocai\\ensp14\\entry\\.preview\\cache\\.default","aceModuleBuild":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\assets\\default\\ets","aceModuleJsonPath":"E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json","stageRouterConfig":{"paths":["E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\module.json","E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\res\\default\\resources\\base\\profile\\main_pages.json"],"contents":["{\"module\":{\"pages\":\"$profile:main_pages\",\"name\":\"entry\"}}","{\"src\":[\"pages/Index\"]}"]}} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/compileInfo.json b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/compileInfo.json new file mode 100644 index 0000000..f9ebadc --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/compileInfo.json @@ -0,0 +1 @@ +{"buildMode":"debug"} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ArkTS/ArkTSLinter_output.json b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ArkTS/ArkTSLinter_output.json new file mode 100644 index 0000000..d4970a5 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ArkTS/ArkTSLinter_output.json @@ -0,0 +1,1680 @@ +[ + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 5, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 7, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 15, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 18, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 24, + "character": 40, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 24, + "character": 113, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 39, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 39, + "character": 109, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 51, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 53, + "character": 16, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 56, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 64, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 64, + "character": 95, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 67, + "character": 24, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 76, + "character": 42, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 76, + "character": 117, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 76, + "character": 239, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 101, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 101, + "character": 111, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 113, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 115, + "character": 13, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 116, + "character": 16, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 123, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 123, + "character": 61, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 126, + "character": 21, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 132, + "character": 39, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 132, + "character": 111, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 132, + "character": 157, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 149, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 149, + "character": 108, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 161, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 163, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 164, + "character": 13, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 173, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 173, + "character": 58, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 176, + "character": 22, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 184, + "character": 40, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 184, + "character": 113, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 184, + "character": 157, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 201, + "character": 27, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 201, + "character": 109, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 212, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 214, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 221, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 223, + "character": 13, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 230, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 232, + "character": 16, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 239, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/Datas.ets", + "line": 241, + "character": 14, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 46, + "character": 35, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 5, + "character": 29, + "messageText": "RegExp literals are not supported (arkts-no-regexp-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 6, + "character": 32, + "messageText": "RegExp literals are not supported (arkts-no-regexp-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/functions/functions.ets", + "line": 58, + "character": 7, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 9, + "character": 3, + "messageText": "Property 'targetHost' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 21, + "character": 3, + "messageText": "Property 'level' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 63, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 63, + "character": 41, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 64, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 64, + "character": 41, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 68, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 69, + "character": 5, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 74, + "character": 24, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 75, + "character": 24, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 76, + "character": 14, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 76, + "character": 46, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 87, + "character": 3, + "messageText": "Property 'macData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 88, + "character": 3, + "messageText": "Property 'ipData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 89, + "character": 3, + "messageText": "Property 'transData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 90, + "character": 3, + "messageText": "Property 'appData' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 114, + "character": 9, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 117, + "character": 5, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 119, + "character": 55, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 37, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 54, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 77, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 99, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 144, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 140, + "character": 169, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 154, + "character": 25, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 155, + "character": 33, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 155, + "character": 59, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 155, + "character": 88, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 155, + "character": 120, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 155, + "character": 139, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 155, + "character": 173, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 156, + "character": 28, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 158, + "character": 62, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 173, + "character": 25, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 35, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 58, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 84, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 110, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 131, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 157, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 183, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 174, + "character": 214, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 175, + "character": 29, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 199, + "character": 11, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 202, + "character": 7, + "messageText": { + "messageText": "Type 'number | undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'number'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 260, + "character": 7, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 309, + "character": 48, + "messageText": { + "messageText": "Argument of type 'string | null' is not assignable to parameter of type 'string'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'string'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 318, + "character": 28, + "messageText": { + "messageText": "Argument of type '(item: symbol) => void' is not assignable to parameter of type '(value: symbol | null, index: number, array: (symbol | null)[]) => void'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Types of parameters 'item' and 'value' are incompatible.", + "category": 1, + "code": 2328, + "next": [ + { + "messageText": "Type 'symbol | null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322 + } + ] + } + ] + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 325, + "character": 38, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 326, + "character": 51, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 328, + "character": 59, + "messageText": { + "messageText": "Argument of type 'SimBase | undefined' is not assignable to parameter of type 'SimBase'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'SimBase'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 333, + "character": 11, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 346, + "character": 24, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 378, + "character": 28, + "messageText": { + "messageText": "Argument of type '(item: symbol) => void' is not assignable to parameter of type '(value: symbol | null, index: number, array: (symbol | null)[]) => void'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Types of parameters 'item' and 'value' are incompatible.", + "category": 1, + "code": 2328, + "next": [ + { + "messageText": "Type 'symbol | null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322 + } + ] + } + ] + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 382, + "character": 38, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 383, + "character": 59, + "messageText": { + "messageText": "Argument of type 'SimBase | undefined' is not assignable to parameter of type 'SimBase'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'SimBase'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 388, + "character": 11, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 397, + "character": 26, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 427, + "character": 28, + "messageText": { + "messageText": "Argument of type '(item: symbol, index: number) => void' is not assignable to parameter of type '(value: symbol | null, index: number, array: (symbol | null)[]) => void'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Types of parameters 'item' and 'value' are incompatible.", + "category": 1, + "code": 2328, + "next": [ + { + "messageText": "Type 'symbol | null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322, + "next": [ + { + "messageText": "Type 'null' is not assignable to type 'symbol'.", + "category": 1, + "code": 2322 + } + ] + } + ] + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 432, + "character": 59, + "messageText": { + "messageText": "Argument of type 'SimBase | undefined' is not assignable to parameter of type 'SimBase'.", + "category": 1, + "code": 2345, + "next": [ + { + "messageText": "Type 'undefined' is not assignable to type 'SimBase'.", + "category": 1, + "code": 2322 + } + ] + } + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 437, + "character": 11, + "messageText": "Object is possibly 'undefined'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 18, + "character": 7, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 19, + "character": 11, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 34, + "character": 15, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 72, + "character": 17, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 256, + "character": 20, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 286, + "character": 11, + "messageText": "Destructuring variable declarations are not supported (arkts-no-destruct-decls)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 318, + "character": 35, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 347, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 348, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 378, + "character": 35, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 398, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 399, + "character": 22, + "messageText": "Indexed access is not supported for fields (arkts-no-props-by-index)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets", + "line": 427, + "character": 35, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 20, + "character": 3, + "messageText": "Property 'objLabel' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 21, + "character": 3, + "messageText": "Property 'ip' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 22, + "character": 3, + "messageText": "Property 'mac' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 23, + "character": 3, + "messageText": "Property 'img' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 24, + "character": 3, + "messageText": "Property 'imgTm' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 25, + "character": 3, + "messageText": "Property 'interface' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 26, + "character": 3, + "messageText": "Property 'connections' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 27, + "character": 3, + "messageText": "Property 'routerTable' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 28, + "character": 3, + "messageText": "Property 'switchTable' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 48, + "character": 5, + "messageText": "Type 'undefined' is not assignable to type 'MACData[] | null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 17, + "character": 10, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 25, + "character": 20, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 26, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/classes/SimBase.ets", + "line": 34, + "character": 18, + "messageText": "\"Symbol()\" API is not supported (arkts-no-symbol)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 68, + "character": 37, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 68, + "character": 79, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 70, + "character": 78, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 70, + "character": 97, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 70, + "character": 119, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 156, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 157, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 159, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 160, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 178, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 179, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 181, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 182, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 200, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 201, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 203, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 204, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 222, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 223, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 225, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 226, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 261, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 262, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 264, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 265, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 283, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 284, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 286, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 287, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 305, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 306, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 308, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 309, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 327, + "character": 17, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 328, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 330, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 331, + "character": 15, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 412, + "character": 19, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Dialog.ets", + "line": 466, + "character": 34, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 11, + "character": 51, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 15, + "character": 50, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 19, + "character": 53, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 23, + "character": 57, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 27, + "character": 57, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 31, + "character": 49, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 35, + "character": 54, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 29, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 56, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 91, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 68, + "character": 118, + "messageText": "Object is possibly 'null'." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/TopMenuBar.ets", + "line": 177, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/Table.ets", + "line": 77, + "character": 3, + "messageText": "Property 'host' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 45, + "character": 26, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 46, + "character": 26, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 47, + "character": 26, + "messageText": "Type 'null' cannot be used as an index type." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 230, + "character": 3, + "messageText": "Property 'thisIndex' has no initializer and is not definitely assigned in the constructor." + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 10, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 190, + "character": 12, + "messageText": "Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 198, + "character": 12, + "messageText": "Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 224, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/MiddleContent.ets", + "line": 235, + "character": 39, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/components/ButtomMenuBar.ets", + "line": 37, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/pages/Index.ets", + "line": 9, + "character": 23, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/pages/Index.ets", + "line": 10, + "character": 24, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + }, + { + "categoryInfo": "Error", + "fileName": "E:/jiaocai/ensp14/entry/src/main/ets/pages/Index.ets", + "line": 11, + "character": 22, + "messageText": "Use explicit types instead of \"any\", \"unknown\" (arkts-no-any-unknown)" + } +] \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ResourceTable.txt b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ResourceTable.txt new file mode 100644 index 0000000..f0beb89 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/ResourceTable.txt @@ -0,0 +1,18 @@ +string EntryAbility_desc 0x01000004 +string EntryAbility_label 0x01000005 +string app_name 0x01000000 +string module_desc 0x01000006 +color start_window_background 0x01000008 +media app_icon 0x01000001 +media icon 0x01000003 +media jiaohuanji 0x01000010 +media jiaohuanji_tm 0x0100000b +media jixianqi 0x0100000c +media jixianqi_tm 0x01000009 +media luyouqi 0x0100000d +media luyouqi_tm 0x01000011 +media packet 0x0100000f +media startIcon 0x01000002 +media zhuji 0x0100000a +media zhuji_tm 0x0100000e +profile main_pages 0x01000007 \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-ButtomMenuBar.ets-5efecddd1c9b6f1542c3aebf923313e6.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-ButtomMenuBar.ets-5efecddd1c9b6f1542c3aebf923313e6.msgpack new file mode 100644 index 0000000..5f309f7 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-ButtomMenuBar.ets-5efecddd1c9b6f1542c3aebf923313e6.msgpack @@ -0,0 +1,850 @@ +r@assertionscodecustomTransformCachedependenciesidmetamoduleSideEffectsoriginalCodeoriginalSourcemapresolvedIdssourcemapChainsyntheticNamedExportstransformDependenciestransformFilescacheAstrA$export class BottomMenuBar extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.simClickObjArr = [ + { + name: "主机", + image: { "id": 16777226, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 1 + }, + { + name: "路由器", + image: { "id": 16777229, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 2 + }, + { + name: "交换器", + image: { "id": 16777232, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 3 + }, + { + name: "集线器", + image: { "id": 16777228, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }, + type: 4 + }, + ] // 底部菜单栏数组 + ; + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.scroller = new Scroller(); + this.__logText = this.createStorageLink("LogText", "", "logText"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.simClickObjArr !== undefined) { + this.simClickObjArr = params.simClickObjArr; + } + if (params.scroller !== undefined) { + this.scroller = params.scroller; + } + } + updateStateVars(params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__logText.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__logText.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue) { + this.__isNewObj.set(newValue); + } + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue) { + this.__newObjType.set(newValue); + } + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue) { + this.__choseIndex.set(newValue); + } + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue) { + this.__TempConn.set(newValue); + } + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue) { + this.__isNewConn.set(newValue); + } + get logText() { + return this.__logText.get(); + } + set logText(newValue) { + this.__logText.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 10 }); + Row.debugLine("components/ButtomMenuBar.ets(44:5)"); + Row.layoutWeight(1); + Row.margin({ left: '5%' }); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/ButtomMenuBar.ets(46:9)"); + Column.margin({ top: 5 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Image.create(item.image); + Image.debugLine("components/ButtomMenuBar.ets(47:11)"); + Image.border({ + color: item.type == this.newObjType && this.isNewObj ? Color.Red : Color.Transparent, + width: 1 + }); + Image.width(50); + Image.onClick(() => { + this.isNewConn = false; + this.TempConn = []; + if (!this.isNewObj) { // 选择创建对象 + this.isNewObj = true; + this.newObjType = item.type; + } + else if (this.newObjType != item.type) { // 选择创建其他对象 + this.newObjType = item.type; + } + else { // 取消选择 + this.isNewObj = false; + this.newObjType = -1; + } + this.allSimObj.forEach(item => { + item.isChose = false; + }); // 创建对象时必须全部设置为非选中状态 + this.choseIndex = null; + }); + if (!isInitialRender) { + Image.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.name); + Text.debugLine("components/ButtomMenuBar.ets(70:11)"); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simClickObjArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Scroll.create(this.scroller); + Scroll.debugLine("components/ButtomMenuBar.ets(76:7)"); + Scroll.border({ + color: Color.Black, + width: 1 + }); + Scroll.layoutWeight(1); + Scroll.height('100%'); + Scroll.margin(2); + if (!isInitialRender) { + Scroll.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.logText); + Text.debugLine("components/ButtomMenuBar.ets(77:9)"); + Text.fontSize(15); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Scroll.pop(); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +//# sourceMappingURL=ButtomMenuBar.js.mapAE:\jiaocai\ensp14\entry\src\main\ets\components\ButtomMenuBar.etsrBmoduleNameisLocalDependencyisNodeEntryFilepkgPathbelongProjectPathpkgNamepkgVersiondependencyPkgInfobelongModulePathhostModulesInfoentry·E:\jiaocai\ensp14\entryE:\jiaocai\ensp14entry1.0.0E:\jiaocai\ensp14\entryrChostDependencyNamehostModuleName../components/ButtomMenuBarentry import { SimBase } from "../classes/SimBase" + +interface SimClickObj { + name: string + image: Resource + type: number +} + +@Component +export struct BottomMenuBar { + private simClickObjArr: SimClickObj[] = [ + { + name: "主机", + image: $r("app.media.zhuji"), + type: 1 + }, + { + name: "路由器", + image: $r("app.media.luyouqi"), + type: 2 + }, + { + name: "交换器", + image: $r("app.media.jiaohuanji"), + type: 3 + }, + { + name: "集线器", + image: $r("app.media.jixianqi"), + type: 4 + }, + ] // 底部菜单栏数组 + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume isNewObj: boolean // 是否新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + @Consume TempConn: any[] // 是否正在新增连接线 + @Consume isNewConn: boolean // 选中连接线下标 + + scroller: Scroller = new Scroller() + @StorageLink("LogText") logText: string = "" + + build() { + Row({ space: 10 }) { + ForEach(this.simClickObjArr, (item: SimClickObj) => { + Column() { + Image(item.image) + .border({ + color: item.type == this.newObjType && this.isNewObj ? Color.Red : Color.Transparent, + width: 1 + }) + .width(50) + .onClick(() => { + this.isNewConn = false + this.TempConn = [] + if (!this.isNewObj) { // 选择创建对象 + this.isNewObj = true + this.newObjType = item.type + } else if (this.newObjType != item.type) { // 选择创建其他对象 + this.newObjType = item.type + } else { // 取消选择 + this.isNewObj = false + this.newObjType = -1 + } + this.allSimObj.forEach(item => { + item.isChose = false + }) // 创建对象时必须全部设置为非选中状态 + this.choseIndex = null + }) + Text(item.name) + .fontWeight(FontWeight.Bold) + } + .margin({ top: 5 }) + }) + + Scroll(this.scroller) { + Text(this.logText) + .fontSize(15) + } + .border({ + color: Color.Black, + width: 1 + }) + .layoutWeight(1) + .height('100%') + .margin(2) + } + .layoutWeight(1) + .margin({left: '5%'}) + } +} +ArDversionfilesourceRootsourcesnamesmappingsButtomMenuBar.jsButtomMenuBar.etsݔ     +*   +    ̆ " +    +  ̆$ +    +  ̆' +    +  ̆% +    +''$'#&'%0(9(;(,=(.    ! !! !" "" "# ## #$ $$ $% %% %((!((!* ++++ ++ +"+$+ ++WWWW ++XX X X XX#X%X++ ,, ----H !H"H$H'H)H*H,H--. +.!.%.&.+.. +./ /!/000#0$0(0,0"00&10';01?05C09D0:L0BM0CN0DO0ET0JU0KX0NY0OZ0P[0Q`0Va0Wl0b111 12 . +.3 3 3"3. +.4 !4"4%4'4555&5)5.5$/5$666%6(6*6 +6 777!7"7*7 ,7".7$77-8 8!8)8,8 08$18$9 9!9+9.9"29&39'79+89+::!:%:&:0:(4:,8:09:1=:5?:7A:9L:D; ;!;+;.;"2;&3;'7;+8;+<<<&<= =!=)=,= 1=%2=%> >!>+>.>"/>#0>$1>$?@@@&@'@.@$/@%3@)4@*6@,A A!A(A+A0A$1A$BBBBB0B%CCC'C*C .C$/C$D D . +.E +E E$E%E)EE +EF #F$F.F"/F#3F'E +EE +E--/,3,4,B,!,, ,, KK K KK'K KK OO OPP PPP"PQQ QQ R KK SS S!S KK TT T T KK UU UUKK LL L LL$L LL M MMMLL L L KK + +YrEversionfilesourcessourcesContentnamesmappings- + +  !!""##$$%%&&''(())**++,,Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +!  + +        + +      + +              + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YZ Z[ [\ \] ]^ ^_ _` `a ab bc cd de ef fg gh hi ij jk kl lm mn no op pq qr rs st tu uv vw wx xy yz z{ {| |} }~ ~ ̀ ̀́ ́̂ ̂̃ ̃̄ ̄̅ ̅̆ ̆̇ ̇̈ ̈ + + + + + + + + + + + + + + + +  + + + + + + + + + + +          + +             + +            + +                   + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈  + +      + +      + +      + +      + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈  + +      + +      + +      + +      + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈  + +      + +      + +      + +N  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMK  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJQ  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQ          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PK!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9:!:;!;<!<=!=>!>?!?@!@A!AB!BC!CD!DE!EF!FG!GH!HI!IJ!JN""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",-"-."./"/0"01"12"23"34"45"56"67"78"89"9:":;";<"<="=>">?"?@"@A"AB"BC"CD"DE"EF"FG"GH"HI"IJ"JK"KL"LM"M)######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#(L$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$23$34$45$56$67$78$89$9:$:;$;<$<=$=>$>?$?@$@A$AB$BC$CD$DE$EF$FG$GH$HI$IJ$JK$K1%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%0&&&&&&&)''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('(4((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+,(,-(-.(./(/0(01(12(23(3:))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9********* * +* +.+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-+-.,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,---------- - +- +.......///////// / +/ + / / / /////////////////00000003111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212=222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<<333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;>444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848949:4:;4;<4<=4=>555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050151252353454555656757858959:5:;5;<5<=5=<666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/060161262363464565666767868969:6:;6;=777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<;888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/080181282383484585686787888989:8:9999999::::::::: : +: + : : : ::::::::::::.;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;--<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>.-????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,.@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-,AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+6BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/0B01B12B23B34B45B5*CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)DDDDDDDEEEEEEEEE E +E + E E E EEEEEEEEE(FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'GGGGGGGHHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHH)IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I(JJJJJJJKKKKKKKKK K +K + K K K KKKKKKKK'LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&MMMMMMMNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNN(OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'PPPPPPPQQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQ)RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R(SSSSSSS TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT*UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)VVVVVVVWWWWWWWWW W +W + W W W WWWWWWWWWW)XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X(YYYYYYY ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ*[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)\\\\\\\]]]]]]]]] ] +] + ] ] ] ]]]]]]]]'^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&_______````````` ` +` + ` ` ` ````````````````(aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'bbbbbbbccccccccc c +c + c c c ccccccccc(ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'eeeeeeefffffffff f +f + f f f fffffffffffffffff)ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g(hhhhhhhiiiiiiiii i +i + i i i iiiiiii&jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%kkkkkkklllllllll l +l + l l l lllllllllllllll'mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&nnnnnnnooooooooo o +o + o o o oooooooooFppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpCDpDEpEDqqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q()q)*q*+q+,q,-q-.q./q/0q01q12q23q34q45q56q67q78q89q9:q:;q;<q<=q=>q>?q?@q@AqABqBCqC(rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'Bsssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsA"ttttttttt t +t + t t t tttttttttttttttttt t !t!)uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u(%vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$wwwwwwwww w +w + w w w wwwwwwwwwwwwwwxxxxxxxxx x +x + x x x x:yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9zzzzzzzzz z +z + z z F{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>?{?@{@A{AB{BC{CD{DE{ED||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*+|+,|,-|-.|./|/0|01|12|23|34|45|56|67|78|89|9:|:;|;<|<=|=>|>?|?@|@A|AB|BC|C}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}7~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~56~6%  + +      !!""##$$Ǹ̀̀̀̀̀̀̀̀ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀ ̀ !̀!"̀"#̀#$̀$%̀%&̀&'̀'(̀()̀)*̀*+̀+,̀,-̀-.̀./̀/0̀01̀12̀23̀34̀45̀56̀67̀78̀89̀9:̀:;̀;<̀<=̀=>̀>?̀?@̀@ÀAB̀BC̀CD̀DÈEF̀FG̀GH̀HÌIJ̀JK̀KL̀LM̀MĹ́́́́́́́́ ́ +́ + ́ ́ ́ ́́́́́́́́́́́́́́́́́́ ́ !́!"́"#́#$́$%́%&́&'́'(́()́)*́*+́+,́,-́-.́./́/0́01́12́23́34́45́56́67́78́89́9:́:;́;<́<=́=>́>?́?@́@ÁAB́BĆCD́DÉEF́FǴGH́HÍIJ́JḰK&̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂ ̂ !̂!"̂"#̂#$̂$%̂%M̃̃̃̃̃̃̃̃̃ ̃ +̃ + ̃ ̃ ̃ ̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃ ̃ !̃!"̃"#̃#$̃$%̃%&̃&'̃'(̃()̃)*̃*+̃+,̃,-̃-.̃./̃/0̃01̃12̃23̃34̃45̃56̃67̃78̃89̃9:̃:;̃;<̃<=̃=>̃>?̃?@̃@ÃAB̃BC̃CD̃DẼEF̃FG̃GH̃HĨIJ̃JK̃KL̃L0̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̄ ̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄ ̄ !̄!"̄"#̄#$̄$%̄%&̄&'̄'(̄()̄)*̄*+̄+,̄,-̄-.̄./̄/-̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ̅ !̅!"̅"#̅#$̅$%̅%&̅&'̅'(̅()̅)*̅*+̅+,̅,'̆̆̆̆̆̆̆̆̆ ̆ +̆ + ̆ ̆ ̆ ̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆ ̆ !̆!"̆"#̆#$̆$%̆%&̆&̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇B̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'(̈()̈)*̈*+̈+,̈,-̈-.̈./̈/0̈01̈12̈23̈34̈45̈56̈67̈78̈89̈9:̈:;̈;<̈<=̈=>̈>?̈?@̈@ÄẢ̉̉̉̉̉̉̉̉ ̉ +̉ + ̉ ̉ ̉ ̉̉̉̉̉̉̉N̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊ ̊ !̊!"̊"#̊#$̊$%̊%&̊&'̊'(̊()̊)*̊*+̊+,̊,-̊-.̊./̊/0̊01̊12̊23̊34̊45̊56̊67̊78̊89̊9:̊:;̊;<̊<=̊=>̊>?̊?@̊@ÅAB̊BC̊CD̊DE̊EF̊FG̊GH̊HI̊IJ̊JK̊KL̊LM̊ML̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋ ̋ !̋!"̋"#̋#$̋$%̋%&̋&'̋'(̋()̋)*̋*+̋+,̋,-̋-.̋./̋/0̋01̋12̋23̋34̋45̋56̋67̋78̋89̋9:̋:;̋;<̋<=̋=>̋>?̋?@̋@A̋AB̋BC̋CD̋DE̋EF̋FG̋GH̋HI̋IJ̋JK̋K/̌̌̌̌̌̌̌̌̌ ̌ +̌ + ̌ ̌ ̌ ̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌ ̌ !̌!"̌"#̌#$̌$%̌%&̌&'̌'(̌()̌)*̌*+̌+,̌,-̌-.̌.M̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍ ̍ !̍!"̍"#̍#$̍$%̍%&̍&'̍'(̍()̍)*̍*+̍+,̍,-̍-.̍./̍/0̍01̍12̍23̍34̍45̍56̍67̍78̍89̍9:̍:;̍;<̍<=̍=>̍>?̍?@̍@A̍AB̍BC̍CD̍DE̍EF̍FG̍GH̍HI̍IJ̍JK̍KL̍L$̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎ ̎ !̎!"̎"#̎#ȍ̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏ ̏ !̏!"̏"#̏#$̏$%̏%&̏&'̏'(̏()̏)*̏*+̏+,̏,-̏-.̏./̏/0̏01̏12̏23̏34̏45̏56̏67̏78̏89̏9:̏:;̏;<̏<=̏=>̏>?̏?@̏@ȀAB̏BC̏CD̏DȄEF̏FG̏GH̏HȈIJ̏JK̏KL̏LM̏MN̏NȌOP̏PQ̏QȐRS̏ST̏TȔUV̏VW̏WX̏XY̏YZ̏Z[̏[\̏\]̏]^̏^_̏_`̏`ȁab̏bc̏cd̏dȅef̏fg̏gh̏hȉij̏jk̏kl̏lm̏mn̏n"̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐ ̐ !̐!̑̑̑̑̑̑̑̑̑ ̑ +̑ + ̑ ̑ ̑ ̑̑̑̑̑̑̑̑̑̑̑&̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒ ̒ !̒!"̒"#̒#$̒$%̒%+̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̓ ̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓ ̓ !̓!"̓"#̓#$̓$%̓%&̓&'̓'(̓()̓)*̓*1̔̔̔̔̔̔̔̔̔ ̔ +̔ + ̔ ̔ ̔ ̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔ ̔ !̔!"̔"#̔#$̔$%̔%&̔&'̔'(̔()̔)*̔*+̔+,̔,-̔-.̔./̔/0̔0-̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕ ̕ !̕!"̕"#̕#$̕$%̕%&̕&'̕'(̕()̕)*̕*+̕+,̕,9̖̖̖̖̖̖̖̖̖ ̖ +̖ + ̖ ̖ ̖ ̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖ ̖ !̖!"̖"#̖#$̖$%̖%&̖&'̖'(̖()̖)*̖*+̖+,̖,-̖-.̖./̖/0̖01̖12̖23̖34̖45̖56̖67̖78̖83̗̗̗̗̗̗̗̗̗ ̗ +̗ + ̗ ̗ ̗ ̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗ ̗ !̗!"̗"#̗#$̗$%̗%&̗&'̗'(̗()̗)*̗*+̗+,̗,-̗-.̗./̗/0̗01̗12̗2:̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ ̘ ̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘ ̘ !̘!"̘"#̘#$̘$%̘%&̘&'̘'(̘()̘)*̘*+̘+,̘,-̘-.̘./̘/0̘01̘12̘23̘34̘45̘56̘67̘78̘89̘9̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙N̚̚̚̚̚̚̚̚̚ ̚ +̚ + ̚ ̚ ̚ ̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚ ̚ !̚!"̚"#̚#$̚$%̚%&̚&'̚'(̚()̚)*̚*+̚+,̚,-̚-.̚./̚/0̚01̚12̚23̚34̚45̚56̚67̚78̚89̚9:̚:;̚;<̚<=̚=>̚>?̚?@̚@A̚AB̚BC̚CD̚DE̚EF̚FG̚GH̚HI̚IJ̚JK̚KL̚LM̚M:̛̛̛̛̛̛̛̛̛ ̛ +̛ + ̛ ̛ ̛ ̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛ ̛ !̛!"̛"#̛#$̛$%̛%&̛&'̛'(̛()̛)*̛*+̛+,̛,-̛-.̛./̛/0̛01̛12̛23̛34̛45̛56̛67̛78̛89̛9̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜̜̜̜̜̜̜̜̜̜̜̜̜(̝̝̝̝̝̝̝̝̝ ̝ +̝ + ̝ ̝ ̝ ̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝ ̝ !̝!"̝"#̝#$̝$%̝%&̝&'̝'4̞̞̞̞̞̞̞̞̞ ̞ +̞ + ̞ ̞ ̞ ̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞ ̞ !̞!"̞"#̞#$̞$%̞%&̞&'̞'(̞()̞)*̞*+̞+,̞,-̞-.̞./̞/0̞01̞12̞23̞33̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟ ̟ !̟!"̟"#̟#$̟$%̟%&̟&'̟'(̟()̟)*̟*+̟+,̟,-̟-.̟./̟/0̟01̟12̟2̠̠̠̠̠̠̠̠̠ ̠ +̠ + ̠ ̠ ̠ ̠̠̠̠̠̠̠̠̠̠̠̠̠:̡̡̡̡̡̡̡̡̡ ̡ +̡ + ̡ ̡ ̡ ̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡ ̡ !̡!"̡"#̡#$̡$%̡%&̡&'̡'(̡()̡)*̡*+̡+,̡,-̡-.̡./̡/0̡01̡12̡23̡34̡45̡56̡67̡78̡89̡93̢̢̢̢̢̢̢̢̢ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢ ̢ !̢!"̢"#̢#$̢$%̢%&̢&'̢'(̢()̢)*̢*+̢+,̢,-̢-.̢./̢/0̢01̢12̢22̣̣̣̣̣̣̣̣̣ ̣ +̣ + ̣ ̣ ̣ ̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣ ̣ !̣!"̣"#̣#$̣$%̣%&̣&'̣'(̣()̣)*̣*+̣+,̣,-̣-.̣./̣/0̣01̣11̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤ ̤ !̤!"̤"#̤#$̤$%̤%&̤&'̤'(̤()̤)*̤*+̤+,̤,-̤-.̤./̤/0̤0̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̥̥̥̥̥̥-̦̦̦̦̦̦̦̦̦ ̦ +̦ + ̦ ̦ ̦ ̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦ ̦ !̦!"̦"#̦#$̦$%̦%&̦&'̦'(̦()̦)*̦*+̦+,̦,&̧̧̧̧̧̧̧̧̧ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧ ̧ !̧!"̧"#̧#$̧$%̧%̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨̨̨̨̨B̩̩̩̩̩̩̩̩̩ ̩ +̩ + ̩ ̩ ̩ ̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩ ̩ !̩!"̩"#̩#$̩$%̩%&̩&'̩'(̩()̩)*̩*+̩+,̩,-̩-.̩./̩/0̩01̩12̩23̩34̩45̩56̩67̩78̩89̩9:̩:;̩;<̩<=̩=>̩>?̩?@̩@A̩A̪̪̪̪̪̪̪̪̪ ̪ +̪ + ̪ ̪ ̪ ̪̪̪̪̪̪̪N̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ !̫!"̫"#̫#$̫$%̫%&̫&'̫'(̫()̫)*̫*+̫+,̫,-̫-.̫./̫/0̫01̫12̫23̫34̫45̫56̫67̫78̫89̫9:̫:;̫;<̫<=̫=>̫>?̫?@̫@A̫AB̫BC̫CD̫DE̫EF̫FG̫GH̫HI̫IJ̫JK̫KL̫LM̫ML̬̬̬̬̬̬̬̬̬ ̬ +̬ + ̬ ̬ ̬ ̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬ ̬ !̬!"̬"#̬#$̬$%̬%&̬&'̬'(̬()̬)*̬*+̬+,̬,-̬-.̬./̬/0̬01̬12̬23̬34̬45̬56̬67̬78̬89̬9:̬:;̬;<̬<=̬=>̬>?̬?@̬@A̬AB̬BC̬CD̬DE̬EF̬FG̬GH̬HI̬IJ̬JK̬K-̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭ ̭ !̭!"̭"#̭#$̭$%̭%&̭&'̭'(̭()̭)*̭*+̭+,̭,L̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*+̮+,̮,-̮-.̮./̮/0̮01̮12̮23̮34̮45̮56̮67̮78̮89̮9:̮:;̮;<̮<=̮=>̮>?̮?@̮@A̮AB̮BC̮CD̮DE̮EF̮FG̮GḪHI̮IJ̮JK̮K7̯̯̯̯̯̯̯̯̯ ̯ +̯ + ̯ ̯ ̯ ̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯ ̯ !̯!"̯"#̯#$̯$%̯%&̯&'̯'(̯()̯)*̯*+̯+,̯,-̯-.̯./̯/0̯01̯12̯23̯34̯45̯56̯6-̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰ ̰ !̰!"̰"#̰#$̰$%̰%&̰&'̰'(̰()̰)*̰*+̰+,̰,%̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱ ̱ !̱!"̱"#̱#$̱$̲̲̲̲̲̲̲̲̲ ̲ +̲ + ̲ ̲ ̲ ̲̲̲̲̲̲̲̲̲B̳̳̳̳̳̳̳̳̳ ̳ +̳ + ̳ ̳ ̳ ̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳ ̳ !̳!"̳"#̳#$̳$%̳%&̳&'̳'(̳()̳)*̳*+̳+,̳,-̳-.̳./̳/0̳01̳12̳23̳34̳45̳56̳67̳78̳89̳9:̳:;̳;<̳<=̳=>̳>?̳?@̳@A̳A̴̴̴̴̴̴̴̴̴ ̴ +̴ + ̴ ̴ ̴ ̴̴̴̴̴̴̴̵̵̵̵̵̵̵̵̵ ̵ +̵ + ̵ ̵ ̵ ̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̶̶̶̶̶̶̶̶̶ ̶ +̶ + ̶ ̶ ̶ ̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷^̸̸̸̸̸̸̸̸̸ ̸ +̸ + ̸ ̸ ̸ ̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸ ̸ !̸!"̸"#̸#$̸$%̸%&̸&'̸'(̸()̸)*̸*+̸+,̸,-̸-.̸./̸/0̸01̸12̸23̸34̸45̸56̸67̸78̸89̸9:̸:;̸;≮<≠=≯>?̸?@̸@A̸AB̸BC̸CD̸DE̸EF̸FG̸GH̸HI̸IJ̸JK̸KL̸LM̸MN̸NO̸OP̸PQ̸QR̸RS̸ST̸TU̸UV̸VW̸WX̸XY̸YZ̸Z[̸[\̸\]̸]%̹̹̹̹̹̹̹̹̹ ̹ +̹ + ̹ ̹ ̹ ̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹ ̹ !̹!"̹"#̹#$̹$ ̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̻̻̻̻̻̻̻̻̻ ̻ +̻ + ̻ ̻ ̻ ̻:̼̼̼̼̼̼̼̼̼ ̼ +̼ + ̼ ̼ ̼ ̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼ ̼ !̼!"̼"#̼#$̼$%̼%&̼&'̼'(̼()̼)*̼*+̼+,̼,-̼-.̼./̼/0̼01̼12̼23̼34̼45̼56̼67̼78̼89̼9̽̽̽̽̽̽̽̽̽ ̽ +̽ + ̽ ̽ ̾̾̾̾̾̾̾̾̾ ̾ +̾ + ̾ ̾ ̾ ̾̾̾̾̾̾̾̾̾̾F̿̿̿̿̿̿̿̿̿ ̿ +̿ + ̿ ̿ ̿ ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ ̿ !̿!"̿"#̿#$̿$%̿%&̿&'̿'(̿()̿)*̿*+̿+,̿,-̿-.̿./̿/0̿01̿12̿23̿34̿45̿56̿67̿78̿89̿9:̿:;̿;<̿<=̿=>̿>?̿?@̿@A̿AB̿BC̿CD̿DE̿ED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+ + +  !!""##$$%%&&''(())**E + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD + + % + +  !!""##$$ + +  + + % + +  !!""##$$$ + +  !!""## + + % + +  !!""##$$ + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC( + +  !!""##$$%%&&''C + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABB  + + % + +  !!""##$$ + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + +  + +  + +  + +  + + % + +  !!""##$$) + +  !!""##$$%%&&''((rFdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherGtypestartenddeclarationspecifierssourceExportNamedDeclaration#rHtypestartendidsuperClassbodyClassDeclaration#rItypestartendnameIdentifier BottomMenuBarIIdentifier#)ViewPUrJtypestartendbodyClassBody*#rKtypestartendstaticcomputedkeykindvalueMethodDefinition1dIIdentifier1IIdentifier?PinitializeConsume’OLiteralQ[TempConn"TempConn"OLiteral]gTempConn"TempConn"PExpressionStatementsUAssignmentExpressions=VMemberExpressionsRThisExpressionswIIdentifierx__isNewConnQCallExpressionVMemberExpressionRThisExpressionIIdentifierinitializeConsume’OLiteralisNewConn"isNewConn"OLiteralisNewConn"isNewConn"PExpressionStatementUAssignmentExpressionߡ=VMemberExpressionRThisExpressionIIdentifierΨscrollerrZtypestartendcalleeargumentsNewExpressionIIdentifierݨScrollerPExpressionStatement,UAssignmentExpression+=VMemberExpressionRThisExpressionIIdentifier__logTextQCallExpression+VMemberExpressionRThisExpressionIIdentifiercreateStorageLink“OLiteralLogText"LogText"OLiteral""OLiteral!*logText"logText"PExpressionStatement6]QCallExpression6\VMemberExpression6TRThisExpression6:IIdentifier;TsetInitiallyProvidedValue‘IIdentifierU[paramsKMethodDefinitionjtIIdentifierjsetInitiallyProvidedValuemethodLFunctionExpressiont‘IIdentifierparamsJBlockStatementtSIfStatementTBinaryExpressionVMemberExpressionIIdentifierparamsIIdentifiersimClickObjArr£!==IIdentifierundefinedJBlockStatementPExpressionStatementUAssignmentExpression=VMemberExpressionRThisExpressionIIdentifiersimClickObjArrVMemberExpressionIIdentifierparamsIIdentifiersimClickObjArrSIfStatementmTBinaryExpression1VMemberExpression#IIdentifierparamsIIdentifier#scroller£!==IIdentifier(1undefinedJBlockStatement3mPExpressionStatementBbUAssignmentExpressionBa=VMemberExpressionBORThisExpressionBFIIdentifierGOscrollerVMemberExpressionRaIIdentifierRXparamsIIdentifierYascrollerKMethodDefinitionzIIdentifierzupdateStateVarsmethodLFunctionExpression‘IIdentifierparamsJBlockStatementKMethodDefinition +}IIdentifier!purgeVariableDependenciesOnElmtIdmethodLFunctionExpression +}‘IIdentifierʨrmElmtIdJBlockStatement +}PExpressionStatement +QCallExpression VMemberExpressionVMemberExpressionRThisExpressionIIdentifier__allSimObjIIdentifierpurgeDependencyOnElmtId‘IIdentifier rmElmtIdPExpressionStatement  FQCallExpression  EVMemberExpression  ;VMemberExpression  #RThisExpression  IIdentifier  #__isNewObjIIdentifier $ ;purgeDependencyOnElmtId‘IIdentifier < DrmElmtIdPExpressionStatement P QCallExpression P VMemberExpression P yVMemberExpression P aRThisExpression P TIIdentifier U a__newObjTypeIIdentifier b ypurgeDependencyOnElmtId‘IIdentifier z rmElmtIdPExpressionStatement QCallExpression VMemberExpression VMemberExpression RThisExpression IIdentifier __choseIndexIIdentifier purgeDependencyOnElmtId‘IIdentifier rmElmtIdPExpressionStatement QCallExpression VMemberExpression VMemberExpression RThisExpression IIdentifier ۪__TempConnIIdentifier purgeDependencyOnElmtId‘IIdentifier rmElmtIdPExpressionStatement + +;QCallExpression + +:VMemberExpression + +0VMemberExpression + +RThisExpression + + IIdentifier + +__isNewConnIIdentifier + +0purgeDependencyOnElmtId‘IIdentifier +1 +9rmElmtIdPExpressionStatement +E +vQCallExpression +E +uVMemberExpression +E +kVMemberExpression +E +SRThisExpression +E +IIIdentifier +J +S__logTextIIdentifier +T +kpurgeDependencyOnElmtId‘IIdentifier +l +trmElmtIdKMethodDefinition + >IIdentifier + +aboutToBeDeletedmethodLFunctionExpression + >JBlockStatement + >PExpressionStatement + +QCallExpression + +VMemberExpression + +VMemberExpression + +RThisExpression + +IIdentifier + +__allSimObjIIdentifier + +°aboutToBeDeletedPExpressionStatement + +QCallExpression + +VMemberExpression + +VMemberExpression + +RThisExpression + +IIdentifier + +ު__isNewObjIIdentifier + +aboutToBeDeletedPExpressionStatement + !QCallExpression + VMemberExpression + VMemberExpression + RThisExpression + IIdentifier  __newObjTypeIIdentifier  aboutToBeDeletedPExpressionStatement + PQCallExpression + OVMemberExpression + MVMemberExpression + QCallExpression&=VMemberExpression&;VMemberExpression&7RThisExpression&*IIdentifier+7__choseIndexIIdentifier8;getKMethodDefinitionKIIdentifierOYchoseIndexsetLFunctionExpressionY‘IIdentifierZbnewValueJBlockStatementdPExpressionStatementoQCallExpressionoVMemberExpressionoVMemberExpressionoRThisExpressionosIIdentifiert__choseIndexIIdentifierset‘IIdentifiernewValueKMethodDefinitionIIdentifierTempConngetLFunctionExpressionJBlockStatementڑ[ReturnStatementQCallExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifier̪__TempConnIIdentifierУgetKMethodDefinition'IIdentifierTempConnsetLFunctionExpression'‘IIdentifiernewValueJBlockStatement'PExpressionStatement QCallExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifier__TempConnIIdentifierset‘IIdentifiernewValueKMethodDefinition-mIIdentifier1:isNewConngetLFunctionExpression:mJBlockStatement=m[ReturnStatementHfQCallExpressionOeVMemberExpressionOcVMemberExpressionO_RThisExpressionOSIIdentifierT___isNewConnIIdentifier`cgetKMethodDefinitionsIIdentifierwisNewConnsetLFunctionExpression‘IIdentifiernewValueJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifier__isNewConnIIdentifierset‘IIdentifiernewValueKMethodDefinitionIIdentifierͧlogTextgetLFunctionExpressionJBlockStatement[ReturnStatementQCallExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifier__logTextIIdentifiergetKMethodDefinitionIIIdentifierlogTextsetLFunctionExpressionI‘IIdentifiernewValueJBlockStatementIPExpressionStatement%BQCallExpression%AVMemberExpression%7VMemberExpression%3RThisExpression%)IIdentifier*3__logTextIIdentifier47set‘IIdentifier8@newValueKMethodDefinitionO#IIIdentifierO\initialRendermethodLFunctionExpression\#IJBlockStatement_#IPExpressionStatementj6QCallExpressionj5VMemberExpressionjRThisExpressionjnIIdentifieroobserveComponentCreation‘LArrowFunctionExpression4’IIdentifierelmtIdIIdentifierisInitialRenderJBlockStatement4PExpressionStatementQCallExpressionVMemberExpressionIIdentifierƲViewStackProcessorIIdentifierStartGetAccessRecordingFor‘IIdentifierelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierRowIIdentifiercreate‘XObjectExpressionYPropertyIIdentifier +spaceOLiteral  +10initPExpressionStatement TQCallExpression SVMemberExpression -IIdentifier #RowIIdentifier$-debugLine‘OLiteral.R"components/ButtomMenuBar.ets(44:5)$"components/ButtomMenuBar.ets(44:5)"PExpressionStatementbvQCallExpressionbuVMemberExpressionbrIIdentifierbeRowIIdentifierfrlayoutWeight‘OLiteralst1PExpressionStatementQCallExpressionVMemberExpressionIIdentifierRowIIdentifiermargin‘XObjectExpressionYPropertyIIdentifierleftOLiteral5%'5%'initSIfStatementNUnaryExpression!IIdentifierisInitialRenderJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionIIdentifier٣RowIIdentifierݣpopPExpressionStatement)QCallExpression(VMemberExpression&IIdentifierViewStackProcessorIIdentifier&StopGetAccessRecordingPExpressionStatement@QCallExpression@VMemberExpression@]RThisExpression@DIIdentifierE]observeComponentCreation‘LArrowFunctionExpression^’IIdentifier_eelmtIdIIdentifiergvisInitialRenderJBlockStatement{ҖPExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifierStartGetAccessRecordingFor‘IIdentifierelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierէForEachIIdentifierܦcreater\typestartenddeclarationskindVariableDeclarationۑr]typestartendidinitVariableDeclaratorIIdentifier forEachItemGenFunctionLArrowFunctionExpression ‘IIdentifier _itemJBlockStatementږ\VariableDeclaration(;]VariableDeclarator.:IIdentifier.2itemIIdentifier5:_itemconstPExpressionStatementM:QCallExpressionM9VMemberExpressionMjRThisExpressionMQIIdentifierRjobserveComponentCreation‘LArrowFunctionExpressionk8’IIdentifierlrelmtIdIIdentifiertisInitialRenderJBlockStatement8PExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifier̺StartGetAccessRecordingFor‘IIdentifierӦelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierColumnIIdentifiercreatePExpressionStatementHQCallExpressionGVMemberExpression!IIdentifierColumnIIdentifier!debugLine‘OLiteral"F"components/ButtomMenuBar.ets(46:9)$"components/ButtomMenuBar.ets(46:9)"PExpressionStatement^xQCallExpression^wVMemberExpression^kIIdentifier^dColumnIIdentifierekmargin‘XObjectExpressionlvYPropertyntIIdentifiernqtopOLiteralst5initSIfStatementNUnaryExpression!IIdentifierisInitialRenderJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionIIdentifierŦColumnIIdentifierɣpopPExpressionStatement%QCallExpression$VMemberExpression"IIdentifier ViewStackProcessorIIdentifier "StopGetAccessRecordingPExpressionStatementLQCallExpressionLVMemberExpressionLiRThisExpressionLPIIdentifierQiobserveComponentCreation‘LArrowFunctionExpressionj’IIdentifierkqelmtIdIIdentifiersisInitialRenderJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifier˺StartGetAccessRecordingFor‘IIdentifierҦelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierImageIIdentifiercreate‘VMemberExpressionIIdentifieritemIIdentifierimagePExpressionStatementPQCallExpressionOVMemberExpression(IIdentifierImageIIdentifier(debugLine‘OLiteral)N#components/ButtomMenuBar.ets(47:11)%"components/ButtomMenuBar.ets(47:11)"PExpressionStatementfQCallExpressionfVMemberExpressionfrIIdentifierfkImageIIdentifierlrborder‘XObjectExpressionsYPropertyIIdentifiercolorSConditionalExpressionTLogicalExpressionTBinaryExpressionVMemberExpressionIIdentifieritemIIdentifiertype¢==VMemberExpressionRThisExpressionIIdentifiernewObjType¢&&VMemberExpressionRThisExpressionIIdentifier¨isNewObjVMemberExpressionIIdentifierʥColorIIdentifierΣRedVMemberExpressionIIdentifier֥ColorIIdentifierTransparent¤initYPropertyIIdentifierwidthOLiteral1initPExpressionStatement4DQCallExpression4CVMemberExpression4?IIdentifier49ImageIIdentifier:?width‘OLiteral@B250PExpressionStatementZQCallExpressionZVMemberExpressionZgIIdentifierZ_ImageIIdentifier`gonClick‘LArrowFunctionExpressionhJBlockStatementn•PExpressionStatementUAssignmentExpression=VMemberExpressionRThisExpressionIIdentifierisNewConnOLiteral¥falsePExpressionStatementUAssignmentExpression̡=VMemberExpressionRThisExpressionIIdentifierǨTempConnWArrayExpression̐SIfStatementNUnaryExpression!VMemberExpressionRThisExpressionIIdentifierisNewObjJBlockStatementPExpressionStatement$9UAssignmentExpression$8=VMemberExpression$1RThisExpression$(IIdentifier)1isNewObjOLiteral48ätruePExpressionStatementWsUAssignmentExpressionWr=VMemberExpressionWfRThisExpressionW[IIdentifier\fnewObjTypeVMemberExpressionirIIdentifierimitemIIdentifiernrtypeSIfStatementTBinaryExpressionVMemberExpressionRThisExpressionIIdentifiernewObjType¢!=VMemberExpressionIIdentifierȤitemIIdentifierͤtypeJBlockStatement1PExpressionStatementUAssignmentExpression=VMemberExpression RThisExpressionIIdentifier newObjTypeVMemberExpression IIdentifier itemIIdentifiertypeJBlockStatementPےPExpressionStatementwUAssignmentExpressionw=VMemberExpressionwRThisExpressionw{IIdentifier|isNewObjOLiteral¥falsePExpressionStatementUAssignmentExpression=VMemberExpressionRThisExpressionIIdentifiernewObjTypeNUnaryExpression-OLiteral1PExpressionStatementeQCallExpressiondVMemberExpression VMemberExpressionRThisExpressionIIdentifierallSimObjIIdentifier forEach‘LArrowFunctionExpression c‘IIdentifier itemJBlockStatementcPExpressionStatement3HUAssignmentExpression3G=VMemberExpression3?IIdentifier37itemIIdentifier8?isChoseOLiteralBG¥falsePExpressionStatementUAssignmentExpression=VMemberExpressionRThisExpressionIIdentifierchoseIndexOLiteralnullSIfStatement.NUnaryExpression!IIdentifierisInitialRenderJBlockStatement.PExpressionStatement QCallExpression VMemberExpression IIdentifier ImageIIdentifierpopPExpressionStatementDpQCallExpressionDoVMemberExpressionDmIIdentifierDVViewStackProcessorIIdentifierWmStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionRThisExpressionIIdentifierobserveComponentCreation‘LArrowFunctionExpression’IIdentifierelmtIdIIdentifierͯisInitialRenderJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifierStartGetAccessRecordingFor‘IIdentifierelmtIdPExpressionStatement5LQCallExpression5KVMemberExpression5@IIdentifier59TextIIdentifier:@create‘VMemberExpressionAJIIdentifierAEitemIIdentifierFJnamePExpressionStatementbQCallExpressionbVMemberExpressionbpIIdentifierbfTextIIdentifiergpdebugLine‘OLiteralq#components/ButtomMenuBar.ets(70:11)%"components/ButtomMenuBar.ets(70:11)"PExpressionStatementQCallExpressionVMemberExpressionIIdentifierTextIIdentifierfontWeight‘VMemberExpressionIIdentifierȪFontWeightIIdentifierͤBoldSIfStatement8NUnaryExpression!IIdentifierisInitialRenderJBlockStatement8PExpressionStatement!QCallExpression VMemberExpressionIIdentifierTextIIdentifierpopPExpressionStatementNzQCallExpressionNyVMemberExpressionNwIIdentifierN`ViewStackProcessorIIdentifierawStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionIIdentifierTextIIdentifierpopPExpressionStatementQCallExpressionVMemberExpressionIIdentifierĦColumnIIdentifierȣpop¥constPExpressionStatement9QCallExpression8VMemberExpressionRThisExpressionIIdentifierforEachUpdateFunction“IIdentifier +elmtIdVMemberExpression RThisExpression IIdentifiersimClickObjArrIIdentifier!7forEachItemGenFunctionSIfStatementGNUnaryExpressionK[!IIdentifierL[isInitialRenderJBlockStatement]PExpressionStatementp~QCallExpressionp}VMemberExpressionp{IIdentifierpwForEachIIdentifierx{popPExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifierĶStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionIIdentifierForEachIIdentifierpopPExpressionStatement!UQCallExpression!TVMemberExpressionRThisExpressionIIdentifierobserveComponentCreation‘LArrowFunctionExpression!S’IIdentifierelmtIdIIdentifier,isInitialRenderJBlockStatement1!SPExpressionStatement@vQCallExpression@uVMemberExpression@mIIdentifier@RViewStackProcessorIIdentifierSmStartGetAccessRecordingFor‘IIdentifierntelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierScrollIIdentifiercreate‘VMemberExpressionRThisExpressionIIdentifierscrollerPExpressionStatementQCallExpressionVMemberExpressionIIdentifierScrollIIdentifierdebugLine‘OLiteral"components/ButtomMenuBar.ets(76:7)$"components/ButtomMenuBar.ets(76:7)"PExpressionStatement SQCallExpression RVMemberExpression IIdentifierScrollIIdentifier border‘XObjectExpression  QYProperty  'IIdentifier  colorVMemberExpression  'IIdentifier  !ColorIIdentifier " 'Black¤initYProperty : BIIdentifier : ?widthOLiteral A B1initPExpressionStatement a xQCallExpression a wVMemberExpression a tIIdentifier a gScrollIIdentifier h tlayoutWeight‘OLiteral u v1PExpressionStatement QCallExpression VMemberExpression IIdentifier ScrollIIdentifier height‘OLiteral 100%'100%'PExpressionStatement QCallExpression VMemberExpression IIdentifier ScrollIIdentifier margin‘OLiteral 2SIfStatement !NUnaryExpression ݡ!IIdentifier ݯisInitialRenderJBlockStatement !PExpressionStatement QCallExpression VMemberExpression IIdentifier ScrollIIdentifier popPExpressionStatement!!HQCallExpression!!GVMemberExpression!!EIIdentifier!!.ViewStackProcessorIIdentifier!/!EStopGetAccessRecordingPExpressionStatement!_#QCallExpression!_#VMemberExpression!_!|RThisExpression!_!cIIdentifier!d!|observeComponentCreation‘LArrowFunctionExpression!}#’IIdentifier!~!elmtIdIIdentifier!!isInitialRenderJBlockStatement!#PExpressionStatement!!QCallExpression!!VMemberExpression!!IIdentifier!!ViewStackProcessorIIdentifier!!ֺStartGetAccessRecordingFor‘IIdentifier!!ݦelmtIdPExpressionStatement!"QCallExpression!"VMemberExpression!!IIdentifier!!TextIIdentifier!!create‘VMemberExpression!"RThisExpression!!IIdentifier!"logTextPExpressionStatement""JQCallExpression""IVMemberExpression""#IIdentifier""TextIIdentifier""#debugLine‘OLiteral"$"H"components/ButtomMenuBar.ets(77:9)$"components/ButtomMenuBar.ets(77:9)"PExpressionStatement"X"jQCallExpression"X"iVMemberExpression"X"eIIdentifier"X"\TextIIdentifier"]"efontSize‘OLiteral"f"h15SIfStatement"x"NUnaryExpression"|"!IIdentifier"}"isInitialRenderJBlockStatement""PExpressionStatement""QCallExpression""VMemberExpression""IIdentifier""TextIIdentifier""popPExpressionStatement""QCallExpression""VMemberExpression""IIdentifier""۲ViewStackProcessorIIdentifier""StopGetAccessRecordingPExpressionStatement# #QCallExpression# #VMemberExpression# #IIdentifier# #TextIIdentifier##popPExpressionStatement#!#.QCallExpression#!#-VMemberExpression#!#+IIdentifier#!#'ScrollIIdentifier#(#+popPExpressionStatement#8#BQCallExpression#8#AVMemberExpression#8#?IIdentifier#8#;RowIIdentifier#<#?popKMethodDefinition#O#IIdentifier#O#WrerendermethodLFunctionExpression#W#JBlockStatement#Z#PExpressionStatement#e#QCallExpression#e#VMemberExpression#e#}RThisExpression#e#iIIdentifier#j#}updateDirtyElements \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Datas.ets-007a285b5f8c66d211e5520be968fd62.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Datas.ets-007a285b5f8c66d211e5520be968fd62.msgpack new file mode 100644 index 0000000..7d1e060 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Datas.ets-007a285b5f8c66d211e5520be968fd62.msgpack @@ -0,0 +1,854 @@ +r@assertionscodecustomTransformCachedependenciesidmetamoduleSideEffectsoriginalCodeoriginalSourcemapresolvedIdssourcemapChainsyntheticNamedExportstransformDependenciestransformFilescacheAstrA// 应用层数据包(解封包) +export class AppData { + constructor(objId, objLabel, appPackSize, appPackTag, sourceAppAddr, targetAppAddr) { + this.objId = objId; + this.objLabel = objLabel; + this.appPackId = Symbol(); + this.appPackSize = appPackSize; + this.appPackTag = appPackTag; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.timeStamp = Date.parse(new Date().toString()); + this.appPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",appPackId: " + this.appPackId.toString() + ",appPackSize: " + this.appPackSize.toString() + ",appPackTag: " + this.appPackTag + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n"; + } + pack() { + return this; + } // 应用层封包 + unpack(simHost) { + simHost.appData = { + objId: this.objId, + objLabel: this.objLabel, + appPackId: this.appPackId, + sourceAppAddr: this.sourceAppAddr, + targetAppAddr: this.targetAppAddr, + toString: () => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",appPackId:" + this.appPackId.toString() + ",sourceAppAddr:" + this.sourceAppAddr.toString() + ",targetAppAddr:" + this.targetAppAddr.toString() + "\n"; + } + }; + } // 应用层解包 + isValid(sourceAppAddr, targetAppAddr) { + return this.sourceAppAddr === sourceAppAddr && this.targetAppAddr === targetAppAddr; + } // 根据用户输入的应用层地址判断是否正确 +} +// 传输层数据包(解封包) +export class TransData { + constructor(objId, objLabel, transSeq, transTag, appPackId, sourcePort, targetPort, sourceAppAddr, targetAppAddr) { + this.objId = objId; + this.objLabel = objLabel; + this.transPackId = Symbol(); + this.transSeq = transSeq; + this.transTag = transTag; + this.appPackId = appPackId; + this.sourcePort = sourcePort; + this.targetPort = targetPort; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.timeStamp = Date.parse(new Date().toString()); + this.transPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",transPackId: " + this.transPackId.toString() + ",transSeq: " + this.transSeq.toString() + ",transTag: " + this.transTag + ",appPackId: " + this.appPackId.toString() + "\nsourcePort: " + this.sourcePort.toString() + "\ntargetPort: " + this.targetPort.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n"; + } + calcNumSplits() { + const MTU = 2048; + return (this.transPackedString.length + MTU - 1) / MTU; + } // 计算拆分数量 + pack() { + const numSplits = this.calcNumSplits(); + let transDataList = []; + for (let i = 0; i < numSplits; i++) { + transDataList.push(new TransData(this.objId, this.objLabel, i + 1, this.transTag, this.appPackId, this.sourcePort, this.targetPort, this.sourceAppAddr, this.targetAppAddr)); + } + return transDataList; + } // 传输层封包 + unPack(simHost) { + simHost.transData = { + objId: this.objId, + objLabel: this.objLabel, + transPackId: this.transPackId, + sourcePort: this.sourcePort, + targetPort: this.targetPort, + toString: () => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",transPackId:" + this.transPackId.toString() + ",sourcePort:" + this.sourcePort.toString() + ",targetPort:" + this.targetPort.toString() + "\n"; + } + }; + } // 传输层解包 + isValid(sourcePort, targetPort) { + return this.sourcePort === sourcePort && this.targetPort === targetPort; + } // 根据用户输入的端口判断是否正确 +} +// 网络层数据包(解封包) +export class IPData { + constructor(objId, objLabel, transPackId, sourceIp, targetIp, sourceAppAddr, targetAppAddr) { + this.objId = objId; + this.objLabel = objLabel; + this.ipPackId = Symbol(); + this.transPackId = transPackId; + this.sourceIp = sourceIp; + this.targetIp = targetIp; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.ipPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",ipPackId: " + this.ipPackId.toString() + ",transPackId: " + this.transPackId.toString() + "\nsourceIp: " + this.sourceIp.toString() + "\ntargetIp: " + this.targetIp.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n"; + } + pack() { + let ipData; + ipData = new IPData(this.objId, this.objLabel, this.transPackId, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr); + return ipData; + } // 网络层封包 + unpack(simHost) { + simHost.ipData = { + objId: this.objId, + objLabel: this.objLabel, + ipPackId: this.ipPackId, + sourceIp: this.sourceIp, + targetIp: this.targetIp, + toString: () => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",ipPackId:" + this.ipPackId.toString() + ",sourceIp:" + this.sourceIp.toString() + ",targetIp:" + this.targetIp.toString() + "\n"; + } + }; + } // 网络层解包 + isValid(sourceIp, targetIp) { + return this.sourceIp === sourceIp && this.targetIp === targetIp; + } // 根据用户输入的ip地址判断是否正确 +} +// 链路层数据包(解封包) +export class MACData { + constructor(objID, objLabel, ipPackID, sourceMac, targetMac, sourceIp, targetIp, sourceAppAddr, targetAppAddr) { + this.objId = objID; + this.objLabel = objLabel; + this.macPackId = Symbol(); + this.ipPackId = ipPackID; + this.sourceMac = sourceMac; + this.targetMac = targetMac; + this.sourceIp = sourceIp; + this.targetIp = targetIp; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.macPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",macPackId: " + this.macPackId.toString() + ",ipPackId: " + this.ipPackId.toString() + "\nsentMac: " + this.sourceMac.toString() + ",rpctMac: " + this.targetMac.toString() + ",sourceIp: " + this.sourceIp.toString() + ",targetIp: " + this.targetIp.toString() + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n"; + } + pack() { + let macData; + macData = new MACData(this.objId, this.objLabel, this.ipPackId, this.sourceMac, this.targetMac, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr); + return macData; + } // 链路层封包 + unPack(simHost) { + simHost.macData = { + objId: this.objId, + objLabel: this.objLabel, + macPackId: this.macPackId, + sourceMac: this.sourceMac, + targetMac: this.targetMac, + toString: () => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",macPackId:" + this.macPackId.toString() + ",sourceMac:" + this.sourceMac.toString() + ",targetMac:" + this.targetMac.toString() + "\n"; + } + }; + } // 链路层解包 + isValid(sentMac, rcptMac) { + return this.sourceMac === sentMac && this.targetMac === rcptMac; + } // 根据用户输入的mac地址判断是否正确 +} +//# sourceMappingURL=Datas.js.map6E:\jiaocai\ensp14\entry\src\main\ets\classes\Datas.etsrBmoduleNameisLocalDependencyisNodeEntryFilepkgPathbelongProjectPathpkgNamepkgVersiondependencyPkgInfohostModulesInfobelongModulePathentry·E:\jiaocai\ensp14\entryE:\jiaocai\ensp14entry1.0.0rChostDependencyNamehostModuleName../classes/DatasentryE:\jiaocai\ensp14\entry&_import { SimHost } from "./OtherSimObjects" + +// 应用层数据包(解封包) +export class AppData { + objId: symbol // 主机id + objLabel: string // 主机标识 + appPackId: symbol // 应用层数据包id + appPackSize: number // 应用层数据包大小 + appPackTag: string // 应用层数据包内容 + sourceAppAddr: string // 源主机应用层信息 + targetAppAddr: string // 目的主机应用层信息 + timeStamp: number // 时间戳 + appPackedString: string // 上述所有信息总和 + + constructor(objId: symbol, objLabel: string, appPackSize: number, appPackTag: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId + this.objLabel = objLabel + this.appPackId = Symbol() + this.appPackSize = appPackSize + this.appPackTag = appPackTag + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.timeStamp = Date.parse(new Date().toString()) + this.appPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",appPackId: " + this.appPackId.toString() + ",appPackSize: " + this.appPackSize.toString() + ",appPackTag: " + this.appPackTag + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n" + } + + pack(): AppData { + return this + } // 应用层封包 + + unpack(simHost: SimHost) { + simHost.appData = { + objId: this.objId, + objLabel: this.objLabel, + appPackId: this.appPackId, + sourceAppAddr: this.sourceAppAddr, + targetAppAddr: this.targetAppAddr, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",appPackId:" + this.appPackId.toString() + ",sourceAppAddr:" + this.sourceAppAddr.toString() + ",targetAppAddr:" + this.targetAppAddr.toString() + "\n" + } + } + } // 应用层解包 + + isValid(sourceAppAddr: string, targetAppAddr: string) { + return this.sourceAppAddr === sourceAppAddr && this.targetAppAddr === targetAppAddr + } // 根据用户输入的应用层地址判断是否正确 +} + +// 传输层数据包(解封包) +export class TransData { + objId: symbol + objLabel: string + transPackId: symbol + transSeq: number + transTag: string + appPackId: symbol + sourcePort: number + targetPort: number + sourceAppAddr: string + targetAppAddr: string + timeStamp: number + transPackedString: string + + constructor(objId: symbol, objLabel: string, transSeq: number, transTag: string, appPackId: symbol, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId + this.objLabel = objLabel + this.transPackId = Symbol() + this.transSeq = transSeq + this.transTag = transTag + this.appPackId = appPackId + this.sourcePort = sourcePort + this.targetPort = targetPort + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.timeStamp = Date.parse(new Date().toString()) + this.transPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",transPackId: " + this.transPackId.toString() + ",transSeq: " + this.transSeq.toString() + ",transTag: " + this.transTag + ",appPackId: " + this.appPackId.toString() + "\nsourcePort: " + this.sourcePort.toString() + "\ntargetPort: " + this.targetPort.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n" + } + + calcNumSplits(): number { + const MTU = 2048 + return (this.transPackedString.length + MTU - 1) / MTU + } // 计算拆分数量 + + pack(): Array { + const numSplits = this.calcNumSplits() + let transDataList: TransData[] = [] + for (let i = 0; i < numSplits; i++) { + transDataList.push(new TransData(this.objId, this.objLabel, i + 1, this.transTag, this.appPackId, this.sourcePort, this.targetPort, this.sourceAppAddr, this.targetAppAddr)) + } + return transDataList + } // 传输层封包 + + unPack(simHost: SimHost) { + simHost.transData = { + objId: this.objId, + objLabel: this.objLabel, + transPackId: this.transPackId, + sourcePort: this.sourcePort, + targetPort: this.targetPort, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",transPackId:" + this.transPackId.toString() + ",sourcePort:" + this.sourcePort.toString() + ",targetPort:" + this.targetPort.toString() + "\n" + } + } + } // 传输层解包 + + isValid(sourcePort: number, targetPort: number) { + return this.sourcePort === sourcePort && this.targetPort === targetPort + } // 根据用户输入的端口判断是否正确 +} + +// 网络层数据包(解封包) +export class IPData { + objId: symbol + objLabel: string + ipPackId: symbol + transPackId: symbol + sourceIp: string + targetIp: string + sourceAppAddr: string + targetAppAddr: string + ipPackedString: string + + constructor(objId: symbol, objLabel: string, transPackId: symbol, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId + this.objLabel = objLabel + this.ipPackId = Symbol() + this.transPackId = transPackId + this.sourceIp = sourceIp + this.targetIp = targetIp + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.ipPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",ipPackId: " + this.ipPackId.toString() + ",transPackId: " + this.transPackId.toString() + "\nsourceIp: " + this.sourceIp.toString() + "\ntargetIp: " + this.targetIp.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n" + } + + pack(): IPData { + let ipData: IPData + ipData = new IPData(this.objId, this.objLabel, this.transPackId, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr) + return ipData + } // 网络层封包 + + unpack(simHost: SimHost) { + simHost.ipData = { + objId: this.objId, + objLabel: this.objLabel, + ipPackId: this.ipPackId, + sourceIp: this.sourceIp, + targetIp: this.targetIp, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",ipPackId:" + this.ipPackId.toString() + ",sourceIp:" + this.sourceIp.toString() + ",targetIp:" + this.targetIp.toString() + "\n" + } + } + } // 网络层解包 + + isValid(sourceIp: string, targetIp: string) { + return this.sourceIp === sourceIp && this.targetIp === targetIp + } // 根据用户输入的ip地址判断是否正确 +} + +// 链路层数据包(解封包) +export class MACData { + objId: symbol + objLabel: string + macPackId: symbol + ipPackId: symbol + sourceMac: string + targetMac: string + sourceIp: string + targetIp: string + sourceAppAddr: string + targetAppAddr: string + macPackedString: string + + constructor(objID: symbol, objLabel: string, ipPackID: symbol, sourceMac: string, targetMac: string, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objID + this.objLabel = objLabel + this.macPackId = Symbol() + this.ipPackId = ipPackID + this.sourceMac = sourceMac + this.targetMac = targetMac + this.sourceIp = sourceIp + this.targetIp = targetIp + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.macPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",macPackId: " + this.macPackId.toString() + ",ipPackId: " + this.ipPackId.toString() + "\nsentMac: " + this.sourceMac.toString() + ",rpctMac: " + this.targetMac.toString() + ",sourceIp: " + this.sourceIp.toString() + ",targetIp: " + this.targetIp.toString() + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n" + } + + pack(): MACData { + let macData: MACData + macData = new MACData(this.objId, this.objLabel, this.ipPackId, this.sourceMac, this.targetMac, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr) + return macData + } // 链路层封包 + + unPack(simHost: SimHost) { + simHost.macData = { + objId: this.objId, + objLabel: this.objLabel, + macPackId: this.macPackId, + sourceMac: this.sourceMac, + targetMac: this.targetMac, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",macPackId:" + this.macPackId.toString() + ",sourceMac:" + this.sourceMac.toString() + ",targetMac:" + this.targetMac.toString() + "\n" + } + } + } // 链路层解包 + + isValid(sentMac: string, rcptMac: string) { + return this.sourceMac === sentMac && this.targetMac === rcptMac + } // 根据用户输入的mac地址判断是否正确 +} + +export interface macData { + objId: symbol + objLabel: string + macPackId: symbol + sourceMac: string + targetMac: string + toString: Function +} // 主机收到的链路层数据包的数据结构 + +export interface ipData { + objId: symbol + objLabel: string + ipPackId: symbol + sourceIp: string + targetIp: string + toString: Function +} // 主机收到的网络层数据包的数据结构 + +export interface transData { + objId: symbol + objLabel: string + transPackId: symbol + sourcePort: number + targetPort: number + toString: Function +} // 主机收到的传输层数据包的数据结构 + +export interface appData { + objId: symbol + objLabel: string + appPackId: symbol + sourceAppAddr: string + targetAppAddr: string + toString: Function +} // 主机收到的链路层数据包的数据结构 + + + +ArDversionfilesourceRootsourcesnamesmappingsDatas.jsDatas.ets  -!/,B.D8V:XGmIoV̄       !   !"   &"'"   $ %    *&+&   *&+&   #$ ($,(.*/+7395:6;6@   ($+'/+0,5162>:@I&AM&EN&FV&NW&O_&Wa&Yd&\q&it&lx&py&q̂&z̃&{̋&̃̍&̅̐&̡̈&̙̤&̨̜&̠̩&̶̡&̷̮&̯̿&̷&̹&̼&͔&Д&Ԕ&Ք&&&&&&& ' ' ( +()))) + + + +++!(+6,, ,,!,&,"3,/7,3;,7<,8I,EN,J[,W\,W----.0011 1 1?????-!?/)??+?A3?Q5?S>?d@?fJ?xL?zV?̌X?̎e?̣g?̥t?̺@ @ @ @@@@A A A AA A!AB B B BB!B#B$BC C C CC C!CD D D DD D!DE E E EE"E#EF F F FF$F %F G G G GG$G %G H H H HH*H&+H&I I I II*I&+I&J J J JJJJ#J$J (J$,J(.J*/J+7J39J5:J6;J6[K K K K!K*K&-K)1K-2K.7K38K4@KEKARKNUKQYKUZKVbK^eKauKqxKt|Kx}KÿK̄̉K̅̑K̍̓K̖̏Ḳ̒K̟̦K̢̪K̦̫Ķ̳K̴̯K̰̼K̸̾K̺K̽KʔK͔KєKҔKڔKݔKKKKKK K KK +K!K%K!&K"0K,1K-9K5;K7>K:NKJQKMUKQVKR`K\aK]iKekKgnKjK|KKKKKKKKKKKK̔KϔKӔKԔKݔKKK䒔LLNNOO +O OOOPP P PP&P"'P#-P)0P,3P/6P27P38P4;P7>P:?P:QQQQ SSTT +TTTT,T(.T*/T*U UUU%U'U'V V V VVVVVV%V!'V#(V$*V&,V(. WWWWW#W,W&-W'1W+2W,7W19W3=W7>W8FW@HWBIWCLWFMWGOWISWMTWN\WV^WXbW\cW]lWfnWhrWlsWm}WwWỹW}̄W~̎Ẅ̐W̊̔W̎̕W̢̏W̜̤W̨̞W̢̩Ẉ̶W̷̰W̸̱W̲̹W̲ XYY YYZZZZ \ +\ \ \]] ] ]] ^^ ^ ^^^ _____#_ `````)`# aaaaa'a! bbbbb'b! ccccc1ddd"d&d'd,d$-d%5d-7d/:d2Fd>IdAMdENdFVdNWdO_dWadYdd\sdkvdnzdr{ds̆d~̇d̏ḋ̑d̉̔ď̢d̥̚d̝̩d̡̪d̴̢d̵̬ḓ̽d̵̿d̷d̺dȔd˔dϔdДdڔd۔ddddd쒔 e e f +fgggg i i i +ii"i0jj jjj#j-j)1j-5j16j2@jÕKR̃NṼRW̃S_̃[b̃^õkr̃nṽrw̃s̃{̀̃|̵̷̡̝̙̠̜̤̠̥̰̬̱̭̹̻̺̈̃̄̊̃̆̍̃̉̃̃̃̃̃̃̃̃̾̃̃Ȕ̃˔̃ϔ̃Д̃ؔ̃ٔ̃̃̃̃̃̃̃̃ ̃̃ ̃̃(̃$+̃'/̃+0̃,=̃9@̃<R̃NŨQỸUZ̃Vg̃cj̃fñjõj̄̄̆̆̇ ̇̇̇#̈̈ +̈ ̈̈̈ ̈!̈&̈"(̈$,̈(-̈)5̈17̈3;̈7<̈8G̈CÏEM̈IN̈JV̈RẌT\̈X]̈Yëag̈ck̈gl̈hÿu{̈ẅ{̀̈|̍̈̉̎̈̊̏̈̊̉̉ ̉̉̊̊̊̊ ̌ +̌ ̌ ̌̍̍ ̍ ̍̍ ̎̎ ̎ ̎̎̎ ̏̏̏̏̏#̏ ̐̐̐̐̐#̐ ̑̑̑̑̑#̑ ̒̒̒̒̒#̒ ̓̓̓̓̓1̔̔̔"̔&̔'̔,̔$-̔%5̔-7̔/:̔2F̔>I̔AM̔EN̔FV̔NW̔O_̔Wa̔Yd̔\p̔hs̔kw̔ox̔p̀̔x́̔ỷ̵̸̡̢̢̝̙̪̫̣̳̫̭̰̼̔́̋̔̃̎̔̆̔̒̔̔̔̔̔̔̔̔̔̔̿̔̚̕̚Ô̔Ĕ͔̔̔̔̔Ք̔ה̔ڔ̔ޔ̔ޒ ̕ ̕ ̖ +̖̗̗̗̗ ̙ ̙ ̙ +̙̙̙,̚̚ ̚̚̚!̚)̚%-̚)1̚-2̚.:̚6?̚;G̚CH̚C̛̛̛̛̜̞̞̟̟ ̟ ̟̬̬̬̬̬-!̬/)̬?+̬A4̬R6̬T?̬eA̬gI̬wK̬yS̬̉Ű̬b̬̠d̢̬q̷̬̭ ̭ ̭ ̭̭̭̭̮ ̮ ̮ ̮̮ ̮!̮̯ ̯ ̯ ̯̯̯!̯"̯̰ ̰ ̰ ̰̰ ̰!̰̱ ̱ ̱ ̱̱"̱#̱̲ ̲ ̲ ̲̲"̲#̲̳ ̳ ̳ ̳̳ ̳!̴̳ ̴ ̴ ̴̴ ̴!̴̵ ̵ ̵ ̵̵*̵&+̵&̶ ̶ ̶ ̶̶*̶&+̶&X̷ ̷ ̷ ̷̷(̷$+̷'/̷+0̷,5̷16̷2>̷:@̷̼:F̼BH̼DL̼HM̼IV̼RX̼T\̼X]̼Yf̼bh̼dl̼hm̼iu̼qw̼s{̼w|̼x̨̛̼̼̼̼̘̼̼̖̞̼̟̼̬̼̭̼̩̮̼̩̄̀̆̂̊̆̋̇̔̽̽̚̚ ̽̽̾̾̾̾  +       # % % % 1"&',$-%5-7/:2F>IAMENFVNWO_WaYd\qitlxpyq̂z̃{̷̴̧̝̠̘̤̜̥̝̮̦̯̯̹̱̼̋̃̍̅̐̈̕ĔȔɔҔӔ۔ݔ䒔    +  +* ")%-)1-2.;7@>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ  + +    #  + +      !!""$  + +      !!""##)  + +      !!""##$$%%&&''(('  + +      !!""##$$%%&&-  + +      !!""##$$%%&&''(())**++,,-          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,= + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + + + + + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<c          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YZ Z[ [\ \] ]^ ^_ _` `a ab bc cd de ef fg gh hi ij jk kl lm mn no op pq qr rs st tu uv vw wx xy yz z{ {| |} }~ ~ ̀ ̀́ ́̂ ̂̃ ̃̄ ̄̅ ̅̆ ̆̇ ̇̈ ̈̉ ̉̊ ̊̋ ̋̌ ̌̍ ̍̎ ̎̏ ̏̐ ̐̑ ̑̒ ̒̓ ̓̔ ̔̕ ̖̕ ̖̗ ̗̘ ̘̙ ̙̚ ̛̚ ̛̜ ̜̝ ̝̞ ̞̟ ̟̠ ̡̠ ̡̢ ̢̣ ̣̤ ̤̥ ̥̦ ̧̦ ̧̨ ̨̩ ̩̪ ̪̫ ̫̬ ̬̭ ̭̮ ̮̯ ̯̰ ̰̱ ̱̲ ̲̳ ̴̳ ̴̵ ̵̶ ̶̷ ̷̸ ̸̹ ̹̺ ̺̻ ̻̼ ̼̽ ̽̾ ̾̿ ̿ ” Ô Ĕ Ŕ Ɣ ǔ Ȕ ɔ ʔ ˔ ̔ ͔ Δ ϔ Д є Ҕ Ӕ Ԕ Ք ֔ ה ؔ ٔ ڔ ۔ ܔ ݔ ޔ ߔ             +  +                          ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YZ Z[ [\ \] ]^ ^_ _` `a ab b                 + +   + +      + +      + +      + +       + +    &  + +      !!""##$$%%(  + +      !!""##$$%%&&''0  + +      !!""##$$%%&&''(())**++,,--..//0  + +      !!""##$$%%&&''(())**++,,--..//  + +      + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̣̣̤̤̥̥̦̦̩̩̪̪̫̫̬̬̭̭̮̮̯̯̰̰̱̱̲̲̳̳̹̹̺̺̻̻̼̼̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̽̽̾̾̿̿̕̕̚̚”ÔĔŔƔǔȔɔʔ˔͔̔ΔϔДєҔӔԔՔ֔הؔٔڔ۔ܔݔޔߔ  + +      + +    + +    -  + +      !!""##$$%%&&''(())**++,,^  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]  + +              + +   !!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!y""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",-"-."./"/0"01"12"23"34"45"56"67"78"89"9:":;";<"<="=>">?"?@"@A"AB"BC"CD"DE"EF"FG"GH"HI"IJ"JK"KL"LM"MN"NO"OP"PQ"QR"RS"ST"TU"UV"VW"WX"XY"YZ"Z["[\"\]"]^"^_"_`"`a"ab"bc"cd"de"ef"fg"gh"hi"ij"jk"kl"lm"mn"no"op"pq"qr"rs"st"tu"uv"vw"wx"x######### # +# + # # # ################$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"&%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%#&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"%((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($'))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&'********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&-+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,=--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'(-()-)*-*+-+,-,---.-./-/0-01-12-23-34-45-56-67-78-89-9:-:;-;<-<......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A.AB.BC.CD.DE.EF.FG.GH.HI.IJ.JK.KL.LM.MN.NO.OP.PQ.QR.RS.ST.TU.UV.VW.WX.XY.YZ.Z[.[\.\].]^.^_._`.`a.ab.bc.cd.de.ef.fg.gh.hi.ij.jk.kl.lm.mn.no.op.pq.qr.rs.st.tu.uv.vw.wx.xy.yz.z{.{|.|}.}~.~.̀.̀́.́̂.̂̃.̃̄.̄̅.̅̆.̆̇.̇̈.̈̉.̉̊.̊̋.̋̌.̌̍.̍̎.̎̏.̏̐.̐̑.̑̒.̒̓.̓̔.̔̕.̖̕.̖̗.̗̘.̘̙.̙̚.̛̚.̛̜.̜̝.̝̞.̞̟.̟̠.̡̠.̡̢.̢̣.̣̤.̤̥.̥̦.̧̦.̧̨.̨̩.̩̪.̪̫.̫̬.̬̭.̭̮.̮̯.̯̰.̰̱.̱̲.̲̳.̴̳.̴̵.̵̶.̶̷.̷̸.̸̹.̹̺.̺̻.̻̼.̼̽.̽̾.̾̿.̿...”.Ô.Ĕ.Ŕ.Ɣ.ǔ.Ȕ.ɔ.ʔ.˔.̔.͔.Δ.ϔ.Д.є.Ҕ.Ӕ.Ԕ.Ք.֔.ה.ؔ.ٔ.ڔ.۔.ܔ.ݔ.ޔ.ߔ......................................... .  +. + .  .  . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A.AB.BC.CD.DE.EF.FG.GH.HI.IJ.JK.KL.LM.MN.NO.OP.PQ.QR.RS.ST.TU.UV.VW.WX.XY.YZ.Z[.[\.\].]^.^_._`.`a.ab.bc.cd.de.ef.fg.gh.hi.ij.jk.kl.lm.mn.no.op.pq.qr.rs.st.tu.uv.vw.wx.xy.yz.z{.{|.|}.}~.~....................................................................”.Ô.Ĕ.Ŕ.Ɣ.ǔ.Ȕ.ɔ.ʔ.˔.̔.͔.Δ.ϔ.Д.є.Ҕ.Ӕ.Ԕ.Ք.֔.ה.ؔ.ٔ.ڔ.۔.ܔ.ݔ.ޔ.ߔ...........ꗔ///////000000000 0 +0 + 0 0 0 000000000111111111 1 +1 + 1 1 1 1111111111111A222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<=2=>2>?2?@2@333333333 3 +3 + 3 3 3 333444444444 4 +4 + 4 4 4 1555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050!666666666 6 +6 + 6 6 6 666666666666666666 6 /777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7.888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/080181282383484585686787888989:8:;8;<8<=8=>8>?8?@8@A8AB8BC8CD8DE8EF8FG8GH8HI8IJ8JK8KL8LM8MN8NO8OP8PQ8QR8RS8ST8TU8UV8VW8WX8XY8YZ8Z[8[\8\]8]^8^_8_`8`a8ab8bc8cd8de8ef8fg8gh8hi8ij8jk8kl8lm8mn8no8op8pq8qr8rs8st8tu8uv8vw8wx8xy8yz8z{8{|8|}8}~8~8̀8̀́8́̂8̂̃8̃̄8̄̅8̅̆8̆̇8̇̈8̈̉8̉̊8̊̋8̋̌8̌̍8̍̎8̎̏8̏̐8̐̑8̑̒8̒̓8̓̔8̔̕8̖̕8̖̗8̗̘8̘̙8̙̚8̛̚8̛̜8̜̝8̝̞8̞̟8̟̠8̡̠8̡̢8̢̣8̣̤8̤̥8̥̦8̧̦8̧̨8̨̩8̩̪8̪̫8̫̬8̬̭8̭̮8̮̯8̯̰8̰̱8̱̲8̲̳8̴̳8̴̵8̵̶8̶̷8̷̸8̸̹8̹̺8̺999999999 9 +9 +::::::::: : +: + : : : :::::::::::::::::;;;;;;;;; ; +; + ; ; ; ;;<<<<<<<<< < +< + < < < <<<<<<<<<========= = += + = = = ================= >>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>>&????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%,@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+*AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCDDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.D./D/0D01D12D23D34D45D56D67D78D89D9:D:;D;<D<=D=>D>?D?@D@ADABDBCDCDDDEDEFDFGDGHDHIDIJDJKDKLDLMDMNDNODOPDPQDQRDRSDSTDTUDUVDVWDWXDXYDYZDZ[D[\D\]D]^D^_D_`D`aDabDbcDcdDdeDefDfgDghDhiDijDjkDklDlmDmnDnoDopDpqDqrDrsDstDtuDuvDvwDwxDxyDyzDz{D{|D|}D}~D~D̀D̀́D́̂D̂̃D̃̄D̄̅D̅̆D̆̇Ḋ̈D̈̉D̉̊D̊̋D̋̌Ď̍D̍̎D̎̏D̏̐D̐̑D̑̒D̒̓D̓̔D̔̕D̖̕D̖̗D̗̘D̘̙D̙̚D̛̚D̛̜D̜̝D̝̞D̞̟D̟̠D̡̠D̡̢Ḍ̢Ḍ̤D̤̥D̥̦Ḑ̦Ḑ̨D̨̩D̩̪D̪̫D̫̬D̬̭Ḓ̮D̮̯D̯̰D̰̱Ḏ̲D̲̳D̴̳D̴̵D̵̶D̶̷D̷̸D̸̹D̹̺D̺̻D̻̼D̼̽D̽̾D̾̿D̿DDD”DÔDĔDŔDƔDǔDȔDɔDʔD˔D̔D͔DΔDϔDДDєDҔDӔDԔDՔD֔DהDؔDٔDڔD۔DܔDݔDޔDߔDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEE E +E + E E E EFFFFFFFFF F +F + F GGGGGGGGG G +G + G G G GG'HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&RIIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9:I:;I;<I<=I=>I>?I?@I@AIABIBCICDIDEIEFIFGIGHIHIIIJIJKIKLILMIMNINOIOPIPQIQJJJJJJJJJ J +J + J J J JJJJJJJJJJJJKKKLLLLLLLLL L +L + L L L LLMMMMMMMMM M +M + M M M MMMMMMMMMcNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9:N:;N;<N<=N=>N>?N?@N@ANABNBCNCDNDENEFNFGNGHNHINIJNJKNKLNLMNMNNNONOPNPQNQRNRSNSTNTUNUVNVWNWXNXYNYZNZ[N[\N\]N]^N^_N_`N`aNabNbOOOOOOOOO O +O + O O O OOOOOOOOOOOOOOO#PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q")RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R(#SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"-UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)*U*+U+,U,-VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,qWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWKLWLMWMNWNOWOPWPQWQRWRSWSTWTUWUVWVWWWXWXYWYZWZ[W[\W\]W]^W^_W_`W`aWabWbcWcdWdeWefWfgWghWhiWijWjkWklWlmWmnWnoWopWpqWqrWrsWstWtuWuvWvwWwxWxyWyzWz{W{|W|}W}~W~ẀẀ́Ẃ̂Ŵ̃W̃̄W̄̅W̅̆W̆̇Ẇ̈Ẅ̉W̉̊W̊̋W̋̌W̌̍W̍̎W̎̏W̏̐W̐̑W̑̒W̒̓W̓̔W̔̕W̖̕W̖̗W̗̘W̘̙W̙̚W̛̚W̛̜W̜̝W̝̞W̞̟W̟̠W̡̠W̡̢Ẉ̢Ẉ̤W̤̥W̥̦W̧̦W̧̨W̨̩W̩̪W̪̫W̫̬W̬̭W̭̮W̮̯W̯̰W̰̱W̱̲W̲̳W̴̳W̴̵W̵̶W̶̷W̷̸W̸̹W̹̺W̺̻W̻̼W̼̽W̽̾W̾̿W̿WWW”WÔWĔWŔWƔWǔWȔWɔWʔW˔W̔W͔WΔWϔWДWєWҔWӔWԔWՔW֔WהWؔWٔWڔW۔WܔWݔWޔWߔWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW W  +W + W  W  W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWKLWLMWMNWNOWOPWPQWQRWRSWSTWTUWUVWVWWWXWXYWYZWZ[W[\W\]W]^W^_W_`W`aWabWbcWcdWdeWefWfgWghWhiWijWjkWklWlmWmnWnoWopWpXXXXXXXYYYYYYYYY Y +Y + Y Y Y ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZ[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:;[;<[<=[=>[>?[?@[@A[AB[BC[CD[DE[EF[FG[GH[HI[IJ[JK[KL[LM[MN[NO[OP[PQ[QR[RS[ST[TU[UV[VW[WX[XY[YZ[Z[[[\[\][]^[^_[_`[`a[ab[bc[cd[de[ef[fg[gh[hi[ij[jk[kl[lm[mn[no[op[pq[qr[rs[st[tu[uv[vw[wx[xy[yz[z{[{|[|}[}~[~[̀[̀́[́̂[̂̃[̃̄[̄̅[̅̆[̆̇[̇̈[̈̉[̉̊[̊̋[̋̌[̌̍[̍̎[̎̏[̏̐[̐\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\]]]]]]]]] ] +] + ] ] ] ]]^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^_________ _ +_ + _ _ _ ______________ ````````` ` +` + ` ` ` ``````````````````&aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&ccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeefffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f34f45f56f67f78f89f9:f:;f;<f<=f=>f>?f?@f@AfABfBCfCDfDEfEFfFGfGHfHIfIJfJKfKLfLMfMNfNOfOPfPQfQRfRSfSTfTUfUVfVWfWXfXYfYZfZ[f[\f\]f]^f^_f_`f`afabfbcfcdfdefefffgfghfhifijfjkfklflmfmnfnofopfpqfqrfrsfstftufuvfvwfwxfxyfyzfz{f{|f|}f}~f~f̀f̀́f́̂f̂̃f̃̄f̄̅f̅̆f̆̇ḟ̈f̈̉f̉̊f̊̋f̋̌f̌̍f̍̎f̎̏f̏̐f̐̑f̑̒f̒̓f̓̔f̔̕f̖̕f̖̗f̗̘f̘̙f̙̚f̛̚f̛̜f̜̝f̝̞f̞̟f̟̠f̡̠f̡̢f̢̣f̣̤f̤̥f̥̦f̧̦f̧̨f̨̩f̩̪f̪̫f̫̬f̬̭f̭̮f̮̯f̯̰f̰̱f̱̲f̲̳f̴̳f̴̵f̵̶f̶̷f̷̸f̸̹f̹̺f̺̻f̻̼f̼̽f̽̾f̾̿f̿fff”fÔfĔfŔfƔfǔfȔfɔfʔf˔f̔f͔fΔfϔfДfєfҔfӔfԔfՔf֔fהfؔfٔfڔf۔fܔfݔfޔfߔfffffffff蟔ggggggggg g +g + g g g ghhhhhhhhh h +h + h iiiiiiiii i +i + i i i ii#jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"Jkkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k23k34k45k56k67k78k89k9:k:;k;<k<=k=>k>?k?@k@AkABkBCkCDkDEkEFkFGkGHkHIkIlllllllll l +l + l l l llllllllllllllmmmnnnnnnnnn n +n + n n n nnooooooooo o +o + o o o oooooooooovppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpCDpDEpEFpFGpGHpHIpIJpJKpKLpLMpMNpNOpOPpPQpQRpRSpSTpTUpUVpVWpWXpXYpYZpZ[p[\p\]p]^p^_p_`p`apabpbcpcdpdepefpfgpghphipijpjkpklplmpmnpnopopppqpqrprspstptupuqqqqqqqqq q +q + q q q qqqqqqqqqqqqqqq#rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"$sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s##ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"%uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$#wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"-yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,Ĕ{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>?{?@{@A{AB{BC{CD{DE{EF{FG{GH{HI{IJ{JK{KL{LM{MN{NO{OP{PQ{QR{RS{ST{TU{UV{VW{WX{XY{YZ{Z[{[\{\]{]^{^_{_`{`a{ab{bc{cd{de{ef{fg{gh{hi{ij{jk{kl{lm{mn{no{op{pq{qr{rs{st{tu{uv{vw{wx{xy{yz{z{{{|{|}{}~{~{̀{̀́{́̂{̂̃{̃̄{̄̅{̅̆{̆̇{̇̈{̈̉{̉̊{̊̋{̋̌{̌̍{̍̎{̎̏{̏̐{̐̑{̑̒{̒̓{̓̔{̔̕{̖̕{̖̗{̗̘{̘̙{̙̚{̛̚{̛̜{̜̝{̝̞{̞̟{̟̠{̡̠{̡̢{̢̣{̣̤{̤̥{̥̦{̧̦{̧̨{̨̩{̩̪{̪̫{̫̬{̬̭{̭̮{̮̯{̯̰{̰̱{̱̲{̲̳{̴̳{̴̵{̵̶{̶̷{̷̸{̸̹{̹̺{̺̻{̻̼{̼̽{̽̾{̾̿{̿{{{”{Ô{Ĕ{Ŕ{Ɣ{ǔ{Ȕ{ɔ{ʔ{˔{̔{͔{Δ{ϔ{Д{є{Ҕ{Ӕ{Ԕ{Ք{֔{ה{ؔ{ٔ{ڔ{۔{ܔ{ݔ{ޔ{ߔ{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{ {  +{ + {  {  { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>?{?@{@A{AB{BC{CD{DE{EF{FG{GH{HI{IJ{JK{KL{LM{MN{NO{OP{PQ{QR{RS{ST{TU{UV{VW{WX{XY{YZ{Z[{[\{\]{]^{^_{_`{`a{ab{bc{cd{de{ef{fg{gh{hi{ij{jk{kl{lm{mn{no{op{pq{qr{rs{st{tu{uv{vw{wx{xy{yz{z{{{|{|}{}~{~{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{”{×|||||||}}}}}}}}} } +} + } } } ~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̡̡̢̢̧̧̨̨̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̣̣̤̤̥̥̦̦̩̩̪̪̫̫̬̬̭̭̮̮̯̯̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̀̀̀̀̀̀̀̀̀̕̕̚̚ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀̀̀́́́́́́́́́ ́ +́ + ́ ́ ́ ́́̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂̂̂̂̂̂̂̂̂̃̃̃̃̃̃̃̃̃ ̃ +̃ + ̃ ̃ ̃ ̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃ ̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̄ ̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄&̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ̅ !̅!"̅"#̅#$̅$%̅%(̆̆̆̆̆̆̆̆̆ ̆ +̆ + ̆ ̆ ̆ ̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆ ̆ !̆!"̆"#̆#$̆$%̆%&̆&'̆'(̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇ ̇ !̇!"̇"#̇#$̇$%̇%&̇&'̇'(̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'̉̉̉̉̉̉̉̉̉ ̉ +̉ + ̉ ̉ ̉ ̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊ ̊ !̊!"̊"#̊#$̊$%̊%&̊&'̊'(̊()̊)*̊*+̊+,̊,-̊-.̊./̊/0̊01̊12̊23̊34̊45̊56̊67̊78̊89̊9:̊:;̊;<̊<=̊=>̊>?̊?@̊@ÅAB̊BC̊CD̊DE̊EF̊FG̊GH̊HI̊IJ̊JK̊KL̊LM̊MN̊NO̊OP̊PQ̊QR̊RS̊ST̊TŮUV̊VW̊WX̊XY̊YZ̊Z[̊[\̊\]̊]^̊^_̊_`̊`åab̊bc̊cd̊de̊ef̊fg̊gh̊hi̊ij̊jk̊kl̊lm̊mn̊no̊op̊pq̊qr̊rs̊st̊tůuv̊vẘwx̊xẙyz̊z{̊{|̊|}̊}~̊~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̣̣̤̤̥̥̦̦̩̩̪̪̫̫̬̬̭̭̮̮̯̯̰̰̱̱̲̲̳̳̹̹̺̺̻̻̼̼̊̀̊̀́̊́̂̊̂̃̊̃̄̊̄̅̊̅̆̊̆̇̊̇̈̊̈̉̊̉̊̊̊̋̊̋̌̊̌̍̊̍̎̊̎̏̊̏̐̊̐̑̊̑̒̊̒̓̊̓̔̊̔̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̽̊̽̾̊̾̿̊̿̊̊̊̕̕̚̚”̊Ô̊Ĕ̊Ŕ̊Ɣ̊ǔ̊Ȕ̊ɔ̊ʔ̊˔͔̊̔̊̊Δ̊ϔ̊Д̊є̊Ҕ̊Ӕ̊Ԕ̊Ք̊֔̊ה̊ؔ̊ٔ̊ڔ̊۔̊ܔ̊ݔ̊ޔ̊ߔ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̌̌̌̌̌̌̌̌̌ ̌ +̌ + ̌ ̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍!̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎ ̎ J̏̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏ ̏ !̏!"̏"#̏#$̏$%̏%&̏&'̏'(̏()̏)*̏*+̏+,̏,-̏-.̏./̏/0̏01̏12̏23̏34̏45̏56̏67̏78̏89̏9:̏:;̏;<̏<=̏=>̏>?̏?@̏@ȀAB̏BC̏CD̏DȄEF̏FG̏GH̏HȈI̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̑̑̑!̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒ ̒ rFdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherGtypestartenddeclarationspecifierssourceExportNamedDeclaration`rHtypestartendidsuperClassbodyClassDeclaration`rItypestartendnameIdentifier$AppDatarJtypestartendbodyClassBody%`rKtypestartendstaticcomputedkeykindvalueMethodDefinition,6IIdentifier,7constructorconstructorrLtypestartendidexpressiongeneratorasyncparamsbodyFunctionExpression76–IIdentifier8=objIdIIdentifier?GobjLabelIIdentifierITappPackSizeIIdentifierV`appPackTagIIdentifierbosourceAppAddrIIdentifierq~targetAppAddrJBlockStatement̀6rMtypestartendexpressionExpressionStatement̞̋rNtypestartendoperatorleftrightAssignmentExpression̝̋=rOtypestartendobjectpropertycomputedoptionalMemberExpression̋̕rPtypestartendThisExpression̋̏IIdentifier̐̕objIdIIdentifier̘̝objIdMExpressionStatement̨NAssignmentExpression̨=OMemberExpression̵̨PThisExpression̨̬IIdentifier̵̭objLabelIIdentifier̸objLabelMExpressionStatementNAssignmentExpression=OMemberExpressionPThisExpressionIIdentifier٩appPackIdrQtypestartendcalleeargumentsoptionalCallExpressionIIdentifierSymbolMExpressionStatementNAssignmentExpression =OMemberExpressionPThisExpressionIIdentifierappPackSizeIIdentifier appPackSizeMExpressionStatement5NAssignmentExpression4=OMemberExpression'PThisExpressionIIdentifier'appPackTagIIdentifier*4appPackTagMExpressionStatement?bNAssignmentExpression?a=OMemberExpression?QPThisExpression?CIIdentifierDQsourceAppAddrIIdentifierTasourceAppAddrMExpressionStatementlNAssignmentExpressionl=OMemberExpressionl~PThisExpressionlpIIdentifierq~targetAppAddrIIdentifiertargetAppAddrMExpressionStatementNAssignmentExpressionˡ=OMemberExpressionPThisExpressionIIdentifiertimeStampQCallExpressionOMemberExpressionIIdentifierDateIIdentifierparse‘QCallExpressionOMemberExpressionrRtypestartendcalleeargumentsNewExpressionIIdentifierDateIIdentifierȨtoStringMExpressionStatement/NAssignmentExpression.=OMemberExpressionPThisExpressionIIdentifierappPackedStringrStypestartendleftoperatorrightBinaryExpression.SBinaryExpression'SBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionnSBinaryExpression[SBinaryExpression?SBinaryExpression.SBinaryExpressionSBinaryExpressionrTtypestartendvaluerawLiteralobjId: "objId: "+QCallExpressionOMemberExpression OMemberExpressionPThisExpressionIIdentifierobjIdIIdentifier toString¡+TLiteral,objLabel: ",objLabel: "+OMemberExpression!.PThisExpression!%IIdentifier&.objLabel¡+TLiteral1?,appPackId: ",appPackId: "+QCallExpressionB[OMemberExpressionBYOMemberExpressionBPPThisExpressionBFIIdentifierGPappPackIdIIdentifierQYtoString¡+TLiteral^n,appPackSize: ",appPackSize: "+QCallExpressionqOMemberExpressionqOMemberExpressionqPThisExpressionquIIdentifiervappPackSizeIIdentifiertoString¡+TLiteral,appPackTag: ",appPackTag: "+OMemberExpressionPThisExpressionIIdentifierappPackTag¡+TLiteralư +sourceAppAddr: "\nsourceAppAddr: "+OMemberExpressionPThisExpressionIIdentifierۭsourceAppAddr¡+TLiteral,targetAppAddr: ",targetAppAddr: "+OMemberExpressionPThisExpressionIIdentifiertargetAppAddr¡+TLiteral,timeStamp: ",timeStamp: "+OMemberExpression'PThisExpressionIIdentifier'timeStamp¡+TLiteral*. +"\n"KMethodDefinition<aIIdentifier<@packmethodLFunctionExpression@aJBlockStatementCarUtypestartendargumentReturnStatementNZPThisExpressionUYKMethodDefinitionpIIdentifierpvunpackmethodLFunctionExpressionv‘IIdentifierw~simHostJBlockStatementMExpressionStatementNAssignmentExpression=OMemberExpressionIIdentifiersimHostIIdentifierappDatarVtypestartendpropertiesObjectExpressionrWtypestartendmethodshorthandcomputedkeyvaluekindPropertyIIdentifierobjIdOMemberExpressionPThisExpressionIIdentifierobjId¤initWPropertyIIdentifierԨobjLabelOMemberExpressionPThisExpressionIIdentifierobjLabel¤initWProperty IIdentifierappPackIdOMemberExpression PThisExpressionIIdentifier appPackId¤initWProperty;IIdentifier'sourceAppAddrOMemberExpression);PThisExpression)-IIdentifier.;sourceAppAddr¤initWPropertyJkIIdentifierJWtargetAppAddrOMemberExpressionYkPThisExpressionY]IIdentifier^ktargetAppAddr¤initWPropertyzIIdentifierztoStringLArrowFunctionExpressionJBlockStatementUReturnStatementSBinaryExpressionSBinaryExpressionSBinaryExpressionbSBinaryExpressionNSBinaryExpression.SBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionSBinaryExpressionTLiteralobjId:"objId:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierobjIdIIdentifier¨toString¡+TLiteralӪ,objLabel:",objLabel:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierobjLabelIIdentifiertoString¡+TLiteral,appPackId:",appPackId:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierappPackIdIIdentifiertoString¡+TLiteral.,sourceAppAddr:",sourceAppAddr:"+QCallExpression1NOMemberExpression1LOMemberExpression1CPThisExpression15IIdentifier6CsourceAppAddrIIdentifierDLtoString¡+TLiteralQb,targetAppAddr:",targetAppAddr:"+QCallExpressioneOMemberExpressioneOMemberExpressionewPThisExpressioneiIIdentifierjwtargetAppAddrIIdentifierxtoString¡+TLiteral +"\n"initKMethodDefinitionGIIdentifier§isValidmethodLFunctionExpressionG’IIdentifierЭsourceAppAddrIIdentifier߭targetAppAddrJBlockStatementGUReturnStatement@SLogicalExpression?SBinaryExpressionOMemberExpressionPThisExpressionIIdentifiersourceAppAddr£===IIdentifier +sourceAppAddr&&SBinaryExpression?OMemberExpression-PThisExpressionIIdentifier -targetAppAddr£===IIdentifier2?targetAppAddrGExportNamedDeclarationrHClassDeclarationyIIdentifierTransDataJClassBodyKMethodDefinition +IIdentifierconstructorconstructorLFunctionExpression +™IIdentifierobjIdIIdentifierobjLabelIIdentifiertransSeqIIdentifiertransTagIIdentifierʩappPackIdIIdentifier֪sourcePortIIdentifiertargetPortIIdentifiersourceAppAddrIIdentifiertargetAppAddrJBlockStatement +MExpressionStatement  NAssignmentExpression =OMemberExpression PThisExpression IIdentifierobjIdIIdentifierobjIdMExpressionStatement*CNAssignmentExpression*B=OMemberExpression*7PThisExpression*.IIdentifier/7objLabelIIdentifier:BobjLabelMExpressionStatementMiNAssignmentExpressionMh=OMemberExpressionM]PThisExpressionMQIIdentifierR]transPackIdQCallExpression`hIIdentifier`fSymbolMExpressionStatementsNAssignmentExpressions=OMemberExpressionsPThisExpressionswIIdentifierxtransSeqIIdentifiertransSeqMExpressionStatementNAssignmentExpression=OMemberExpressionPThisExpressionIIdentifiertransTagIIdentifiertransTagMExpressionStatementNAssignmentExpressionӡ=OMemberExpressionPThisExpressionIIdentifierǩappPackIdIIdentifierөappPackIdMExpressionStatementNAssignmentExpression=OMemberExpressionPThisExpressionIIdentifiersourcePortIIdentifiersourcePortMExpressionStatement"NAssignmentExpression!=OMemberExpressionPThisExpression IIdentifier +targetPortIIdentifier!targetPortMExpressionStatement,ONAssignmentExpression,N=OMemberExpression,>PThisExpression,0IIdentifier1>sourceAppAddrIIdentifierANsourceAppAddrMExpressionStatementY|NAssignmentExpressionY{=OMemberExpressionYkPThisExpressionY]IIdentifier^ktargetAppAddrIIdentifiern{targetAppAddrMExpressionStatementNAssignmentExpression=OMemberExpressionPThisExpressionIIdentifiertimeStampQCallExpressionOMemberExpressionIIdentifierDateIIdentifierparse‘QCallExpressionOMemberExpressionRNewExpressionIIdentifierDateIIdentifiertoStringMExpressionStatement +NAssignmentExpression +=OMemberExpressionPThisExpressionIIdentifierٱtransPackedStringSBinaryExpression +SBinaryExpression +SBinaryExpression +SBinaryExpression +zSBinaryExpression +eSBinaryExpression +PSBinaryExpression +;SBinaryExpression +&SBinaryExpression + SBinaryExpression SBinaryExpression SBinaryExpression SBinaryExpression SBinaryExpression SBinaryExpression SBinaryExpression ySBinaryExpression ^SBinaryExpression NSBinaryExpression 0SBinaryExpression SBinaryExpression SBinaryExpressionTLiteralobjId: "objId: "+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierobjIdIIdentifiertoString¡+TLiteral ,objLabel: ",objLabel: "+OMemberExpression  PThisExpression  IIdentifier  objLabel¡+TLiteral 0,transPackId: ",transPackId: "+QCallExpression 3 NOMemberExpression 3 LOMemberExpression 3 CPThisExpression 3 7IIdentifier 8 CtransPackIdIIdentifier D LtoString¡+TLiteral Q ^,transSeq: ",transSeq: "+QCallExpression a yOMemberExpression a wOMemberExpression a nPThisExpression a eIIdentifier f ntransSeqIIdentifier o wtoString¡+TLiteral | ,transTag: ",transTag: "+OMemberExpression PThisExpression IIdentifier transTag¡+TLiteral ,appPackId: ",appPackId: "+QCallExpression OMemberExpression OMemberExpression PThisExpression IIdentifier appPackIdIIdentifier ĨtoString¡+TLiteral ٭ +sourcePort: "\nsourcePort: "+QCallExpression OMemberExpression OMemberExpression PThisExpression IIdentifier sourcePortIIdentifier toString¡+TLiteral + +targetPort: "\ntargetPort: "+QCallExpression + +&OMemberExpression + +$OMemberExpression + +PThisExpression + +IIdentifier + +targetPortIIdentifier + +$toString¡+TLiteral +) +;,sourceAppAddr: ",sourceAppAddr: "+OMemberExpression +> +PPThisExpression +> +BIIdentifier +C +PsourceAppAddr¡+TLiteral +S +e,targetAppAddr: ",targetAppAddr: "+OMemberExpression +h +zPThisExpression +h +lIIdentifier +m +ztargetAppAddr¡+TLiteral +} +,timeStamp: ",timeStamp: "+OMemberExpression + +PThisExpression + +IIdentifier + +timeStamp¡+TLiteral + + +"\n"KMethodDefinition + %IIdentifier + +calcNumSplitsmethodLFunctionExpression + %JBlockStatement + %rXtypestartenddeclarationskindVariableDeclaration + +ݑrYtypestartendidinitVariableDeclarator + +IIdentifier + +գMTUTLiteral + +2048constUReturnStatement + SBinaryExpression + SBinaryExpression + SBinaryExpression + OMemberExpression + OMemberExpression + PThisExpression + +IIdentifier + transPackedStringIIdentifier  length¡+IIdentifier  MTU-TLiteral  1/IIdentifier  MTUKMethodDefinition 5 IIdentifier 5 9packmethodLFunctionExpression 9 JBlockStatement < XVariableDeclaration G nYVariableDeclarator M mIIdentifier M VnumSplitsQCallExpression Y mOMemberExpression Y kPThisExpression Y ]IIdentifier ^ kcalcNumSplits¥constXVariableDeclaration x YVariableDeclarator | IIdentifier | transDataListrZtypestartendelementsArrayExpression letr[typestartendinittestupdatebodyForStatement XVariableDeclaration YVariableDeclarator IIdentifier iTLiteral 0letSBinaryExpression IIdentifier iFtargetIpIIdentifierGOtoString¡+TLiteralTf,sourceAppAddr: ",sourceAppAddr: "+OMemberExpressioni{PThisExpressionimIIdentifiern{sourceAppAddr¡+TLiteral~,targetAppAddr: ",targetAppAddr: "+OMemberExpressionPThisExpressionIIdentifiertargetAppAddr¡+TLiteral +"\n"KMethodDefinitionIIdentifierpackmethodLFunctionExpressionJBlockStatementXVariableDeclarationבYVariableDeclaratorIIdentifier֦ipDataletMExpressionStatementhNAssignmentExpressiong=IIdentifieripDataRNewExpressiongIIdentifierIPDataOMemberExpressionPThisExpressionIIdentifierobjIdOMemberExpressionPThisExpressionIIdentifierobjLabelOMemberExpression PThisExpressionIIdentifier transPackIdOMemberExpression"/PThisExpression"&IIdentifier'/sourceIpOMemberExpression1>PThisExpression15IIdentifier6>targetIpOMemberExpression@RPThisExpression@DIIdentifierERsourceAppAddrOMemberExpressionTfPThisExpressionTXIIdentifierYftargetAppAddrUReturnStatementrIIdentifieryipDataKMethodDefinitionIIdentifierunpackmethodLFunctionExpression‘IIdentifiersimHostJBlockStatementMExpressionStatementNAssignmentExpression=OMemberExpressionIIdentifiersimHostIIdentifieripDataVObjectExpressionWPropertyIIdentifier֥objIdOMemberExpressionPThisExpressionIIdentifierobjId¤initWPropertyIIdentifierobjLabelOMemberExpressionPThisExpressionIIdentifierobjLabel¤initWProperty.IIdentifieripPackIdOMemberExpression!.PThisExpression!%IIdentifier&.ipPackId¤initWProperty=TIIdentifier=EsourceIpOMemberExpressionGTPThisExpressionGKIIdentifierLTsourceIp¤initWPropertyczIIdentifiercktargetIpOMemberExpressionmzPThisExpressionmqIIdentifierrztargetIp¤initWPropertyIIdentifiertoStringLArrowFunctionExpressionJBlockStatementUReturnStatementSBinaryExpressionSBinaryExpression{SBinaryExpression`SBinaryExpressionQSBinaryExpression6SBinaryExpression'SBinaryExpression SBinaryExpressionSBinaryExpressionSBinaryExpressionTLiteralobjId:"objId:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierȥobjIdIIdentifierѨtoString¡+TLiteral,objLabel:",objLabel:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierobjLabelIIdentifiertoString¡+TLiteral ,ipPackId:",ipPackId:"+QCallExpression'OMemberExpression%OMemberExpressionPThisExpressionIIdentifieripPackIdIIdentifier%toString¡+TLiteral*6,sourceIp:",sourceIp:"+QCallExpression9QOMemberExpression9OOMemberExpression9FPThisExpression9=IIdentifier>FsourceIpIIdentifierGOtoString¡+TLiteralT`,targetIp:",targetIp:"+QCallExpressionc{OMemberExpressioncyOMemberExpressioncpPThisExpressioncgIIdentifierhptargetIpIIdentifierqytoString¡+TLiteral~ +"\n"initKMethodDefinition"IIdentifierisValidmethodLFunctionExpression"’IIdentifierĨsourceIpIIdentifierΨtargetIpJBlockStatement"UReturnStatementSLogicalExpressionSBinaryExpressionOMemberExpressionPThisExpressionIIdentifiersourceIp£===IIdentifiersourceIp&&SBinaryExpressionOMemberExpression PThisExpressionIIdentifier targetIp£===IIdentifiertargetIpGExportNamedDeclarationLHClassDeclarationSIIdentifierY`MACDataJClassBodyaǔKMethodDefinitionhIIdentifierhsconstructorconstructorLFunctionExpressions™IIdentifiertyobjIDIIdentifier{objLabelIIdentifieripPackIDIIdentifiersourceMacIIdentifiertargetMacIIdentifiersourceIpIIdentifiertargetIpIIdentifierƭsourceAppAddrIIdentifierխtargetAppAddrJBlockStatementMExpressionStatementNAssignmentExpression=OMemberExpressionPThisExpressionIIdentifierobjIdIIdentifierobjIDMExpressionStatementNAssignmentExpression=OMemberExpression PThisExpressionIIdentifier objLabelIIdentifierobjLabelMExpressionStatement"SBinaryExpressionj/SBinaryExpressionjSBinaryExpressionjSBinaryExpressionjSBinaryExpressionjSBinaryExpressionjSBinaryExpressionjSBinaryExpressionjSBinaryExpressionjTLiteraljsobjId: "objId: "+QCallExpressionvOMemberExpressionvOMemberExpressionvPThisExpressionvzIIdentifier{objIdIIdentifiertoString¡+TLiteral,objLabel: ",objLabel: "+OMemberExpressionPThisExpressionIIdentifierobjLabel¡+TLiteral,macPackId: ",macPackId: "+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierͩmacPackIdIIdentifier֨toString¡+TLiteral,ipPackId: ",ipPackId: "+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifieripPackIdIIdentifiertoString¡+TLiteral +sentMac: "\nsentMac: "+QCallExpression/OMemberExpression-OMemberExpression$PThisExpressionIIdentifier$sourceMacIIdentifier%-toString¡+TLiteral2>,rpctMac: ",rpctMac: "+QCallExpressionAZOMemberExpressionAXOMemberExpressionAOPThisExpressionAEIIdentifierFOtargetMacIIdentifierPXtoString¡+TLiteral]j,sourceIp: ",sourceIp: "+QCallExpressionmOMemberExpressionmOMemberExpressionmzPThisExpressionmqIIdentifierrzsourceIpIIdentifier{toString¡+TLiteral,targetIp: ",targetIp: "+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifiertargetIpIIdentifiertoString¡+TLiteralư +sourceAppAddr: "\nsourceAppAddr: "+OMemberExpressionPThisExpressionIIdentifierۭsourceAppAddr¡+TLiteral,targetAppAddr: ",targetAppAddr: "+OMemberExpressionPThisExpressionIIdentifiertargetAppAddr¡+TLiteral +"\n"KMethodDefinitionIIdentifierpackmethodLFunctionExpressionJBlockStatement!XVariableDeclaration,8YVariableDeclarator07IIdentifier07macDataletMExpressionStatementBNAssignmentExpressionB=IIdentifierBImacDataRNewExpressionLIIdentifierPWMACDataOMemberExpressionXbPThisExpressionX\IIdentifier]bobjIdOMemberExpressiondqPThisExpressiondhIIdentifieriqobjLabelOMemberExpressionsPThisExpressionswIIdentifierxipPackIdOMemberExpressionPThisExpressionIIdentifiersourceMacOMemberExpressionPThisExpressionIIdentifiertargetMacOMemberExpressionPThisExpressionIIdentifiersourceIpOMemberExpressionPThisExpressionIIdentifiertargetIpOMemberExpressionPThisExpressionIIdentifierҭsourceAppAddrOMemberExpressionPThisExpressionIIdentifiertargetAppAddrUReturnStatementIIdentifiermacDataKMethodDefinition3IIdentifierunPackmethodLFunctionExpression3‘IIdentifier%simHostJBlockStatement'3MExpressionStatement2,NAssignmentExpression2+=OMemberExpression2AIIdentifier29simHostIIdentifier:AmacDataVObjectExpressionD+WPropertySdIIdentifierSXobjIdOMemberExpressionZdPThisExpressionZ^IIdentifier_dobjId¤initWPropertysIIdentifiers{objLabelOMemberExpression}PThisExpression}IIdentifierobjLabel¤initWPropertyIIdentifiermacPackIdOMemberExpressionPThisExpressionIIdentifiermacPackId¤initWPropertyIIdentifierʩsourceMacOMemberExpressionPThisExpressionIIdentifierکsourceMac¤initWPropertyIIdentifiertargetMacOMemberExpressionPThisExpressionIIdentifiertargetMac¤initWProperty IIdentifiertoStringLArrowFunctionExpression JBlockStatement! UReturnStatement4SBinaryExpression;SBinaryExpression; SBinaryExpression;SBinaryExpression;SBinaryExpression;SBinaryExpression;SBinaryExpression;SBinaryExpression;SBinaryExpression;jSBinaryExpression;[TLiteral;CobjId:"objId:"+QCallExpressionF[OMemberExpressionFYOMemberExpressionFPPThisExpressionFJIIdentifierKPobjIdIIdentifierQYtoString¡+TLiteral^j,objLabel:",objLabel:"+QCallExpressionmOMemberExpressionmOMemberExpressionmzPThisExpressionmqIIdentifierrzobjLabelIIdentifier{toString¡+TLiteral,macPackId:",macPackId:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifiermacPackIdIIdentifiertoString¡+TLiteral,sourceMac:",sourceMac:"+QCallExpressionOMemberExpressionOMemberExpressionPThisExpressionIIdentifierҩsourceMacIIdentifierۨtoString¡+TLiteral,targetMac:",targetMac:"+QCallExpression OMemberExpressionOMemberExpressionPThisExpressionIIdentifiertargetMacIIdentifiertoString¡+TLiteral  +"\n"initKMethodDefinitionBIIdentifierBIisValidmethodLFunctionExpressionI’IIdentifierJQsentMacIIdentifierSZrcptMacJBlockStatement\UReturnStatementgSLogicalExpressionnSBinaryExpressionnOMemberExpressionn|PThisExpressionnrIIdentifiers|sourceMac£===IIdentifiersentMac&&SBinaryExpressionOMemberExpressionPThisExpressionIIdentifiertargetMac£===IIdentifierrcptMac \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Dialog.ets-71348831137b26caeedca752aaca8e64.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Dialog.ets-71348831137b26caeedca752aaca8e64.msgpack new file mode 100644 index 0000000..24d7a67 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-Dialog.ets-71348831137b26caeedca752aaca8e64.msgpack @@ -0,0 +1,4952 @@ +r@assertionscodecustomTransformCachedependenciesidmetamoduleSideEffectsoriginalCodeoriginalSourcemapresolvedIdssourcemapChainsyntheticNamedExportstransformDependenciestransformFilescacheAstrA'import promptAction from "@ohos.promptAction"; +import { checkNetwork } from "../functions/functions"; +export class LabelRevise extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__newLabel = new ObservedPropertySimplePU("", this, "newLabel"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.newLabel !== undefined) { + this.newLabel = params.newLabel; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__newLabel.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__newLabel.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get newLabel() { + return this.__newLabel.get(); + } + set newLabel(newValue) { + this.__newLabel.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create({ space: 5 }); + Column.debugLine("components/Dialog.ets(13:5)"); + Column.margin(10); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("原标签: " + this.simObj.objLabel); + Text.debugLine("components/Dialog.ets(14:7)"); + Text.fontSize(28); + Text.fontColor(Color.Gray); + Text.width('80%'); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(19:7)"); + Row.width('80%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("新标签:"); + Text.debugLine("components/Dialog.ets(20:9)"); + Text.fontSize(28); + Text.fontColor(Color.Gray); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入新标签" }); + TextInput.debugLine("components/Dialog.ets(24:9)"); + TextInput.onChange((value) => { + this.newLabel = value; + }); + TextInput.width('65%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 40 }); + Row.debugLine("components/Dialog.ets(32:7)"); + Row.margin({ top: 5 }); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(33:9)"); + Button.height(35); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(39:9)"); + Button.height(35); + Button.onClick(() => { + this.simObj.objLabel = this.newLabel; + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class LineDelete extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue) { + this.__allSimConn.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(62:5)"); + Column.width('100%'); + Column.margin(10); + Column.backgroundColor(Color.White); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.simObj.objLabel + " 连接线列表"); + Text.debugLine("components/Dialog.ets(63:7)"); + Text.fontSize(18); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/Dialog.ets(66:7)"); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objID === item.nObjE.objID || this.simObj.objID === item.nObjS.objID) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ + content: this.simObj.objLabel + " : " + (this.simObj.objID === item.nObjE.objID ? item.nObjS.objLabel : item.nObjE.objLabel) + }); + MenuItem.debugLine("components/Dialog.ets(69:13)"); + MenuItem.height(25); + MenuItem.contentFont({ size: 18 }); + MenuItem.onChange(() => { + item.deleteObjConn(); // 删除线时应该先将线两端的设备的connection设置为null + this.allSimConn.splice(index, 1); // 然后将连接线对象数组中的该连接线对象删除 + this.controller.close(); + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + }; + this.forEachUpdateFunction(elmtId, this.allSimConn, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class NetworkConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get ip() { + return this.__ip.get(); + } + set ip(newValue) { + this.__ip.set(newValue); + } + get mac() { + return this.__mac.get(); + } + set mac(newValue) { + this.__mac.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(97:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(98:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(103:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(108:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(109:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(114:9)"); + Button.onClick(() => { + if (this.simObj.objType == 3) { + this.simObj.mac = this.mac; + } + else { + this.simObj.ip = this.ip; + this.simObj.mac = this.mac; + } + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class RouterTableConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip1 = new ObservedPropertySimplePU("", this, "ip1"); + this.__ip2 = new ObservedPropertySimplePU("", this, "ip2"); + this.__ip3 = new ObservedPropertySimplePU("", this, "ip3"); + this.__ip4 = new ObservedPropertySimplePU("", this, "ip4"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip1 !== undefined) { + this.ip1 = params.ip1; + } + if (params.ip2 !== undefined) { + this.ip2 = params.ip2; + } + if (params.ip3 !== undefined) { + this.ip3 = params.ip3; + } + if (params.ip4 !== undefined) { + this.ip4 = params.ip4; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip1.purgeDependencyOnElmtId(rmElmtId); + this.__ip2.purgeDependencyOnElmtId(rmElmtId); + this.__ip3.purgeDependencyOnElmtId(rmElmtId); + this.__ip4.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip1.aboutToBeDeleted(); + this.__ip2.aboutToBeDeleted(); + this.__ip3.aboutToBeDeleted(); + this.__ip4.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get ip1() { + return this.__ip1.get(); + } + set ip1(newValue) { + this.__ip1.set(newValue); + } + get ip2() { + return this.__ip2.get(); + } + set ip2(newValue) { + this.__ip2.set(newValue); + } + get ip3() { + return this.__ip3.get(); + } + set ip3(newValue) { + this.__ip3.set(newValue); + } + get ip4() { + return this.__ip4.get(); + } + set ip4(newValue) { + this.__ip4.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(142:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(143:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口1下一跳:192.168.1.0/24" }); + TextInput.debugLine("components/Dialog.ets(144:9)"); + TextInput.onChange((value) => { + this.ip1 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(150:9)"); + Button.onClick(() => { + let pushItem = { + port: 1, + net: this.ip1 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(165:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口2下一跳:" }); + TextInput.debugLine("components/Dialog.ets(166:9)"); + TextInput.onChange((value) => { + this.ip2 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(172:9)"); + Button.onClick(() => { + let pushItem = { + port: 2, + net: this.ip2 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(187:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口3下一跳:" }); + TextInput.debugLine("components/Dialog.ets(188:9)"); + TextInput.onChange((value) => { + this.ip3 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(194:9)"); + Button.onClick(() => { + let pushItem = { + port: 3, + net: this.ip3 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(209:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口4下一跳:" }); + TextInput.debugLine("components/Dialog.ets(210:9)"); + TextInput.onChange((value) => { + this.ip4 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(216:9)"); + Button.onClick(() => { + let pushItem = { + port: 4, + net: this.ip4 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class SwitchTableConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__mac1 = new ObservedPropertySimplePU("", this, "mac1"); + this.__mac2 = new ObservedPropertySimplePU("", this, "mac2"); + this.__mac3 = new ObservedPropertySimplePU("", this, "mac3"); + this.__mac4 = new ObservedPropertySimplePU("", this, "mac4"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.mac1 !== undefined) { + this.mac1 = params.mac1; + } + if (params.mac2 !== undefined) { + this.mac2 = params.mac2; + } + if (params.mac3 !== undefined) { + this.mac3 = params.mac3; + } + if (params.mac4 !== undefined) { + this.mac4 = params.mac4; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__mac1.purgeDependencyOnElmtId(rmElmtId); + this.__mac2.purgeDependencyOnElmtId(rmElmtId); + this.__mac3.purgeDependencyOnElmtId(rmElmtId); + this.__mac4.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__mac1.aboutToBeDeleted(); + this.__mac2.aboutToBeDeleted(); + this.__mac3.aboutToBeDeleted(); + this.__mac4.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get mac1() { + return this.__mac1.get(); + } + set mac1(newValue) { + this.__mac1.set(newValue); + } + get mac2() { + return this.__mac2.get(); + } + set mac2(newValue) { + this.__mac2.set(newValue); + } + get mac3() { + return this.__mac3.get(); + } + set mac3(newValue) { + this.__mac3.set(newValue); + } + get mac4() { + return this.__mac4.get(); + } + set mac4(newValue) { + this.__mac4.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(247:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(248:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口1下一跳:mac11" }); + TextInput.debugLine("components/Dialog.ets(249:9)"); + TextInput.onChange((value) => { + this.mac1 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(255:9)"); + Button.onClick(() => { + let pushItem = { + port: 1, + net: this.mac1 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(270:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口2下一跳:" }); + TextInput.debugLine("components/Dialog.ets(271:9)"); + TextInput.onChange((value) => { + this.mac2 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(277:9)"); + Button.onClick(() => { + let pushItem = { + port: 2, + net: this.mac2 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(292:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口3下一跳:" }); + TextInput.debugLine("components/Dialog.ets(293:9)"); + TextInput.onChange((value) => { + this.mac3 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(299:9)"); + Button.onClick(() => { + let pushItem = { + port: 3, + net: this.mac3 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(314:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口4下一跳:" }); + TextInput.debugLine("components/Dialog.ets(315:9)"); + TextInput.onChange((value) => { + this.mac4 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(321:9)"); + Button.onClick(() => { + let pushItem = { + port: 4, + net: this.mac4 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a, b) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class PacketSet extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.__message = new ObservedPropertySimplePU("", this, "message"); + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + if (params.message !== undefined) { + this.message = params.message; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + this.__message.purgeDependencyOnElmtId(rmElmtId); + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + this.__message.aboutToBeDeleted(); + this.__allSimObj.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get ip() { + return this.__ip.get(); + } + set ip(newValue) { + this.__ip.set(newValue); + } + get mac() { + return this.__mac.get(); + } + set mac(newValue) { + this.__mac.set(newValue); + } + get message() { + return this.__message.get(); + } + set message(newValue) { + this.__message.set(newValue); + } + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue) { + this.__allSimPacket.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(353:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(354:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(359:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入发送信息" }); + TextInput.debugLine("components/Dialog.ets(364:7)"); + TextInput.onChange((value) => { + this.message = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(369:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(370:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(375:9)"); + Button.onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }); + } + else if (this.simObj.objType == 1) { + // this.simObj.createPacket(this.mac, this.ip, this.message, this.allSimObj, this.allSimPacket) + this.simObj.createMacPacket(ObservedObject.GetRawObject(this.allSimObj), ObservedObject.GetRawObject(this.allSimPacket), 1024, this.message, 8080, 8080, this.mac, this.ip, `${this.simObj.ip}:8080:app1`, `${this.ip}:8080:app1`); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class BatchPacketSet extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.__message = new ObservedPropertySimplePU("", this, "message"); + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.__packets = new ObservedPropertyObjectPU([], this, "packets"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + if (params.message !== undefined) { + this.message = params.message; + } + if (params.packets !== undefined) { + this.packets = params.packets; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + this.__message.purgeDependencyOnElmtId(rmElmtId); + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + this.__packets.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + this.__message.aboutToBeDeleted(); + this.__allSimObj.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + this.__packets.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + setController(ctr) { + this.controller = ctr; + } + get simObj() { + return this.__simObj.get(); + } + get ip() { + return this.__ip.get(); + } + set ip(newValue) { + this.__ip.set(newValue); + } + get mac() { + return this.__mac.get(); + } + set mac(newValue) { + this.__mac.set(newValue); + } + get message() { + return this.__message.get(); + } + set message(newValue) { + this.__message.set(newValue); + } + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue) { + this.__allSimPacket.set(newValue); + } + get packets() { + return this.__packets.get(); + } + set packets(newValue) { + this.__packets.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(415:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(416:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(421:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入发送信息" }); + TextInput.debugLine("components/Dialog.ets(426:7)"); + TextInput.onChange((value) => { + this.message = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(431:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(432:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("新增"); + Button.debugLine("components/Dialog.ets(437:9)"); + Button.onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }); + } + else if (this.simObj.objType == 1) { + this.packets.push({ + ip: this.ip, + mac: this.mac, + message: this.message, + allSimObj: this.allSimObj, + allSimPacket: this.allSimPacket + }); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("批量发送"); + Button.debugLine("components/Dialog.ets(464:9)"); + Button.onClick(() => { + this.packets.forEach(item => { + this.simObj.createPacket(item.mac, item.ip, item.message, ObservedObject.GetRawObject(item.allSimObj), ObservedObject.GetRawObject(item.allSimPacket)); + }); + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +//# sourceMappingURL=Dialog.js.map’Jhvigor_ignore_D:_Huawei_OpenHarmony_10_10_ets_api_@ohos.promptAction.d.ts { + this.newLabel = value + }) + .width('65%') + } + .width('80%') + + Row({ space: 40 }) { + Button("取消") + .height(35) + .onClick(() => { + this.controller.close() + }) + + Button("确定") + .height(35) + .onClick(() => { + this.simObj.objLabel = this.newLabel + this.controller.close() + }) + } + .margin({ top: 5 }) + } + .margin(10) + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct LineDelete { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @Consume allSimConn: SimConnect[] + + build() { + Column() { + Text(this.simObj.objLabel + " 连接线列表") + .fontSize(18) + .fontWeight(FontWeight.Bold) + Menu() { + ForEach(this.allSimConn, (item: SimConnect, index) => { + if (this.simObj.objID === item.nObjE.objID || this.simObj.objID === item.nObjS.objID) { + MenuItem({ + content: this.simObj.objLabel + " : " + (this.simObj.objID === item.nObjE.objID ? item.nObjS.objLabel : item.nObjE.objLabel) + }) + .height(25) + .contentFont({ size: 18 }) + .onChange(() => { + item.deleteObjConn() // 删除线时应该先将线两端的设备的connection设置为null + this.allSimConn.splice(index, 1) // 然后将连接线对象数组中的该连接线对象删除 + this.controller.close() + }) + } + }) + } + } + .width('100%') + .margin(10) + .backgroundColor(Color.White) + } +} + +@CustomDialog +export struct NetworkConfig { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip: string = "" + @State mac: string = "" + + build() { + Column() { + TextInput({ placeholder: "请输入ip地址:192.168.1.1" }) + .onChange((value) => { + this.ip = value + }) + + TextInput({ placeholder: "请输入mac地址:mac11" }) + .onChange((value) => { + this.mac = value + }) + + Row({ space: 30 }) { + Button("取消") + .onClick(() => { + this.controller.close() + }) + + Button("确定") + .onClick(() => { + if (this.simObj.objType == 3) { + this.simObj.mac = this.mac + } else { + this.simObj.ip = this.ip + this.simObj.mac = this.mac + } + this.controller.close() + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct RouterTableConfig { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip1: string = "" + @State ip2: string = "" + @State ip3: string = "" + @State ip4: string = "" + + build() { + Column() { + Row() { + TextInput({ placeholder: "请输入端口1下一跳:192.168.1.0/24" }) + .onChange((value) => { + this.ip1 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 1, + net: this.ip1 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口2下一跳:" }) + .onChange((value) => { + this.ip2 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 2, + net: this.ip2 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口3下一跳:" }) + .onChange((value) => { + this.ip3 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 3, + net: this.ip3 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口4下一跳:" }) + .onChange((value) => { + this.ip4 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 4, + net: this.ip4 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct SwitchTableConfig { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State mac1: string = "" + @State mac2: string = "" + @State mac3: string = "" + @State mac4: string = "" + + build() { + Column() { + Row() { + TextInput({ placeholder: "请输入端口1下一跳:mac11" }) + .onChange((value) => { + this.mac1 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 1, + net: this.mac1 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口2下一跳:" }) + .onChange((value) => { + this.mac2 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 2, + net: this.mac2 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口3下一跳:" }) + .onChange((value) => { + this.mac3 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 3, + net: this.mac3 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口4下一跳:" }) + .onChange((value) => { + this.mac4 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 4, + net: this.mac4 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct PacketSet { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip: string = "" + @State mac: string = "" + @State message: string = "" + @Consume allSimObj: SimBase[] + @Consume allSimPacket: SimPacket[] + + build() { + Column() { + TextInput({ placeholder: "请输入目标ip地址:192.168.1.1" }) + .onChange((value) => { + this.ip = value + }) + + TextInput({ placeholder: "请输入目标mac地址:mac11" }) + .onChange((value) => { + this.mac = value + }) + + TextInput({ placeholder: "请输入发送信息" }) + .onChange((value) => { + this.message = value + }) + + Row({ space: 30 }) { + Button("取消") + .onClick(() => { + this.controller.close() + }) + + Button("确定") + .onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }) + } else if (this.simObj.objType == 1) { + // this.simObj.createPacket(this.mac, this.ip, this.message, this.allSimObj, this.allSimPacket) + this.simObj.createMacPacket(this.allSimObj, this.allSimPacket, 1024, this.message, 8080, 8080, this.mac, this.ip, `${this.simObj.ip}:8080:app1`, `${this.ip}:8080:app1`) + } else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }) + } + this.controller.close() + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct BatchPacketSet { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip: string = "" + @State mac: string = "" + @State message: string = "" + @Consume allSimObj: SimBase[] + @Consume allSimPacket: SimPacket[] + @State packets: any[] = [] + + build() { + Column() { + TextInput({ placeholder: "请输入目标ip地址:192.168.1.1" }) + .onChange((value) => { + this.ip = value + }) + + TextInput({ placeholder: "请输入目标mac地址:mac11" }) + .onChange((value) => { + this.mac = value + }) + + TextInput({ placeholder: "请输入发送信息" }) + .onChange((value) => { + this.message = value + }) + + Row({ space: 30 }) { + Button("取消") + .onClick(() => { + this.controller.close() + }) + + Button("新增") + .onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }) + } else if (this.simObj.objType == 1) { + this.packets.push( + { + ip: this.ip, + mac: this.mac, + message: this.message, + allSimObj: this.allSimObj, + allSimPacket: this.allSimPacket + } + ) + } else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }) + } + }) + + Button("批量发送") + .onClick(() => { + this.packets.forEach(item => { + this.simObj.createPacket(item.mac, item.ip, item.message, item.allSimObj, item.allSimPacket) + }) + this.controller.close() + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +}rD@ohos.promptAction../functions/functionsrEassertionsexternalidmetamoduleSideEffectsresolvedBysyntheticNamedExportsAJhvigor_ignore_D:_Huawei_OpenHarmony_10_10_ets_api_@ohos.promptAction.d.tsAêoh-resolveEA> +> >>#>$>,>/>"7>* >> +? ??? >> +@ @@&@'@+@#>> +> > + AA +AA + BB3B48B9C +CCC#C$C)C.C$2C(3C)8C.9C/>C4BC8FCBBBBBA A +== +UYY YYX1\3\2]4]V ZZ [[\ +\ \ +\ ] ] ] ] _ `` + `` +}"}#}(})}.} `` +~!~"~+~,~2~$ `` +-. 4&`` + aaaa*a,aAa4Ca6 aab bb b%b'b)bc +ccccc c d d aa ffff*f,f<f/>f1 ffg gg g%g'g)gh +hhhh h!h i i ff kk k +k k k"k$kkk ll#l'l llm mmm mn nnn n%n!'n#(n# o + o llll qq#q'q qqr rrr rs ssss s's#+s',s(.s*tttt t#t&t *t$+t%.t(/t(u uvvvv v"v%v)v#*v$,v&-v&wwww w#w&w *w$+w%.w(/w(x y yyy y%y!'y#(y# z + z qqqqk k `` +̀̄̄ ̄̄̃2̇4̇2̈4̈2̉4̉2̊4̊́ ̅̅ ̆̆̇ ̇ ̇ ̇ ̈ ̈ ̈ ̈ ̉ ̉ ̉ ̉ ̊ ̊ ̊ ̊ ̌ ̍̍ + ̍̍ +"#(). ̍̍ +!"+,2$ ̍̍ +-. 4&̍̍ + ̎̎ ̎̎ ̏̏̏̏*̏,̏!F̏;H̏= ̏̏̐ ̐̐ ̐%̐'̐)̐̑ ̑̑̑̑ ̑!̑ ̒ + ̒ ̏̏̓ ̓̓!̓̏̏ ̕̕#̕'̕ ̖̕̕ ̖̖̖ ̖̗ ̗̗̗"̘̘̘̘̙̙̙̙̙!̙̚ ̚ ̛ ̛̛̛̛ ̛+̛',̛(0̛,1̛-5̛16̛28̛49̛5=̛9>̛:B̛>F̛BN̛JƠKS̛OT̛PV̛R̜̜̜̜ ̜+̜%,̜&4̜.5̜/9̜3<̜4=̜5>̜6A̜9I̜AJ̜A̝ ̝̞̞̞̞ ̞+̞%,̞&0̞*1̞+9̞3:̞4;̞4"̟̟̟̟ ̟+̟%,̟&0̟*1̟+2̟,3̟45̟66̟>8̟@:̟B;̟C<̟D=̟EA̟ID̟LE̟MF̟NJ̟RK̟SL̟TM̟UN̟VO̟WP̟XQ̟YR̟ZS̟[T̟\U̟\̠ ̡ + ̡ ̎̕̕̕̕ ̎ ̤̤ ̤̤ ̥̥̥̥*̥,̥!8̥-:̥/ ̥̥̦ ̦̦ ̦%̦'̦)̧̦ ̧̧̧̧ ̧!̧ ̨ + ̨ ̥̥̩ ̩̩!̩̥̥ ̫̫#̫'̫ ̫̫̬ ̬̬̬ ̬̭ ̭̭̭"̮̮̮̮̯̯̯̯̯!̯̰ ̰ ̱ ̱̱̱̱ ̱+̱',̱(0̱,1̱-5̱16̱28̱49̱5=̱9>̱:Ḇ>F̱BṈJO̱KS̱OṮPV̱R̲̲̲̲ ̲+̲%,̲&4̲.5̲/9̲3<̲4=̲5>̲6A̲9I̲AJ̲A̳ ̴̴̴̴̳ ̴+̴%,̴&0̴*1̴+9̴3:̴4;̴4"̵̵̵̵ ̵+̵%,̵&0̵*1̵+2̵,3̵45̵66̵>8̵@:̵B;̵C<̵D=̵EA̵ID̵LE̵MF̵NJ̵RK̵SL̵TM̵UN̵VO̵WP̵XQ̵YR̵ZS̵[T̵\U̵\̶ ̷ + ̷ ̫̫̫̫̤ ̤ ̺̺ ̺̺ ̻̻̻̻*̻,̻!8̻-:̻/ ̻̻̼ ̼̼ ̼%̼'̼)̼̽ ̽̽̽̽ ̽!̽ ̾ + ̾ ̻̻̿ ̿̿!̻̻̿ #'    "!    +',(0,1-51628495=9>:B>FBNJOKSOTPVR +%,&4.5/93<4=5>6A9IAJA  +%,&0*1+93:4;4" +%,&0*1+2,34566>8@:B;C<D=EAIDLEMFNJRKSLTMUNVOWPXQYRZS[T\U\ + ̺ ̺   *,!8-:/   %')  ! +  ! #'    "!    +',(0,1-51628495=9>:B>FBNJOKSOTPVR +%,&4.5/93<4=5>6A9IAJA  +%,&0*1+93:4;4" +%,&0*1+2,34566>8@:B;C<D=EAIDLEMFNJRKSLTMUNVOWPXQYRZS[T\U\ +  ̍̍ + 35353535            +  +O"O#O(O)O.O  +P!P"P+P,P2P$  +QQQ-Q.Q 4Q& +   *,!=2?4   %') !" +  ! #'    ""    +',(0,1-51628495=9>:B>FBNJOKSOTPVR +%,&4.5/93<4=5>6A9IAJA  +%,&0*1+93:4;4" +%,&0*1+2,34566>8@:B;C<D=EAIDLEMFNJRKSLTMUNVOWPXQYRZS[T\U\  + +  +      *,!8-:/   %') !"  +   ! #'    ""    +',(0,1-51628495=9>:B>FBNJOKSOTPVR +%,&4.5/93<4=5>6A9IAJA  +%,&0*1+93:4;4" +%,&0*1+2,34566>8@:B;C<D=EAIDLEMFNJRKSLTMUNVOWPXQYRZS[T\U\  +     ## ## $$$$*$,$!8$-:$/ $$% %% %%%'%)%& &&&&!&"& ' + ' $$( ((!($$ **#*'* **+ +++ +, ,,,"----....."./ / 0 0000 0+0',0(00,10-501602804905=09>0:B0>F0BN0JO0KS0OT0PV0R1111 1+1%,1&41.51/913<14=15>16A19I1AJ1A2 23333 3+3%,3&03*13+933:34;34"4444 4+4%,4&04*14+24,34454664>84@:4B;4C<4D=4EA4ID4LE4MF4NJ4RK4SL4TM4UN4VO4WP4XQ4YR4ZS4[T4\U4\5 6 + 6 ****# # 99 99 ::::*:,:!8:-::/ ::; ;; ;%;';);< <<<<!<"< = + = ::> >>!>:: @@#@'@ @@A AAA AB BBB"CCCCDDDDD"DE E F FFFF F+F',F(0F,1F-5F16F28F49F5=F9>F:BF>FFBNFJOFKSFOTFPVFRGGGG G+G%,G&4G.5G/9G3<G4=G5>G6AG9IGAJGAH HIIII I+I%,I&0I*1I+9I3:I4;I4"JJJJ J+J%,J&0J*1J+2J,3J45J66J>8J@:JB;JC<JD=JEAJIDJLEJMFJNJJRKJSLJTMJUNJVOJWPJXQJYRJZSJ[TJ\UJ\K L + L @@@@9 9  +RVV VVU1Y3Y2Z4Z6[8[S WW XXY +Y Y +Y Z Z Z Z [ [[ [\ \\ \] ]] ]_ `` + `` +"#(). `` +!"+,2$ `` +-. 4&`` + aaaa*a,aCa6Ea8 aab bb b%b'b)bc +ccccc c d d aa ffff*f,f>f1@f3 ffg gg g%g'g)gh +hhhh h!h i i ff kkkk*k,k5k(7k* kkl ll l%l'l)lm +mmmm$m%m n n kk pp p +p p p"p$ppp qq#q'q qqr rrr rs sss s%s!'s#(s# t + t qqqq vv#v'v vvw www wx xx!x"x&x"'x#0x,1x-3x/y y!y*y$+y%zz!z,z${ {"{&{|| |"|}}}~ ~~~~$~"%~#,~*0~.1~/3~1sm0 /)L*P.Q/Z8y:}>~?̊K̍M̑Q̓S̗W̘X̟_̡ḁȩg̫k̭m̱q̲r̵u̷w̻{̼|̾~̵̶̶̢̧̝̟̦̩̀̃̇̈̎̏̑  !*$+%!*" "& "   %!'#(#  +  vvvvp p `` + 13246868   +  +               +  +"#().  +!"+,2$  +-. 4& + *,C6E8   %') +     *,>1@3   %') + !    *,5(7*   %') +$%      +  "$ #'     %!'#(#  +   #'    !"&"'#0,1-3/ !*$+%!,$ "& " $"%#,*0.1/31 !%& !#!"%!%& -'!#'!("1+$& *$+%71  !*$+%!*" "& "  +   #)    $ %!)%*&,( ,&-'1+2,5/71;5<6>8@:D>E?LFjHnLoMxV̗X̛\̜]̨i̪j̫j    %!'#(#  +     +rGversionfilesourcessourcesContentnamesmappings0 + +  !!""##$$%%&&''(())**++,,--..//8  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677+  + +      !!""##$$%%&&''(())**Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +&  + +      !!""##$$%%Z          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YO + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + + + + + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<= +=> +>? +?@ +@A +AB +BC +CD +DE +EF +FG +GH +HI +IJ +JK +KL +LM +MN +N1          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 0       )          + +                    ! !" "# #$ $% %& &' '( (0  + +      !!""##$$%%&&''(())**++,,--..//2  + +      !!""##$$%%&&''(())**++,,--..//0011  + ++  + +      !!""##$$%%&&''(())**.  + +      !!""##$$%%&&''(())**++,,--.  + +      !!""##$$%%&&''(())**++,,--  + +  + +    +  + +      !!""##$$%%&&''(())**3  + +      !!""##$$%%&&''(())**++,,--..//001122:  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +    +  + +      !!""##$$%%&&''(())**-  + +      !!""##$$%%&&''(())**++,,6          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 5*!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)"""""""######### # +# + # # # ############ $$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$%%%%%%%&&&&&&&&& & +& + & & & &&&&&&%''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$((((((())))))))) ) +) + ) ) ) ))))))))'********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&+++++++,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,(--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'.......///////// / +/ + / / / /////////F000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-0-.0./0/000101202303404505606707808909:0:;0;<0<=0=>0>?0?@0@A0AB0BC0CD0DE0ED111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212313414515616717818919:1:;1;<1<=1=>1>?1?@1@A1AB1BC1C*222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)>333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3= 444444444 4 +4 + 4 4 4 4444444444444444442555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/0501516666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/0601612623634645658777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777%888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$999999999 9 +9 + 9 9 9 99999999999999999::::::::: : +: + : : : ::;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;./;/0;01;12;23;34;45;56;67;78;89;9<<<<<<<<< < +< + < < F========= = += + = = = ================== = !=!"="#=#$=$%=%&=&'='(=()=)*=*+=+,=,-=-.=./=/0=01=12=23=34=45=56=67=78=89=9:=:;=;<=<===>=>?=?@=@A=AB=BC=CD=DE=ED>>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/0>01>12>23>34>45>56>67>78>89>9:>:;>;<><=>=>>>?>?@>@A>AB>BC>C:????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?23?34?45?56?67?78?89?9<@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@; AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA)BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B( CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC%DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEFFFFFFFFF F +F + F F F F:GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/0G01G12G23G34G45G56G67G78G89G9HHHHHHHHH H +H + H H IIIIIIIII I +I + I I I IIIIIIIFJJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*+J+,J,-J-.J./J/0J01J12J23J34J45J56J67J78J89J9:J:;J;<J<=J=>J>?J?@J@AJABJBCJCDJDEJEDKKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K45K56K67K78K89K9:K:;K;<K<=K=>K>?K?@K@AKABKBCKCLLLLLLLLL L +L + L L L LLLLLLLLLLLLL;MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)*M*+M+,M,-M-.M./M/0M01M12M23M34M45M56M67M78M89M9:M:NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNN%OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPQQQQQQQQQ Q +Q + Q Q Q Q:RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9SSSSSSSSS S +S + S S FTTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=>T>?T?@T@ATABTBCTCDTDETEDUUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)*U*+U+,U,-U-.U./U/0U01U12U23U34U45U56U67U78U89U9:U:;U;<U<=U=>U>?U?@U@AUABUBCUC"VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!<WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W; XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX)YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y(%ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[\\\\\\\\\ \ +\ + \ \ \ \:]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]01]12]23]34]45]56]67]78]89]9^^^^^^^^^ ^ +^ + ^ ^ _________ _ +_ + _ _ _ _______F````````` ` +` + ` ` ` `````````````````` ` !`!"`"#`#$`$%`%&`&'`'(`()`)*`*+`+,`,-`-.`./`/0`01`12`23`34`45`56`67`78`89`9:`:;`;<`<=`=>`>?`?@`@A`AB`BC`CD`DE`EDaaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a56a67a78a89a9:a:;a;<a<=a=>a>?a?@a@AaABaBCaC:bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&'b'(b()b)*b*+b+,b,-b-.b./b/0b01b12b23b34b45b56b67b78b89b9Accccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c01c12c23c34c45c56c67c78c89c9:c:;c;<c<=c=>c>?c?@c@-ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,(eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'fffffffff f +f + f f f fff%ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$"iiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!jjjjjjjjj j +j + j j j j:kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k23k34k45k56k67k78k89k9lllllllll l +l + l l mmmmmmmmm m +m + m m m mmmmmmFnnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n23n34n45n56n67n78n89n9:n:;n;<n<=n=>n>?n?@n@AnABnBCnCDnDEnEDooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*+o+,o,-o-.o./o/0o01o12o23o34o45o56o67o78o89o9:o:;o;<o<=o=>o>?o?@o@AoABoBCoC(ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p';qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q()q)*q*+q+,q,-q-.q./q/0q01q12q23q34q45q56q67q78q89q9:q:%rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$ttttttttt t +t + t t t ttttttttttttttuuuuuuuuu u +u + u u u u:vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v45v56v67v78v89v9wwwwwwwww w +w + w w Fxxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x/0x01x12x23x34x45x56x67x78x89x9:x:;x;<x<=x=>x>?x?@x@AxABxBCxCDxDExEDyyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9:y:;y;<y<=y=>y>?y?@y@AyAByBCyC+zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*>{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={= ||||||||| | +| + | | | ||||||||||||||||||$}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#*~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)  + +    %̀̀̀̀̀̀̀̀̀ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀ ̀ !̀!"̀"#̀#$̀$́́́́́́́́́ ́ +́ + ́ ́ ́ ́́́́́́́́́́́́́́́́́̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂:̃̃̃̃̃̃̃̃̃ ̃ +̃ + ̃ ̃ ̃ ̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃ ̃ !̃!"̃"#̃#$̃$%̃%&̃&'̃'(̃()̃)*̃*+̃+,̃,-̃-.̃./̃/0̃01̃12̃23̃34̃45̃56̃67̃78̃89̃9̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅F̆̆̆̆̆̆̆̆̆ ̆ +̆ + ̆ ̆ ̆ ̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆ ̆ !̆!"̆"#̆#$̆$%̆%&̆&'̆'(̆()̆)*̆*+̆+,̆,-̆-.̆./̆/0̆01̆12̆23̆34̆45̆56̆67̆78̆89̆9:̆:;̆;<̆<=̆=>̆>?̆?@̆@ĂAB̆BC̆CD̆DĔEḊ̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇ ̇ !̇!"̇"#̇#$̇$%̇%&̇&'̇'(̇()̇)*̇*+̇+,̇,-̇-.̇./̇/0̇01̇12̇23̇34̇45̇56̇67̇78̇89̇9:̇:;̇;<̇<=̇=>̇>?̇?@̇@ȦAḂBĊC+̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'(̈()̈)*̈*>̉̉̉̉̉̉̉̉̉ ̉ +̉ + ̉ ̉ ̉ ̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉ ̉ !̉!"̉"#̉#$̉$%̉%&̉&'̉'(̉()̉)*̉*+̉+,̉,-̉-.̉./̉/0̉01̉12̉23̉34̉45̉56̉67̉78̉89̉9:̉:;̉;<̉<=̉= ̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊$̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋ ̋ !̋!"̋"#̋#7̌̌̌̌̌̌̌̌̌ ̌ +̌ + ̌ ̌ ̌ ̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌ ̌ !̌!"̌"#̌#$̌$%̌%&̌&'̌'(̌()̌)*̌*+̌+,̌,-̌-.̌./̌/0̌01̌12̌23̌34̌45̌56̌6*̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍ ̍ !̍!"̍"#̍#$̍$%̍%&̍&'̍'(̍()̍)̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎%̏̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏ ̏ !̏!"̏"#̏#$̏$̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̑̑̑̑̑̑̑̑̑ ̑ +̑ + ̑ ̑ ̑ ̑:̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒ ̒ !̒!"̒"#̒#$̒$%̒%&̒&'̒'(̒()̒)*̒*+̒+,̒,-̒-.̒./̒/0̒01̒12̒23̒34̒45̒56̒67̒78̒89̒9̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̔̔̔̔̔̔̔̔̔ ̔ +̔ + ̔ ̔ ̔ ̔̔̔̔̔̔̔̔̔̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̖̖̖̖̖̖̖̖̖̕̕̕̕̕̕ ̖ +̖ + ̖ ̖ ̖ ̖̖̖̖̖̖̖̖̖̗̗̗̗̗̗̗̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ ̘ ̘̘̘̘%̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙ ̙ !̙!"̙"#̙#$̙$̛̛̛̚̚̚̚̚̚̚*̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜ ̜ !̜!"̜"#̜#$̜$%̜%&̜&'̜'(̜()̜)Z̝̝̝̝̝̝̝̝̝ ̝ +̝ + ̝ ̝ ̝ ̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝ ̝ !̝!"̝"#̝#$̝$%̝%&̝&'̝'(̝()̝)*̝*+̝+,̝,-̝-.̝./̝/0̝01̝12̝23̝34̝45̝56̝67̝78̝89̝9:̝:;̝;<̝<=̝=>̝>?̝?@̝@A̝AB̝BC̝CD̝DE̝EF̝FG̝GH̝HI̝IJ̝JK̝KL̝LM̝MN̝NO̝OP̝PQ̝QR̝RS̝ST̝TU̝UV̝VW̝WX̝XY̝Y0̞̞̞̞̞̞̞̞̞ ̞ +̞ + ̞ ̞ ̞ ̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞ ̞ !̞!"̞"#̞#$̞$%̞%&̞&'̞'(̞()̞)*̞*+̞+,̞,-̞-.̞./̞/3̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟ ̟ !̟!"̟"#̟#$̟$%̟%&̟&'̟'(̟()̟)*̟*+̟+,̟,-̟-.̟./̟/0̟01̟12̟23̠̠̠̠̠̠̠̠̠ ̠ +̠ + ̠ ̠ ̠ ̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠ ̠ !̠!"̠"#̠#$̠$%̠%&̠&'̠'(̠()̠)*̠*+̠+,̠,-̠-.̠./̠/0̠01̠12̠2̡̡̡̡̡̡̡̡̡ ̡ +̡ +&̢̢̢̢̢̢̢̢̢ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢ ̢ !̢!"̢"#̢#$̢$%̢%Ẓ̣̣̣̣̣̣̣̣ ̣ +̣ + ̣ ̣ ̣ ̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣ ̣ !̣!"̣"#̣#$̣$%̣%&̣&'̣'(̣()̣)*̣*+̣+,̣,-̣-.̣./̣/0̣01̣12̣23̣34̣45̣56̣67̣78̣89̣9:̣:;̣;<̣<=̣=>̣>?̣?@̣@ẠAḄBC̣CḌDẸEF̣FG̣GḤHỊIJ̣JḲKḶLṂMṆNỌOP̣PQ̣QṚRṢSṬTỤUṾVẈWX̣XỴYQ̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤ ̤ !̤!"̤"#̤#$̤$%̤%&̤&'̤'(̤()̤)*̤*+̤+,̤,-̤-.̤./̤/0̤01̤12̤23̤34̤45̤56̤67̤78̤89̤9:̤:;̤;<̤<=̤=>̤>?̤?@̤@A̤AB̤BC̤CD̤DE̤EF̤FG̤GH̤HI̤IJ̤JK̤KL̤LM̤MN̤NO̤OP̤P1̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥ ̥ !̥!"̥"#̥#$̥$%̥%&̥&'̥'(̥()̥)*̥*+̥+,̥,-̥-.̥./̥/0̥0̦̦̦̦̦̦̦)̧̧̧̧̧̧̧̧̧ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧ ̧ !̧!"̧"#̧#$̧$%̧%&̧&'̧'(̧(0̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨ ̨ !̨!"̨"#̨#$̨$%̨%&̨&'̨'(̨()̨)*̨*+̨+,̨,-̨-.̨./̨/2̩̩̩̩̩̩̩̩̩ ̩ +̩ + ̩ ̩ ̩ ̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩ ̩ !̩!"̩"#̩#$̩$%̩%&̩&'̩'(̩()̩)*̩*+̩+,̩,-̩-.̩./̩/0̩01̩1̪̪̪̪̪̪̪̪̪ ̪ +̪ ++̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ !̫!"̫"#̫#$̫$%̫%&̫&'̫'(̫()̫)*̫*̬̬̬̬̬̬̬̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭+̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*̯̯̯̯̯̯̯3̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰ ̰ !̰!"̰"#̰#$̰$%̰%&̰&'̰'(̰()̰)*̰*+̰+,̰,-̰-.̰./̰/0̰01̰12̰2:̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱ ̱ !̱!"̱"#̱#$̱$%̱%&̱&'̱'(̱()̱)*̱*+̱+,̱,-̱-.̱./̱/0̱01̱12̱23̱34̱45̱56̱67̱78̱89̱9>̲̲̲̲̲̲̲̲̲ ̲ +̲ + ̲ ̲ ̲ ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ ̲ !̲!"̲"#̲#$̲$%̲%&̲&'̲'(̲()̲)*̲*+̲+,̲,-̲-.̲./̲/0̲01̲12̲23̲34̲45̲56̲67̲78̲89̲9:̲:;̲;<̲<=̲=̴̴̴̴̴̴̴̴̴̳̳̳̳̳̳̳ ̴ +̴ + ̴ ̴ ̴ ̴̴̴̴̴̴̴̴̴̴̴̴+̵̵̵̵̵̵̵̵̵ ̵ +̵ + ̵ ̵ ̵ ̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵ ̵ !̵!"̵"#̵#$̵$%̵%&̵&'̵'(̵()̵)*̵*/̶̶̶̶̶̶̶̶̶ ̶ +̶ + ̶ ̶ ̶ ̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶ ̶ !̶!"̶"#̶#$̶$%̶%&̶&'̶'(̶()̶)*̶*+̶+,̶,-̶-.̶.6̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷ ̷ !̷!"̷"#̷#$̷$%̷%&̷&'̷'(̷()̷)*̷*+̷+,̷,-̷-.̷./̷/0̷01̷12̷23̷34̷45̷5*̸̸̸̸̸̸̸̸̸ ̸ +̸ + ̸ ̸ ̸ ̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸ ̸ !̸!"̸"#̸#$̸$%̸%&̸&'̸'(̸()̸)̹̹̹̹̹̹̹̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺̺̺̺̺̺̺̺̺̺ ̻̻̻̻̻̻̻̻̻ ̻ +̻ + ̻ ̻ ̻ ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̼̼̼̼̼̼̼̽̽̽̽̽̽̽̽̽ ̽ +̽ + ̽ ̽ ̽ ̽̽̽̽̽̽%̾̾̾̾̾̾̾̾̾ ̾ +̾ + ̾ ̾ ̾ ̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾ ̾ !̾!"̾"#̾#$̾$̿̿̿̿̿̿̿ + + ) + +  !!""##$$%%&&''((  + + * + +  !!""##$$%%&&''(()) + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC + + > + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==# + +  !!""  + + 2 + +  !!""##$$%%&&''(())**++,,--..//0011% + +  !!""##$$ + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC; + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::< + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + + / + +  !!""##$$%%&&''(())**++,,--..% + +  !!""##$$ + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + +  + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC + + < + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;% + +  !!""##$$ + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC + + @ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??% + +  !!""##$$N + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMML + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK" + +  !!m + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllD + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCZ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYX + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWW3 + +  !!""##$$%%&&''(())**++,,--..//001122 + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̡̡̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕̚̚% + +  !!""##$$U + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTT6 + +  !!""##$$%%&&''(())**++,,--..//001122334455E + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD; + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::_ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^_ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^> + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==% + +  !!""##$$9 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677885  + +      !!""##$$%%&&''(())**++,,--..//0011223344#  + +      !!""N  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM!  + +      -  + +      !!""##$$%%&&''(())**++,,  + +      + +      + +    D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC           + +                    + + + + + + + + +  + + + +  +  +  +  + + + + + + + + +-           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,#           + +                        ! !" "           + +             B  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA  + +      + +      + +    r  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqq%  + +      !!""##$$   + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +    %  + +      !!""##$$-           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,Z!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9:!:;!;<!<=!=>!>?!?@!@A!AB!BC!CD!DE!EF!FG!GH!HI!IJ!JK!KL!LM!MN!NO!OP!PQ!QR!RS!ST!TU!UV!VW!WX!XY!Y0""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",-"-."./"/3######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/0#01#12#23$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$2%%%%%%%%% % +% +&&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%Z''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'34'45'56'67'78'89'9:':;';<'<='=>'>?'?@'@A'AB'BC'CD'DE'EF'FG'GH'HI'IJ'JK'KL'LM'MN'NO'OP'PQ'QR'RS'ST'TU'UV'VW'WX'XY'YC((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+,(,-(-.(./(/0(01(12(23(34(45(56(67(78(89(9:(:;(;<(<=(=>(>?(?@(@A(AB(BE))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CD)D1********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*0+++++++),,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(0--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'(-()-)*-*+-+,-,---.-./-/2......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.1///////// / +/ ++000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*(111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'"222222222 2 +2 + 2 2 2 222222222222222222 2 !2!333333333 3 +3 +)444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4($555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#666666666 6 +6 +7777777888888888 8 +8 + 8 8 8 88888888888888888+999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*:::::::3;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;./;/0;01;12;2:<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/0>01>12>23>34>45>56>6???????@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@+AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*'BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&(CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'6DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.D./D/0D01D12D23D34D45D5*EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)FFFFFFFGGGGGGGGG G +G + G G G GGGGGGGGGGGG HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHHIIIIIIIJJJJJJJJJ J +J + J J J JJJJJJ%KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$LLLLLLLMMMMMMMMM M +M + M M M MM!NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N OOOOOOOPPPPPPPPP P +P + P P P PPPPPPPPPP"QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!RRRRRRRSSSSSSSSS S +S + S S S SSS"TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!UUUUUUUVVVVVVVVV V +V + V V V VVVVVVVVVVV#WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"XXXXXXXYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYFZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z56Z67Z78Z89Z9:Z:;Z;<Z<=Z=>Z>?Z?@Z@AZABZBCZCDZDEZED[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:;[;<[<=[=>[>?[?@[@A[AB[BC[C\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\>]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]01]12]23]34]45]56]67]78]89]9:]:;];<]<=]=2^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^16_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+,_,-_-._./_/0_01_12_23_34_45_58````````` ` +` + ` ` ` `````````````````` ` !`!"`"#`#$`$%`%&`&'`'(`()`)*`*+`+,`,-`-.`./`/0`01`12`23`34`45`56`67`7%aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbccccccccc c +c + c c c c:ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9eeeeeeeee e +e + e e Ffffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f34f45f56f67f78f89f9:f:;f;<f<=f=>f>?f?@f@AfABfBCfCDfDEfEDggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g()g)*g*+g+,g,-g-.g./g/0g01g12g23g34g45g56g67g78g89g9:g:;g;<g<=g=>g>?g?@g@AgABgBCgCGhhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$%h%&h&'h'(h()h)*h*+h+,h,-h-.h./h/0h01h12h23h34h45h56h67h78h89h9:h:;h;<h<=h=>h>?h?@h@AhABhBChCDhDEhEFhFAiiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$%i%&i&'i'(i()i)*i*+i+,i,-i-.i./i/0i01i12i23i34i45i56i67i78i89i9:i:;i;<i<=i=>i>?i?@i@-jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,"kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!lllllllll l +l + l l l lll%mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$"nnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!ooooooooo o +o + o o o o:ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9qqqqqqqqq q +q + q q Frrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r./r/0r01r12r23r34r45r56r67r78r89r9:r:;r;<r<=r=>r>?r?@r@ArABrBCrCDrDErEDsssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsABsBCsCBttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/0t01t12t23t34t45t56t67t78t89t9:t:;t;<t<=t=>t>?t?@t@AtABuuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>?u?@u@AuA-vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,#wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"xxxxxxxxx x +x + x x x xxx%yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$"zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!{{{{{{{{{ { +{ + { { { {:||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*+|+,|,-|-.|./|/0|01|12|23|34|45|56|67|78|89|9}}}}}}}}} } +} + } } F~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~56~67~78~89~9:~:;~;<~<=~=>~>?~?@~@A~AB~BC~CD~DE~ED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC(  + +      !!""##$$%%&&''<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##*  + +      !!""##$$%%&&''(())  + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##1  + +      !!""##$$%%&&''(())**++,,--..//001  + +      !!""##$$%%&&''(())**++,,--..//00  + +      + +    /  + +      !!""##$$%%&&''(())**++,,--..1  + +      !!""##$$%%&&''(())**++,,--..//00  + +    *  + +      !!""##$$%%&&''(())  + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +    %  + +      !!""##$$1  + +      !!""##$$%%&&''(())**++,,--..//00Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +&  + +      !!""##$$%%Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYE  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDE  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDE  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDE  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((0  + +      !!""##$$%%&&''(())**++,,--..//2  + +      !!""##$$%%&&''(())**++,,--..//0011  + ++  + +      !!""##$$%%&&''(())**)  + +      !!""##$$%%&&''(($  + +      !!""##  + +)  + +      !!""##$$%%&&''(($  + +      !!""##  + +)  + +      !!""##$$%%&&''(($  + +      !!""##  + +)  + +      !!""##$$%%&&''(($  + +      !!""##  + +  + +    +  + +      !!""##$$%%&&''(())**3  + +      !!""##$$%%&&''(())**++,,--..//001122:  + +      !!""##$$%%&&''(())**++,,--..//001122334455667788997  + +      !!""##$$%%&&''(())**++,,--..//001122334455667  + +      !!""##$$%%&&''(())**++,,--..//001122334455667  + +      !!""##$$%%&&''(())**++,,--..//001122334455667  + +      !!""##$$%%&&''(())**++,,--..//00112233445566  + +    +  + +      !!""##$$%%&&''(())**(  + +      !!""##$$%%&&''(  + +      !!""##$$%%&&''(  + +      !!""##$$%%&&''(  + +      !!""##$$%%&&''6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +       + +      + +    %  + +      !!""##$$  + +    "  + +      !!  + +    #  + +      !!""  + +    "  + +      !!  + +    #  + +      !!""  + +    "  + +      !!  + +    #  + +      !!""  + +    "  + +      !!  + +    #  + +      !!""  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    ?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>2  + +      !!""##$$%%&&''(())**++,,--..//00116  + +      !!""##$$%%&&''(())**++,,--..//0011223344558  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677%  + +      !!""##$$           + +                      + + + + + + + + +  + + + +  +  +  +  +:           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9           + +   F           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE ED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCL  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKB  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA-  + +      !!""##$$%%&&''(())**++,,#  + +      !!""  + +    %  + +      !!""##$$%  + +      !!""##$$"  + +      !!           + +     :!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9""""""""" " +" + " " F######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/0#01#12#23#34#45#56#67#78#89#9:#:;#;<#<=#=>#>?#?@#@A#AB#BC#CD#DE#ED$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$23$34$45$56$67$78$89$9:$:;$;<$<=$=>$>?$?@$@A$AB$BC$C+%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*?&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9:&:;&;<&<=&=>&>$''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#"((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!))))))))) ) +) + ) ) ) ))))))))))))))))#********* * +* + * * * ****************** * !*!"*"+++++++++ + ++ + + + + ++++++Y,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;<,<=,=>,>?,?@,@A,AB,BC,CD,DE,EF,FG,GH,HI,IJ,JK,KL,LM,MN,NO,OP,PQ,QR,RS,ST,TU,UV,VW,WX,XL--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'(-()-)*-*+-+,-,---.-./-/0-01-12-23-34-45-56-67-78-89-9:-:;-;<-<=-=>->?-?@-@A-AB-BC-CD-DE-EF-FG-GH-HI-IJ-JK-K......... . +. + . . . .....///////// / +/ + / / / //////////=000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-0-.0./0/000101202303404505606707808909:0:;0;<0<W111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212313414515616717818919:1:;1;<1<=1=>1>?1?@1@A1AB1BC1CD1DE1EF1FG1GH1HI1IJ1JK1KL1LM1MN1NO1OP1PQ1QR1RS1ST1TU1UV1V222222222 2 +2 + 2 2 2 22222333333333 3 +3 + 3 3 3 333%444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$555555555 5 +5 + 5 5 5 55555555555555555666666666 6 +6 + 6 6 6 6:777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979888888888 8 +8 + 8 8 999999999 9 +9 + 9 9 9 999999999::::::::: : +: + : : : ::::::F;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;./;/0;01;12;23;34;45;56;67;78;89;9:;:;;;<;<=;=>;>?;?@;@A;AB;BC;CD;DE;ED<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !<>?>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/0>01>12>23>34>45>56>67>78>89>9:>:;>;%????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@AAAAAAAAA A +A + A A A A:BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/0B01B12B23B34B45B56B67B78B89B9CCCCCCCCC C +C + C C FDDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.D./D/0D01D12D23D34D45D56D67D78D89D9:D:;D;<D<=D=>D>?D?@D@ADABDBCDCDDDEDEDEEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E78E89E9:E:;E;<E<=E=>E>?E?@E@AEABEBCEC>FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9:F:;F;<F<=F=BGGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/0G01G12G23G34G45G56G67G78G89G9:G:;G;<G<=G=>G>?G?@G@AGA-HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,#IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"JJJJJJJJJ J +J + J J J JJJ%KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$"MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!NNNNNNNNN N +N + N N N N:OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O01O12O23O34O45O56O67O78O89O9PPPPPPPPP P +P + P P FQQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q01Q12Q23Q34Q45Q56Q67Q78Q89Q9:Q:;Q;<Q<=Q=>Q>?Q?@Q@AQABQBCQCDQDEQEDRRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9:R:;R;<R<=R=>R>?R?@R@ARABRBCRC+SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*?TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=>T>$UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#"VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWW#XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"YYYYYYYYY Y +Y + Y Y Y YYYYYYYZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z56Z67Z78Z89Z9:Z:;Z;<Z<=Z=>Z>?Z?@Z@AZABZBCZCDZDEZEFZFGZGHZHIZIJZJKZKLZLMZMNZNOZOPZPQZQRZRSZSTZTUZUVZVWZWXZXL[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:;[;<[<=[=>[>?[?@[@A[AB[BC[CD[DE[EF[FG[GH[HI[IJ[JK[K\\\\\\\\\ \ +\ + \ \ \ \\\\\]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]=^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^12^23^34^45^56^67^78^89^9:^:;^;<^<W_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+,_,-_-._./_/0_01_12_23_34_45_56_67_78_89_9:_:;_;<_<=_=>_>?_?@_@A_AB_BC_CD_DE_EF_FG_GH_HI_IJ_JK_KL_LM_MN_NO_OP_PQ_QR_RS_ST_TU_UV_V````````` ` +` + ` ` ` `````aaaaaaaaa a +a + a a a aaa%bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$ccccccccc c +c + c c c cccccccccccccccccddddddddd d +d + d d d d:eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-.e./e/0e01e12e23e34e45e56e67e78e89e9fffffffff f +f + f f ggggggggg g +g + g g g ggggggggghhhhhhhhh h +h + h h h hhhhhhFiiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$%i%&i&'i'(i()i)*i*+i+,i,-i-.i./i/0i01i12i23i34i45i56i67i78i89i9:i:;i;<i<=i=>i>?i?@i@AiABiBCiCDiDEiEDjjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23j34j45j56j67j78j89j9:j:;j;<j<=j=>j>?j?@j@AjABjBCjCkkkkkkkkk k +k + k k k kkkkkkkkkkkkk<lllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,-l-.l./l/0l01l12l23l34l45l56l67l78l89l9:l:;l;%mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$nnnnnnnnn n +n + n n n nnnnnnnnnnnnnnooooooooo o +o + o o o o:ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9qqqqqqqqq q +q + q q Frrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r./r/0r01r12r23r34r45r56r67r78r89r9:r:;r;<r<=r=>r>?r?@r@ArABrBCrCDrDErEDsssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsABsBCsC>ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/0t01t12t23t34t45t56t67t78t89t9:t:;t;<t<=t=Buuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>?u?@u@AuA-vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,#wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"xxxxxxxxx x +x + x x x xxx%yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$"{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!||||||||| | +| + | | | |:}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/0}01}12}23}34}45}56}67}78}89}9~~~~~~~~~ ~ +~ + ~ ~ F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##"  + +      !!  + +    #  + +      !!""  + +    Y  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXL  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK  + +      + +    =  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<W  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVV  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==B  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA-  + +      !!""##$$%%&&''(())**++,,#  + +      !!""  + +    %  + +      !!""##$$%  + +      !!""##$$"  + +      !!  + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##"  + +      !!  + +    #  + +      !!""  + +    Y  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXL  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK  + +      + +    =  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<W  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVV  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +    %  + +      !!""##$$1  + +      !!""##$$%%&&''(())**++,,--..//00Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +&  + +      !!""##$$%%Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYG  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFG  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFG  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFG  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFF1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((0  + +      !!""##$$%%&&''(())**++,,--..//2  + +      !!""##$$%%&&''(())**++,,--..//0011  + ++  + +      !!""##$$%%&&''(())***  + +      !!""##$$%%&&''(())&  + +      !!""##$$%%  + +*  + +      !!""##$$%%&&''(())&  + +      !!""##$$%%  + +*  + +      !!""##$$%%&&''(())&  + +      !!""##$$%%  + +*  + +      !!""##$$%%&&''(())&  + +      !!""##$$%%  + +  + +    +  + +      !!""##$$%%&&''(())**3  + +      !!""##$$%%&&''(())**++,,--..//001122:  + +      !!""##$$%%&&''(())**++,,--..//001122334455667788998  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677  + +    +  + +      !!""##$$%%&&''(())**)  + +      !!""##$$%%&&''(()  + +      !!""##$$%%&&''(()  + +      !!""##$$%%&&''(()  + +      !!""##$$%%&&''((6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +       + +      + +    %  + +      !!""##$$  + +    #  + +      !!""  + +    $  + +      !!""##        + + + + + + + + +  + + + +  +  +  +  + + + +#           + +                        ! !" "                  + +                $  + +      !!""##  + +    #  + +      !!""  + +    $  + +      !!""##  + +    #  + +      !!""  + +    $  + +      !!""##  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    ?           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >2!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!16""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",-"-."./"/0"01"12"23"34"45"58######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/0#01#12#23#34#45#56#67#7%$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%&&&&&&&&& & +& + & & & &:''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'34'45'56'67'78'89'9((((((((( ( +( + ( ( F))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CD)DE)ED********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*01*12*23*34*45*56*67*78*89*9:*:;*;<*<=*=>*>?*?@*@A*AB*BC*C+++++++++ + ++ + + + + +++++++++++++<,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;%--------- - +- + - - - ------------------ - !-!"-"#-#$-$......... . +. + . . . ..............///////// / +/ + / / / /:000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-0-.0./0/000101202303404505606707808909111111111 1 +1 + 1 1 F222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<=2=>2>?2?@2@A2AB2BC2CD2DE2ED333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3=>3>?3?@3@A3AB3BC3CC444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848949:4:;4;<4<=4=>4>?4?@4@A4AB4BB555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050151252353454555656757858959:5:;5;<5<=5=>5>?5?@5@A5A-666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,$777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#888888888 8 +8 + 8 8 8 888%999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$";;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!<<<<<<<<< < +< + < < < <:========= = += + = = = ================== = !=!"="#=#$=$%=%&=&'='(=()=)*=*+=+,=,-=-.=./=/0=01=12=23=34=45=56=67=78=89=9>>>>>>>>> > +> + > > F????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?23?34?45?56?67?78?89?9:?:;?;<?<=?=>?>???@?@A?AB?BC?CD?DE?ED@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AB@BC@C+AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*?BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/0B01B12B23B34B45B56B67B78B89B9:B:;B;<B<=B=>B>$CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#"DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEE$FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#GGGGGGGGG G +G + G G G GGGGGGYHHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,-H-.H./H/0H01H12H23H34H45H56H67H78H89H9:H:;H;<H<=H=>H>?H?@H@AHABHBCHCDHDEHEFHFGHGHHHIHIJHJKHKLHLMHMNHNOHOPHPQHQRHRSHSTHTUHUVHVWHWXHXLIIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9:I:;I;<I<=I=>I>?I?@I@AIABIBCICDIDEIEFIFGIGHIHIIIJIJKIKJJJJJJJJJ J +J + J J J JJJJJKKKKKKKKK K +K + K K K KKKKKKKKKK=LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&'L'(L()L)*L*+L+,L,-L-.L./L/0L01L12L23L34L45L56L67L78L89L9:L:;L;<L<WMMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)*M*+M+,M,-M-.M./M/0M01M12M23M34M45M56M67M78M89M9:M:;M;<M<=M=>M>?M?@M@AMABMBCMCDMDEMEFMFGMGHMHIMIJMJKMKLMLMMMNMNOMOPMPQMQRMRSMSTMTUMUVMVNNNNNNNNN N +N + N N N NNNNNOOOOOOOOO O +O + O O O OOO%PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQRRRRRRRRR R +R + R R R R:SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+,S,-S-.S./S/0S01S12S23S34S45S56S67S78S89S9TTTTTTTTT T +T + T T UUUUUUUUU U +U + U U U UUUUUUUUUVVVVVVVVV V +V + V V V VVVVVVFWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEDXXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>?X?@X@AXABXBCXCYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYY<ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z56Z67Z78Z89Z9:Z:;Z;%[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\]]]]]]]]] ] +] + ] ] ] ]:^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^12^23^34^45^56^67^78^89^9_________ _ +_ + _ _ F````````` ` +` + ` ` ` `````````````````` ` !`!"`"#`#$`$%`%&`&'`'(`()`)*`*+`+,`,-`-.`./`/0`01`12`23`34`45`56`67`78`89`9:`:;`;<`<=`=>`>?`?@`@A`AB`BC`CD`DE`EDaaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a56a67a78a89a9:a:;a;<a<=a=>a>?a?@a@AaABaBCaC>bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&'b'(b()b)*b*+b+,b,-b-.b./b/0b01b12b23b34b45b56b67b78b89b9:b:;b;<b<=b=Bccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c01c12c23c34c45c56c67c78c89c9:c:;c;<c<=c=>c>?c?@c@AcA-ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,$eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#fffffffff f +f + f f f fff%ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$"iiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!jjjjjjjjj j +j + j j j j:kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k23k34k45k56k67k78k89k9lllllllll l +l + l l Fmmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23m34m45m56m67m78m89m9:m:;m;<m<=m=>m>?m?@m@AmABmBCmCDmDEmEDnnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n23n34n45n56n67n78n89n9:n:;n;<n<=n=>n>?n?@n@AnABnBCnC+ooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*?ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>$qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#"rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!sssssssss s +s + s s s ssssssssssssssss$ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#uuuuuuuuu u +u + u u u uuuuuuYvvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v45v56v67v78v89v9:v:;v;<v<=v=>v>?v?@v@AvABvBCvCDvDEvEFvFGvGHvHIvIJvJKvKLvLMvMNvNOvOPvPQvQRvRSvSTvTUvUVvVWvWXvXLwwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w./w/0w01w12w23w34w45w56w67w78w89w9:w:;w;<w<=w=>w>?w?@w@AwABwBCwCDwDEwEFwFGwGHwHIwIJwJKwKxxxxxxxxx x +x + x x x xxxxxyyyyyyyyy y +y + y y y yyyyyyyyyy=zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z01z12z23z34z45z56z67z78z89z9:z:;z;<z<W{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>?{?@{@A{AB{BC{CD{DE{EF{FG{GH{HI{IJ{JK{KL{LM{MN{NO{OP{PQ{QR{RS{ST{TU{UV{V||||||||| | +| + | | | |||||}}}}}}}}} } +} + } } } }}}%~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==B  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA-  + +      !!""##$$%%&&''(())**++,,$  + +      !!""##  + +    %  + +      !!""##$$%  + +      !!""##$$"  + +      !!  + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##"  + +      !!  + +    $  + +      !!""##  + +    Y  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXL  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK  + +      + +    =  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<W  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVV  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==B  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA-  + +      !!""##$$%%&&''(())**++,,$  + +      !!""##  + +    %  + +      !!""##$$%  + +      !!""##$$"  + +      !!  + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##"  + +      !!  + +    $  + +      !!""##  + +    Y  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXL  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK  + +      + +    =  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<W  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVV  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +    %  + +      !!""##$$)  + +      !!""##$$%%&&''((Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +&  + +      !!""##$$%%Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYC  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBE  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDM  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLN  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMW  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVV1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((0  + +      !!""##$$%%&&''(())**++,,--..//2  + +      !!""##$$%%&&''(())**++,,--..//0011  + ++  + +      !!""##$$%%&&''(())**(  + +      !!""##$$%%&&''"  + +      !!  + +)  + +      !!""##$$%%&&''(($  + +      !!""##  + +-  + +      !!""##$$%%&&''(())**++,,,  + +      !!""##$$%%&&''(())**++  + +  + +    +  + +      !!""##$$%%&&''(())**3  + +      !!""##$$%%&&''(())**++,,--..//001122:           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 96 + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +57           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 6;           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :=           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <@  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??  + +    +  + +      !!""##$$%%&&''(())**'  + +      !!""##$$%%&&(  + +      !!""##$$%%&&'',  + +      !!""##$$%%&&''(())**++.  + +      !!""##$$%%&&''(())**++,,--1  + +      !!""##$$%%&&''(())**++,,--..//006  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +       + +      + +    %  + +      !!""##$$           + +      !!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! """""""######### # +# + # # # ##########"$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!%%%%%%%&&&&&&&&& & +& + & & & &&&"''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!((((((())))))))) ) +) + ) ) ) )))))))))))#********* * +* + * * * ****************** * !*!"*"+++++++,,,,,,,,, , +, + , , , ,,,,,,,&--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%.......///////// / +/ + / / / ///////////////'000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&1111111222222222 2 +2 + 2 2 2 222222222(333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'4444444555555555 5 +5 + 5 5 5 55555555555555555)666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6(7777777888888888 8 +8 + 8 8 8 888888888888+999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*:::::::";;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!,<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>>> > +> + > > > >>>>>>>>>F????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?23?34?45?56?67?78?89?9:?:;?;<?<=?=>?>???@?@A?AB?BC?CD?DE?ED@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AB@BC@CAAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAA?BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/0B01B12B23B34B45B56B67B78B89B9:B:;B;<B<=B=>B>2CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)*C*+C+,C,-C-.C./C/0C01C16DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.D./D/0D01D12D23D34D45D58EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E7%FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGHHHHHHHHH H +H + H H H H:IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9JJJJJJJJJ J +J + J J FKKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K45K56K67K78K89K9:K:;K;<K<=K=>K>?K?@K@AKABKBCKCDKDEKEDLLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&'L'(L()L)*L*+L+,L,-L-.L./L/0L01L12L23L34L45L56L67L78L89L9:L:;L;<L<=L=>L>?L?@L@ALABLBCLCIMMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)*M*+M+,M,-M-.M./M/0M01M12M23M34M45M56M67M78M89M9:M:;M;<M<=M=>M>?M?@M@AMABMBCMCDMDEMEFMFGMGHMHBNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9:N:;N;<N<=N=>N>?N?@N@ANA-OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,"PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!QQQQQQQQQ Q +Q + Q Q Q QQQ%RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$"SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!TTTTTTTTT T +T + T T T T:UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)*U*+U+,U,-U-.U./U/0U01U12U23U34U45U56U67U78U89U9VVVVVVVVV V +V + V V FWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEDXXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>?X?@X@AXABXBCXCDYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y89Y9:Y:;Y;<Y<=Y=>Y>?Y?@Y@AYABYBCYCBZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z56Z67Z78Z89Z9:Z:;Z;<Z<=Z=>Z>?Z?@Z@AZA-[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,#\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"]]]]]]]]] ] +] + ] ] ] ]]]%^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$"_________ _ +_ + _ _ _ __________________ _ !_!````````` ` +` + ` ` ` `:aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a56a67a78a89a9bbbbbbbbb b +b + b b Fccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c01c12c23c34c45c56c67c78c89c9:c:;c;<c<=c=>c>?c?@c@AcABcBCcCDcDEcEDddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;<d<=d=>d>?d?@d@AdABdBCdC;eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-.e./e/0e01e12e23e34e45e56e67e78e89e9:e:Bfffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f34f45f56f67f78f89f9:f:;f;<f<=f=>f>?f?@f@AfA-ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g()g)*g*+g+,g,'hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$%h%&h&iiiiiiiii i +i + i i i iii%jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$"kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!lllllllll l +l + l l l l:mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23m34m45m56m67m78m89m9nnnnnnnnn n +n + n n Fooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*+o+,o,-o-.o./o/0o01o12o23o34o45o56o67o78o89o9:o:;o;<o<=o=>o>?o?@o@AoABoBCoCDoDEoEDppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpC(qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'<rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r./r/0r01r12r23r34r45r56r67r78r89r9:r:;r;%sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$ttttttttt t +t + t t t ttttttttttttttuuuuuuuuu u +u + u u u u:vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v45v56v67v78v89v9wwwwwwwww w +w + w w Fxxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x/0x01x12x23x34x45x56x67x78x89x9:x:;x;<x<=x=>x>?x?@x@AxABxBCxCDxDExEDyyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9:y:;y;<y<=y=>y>?y?@y@AyAByBCyC+zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*?{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>$||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#*}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC+  + +      !!""##$$%%&&''(())**?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>$  + +      !!""##6  + +      !!""##$$%%&&''(())**++,,--..//001122334455.  + +      !!""##$$%%&&''(())**++,,--/  + +      !!""##$$%%&&''(())**++,,--..)  + +      !!""##$$%%&&''(($  + +      !!""##  + +      + +    6  + +      !!""##$$%%&&''(())**++,,--..//001122334455u  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrsstt  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̣̣̤̤̥̥̦̦̩̩̪̪̫̫̬̬̭̭̮̮̯̯̰̰̱̱̲̲̳̳̹̹̺̺̻̻̼̼̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̽̽̾̾̿̿̕̕̚̚”ÔĔŔƔǔȔɔʔ˔͔̔ΔϔДєҔӔԔՔ֔הؔٔڔ۔ܔݔޔߔ  + +      + +    .  + +      !!""##$$%%&&''(())**++,,---  + +      !!""##$$%%&&''(())**++,,)  + +      !!""##$$%%&&''(($  + +      !!""##  + +      + +    *  + +      !!""##$$%%&&''(())  + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +    %  + +      !!""##$$.  + +      !!""##$$%%&&''(())**++,,--Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +&  + +      !!""##$$%%Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYC  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBE  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDM  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLN  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMW  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVM  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLL1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((0  + +      !!""##$$%%&&''(())**++,,--..//2  + +      !!""##$$%%&&''(())**++,,--..//0011  + ++  + +      !!""##$$%%&&''(())**(  + +      !!""##$$%%&&''"  + +      !!  + +)  + +      !!""##$$%%&&''(($  + +      !!""##  + +-  + +      !!""##$$%%&&''(())**++,,,  + +      !!""##$$%%&&''(())**++  + +-  + +      !!""##$$%%&&''(())**++,,,  + +      !!""##$$%%&&''(())**++  + +  + +    +  + +      !!""##$$%%&&''(())**3  + +      !!""##$$%%&&''(())**++,,--..//001122:  + +      !!""##$$%%&&''(())**++,,--..//001122334455667788996  + +      !!""##$$%%&&''(())**++,,--..//0011223344557  + +      !!""##$$%%&&''(())**++,,--..//00112233445566;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<@  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::  + +    +  + +      !!""##$$%%&&''(())**'  + +      !!""##$$%%&&(  + +      !!""##$$%%&&'',  + +      !!""##$$%%&&''(())**++.  + +      !!""##$$%%&&''(())**++,,--1  + +      !!""##$$%%&&''(())**++,,--..//00,  + +      !!""##$$%%&&''(())**++6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +       + +      + +    %  + +      !!""##$$  + +    !  + +        + +    "  + +      !!  + +    "  + +      !!  + +    #  + +      !!""  + +    &  + +      !!""##$$%%  + +    '  + +      !!""##$$%%&&  + +    (  + +      !!""##$$%%&&''  + +    )  + +      !!""##$$%%&&''((  + +    +  + +      !!""##$$%%&&''(())**"  + +      !!,  + +      !!""##$$%%&&''(())**++  + +    &           + +                        ! !" "# #$ $% % + + + + + + +           + +                   '           + +                        ! !" "# #$ $% %& &         + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    ?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>2  + +      !!""##$$%%&&''(())**++,,--..//00116  + +      !!""##$$%%&&''(())**++,,--..//0011223344558  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCI  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHB  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA-  + +      !!""##$$%%&&''(())**++,,"           + +                        ! !!!!!!!!!! ! +! + ! ! ! !!!%""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$"######### # +# + # # # ################## # !#!$$$$$$$$$ $ +$ + $ $ $ $:%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%56%67%78%89%9&&&&&&&&& & +& + & & F''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'34'45'56'67'78'89'9:':;';<'<='=>'>?'?@'@A'AB'BC'CD'DE'ED((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+,(,-(-.(./(/0(01(12(23(34(45(56(67(78(89(9:(:;(;<(<=(=>(>?(?@(@A(AB(BC(CD))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CB********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*01*12*23*34*45*56*67*78*89*9:*:;*;<*<=*=>*>?*?@*@A*A-+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,#,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","--------- - +- + - - - ---%......... . +. + . . . .................. . !.!"."#.#$.$"///////// / +/ + / / / ////////////////// / !/!000000000 0 +0 + 0 0 0 0:111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212313414515616717818919222222222 2 +2 + 2 2 F333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3=>3>?3?@3@A3AB3BC3CD3DE3ED444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848949:4:;4;<4<=4=>4>?4?@4@A4AB4BC4C;555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050151252353454555656757858959:5:B666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/060161262363464565666767868969:6:;6;<6<=6=>6>?6?@6@A6A-777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,'888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&999999999 9 +9 + 9 9 9 999%::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$";;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!<<<<<<<<< < +< + < < < <:========= = += + = = = ================== = !=!"="#=#$=$%=%&=&'='(=()=)*=*+=+,=,-=-.=./=/0=01=12=23=34=45=56=67=78=89=9>>>>>>>>> > +> + > > F????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?23?34?45?56?67?78?89?9:?:;?;<?<=?=>?>???@?@A?AB?BC?CD?DE?ED@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AB@BC@C(AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'<BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/0B01B12B23B34B45B56B67B78B89B9:B:;B;%CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDEEEEEEEEE E +E + E E E E:FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9GGGGGGGGG G +G + G G FHHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,-H-.H./H/0H01H12H23H34H45H56H67H78H89H9:H:;H;<H<=H=>H>?H?@H@AHABHBCHCDHDEHEDIIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9:I:;I;<I<=I=>I>?I?@I@AIABIBCIC+JJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*?KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K45K56K67K78K89K9:K:;K;<K<=K=>K>$LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#*MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)NNNNNNNNN N +N + N N N NNN%OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPQQQQQQQQQ Q +Q + Q Q Q Q:RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9SSSSSSSSS S +S + S S TTTTTTTTT T +T + T T T TTTTTTTTTFUUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)*U*+U+,U,-U-.U./U/0U01U12U23U34U45U56U67U78U89U9:U:;U;<U<=U=>U>?U?@U@AUABUBCUCDUDEUEDVVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>?V?@V@AVABVBCVC+WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*?XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>$YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#6ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z5.[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-/\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$%\%&\&'\'(\()\)*\*+\+,\,-\-.\.)]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]($^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#_________ _ +_ + _ _ _ ___________````````` ` +` + ` ` ` `````6aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a5)bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&'b'(b(&ccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%(ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'0eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-.e./e/4fffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f39ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g()g)*g*+g+,g,-g-.g./g/0g01g12g23g34g45g56g67g78g8hhhhhhhhh h +h + h h h hhhhhhhhhhhiiiiiiiii i +i + i i i iiiiijjjjjjjjj j +j + j j j jjjjjjjjjj.kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k--lllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,)mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m($nnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#ooooooooo o +o + o o o oooooooooooppppppppp p +p + p p p pppppqqqqqqqqq q +q + q q q qqq%rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$sssssssss s +s + s s s sssssssssssssssssttttttttt t +t + t t t t:uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9vvvvvvvvv v +v + v v wwwwwwwww w +w + w w w wwwwwwwwwFxxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x/0x01x12x23x34x45x56x67x78x89x9:x:;x;<x<=x=>x>?x?@x@AxABxBCxCDxDExEDyyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9:y:;y;<y<=y=>y>?y?@y@AyAByBCyC-zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,?{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>$||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#0}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~56~67~78~89~9:~:;~;<~<=~=>~>?~?@~@A~AB~BC~CD~DE~EF~FG~GH~HI~IJ~JK~KL~LM~MN~NO~OP~PQ~QR~RS~ST~TU~UV~VW~WX~XY~YZ~Z[~[\~\]~]^~^_~_`~`a~ab~bc~cd~de~ef~fg~gh~hi~ij~jk~kl~lm~mn~no~op~pq~qr~rs~st~tu~uv~vw~wx~xy~yz~z{~{|~|}~}~~~~̀~̀́~́̂~̂̃~̃̄~̄̅~̅̆~̆̇~̇̈~̈̉~̉̊~̊̋~̋̌~̌̍~̍̎~̎̏~̏̐~̐̑~̑̒~̒̓~̓̔~̔̕~̖̕~̖̗~̗̘~̘̙~̙̚~̛̚~̛̜~̜̝~̝̞~̞̟~̟̠~̡̠~̡̢~̢̣~̣̤~̤̥~̥̦~̧̦~̧̨~̨̩~̩̪~̪̫~̫̬~̬  + +    *  + +      !!""##$$%%&&''(())  + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +    %  + +      !!""##$$"  + +      !!rHdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherItypestartenddeclarationspecifierssourceExportNamedDeclarationhurJtypestartendidsuperClassbodyClassDeclarationourKtypestartendnameIdentifierùLabelReviseKIdentifier̉̏ViewPUrLtypestartendbodyClassBody̐urMtypestartendstaticcomputedkeykindvalueMethodDefinition̗KIdentifier̢̗constructorconstructorrNtypestartendidexpressiongeneratorasyncparamsbodyFunctionExpression̢•KIdentifieṛ̩parentKIdentifier̫̱paramsKIdentifier̳__localStoragerOtypestartendleftrightAssignmentPatternKIdentifierɦelmtIdrPtypestartendoperatorprefixargumentUnaryExpressionΡ-rQtypestartendvaluerawLiteral1OAssignmentPatternKIdentifierܬparamsLambdaKIdentifierundefinedLBlockStatementrRtypestartendexpressionExpressionStatementrStypestartendcalleeargumentsoptionalCallExpressionrTtypestartendSuperKIdentifierparentKIdentifier__localStorageKIdentifierelmtIdrUtypestartendtestconsequentalternateIfStatement%rVtypestartendleftoperatorrightBinaryExpression)KPUnaryExpression)XMemberExpression,KIdentifierColumnKIdentifier,justifyContent‘XMemberExpression-=KIdentifier-6FlexAlignKIdentifier7=CenterRExpressionStatementMwSCallExpressionMvXMemberExpressionM^KIdentifierMSColumnKIdentifierT^alignItems‘XMemberExpression_uKIdentifier_nHorizontalAlignKIdentifierouCenterUIfStatementPUnaryExpression!KIdentifierisInitialRenderLBlockStatementʑRExpressionStatementSCallExpressionXMemberExpressionKIdentifierColumnKIdentifierpopRExpressionStatement SCallExpression XMemberExpression KIdentifierViewStackProcessorKIdentifier StopGetAccessRecordingRExpressionStatement  SCallExpression  XMemberExpression  8TThisExpression  KIdentifier 8observeComponentCreation‘NArrowFunctionExpression 9 ’KIdentifier : @elmtIdKIdentifier B QisInitialRenderLBlockStatement V RExpressionStatement e SCallExpression e XMemberExpression e KIdentifier e wViewStackProcessorKIdentifier x StartGetAccessRecordingFor‘KIdentifier elmtIdRExpressionStatement SCallExpression XMemberExpression KIdentifier TextKIdentifier create‘VBinaryExpression QLiteral 原标签: "原标签: "+XMemberExpression XMemberExpression TThisExpression KIdentifier ʦsimObjKIdentifier ӨobjLabelRExpressionStatement +SCallExpression +XMemberExpression KIdentifier TextKIdentifier debugLine‘QLiteral +components/Dialog.ets(14:7)"components/Dialog.ets(14:7)"RExpressionStatement + +1SCallExpression + +0XMemberExpression + +,KIdentifier + +#TextKIdentifier +$ +,fontSize‘QLiteral +- +/28RExpressionStatement +? +ZSCallExpression +? +YXMemberExpression +? +MKIdentifier +? +CTextKIdentifier +D +MfontColor‘XMemberExpression +N +XKIdentifier +N +SColorKIdentifier +T +XGrayRExpressionStatement +h +zSCallExpression +h +yXMemberExpression +h +rKIdentifier +h +lTextKIdentifier +m +rwidth‘QLiteral +s +x80%'80%'UIfStatement + +PUnaryExpression + +!KIdentifier + +isInitialRenderLBlockStatement + +ˑRExpressionStatement + +SCallExpression + +XMemberExpression + +KIdentifier + +TextKIdentifier + +popRExpressionStatement + SCallExpression + XMemberExpression + KIdentifier + +ViewStackProcessorKIdentifier + StopGetAccessRecordingRExpressionStatement  'SCallExpression  &XMemberExpression  $KIdentifier  TextKIdentifier ! $popRExpressionStatement 1 SCallExpression 1 XMemberExpression 1 NTThisExpression 1 5KIdentifier 6 NobserveComponentCreation‘NArrowFunctionExpression O ’KIdentifier P VelmtIdKIdentifier X gisInitialRenderLBlockStatement l RExpressionStatement { SCallExpression { XMemberExpression { KIdentifier { ViewStackProcessorKIdentifier StartGetAccessRecordingFor‘KIdentifier elmtIdRExpressionStatement SCallExpression XMemberExpression KIdentifier £RowKIdentifier ɦcreateRExpressionStatement SCallExpression XMemberExpression KIdentifier ݣRowKIdentifier debugLine‘QLiteral components/Dialog.ets(19:7)"components/Dialog.ets(19:7)"RExpressionStatement  &SCallExpression  %XMemberExpression  KIdentifier  RowKIdentifier  width‘QLiteral  $80%'80%'UIfStatement 4 vPUnaryExpression 8 H!KIdentifier 9 HisInitialRenderLBlockStatement J vRExpressionStatement ] gSCallExpression ] fXMemberExpression ] dKIdentifier ] `RowKIdentifier a dpopRExpressionStatement SCallExpression XMemberExpression KIdentifier ViewStackProcessorKIdentifier StopGetAccessRecordingRExpressionStatement SCallExpression XMemberExpression TThisExpression KIdentifier observeComponentCreation‘NArrowFunctionExpression ’KIdentifier elmtIdKIdentifier isInitialRenderLBlockStatement RExpressionStatement  GSCallExpression  FXMemberExpression  >KIdentifier  #ViewStackProcessorKIdentifier $ >StartGetAccessRecordingFor‘KIdentifier ? EelmtIdRExpressionStatement U iSCallExpression U hXMemberExpression U `KIdentifier U YTextKIdentifier Z `create‘QLiteral a g新标签:"新标签:"RExpressionStatement w SCallExpression w XMemberExpression w KIdentifier w {TextKIdentifier | debugLine‘QLiteral components/Dialog.ets(20:9)"components/Dialog.ets(20:9)"RExpressionStatement SCallExpression XMemberExpression KIdentifier TextKIdentifier fontSize‘QLiteral 28RExpressionStatement SCallExpression XMemberExpression KIdentifier פTextKIdentifier fontColor‘XMemberExpression KIdentifier ColorKIdentifier GrayUIfStatement ?PUnaryExpression!KIdentifierisInitialRenderLBlockStatement?RExpressionStatement%0SCallExpression%/XMemberExpression%-KIdentifier%)TextKIdentifier*-popRExpressionStatementMySCallExpressionMxXMemberExpressionMvKIdentifierM_ViewStackProcessorKIdentifier`vStopGetAccessRecordingRExpressionStatementSCallExpressionXMemberExpressionKIdentifierTextKIdentifierpopRExpressionStatementSCallExpressionXMemberExpressionTThisExpressionKIdentifier¸observeComponentCreation‘NArrowFunctionExpression’KIdentifierʦelmtIdKIdentifierۯisInitialRenderLBlockStatementƗRExpressionStatement%SCallExpression$XMemberExpressionKIdentifierViewStackProcessorKIdentifierStartGetAccessRecordingFor‘KIdentifier#elmtIdRExpressionStatement3_SCallExpression3^XMemberExpression3CKIdentifier3MisInitialRenderLBlockStatementORExpressionStatementbrSCallExpressionbqXMemberExpressionboKIdentifierbkTextInputKIdentifierlopopRExpressionStatementSCallExpressionXMemberExpressionKIdentifierViewStackProcessorKIdentifierStopGetAccessRecordingRExpressionStatementSCallExpressionXMemberExpressionKIdentifierգRowKIdentifier٣popRExpressionStatementSCallExpressionXMemberExpressionTThisExpressionKIdentifierobserveComponentCreation‘NArrowFunctionExpression’KIdentifier elmtIdKIdentifier isInitialRenderLBlockStatement!RExpressionStatement0fSCallExpression0eXMemberExpression0]KIdentifier0BViewStackProcessorKIdentifierC]StartGetAccessRecordingFor‘KIdentifier^delmtIdRExpressionStatementtSCallExpressiontXMemberExpressiont~KIdentifiertwRowKIdentifierx~create‘[ObjectExpression\PropertyKIdentifierspaceQLiteral(40initRExpressionStatementSCallExpressionXMemberExpressionKIdentifierRowKIdentifierdebugLine‘QLiteralǻcomponents/Dialog.ets(32:7)"components/Dialog.ets(32:7)"RExpressionStatementSCallExpressionXMemberExpressionKIdentifierڣRowKIdentifiermargin‘[ObjectExpression\PropertyKIdentifiertopQLiteral5initUIfStatement>PUnaryExpression!KIdentifierisInitialRenderLBlockStatement>RExpressionStatement%/SCallExpression%.XMemberExpression%,KIdentifier%(RowKIdentifier),popRExpressionStatementLxSCallExpressionLwXMemberExpressionLuKIdentifierL^ViewStackProcessorKIdentifier_uStopGetAccessRecordingRExpressionStatementSCallExpressionXMemberExpressionTThisExpressionKIdentifierobserveComponentCreation‘NArrowFunctionExpression’KIdentifierelmtIdKIdentifierůisInitialRenderLBlockStatementRExpressionStatementSCallExpressionXMemberExpressionKIdentifierViewStackProcessorKIdentifierStartGetAccessRecordingFor‘KIdentifier elmtIdRExpressionStatement:SCallExpression9XMemberExpression3KIdentifier#ButtonKIdentifier$3createWithLabel‘QLiteral48取消"取消"RExpressionStatementHxSCallExpressionHwXMemberExpressionHXKIdentifierHNButtonKIdentifierOXdebugLine‘QLiteralYvcomponents/Dialog.ets(33:9)"components/Dialog.ets(33:9)"RExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifierheight‘QLiteral#35RExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifieronClick‘NArrowFunctionExpressionLBlockStatementRExpressionStatementSCallExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifierݪcontrollerKIdentifiercloseUIfStatementJPUnaryExpression !KIdentifier +isInitialRenderLBlockStatementJRExpressionStatement.;SCallExpression.:XMemberExpression.8KIdentifier.4ButtonKIdentifier58popRExpressionStatementXSCallExpressionXXMemberExpressionXKIdentifierXjViewStackProcessorKIdentifierkStopGetAccessRecordingRExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifierpopRExpressionStatementSCallExpressionXMemberExpressionTThisExpressionKIdentifierϸobserveComponentCreation‘NArrowFunctionExpression’KIdentifierצelmtIdKIdentifierisInitialRenderLBlockStatementRExpressionStatement2SCallExpression1XMemberExpression)KIdentifierViewStackProcessorKIdentifier)StartGetAccessRecordingFor‘KIdentifier*0elmtIdRExpressionStatement@]SCallExpression@\XMemberExpression@VKIdentifier@FButtonKIdentifierGVcreateWithLabel‘QLiteralW[确定"确定"RExpressionStatementkSCallExpressionkXMemberExpressionk{KIdentifierkqButtonKIdentifierr{debugLine‘QLiteral|components/Dialog.ets(39:9)"components/Dialog.ets(39:9)"RExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifierheight‘QLiteral#35RExpressionStatementQSCallExpressionPXMemberExpressionKIdentifierϦButtonKIdentifierקonClick‘NArrowFunctionExpressionOLBlockStatementORExpressionStatementWAssignmentExpression=XMemberExpressionXMemberExpressionTThisExpressionKIdentifiersimObjKIdentifierobjLabelXMemberExpressionTThisExpression KIdentifier newLabelRExpressionStatement(@SCallExpression(?XMemberExpression(=XMemberExpression(7TThisExpression(,KIdentifier-7controllerKIdentifier8=closeUIfStatement_PUnaryExpressioncs!KIdentifierdsisInitialRenderLBlockStatementuRExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifierpopRExpressionStatementSCallExpressionXMemberExpressionKIdentifierIJViewStackProcessorKIdentifier۶StopGetAccessRecordingRExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifierpopRExpressionStatement SCallExpression XMemberExpression KIdentifier RowKIdentifierpopRExpressionStatement -SCallExpression ,XMemberExpression *KIdentifier &ColumnKIdentifier'*popMMethodDefinition:rKIdentifier:BrerendermethodNFunctionExpressionBrLBlockStatementErRExpressionStatementPkSCallExpressionPjXMemberExpressionPhTThisExpressionPTKIdentifierUhupdateDirtyElementsIExportNamedDeclarationw-JClassDeclaration~-KIdentifierLineDeleteKIdentifierViewPULClassBody-MMethodDefinitionKIdentifierconstructorconstructorNFunctionExpression•KIdentifierparentKIdentifierparamsKIdentifierϮ__localStorageOAssignmentPatternKIdentifierצelmtIdPUnaryExpressionܡ-QLiteral1OAssignmentPatternKIdentifierparamsLambdaKIdentifierundefinedLBlockStatementRExpressionStatement)SCallExpression(TSuperKIdentifier parentKIdentifier__localStorageKIdentifier!'elmtIdUIfStatement3VBinaryExpression7YPUnaryExpression7JtypeofKIdentifier>JparamsLambda===QLiteralOYfunction"function"LBlockStatement[RExpressionStatementjWAssignmentExpressionj=XMemberExpressionjTThisExpressionjnKIdentifieroparamsGenerator_KIdentifierparamsLambdaRExpressionStatementWAssignmentExpression=XMemberExpressionTThisExpressionKIdentifiercontrollerKIdentifierundefinedRExpressionStatementWAssignmentExpression=XMemberExpressionTThisExpressionKIdentifierר__simObjYNewExpressionKIdentifierSynchedPropertyNesedObjectPUXMemberExpressionKIdentifierparamsKIdentifiersimObjTThisExpression +QLiteralsimObj"simObj"RExpressionStatement$kWAssignmentExpression$j=XMemberExpression$5TThisExpression$(KIdentifier)5__allSimConnSCallExpression8jXMemberExpression8NTThisExpression8&Dcreate‘[ObjectExpression&E' \Property&l&KIdentifier&l&scontentVBinaryExpression&u&VBinaryExpression&u&XMemberExpression&u&XMemberExpression&u&TThisExpression&u&yKIdentifier&z&simObjKIdentifier&&objLabel¡+QLiteral&& : " : "+UConditionalExpression&&VBinaryExpression&&XMemberExpression&&XMemberExpression&&TThisExpression&&KIdentifier&&simObjKIdentifier&&objID£===XMemberExpression&&XMemberExpression&&KIdentifier&&itemKIdentifier&&nObjEKIdentifier&&objIDXMemberExpression&&XMemberExpression&&KIdentifier&&¤itemKIdentifier&&ȥnObjSKIdentifier&&ѨobjLabelXMemberExpression&&XMemberExpression&&KIdentifier&&ؤitemKIdentifier&&ޥnObjEKIdentifier&&objLabel¤initRExpressionStatement'/'bSCallExpression'/'aXMemberExpression'/'AKIdentifier'/'7MenuItemKIdentifier'8'AdebugLine‘QLiteral'B'`components/Dialog.ets(69:13)"components/Dialog.ets(69:13)"RExpressionStatement''SCallExpression''XMemberExpression''KIdentifier''MenuItemKIdentifier''height‘QLiteral''25RExpressionStatement''SCallExpression''XMemberExpression''KIdentifier''¨MenuItemKIdentifier''ΫcontentFont‘[ObjectExpression''ۑ\Property''KIdentifier''դsizeQLiteral''18initRExpressionStatement')9SCallExpression')8XMemberExpression'(KIdentifier'(MenuItemKIdentifier((onChange‘NArrowFunctionExpression()7LBlockStatement()7RExpressionStatement(>(SSCallExpression(>(RXMemberExpression(>(PKIdentifier(>(BitemKIdentifier(C(PdeleteObjConnRExpressionStatement((SCallExpression((XMemberExpression((XMemberExpression((TThisExpression((KIdentifier((allSimConnKIdentifier((splice’KIdentifier((indexQLiteral((1RExpressionStatement()SCallExpression()XMemberExpression()XMemberExpression() TThisExpression()KIdentifier)) controllerKIdentifier) )closeUIfStatement)[)PUnaryExpression)_)o!KIdentifier)`)oisInitialRenderLBlockStatement)q)ʑRExpressionStatement))SCallExpression))XMemberExpression))KIdentifier))MenuItemKIdentifier))popRExpressionStatement)*SCallExpression)*XMemberExpression)*KIdentifier))ViewStackProcessorKIdentifier)*StopGetAccessRecordingRExpressionStatement*W*fSCallExpression*W*eXMemberExpression*W*cKIdentifier*W*_MenuItemKIdentifier*`*cpopLBlockStatement*+.RExpressionStatement*+SCallExpression*+XMemberExpression**TThisExpression**KIdentifier**ifElseBranchUpdateFunction’QLiteral**1NArrowFunctionExpression*+LBlockStatement*+UIfStatement+D+PUnaryExpression+H+X!KIdentifier+I+XisInitialRenderLBlockStatement+Z+RExpressionStatement+u+~SCallExpression+u+}XMemberExpression+u+{KIdentifier+u+wIfKIdentifier+x+{popRExpressionStatement++SCallExpression++XMemberExpression++KIdentifier++ViewStackProcessorKIdentifier++ԶStopGetAccessRecordingRExpressionStatement+,SCallExpression+,XMemberExpression+,KIdentifier+,IfKIdentifier,,pop¥constRExpressionStatement,%,SCallExpression,%,XMemberExpression,%,?TThisExpression,%,)KIdentifier,*,?forEachUpdateFunction–KIdentifier,@,FelmtIdXMemberExpression,H,WTThisExpression,H,LKIdentifier,M,WallSimConnKIdentifier,Y,oforEachItemGenFunctionKIdentifier,q,zundefinedQLiteral,|,ätrueQLiteral,,¥falseUIfStatement,,PUnaryExpression,,!KIdentifier,,isInitialRenderLBlockStatement,,ݑRExpressionStatement,,SCallExpression,,XMemberExpression,,KIdentifier,,ǧForEachKIdentifier,,ˣpopRExpressionStatement,-SCallExpression,-XMemberExpression,-KIdentifier,,ViewStackProcessorKIdentifier,-StopGetAccessRecordingRExpressionStatement-.-paramsLBlockStatement0@1UIfStatement0K0VBinaryExpression0O0nXMemberExpression0O0`KIdentifier0O0UparamsKIdentifier0V0`controller£!==KIdentifier0e0nundefinedLBlockStatement0p0RExpressionStatement00WAssignmentExpression00=XMemberExpression00TThisExpression00KIdentifier00controllerXMemberExpression00KIdentifier00paramsKIdentifier00controllerRExpressionStatement00SCallExpression00XMemberExpression00XMemberExpression00TThisExpression00KIdentifier00Ũ__simObjKIdentifier00ɣset‘XMemberExpression00KIdentifier00ЦparamsKIdentifier00צsimObjUIfStatement01.VBinaryExpression00XMemberExpression00KIdentifier00paramsKIdentifier00ip£!==KIdentifier00undefinedLBlockStatement11.RExpressionStatement11#WAssignmentExpression11"=XMemberExpression11TThisExpression11KIdentifier11ipXMemberExpression11"KIdentifier11paramsKIdentifier1 1"ipUIfStatement181VBinaryExpression1<1TXMemberExpression1<1FKIdentifier1<1BparamsKIdentifier1C1Fmac£!==KIdentifier1K1TundefinedLBlockStatement1V1RExpressionStatement1e1{WAssignmentExpression1e1z=XMemberExpression1e1mTThisExpression1e1iKIdentifier1j1mmacXMemberExpression1p1zKIdentifier1p1vparamsKIdentifier1w1zmacMMethodDefinition11KIdentifier11updateStateVarsmethodNFunctionExpression11‘KIdentifier11paramsLBlockStatement11ޑRExpressionStatement11SCallExpression11XMemberExpression11XMemberExpression11TThisExpression11KIdentifier11è__simObjKIdentifier11ǣset‘XMemberExpression11KIdentifier11ΦparamsKIdentifier11զsimObjMMethodDefinition12KIdentifier12!purgeVariableDependenciesOnElmtIdmethodNFunctionExpression22‘KIdentifier22rmElmtIdLBlockStatement22RExpressionStatement22KSCallExpression22JXMemberExpression22@XMemberExpression22(TThisExpression22KIdentifier2 2(__simObjKIdentifier2)2@purgeDependencyOnElmtId‘KIdentifier2A2IrmElmtIdRExpressionStatement2U2SCallExpression2U2XMemberExpression2U2vXMemberExpression2U2^TThisExpression2U2YKIdentifier2Z2^__ipKIdentifier2_2vpurgeDependencyOnElmtId‘KIdentifier2w2rmElmtIdRExpressionStatement22SCallExpression22XMemberExpression22XMemberExpression22TThisExpression22KIdentifier22__macKIdentifier22purgeDependencyOnElmtId‘KIdentifier22rmElmtIdMMethodDefinition23KIdentifier22հaboutToBeDeletedmethodNFunctionExpression23LBlockStatement23RExpressionStatement23SCallExpression23XMemberExpression23XMemberExpression22TThisExpression22KIdentifier22__simObjKIdentifier23aboutToBeDeletedRExpressionStatement33+SCallExpression33*XMemberExpression33(XMemberExpression33TThisExpression33KIdentifier33__ipKIdentifier33(aboutToBeDeletedRExpressionStatement353SSCallExpression353RXMemberExpression353PXMemberExpression353?TThisExpression3539KIdentifier3:3?__macKIdentifier3@3PaboutToBeDeletedRExpressionStatement3]3SCallExpression3]3XMemberExpression3]3{SCallExpression3]3tXMemberExpression3]3rKIdentifier3]3nSubscriberManagerKIdentifier3o3rGetKIdentifier3u3{delete‘SCallExpression3|3XMemberExpression3|3TThisExpression3|3KIdentifier33id__RExpressionStatement33SCallExpression33XMemberExpression33TThisExpression33KIdentifier33aboutToBeDeletedInternalMMethodDefinition33KIdentifier33ͭsetControllermethodNFunctionExpression33‘KIdentifier33ѣctrLBlockStatement33RExpressionStatement33WAssignmentExpression33=XMemberExpression33TThisExpression33KIdentifier33controllerKIdentifier33ctrMMethodDefinition44;KIdentifier44 simObjgetNFunctionExpression4 4;LBlockStatement44;ZReturnStatement444SCallExpression4 43XMemberExpression4 41XMemberExpression4 4-TThisExpression4 4$KIdentifier4%4-__simObjKIdentifier4.41getMMethodDefinition4A4sKIdentifier4E4GipgetNFunctionExpression4G4sLBlockStatement4J4sZReturnStatement4U4lSCallExpression4\4kXMemberExpression4\4iXMemberExpression4\4eTThisExpression4\4`KIdentifier4a4e__ipKIdentifier4f4igetMMethodDefinition4y4KIdentifier4}4ipsetNFunctionExpression44‘KIdentifier44newValueLBlockStatement44RExpressionStatement44SCallExpression44XMemberExpression44XMemberExpression44TThisExpression44KIdentifier44__ipKIdentifier44set‘KIdentifier44newValueMMethodDefinition44KIdentifier44macgetNFunctionExpression44LBlockStatement44ZReturnStatement44SCallExpression44XMemberExpression44XMemberExpression44TThisExpression44KIdentifier44__macKIdentifier44getMMethodDefinition451KIdentifier44macsetNFunctionExpression451‘KIdentifier45newValueLBlockStatement551RExpressionStatement55*SCallExpression55)XMemberExpression55XMemberExpression55TThisExpression55KIdentifier55__macKIdentifier55set‘KIdentifier5 5(newValueMMethodDefinition57BBKIdentifier575DinitialRendermethodNFunctionExpression5DBBLBlockStatement5GBBRExpressionStatement5R7hSCallExpression5R7gXMemberExpression5R5oTThisExpression5R5VKIdentifier5W5oobserveComponentCreation‘NArrowFunctionExpression5p7f’KIdentifier5q5welmtIdKIdentifier5y5isInitialRenderLBlockStatement57fRExpressionStatement55SCallExpression55XMemberExpression55KIdentifier55ViewStackProcessorKIdentifier55ɺStartGetAccessRecordingFor‘KIdentifier55ЦelmtIdRExpressionStatement55SCallExpression55XMemberExpression55KIdentifier55ColumnKIdentifier55createRExpressionStatement56.SCallExpression56-XMemberExpression56KIdentifier56ColumnKIdentifier66debugLine‘QLiteral66,components/Dialog.ets(97:5)"components/Dialog.ets(97:5)"RExpressionStatement6<6`SCallExpression6<6_XMemberExpression6<6RKIdentifier6<6BColumnKIdentifier6C6RbackgroundColor‘XMemberExpression6S6^KIdentifier6S6XColorKIdentifier6Y6^WhiteRExpressionStatement6n6SCallExpression6n6XMemberExpression6n6KIdentifier6n6tColumnKIdentifier6u6justifyContent‘XMemberExpression66KIdentifier66FlexAlignKIdentifier66CenterRExpressionStatement66SCallExpression66XMemberExpression66KIdentifier66ColumnKIdentifier66alignItems‘XMemberExpression66KIdentifier66ůHorizontalAlignKIdentifier66̦CenterUIfStatement67!PUnaryExpression66!KIdentifier66isInitialRenderLBlockStatement67!RExpressionStatement77SCallExpression77XMemberExpression77KIdentifier77 ColumnKIdentifier7 7popRExpressionStatement7/7[SCallExpression7/7ZXMemberExpression7/7XKIdentifier7/7AViewStackProcessorKIdentifier7B7XStopGetAccessRecordingRExpressionStatement7r9wSCallExpression7r9vXMemberExpression7r7TThisExpression7r7vKIdentifier7w7observeComponentCreation‘NArrowFunctionExpression79u’KIdentifier77elmtIdKIdentifier77isInitialRenderLBlockStatement79uRExpressionStatement77SCallExpression77XMemberExpression77KIdentifier77βViewStackProcessorKIdentifier77StartGetAccessRecordingFor‘KIdentifier77elmtIdRExpressionStatement889SCallExpression888XMemberExpression88KIdentifier88 TextInputKIdentifier8 +8create‘[ObjectExpression887\Property885KIdentifier88placeholderQLiteral8 85请输入ip地址:192.168.1.1!"请输入ip地址:192.168.1.1"initRExpressionStatement8G8zSCallExpression8G8yXMemberExpression8G8ZKIdentifier8G8PTextInputKIdentifier8Q8ZdebugLine‘QLiteral8[8xcomponents/Dialog.ets(98:7)"components/Dialog.ets(98:7)"RExpressionStatement88SCallExpression88XMemberExpression88KIdentifier88TextInputKIdentifier88onChange‘NArrowFunctionExpression88‘KIdentifier88valueLBlockStatement88ؑRExpressionStatement88WAssignmentExpression88ȡ=XMemberExpression88TThisExpression88KIdentifier88ipKIdentifier88ȥvalueUIfStatement890PUnaryExpression88!KIdentifier88isInitialRenderLBlockStatement890RExpressionStatement99!SCallExpression99 XMemberExpression99KIdentifier99TextInputKIdentifier99popRExpressionStatement9>9jSCallExpression9>9iXMemberExpression9>9gKIdentifier9>9PViewStackProcessorKIdentifier9Q9gStopGetAccessRecordingRExpressionStatement9;SCallExpression9;XMemberExpression99TThisExpression99KIdentifier99observeComponentCreation‘NArrowFunctionExpression9;’KIdentifier99elmtIdKIdentifier99isInitialRenderLBlockStatement9;RExpressionStatement9:SCallExpression9:XMemberExpression99KIdentifier99ݲViewStackProcessorKIdentifier99StartGetAccessRecordingFor‘KIdentifier99elmtIdRExpressionStatement::CSCallExpression::BXMemberExpression::KIdentifier::TextInputKIdentifier::create‘[ObjectExpression: :A\Property:":?KIdentifier:":-placeholderQLiteral:/:?请输入mac地址:mac11"请输入mac地址:mac11"initRExpressionStatement:Q:SCallExpression:Q:XMemberExpression:Q:dKIdentifier:Q:ZTextInputKIdentifier:[:ddebugLine‘QLiteral:e:components/Dialog.ets(103:7)"components/Dialog.ets(103:7)"RExpressionStatement::SCallExpression::XMemberExpression::KIdentifier::TextInputKIdentifier::onChange‘NArrowFunctionExpression::‘KIdentifier::valueLBlockStatement::RExpressionStatement::WAssignmentExpression::ԡ=XMemberExpression::TThisExpression::KIdentifier::̣macKIdentifier::ԥvalueUIfStatement:;SCallExpression=>XMemberExpression==/TThisExpression==KIdentifier==/observeComponentCreation‘NArrowFunctionExpression=0>’KIdentifier=1=7elmtIdKIdentifier=9=HisInitialRenderLBlockStatement=M>RExpressionStatement=\=SCallExpression=\=XMemberExpression=\=KIdentifier=\=nViewStackProcessorKIdentifier=o=StartGetAccessRecordingFor‘KIdentifier==elmtIdRExpressionStatement==SCallExpression==XMemberExpression==KIdentifier==ButtonKIdentifier==createWithLabel‘QLiteral==取消"取消"RExpressionStatement==SCallExpression==XMemberExpression==KIdentifier==ѦButtonKIdentifier==۩debugLine‘QLiteral==components/Dialog.ets(109:9)"components/Dialog.ets(109:9)"RExpressionStatement> +>[SCallExpression> +>ZXMemberExpression> +>KIdentifier> +>ButtonKIdentifier>>onClick‘NArrowFunctionExpression>>YLBlockStatement>>YRExpressionStatement>2>JSCallExpression>2>IXMemberExpression>2>GXMemberExpression>2>ATThisExpression>2>6KIdentifier>7>AcontrollerKIdentifier>B>GcloseUIfStatement>i>PUnaryExpression>m>}!KIdentifier>n>}isInitialRenderLBlockStatement>>RExpressionStatement>>SCallExpression>>XMemberExpression>>KIdentifier>>ButtonKIdentifier>>popRExpressionStatement>>SCallExpression>>XMemberExpression>>KIdentifier>>βViewStackProcessorKIdentifier>>StopGetAccessRecordingRExpressionStatement>? SCallExpression>? XMemberExpression>? KIdentifier>?ButtonKIdentifier?? popRExpressionStatement?ASCallExpression?AXMemberExpression??3TThisExpression??KIdentifier??3observeComponentCreation‘NArrowFunctionExpression?4A’KIdentifier?5?;elmtIdKIdentifier?=?LisInitialRenderLBlockStatement?QARExpressionStatement?`?SCallExpression?`?XMemberExpression?`?KIdentifier?`?rViewStackProcessorKIdentifier?s?StartGetAccessRecordingFor‘KIdentifier??elmtIdRExpressionStatement??SCallExpression??XMemberExpression??KIdentifier??ButtonKIdentifier??createWithLabel‘QLiteral??确定"确定"RExpressionStatement?@SCallExpression??XMemberExpression??KIdentifier??զButtonKIdentifier??ߩdebugLine‘QLiteral??components/Dialog.ets(114:9)"components/Dialog.ets(114:9)"RExpressionStatement@A_SCallExpression@A^XMemberExpression@@KIdentifier@@ButtonKIdentifier@@onClick‘NArrowFunctionExpression@A]LBlockStatement@#A]UIfStatement@6A$VBinaryExpression@:@RXMemberExpression@:@MXMemberExpression@:@ETThisExpression@:@>KIdentifier@?@EsimObjKIdentifier@F@MobjType¢==QLiteral@Q@R3LBlockStatement@T@RExpressionStatement@k@WAssignmentExpression@k@=XMemberExpression@k@zXMemberExpression@k@vTThisExpression@k@oKIdentifier@p@vsimObjKIdentifier@w@zmacXMemberExpression@}@TThisExpression@}@KIdentifier@@macLBlockStatement@A$RExpressionStatement@@WAssignmentExpression@@ߡ=XMemberExpression@@XMemberExpression@@TThisExpression@@KIdentifier@@ҦsimObjKIdentifier@@բipXMemberExpression@@TThisExpression@@KIdentifier@@ߢipRExpressionStatement@AWAssignmentExpression@A=XMemberExpression@AXMemberExpression@ATThisExpression@@KIdentifier@AsimObjKIdentifierAAmacXMemberExpressionAATThisExpressionAA KIdentifierA AmacRExpressionStatementA6ANSCallExpressionA6AMXMemberExpressionA6AKXMemberExpressionA6AETThisExpressionA6A:KIdentifierA;AEcontrollerKIdentifierAFAKcloseUIfStatementAmAPUnaryExpressionAqA!KIdentifierArAisInitialRenderLBlockStatementAARExpressionStatementAASCallExpressionAAXMemberExpressionAAKIdentifierAAButtonKIdentifierAApopRExpressionStatementAASCallExpressionAAXMemberExpressionAAKIdentifierAAҲViewStackProcessorKIdentifierAAStopGetAccessRecordingRExpressionStatementBBSCallExpressionBBXMemberExpressionBB KIdentifierBB ButtonKIdentifierB +B popRExpressionStatementBB$SCallExpressionBB#XMemberExpressionBB!KIdentifierBBRowKIdentifierBB!popRExpressionStatementB.B;SCallExpressionB.B:XMemberExpressionB.B8KIdentifierB.B4ColumnKIdentifierB5B8popMMethodDefinitionBHBKIdentifierBHBPrerendermethodNFunctionExpressionBPBLBlockStatementBSBRExpressionStatementB^BySCallExpressionB^BxXMemberExpressionB^BvTThisExpressionB^BbKIdentifierBcBvupdateDirtyElementsIExportNamedDeclarationBmJClassDeclarationBmKIdentifierBBRouterTableConfigKIdentifierBBViewPULClassBodyBmMMethodDefinitionBE{KIdentifierBBūconstructorconstructorNFunctionExpressionBE{•KIdentifierBB̦parentKIdentifierBBԦparamsKIdentifierBB__localStorageOAssignmentPatternBBKIdentifierBBelmtIdPUnaryExpressionBB-QLiteralBB1OAssignmentPatternBC KIdentifierBBparamsLambdaKIdentifierCC undefinedLBlockStatementC E{RExpressionStatementCC>SCallExpressionCC=TSuperCCKIdentifierCC$parentKIdentifierC&C4__localStorageKIdentifierC6CDC__ip1YNewExpressionDFDsKIdentifierDJDbObservedPropertySimplePUQLiteralDcDe""TThisExpressionDgDkQLiteralDmDrip1"ip1"RExpressionStatementD~DWAssignmentExpressionD~D=XMemberExpressionD~DTThisExpressionD~DKIdentifierDD__ip2YNewExpressionDDKIdentifierDDObservedPropertySimplePUQLiteralDD""TThisExpressionDDQLiteralDDip2"ip2"RExpressionStatementDDWAssignmentExpressionDD=XMemberExpressionDDTThisExpressionDDKIdentifierDDͥ__ip3YNewExpressionDDKIdentifierDDObservedPropertySimplePUQLiteralDD""TThisExpressionDDQLiteralDDip3"ip3"RExpressionStatementEECWAssignmentExpressionEEB=XMemberExpressionEETThisExpressionEE KIdentifierE E__ip4YNewExpressionEEBKIdentifierEE1ObservedPropertySimplePUQLiteralE2E4""TThisExpressionE6E:QLiteralETThisExpressionH1H5KIdentifierH6H>__simObjKIdentifierH?HVpurgeDependencyOnElmtId‘KIdentifierHWH_rmElmtIdRExpressionStatementHkHSCallExpressionHkHXMemberExpressionHkHXMemberExpressionHkHuTThisExpressionHkHoKIdentifierHpHu__ip1KIdentifierHvHpurgeDependencyOnElmtId‘KIdentifierHHrmElmtIdRExpressionStatementHHSCallExpressionHHXMemberExpressionHHXMemberExpressionHHTThisExpressionHHKIdentifierHH__ip2KIdentifierHHķpurgeDependencyOnElmtId‘KIdentifierHHͨrmElmtIdRExpressionStatementHISCallExpressionHIXMemberExpressionHHXMemberExpressionHHTThisExpressionHHKIdentifierHH__ip3KIdentifierHHpurgeDependencyOnElmtId‘KIdentifierHIrmElmtIdRExpressionStatementII=SCallExpressionIIKAgetMMethodDefinitionKQKKIdentifierKUKXip1setNFunctionExpressionKXK‘KIdentifierKYKanewValueLBlockStatementKcKRExpressionStatementKnKSCallExpressionKnKXMemberExpressionKnK|XMemberExpressionKnKxTThisExpressionKnKrKIdentifierKsKx__ip1KIdentifierKyK|set‘KIdentifierK}KnewValueMMethodDefinitionKKKIdentifierKKip2getNFunctionExpressionKKLBlockStatementKKȑZReturnStatementKKSCallExpressionKKXMemberExpressionKKXMemberExpressionKKTThisExpressionKKKIdentifierKK__ip2KIdentifierKKgetMMethodDefinitionKL KIdentifierKKգip2setNFunctionExpressionKL ‘KIdentifierKKިnewValueLBlockStatementKL RExpressionStatementKLSCallExpressionKLXMemberExpressionKKXMemberExpressionKKTThisExpressionKKKIdentifierKK__ip2KIdentifierKKset‘KIdentifierKLnewValueMMethodDefinitionLLEKIdentifierLLip3getNFunctionExpressionLLELBlockStatementLLEZReturnStatementL&L>SCallExpressionL-L=XMemberExpressionL-L;XMemberExpressionL-L7TThisExpressionL-L1KIdentifierL2L7__ip3KIdentifierL8L;getMMethodDefinitionLKLKIdentifierLOLRip3setNFunctionExpressionLRL‘KIdentifierLSL[newValueLBlockStatementL]LRExpressionStatementLhLSCallExpressionLhLXMemberExpressionLhLvXMemberExpressionLhLrTThisExpressionLhLlKIdentifierLmLr__ip3KIdentifierLsLvset‘KIdentifierLwLnewValueMMethodDefinitionLLKIdentifierLLip4getNFunctionExpressionLLLBlockStatementLL‘ZReturnStatementLLSCallExpressionLLXMemberExpressionLLXMemberExpressionLLTThisExpressionLLKIdentifierLL__ip4KIdentifierLLgetMMethodDefinitionLMKIdentifierLLϣip4setNFunctionExpressionLM‘KIdentifierLLبnewValueLBlockStatementLMRExpressionStatementLLSCallExpressionLLXMemberExpressionLLXMemberExpressionLLTThisExpressionLLKIdentifierLL__ip4KIdentifierLLset‘KIdentifierLLnewValueMMethodDefinitionM mmKIdentifierM MinitialRendermethodNFunctionExpressionMmmLBlockStatementMmmRExpressionStatementM&O=SCallExpressionM&OXMemberExpressionQ Q6KIdentifierQ QViewStackProcessorKIdentifierQQ6StartGetAccessRecordingFor‘KIdentifierQ7Q=elmtIdRExpressionStatementQMQSCallExpressionQMQXMemberExpressionQMQ]KIdentifierQMQVTextInputKIdentifierQWQ]create‘[ObjectExpressionQ^Q\PropertyQ`QKIdentifierQ`QkplaceholderQLiteralQmQ*请输入端口1下一跳:192.168.1.0/24,"请输入端口1下一跳:192.168.1.0/24"initRExpressionStatementQQSCallExpressionQQXMemberExpressionQQKIdentifierQQTextInputKIdentifierQQdebugLine‘QLiteralQQ˼components/Dialog.ets(144:9)"components/Dialog.ets(144:9)"RExpressionStatementQR.SCallExpressionQR-XMemberExpressionQQKIdentifierQQTextInputKIdentifierQQonChange‘NArrowFunctionExpressionQR,‘KIdentifierQQvalueLBlockStatementQR,RExpressionStatementR RWAssignmentExpressionR R=XMemberExpressionR RTThisExpressionR RKIdentifierRRip1KIdentifierRRvalueRExpressionStatementRXMemberExpressionUUKIdentifierUUӡbKIdentifierUUؤportQLiteralUU1PUnaryExpressionUU-QLiteralUU1UIfStatementVVZPUnaryExpressionVV)!KIdentifierVV)isInitialRenderLBlockStatementV+VZRExpressionStatementV>VKSCallExpressionV>VJXMemberExpressionV>VHKIdentifierV>VDButtonKIdentifierVEVHpopRExpressionStatementVhVSCallExpressionVhVXMemberExpressionVhVKIdentifierVhVzViewStackProcessorKIdentifierV{VStopGetAccessRecordingRExpressionStatementVVSCallExpressionVVXMemberExpressionVVKIdentifierVVButtonKIdentifierVVpopRExpressionStatementVVSCallExpressionVVXMemberExpressionVVKIdentifierVVţRowKIdentifierVVɣpopRExpressionStatementVXDSCallExpressionVXCXMemberExpressionVVTThisExpressionVVKIdentifierVVobserveComponentCreation‘NArrowFunctionExpressionVXB’KIdentifierVVelmtIdKIdentifierVW isInitialRenderLBlockStatementWXBRExpressionStatementW WVSCallExpressionW WUXMemberExpressionW WMKIdentifierW W2ViewStackProcessorKIdentifierW3WMStartGetAccessRecordingFor‘KIdentifierWNWTelmtIdRExpressionStatementWdWqSCallExpressionWdWpXMemberExpressionWdWnKIdentifierWdWgRowKIdentifierWhWncreateRExpressionStatementWWSCallExpressionWWXMemberExpressionWWKIdentifierWWRowKIdentifierWWdebugLine‘QLiteralWWcomponents/Dialog.ets(165:7)"components/Dialog.ets(165:7)"UIfStatementWWPUnaryExpressionWWϡ!KIdentifierWWϯisInitialRenderLBlockStatementWWRExpressionStatementWWSCallExpressionWWXMemberExpressionWWKIdentifierWWRowKIdentifierWWpopRExpressionStatementX X7SCallExpressionX X6XMemberExpressionX X4KIdentifierX XViewStackProcessorKIdentifierXX4StopGetAccessRecordingRExpressionStatementXNZqSCallExpressionXNZpXMemberExpressionXNXkTThisExpressionXNXRKIdentifierXSXkobserveComponentCreation‘NArrowFunctionExpressionXlZo’KIdentifierXmXselmtIdKIdentifierXuXisInitialRenderLBlockStatementXZoRExpressionStatementXXSCallExpressionXXXMemberExpressionXXKIdentifierXXViewStackProcessorKIdentifierXXźStartGetAccessRecordingFor‘KIdentifierXX̦elmtIdRExpressionStatementXY SCallExpressionXY XMemberExpressionXXKIdentifierXXTextInputKIdentifierXXcreate‘[ObjectExpressionXY +\PropertyXYKIdentifierXXplaceholderQLiteralXY请输入端口2下一跳:"请输入端口2下一跳:"initRExpressionStatementYYNSCallExpressionYYMXMemberExpressionYY-KIdentifierYY#TextInputKIdentifierY$Y-debugLine‘QLiteralY.YLcomponents/Dialog.ets(166:9)"components/Dialog.ets(166:9)"RExpressionStatementY\YSCallExpressionY\YXMemberExpressionY\YnKIdentifierY\YeTextInputKIdentifierYfYnonChange‘NArrowFunctionExpressionYoY‘KIdentifierYpYuvalueLBlockStatementYzYRExpressionStatementYYWAssignmentExpressionYY=XMemberExpressionYYTThisExpressionYYKIdentifierYYip2KIdentifierYYvalueRExpressionStatementYYSCallExpressionYYXMemberExpressionYYKIdentifierYYƩTextInputKIdentifierYY̥width‘QLiteralYYң80%'80%'UIfStatementYZ*PUnaryExpressionYY!KIdentifierYYisInitialRenderLBlockStatementYZ*RExpressionStatementZ ZSCallExpressionZ ZXMemberExpressionZ ZKIdentifierZ ZTextInputKIdentifierZZpopRExpressionStatementZ8ZdSCallExpressionZ8ZcXMemberExpressionZ8ZaKIdentifierZ8ZJViewStackProcessorKIdentifierZKZaStopGetAccessRecordingRExpressionStatementZ{^"SCallExpressionZ{^!XMemberExpressionZ{ZTThisExpressionZ{ZKIdentifierZZobserveComponentCreation‘NArrowFunctionExpressionZ^ ’KIdentifierZZelmtIdKIdentifierZZisInitialRenderLBlockStatementZ^ RExpressionStatementZZSCallExpressionZZXMemberExpressionZZKIdentifierZZײViewStackProcessorKIdentifierZZStartGetAccessRecordingFor‘KIdentifierZZelmtIdRExpressionStatement[ [&SCallExpression[ [%XMemberExpression[ [KIdentifier[ [ButtonKIdentifier[[createWithLabel‘QLiteral[ [$添加"添加"RExpressionStatement[4[eSCallExpression[4[dXMemberExpression[4[DKIdentifier[4[:ButtonKIdentifier[;[DdebugLine‘QLiteral[E[ccomponents/Dialog.ets(172:9)"components/Dialog.ets(172:9)"RExpressionStatement[s]SCallExpression[s]XMemberExpression[s[KIdentifier[s[yButtonKIdentifier[z[onClick‘NArrowFunctionExpression[]LBlockStatement[]]VariableDeclaration[\^VariableDeclarator[[KIdentifier[[pushItem[ObjectExpression[[\Property[[KIdentifier[[ŤportQLiteral[[2init\Property[[KIdentifier[[netXMemberExpression[[TThisExpression[[KIdentifier[[ip2¤initletUIfStatement\]wSCallExpression\\VXMemberExpression\\2XMemberExpression\\-XMemberExpression\\!TThisExpression\\KIdentifier\\!simObjKIdentifier\"\-routerTableKIdentifier\.\2some‘NArrowFunctionExpression\3\U‘KIdentifier\3\7itemVBinaryExpression\;\UXMemberExpression\;\DKIdentifier\;\?itemKIdentifier\@\Dport¢==XMemberExpression\H\UKIdentifier\H\PpushItemKIdentifier\Q\UportLBlockStatement\X\RExpressionStatement\o\WAssignmentExpression\o\=XMemberExpression\o\XMemberExpression\o\XMemberExpression\o\zTThisExpression\o\sKIdentifier\t\zsimObjKIdentifier\{\routerTableVBinaryExpression\\XMemberExpression\\KIdentifier\\pushItemKIdentifier\\port¡-QLiteral\\1KIdentifier\\pushItemLBlockStatement\]wRExpressionStatement\] SCallExpression\] XMemberExpression\]XMemberExpression\\XMemberExpression\\TThisExpression\\KIdentifier\\simObjKIdentifier\\routerTableKIdentifier\]push‘KIdentifier]] pushItemRExpressionStatement]#]dSCallExpression]#]cXMemberExpression]#]?XMemberExpression]#]:XMemberExpression]#].TThisExpression]#]'KIdentifier](].simObjKIdentifier]/]:routerTableKIdentifier];]?sort‘NArrowFunctionExpression]@]b’KIdentifier]A]BaKIdentifier]D]EbUConditionalExpression]J]bVBinaryExpression]J]YXMemberExpression]J]PKIdentifier]J]KaKIdentifier]L]Pport¡>XMemberExpression]S]YKIdentifier]S]TbKIdentifier]U]YportQLiteral]\]]1PUnaryExpression]`]b-QLiteral]a]b1UIfStatement]]PUnaryExpression]]!KIdentifier]]isInitialRenderLBlockStatement]]ۑRExpressionStatement]]SCallExpression]]XMemberExpression]]KIdentifier]]ŦButtonKIdentifier]]ɣpopRExpressionStatement]^SCallExpression]^XMemberExpression]^KIdentifier]]ViewStackProcessorKIdentifier]^StopGetAccessRecordingRExpressionStatement^,^9SCallExpression^,^8XMemberExpression^,^6KIdentifier^,^2ButtonKIdentifier^3^6popRExpressionStatement^C^MSCallExpression^C^LXMemberExpression^C^JKIdentifier^C^FRowKIdentifier^G^JpopRExpressionStatement^W_SCallExpression^W_XMemberExpression^W^tTThisExpression^W^[KIdentifier^\^tobserveComponentCreation‘NArrowFunctionExpression^u_’KIdentifier^v^|elmtIdKIdentifier^~^isInitialRenderLBlockStatement^_ÕRExpressionStatement^^SCallExpression^^XMemberExpression^^KIdentifier^^ViewStackProcessorKIdentifier^^κStartGetAccessRecordingFor‘KIdentifier^^զelmtIdRExpressionStatement^^SCallExpression^^XMemberExpression^^KIdentifier^^RowKIdentifier^^createRExpressionStatement__.SCallExpression__-XMemberExpression__ KIdentifier__RowKIdentifier__ debugLine‘QLiteral__,components/Dialog.ets(187:7)"components/Dialog.ets(187:7)"UIfStatement_<_~PUnaryExpression_@_P!KIdentifier_A_PisInitialRenderLBlockStatement_R_~RExpressionStatement_e_oSCallExpression_e_nXMemberExpression_e_lKIdentifier_e_hRowKIdentifier_i_lpopRExpressionStatement__SCallExpression__XMemberExpression__KIdentifier__ViewStackProcessorKIdentifier__StopGetAccessRecordingRExpressionStatement_aSCallExpression_aXMemberExpression__TThisExpression__KIdentifier__observeComponentCreation‘NArrowFunctionExpression_a’KIdentifier__elmtIdKIdentifier_`isInitialRenderLBlockStatement` +aRExpressionStatement``OSCallExpression``NXMemberExpression``FKIdentifier``+ViewStackProcessorKIdentifier`,`FStartGetAccessRecordingFor‘KIdentifier`G`MelmtIdRExpressionStatement`]`SCallExpression`]`XMemberExpression`]`mKIdentifier`]`fTextInputKIdentifier`g`mcreate‘[ObjectExpression`n`\Property`p`KIdentifier`p`{placeholderQLiteral`}`请输入端口3下一跳:"请输入端口3下一跳:"initRExpressionStatement``SCallExpression``XMemberExpression``KIdentifier``TextInputKIdentifier``debugLine‘QLiteral``ͼcomponents/Dialog.ets(188:9)"components/Dialog.ets(188:9)"RExpressionStatement`a0SCallExpression`a/XMemberExpression``KIdentifier``TextInputKIdentifier``onChange‘NArrowFunctionExpression`a.‘KIdentifier``valueLBlockStatement`a.RExpressionStatementaaWAssignmentExpressionaa=XMemberExpressionaaTThisExpressionaaKIdentifieraaip3KIdentifieraavalueRExpressionStatementa>aUSCallExpressiona>aTXMemberExpressiona>aMKIdentifiera>aGTextInputKIdentifieraHaMwidth‘QLiteralaNaS80%'80%'UIfStatementacaPUnaryExpressionagaw!KIdentifierahawisInitialRenderLBlockStatementayaRExpressionStatementaaSCallExpressionaaXMemberExpressionaaKIdentifieraaTextInputKIdentifieraapopRExpressionStatementaaSCallExpressionaaXMemberExpressionaaKIdentifieraa˲ViewStackProcessorKIdentifieraaStopGetAccessRecordingRExpressionStatementaeSCallExpressionaeXMemberExpressionabTThisExpressionabKIdentifierbbobserveComponentCreation‘NArrowFunctionExpressionbe’KIdentifierbb!elmtIdKIdentifierb#b2isInitialRenderLBlockStatementb7eRExpressionStatementbFb|SCallExpressionbFb{XMemberExpressionbFbsKIdentifierbFbXViewStackProcessorKIdentifierbYbsStartGetAccessRecordingFor‘KIdentifierbtbzelmtIdRExpressionStatementbbSCallExpressionbbXMemberExpressionbbKIdentifierbbButtonKIdentifierbbcreateWithLabel‘QLiteralbb添加"添加"RExpressionStatementbbSCallExpressionbbXMemberExpressionbbKIdentifierbbButtonKIdentifierbbũdebugLine‘QLiteralbbcomponents/Dialog.ets(194:9)"components/Dialog.ets(194:9)"RExpressionStatementbe SCallExpressionbeXMemberExpressionbcKIdentifierbbButtonKIdentifierbconClick‘NArrowFunctionExpressionceLBlockStatementc e]VariableDeclarationcc^VariableDeclaratorc cKIdentifierc c(pushItem[ObjectExpressionc+c\PropertycBcIKIdentifiercBcFportQLiteralcHcI3init\Propertyc`cmKIdentifierc`ccnetXMemberExpressioncecmTThisExpressionceciKIdentifiercjcmip3¤initletUIfStatementcdSCallExpressionccXMemberExpressionccXMemberExpressionccXMemberExpressionccTThisExpressionccKIdentifierccsimObjKIdentifierccrouterTableKIdentifierccsome‘NArrowFunctionExpressioncc‘KIdentifierccitemVBinaryExpressionccXMemberExpressionccKIdentifierccitemKIdentifierccŤport¢==XMemberExpressionccKIdentifierccѨpushItemKIdentifiercc֤portLBlockStatementcd9RExpressionStatementcd&WAssignmentExpressioncd%=XMemberExpressioncdXMemberExpressioncdXMemberExpressionccTThisExpressionccKIdentifierccsimObjKIdentifiercdrouterTableVBinaryExpressionddXMemberExpressionddKIdentifierddpushItemKIdentifierddport¡-QLiteraldd1KIdentifierdd%pushItemLBlockStatementdPdRExpressionStatementdgdSCallExpressiondgdXMemberExpressiondgdXMemberExpressiondgd~XMemberExpressiondgdrTThisExpressiondgdkKIdentifierdldrsimObjKIdentifierdsd~routerTableKIdentifierddpush‘KIdentifierddpushItemRExpressionStatementddSCallExpressionddXMemberExpressionddXMemberExpressionddXMemberExpressionddTThisExpressionddKIdentifierddsimObjKIdentifierddrouterTableKIdentifierddsort‘NArrowFunctionExpressiondd’KIdentifierddáaKIdentifierddơbUConditionalExpressionddVBinaryExpressionddXMemberExpressionddKIdentifierdd̡aKIdentifierddѤport¡>XMemberExpressionddKIdentifierddաbKIdentifierddڤportQLiteraldd1PUnaryExpressiondd-QLiteraldd1UIfStatementee\PUnaryExpressionee+!KIdentifieree+isInitialRenderLBlockStatemente-e\RExpressionStatemente@eMSCallExpressione@eLXMemberExpressione@eJKIdentifiere@eFButtonKIdentifiereGeJpopRExpressionStatementejeSCallExpressionejeXMemberExpressionejeKIdentifiereje|ViewStackProcessorKIdentifiere}eStopGetAccessRecordingRExpressionStatementeeSCallExpressioneeXMemberExpressioneeKIdentifiereeButtonKIdentifiereepopRExpressionStatementeeSCallExpressioneeXMemberExpressioneeKIdentifiereeǣRowKIdentifiereeˣpopRExpressionStatementegFSCallExpressionegEXMemberExpressioneeTThisExpressioneeKIdentifiereeobserveComponentCreation‘NArrowFunctionExpressionegD’KIdentifiereeelmtIdKIdentifierefisInitialRenderLBlockStatementfgDRExpressionStatementf"fXSCallExpressionf"fWXMemberExpressionf"fOKIdentifierf"f4ViewStackProcessorKIdentifierf5fOStartGetAccessRecordingFor‘KIdentifierfPfVelmtIdRExpressionStatementfffsSCallExpressionfffrXMemberExpressionfffpKIdentifierfffiRowKIdentifierfjfpcreateRExpressionStatementffSCallExpressionffXMemberExpressionffKIdentifierffRowKIdentifierffdebugLine‘QLiteralffcomponents/Dialog.ets(209:7)"components/Dialog.ets(209:7)"UIfStatementffPUnaryExpressionffѡ!KIdentifierffѯisInitialRenderLBlockStatementffRExpressionStatementffSCallExpressionffXMemberExpressionffKIdentifierffRowKIdentifierffpopRExpressionStatementg g9SCallExpressiong g8XMemberExpressiong g6KIdentifierg gViewStackProcessorKIdentifierg g6StopGetAccessRecordingRExpressionStatementgPisSCallExpressiongPirXMemberExpressiongPgmTThisExpressiongPgTKIdentifiergUgmobserveComponentCreation‘NArrowFunctionExpressiongniq’KIdentifiergoguelmtIdKIdentifiergwgisInitialRenderLBlockStatementgiqRExpressionStatementggSCallExpressionggXMemberExpressionggKIdentifierggViewStackProcessorKIdentifierggǺStartGetAccessRecordingFor‘KIdentifierggΦelmtIdRExpressionStatementghSCallExpressiongh XMemberExpressionggKIdentifierggTextInputKIdentifierggcreate‘[ObjectExpressiongh \Propertygh +KIdentifierggplaceholderQLiteralgh +请输入端口4下一跳:"请输入端口4下一跳:"initRExpressionStatementhhPSCallExpressionhhOXMemberExpressionhh/KIdentifierhh%TextInputKIdentifierh&h/debugLine‘QLiteralh0hNcomponents/Dialog.ets(210:9)"components/Dialog.ets(210:9)"RExpressionStatementh^hSCallExpressionh^hXMemberExpressionh^hpKIdentifierh^hgTextInputKIdentifierhhhponChange‘NArrowFunctionExpressionhqh‘KIdentifierhrhwvalueLBlockStatementh|hRExpressionStatementhhWAssignmentExpressionhh=XMemberExpressionhhTThisExpressionhhKIdentifierhhip4KIdentifierhhvalueRExpressionStatementhhSCallExpressionhhXMemberExpressionhhKIdentifierhhȩTextInputKIdentifierhhΥwidth‘QLiteralhhԣ80%'80%'UIfStatementhi,PUnaryExpressionhh!KIdentifierhhisInitialRenderLBlockStatementhi,RExpressionStatementi iSCallExpressioni iXMemberExpressioni iKIdentifieri iTextInputKIdentifieriipopRExpressionStatementi:ifSCallExpressioni:ieXMemberExpressioni:icKIdentifieri:iLViewStackProcessorKIdentifieriMicStopGetAccessRecordingRExpressionStatementi}m$SCallExpressioni}m#XMemberExpressioni}iTThisExpressioni}iKIdentifieriiobserveComponentCreation‘NArrowFunctionExpressionim"’KIdentifieriielmtIdKIdentifieriiisInitialRenderLBlockStatementim"RExpressionStatementiiSCallExpressioniiXMemberExpressioniiKIdentifieriiٲViewStackProcessorKIdentifieriiStartGetAccessRecordingFor‘KIdentifieriielmtIdRExpressionStatementj j(SCallExpressionj j'XMemberExpressionj j!KIdentifierj jButtonKIdentifierjj!createWithLabel‘QLiteralj"j&添加"添加"RExpressionStatementj6jgSCallExpressionj6jfXMemberExpressionj6jFKIdentifierj6jXMemberExpressionlUl[KIdentifierlUlVbKIdentifierlWl[portQLiterall^l_1PUnaryExpressionlbld-QLiterallcld1UIfStatementllPUnaryExpressionll!KIdentifierllisInitialRenderLBlockStatementllݑRExpressionStatementllSCallExpressionllXMemberExpressionllKIdentifierllǦButtonKIdentifierllˣpopRExpressionStatementlmSCallExpressionlmXMemberExpressionlmKIdentifierllViewStackProcessorKIdentifierlmStopGetAccessRecordingRExpressionStatementm.m;SCallExpressionm.m:XMemberExpressionm.m8KIdentifierm.m4ButtonKIdentifierm5m8popRExpressionStatementmEmOSCallExpressionmEmNXMemberExpressionmEmLKIdentifiermEmHRowKIdentifiermImLpopRExpressionStatementmYmfSCallExpressionmYmeXMemberExpressionmYmcKIdentifiermYm_ColumnKIdentifierm`mcpopMMethodDefinitionmsmKIdentifiermsm{rerendermethodNFunctionExpressionm{mLBlockStatementm~mRExpressionStatementmmSCallExpressionmmXMemberExpressionmmTThisExpressionmmKIdentifiermmupdateDirtyElementsIExportNamedDeclarationm͙JClassDeclarationm͙KIdentifiermmαSwitchTableConfigKIdentifiermmݦViewPULClassBodym͙MMethodDefinitionmpKIdentifiermmconstructorconstructorNFunctionExpressionmp•KIdentifiermmparentKIdentifiermmparamsKIdentifiernn__localStorageOAssignmentPatternnnKIdentifiernnelmtIdPUnaryExpressionnn-QLiteralnn1OAssignmentPatternnn6KIdentifiernn*paramsLambdaKIdentifiern-n6undefinedLBlockStatementn8pRExpressionStatementnCniSCallExpressionnCnhTSupernCnHKIdentifiernInOparentKIdentifiernQn___localStorageKIdentifiernangelmtIdUIfStatementnsnVBinaryExpressionnwnPUnaryExpressionnwntypeofKIdentifiern~nparamsLambda===QLiteralnnfunction"function"LBlockStatementnnڑRExpressionStatementnnWAssignmentExpressionnnΡ=XMemberExpressionnnTThisExpressionnnKIdentifiernnparamsGenerator_KIdentifiernnάparamsLambdaRExpressionStatementnoWAssignmentExpressionnn=XMemberExpressionnnTThisExpressionnnKIdentifiernncontrollerKIdentifiernnundefinedRExpressionStatemento +oZWAssignmentExpressiono +oY=XMemberExpressiono +oTThisExpressiono +oKIdentifieroo__simObjYNewExpressionooYKIdentifieroo:SynchedPropertyNesedObjectPUXMemberExpressiono;oHKIdentifiero;oAparamsKIdentifieroBoHsimObjTThisExpressionoJoNQLiteraloPoXsimObj"simObj"RExpressionStatementodoWAssignmentExpressionodo=XMemberExpressionodooTThisExpressionodohKIdentifieroioo__mac1YNewExpressionoroKIdentifierovoObservedPropertySimplePUQLiteraloo""TThisExpressionooQLiteraloomac1"mac1"RExpressionStatementooWAssignmentExpressionoo=XMemberExpressionooTThisExpressionooKIdentifieroo__mac2YNewExpressionooKIdentifierooոObservedPropertySimplePUQLiteralooؠ""TThisExpressionooQLiteraloomac2"mac2"RExpressionStatementop/WAssignmentExpressionop.=XMemberExpressionooTThisExpressionooKIdentifieroo__mac3YNewExpressionpp.KIdentifierppObservedPropertySimplePUQLiteralpp""TThisExpressionp!p%QLiteralp'p-mac3"mac3"RExpressionStatementp9pvWAssignmentExpressionp9pu=XMemberExpressionp9pDTThisExpressionp9p=KIdentifierp>pD__mac4YNewExpressionpGpuKIdentifierpKpcObservedPropertySimplePUQLiteralpdpf""TThisExpressionphplQLiteralpnptmac4"mac4"RExpressionStatementppSCallExpressionppXMemberExpressionppTThisExpressionppKIdentifierppsetInitiallyProvidedValue‘KIdentifierppparamsMMethodDefinitionprKIdentifierpp͹setInitiallyProvidedValuemethodNFunctionExpressionpr‘KIdentifierppԦparamsLBlockStatementprUIfStatementpqDVBinaryExpressionpqXMemberExpressionppKIdentifierppparamsKIdentifierppcontroller£!==KIdentifierpqundefinedLBlockStatementqqDRExpressionStatementqq9WAssignmentExpressionqq8=XMemberExpressionqq$TThisExpressionqqKIdentifierqq$controllerXMemberExpressionq'q8KIdentifierq'q-paramsKIdentifierq.q8controllerRExpressionStatementqNqoSCallExpressionqNqnXMemberExpressionqNq_XMemberExpressionqNq[TThisExpressionqNqRKIdentifierqSq[__simObjKIdentifierq\q_set‘XMemberExpressionq`qmKIdentifierq`qfparamsKIdentifierqgqmsimObjUIfStatementqyqVBinaryExpressionq}qXMemberExpressionq}qKIdentifierq}qparamsKIdentifierqqmac1£!==KIdentifierqqundefinedLBlockStatementqqʑRExpressionStatementqqWAssignmentExpressionqq=XMemberExpressionqqTThisExpressionqqKIdentifierqqmac1XMemberExpressionqqKIdentifierqqparamsKIdentifierqqmac1UIfStatementqr%VBinaryExpressionqqXMemberExpressionqqKIdentifierqqަparamsKIdentifierqqmac2£!==KIdentifierqqundefinedLBlockStatementqr%RExpressionStatementrrWAssignmentExpressionrr=XMemberExpressionrr TThisExpressionrrKIdentifierrr mac2XMemberExpressionrrKIdentifierrrparamsKIdentifierrrmac2UIfStatementr/rVBinaryExpressionr3rLXMemberExpressionr3r>KIdentifierr3r9paramsKIdentifierr:r>mac3£!==KIdentifierrCrLundefinedLBlockStatementrNrRExpressionStatementr]ruWAssignmentExpressionr]rt=XMemberExpressionr]rfTThisExpressionr]raKIdentifierrbrfmac3XMemberExpressionrirtKIdentifierriroparamsKIdentifierrprtmac3UIfStatementrrVBinaryExpressionrrXMemberExpressionrrKIdentifierrrparamsKIdentifierrrmac4£!==KIdentifierrrundefinedLBlockStatementrrۑRExpressionStatementrrWAssignmentExpressionrrϡ=XMemberExpressionrrTThisExpressionrrKIdentifierrrmac4XMemberExpressionrrKIdentifierrrʦparamsKIdentifierrrϤmac4MMethodDefinitionrs3KIdentifierrrupdateStateVarsmethodNFunctionExpressionrs3‘KIdentifierrrparamsLBlockStatementss3RExpressionStatements s,SCallExpressions s+XMemberExpressions sXMemberExpressions sTThisExpressions sKIdentifierss__simObjKIdentifierssset‘XMemberExpressionss*KIdentifierss#paramsKIdentifiers$s*simObjMMethodDefinitions9tKIdentifiers9sZ!purgeVariableDependenciesOnElmtIdmethodNFunctionExpressionsZt‘KIdentifiers[scrmElmtIdLBlockStatementsetRExpressionStatementspsSCallExpressionspsXMemberExpressionspsXMemberExpressionsps}TThisExpressionspstKIdentifiersus}__simObjKIdentifiers~spurgeDependencyOnElmtId‘KIdentifierssrmElmtIdRExpressionStatementssSCallExpressionssXMemberExpressionssXMemberExpressionssTThisExpressionssKIdentifierss__mac1KIdentifierssͷpurgeDependencyOnElmtId‘KIdentifierss֨rmElmtIdRExpressionStatementstSCallExpressionstXMemberExpressionstXMemberExpressionssTThisExpressionssKIdentifierss__mac2KIdentifierstpurgeDependencyOnElmtId‘KIdentifierttrmElmtIdRExpressionStatementttHSCallExpressionttGXMemberExpressiontt=XMemberExpressiontt%TThisExpressionttKIdentifiertt%__mac3KIdentifiert&t=purgeDependencyOnElmtId‘KIdentifiert>tFrmElmtIdRExpressionStatementtRtSCallExpressiontRtXMemberExpressiontRtuXMemberExpressiontRt]TThisExpressiontRtVKIdentifiertWt]__mac4KIdentifiert^tupurgeDependencyOnElmtId‘KIdentifiertvt~rmElmtIdMMethodDefinitiontuKIdentifierttaboutToBeDeletedmethodNFunctionExpressiontuLBlockStatementtuחRExpressionStatementttSCallExpressionttXMemberExpressionttXMemberExpressionttTThisExpressionttKIdentifiertt__simObjKIdentifierttɰaboutToBeDeletedRExpressionStatementttSCallExpressionttXMemberExpressionttXMemberExpressionttTThisExpressionttKIdentifiertt__mac1KIdentifierttaboutToBeDeletedRExpressionStatementtuSCallExpressiontuXMemberExpressiontuXMemberExpressiontu +TThisExpressiontuKIdentifieruu +__mac2KIdentifieru uaboutToBeDeletedRExpressionStatementu(uGSCallExpressionu(uFXMemberExpressionu(uDXMemberExpressionu(u3TThisExpressionu(u,KIdentifieru-u3__mac3KIdentifieru4uDaboutToBeDeletedRExpressionStatementuQupSCallExpressionuQuoXMemberExpressionuQumXMemberExpressionuQu\TThisExpressionuQuUKIdentifieruVu\__mac4KIdentifieru]umaboutToBeDeletedRExpressionStatementuzuSCallExpressionuzuXMemberExpressionuzuSCallExpressionuzuXMemberExpressionuzuKIdentifieruzuSubscriberManagerKIdentifieruuGetKIdentifieruudelete‘SCallExpressionuuXMemberExpressionuuTThisExpressionuuKIdentifieruuid__RExpressionStatementuuSCallExpressionuuXMemberExpressionuuTThisExpressionuuKIdentifieruu͸aboutToBeDeletedInternalMMethodDefinitionuvKIdentifieruusetControllermethodNFunctionExpressionuv‘KIdentifieruuctrLBlockStatementuvRExpressionStatementuvWAssignmentExpressionuv=XMemberExpressionuv +TThisExpressionuuKIdentifiervv +controllerKIdentifierv vctrMMethodDefinitionvvXKIdentifierv"v(simObjgetNFunctionExpressionv(vXLBlockStatementv+vXZReturnStatementv6vQSCallExpressionv=vPXMemberExpressionv=vNXMemberExpressionv=vJTThisExpressionv=vAKIdentifiervBvJ__simObjKIdentifiervKvNgetMMethodDefinitionv^vKIdentifiervbvfmac1getNFunctionExpressionvfvLBlockStatementvivZReturnStatementvtvSCallExpressionv{vXMemberExpressionv{vXMemberExpressionv{vTThisExpressionv{vKIdentifiervv__mac1KIdentifiervvgetMMethodDefinitionvvKIdentifiervvmac1setNFunctionExpressionvv‘KIdentifiervvnewValueLBlockStatementvvّRExpressionStatementvvSCallExpressionvvXMemberExpressionvvXMemberExpressionvvTThisExpressionvvKIdentifiervvæ__mac1KIdentifiervvǣset‘KIdentifiervvШnewValueMMethodDefinitionvwKIdentifiervvmac2getNFunctionExpressionvwLBlockStatementvwZReturnStatementvwSCallExpressionvw XMemberExpressionvw XMemberExpressionvwTThisExpressionvwKIdentifierww__mac2KIdentifierww getMMethodDefinitionwwZKIdentifierww#mac2setNFunctionExpressionw#wZ‘KIdentifierw$w,newValueLBlockStatementw.wZRExpressionStatementw9wSSCallExpressionw9wRXMemberExpressionw9wHXMemberExpressionw9wDTThisExpressionw9w=KIdentifierw>wD__mac2KIdentifierwEwHset‘KIdentifierwIwQnewValueMMethodDefinitionw`wKIdentifierwdwhmac3getNFunctionExpressionwhwLBlockStatementwkwZReturnStatementwvwSCallExpressionw}wXMemberExpressionw}wXMemberExpressionw}wTThisExpressionw}wKIdentifierww__mac3KIdentifierwwgetMMethodDefinitionwwKIdentifierwwmac3setNFunctionExpressionww‘KIdentifierwwnewValueLBlockStatementwwۑRExpressionStatementwwSCallExpressionwwXMemberExpressionwwXMemberExpressionwwTThisExpressionwwKIdentifierwwŦ__mac3KIdentifierwwɣset‘KIdentifierwwҨnewValueMMethodDefinitionwxKIdentifierwwmac4getNFunctionExpressionwxLBlockStatementwxZReturnStatementwxSCallExpressionwxXMemberExpressionwx XMemberExpressionwx TThisExpressionwxKIdentifierxx __mac4KIdentifierx +x getMMethodDefinitionxx\KIdentifierx!x%mac4setNFunctionExpressionx%x\‘KIdentifierx&x.newValueLBlockStatementx0x\RExpressionStatementx;xUSCallExpressionx;xTXMemberExpressionx;xJXMemberExpressionx;xFTThisExpressionx;x?KIdentifierx@xF__mac4KIdentifierxGxJset‘KIdentifierxKxSnewValueMMethodDefinitionxb͘KIdentifierxbxoinitialRendermethodNFunctionExpressionxo͘LBlockStatementxr͘RExpressionStatementx}zSCallExpressionx}zXMemberExpressionx}xTThisExpressionx}xKIdentifierxxobserveComponentCreation‘NArrowFunctionExpressionxz’KIdentifierxxelmtIdKIdentifierxxisInitialRenderLBlockStatementxzRExpressionStatementxxSCallExpressionxxXMemberExpressionxxKIdentifierxxٲViewStackProcessorKIdentifierxxStartGetAccessRecordingFor‘KIdentifierxxelmtIdRExpressionStatementy ySCallExpressiony yXMemberExpressiony yKIdentifiery yColumnKIdentifieryycreateRExpressionStatementy)yZSCallExpressiony)yYXMemberExpressiony)y9KIdentifiery)y/ColumnKIdentifiery0y9debugLine‘QLiteraly:yXcomponents/Dialog.ets(247:5)"components/Dialog.ets(247:5)"RExpressionStatementyhySCallExpressionyhyXMemberExpressionyhy~KIdentifieryhynColumnKIdentifieryoy~backgroundColor‘XMemberExpressionyyKIdentifieryyColorKIdentifieryyWhiteRExpressionStatementyySCallExpressionyyXMemberExpressionyyKIdentifieryyColumnKIdentifieryyjustifyContent‘XMemberExpressionyyKIdentifieryyFlexAlignKIdentifieryyCenterRExpressionStatementyySCallExpressionyyXMemberExpressionyyKIdentifieryy֦ColumnKIdentifieryyalignItems‘XMemberExpressionyyKIdentifieryyHorizontalAlignKIdentifieryyCenterUIfStatementzzMPUnaryExpressionz z!KIdentifierz zisInitialRenderLBlockStatementzzMRExpressionStatementz1z>SCallExpressionz1z=XMemberExpressionz1z;KIdentifierz1z7ColumnKIdentifierz8z;popRExpressionStatementz[zSCallExpressionz[zXMemberExpressionz[zKIdentifierz[zmViewStackProcessorKIdentifierznzStopGetAccessRecordingRExpressionStatementz| SCallExpressionz| XMemberExpressionzzTThisExpressionzzKIdentifierzzobserveComponentCreation‘NArrowFunctionExpressionz| +’KIdentifierzzæelmtIdKIdentifierzzԯisInitialRenderLBlockStatementz| +RExpressionStatementz{SCallExpressionz{XMemberExpressionz{KIdentifierzzViewStackProcessorKIdentifierz{StartGetAccessRecordingFor‘KIdentifier{{elmtIdRExpressionStatement{,{9SCallExpression{,{8XMemberExpression{,{6KIdentifier{,{/RowKIdentifier{0{6createRExpressionStatement{G{uSCallExpression{G{tXMemberExpression{G{TKIdentifier{G{JRowKIdentifier{K{TdebugLine‘QLiteral{U{scomponents/Dialog.ets(248:7)"components/Dialog.ets(248:7)"UIfStatement{{PUnaryExpression{{!KIdentifier{{isInitialRenderLBlockStatement{{őRExpressionStatement{{SCallExpression{{XMemberExpression{{KIdentifier{{RowKIdentifier{{popRExpressionStatement{{SCallExpression{{XMemberExpression{{KIdentifier{{ViewStackProcessorKIdentifier{{StopGetAccessRecordingRExpressionStatement|~?SCallExpression|~>XMemberExpression||3TThisExpression||KIdentifier||3observeComponentCreation‘NArrowFunctionExpression|4~=’KIdentifier|5|;elmtIdKIdentifier|=|LisInitialRenderLBlockStatement|Q~=RExpressionStatement|`|SCallExpression|`|XMemberExpression|`|KIdentifier|`|rViewStackProcessorKIdentifier|s|StartGetAccessRecordingFor‘KIdentifier||elmtIdRExpressionStatement||SCallExpression||XMemberExpression||KIdentifier||TextInputKIdentifier||create‘[ObjectExpression||ב\Property||KIdentifier||«placeholderQLiteral||!请输入端口1下一跳:mac11#"请输入端口1下一跳:mac11"initRExpressionStatement|}SCallExpression|}XMemberExpression||KIdentifier||TextInputKIdentifier||debugLine‘QLiteral|}components/Dialog.ets(249:9)"components/Dialog.ets(249:9)"RExpressionStatement})}}SCallExpression})}|XMemberExpression})};KIdentifier})}2TextInputKIdentifier}3};onChange‘NArrowFunctionExpression}<}{‘KIdentifier}=}BvalueLBlockStatement}G}{RExpressionStatement}Z}lWAssignmentExpression}Z}k=XMemberExpression}Z}cTThisExpression}Z}^KIdentifier}_}cmac1KIdentifier}f}kvalueRExpressionStatement}}SCallExpression}}XMemberExpression}}KIdentifier}}TextInputKIdentifier}}width‘QLiteral}}80%'80%'UIfStatement}}PUnaryExpression}}ġ!KIdentifier}}įisInitialRenderLBlockStatement}}RExpressionStatement}}SCallExpression}}XMemberExpression}}KIdentifier}}TextInputKIdentifier}}popRExpressionStatement~~2SCallExpression~~1XMemberExpression~~/KIdentifier~~ViewStackProcessorKIdentifier~~/StopGetAccessRecordingRExpressionStatement~ÍSCallExpression~ÍXMemberExpression~I~fTThisExpression~I~MKIdentifier~N~fobserveComponentCreation‘NArrowFunctionExpression~ǵ’KIdentifier~h~nelmtIdKIdentifier~p~isInitialRenderLBlockStatement~́RExpressionStatement~~SCallExpression~~XMemberExpression~~KIdentifier~~ViewStackProcessorKIdentifier~~StartGetAccessRecordingFor‘KIdentifier~~ǦelmtIdRExpressionStatement~~SCallExpression~~XMemberExpression~~KIdentifier~~ݦButtonKIdentifier~~createWithLabel‘QLiteral~~添加"添加"RExpressionStatement3SCallExpression2XMemberExpressionKIdentifierButtonKIdentifier debugLine‘QLiteral1components/Dialog.ets(255:9)"components/Dialog.ets(255:9)"RExpressionStatementÁWSCallExpressionÁVXMemberExpressionAOKIdentifierAGButtonKIdentifierHOonClick‘NArrowFunctionExpressionṔULBlockStatementV́U]VariableDeclarationiϑ^VariableDeclaratormKIdentifiermupushItem[ObjectExpressionxΒ\PropertyKIdentifierportQLiteral1init\PropertyKIdentifiernetXMemberExpressionTThisExpressionKIdentifiermac1¤initletUIfStatement́FSCallExpressioǹ%XMemberExpressioǹXMemberExpressionXMemberExpressionTThisExpressionKIdentifiersimObjKIdentifierswitchTableKIdentifier̀some‘NArrowFunctionExpressioǹ̀$‘KIdentifier̀̀itemVBinaryExpressioǹ +̀$XMemberExpressioǹ +̀KIdentifier̀ +̀itemKIdentifier̀̀port¢==XMemberExpressioǹ̀$KIdentifier̀̀pushItemKIdentifier̀ ̀$portLBlockStatement̀'̀RExpressionStatement̀>̀tWAssignmentExpressioǹ>̀s=XMemberExpressioǹ>̀hXMemberExpressioǹ>̀UXMemberExpressioǹ>̀ITThisExpressioǹ>̀BKIdentifier̀C̀IsimObjKIdentifier̀J̀UswitchTableVBinaryExpressioǹV̀gXMemberExpressioǹV̀cKIdentifier̀V̀^pushItemKIdentifier̀_̀cport¡-QLiteral̀f̀g1KIdentifier̀k̀spushItemLBlockStatement̀́FRExpressionStatement̀̀SCallExpressioǹ̀XMemberExpressioǹ̀XMemberExpressioǹ̀XMemberExpressioǹ̀TThisExpressioǹ̀KIdentifier̀̀simObjKIdentifier̫̀̀switchTableKIdentifier̀̀Ѥpush‘KIdentifier̀̀ڨpushItemRExpressionStatement̀́3SCallExpressioǹ́2XMemberExpressioǹ́XMemberExpressioǹ́ XMemberExpressioǹ̀TThisExpressioǹ̀KIdentifier̀̀simObjKIdentifier̀́ switchTableKIdentifieŕ +́sort‘NArrowFunctionExpressioń́1’KIdentifieŕ́aKIdentifieŕ́bUConditionalExpressioń́1VBinaryExpressioń́(XMemberExpressioń́KIdentifieŕ́aKIdentifieŕ́port¡>XMemberExpressioń"́(KIdentifieŕ"́#bKIdentifieŕ$́(portQLiteraĺ+́,1PUnaryExpressioń/́1-QLiteraĺ0́11UIfStatement́éPUnaryExpressiońíy!KIdentifieŕj́yisInitialRenderLBlockStatement́{́RExpressionStatement́́SCallExpressioń́XMemberExpressioń́KIdentifieŕ́ButtonKIdentifieŕ́popRExpressionStatement́́SCallExpressioń́XMemberExpressioń́KIdentifieŕ́ʲViewStackProcessorKIdentifieŕ́StopGetAccessRecordingRExpressionStatement́͂SCallExpressioń͂XMemberExpressioń͂KIdentifieŕ͂ButtonKIdentifier͂͂popRExpressionStatement͂͂SCallExpression͂͂XMemberExpression͂͂KIdentifier͂͂RowKIdentifier͂͂popRExpressionStatement͂&̓SCallExpression͂&̓XMemberExpression͂&͂CTThisExpression͂&͂*KIdentifier͂+͂CobserveComponentCreation‘NArrowFunctionExpression͂D̓’KIdentifier͂E͂KelmtIdKIdentifier͂M͂\isInitialRenderLBlockStatement͂a̓RExpressionStatement͂p͂SCallExpression͂p͂XMemberExpression͂p͂KIdentifier͂p͂ViewStackProcessorKIdentifier͂͂StartGetAccessRecordingFor‘KIdentifier͂͂elmtIdRExpressionStatement͂͂SCallExpression͂͂XMemberExpression͂͂KIdentifier͂͂RowKIdentifier͂͂createRExpressionStatement͂͂SCallExpression͂͂XMemberExpression͂͂KIdentifier͂͂ңRowKIdentifier͂͂ܩdebugLine‘QLiteral͂͂components/Dialog.ets(270:7)"components/Dialog.ets(270:7)"UIfStatement̓ ̓MPUnaryExpression̓̓!KIdentifier̓̓isInitialRenderLBlockStatement̓!̓MRExpressionStatement̓4̓>SCallExpression̓4̓=XMemberExpression̓4̓;KIdentifier̓4̓7RowKIdentifier̓8̓;popRExpressionStatement̓[̓SCallExpression̓[̓XMemberExpression̓[̓KIdentifier̓[̓mViewStackProcessorKIdentifier̓n̓StopGetAccessRecordingRExpressionStatement̓ͅSCallExpression̓ͅXMemberExpression̓̓TThisExpression̓̓KIdentifier̓̓observeComponentCreation‘NArrowFunctionExpression̓ͅ’KIdentifier̓̓æelmtIdKIdentifier̓̓ԯisInitialRenderLBlockStatement̓ͅRExpressionStatement̓̈́SCallExpression̓̈́XMemberExpression̓̈́KIdentifier̓̓ViewStackProcessorKIdentifier̓̈́StartGetAccessRecordingFor‘KIdentifier̈́̈́elmtIdRExpressionStatemenẗ́,̈́\SCallExpression̈́,̈́[XMemberExpression̈́,̈́KIdentifier͇0͇3netXMemberExpression͇5͇>TThisExpression͇5͇9KIdentifier͇:͇>mac2¤initletUIfStatement͇d͈SCallExpression͇h͇XMemberExpression͇h͇XMemberExpression͇h͇XMemberExpression͇h͇sTThisExpression͇h͇lKIdentifier͇m͇ssimObjKIdentifier͇t͇switchTableKIdentifier͇͇some‘NArrowFunctionExpression͇͇‘KIdentifier͇͇itemVBinaryExpression͇͇XMemberExpression͇͇KIdentifier͇͇itemKIdentifier͇͇port¢==XMemberExpression͇͇KIdentifier͇͇pushItemKIdentifier͇͇portLBlockStatement͇͈ +RExpressionStatement͇͇WAssignmentExpression͇͇=XMemberExpression͇͇XMemberExpression͇͇XMemberExpression͇͇TThisExpression͇͇KIdentifier͇͇̦simObjKIdentifier͇͇ثswitchTableVBinaryExpression͇͇XMemberExpression͇͇KIdentifier͇͇pushItemKIdentifier͇͇port¡-QLiteral͇͇1KIdentifier͇͇pushItemLBlockStatement͈!͈ɒRExpressionStatement͈8͈_SCallExpression͈8͈^XMemberExpression͈8͈TXMemberExpression͈8͈OXMemberExpression͈8͈CTThisExpression͈8͈XMemberExpression͈͈KIdentifier͈͈bKIdentifier͈͈portQLiteral͈͈1PUnaryExpression͈͈-QLiteral͈͈1UIfStatement͈͉-PUnaryExpression͈͈!KIdentifier͈͈isInitialRenderLBlockStatement͈͉-RExpressionStatement͉͉SCallExpression͉͉XMemberExpression͉͉KIdentifier͉͉ButtonKIdentifier͉͉popRExpressionStatement͉;͉gSCallExpression͉;͉fXMemberExpression͉;͉dKIdentifier͉;͉MViewStackProcessorKIdentifier͉N͉dStopGetAccessRecordingRExpressionStatement͉~͉SCallExpression͉~͉XMemberExpression͉~͉KIdentifier͉~͉ButtonKIdentifier͉͉popRExpressionStatement͉͉SCallExpression͉͉XMemberExpression͉͉KIdentifier͉͉RowKIdentifier͉͉popRExpressionStatement͉͋SCallExpression͉͋XMemberExpression͉͉TThisExpression͉͉KIdentifier͉͉ƸobserveComponentCreation‘NArrowFunctionExpression͉͋’KIdentifier͉͉ΦelmtIdKIdentifier͉͉߯isInitialRenderLBlockStatement͉͋RExpressionStatement͉͊)SCallExpression͉͊(XMemberExpression͉͊ KIdentifier͉͊ViewStackProcessorKIdentifier͊͊ StartGetAccessRecordingFor‘KIdentifier͊!͊'elmtIdRExpressionStatement͊7͊DSCallExpression͊7͊CXMemberExpression͊7͊AKIdentifier͊7͊:RowKIdentifier͊;͊AcreateRExpressionStatement͊R͊SCallExpression͊R͊XMemberExpression͊R͊_KIdentifier͊R͊URowKIdentifier͊V͊_debugLine‘QLiteral͊`͊~components/Dialog.ets(292:7)"components/Dialog.ets(292:7)"UIfStatement͊͊PUnaryExpression͊͊!KIdentifier͊͊isInitialRenderLBlockStatement͊͊БRExpressionStatement͊͊SCallExpression͊͊XMemberExpression͊͊KIdentifier͊͊RowKIdentifier͊͊popRExpressionStatement͊͋ +SCallExpression͊͋ XMemberExpression͊͋KIdentifier͊͊ViewStackProcessorKIdentifier͊͋StopGetAccessRecordingRExpressionStatement͋!͍ESCallExpression͋!͍DXMemberExpression͋!͋>TThisExpression͋!͋%KIdentifier͋&͋>observeComponentCreation‘NArrowFunctionExpression͋?͍C’KIdentifier͋@͋FelmtIdKIdentifier͋H͋WisInitialRenderLBlockStatement͋\͍CRExpressionStatement͋k͋SCallExpression͋k͋XMemberExpression͋k͋KIdentifier͋k͋}ViewStackProcessorKIdentifier͋~͋StartGetAccessRecordingFor‘KIdentifier͋͋elmtIdRExpressionStatement͋͋SCallExpression͋͋XMemberExpression͋͋KIdentifier͋͋TextInputKIdentifier͋͋create‘[ObjectExpression͋͋ݑ\Property͋͋KIdentifier͋͋ͫplaceholderQLiteral͋͋ۼ请输入端口3下一跳:"请输入端口3下一跳:"initRExpressionStatement͋͌!SCallExpression͋͌ XMemberExpression͋͌KIdentifier͋͋TextInputKIdentifier͋͌debugLine‘QLiteral͌͌components/Dialog.ets(293:9)"components/Dialog.ets(293:9)"RExpressionStatement͌/͌SCallExpression͌/͌XMemberExpression͌/͌AKIdentifier͌/͌8TextInputKIdentifier͌9͌AonChange‘NArrowFunctionExpression͌B͌‘KIdentifier͌C͌HvalueLBlockStatement͌M͌RExpressionStatement͌`͌rWAssignmentExpression͌`͌q=XMemberExpression͌`͌iTThisExpression͌`͌dKIdentifier͌e͌imac3KIdentifier͌l͌qvalueRExpressionStatement͌͌SCallExpression͌͌XMemberExpression͌͌KIdentifier͌͌TextInputKIdentifier͌͌width‘QLiteral͌͌80%'80%'UIfStatement͌͌PUnaryExpression͌͌ʡ!KIdentifier͌͌ʯisInitialRenderLBlockStatement͌͌RExpressionStatement͌͌SCallExpression͌͌XMemberExpression͌͌KIdentifier͌͌TextInputKIdentifier͌͌popRExpressionStatement͍ ͍8SCallExpression͍ ͍7XMemberExpression͍ ͍5KIdentifier͍ ͍ViewStackProcessorKIdentifier͍͍5StopGetAccessRecordingRExpressionStatement͍O͐SCallExpression͍O͐XMemberExpression͍O͍lTThisExpression͍O͍SKIdentifier͍T͍lobserveComponentCreation‘NArrowFunctionExpression͍m͐’KIdentifier͍n͍telmtIdKIdentifier͍v͍isInitialRenderLBlockStatement͍͐RExpressionStatement͍͍SCallExpression͍͍XMemberExpression͍͍KIdentifier͍͍ViewStackProcessorKIdentifier͍͍ƺStartGetAccessRecordingFor‘KIdentifier͍͍ͦelmtIdRExpressionStatement͍͍SCallExpression͍͍XMemberExpression͍͍KIdentifier͍͍ButtonKIdentifier͍͍createWithLabel‘QLiteral͍͍添加"添加"RExpressionStatement͎͎9SCallExpression͎͎8XMemberExpression͎͎KIdentifier͎͎ButtonKIdentifier͎͎debugLine‘QLiteral͎͎7components/Dialog.ets(299:9)"components/Dialog.ets(299:9)"RExpressionStatement͎G͐]SCallExpression͎G͐\XMemberExpression͎G͎UKIdentifier͎G͎MButtonKIdentifier͎N͎UonClick‘NArrowFunctionExpression͎V͐[LBlockStatement͎\͐[]VariableDeclaration͎o͎Ց^VariableDeclarator͎s͎KIdentifier͎s͎{pushItem[ObjectExpression͎~͎Ԓ\Property͎͎KIdentifier͎͎portQLiteral͎͎3init\Property͎͎KIdentifier͎͎netXMemberExpression͎͎TThisExpression͎͎KIdentifier͎͎mac3¤initletUIfStatement͎͐LSCallExpression͎͏+XMemberExpression͎͏XMemberExpression͎͏XMemberExpression͎͎TThisExpression͎͎KIdentifier͎͎simObjKIdentifier͎͏switchTableKIdentifier͏͏some‘NArrowFunctionExpression͏͏*‘KIdentifier͏͏ itemVBinaryExpression͏͏*XMemberExpression͏͏KIdentifier͏͏itemKIdentifier͏͏port¢==XMemberExpression͏͏*KIdentifier͏͏%pushItemKIdentifier͏&͏*portLBlockStatement͏-͏RExpressionStatement͏D͏zWAssignmentExpression͏D͏y=XMemberExpression͏D͏nXMemberExpression͏D͏[XMemberExpression͏D͏OTThisExpression͏D͏HKIdentifier͏I͏OsimObjKIdentifier͏P͏[switchTableVBinaryExpression͏\͏mXMemberExpression͏\͏iKIdentifier͏\͏dpushItemKIdentifier͏e͏iport¡-QLiteral͏l͏m1KIdentifier͏q͏ypushItemLBlockStatement͏͐LRExpressionStatement͏͏SCallExpression͏͏XMemberExpression͏͏XMemberExpression͏͏XMemberExpression͏͏TThisExpression͏͏KIdentifier͏͏ƦsimObjKIdentifier͏͏ҫswitchTableKIdentifier͏͏פpush‘KIdentifier͏͏pushItemRExpressionStatement͏͐9SCallExpression͏͐8XMemberExpression͏͐XMemberExpression͏͐XMemberExpression͏͐TThisExpression͏͏KIdentifier͏͐simObjKIdentifier͐͐switchTableKIdentifier͐͐sort‘NArrowFunctionExpression͐͐7’KIdentifier͐͐aKIdentifier͐͐bUConditionalExpression͐͐7VBinaryExpression͐͐.XMemberExpression͐͐%KIdentifier͐͐ aKIdentifier͐!͐%port¡>XMemberExpression͐(͐.KIdentifier͐(͐)bKIdentifier͐*͐.portQLiteral͐1͐21PUnaryExpression͐5͐7-QLiteral͐6͐71UIfStatement͐k͐PUnaryExpression͐o͐!KIdentifier͐p͐isInitialRenderLBlockStatement͐͐RExpressionStatement͐͐SCallExpression͐͐XMemberExpression͐͐KIdentifier͐͐ButtonKIdentifier͐͐popRExpressionStatement͐͐SCallExpression͐͐XMemberExpression͐͐KIdentifier͐͐вViewStackProcessorKIdentifier͐͐StopGetAccessRecordingRExpressionStatement͑͑SCallExpression͑͑ XMemberExpression͑͑ KIdentifier͑͑ButtonKIdentifier͑͑ popRExpressionStatement͑͑"SCallExpression͑͑!XMemberExpression͑͑KIdentifier͑͑RowKIdentifier͑͑popRExpressionStatement͑,͒SCallExpression͑,͒XMemberExpression͑,͑ITThisExpression͑,͑0KIdentifier͑1͑IobserveComponentCreation‘NArrowFunctionExpression͑J͒’KIdentifier͑K͑QelmtIdKIdentifier͑S͑bisInitialRenderLBlockStatement͑g͒RExpressionStatement͑v͑SCallExpression͑v͑XMemberExpression͑v͑KIdentifier͑v͑ViewStackProcessorKIdentifier͑͑StartGetAccessRecordingFor‘KIdentifier͑͑elmtIdRExpressionStatement͑͑SCallExpression͑͑XMemberExpression͑͑KIdentifier͑͑RowKIdentifier͑͑ĦcreateRExpressionStatement͑͒SCallExpression͑͒XMemberExpression͑͑KIdentifier͑͑أRowKIdentifier͑͑debugLine‘QLiteral͑͒components/Dialog.ets(314:7)"components/Dialog.ets(314:7)"UIfStatement͒͒SPUnaryExpression͒͒%!KIdentifier͒͒%isInitialRenderLBlockStatement͒'͒SRExpressionStatement͒:͒DSCallExpression͒:͒CXMemberExpression͒:͒AKIdentifier͒:͒=RowKIdentifier͒>͒ApopRExpressionStatement͒a͒SCallExpression͒a͒XMemberExpression͒a͒KIdentifier͒a͒sViewStackProcessorKIdentifier͒t͒StopGetAccessRecordingRExpressionStatement͔͒SCallExpression͔͒XMemberExpression͒͒TThisExpression͒͒KIdentifier͒͒observeComponentCreation‘NArrowFunctionExpression͔͒’KIdentifier͒͒ɦelmtIdKIdentifier͒͒گisInitialRenderLBlockStatement͔͒ƗRExpressionStatement͓͒$SCallExpression͓͒#XMemberExpression͓͒KIdentifier͓͒ViewStackProcessorKIdentifier͓͓StartGetAccessRecordingFor‘KIdentifier͓͓"elmtIdRExpressionStatement͓2͓bSCallExpression͓2͓aXMemberExpression͓2͓BKIdentifier͓2͓;TextInputKIdentifier͓<͓Bcreate‘[ObjectExpression͓C͓`\Property͓E͓^KIdentifier͓E͓PplaceholderQLiteral͓R͓^请输入端口4下一跳:"请输入端口4下一跳:"initRExpressionStatement͓p͓SCallExpression͓p͓XMemberExpression͓p͓KIdentifier͓p͓yTextInputKIdentifier͓z͓debugLine‘QLiteral͓͓components/Dialog.ets(315:9)"components/Dialog.ets(315:9)"RExpressionStatement͓͔SCallExpression͓͔XMemberExpression͓͓KIdentifier͓͓TextInputKIdentifier͓͓ĨonChange‘NArrowFunctionExpression͓͔‘KIdentifier͓͓˥valueLBlockStatement͓͔RExpressionStatement͓͓WAssignmentExpression͓͓=XMemberExpression͓͓TThisExpression͓͓KIdentifier͓͓mac4KIdentifier͓͓valueRExpressionStatement͔͔+SCallExpression͔͔*XMemberExpression͔͔#KIdentifier͔͔TextInputKIdentifier͔͔#width‘QLiteral͔$͔)80%'80%'UIfStatement͔9͔PUnaryExpression͔=͔M!KIdentifier͔>͔MisInitialRenderLBlockStatement͔O͔RExpressionStatement͔b͔rSCallExpression͔b͔qXMemberExpression͔b͔oKIdentifier͔b͔kTextInputKIdentifier͔l͔opopRExpressionStatement͔͔SCallExpression͔͔XMemberExpression͔͔KIdentifier͔͔ViewStackProcessorKIdentifier͔͔StopGetAccessRecordingRExpressionStatement͔͘zSCallExpression͔͘yXMemberExpression͔͔TThisExpression͔͔KIdentifier͔͔observeComponentCreation‘NArrowFunctionExpression͔͘x’KIdentifier͔͔elmtIdKIdentifier͔͕isInitialRenderLBlockStatement͕ ͘xRExpressionStatement͕͕RSCallExpression͕͕QXMemberExpression͕͕IKIdentifier͕͕.ViewStackProcessorKIdentifier͕/͕IStartGetAccessRecordingFor‘KIdentifier͕J͕PelmtIdRExpressionStatement͕`͕}SCallExpression͕`͕|XMemberExpression͕`͕vKIdentifier͕`͕fButtonKIdentifier͕g͕vcreateWithLabel‘QLiteral͕w͕{添加"添加"RExpressionStatement͕͕SCallExpression͕͕XMemberExpression͕͕KIdentifier͕͕ButtonKIdentifier͕͕debugLine‘QLiteral͕͕components/Dialog.ets(321:9)"components/Dialog.ets(321:9)"RExpressionStatement͕͗SCallExpression͕͗XMemberExpression͕͕KIdentifier͕͕ЦButtonKIdentifier͕͕اonClick‘NArrowFunctionExpression͕͗LBlockStatement͕͗ޒ]VariableDeclaration͕͖X^VariableDeclarator͕͖WKIdentifier͕͕pushItem[ObjectExpression͖͖W\Property͖͖KIdentifier͖͖portQLiteral͖͖4init\Property͖6͖DKIdentifier͖6͖9netXMemberExpression͖;͖DTThisExpression͖;͖?KIdentifier͖@͖Dmac4¤initletUIfStatement͖j͗SCallExpression͖n͖XMemberExpression͖n͖XMemberExpression͖n͖XMemberExpression͖n͖yTThisExpression͖n͖rKIdentifier͖s͖ysimObjKIdentifier͖z͖switchTableKIdentifier͖͖some‘NArrowFunctionExpression͖͖‘KIdentifier͖͖itemVBinaryExpression͖͖XMemberExpression͖͖KIdentifier͖͖itemKIdentifier͖͖port¢==XMemberExpression͖͖KIdentifier͖͖pushItemKIdentifier͖͖portLBlockStatement͖͗RExpressionStatement͖͖WAssignmentExpression͖͖=XMemberExpression͖͖XMemberExpression͖͖XMemberExpression͖͖TThisExpression͖͖KIdentifier͖͖ҦsimObjKIdentifier͖͖ޫswitchTableVBinaryExpression͖͖XMemberExpression͖͖KIdentifier͖͖pushItemKIdentifier͖͖port¡-QLiteral͖͖1KIdentifier͖͖pushItemLBlockStatement͗'͗ϒRExpressionStatement͗>͗eSCallExpression͗>͗dXMemberExpression͗>͗ZXMemberExpression͗>͗UXMemberExpression͗>͗ITThisExpression͗>͗BKIdentifier͗C͗IsimObjKIdentifier͗J͗UswitchTableKIdentifier͗V͗Zpush‘KIdentifier͗[͗cpushItemRExpressionStatement͗{͗SCallExpression͗{͗XMemberExpression͗{͗XMemberExpression͗{͗XMemberExpression͗{͗TThisExpression͗{͗KIdentifier͗͗simObjKIdentifier͗͗switchTableKIdentifier͗͗sort‘NArrowFunctionExpression͗͗’KIdentifier͗͗aKIdentifier͗͗bUConditionalExpression͗͗VBinaryExpression͗͗XMemberExpression͗͗KIdentifier͗͗aKIdentifier͗͗port¡>XMemberExpression͗͗KIdentifier͗͗bKIdentifier͗͗portQLiteral͗͗1PUnaryExpression͗͗-QLiteral͗͗1UIfStatement͗͘3PUnaryExpression͗͘!KIdentifier͗͘isInitialRenderLBlockStatement͘͘3RExpressionStatement͘͘$SCallExpression͘͘#XMemberExpression͘͘!KIdentifier͘͘ButtonKIdentifier͘͘!popRExpressionStatement͘A͘mSCallExpression͘A͘lXMemberExpression͘A͘jKIdentifier͘A͘SViewStackProcessorKIdentifier͘T͘jStopGetAccessRecordingRExpressionStatement͘͘SCallExpression͘͘XMemberExpression͘͘KIdentifier͘͘ButtonKIdentifier͘͘popRExpressionStatement͘͘SCallExpression͘͘XMemberExpression͘͘KIdentifier͘͘RowKIdentifier͘͘popRExpressionStatement͘͘SCallExpression͘͘XMemberExpression͘͘KIdentifier͘͘ColumnKIdentifier͘͘popMMethodDefinition͙͘KIdentifier͘͘ѨrerendermethodNFunctionExpression͙͘LBlockStatement͙͘RExpressionStatement͘͘SCallExpression͘͘XMemberExpression͘͘TThisExpression͘͘KIdentifier͘͘updateDirtyElementsIExportNamedDeclaration͙ͶJClassDeclaration͙ ͶKIdentifier͙͙PacketSetKIdentifier͙%͙+ViewPULClassBody͙,ͶMMethodDefinition͙3͜ZKIdentifier͙3͙>constructorconstructorNFunctionExpression͙>͜Z•KIdentifier͙?͙EparentKIdentifier͙G͙MparamsKIdentifier͙O͙]__localStorageOAssignmentPattern͙_͙jKIdentifier͙_͙eelmtIdPUnaryExpression͙h͙j-QLiteral͙i͙j1OAssignmentPattern͙l͙KIdentifier͙l͙xparamsLambdaKIdentifier͙{͙undefinedLBlockStatement͙͜ZRExpressionStatement͙͙SCallExpression͙͙TSuper͙͙KIdentifier͙͙parentKIdentifier͙͙__localStorageKIdentifier͙͙elmtIdUIfStatement͙͚(VBinaryExpression͙͙PUnaryExpression͙͙ئtypeofKIdentifier͙͙جparamsLambda===QLiteral͙͙function"function"LBlockStatement͙͚(RExpressionStatement͙͚WAssignmentExpression͙͚=XMemberExpression͙͚ TThisExpression͙͙KIdentifier͙͚ paramsGenerator_KIdentifier͚͚paramsLambdaRExpressionStatement͚2͚NWAssignmentExpression͚2͚M=XMemberExpression͚2͚ATThisExpression͚2͚6KIdentifier͚7͚AcontrollerKIdentifier͚D͚MundefinedRExpressionStatement͚X͚WAssignmentExpression͚X͚=XMemberExpression͚X͚eTThisExpression͚X͚\KIdentifier͚]͚e__simObjYNewExpression͚h͚KIdentifier͚l͚SynchedPropertyNesedObjectPUXMemberExpression͚͚KIdentifier͚͚paramsKIdentifier͚͚simObjTThisExpression͚͚QLiteral͚͚simObj"simObj"RExpressionStatement͚͚WAssignmentExpression͚͚=XMemberExpression͚͚TThisExpression͚͚KIdentifier͚͚__ipYNewExpression͚͚KIdentifier͚͚ڸObservedPropertySimplePUQLiteral͚͚ݠ""TThisExpression͚͚QLiteral͚͚ip"ip"RExpressionStatement͚͛0WAssignmentExpression͚͛/=XMemberExpression͚͚TThisExpression͚͚KIdentifier͚͚__macYNewExpression͛͛/KIdentifier͛͛ObservedPropertySimplePUQLiteral͛͛!""TThisExpression͛#͛'QLiteral͛)͛.mac"mac"RExpressionStatement͛:͛}WAssignmentExpression͛:͛|=XMemberExpression͛:͛HTThisExpression͛:͛>KIdentifier͛?͛H__messageYNewExpression͛K͛|KIdentifier͛O͛gObservedPropertySimplePUQLiteral͛h͛j""TThisExpression͛l͛pQLiteral͛r͛{message"message"RExpressionStatement͛͛WAssignmentExpression͛͛ʡ=XMemberExpression͛͛TThisExpression͛͛KIdentifier͛͛__allSimObjSCallExpression͛͛XMemberExpression͛͛TThisExpression͛͛KIdentifier͛͛initializeConsume’QLiteral͛͛allSimObj"allSimObj"QLiteral͛͛ɩallSimObj"allSimObj"RExpressionStatement͛͜"WAssignmentExpression͛͜!=XMemberExpression͛͛TThisExpression͛͛KIdentifier͛͛__allSimPacketSCallExpression͛͜!XMemberExpression͛͜TThisExpression͛͛KIdentifier͛͜initializeConsume’QLiteral͜͜allSimPacket"allSimPacket"QLiteral͜͜ allSimPacket"allSimPacket"RExpressionStatement͜,͜SSCallExpression͜,͜RXMemberExpression͜,͜JTThisExpression͜,͜0KIdentifier͜1͜JsetInitiallyProvidedValue‘KIdentifier͜K͜QparamsMMethodDefinition͜`͞3KIdentifier͜`͜ysetInitiallyProvidedValuemethodNFunctionExpression͜y͞3‘KIdentifier͜z͜paramsLBlockStatement͜͞3UIfStatement͜͜VBinaryExpression͜͜XMemberExpression͜͜KIdentifier͜͜paramsKIdentifier͜͜controller£!==KIdentifier͜͜undefinedLBlockStatement͜͜RExpressionStatement͜͜WAssignmentExpression͜͜=XMemberExpression͜͜TThisExpression͜͜KIdentifier͜͜ЪcontrollerXMemberExpression͜͜KIdentifier͜͜٦paramsKIdentifier͜͜controllerRExpressionStatement͜͝SCallExpression͜͝XMemberExpression͜͝ XMemberExpression͜͝TThisExpression͜͜KIdentifier͜͝__simObjKIdentifier͝͝ set‘XMemberExpression͝ ͝KIdentifier͝ ͝paramsKIdentifier͝͝simObjUIfStatement͝%͝pVBinaryExpression͝)͝@XMemberExpression͝)͝2KIdentifier͝)͝/paramsKIdentifier͝0͝2ip£!==KIdentifier͝7͝@undefinedLBlockStatement͝B͝pRExpressionStatement͝Q͝eWAssignmentExpression͝Q͝d=XMemberExpression͝Q͝XTThisExpression͝Q͝UKIdentifier͝V͝XipXMemberExpression͝[͝dKIdentifier͝[͝aparamsKIdentifier͝b͝dipUIfStatement͝z͝VBinaryExpression͝~͝XMemberExpression͝~͝KIdentifier͝~͝paramsKIdentifier͝͝mac£!==KIdentifier͝͝undefinedLBlockStatement͝͝ȑRExpressionStatement͝͝WAssignmentExpression͝͝=XMemberExpression͝͝TThisExpression͝͝KIdentifier͝͝macXMemberExpression͝͝KIdentifier͝͝paramsKIdentifier͝͝macUIfStatement͝͞,VBinaryExpression͝͝XMemberExpression͝͝KIdentifier͝͝ܦparamsKIdentifier͝͝message£!==KIdentifier͝͝undefinedLBlockStatement͝͞,RExpressionStatement͞͞!WAssignmentExpression͞͞ =XMemberExpression͞͞TThisExpression͞͞KIdentifier͞͞messageXMemberExpression͞͞ KIdentifier͞͞paramsKIdentifier͞͞ messageMMethodDefinition͞9͞KIdentifier͞9͞HupdateStateVarsmethodNFunctionExpression͞H͞‘KIdentifier͞I͞OparamsLBlockStatement͞Q͞RExpressionStatement͞\͞}SCallExpression͞\͞|XMemberExpression͞\͞mXMemberExpression͞\͞iTThisExpression͞\͞`KIdentifier͞a͞i__simObjKIdentifier͞j͞mset‘XMemberExpression͞n͞{KIdentifier͞n͞tparamsKIdentifier͞u͞{simObjMMethodDefinition͞͠KIdentifier͞͞!purgeVariableDependenciesOnElmtIdmethodNFunctionExpression͞͠‘KIdentifier͞͞rmElmtIdLBlockStatement͞͠RExpressionStatement͞͞SCallExpression͞͞XMemberExpression͞͞XMemberExpression͞͞TThisExpression͞͞KIdentifier͞͞Ψ__simObjKIdentifier͞͞purgeDependencyOnElmtId‘KIdentifier͞͞rmElmtIdRExpressionStatement͟͞'SCallExpression͟͞&XMemberExpression͟͞XMemberExpression͟͞TThisExpression͞͞KIdentifier͟͟__ipKIdentifier͟͟purgeDependencyOnElmtId‘KIdentifier͟͟%rmElmtIdRExpressionStatement͟1͟^SCallExpression͟1͟]XMemberExpression͟1͟SXMemberExpression͟1͟;TThisExpression͟1͟5KIdentifier͟6͟;__macKIdentifier͟<͟SpurgeDependencyOnElmtId‘KIdentifier͟T͟\rmElmtIdRExpressionStatement͟h͟SCallExpression͟h͟XMemberExpression͟h͟XMemberExpression͟h͟vTThisExpression͟h͟lKIdentifier͟m͟v__messageKIdentifier͟w͟purgeDependencyOnElmtId‘KIdentifier͟͟rmElmtIdRExpressionStatement͟͟SCallExpression͟͟XMemberExpression͟͟XMemberExpression͟͟TThisExpression͟͟KIdentifier͟͟__allSimObjKIdentifier͟͟˷purgeDependencyOnElmtId‘KIdentifier͟͟ԨrmElmtIdRExpressionStatement͟͠SCallExpression͟͠XMemberExpression͟͠ XMemberExpression͟͟TThisExpression͟͟KIdentifier͟͟__allSimPacketKIdentifier͟͠ purgeDependencyOnElmtId‘KIdentifier͠ ͠rmElmtIdMMethodDefinition͠#͡KIdentifier͠#͠3aboutToBeDeletedmethodNFunctionExpression͠3͡LBlockStatement͠6͡RExpressionStatement͠A͠bSCallExpression͠A͠aXMemberExpression͠A͠_XMemberExpression͠A͠NTThisExpression͠A͠EKIdentifier͠F͠N__simObjKIdentifier͠O͠_aboutToBeDeletedRExpressionStatement͠l͠SCallExpression͠l͠XMemberExpression͠l͠XMemberExpression͠l͠uTThisExpression͠l͠pKIdentifier͠q͠u__ipKIdentifier͠v͠aboutToBeDeletedRExpressionStatement͠͠SCallExpression͠͠XMemberExpression͠͠XMemberExpression͠͠TThisExpression͠͠KIdentifier͠͠__macKIdentifier͠͠aboutToBeDeletedRExpressionStatement͠͠SCallExpression͠͠XMemberExpression͠͠XMemberExpression͠͠TThisExpression͠͠KIdentifier͠͠ɩ__messageKIdentifier͠͠ڰaboutToBeDeletedRExpressionStatement͠͡ SCallExpression͠͡ +XMemberExpression͠͡XMemberExpression͠͠TThisExpression͠͠KIdentifier͠͠__allSimObjKIdentifier͠͡aboutToBeDeletedRExpressionStatement͢͡͡USCallExpression͢E͢TXMemberExpression͢E͢RXMemberExpression͢E͢NTThisExpression͢E͢IKIdentifier͢J͢N__ipKIdentifier͢O͢RgetMMethodDefinition͢b͢KIdentifier͢f͢hipsetNFunctionExpression͢h͢‘KIdentifier͢i͢qnewValueLBlockStatement͢s͢RExpressionStatement͢~͢SCallExpression͢~͢XMemberExpression͢~͢XMemberExpression͢~͢TThisExpression͢~͢KIdentifier͢͢__ipKIdentifier͢͢set‘KIdentifier͢͢newValueMMethodDefinition͢͢KIdentifier͢͢macgetNFunctionExpression͢͢LBlockStatement͢͢בZReturnStatement͢͢SCallExpression͢͢XMemberExpression͢͢XMemberExpression͢͢TThisExpression͢͢KIdentifier͢͢ɥ__macKIdentifierͣ͢͢getMMethodDefinitionͣ͢KIdentifier͢͢macsetNFunctionExpressionͣ͢‘KIdentifier͢͢newValueLBlockStatementͣ͢RExpressionStatementͣ͢SCallExpressionͣ͢XMemberExpressionͣ͢XMemberExpressionͣ͢TThisExpression͢͢KIdentifierͣ͢__macKIdentifierͣͣset‘KIdentifierͣ ͣnewValueMMethodDefinitionͣ ͣ\KIdentifierͣ$ͣ+messagegetNFunctionExpressionͣ+ͣ\LBlockStatementͣ.ͣ\ZReturnStatementͣ9ͣUSCallExpressionͣ@ͣTXMemberExpressionͣ@ͣRXMemberExpressionͣ@ͣNTThisExpressionͣ@ͣDKIdentifierͣEͣN__messageKIdentifierͣOͣRgetMMethodDefinitionͣbͣKIdentifierͣfͣmmessagesetNFunctionExpressionͣmͣ‘KIdentifierͣnͣvnewValueLBlockStatementͣxͣRExpressionStatementͣͣSCallExpressionͣͣXMemberExpressionͣͣXMemberExpressionͣͣTThisExpressionͣͣKIdentifierͣͣ__messageKIdentifierͣͣset‘KIdentifierͣͣnewValueMMethodDefinitionͣͣKIdentifierͣͣallSimObjgetNFunctionExpressionͣͣLBlockStatementͣͣZReturnStatementͣͣSCallExpressionͣͣXMemberExpressionͣͣXMemberExpressionͣͣTThisExpressionͣͣKIdentifierͣͣ߫__allSimObjKIdentifierͣͣgetMMethodDefinitionͣͤͧDelmtIdKIdentifierͧFͧUisInitialRenderLBlockStatementͧZͩ%RExpressionStatementͧiͧSCallExpressionͧiͧXMemberExpressionͧiͧKIdentifierͧiͧ{ViewStackProcessorKIdentifierͧ|ͧStartGetAccessRecordingFor‘KIdentifierͧͧelmtIdRExpressionStatementͧͧSCallExpressionͧͧXMemberExpressionͧͧKIdentifierͧͧTextInputKIdentifierͧͧcreate‘[ObjectExpressionͧͧ\PropertyͧͧKIdentifierͧͧ˫placeholderQLiteralͧͧ%请输入目标ip地址:192.168.1.1'"请输入目标ip地址:192.168.1.1"initRExpressionStatementͧͨ*SCallExpressionͧͨ)XMemberExpressionͧͨ KIdentifierͧͧTextInputKIdentifierͨͨ debugLine‘QLiteralͨ +ͨ(components/Dialog.ets(354:7)"components/Dialog.ets(354:7)"RExpressionStatementͨ8ͨSCallExpressionͨ8ͨXMemberExpressionͨ8ͨJKIdentifierͨ8ͨATextInputKIdentifierͨBͨJonChange‘NArrowFunctionExpressionͨKͨ‘KIdentifierͨLͨQvalueLBlockStatementͨVͨRExpressionStatementͨiͨyWAssignmentExpressionͨiͨx=XMemberExpressionͨiͨpTThisExpressionͨiͨmKIdentifierͨnͨpipKIdentifierͨsͨxvalueUIfStatementͨͨPUnaryExpressionͨͨ!KIdentifierͨͨisInitialRenderLBlockStatementͨͨRExpressionStatementͨͨSCallExpressionͨͨXMemberExpressionͨͨKIdentifierͨͨʩTextInputKIdentifierͨͨΣpopRExpressionStatementͨͩSCallExpressionͨͩXMemberExpressionͨͩKIdentifierͨͩViewStackProcessorKIdentifierͩͩStopGetAccessRecordingRExpressionStatementͩ1ͫ5SCallExpressionͩ1ͫ4XMemberExpressionͩ1ͩNTThisExpressionͩ1ͩ5KIdentifierͩ6ͩNobserveComponentCreation‘NArrowFunctionExpressionͩOͫ3’KIdentifierͩPͩVelmtIdKIdentifierͩXͩgisInitialRenderLBlockStatementͩlͫ3RExpressionStatementͩ{ͩSCallExpressionͩ{ͩXMemberExpressionͩ{ͩKIdentifierͩ{ͩViewStackProcessorKIdentifierͩͩStartGetAccessRecordingFor‘KIdentifierͩͩelmtIdRExpressionStatementͩͩSCallExpressionͩͩXMemberExpressionͩͩKIdentifierͩͩȩTextInputKIdentifierͩͩϦcreate‘[ObjectExpressionͩͩ\PropertyͩͩKIdentifierͩͩݫplaceholderQLiteralͩͩ 请输入目标mac地址:mac11""请输入目标mac地址:mac11"initRExpressionStatementͪͪ7SCallExpressionͪͪ6XMemberExpressionͪͪKIdentifierͪͪ TextInputKIdentifierͪ ͪdebugLine‘QLiteralͪͪ5components/Dialog.ets(359:7)"components/Dialog.ets(359:7)"RExpressionStatementͪEͪSCallExpressionͪEͪXMemberExpressionͪEͪWKIdentifierͪEͪNTextInputKIdentifierͪOͪWonChange‘NArrowFunctionExpressionͪXͪ‘KIdentifierͪYͪ^valueLBlockStatementͪcͪRExpressionStatementͪvͪWAssignmentExpressionͪvͪ=XMemberExpressionͪvͪ~TThisExpressionͪvͪzKIdentifierͪ{ͪ~macKIdentifierͪͪvalueUIfStatementͪͪPUnaryExpressionͪͪ!KIdentifierͪͪisInitialRenderLBlockStatementͪͪRExpressionStatementͪͪSCallExpressionͪͪXMemberExpressionͪͪKIdentifierͪͪةTextInputKIdentifierͪͪܣpopRExpressionStatementͪͫ(SCallExpressionͪͫ'XMemberExpressionͪͫ%KIdentifierͪͫViewStackProcessorKIdentifierͫͫ%StopGetAccessRecordingRExpressionStatementͫ?ͭ>SCallExpressionͫ?ͭ=XMemberExpressionͫ?ͫ\TThisExpressionͫ?ͫCKIdentifierͫDͫ\observeComponentCreation‘NArrowFunctionExpressionͫ]ͭ<’KIdentifierͫ^ͫdelmtIdKIdentifierͫfͫuisInitialRenderLBlockStatementͫzͭͮN!KIdentifierͮ?ͮNisInitialRenderLBlockStatementͮPͮ|RExpressionStatementͮcͮmSCallExpressionͮcͮlXMemberExpressionͮcͮjKIdentifierͮcͮfRowKIdentifierͮgͮjpopRExpressionStatementͮͮSCallExpressionͮͮXMemberExpressionͮͮKIdentifierͮͮViewStackProcessorKIdentifierͮͮStopGetAccessRecordingRExpressionStatementͮͰSCallExpressionͮͰXMemberExpressionͮͮTThisExpressionͮͮKIdentifierͮͮobserveComponentCreation‘NArrowFunctionExpressionͮͰ’KIdentifierͮͮelmtIdKIdentifierͮͯisInitialRenderLBlockStatementͯͰRExpressionStatementͯͯMSCallExpressionͯͯLXMemberExpressionͯͯDKIdentifierͯͯ)ViewStackProcessorKIdentifierͯ*ͯDStartGetAccessRecordingFor‘KIdentifierͯEͯKelmtIdRExpressionStatementͯ[ͯxSCallExpressionͯ[ͯwXMemberExpressionͯ[ͯqKIdentifierͯ[ͯaButtonKIdentifierͯbͯqcreateWithLabel‘QLiteralͯrͯv取消"取消"RExpressionStatementͯͯSCallExpressionͯͯXMemberExpressionͯͯKIdentifierͯͯButtonKIdentifierͯͯdebugLine‘QLiteralͯͯcomponents/Dialog.ets(370:9)"components/Dialog.ets(370:9)"RExpressionStatementͯͰSCallExpressionͯͰXMemberExpressionͯͯKIdentifierͯͯ˦ButtonKIdentifierͯͯӧonClick‘NArrowFunctionExpressionͯͰLBlockStatementͯͰRExpressionStatementͯͰSCallExpressionͯͰXMemberExpressionͯͰXMemberExpressionͯͯTThisExpressionͯͯKIdentifierͯͯcontrollerKIdentifierͯͰcloseUIfStatementͰ$ͰiPUnaryExpressionͰ(Ͱ8!KIdentifierͰ)Ͱ8isInitialRenderLBlockStatementͰ:ͰiRExpressionStatementͰMͰZSCallExpressionͰMͰYXMemberExpressionͰMͰWKIdentifierͰMͰSButtonKIdentifierͰTͰWpopRExpressionStatementͰwͰSCallExpressionͰwͰXMemberExpressionͰwͰKIdentifierͰwͰViewStackProcessorKIdentifierͰͰStopGetAccessRecordingRExpressionStatementͰͰSCallExpressionͰͰXMemberExpressionͰͰKIdentifierͰͰButtonKIdentifierͰͰģpopRExpressionStatementͰͶcSCallExpressionͰͶbXMemberExpressionͰͰTThisExpressionͰͰKIdentifierͰͰobserveComponentCreation‘NArrowFunctionExpressionͰͶa’KIdentifierͰͰelmtIdKIdentifierͰͱisInitialRenderLBlockStatementͱ ͶaRExpressionStatementͱͱQSCallExpressionͱͱPXMemberExpressionͱͱHKIdentifierͱͱ-ViewStackProcessorKIdentifierͱ.ͱHStartGetAccessRecordingFor‘KIdentifierͱIͱOelmtIdRExpressionStatementͱ_ͱ|SCallExpressionͱ_ͱ{XMemberExpressionͱ_ͱuKIdentifierͱ_ͱeButtonKIdentifierͱfͱucreateWithLabel‘QLiteralͱvͱz确定"确定"RExpressionStatementͱͱSCallExpressionͱͱXMemberExpressionͱͱKIdentifierͱͱButtonKIdentifierͱͱdebugLine‘QLiteralͱͱcomponents/Dialog.ets(375:9)"components/Dialog.ets(375:9)"RExpressionStatementͱ͵SCallExpressionͱ͵XMemberExpressionͱͱKIdentifierͱͱϦButtonKIdentifierͱͱקonClick‘NArrowFunctionExpressionͱ͵LBlockStatementͱ͵ǒUIfStatementͱ͵PUnaryExpressionͱͲ!SCallExpressionͱͲKIdentifierͱͲcheckNetworkXMemberExpressionͲͲTThisExpressionͲͲKIdentifierͲͲallSimObjLBlockStatementͲͲRExpressionStatementͲ+ͲSCallExpressionͲ+ͲXMemberExpressionͲ+ͲAKIdentifierͲ+Ͳ7promptActionKIdentifierͲ8ͲAshowToast‘[ObjectExpressionͲBͲ֓\PropertyͲ]ͲqKIdentifierͲ]ͲdmessageQLiteralͲfͲq请正确配置IP地址"请正确配置IP地址"init\PropertyͲͲKIdentifierͲͲdurationQLiteralͲͲ 3000init\PropertyͲͲKIdentifierͲͲbottomQLiteralͲͲ250initUIfStatementͳ͵VBinaryExpressionͳͳXMemberExpressionͳͳXMemberExpressionͳͳTThisExpressionͳͳ +KIdentifierͳ ͳsimObjKIdentifierͳͳobjType¢==QLiteralͳͳ1LBlockStatementͳ ʹRExpressionStatementͳʹSCallExpressionͳʹXMemberExpressionͳͳXMemberExpressionͳͳTThisExpressionͳͳKIdentifierͳͳsimObjKIdentifierͳͳǯcreateMacPacketšSCallExpressionͳͳXMemberExpressionͳͳKIdentifierͳͳ֮ObservedObjectKIdentifierͳͳGetRawObject‘XMemberExpressionͳͳTThisExpressionͳͳKIdentifierͳͳallSimObjSCallExpressionͳʹ#XMemberExpressionͳʹKIdentifierͳʹObservedObjectKIdentifierʹʹGetRawObject‘XMemberExpressionʹʹ"TThisExpressionʹʹKIdentifierʹʹ"allSimPacketQLiteralʹ%ʹ)1024XMemberExpressionʹ+ʹ7TThisExpressionʹ+ʹ/KIdentifierʹ0ʹ7messageQLiteralʹ9ʹ=8080QLiteralʹ?ʹC8080XMemberExpressionʹEʹMTThisExpressionʹEʹIKIdentifierʹJʹMmacXMemberExpressionʹOʹVTThisExpressionʹOʹSKIdentifierʹTʹVipr_typestartendexpressionsquasisTemplateLiteralʹXʹuXMemberExpressionʹ[ʹiXMemberExpressionʹ[ʹfTThisExpressionʹ[ʹ_KIdentifierʹ`ʹfsimObjKIdentifierʹgʹiip’r`typestartendvaluetailTemplateElementʹYʹYrarawcooked`TemplateElementʹjʹta:8080:app1:8080:app1_TemplateLiteralʹwʹXMemberExpressionʹzʹTThisExpressionʹzʹ~KIdentifierʹʹip’`TemplateElementʹxʹxa`TemplateElementʹʹa:8080:app1:8080:app1LBlockStatementʹ͵RExpressionStatementʹ͵{SCallExpressionʹ͵zXMemberExpressionʹʹKIdentifierʹʹܬpromptActionKIdentifierʹʹshowToast‘[ObjectExpressionʹ͵y\Property͵͵KIdentifier͵͵ messageQLiteral͵ ͵请选择正确对象"请选择正确对象"init\Property͵/͵=KIdentifier͵/͵7durationQLiteral͵9͵= 3000init\Property͵X͵bKIdentifier͵X͵^bottomQLiteral͵`͵b250initRExpressionStatement͵͵SCallExpression͵͵XMemberExpression͵͵XMemberExpression͵͵TThisExpression͵͵KIdentifier͵͵controllerKIdentifier͵͵closeUIfStatement͵ͶPUnaryExpression͵͵!KIdentifier͵͵isInitialRenderLBlockStatement͵ͶRExpressionStatementͶͶ SCallExpressionͶͶ XMemberExpressionͶͶ +KIdentifierͶͶButtonKIdentifierͶͶ +popRExpressionStatementͶ*ͶVSCallExpressionͶ*ͶUXMemberExpressionͶ*ͶSKIdentifierͶ*Ͷͼ\WAssignmentExpressionͼ>ͼ[=XMemberExpressionͼ>ͼJTThisExpressionͼ>ͼBKIdentifierͼCͼJmessageXMemberExpressionͼMͼ[KIdentifierͼMͼSparamsKIdentifierͼTͼ[messageUIfStatementͼqͼVBinaryExpressionͼuͼXMemberExpressionͼuͼKIdentifierͼuͼ{paramsKIdentifierͼ|ͼpackets£!==KIdentifierͼͼundefinedLBlockStatementͼͼˑRExpressionStatementͼͼWAssignmentExpressionͼͼ=XMemberExpressionͼͼTThisExpressionͼͼKIdentifierͼͼpacketsXMemberExpressionͼͼKIdentifierͼͼparamsKIdentifierͼͼpacketsMMethodDefinitionͼͽ#KIdentifierͼͼupdateStateVarsmethodNFunctionExpressionͼͽ#‘KIdentifierͼͼparamsLBlockStatementͼͽ#RExpressionStatementͼͽSCallExpressionͼͽXMemberExpressionͼͽ XMemberExpressionͼͽTThisExpressionͼͼKIdentifierͽͽ__simObjKIdentifierͽ ͽ set‘XMemberExpressionͽ ͽKIdentifierͽ ͽparamsKIdentifierͽͽsimObjMMethodDefinitionͽ);KIdentifierͽ)ͽJ!purgeVariableDependenciesOnElmtIdmethodNFunctionExpressionͽJ;‘KIdentifierͽKͽSrmElmtIdLBlockStatementͽU;RExpressionStatementͽ`ͽSCallExpressionͽ`ͽXMemberExpressionͽ`ͽXMemberExpressionͽ`ͽmTThisExpressionͽ`ͽdKIdentifierͽeͽm__simObjKIdentifierͽnͽpurgeDependencyOnElmtId‘KIdentifierͽͽrmElmtIdRExpressionStatementͽͽSCallExpressionͽͽXMemberExpressionͽͽXMemberExpressionͽͽTThisExpressionͽͽKIdentifierͽͽ__ipKIdentifierͽͽpurgeDependencyOnElmtId‘KIdentifierͽͽĨrmElmtIdRExpressionStatementͽͽSCallExpressionͽͽXMemberExpressionͽͽXMemberExpressionͽͽTThisExpressionͽͽKIdentifierͽͽڥ__macKIdentifierͽͽpurgeDependencyOnElmtId‘KIdentifierͽͽrmElmtIdRExpressionStatement;;8SCallExpression;;7XMemberExpression;;-XMemberExpression;;TThisExpression;; KIdentifier; ;__messageKIdentifier;;-purgeDependencyOnElmtId‘KIdentifier;.;6rmElmtIdRExpressionStatement;B;uSCallExpression;B;tXMemberExpression;B;jXMemberExpression;B;RTThisExpression;B;FKIdentifier;G;R__allSimObjKIdentifier;S;jpurgeDependencyOnElmtId‘KIdentifier;k;srmElmtIdRExpressionStatement;;SCallExpression;;XMemberExpression;;XMemberExpression;;TThisExpression;;KIdentifier;;__allSimPacketKIdentifier;;purgeDependencyOnElmtId‘KIdentifier;;rmElmtIdRExpressionStatement;;SCallExpression;;XMemberExpression;;XMemberExpression;;TThisExpression;;KIdentifier;;ͩ__packetsKIdentifier;;purgeDependencyOnElmtId‘KIdentifier;;rmElmtIdMMethodDefinition;KIdentifier;Ϳ aboutToBeDeletedmethodNFunctionExpressionͿ LBlockStatementͿRExpressionStatementͿͿMisInitialRenderLBlockStatementOʁRExpressionStatementbrSCallExpressionbqXMemberExpressionboKIdentifierbkTextInputKIdentifierlopopRExpressionStatementʏʻSCallExpressionʏʺXMemberExpressionʏʸKIdentifierʏʡViewStackProcessorKIdentifierʢʸStopGetAccessRecordingRExpressionStatementSCallExpressionXMemberExpressionTThisExpressionKIdentifierobserveComponentCreation‘NArrowFunctionExpression’KIdentifierelmtIdKIdentifierisInitialRenderLBlockStatement ϖRExpressionStatementRSCallExpressionQXMemberExpressionIKIdentifier.ViewStackProcessorKIdentifier/IStartGetAccessRecordingFor‘KIdentifierJPelmtIdRExpressionStatement`ˍSCallExpression`ˌXMemberExpression`pKIdentifier`iTextInputKIdentifierjpcreate‘[ObjectExpressionqˋ\PropertysˉKIdentifiers~placeholderQLiteralˀˉ请输入发送信息"请输入发送信息"initRExpressionStatement˛SCallExpression˛XMemberExpression˛ˮKIdentifier˛ˤTextInputKIdentifier˥ˮdebugLine‘QLiteral˯ͼcomponents/Dialog.ets(426:7)"components/Dialog.ets(426:7)"RExpressionStatement4SCallExpression3XMemberExpressionKIdentifierTextInputKIdentifieronChange‘NArrowFunctionExpression2‘KIdentifiervalueLBlockStatement2RExpressionStatement#WAssignmentExpression"=XMemberExpressionTThisExpressionKIdentifiermessageKIdentifier"valueUIfStatementB̊PUnaryExpressionFV!KIdentifierGVisInitialRenderLBlockStatementX̊RExpressionStatementk{SCallExpressionkzXMemberExpressionkxKIdentifierktTextInputKIdentifieruxpopRExpressionStatement̘SCallExpression̘XMemberExpression̘KIdentifier̘̪ViewStackProcessorKIdentifier̫StopGetAccessRecordingRExpressionStatementVSCallExpressionUXMemberExpressionTThisExpressionKIdentifierobserveComponentCreation‘NArrowFunctionExpressionT’KIdentifierelmtIdKIdentifierisInitialRenderLBlockStatementTRExpressionStatement%[SCallExpression%ZXMemberExpression%RKIdentifier%7ViewStackProcessorKIdentifier8RStartGetAccessRecordingFor‘KIdentifierSYelmtIdRExpressionStatementi̓SCallExpressioni͂XMemberExpressionisKIdentifierilRowKIdentifiermscreate‘[ObjectExpressiont́\PropertyvKIdentifierv{spaceQLiteral}30initRExpressionStatement͑ͿSCallExpression͑;XMemberExpression͑͞KIdentifier͔͑RowKIdentifier͕͞debugLine‘QLiteral͟ͽcomponents/Dialog.ets(431:7)"components/Dialog.ets(431:7)"UIfStatementPUnaryExpression!KIdentifierisInitialRenderLBlockStatementRExpressionStatementSCallExpressionXMemberExpressionKIdentifierRowKIdentifierpopRExpressionStatementISCallExpressionHXMemberExpressionFKIdentifier/ViewStackProcessorKIdentifier0FStopGetAccessRecordingRExpressionStatement`CSCallExpression`BXMemberExpression`}TThisExpression`dKIdentifiere}observeComponentCreation‘NArrowFunctionExpression~A’KIdentifier΅elmtIdKIdentifier·ΖisInitialRenderLBlockStatementΛARExpressionStatementΪSCallExpressionΪXMemberExpressionΪKIdentifierΪμViewStackProcessorKIdentifierν׺StartGetAccessRecordingFor‘KIdentifierަelmtIdRExpressionStatement SCallExpression +XMemberExpressionKIdentifierButtonKIdentifiercreateWithLabel‘QLiteral 取消"取消"RExpressionStatementJSCallExpressionIXMemberExpression)KIdentifierButtonKIdentifier )debugLine‘QLiteral*Hcomponents/Dialog.ets(432:9)"components/Dialog.ets(432:9)"RExpressionStatementXϩSCallExpressionXϨXMemberExpressionXfKIdentifierX^ButtonKIdentifier_fonClick‘NArrowFunctionExpressiongϧLBlockStatementmϧRExpressionStatementπϘSCallExpressionπϗXMemberExpressionπϕXMemberExpressionπϏTThisExpressionπτKIdentifierυϏcontrollerKIdentifierϐϕcloseUIfStatementϷPUnaryExpressionϻˡ!KIdentifierϼ˯isInitialRenderLBlockStatementRExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifierpopRExpressionStatement +6SCallExpression +5XMemberExpression +3KIdentifier +ViewStackProcessorKIdentifier3StopGetAccessRecordingRExpressionStatementMZSCallExpressionMYXMemberExpressionMWKIdentifierMSButtonKIdentifierTWpopRExpressionStatementdՋSCallExpressiondՊXMemberExpressiondЁTThisExpressiondhKIdentifieriЁobserveComponentCreation‘NArrowFunctionExpressionЂՉ’KIdentifierЃЉelmtIdKIdentifierЋКisInitialRenderLBlockStatementПՉRExpressionStatementЮSCallExpressionЮXMemberExpressionЮKIdentifierЮViewStackProcessorKIdentifierۺStartGetAccessRecordingFor‘KIdentifierelmtIdRExpressionStatementSCallExpressionXMemberExpressionKIdentifierButtonKIdentifiercreateWithLabel‘QLiteral 新增"新增"RExpressionStatementNSCallExpressionMXMemberExpression-KIdentifier#ButtonKIdentifier$-debugLine‘QLiteral.Lcomponents/Dialog.ets(437:9)"components/Dialog.ets(437:9)"RExpressionStatement\SCallExpression\XMemberExpression\jKIdentifier\bButtonKIdentifiercjonClick‘NArrowFunctionExpressionkLBlockStatementqUIfStatementфPUnaryExpressionшѥ!SCallExpressionщѥKIdentifierщѕcheckNetworkXMemberExpressionіѤTThisExpressionіњKIdentifierћѤallSimObjLBlockStatementѧ~RExpressionStatementѾkSCallExpressionѾjXMemberExpressionѾKIdentifierѾʬpromptActionKIdentifierԩshowToast‘[ObjectExpressioni\PropertyKIdentifiermessageQLiteral请正确配置IP地址"请正确配置IP地址"init\Property-KIdentifier'durationQLiteral)- 3000init\PropertyHRKIdentifierHNbottomQLiteralPR250initUIfStatementҕVBinaryExpressionҙұXMemberExpressionҙҬXMemberExpressionҙҤTThisExpressionҙҝKIdentifierҞҤsimObjKIdentifierҥҬobjType¢==QLiteralҰұ1LBlockStatementҳRExpressionStatementSCallExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifier֧packetsKIdentifierۤpush‘[ObjectExpressionߕ\PropertyKIdentifieripXMemberExpressionTThisExpressionKIdentifierip¤init\Property*KIdentifier macXMemberExpression"*TThisExpression"&KIdentifier'*mac¤init\PropertyEZKIdentifierELmessageXMemberExpressionNZTThisExpressionNRKIdentifierSZmessage¤init\PropertyuӎKIdentifieru~allSimObjXMemberExpressionӀӎTThisExpressionӀӄKIdentifierӅӎallSimObj¤init\PropertyөKIdentifierөӵallSimPacketXMemberExpressionӷTThisExpressionӷӻKIdentifierӼȬallSimPacket¤initLBlockStatement RExpressionStatement"SCallExpression"XMemberExpression"8KIdentifier".promptActionKIdentifier/8showToast‘[ObjectExpression9˓\PropertyTfKIdentifierT[messageQLiteral]f请选择正确对象"请选择正确对象"init\PropertyԁԏKIdentifierԁԉdurationQLiteralԋԏ 3000init\PropertyԪԴKIdentifierԪ԰bottomQLiteralԲԴ250initUIfStatementDPUnaryExpression!KIdentifierisInitialRenderLBlockStatementDRExpressionStatement(5SCallExpression(4XMemberExpression(2KIdentifier(.ButtonKIdentifier/2popRExpressionStatementR~SCallExpressionR}XMemberExpressionR{KIdentifierRdViewStackProcessorKIdentifiere{StopGetAccessRecordingRExpressionStatementՕբSCallExpressionՕաXMemberExpressionՕ՟KIdentifierՕ՛ButtonKIdentifier՜՟popRExpressionStatementլ؃SCallExpressionլ؂XMemberExpressionլTThisExpressionլհKIdentifierձɸobserveComponentCreation‘NArrowFunctionExpression؁’KIdentifierѦelmtIdKIdentifierisInitialRenderLBlockStatement؁RExpressionStatement,SCallExpression+XMemberExpression#KIdentifierViewStackProcessorKIdentifier #StartGetAccessRecordingFor‘KIdentifier$*elmtIdRExpressionStatement:YSCallExpression:XXMemberExpression:PKIdentifier:@ButtonKIdentifierAPcreateWithLabel‘QLiteralQW批量发送"批量发送"RExpressionStatementg֘SCallExpressiong֗XMemberExpressiongwKIdentifiergmButtonKIdentifiernwdebugLine‘QLiteralx֖components/Dialog.ets(464:9)"components/Dialog.ets(464:9)"RExpressionStatement֦SCallExpression֦XMemberExpressionִ֦KIdentifier֦֬ButtonKIdentifierִ֭onClick‘NArrowFunctionExpressionֵLBlockStatementֻRExpressionStatement׮SCallExpression׭XMemberExpressionXMemberExpressionTThisExpressionKIdentifierڧpacketsKIdentifierforEach‘NArrowFunctionExpression׬‘KIdentifieritemLBlockStatement׬RExpressionStatementיSCallExpressionטXMemberExpressionXMemberExpression TThisExpressionKIdentifier simObjKIdentifiercreatePacket•XMemberExpression#KIdentifieritemKIdentifier #macXMemberExpression%,KIdentifier%)itemKIdentifier*,ipXMemberExpression.:KIdentifier.2itemKIdentifier3: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"isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + , this, "allSimPacket"); + this.addProvidedVar("allSimPacket", this.__allSimPacket); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.allSimObj !== undefined) { + this.allSimObj = params.allSimObj; + } + if (params.allSimConn !== undefined) { + this.allSimConn = params.allSimConn; + } + if (params.TempConn !== undefined) { + this.TempConn = params.TempConn; + } + if (params.isNewObj !== undefined) { + this.isNewObj = params.isNewObj; + } + if (params.newObjType !== undefined) { + this.newObjType = params.newObjType; + } + if (params.choseIndex !== undefined) { + this.choseIndex = params.choseIndex; + } + if (params.isNewConn !== undefined) { + this.isNewConn = params.isNewConn; + } + if (params.isShowLabel !== undefined) { + this.isShowLabel = params.isShowLabel; + } + if (params.isShowPort !== undefined) { + this.isShowPort = params.isShowPort; + } + if (params.isShowInterface !== undefined) { + this.isShowInterface = params.isShowInterface; + } + if (params.isShowTable !== undefined) { + this.isShowTable = params.isShowTable; + } + if (params.allSimPacket !== undefined) { + this.allSimPacket = params.allSimPacket; + } + } + updateStateVars(params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue) { + this.__allSimConn.set(newValue); + } + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue) { + this.__TempConn.set(newValue); + } + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue) { + this.__isNewObj.set(newValue); + } + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue) { + this.__newObjType.set(newValue); + } + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue) { + this.__choseIndex.set(newValue); + } + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue) { + this.__isNewConn.set(newValue); + } + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue) { + this.__isShowLabel.set(newValue); + } + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue) { + this.__isShowPort.set(newValue); + } + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue) { + this.__isShowInterface.set(newValue); + } + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue) { + this.__isShowTable.set(newValue); + } + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue) { + this.__allSimPacket.set(newValue); + } + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("pages/Index.ets(35:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 顶部功能栏 + TopMenuBar(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 中间绘制区 + MiddleContent(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 底部选择栏 + BottomMenuBar(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +ViewStackProcessor.StartGetAccessRecordingFor(ViewStackProcessor.AllocateNewElmetIdForNextComponent()); +loadDocument(new Index(undefined, {})); +ViewStackProcessor.StopGetAccessRecording(); +//# sourceMappingURL=Index.js.map“>E:\jiaocai\ensp14\entry\src\main\ets\components\TopMenuBar.etsAE:\jiaocai\ensp14\entry\src\main\ets\components\MiddleContent.etsAE:\jiaocai\ensp14\entry\src\main\ets\components\ButtomMenuBar.ets4E:\jiaocai\ensp14\entry\src\main\ets\pages\Index.etsrBmoduleNameisLocalDependencyisNodeEntryFilepkgPathbelongProjectPathpkgNamepkgVersiondependencyPkgInfobelongModulePathentry·E:\jiaocai\ensp14\entryE:\jiaocai\ensp14entry1.0.0E:\jiaocai\ensp14\entryimport { TopMenuBar } from "../components/TopMenuBar" // 顶部功能栏 +import { MiddleContent } from "../components/MiddleContent" // 中间控制区 +import { BottomMenuBar } from "../components/ButtomMenuBar" // 底部选择栏 +import { SimPacket } from "../classes/OtherSimObjects" // 自定义数据包类型 + +@Entry +@Component +struct Index { + @Provide allSimObj: any[] = [] // 仿真对象数组123 + @Provide allSimConn: any[] = [] // 仿真连接线数组 + @Provide TempConn: any[] = [] // 临时连接线对象数组 + @Provide isNewObj: boolean = false // 是否新增对象 + @Provide newObjType: number = -1 // 新增对象类型 + @Provide choseIndex: number | null = null // 选中对象下标 + @Provide isNewConn: boolean = true // 是否正在新增连接线 + @Provide isShowLabel: boolean = true // 是否显示标签 + @Provide isShowPort: boolean = true // 是否显示接口 + @Provide isShowInterface: boolean = true // 是否显示网络配置信息 + @Provide isShowTable: boolean = true // 是否显示路由/交换表信息 + @Provide allSimPacket: SimPacket[] = [] // 单次数据包传输的集合 + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + + build() { + Column() { + // 顶部功能栏 + TopMenuBar() + + // 中间绘制区 + MiddleContent() + + // 底部选择栏 + BottomMenuBar() + } + .width('100%') + .height('100%') + } +} + +rC../components/MiddleContent../components/ButtomMenuBar../components/TopMenuBarrDassertionsexternalidmetamoduleSideEffectsresolvedBysyntheticNamedExportsAAE:\jiaocai\ensp14\entry\src\main\ets\components\MiddleContent.etsAêoh-resolveDAAE:\jiaocai\ensp14\entry\src\main\ets\components\ButtomMenuBar.etsAêoh-resolveDA>E:\jiaocai\ensp14\entry\src\main\ets\components\TopMenuBar.etsAêoh-resolve’rEversionfilesourceRootsourcesnamesmappingsIndex.jsIndex.ets 556576?>  ;;<;= ,G 58 <$=%I1:">&?'H09!=%>&G/>&B*C+P8:">&?'N6;'=)>*K7>8LFJDD>%0*<6RL71 6       +  + +  +                        :8HFFD@>!,*86NL31! "" + "" +,, +, , "" +-- - -"" +##$$&&'!'))*!*"" +.rFversionfilesourcessourcesContentnamesmappingsA + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@G  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFG  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFF  + +    Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +I          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH H + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + + +=          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <H          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG G          + +                   ?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>H  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG  + +    ;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::H  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG  + +    ;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::G  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFF   + +    ?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>I  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHH   + +    ?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>K  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJ  + +    =  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<J  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHII!  + +      A          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @I!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9:!:;!;<!<=!=>!>?!?@!@A!AB!BC!CD!DE!EF!FG!GH!H """"""""" " +" + " " " """"""""""""""""""?######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/0#01#12#23#34#45#56#67#78#89#9:#:;#;<#<=#=>#>R$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$23$34$45$56$67$78$89$9:$:;$;<$<=$=>$>?$?@$@A$AB$BC$CD$DE$EF$FG$GH$HI$IJ$JK$KL$LM$MN$NO$OP$PQ$Q%%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$I&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9:&:;&;<&<=&=>&>?&?@&@A&AB&BC&CD&DE&EF&FG&GH&HP''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'34'45'56'67'78'89'9:':;';<'<='=>'>?'?@'@A'AB'BC'CD'DE'EF'FG'GH'HI'IJ'JK'KL'LM'MN'NO'O!((((((((( ( +( + ( ( ( (((((((((((((((((( ( A))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@M********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*01*12*23*34*45*56*67*78*89*9:*:;*;<*<=*=>*>?*?@*@A*AB*BC*CD*DE*EF*FG*GH*HI*IJ*JK*KL*L@+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-+-.+./+/0+01+12+23+34+45+56+67+78+89+9:+:;+;<+<=+=>+>?+?N,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;<,<=,=>,>?,?@,@A,AB,BC,CD,DE,EF,FG,GH,HI,IJ,JK,KL,LM,M--------- - +- + - - - ----------------L......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A.AB.BC.CD.DE.EF.FG.GH.HI.IJ.JK.KF///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$%/%&/&'/'(/()/)*/*+/+,/,-/-././//0/01/12/23/34/45/56/67/78/89/9:/:;/;</<=/=>/>?/?@/@A/AB/BC/CD/DE/E'000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&2111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111>222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<=2=T333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3=>3>?3?@3@A3AB3BC3CD3DE3EF3FG3GH3HI3IJ3JK3KL3LM3MN3NO3OP3PQ3QR3RS3S9444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848555555555 5 +5 + 5 5 5 "666666666 6 +6 + 6 6 6 666666666666666666 6 !6!C777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@A7AB7B1888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/0809999999)::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:(/;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;.0<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/2????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?1@@@@@@@@@ @ +@ +.AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+,A,-A-.BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-CCCCCCCCC C +C +.DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-FFFFFFFFF F +F +0GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/2HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,-H-.H./H/0H01H1IIIIIIIII I +I +0JJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*+J+,J,-J-.J./J/2KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K1LLLLLLLLL L +L +/MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)*M*+M+,M,-M-.M.0NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/OOOOOOOOO O +O +1PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$%P%&P&'P'(P()P)*P*+P+,P,-P-.P./P/0P04QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q01Q12Q23Q3RRRRRRRRR R +R +0SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+,S,-S-.S./S/2TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T1UUUUUUUUU U +U +5VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V4<WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;XXXXXXXXX X +X +1YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y04ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z3[[[[[[[[[ [ +[ +2\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$%\%&\&'\'(\()\)*\*+\+,\,-\-.\./\/0\01\16]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]01]12]23]34]45]5^^^^^^^^^ ^ +^ +_______````````` ` +` + ` ` ` `````````````````aaaaaaa3bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&'b'(b()b)*b*+b+,b,-b-.b./b/0b01b12b2=ccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c01c12c23c34c45c56c67c78c89c9:c:;c;<c<>ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;<d<=d=<eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-.e./e/0e01e12e23e34e45e56e67e78e89e9:e:;e;<fffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f34f45f56f67f78f89f9:f:;f;>ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g()g)*g*+g+,g,-g-.g./g/0g01g12g23g34g45g56g67g78g89g9:g:;g;<g<=g=>hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$%h%&h&'h'(h()h)*h*+h+,h,-h-.h./h/0h01h12h23h34h45h56h67h78h89h9:h:;h;<h<=h==iiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$%i%&i&'i'(i()i)*i*+i+,i,-i-.i./i/0i01i12i23i34i45i56i67i78i89i9:i:;i;<i<?jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23j34j45j56j67j78j89j9:j:;j;<j<=j=>j>>kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k23k34k45k56k67k78k89k9:k:;k;<k<=k=Clllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,-l-.l./l/0l01l12l23l34l45l56l67l78l89l9:l:;l;<l<=l=>l>?l?@l@AlABlB?mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23m34m45m56m67m78m89m9:m:;m;<m<=m=>m>@nnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n23n34n45n56n67n78n89n9:n:;n;<n<=n=>n>?n?oooooooppppppppp p +p + p p p pppppppppppp.qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q()q)*q*+q+,q,-q-/rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r.-sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,/uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v..wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-0xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x//yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y.4zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z01z12z23z30{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/1||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*+|+,|,-|-.|./|/0|06}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/0}01}12}23}34}45}5*~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)̀̀̀̀̀̀̀̀̀ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀(́́́́́́́́́ ́ +́ + ́ ́ ́ ́́́́́́́́́́́́́́́́́́ ́ !́!"́"#́#$́$%́%&́&'́'̂̂̂̂̂̂̂̃̃̃̃̃̃̃̃̃ ̃ +̃ + ̃ ̃ ̃ ̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃)̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̄ ̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄ ̄ !̄!"̄"#̄#$̄$%̄%&̄&'̄'(̄(̅̅̅̅̅̅̅̆̆̆̆̆̆̆̆̆ ̆ +̆ + ̆ ̆ ̆ ̆̆̆̆̆̆̆̆̆̆)̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇ ̇ !̇!"̇"#̇#$̇$%̇%&̇&'̇'(̇(̈̈̈̈̈̈̈ ̉̉̉̉̉̉̉̉̉ ̉ +̉ + ̉ ̉ ̉ ̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉*̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊ ̊ !̊!"̊"#̊#$̊$%̊%&̊&'̊'(̊()̊)̋̋̋̋̋̋̋̌̌̌̌̌̌̌̌̌ ̌ +̌ + ̌ ̌ ̌ ̌̌̌̌̌̌̌̌'̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍ ̍ !̍!"̍"#̍#$̍$%̍%&̍&̎̎̎̎̎̎̎̏̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏(̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐ ̐ !̐!"̐"#̐#$̐$%̐%&̐&'̐'̑̑̑̑̑̑̑̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒'̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̓ ̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓ ̓ !̓!"̓"#̓#$̓$%̓%&̓&̔̔̔̔̔̔̔̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕(̖̖̖̖̖̖̖̖̖ ̖ +̖ + ̖ ̖ ̖ ̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖̖ ̖ !̖!"̖"#̖#$̖$%̖%&̖&'̖'̗̗̗̗̗̗̗̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ ̘ ̘̘̘̘̘̘̘̘̘̘)̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙ ̙ !̙!"̙"#̙#$̙$%̙%&̙&'̙'(̙(̚̚̚̚̚̚̚ ̛̛̛̛̛̛̛̛̛ ̛ +̛ + ̛ ̛ ̛ ̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛̛*̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜ ̜ !̜!"̜"#̜#$̜$%̜%&̜&'̜'(̜()̜)̝̝̝̝̝̝̝̞̞̞̞̞̞̞̞̞ ̞ +̞ + ̞ ̞ ̞ ̞̞̞̞̞̞̞̞̞̞)̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟ ̟ !̟!"̟"#̟#$̟$%̟%&̟&'̟'(̟(̠̠̠̠̠̠̠ ̡̡̡̡̡̡̡̡̡ ̡ +̡ + ̡ ̡ ̡ ̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡*̢̢̢̢̢̢̢̢̢ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢ ̢ !̢!"̢"#̢#$̢$%̢%&̢&'̢'(̢()̢)̣̣̣̣̣̣̣̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤̤̤̤̤(̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥ ̥ !̥!"̥"#̥#$̥$%̥%&̥&'̥'̧̧̧̧̧̧̧̧̧̦̦̦̦̦̦̦ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧)̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨ ̨ !̨!"̨"#̨#$̨$%̨%&̨&'̨'(̨(̩̩̩̩̩̩̩̪̪̪̪̪̪̪̪̪ ̪ +̪ + ̪ ̪ ̪ ̪̪̪̪̪̪̪̪̪̪̪*̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ !̫!"̫"#̫#$̫$%̫%&̫&'̫'(̫()̫)̬̬̬̬̬̬̬!̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭ ̭ +̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*̯̯̯̯̯̯̯̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰)̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱ ̱ !̱!"̱"#̱#$̱$%̱%&̱&'̱'(̱(̲̲̲̲̲̲̲ ̳̳̳̳̳̳̳̳̳ ̳ +̳ + ̳ ̳ ̳ ̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳*̴̴̴̴̴̴̴̴̴ ̴ +̴ + ̴ ̴ ̴ ̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴ ̴ !̴!"̴"#̴#$̴$%̴%&̴&'̴'(̴()̴)̵̵̵̵̵̵̵̶̶̶̶̶̶̶̶̶ ̶ +̶ + ̶ ̶ ̶ ̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶.̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷ ̷ !̷!"̷"#̷#$̷$%̷%&̷&'̷'(̷()̷)*̷*+̷+,̷,-̷-̸̸̸̸̸̸̸%̹̹̹̹̹̹̹̹̹ ̹ +̹ + ̹ ̹ ̹ ̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹ ̹ !̹!"̹"#̹#$̹$/̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺ ̺ !̺!"̺"#̺#$̺$%̺%&̺&'̺'(̺()̺)*̺*+̺+,̺,-̺-.̺.̻̻̻̻̻̻̻̼̼̼̼̼̼̼̼̼ ̼ +̼ + ̼ ̼ ̼ ̼̼̼̼̼̼̼̼̼̼̼*̽̽̽̽̽̽̽̽̽ ̽ +̽ + ̽ ̽ ̽ ̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽ ̽ !̽!"̽"#̽#$̽$%̽%&̽&'̽'(̽()̽)̾̾̾̾̾̾̾!̿̿̿̿̿̿̿̿̿ ̿ +̿ + ̿ ̿ ̿ ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ ̿ + + +  !!""##$$%%&&''(())** + + + + +  !!""##$$%%&&''(())**" + +  !!, + +  !!""##$$%%&&''(())**++< + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;J + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHII + + H + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGB + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA# + +  !!"". + +  !!""##$$%%&&''(())**++,,--: + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899P + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO5 + +  !!""##$$%%&&''(())**++,,--..//0011223344  + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC + + 8 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677# + +  !!""$ + +  !!""##% + +  !!""##$$ + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + +  + +J + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIH + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG( + +  !!""##$$%%&&''0 + +  !!""##$$%%&&''(())**++,,--..//$ + +  !!""## + + ( + +  !!""##$$%%&&'' + + M + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLL + +  + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + + > + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<== + +  + + + +J + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIH + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG( + +  !!""##$$%%&&''0 + +  !!""##$$%%&&''(())**++,,--..//$ + +  !!""## + + ( + +  !!""##$$%%&&'' + + P + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO + +  + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + + > + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<== + +   + +  + +J  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIH  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG(  + +      !!""##$$%%&&''0  + +      !!""##$$%%&&''(())**++,,--..//$  + +      !!""##  + +    (  + +      !!""##$$%%&&''           + +                    P + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<= +=> +>? +?@ +@A +AB +BC +CD +DE +EF +FG +GH +HI +IJ +JK +KL +LM +MN +NO +O           + +                    + +              F           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE E  + +    >  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==  + +      + +  + +      + +    %  + +      !!""##$$i  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghh)  + +      !!""##$$%%&&''((.  + +      !!""##$$%%&&''(())**++,,--!  + +      rGdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherHtypestartendspecifierssourceImportDeclaration6rItypestartendimportedlocalImportSpecifier rJtypestartendnameIdentifier TopMenuBarJIdentifier TopMenuBarrKtypestartendvaluerawLiteral5../components/TopMenuBar"../components/TopMenuBar"HImportDeclarationA}IImportSpecifierJWJIdentifierJWMiddleContentJIdentifierJWMiddleContentKLiteral_|../components/MiddleContent"../components/MiddleContent"HImportDeclaration̈đIImportSpecifieȓ̞JIdentifieȓ̞BottomMenuBarJIdentifieȓ̞BottomMenuBarKLiteral̦û../components/ButtomMenuBar"../components/ButtomMenuBar" \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-MiddleContent.ets-4daec6e061a3eb5a292e370b71741fd4.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-MiddleContent.ets-4daec6e061a3eb5a292e370b71741fd4.msgpack new file mode 100644 index 0000000..ce58fb5 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-MiddleContent.ets-4daec6e061a3eb5a292e370b71741fd4.msgpack @@ -0,0 +1,4219 @@ +r@assertionscodecustomTransformCachedependenciesidmetamoduleSideEffectsoriginalCodeoriginalSourcemapresolvedIdssourcemapChainsyntheticNamedExportstransformDependenciestransformFilescacheAstrAimport promptAction from "@ohos.promptAction"; +import { SimConnect, SimHost, SimHub, SimRouter, SimSwitch } from "../classes/OtherSimObjects"; +import { TableChart, NetworkChart } from "./Table"; +export class MiddleContent extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.__isShowPort = this.initializeConsume("isShowPort", "isShowPort"); + this.__isShowInterface = this.initializeConsume("isShowInterface", "isShowInterface"); + this.__isShowTable = this.initializeConsume("isShowTable", "isShowTable"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.__isNewPacket = this.createStorageProp("isNewPacket", 0, "isNewPacket"); + this.__isNewPacketArrived = this.createStorageProp("isNewPacketArrived", 0, "isNewPacketArrived"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + } + updateStateVars(params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + this.__isNewPacket.purgeDependencyOnElmtId(rmElmtId); + this.__isNewPacketArrived.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + this.__isNewPacket.aboutToBeDeleted(); + this.__isNewPacketArrived.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue) { + this.__allSimConn.set(newValue); + } + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue) { + this.__TempConn.set(newValue); + } + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue) { + this.__isNewObj.set(newValue); + } + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue) { + this.__newObjType.set(newValue); + } + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue) { + this.__choseIndex.set(newValue); + } + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue) { + this.__isNewConn.set(newValue); + } + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue) { + this.__isShowLabel.set(newValue); + } + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue) { + this.__isShowPort.set(newValue); + } + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue) { + this.__isShowInterface.set(newValue); + } + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue) { + this.__isShowTable.set(newValue); + } + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue) { + this.__allSimPacket.set(newValue); + } + get isNewPacket() { + return this.__isNewPacket.get(); + } + set isNewPacket(newValue) { + this.__isNewPacket.set(newValue); + } + get isNewPacketArrived() { + return this.__isNewPacketArrived.get(); + } + set isNewPacketArrived(newValue) { + this.__isNewPacketArrived.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/MiddleContent.ets(24:5)"); + Row.width('100%'); + Row.height('74%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // 画布 + Stack.create(); + Stack.debugLine("components/MiddleContent.ets(26:7)"); + // 画布 + Stack.width('56%'); + // 画布 + Stack.height('100%'); + // 画布 + Stack.border({ color: Color.Black, width: 1 }); + // 画布 + Stack.onClick((event) => { + if (this.isNewObj) { // 若要插入新增对象 + const obj = this.newObjType == 1 ? new SimHost(event.x - 25, event.y - 15) : this.newObjType == 2 ? new SimRouter(event.x - 25, event.y - 15) : this.newObjType == 3 ? new SimSwitch(event.x - 25, event.y - 15) : new SimHub(event.x - 25, event.y - 15); + this.allSimObj.push(obj); // 插入并绘制新增对象 + } + else if (!this.isNewObj && this.allSimObj.some(item => item.isChose == true)) { + this.allSimObj[this.choseIndex].objX = event.x - 25; // 更新X坐标 + this.allSimObj[this.choseIndex].objY = event.y - 15; // 更新Y坐标 + this.allSimObj[this.choseIndex].isChose = false; // 更新选中状态为未选中 + } + this.isNewObj = false; // 取消新增状态 + this.newObjType = -1; // 取消新增类型 + this.choseIndex = null; // 取消选中下标 + this.isNewConn = false; // 取消新增连接线 + this.TempConn = []; // 清空临时连接线对象 + }); + if (!isInitialRender) { + // 画布 + Stack.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + objS: item.nObjS, + objE: item.nObjE + }; + }; + ViewPU.create(new CreateCon(this, { objS: item.nObjS, objE: item.nObjE }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + objS: item.nObjS, objE: item.nObjE + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + objS: item.nObjS, + objE: item.nObjE, + conn: item + }; + }; + ViewPU.create(new CreatePort(this, { objS: item.nObjS, objE: item.nObjE, conn: item }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + objS: item.nObjS, objE: item.nObjE, + conn: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }; + this.forEachUpdateFunction(elmtId, this.allSimConn, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: item, + thisIndex: index + }; + }; + ViewPU.create(new CreateImg(this, { simObj: item, thisIndex: index }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: item + }; + }; + ViewPU.create(new CreateLabel(this, { simObj: item }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }; + this.forEachUpdateFunction(elmtId, this.allSimObj, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + // 画布 + Stack.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create({ space: 3 }); + Column.debugLine("components/MiddleContent.ets(56:7)"); + Column.width('22%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(57:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机详情"); + Text.debugLine("components/MiddleContent.ets(58:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(62:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isNewPacket) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.allSimPacket[this.allSimPacket.length - 1].sendHost.objLabel); + Text.debugLine("components/MiddleContent.ets(64:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.allSimPacket[this.allSimPacket.length - 1].sourceIp); + Text.debugLine("components/MiddleContent.ets(65:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.allSimPacket[this.allSimPacket.length - 1].sourceMac); + Text.debugLine("components/MiddleContent.ets(66:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送数据包大小:1024kB"); + Text.debugLine("components/MiddleContent.ets(67:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已发送数据包数量:1"); + Text.debugLine("components/MiddleContent.ets(68:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要发送的数据包总数:1"); + Text.debugLine("components/MiddleContent.ets(69:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(77:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收主机详情"); + Text.debugLine("components/MiddleContent.ets(78:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(82:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isNewPacketArrived) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // Text("接收主机:") + Text.create("IP地址:" + this.allSimPacket[this.allSimPacket.length - 1].targetIp); + Text.debugLine("components/MiddleContent.ets(85:15)"); + if (!isInitialRender) { + // Text("接收主机:") + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + // Text("接收主机:") + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.allSimPacket[this.allSimPacket.length - 1].targetMac); + Text.debugLine("components/MiddleContent.ets(86:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收数据包大小:1024kB"); + Text.debugLine("components/MiddleContent.ets(87:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已接收数据包数量:1"); + Text.debugLine("components/MiddleContent.ets(88:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要接收的数据包总数:1"); + Text.debugLine("components/MiddleContent.ets(89:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // 配置信息展示 + Column.create({ space: 3 }); + Column.debugLine("components/MiddleContent.ets(101:7)"); + // 配置信息展示 + Column.width('22%'); + // 配置信息展示 + Column.height('100%'); + // 配置信息展示 + Column.padding(2); + // 配置信息展示 + Column.justifyContent(FlexAlign.SpaceBetween); + // 配置信息展示 + Column.layoutWeight(1); + if (!isInitialRender) { + // 配置信息展示 + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(102:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("网络配置信息"); + Text.debugLine("components/MiddleContent.ets(103:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(107:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.choseIndex != null && this.isShowInterface) { + this.ifElseBranchUpdateFunction(0, () => { + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + ViewPU.create(new NetworkChart(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: this.allSimObj[this.choseIndex] + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(117:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("路由/交换表信息"); + Text.debugLine("components/MiddleContent.ets(118:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(122:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.choseIndex != null && this.isShowTable) { + this.ifElseBranchUpdateFunction(0, () => { + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + ViewPU.create(new TableChart(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: this.allSimObj[this.choseIndex] + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + // 配置信息展示 + Column.pop(); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateCon extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__objS = new SynchedPropertyNesedObjectPU(params.objS, this, "objS"); + this.__objE = new SynchedPropertyNesedObjectPU(params.objE, this, "objE"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + } + updateStateVars(params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__objS.purgeDependencyOnElmtId(rmElmtId); + this.__objE.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__objS.aboutToBeDeleted(); + this.__objE.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get objS() { + return this.__objS.get(); + } + get objE() { + return this.__objE.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Line.create(); + Line.debugLine("components/MiddleContent.ets(150:5)"); + Line.width('100%'); + Line.height('100%'); + Line.stroke(Color.Black); + Line.startPoint([this.objS.objX + 25, this.objS.objY + 15]); + Line.endPoint([this.objE.objX + 25, this.objE.objY + 15]); + if (!isInitialRender) { + Line.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + rerender() { + this.updateDirtyElements(); + } +} +class coordinates { + constructor(x, y) { + this.x = x; + this.y = y; + } +} +class CreatePort extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__objS = new SynchedPropertyNesedObjectPU(params.objS, this, "objS"); + this.__objE = new SynchedPropertyNesedObjectPU(params.objE, this, "objE"); + this.__conn = new SynchedPropertyNesedObjectPU(params.conn, this, "conn"); + this.r = 30; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + this.__conn.set(params.conn); + if (params.r !== undefined) { + this.r = params.r; + } + } + updateStateVars(params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + this.__conn.set(params.conn); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__objS.purgeDependencyOnElmtId(rmElmtId); + this.__objE.purgeDependencyOnElmtId(rmElmtId); + this.__conn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__objS.aboutToBeDeleted(); + this.__objE.aboutToBeDeleted(); + this.__conn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get objS() { + return this.__objS.get(); + } + get objE() { + return this.__objE.get(); + } + get conn() { + return this.__conn.get(); + } + k() { + return (this.objS.objY - this.objE.objY) / (this.objS.objX - this.objE.objX); + } // 直线斜率 + distance(point1, point2) { + return Math.sqrt((point1.x - point2.x) ** 2 + (point1.y - point2.y) ** 2); + } // 两点距离 + closerSPoint() { + let objEPoint = new coordinates(this.objE.objX + 25, this.objE.objY + 15); + let objSPoint1 = new coordinates(this.objS.objX + 25 + this.r / Math.sqrt(this.k() ** 2 + 1), this.objS.objY + 15 + this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objSPoint2 = new coordinates(this.objS.objX + 25 - this.r / Math.sqrt(this.k() ** 2 + 1), this.objS.objY + 15 - this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objSPoint = this.distance(objSPoint1, objEPoint) < this.distance(objSPoint2, objEPoint) ? objSPoint1 : objSPoint2; + return { x: objSPoint.x, y: objSPoint.y }; + } + closerEPoint() { + let objSPoint = new coordinates(this.objS.objX + 25, this.objS.objY + 15); + let objEPoint1 = new coordinates(this.objE.objX + 25 + this.r / Math.sqrt(this.k() ** 2 + 1), this.objE.objY + 15 + this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objEPoint2 = new coordinates(this.objE.objX + 25 - this.r / Math.sqrt(this.k() ** 2 + 1), this.objE.objY + 15 - this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objEPoint = this.distance(objEPoint1, objSPoint) < this.distance(objEPoint2, objSPoint) ? objEPoint1 : objEPoint2; + return { x: objEPoint.x, y: objEPoint.y }; + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Stack.create(); + Stack.debugLine("components/MiddleContent.ets(202:5)"); + Stack.width('100%'); + Stack.height('100%'); + if (!isInitialRender) { + Stack.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.conn.ifsS.toString()); + Text.debugLine("components/MiddleContent.ets(203:7)"); + Text.fontSize(15); + Text.fontColor(Color.Green); + Text.fontWeight(FontWeight.Bold); + Text.position(this.closerSPoint()); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.conn.ifsE.toString()); + Text.debugLine("components/MiddleContent.ets(208:7)"); + Text.fontSize(15); + Text.fontColor(Color.Green); + Text.fontWeight(FontWeight.Bold); + Text.position(this.closerEPoint()); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Stack.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateImg extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.thisIndex = undefined; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__simObj.set(params.simObj); + if (params.thisIndex !== undefined) { + this.thisIndex = params.thisIndex; + } + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__simObj.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue) { + this.__allSimConn.set(newValue); + } + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue) { + this.__TempConn.set(newValue); + } + get simObj() { + return this.__simObj.get(); + } + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue) { + this.__isNewObj.set(newValue); + } + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue) { + this.__newObjType.set(newValue); + } + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue) { + this.__choseIndex.set(newValue); + } + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue) { + this.__isNewConn.set(newValue); + } + InterfaceMenu(parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/MiddleContent.ets(234:5)"); + Menu.radius(8); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (item === null) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: "接口" + (index + 1).toString() }); + MenuItem.debugLine("components/MiddleContent.ets(237:11)"); + MenuItem.width(70); + MenuItem.height(30); + MenuItem.contentFont({ size: 14 }); + MenuItem.onChange(() => { + if (!this.isNewConn) { + this.TempConn.push(this.allSimObj[this.thisIndex]); + this.TempConn.push(index + 1); + } + else { + if (this.TempConn[0] != this.simObj && !this.TempConn[0].interface.includes(ObservedObject.GetRawObject(this.simObj))) { + const conn = new SimConnect(this.TempConn[0], this.allSimObj[this.thisIndex], this.TempConn[1], index + 1); + this.allSimConn.push(conn); + // 更新两个连接对象中的连接线信息 + conn.updateObjConn(); + this.TempConn = []; + } + else { + this.TempConn = []; + promptAction.showToast({ + message: "请选择连接不同的对象", + duration: 3000, + bottom: 50 + }); + } + } + if (this.choseIndex != null) { + this.allSimObj[this.choseIndex].isChose = false; + } + this.isNewObj = false; + this.newObjType = -1; + this.choseIndex = null; + this.isNewConn = !this.isNewConn; + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: "接口" + (index + 1).toString() + "已连接" }); + MenuItem.debugLine("components/MiddleContent.ets(270:11)"); + MenuItem.width(105); + MenuItem.height(30); + MenuItem.contentFont({ size: 13, style: FontStyle.Italic }); + MenuItem.contentFontColor(Color.Green); + MenuItem.onChange(() => { + promptAction.showToast({ + message: "该接口已连接", + duration: 3000, + bottom: 50 + }); + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.interface, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(289:5)"); + Column.position({ x: this.simObj.objX, y: this.simObj.objY }); + Column.bindContextMenu({ builder: () => { + this.InterfaceMenu.call(this); + } }, ResponseType.LongPress); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Image.create(this.simObj.img); + Image.debugLine("components/MiddleContent.ets(290:7)"); + Image.width(50); + Image.border({ + color: this.TempConn[0] === this.simObj ? Color.Green : this.simObj.isChose ? Color.Red : Color.Transparent, + width: 1.2 + }); + Image.onClick(() => { + this.TempConn = []; + this.isNewObj = false; // 取消插入新对象状态 + this.newObjType = -1; + this.isNewConn = false; + if (!this.allSimObj.some(item => item.isChose == true)) { // 若没有对象被选中 + this.choseIndex = this.thisIndex; // 更新选中对象的下标 + this.simObj.changeIsChose(); // 更新对象选中状态 + } + else if (this.simObj.isChose) { // 若要取消选中对象 + this.choseIndex = null; // 更新选中下标为null + this.simObj.changeIsChose(); // 更新对象选中状态 + } + else if (!this.simObj.isChose && this.choseIndex != null) { // 若要更换选择对象 + this.allSimObj[this.choseIndex].changeIsChose(); // 更新上一个选中对象选中状态 + this.choseIndex = this.thisIndex; // 更新选中下标 + this.simObj.changeIsChose(); // 更新当前对象选中状态 + } + }); + if (!isInitialRender) { + Image.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateLabel extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get simObj() { + return this.__simObj.get(); + } + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue) { + this.__isShowLabel.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isShowLabel) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.simObj.objLabel); + Text.debugLine("components/MiddleContent.ets(327:7)"); + Text.fontSize(15); + Text.position({ x: this.simObj.objX + 25, y: this.simObj.objY - 12 }); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +//# sourceMappingURL=MiddleContent.js.map“Jhvigor_ignore_D:_Huawei_OpenHarmony_10_10_ets_api_@ohos.promptAction.d.ts@E:\jiaocai\ensp14\entry\src\main\ets\classes\OtherSimObjects.ets9E:\jiaocai\ensp14\entry\src\main\ets\components\Table.etsAE:\jiaocai\ensp14\entry\src\main\ets\components\MiddleContent.etsrBmoduleNameisLocalDependencyisNodeEntryFilepkgPathbelongProjectPathpkgNamepkgVersiondependencyPkgInfobelongModulePathhostModulesInfoentry·E:\jiaocai\ensp14\entryE:\jiaocai\ensp14entry1.0.0E:\jiaocai\ensp14\entryrChostDependencyNamehostModuleName../components/MiddleContententry1gimport promptAction from "@ohos.promptAction" +import { SimPacket, SimConnect, SimHost, SimHub, SimRouter, SimSwitch } from "../classes/OtherSimObjects" +import { SimBase } from "../classes/SimBase" +import { TableChart, NetworkChart, sendHost, targetHost } from "./Table" + +@Component +export struct MiddleContent { + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume allSimConn: SimConnect[] // 仿真连接线数组 + @Consume TempConn: any[] // 临时any数组 + @Consume isNewObj: boolean // 是否插入新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + @Consume isNewConn: boolean // 是否正在新增连接线 + @Consume isShowLabel: boolean // 是否显示标签 + @Consume isShowPort: boolean // 是否显示接口 + @Consume isShowInterface: boolean // 是否显示网络配置信息 + @Consume isShowTable: boolean // 是否显示路由/交换表信息 + @Consume allSimPacket: SimPacket[] // 单次数据包传输的集合 + @StorageProp("isNewPacket") isNewPacket: number = 0 + @StorageProp("isNewPacketArrived") isNewPacketArrived: number = 0 + + build() { + Row() { + // 画布 + Stack() { + ForEach(this.allSimConn, (item: SimConnect) => { + CreateCon({ objS: item.nObjS as SimBase, objE: item.nObjE as SimBase }) // 连接线绘制组件 + CreatePort({ objS: item.nObjS as SimBase, objE: item.nObjE as SimBase, conn: item }) // 接口绘制组件 + }) + + ForEach(this.allSimObj, (item: SimBase, index) => { + CreateImg({ simObj: item, thisIndex: index }) // 虚拟对象绘制组件 + CreateLabel({ simObj: item }) // 标签绘制组件 + }) + } + .width('56%') + .height('100%') + .border({ color: Color.Black, width: 1 }) + .onClick((event: ClickEvent) => { + if (this.isNewObj) { // 若要插入新增对象 + const obj = this.newObjType == 1 ? new SimHost(event.x - 25, event.y - 15) : this.newObjType == 2 ? new SimRouter(event.x - 25, event.y - 15) : this.newObjType == 3 ? new SimSwitch(event.x - 25, event.y - 15) : new SimHub(event.x - 25, event.y - 15) + this.allSimObj.push(obj as SimBase) // 插入并绘制新增对象 + } else if (!this.isNewObj && this.allSimObj.some(item => item.isChose == true)) { + this.allSimObj[this.choseIndex].objX = event.x - 25 // 更新X坐标 + this.allSimObj[this.choseIndex].objY = event.y - 15 // 更新Y坐标 + this.allSimObj[this.choseIndex].isChose = false // 更新选中状态为未选中 + } + this.isNewObj = false // 取消新增状态 + this.newObjType = -1 // 取消新增类型 + this.choseIndex = null // 取消选中下标 + this.isNewConn = false // 取消新增连接线 + this.TempConn = [] // 清空临时连接线对象 + }) + + Column({ space: 3 }) { + Column() { + Text("发送主机详情") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.isNewPacket) { + Text("发送主机:" + this.allSimPacket[this.allSimPacket.length-1].sendHost.objLabel) + Text("IP地址:" + this.allSimPacket[this.allSimPacket.length-1].sourceIp) + Text("Mac地址;" + this.allSimPacket[this.allSimPacket.length-1].sourceMac) + Text("发送数据包大小:1024kB") + Text("已发送数据包数量:1") + Text("需要发送的数据包总数:1") + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + + Column() { + Text("接收主机详情") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.isNewPacketArrived) { + // Text("接收主机:") + Text("IP地址:" + this.allSimPacket[this.allSimPacket.length-1].targetIp) + Text("Mac地址;" + this.allSimPacket[this.allSimPacket.length-1].targetMac) + Text("接收数据包大小:1024kB") + Text("已接收数据包数量:1") + Text("需要接收的数据包总数:1") + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + } + .width('22%') + .height('100%') + + // 配置信息展示 + Column({ space: 3 }) { + Column() { + Text("网络配置信息") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.choseIndex != null && this.isShowInterface) { + NetworkChart({ simObj: this.allSimObj[this.choseIndex] }) + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + + Column() { + Text("路由/交换表信息") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.choseIndex != null && this.isShowTable) { + TableChart({ simObj: this.allSimObj[this.choseIndex] }) + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + } + .width('22%') + .height('100%') + .padding(2) + .justifyContent(FlexAlign.SpaceBetween) + .layoutWeight(1) + } + .width('100%') + .height('74%') + } +} + +// 绘制连接线组件 +@Component +struct CreateCon { + @ObjectLink objS: SimBase + @ObjectLink objE: SimBase + + build() { + Line() + .width('100%') + .height('100%') + .stroke(Color.Black) + .startPoint([this.objS.objX + 25, this.objS.objY + 15]) + .endPoint([this.objE.objX + 25, this.objE.objY + 15]) + } +} + +class coordinates { + x: number + y: number + + constructor(x: number, y: number) { + this.x = x + this.y = y + } +} + +// 绘制接口组件 +@Component +struct CreatePort { + @ObjectLink objS: SimBase + @ObjectLink objE: SimBase + @ObjectLink conn: SimConnect + r: number = 30 + + k() { + return (this.objS.objY - this.objE.objY) / (this.objS.objX - this.objE.objX) + } // 直线斜率 + + distance(point1: coordinates, point2: coordinates) { + return Math.sqrt((point1.x - point2.x)**2 + (point1.y - point2.y)**2) + } // 两点距离 + + closerSPoint() { + let objEPoint = new coordinates(this.objE.objX + 25, this.objE.objY + 15) + let objSPoint1 = new coordinates(this.objS.objX + 25 + this.r / Math.sqrt(this.k()**2 + 1), this.objS.objY + 15 + this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objSPoint2 = new coordinates(this.objS.objX + 25 - this.r / Math.sqrt(this.k()**2 + 1), this.objS.objY + 15 - this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objSPoint = this.distance(objSPoint1, objEPoint) < this.distance(objSPoint2, objEPoint) ? objSPoint1 : objSPoint2 + return { x: objSPoint.x, y: objSPoint.y } + } + + closerEPoint() { + let objSPoint = new coordinates(this.objS.objX + 25, this.objS.objY + 15) + let objEPoint1 = new coordinates(this.objE.objX + 25 + this.r / Math.sqrt(this.k()**2 + 1), this.objE.objY + 15 + this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objEPoint2 = new coordinates(this.objE.objX + 25 - this.r / Math.sqrt(this.k()**2 + 1), this.objE.objY + 15 - this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objEPoint = this.distance(objEPoint1, objSPoint) < this.distance(objEPoint2, objSPoint) ? objEPoint1 : objEPoint2 + return { x: objEPoint.x, y: objEPoint.y } + } + + build() { + Stack() { + Text(this.conn.ifsS.toString()) + .fontSize(15) + .fontColor(Color.Green) + .fontWeight(FontWeight.Bold) + .position(this.closerSPoint()) + Text(this.conn.ifsE.toString()) + .fontSize(15) + .fontColor(Color.Green) + .fontWeight(FontWeight.Bold) + .position(this.closerEPoint()) + } + .width('100%') + .height('100%') + } +} + +// 绘制仿真对象组件 +@Component +struct CreateImg { + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume allSimConn: SimConnect[] // 仿真连接线数组 + @Consume TempConn: any[] // 临时any数组 + @ObjectLink simObj: SimBase // 当前对象 + @Consume isNewObj: boolean // 是否新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + @Consume isNewConn: boolean // 是否正在新增连接线 + thisIndex: number + + @Builder + InterfaceMenu() { // 接口选择菜单 + Menu() { + ForEach(this.simObj.interface, (item, index) => { + if (item === null) { + MenuItem({ content: "接口" + (index + 1).toString() }) + .width(70) + .height(30) + .contentFont({ size: 14 }) + .onChange(() => { + if (!this.isNewConn) { + this.TempConn.push(this.allSimObj[this.thisIndex]) + this.TempConn.push(index + 1) + } else { + if (this.TempConn[0] != this.simObj && !this.TempConn[0].interface.includes(this.simObj)) { + const conn = new SimConnect(this.TempConn[0], this.allSimObj[this.thisIndex], this.TempConn[1], index + 1) + this.allSimConn.push(conn) + // 更新两个连接对象中的连接线信息 + conn.updateObjConn() + this.TempConn = [] + } else { + this.TempConn = [] + promptAction.showToast({ + message: "请选择连接不同的对象", + duration: 3000, + bottom: 50 + }) + } + } + if (this.choseIndex != null) { + this.allSimObj[this.choseIndex].isChose = false + } + this.isNewObj = false + this.newObjType = -1 + this.choseIndex = null + this.isNewConn = !this.isNewConn + }) + } else { + MenuItem({ content: "接口" + (index + 1).toString() + "已连接" }) + .width(105) + .height(30) + .contentFont({ size: 13, style: FontStyle.Italic }) + .contentFontColor(Color.Green) + .onChange(() => { + promptAction.showToast({ + message: "该接口已连接", + duration: 3000, + bottom: 50 + }) + }) + } + }) + } + .radius(8) + } + + build() { + Column() { + Image(this.simObj.img) + .width(50) + .border({ + color: this.TempConn[0] === this.simObj ? Color.Green : this.simObj.isChose ? Color.Red : Color.Transparent, + width: 1.2 + })// 选中框 + .onClick(() => { // 仅允许一个对象被选中 + this.TempConn = [] + this.isNewObj = false // 取消插入新对象状态 + this.newObjType = -1 + this.isNewConn = false + if (!this.allSimObj.some(item => item.isChose == true)) { // 若没有对象被选中 + this.choseIndex = this.thisIndex // 更新选中对象的下标 + this.simObj.changeIsChose() // 更新对象选中状态 + } else if (this.simObj.isChose) { // 若要取消选中对象 + this.choseIndex = null // 更新选中下标为null + this.simObj.changeIsChose() // 更新对象选中状态 + } else if (!this.simObj.isChose && this.choseIndex != null) { // 若要更换选择对象 + this.allSimObj[this.choseIndex].changeIsChose() // 更新上一个选中对象选中状态 + this.choseIndex = this.thisIndex // 更新选中下标 + this.simObj.changeIsChose() // 更新当前对象选中状态 + } + }) + } + .position({ x: this.simObj.objX, y: this.simObj.objY }) + .bindContextMenu(this.InterfaceMenu(), ResponseType.LongPress) // 外容器绑定长按事件,避免与内组件冲突 + } +} + +// 绘制标签组件 +@Component +struct CreateLabel { + @ObjectLink simObj: SimBase + @Consume isShowLabel: boolean // 是否显示标签 + + build() { + if (this.isShowLabel) { + Text(this.simObj.objLabel) + .fontSize(15) + .position({ x: this.simObj.objX + 25, y: this.simObj.objY - 12 }) + } + } +}rD@ohos.promptAction../classes/OtherSimObjects./TablerEassertionsexternalidmetamoduleSideEffectsresolvedBysyntheticNamedExportsAJhvigor_ignore_D:_Huawei_OpenHarmony_10_10_ets_api_@ohos.promptAction.d.tsAêoh-resolveEA@E:\jiaocai\ensp14\entry\src\main\ets\classes\OtherSimObjects.etsAêoh-resolveEA9E:\jiaocai\ensp14\entry\src\main\ets\components\Table.etsAêoh-resolve’rFversionfilesourceRootsourcesnamesmappingsMiddleContent.jsMiddleContent.ets--.-  ')$/&1/:1<:E<GBM^i_i  !!#9)?2H3H 4AC4D5;O#QBRCH         +  + +  +                      ))%7%7  ̉̉ +̉ ̉ ̊̊ ̊ ̊     $$ $ $   %% %%    && && &"&'&(&-&"/&$4&)6&+7&,9&.   '''' '!"'#$'%(( ((!(#(%(0((b) +)) )$)%)/)%3))4)*5)+6),7)-;)1B)8C)9H)>I)?J)@M)CO)EQ)GV)LW)MX)N[)Q])S^)T_)U`)Va)We)[f)\p)ft)ju)kv)lw)mx)n|)r̅){̆)|̋)́̌)̂̍)̃̐)̆̒)̈̔)̙̊)̏̚)̛̐)̞̑)̠̔)̡̖)̢̗)̘̣)̙̤)̨̚)̞̩)̟̳)̷̩)̸̭)̮̹)̯̺)̰̻)̱̿)̵)̾)̿)Ĕ)Ŕ)Ɣ)ɔ)˔)͔)Ҕ)Ӕ)Ԕ)ה)ٔ)ڔ)۔)ܔ)ݔ)))))))))))) +) ) ))* +**"*#*'*(*+*,,*--*-.*.:*:+ +++++'+!++%/+)0+*9+3:+4>+8?+9C+=D+>F+@G+AK+EL+FS+MW+Q[+U\+V^+X, +,,",#,',(,2,(3,)4,*8,.;,1@,6A,7B,8E,;G,=H,=I,>Q,F- +--"-#-'-(-2-(3-)4-*8-.;-1@-6A-7B-8E-;G-=H-=I->Q-F. +..".#.'.(.2.(3.)4.*;.1>.4C.9D.9E.:R.G/ 00 0 0 0%0&0'000'11 1 1"1#1$1%1&1/1&22 2 2"2&2'2(212(33 3 3!3&3'3(323)44 4 4 4"4#4$404' 5 5  $(*. /!41$3(7*9.=/>4N. +7>@DFJ K!P1R3V7X9\=]>bNdP $&* +!01236789<==>BN$(*.!/"42$4(8*:.>/?4O$Q(U*W.[. +8?AEGK!L"Q2S4W8Y:]>^?cOeQiUkWo[q] $&*!+"0224688:<>=?BO Q$U&W*[/34> 3085$ * , 0 "$ $- -/ /4 4. +7 > @ F H L "N $W -Y /^ 4` 6 & ( , "$!*!,! 0!$.! +9!@!B!H!J! N!$P!& !&!(! ,!$/34=    77 7 7!7#7$7&7 77 `` ` ` 77 aa a a77 88 88H HHH 88I III 88J JJJ!J#J(J)J/J%1J'6J,8J.9J/;J188 9 +99 9 9 +9: ::: 9 +9; ;;&;"';#+;'9 +99 + 9 = +== += > >>> > ">"??$?+?.?2?!3?"??.@?/D?3E?4Q?@R?AX?G[?H\?I]?J^?Kf?Sg?To?\? ???@@$@+@.@2@!3@"?@.@@/D@3E@4Q@@R@AX@G[@H\@I]@J^@Kf@S@ @@@AA$A,A/A3A"4A#@A/AA0EA4FA5RAASABYAH\AI]AJ^AK_ALhAUA AAABB$B4B#B BBBCC$C0CC CCCDD$D2D!D DDD E E = +=88 LL LL\ \\\ LL] ]]] LL^ ^^^!^#^(^)^/^%1^'6^,8^.9^/;^1LL M +MM M M +MN NNN M +MO OO&O"'O#+O'M +MM + M Q +QQ +Q R RRR'R')R)S(STT$T+T.T2T!3T"?T.@T/DT3ET4QT@RTAXTG[TH\TI]TJ^TKfTSS,ST TS$STTUU$U,U/U3U"4U#@U/AU0EU4FU5RUASUBYUH\UI]UJ^UK_ULhUUU UUUVV$V4V#V VVVWW$W0WW WWWXX$X2X!X XXX Y Y Q +QLL77 cc dd d d!d#d$d&d cc dd ̃̃ ̃ ̃ cc dd ̄̄ ̄ ̄ cc dd ̅̅̅̅ cc dd ̆!̆"̆+̆,̆ 8̆, cc dd ̇̇ ̇!̇ccdd ee eep ppp eeq qqq eer rrr!r#r(r)r/r%1r'6r,8r.9r/;r1ee f +ff f f +fg ggg f +fh hh&h"'h#+h'f +ff + f j +jj +j k kkkk#k#'k'+k+/k/0k0?k?AkA(l.l#0l%4l)5l*>l3?l4Cl8Dl9NlCOlD2l>lElGlMl#Ol%Sl)Tl*]l3^l4bl8cl9mlCnlDplF$l*l#,l%0l)1l*:l3;l4?l8@l9JlCKlD m m j +jee tt tt  tt̀ ̀̀̀ tt́ ́́́!́#́(́)́/́%1́'6́,8́.9́/;́1tt u +uu"u u +uv vvv u +uw ww&w"'w#+w'u +uu + u y +yy +y z zzzz#z#'z'+z+/z/0z0;z;=z=({.{!0{#4{'5{(>{1?{2C{6D{7N{AO{B2{<{C{E{K{!M{#Q{'R{([{1\{2`{6a{7k{Al{Bn{D${*{!,{#0{'1{(:{1;{2?{6@{7J{AK{B | | y +yttccdd  ̋̐̐̏̌̑ ̑̒ ̒̔ ̕̕ ̖̖̕̕ ̖ ̖ ̗̗̕̕ ̗̗ ̘̘̕̕ ̘̘̘#̘ ̙̙̙̙̕̕!̙"̙&̙'̙+̙!.̙$0̙&2̙(6̙,7̙-;̙1<̙2@̙6C̙9E̙;F̙< ̕̕̚̚̚̚̚ ̚$̚%̚)̚,̚".̚$0̚&4̚*5̚+9̚/:̚0>̚4A̚7C̚9D̚:̢̢̢̢̢̛̞̞̞̕̕"̣ ̣ ̣ ̣ +̣ ̣̣̤ ̤ ̤ ̤ +̤ ̤̤̥̥̦̪̪̩̮̮̦̫ ̫̬ ̬̭ ̭̰̰̱̱ ̱ ̱̱̱̱̱!̱%̱!&̱"*̱&+̱'/̱+0̱,3̱/4̱08̱49̱5=̱9>̱:Ḇ>E̱AI̱EJ̱FṈJO̱KS̱OṮPU̱P̲̲̲ ̲ ̴ ̴ + ̴ ̴̴ ̴3̵̵ ̵̵̵̵̵ ̵!̵"̵%̵!+̵',̵(-̵).̵*2̵,3̵-6̵07̵1=̵7>̵8?̵9B̵F̹BG̹CK̹GN̹JP̹LQ̹MR̹MA̺ ̺̺̺̺(̺$)̺%-̺).̺*2̺.3̺/7̺3:̺6<̺8?̺;C̺?D̺@E̺AH̺DL̺HM̺IQ̺MR̺NV̺RW̺SX̺TZ̺V^̺X_̺Yb̺\c̺]d̺^f̺`j̺dk̺eo̺ip̺jt̺nw̺qy̺s|̺v̺̀ź̺{̺̂|̺̄~̢̧̢̺̺̺̺̺̺̺̙̺̺̞̺̘̟̺̙̠̺̺̜̦̺̞̺̟̪̺̫̺̣̬̺̤̭̺̥̮̺̥̇́̋̅̌̆̍̇̐̊̔̎̏̓̔̕̚̚A̻ ̻̻̻̻(̻$)̻%-̻).̻*2̻.3̻/7̻3:̻6<̻8?̻;C̻?D̻@E̻AH̻DL̻HM̻IQ̻MR̻NV̻RW̻SX̻TZ̻V^̻X_̻Yb̻\c̻]d̻^f̻`j̻dk̻eo̻ip̻jt̻nw̻qy̻s|̻v̻̀ź̻{̻̂|̻̄~̢̧̢̻̻̻̻̻̻̻̙̻̻̞̻̘̟̻̙̠̻̻̜̦̻̞̻̟̪̻̫̻̣̬̻̤̭̻̥̮̻̥̼̇́̋̅̌̆̍̇̐̊̔̎̏̓̔̕̚̚ ̼̼̼̼̼%̼!&̼"0̼,2̼.;̼7<̼8?̼;C̼?D̼@L̼HM̼IW̼SY̼Ub̼^c̼_d̼`e̼af̼bp̼lq̼mr̼ns̼o}̼y~̼y̽̽ ̽ ̽̽̽̽̽!̽"̽$̽ -̽).̽*/̽+1̽-2̽-̾̾ '#($,(-)1-2.6295;7=9A=B>FBGCKGNJPLQMRMA ($)%-).*2.3/73:6<8?;C?D@EAHDLHMIQMRNVRWSXTZV^X_Yb\c]d^f`jdkeoipjtnwqys|v̀ź{̂|̄~̢̧̢̙̞̘̟̙̠̜̦̞̟̪̫̣̬̤̭̥̮̥̇́̋̅̌̆̍̇̐̊̔̎̏̓̔̕̚̚A ($)%-).*2.3/73:6<8?;C?D@EAHDLHMIQMRNVRWSXTZV^X_Yb\c]d^f`jdkeoipjtnwqys|v̀ź{̂|̄~̢̧̢̙̞̘̟̙̠̜̦̞̟̪̫̣̬̤̭̥̮̥̇́̋̅̌̆̍̇̐̊̔̎̏̓̔̕̚̚ %!&"0,2.;7<8?;C?D@LHMIWSYUb^c_d`eafbplqmrnso}y~y  !"$ -).*/+1-2-    +       + !"&'/"1$  +   +  !&  + &'+#  + +#-% + +  + !"&'/"1$  +   +  !&  + &'+#  + +#-% + +                      3,81 !%' +(029;?"B%C&H+K.L/M0N1V9X;Z= +() ./1 +() /02 +() 457;=!?#A% +() 1257$()-.7!9#(,-56:";#?'@(I1J2N6O7X@YAZB[B(,-56:";#@(C+D,E-F-%)(,019!:";#<$@(D,E-K3O7P8TZ@^D_EhNiOmSnTw]x^z`~dėm̈n̉o̊p̌ȓw̔z̕{̖|̗|,01;!<"@&A'E+F,G,,>$,01>$@&A&,019<">$?$)-,019<">$?$,89B(C)079E)08:>"068:-./)%$(,-7!;%?)A+(,-67;#<$F.G/H0O7R:W?X?%$()149#:#$()36 7!8"9"$ ( ) 3 6 : $; $$ +( +) +2 +5 +6 + : +$; +%D +.E +.  ! $ +, +$    +( 0 2 9 ; ? "B %C &H +K .L /M 0N 1V 9X ;[ >` Cb E  +( ) ./2  +( ) /02  +( ) 457;=!?#A%F*H,Q5R6X  +( ) 9:?#@$E)  +( ) 1257$01:$;%(/19!(026(.02%&'  ! $ +,  +$  /34:;D#      +   +99 999!9%9&9,9-919#39%49&69(:9,;9-A93B94F98H9:   +:"::::&:':+!:7":8+:A  + !! ! !!$!%!(! !! " """ !! # ##'$ +$$$$$$%$&$ '$!,$&0$*1$+7$18$29$3:$4?$9@$:E$?F$@G$AH$BL$FM$GS$MT$N[$U\$V]$W^$Xc$]d$^g$ah$bi$cj$do$ip$j{$u% +%%% & !! ' ''''( +((( ("(#() +))) )%)&)') 3),* +***"*#*$*%*+ ++++!+&+ '+ , +,,,,#,$,(,"),#-,'.,(0,*1,+5,/6,0=,7A,;E,?F,@H,BJ,DU,O- --#-&-*-"+-#4-,5-,6--B-9. ... .-.%/.'0.'1.(<.3/ ////$/ %/!,/(./*0/,;/70 00#0&0*0"+0",0#:011 111 1-1%/1'01'11(<132 22222%2!&2"-2)12-521622@2556 7 7 !!   +;@@?<AAB BB BD EEE E E"EFF +$F (F)F/F0F8FFF +G %G&G(GFF +H %H&H(H)H+H/H0H6H"7H#;H'>H*@H,BH.CH/EH1IH5JH6PH>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``5  + +      !!""##$$%%&&''(())**++,,--..//0011223344-  + +      !!""##$$%%&&''(())**++,,Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +N          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MQ + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + + + + + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<= +=> +>? +?@ +@A +AB +BC +CD +DE +EF +FG +GH +HI +IJ +JK +KL +LM +MN +NO +OP +PK          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JQ          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPN  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMT  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSQ  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPP`  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__T  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSW  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVW  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVl  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkk1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    3  + +      !!""##$$%%&&''(())**++,,--..//001122=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==<          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;<!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9:!:;!;>""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",-"-."./"/0"01"12"23"34"45"56"67"78"89"9:":;";<"<="=>######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/0#01#12#23#34#45#56#67#78#89#9:#:;#;<#<=#==$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$23$34$45$56$67$78$89$9:$:;$;<$<?%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%56%67%78%89%9:%:;%;<%<=%=>%>>&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9:&:;&;<&<=&=C''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'34'45'56'67'78'89'9:':;';<'<='=>'>?'?@'@A'AB'B?((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+,(,-(-.(./(/0(01(12(23(34(45(56(67(78(89(9:(:;(;<(<=(=>(>@))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)??********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*01*12*23*34*45*56*67*78*89*9:*:;*;<*<=*=>*>F+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-+-.+./+/0+01+12+23+34+45+56+67+78+89+9:+:;+;<+<=+=>+>?+?@+@A+AB+BC+CD+DE+E,,,,,,,--------- - +- + - - - ------------.......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-////////// / +/ + / / / ////////////////// / !/!"/"#/#$/$%/%&/&'/'(/()/)*/*+/+,/,-/-./.-000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,/222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3..444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-0555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5//666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6.4777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/0701712723730888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/1999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9./9/0900::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:./:/7;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;./;/0;01;12;23;34;45;56;66<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>????????? ? +? + ? ? ? ?????????(@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'AAAAAAABBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBB)CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C(DDDDDDDEEEEEEEEE E +E + E E E EEEEEEEEEE)FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F(GGGGGGG HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH*IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)JJJJJJJKKKKKKKKK K +K + K K K KKKKKKKK'LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&MMMMMMMNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNN(OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'PPPPPPPQQQQQQQQQ Q +Q + Q Q Q QQQQQQQQ'RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&SSSSSSSTTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTT(UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'VVVVVVVWWWWWWWWW W +W + W W W WWWWWWWWWW)XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X(YYYYYYY ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ*[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)\\\\\\\]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]])^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^(_______ ````````` ` +` + ` ` ` ``````````````````*aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)bbbbbbbccccccccc c +c + c c c ccccccccc(ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'eeeeeeefffffffff f +f + f f f fffffffffffffffff)ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g(hhhhhhhiiiiiiiii i +i + i i i iiiiiiiiiii*jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)kkkkkkk!lllllllll l +l + l l l llllllllllllllllll l +mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*nnnnnnnooooooooo o +o + o o o oooooooooo)ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p(qqqqqqq rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr*sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)tttttttuuuuuuuuu u +u + u u u uuuuuuuuuuuuuuu.vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-wwwwwww%xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$/yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y.zzzzzzz{{{{{{{{{ { +{ + { { { {{{{{{{{{{{*||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)}}}}}}}!~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ +  + +      !!""##$$%%&&''(())**̀̀̀̀̀̀̀́́́́́́́́́ ́ +́ + ́ ́ ́ ́́́́́́́́́́́́+̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂ ̂ !̂!"̂"#̂#$̂$%̂%&̂&'̂'(̂()̂)*̂*̃̃̃̃̃̃̃"̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̄ ̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄ ̄ !̄!,̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ̅ !̅!"̅"#̅#$̅$%̅%&̅&'̅'(̅()̅)*̅*+̅+̆̆̆̆̆̆̆̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇̇̇*̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'(̈()̈)̉̉̉̉̉̉̉!̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊ ̊ +̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋ ̋ !̋!"̋"#̋#$̋$%̋%&̋&'̋'(̋()̋)*̋*̌̌̌̌̌̌̌ ̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍1̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎ ̎ !̎!"̎"#̎#$̎$%̎%&̎&'̎'(̎()̎)*̎*+̎+,̎,-̎-.̎./̎/0̎0̏̏̏̏̏̏̏(̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐ ̐ !̐!"̐"#̐#$̐$%̐%&̐&'̐'2̑̑̑̑̑̑̑̑̑ ̑ +̑ + ̑ ̑ ̑ ̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑ ̑ !̑!"̑"#̑#$̑$%̑%&̑&'̑'(̑()̑)*̑*+̑+,̑,-̑-.̑./̑/0̑01̑1̒̒̒̒̒̒̒̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̓ ̓̓̓̓̓̓̓̓̓F̔̔̔̔̔̔̔̔̔ ̔ +̔ + ̔ ̔ ̔ ̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔ ̔ !̔!"̔"#̔#$̔$%̔%&̔&'̔'(̔()̔)*̔*+̔+,̔,-̔-.̔./̔/0̔01̔12̔23̔34̔45̔56̔67̔78̔89̔9:̔:;̔;<̔<=̔=>̔>?̔?@̔@A̔AB̔BC̔CD̔DE̔ED̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕ ̕ !̕!"̕"#̕#$̕$%̕%&̕&'̕'(̕()̕)*̕*+̕+,̕,-̕-.̕./̕/0̕01̕12̕23̕34̕45̕56̕67̕78̕89̕9:̕:;̕;<̕<=̕=>̕>?̕?@̕@A̕AB̕BC̕C̖̖̖̖̖̖̖̖̖ ̖ +̖ + ̖ ̖ ̖ ̖̖̖̖̖̖̖̖̖̖̖̖̖B̗̗̗̗̗̗̗̗̗ ̗ +̗ + ̗ ̗ ̗ ̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗ ̗ !̗!"̗"#̗#$̗$%̗%&̗&'̗'(̗()̗)*̗*+̗+,̗,-̗-.̗./̗/0̗01̗12̗23̗34̗45̗56̗67̗78̗89̗9:̗:;̗;<̗<=̗=>̗>?̗?@̗@A̗A ̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ ̘ ̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘ ̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙%̚̚̚̚̚̚̚̚̚ ̚ +̚ + ̚ ̚ ̚ ̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚ ̚ !̚!"̚"#̚#$̚$̛̛̛̛̛̛̛̛̛ ̛ +̛ + ̛ ̛ ̛ ̛̛̛̛̛̛̛̛̛̛̛̛̛̛̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜:̝̝̝̝̝̝̝̝̝ ̝ +̝ + ̝ ̝ ̝ ̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝ ̝ !̝!"̝"#̝#$̝$%̝%&̝&'̝'(̝()̝)*̝*+̝+,̝,-̝-.̝./̝/0̝01̝12̝23̝34̝45̝56̝67̝78̝89̝9̞̞̞̞̞̞̞̞̞ ̞ +̞ + ̞ ̞ F̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟ ̟ !̟!"̟"#̟#$̟$%̟%&̟&'̟'(̟()̟)*̟*+̟+,̟,-̟-.̟./̟/0̟01̟12̟23̟34̟45̟56̟67̟78̟89̟9:̟:;̟;<̟<=̟=>̟>?̟?@̟@A̟AB̟BC̟CD̟DE̟ED̠̠̠̠̠̠̠̠̠ ̠ +̠ + ̠ ̠ ̠ ̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠ ̠ !̠!"̠"#̠#$̠$%̠%&̠&'̠'(̠()̠)*̠*+̠+,̠,-̠-.̠./̠/0̠01̠12̠23̠34̠45̠56̠67̠78̠89̠9:̠:;̠;<̠<=̠=>̠>?̠?@̠@A̠AB̠BC̠C̡̡̡̡̡̡̡̡̡ ̡ +̡ + ̡ ̡ ̡ ̡̡̡̡̡̢̢̢̢̢̢̢̢̢ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢Ḍ̣̣̣̣̣̣̣̣ ̣ +̣ + ̣ ̣ ̣ ̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣ ̣ !̣!"̣"#̣#$̣$%̣%&̣&'̣'(̣()̣)*̣*+̣+,̣,-̣-.̣./̣/0̣01̣12̣23̣34̣45̣56̣67̣78̣89̣9:̣:;̣;<̣<=̣=>̣>?̣?@̣@ẠAḄBC̣C̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤!̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥ ̥ ̦̦̦̦̦̦̦̦̦ ̦ +̦ + ̦ ̦ ̦ ̦̦̦̦̦#̧̧̧̧̧̧̧̧̧ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧ ̧ !̧!"̧"̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨=̩̩̩̩̩̩̩̩̩ ̩ +̩ + ̩ ̩ ̩ ̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩ ̩ !̩!"̩"#̩#$̩$%̩%&̩&'̩'(̩()̩)*̩*+̩+,̩,-̩-.̩./̩/0̩01̩12̩23̩34̩45̩56̩67̩78̩89̩9:̩:;̩;<̩<̪̪̪̪̪̪̪̪̪ ̪ +̪ + ̪ ̪ ̪ ̪̪̪̪̪(̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ !̫!"̫"#̫#$̫$%̫%&̫&'̫'2̬̬̬̬̬̬̬̬̬ ̬ +̬ + ̬ ̬ ̬ ̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬ ̬ !̬!"̬"#̬#$̬$%̬%&̬&'̬'(̬()̬)*̬*+̬+,̬,-̬-.̬./̬/0̬01̬1̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭ ̭ !̭!"̭"#̭#$̭$%̭%&̭&'̭'(̭()̭)*̭*+̭+,̭,-̭-.̭./̭/0̭01̭12̭23̭34̭45̭56̭67̭78̭89̭9:̭:;̭;<̭<=̭=>̭>?̭?@̭@A̭AB̭BC̭CḒDḘEF̭FG̭GH̭HI̭IJ̭JK̭KḼLM̭MṊNO̭OP̭PQ̭QR̭RS̭SṰTṶUV̭VW̭WX̭XY̭YZ̭Z[̭[\̭\]̭]^̭^_̭_`̭`a̭ab̭bc̭cḓdḙef̭fg̭gh̭hi̭ij̭jk̭kḽlm̭mṋno̭op̭pq̭qr̭rs̭sṱtṷuv̭vw̭wx̭xy̭yz̭z{̭{|̭|}̭}~̭~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̖̭̖̗̭̗̘̭̘̙̭̙̭̭̜̭̜̝̭̝̞̭̞̟̭̟̠̭̠̭̭̣̭̣̤̭̤̥̭̥̦̭̦̭̭̩̭̩̪̭̪̫̭̫̬̭̬̭̭̭̮̭̮̯̭̯̰̭̰̱̭̱̲̭̲̳̭̳̭̭̭̭̭̹̭̹̺̭̺̻̭̻̼̭̼̭̭̭̭̭̭̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̽̽̾̾̿̿̕̕̚̚”̭Ô̭Ḙ̆Ŕ̭Ɣ̭ṷ̌Ṷ̏ɔ̭ʔ̭˔̭̭͔̭̔Δ̭ϔ̭Д̭є̭Ҕ̭Ӕ̭Ԕ̭Ք̭̭֔ה̭̭̭ؔٔڔ̭۔̭ܔ̭ݔ̭ޔ̭ߔ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭ ̭  +̭ + ̭  ̭  ̭ ̭̭<̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*+̮+,̮,-̮-.̮./̮/0̮01̮12̮23̮34̮45̮56̮67̮78̮89̮9:̮:;̮;̯̯̯̯̯̯̯̯̯ ̯ +̯ + ̯ ̯ ̯ ̯̯̯̯̯a̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰ ̰ !̰!"̰"#̰#$̰$%̰%&̰&'̰'(̰()̰)*̰*+̰+,̰,-̰-.̰./̰/0̰01̰12̰23̰34̰45̰56̰67̰78̰89̰9:̰:;̰;<̰<=̰=>̰>?̰?@̰@A̰AB̰BC̰CD̰DḚEF̰FG̰GH̰HḬIJ̰JK̰KL̰LM̰MN̰NO̰OP̰PQ̰QR̰RS̰ST̰TṴUV̰VW̰WX̰XY̰YZ̰Z[̰[\̰\]̰]^̰^_̰_`̰`S̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱ ̱ !̱!"̱"#̱#$̱$%̱%&̱&'̱'(̱()̱)*̱*+̱+,̱,-̱-.̱./̱/0̱01̱12̱23̱34̱45̱56̱67̱78̱89̱9:̱:;̱;<̱<=̱=>̱>?̱?@̱@A̱AḆBC̱CḎDE̱EF̱FG̱GH̱HI̱IJ̱JḴKḺLM̱MṈNO̱OP̱PQ̱QṞRS̲̲̲̲̲̲̲̲̲ ̲ +̲ + ̲ ̲ ̲ ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ ̲ !̲!"̲"#̲#$̲$%̲%&̲&'̲'(̲()̲)*̲*+̲+,̲,-̲-.̲./̲/0̲01̲12̲23̲34̲45̲56̲67̲78̲89̲9:̲:;̲;<̲<=̲=>̲>?̲?@̲@A̲AB̲BC̲CD̲DE̲EF̲FG̲GH̲HI̲IJ̲JK̲KL̲LM̲MN̲NO̲OP̲PQ̲QR̲RT̳̳̳̳̳̳̳̳̳ ̳ +̳ + ̳ ̳ ̳ ̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳ ̳ !̳!"̳"#̳#$̳$%̳%&̳&'̳'(̳()̳)*̳*+̳+,̳,-̳-.̳./̳/0̳01̳12̳23̳34̳45̳56̳67̳78̳89̳9:̳:;̳;<̳<=̳=>̳>?̳?@̳@A̳AB̳BC̳CD̳DE̳EF̳FG̳GH̳HI̳IJ̳JK̳KL̳LM̳MN̳NO̳OP̳PQ̳QR̳RS̳S̴̴̴̴̴̴̴̴̴ ̴ +̴ + ̴ ̴ ̴ ̴̴̴̴̴2̵̵̵̵̵̵̵̵̵ ̵ +̵ + ̵ ̵ ̵ ̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵ ̵ !̵!"̵"#̵#$̵$%̵%&̵&'̵'(̵()̵)*̵*+̵+,̵,-̵-.̵./̵/0̵01̵11̶̶̶̶̶̶̶̶̶ ̶ +̶ + ̶ ̶ ̶ ̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶ ̶ !̶!"̶"#̶#$̶$%̶%&̶&'̶'(̶()̶)*̶*+̶+,̶,-̶-.̶./̶/0̶03̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷ ̷ !̷!"̷"#̷#$̷$%̷%&̷&'̷'(̷()̷)*̷*+̷+,̷,-̷-.̷./̷/0̷01̷12̷24̸̸̸̸̸̸̸̸̸ ̸ +̸ + ̸ ̸ ̸ ̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸ ̸ !̸!"̸"#̸#$̸$%̸%&̸&'̸'(̸()̸)*̸*+̸+,̸,-̸-.̸./̸/0̸01̸12̸23̸32̹̹̹̹̹̹̹̹̹ ̹ +̹ + ̹ ̹ ̹ ̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹ ̹ !̹!"̹"#̹#$̹$%̹%&̹&'̹'(̹()̹)*̹*+̹+,̹,-̹-.̹./̹/0̹01̹1̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺%̻̻̻̻̻̻̻̻̻ ̻ +̻ + ̻ ̻ ̻ ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ ̻ !̻!"̻"#̻#$̻$̼̼̼̼̼̼̼̼̼ ̼ +̼ + ̼ ̼ ̼ ̼̼̼̼̼̼̼̼̼̽̽̽̽̽̽̽̽̽ ̽ +̽ + ̽ ̽ ̽ ̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̾̾̾̾̾̾̾̾̾ ̾ +̾ + ̾ ̾ ̾ ̾:̿̿̿̿̿̿̿̿̿ ̿ +̿ + ̿ ̿ ̿ ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ ̿ !̿!"̿"#̿#$̿$%̿%&̿&'̿'(̿()̿)*̿*+̿+,̿,-̿-.̿./̿/0̿01̿12̿23̿34̿45̿56̿67̿78̿89̿9 + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC + + 7 + +  !!""##$$%%&&''(())**++,,--..//00112233445566% + +  !!""##$$ + + R + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO0 + +  !!""##$$%%&&''(())**++,,--..//8 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677* + +  !!""##$$%%&&''(())7 + +  !!""##$$%%&&''(())**++,,--..//001122334455666 + +  !!""##$$%%&&''(())**++,,--..//001122334455$ + +  !!""##  + +  + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉ + +   + + K + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJD + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC! + +   + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + +  + +  + + R + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO0 + +  !!""##$$%%&&''(())**++,,--..//8 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677* + +  !!""##$$%%&&''(())7 + +  !!""##$$%%&&''(())**++,,--..//001122334455667 + +  !!""##$$%%&&''(())**++,,--..//001122334455660 + +  !!""##$$%%&&''(())**++,,--..//$ + +  !!""##  + +  + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̖̖̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕ + +   + + K + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJE + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD, + +  !!""##$$%%&&''(())**++! + +   + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + +  + +  + + Z + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY% + +  !!""##$$  + +  + + : + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899 + +  + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC + + @ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??% + +  !!""##$$ + + R + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO0  + +      !!""##$$%%&&''(())**++,,--..//8  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677*  + +      !!""##$$%%&&''(())3  + +      !!""##$$%%&&''(())**++,,--..//0011226  + +      !!""##$$%%&&''(())**++,,--..//001122334455$  + +      !!""##   + +      + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅  + +                + +                      K + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<= +=> +>? +?@ +@A +AB +BC +CD +DE +EF +FG +GH +HI +IJ +J.           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -!           + +                                   + +                 F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +      + +      + +    R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO0  + +      !!""##$$%%&&''(())**++,,--..//8  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677*  + +      !!""##$$%%&&''(())2  + +      !!""##$$%%&&''(())**++,,--..//0011$  + +      !!""##   + +    v  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuu  + +       + +    K  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJ.  + +      !!""##$$%%&&''(())**++,,--!  + +                 + +                 F!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9:!:;!;<!<=!=>!>?!?@!@A!AB!BC!CD!DE!E""""""""" " +" + " " " """""""""""######### # +# + # # # #####$$$$$$$$$ $ +$ + $ $ $ $$q%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%56%67%78%89%9:%:;%;<%<=%=>%>?%?@%@A%AB%BC%CD%DE%EF%FG%GH%HI%IJ%JK%KL%LM%MN%NO%OP%PQ%QR%RS%ST%TU%UV%VW%WX%XY%YZ%Z[%[\%\]%]^%^_%_`%`a%ab%bc%cd%de%ef%fg%gh%hi%ij%jk%kl%lm%mn%no%op%p%&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$ ''''''''' ' +' + ' ' ' ''''''''''''''''''((((((((( ( +( + ( ( ( (:))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9********* * +* + * * +++++++++ + ++ + + + + ++++++++++,,,,,,,,, , +, + , , , ,--------- - +- + - - - --------F......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A.AB.BC.CD.DE.ED///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$%/%&/&'/'(/()/)*/*+/+,/,-/-././//0/01/12/23/34/45/56/67/78/89/9:/:;/;</<=/=>/>?/?@/@A/AB/BC/C*000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)E111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212313414515616717818919:1:;1;<1<=1=>1>?1?@1@A1AB1BC1CD1D"222222222 2 +2 + 2 2 2 222222222222222222 2 !2!$333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#%444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$555555555 5 +5 + 5 5 5 55555555555555555666666666 6 +6 + 6 6 6 6:777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979888888888 8 +8 + 8 8 F999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9./9/090191292393494595696797898999:9:;9;<9<=9=>9>?9?@9@A9AB9BC9CD9DE9ED::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:./:/0:01:12:23:34:45:56:67:78:89:9:::;:;<:<=:=>:>?:?@:@A:AB:BC:C;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;E<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !<>?>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"?????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?23?34?45?56?67?78?89?9:?:;?;<?<=?=>?>%@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAABBBBBBBBB B +B + B B B B:CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)*C*+C+,C,-C-.C./C/0C01C12C23C34C45C56C67C78C89C9DDDDDDDDD D +D + D D FEEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E78E89E9:E:;E;<E<=E=>E>?E?@E@AEABEBCECDEDEEEDFFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9:F:;F;<F<=F=>F>?F?@F@AFABFBCFC$GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#DHHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,-H-.H./H/0H01H12H23H34H45H56H67H78H89H9:H:;H;<H<=H=>H>?H?@H@AHABHBCHC IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII/JJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*+J+,J,-J-.J.%KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLMMMMMMMMM M +M + M M M M:NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9OOOOOOOOO O +O + O O PPPPPPPPP P +P + P P P PPPPPPPFQQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q01Q12Q23Q34Q45Q56Q67Q78Q89Q9:Q:;Q;<Q<=Q=>Q>?Q?@Q@AQABQBCQCDQDEQEDRRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9:R:;R;<R<=R=>R>?R?@R@ARABRBCRCSSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSFTTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=>T>?T?@T@ATABTBCTCDTDETE%UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVWWWWWWWWW W +W + W W W W:XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9YYYYYYYYY Y +Y + Y Y FZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z56Z67Z78Z89Z9:Z:;Z;<Z<=Z=>Z>?Z?@Z@AZABZBCZCDZDEZED[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:;[;<[<=[=>[>?[?@[@A[AB[BC[C\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\%]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$<^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^12^23^34^45^56^67^78^89^9:^:;^;R_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+,_,-_-._./_/0_01_12_23_34_45_56_67_78_89_9:_:;_;<_<=_=>_>?_?@_@A_AB_BC_CD_DE_EF_FG_GH_HI_IJ_JK_KL_LM_MN_NO_OP_PQ_QP````````` ` +` + ` ` ` `````````````````` ` !`!"`"#`#$`$%`%&`&'`'(`()`)*`*+`+,`,-`-.`./`/0`01`12`23`34`45`56`67`78`89`9:`:;`;<`<=`=>`>?`?@`@A`AB`BC`CD`DE`EF`FG`GH`HI`IJ`JK`KL`LM`MN`NO`Osaaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a56a67a78a89a9:a:;a;<a<=a=>a>?a?@a@AaABaBCaCDaDEaEFaFGaGHaHIaIJaJKaKLaLMaMNaNOaOPaPQaQRaRSaSTaTUaUVaVWaWXaXYaYZaZ[a[\a\]a]^a^_a_`a`aaababcacdadeaefafgaghahiaijajkaklalmamnanoaopapqaqrarPbbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&'b'(b()b)*b*+b+,b,-b-.b./b/0b01b12b23b34b45b56b67b78b89b9:b:;b;<b<=b=>b>?b?@b@AbABbBCbCDbDEbEFbFGbGHbHIbIJbJKbKLbLMbMNbNObO1ccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c0)ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d(eeeeeeeee e +e + e e e eeeeeeeeeeeeeFfffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f34f45f56f67f78f89f9:f:;f;<f<=f=>f>?f?@f@AfABfBCfCDfDEfEggggggggg g +g + g g g ggggggggggg!hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h Riiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$%i%&i&'i'(i()i)*i*+i+,i,-i-.i./i/0i01i12i23i34i45i56i67i78i89i9:i:;i;<i<=i=>i>?i?@i@AiABiBCiCDiDEiEFiFGiGHiHIiIJiJKiKLiLMiMNiNOiOPiPQiQPjjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23j34j45j56j67j78j89j9:j:;j;<j<=j=>j>?j?@j@AjABjBCjCDjDEjEFjFGjGHjHIjIJjJKjKLjLMjMNjNOjOjkkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k23k34k45k56k67k78k89k9:k:;k;<k<=k=>k>?k?@k@AkABkBCkCDkDEkEFkFGkGHkHIkIJkJKkKLkLMkMNkNOkOPkPQkQRkRSkSTkTUkUVkVWkWXkXYkYZkZ[k[\k\]k]^k^_k_`k`akabkbckcdkdekefkfgkghkhikiPlllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,-l-.l./l/0l01l12l23l34l45l56l67l78l89l9:l:;l;<l<=l=>l>?l?@l@AlABlBClCDlDElEFlFGlGHlHIlIJlJKlKLlLMlMNlNOlO1mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m0)nnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n(ooooooooo o +o + o o o oooooooooooooFppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpCDpDEpEqqqqqqqqq q +q + q q q qqqqqqqqqqq!rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r Rsssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsABsBCsCDsDEsEFsFGsGHsHIsIJsJKsKLsLMsMNsNOsOPsPQsQPttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/0t01t12t23t34t45t56t67t78t89t9:t:;t;<t<=t=>t>?t?@t@AtABtBCtCDtDEtEFtFGtGHtHItIJtJKtKLtLMtMNtNOtOluuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>?u?@u@AuABuBCuCDuDEuEFuFGuGHuHIuIJuJKuKLuLMuMNuNOuOPuPQuQRuRSuSTuTUuUVuVWuWXuXYuYZuZ[u[\u\]u]^u^_u_`u`auabubcucdudeuefufgughuhiuijujkukPvvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v45v56v67v78v89v9:v:;v;<v<=v=>v>?v?@v@AvABvBCvCDvDEvEFvFGvGHvHIvIJvJKvKLvLMvMNvNOvO1wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w./w/0w0)xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x(yyyyyyyyy y +y + y y y yyyyyyyyyyyyyFzzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z01z12z23z34z45z56z67z78z89z9:z:;z;<z<=z=>z>?z?@z@AzABzBCzCDzDEzE{{{{{{{{{ { +{ + { { { {{{{{{{{{{{!||||||||| | +| + | | | |||||||||||||||||| | R}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/0}01}12}23}34}45}56}67}78}89}9:}:;};<}<=}=>}>?}?@}@A}AB}BC}CD}DE}EF}FG}GH}HI}IJ}JK}KL}LM}MN}NO}OP}PQ}QP~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~56~67~78~89~9:~:;~;<~<=~=>~>?~?@~@A~AB~BC~CD~DE~EF~FG~GH~HI~IJ~JK~KL~LM~MN~NO~O8  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +      R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO4  + +      !!""##$$%%&&''(())**++,,--..//00112233P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +      R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO6  + +      !!""##$$%%&&''(())**++,,--..//001122334455P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +        + +      + +      + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    E  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD#  + +      !!""#  + +      !!""?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC$  + +      !!""##D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC   + +    /  + +      !!""##$$%%&&''(())**++,,--..%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    ,  + +      !!""##$$%%&&''(())**++<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO*  + +      !!""##$$%%&&''(())j  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiiP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00.  + +      !!""##$$%%&&''(())**++,,--)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    &  + +      !!""##$$%%!  + +      R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOl  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +      R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO8  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +      R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO4  + +      !!""##$$%%&&''(())**++,,--..//00112233P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +      R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO6  + +      !!""##$$%%&&''(())**++,,--..//001122334455P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +        + +      + +      + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +               + +     % + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$           + +                            + +     :           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9  + +     + +      + +      + +      + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    *  + +      !!""##$$%%&&''(())F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    "  + +      !!  + +    $  + +      !!""##  + +       + +      + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;           + +             %!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$######### # +# + # # # #############$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$%%%%%%%%% % +% + % % % %:&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9''''''''' ' +' + ' ' F((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+,(,-(-.(./(/0(01(12(23(34(45(56(67(78(89(9:(:;(;<(<=(=>(>?(?@(@A(AB(BC(CD(DE(ED))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)C********* * +* + * * * ****************F+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-+-.+./+/0+01+12+23+34+45+56+67+78+89+9:+:;+;<+<=+=>+>?+?@+@A+AB+BC+CD+DE+E#,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#--------- - +- + - - - ------------------ - !-!"-"?......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>%///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$000000000 0 +0 + 0 0 0 00000000000000000111111111 1 +1 + 1 1 1 1:222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929333333333 3 +3 + 3 3 F444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848949:4:;4;<4<=4=>4>?4?@4@A4AB4BC4CD4DE4ED555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050151252353454555656757858959:5:;5;<5<=5=>5>?5?@5@A5AB5BC5C$666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#E777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@A7AB7BC7CD7D 888888888 8 +8 + 8 8 8 888888888888888888/999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9.%::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;<<<<<<<<< < +< + < < < <:========= = += + = = = ================== = !=!"="#=#$=$%=%&=&'='(=()=)*=*+=+,=,-=-.=./=/0=01=12=23=34=45=56=67=78=89=9>>>>>>>>> > +> + > > ????????? ? +? + ? ? ? ???????F@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AB@BC@CD@DE@EDAAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+,A,-A-.A./A/0A01A12A23A34A45A56A67A78A89A9:A:;A;<A<=A=>A>?A?@A@AAABABCACBBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBGCCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)*C*+C+,C,-C-.C./C/0C01C12C23C34C45C56C67C78C89C9:C:;C;<C<=C=>C>?C?@C@ACABCBCCCDCDECEFCF%DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEFFFFFFFFF F +F + F F F F:GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/0G01G12G23G34G45G56G67G78G89G9HHHHHHHHH H +H + H H FIIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9:I:;I;<I<=I=>I>?I?@I@AIABIBCICDIDEIEDJJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*+J+,J,-J-.J./J/0J01J12J23J34J45J56J67J78J89J9:J:;J;<J<=J=>J>?J?@J@AJABJBCJCKKKKKKKKK K +K + K K K KKKKKKKKKKKKDLLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&'L'(L()L)*L*+L+,L,-L-.L./L/0L01L12L23L34L45L56L67L78L89L9:L:;L;<L<=L=>L>?L?@L@ALABLBCLC<MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)*M*+M+,M,-M-.M./M/0M01M12M23M34M45M56M67M78M89M9:M:;M;NNNNNNNNN N +N + N N N NNNNNNNNNVOOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O01O12O23O34O45O56O67O78O89O9:O:;O;<O<=O=>O>?O?@O@AOABOBCOCDODEOEFOFGOGHOHIOIJOJKOKLOLMOMNONOOOPOPQOQRORSOSTOTUOUTPPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$%P%&P&'P'(P()P)*P*+P+,P,-P-.P./P/0P01P12P23P34P45P56P67P78P89P9:P:;P;<P<=P=>P>?P?@P@APABPBCPCDPDEPEFPFGPGHPHIPIJPJKPKLPLMPMNPNOPOPPPQPQRPRSPS4QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q01Q12Q23Q3<RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9:R:;R;.SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+,S,-S-QTTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=>T>?T?@T@ATABTBCTCDTDETEFTFGTGHTHITIJTJKTKLTLMTMNTNOTOPTP(UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'$VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWKLWLMWMNWNOWOPWPQWQRWRSWSTWTUWUVWVWWWXWXYWYZWZ[W[\W\]W]^W^_W_`W`aWabWbcWcdWdeWefWfgWghWhiWijWjkWklWlmWmnWnoWopWpqWqrWrsWstWtuWuvWvwWwxWxyWyzWz{W{|W|}W}~W~ẀẀ́Ẃ̂Ŵ̃W̃̄W̄̅W̅̆W̆̇Ẇ̈Ẅ̉W̉̊W̊̋W̋̌W̌̍W̍̎W̎̏W̏̐W̐̑W̑̒W̒̓W̓̔W̔̕W̕XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXX$YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#OZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z56Z67Z78Z89Z9:Z:;Z;<Z<=Z=>Z>?Z?@Z@AZABZBCZCDZDEZEFZFGZGHZHIZIJZJKZKLZLMZMNZNM[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:;[;<[<=[=>[>?[?@[@A[AB[BC[CD[DE[EF[FG[GH[HI[IJ[JK[KL[L%\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]J^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^12^23^34^45^56^67^78^89^9:^:;^;<^<=^=>^>?^?@^@A^AB^BC^CD^DE^EF^FG^GH^HI^I_________ _ +_ + _ _ _ _______________````````` ` +` + ` ` ` `````````aaaaaaaaa a +a + a a a aaaaaaabbbbbbbbb b +b + b b b bccccccccc c +c + c c c cccccc<ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;eeeeeeeee e +e + e e e eeeeeeefffffffff f +f + f f f f%ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$hhhhhhhhh h +h + h h h hhhhhhhhhhhhhiiiiiiiii i +i + i i i i:jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23j34j45j56j67j78j89j9kkkkkkkkk k +k + k k lllllllll l +l + l l l lllllmmmmmmmmm m +m + m m m mmmmmmmmmnnnnnnnnn n +n + n n n nnnnnnnnnFooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*+o+,o,-o-.o./o/0o01o12o23o34o45o56o67o78o89o9:o:;o;<o<=o=>o>?o?@o@AoABoBCoCDoDEoEDppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpCqqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqFrrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r./r/0r01r12r23r34r45r56r67r78r89r9:r:;r;<r<=r=>r>?r?@r@ArABrBCrCDrDErE#sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"?uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>%vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwwxxxxxxxxx x +x + x x x x:yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9zzzzzzzzz z +z + z z F{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{12{23{34{45{56{67{78{89{9:{:;{;<{<={=>{>?{?@{@A{AB{BC{CD{DE{ED||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*+|+,|,-|-.|./|/0|01|12|23|34|45|56|67|78|89|9:|:;|;<|<=|=>|>?|?@|@A|AB|BC|C&}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%E~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~56~67~78~89~9:~:;~;<~<=~=>~>?~?@~@A~AB~BC~CD~D   + +    /  + +      !!""##$$%%&&''(())**++,,--..%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    G  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFF%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    @  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +    V  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUT  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSS4  + +      !!""##$$%%&&''(())**++,,--..//00112233<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;.  + +      !!""##$$%%&&''(())**++,,--Q  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPP(  + +      !!""##$$%%&&''$  + +      !!""##  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓  + +    $  + +      !!""##O  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNM  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLL%  + +      !!""##$$  + +    J  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHII  + +      + +      + +      + +      + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +      + +      + +      + +      + +    %  + +      !!""##$$"  + +      !!Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +T  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSST  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSS1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''(('  + +      !!""##$$%%&&'  + +      !!""##$$%%&&  + +    '  + +      !!""##$$%%&&'  + +      !!""##$$%%&&3  + +      !!""##$$%%&&''(())**++,,--..//0011228  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677  + +    )  + +      !!""##$$%%&&''(()  + +      !!""##$$%%&&''((6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +    #  + +      !!""  + +    #  + +      !!""  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC!  + +      "  + +      !!'  + +      !!""##$$%%&&J  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIH  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    %  + +      !!""##$$  + +      + +      + +      + +    #  + +      !!""Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +T  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSST  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSST  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSS  + +    1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''(('  + +      !!""##$$%%&&'  + +      !!""##$$%%&&'           + +                        ! !" "# #$ $% %& &' + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&            + +                                 + +         + +    '  + +      !!""##$$%%&&'  + +      !!""##$$%%&&'  + +      !!""##$$%%&&3  + +      !!""##$$%%&&''(())**++,,--..//0011228  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677  + +    )  + +      !!""##$$%%&&''(()  + +      !!""##$$%%&&''(()  + +      !!""##$$%%&&''((6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +    #           + +                        ! !" "!!!!!!!""""""""" " +" + " " " """"########## # +# + # # # ################## # !#!"#"$$$$$$$%%%%%%%%% % +% + % % % %%%%#&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"'''''''((((((((( ( +( +W))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CD)DE)EF)FG)GH)HI)IJ)JK)KL)LM)MN)NO)OP)PQ)QR)RS)ST)TU)UV)V********* * +* + * * * * +++++++++ + ++ + + + + ++++++++++++++++++T,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;<,<=,=>,>?,?@,@A,AB,BC,CD,DE,EF,FG,GH,HI,IJ,JK,KL,LM,MN,NO,OP,PQ,QR,RS,S--------- - +- + - - - -......... . +. + . . . ........T///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$%/%&/&'/'(/()/)*/*+/+,/,-/-././//0/01/12/23/34/45/56/67/78/89/9:/:;/;</<=/=>/>?/?@/@A/AB/BC/CD/DE/EF/FG/GH/HI/IJ/JK/KL/LM/MN/NO/OP/PQ/QR/RS/S000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-0-.0./0/000101202303404505606707808909:0:;0;<0<=0=>0>?0?@0@A0AB0BC0CD0DE0EF0FG0GH0HI0IJ0JK0KL0LM0MN0NO0OP0PQ0QR0RS0ST0TU0UV0VW0WX0XY0YZ0Z[0[\0\]0]^0^_0_`0`a0ab0bc0cd0de0ef0fg0gh0hi0ij0jk0kl0lm0mn0no0op0pq0qr0rs0st0tu0uv0vw0wx0xy0yz0z{0{|0|}0}~0~0̀0̀́0́̂0̂̃0̃̄0̄̅0̅̆0̆̇0̇̈0̈̉0̉̊0̊̋0̋̌0̌̍0̍̎0̎̏0̏̐0̐̑0̑̒0̒̓0̓̔0̔̕0̖̕0̖̗0̗̘0̘̙0̙̚0̛̚0̛̜0̜̝0̝̞0̞̟0̟̠0̡̠0̡̢0̢̣0̣̤0̤̥0̥̦0̧̦0̧̨0̨̩0̩̪0̪̫0̫̬0̬̭0̭̮0̮̯0̯111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212313414515616717818919:1:;1;<1<=1=>1>?1?@1@A1AB1BC1CD1DE1EF1FG1GH1HI1IJ1JK1KL1LM1MN1NO1OP1PQ1QR1RS1ST1TU1UV1VW1WX1XY1YZ1Z[1[\1\]1]^1^_1_`1`a1ab1bc1cd1de1ef1fg1gh1hi1ij1jk1kl1lm1mn1no1op1pq1qr1rs1st1tu1uv1vw1wx1xy1yz1z{1{|1|}1}~1~1̀1̀́1́̂1̂̃1̃̄1̄̅1̅̆1̆̇1̇̈1̈̉1̉̊1̊̋1̋̌1̌̍1̍̎1̎̏1̏̐1̐̑1̑̒1̒̓1̓̔1̔̕1̖̕1̖̗1̗̘1̘̙1̙̚1̛̚1̛̜1̜̝1̝̞1̞̟1̟̠1̡̠1̡̢1̢̣1̣̤1̤̥1̥̦1̧̦1̧̨1̨̩1̩̪1̪̫1̫̬1̬̭1̭̮1̮̯1̯222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<=2=>2>?2?@2@A2AB2BC2CD2DE2EF2FG2GH2HI2IJ2JK2KL2LM2MN2NO2OP2PQ2QR2RS2ST2TU2UV2VW2WX2XY2YZ2Z[2[\2\]2]^2^_2_`2`a2ab2bc2cd2de2ef2fg2gh2hi2ij2jk2kl2lm2mn2no2op2pq2qr2rs2st2tu2uv2vw2wx2xy2yz2z{2{|2|}2}~2~24333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/0301312323334444444555555555 5 +5 + 5 5 5 55555555T666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/060161262363464565666767868969:6:;6;<6<=6=>6>?6?@6@A6AB6BC6CD6DE6EF6FG6GH6HI6IJ6JK6KL6LM6MN6NO6OP6PQ6QR6RS6S777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@A7AB7BC7CD7DE7EF7FG7GH7HI7IJ7JK7KL7LM7MN7NO7OP7PQ7QR7RS7ST7TU7UV7VW7WX7XY7YZ7Z[7[\7\]7]^7^_7_`7`a7ab7bc7cd7de7ef7fg7gh7hi7ij7jk7kl7lm7mn7no7op7pq7qr7rs7st7tu7uv7vw7wx7xy7yz7z{7{|7|}7}~7~7̀7̀́7́̂7̂̃7̃̄7̄̅7̅̆7̆̇7̇̈7̈̉7̉̊7̊̋7̋̌7̌̍7̍̎7̎̏7̏̐7̐̑7̑̒7̒̓7̓̔7̔̕7̖̕7̖̗7̗̘7̘̙7̙̚7̛̚7̛̜7̜̝7̝̞7̞̟7̟̠7̡̠7̡̢7̢̣7̣̤7̤̥7̥̦7̧̦7̧̨7̨̩7̩̪7̪̫7̫̬7̬̭7̭̮7̮̯7̯888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/080181282383484585686787888989:8:;8;<8<=8=>8>?8?@8@A8AB8BC8CD8DE8EF8FG8GH8HI8IJ8JK8KL8LM8MN8NO8OP8PQ8QR8RS8ST8TU8UV8VW8WX8XY8YZ8Z[8[\8\]8]^8^_8_`8`a8ab8bc8cd8de8ef8fg8gh8hi8ij8jk8kl8lm8mn8no8op8pq8qr8rs8st8tu8uv8vw8wx8xy8yz8z{8{|8|}8}~8~8̀8̀́8́̂8̂̃8̃̄8̄̅8̅̆8̆̇8̇̈8̈̉8̉̊8̊̋8̋̌8̌̍8̍̎8̎̏8̏̐8̐̑8̑̒8̒̓8̓̔8̔̕8̖̕8̖̗8̗̘8̘̙8̙̚8̛̚8̛̜8̜̝8̝̞8̞̟8̟̠8̡̠8̡̢8̢̣8̣̤8̤̥8̥̦8̧̦8̧̨8̨̩8̩̪8̪̫8̫̬8̬̭8̭̮8̮̯8̯999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9./9/090191292393494595696797898999:9:;9;<9<=9=>9>?9?@9@A9AB9BC9CD9DE9EF9FG9GH9HI9IJ9JK9KL9LM9MN9NO9OP9PQ9QR9RS9ST9TU9UV9VW9WX9XY9YZ9Z[9[\9\]9]^9^_9_`9`a9ab9bc9cd9de9ef9fg9gh9hi9ij9jk9kl9lm9mn9no9op9pq9qr9rs9st9tu9uv9vw9wx9xy9yz9z{9{|9|}9}~9~94::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:./:/0:01:12:23:3;;;;;;;<<<<<<<<< < +< + < < < <<<<<<<<<F========= = += + = = = ================== = !=!"="#=#$=$%=%&=&'='(=()=)*=*+=+,=,-=-.=./=/0=01=12=23=34=45=56=67=78=89=9:=:;=;<=<===>=>?=?@=@A=AB=BC=CD=DE=ED>>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/0>01>12>23>34>45>56>67>78>89>9:>:;>;<><=>=>>>?>?@>@A>AB>BC>C????????? ? +? + ? ? ? ???????????????E@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AB@BC@CD@D"AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!#BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"%CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDEEEEEEEEE E +E + E E E E:FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9GGGGGGGGG G +G + G G FHHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,-H-.H./H/0H01H12H23H34H45H56H67H78H89H9:H:;H;<H<=H=>H>?H?@H@AHABHBCHCDHDEHEDIIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9:I:;I;<I<=I=>I>?I?@I@AIABIBCIC5JJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*+J+,J,-J-.J./J/0J01J12J23J34J4DKKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K45K56K67K78K89K9:K:;K;<K<=K=>K>?K?@K@AKABKBCKC LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL*MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)/NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N.1OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O0%PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQRRRRRRRRR R +R + R R R R:SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+,S,-S-.S./S/0S01S12S23S34S45S56S67S78S89S9TTTTTTTTT T +T + T T UUUUUUUUU U +U + U U U UUUUUUUFVVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>?V?@V@AVABVBCVCDVDEVEDWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWC5XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X4DYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y89Y9:Y:;Y;<Y<=Y=>Y>?Y?@Y@AYABYBCYC ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ*[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)/\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$%\%&\&'\'(\()\)*\*+\+,\,-\-.\.1]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]0%^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$_________ _ +_ + _ _ _ _______________````````` ` +` + ` ` ` `:aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a56a67a78a89a9bbbbbbbbb b +b + b b ccccccccc c +c + c c c cccccccddddddddd d +d + d d d ddddddddeeeeeeefffffffff f +f + f f f ffff%ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$hhhhhhhiii"jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!Zkkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k23k34k45k56k67k78k89k9:k:;k;<k<=k=>k>?k?@k@AkABkBCkCDkDEkEFkFGkGHkHIkIJkJKkKLkLMkMNkNOkOPkPQkQRkRSkSTkTUkUVkVWkWXkXYkY0lllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,-l-.l./l/3mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23nnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n2ooooooooo o +o +Nppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpCDpDEpEFpFGpGHpHIpIJpJKpKLpLMpMQqqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q()q)*q*+q+,q,-q-.q./q/0q01q12q23q34q45q56q67q78q89q9:q:;q;<q<=q=>q>?q?@q@AqABqBCqCDqDEqEFqFGqGHqHIqIJqJKqKLqLMqMNqNOqOPqPKrrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r./r/0r01r12r23r34r45r56r67r78r89r9:r:;r;<r<=r=>r>?r?@r@ArABrBCrCDrDErEFrFGrGHrHIrIJrJZsssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsABsBCsCDsDEsEFsFGsGHsHIsIJsJKsKLsLMsMNsNOsOPsPQsQRsRSsSTsTUsUVsVWsWXsXYsYKttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/0t01t12t23t34t45t56t67t78t89t9:t:;t;<t<=t=>t>?t?@t@AtABtBCtCDtDEtEFtFGtGHtHItIJtJQuuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>?u?@u@AuABuBCuCDuDEuEFuFGuGHuHIuIJuJKuKLuLMuMNuNOuOPuPQvvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v45v56v67v78v89v9:v:;v;<v<=v=>v>?v?@v@AvABvBCvCDvDEvEFvFGvGHvHIvIJvJKvKLvLMvMNvNOvOPvPNwwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w./w/0w01w12w23w34w45w56w67w78w89w9:w:;w;<w<=w=>w>?w?@w@AwABwBCwCDwDEwEFwFGwGHwHIwIJwJKwKLwLMwM%xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$1yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y0zzzzzzz){{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(+||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*/}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}.0~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/  + +  + +    +  + +      !!""##$$%%&&''(())**3  + +      !!""##$$%%&&''(())**++,,--..//001122=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;:  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<===  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<  + +    .  + +      !!""##$$%%&&''(())**++,,--/  + +      !!""##$$%%&&''(())**++,,--..-  + +      !!""##$$%%&&''(())**++,,+  + +      !!""##$$%%&&''(())**-  + +      !!""##$$%%&&''(())**++,,/  + +      !!""##$$%%&&''(())**++,,--../  + +      !!""##$$%%&&''(())**++,,--...  + +      !!""##$$%%&&''(())**++,,--6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +    (  + +      !!""##$$%%&&''  + +    )  + +      !!""##$$%%&&''((  + +    )  + +      !!""##$$%%&&''((   + +    *  + +      !!""##$$%%&&''(())  + +    '  + +      !!""##$$%%&&  + +    (  + +      !!""##$$%%&&''  + +    %  + +      !!""##$$  + +    '  + +      !!""##$$%%&&  + +    (  + +      !!""##$$%%&&''  + +    )  + +      !!""##$$%%&&''((   + +    *  + +      !!""##$$%%&&''(())  + +    )  + +      !!""##$$%%&&''((   + +    *  + +      !!""##$$%%&&''(())  + +    (  + +      !!""##$$%%&&''  + +    )  + +      !!""##$$%%&&''(($  + +      !!""##F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    @  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??%  + +      !!""##$$N  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMML  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKK"  + +      !!*  + +      !!""##$$%%&&''(())D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCZ  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYX  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWW^  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]]  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\5  + +      !!""##$$%%&&''(())**++,,--..//00112233446  + +      !!""##$$%%&&''(())**++,,--..//001122334455E  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;]  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\H  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG'  + +      !!""##$$%%&&,  + +      !!""##$$%%&&''(())**++  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̡̡̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕̚̚  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̖̖̗̗̘̘̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕I  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHH@  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??C  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBA  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@+  + +      !!""##$$%%&&''(())**0  + +      !!""##$$%%&&''(())**++,,--..//A  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEH  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGA  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;1  + +      !!""##$$%%&&''(())**++,,--..//00+  + +      !!""##$$%%&&''(())**'  + +      !!""##$$%%&&D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCZ  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY'  + +      !!""##$$%%&&<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<G  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFF%  + +      !!""##$$9  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677885  + +      !!""##$$%%&&''(())**++,,--..//0011223344#  + +      !!""N  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM!  + +      -  + +      !!""##$$%%&&''(())**++,,  + +      + +               + +                  D + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<= +=> +>? +?@ +@A +AB +BC +CZ           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YX           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW Wf           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YZ Z[ [\ \] ]^ ^_ _` `a ab bc cd de e]  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\6  + +      !!""##$$%%&&''(())**++,,--..//0011223344556  + +      !!""##$$%%&&''(())**++,,--..//001122334455^  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]I  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHH;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;9  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677884  + +      !!""##$$%%&&''(())**++,,--..//00112233)  + +      !!""##$$%%&&''((%  + +      !!""##$$9  + +      !!""##$$%%&&''(())**++,,--..//0011223344556677885  + +      !!""##$$%%&&''(())**++,,--..//0011223344#  + +      !!""N  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM!  + +      -  + +      !!""##$$%%&&''(())**++,,           + +                   !!!!!!!!! ! +! + ! ! ! !!!!!!!!!-""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",########## # +# + # # # ################## # !#!"#"$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$B%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%56%67%78%89%9:%:;%;<%<=%=>%>?%?@%@A%A&&&&&&&&& & +& + & & & &&&&&&&''''''''' ' +' + ' ' ' '''''''''''''((((((((( ( +( + ( ( ( ((x))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CD)DE)EF)FG)GH)HI)IJ)JK)KL)LM)MN)NO)OP)PQ)QR)RS)ST)TU)UV)VW)WX)XY)YZ)Z[)[\)\])]^)^_)_`)`a)ab)bc)cd)de)ef)fg)gh)hi)ij)jk)kl)lm)mn)no)op)pq)qr)rs)st)tu)uv)vw)w%********* * +* + * * * ****************** * !*!"*"#*#$*$ +++++++++ + ++ + + + + ++++++++++++++++++,,,,,,,,, , +, + , , , ,:--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'(-()-)*-*+-+,-,---.-./-/0-01-12-23-34-45-56-67-78-89-9......... . +. + . . ///////// / +/ + / / / //////////000000000 0 +0 + 0 0 0 00000001111111222222222 2 +2 + 2 2 2 222222222F333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3=>3>?3?@3@A3AB3BC3CD3DE3ED444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848949:4:;4;<4<=4=>4>?4?@4@A4AB4BC4C555555555 5 +5 + 5 5 5 5555555555555555F666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/060161262363464565666767868969:6:;6;<6<=6=>6>?6?@6@A6AB6BC6CD6DE6EL777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@A7AB7BC7CD7DE7EF7FG7GH7HI7IJ7JK7K7888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/0801812823834845856864999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9./9/090191292393/::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:.%;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<========= = += + = = = =:>>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/0>01>12>23>34>45>56>67>78>89>9????????? ? +? + ? ? F@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AB@BC@CD@DE@EDAAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+,A,-A-.A./A/0A01A12A23A34A45A56A67A78A89A9:A:;A;<A<=A=>A>?A?@A@AAABABCAC,BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+ECCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)*C*+C+,C,-C-.C./C/0C01C12C23C34C45C56C67C78C89C9:C:;C;<C<=C=>C>?C?@C@ACABCBCCCDCDDDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDEEEEEEEEE E +E + E E E EEEEEEEEEEEEEE~FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9:F:;F;<F<=F=>F>?F?@F@AFABFBCFCDFDEFEFFFGFGHFHIFIJFJKFKLFLMFMNFNOFOPFPQFQRFRSFSTFTUFUVFVWFWXFXYFYZFZ[F[\F\]F]^F^_F_`F`aFabFbcFcdFdeFefFfgFghFhiFijFjkFklFlmFmnFnoFopFpqFqrFrsFstFtuFuvFvwFwxFxyFyzFz{F{|F|}F}GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGHHHHHHHHH H +H + H H H HHH#IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"%JJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$5KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K4'LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&)MMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M(WNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9:N:;N;<N<=N=>N>?N?@N@ANABNBCNCDNDENEFNFGNGHNHINIJNJKNKLNLMNMNNNONOPNPQNQRNRSNSTNTUNUVNVDOOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O01O12O23O34O45O56O67O78O89O9:O:;O;<O<=O=>O>?O?@O@AOABOBCOC>PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$%P%&P&'P'(P()P)*P*+P+,P,-P-.P./P/0P01P12P23P34P45P56P67P78P89P9:P:;P;<P<=P=QQQQQQQQQ Q +Q + Q Q Q QQQQQ=RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9:R:;R;<R<<SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+,S,-S-.S./S/0S01S12S23S34S45S56S67S78S89S9:S:;S;>TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=UUUUUUUUU U +U + U U U UUUUUYVVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>?V?@V@AVABVBCVCDVDEVEFVFGVGHVHIVIJVJKVKLVLMVMNVNOVOPVPQVQRVRSVSTVTUVUVVVWVWXVXWWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWKLWLMWMNWNOWOPWPQWQRWRSWSTWTUWUVWVAXXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>?X?@X@@YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y89Y9:Y:;Y;<Y<=Y=>Y>?Y?ZZZZZZZZZ Z +Z + Z Z Z ZZZZZ[[[[[[[[[ [ +[ + [ [ [ [[[%\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]^^^^^^^^^ ^ +^ + ^ ^ ^ ^:_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+,_,-_-._./_/0_01_12_23_34_45_56_67_78_89_9````````` ` +` + ` ` aaaaaaaaa a +a + a a a aaaaaaaaabbbbbbbccccccccc c +c + c c c cccc%ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$eeeeeeefff$ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#Zhhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$%h%&h&'h'(h()h)*h*+h+,h,-h-.h./h/0h01h12h23h34h45h56h67h78h89h9:h:;h;<h<=h=>h>?h?@h@AhABhBChCDhDEhEFhFGhGHhHIhIJhJKhKLhLMhMNhNOhOPhPQhQRhRShSThTUhUVhVWhWXhXYhY0iiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$%i%&i&'i'(i()i)*i*+i+,i,-i-.i./i/3jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23kkkkkkkkk k +k + k k k kkkkkkkkkkkkkkkkkk k !k!"k"#k#$k$%k%&k&'k'(k()k)*k*+k+,k,-k-.k./k/0k01k12k2lllllllll l +l +Zmmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23m34m45m56m67m78m89m9:m:;m;<m<=m=>m>?m?@m@AmABmBCmCDmDEmEFmFGmGHmHImIJmJKmKLmLMmMNmNOmOPmPQmQRmRSmSTmTUmUVmVWmWXmXYmYTnnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n23n34n45n56n67n78n89n9:n:;n;<n<=n=>n>?n?@n@AnABnBCnCDnDEnEFnFGnGHnHInIJnJKnKLnLMnMNnNOnOPnPQnQRnRSnS1ooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*+o+,o,-o-.o./o/0o0ppppppp)qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q(+rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*sssssssttttttttt t +t + t t t ttttttttttttttttt+uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*vvvvvvv3wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w./w/0w01w12w2:xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x/0x01x12x23x34x45x56x67x78x89x9?yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9:y:;y;<y<=y=>y>zzzzzzz{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{+||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*0}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/6~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~5*  + +      !!""##$$%%&&''(())  + +    %  + +      !!""##$$  + +    *  + +      !!""##$$%%&&''(())!  + +      +  + +      !!""##$$%%&&''(())**  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    %  + +      !!""##$$<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;R  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;P  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO,  + +      !!""##$$%%&&''(())**++`  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE  + +    !  + +        + +      + +      + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +      + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +    %  + +      !!""##$$)  + +      !!""##$$%%&&''((rHdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherItypestartenddeclarationspecifierssourceExportNamedDeclarationzrJtypestartendidsuperClassbodyClassDeclarationzrKtypestartendnameIdentifierMiddleContentKIdentifierViewPUrLtypestartendbodyClassBodyz#rMtypestartendstaticcomputedkeykindvalueMethodDefinitionKIdentifierconstructorconstructorrNtypestartendidexpressiongeneratorasyncparamsbodyFunctionExpression•KIdentifier parentKIdentifier paramsKIdentifier!__localStoragerOtypestartendleftrightAssignmentPattern#.KIdentifier#)elmtIdrPtypestartendoperatorprefixargumentUnaryExpression,.-rQtypestartendvaluerawLiteral-.1OAssignmentPattern0HKIdentifier0XMemberExpression>TTThisExpression>BKIdentifierCTcreateStorageProp“QLiteralUiisNewPacketArrived"isNewPacketArrived"QLiteralkl0QLiteralnisNewPacketArrived"isNewPacketArrived"RExpressionStatementSCallExpressionXMemberExpressionTThisExpressionKIdentifiersetInitiallyProvidedValue‘KIdentifierparamsMMethodDefinitionKIdentifier۹setInitiallyProvidedValuemethodNFunctionExpression‘KIdentifierparamsLBlockStatementMMethodDefinitionKIdentifierupdateStateVarsmethodNFunctionExpression‘KIdentifierparamsLBlockStatement +MMethodDefinition +KIdentifier9!purgeVariableDependenciesOnElmtIdmethodNFunctionExpression9 +‘KIdentifier:BrmElmtIdLBlockStatementD +RExpressionStatementOSCallExpressionOXMemberExpressionOwXMemberExpressionO_TThisExpressionOSKIdentifierT___allSimObjKIdentifier`wpurgeDependencyOnElmtId‘KIdentifierxrmElmtIdRExpressionStatementSCallExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifier__allSimConnKIdentifierpurgeDependencyOnElmtId‘KIdentifierrmElmtIdRExpressionStatementSCallExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifier٪__TempConnKIdentifierpurgeDependencyOnElmtId‘KIdentifierrmElmtIdRExpressionStatement8SCallExpression7XMemberExpression-XMemberExpressionTThisExpression +KIdentifier __isNewObjKIdentifier-purgeDependencyOnElmtId‘KIdentifier.6rmElmtIdRExpressionStatementBvSCallExpressionBuXMemberExpressionBkXMemberExpressionBSTThisExpressionBFKIdentifierGS__newObjTypeKIdentifierTkpurgeDependencyOnElmtId‘KIdentifierltrmElmtIdRExpressionStatementSCallExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifier__choseIndexKIdentifierpurgeDependencyOnElmtId‘KIdentifierrmElmtIdRExpressionStatementSCallExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifierΫ__isNewConnKIdentifierpurgeDependencyOnElmtId‘KIdentifierrmElmtIdRExpressionStatement 0SCallExpression /XMemberExpression %XMemberExpression TThisExpressionKIdentifier __isShowLabelKIdentifier  %purgeDependencyOnElmtId‘KIdentifier & .rmElmtIdRExpressionStatement : nSCallExpression : mXMemberExpression : cXMemberExpression : KTThisExpression : >KIdentifier ? K__isShowPortKIdentifier L cpurgeDependencyOnElmtId‘KIdentifier d lrmElmtIdRExpressionStatement x SCallExpression x XMemberExpression x XMemberExpression x TThisExpression x |KIdentifier } __isShowInterfaceKIdentifier purgeDependencyOnElmtId‘KIdentifier rmElmtIdRExpressionStatement SCallExpression XMemberExpression XMemberExpression TThisExpression KIdentifier ͭ__isShowTableKIdentifier purgeDependencyOnElmtId‘KIdentifier rmElmtIdRExpressionStatement +0SCallExpression +/XMemberExpression +%XMemberExpression + TThisExpression KIdentifier + __allSimPacketKIdentifier + +%purgeDependencyOnElmtId‘KIdentifier +& +.rmElmtIdRExpressionStatement +: +oSCallExpression +: +nXMemberExpression +: +dXMemberExpression +: +LTThisExpression +: +>KIdentifier +? +L__isNewPacketKIdentifier +M +dpurgeDependencyOnElmtId‘KIdentifier +e +mrmElmtIdRExpressionStatement +y +SCallExpression +y +XMemberExpression +y +XMemberExpression +y +TThisExpression +y +}KIdentifier +~ +__isNewPacketArrivedKIdentifier + +purgeDependencyOnElmtId‘KIdentifier + +rmElmtIdMMethodDefinition + KIdentifier + +ҰaboutToBeDeletedmethodNFunctionExpression + LBlockStatement + RExpressionStatement + SCallExpression + XMemberExpression + XMemberExpression + +TThisExpression + +KIdentifier + +__allSimObjKIdentifier + aboutToBeDeletedRExpressionStatement  3SCallExpression  2XMemberExpression  0XMemberExpression  TThisExpression  KIdentifier  __allSimConnKIdentifier 0aboutToBeDeletedRExpressionStatement = `SCallExpression = _XMemberExpression = ]XMemberExpression = LTThisExpression = AKIdentifier B L__TempConnKIdentifier M ]aboutToBeDeletedRExpressionStatement j SCallExpression j XMemberExpression j XMemberExpression j yTThisExpression j nKIdentifier o y__isNewObjKIdentifier z aboutToBeDeletedRExpressionStatement SCallExpression XMemberExpression XMemberExpression TThisExpression KIdentifier __newObjTypeKIdentifier aboutToBeDeletedRExpressionStatement SCallExpression XMemberExpression XMemberExpression TThisExpression KIdentifier ׬__choseIndexKIdentifier aboutToBeDeletedRExpressionStatement SCallExpression XMemberExpression XMemberExpression TThisExpression KIdentifier __isNewConnKIdentifier  aboutToBeDeletedRExpressionStatement # ISCallExpression # HXMemberExpression # FXMemberExpression # 5TThisExpression # 'KIdentifier ( 5__isShowLabelKIdentifier 6 FaboutToBeDeletedRExpressionStatement S xSCallExpression S wXMemberExpression S uXMemberExpression S dTThisExpression S WKIdentifier X d__isShowPortKIdentifier e uaboutToBeDeletedRExpressionStatement SCallExpression XMemberExpression XMemberExpression TThisExpression KIdentifier __isShowInterfaceKIdentifier aboutToBeDeletedRExpressionStatement SCallExpression XMemberExpression XMemberExpression TThisExpression KIdentifier ȭ__isShowTableKIdentifier ٰaboutToBeDeletedRExpressionStatement SCallExpression XMemberExpression +XMemberExpression TThisExpression KIdentifier __allSimPacketKIdentifier +aboutToBeDeletedRExpressionStatement  =SCallExpression  KIdentifier?S__isNewPacketArrivedKIdentifierTWset‘KIdentifierX`newValueMMethodDefinitionoyKIdentifiero|initialRendermethodNFunctionExpression|yLBlockStatementy,RExpressionStatement>SCallExpression=XMemberExpressionTThisExpressionKIdentifierobserveComponentCreation‘NArrowFunctionExpression<’KIdentifierelmtIdKIdentifierisInitialRenderLBlockStatementGallSimObjXMemberExpressionHWTThisExpressionHLKIdentifierMWchoseIndexKIdentifierY]objXVBinaryExpression`lXMemberExpression`gKIdentifier`eeventKIdentifierfgx¡-QLiteraljl25RExpressionStatementWAssignmentExpression=XMemberExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifierallSimObjXMemberExpressionTThisExpressionKIdentifierchoseIndexKIdentifierobjYVBinaryExpressionXMemberExpressionKIdentifiereventKIdentifiery¡-QLiteral15RExpressionStatementWAssignmentExpression=XMemberExpressionXMemberExpressionXMemberExpressionTThisExpressionKIdentifierallSimObjXMemberExpressionTThisExpressionKIdentifierchoseIndexKIdentifierisChoseQLiteral ¥falseRExpressionStatementBXWAssignmentExpressionBW=XMemberExpressionBOTThisExpressionBFKIdentifierGOisNewObjQLiteralRW¥falseRExpressionStatementtWAssignmentExpressiont=XMemberExpressiontTThisExpressiontxKIdentifierynewObjTypePUnaryExpression-QLiteral1RExpressionStatementWAssignmentExpression=XMemberExpressionTThisExpressionKIdentifierchoseIndexQLiteralnullRExpressionStatementWAssignmentExpression=XMemberExpressionTThisExpressionKIdentifierisNewConnQLiteral¥falseRExpressionStatement WAssignmentExpression =XMemberExpression TThisExpression KIdentifierTempConnr_typestartendelementsArrayExpressionUIfStatementKPUnaryExpressionO_!KIdentifierP_isInitialRenderLBlockStatementaRExpressionStatementSCallExpressionXMemberExpressionKIdentifierStackKIdentifierpopRExpressionStatementSCallExpressionXMemberExpressionKIdentifierƲViewStackProcessorKIdentifierݶStopGetAccessRecordingRExpressionStatement)VSCallExpression)UXMemberExpressionTThisExpressionKIdentifierobserveComponentCreation‘NArrowFunctionExpression)T’KIdentifierelmtIdKIdentifier-isInitialRenderLBlockStatement2)TRExpressionStatementAwSCallExpressionAvXMemberExpressionAnKIdentifierASViewStackProcessorKIdentifierTnStartGetAccessRecordingFor‘KIdentifierouelmtIdRExpressionStatementSCallExpressionXMemberExpressionKIdentifierForEachKIdentifiercreate\VariableDeclaration(a]VariableDeclarator(`KIdentifierforEachItemGenFunctionNArrowFunctionExpression(`‘KIdentifierȥ_itemLBlockStatement(`\VariableDeclaration]VariableDeclaratorKIdentifieritemKIdentifier_itemconstLBlockStatement #RExpressionStatement #SCallExpression #XMemberExpression  8TThisExpression  KIdentifier 8observeComponentCreation‘NArrowFunctionExpression 9#’KIdentifier : @elmtIdKIdentifier B QisInitialRenderLBlockStatement V#דRExpressionStatement q SCallExpression q XMemberExpression q KIdentifier q ViewStackProcessorKIdentifier StartGetAccessRecordingFor‘KIdentifier elmtIdUIfStatement #zKIdentifier ԯisInitialRenderLBlockStatement "\VariableDeclaration !]VariableDeclarator !KIdentifier !paramsLambdaNArrowFunctionExpression!!LBlockStatement!!YReturnStatement!1!ZObjectExpression!8!ɒ[Property!_!oKIdentifier!_!cobjSXMemberExpression!e!oKIdentifier!e!iitemKIdentifier!j!onObjS¤init[Property!!KIdentifier!!objEXMemberExpression!!KIdentifier!!itemKIdentifier!!nObjE¤initletRExpressionStatement""tSCallExpression""sXMemberExpression""KIdentifier""ViewPUKIdentifier""create‘^NewExpression""rKIdentifier""#CreateConTThisExpression"$"(ZObjectExpression"*"P[Property",""NKIdentifier">"BobjEXMemberExpression"D"NKIdentifier"D"HitemKIdentifier"I"NnObjE¤initKIdentifier"R"[undefinedKIdentifier"]"celmtIdKIdentifier"e"qparamsLambdaLBlockStatement"#zRExpressionStatement"#_SCallExpression"#^XMemberExpression""TThisExpression""KIdentifier""updateStateVarsOfChildByElmtId’KIdentifier""elmtIdZObjectExpression"#][Property##,KIdentifier## objSXMemberExpression#"#,KIdentifier#"#&itemKIdentifier#'#,nObjS¤init[Property#.#>KIdentifier#.#2objEXMemberExpression#4#>KIdentifier#4#8itemKIdentifier#9#>nObjE¤initRExpressionStatement##SCallExpression##XMemberExpression##KIdentifier##ViewStackProcessorKIdentifier##StopGetAccessRecordingLBlockStatement#(QRExpressionStatement$(>SCallExpression$(=XMemberExpression$$2TThisExpression$$KIdentifier$$2observeComponentCreation‘NArrowFunctionExpression$3(<’KIdentifier$4$:elmtIdKIdentifier$<$KisInitialRenderLBlockStatement$P(2TforEachItemGenFunctionKIdentifier2V2_undefinedQLiteral2a2eätrueQLiteral2g2l¥falseUIfStatement2|2PUnaryExpression22!KIdentifier22isInitialRenderLBlockStatement22‘RExpressionStatement22SCallExpression22XMemberExpression22KIdentifier22ForEachKIdentifier22popRExpressionStatement22SCallExpression22XMemberExpression22KIdentifier22ViewStackProcessorKIdentifier22StopGetAccessRecordingRExpressionStatement33!SCallExpression33 XMemberExpression33KIdentifier33ForEachKIdentifier33popRExpressionStatement3:3FSCallExpression3:3EXMemberExpression3:3CKIdentifier3:3?StackKIdentifier3@3CpopRExpressionStatement3P5SCallExpression3P5XMemberExpression3P3mTThisExpression3P3TKIdentifier3U3mobserveComponentCreation‘NArrowFunctionExpression3n5’KIdentifier3o3uelmtIdKIdentifier3w3isInitialRenderLBlockStatement35RExpressionStatement33SCallExpression33XMemberExpression33KIdentifier33ViewStackProcessorKIdentifier33ǺStartGetAccessRecordingFor‘KIdentifier33ΦelmtIdRExpressionStatement33SCallExpression33XMemberExpression33KIdentifier33ColumnKIdentifier33create‘ZObjectExpression33[Property33KIdentifier33spaceQLiteral333initRExpressionStatement44?SCallExpression44>XMemberExpression44KIdentifier44ColumnKIdentifier44debugLine‘QLiteral44="components/MiddleContent.ets(56:7)$"components/MiddleContent.ets(56:7)"RExpressionStatement4M4aSCallExpression4M4`XMemberExpression4M4YKIdentifier4M4SColumnKIdentifier4T4Ywidth‘QLiteral4Z4_22%'22%'RExpressionStatement4o4SCallExpression4o4XMemberExpression4o4|KIdentifier4o4uColumnKIdentifier4v4|height‘QLiteral4}4100%'100%'UIfStatement44PUnaryExpression44!KIdentifier44isInitialRenderLBlockStatement44ؑRExpressionStatement44SCallExpression44XMemberExpression44KIdentifier44¦ColumnKIdentifier44ƣpopRExpressionStatement45SCallExpression45XMemberExpression45KIdentifier44ViewStackProcessorKIdentifier45StopGetAccessRecordingRExpressionStatement5)7+SCallExpression5)7*XMemberExpression5)5FTThisExpression5)5-KIdentifier5.5FobserveComponentCreation‘NArrowFunctionExpression5G7)’KIdentifier5H5NelmtIdKIdentifier5P5_isInitialRenderLBlockStatement5d7)RExpressionStatement5s5SCallExpression5s5XMemberExpression5s5KIdentifier5s5ViewStackProcessorKIdentifier55StartGetAccessRecordingFor‘KIdentifier55elmtIdRExpressionStatement55SCallExpression55XMemberExpression55KIdentifier55ColumnKIdentifier55ĦcreateRExpressionStatement56 SCallExpression56 XMemberExpression55KIdentifier55ۦColumnKIdentifier55debugLine‘QLiteral56 +"components/MiddleContent.ets(57:9)$"components/MiddleContent.ets(57:9)"RExpressionStatement66/SCallExpression66.XMemberExpression66&KIdentifier66 ColumnKIdentifier6!6&width‘QLiteral6'6-100%'100%'RExpressionStatement6=6RSCallExpression6=6QXMemberExpression6=6JKIdentifier6=6CColumnKIdentifier6D6Jheight‘QLiteral6K6P50%'50%'RExpressionStatement6`6SCallExpression6`6XMemberExpression6`6mKIdentifier6`6fColumnKIdentifier6g6mborder‘ZObjectExpression6n6[Property6p6KIdentifier6p6ucolorXMemberExpression6w6KIdentifier6w6|ColorKIdentifier6}6Orange¤init[Property66KIdentifier66widthQLiteral661initUIfStatement66PUnaryExpression66!KIdentifier66isInitialRenderLBlockStatement66RExpressionStatement66SCallExpression66XMemberExpression66KIdentifier66ΦColumnKIdentifier66ңpopRExpressionStatement67SCallExpression67XMemberExpression67KIdentifier67ViewStackProcessorKIdentifier77StopGetAccessRecordingRExpressionStatement759SCallExpression759XMemberExpression757RTThisExpression7579KIdentifier7:7RobserveComponentCreation‘NArrowFunctionExpression7S9’KIdentifier7T7ZelmtIdKIdentifier7\7kisInitialRenderLBlockStatement7p9RExpressionStatement77SCallExpression77XMemberExpression77KIdentifier77ViewStackProcessorKIdentifier77StartGetAccessRecordingFor‘KIdentifier77elmtIdRExpressionStatement77SCallExpression77XMemberExpression77KIdentifier77ǤTextKIdentifier77Φcreate‘QLiteral77ײ发送主机详情"发送主机详情"RExpressionStatement78SCallExpression78XMemberExpression77KIdentifier77TextKIdentifier77debugLine‘QLiteral78#components/MiddleContent.ets(58:11)%"components/MiddleContent.ets(58:11)"RExpressionStatement8+8=SCallExpression8+8:KSCallExpression:>:JXMemberExpression:>:HKIdentifier:>:DColumnKIdentifier:E:HpopRExpressionStatement:h:SCallExpression:h:XMemberExpression:h:KIdentifier:h:zViewStackProcessorKIdentifier:{:StopGetAccessRecordingRExpressionStatement:J)SCallExpression:J(XMemberExpression::TThisExpression::KIdentifier::ȸobserveComponentCreation‘NArrowFunctionExpression:J'’KIdentifier::ЦelmtIdKIdentifier::isInitialRenderLBlockStatement:J'RExpressionStatement:;+SCallExpression:;*XMemberExpression:;"KIdentifier:;ViewStackProcessorKIdentifier;;"StartGetAccessRecordingFor‘KIdentifier;#;)elmtIdRExpressionStatement;9;ESCallExpression;9;DXMemberExpression;9;BKIdentifier;9;;IfKIdentifier;<;BcreateUIfStatement;SIXMemberExpression;W;gTThisExpression;W;[KIdentifier;\;gisNewPacketLBlockStatement;iIRExpressionStatement;|ISCallExpression;|IXMemberExpression;|;TThisExpression;|;KIdentifier;;ifElseBranchUpdateFunction’QLiteral;;0NArrowFunctionExpression;ILBlockStatement;IRExpressionStatement;=SCallExpression;=XMemberExpression;;TThisExpression;;KIdentifier;;ٸobserveComponentCreation‘NArrowFunctionExpression;=’KIdentifier;;elmtIdKIdentifier;;isInitialRenderLBlockStatement;=ݕRExpressionStatement<SCallExpression==XMemberExpression==KIdentifier==TextKIdentifier==popRExpressionStatement>@0SCallExpression>@/XMemberExpression>>3TThisExpression>>KIdentifier>>3observeComponentCreation‘NArrowFunctionExpression>4@.’KIdentifier>5>;elmtIdKIdentifier>=>LisInitialRenderLBlockStatement>Q@.RExpressionStatement>l>SCallExpression>l>XMemberExpression>l>KIdentifier>l>~ViewStackProcessorKIdentifier>>StartGetAccessRecordingFor‘KIdentifier>>elmtIdRExpressionStatement>? SCallExpression>? XMemberExpression>>KIdentifier>>TextKIdentifier>>Ǧcreate‘VBinaryExpression>? +QLiteral>>ϫIP地址:"IP地址:"+XMemberExpression>? +XMemberExpression>?XMemberExpression>>TThisExpression>>KIdentifier>>allSimPacketVBinaryExpression>?XMemberExpression>>XMemberExpression>>TThisExpression>>KIdentifier>>allSimPacketKIdentifier>>length¡-QLiteral>?1KIdentifier?? +sourceIpRExpressionStatement?&?\SCallExpression?&?[XMemberExpression?&?4KIdentifier?&?*TextKIdentifier?+?4debugLine‘QLiteral?5?Z#components/MiddleContent.ets(65:15)%"components/MiddleContent.ets(65:15)"UIfStatement?v?PUnaryExpression?z?!KIdentifier?{?isInitialRenderLBlockStatement??ёRExpressionStatement??SCallExpression??XMemberExpression??KIdentifier??TextKIdentifier??popRExpressionStatement?@SCallExpression?@XMemberExpression?@KIdentifier??ViewStackProcessorKIdentifier?@StopGetAccessRecordingRExpressionStatement@F@QSCallExpression@F@PXMemberExpression@F@NKIdentifier@F@JTextKIdentifier@K@NpopRExpressionStatement@gBSCallExpression@gBXMemberExpression@g@TThisExpression@g@kKIdentifier@l@observeComponentCreation‘NArrowFunctionExpression@B’KIdentifier@@elmtIdKIdentifier@@isInitialRenderLBlockStatement@BRExpressionStatement@@SCallExpression@@XMemberExpression@@KIdentifier@@ϲViewStackProcessorKIdentifier@@StartGetAccessRecordingFor‘KIdentifier@@elmtIdRExpressionStatementA A_SCallExpressionA A^XMemberExpressionA AKIdentifierA ATextKIdentifierAAcreate‘VBinaryExpressionAA]QLiteralAA!Mac地址;"Mac地址;"+XMemberExpressionA$A]XMemberExpressionA$ASXMemberExpressionA$A5TThisExpressionA$A(KIdentifierA)A5allSimPacketVBinaryExpressionA6ARXMemberExpressionA6ANXMemberExpressionA6AGTThisExpressionA6A:KIdentifierA;AGallSimPacketKIdentifierAHANlength¡-QLiteralAQAR1KIdentifierATA]sourceMacRExpressionStatementAyASCallExpressionAyAXMemberExpressionAyAKIdentifierAyA}TextKIdentifierA~AdebugLine‘QLiteralAA#components/MiddleContent.ets(66:15)%"components/MiddleContent.ets(66:15)"UIfStatementAB$PUnaryExpressionAAݡ!KIdentifierAAݯisInitialRenderLBlockStatementAB$RExpressionStatementAB SCallExpressionABXMemberExpressionABKIdentifierABTextKIdentifierBBpopRExpressionStatementB>BjSCallExpressionB>BiXMemberExpressionB>BgKIdentifierB>BPViewStackProcessorKIdentifierBQBgStopGetAccessRecordingRExpressionStatementBBSCallExpressionBBXMemberExpressionBBKIdentifierBBTextKIdentifierBBpopRExpressionStatementBDSCallExpressionBDXMemberExpressionBBTThisExpressionBBKIdentifierBB׸observeComponentCreation‘NArrowFunctionExpressionBD’KIdentifierBBߦelmtIdKIdentifierBBisInitialRenderLBlockStatementBDRExpressionStatementCCFSCallExpressionCCEXMemberExpressionCC=KIdentifierCC"ViewStackProcessorKIdentifierC#C=StartGetAccessRecordingFor‘KIdentifierC>CDelmtIdRExpressionStatementC`C~SCallExpressionC`C}XMemberExpressionC`CkKIdentifierC`CdTextKIdentifierCeCkcreate‘QLiteralClC|发送数据包大小:1024kB "发送数据包大小:1024kB"RExpressionStatementCCSCallExpressionCCXMemberExpressionCCKIdentifierCCTextKIdentifierCCdebugLine‘QLiteralCC#components/MiddleContent.ets(67:15)%"components/MiddleContent.ets(67:15)"UIfStatementCDCPUnaryExpressionCC!KIdentifierCCisInitialRenderLBlockStatementCDCRExpressionStatementDD(SCallExpressionDD'XMemberExpressionDD%KIdentifierDD!TextKIdentifierD"D%popRExpressionStatementD]DSCallExpressionD]DXMemberExpressionD]DKIdentifierD]DoViewStackProcessorKIdentifierDpDStopGetAccessRecordingRExpressionStatementDDSCallExpressionDDXMemberExpressionDDKIdentifierDDTextKIdentifierDDpopRExpressionStatementDFSCallExpressionDFXMemberExpressionDDTThisExpressionDDKIdentifierDDobserveComponentCreation‘NArrowFunctionExpressionDF’KIdentifierDDelmtIdKIdentifierEEisInitialRenderLBlockStatementEFRExpressionStatementE/EeSCallExpressionE/EdXMemberExpressionE/E\KIdentifierE/EAViewStackProcessorKIdentifierEBE\StartGetAccessRecordingFor‘KIdentifierE]EcelmtIdRExpressionStatementEESCallExpressionEEXMemberExpressionEEKIdentifierEETextKIdentifierEEcreate‘QLiteralEE已发送数据包数量:1"已发送数据包数量:1"RExpressionStatementEESCallExpressionEEXMemberExpressionEEKIdentifierEETextKIdentifierEEdebugLine‘QLiteralEE#components/MiddleContent.ets(68:15)%"components/MiddleContent.ets(68:15)"UIfStatementFF^PUnaryExpressionFF!KIdentifierFFisInitialRenderLBlockStatementFF^RExpressionStatementF8FCSCallExpressionF8FBXMemberExpressionF8F@KIdentifierF8FKIdentifier`+`1ColumnKIdentifier`2`>layoutWeight‘QLiteral`?`@1UIfStatement`P`PUnaryExpression`T`d!KIdentifier`U`disInitialRenderLBlockStatement`f`RExpressionStatement``SCallExpression``XMemberExpression``KIdentifier``ColumnKIdentifier``popRExpressionStatement``SCallExpression``XMemberExpression``KIdentifier``вViewStackProcessorKIdentifier``StopGetAccessRecordingRExpressionStatementacSCallExpressionacXMemberExpressionaaTThisExpressionaaKIdentifieraaobserveComponentCreation‘NArrowFunctionExpressionac’KIdentifiera a&elmtIdKIdentifiera(a7isInitialRenderLBlockStatementahXStartGetAccessRecordingFor‘KIdentifierhYh_elmtIdUIfStatementhkUKIdentifierhhisInitialRenderLBlockStatementhjQ\VariableDeclarationhi]VariableDeclaratorhiKIdentifierhhǬparamsLambdaNArrowFunctionExpressionhiLBlockStatementhiYReturnStatementhixZObjectExpressionhiw[Propertyi)iPKIdentifieri)i/simObjXMemberExpressioni1iPXMemberExpressioni1i?TThisExpressioni1i5KIdentifieri6i?allSimObjXMemberExpressioni@iOTThisExpressioni@iDKIdentifieriEiOchoseIndex¤initletRExpressionStatementij2SCallExpressionij1XMemberExpressioniiKIdentifieriiĦViewPUKIdentifierii˦create‘^NewExpressionij0KIdentifieriiܬNetworkChartTThisExpressioniiZObjectExpressionij[Propertyij KIdentifieriisimObjXMemberExpressionij XMemberExpressioniiTThisExpressioniiKIdentifieriiallSimObjXMemberExpressionij TThisExpressionijKIdentifierjj choseIndex¤initKIdentifierjjundefinedKIdentifierjj!elmtIdKIdentifierj#j/paramsLambdaLBlockStatementjtkURExpressionStatementjk6SCallExpressionjk5XMemberExpressionjjTThisExpressionjjKIdentifierjjupdateStateVarsOfChildByElmtId’KIdentifierjjelmtIdZObjectExpressionjk4[PropertyjkKIdentifierjjsimObjXMemberExpressionjkXMemberExpressionjkTThisExpressionjjKIdentifierjkallSimObjXMemberExpressionkkTThisExpressionkkKIdentifierkkchoseIndex¤initRExpressionStatementkskSCallExpressionkskXMemberExpressionkskKIdentifierkskViewStackProcessorKIdentifierkkStopGetAccessRecordingLBlockStatementl +lkRExpressionStatementll\SCallExpressionll[XMemberExpressionll1NArrowFunctionExpressionl@lZLBlockStatementlFlZUIfStatementlylPUnaryExpressionl}l!KIdentifierl~lisInitialRenderLBlockStatementllRExpressionStatementllSCallExpressionllXMemberExpressionllKIdentifierllIfKIdentifierllpopRExpressionStatementllSCallExpressionllXMemberExpressionllKIdentifierllڲViewStackProcessorKIdentifierllStopGetAccessRecordingRExpressionStatementm mSCallExpressionm mXMemberExpressionm mKIdentifierm m IfKIdentifiermmpopRExpressionStatementmm+SCallExpressionmm*XMemberExpressionmm(KIdentifiermm$ColumnKIdentifierm%m(popRExpressionStatementm5mBSCallExpressionm5mAXMemberExpressionm5m?KIdentifierm5m;ColumnKIdentifiermnSSCallExpressionn>nRXMemberExpressionn>nJKIdentifiern>nDColumnKIdentifiernEnJwidth‘QLiteralnKnQ100%'100%'RExpressionStatementnanvSCallExpressionnanuXMemberExpressionnannKIdentifiernangColumnKIdentifiernhnnheight‘QLiteralnont50%'50%'RExpressionStatementnnSCallExpressionnnXMemberExpressionnnKIdentifiernnColumnKIdentifiernnborder‘ZObjectExpressionnn[PropertynnKIdentifiernncolorXMemberExpressionnnKIdentifiernnColorKIdentifiernnOrange¤init[PropertynnKIdentifiernnwidthQLiteralnn1initUIfStatementnoPUnaryExpressionnnס!KIdentifiernnׯisInitialRenderLBlockStatementnoRExpressionStatementnnSCallExpressionnnXMemberExpressionnnKIdentifiernnColumnKIdentifiernnpopRExpressionStatementooBSCallExpressionooAXMemberExpressionoo?KIdentifieroo(ViewStackProcessorKIdentifiero)o?StopGetAccessRecordingRExpressionStatementoYq+SCallExpressionoYq*XMemberExpressionoYovTThisExpressionoYo]KIdentifiero^ovobserveComponentCreation‘NArrowFunctionExpressionowq)’KIdentifieroxo~elmtIdKIdentifierooisInitialRenderLBlockStatementoq)RExpressionStatementooSCallExpressionooXMemberExpressionooKIdentifierooViewStackProcessorKIdentifierooкStartGetAccessRecordingFor‘KIdentifierooצelmtIdRExpressionStatementooSCallExpressionooXMemberExpressionooKIdentifierooTextKIdentifieroocreate‘QLiteraloo路由/交换表信息"路由/交换表信息"RExpressionStatementp pDSCallExpressionp pCXMemberExpressionp pKIdentifierp pTextKIdentifierppdebugLine‘QLiteralppB$components/MiddleContent.ets(118:11)&"components/MiddleContent.ets(118:11)"RExpressionStatementpRpdSCallExpressionpRpcXMemberExpressionpRp_KIdentifierpRpVTextKIdentifierpWp_fontSize‘QLiteralp`pb21RExpressionStatementprpSCallExpressionprpXMemberExpressionprpKIdentifierprpvTextKIdentifierpwpfontWeight‘XMemberExpressionppKIdentifierppFontWeightKIdentifierppBoldUIfStatementppPUnaryExpressionpp!KIdentifierppisInitialRenderLBlockStatementppRExpressionStatementppSCallExpressionppXMemberExpressionppKIdentifierppΤTextKIdentifierppңpopRExpressionStatementpqSCallExpressionpqXMemberExpressionpqKIdentifierpqViewStackProcessorKIdentifierqqStopGetAccessRecordingRExpressionStatementq5q@SCallExpressionq5q?XMemberExpressionq5q=KIdentifierq5q9TextKIdentifierq:q=popRExpressionStatementqJrSCallExpressionqJrXMemberExpressionqJqgTThisExpressionqJqNKIdentifierqOqgobserveComponentCreation‘NArrowFunctionExpressionqhr’KIdentifierqiqoelmtIdKIdentifierqqqisInitialRenderLBlockStatementqrǕRExpressionStatementqqSCallExpressionqqXMemberExpressionqqKIdentifierqqViewStackProcessorKIdentifierqqStartGetAccessRecordingFor‘KIdentifierqqȦelmtIdRExpressionStatementqqSCallExpressionqqXMemberExpressionqqKIdentifierqqަColumnKIdentifierqqcreateRExpressionStatementqr/SCallExpressionqr.XMemberExpressionqrKIdentifierqqColumnKIdentifierqrdebugLine‘QLiteralrr-$components/MiddleContent.ets(122:11)&"components/MiddleContent.ets(122:11)"UIfStatementr=rPUnaryExpressionrArQ!KIdentifierrBrQisInitialRenderLBlockStatementrSrRExpressionStatementrfrsSCallExpressionrfrrXMemberExpressionrfrpKIdentifierrfrlColumnKIdentifierrmrppopRExpressionStatementrrSCallExpressionrrXMemberExpressionrrKIdentifierrrViewStackProcessorKIdentifierrrStopGetAccessRecordingRExpressionStatementryHSCallExpressionryGXMemberExpressionrrTThisExpressionrrKIdentifierrrobserveComponentCreation‘NArrowFunctionExpressionryF’KIdentifierrrelmtIdKIdentifierrs isInitialRenderLBlockStatementsyFRExpressionStatementssSSCallExpressionssRXMemberExpressionssJKIdentifierss/ViewStackProcessorKIdentifiers0sJStartGetAccessRecordingFor‘KIdentifiersKsQelmtIdRExpressionStatementsasmSCallExpressionsaslXMemberExpressionsasjKIdentifiersascIfKIdentifiersdsjcreateUIfStatements{xVLogicalExpressionssVBinaryExpressionssXMemberExpressionssTThisExpressionssKIdentifiersschoseIndex¢!=QLiteralssnull&&XMemberExpressionssTThisExpressionssKIdentifierssisShowTableLBlockStatementsx>RExpressionStatementsx/SCallExpressionsx.XMemberExpressionssTThisExpressionssKIdentifierss޺ifElseBranchUpdateFunction’QLiteralss0NArrowFunctionExpressionsx-LBlockStatementsx-LBlockStatementsxRExpressionStatementtxSCallExpressiontxXMemberExpressiontt7TThisExpressionttKIdentifiertt7observeComponentCreation‘NArrowFunctionExpressiont8x’KIdentifiert9t?elmtIdKIdentifiertAtPisInitialRenderLBlockStatementtUxRExpressionStatementtttSCallExpressiontttXMemberExpressiontttKIdentifiertttViewStackProcessorKIdentifierttStartGetAccessRecordingFor‘KIdentifierttelmtIdUIfStatementtwKIdentifierttۯisInitialRenderLBlockStatementtv\VariableDeclarationuu]VariableDeclaratoruuKIdentifieruuparamsLambdaNArrowFunctionExpressionuuLBlockStatementuuYReturnStatementu@uZObjectExpressionuGu[PropertyuruKIdentifieruruxsimObjXMemberExpressionuzuXMemberExpressionuzuTThisExpressionuzu~KIdentifieruuallSimObjXMemberExpressionuuTThisExpressionuuKIdentifieruuchoseIndex¤initletRExpressionStatementvvySCallExpressionvvxXMemberExpressionvvKIdentifiervv ViewPUKIdentifiervvcreate‘^NewExpressionvvwKIdentifiervv#TableChartTThisExpressionv$v(ZObjectExpressionv*vU[Propertyv,vSKIdentifierv,v2simObjXMemberExpressionv4vSXMemberExpressionv4vBTThisExpressionv4v8KIdentifierv9vBallSimObjXMemberExpressionvCvRTThisExpressionvCvGKIdentifiervHvRchoseIndex¤initKIdentifiervWv`undefinedKIdentifiervbvhelmtIdKIdentifiervjvvparamsLambdaLBlockStatementvwRExpressionStatementvw}SCallExpressionvw|XMemberExpressionvwTThisExpressionvvKIdentifiervwupdateStateVarsOfChildByElmtId’KIdentifierwwelmtIdZObjectExpressionw +w{[Propertyw1wXKIdentifierw1w7simObjXMemberExpressionw9wXXMemberExpressionw9wGTThisExpressionw9w=KIdentifierw>wGallSimObjXMemberExpressionwHwWTThisExpressionwHwLKIdentifierwMwWchoseIndex¤initRExpressionStatementwwSCallExpressionwwXMemberExpressionwwKIdentifierww̲ViewStackProcessorKIdentifierwwStopGetAccessRecordingLBlockStatementxQxRExpressionStatementxdxSCallExpressionxdxXMemberExpressionxdxTThisExpressionxdxhKIdentifierxixifElseBranchUpdateFunction’QLiteralxx1NArrowFunctionExpressionxxLBlockStatementxxUIfStatementxyPUnaryExpressionxxԡ!KIdentifierxxԯisInitialRenderLBlockStatementxyRExpressionStatementxxSCallExpressionxxXMemberExpressionxxKIdentifierxxIfKIdentifierxxpopRExpressionStatementyy;SCallExpressionyy:XMemberExpressionyy8KIdentifieryy!ViewStackProcessorKIdentifiery"y8StopGetAccessRecordingRExpressionStatementyRy[SCallExpressionyRyZXMemberExpressionyRyXKIdentifieryRyTIfKIdentifieryUyXpopRExpressionStatementyeyrSCallExpressionyeyqXMemberExpressionyeyoKIdentifieryeykColumnKIdentifierylyopopRExpressionStatementy|ySCallExpressiony|yXMemberExpressiony|yKIdentifiery|yColumnKIdentifieryypopRExpressionStatementyySCallExpressionyyXMemberExpressionyyKIdentifieryyColumnKIdentifieryypopRExpressionStatementyySCallExpressionyyXMemberExpressionyyKIdentifieryyRowKIdentifieryyģpopMMethodDefinitionyz KIdentifieryyܨrerendermethodNFunctionExpressionyz LBlockStatementyz RExpressionStatementyzSCallExpressionyzXMemberExpressionyzTThisExpressionyyKIdentifieryzupdateDirtyElementsr`typestartendspecifierssourceImportDeclaration.ratypestartendlocalImportDefaultSpecifierKIdentifierpromptActionQLiteral-@ohos.promptAction"@ohos.promptAction"`ImportDeclaration0̏rbtypestartendimportedlocalImportSpecifier9CKIdentifier9CSimConnectKIdentifier9CSimConnectbImportSpecifierELKIdentifierELSimHostKIdentifierELSimHostbImportSpecifierNTKIdentifierNTSimHubKIdentifierNTSimHubbImportSpecifierV_KIdentifierV_SimRouterKIdentifierV_SimRouterbImportSpecifierajKIdentifierajSimSwitchKIdentifierajSimSwitchQLiteralr̎../classes/OtherSimObjects"../classes/OtherSimObjects"`ImportDeclaration̑ĒbImportSpecifier̤̚KIdentifier̤̚TableChartKIdentifier̤̚TableChartbImportSpecifier̦̲KIdentifier̦̲NetworkChartKIdentifier̦̲NetworkChartQLiteral̺ç./Table"./Table" \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-OtherSimObjects.ets-ce90a14154a20ebde9a582b2856f4bb9.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-OtherSimObjects.ets-ce90a14154a20ebde9a582b2856f4bb9.msgpack new file mode 100644 index 0000000..c06e8cf --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-OtherSimObjects.ets-ce90a14154a20ebde9a582b2856f4bb9.msgpack @@ -0,0 +1,1865 @@ +r@assertionscodecustomTransformCachedependenciesidmetamoduleSideEffectsoriginalCodeoriginalSourcemapresolvedIdssourcemapChainsyntheticNamedExportstransformDependenciestransformFilescacheAstrAS5var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +var SimConnect_1; +import { SimBase } from "./SimBase"; +import { AppData, IPData, MACData, TransData } from "../classes/Datas"; +import { updatePacketLog } from "../functions/functions"; +let SimPacket = class SimPacket { + constructor(firstSendHost, sendHost, sourceMac, sourceIp, targetMac, targetIp, message, size, allSimObj, allSimPacket) { + this.firstSendHost = firstSendHost; + this.sendHost = sendHost; + this.sourceMac = sourceMac; + this.sourceIp = sourceIp; + this.targetMac = targetMac; + this.targetIp = targetIp; + this.message = message; + this.size = size; + this.allSimObj = allSimObj; + this.allSimPacket = allSimPacket; + this.id = Symbol(); + this.upJump = null; + this.points = []; + } +}; +SimPacket = __decorate([ + Observed +], SimPacket); +export { SimPacket }; +let SimConnect = SimConnect_1 = class SimConnect { + constructor(nobjs, nobje, ifss, ifse) { + this.nObjS = nobjs; + this.nObjE = nobje; + this.ifsS = ifss; + this.ifsE = ifse; + if (nobjs != null && nobje != null) { + this.configCorrect = true; + } + else { + this.configCorrect = false; + } + this.width = this.configCorrect === false ? 1 : 4; + } + updateObjConn() { + this.nObjS.interface[this.ifsS - 1] = this.nObjE.objID; + this.nObjE.interface[this.ifsE - 1] = this.nObjS.objID; + } // 更新仿真对象的接口信息 + deleteObjConn() { + this.nObjS.interface[this.ifsS - 1] = null; + this.nObjE.interface[this.ifsE - 1] = null; + } // 删除仿真对象的接口信息 + equals(other) { + if (other instanceof SimConnect_1) { + const otherIdS = other.nObjS.objID; + const otherIdE = other.nObjE.objID; + return this.nObjS.objID == otherIdS && this.nObjE.objID == otherIdE; + } + return false; + } // 判断两个连接线是否相同 +}; +SimConnect = SimConnect_1 = __decorate([ + Observed +], SimConnect); +export { SimConnect }; +let SimHost = class SimHost extends SimBase { + constructor(x, y, type = 1) { + super(x, y, type); + this.isOnline = false; // 主机联网状态 + this.objLabel = this.setDefaultName(); + this.ip = ""; + this.mac = ""; + this.img = { "id": 16777226, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 主机图片 + this.imgTm = { "id": 16777230, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 主机配置成功图片 + this.interface = [null]; // 主机只有一个接口 + this.connections = [null]; // 一个接口对应一根连接线 + this.port = 8080; + this.appAddr = this.ip + ":" + this.port; + } + setDefaultName() { + return `SHO${++SimBase.flag}`; + } // 生成组件默认名称 + onlineSwitch() { + this.isOnline = !this.isOnline; + } // 切换联网状态 + createPacket(mac, ip, message, allSimObj, allSimPacket) { + let isNewPacket = AppStorage.get("isNewPacket"); + console.log(isNewPacket.toString()); + AppStorage.set("isNewPacket", isNewPacket + 1); + isNewPacket = AppStorage.get("isNewPacket"); + console.log(isNewPacket.toString()); + let packet = new SimPacket(this, this, this.mac, this.ip, mac, ip, message, 1024, allSimObj, allSimPacket); + packet.level = 1; + packet.points.push([this.objX, this.objY]); + packet.allSimPacket.push(packet); + updatePacketLog(`主机-${this.objLabel}创建数据包成功,信息为[${packet.message}]!`); + this.send(packet); + } // 创建数据包 + createAppPacket(appPackSize, appPackTag, sourceAppAddr, targetAppAddr) { + let appPacket = new AppData(this.objID, this.objLabel, appPackSize, appPackTag, sourceAppAddr, targetAppAddr); + if (appPacket.isValid(sourceAppAddr, targetAppAddr)) { + appPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建应用层数据包成功,信息为[${appPacket.appPackTag}]!`); + return appPacket; + } + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } // 创建应用层数据包 + createTransPackets(appPackSize, appPackTag, sourcePort, targetPort, sourceAppAddr, targetAppAddr) { + const appPacket = this.createAppPacket(appPackSize, appPackTag, sourceAppAddr, targetAppAddr); + let transPacket = new TransData(appPacket.objId, appPacket.objLabel, 1, appPacket.appPackTag, appPacket.appPackId, sourcePort, targetPort, appPacket.sourceAppAddr, appPacket.targetAppAddr); + if (transPacket.isValid(sourcePort, targetPort)) { + let transSplitedPackets = transPacket.pack(); + let numbers = transSplitedPackets.length; + updatePacketLog(`主机-${this.objLabel}创建传输层数据包成功,并成功分割为${numbers}个,信息为[${transPacket.transTag}]!`); + return transSplitedPackets; + } + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } // 创建传输层数据包 + createIpPacket(appPackSize, appPackTag, sourcePort, targetPort, targetIp, sourceAppAddr, targetAppAddr) { + const transPacketList = this.createTransPackets(appPackSize, appPackTag, sourcePort, targetPort, sourceAppAddr, targetAppAddr); + let ipPacketList = []; + for (let i = 0; i < transPacketList.length; i++) { + let ipPacket = new IPData(transPacketList[i].objId, transPacketList[i].objLabel, transPacketList[i].transPackId, this.ip, targetIp, transPacketList[i].sourceAppAddr, transPacketList[i].targetAppAddr); + if (ipPacket.isValid(this.ip, targetIp)) { + ipPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建网络层数据包成功,信息为[${transPacketList[i].transTag}]!`); + ipPacketList.push(ipPacket); + } + } + if (ipPacketList) { + return ipPacketList; + } + else { + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } + } // 创建网络层数据包 + createMacPacket(allSimObj, allSimPacket, appPackSize, appPackTag, sourcePort, targetPort, targetMac, targetIp, sourceAppAddr, targetAppAddr) { + const ipPacketList = this.createIpPacket(appPackSize, appPackTag, sourcePort, targetPort, targetIp, sourceAppAddr, targetAppAddr); + let macPacketList = []; + for (let i = 0; i < ipPacketList.length; i++) { + let macPacket = new MACData(ipPacketList[i].objId, ipPacketList[i].objLabel, ipPacketList[i].ipPackId, this.mac, targetMac, ipPacketList[i].sourceIp, ipPacketList[i].targetIp, ipPacketList[i].sourceAppAddr, ipPacketList[i].targetAppAddr); + if (macPacket.isValid(this.mac, targetMac)) { + macPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建链路层数据包成功,信息为[${appPackTag}]!`); + macPacketList.push(macPacket); + } + } + if (macPacketList) { + this.createPacket(targetMac, targetIp, appPackTag, allSimObj, allSimPacket); + return macPacketList; + } + else { + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } + } // 创建链路层数据包 + createPhysicsPacket(allSimObj, allSimPacket, appPackSize, appPackTag, sourcePort, targetPort, targetMac, targetIp, sourceAppAddr, targetAppAddr) { + if (this.createMacPacket(allSimObj, allSimPacket, appPackSize, appPackTag, sourcePort, targetPort, targetMac, targetIp, sourceAppAddr, targetAppAddr)) { + return true; + } + return false; + } // 创建物理层数据包 + receive(packet) { + if (packet.targetIp == this.ip && packet.targetMac == this.mac) { + let isNewPacketArrived = AppStorage.get("isNewPacketArrived"); + console.log(isNewPacketArrived.toString()); + AppStorage.set("isNewPacketArrived", isNewPacketArrived + 1); + isNewPacketArrived = AppStorage.get("isNewPacketArrived"); + console.log(isNewPacketArrived.toString()); + packet.points.push([this.objX, this.objY]); + updatePacketLog(`主机-${this.objLabel}链路层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}网络层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}传输层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}应用层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}获取数据包成功,信息为[${packet.message}]!`); + } + else { + console.log(`主机${this.objLabel}获取数据包失败!`); + } + } // 接收数据包 + receiveMacPacket(packet, macPacket) { + if (macPacket.targetMac == this.mac && macPacket.targetIp == this.ip) { + this.receive(packet); + macPacket.unPack(this); + updatePacketLog(`主机-${this.objLabel}获取链路层数据包成功,信息为[${this.macData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}链路层数据包解包失败!`); + } + } // 接收链路层数据包 + receiveIpPacket(packet, macPacket, ipPacket) { + if (ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveMacPacket(packet, macPacket); + ipPacket.unpack(this); + updatePacketLog(`主机-${this.objLabel}获取网络层数据包成功,信息为[${this.ipData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}网络层数据包解包失败!`); + } + } // 接收网络层数据包 + receiveTransPacket(packet, macPacket, ipPacket, transPacket) { + if (transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveIpPacket(packet, macPacket, ipPacket); + transPacket.unPack(this); + updatePacketLog(`主机-${this.objLabel}获取传输层数据包成功,信息为[${this.transData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}传输层数据包解包失败!`); + } + } // 接收传输层数据包 + receiveAppPacket(packet, macPacket, ipPacket, transPacket, appPacket) { + if (appPacket.targetAppAddr == this.appAddr && transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveTransPacket(packet, macPacket, ipPacket, transPacket); + updatePacketLog(`主机-${this.objLabel}获取应用层数据包成功,信息为[${this.appData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}应用层数据包解包失败!`); + } + } // 接收应用层数据包 + send(packet) { + const connObj = this.objID; + packet.upJump = connObj; + updatePacketLog(`主机-${this.objLabel}发送数据包成功,信息为[${packet.message}]!`); + if (packet.allSimObj.find(item => item.objID === this.interface[0]) != undefined) { + packet.allSimObj.find(item => item.objID === this.interface[0]).receive(packet); + } + // console.log("packet.targetIp:" + packet.targetIp) + } // 发送数据包 +}; +SimHost = __decorate([ + Observed +], SimHost); +export { SimHost }; +let SimRouter = class SimRouter extends SimBase { + constructor(x, y, type = 2) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.ip = ""; + this.mac = ""; + this.img = { "id": 16777229, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 路由器图片 + this.imgTm = { "id": 16777233, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 路由器配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + this.routerTable = []; + } + setDefaultName() { + return `SRO${++SimBase.flag}`; + } // 生成组件默认名称 + checkDestinationIp(destinationIp, network) { + // 解析目标 IP 和网络地址 + const [networkAddress, subnetMask] = network.split('/'); + // 分解目标 IP 地址和网络地址为数组 + const destinationIpParts = destinationIp.split('.'); + const networkAddressParts = networkAddress.split('.'); + // 计算目标 IP 的网络地址(根据子网掩码) + const calculatedNetworkAddressParts = destinationIpParts.map((part, index) => { + return parseInt(part) & parseInt(networkAddressParts[index]); + }); + // 构建目标 IP 的网络地址和网络地址的比较字符串 + const calculatedNetworkAddress = calculatedNetworkAddressParts.join('.'); + const inputNetworkAddress = networkAddressParts.join('.'); + // 比较目标 IP 的网络地址和给定的网络地址是否相同,并检查是否在同一网络范围内 + return calculatedNetworkAddress === inputNetworkAddress && subnetMask === '24'; + } // 检查目标ip是否属于指定的网段范围内 + receive(packet) { + updatePacketLog(`路由器-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + try { + this.checkDestinationIp(packet.targetIp, this.ip); + } + catch (e) { + console.log("packet router err:" + JSON.stringify(e)); + } + this.transmit(packet); + } // 接收数据包 + transmit(packet) { + let flag = 0; + this.interface.forEach((item) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); // 当前遍历到的接口对应的仿真对象 + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); // 当前数据包的上一跳仿真对象 + if (item != null) { + // console.log(String(obj != objUpJump) + " " + String(this.routerTable.some(table => { + // return table.net === packet.targetIp // && obj.objID === this.interface[table.port-1] + // })) + " " + String(packet.targetIp)) + if (item != packet.upJump && this.routerTable.some(table => { + return table.net === packet.targetIp && obj.objID === this.interface[table.port - 1]; + })) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + flag++; + } + } + }); + if (!flag) { + updatePacketLog(`路由器-${this.objLabel}找不到对应端口进行转发!`); + } + } // 转发数据包 + getTableConfig() { + let str = ""; + const routerTables = this.routerTable; + for (let router of routerTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['segment']}\n`; + } + return str; + } // 获取路由表配置信息用于展示 +}; +SimRouter = __decorate([ + Observed +], SimRouter); +export { SimRouter }; +let SimSwitch = class SimSwitch extends SimBase { + constructor(x, y, type = 3) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.mac = ""; + this.img = { "id": 16777232, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 交换机图片 + this.imgTm = { "id": 16777227, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 交换机配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + this.switchTable = []; + } + setDefaultName() { + return `SSW${++SimBase.flag}`; + } // 生成组件默认名称 + receive(packet) { + updatePacketLog(`交换机-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + this.transmit(packet); + } // 接收数据包 + transmit(packet) { + this.interface.forEach((item) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); + if (item != null) { + if (item != packet.upJump && this.switchTable.some(table => table.net === packet.targetMac)) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + } + } + }); + } // 转发数据包 + getTableConfig() { + let str = ""; + const macTables = this.switchTable; + for (const router of macTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['mac']}\n`; + } + return str; + } // 获取交换机表配置信息用于展示 +}; +SimSwitch = __decorate([ + Observed +], SimSwitch); +export { SimSwitch }; +let SimHub = class SimHub extends SimBase { + constructor(x, y, type = 4) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.img = { "id": 16777228, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 集线器图片 + this.imgTm = { "id": 16777225, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 集线器配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + } + setDefaultName() { + return `SHU${++SimBase.flag}`; // 生成组件默认名称 + } + receive(packet) { + updatePacketLog(`集线器-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + this.transmit(packet); + } // 接收数据包 + transmit(packet) { + this.interface.forEach((item, index) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); + if (item != null) { + if (item != packet.upJump) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + } + } + }); + } // 转发数据包 +}; +SimHub = __decorate([ + Observed +], SimHub); +export { SimHub }; +//# sourceMappingURL=OtherSimObjects.js.map“8E:\jiaocai\ensp14\entry\src\main\ets\classes\SimBase.ets6E:\jiaocai\ensp14\entry\src\main\ets\classes\Datas.ets item.objID === this.interface[0]) != undefined) { + packet.allSimObj.find(item => item.objID === this.interface[0]).receive(packet) + } + // console.log("packet.targetIp:" + packet.targetIp) + } // 发送数据包 +} + +@Observed +export class SimRouter extends SimBase { + constructor(x: number, y: number, type: number = 2) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.ip = "" + this.mac = "" + this.img = $r("app.media.luyouqi") // 路由器图片 + this.imgTm = $r("app.media.luyouqi_tm") // 路由器配置成功图片 + this.interface = [null, null, null, null] // 路由器有四个接口 + this.connections = [null, null, null, null] // 四个接口对应四根连接线 + this.routerTable = [] + } + + setDefaultName() { + return `SRO${++SimBase.flag}` + } // 生成组件默认名称 + + checkDestinationIp(destinationIp: string, network: string): boolean { + // 解析目标 IP 和网络地址 + const [networkAddress, subnetMask] = network.split('/'); + + // 分解目标 IP 地址和网络地址为数组 + const destinationIpParts = destinationIp.split('.'); + const networkAddressParts = networkAddress.split('.'); + + // 计算目标 IP 的网络地址(根据子网掩码) + const calculatedNetworkAddressParts = destinationIpParts.map((part, index) => { + return parseInt(part) & parseInt(networkAddressParts[index]); + }); + + // 构建目标 IP 的网络地址和网络地址的比较字符串 + const calculatedNetworkAddress = calculatedNetworkAddressParts.join('.'); + const inputNetworkAddress = networkAddressParts.join('.'); + + // 比较目标 IP 的网络地址和给定的网络地址是否相同,并检查是否在同一网络范围内 + return calculatedNetworkAddress === inputNetworkAddress && subnetMask === '24'; + } // 检查目标ip是否属于指定的网段范围内 + + receive(packet: SimPacket) { + updatePacketLog(`路由器-${this.objLabel}接受到数据,将进行转发!`) + packet.points.push([this.objX, this.objY]) + try { + this.checkDestinationIp(packet.targetIp, this.ip) + } catch (e) { + console.log("packet router err:" + JSON.stringify(e)) + } + this.transmit(packet); + } // 接收数据包 + + transmit(packet: SimPacket) { + let flag = 0 + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item) // 当前遍历到的接口对应的仿真对象 + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump) // 当前数据包的上一跳仿真对象 + if (item != null) { + // console.log(String(obj != objUpJump) + " " + String(this.routerTable.some(table => { + // return table.net === packet.targetIp // && obj.objID === this.interface[table.port-1] + // })) + " " + String(packet.targetIp)) + if (item != packet.upJump && this.routerTable.some(table => { + return table.net === packet.targetIp && obj.objID === this.interface[table.port-1] + })) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket) + pac.level = packet.level + 1 + pac.upJump = this.objID + pac.points.push([this.objX, this.objY]) + packet.allSimPacket.push(pac) + obj.receive(pac) + flag++ + } + } + }) + if (!flag) { + updatePacketLog(`路由器-${this.objLabel}找不到对应端口进行转发!`) + } + } // 转发数据包 + + getTableConfig(): string { + let str = ""; + const routerTables = this.routerTable; + for (let router of routerTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['segment']}\n`; + } + return str; + } // 获取路由表配置信息用于展示 +} + +@Observed +export class SimSwitch extends SimBase { + constructor(x: number, y: number, type: number = 3) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.mac = "" + this.img = $r("app.media.jiaohuanji") // 交换机图片 + this.imgTm = $r("app.media.jiaohuanji_tm") // 交换机配置成功图片 + this.interface = [null, null, null, null] // 路由器有四个接口 + this.connections = [null, null, null, null] // 四个接口对应四根连接线 + this.switchTable = [] + } + + setDefaultName() { + return `SSW${++SimBase.flag}` + } // 生成组件默认名称 + + receive(packet: SimPacket) { + updatePacketLog(`交换机-${this.objLabel}接受到数据,将进行转发!`) + packet.points.push([this.objX, this.objY]) + this.transmit(packet); + } // 接收数据包 + + transmit(packet: SimPacket) { + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item) + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump) + if (item != null) { + if (item != packet.upJump && this.switchTable.some(table => table.net === packet.targetMac)) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket) + pac.level = packet.level + 1 + pac.upJump = this.objID + pac.points.push([this.objX, this.objY]) + packet.allSimPacket.push(pac) + obj.receive(pac) + } + } + }) + } // 转发数据包 + + getTableConfig(): string { + let str = ""; + const macTables = this.switchTable; + for (const router of macTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['mac']}\n`; + } + return str; + } // 获取交换机表配置信息用于展示 +} + +@Observed +export class SimHub extends SimBase { + constructor(x: number, y: number, type: number = 4) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.img = $r("app.media.jixianqi") // 集线器图片 + this.imgTm = $r("app.media.jixianqi_tm") // 集线器配置成功图片 + this.interface = [null, null, null, null] // 路由器有四个接口 + this.connections = [null, null, null, null] // 四个接口对应四根连接线 + } + + setDefaultName(): string { + return `SHU${++SimBase.flag}` // 生成组件默认名称 + } + + receive(packet: SimPacket) { + updatePacketLog(`集线器-${this.objLabel}接受到数据,将进行转发!`) + packet.points.push([this.objX, this.objY]) + this.transmit(packet); + } // 接收数据包 + + transmit(packet: SimPacket): void { + this.interface.forEach((item: symbol, index) => { + let obj = packet.allSimObj.find(obj => obj.objID === item) + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump) + if (item != null) { + if (item != packet.upJump) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket) + pac.level = packet.level + 1 + pac.upJump = this.objID + pac.points.push([this.objX, this.objY]) + packet.allSimPacket.push(pac) + obj.receive(pac) + } + } + }) + } // 转发数据包 +}rD../functions/functions./SimBase../classes/DatasrEassertionsexternalidmetamoduleSideEffectsresolvedBysyntheticNamedExportsA^GoIqQ́S̃Z̒\̔`̠b̢k̶m̸yї   *&+'    !   "#    !   "#    !          "#     ( $) %! ! ! ! !!!!" " " """"# # # ####$$%%     %  (( ( (&( 0(000#0%0:0<"0H$0J(0V1 1 1 11112 2 2 22223 3 3 3 3334 4 4 4 4445 55 555"5&5"*5&,5( 66 +6 6!6%6&6 7 7 88 +8 8!8&8 '8 9: : : ::::':#,:(1:-2:.3:/4:05:16:27:38:49:5::6;;==> > > >>>>!>">&>")>#*>$+>%.>(2>,3>-8>29>3>>8?>8? ? ? ????!?"?&?")?#*?$+?%.?(2?,3?-8?29?3>?8??8@@@@BBC C C CCCC!C"C&C")C#*C$+C%.C(2C,3C,D D D DDDD!D"D&D")D#*D$+D%.D(2D,3D,EEEEG +G G GH HH H)H#+H% II II"I#I(I")I#.I(/I) JJ JJ"J#J(J")J#.J(/J) KK KKKK#K'K!/K)3K-7K18K2=K7>K8CK=GKAOKIPKJ LMM MMNNNNOO( +(' ' ( (O ( (RR RRR R$R+R$[[[[["[$[3[4\ \ \ +\ \ \\\\\SS +SSSS(S&] ] ] ]]]]+]'-]).])^ ^ ^ ^ ^^^_ _ _ _ ___` ` ` ` ̂`$̃`$̄`%̋`,a a a āa)̅a)̆a*̑a5b b b bbbbb b!b,b'c c c ccc c!c"c#c1c,d d d d ddde e e eeeee!e$e 'e#+e',e(0e,1e,ffhhii iiii#i%i!&i!jjjjllm m m mmmmm&m"'m"nnnn pppppp&p(!p7#p9,pM.pO:phq qqq$q(%q)(q,)q-6q:7q;8q;rr r rrr r(r$*r&+r',r'sssss$s &s"1s-4s05s16s27s2ttt t!t$t %t!2t.3t/4t/uu u uuu u(u$*u&+u',u' v vvvv"v#v'v#)v%-v4/v63v:4v;7v>9v@=vD>vE@vGBvIEvLGvNIvPKvRRvYTv[Xv_Zvacvjevlqvxrvysvyww +w wwwwxx +x xxxxx x!x%x!'x#+x',x(0x,1x-2x.3x.yy +y yy y!y'y#(y$)y$zzzz"z#z+z':z6@z:̉P<̉RF̉dH̉fỦ{W̉}d̉̒̊̊ +̊̊̊̊.̊*/̊+:̊6<̊8F̊BH̊DŮQW̊Sd̊`e̊af̊a&̋ ̋̋̋̋'̋#(̋$1̋-2̋.7̋39̋5B̋>C̋?K̋GM̋IN̋JP̋LY̋UZ̋Vd̋`f̋bőkp̋ly̋u{̋w̵̶̨̜̘̝̙̪̦̬̱̲̅̋́̇̋̃̑̋̍̓̋̏̋̋̋̋̋̋̋̿̋̋̌ ̌̌̌̌ ̌*̌&,̌(6̌27̌39̌5 ̍̍ +#̍&̍ 1̍+2̍,6̍08̍29̍2 ̎̎ +̎̎-̎'.̎(4̎.5̎. ̏̏̏"̏&̏ '̏!/̏)C̏=J̏DS̏M^̏X_̏Yg̏ak̏el̏fm̏f ̐̐ &̐ '̐ ̑̒̒ ̒ ̒̒̒̒̒'̒#1̒-2̒.3̒.̓̓ ̖̖̖̖̓̓̔̔̔̔$ ̖&*̖8,̖:6̖L8̖NB̖`D̖bL̖rN̖t[̖̉]̖̋j̖̠̗̗ +̗ ̗$̗ %̗!7̗38̗4C̗?E̗AO̗KQ̗M[̗W]̗Yg̗ci̗ev̗rx̗t̗̗̗̘̅́̆̂̇̂ ̘̘̘!̘#̘#̙ ̙ ̙ ̙̙̙̙̙̙+̙',̙(2̙.4̙05̙17̙39̙51 ̚̚ +̚̚̚%̚&̚ 5̚/6̚07̚18̚29̚3>̚8@̚:O̚IP̚JQ̚KR̚LS̚M[̚U]̚Wl̚fm̚gn̚ho̚ip̚j{̚u}̚ẃ̚{̂̚|̄̚~̡̢̛̟̙̠̜̣̝̰̪̲̬̻̼͔̆̀̎̈̐̊̽̾̿̔̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚͝ ̛̛ +̛̛ ̛!̛%̛&̛ (̛"*̛$2̛,3̛-5̛/̜̜̜̜̜ ̜̝̝ ̝&̝*̝"+̝#3̝+E̝=T̝LU̝MV̝NW̝OX̝P`̝Xd̝\e̝]f̝]̞̞̞!̞"̞*̞"+̞#,̞# ̟ ̡̠ ̡̡̡ ̢̢ ̢ ̢ ̣ ̣ ̤̤ ̤̤̤̤"̤#̤+̤%5̤/6̤07̤0 ̥̥ ̥̥ ̧̧̧̧̦̩̩̩̩&̩(+̩A-̩C8̩V:̩XD̩jF̩lP̩~R̩̀\̩̒^̩̔g̩̥i̧̩q̷̩s̩̹̩̀Δ̩̂Д̩̪̪̏ +̪̪!̪"̪0̪,1̪-<̪8>̪:H̪DJ̪FT̪PV̪R`̪\b̪^j̪fl̪hy̪u{̪ẅ̪̪̪̫̄̉̅̊̅ ̫̫̫#̫%̫%̬ ̬ ̬ ̬̬̬̬̬̬(̬$)̬%/̬+1̬-2̬.4̬06̬2? ̭̭ +̭̭ ̭'̭!(̭"4̭.5̭/6̭07̭18̭2=̭7?̭9K̭EḼFM̭GṊHO̭IW̭QY̭Sḙ_f̭`g̭ah̭bi̭cq̭ks̭mw̭qx̭r{̭u}̭w̴̶̢̨̭̭̭̭̖̭̗̭̘̭̠̭̭̜̮̭̯̭̩̰̭̪̱̭̫̲̭̬̺̭̼̭̭̆̀̈̂̔̎̏̐̑̒̕̚”̭Ô̭Ḙ̆Ŕ̭Ɣ̭Ӕ̭Ք̭̭̭̭̭̭̭̭ ̮̮ +̮̮!̮"̮&̮ '̮!*̮$,̮&5̮/6̮08̮2̯̯̯̯ ̯!̯̰̰ ̰&̰*̰"+̰#3̰+Ḛ=O̰GS̰KT̰LṴḺ̱̱"̱#̱,̱$-̱%.̱% ̲ ̴̳ ̴̴̴ ̵̵ +̵ ̵̵'̵!)̵#1̵+3̵-=̵7?̵9H̵BJ̵DV̵PW̵QX̵Q ̶̶ ̶!̶ ̷ ̷ ̸̸ ̸̸̸̸"̸#̸+̸%5̸/6̸07̸0 ̹̹ ̹̹ ̺̻̻̻̻̽̽̽!̽*#̽,/̽E1̽G<̽Z>̽\H̽nJ̽pT̽̂V̽̄`̖̽b̘̽k̩̽m̫̽u̻̽w̽̽̄̽Ҕ̆̽Ԕ̓̽̾ ̾̾ ̾ ̾!̾*̾&,̾(8̾4:̾6E̾AG̾CQ̾MS̾O]̾Y_̾[i̾ek̾gt̾pv̾r~̾z̀̾|̛̜̘̝̙̟̍̾̉̏̾̋̾̾̾ ̿̿ ̿̿   + #$ &"*&0,1-:6>:B>C?FBHD  +"%'/1023546HJIKJK  *$+%3-5/6070 /)1+C=F@GAHBIB !+%,&/)0*D>E?F?  *$+%3-5/6070    $%)#+%/)0*4.5/6070 "& '!/)A;GAHBOISMTNUN "& '!/)A;GAHBOISMTNUN "& '!/)A;GAHBOISMTNUN "& '!/)A;GAHBOISMTNUN "& '!/)>8D>E?LFPJQKRK   !"*$4.5/6/  $&&8 #'#($+'/+8495A=EAIEJFLHNJ  +  ! !"# "& '!/)A;E?F@MGNHVPZT[U\U   "#+%8293:3 #%%7'9/I !%!&"($,(5162?;C?GCHDKGMI  + !"("*$3-4.5.  !" "& '!/)A;E?F@LFMGUOYSZT[T   "#+%8293:3 &((:*<2L4N?d "&"*&+'/+3/;7<8D@HDLHMIOKSO\X]Yfbjfnjokrntp  + !'!)#2,4.<6=7>7 #$% "& '!/)A;E?F@OIPJXR\V]W^W   "#+%8293:3 $&&8(:0J2L=b?dHv" #'#+',(3/73B>C?MIQMUQVRZV^Zfbgcoksowsxtzv~ż̛̙̖̝̙̟̃̈̄̑̍̑̕̕̚  + #$*$,&5/71?9A;LFMGNG "& '!/)A;E?F@MGNHVPZT[U\U   "#+%8293:3   + !"&#& +  "#+':6@:GCHDIEJFKGOKXTZV   !"& '!)#*$.(/)4.93=7>8GAHBICJDKELFSMTNZT[U\U <8 R RQ Q R +R  R R + +  + + +  +( +/ +&     " $ 3 4    +                + '- ). )            ̂&̃&̄'̌/   ̄+̅+̆,̒8    $ &"*&,(0,1-2-3.>9    "&"($,(.*2.3/4/50C>    #%!&!$*&,-; + )%*&-)4051:6;7>:?;@<  +  # 0 ,1 -6 27 3: 6; 7< 8!! +!!$! 2!.3!/8!49!5<!8=!9>!:# #$$ ++$'.$*@$,2,.-- '-#,-(?-;C-?M-IR-NV-RW-S....0 0 0 +01111#1$1 ,1(:16;17<1722 +2 22222 2!2%2!'2#+2',2(02,12-22.32.3 3 44 +4 #4$4*4$+4%34-54/943:44<46=47>47 555 55 66 666,6&/6)36-46.=67>68?69@6:A6;B6; 78 8 8 888889999 ; ; + ; ;< << <<<= = = ==== =$=(&=*(=, >> +> >>>&> '>!+>%,>&/>)0>*2>,3>-6>07>1<>6A>;E>?F>@G>@H>AZ>S ?? +??"?#?,?&-?'1?+2?,;?5<?6>?8??9H?BI?CN?HS?MY?SZ?T`?Za?[b?[c?\s?l @@ +@@@@AgA_BjBbC7C/DD DD"D#D)D!-D%1D)2D*=D5>D6BD:CD;HD@IDAKDCE +E E!E$E)E/E%0E&8E.<E2?E5@E6EE;JE@NEDOEEXENYEO^ET_EUcEYfEZgE[hE\iE\FF F +F ,G +GG G$G-G#.G$4G*5G+BG8DG:MGCOGEUGKVGL_GUaGWgG]hG^pGfrGhxGnyGôGx̄Gz̊G̀̋Ǵ̓G̉̕G̛̋G̜̑G̣̒G̙̥G̛̩G̟̫G̡̱Ģ̲G̨̻G̱̽G̳G̹G̺GƔGǔGǛH +H HH H&H'H,H"/H%0H&1H&I +I II!I%I&I+I!,I!J +J JJJ#J$J%J)J*J .J$0J&4J*5J+9J/:J0;J1<J1K +KK'K(K,K"-K#0K&1K'2K'L +L LL L#L$L%LM +MMMN OP P +P PQ Q Q Q Q RRR#R'R!(R"0R*>R8?R9@R9 STTTT VVW WW WWWXX +XX!X"X-X).X*Y Y Y YY'Y#)Y% ZZ Z Z!Z"Z,Z&-Z'1Z+2Z, [[ [ [!["[+[%,[&0[*1[+ \]] ]]^^^^__ +  +    +  + _  +  +bb bbb b(b/b&ccccc"c$c3c4d d d +d d ddddde e e eeee+e'-e).e)f f f f fffg g g g ̂g)̃g)̄g*̌g2h h h h̄h.̅h.̆h/̒h;i i i iiii i$i &i"*i&,i(0i,1i-2i-3i.>i9j j j jjj j"j&j"(j$,j(.j*2j.3j/4j/5j0Cj>k k k kkkkllnnoo oooo#o%o!&o!ppppr r r +rssss#s$s ,s(:s6;s7<s7tt +t ttttt t!t%t!'t#+t',t(0t,1t-2t.3t.u u u uuuuuvvvv x x + x xy y y yyyy y$y(&y*(y, zz +z zzz&z 'z!+z%,z&/z)0z*2z,3z-6z07z1<z6Az;Ez?Fz@Gz@ {{ +{{"{#{,{&-{'1{+2{,;{5<{6>{8?{9H{BI{CN{HS{MY{SZ{T`{Za{[b{[ || +||||}} }}"}#})}!-}%1})2}*=}5>}6B}:C};H}@I}AK}CL}DQ}IR}JU}MZ}R`}Xa}Yj}bk}cm}e,~ +~~ ~$~-~#.~$4~*5~+B~8D~:M~CO~EU~KV~L_~Ua~Wg~]h~^p~fr~hx~ny~ô~x̄~z̊~̀̋~́̓~̉̕~̛̋~̜̑~̣̒~̙̥~̛̩~̟̫~̡̱~̧̲~̨̻~̱̽~̳~̹~̺~Ɣ~ǔ~Ǜ +  &',"/%0&1& + !%&+!,! + #$%)* .$0&4*5+9/:0;1<1 +'(,"-#0&1'2' +  #$%   +     +*&+'  &"($   !",&-'1+2,   !"'!(",&-'  b ba a b b  b b +  ")#"$34   +     +'-).)    ̂'̃'̄(̌0   ̄,̅,̆-̒9    $ &"*&,(0,1-2-3.>9    "&"($,(.*2.3/4/50C> #%!&!'"2-   +#$ ,(:6;7<7 +  !%!'#+',(0,1-2.3.      +      $(&*+/-1/3  + & '!+%,&/)0*2,3-6071<6A;E?F@G@  +"#,&-'1+2,;5<6>8?9HBICNHSMYSZT`Za[b[  + "#)!+#, + $-#.$4*5+B8D:MCOEUKVL_UaWg]h^pfrhxnyôx̄z̡̧̨̛̛̜̣̙̥̩̟̫̱̲̻̱̳̹̺̊̀̋́̓̉̋̑̒̽̕ƔǔǛ +  &',"/%0&1& + !%&+!,! + #$%)* .$0&4*5+9/:0;1<1 +'(,"-#0&1'2' +  #$%   +       +  rGversionfilesourcessourcesContentnamesmappingsZ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̖̖̗̗̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    &  + +      !!""##$$%%I  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHH;          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :# + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + + + + + ! +!" +"~          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YZ Z[ [\ \] ]^ ^_ _` `a ab bc cd de ef fg gh hi ij jk kl lm mn no op pq qr rs st tu uv vw wx xy yz z{ {| |} }-          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,#          + +                    ! !" "%  + +      !!""##$$#  + +      !!""%  + +      !!""##$$#  + +      !!""!  + +        + +    %  + +      !!""##$$+  + +      !!""##$$%%&&''(())**  + +      + +      + +      + +      + +      + +      + +    4  + +      !!""##$$%%&&''(())**++,,--..//00112233-          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!""""""""" " +" + " " " """""""""""""""######### # +# + # # # #############$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$/%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%.(&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'''''''''' ' +' +((((((((( ( +( + ( ( ( (()))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()(********* * +* +<+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-+-.+./+/0+01+12+23+34+45+56+67+78+89+9:+:;+;,,,,,,,--------- - +- + - - - ---------A......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$%/%&/&'/'(/()/)*/*+/+,/,-/-././//0/01/12/23/34/45/56/67/78/89/9:/:;/;</<=/=>/>?/?@/@000000000 0 +0 + 0 0 0 00000000111111111 1 +1 + 1 1 1 1111111115222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/0201212223234245333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434444444444 4 +4 + 4 4 4 44444444555555555 5 +5 + 5 5 5 5555555.666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-1777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/0701888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/080R999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9./9/090191292393494595696797898999:9:;9;<9<=9=>9>?9?@9@A9AB9BC9CD9DE9EF9FG9GH9HI9IJ9JK9KL9LM9MN9NO9OP9PQ9Q::::::::: : +: +;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;<<<<<<<<< < +< + < < < <<<<<<<<====*>>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)????????? ? +? + ? ? ? @@@@@@@@@ @ +@ + @ @ @ @@@AAAAAAAAA A +A + A A A AAAAAAAAAA/BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B.#CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"DDDDDDDDD D +D + D D D DDDDDDDDDDDDDD*EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)0FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/GGGGGGGGG G +G + G G G GGGGGGGGGHHHHHHHHH H +H + H H H HHHHHHHHHHIIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-.I./I/0I01I12I23I34I45I56I67I78I89I9:I:;I;<I<=I=>I>?I?@I@AIABIBCICDIDEIEFIFGIGHIHIIIJIJKIKLILMIMNINOIOPIPQIQRIRSISTITUIUVIVWIWXIXYIYZIZ[I[\I\]I]^I^_I_`I`aIabIbcIcdIdeIefIfgIghIhiIijIjkIklIlmImnInoIopIpqIqrIrsIstItuIuvIvwIwxIxyIyzIz{I{|I|}I}~I~ÌÌ́Í̂Î̃Ĩ̄Ī̅I̅̆Ĭ̇İ̈Ï̉Ỉ̊I̊̋I̋̌ǏJJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJJJJ J !J!"J"#J#$J$%J%&J&'J'(J()J)*J*+J+,J,-J-.J./J/0J01J12J23J34J45J56J67J78J89J9:J:;J;<J<=J=>J>?J?@J@AJABJBCJCDJDEJEFJFGJGHJHIJIJJJKJKLJLMJMNJNOJOPJPQJQRJRSJSTJTUJUVJVWJWXJXYJYZJZ[J[\J\]J]^J^_J_`J`aJabJbcJcdJdeJefJfgJghJhiJijJjkJklJlmJmnJnoJopJpqJqrJrsJstJtuJuvJvwJwxJxyJyzJz{J{|J|}J}~J~J̀J̀́J́̂Ĵ̃J̃̄J̄̅J̅̆J̆̇J̇̈J̈̉J̉̊J̊̋J̋̌J̌̍J̍̎J̎̏J̏̐J̐̑J̑̒J̒.KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-3LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&'L'(L()L)*L*+L+,L,-L-.L./L/0L01L12L2MMMMMMMMM M +M + M M M MMMMMMMMMMMMM3NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N2OOOOOOOPPPPPPPPP P +P + P P P PPPPPPPPPP(QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'RRRRRRRRR R +R + R R R RRRRRSSSSSSSSS S +S + S S S SSSSSSSS)TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T(UUUUUUUUU U +U + U U U UUU?VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>:WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9.XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-9YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y86ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z45Z5.[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-u\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$%\%&\&'\'(\()\)*\*+\+,\,-\-.\./\/0\01\12\23\34\45\56\67\78\89\9:\:;\;<\<=\=>\>?\?@\@A\AB\BC\CD\DE\EF\FG\GH\HI\IJ\JK\KL\LM\MN\NO\OP\PQ\QR\RS\ST\TU\UV\VW\WX\XY\YZ\Z[\[\\\]\]^\^_\_`\`a\ab\bc\cd\de\ef\fg\gh\hi\ij\jk\kl\lm\mn\no\op\pq\qr\rs\st\t]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]5^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^12^23^34^4+_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*P````````` ` +` + ` ` ` `````````````````` ` !`!"`"#`#$`$%`%&`&'`'(`()`)*`*+`+,`,-`-.`./`/0`01`12`23`34`45`56`67`78`89`9:`:;`;<`<=`=>`>?`?@`@A`AB`BC`CD`DE`EF`FG`GH`HI`IJ`JK`KL`LM`MN`NO`Oaaaaaaaaa a +a + a a a aaaaaaaaaaaaaabbbbbbbbb b +b + b b b bbNccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c01c12c23c34c45c56c67c78c89c9:c:;c;<c<=c=>c>?c?@c@AcABcBCcCDcDEcEFcFGcGHcHIcIJcJKcKLcLMcMxddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;<d<=d=>d>?d?@d@AdABdBCdCDdDEdEFdFGdGHdHIdIJdJKdKLdLMdMNdNOdOPdPQdQRdRSdSTdTUdUVdVWdWXdXYdYZdZ[d[\d\]d]^d^_d_`d`adabdbcdcdddedefdfgdghdhidijdjkdkldlmdmndnodopdpqdqrdrsdstdtuduvdvwdw@eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-.e./e/0e01e12e23e34e45e56e67e78e89e9:e:;e;<e<=e=>e>?e?fffffffff f +f + f f f fffffffffffffffff]ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g()g)*g*+g+,g,-g-.g./g/0g01g12g23g34g45g56g67g78g89g9:g:;g;<g<=g=>g>?g?@g@AgABgBCgCDgDEgEFgFGgGHgHIgIJgJKgKLgLMgMNgNOgOPgPQgQRgRSgSTgTUgUVgVWgWXgXYgYZgZ[g[\g\hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhiiiiiiiii i +i +5jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23j34j4kkkkkkkkk k +k + k k k kkkkkkkklllllllll l +l + l l l lllllimmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23m34m45m56m67m78m89m9:m:;m;<m<=m=>m>?m?@m@AmABmBCmCDmDEmEFmFGmGHmHImIJmJKmKLmLMmMNmNOmOPmPQmQRmRSmSTmTUmUVmVWmWXmXYmYZmZ[m[\m\]m]^m^_m_`m`amabmbcmcdmdemefmfgmghmhhnnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n23n34n45n56n67n78n89n9:n:;n;<n<=n=>n>?n?@n@AnABnBCnCDnDEnEFnFGnGHnHInIJnJKnKLnLMnMNnNOnOPnPQnQRnRSnSTnTUnUVnVWnWXnXYnYZnZ[n[\n\]n]^n^_n_`n`anabnbcncdndenefnfgngǔooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*+o+,o,-o-.o./o/0o01o12o23o34o45o56o67o78o89o9:o:;o;<o<=o=>o>?o?@o@AoABoBCoCDoDEoEFoFGoGHoHIoIJoJKoKLoLMoMNoNOoOPoPQoQRoRSoSToTUoUVoVWoWXoXYoYZoZ[o[\o\]o]^o^_o_`o`aoabobcocdodeoefofgoghohioijojkoklolmomnonooopopqoqrorsostotuouvovwowxoxyoyzoz{o{|o|}o}~o~òò́ó̂ỗȭō̅o̅̆ŏ̇ȯ̈ö̉ỏ̊o̊̋ő̌ǒ̍o̍̎o̎̏ȍ̐o̐̑ȏ̒o̒̓o̓̔o̔̕o̖̕o̖̗o̗̘o̘̙o̙̚ơ̚ơ̜o̜̝o̝̞o̞̟o̟̠o̡̠o̡̢ọ̢ọ̤o̤̥o̥̦o̧̦o̧̨ǫ̩o̩̪o̪̫o̫̬o̬̭o̭̮o̮̯o̯̰o̰̱o̱̲o̲̳o̴̳o̴̵o̵̶o̶̷o̷̸o̸̹o̹̺o̺̻o̻̼o̼̽o̽̾o̾̿o̿ooo”oÔoĔoŔo<ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;;qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q()q)*q*+q+,q,-q-.q./q/0q01q12q23q34q45q56q67q78q89q9:q:7rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)*r*+r+,r,-r-.r./r/0r01r12r23r34r45r56r6osssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsABsBCsCDsDEsEFsFGsGHsHIsIJsJKsKLsLMsMNsNOsOPsPQsQRsRSsSTsTUsUVsVWsWXsXYsYZsZ[s[\s\]s]^s^_s_`s`asabsbcscdsdesefsfgsghshisijsjksklslmsmnsn)ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t(uuuuuuuuu u +u +5vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v4wwwwwwwww w +w + w w w wwwwwwwwxxxxxxxxx x +x + x x x xxxxxoyyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9:y:;y;<y<=y=>y>?y?@y@AyAByBCyCDyDEyEFyFGyGHyHIyIJyJKyKLyLMyMNyNOyOPyPQyQRyRSySTyTUyUVyVWyWXyXYyYZyZ[y[\y\]y]^y^_y_`y`ayabybcycdydeyefyfgyghyhiyijyjkyklylmymnynzzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z01z12z23z34z45z56z67z78z89z9:z:;z;<z<=z=>z>?z?@z@AzABzBCzCDzDEzEFzFGzGHzHIzIJzJKzKLzLMzMNzNOzOPzPQzQRzRSzSTzTUzUVzVWzWXzXYzYZzZ[z[\z\]z]^z^_z_`z`azabzbczcdzdezefzfgzghzhizijzjkzklzlmzmnznozopzpqzqrzrszstztuzuvzvwzwxzxyzyzzz{z{|z|}z}~z~z̀z̀́ź̂ẑ̃z̃̄z̄̅z̅̆z̆̇ż̈z̈ {{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{<||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*+|+,|,-|-.|./|/0|01|12|23|34|45|56|67|78|89|9:|:;|;֔}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/0}01}12}23}34}45}56}67}78}89}9:}:;};<}<=}=>}>?}?@}@A}AB}BC}CD}DE}EF}FG}GH}HI}IJ}JK}KL}LM}MN}NO}OP}PQ}QR}RS}ST}TU}UV}VW}WX}XY}YZ}Z[}[\}\]}]^}^_}_`}`a}ab}bc}cd}de}ef}fg}gh}hi}ij}jk}kl}lm}mn}no}op}pq}qr}rs}st}tu}uv}vw}wx}xy}yz}z{}{|}|}}}~}~}̀}̀́}́̂}̂̃}̃̄}̄̅}̅̆}̆̇}̇̈}̈̉}̉̊}̊̋}̋̌}̌̍}̍̎}̎̏}̏̐}̐̑}̑̒}̒̓}̓̔}̔̕}̖̕}̖̗}̗̘}̘̙}̙̚}̛̚}̛̜}̜̝}̝̞}̞̟}̟̠}̡̠}̡̢}̢̣}̣̤}̤̥}̥̦}̧̦}̧̨}̨̩}̩̪}̪̫}̫̬}̬̭}̭̮}̮̯}̯̰}̰̱}̱̲}̲̳}̴̳}̴̵}̵̶}̶̷}̷̸}̸̹}̹̺}̺̻}̻̼}̼̽}̽̾}̾̿}̿}}}”}Ô}Ĕ}Ŕ}Ɣ}ǔ}Ȕ}ɔ}ʔ}˔}̔}͔}Δ}ϔ}Д}є}Ҕ}Ӕ}Ԕ}8~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~45~56~67~7"  + +      !!h̀̀̀̀̀̀̀̀̀ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀ ̀ !̀!"̀"#̀#$̀$%̀%&̀&'̀'(̀()̀)*̀*+̀+,̀,-̀-.̀./̀/0̀01̀12̀23̀34̀45̀56̀67̀78̀89̀9:̀:;̀;<̀<=̀=>̀>?̀?@̀@ÀAB̀BC̀CD̀DÈEF̀FG̀GH̀HÌIJ̀JK̀KL̀LM̀MǸNÒOP̀PQ̀QR̀RS̀ST̀TÙUV̀VẀWX̀XỲYZ̀Z[̀[\̀\]̀]^̀^_̀_`̀`àab̀bc̀cd̀dèef̀fg̀g.́́́́́́́́́ ́ +́ + ́ ́ ́ ́́́́́́́́́́́́́́́́́́ ́ !́!"́"#́#$́$%́%&́&'́'(́()́)*́*+́+,́,-́-̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂̃̃̃̃̃̃̃̃̃ ̃ +̃ +̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̄ ̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄"̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ̅ !̅!̆̆̆̆̆̆̆̆̆ ̆ +̆ +̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇9̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'(̈()̈)*̈*+̈+,̈,-̈-.̈./̈/0̈01̈12̈23̈34̈45̈56̈67̈78̈8̉̉̉̉̉̉̉̉̉ ̉ +̉ + ̉ ̉ ̉ ̉̉̉̉̉̉̉̉̉̉̉̉̊̊̊̊̊̊̊̊̊ ̊ +̊ +̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̋̋̋̋̌̌̌̌̌̌̌̌̌ ̌ +̌ + ̌ ̌ ̌ ̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌ ̌ !̌!"̌"#̌#$̌$%̌%&̌&'̌'(̌()̌)*̌*+̌+,̌,-̌-.̌./̌/0̌01̌12̌23̌34̌45̌56̌67̌78̌89̌9:̌:;̌;<̌<=̌=>̌>?̌?@̌@ǍAB̌BČCĎDĚEF̌FǦGȞHǏIJ̌JǨKĽLM̌MŇNǑOP̌PQ̌QŘRŠSŤTǓUV̌VW̌WX̌XY̌YŽZ[̌[\̌\]̌]^̌^_̌_`̌`ǎab̌bčcďděef̌fǧgȟhǐiǰjǩkľlm̌mňnǒop̌pq̌qřršsťtǔuv̌vw̌wx̌xy̌yžz{̌{|̌|}̌}~̌~̌̀̌̀́̌́̂̌̂̃̌̃̄̌̄̅̌̅̆̌̆̇̌̇̈̌̈̉̌̉̊̌̊̋̌̋̌̌̌̍̌̍̎̌̎̏̌̏̐̌̐̑̌̑̒̌̒̓̌̓̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍ ̍ !̍!"̍"#̍#$̍$%̍%&̍&'̍'(̍()̍)*̍*+̍+,̍,-̍-.̍./̍/0̍01̍12̍23̍34̍45̍56̍67̍78̍89̍9:̍:;̍;<̍<=̍=>̍>?̍?@̍@A̍AB̍BC̍CD̍DE̍EF̍FG̍GH̍HI̍IJ̍JK̍KL̍LM̍MN̍NO̍OP̍PQ̍QR̍RS̍ST̍TU̍UV̍VW̍WX̍XY̍YZ̍Z[̍[\̍\]̍]^̍^_̍_`̍`a̍ab̍bc̍cd̍de̍ef̍fg̍gh̍hi̍ij̍jk̍kl̍lm̍mn̍no̍op̍pq̍qr̍rs̍st̍tu̍uv̍vw̍wx̍xy̍yz̍z{̍{|̍|}̍}~̍~̍̀̍̀́̍́̂̍̂̃̍̃̄̍̄̅̍̅̆̍̆̇̍̇̈̍̈̉̍̉̊̍̊̋̍̋!̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎ ̎ 9̏̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏ ̏ !̏!"̏"#̏#$̏$%̏%&̏&'̏'(̏()̏)*̏*+̏+,̏,-̏-.̏./̏/0̏01̏12̏23̏34̏45̏56̏67̏78̏8̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐ ̐ !̐!"̐"#̐#$̐$%̐%&̐&'̐'(̐()̐)*̐*+̐+,̐,-̐-.̐./̐/0̐01̐12̐23̐34̐45̐56̐67̐78̐89̐9:̐:;̐;<̐<=̐=>̐>?̐?@̐@A̐AB̐BC̐CD̐DE̐EF̐FG̐GH̐HI̐IJ̐JK̐KL̐LM̐MN̐NO̐OP̐PQ̐QR̐RS̐ST̐TU̐UV̐VW̐WX̐XY̐YZ̐Z[̐[\̐\]̐]^̐^_̐_`̐`a̐ab̐bc̐cd̐de̐ef̐fg̐gh̐hi̐ij̐jk̐kl̐lm̐mn̐no̐op̐pq̐qr̐rs̐st̐tu̐uv̐vw̐wx̐xy̐yz̐z{̐{|̐|}̐}~̐~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̣̣̤̤̥̥̦̦̩̩̪̪̫̫̬̬̭̭̮̮̯̯̰̰̱̱̲̲̳̳̹̹̺̺̻̻̼̼̐̀̐̀́̐́̂̐̂̃̐̃̄̐̄̅̐̅̆̐̆̇̐̇̈̐̈̉̐̉̊̐̊̋̐̋̌̐̌̍̐̍̎̐̎̏̐̏̐̐̐̑̐̑̒̐̒̓̐̓̔̐̔̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̽̐̽̾̐̾̿̐̿̐̐̐̕̕̚̚”̐Ô̐Ĕ̐Ŕ̐Ɣ̐ǔ̐Ȕ̐ɔ̐ʔ̐˔͔̐̔̐̐Δ̐ϔ̐Д̐є̐Ҕ̐Ӕ̐Ԕ̐Ք̐֔̐ה̐ؔ̐ٔ̐ڔ̐۔̐ܔ̐ݔ̐ޔ̐ߔ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐;̑̑̑̑̑̑̑̑̑ ̑ +̑ + ̑ ̑ ̑ ̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑ ̑ !̑!"̑"#̑#$̑$%̑%&̑&'̑'(̑()̑)*̑*+̑+,̑,-̑-.̑./̑/0̑01̑12̑23̑34̑45̑56̑67̑78̑89̑9:̑:#̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒ ̒ !̒!"̒"W̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̓ ̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓ ̓ !̓!"̓"#̓#$̓$%̓%&̓&'̓'(̓()̓)*̓*+̓+,̓,-̓-.̓./̓/0̓01̓12̓23̓34̓45̓56̓67̓78̓89̓9:̓:;̓;<̓<=̓=>̓>?̓?@̓@A̓AB̓BC̓CD̓DE̓EF̓FG̓GH̓HI̓IJ̓JK̓KL̓LM̓MN̓NO̓OP̓PQ̓QR̓RS̓ST̓TU̓UV̓V0̔̔̔̔̔̔̔̔̔ ̔ +̔ + ̔ ̔ ̔ ̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔ ̔ !̔!"̔"#̔#$̔$%̔%&̔&'̔'(̔()̔)*̔*+̔+,̔,-̔-.̔./̔/̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̖̖̖̖̖̖̖̖̖̕ ̖ +̖ +̗̗̗̗̗̗̗̗̗ ̗ +̗ + ̗ ̗ ̗ ̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗Z̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ ̘ ̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘ ̘ !̘!"̘"#̘#$̘$%̘%&̘&'̘'(̘()̘)*̘*+̘+,̘,-̘-.̘./̘/0̘01̘12̘23̘34̘45̘56̘67̘78̘89̘9:̘:;̘;<̘<=̘=>̘>?̘?@̘@A̘AB̘BC̘CD̘DE̘EF̘FG̘GH̘HI̘IJ̘JK̘KL̘LM̘MN̘NO̘OP̘PQ̘QR̘RS̘ST̘TU̘UV̘VW̘WX̘XY̘Y#̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙ ̙ !̙!"̙"̚̚̚̚̚̚̚̚̚ ̚ +̚ +̛̛̛̛̛̛̛̛̛ ̛ +̛ + ̛ ̛ ̛ ̛̛9̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜ ̜ !̜!"̜"#̜#$̜$%̜%&̜&'̜'(̜()̜)*̜*+̜+,̜,-̜-.̜./̜/0̜01̜12̜23̜34̜45̜56̜67̜78̜8̝̝̝̝̝̝̝̝̝ ̝ +̝ + ̝ ̝ ̝ ̝̝̝̝̝̝̝̝̝̝̝̝̞̞̞̞̞̞̞̞̞ ̞ +̞ +̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̠̠̠̠̠̠̠̠̠ ̠ +̠ + ̠ ̠ ̠ ̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠ ̠ !̠!"̠"#̠#$̠$%̠%&̠&'̠'(̠()̠)*̠*+̠+,̠,-̠-.̠./̠/0̠01̠12̠23̠34̠45̠56̠67̠78̠89̠9:̠:;̠;<̠<=̠=>̠>?̠?@̠@A̠AB̠BC̠CD̠DE̠EF̠FG̠GH̠HI̠IJ̠JK̠KL̠LM̠MN̠NO̠OP̠PQ̠QR̠RS̠ST̠TU̠UV̠VW̠WX̠XY̠YZ̠Z[̠[\̠\]̠]^̠^_̠_`̠`a̠ab̠bc̠cd̠de̠ef̠fg̠gh̠hi̠ij̠jk̠kl̠lm̠mn̠no̠op̠pq̠qr̠rs̠st̠tu̠uv̠vw̠wx̠xy̠yz̠z{̠{|̠|}̠}~̠~̡̡̡̡̡̡̡̡̡̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̖̠̖̗̠̗̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕ ̡ +̡ + ̡ ̡ ̡ ̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡ ̡ !̡!"̡"#̡#$̡$%̡%&̡&'̡'(̡()̡)*̡*+̡+,̡,-̡-.̡./̡/0̡01̡12̡23̡34̡45̡56̡67̡78̡89̡9:̡:;̡;<̡<=̡=>̡>?̡?@̡@A̡AB̡BC̡CD̡DE̡EF̡FG̡GH̡HI̡IJ̡JK̡KL̡LM̡MN̡NO̡OP̡PQ̡QR̡RS̡ST̡TU̡UV̡VW̡WX̡XY̡YZ̡Z[̡[\̡\]̡]^̡^_̡_`̡`a̡ab̡bc̡cd̡de̡ef̡fg̡gh̡hi̡ij̡jk̡kl̡lm̡mn̡no̡op̡pq̡qr̡rs̡st̡tu̡uv̡vw̡wx̡xy̡yz̡z{̡{|̡|}̡}~̡~̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̢̢̢̢̢̢̢̢̢̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕̚̚ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢̢̢̢̣̣̣̣̣̣̣̣̣ ̣ +̣ +̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤̤̤̤̤̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̦̦̦̦̦̦̦̦̦ ̦ +̦ + ̦ ̦ ̦ ̦̦̦̦̦̦̦̦̦Ķ̧̧̧̧̧̧̧̧ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧ ̧ !̧!"̧"#̧#$̧$%̧%&̧&'̧'(̧()̧)*̧*+̧+,̧,-̧-.̧./̧/0̧01̧12̧23̧34̧45̧56̧67̧78̧89̧9:̧:;̧;<̧<=̧=>̧>?̧?@̧@A̧AB̧BÇCḐDȨEF̧FĢGḨHI̧IJ̧JL̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨ ̨ !̨!"̨"#̨#$̨$%̨%&̨&'̨'(̨()̨)*̨*+̨+,̨,-̨-.̨./̨/0̨01̨12̨23̨34̨45̨56̨67̨78̨89̨9:̨:;̨;<̨<=̨=>̨>?̨?@̨@ĄAB̨BC̨CD̨DĘEF̨FG̨GH̨HĮIJ̨JK̨K9̩̩̩̩̩̩̩̩̩ ̩ +̩ + ̩ ̩ ̩ ̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩ ̩ !̩!"̩"#̩#$̩$%̩%&̩&'̩'(̩()̩)*̩*+̩+,̩,-̩-.̩./̩/0̩01̩12̩23̩34̩45̩56̩67̩78̩8K̪̪̪̪̪̪̪̪̪ ̪ +̪ + ̪ ̪ ̪ ̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪ ̪ !̪!"̪"#̪#$̪$%̪%&̪&'̪'(̪()̪)*̪*+̪+,̪,-̪-.̪./̪/0̪01̪12̪23̪34̪45̪56̪67̪78̪89̪9:̪:;̪;<̪<=̪=>̪>?̪?@̪@A̪AB̪BC̪CD̪DE̪EF̪FG̪GH̪HI̪IJ̪JH̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ !̫!"̫"#̫#$̫$%̫%&̫&'̫'(̫()̫)*̫*+̫+,̫,-̫-.̫./̫/0̫01̫12̫23̫34̫45̫56̫67̫78̫89̫9:̫:;̫;<̫<=̫=>̫>?̫?@̫@A̫AB̫BC̫CD̫DE̫EF̫FG̫G9̬̬̬̬̬̬̬̬̬ ̬ +̬ + ̬ ̬ ̬ ̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬ ̬ !̬!"̬"#̬#$̬$%̬%&̬&'̬'(̬()̬)*̬*+̬+,̬,-̬-.̬./̬/0̬01̬12̬23̬34̬45̬56̬67̬78̬89̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭ ̭ !̭!"̭"#̭#$̭$%̭%&̭&'̭'(̭()̭)*̭*+̭+,̭,-̭-.̭./̭/0̭01̭12̭23̭34̭45̭56̭67̭78̭8W̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*+̮+,̮,-̮-.̮./̮/0̮01̮12̮23̮34̮45̮56̮67̮78̮89̮9:̮:;̮;<̮<=̮=>̮>?̮?@̮@A̮AB̮BC̮CD̮DE̮EF̮FG̮GḪHI̮IJ̮JK̮KL̮LM̮MN̮NO̮OP̮PQ̮QR̮RS̮ST̮TU̮UV̮VW̯̯̯̯̯̯̯̯̯ ̯ +̯ + ̯ ̯ ̯ ̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯ ̯ !̯!"̯"#̯#$̯$%̯%&̯&'̯'(̯()̯)*̯*+̯+,̯,-̯-.̯./̯/0̯01̯12̯23̯34̯45̯56̯67̯78̯89̯9:̯:;̯;<̯<=̯=>̯>?̯?@̯@A̯AB̯BC̯CD̯DE̯EF̯FG̯GH̯HI̯IJ̯JK̯KL̯LM̯MN̯NO̯OP̯PQ̯QR̯RS̯ST̯TU̯UV̯VW̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰ ̰ !̰!"̰"#̰#$̰$%̰%&̰&'̰'(̰()̰)*̰*+̰+,̰,-̰-.̰./̰/0̰01̰12̰23̰34̰45̰56̰67̰78̰89̰9:̰:;̰;<̰<=̰=>̰>?̰?@̰@A̰AB̰BC̰CD̰DḚEF̰FG̰GH̰HḬIJ̰JK̰KL̰LM̰MN̰NO̰OP̰PQ̰QR̰RS̰ST̰TṴUV̰VW̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱ ̱ !̱!"̱"#̱#$̱$%̱%&̱&'̱'(̱()̱)*̱*+̱+,̱,-̱-.̱./̱/0̱01̱12̱23̱34̱45̱56̱67̱78̱89̱9:̱:;̱;<̱<=̱=>̱>?̱?@̱@A̱AḆBC̱CḎDE̱EF̱FG̱GH̱HI̱IJ̱JḴKḺLM̱MṈNO̱OP̱PQ̱QṞRS̱SṮTU̱UV̱VT̲̲̲̲̲̲̲̲̲ ̲ +̲ + ̲ ̲ ̲ ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ ̲ !̲!"̲"#̲#$̲$%̲%&̲&'̲'(̲()̲)*̲*+̲+,̲,-̲-.̲./̲/0̲01̲12̲23̲34̲45̲56̲67̲78̲89̲9:̲:;̲;<̲<=̲=>̲>?̲?@̲@A̲AB̲BC̲CD̲DE̲EF̲FG̲GH̲HI̲IJ̲JK̲KL̲LM̲MN̲NO̲OP̲PQ̲QR̲RS̲S̳̳̳̳̳̳̳̳̳ ̳ +̳ +̴̴̴̴̴̴̴̴̴ ̴ +̴ + ̴ ̴ ̴ ̴̴8̵̵̵̵̵̵̵̵̵ ̵ +̵ + ̵ ̵ ̵ ̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵ ̵ !̵!"̵"#̵#$̵$%̵%&̵&'̵'(̵()̵)*̵*+̵+,̵,-̵-.̵./̵/0̵01̵12̵23̵34̵45̵56̵67̵7̶̶̶̶̶̶̶̶̶ ̶ +̶ +̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷+̸̸̸̸̸̸̸̸̸ ̸ +̸ + ̸ ̸ ̸ ̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸ ̸ !̸!"̸"#̸#$̸$%̸%&̸&'̸'(̸()̸)*̸*Q̹̹̹̹̹̹̹̹̹ ̹ +̹ + ̹ ̹ ̹ ̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹ ̹ !̹!"̹"#̹#$̹$%̹%&̹&'̹'(̹()̹)*̹*+̹+,̹,-̹-.̹./̹/0̹01̹12̹23̹34̹45̹56̹67̹78̹89̹9:̹:;̹;<̹<=̹=>̹>?̹?@̹@A̹AB̹BC̹CD̹DE̹EF̹FG̹GH̹HI̹IJ̹JK̹KL̹LM̹MN̹NO̹OP̹P#̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺ ̺ !̺!"̺"%̻̻̻̻̻̻̻̻̻ ̻ +̻ + ̻ ̻ ̻ ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ ̻ !̻!"̻"#̻#$̻$^̼̼̼̼̼̼̼̼̼ ̼ +̼ + ̼ ̼ ̼ ̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼ ̼ !̼!"̼"#̼#$̼$%̼%&̼&'̼'(̼()̼)*̼*+̼+,̼,-̼-.̼./̼/0̼01̼12̼23̼34̼45̼56̼67̼78̼89̼9:̼:;̼;<̼<=̼=>̼>?̼?@̼@A̼AB̼BC̼CD̼DE̼EF̼FG̼GH̼HI̼IJ̼JK̼KL̼LM̼MN̼NO̼OP̼PQ̼QR̼RS̼ST̼TU̼UV̼VW̼WX̼XY̼YZ̼Z[̼[\̼\]̼]̽̽̽̽̽̽̽̽̽ ̽ +̽ +̾̾̾̾̾̾̾̾̾ ̾ +̾ + ̾ ̾ ̾ ̾̾<̿̿̿̿̿̿̿̿̿ ̿ +̿ + ̿ ̿ ̿ ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ ̿ !̿!"̿"#̿#$̿$%̿%&̿&'̿'(̿()̿)*̿*+̿+,̿,-̿-.̿./̿/0̿01̿12̿23̿34̿45̿56̿67̿78̿89̿9:̿:;̿; + + + + 4 + +  !!""##$$%%&&''(())**++,,--..//00112233P + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO7 + +  !!""##$$%%&&''(())**++,,--..//00112233445566$ + +  !!""##] + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\ + + + + < + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;; + + + + D + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCw + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvv@ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??' + +  !!""##$$%%&&` + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__ + + + + < + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;; + + + + M + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLL + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̡̡̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̕̕̚̚P + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO^ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]] + + + + < + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;; + + + +  + + % + +  !!""##$$" + +  !!P + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO] + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\^ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]] + +> + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<== + +  + +  + +  + +  + + 3 + +  !!""##$$%%&&''(())**++,,--..//001122# + +  !!"" + + 0 + +  !!""##$$%%&&''(())**++,,--..// + +  + +  + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓@ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??E + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDD  + +  + + ( + +  !!""##$$%%&&'' + + 2 + +  !!""##$$%%&&''(())**++,,--..//0011 + + B + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA + + >  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==@  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??"  + +      !!Y  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXK  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJ  + +   %  + +      !!""##$$S  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRD  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC4           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 3Y + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*+ ++, +,- +-. +./ +/0 +01 +12 +23 +34 +45 +56 +67 +78 +89 +9: +:; +;< +<= +=> +>? +?@ +@A +AB +BC +CD +DE +EF +FG +GH +HI +IJ +JK +KL +LM +MN +NO +OP +PQ +QR +RS +ST +TU +UV +VW +WX +X           + +                              + +             >           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= =5  + +      !!""##$$%%&&''(())**++,,--..//0011223344  + +    @  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??  + +  + +    D  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +   + +      + +      + +      + +    ,  + +      !!""##$$%%&&''(())**++\  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[u  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrsstt!  + +      i  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhl  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkk9  + +      !!""##$$%%&&''(())**++,,--..//001122334455667788O           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN Nk!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!./!/0!01!12!23!34!45!56!67!78!89!9:!:;!;<!<=!=>!>?!?@!@A!AB!BC!CD!DE!EF!FG!GH!HI!IJ!JK!KL!LM!MN!NO!OP!PQ!QR!RS!ST!TU!UV!VW!WX!XY!YZ!Z[![\!\]!]^!^_!_`!`a!ab!bc!cd!de!ef!fg!gh!hi!ij!j""""""""" " +" + " " " """""""""Ԕ######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/0#01#12#23#34#45#56#67#78#89#9:#:;#;<#<=#=>#>?#?@#@A#AB#BC#CD#DE#EF#FG#GH#HI#IJ#JK#KL#LM#MN#NO#OP#PQ#QR#RS#ST#TU#UV#VW#WX#XY#YZ#Z[#[\#\]#]^#^_#_`#`a#ab#bc#cd#de#ef#fg#gh#hi#ij#jk#kl#lm#mn#no#op#pq#qr#rs#st#tu#uv#vw#wx#xy#yz#z{#{|#|}#}~#~#̀#̀́#́̂#̂̃#̃̄#̄̅#̅̆#̆̇#̇̈#̈̉#̉̊#̊̋#̋̌#̌̍#̍̎#̎̏#̏̐#̐̑#̑̒#̒̓#̓̔#̔̕#̖̕#̖̗#̗̘#̘̙#̙̚#̛̚#̛̜#̜̝#̝̞#̞̟#̟̠#̡̠#̡̢#̢̣#̣̤#̤̥#̥̦#̧̦#̧̨#̨̩#̩̪#̪̫#̫̬#̬̭#̭̮#̮̯#̯̰#̰̱#̱̲#̲̳#̴̳#̴̵#̵̶#̶̷#̷̸#̸̹#̹̺#̺̻#̻̼#̼̽#̽̾#̾̿#̿###”#Ô#Ĕ#Ŕ#Ɣ#ǔ#Ȕ#ɔ#ʔ#˔#̔#͔#Δ#ϔ#Д#є#Ҕ#3$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$2.%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%->&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9:&:;&;<&<=&=4''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'3'((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&))))))))) ) +) + ) ) ) )))))))))))))))********* * +* + * * * *****+++++++++ + ++ + + + + +,,,,,,,,, , +, + , , --------- - +- + - - - --------B......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A.A///////// / +/ +000000000 0 +0 + 0 0 0 00111111111 1 +1 + 1 1 1 1111111111222222222 2 +2 + 2 2 2 2222222220333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/,444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+4555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/0501512523533666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/060161262777777777 7 +7 +888888888 8 +8 + 8 8 8 8888888999999999 9 +9 + 9 9 9 9999999999::::;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;<<<<<<<<< < +< + < < < ========= = += + = = = ==>>>>>>>>> > +> + > > > >>>>>>>>>3????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?2#@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"AAAAAAAAA A +A + A A A AAAAAAAAAAAAAA0BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/CCCCCCCCC C +C + C C C CCCCCCCCCCDDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.D./D/0D01D12D23D34D45D56D67D78D89D9:D:;D;<D<=D=>D>?D?@D@ADABDBCDCDDDEDEFDFGDGHDHIDIJDJKDKLDLMDMNDNODOPDPQDQRDRSDSTDTUDUVDVWDWXDXYDYZDZ[D[\D\]D]^D^_D_`D`aDabDbcDcdDdeDefDfgDghDhiDijDjkDklDlmDmnDnoDopDpqDqrDrsDstDtuDuvDvwDwxDxyDyzDz{D{|D|}D}~D~D̀D̀́D́̂D̂̃D̃̄D̄̅D̅̆D̆̇Ḋ̈D̈̉D̉̊D̊̋D̋̌Ď̍D̍EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E78E89E9:E:;E;<E<=E=>E>?E?@E@AEABEBCECDEDEEEFEFGEGHEHIEIJEJKEKLELMEMNENOEOPEPQEQRERSESTETUEUVEVWEWXEXYEYZEZ[E[\E\]E]^E^_E_`E`aEabEbcEcdEdeEefEfgEghEhiEijEjkEklElmEmnEnoEopEpqEqrErsEstEtuEuvEvwEwxExyEyzEz{E{|E|}E}~E~ÈÈ́É̂ỄẼ̄Ē̅E̅̆Ĕ̇Ė̈Ë̉Ẻ̊E̊̋E̋̌Ě̍E̍̎E̎̏Ȅ̐E̐̑Ȇ̒E̒̓E̓@FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9:F:;F;<F<=F=>F>?F?EGGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/0G01G12G23G34G45G56G67G78G89G9:G:;G;<G<=G=>G>?G?@G@AGABGBCGCDGD HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHHIIIIIIIJJJJJJJJJ J +J + J J J JJJJJJJJJJ(KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'LLLLLLLLL L +L + L L L LLLLLMMMMMMMMM M +M + M M M MMMMMMMMM>NNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9:N:;N;<N<=N=5OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O01O12O23O34O4 PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPPQQQQQQQQQ Q +Q + Q Q Q QQRRRRRRRRR R +R + R R R RRRRRRRRRR,SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+ITTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=>T>?T?@T@ATABTBCTCDTDETEFTFGTGHTHdUUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)*U*+U+,U,-U-.U./U/0U01U12U23U34U45U56U67U78U89U9:U:;U;<U<=U=>U>?U?@U@AUABUBCUCDUDEUEFUFGUGHUHIUIJUJKUKLULMUMNUNOUOPUPQUQRURSUSTUTUUUVUVWUWXUXYUYZUZ[U[\U\]U]^U^_U_`U`aUabUbcUc!VVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V pWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWKLWLMWMNWNOWOPWPQWQRWRSWSTWTUWUVWVWWWXWXYWYZWZ[W[\W\]W]^W^_W_`W`aWabWbcWcdWdeWefWfgWghWhiWijWjkWklWlmWmnWnoWoԔXXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>?X?@X@AXABXBCXCDXDEXEFXFGXGHXHIXIJXJKXKLXLMXMNXNOXOPXPQXQRXRSXSTXTUXUVXVWXWXXXYXYZXZ[X[\X\]X]^X^_X_`X`aXabXbcXcdXdeXefXfgXghXhiXijXjkXklXlmXmnXnoXopXpqXqrXrsXstXtuXuvXvwXwxXxyXyzXz{X{|X|}X}~X~X̀X̀́X́̂X̂̃X̃̄X̄̅X̅̆X̆̇Ẋ̈Ẍ̉X̉̊X̊̋X̋̌X̌̍X̍̎X̎̏X̏̐X̐̑X̑̒X̒̓X̓̔X̔̕X̖̕X̖̗X̗̘X̘̙X̙̚X̛̚X̛̜X̜̝X̝̞X̞̟X̟̠X̡̠X̡̢X̢̣X̣̤X̤̥X̥̦X̧̦X̧̨X̨̩X̩̪X̪̫X̫̬X̬̭X̭̮X̮̯X̯̰X̰̱X̱̲X̲̳X̴̳X̴̵X̵̶X̶̷X̷̸X̸̹X̹̺X̺̻X̻̼X̼̽X̽̾X̾̿X̿XXX”XÔXĔXŔXƔXǔXȔXɔXʔX˔X̔X͔XΔXϔXДXєXҔX3YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y2.ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z->[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:;[;<[<=[=4\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$%\%&\&'\'(\()\)*\*+\+,\,-\-.\./\/0\01\12\23\3']]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^_________ _ +_ + _ _ _ _````````` ` +` + ` ` aaaaaaaaa a +a + a a a aabbbbbbbbb b +b + b b b bbbbbbbbbbccccccccc c +c + c c c ccccccccc-ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,+eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*4fffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$%f%&f&'f'(f()f)*f*+f+,f,-f-.f./f/0f01f12f23f3/ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g()g)*g*+g+,g,-g-.g.hhhhhhhhh h +h +iiiiiiiii i +i + i i i iiiiiiijjjjjjjjj j +j + j j j jjjjjjjjjjjkkkklllllllll l +l + l l l llllllllllllmmmmmmmmm m +m + m m m nnnnnnnnn n +n + n n n nnooooooooo o +o + o o o ooooooooo-ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,#qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"rrrrrrrrr r +r + r r r rrrrrrrrrrrrrr0sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/0t01t12t23t34t45t56t67t78t89t9:t:;t;<t<=t=>t>?t?@t@AtABtBCtCDtDEtEFtFGtGHtHItIJtJKtKLtLMtMNtNOtOPtPQtQRtRStSTtTUtUVtVWtWXtXYtYZtZ[t[\t\]t]^t^_t_`t`atabtbctcdtdeteftfgtghthitijtjktkltlmtmntnotoptpqtqrtrststttutuvtvwtwxtxytyztz{t{|t|}t}~t~t̀t̀́t́̂t̂̃t̃̄t̄̅t̅̆t̆̇ṫ̈ẗ̉t̉̊t̊̋t̋̌ť̍t̍uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>?u?@u@AuABuBCuCDuDEuEFuFGuGHuHIuIJuJKuKLuLMuMNuNOuOPuPQuQRuRSuSTuTUuUVuVWuWXuXYuYZuZ[u[\u\]u]^u^_u_`u`auabubcucdudeuefufgughuhiuijujkuklulmumnunouopupquqrursustutuuuvuvwuwxuxyuyzuz{u{|u|}u}~u~ùù́ú̂û̃ũ̄ū̅u̅̆ŭ̇u̇̈ü̉ủ̊ů̋ű̌ǔ̍u̍̎u̎̏ȕ̐u̐̑ȗ̒u̒̓u̓@vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23v34v45v56v67v78v89v9:v:;v;<v<=v=>v>?v?Ewwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w./w/0w01w12w23w34w45w56w67w78w89w9:w:;w;<w<=w=>w>?w?@w@AwABwBCwCDwDxxxxxxxyyyyyyyyy y +y + y y y yyyyyyyyyy4zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z01z12z23z3{{{{{{{||||||||| | +| + | | | |||||||||>}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/0}01}12}23}34}45}56}67}78}89}9:}:;};<}<=}=5~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)*~*+~+,~,-~-.~./~/0~01~12~23~34~4   + +      + +      + +    3  + +      !!""##$$%%&&''(())**++,,--..//001122I  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHd  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbcc!  + +      .  + +      !!""##$$%%&&''(())**++,,--Ԕ  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̖̖̗̗̘̘̙̙̜̜̝̝̞̞̟̟̠̠̣̣̤̤̥̥̦̦̩̩̪̪̫̫̬̬̭̭̮̮̯̯̰̰̱̱̲̲̳̳̹̹̺̺̻̻̼̼̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̽̽̾̾̿̿̕̕̚̚”ÔĔŔƔǔȔɔʔ˔͔̔ΔϔДєҔ3  + +      !!""##$$%%&&''(())**++,,--..//001122.  + +      !!""##$$%%&&''(())**++,,-->  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==4  + +      !!""##$$%%&&''(())**++,,--..//00112233'  + +      !!""##$$%%&&  + +      + +      + +     + +      + +      + +      + +     + +    +  + +      !!""##$$%%&&''(())**rHdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherItypestartenddeclarationspecifierssourceExportNamedDeclarationrJtypestartendlocalexportedExportSpecifierrKtypestartendnameIdentifierSimPacketKIdentifierSimPacketIExportNamedDeclaration +7 +MJExportSpecifier +@ +JKIdentifier +@ +JSimConnectKIdentifier +@ +JSimConnectIExportNamedDeclaration-6-IJExportSpecifier-?-FKIdentifier-?-FSimHostKIdentifier-?-FSimHostIExportNamedDeclaration<8}+j%x%tz@M*VPop*puu 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 { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(9:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objType == 1 || this.simObj.objType == 2) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(11:9)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simObj.ip); + Text.debugLine("components/Table.ets(12:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址:" + this.simObj.mac); + Text.debugLine("components/Table.ets(14:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }); + } + else if (this.simObj.objType == 3) { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(17:9)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址:" + this.simObj.mac); + Text.debugLine("components/Table.ets(18:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(2, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class TableChart extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get simObj() { + return this.__simObj.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(32:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objType == 2) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Table.ets(35:11)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("端口" + item.port.toString() + ":"); + Text.debugLine("components/Table.ets(36:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.net); + Text.debugLine("components/Table.ets(38:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Row.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.routerTable, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + }); + } + else if (this.simObj.objType == 3) { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Table.ets(43:11)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("端口" + item.port.toString() + ":"); + Text.debugLine("components/Table.ets(44:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.net); + Text.debugLine("components/Table.ets(46:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Row.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.switchTable, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(2, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class sendHost extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simPacket = new SynchedPropertyNesedObjectPU(params.simPacket, this, "simPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__simPacket.set(params.simPacket); + } + updateStateVars(params) { + this.__simPacket.set(params.simPacket); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get simPacket() { + return this.__simPacket.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(61:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.simPacket.sendHost); + Text.debugLine("components/Table.ets(62:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simPacket.targetIp); + Text.debugLine("components/Table.ets(63:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.simPacket.targetMac); + Text.debugLine("components/Table.ets(64:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送数据包大小:" + this.simPacket.size); + Text.debugLine("components/Table.ets(65:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已发送数据包数量:" + 1); + Text.debugLine("components/Table.ets(66:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要发送的数据包总数:" + 1); + Text.debugLine("components/Table.ets(67:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class targetHost extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simPacket = new SynchedPropertyNesedObjectPU(params.simPacket, this, "simPacket"); + this.host = undefined; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + this.__simPacket.set(params.simPacket); + if (params.host !== undefined) { + this.host = params.host; + } + } + updateStateVars(params) { + this.__simPacket.set(params.simPacket); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + get simPacket() { + return this.__simPacket.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(80:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.host); + Text.debugLine("components/Table.ets(81:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simPacket.targetIp); + Text.debugLine("components/Table.ets(82:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.simPacket.targetMac); + Text.debugLine("components/Table.ets(83:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收数据包大小:" + this.simPacket.size); + Text.debugLine("components/Table.ets(84:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已接收数据包数量:" + this.host); + Text.debugLine("components/Table.ets(85:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要接收的数据包总数:" + this.host); + Text.debugLine("components/Table.ets(86:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +//# sourceMappingURL=Table.js.map9E:\jiaocai\ensp14\entry\src\main\ets\components\Table.etsrBmoduleNameisLocalDependencyisNodeEntryFilepkgPathbelongProjectPathpkgNamepkgVersiondependencyPkgInfohostModulesInfobelongModulePathentry·E:\jiaocai\ensp14\entryE:\jiaocai\ensp14entry1.0.0rChostDependencyNamehostModuleName./TableentryE:\jiaocai\ensp14\entryimport { SimPacket } from '../classes/OtherSimObjects' +import { SimBase, Table } from '../classes/SimBase' + +@Component +export struct NetworkChart { + @ObjectLink simObj: SimBase + + build() { + Column() { + if (this.simObj.objType == 1 || this.simObj.objType == 2) { + Column() { + Text("IP地址:" + this.simObj.ip) + + Text("Mac地址:" + this.simObj.mac) + } + } else if (this.simObj.objType == 3) { + Column() { + Text("Mac地址:" + this.simObj.mac) + } + } + } + .width('100%') + .height('100%') + } +} + +@Component +export struct TableChart { + @ObjectLink simObj: SimBase + + build() { + Column() { + if (this.simObj.objType == 2) { + ForEach(this.simObj.routerTable, (item: Table) => { + Row() { + Text("端口" + item.port.toString() + ":") + + Text(item.net) + } + }) + } else if (this.simObj.objType == 3) { + ForEach(this.simObj.switchTable, (item: Table) => { + Row() { + Text("端口" + item.port.toString() + ":") + + Text(item.net) + } + }) + } + } + .width('100%') + .height('100%') + } +} + +@Component +export struct sendHost { + @ObjectLink simPacket: SimPacket + + build() { + Column() { + Text("发送主机:" + this.simPacket.sendHost) + Text("IP地址:" + this.simPacket.targetIp) + Text("Mac地址;" + this.simPacket.targetMac) + Text("发送数据包大小:" + this.simPacket.size) + Text("已发送数据包数量:" + 1) + Text("需要发送的数据包总数:" + 1) + } + .width('100%') + .height('100%') + } +} + +@Component +export struct targetHost { + @ObjectLink simPacket: SimPacket + host: string + + build() { + Column() { + Text("发送主机:" + this.host) + Text("IP地址:" + this.simPacket.targetIp) + Text("Mac地址;" + this.simPacket.targetMac) + Text("接收数据包大小:" + this.simPacket.size) + Text("已接收数据包数量:" + this.host) + Text("需要接收的数据包总数:" + this.host) + } + .width('100%') + .height('100%') + } +}ArDversionfilesourceRootsourcesnamesmappingsTable.jsTable.etsڔ 3  +  + +   +   +  +    # ' !( ", &0 *1 +7 18 2? 9C =D >F @ + + +" + + $ + . 2 3 9 $: %< ' +  +  + $ , / 3 4 : %; &> ) +  +  + +   !($,(-)/+" +$,/34:%;&>) +  +   +   +  +22 +2 2  +33 3 3 +  +    # ' !( "* $!! " +#" $" +'" # $#,#0#3#7#8#<#!=#"E#*G#,J#/M#2$# (## # % $%,%0%1%4%$% (%% %" +" ;!?!@!F!G!R!'!#!!! (( ((( (!((($,((-()/(+)) * +#* $* +'* + $+,+0+3+7+8+<+!=+"E+*G+,J+/M+2$+ (++ + - $-,-0-1-4-$- (-- -* +* ;)?)@)F)G)R)')#))) 0 0 +488 887599; << + << +DD +D D << +EE E E<< + == += ="=&='=0=#1=$9=,== += = + >> +> >">&>'>0>#1>$9>,>> +> > + ?? +? ?#?'?(?1?$2?%;?.?? +? ? + @@ +@ "@%@)@*@3@&4@'8@+@@ +@ @ + AA +A #A&A'AAA +A A + BB +B %B(B)BBB +B B +<< +FJJ JJIGKKN OO + OO +WW +W W OO +XX X XOO + PP +P P"P&P'P+PPP +P P + QQ +Q Q"Q&Q'Q0Q#1Q$9Q,QQ +Q Q + RR +R R#R'R(R1R$2R%;R.RR +R R + SS +S "S%S)S*S3S&4S'8S+SS +S S + TT +T #T&T*T+T/T"TT +T T + UU +U %U(U,U-U 1U$UU +U U +OO +YrEversionfilesourcessourcesContentnamesmappings, + +  !!""##$$%%&&''(())**++Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY1  + +      !!""##$$%%&&''(())**++,,--..//00)          + +                    ! !" "# #$ $% %& &' '( (+ + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + + + + + ! +!" +"# +#$ +$% +%& +&' +'( +() +)* +*                 + +                  +          + +                    ! !" "# #$ $% %& &' '( () )* *3  + +      !!""##$$%%&&''(())**++,,--..//001122:  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +    +  + +      !!""##$$%%&&''(())**6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +    %  + +      !!""##$$  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    <  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;#  + +      !!""$          + +                    ! !" "# #%!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$""""""""" " +" + " " " """""""""""""""""######### # +# + # # # #:$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$01$12$23$34$45$56$67$78$89$9%%%%%%%%% % +% + % % F&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9:&:;&;<&<=&=>&>?&?@&@A&AB&BC&CD&DE&ED''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+,',-'-.'./'/0'01'12'23'34'45'56'67'78'89'9:':;';<'<='=>'>?'?@'@A'AB'BC'C((((((((( ( +( + ( ( ( ((((((((((((I))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CD)DE)EF)FG)GH)H<********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*01*12*23*34*45*56*67*78*89*9:*:;*;R+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$%+%&+&'+'(+()+)*+*+++,+,-+-.+./+/0+01+12+23+34+45+56+67+78+89+9:+:;+;<+<=+=>+>?+?@+@A+AB+BC+CD+DE+EF+FG+GH+HI+IJ+JK+KL+LM+MN+NO+OP+PQ+QP,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;<,<=,=>,>?,?@,@A,AB,BC,CD,DE,EF,FG,GH,HI,IJ,JK,KL,LM,MN,NO,O*--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'(-()-)I......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9:.:;.;<.<=.=>.>?.?@.@A.AB.BC.CD.DE.EF.FG.GH.H1///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$%/%&/&'/'(/()/)*/*+/+,/,-/-././//0/0+000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*111111111 1 +1 + 1 1 1 1111111111111F222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<=2=>2>?2?@2@A2AB2BC2CD2DE2E333333333 3 +3 + 3 3 3 33333333333R444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$%4%&4&'4'(4()4)*4*+4+,4,-4-.4./4/040141242343444545646747848949:4:;4;<4<=4=>4>?4?@4@A4AB4BC4CD4DE4EF4FG4GH4HI4IJ4JK4KL4LM4MN4NO4OP4PQ4QP555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050151252353454555656757858959:5:;5;<5<=5=>5>?5?@5@A5AB5BC5CD5DE5EF5FG5GH5HI5IJ5JK5KL5LM5MN5NO5O@666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$%6%&6&'6'(6()6)*6*+6+,6,-6-.6./6/060161262363464565666767868969:6:;6;<6<=6=>6>?6?H777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@A7AB7BC7CD7DE7EF7FG7G1888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/080)999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9(::::::::: : +: + : : : :::::::::::::F;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;./;/0;01;12;23;34;45;56;67;78;89;9:;:;;;<;<=;=>;>?;?@;@A;AB;BC;CD;DE;E<<<<<<<<< < +< + < < < <<<<<<<<<<<!========= = += + = = = ================== = R>>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)*>*+>+,>,->-.>./>/0>01>12>23>34>45>56>67>78>89>9:>:;>;<><=>=>>>?>?@>@A>AB>BC>CD>DE>EF>FG>GH>HI>IJ>JK>KL>LM>MN>NO>OP>PQ>QP????????? ? +? + ? ? ? ?????????????????? ? !?!"?"#?#$?$%?%&?&'?'(?()?)*?*+?+,?,-?-.?./?/0?01?12?23?34?45?56?67?78?89?9:?:;?;<?<=?=>?>???@?@A?AB?BC?CD?DE?EF?FG?GH?HI?IJ?JK?KL?LM?MN?NO?OB@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,-@-.@./@/0@01@12@23@34@45@56@67@78@89@9:@:;@;<@<=@=>@>?@?@@@A@AHAAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+,A,-A-.A./A/0A01A12A23A34A45A56A67A78A89A9:A:;A;<A<=A=>A>?A?@A@AAABABCACDADEAEFAFGAG1BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBBBB B !B!"B"#B#$B$%B%&B&'B'(B()B)*B*+B+,B,-B-.B./B/0B0)CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C(DDDDDDDDD D +D + D D D DDDDDDDDDDDDDFEEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E78E89E9:E:;E;<E<=E=>E>?E?@E@AEABEBCECDEDEEEFFFFFFFFF F +F + F F F FFFFFFFFFFF!GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G #HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"IIIIIIIII I +I + I I I IIIIIIIJJJJJJJJJ J +J + J J J J2KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K1<LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&'L'(L()L)*L*+L+,L,-L-.L./L/0L01L12L23L34L45L56L67L78L89L9:L:;L;RMMMMMMMMM M +M + M M M MMMMMMMMMMMMMMMMMM M !M!"M"#M#$M$%M%&M&'M'(M()M)*M*+M+,M,-M-.M./M/0M01M12M23M34M45M56M67M78M89M9:M:;M;<M<=M=>M>?M?@M@AMABMBCMCDMDEMEFMFGMGHMHIMIJMJKMKLMLMMMNMNOMOPMPQMQPNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9:N:;N;<N<=N=>N>?N?@N@ANABNBCNCDNDENEFNFGNGHNHINIJNJKNKLNLMNMNNNONO*OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)IPPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$%P%&P&'P'(P()P)*P*+P+,P,-P-.P./P/0P01P12P23P34P45P56P67P78P89P9:P:;P;<P<=P=>P>?P?@P@APABPBCPCDPDEPEFPFGPGHPH1QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q0+RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*SSSSSSSSS S +S + S S S SSSSSSSSSSSSSFTTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T67T78T89T9:T:;T;<T<=T=>T>?T?@T@ATABTBCTCDTDETEUUUUUUUUU U +U + U U U UUUUUUUUUUURVVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>?V?@V@AVABVBCVCDVDEVEFVFGVGHVHIVIJVJKVKLVLMVMNVNOVOPVPQVQPWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWKLWLMWMNWNOWOBXXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>?X?@X@AXAHYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y89Y9:Y:;Y;<Y<=Y=>Y>?Y?@Y@AYABYBCYCDYDEYEFYFGYG1ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z0)[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([(\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\F]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]01]12]23]34]45]56]67]78]89]9:]:;];<]<=]=>]>?]?@]@A]AB]BC]CD]DE]E^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^!_________ _ +_ + _ _ _ __________________ _ #````````` ` +` + ` ` ` `````````````````` ` !`!"`"aaaaaaaaa a +a + a a a aaaaaaabbbbbbbbb b +b + b b b bccccccccc c +c + c c c cccccc<ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;eeeeeeeee e +e + e e e eeeeeeefffffffff f +f + f f f f%ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$hhhhhhhhh h +h + h h h hhhhhhhhhhhhhiiiiiiiii i +i + i i i i:jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjj j !j!"j"#j#$j$%j%&j&'j'(j()j)*j*+j+,j,-j-.j./j/0j01j12j23j34j45j56j67j78j89j9kkkkkkkkk k +k + k k lllllllll l +l + l l l lllllmmmmmmmmm m +m + m m m mmmmmmmmmnnnnnnnooooooooo o +o + o o o oooo%ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$qqqqqqqrrr*sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)Zttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/0t01t12t23t34t45t56t67t78t89t9:t:;t;<t<=t=>t>?t?@t@AtABtBCtCDtDEtEFtFGtGHtHItIJtJKtKLtLMtMNtNOtOPtPQtQRtRStSTtTUtUVtVWtWXtXYtY0uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/3vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v23wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w./w/0w01w12w2xxxxxxxxx x +x +Zyyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy y !y!"y"#y#$y$%y%&y&'y'(y()y)*y*+y+,y,-y-.y./y/0y01y12y23y34y45y56y67y78y89y9:y:;y;<y<=y=>y>?y?@y@AyAByBCyCDyDEyEFyFGyGHyHIyIJyJKyKLyLMyMNyNOyOPyPQyQRyRSySTyTUyUVyVWyWXyXYyY1zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z0{{{{{{{)||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|(+}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*~~~~~~~  + +    +̀̀̀̀̀̀̀̀̀ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀ ̀ !̀!"̀"#̀#$̀$%̀%&̀&'̀'(̀()̀)*̀*́́́́́́́3̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂ ̂ !̂!"̂"#̂#$̂$%̂%&̂&'̂'(̂()̂)*̂*+̂+,̂,-̂-.̂./̂/0̂01̂12̂2:̃̃̃̃̃̃̃̃̃ ̃ +̃ + ̃ ̃ ̃ ̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃ ̃ !̃!"̃"#̃#$̃$%̃%&̃&'̃'(̃()̃)*̃*+̃+,̃,-̃-.̃./̃/0̃01̃12̃23̃34̃45̃56̃67̃78̃89̃9̄̄̄̄̄̄̄̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅̅̅̅+̆̆̆̆̆̆̆̆̆ ̆ +̆ + ̆ ̆ ̆ ̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆ ̆ !̆!"̆"#̆#$̆$%̆%&̆&'̆'(̆()̆)*̆*6̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇ ̇ !̇!"̇"#̇#$̇$%̇%&̇&'̇'(̇()̇)*̇*+̇+,̇,-̇-.̇./̇/0̇01̇12̇23̇34̇45̇5*̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'(̈()̈)̉̉̉̉̉̉̉̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊%̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋̋ ̋ !̋!"̋"#̋#$̋$̌̌̌̌̌̌̌̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍F̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎ ̎ !̎!"̎"#̎#$̎$%̎%&̎&'̎'(̎()̎)*̎*+̎+,̎,-̎-.̎./̎/0̎01̎12̎23̎34̎45̎56̎67̎78̎89̎9:̎:;̎;<̎<=̎=>̎>?̎?@̎@A̎AB̎BC̎CD̎DE̎ED̏̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏ ̏ !̏!"̏"#̏#$̏$%̏%&̏&'̏'(̏()̏)*̏*+̏+,̏,-̏-.̏./̏/0̏01̏12̏23̏34̏45̏56̏67̏78̏89̏9:̏:;̏;<̏<=̏=>̏>?̏?@̏@ȀAB̏BC̏C̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐̐=̑̑̑̑̑̑̑̑̑ ̑ +̑ + ̑ ̑ ̑ ̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑ ̑ !̑!"̑"#̑#$̑$%̑%&̑&'̑'(̑()̑)*̑*+̑+,̑,-̑-.̑./̑/0̑01̑12̑23̑34̑45̑56̑67̑78̑89̑9:̑:;̑;<̑<#̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒ ̒ !̒!"̒"$̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̓ ̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓ ̓ !̓!"̓"#̓#%̔̔̔̔̔̔̔̔̔ ̔ +̔ + ̔ ̔ ̔ ̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔ ̔ !̔!"̔"#̔#$̔$̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̖̖̖̖̖̖̖̖̖̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕ ̖ +̖ + ̖ ̖ ̖ ̖:̗̗̗̗̗̗̗̗̗ ̗ +̗ + ̗ ̗ ̗ ̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗̗ ̗ !̗!"̗"#̗#$̗$%̗%&̗&'̗'(̗()̗)*̗*+̗+,̗,-̗-.̗./̗/0̗01̗12̗23̗34̗45̗56̗67̗78̗89̗9̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ F̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙ ̙ !̙!"̙"#̙#$̙$%̙%&̙&'̙'(̙()̙)*̙*+̙+,̙,-̙-.̙./̙/0̙01̙12̙23̙34̙45̙56̙67̙78̙89̙9:̙:;̙;<̙<=̙=>̙>?̙?@̙@A̙AB̙BC̙CD̙DE̙ED̚̚̚̚̚̚̚̚̚ ̚ +̚ + ̚ ̚ ̚ ̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚ ̚ !̚!"̚"#̚#$̚$%̚%&̚&'̚'(̚()̚)*̚*+̚+,̚,-̚-.̚./̚/0̚01̚12̚23̚34̚45̚56̚67̚78̚89̚9:̚:;̚;<̚<=̚=>̚>?̚?@̚@A̚AB̚BC̚C̛̛̛̛̛̛̛̛̛ ̛ +̛ + ̛ ̛ ̛ ̛̛̛̛̛̛̛̛̛̛̛̛-̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜̜ ̜ !̜!"̜"#̜#$̜$%̜%&̜&'̜'(̜()̜)*̜*+̜+,̜,<̝̝̝̝̝̝̝̝̝ ̝ +̝ + ̝ ̝ ̝ ̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝ ̝ !̝!"̝"#̝#$̝$%̝%&̝&'̝'(̝()̝)*̝*+̝+,̝,-̝-.̝./̝/0̝01̝12̝23̝34̝45̝56̝67̝78̝89̝9:̝:;̝;R̞̞̞̞̞̞̞̞̞ ̞ +̞ + ̞ ̞ ̞ ̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞ ̞ !̞!"̞"#̞#$̞$%̞%&̞&'̞'(̞()̞)*̞*+̞+,̞,-̞-.̞./̞/0̞01̞12̞23̞34̞45̞56̞67̞78̞89̞9:̞:;̞;<̞<=̞=>̞>?̞?@̞@A̞AB̞BC̞CD̞DE̞EF̞FG̞GH̞HI̞IJ̞JK̞KL̞LM̞MN̞NO̞OP̞PQ̞QP̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟ ̟ !̟!"̟"#̟#$̟$%̟%&̟&'̟'(̟()̟)*̟*+̟+,̟,-̟-.̟./̟/0̟01̟12̟23̟34̟45̟56̟67̟78̟89̟9:̟:;̟;<̟<=̟=>̟>?̟?@̟@A̟AB̟BC̟CD̟DE̟EF̟FG̟GH̟HI̟IJ̟JK̟KL̟LM̟MN̟NO̟O+̠̠̠̠̠̠̠̠̠ ̠ +̠ + ̠ ̠ ̠ ̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠ ̠ !̠!"̠"#̠#$̠$%̠%&̠&'̠'(̠()̠)*̠*C̡̡̡̡̡̡̡̡̡ ̡ +̡ + ̡ ̡ ̡ ̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡ ̡ !̡!"̡"#̡#$̡$%̡%&̡&'̡'(̡()̡)*̡*+̡+,̡,-̡-.̡./̡/0̡01̡12̡23̡34̡45̡56̡67̡78̡89̡9:̡:;̡;<̡<=̡=>̡>?̡?@̡@A̡AB̡B1̢̢̢̢̢̢̢̢̢ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢̢ ̢ !̢!"̢"#̢#$̢$%̢%&̢&'̢'(̢()̢)*̢*+̢+,̢,-̢-.̢./̢/0̢0Ẓ̣̣̣̣̣̣̣̣ ̣ +̣ + ̣ ̣ ̣ ̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣ ̣ !̣!"̣"#̣#$̣$%̣%&̣&'̣'(̣()̣)*̣*+̣+,̣,-̣-.̣./̣/0̣01̣12̣23̣34̣45̣56̣67̣78̣89̣9:̣:;̣;<̣<=̣=>̣>?̣?@̣@ẠAḄBC̣CḌDẸEF̣FG̣GḤHỊIJ̣JḲKḶLṂMṆNỌOP̣PQ̣QṚRṢSṬTỤUṾVẈWX̣XỴYX̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤ ̤ !̤!"̤"#̤#$̤$%̤%&̤&'̤'(̤()̤)*̤*+̤+,̤,-̤-.̤./̤/0̤01̤12̤23̤34̤45̤56̤67̤78̤89̤9:̤:;̤;<̤<=̤=>̤>?̤?@̤@A̤AB̤BC̤CD̤DE̤EF̤FG̤GH̤HI̤IJ̤JK̤KL̤LM̤MN̤NO̤OP̤PQ̤QR̤RS̤ST̤TṲUV̤VW̤W/̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥ ̥ !̥!"̥"#̥#$̥$%̥%&̥&'̥'(̥()̥)*̥*+̥+,̥,-̥-.̥.O̦̦̦̦̦̦̦̦̦ ̦ +̦ + ̦ ̦ ̦ ̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦̦ ̦ !̦!"̦"#̦#$̦$%̦%&̦&'̦'(̦()̦)*̦*+̦+,̦,-̦-.̦./̦/0̦01̦12̦23̦34̦45̦56̦67̦78̦89̦9:̦:;̦;<̦<=̦=>̦>?̦?@̦@A̦AB̦BC̦CD̦DE̦EF̦FG̦GH̦HI̦IJ̦JK̦KL̦LM̦MN̦N9̧̧̧̧̧̧̧̧̧ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧̧ ̧ !̧!"̧"#̧#$̧$%̧%&̧&'̧'(̧()̧)*̧*+̧+,̧,-̧-.̧./̧/0̧01̧12̧23̧34̧45̧56̧67̧78̧80̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨ ̨ !̨!"̨"#̨#$̨$%̨%&̨&'̨'(̨()̨)*̨*+̨+,̨,-̨-.̨./̨/#̩̩̩̩̩̩̩̩̩ ̩ +̩ + ̩ ̩ ̩ ̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩ ̩ !̩!"̩"N̪̪̪̪̪̪̪̪̪ ̪ +̪ + ̪ ̪ ̪ ̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪ ̪ !̪!"̪"#̪#$̪$%̪%&̪&'̪'(̪()̪)*̪*+̪+,̪,-̪-.̪./̪/0̪01̪12̪23̪34̪45̪56̪67̪78̪89̪9:̪:;̪;<̪<=̪=>̪>?̪?@̪@A̪AB̪BC̪CD̪DE̪EF̪FG̪GH̪HI̪IJ̪JK̪KL̪LM̪M!̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ Z̬̬̬̬̬̬̬̬̬ ̬ +̬ + ̬ ̬ ̬ ̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬ ̬ !̬!"̬"#̬#$̬$%̬%&̬&'̬'(̬()̬)*̬*+̬+,̬,-̬-.̬./̬/0̬01̬12̬23̬34̬45̬56̬67̬78̬89̬9:̬:;̬;<̬<=̬=>̬>?̬?@̬@A̬AB̬BC̬CD̬DE̬EF̬FG̬GH̬HI̬IJ̬JK̬KL̬LM̬MN̬NO̬OP̬PQ̬QR̬RS̬ST̬TU̬UV̬VW̬WX̬XY̬YX̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭̭ ̭ !̭!"̭"#̭#$̭$%̭%&̭&'̭'(̭()̭)*̭*+̭+,̭,-̭-.̭./̭/0̭01̭12̭23̭34̭45̭56̭67̭78̭89̭9:̭:;̭;<̭<=̭=>̭>?̭?@̭@A̭AB̭BC̭CḒDḘEF̭FG̭GH̭HI̭IJ̭JK̭KḼLM̭MṊNO̭OP̭PQ̭QR̭RS̭SṰTṶUV̭VW̭WQ̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*+̮+,̮,-̮-.̮./̮/0̮01̮12̮23̮34̮45̮56̮67̮78̮89̮9:̮:;̮;<̮<=̮=>̮>?̮?@̮@A̮AB̮BC̮CD̮DE̮EF̮FG̮GḪHI̮IJ̮JK̮KL̮LM̮MN̮NO̮OP̮PP̯̯̯̯̯̯̯̯̯ ̯ +̯ + ̯ ̯ ̯ ̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯ ̯ !̯!"̯"#̯#$̯$%̯%&̯&'̯'(̯()̯)*̯*+̯+,̯,-̯-.̯./̯/0̯01̯12̯23̯34̯45̯56̯67̯78̯89̯9:̯:;̯;<̯<=̯=>̯>?̯?@̯@A̯AB̯BC̯CD̯DE̯EF̯FG̯GH̯HI̯IJ̯JK̯KL̯LM̯MN̯NO̯O9̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰ ̰ !̰!"̰"#̰#$̰$%̰%&̰&'̰'(̰()̰)*̰*+̰+,̰,-̰-.̰./̰/0̰01̰12̰23̰34̰45̰56̰67̰78̰81̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱̱ ̱ !̱!"̱"#̱#$̱$%̱%&̱&'̱'(̱()̱)*̱*+̱+,̱,-̱-.̱./̱/0̱0#̲̲̲̲̲̲̲̲̲ ̲ +̲ + ̲ ̲ ̲ ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ ̲ !̲!"̲"N̳̳̳̳̳̳̳̳̳ ̳ +̳ + ̳ ̳ ̳ ̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳ ̳ !̳!"̳"#̳#$̳$%̳%&̳&'̳'(̳()̳)*̳*+̳+,̳,-̳-.̳./̳/0̳01̳12̳23̳34̳45̳56̳67̳78̳89̳9:̳:;̳;<̳<=̳=>̳>?̳?@̳@A̳AB̳BC̳CD̳DE̳EF̳FG̳GH̳HI̳IJ̳JK̳KL̳LM̳M!̴̴̴̴̴̴̴̴̴ ̴ +̴ + ̴ ̴ ̴ ̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴ ̴ )̵̵̵̵̵̵̵̵̵ ̵ +̵ + ̵ ̵ ̵ ̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵ ̵ !̵!"̵"#̵#$̵$%̵%&̵&'̵'(̵(Z̶̶̶̶̶̶̶̶̶ ̶ +̶ + ̶ ̶ ̶ ̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶ ̶ !̶!"̶"#̶#$̶$%̶%&̶&'̶'(̶()̶)*̶*+̶+,̶,-̶-.̶./̶/0̶01̶12̶23̶34̶45̶56̶67̶78̶89̶9:̶:;̶;<̶<=̶=>̶>?̶?@̶@A̶AB̶BC̶CD̶DE̶EF̶FG̶GH̶HI̶IJ̶JK̶KL̶LM̶MN̶NO̶OP̶PQ̶QR̶RS̶ST̶TU̶UV̶VW̶WX̶XY̶YX̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷ ̷ !̷!"̷"#̷#$̷$%̷%&̷&'̷'(̷()̷)*̷*+̷+,̷,-̷-.̷./̷/0̷01̷12̷23̷34̷45̷56̷67̷78̷89̷9:̷:;̷;<̷<=̷=>̷>?̷?@̷@A̷AB̷BC̷CD̷DE̷EF̷FG̷GH̷HI̷IJ̷JK̷KL̷LM̷MN̷NO̷OP̷PQ̷QR̷RS̷ST̷TU̷UV̷VW̷W8̸̸̸̸̸̸̸̸̸ ̸ +̸ + ̸ ̸ ̸ ̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸ ̸ !̸!"̸"#̸#$̸$%̸%&̸&'̸'(̸()̸)*̸*+̸+,̸,-̸-.̸./̸/0̸01̸12̸23̸34̸45̸56̸67̸7P̹̹̹̹̹̹̹̹̹ ̹ +̹ + ̹ ̹ ̹ ̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹̹ ̹ !̹!"̹"#̹#$̹$%̹%&̹&'̹'(̹()̹)*̹*+̹+,̹,-̹-.̹./̹/0̹01̹12̹23̹34̹45̹56̹67̹78̹89̹9:̹:;̹;<̹<=̹=>̹>?̹?@̹@A̹AB̹BC̹CD̹DE̹EF̹FG̹GH̹HI̹IJ̹JK̹KL̹LM̹MN̹NO̹O9̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺ ̺ !̺!"̺"#̺#$̺$%̺%&̺&'̺'(̺()̺)*̺*+̺+,̺,-̺-.̺./̺/0̺01̺12̺23̺34̺45̺56̺67̺78̺81̻̻̻̻̻̻̻̻̻ ̻ +̻ + ̻ ̻ ̻ ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ ̻ !̻!"̻"#̻#$̻$%̻%&̻&'̻'(̻()̻)*̻*+̻+,̻,-̻-.̻./̻/0̻0#̼̼̼̼̼̼̼̼̼ ̼ +̼ + ̼ ̼ ̼ ̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼ ̼ !̼!"̼"N̽̽̽̽̽̽̽̽̽ ̽ +̽ + ̽ ̽ ̽ ̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽ ̽ !̽!"̽"#̽#$̽$%̽%&̽&'̽'(̽()̽)*̽*+̽+,̽,-̽-.̽./̽/0̽01̽12̽23̽34̽45̽56̽67̽78̽89̽9:̽:;̽;<̽<=̽=>̽>?̽?@̽@A̽AB̽BC̽CD̽DE̽EF̽FG̽GH̽HI̽IJ̽JK̽KL̽LM̽M!̾̾̾̾̾̾̾̾̾ ̾ +̾ + ̾ ̾ ̾ ̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾ ̾ )̿̿̿̿̿̿̿̿̿ ̿ +̿ + ̿ ̿ ̿ ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ ̿ !̿!"̿"#̿#$̿$%̿%&̿&'̿'(̿(( + +  !!""##$$%%&&'' + + n + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmm1 + +  !!""##$$%%&&''(())**++,,--..//00, + +  !!""##$$%%&&''(())**++ + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + + $ + +  !!""## + +  + + 2 + +  !!""##$$%%&&''(())**++,,--..//0011< + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;R + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQP + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO+ + +  !!""##$$%%&&''(())**C + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABB1 + +  !!""##$$%%&&''(())**++,,--..//00Z + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYX + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWW/ + +  !!""##$$%%&&''(())**++,,--..O + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNN9 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677880 + +  !!""##$$%%&&''(())**++,,--..//# + +  !!""N + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM! + +  Z + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYX + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWQ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPP + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO9 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677881 + +  !!""##$$%%&&''(())**++,,--..//00# + +  !!""N + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM! + +  ) + +  !!""##$$%%&&''((Z + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYX + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWW8 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677P + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOO9 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677881 + +  !!""##$$%%&&''(())**++,,--..//00# + +  !!""N + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMM! + +  ) + +  !!""##$$%%&&''((( + +  !!""##$$%%&&'' + + n + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmm1 + +  !!""##$$%%&&''(())**++,,--..//00, + +  !!""##$$%%&&''(())**++ + + F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + + $ + +  !!""## + +  + +  + + < + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;; + +  + + % + +  !!""##$$ + +   + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +    %  + +      !!""##$$   ( + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + + +  + ! +!" +"# +#$ +$% +%& +&' +'Z           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY Y0           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /3           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23  + +      !!""##$$%%&&''(())**++,,--..//001122  + +c  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabb1  + +      !!""##$$%%&&''(())**++,,--..//00)  + +      !!""##$$%%&&''((1  + +      !!""##$$%%&&''(())**++,,--..//00  + +    1  + +      !!""##$$%%&&''(())**++,,--..//003  + +      !!""##$$%%&&''(())**++,,--..//001122=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<  + +    .  + +      !!""##$$%%&&''(())**++,,--6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())       !!!!!!!!! ! +! + ! ! ! !!!!!!!!!(""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'#######$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$F%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%56%67%78%89%9:%:;%;<%<=%=>%>?%?@%@A%AB%BC%CD%DE%ED&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)*&*+&+,&,-&-.&./&/0&01&12&23&34&45&56&67&78&89&9:&:;&;<&<=&=>&>?&?@&@A&AB&BC&C''''''''' ' +' + ' ' ' ''''''''''''''''=((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+,(,-(-.(./(/0(01(12(23(34(45(56(67(78(89(9:(:;(;<(<#))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"$********* * +* + * * * ****************** * !*!"*"#*#%+++++++++ + ++ + + + + ++++++++++++++++++ + !+!"+"#+#$+$,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,--------- - +- + - - - -:......... . +. + . . . .................. . !.!"."#.#$.$%.%&.&'.'(.().)*.*+.+,.,-.-..././0.01.12.23.34.45.56.67.78.89.9///////// / +/ + / / F000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-0-.0./0/000101202303404505606707808909:0:;0;<0<=0=>0>?0?@0@A0AB0BC0CD0DE0ED111111111 1 +1 + 1 1 1 111111111111111111 1 !1!"1"#1#$1$%1%&1&'1'(1()1)*1*+1+,1,-1-.1./1/010111212313414515616717818919:1:;1;<1<=1=>1>?1?@1@A1AB1BC1C=222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<;333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:%444444444 4 +4 + 4 4 4 444444444444444444 4 !4!"4"#4#$4$555555555 5 +5 + 5 5 5 555555555555555666666666 6 +6 + 6 6 6 6:777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979888888888 8 +8 + 8 8 999999999 9 +9 + 9 9 9 9999999F::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:./:/0:01:12:23:34:45:56:67:78:89:9:::;:;<:<=:=>:>?:?@:@A:AB:BC:CD:DE:ED;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;./;/0;01;12;23;34;45;56;67;78;89;9:;:;;;<;<=;=>;>?;?@;@A;AB;BC;C=<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$????????? ? +? + ? ? ? ???????????????@@@@@@@@@ @ +@ + @ @ @ @:AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+,A,-A-.A./A/0A01A12A23A34A45A56A67A78A89A9BBBBBBBBB B +B + B B CCCCCCCCC C +C + C C C CCCCCCCFDDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDDD D !D!"D"#D#$D$%D%&D&'D'(D()D)*D*+D+,D,-D-.D./D/0D01D12D23D34D45D56D67D78D89D9:D:;D;<D<=D=>D>?D?@D@ADABDBCDCDDDEDEDEEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E78E89E9:E:;E;<E<=E=>E>?E?@E@AEABEBCEC?FFFFFFFFF F +F + F F F FFFFFFFFFFFFFFFFFF F !F!"F"#F#$F$%F%&F&'F'(F()F)*F*+F+,F,-F-.F./F/0F01F12F23F34F45F56F67F78F89F9:F:;F;<F<=F=>F>;GGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/0G01G12G23G34G45G56G67G78G89G9:G:%HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIJJJJJJJJJ J +J + J J J J:KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K45K56K67K78K89K9LLLLLLLLL L +L + L L MMMMMMMMM M +M + M M M MMMMMMMFNNNNNNNNN N +N + N N N NNNNNNNNNNNNNNNNNN N !N!"N"#N#$N$%N%&N&'N'(N()N)*N*+N+,N,-N-.N./N/0N01N12N23N34N45N56N67N78N89N9:N:;N;<N<=N=>N>?N?@N@ANABNBCNCDNDENEDOOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O01O12O23O34O45O56O67O78O89O9:O:;O;<O<=O=>O>?O?@O@AOABOBCOC<PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$%P%&P&'P'(P()P)*P*+P+,P,-P-.P./P/0P01P12P23P34P45P56P67P78P89P9:P:;P;;QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q01Q12Q23Q34Q45Q56Q67Q78Q89Q9:Q:%RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$SSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSTTTTTTTTT T +T + T T T T:UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$%U%&U&'U'(U()U)*U*+U+,U,-U-.U./U/0U01U12U23U34U45U56U67U78U89U9VVVVVVVVV V +V + V V WWWWWWWWW W +W + W W W WWWWWWWFXXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X89X9:X:;X;<X<=X=>X>?X?@X@AXABXBCXCDXDEXEDYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y89Y9:Y:;Y;<Y<=Y=>Y>?Y?@Y@AYABYBCYC+ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*;[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[34[45[56[67[78[89[9:[:%\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]^^^^^^^^^ ^ +^ + ^ ^ ^ ^:_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+,_,-_-._./_/0_01_12_23_34_45_56_67_78_89_9````````` ` +` + ` ` aaaaaaaaa a +a + a a a aaaaaaaFbbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&'b'(b()b)*b*+b+,b,-b-.b./b/0b01b12b23b34b45b56b67b78b89b9:b:;b;<b<=b=>b>?b?@b@AbABbBCbCDbDEbEDccccccccc c +c + c c c cccccccccccccccccc c !c!"c"#c#$c$%c%&c&'c'(c()c)*c*+c+,c,-c-.c./c/0c01c12c23c34c45c56c67c78c89c9:c:;c;<c<=c=>c>?c?@c@AcABcBCcC-ddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,;eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-.e./e/0e01e12e23e34e45e56e67e78e89e9:e:%fffffffff f +f + f f f ffffffffffffffffff f !f!"f"#f#$f$ggggggggg g +g + g g g ggggggggggggggghhhhhhhhh h +h + h h h h:iiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$%i%&i&'i'(i()i)*i*+i+,i,-i-.i./i/0i01i12i23i34i45i56i67i78i89i9jjjjjjjjj j +j + j j kkkkkkkkk k +k + k k k kkkkkkklllllllll l +l + l l l lllllllllmmmmmmmnnnnnnnnn n +n + n n n nnnn%ooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$pppppppqqq*rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrrr r !r!"r"#r#$r$%r%&r&'r'(r()r)Zsssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)*s*+s+,s,-s-.s./s/0s01s12s23s34s45s56s67s78s89s9:s:;s;<s<=s=>s>?s?@s@AsABsBCsCDsDEsEFsFGsGHsHIsIJsJKsKLsLMsMNsNOsOPsPQsQRsRSsSTsTUsUVsVWsWXsXYsY0ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t()t)*t*+t+,t,-t-.t./t/3uuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v/0v01v12v2wwwwwwwww w +w +cxxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x/0x01x12x23x34x45x56x67x78x89x9:x:;x;<x<=x=>x>?x?@x@AxABxBCxCDxDExEFxFGxGHxHIxIJxJKxKLxLMxMNxNOxOPxPQxQRxRSxSTxTUxUVxVWxWXxXYxYZxZ[x[\x\]x]^x^_x_`x`axabxb yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy1zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z)*z*+z+,z,-z-.z./z/0z0{{{{{{{)||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|(1}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},-}-.}./}/0}0*~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'(~()~)&  + +      !!""##$$%%  + +  + +    1  + +      !!""##$$%%&&''(())**++,,--..//003  + +      !!""##$$%%&&''(())**++,,--..//001122=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<  + +    .  + +      !!""##$$%%&&''(())**++,,--6  + +      !!""##$$%%&&''(())**++,,--..//001122334455*  + +      !!""##$$%%&&''(())  + +    (  + +      !!""##$$%%&&''  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    =  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<#  + +      !!""$  + +      !!""##%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC/  + +      !!""##$$%%&&''(())**++,,--..;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC=  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC3  + +      !!""##$$%%&&''(())**++,,--..//001122;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC5  + +      !!""##$$%%&&''(())**++,,--..//0011223344;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::%  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +     + +      + +      + +    %  + +      !!""##$$!  + +      rFdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherGtypestartenddeclarationspecifierssourceExportNamedDeclarationwrHtypestartendidsuperClassbodyClassDeclarationwrItypestartendnameIdentifier NetworkChartIIdentifier"(ViewPUrJtypestartendbodyClassBody)wrKtypestartendstaticcomputedkeykindvalueMethodDefinition0IIdentifier0;constructorconstructorrLtypestartendidexpressiongeneratorasyncparamsbodyFunctionExpression;•IIdentifierDdelete‘QCallExpressionEPVMemberExpressionENRThisExpressionEIIIdentifierJNid__PExpressionStatement\|QCallExpression\{VMemberExpression\yRThisExpression\`IIdentifierayaboutToBeDeletedInternalKMethodDefinitionIIdentifiersimObjgetLFunctionExpressionJBlockStatementÑrXtypestartendargumentReturnStatementQCallExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifier__simObjIIdentifiergetKMethodDefinition6IIdentifier֭initialRendermethodLFunctionExpression6JBlockStatement6PExpressionStatementQCallExpressionVMemberExpressionRThisExpressionIIdentifierobserveComponentCreation‘LArrowFunctionExpression’IIdentifier elmtIdIIdentifier isInitialRenderJBlockStatementPExpressionStatement.dQCallExpression.cVMemberExpression.[IIdentifier.@ViewStackProcessorIIdentifierA[StartGetAccessRecordingFor‘IIdentifier\belmtIdPExpressionStatementrQCallExpressionrVMemberExpressionrIIdentifierrxColumnIIdentifierycreatePExpressionStatementQCallExpressionVMemberExpressionIIdentifierColumnIIdentifierdebugLine‘OLiteralcomponents/Table.ets(9:5)"components/Table.ets(9:5)"PExpressionStatementQCallExpressionVMemberExpressionIIdentifierҦColumnIIdentifierإwidth‘OLiteralߤ100%'100%'PExpressionStatementQCallExpressionVMemberExpressionIIdentifierColumnIIdentifierheight‘OLiteral100%'100%'SIfStatementXNUnaryExpression'!IIdentifier'isInitialRenderJBlockStatement)XPExpressionStatement<IQCallExpression<HVMemberExpression<FIIdentifier<BColumnIIdentifierCFpopPExpressionStatementfQCallExpressionfVMemberExpressionfIIdentifierfxViewStackProcessorIIdentifieryStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionRThisExpressionIIdentifierƸobserveComponentCreation‘LArrowFunctionExpression’IIdentifierΦelmtIdIIdentifier߯isInitialRenderJBlockStatementPExpressionStatement)QCallExpression(VMemberExpression IIdentifierViewStackProcessorIIdentifier StartGetAccessRecordingFor‘IIdentifier!'elmtIdPExpressionStatement7CQCallExpression7BVMemberExpression7@IIdentifier79IfIIdentifier:@createSIfStatementQoTLogicalExpressionUTBinaryExpressionUmVMemberExpressionUhVMemberExpressionU`RThisExpressionUYIIdentifierZ`simObjIIdentifierahobjType¢==OLiterallm1||TBinaryExpressionqVMemberExpressionqVMemberExpressionq|RThisExpressionquIIdentifierv|simObjIIdentifier}objType¢==OLiteral2JBlockStatement :PExpressionStatement +QCallExpression *VMemberExpressionRThisExpressionIIdentifierifElseBranchUpdateFunction’OLiteral0LArrowFunctionExpression )JBlockStatement )PExpressionStatementQCallExpressionVMemberExpressionRThisExpressionIIdentifierobserveComponentCreation‘LArrowFunctionExpression’IIdentifierelmtIdIIdentifierisInitialRenderJBlockStatementPExpressionStatement4jQCallExpression4iVMemberExpression4aIIdentifier4FViewStackProcessorIIdentifierGaStartGetAccessRecordingFor‘IIdentifierbhelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierColumnIIdentifiercreatePExpressionStatementQCallExpressionVMemberExpressionIIdentifierColumnIIdentifierdebugLine‘OLiteralۺcomponents/Table.ets(11:9)"components/Table.ets(11:9)"SIfStatementTNUnaryExpression !IIdentifier isInitialRenderJBlockStatement TPExpressionStatement,9QCallExpression,8VMemberExpression,6IIdentifier,2ColumnIIdentifier36popPExpressionStatementnQCallExpressionnVMemberExpressionnIIdentifiernViewStackProcessorIIdentifierStopGetAccessRecordingPExpressionStatement +QCallExpression +VMemberExpressionRThisExpressionIIdentifierobserveComponentCreation‘LArrowFunctionExpression +’IIdentifierelmtIdIIdentifierisInitialRenderJBlockStatement  +PExpressionStatement  UQCallExpression  TVMemberExpression  LIIdentifier  1ViewStackProcessorIIdentifier 2 LStartGetAccessRecordingFor‘IIdentifier M SelmtIdPExpressionStatement o QCallExpression o VMemberExpression o zIIdentifier o sTextIIdentifier t zcreate‘TBinaryExpression { OLiteral { IP地址:"IP地址:"+VMemberExpression VMemberExpression RThisExpression IIdentifier simObjIIdentifier ipPExpressionStatement QCallExpression VMemberExpression IIdentifier TextIIdentifier debugLine‘OLiteral ۻcomponents/Table.ets(12:11)"components/Table.ets(12:11)"SIfStatement +RNUnaryExpression + !IIdentifier + isInitialRenderJBlockStatement + +RPExpressionStatement +, +7QCallExpression +, +6VMemberExpression +, +4IIdentifier +, +0TextIIdentifier +1 +4popPExpressionStatement +l +QCallExpression +l +VMemberExpression +l +IIdentifier +l +~ViewStackProcessorIIdentifier + +StopGetAccessRecordingPExpressionStatement + +QCallExpression + +VMemberExpression + +IIdentifier + +ˤTextIIdentifier + +ϣpopPExpressionStatement + QCallExpression + VMemberExpression + RThisExpression + +IIdentifier + observeComponentCreation‘LArrowFunctionExpression  ’IIdentifier  elmtIdIIdentifier  isInitialRenderJBlockStatement # ЕPExpressionStatement > tQCallExpression > sVMemberExpression > kIIdentifier > PViewStackProcessorIIdentifier Q kStartGetAccessRecordingFor‘IIdentifier l relmtIdPExpressionStatement QCallExpression VMemberExpression IIdentifier TextIIdentifier create‘TBinaryExpression OLiteral Mac地址:"Mac地址:"+VMemberExpression VMemberExpression RThisExpression IIdentifier simObjIIdentifier macPExpressionStatement QCallExpression VMemberExpression IIdentifier ԤTextIIdentifier ީdebugLine‘OLiteral components/Table.ets(14:11)"components/Table.ets(14:11)"SIfStatement  sNUnaryExpression  ,!IIdentifier  ,isInitialRenderJBlockStatement . sPExpressionStatement M XQCallExpression M WVMemberExpression M UIIdentifier M QTextIIdentifier R UpopPExpressionStatement QCallExpression VMemberExpression IIdentifier ViewStackProcessorIIdentifier StopGetAccessRecordingPExpressionStatement QCallExpression VMemberExpression IIdentifier TextIIdentifier popPExpressionStatement QCallExpression VMemberExpression IIdentifier ColumnIIdentifier  popSIfStatement MoTBinaryExpression Q iVMemberExpression Q dVMemberExpression Q \RThisExpression Q UIIdentifier V \simObjIIdentifier ] dobjType¢==OLiteral h i3JBlockStatement kPExpressionStatement ~QCallExpression ~VMemberExpression ~ RThisExpression ~ IIdentifier ifElseBranchUpdateFunction’OLiteral 1LArrowFunctionExpression JBlockStatement PExpressionStatement QCallExpression VMemberExpression RThisExpression IIdentifier ۸observeComponentCreation‘LArrowFunctionExpression ’IIdentifier elmtIdIIdentifier isInitialRenderJBlockStatement PExpressionStatementJQCallExpressionIVMemberExpressionAIIdentifier&ViewStackProcessorIIdentifier'AStartGetAccessRecordingFor‘IIdentifierBHelmtIdPExpressionStatementdtQCallExpressiondsVMemberExpressiondqIIdentifierdjColumnIIdentifierkqcreatePExpressionStatementQCallExpressionVMemberExpressionIIdentifierColumnIIdentifierdebugLine‘OLiteralcomponents/Table.ets(17:9)"components/Table.ets(17:9)"SIfStatement4NUnaryExpression!IIdentifierisInitialRenderJBlockStatement4PExpressionStatement QCallExpression VMemberExpression IIdentifier ColumnIIdentifierpopPExpressionStatementNzQCallExpressionNyVMemberExpressionNwIIdentifierN`ViewStackProcessorIIdentifierawStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionRThisExpressionIIdentifierƸobserveComponentCreation‘LArrowFunctionExpression’IIdentifierΦelmtIdIIdentifier߯isInitialRenderJBlockStatementPExpressionStatement5QCallExpression4VMemberExpression,IIdentifierViewStackProcessorIIdentifier,StartGetAccessRecordingFor‘IIdentifier-3elmtIdPExpressionStatementOwQCallExpressionOvVMemberExpressionOZIIdentifierOSTextIIdentifierTZcreate‘TBinaryExpression[uOLiteral[cMac地址:"Mac地址:"+VMemberExpressionfuVMemberExpressionfqRThisExpressionfjIIdentifierkqsimObjIIdentifierrumacPExpressionStatementQCallExpressionVMemberExpressionIIdentifierTextIIdentifierdebugLine‘OLiteralcomponents/Table.ets(18:11)"components/Table.ets(18:11)"SIfStatement4NUnaryExpression!IIdentifierisInitialRenderJBlockStatement4PExpressionStatementQCallExpressionVMemberExpressionIIdentifierTextIIdentifierpopPExpressionStatementNzQCallExpressionNyVMemberExpressionNwIIdentifierN`ViewStackProcessorIIdentifierawStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionIIdentifierTextIIdentifierpopPExpressionStatementQCallExpressionVMemberExpressionIIdentifierЦColumnIIdentifierԣpopJBlockStatementoPExpressionStatement!`QCallExpression!_VMemberExpression!@RThisExpression!%IIdentifier&@ifElseBranchUpdateFunction’OLiteralAB2LArrowFunctionExpressionD^JBlockStatementJ^SIfStatement}NUnaryExpression!IIdentifierisInitialRenderJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionIIdentifierIfIIdentifierpopPExpressionStatementQCallExpressionVMemberExpressionIIdentifier޲ViewStackProcessorIIdentifierStopGetAccessRecordingPExpressionStatementQCallExpressionVMemberExpressionIIdentifierIfIIdentifierpopPExpressionStatement"/QCallExpression".VMemberExpression",IIdentifier"(ColumnIIdentifier),popKMethodDefinition<tIIdentifier<DrerendermethodLFunctionExpressionDtJBlockStatementGtPExpressionStatementRmQCallExpressionRlVMemberExpressionRjRThisExpressionRVIIdentifierWjupdateDirtyElementsGExportNamedDeclarationy06HClassDeclaration06IIdentifierTableChartIIdentifierViewPUJClassBody06KMethodDefinition.IIdentifierconstructorconstructorLFunctionExpression.•IIdentifierparentIIdentifierparamsIIdentifierѮ__localStorageMAssignmentPatternIIdentifier٦elmtIdNUnaryExpressionޡ-OLiteral1MAssignmentPatternIIdentifierparamsLambdaIIdentifierundefinedJBlockStatement.PExpressionStatement+QCallExpression*RSuper +IIdentifier parentIIdentifier!__localStorageIIdentifier#)elmtIdSIfStatement5TBinaryExpression9[NUnaryExpression9LtypeofIIdentifier@LparamsLambda===OLiteralQ[function"function"JBlockStatement]PExpressionStatementlUAssignmentExpressionl=VMemberExpressionlRThisExpressionlpIIdentifierqparamsGenerator_IIdentifierparamsLambdaPExpressionStatementUAssignmentExpression=VMemberExpressionRThisExpressionIIdentifier__simObjWNewExpressionIIdentifierּSynchedPropertyNesedObjectPUVMemberExpressionIIdentifierݦparamsIIdentifiersimObjRThisExpressionOLiteralsimObj"simObj"PExpressionStatement'QCallExpression&VMemberExpressionRThisExpressionIIdentifiersetInitiallyProvidedValue‘IIdentifier%paramsKMethodDefinition4IIdentifier4MsetInitiallyProvidedValuemethodLFunctionExpressionM‘IIdentifierNTparamsJBlockStatementVPExpressionStatementaQCallExpressionaVMemberExpressionarVMemberExpressionanRThisExpressionaeIIdentifierfn__simObjIIdentifierorset‘VMemberExpressionsIIdentifiersyparamsIIdentifierzsimObjKMethodDefinitionIIdentifierupdateStateVarsmethodLFunctionExpression‘IIdentifierparamsJBlockStatementڑPExpressionStatementQCallExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifier__simObjIIdentifierãset‘VMemberExpressionIIdentifierʦparamsIIdentifierѦsimObjKMethodDefinitionNIIdentifier!purgeVariableDependenciesOnElmtIdmethodLFunctionExpressionN‘IIdentifier +rmElmtIdJBlockStatement NPExpressionStatementGQCallExpressionFVMemberExpressionRThisExpression!%IIdentifier&>observeComponentCreation‘LArrowFunctionExpression?/’IIdentifier@FelmtIdIIdentifierHWisInitialRenderJBlockStatement\/•PExpressionStatementkQCallExpressionkVMemberExpressionkIIdentifierk}ViewStackProcessorIIdentifier~StartGetAccessRecordingFor‘IIdentifierelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierIfIIdentifiercreateSIfStatement/.TBinaryExpressionVMemberExpressionVMemberExpressionRThisExpressionIIdentifierئsimObjIIdentifierobjType¢==OLiteral2JBlockStatement$8PExpressionStatement$)QCallExpression$(VMemberExpressionRThisExpressionIIdentifierifElseBranchUpdateFunction’OLiteral0LArrowFunctionExpression$'JBlockStatement#$'PExpressionStatement:#QCallExpression:#VMemberExpression:WRThisExpression:>IIdentifier?WobserveComponentCreation‘LArrowFunctionExpressionX#’IIdentifierY_elmtIdIIdentifierapisInitialRenderJBlockStatementu#PExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifierStartGetAccessRecordingFor‘IIdentifierĦelmtIdPExpressionStatementQCallExpressionVMemberExpressionIIdentifierForEachIIdentifiercreaterYtypestartenddeclarationskindVariableDeclaration "rZtypestartendidinitVariableDeclarator"IIdentifier'forEachItemGenFunctionLArrowFunctionExpression*"‘IIdentifier*/_itemJBlockStatement3"YVariableDeclarationReZVariableDeclaratorXdIIdentifierX\itemIIdentifier_d_itemconstPExpressionStatementQCallExpressionVMemberExpressionRThisExpressionIIdentifierobserveComponentCreation‘LArrowFunctionExpression’IIdentifierelmtIdIIdentifierisInitialRenderJBlockStatementPExpressionStatementQCallExpressionVMemberExpressionIIdentifierViewStackProcessorIIdentifierStartGetAccessRecordingFor‘IIdentifierelmtIdPExpressionStatement9FQCallExpression9EVMemberExpression9CIIdentifier9QCallExpression &"=VMemberExpression & CRThisExpression & *IIdentifier + CobserveComponentCreation‘LArrowFunctionExpression D"<’IIdentifier E KelmtIdIIdentifier M \isInitialRenderJBlockStatement a"'MisInitialRenderJBlockStatement'O'PExpressionStatement'v'QCallExpression'v'VMemberExpression'v'}IIdentifier'v'yRowIIdentifier'z'}popPExpressionStatement''QCallExpression''VMemberExpression''IIdentifier''ײViewStackProcessorIIdentifier''StopGetAccessRecordingPExpressionStatement(0*aQCallExpression(0*`VMemberExpression(0(MRThisExpression(0(4IIdentifier(5(MobserveComponentCreation‘LArrowFunctionExpression(N*_’IIdentifier(O(UelmtIdIIdentifier(W(fisInitialRenderJBlockStatement(k*_PExpressionStatement((QCallExpression((VMemberExpression((IIdentifier((ViewStackProcessorIIdentifier((StartGetAccessRecordingFor‘IIdentifier((¦elmtIdPExpressionStatement()QCallExpression()VMemberExpression((IIdentifier((TextIIdentifier((create‘TBinaryExpression()TBinaryExpression() OLiteral((端口"端口"+QCallExpression() VMemberExpression() VMemberExpression()IIdentifier((itemIIdentifier()portIIdentifier)) toString¡+OLiteral)):":"PExpressionStatement)7)eQCallExpression)7)dVMemberExpression)7)EIIdentifier)7);TextIIdentifier)<)EdebugLine‘OLiteral)F)ccomponents/Table.ets(44:13)"components/Table.ets(44:13)"SIfStatement))NUnaryExpression))!IIdentifier))isInitialRenderJBlockStatement))PExpressionStatement))QCallExpression))VMemberExpression))IIdentifier))ȤTextIIdentifier))̣popPExpressionStatement**@QCallExpression**?VMemberExpression**=IIdentifier**&ViewStackProcessorIIdentifier*'*=StopGetAccessRecordingPExpressionStatement**QCallExpression**VMemberExpression**IIdentifier**TextIIdentifier**popPExpressionStatement*,QCallExpression*,VMemberExpression**RThisExpression**IIdentifier**ŸobserveComponentCreation‘LArrowFunctionExpression*,’IIdentifier**ͦelmtIdIIdentifier**ޯisInitialRenderJBlockStatement*,PExpressionStatement++RThisExpression1)1-IIdentifier1.1>paramsGenerator_IIdentifier1A1MparamsLambdaPExpressionStatement1c1UAssignmentExpression1c1=VMemberExpression1c1sRThisExpression1c1gIIdentifier1h1s__simPacketWNewExpression1v1IIdentifier1z1SynchedPropertyNesedObjectPUVMemberExpression11IIdentifier11paramsIIdentifier11simPacketRThisExpression11OLiteral11simPacket"simPacket"PExpressionStatement11QCallExpression11VMemberExpression11RThisExpression11IIdentifier11setInitiallyProvidedValue‘IIdentifier11paramsKMethodDefinition12UIIdentifier12setInitiallyProvidedValuemethodLFunctionExpression22U‘IIdentifier22paramsJBlockStatement22UPExpressionStatement2'2NQCallExpression2'2MVMemberExpression2'2;VMemberExpression2'27RThisExpression2'2+IIdentifier2,27__simPacketIIdentifier282;set‘VMemberExpression2<2LIIdentifier2<2BparamsIIdentifier2C2LsimPacketKMethodDefinition2[2IIdentifier2[2jupdateStateVarsmethodLFunctionExpression2j2‘IIdentifier2k2qparamsJBlockStatement2s2PExpressionStatement2~2QCallExpression2~2VMemberExpression2~2VMemberExpression2~2RThisExpression2~2IIdentifier22__simPacketIIdentifier22set‘VMemberExpression22IIdentifier22paramsIIdentifier22simPacketKMethodDefinition23#IIdentifier22!purgeVariableDependenciesOnElmtIdmethodLFunctionExpression23#‘IIdentifier22ܨrmElmtIdJBlockStatement23#PExpressionStatement23QCallExpression23VMemberExpression23VMemberExpression22RThisExpression22IIdentifier22__simPacketIIdentifier23purgeDependencyOnElmtId‘IIdentifier33rmElmtIdKMethodDefinition3)3IIdentifier3)39aboutToBeDeletedmethodLFunctionExpression393JBlockStatement3<3ғPExpressionStatement3G3kQCallExpression3G3jVMemberExpression3G3hVMemberExpression3G3WRThisExpression3G3KIIdentifier3L3W__simPacketIIdentifier3X3haboutToBeDeletedPExpressionStatement3u3QCallExpression3u3VMemberExpression3u3QCallExpression3u3VMemberExpression3u3IIdentifier3u3SubscriberManagerIIdentifier33GetIIdentifier33delete‘QCallExpression33VMemberExpression33RThisExpression33IIdentifier33id__PExpressionStatement33QCallExpression33VMemberExpression33RThisExpression33IIdentifier33ȸaboutToBeDeletedInternalKMethodDefinition34IIdentifier33simPacketgetLFunctionExpression34JBlockStatement34XReturnStatement34QCallExpression34VMemberExpression34VMemberExpression34 +RThisExpression33IIdentifier34 +__simPacketIIdentifier4 4getKMethodDefinition4@ IIdentifier44+initialRendermethodLFunctionExpression4+@ JBlockStatement4.@ PExpressionStatement495QCallExpression495VMemberExpression494VRThisExpression494=IIdentifier4>4VobserveComponentCreation‘LArrowFunctionExpression4W5’IIdentifier4X4^elmtIdIIdentifier4`4oisInitialRenderJBlockStatement4t5PExpressionStatement44QCallExpression44VMemberExpression44IIdentifier44ViewStackProcessorIIdentifier44StartGetAccessRecordingFor‘IIdentifier44elmtIdPExpressionStatement44QCallExpression44VMemberExpression44IIdentifier44ͦColumnIIdentifier44ԦcreatePExpressionStatement45QCallExpression45VMemberExpression44IIdentifier44ColumnIIdentifier44debugLine‘OLiteral45components/Table.ets(61:5)"components/Table.ets(61:5)"PExpressionStatement5"57QCallExpression5"56VMemberExpression5"5.IIdentifier5"5(ColumnIIdentifier5)5.width‘OLiteral5/55100%'100%'PExpressionStatement5E5[QCallExpression5E5ZVMemberExpression5E5RIIdentifier5E5KColumnIIdentifier5L5Rheight‘OLiteral5S5Y100%'100%'SIfStatement5i5NUnaryExpression5m5}!IIdentifier5n5}isInitialRenderJBlockStatement55PExpressionStatement55QCallExpression55VMemberExpression55IIdentifier55ColumnIIdentifier55popPExpressionStatement55QCallExpression55VMemberExpression55IIdentifier55βViewStackProcessorIIdentifier55StopGetAccessRecordingPExpressionStatement57QCallExpression57VMemberExpression56RThisExpression56IIdentifier66observeComponentCreation‘LArrowFunctionExpression67’IIdentifier66$elmtIdIIdentifier6&65isInitialRenderJBlockStatement6:7PExpressionStatement6I6QCallExpression6I6~VMemberExpression6I6vIIdentifier6I6[ViewStackProcessorIIdentifier6\6vStartGetAccessRecordingFor‘IIdentifier6w6}elmtIdPExpressionStatement66QCallExpression66VMemberExpression66IIdentifier66TextIIdentifier66create‘TBinaryExpression66OLiteral66发送主机:"发送主机:"+VMemberExpression66VMemberExpression66RThisExpression66IIdentifier66simPacketIIdentifier66sendHostPExpressionStatement66QCallExpression66VMemberExpression66IIdentifier66ΤTextIIdentifier66ةdebugLine‘OLiteral66components/Table.ets(62:7)"components/Table.ets(62:7)"SIfStatement77HNUnaryExpression7 7!IIdentifier7 +7isInitialRenderJBlockStatement77HPExpressionStatement7.79QCallExpression7.78VMemberExpression7.76IIdentifier7.72TextIIdentifier7376popPExpressionStatement7V7QCallExpression7V7VMemberExpression7V7IIdentifier7V7hViewStackProcessorIIdentifier7i7StopGetAccessRecordingPExpressionStatement77QCallExpression77VMemberExpression77IIdentifier77TextIIdentifier77popPExpressionStatement79>QCallExpression79=VMemberExpression77RThisExpression77IIdentifier77˸observeComponentCreation‘LArrowFunctionExpression79<’IIdentifier77ӦelmtIdIIdentifier77isInitialRenderJBlockStatement79:QCallExpression<>9VMemberExpression<8’IIdentifier<8PExpressionStatement==>-QCallExpression>>,VMemberExpression>>*IIdentifier>>ViewStackProcessorIIdentifier>>*StopGetAccessRecordingPExpressionStatement>D>OQCallExpression>D>NVMemberExpression>D>LIIdentifier>D>HTextIIdentifier>I>LpopPExpressionStatement>Y?QCallExpression>Y?VMemberExpression>Y>vRThisExpression>Y>]IIdentifier>^>vobserveComponentCreation‘LArrowFunctionExpression>w?’IIdentifier>x>~elmtIdIIdentifier>>isInitialRenderJBlockStatement>?וPExpressionStatement>>QCallExpression>>VMemberExpression>>IIdentifier>>ViewStackProcessorIIdentifier>>кStartGetAccessRecordingFor‘IIdentifier>>צelmtIdPExpressionStatement>?QCallExpression>?VMemberExpression>>IIdentifier>>TextIIdentifier>>create‘TBinaryExpression>?OLiteral>?!需要发送的数据包总数:#"需要发送的数据包总数:"+OLiteral??1PExpressionStatement??AQCallExpression??@VMemberExpression??"IIdentifier??TextIIdentifier??"debugLine‘OLiteral?#??components/Table.ets(67:7)"components/Table.ets(67:7)"SIfStatement?O?NUnaryExpression?S?c!IIdentifier?T?cisInitialRenderJBlockStatement?e?PExpressionStatement?x?QCallExpression?x?VMemberExpression?x?IIdentifier?x?|TextIIdentifier?}?popPExpressionStatement??QCallExpression??VMemberExpression??IIdentifier??ViewStackProcessorIIdentifier??ɶStopGetAccessRecordingPExpressionStatement??QCallExpression??VMemberExpression??IIdentifier??TextIIdentifier??popPExpressionStatement?@QCallExpression?@VMemberExpression?@IIdentifier??ColumnIIdentifier?@popKMethodDefinition@@JIIdentifier@@rerendermethodLFunctionExpression@@JJBlockStatement@@JPExpressionStatement@(@CQCallExpression@(@BVMemberExpression@(@@RThisExpression@(@,IIdentifier@-@@updateDirtyElementsGExportNamedDeclaration@OPHClassDeclaration@VPIIdentifier@\@ftargetHostIIdentifier@o@uViewPUJClassBody@vPKMethodDefinition@}B-IIdentifier@}@constructorconstructorLFunctionExpression@B-•IIdentifier@@parentIIdentifier@@paramsIIdentifier@@__localStorageMAssignmentPattern@@IIdentifier@@elmtIdNUnaryExpression@@-OLiteral@@1MAssignmentPattern@@IIdentifier@@¬paramsLambdaIIdentifier@@ΩundefinedJBlockStatement@B-PExpressionStatement@AQCallExpression@ARSuper@@IIdentifier@@parentIIdentifier@@__localStorageIIdentifier@@elmtIdSIfStatementA ArTBinaryExpressionAA1NUnaryExpressionAA"typeofIIdentifierAA"paramsLambda===OLiteralA'A1function"function"JBlockStatementA3ArPExpressionStatementABAgUAssignmentExpressionABAf=VMemberExpressionABAWRThisExpressionABAFIIdentifierAGAWparamsGenerator_IIdentifierAZAfparamsLambdaPExpressionStatementA|AUAssignmentExpressionA|Aԡ=VMemberExpressionA|ARThisExpressionA|AIIdentifierAA__simPacketWNewExpressionAAIIdentifierAASynchedPropertyNesedObjectPUVMemberExpressionAAIIdentifierAAparamsIIdentifierAAsimPacketRThisExpressionAAOLiteralAAөsimPacket"simPacket"PExpressionStatementAAUAssignmentExpressionAA=VMemberExpressionAARThisExpressionAAIIdentifierAAhostIIdentifierAAundefinedPExpressionStatementAB&QCallExpressionAB%VMemberExpressionABRThisExpressionABIIdentifierBBsetInitiallyProvidedValue‘IIdentifierBB$paramsKMethodDefinitionB3BIIdentifierB3BLsetInitiallyProvidedValuemethodLFunctionExpressionBLB‘IIdentifierBMBSparamsJBlockStatementBUBPExpressionStatementB`BQCallExpressionB`BVMemberExpressionB`BtVMemberExpressionB`BpRThisExpressionB`BdIIdentifierBeBp__simPacketIIdentifierBqBtset‘VMemberExpressionBuBIIdentifierBuB{paramsIIdentifierB|BsimPacketSIfStatementBBTBinaryExpressionBBVMemberExpressionBBIIdentifierBBparamsIIdentifierBBhost£!==IIdentifierBBundefinedJBlockStatementBBPExpressionStatementBBUAssignmentExpressionBB֡=VMemberExpressionBBRThisExpressionBBIIdentifierBBȤhostVMemberExpressionBBIIdentifierBBѦparamsIIdentifierBB֤hostKMethodDefinitionBC@IIdentifierBBupdateStateVarsmethodLFunctionExpressionBC@‘IIdentifierBCparamsJBlockStatementCC@PExpressionStatementCC9QCallExpressionCC8VMemberExpressionCC&VMemberExpressionCC"RThisExpressionCCIIdentifierCC"__simPacketIIdentifierC#C&set‘VMemberExpressionC'C7IIdentifierC'C-paramsIIdentifierC.C7simPacketKMethodDefinitionCFCIIdentifierCFCg!purgeVariableDependenciesOnElmtIdmethodLFunctionExpressionCgC‘IIdentifierChCprmElmtIdJBlockStatementCrCPExpressionStatementC}CQCallExpressionC}CVMemberExpressionC}CVMemberExpressionC}CRThisExpressionC}CIIdentifierCC__simPacketIIdentifierCCpurgeDependencyOnElmtId‘IIdentifierCCrmElmtIdKMethodDefinitionCDfIIdentifierCCͰaboutToBeDeletedmethodLFunctionExpressionCDfJBlockStatementCDfPExpressionStatementCCQCallExpressionCCVMemberExpressionCCVMemberExpressionCCRThisExpressionCCIIdentifierCC__simPacketIIdentifierCCaboutToBeDeletedPExpressionStatementD D5QCallExpressionD D4VMemberExpressionD D'QCallExpressionD D VMemberExpressionD DIIdentifierD DSubscriberManagerIIdentifierDDGetIIdentifierD!D'delete‘QCallExpressionD(D3VMemberExpressionD(D1RThisExpressionD(D,IIdentifierD-D1id__PExpressionStatementD?D_QCallExpressionD?D^VMemberExpressionD?D\RThisExpressionD?DCIIdentifierDDD\aboutToBeDeletedInternalKMethodDefinitionDlDIIdentifierDpDysimPacketgetLFunctionExpressionDyDJBlockStatementD|DXReturnStatementDDQCallExpressionDDVMemberExpressionDDVMemberExpressionDDRThisExpressionDDIIdentifierDD__simPacketIIdentifierDDgetKMethodDefinitionDPIIdentifierDDinitialRendermethodLFunctionExpressionDPJBlockStatementDPPExpressionStatementDFQCallExpressionDFVMemberExpressionDDRThisExpressionDDIIdentifierDDobserveComponentCreation‘LArrowFunctionExpressionDF’IIdentifierDDelmtIdIIdentifierDEisInitialRenderJBlockStatementEFPExpressionStatementEEMQCallExpressionEELVMemberExpressionEEDIIdentifierEE)ViewStackProcessorIIdentifierE*EDStartGetAccessRecordingFor‘IIdentifierEEEKelmtIdPExpressionStatementE[EkQCallExpressionE[EjVMemberExpressionE[EhIIdentifierE[EaColumnIIdentifierEbEhcreatePExpressionStatementEyEQCallExpressionEyEVMemberExpressionEyEIIdentifierEyEColumnIIdentifierEEdebugLine‘OLiteralEEcomponents/Table.ets(80:5)"components/Table.ets(80:5)"PExpressionStatementEEQCallExpressionEEVMemberExpressionEEIIdentifierEEColumnIIdentifierEE¥width‘OLiteralEEɤ100%'100%'PExpressionStatementEEQCallExpressionEEVMemberExpressionEEIIdentifierEEߦColumnIIdentifierEEheight‘OLiteralEE100%'100%'SIfStatementEFBNUnaryExpressionFF!IIdentifierFFisInitialRenderJBlockStatementFFBPExpressionStatementF&F3QCallExpressionF&F2VMemberExpressionF&F0IIdentifierF&F,ColumnIIdentifierF-F0popPExpressionStatementFPF|QCallExpressionFPF{VMemberExpressionFPFyIIdentifierFPFbViewStackProcessorIIdentifierFcFyStopGetAccessRecordingPExpressionStatementFHQCallExpressionFHVMemberExpressionFFRThisExpressionFFIIdentifierFFobserveComponentCreation‘LArrowFunctionExpressionFH’IIdentifierFFelmtIdIIdentifierFFɯisInitialRenderJBlockStatementFHPExpressionStatementFGQCallExpressionFGVMemberExpressionFG +IIdentifierFFViewStackProcessorIIdentifierFG +StartGetAccessRecordingFor‘IIdentifierG GelmtIdPExpressionStatementG!GBQCallExpressionG!GAVMemberExpressionG!G,IIdentifierG!G%TextIIdentifierG&G,create‘TBinaryExpressionG-G@OLiteralG-G4发送主机:"发送主机:"+VMemberExpressionG7G@RThisExpressionG7G;IIdentifierGIN!IIdentifierI?INisInitialRenderJBlockStatementIPI}PExpressionStatementIcInQCallExpressionIcImVMemberExpressionIcIkIIdentifierIcIgTextIIdentifierIhIkpopPExpressionStatementIIQCallExpressionIIVMemberExpressionIIIIdentifierIIViewStackProcessorIIdentifierIIStopGetAccessRecordingPExpressionStatementIIQCallExpressionIIVMemberExpressionIIIIdentifierIIҤTextIIdentifierII֣popPExpressionStatementIKuQCallExpressionIKtVMemberExpressionIJRThisExpressionIIIIdentifierIJobserveComponentCreation‘LArrowFunctionExpressionJKs’IIdentifierJJelmtIdIIdentifierJ +JisInitialRenderJBlockStatementJKsPExpressionStatementJ-JcQCallExpressionJ-JbVMemberExpressionJ-JZIIdentifierJ-J?ViewStackProcessorIIdentifierJ@JZStartGetAccessRecordingFor‘IIdentifierJ[JaelmtIdPExpressionStatementJqJQCallExpressionJqJVMemberExpressionJqJ|IIdentifierJqJuTextIIdentifierJvJ|create‘TBinaryExpressionJ}JOLiteralJ}JMac地址;"Mac地址;"+VMemberExpressionJJVMemberExpressionJJRThisExpressionJJIIdentifierJJsimPacketIIdentifierJJtargetMacPExpressionStatementJJQCallExpressionJJVMemberExpressionJJIIdentifierJJTextIIdentifierJJdebugLine‘OLiteralJJۺcomponents/Table.ets(83:7)"components/Table.ets(83:7)"SIfStatementJK.NUnaryExpressionJJ!IIdentifierJJisInitialRenderJBlockStatementKK.PExpressionStatementKKQCallExpressionKKVMemberExpressionKKIIdentifierKKTextIIdentifierKKpopPExpressionStatementKNNUnaryExpressionNBNR!IIdentifierNCNRisInitialRenderJBlockStatementNTNPExpressionStatementNgNrQCallExpressionNgNqVMemberExpressionNgNoIIdentifierNgNkTextIIdentifierNlNopopPExpressionStatementNNQCallExpressionNNVMemberExpressionNNIIdentifierNNViewStackProcessorIIdentifierNNStopGetAccessRecordingPExpressionStatementNNQCallExpressionNNVMemberExpressionNNIIdentifierNN֤TextIIdentifierNNڣpopPExpressionStatementNPoQCallExpressionNPnVMemberExpressionNORThisExpressionNNIIdentifierNOobserveComponentCreation‘LArrowFunctionExpressionOPm’IIdentifierOO elmtIdIIdentifierOOisInitialRenderJBlockStatementO"PmPExpressionStatementO1OgQCallExpressionO1OfVMemberExpressionO1O^IIdentifierO1OCViewStackProcessorIIdentifierODO^StartGetAccessRecordingFor‘IIdentifierO_OeelmtIdPExpressionStatementOuOQCallExpressionOuOVMemberExpressionOuOIIdentifierOuOyTextIIdentifierOzOcreate‘TBinaryExpressionOOOLiteralOO!需要接收的数据包总数:#"需要接收的数据包总数:"+VMemberExpressionOORThisExpressionOOIIdentifierOOhostPExpressionStatementOOQCallExpressionOOVMemberExpressionOOIIdentifierOOTextIIdentifierOOdebugLine‘OLiteralOOպcomponents/Table.ets(86:7)"components/Table.ets(86:7)"SIfStatementOP(NUnaryExpressionOO!IIdentifierOOisInitialRenderJBlockStatementOP(PExpressionStatementPPQCallExpressionPPVMemberExpressionPPIIdentifierPPTextIIdentifierPPpopPExpressionStatementP6PbQCallExpressionP6PaVMemberExpressionP6P_IIdentifierP6PHViewStackProcessorIIdentifierPIP_StopGetAccessRecordingPExpressionStatementPyPQCallExpressionPyPVMemberExpressionPyPIIdentifierPyP}TextIIdentifierP~PpopPExpressionStatementPPQCallExpressionPPVMemberExpressionPPIIdentifierPPColumnIIdentifierPPpopKMethodDefinitionPPIIdentifierPPrerendermethodLFunctionExpressionPPJBlockStatementPPPExpressionStatementPPQCallExpressionPPVMemberExpressionPPRThisExpressionPPIIdentifierPPֳupdateDirtyElements \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenu.ets-1aee16f3970fdc246c6e874cecdca34a.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenu.ets-1aee16f3970fdc246c6e874cecdca34a.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..66ff239b669103a148bc9efb9e988898a5ee6067 GIT binary patch literal 4982 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenuBar.ets-b99966be60652c5bba2b18a253f20632.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenuBar.ets-b99966be60652c5bba2b18a253f20632.msgpack new file mode 100644 index 0000000..723fb12 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenuBar.ets-b99966be60652c5bba2b18a253f20632.msgpack @@ -0,0 +1,1720 @@ +r@assertionscodecustomTransformCachedependenciesidmetamoduleSideEffectsoriginalCodeoriginalSourcemapresolvedIdssourcemapChainsyntheticNamedExportstransformDependenciestransformFilescacheAstrAMimport promptAction from "@ohos.promptAction"; +import { TopMenu, TopMenuItem } from "../classes/TopMenu"; +import { LabelRevise, LineDelete, NetworkConfig, RouterTableConfig, SwitchTableConfig, PacketSet, BatchPacketSet } from "./Dialog"; +export class TopMenuBar extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.reviseLabelController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new LabelRevise(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 修改标签控制器 + reviseLabelController); + ViewPU.create(jsDialog); + } + }, this); + this.deleteLineController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new LineDelete(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 删除连接线控制器 + deleteLineController); + ViewPU.create(jsDialog); + } + }, this); + this.NetworkController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new NetworkConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 网络配置控制器 + NetworkController); + ViewPU.create(jsDialog); + } + }, this); + this.RouterController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new RouterTableConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 路由表配置配置器 + RouterController); + ViewPU.create(jsDialog); + } + }, this); + this.SwitchController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new SwitchTableConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 转换表配置控制器 + SwitchController); + ViewPU.create(jsDialog); + } + }, this); + this.PacketController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new PacketSet(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 数据包设置控制器 + PacketController); + ViewPU.create(jsDialog); + } + }, this); + this.BatchPacketController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new BatchPacketSet(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 批量数据包设置控制器 + BatchPacketController); + ViewPU.create(jsDialog); + } + }, this); + this.menuArr = [ + new TopMenu("删除与修改", [new TopMenuItem("删除对象", () => { + if (this.choseIndex != null) { + this.allSimConn = this.allSimConn.filter((item) => { + if (this.allSimObj[this.choseIndex].objID === item.nObjE.objID || this.allSimObj[this.choseIndex].objID === item.nObjS.objID) { + item.deleteObjConn(); // 删除线时应该先将线两端的设备的connection设置为null + return false; + } + return true; + }); + this.allSimObj.splice(this.choseIndex, 1); + this.isNewObj = false; + this.newObjType = -1; + this.choseIndex = null; + } + else { + promptAction.showToast({ + message: "请先选择要删除的对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("删除连接线", () => { + if (this.choseIndex != null) { + this.deleteLineController.open(); + } + else { + promptAction.showToast({ + message: "请选择要删除的连接线对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("修改标签", () => { + if (this.choseIndex != null) { + this.reviseLabelController.open(); + } + else { + promptAction.showToast({ + message: "请选择仿真对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("基础配置", [new TopMenuItem("网络配置", () => { + if (this.choseIndex != null && (this.allSimObj[this.choseIndex].objType == 1 || this.allSimObj[this.choseIndex].objType == 2 || this.allSimObj[this.choseIndex].objType == 3)) { + this.NetworkController.open(); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("路由器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 2) { + this.RouterController.open(); + } + else { + promptAction.showToast({ + message: "请选择路由器对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("交换器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 3) { + this.SwitchController.open(); + } + else { + promptAction.showToast({ + message: "请选择交换机对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("显示设置", [new TopMenuItem("显示/不显示标签", () => { + this.isShowLabel = !this.isShowLabel; + }), new TopMenuItem("显示/不显示接口", () => { + this.isShowPort = !this.isShowPort; + }), new TopMenuItem("显示/不显示配置信息", () => { + this.isShowInterface = !this.isShowInterface; + }), new TopMenuItem("显示/不显示交换表信息", () => { + this.isShowTable = !this.isShowTable; + })]), + new TopMenu("发送数据包", [new TopMenuItem("发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1) { + this.PacketController.open(); + } + else { + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("批量发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1) { + this.BatchPacketController.open(); + } + else { + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("清除屏幕", [new TopMenuItem("清除屏幕", () => { + this.allSimObj = []; + this.allSimConn = []; + this.TempConn = []; + this.isNewObj = false; + this.choseIndex = null; + })]) + ] // 顶部菜单栏数组 + ; + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.__isShowPort = this.initializeConsume("isShowPort", "isShowPort"); + this.__isShowInterface = this.initializeConsume("isShowInterface", "isShowInterface"); + this.__isShowTable = this.initializeConsume("isShowTable", "isShowTable"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params) { + if (params.reviseLabelController !== undefined) { + this.reviseLabelController = params.reviseLabelController; + } + if (params.deleteLineController !== undefined) { + this.deleteLineController = params.deleteLineController; + } + if (params.NetworkController !== undefined) { + this.NetworkController = params.NetworkController; + } + if (params.RouterController !== undefined) { + this.RouterController = params.RouterController; + } + if (params.SwitchController !== undefined) { + this.SwitchController = params.SwitchController; + } + if (params.PacketController !== undefined) { + this.PacketController = params.PacketController; + } + if (params.BatchPacketController !== undefined) { + this.BatchPacketController = params.BatchPacketController; + } + if (params.menuArr !== undefined) { + this.menuArr = params.menuArr; + } + } + updateStateVars(params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + MenuItem(menuItemArr, parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/TopMenuBar.ets(40:5)"); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: item.title }); + MenuItem.debugLine("components/TopMenuBar.ets(42:9)"); + MenuItem.onChange(() => { + if (item.fun) { + item.fun(); + } + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }; + this.forEachUpdateFunction(elmtId, menuItemArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + } // 顶部菜单栏按钮每小项 + MenuButton(menuArr, parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel(item.title); + Button.debugLine("components/TopMenuBar.ets(55:7)"); + Button.type(ButtonType.Normal); + Button.fontColor(Color.Black); + Button.border({ color: Color.Black, width: 1 }); + Button.backgroundColor(Color.Transparent); + Button.bindMenu({ builder: () => { + this.MenuItem.call(this, item.menuItemArr); + } }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + }; + this.forEachUpdateFunction(elmtId, menuArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + } // 顶部菜单栏按钮 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue) { + this.__allSimObj.set(newValue); + } + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue) { + this.__allSimConn.set(newValue); + } + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue) { + this.__TempConn.set(newValue); + } + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue) { + this.__isNewObj.set(newValue); + } + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue) { + this.__newObjType.set(newValue); + } + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue) { + this.__choseIndex.set(newValue); + } + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue) { + this.__isShowLabel.set(newValue); + } + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue) { + this.__isShowPort.set(newValue); + } + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue) { + this.__isShowInterface.set(newValue); + } + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue) { + this.__isShowTable.set(newValue); + } + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue) { + this.__allSimPacket.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/TopMenuBar.ets(190:5)"); + Row.height('12%'); + Row.width('100%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.MenuButton.bind(this)(this.menuArr); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +//# sourceMappingURL=TopMenuBar.js.map“Jhvigor_ignore_D:_Huawei_OpenHarmony_10_10_ets_api_@ohos.promptAction.d.ts8E:\jiaocai\ensp14\entry\src\main\ets\classes\TopMenu.ets:E:\jiaocai\ensp14\entry\src\main\ets\components\Dialog.ets>E:\jiaocai\ensp14\entry\src\main\ets\components\TopMenuBar.etsrBmoduleNameisLocalDependencyisNodeEntryFilepkgPathbelongProjectPathpkgNamepkgVersiondependencyPkgInfohostModulesInfobelongModulePathentry·E:\jiaocai\ensp14\entryE:\jiaocai\ensp14entry1.0.0rChostDependencyNamehostModuleName../components/TopMenuBarentryE:\jiaocai\ensp14\entry\import promptAction from "@ohos.promptAction"; +import { SimBase } from "../classes/SimBase" +import { SimConnect, SimPacket } from "../classes/OtherSimObjects" +import { TopMenu, TopMenuItem } from "../classes/TopMenu" +import { LabelRevise, LineDelete, NetworkConfig, RouterTableConfig, SwitchTableConfig, PacketSet, BatchPacketSet } from "./Dialog" + +@Component +export struct TopMenuBar { + // 修改标签控制器 + reviseLabelController: CustomDialogController = new CustomDialogController({ + builder: LabelRevise({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 删除连接线控制器 + deleteLineController: CustomDialogController = new CustomDialogController({ + builder: LineDelete({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 网络配置控制器 + NetworkController: CustomDialogController = new CustomDialogController({ + builder: NetworkConfig({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 路由表配置配置器 + RouterController: CustomDialogController = new CustomDialogController({ + builder: RouterTableConfig({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 转换表配置控制器 + SwitchController: CustomDialogController = new CustomDialogController({ + builder: SwitchTableConfig({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 数据包设置控制器 + PacketController: CustomDialogController = new CustomDialogController({ + builder: PacketSet({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 批量数据包设置控制器 + BatchPacketController: CustomDialogController = new CustomDialogController({ + builder: BatchPacketSet({ simObj: this.allSimObj[this.choseIndex] }) + }) + + @Builder + MenuItem(menuItemArr: TopMenuItem[]) { + Menu() { + ForEach(menuItemArr, (item: TopMenuItem) => { + MenuItem({ content: item.title }) + .onChange(() => { + if (item.fun) { + item.fun() + } + }) + }) + } + } // 顶部菜单栏按钮每小项 + + @Builder + MenuButton(menuArr: TopMenu[]) { + ForEach(menuArr, (item: TopMenu) => { + Button(item.title) + .type(ButtonType.Normal) + .fontColor(Color.Black) + .border({ color: Color.Black, width: 1 }) + .backgroundColor(Color.Transparent) + .bindMenu(this.MenuItem(item.menuItemArr)) + }) + } // 顶部菜单栏按钮 + + private menuArr: TopMenu[] = [ + new TopMenu("删除与修改", [new TopMenuItem("删除对象", () => { + if (this.choseIndex != null) { + this.allSimConn = this.allSimConn.filter((item)=>{ + if(this.allSimObj[this.choseIndex].objID === item.nObjE.objID || this.allSimObj[this.choseIndex].objID === item.nObjS.objID){ + item.deleteObjConn() // 删除线时应该先将线两端的设备的connection设置为null + return false + } + return true + }) + this.allSimObj.splice(this.choseIndex, 1) + this.isNewObj = false + this.newObjType = -1 + this.choseIndex = null + } else { + promptAction.showToast({ + message: "请先选择要删除的对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("删除连接线", () => { + if (this.choseIndex != null) { + this.deleteLineController.open() + } else { + promptAction.showToast({ + message: "请选择要删除的连接线对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("修改标签", () => { + if (this.choseIndex != null) { + this.reviseLabelController.open() + } else { + promptAction.showToast({ + message: "请选择仿真对象", + duration: 3000, + bottom: 50 + }) + } + })]), + new TopMenu("基础配置", [new TopMenuItem("网络配置", () => { + if (this.choseIndex != null && (this.allSimObj[this.choseIndex].objType == 1 || this.allSimObj[this.choseIndex].objType == 2 || this.allSimObj[this.choseIndex].objType == 3)) { + this.NetworkController.open() + } else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("路由器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 2) { + this.RouterController.open() + } else { + promptAction.showToast({ + message: "请选择路由器对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("交换器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 3) { + this.SwitchController.open() + } else { + promptAction.showToast({ + message: "请选择交换机对象", + duration: 3000, + bottom: 50 + }) + } + })]), + new TopMenu("显示设置", [new TopMenuItem("显示/不显示标签", () => { + this.isShowLabel = !this.isShowLabel + }), new TopMenuItem("显示/不显示接口", () => { + this.isShowPort = !this.isShowPort + }), new TopMenuItem("显示/不显示配置信息", () => { + this.isShowInterface = !this.isShowInterface + }), new TopMenuItem("显示/不显示交换表信息", () => { + this.isShowTable = !this.isShowTable + })]), + new TopMenu("发送数据包", [new TopMenuItem("发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1){ + this.PacketController.open() + }else{ + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("批量发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1){ + this.BatchPacketController.open() + }else{ + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }) + } + })]), + new TopMenu("清除屏幕", [new TopMenuItem("清除屏幕", () => { + this.allSimObj = [] + this.allSimConn = [] + this.TempConn = [] + this.isNewObj = false + this.choseIndex = null + })]) + ] // 顶部菜单栏数组 + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume allSimConn: SimConnect[] // 仿真连接线数组 + @Consume TempConn: any[] // 临时any数组 + @Consume isNewObj: boolean // 是否新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + + @Consume isShowLabel: boolean // 是否显示标签 + @Consume isShowPort: boolean // 是否显示接口 + @Consume isShowInterface: boolean // 是否显示网络配置信息 + @Consume isShowTable: boolean // 是否显示路由/交换表信息 + + @Consume allSimPacket: SimPacket[] // 单次数据包传输的集合 + + build() { + Row() { + this.MenuButton(this.menuArr) + } + .height('12%') + .width('100%') + } +}rD@ohos.promptAction./Dialog../classes/TopMenurEassertionsexternalidmetamoduleSideEffectsresolvedBysyntheticNamedExportsAJhvigor_ignore_D:_Huawei_OpenHarmony_10_10_ets_api_@ohos.promptAction.d.tsrFhostModulesInfoC@ohos.promptActionentryC@ohos.promptActionentryC@ohos.promptActionentryêoh-resolveEA:E:\jiaocai\ensp14\entry\src\main\ets\components\Dialog.etsAêoh-resolveEA8E:\jiaocai\ensp14\entry\src\main\ets\classes\TopMenu.etsAêoh-resolve’rGversionfilesourceRootsourcesnamesmappingsTopMenuBar.jsTopMenuBar.ets--..  %%99:9    ""//11BBDDUUWW``bbpprrxx̂̂̃̂ ) 6? L + +  + +! +#$ +'% +(. +1/ +23 +64 +7> +A? +B# + . +5 +7 += +!? +#C +'D +(M +1N +2R +6S +7] +A^ +B` +D  %  +E( 5> K   "$&%'.0/13546>@?A# -46< >"B&C'L0M1Q5R6\@]A_C   $  D%2;H  # %$)%*.3/43849>C?D# 079?#A%E)F*O3P4T8U9_C`DbF ! G$1:G  !' )$-%..7/83<4=>G?H# 4;=!C'E)I-J.S7T8XG?H# 4;=!C'E)I-J.S7T8X??@# ,35;=!A%B&K/L0P4Q5[?\@^B   C)!6?!L "" ""$ "&$"*%"+."4/"53"94":>"D?"E#" 1"8":"@"$B"&F"*G"+P"4Q"5U"9V":`"Da"Ec"G  !%! "H? @@@@@!@"@&@1@)2@*8@0:@2=@5?@7AA +AA'A+A/A!1A#BB B 'B*B.B/B9B):B*@B0AB1BB2FB6HB7JB9$C + C $C%C.C/C3C 4C!>C+?C,@C-EC2JC7NC;OCi61jj +jj'j+j/j!3j%4j&8j*9j+Bj4Cj5Gj9Hj:RjDSjETjF[jM_jQ`jRdjVhjZij[rjdsjewjixjĵjt̃jūjv̋j}̏j́̐ĵ̔j̘̆j̙̊j̢̋j̣̔j̧̕j̨̙j̲̚j̤̳j̴̥j̦̻j̭̿j̱j̲j̳j̵kk k .k/k3k#5k%6k%ll m$m%m.m/mn +#n%n.no +$o&o*op +"p$p&pq q +q +rsssss #s$s+s-s!0s$2s&tt +tt't+t/t!3t%7t)8t*At3Bt4Ft8Gt9QtCRtDStEZtL^tP_tQatSuu u -u.u2u"4u$5u$vv w$w%w.w/wx +#x%x/xy +$y&y*yz +"z$z&z{ { +{ +|}}}}} #}$}+}-}!0}$2}&~~ +~~'~+~/~!3~%7~)8~*A~3B~4F~8G~9Q~CR~DS~EZ~L^~P_~Qa~S  -.2"4$5$̀̀ ́$́%́.́/́̂ +#̂%̂/̂̃ +$̃&̃*̃̄ +"̄$̄&̄̅ ̅ +̅ +̆̇̇̇̇̇ ̈̈̈̈̈ ̈!̈%̈0̈(1̈);̈3=̈5@̈8B̈:̉̉ +̉ $̉'̉(̉,̉-̉8̉*9̉*̊̊̊̊̊ #̊$̊.̊"0̊$3̊'5̊)̋̋ +̋ #̋&̋'̋+̋,̋6̋(7̋(̌̌̌̌̌ #̌$̌0̌$2̌&5̌)7̌+̍̍ +̍ (̍+̍,̍0̍"1̍#@̍2A̍2̎̎̎̎̎ #̎$̎1̎%3̎'6̎*8̎,̏̏ +̏ $̏'̏(̏,̏-̏8̏*9̏*̐̐̐̐̐ ̑̑̑̑̑!̑"̑&̑1̑)2̑*9̑1;̑3>̑6@̑8̒̒ +̒̒'̒+̒/̒!3̒%7̒)8̒*A̒3B̒4F̒8G̒9Q̒CR̒DS̒EZ̒L^̒P_̒Qa̒R̓̓ ̓ -̓.̓2̓"4̓$5̓$̔̔ ̕$̕%̕.̕/̖̕ +#̖%̖.̖̗ +$̗&̗*̗̘ +"̘$̘&̘̙ ̙ +̙ +̛̛̛̛̛̚ #̛$̛-̛!/̛#2̛&4̛(̜̜ +̜̜'̜+̜/̜!3̜%7̜)8̜*A̜3B̜4F̜8G̜9Q̜CR̜DS̜EZ̜L^̜P_̜Qa̜R̝̝ ̝ 2̝"3̝#7̝'9̝):̝)̞̞ ̟$̟%̟.̟/̟̠ +#̠%̠.̡̠ +$̡&̡*̡̢ +"̢$̢&̢̣ ̣ +̣ +̤̥̥̥̥̥ ̦̦̦̦̦ ̦!̦%̦0̦(1̦)7̦/9̦1<̦4>̦6̧̧ +̧ "̧%̧'̧(̧̨̨ +̨ #̨&̨(̨)̨̩̩ +̩ !̩$̩&̩'̩̪̪ +̪ !̪$̪)̪*̪̫̫ +̫ #̫&̫*̫+̫̬̬̬̬̬ ̭ +̭̭̂& & + & &% '''' (( ))$)&)-)/)3) 4)!9)&;)())* %*&*)*+*+ + +!+$+&+, ,!,$,&,',- . +. ) )))/(:((( (( ' '11144 4 4 55 66 +6 /6065666 7 7 7*7+71766 8 $8%8*8+80866 9 !9"9$9)9+9091969$89&=9+?9-@9.B9066 : *:+:0:1:<:*66 ; #;; ;!;);5; 9;$:;%E;066 66 /5 6555 55 ===̮ ̮̮ ̮̯ ̯̯ ̯̰ ̰̰ ̰̱ ̱̱ ̱̲ ̲̲ ̲̳ ̳̳ ̵̳ ̵̵ ̵̶ ̶̶ ̶̷ ̷̷ ̷̸ ̸̸ ̸̺ ̺̺ ̺̼ ̽̽ ̽̽   ̽̽ + ̽̽̾ ̾ + ̾ ̾#̾'̾(̾/̾"̽ ̽rHversionfilesourcessourcesContentnamesmappings0 + +  !!""##$$%%&&''(())**++,,--..//<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀́́̂̂̃̃̄̄*  + +      !!""##$$%%&&''(())Z  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYY0  + +      !!""##$$%%&&''(())**++,,--..//3  + +      !!""##$$%%&&''(())**++,,--..//0011223  + +      !!""##$$%%&&''(())**++,,--..//001122  + +C          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @A AB B + + + + + + + + + + + + + + + +  + + + + + + + + + + + + + + + +,          + +                    ! !" "# #$ $% %& &' '( () )* *+ +          + +                 A          + +                    ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <= => >? ?@ @  + +      + +      + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~̀̀.  + +      !!""##$$%%&&''(())**++,,--  + +    )  + +      !!""##$$%%&&''((*  + +      !!""##$$%%&&''(())  + +      + +    B  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA  + +    ,  + +      !!""##$$%%&&''(())**++  + +    A  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@  + +      + +      + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~.  + +      !!""##$$%%&&''(())**++,,--          + +                (!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'*""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")######### # +# + # # # #$$$$$$$$$ $ +$ + $ $ $ $$$$$?%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%56%67%78%89%9:%:;%;<%<=%=>%>&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&,''''''''' ' +' + ' ' ' '''''''''''''''''' ' !'!"'"#'#$'$%'%&'&'''('()')*'*+'+((((((((( ( +( + ( ( ( ((((((((((((((((A))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@********* * +* + * * * **********+++++++++ + ++ + + + + ++++++,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;<,<=,=>,>?,?@,@A,AB,BC,CD,DE,EF,FG,GH,HI,IJ,JK,KL,LM,MN,NO,OP,PQ,QR,RS,ST,TU,UV,VW,WX,XY,YZ,Z[,[\,\],]^,^_,_`,`a,ab,bc,cd,de,ef,fg,gh,hi,ij,jk,kl,lm,mn,no,op,pq,qr,rs,st,tu,uv,vw,wx,xy,yz,z{,{|,|},}~,~,̀,̀́,́̂,̂.--------- - +- + - - - ------------------ - !-!"-"#-#$-$%-%&-&'-'(-()-)*-*+-+,-,---......... . +. + . . . ..............%///////// / +/ + / / / ////////////////// / !/!"/"#/#$/$*000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)111111111 1 +1 + 1 1 1 1222222222 2 +2 + 2 2 2 22222>333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3=444444444 4 +4 + 4 4 4 4444444444444444,555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+666666666 6 +6 + 6 6 6 6666666666666666A777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@888888888 8 +8 + 8 8 8 8888888888999999999 9 +9 + 9 9 9 999999::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:./:/0:01:12:23:34:45:56:67:78:89:9:::;:;<:<=:=>:>?:?@:@A:AB:BC:CD:DE:EF:FG:GH:HI:IJ:JK:KL:LM:MN:NO:OP:PQ:QR:RS:ST:TU:UV:VW:WX:XY:YZ:Z[:[\:\]:]^:^_:_`:`a:ab:bc:cd:de:ef:fg:gh:hi:ij:jk:kl:lm:mn:no:op:pq:qr:rs:st:tu:uv:vw:wx:xy:yz:z{:{|:|}:}~:~:̀:̀́:́̂:̂̃:̃̄:̄̅:̅̆:̆.;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<$========= = += + = = = ================== = !=!"="#=#*>>>>>>>>> > +> + > > > >>>>>>>>>>>>>>>>>> > !>!">"#>#$>$%>%&>&'>'(>()>)????????? ? +? + ? ? ? ?@@@@@@@@@ @ +@ + @ @ @ @@@@@>AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A()A)*A*+A+,A,-A-.A./A/0A01A12A23A34A45A56A67A78A89A9:A:;A;<A<=A=BBBBBBBBB B +B + B B B BBBBBBBBBBBBBBBB,CCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)*C*+C+DDDDDDDDD D +D + D D D DDDDDDDDDDDDDDDDAEEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E !E!"E"#E#$E$%E%&E&'E'(E()E)*E*+E+,E,-E-.E./E/0E01E12E23E34E45E56E67E78E89E9:E:;E;<E<=E=>E>?E?@E@FFFFFFFFF F +F + F F F FFFFFFFFFFGGGGGGGGG G +G + G G G GGGGGGHHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$%H%&H&'H'(H()H)*H*+H+,H,-H-.H./H/0H01H12H23H34H45H56H67H78H89H9:H:;H;<H<=H=>H>?H?@H@AHABHBCHCDHDEHEFHFGHGHHHIHIJHJKHKLHLMHMNHNOHOPHPQHQRHRSHSTHTUHUVHVWHWXHXYHYZHZ[H[\H\]H]^H^_H_`H`aHabHbcHcdHdeHefHfgHghHhiHijHjkHklHlmHmnHnoHopHpqHqrHrsHstHtuHuvHvwHwxHxyHyzHz{H{|H|}H}~H~H̀H̀́H́̂Ĥ̃H̃̄H̄̅H̅̆H̆.IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIII I !I!"I"#I#$I$%I%&I&'I'(I()I)*I*+I+,I,-I-JJJJJJJJJ J +J + J J J JJJJJJJJJJJJJJJ$KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#*LLLLLLLLL L +L + L L L LLLLLLLLLLLLLLLLLL L !L!"L"#L#$L$%L%&L&'L'(L()L)MMMMMMMMM M +M + M M M MNNNNNNNNN N +N + N N N NNNNN>OOOOOOOOO O +O + O O O OOOOOOOOOOOOOOOOOO O !O!"O"#O#$O$%O%&O&'O'(O()O)*O*+O+,O,-O-.O./O/0O01O12O23O34O45O56O67O78O89O9:O:;O;<O<=O=PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPP,QQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+RRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRASSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSSS S !S!"S"#S#$S$%S%&S&'S'(S()S)*S*+S+,S,-S-.S./S/0S01S12S23S34S45S56S67S78S89S9:S:;S;<S<=S=>S>?S?@S@TTTTTTTTT T +T + T T T TTTTTTTTTTUUUUUUUUU U +U + U U U UUUUUUVVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>?V?@V@AVABVBCVCDVDEVEFVFGVGHVHIVIJVJKVKLVLMVMNVNOVOPVPQVQRVRSVSTVTUVUVVVWVWXVXYVYZVZ[V[\V\]V]^V^_V_`V`aVabVbcVcdVdeVefVfgVghVhiVijVjkVklVlmVmnVnoVopVpqVqrVrsVstVtuVuvVvwVwxVxyVyzVz{V{|V|}V}~V~.WWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXX$YYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#*ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)[[[[[[[[[ [ +[ + [ [ [ [\\\\\\\\\ \ +\ + \ \ \ \\\\\C]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]01]12]23]34]45]56]67]78]89]9:]:;];<]<=]=>]>?]?@]@A]AB]B^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^,_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+````````` ` +` + ` ` ` ````````````````Aaaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,-a-.a./a/0a01a12a23a34a45a56a67a78a89a9:a:;a;<a<=a=>a>?a?@a@bbbbbbbbb b +b + b b b bbbbbbbbbbccccccccc c +c + c c c ccccccddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;<d<=d=>d>?d?@d@AdABdBCdCDdDEdEFdFGdGHdHIdIJdJKdKLdLMdMNdNOdOPdPQdQRdRSdSTdTUdUVdVWdWXdXYdYZdZ[d[\d\]d]^d^_d_`d`adabdbcdcdddedefdfgdghdhidijdjkdkldlmdmndnodopdpqdqrdrsdstdtuduvdvwdwxdxydyzdz{d{|d|}d}~d~d̀d̀́d́̂d̂̃d̃.eeeeeeeee e +e + e e e eeeeeeeeeeeeeeeeee e !e!"e"#e#$e$%e%&e&'e'(e()e)*e*+e+,e,-e-fffffffff f +f + f f f fffffffffffffffff)ggggggggg g +g + g g g gggggggggggggggggg g !g!"g"#g#$g$%g%&g&'g'(g(*hhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$%h%&h&'h'(h()h)iiiiiiiii i +i + i i i ijjjjjjjjj j +j + j j j jjjjjkkkkkkkkk k +k + k k k kkkkkkkkkkkkClllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,-l-.l./l/0l01l12l23l34l45l56l67l78l89l9:l:;l;<l<=l=>l>?l?@l@AlABlB4mmmmmmmmm m +m + m m m mmmmmmmmmmmmmmmmmm m !m!"m"#m#$m$%m%&m&'m'(m()m)*m*+m+,m,-m-.m./m/0m01m12m23m3Nnnnnnnnnn n +n + n n n nnnnnnnnnnnnnnnnnn n !n!"n"#n#$n$%n%&n&'n'(n()n)*n*+n+,n,-n-.n./n/0n01n12n23n34n45n56n67n78n89n9:n:;n;<n<=n=>n>?n?@n@AnABnBCnCDnDEnEFnFGnGHnHInIJnJKnKLnLMnMooooooooo o +o + o o o oooooooooooooooooo o !o!"o"#o#$o$%o%&o&'o'(o()o)*o*+o+,o,-o-.o./o/0o01o12o23o34o45o56o67o78o89o9:o:;o;<o<=o=>o>?o?@o@AoABoBCoCDoDEoEFoFGoGHoHIoIJoJKoKLoLMoMNoNOoOPoPQoQRoRSoSToTUoUVoVWoWXoXYoYZoZ[o[\o\]o]^o^_o_`o`aoabobcocdodeoefofgoghohioijojkoklolmomnonooopopqoqrorsostotuouvovwowxoxyoyzoz{o{|o|}o}~o~òò́ó̂ỗȭō̅o̅̆ŏ̇ȯ̈ö̉ỏ̊o̊̋ő̌ǒ̍o̍̎o̎̏ȍ̐o̐̑ȏ̒o̒̓o̓̔o̔̕o̖̕o̖̗o̗̘o̘̙o̙̚ơ̚ơ̜o̜[ppppppppp p +p + p p p pppppppppppppppppp p !p!"p"#p#$p$%p%&p&'p'(p()p)*p*+p+,p,-p-.p./p/0p01p12p23p34p45p56p67p78p89p9:p:;p;<p<=p=>p>?p?@p@ApABpBCpCDpDEpEFpFGpGHpHIpIJpJKpKLpLMpMNpNOpOPpPQpQRpRSpSTpTUpUVpVWpWXpXYpYZpZ/qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'(q()q)*q*+q+,q,-q-.q.rrrrrrrrr r +r + r r r rrrrrrrrrrrrrrrrr*sssssssss s +s + s s s ssssssssssssssssss s !s!"s"#s#$s$%s%&s&'s'(s()s)ttttttttt t +t + t t t tttttttttttttttDuuuuuuuuu u +u + u u u uuuuuuuuuuuuuuuuuu u !u!"u"#u#$u$%u%&u&'u'(u()u)*u*+u+,u,-u-.u./u/0u01u12u23u34u45u56u67u78u89u9:u:;u;<u<=u=>u>?u?@u@AuABuBCuC0vvvvvvvvv v +v + v v v vvvvvvvvvvvvvvvvvv v !v!"v"#v#$v$%v%&v&'v'(v()v)*v*+v+,v,-v-.v./v//wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w()w)*w*+w+,w,-w-.w.1xxxxxxxxx x +x + x x x xxxxxxxxxxxxxxxxxx x !x!"x"#x#$x$%x%&x&'x'(x()x)*x*+x+,x,-x-.x./x/0x0yyyyyyyyy y +y + y y y yyyyyyyyyzzzzzzzzz z +z + z z z zzzzzzzzzzzzzz2{{{{{{{{{ { +{ + { { { {{{{{{{{{{{{{{{{{{ { !{!"{"#{#${$%{%&{&'{'({(){)*{*+{+,{,-{-.{./{/0{01{14||||||||| | +| + | | | |||||||||||||||||| | !|!"|"#|#$|$%|%&|&'|'(|()|)*|*+|+,|,-|-.|./|/0|01|12|23|3-}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&'}'(}()})*}*+}+,},(~~~~~~~~~ ~ +~ + ~ ~ ~ ~~~~~~~~~~~~~~~~~~ ~ !~!"~"#~#$~$%~%&~&'~'  + +    ̀̀̀̀̀̀̀̀̀ ̀ +̀ + ̀ ̀ ̀ ̀̀̀̀̀̀̀̀̀6́́́́́́́́́ ́ +́ + ́ ́ ́ ́́́́́́́́́́́́́́́́́́ ́ !́!"́"#́#$́$%́%&́&'́'(́()́)*́*+́+,́,-́-.́./́/0́01́12́23́34́45́54̂̂̂̂̂̂̂̂̂ ̂ +̂ + ̂ ̂ ̂ ̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂̂ ̂ !̂!"̂"#̂#$̂$%̂%&̂&'̂'(̂()̂)*̂*+̂+,̂,-̂-.̂./̂/0̂01̂12̂23̂3;̃̃̃̃̃̃̃̃̃ ̃ +̃ + ̃ ̃ ̃ ̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃̃ ̃ !̃!"̃"#̃#$̃$%̃%&̃&'̃'(̃()̃)*̃*+̃+,̃,-̃-.̃./̃/0̃01̃12̃23̃34̃45̃56̃67̃78̃89̃9:̃:̄̄̄̄̄̄̄̄̄ ̄ +̄ + ̄ ̄ ̄ ̄̄̄̄̄̄̄̄̄̅̅̅̅̅̅̅̅̅ ̅ +̅ + ̅ ̅ ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅2̆̆̆̆̆̆̆̆̆ ̆ +̆ + ̆ ̆ ̆ ̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆ ̆ !̆!"̆"#̆#$̆$%̆%&̆&'̆'(̆()̆)*̆*+̆+,̆,-̆-.̆./̆/0̆01̆16̇̇̇̇̇̇̇̇̇ ̇ +̇ + ̇ ̇ ̇ ̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇̇ ̇ !̇!"̇"#̇#$̇$%̇%&̇&'̇'(̇()̇)*̇*+̇+,̇,-̇-.̇./̇/0̇01̇12̇23̇34̇45̇5-̈̈̈̈̈̈̈̈̈ ̈ +̈ + ̈ ̈ ̈ ̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈̈ ̈ !̈!"̈"#̈#$̈$%̈%&̈&'̈'(̈()̈)*̈*+̈+,̈,(̉̉̉̉̉̉̉̉̉ ̉ +̉ + ̉ ̉ ̉ ̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉̉ ̉ !̉!"̉"#̉#$̉$%̉%&̉&'̉'̊̊̊̊̊̊̊̊̊ ̊ +̊ + ̊ ̊ ̊ ̊̊̊̊̊̊̊̊̊̊̊̊̊̊̊̋̋̋̋̋̋̋̋̋ ̋ +̋ + ̋ ̋ ̋ ̋̋̋̋̋̋̋̋̋5̌̌̌̌̌̌̌̌̌ ̌ +̌ + ̌ ̌ ̌ ̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌̌ ̌ !̌!"̌"#̌#$̌$%̌%&̌&'̌'(̌()̌)*̌*+̌+,̌,-̌-.̌./̌/0̌01̌12̌23̌34̌44̍̍̍̍̍̍̍̍̍ ̍ +̍ + ̍ ̍ ̍ ̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍̍ ̍ !̍!"̍"#̍#$̍$%̍%&̍&'̍'(̍()̍)*̍*+̍+,̍,-̍-.̍./̍/0̍01̍12̍23̍3<̎̎̎̎̎̎̎̎̎ ̎ +̎ + ̎ ̎ ̎ ̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎ ̎ !̎!"̎"#̎#$̎$%̎%&̎&'̎'(̎()̎)*̎*+̎+,̎,-̎-.̎./̎/0̎01̎12̎23̎34̎45̎56̎67̎78̎89̎9:̎:;̎;̏̏̏̏̏̏̏̏̏ ̏ +̏ + ̏ ̏ ̏ ̏̏̏̏̏̏̏̏̏̐̐̐̐̐̐̐̐̐ ̐ +̐ + ̐ ̐ ̐ ̐̐̐̐̐̐̐̐̐̐̐̐̐̐2̑̑̑̑̑̑̑̑̑ ̑ +̑ + ̑ ̑ ̑ ̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑̑ ̑ !̑!"̑"#̑#$̑$%̑%&̑&'̑'(̑()̑)*̑*+̑+,̑,-̑-.̑./̑/0̑01̑11̒̒̒̒̒̒̒̒̒ ̒ +̒ + ̒ ̒ ̒ ̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒̒ ̒ !̒!"̒"#̒#$̒$%̒%&̒&'̒'(̒()̒)*̒*+̒+,̒,-̒-.̒./̒/0̒0-̓̓̓̓̓̓̓̓̓ ̓ +̓ + ̓ ̓ ̓ ̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓̓ ̓ !̓!"̓"#̓#$̓$%̓%&̓&'̓'(̓()̓)*̓*+̓+,̓,(̔̔̔̔̔̔̔̔̔ ̔ +̔ + ̔ ̔ ̔ ̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔̔ ̔ !̔!"̔"#̔#$̔$%̔%&̔&'̔'̕̕̕̕̕̕̕̕̕ ̕ +̕ + ̕ ̕ ̕ ̖̖̖̖̖̖̖̖̖̕̕̕̕̕̕̕̕̕̕̕̕̕̕̕ ̖ +̖ + ̖ ̖ ̖ ̖̖̖̖̖̖̖̖̖̗̗̗̗̗̗̗̗̗ ̗ +̗ + ̗ ̗ ̗ ̗̗̗̗̗̗̗̗̗B̘̘̘̘̘̘̘̘̘ ̘ +̘ + ̘ ̘ ̘ ̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘̘ ̘ !̘!"̘"#̘#$̘$%̘%&̘&'̘'(̘()̘)*̘*+̘+,̘,-̘-.̘./̘/0̘01̘12̘23̘34̘45̘56̘67̘78̘89̘9:̘:;̘;<̘<=̘=>̘>?̘?@̘@A̘AƔ̙̙̙̙̙̙̙̙̙ ̙ +̙ + ̙ ̙ ̙ ̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙ ̙ !̙!"̙"#̙#$̙$%̙%&̙&'̙'(̙()̙)*̙*+̙+,̙,-̙-.̙./̙/0̙01̙12̙23̙34̙45̙56̙67̙78̙89̙9:̙:;̙;<̙<=̙=>̙>?̙?@̙@A̙AB̙BC̙CD̙DE̙EF̙FG̙GH̙HI̙IJ̙JK̙KL̙LM̙MN̙NO̙OP̙PQ̙QR̙RS̙ST̙TU̙UV̙VW̙WX̙XY̙YZ̙Z[̙[\̙\]̙]^̙^_̙_`̙`a̙ab̙bc̙cd̙de̙ef̙fg̙gh̙hi̙ij̙jk̙kl̙lm̙mn̙no̙op̙pq̙qr̙rs̙st̙tu̙uv̙vw̙wx̙xy̙yz̙z{̙{|̙|}̙}~̙~̴̴̵̵̶̶̷̷̸̸̡̡̢̢̧̧̨̨̛̛̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̙̖̙̖̗̙̗̘̙̘̙̙̙̙̙̜̙̜̝̙̝̞̙̞̟̙̟̠̙̠̙̙̣̙̣̤̙̤̥̙̥̦̙̦̙̙̩̙̩̪̙̪̫̙̫̬̙̬̭̙̭̮̙̮̯̙̯̰̙̰̱̙̱̲̙̲̳̙̳̙̙̙̙̙̹̙̹̺̙̺̻̙̻̼̙̼̙̙̙̙̙̙̀̀́́̂̂̃̃̄̄̅̅̆̆̇̇̈̈̉̉̊̊̋̋̌̌̍̍̎̎̏̏̐̐̑̑̒̒̓̓̔̔̽̽̾̾̿̿̕̕̚̚”̙Ô̙Ĕ̙8̚̚̚̚̚̚̚̚̚ ̚ +̚ + ̚ ̚ ̚ ̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚̚ ̚ !̚!"̚"#̚#$̚$%̚%&̚&'̚'(̚()̚)*̚*+̚+,̚,-̚-.̚./̚/0̚01̚12̚23̚34̚45̚56̚67̚7̛̛̛̛̛̛̛̛̛ ̛ +̛ + ̛ ̛ ̛ ̛̛̛̛̛̛̛̛̛̜̜̜̜̜̜̜̜̜ ̜ +̜ + ̜ ̜ ̜ ̜̜̜̜̜̜̜̜̜̜̜̜̜̜2̝̝̝̝̝̝̝̝̝ ̝ +̝ + ̝ ̝ ̝ ̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝̝ ̝ !̝!"̝"#̝#$̝$%̝%&̝&'̝'(̝()̝)*̝*+̝+,̝,-̝-.̝./̝/0̝01̝11̞̞̞̞̞̞̞̞̞ ̞ +̞ + ̞ ̞ ̞ ̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞̞ ̞ !̞!"̞"#̞#$̞$%̞%&̞&'̞'(̞()̞)*̞*+̞+,̞,-̞-.̞./̞/0̞0-̟̟̟̟̟̟̟̟̟ ̟ +̟ + ̟ ̟ ̟ ̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟̟ ̟ !̟!"̟"#̟#$̟$%̟%&̟&'̟'(̟()̟)*̟*+̟+,̟,(̠̠̠̠̠̠̠̠̠ ̠ +̠ + ̠ ̠ ̠ ̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠̠ ̠ !̠!"̠"#̠#$̠$%̠%&̠&'̠'̡̡̡̡̡̡̡̡̡ ̡ +̡ + ̡ ̡ ̡ ̡̡̡̡̡̡̡̡̡̡̡̡̡̡̡̢̢̢̢̢̢̢̢̢ ̢ +̢ + ̢ ̢ ̢ ̢̢̢̢̢̢̢̢̢6̣̣̣̣̣̣̣̣̣ ̣ +̣ + ̣ ̣ ̣ ̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣̣ ̣ !̣!"̣"#̣#$̣$%̣%&̣&'̣'(̣()̣)*̣*+̣+,̣,-̣-.̣./̣/0̣01̣12̣23̣34̣45̣5d̤̤̤̤̤̤̤̤̤ ̤ +̤ + ̤ ̤ ̤ ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤ ̤ !̤!"̤"#̤#$̤$%̤%&̤&'̤'(̤()̤)*̤*+̤+,̤,-̤-.̤./̤/0̤01̤12̤23̤34̤45̤56̤67̤78̤89̤9:̤:;̤;<̤<=̤=>̤>?̤?@̤@A̤AB̤BC̤CD̤DE̤EF̤FG̤GH̤HI̤IJ̤JK̤KL̤LM̤MN̤NO̤OP̤PQ̤QR̤RS̤ST̤TṲUV̤VW̤WX̤XY̤YZ̤Z[̤[\̤\]̤]^̤^_̤_`̤`a̤ab̤bc̤c7̥̥̥̥̥̥̥̥̥ ̥ +̥ + ̥ ̥ ̥ ̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥̥ ̥ !̥!"̥"#̥#$̥$%̥%&̥&'̥'(̥()̥)*̥*+̥+,̥,-̥-.̥./̥/0̥01̥12̥23̥34̥45̥56̥6̦̦̦̦̦̦̦̦̦ ̦ +̦ + ̦ ̦ ̦ ̧̧̧̧̧̧̧̧̧̦̦̦̦̦̦̦̦̦ ̧ +̧ + ̧ ̧ ̧ ̧̧̧̧̧̧̧̧̧̧̧̧̧̧2̨̨̨̨̨̨̨̨̨ ̨ +̨ + ̨ ̨ ̨ ̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨̨ ̨ !̨!"̨"#̨#$̨$%̨%&̨&'̨'(̨()̨)*̨*+̨+,̨,-̨-.̨./̨/0̨01̨12̩̩̩̩̩̩̩̩̩ ̩ +̩ + ̩ ̩ ̩ ̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩̩ ̩ !̩!"̩"#̩#$̩$%̩%&̩&'̩'(̩()̩)*̩*+̩+,̩,-̩-.̩./̩/0̩01̩1-̪̪̪̪̪̪̪̪̪ ̪ +̪ + ̪ ̪ ̪ ̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪ ̪ !̪!"̪"#̪#$̪$%̪%&̪&'̪'(̪()̪)*̪*+̪+,̪,(̫̫̫̫̫̫̫̫̫ ̫ +̫ + ̫ ̫ ̫ ̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫̫ ̫ !̫!"̫"#̫#$̫$%̫%&̫&'̫'̬̬̬̬̬̬̬̬̬ ̬ +̬ + ̬ ̬ ̬ ̬̬̬̬̬̬̬̬̬̬̬̬̬̬̬̭̭̭̭̭̭̭̭̭ ̭ +̭ + ̭ ̭ ̭ ̭̭̭̭̭̭̭̭̭6̮̮̮̮̮̮̮̮̮ ̮ +̮ + ̮ ̮ ̮ ̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮̮ ̮ !̮!"̮"#̮#$̮$%̮%&̮&'̮'(̮()̮)*̮*+̮+,̮,-̮-.̮./̮/0̮01̮12̮23̮34̮45̮5d̯̯̯̯̯̯̯̯̯ ̯ +̯ + ̯ ̯ ̯ ̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯̯ ̯ !̯!"̯"#̯#$̯$%̯%&̯&'̯'(̯()̯)*̯*+̯+,̯,-̯-.̯./̯/0̯01̯12̯23̯34̯45̯56̯67̯78̯89̯9:̯:;̯;<̯<=̯=>̯>?̯?@̯@A̯AB̯BC̯CD̯DE̯EF̯FG̯GH̯HI̯IJ̯JK̯KL̯LM̯MN̯NO̯OP̯PQ̯QR̯RS̯ST̯TU̯UV̯VW̯WX̯XY̯YZ̯Z[̯[\̯\]̯]^̯^_̯_`̯`a̯ab̯bc̯c7̰̰̰̰̰̰̰̰̰ ̰ +̰ + ̰ ̰ ̰ ̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰ ̰ !̰!"̰"#̰#$̰$%̰%&̰&'̰'(̰()̰)*̰*+̰+,̰,-̰-.̰./̰/0̰01̰12̰23̰34̰45̰56̰6̱̱̱̱̱̱̱̱̱ ̱ +̱ + ̱ ̱ ̱ ̱̱̱̱̱̱̱̱̱̲̲̲̲̲̲̲̲̲ ̲ +̲ + ̲ ̲ ̲ ̲̲̲̲̲̲̲̲̲̲̲̲̲̲2̳̳̳̳̳̳̳̳̳ ̳ +̳ + ̳ ̳ ̳ ̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳̳ ̳ !̳!"̳"#̳#$̳$%̳%&̳&'̳'(̳()̳)*̳*+̳+,̳,-̳-.̳./̳/0̳01̳12̴̴̴̴̴̴̴̴̴ ̴ +̴ + ̴ ̴ ̴ ̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴̴ ̴ !̴!"̴"#̴#$̴$%̴%&̴&'̴'(̴()̴)*̴*+̴+,̴,-̴-.̴./̴/0̴01̴1-̵̵̵̵̵̵̵̵̵ ̵ +̵ + ̵ ̵ ̵ ̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵̵ ̵ !̵!"̵"#̵#$̵$%̵%&̵&'̵'(̵()̵)*̵*+̵+,̵,(̶̶̶̶̶̶̶̶̶ ̶ +̶ + ̶ ̶ ̶ ̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶ ̶ !̶!"̶"#̶#$̶$%̶%&̶&'̶'̷̷̷̷̷̷̷̷̷ ̷ +̷ + ̷ ̷ ̷ ̷̷̷̷̷̷̷̷̷̷̷̷̷̷̷̸̸̸̸̸̸̸̸̸ ̸ +̸ + ̸ ̸ ̸ ̸̸̸̸̸̸̸̸̸̹̹̹̹̹̹̹̹̹ ̹ +̹ + ̹ ̹ ̹ ̹̹̹̹̹̹̹̹̹F̺̺̺̺̺̺̺̺̺ ̺ +̺ + ̺ ̺ ̺ ̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺̺ ̺ !̺!"̺"#̺#$̺$%̺%&̺&'̺'(̺()̺)*̺*+̺+,̺,-̺-.̺./̺/0̺01̺12̺23̺34̺45̺56̺67̺78̺89̺9:̺:;̺;<̺<=̺=>̺>?̺?@̺@A̺AB̺BC̺CD̺DE̺E;̻̻̻̻̻̻̻̻̻ ̻ +̻ + ̻ ̻ ̻ ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ ̻ !̻!"̻"#̻#$̻$%̻%&̻&'̻'(̻()̻)*̻*+̻+,̻,-̻-.̻./̻/0̻01̻12̻23̻34̻45̻56̻67̻78̻89̻9:̻:9̼̼̼̼̼̼̼̼̼ ̼ +̼ + ̼ ̼ ̼ ̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼̼ ̼ !̼!"̼"#̼#$̼$%̼%&̼&'̼'(̼()̼)*̼*+̼+,̼,-̼-.̼./̼/0̼01̼12̼23̼34̼45̼56̼67̼78̼89̽̽̽̽̽̽̽̽̽ ̽ +̽ + ̽ ̽ ̽ ̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽̽ ̽ !̽!"̽"#̽#$̽$%̽%&̽&'̽'(̽()̽)*̽*+̽+,̽,-̽-.̽./̽/0̽01̽12̽23̽34̽45̽56̽67̽78̽8;̾̾̾̾̾̾̾̾̾ ̾ +̾ + ̾ ̾ ̾ ̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾̾ ̾ !̾!"̾"#̾#$̾$%̾%&̾&'̾'(̾()̾)*̾*+̾+,̾,-̾-.̾./̾/0̾01̾12̾23̾34̾45̾56̾67̾78̾89̾9:̾:C̿̿̿̿̿̿̿̿̿ ̿ +̿ + ̿ ̿ ̿ ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ ̿ !̿!"̿"#̿#$̿$%̿%&̿&'̿'(̿()̿)*̿*+̿+,̿,-̿-.̿./̿/0̿01̿12̿23̿34̿45̿56̿67̿78̿89̿9:̿:;̿;<̿<=̿=>̿>?̿?@̿@A̿AB̿B< + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;; + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899:: + + D + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCd + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbcc7 + +  !!""##$$%%&&''(())**++,,--..//00112233445566 + +  + + 2 + +  !!""##$$%%&&''(())**++,,--..//00111 + +  !!""##$$%%&&''(())**++,,--..//00- + +  !!""##$$%%&&''(())**++,,( + +  !!""##$$%%&&'' + +  + + 8 + +  !!""##$$%%&&''(())**++,,--..//0011223344556677d + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbcc< + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;; + +  + + 2 + +  !!""##$$%%&&''(())**++,,--..//00111 + +  !!""##$$%%&&''(())**++,,--..//00- + +  !!""##$$%%&&''(())**++,,( + +  !!""##$$%%&&'' + +  + +  + + B + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AA* + +  !!""##$$%%&&''(())+ + +  !!""##$$%%&&''(())**) + +  !!""##$$%%&&''((, + +  !!""##$$%%&&''(())**++- + +  !!""##$$%%&&''(())**++,, + +  + +  + +N + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMQ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPK + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJK + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJQ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPT + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSQ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPP` + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__T + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSW + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVV1 + +  !!""##$$%%&&''(())**++,,--..//00) + +  !!""##$$%%&&''((; + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::H + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG + +: + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899F + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEE + +7 + +  !!""##$$%%&&''(())**++,,--..//00112233445566@ + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>?? + +6 + +  !!""##$$%%&&''(())**++,,--..//001122334455> + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<== + +6 + +  !!""##$$%%&&''(())**++,,--..//001122334455> + +  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<== + +6  + +      !!""##$$%%&&''(())**++,,--..//001122334455>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==  + +;  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::H  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGG  + +-  + +      !!""##$$%%&&''(())**++,,,  + +      !!""##$$%%&&''(())**++  + +        + + + + + + + + +  + + + +  +  +  +  + + + + + + + + + + + + + + + + +       3           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 2=           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ /0 01 12 23 34 45 56 67 78 89 9: :; ;< <>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>>  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==C  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABB?  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>@  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??  + +    .  + +      !!""##$$%%&&''(())**++,,--/  + +      !!""##$$%%&&''(())**++,,--..-  + +      !!""##$$%%&&''(())**++,,-  + +      !!""##$$%%&&''(())**++,,/  + +      !!""##$$%%&&''(())**++,,--../  + +      !!""##$$%%&&''(())**++,,--..0           + +                        ! !" "# #$ $% %& &' '( () )* *+ +, ,- -. ./ //!!!!!!!!! ! +! + ! ! ! !!!!!!!!!!!!!!!!!! ! !!!"!"#!#$!$%!%&!&'!'(!()!)*!*+!+,!,-!-.!.4""""""""" " +" + " " " """""""""""""""""" " !"!"""#"#$"$%"%&"&'"'("()")*"*+"+,",-"-."./"/0"01"12"23"30######### # +# + # # # ################## # !#!"#"###$#$%#%&#&'#'(#()#)*#*+#+,#,-#-.#./#/1$$$$$$$$$ $ +$ + $ $ $ $$$$$$$$$$$$$$$$$$ $ !$!"$"#$#$$$%$%&$&'$'($()$)*$*+$+,$,-$-.$./$/0$06%%%%%%%%% % +% + % % % %%%%%%%%%%%%%%%%%% % !%!"%"#%#$%$%%%&%&'%'(%()%)*%*+%+,%,-%-.%./%/0%01%12%23%34%45%5*&&&&&&&&& & +& + & & & &&&&&&&&&&&&&&&&&& & !&!"&"#&#$&$%&%&&&'&'(&()&)''''''',((((((((( ( +( + ( ( ( (((((((((((((((((( ( !(!"("#(#$($%(%&(&'('((()()*(*+(+F))))))))) ) +) + ) ) ) )))))))))))))))))) ) !)!")"#)#$)$%)%&)&')'()()))*)*+)+,),-)-.)./)/0)01)12)23)34)45)56)67)78)89)9:):;);<)<=)=>)>?)?@)@A)AB)BC)CD)DE)ED********* * +* + * * * ****************** * !*!"*"#*#$*$%*%&*&'*'(*()*)***+*+,*,-*-.*./*/0*01*12*23*34*45*56*67*78*89*9:*:;*;<*<=*=>*>?*?@*@A*AB*BC*C+++++++++ + ++ + + + + ++++++++++++++@,,,,,,,,, , +, + , , , ,,,,,,,,,,,,,,,,,, , !,!","#,#$,$%,%&,&','(,(),)*,*+,+,,,-,-.,./,/0,01,12,23,34,45,56,67,78,89,9:,:;,;<,<=,=>,>?,?%--------- - +- + - - - ------------------ - !-!"-"#-#$-$......... . +. + . . . ...............///////// / +/ + / / / /:000000000 0 +0 + 0 0 0 000000000000000000 0 !0!"0"#0#$0$%0%&0&'0'(0()0)*0*+0+,0,-0-.0./0/000101202303404505606707808909111111111 1 +1 + 1 1 F222222222 2 +2 + 2 2 2 222222222222222222 2 !2!"2"#2#$2$%2%&2&'2'(2()2)*2*+2+,2,-2-.2./2/020121222323424525626727828929:2:;2;<2<=2=>2>?2?@2@A2AB2BC2CD2DE2ED333333333 3 +3 + 3 3 3 333333333333333333 3 !3!"3"#3#$3$%3%&3&'3'(3()3)*3*+3+,3,-3-.3./3/030131232333434535636737838939:3:;3;<3<=3=>3>?3?@3@A3AB3BC3C444444444 4 +4 + 4 4 4 444444444444444447555555555 5 +5 + 5 5 5 555555555555555555 5 !5!"5"#5#$5$%5%&5&'5'(5()5)*5*+5+,5,-5-.5./5/050151252353454555656%666666666 6 +6 + 6 6 6 666666666666666666 6 !6!"6"#6#$6$N777777777 7 +7 + 7 7 7 777777777777777777 7 !7!"7"#7#$7$%7%&7&'7'(7()7)*7*+7+,7,-7-.7./7/070171272373474575676777878979:7:;7;<7<=7=>7>?7?@7@A7AB7BC7CD7DE7EF7FG7GH7HI7IJ7JK7KL7LM7ML888888888 8 +8 + 8 8 8 888888888888888888 8 !8!"8"#8#$8$%8%&8&'8'(8()8)*8*+8+,8,-8-.8./8/080181282383484585686787888989:8:;8;<8<=8=>8>?8?@8@A8AB8BC8CD8DE8EF8FG8GH8HI8IJ8JK8K?999999999 9 +9 + 9 9 9 999999999999999999 9 !9!"9"#9#$9$%9%&9&'9'(9()9)*9*+9+,9,-9-.9./9/090191292393494595696797898999:9:;9;<9<=9=>9>L::::::::: : +: + : : : :::::::::::::::::: : !:!":"#:#$:$%:%&:&':'(:():)*:*+:+,:,-:-.:./:/0:01:12:23:34:45:56:67:78:89:9:::;:;<:<=:=>:>?:?@:@A:AB:BC:CD:DE:EF:FG:GH:HI:IJ:JK:K/;;;;;;;;; ; +; + ; ; ; ;;;;;;;;;;;;;;;;;; ; !;!";"#;#$;$%;%&;&';'(;();)*;*+;+,;,-;-.;.)<<<<<<<<< < +< + < < < <<<<<<<<<<<<<<<<<< < !>>>>>>>> > +> + > > > >>>>>>>>>>>>>????????? ? +? + ? ? ? ???????????-@@@@@@@@@ @ +@ + @ @ @ @@@@@@@@@@@@@@@@@@ @ !@!"@"#@#$@$%@%&@&'@'(@()@)*@*+@+,@,)AAAAAAAAA A +A + A A A AAAAAAAAAAAAAAAAAA A !A!"A"#A#$A$%A%&A&'A'(A(BBBBBBBBB B +B + B B B BBBBBBBBBBCCCCCCCCC C +C + C C C CCCCCCCCCCCCCCCCCC C !C!"C"#C#$C$%C%&C&'C'(C()C)*C*+C+,C,-C-.C./C/0C01C12C23C34C45C56C67C78C89C9:C:;C;<C<=C=>C>?C?@C@ACADDDDDDDDD D +D + D D D DDDDDDD!EEEEEEEEE E +E + E E E EEEEEEEEEEEEEEEEEE E FFFFFFFFF F +F + F F F FFVGGGGGGGGG G +G + G G G GGGGGGGGGGGGGGGGGG G !G!"G"#G#$G$%G%&G&'G'(G()G)*G*+G+,G,-G-.G./G/0G01G12G23G34G45G56G67G78G89G9:G:;G;<G<=G=>G>?G?@G@AGABGBCGCDGDEGEFGFGGGHGHIGIJGJKGKLGLMGMNGNOGOPGPQGQRGRSGSTGTUGU%HHHHHHHHH H +H + H H H HHHHHHHHHHHHHHHHHH H !H!"H"#H#$H$ IIIIIIIII I +I + I I I IIIIIIIIIIIIIIIIIIJJJJJJJJJ J +J + J J J J:KKKKKKKKK K +K + K K K KKKKKKKKKKKKKKKKKK K !K!"K"#K#$K$%K%&K&'K'(K()K)*K*+K+,K,-K-.K./K/0K01K12K23K34K45K56K67K78K89K9LLLLLLLLL L +L + L L MMMMMMMMM M +M + M M M MMMMMMMMMMNNNNNNNNN N +N + N N N NNNNNNNOOOOOOOOO O +O + O O O OOOOOOO*PPPPPPPPP P +P + P P P PPPPPPPPPPPPPPPPPP P !P!"P"#P#$P$%P%&P&'P'(P()P)FQQQQQQQQQ Q +Q + Q Q Q QQQQQQQQQQQQQQQQQQ Q !Q!"Q"#Q#$Q$%Q%&Q&'Q'(Q()Q)*Q*+Q+,Q,-Q-.Q./Q/0Q01Q12Q23Q34Q45Q56Q67Q78Q89Q9:Q:;Q;<Q<=Q=>Q>?Q?@Q@AQABQBCQCDQDEQEDRRRRRRRRR R +R + R R R RRRRRRRRRRRRRRRRRR R !R!"R"#R#$R$%R%&R&'R'(R()R)*R*+R+,R,-R-.R./R/0R01R12R23R34R45R56R67R78R89R9:R:;R;<R<=R=>R>?R?@R@ARABRBCRCSSSSSSSSS S +S + S S S SSSSSSSSSSSSSSSSS7TTTTTTTTT T +T + T T T TTTTTTTTTTTTTTTTTT T !T!"T"#T#$T$%T%&T&'T'(T()T)*T*+T+,T,-T-.T./T/0T01T12T23T34T45T56T6%UUUUUUUUU U +U + U U U UUUUUUUUUUUUUUUUUU U !U!"U"#U#$U$NVVVVVVVVV V +V + V V V VVVVVVVVVVVVVVVVVV V !V!"V"#V#$V$%V%&V&'V'(V()V)*V*+V+,V,-V-.V./V/0V01V12V23V34V45V56V67V78V89V9:V:;V;<V<=V=>V>?V?@V@AVABVBCVCDVDEVEFVFGVGHVHIVIJVJKVKLVLMVMLWWWWWWWWW W +W + W W W WWWWWWWWWWWWWWWWWW W !W!"W"#W#$W$%W%&W&'W'(W()W)*W*+W+,W,-W-.W./W/0W01W12W23W34W45W56W67W78W89W9:W:;W;<W<=W=>W>?W?@W@AWABWBCWCDWDEWEFWFGWGHWHIWIJWJKWK9XXXXXXXXX X +X + X X X XXXXXXXXXXXXXXXXXX X !X!"X"#X#$X$%X%&X&'X'(X()X)*X*+X+,X,-X-.X./X/0X01X12X23X34X45X56X67X78X8JYYYYYYYYY Y +Y + Y Y Y YYYYYYYYYYYYYYYYYY Y !Y!"Y"#Y#$Y$%Y%&Y&'Y'(Y()Y)*Y*+Y+,Y,-Y-.Y./Y/0Y01Y12Y23Y34Y45Y56Y67Y78Y89Y9:Y:;Y;<Y<=Y=>Y>?Y?@Y@AYABYBCYCDYDEYEFYFGYGHYHIYI5ZZZZZZZZZ Z +Z + Z Z Z ZZZZZZZZZZZZZZZZZZ Z !Z!"Z"#Z#$Z$%Z%&Z&'Z'(Z()Z)*Z*+Z+,Z,-Z-.Z./Z/0Z01Z12Z23Z34Z44[[[[[[[[[ [ +[ + [ [ [ [[[[[[[[[[[[[[[[[[ [ ![!"["#[#$[$%[%&[&'['([()[)*[*+[+,[,-[-.[./[/0[01[12[23[3F\\\\\\\\\ \ +\ + \ \ \ \\\\\\\\\\\\\\\\\\ \ !\!"\"#\#$\$%\%&\&'\'(\()\)*\*+\+,\,-\-.\./\/0\01\12\23\34\45\56\67\78\89\9:\:;\;<\<=\=>\>?\?@\@A\AB\BC\CD\DE\E@]]]]]]]]] ] +] + ] ] ] ]]]]]]]]]]]]]]]]]] ] !]!"]"#]#$]$%]%&]&']'(]()])*]*+]+,],-]-.]./]/0]01]12]23]34]45]56]67]78]89]9:]:;];<]<=]=>]>?]?8^^^^^^^^^ ^ +^ + ^ ^ ^ ^^^^^^^^^^^^^^^^^^ ^ !^!"^"#^#$^$%^%&^&'^'(^()^)*^*+^+,^,-^-.^./^/0^01^12^23^34^45^56^67^7I_________ _ +_ + _ _ _ __________________ _ !_!"_"#_#$_$%_%&_&'_'(_()_)*_*+_+,_,-_-._./_/0_01_12_23_34_45_56_67_78_89_9:_:;_;<_<=_=>_>?_?@_@A_AB_BC_CD_DE_EF_FG_GH_H````````` ` +` + ` ` ` `````````````````-aaaaaaaaa a +a + a a a aaaaaaaaaaaaaaaaaa a !a!"a"#a#$a$%a%&a&'a'(a()a)*a*+a+,a,'bbbbbbbbb b +b + b b b bbbbbbbbbbbbbbbbbb b !b!"b"#b#$b$%b%&b&ccccccccc c +c + c c c cccccccccBddddddddd d +d + d d d dddddddddddddddddd d !d!"d"#d#$d$%d%&d&'d'(d()d)*d*+d+,d,-d-.d./d/0d01d12d23d34d45d56d67d78d89d9:d:;d;<d<=d=>d>?d?@d@AdAeeeeeeeee e +e + e e e eeeeeeefffffffff f +f + f f f fffffffffffffffffggggggggg g +g + g g g ggRhhhhhhhhh h +h + h h h hhhhhhhhhhhhhhhhhh h !h!"h"#h#$h$%h%&h&'h'(h()h)*h*+h+,h,-h-.h./h/0h01h12h23h34h45h56h67h78h89h9:h:;h;<h<=h=>h>?h?@h@AhABhBChCDhDEhEFhFGhGHhHIhIJhJKhKLhLMhMNhNOhOPhPQhQ%iiiiiiiii i +i + i i i iiiiiiiiiiiiiiiiii i !i!"i"#i#$i$ jjjjjjjjj j +j + j j j jjjjjjjjjjjjjjjjjjkkkkkkkkk k +k + k k k k:lllllllll l +l + l l l llllllllllllllllll l !l!"l"#l#$l$%l%&l&'l'(l()l)*l*+l+,l,-l-.l./l/0l01l12l23l34l45l56l67l78l89l9mmmmmmmmm m +m + m m nnnnnnnnn n +n + n n n nnnnnnnnnnooooooooo o +o + o o o ooooppppppppp p +p + p p p ppppppppp(qqqqqqqqq q +q + q q q qqqqqqqqqqqqqqqqqq q !q!"q"#q#$q$%q%&q&'q'rrrrrrrsssssssss s +s + s s s sssssssssssssssss)ttttttttt t +t + t t t tttttttttttttttttt t !t!"t"#t#$t$%t%&t&'t'(t(uuuuuuuvvvvvvvvv v +v + v v v vvvvvvvvvv)wwwwwwwww w +w + w w w wwwwwwwwwwwwwwwwww w !w!"w"#w#$w$%w%&w&'w'(w(xxxxxxx yyyyyyyyy y +y + y y y yyyyyyyyyyyyyyyyyy*zzzzzzzzz z +z + z z z zzzzzzzzzzzzzzzzzz z !z!"z"#z#$z$%z%&z&'z'(z()z){{{{{{{||||||||| | +| + | | | ||||||||'}}}}}}}}} } +} + } } } }}}}}}}}}}}}}}}}}} } !}!"}"#}#$}$%}%&}&~~~~~~~  + +    (  + +      !!""##$$%%&&''  + +    '  + +      !!""##$$%%&&  + +    (  + +      !!""##$$%%&&''  + +    )  + +      !!""##$$%%&&''((   + +    *  + +      !!""##$$%%&&''(())  + +    )  + +      !!""##$$%%&&''((   + +    *  + +      !!""##$$%%&&''(())  + +    *  + +      !!""##$$%%&&''(())!  + +      +  + +      !!""##$$%%&&''(())**  + +    )  + +      !!""##$$%%&&''((   + +    *  + +      !!""##$$%%&&''(())  + +    .  + +      !!""##$$%%&&''(())**++,,--%  + +      !!""##$$/  + +      !!""##$$%%&&''(())**++,,--..  + +    *  + +      !!""##$$%%&&''(())!  + +      +  + +      !!""##$$%%&&''(())**  + +    +  + +      !!""##$$%%&&''(())**"  + +      !!,  + +      !!""##$$%%&&''(())**++  + +    F  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEED  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCC  + +    @  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??   + +       + +    %  + +      !!""##$$  + +      + +    :  + +      !!""##$$%%&&''(())**++,,--..//00112233445566778899  + +   3  + +      !!""##$$%%&&''(())**++,,--..//001122  + +      + +    %  + +      !!""##$$&  + +      !!""##$$%%rIdynamicImportCacheexportAllDeclarationCacheexportNamedDeclarationCacheimportCacherJtypestartenddeclarationspecifierssourceExportNamedDeclarationKLrKtypestartendidsuperClassbodyClassDeclarationKLrLtypestartendnameIdentifierTopMenuBarLIdentifierViewPUrMtypestartendbodyClassBodyKLrNtypestartendstaticcomputedkeykindvalueMethodDefinition+LIdentifier*constructorconstructorrOtypestartendidexpressiongeneratorasyncparamsbodyFunctionExpression*+•LIdentifier+1parentLIdentifier39paramsLIdentifier;I__localStoragerPtypestartendleftrightAssignmentPatternKVLIdentifierKQelmtIdrQtypestartendoperatorprefixargumentUnaryExpressionTV-rRtypestartendvaluerawLiteralUV1PAssignmentPatternXpLIdentifierXdparamsLambdaLIdentifiergpundefinedMBlockStatementr+rStypestartendexpressionExpressionStatement}rTtypestartendcalleeargumentsoptionalCallExpression}rUtypestartendSuper}LIdentifierparentLIdentifier__localStorageLIdentifierelmtIdrVtypestartendtestconsequentalternateIfStatementrWtypestartendleftoperatorrightBinaryExpressionQUnaryExpressionĦtypeofLIdentifierĬparamsLambda===RLiteralӨfunction"function"MBlockStatementSExpressionStatement rXtypestartendoperatorleftrightAssignmentExpression=rYtypestartendobjectpropertycomputedoptionalMemberExpressionUThisExpressionLIdentifierparamsGenerator_LIdentifierparamsLambdaSExpressionStatementlXAssignmentExpressionk=YMemberExpression8UThisExpression"LIdentifier#8reviseLabelControllerrZtypestartendcalleeargumentsNewExpression;kLIdentifier?UCustomDialogControllerr[typestartendpropertiesObjectExpressionVdr\typestartendmethodshorthandcomputedkeyvaluekindPropertyeYLIdentifierelbuilderOArrowFunctionExpressionnYMBlockStatementtYr]typestartenddeclarationskindVariableDeclaration,r^typestartendidinitVariableDeclarator+LIdentifierparamsLambdaOArrowFunctionExpression+MBlockStatement+r_typestartendargumentReturnStatement[ObjectExpression\PropertyLIdentifierߦsimObjYMemberExpressionYMemberExpressionUThisExpressionLIdentifierallSimObjYMemberExpressionUThisExpressionLIdentifierchoseIndex¤initlet]VariableDeclaration>^VariableDeclaratorBLIdentifierBJjsDialogZNewExpressionMLIdentifierQ\LabelReviseUThisExpression]a[ObjectExpressionc\PropertyeLIdentifiereksimObjYMemberExpressionmYMemberExpressionm{UThisExpressionmqLIdentifierr{allSimObjYMemberExpression|UThisExpression|LIdentifierchoseIndex¤initLIdentifierundefinedQUnaryExpression-RLiteral1LIdentifierparamsLambdaletSExpressionStatement TCallExpressionYMemberExpressionLIdentifierǨjsDialogLIdentifierխsetController‘YMemberExpressionUThisExpressionLIdentifier reviseLabelControllerSExpressionStatement2JTCallExpression2IYMemberExpression2?LIdentifier28ViewPULIdentifier9?create‘LIdentifier@HjsDialog¤initUThisExpressionfjSExpressionStatementvXAssignmentExpressionv=YMemberExpressionvUThisExpressionvzLIdentifier{deleteLineControllerZNewExpressionLIdentifierCustomDialogController[ObjectExpression\PropertyLIdentifierçbuilderOArrowFunctionExpressionMBlockStatement]VariableDeclaration^VariableDeclaratorLIdentifierparamsLambdaOArrowFunctionExpressionMBlockStatement_ReturnStatemento[ObjectExpressionn\Property0WLIdentifier06simObjYMemberExpression8WYMemberExpression8FUThisExpression8@-RLiteral?@1LIdentifierBNparamsLambdaletSExpressionStatementbTCallExpressionbYMemberExpressionbxLIdentifierbjjsDialogLIdentifierkxsetController‘YMemberExpressionyUThisExpressiony}LIdentifierPacketControllerSExpressionStatementTCallExpressionYMemberExpressionLIdentifierצViewPULIdentifierަcreate‘LIdentifierjsDialog¤initUThisExpression SExpressionStatementiXAssignmentExpressionh=YMemberExpression/UThisExpressionLIdentifier/BatchPacketControllerZNewExpression2hLIdentifier6LCustomDialogController[ObjectExpressionMa\Property\VLIdentifier\cbuilderOArrowFunctionExpressioneVMBlockStatementkV]VariableDeclaration~#^VariableDeclarator"LIdentifierparamsLambdaOArrowFunctionExpression"MBlockStatement"_ReturnStatement[ObjectExpression\PropertyLIdentifier֦simObjYMemberExpressionYMemberExpressionUThisExpressionLIdentifierallSimObjYMemberExpressionUThisExpressionLIdentifierchoseIndex¤initlet]VariableDeclaration5^VariableDeclarator9LIdentifier9AjsDialogZNewExpressionDLIdentifierHVBatchPacketSetUThisExpressionW[[ObjectExpression]\Property_LIdentifier_esimObjYMemberExpressiongYMemberExpressionguUThisExpressiongkLIdentifierluallSimObjYMemberExpressionvUThisExpressionvzLIdentifier{choseIndex¤initLIdentifierundefinedQUnaryExpression-RLiteral1LIdentifierparamsLambdaletSExpressionStatementTCallExpressionYMemberExpressionLIdentifierjsDialogLIdentifierϭsetController‘YMemberExpressionUThisExpressionLIdentifierBatchPacketControllerSExpressionStatement/GTCallExpression/FYMemberExpression/BitemMBlockStatementGӒVIfStatementfWLogicalExpressionjWBinaryExpressionjYMemberExpressionjYMemberExpressionjYMemberExpressionjxUThisExpressionjnLIdentifieroxallSimObjYMemberExpressionyUThisExpressiony}LIdentifier~choseIndexLIdentifierobjID£===YMemberExpressionYMemberExpressionLIdentifieritemLIdentifiernObjELIdentifierobjID¢||WBinaryExpressionYMemberExpressionYMemberExpressionYMemberExpressionUThisExpressionLIdentifierallSimObjYMemberExpressionUThisExpressionLIdentifierƪchoseIndexLIdentifierͥobjID£===YMemberExpressionYMemberExpressionLIdentifier֤itemLIdentifierܥnObjSLIdentifierobjIDMBlockStatementSExpressionStatementTCallExpressionYMemberExpressionLIdentifier itemLIdentifier deleteObjConn_ReturnStatementboRLiteralin¥false_ReturnStatementRLiteralätrueSExpressionStatementTCallExpressionYMemberExpressionYMemberExpressionUThisExpressionLIdentifierallSimObjLIdentifiersplice’YMemberExpressionUThisExpression LIdentifier +choseIndexRLiteral1SExpressionStatement3IXAssignmentExpression3H=YMemberExpression3@UThisExpression37LIdentifier8@isNewObjRLiteralCH¥falseSExpressionStatementcxXAssignmentExpressioncw=YMemberExpressioncrUThisExpressioncgLIdentifierhrnewObjTypeQUnaryExpressionuw-RLiteralvw1SExpressionStatementXAssignmentExpression=YMemberExpressionUThisExpressionLIdentifierchoseIndexRLiteralnullMBlockStatementˑSExpressionStatementTCallExpressionYMemberExpression LIdentifierpromptActionLIdentifier showToast‘[ObjectExpression \Property,ALIdentifier,3messageRLiteral5A请先选择要删除的对象 "请先选择要删除的对象"init\Property`nLIdentifier`hdurationRLiteraljn 3000init\PropertyLIdentifierbottomRLiteral250initZNewExpressionLIdentifierTopMenuItemRLiteral删除连接线"删除连接线"OArrowFunctionExpressionMBlockStatementVIfStatementWBinaryExpression2YMemberExpression*UThisExpressionLIdentifier *choseIndex¢!=RLiteral.2nullMBlockStatement4SExpressionStatementOpTCallExpressionOoYMemberExpressionOmYMemberExpressionOhUThisExpressionOSLIdentifierThdeleteLineControllerLIdentifierimopenMBlockStatementSExpressionStatement}TCallExpression|YMemberExpressionLIdentifierɬpromptActionLIdentifierөshowToast‘[ObjectExpression{\Property +LIdentifiermessageRLiteral +$请选择要删除的连接线对象&"请选择要删除的连接线对象"init\Property)7LIdentifier)1durationRLiteral37 3000init\PropertyV`LIdentifierV\bottomRLiteral^`250initZNewExpressionlLIdentifierTopMenuItemRLiteral修改标签"修改标签"OArrowFunctionExpressionkMBlockStatementkVIfStatementXWBinaryExpressionYMemberExpressionUThisExpressionLIdentifierchoseIndex¢!=RLiteralnullMBlockStatementPSExpressionStatement9TCallExpression8YMemberExpression6YMemberExpression1UThisExpressionLIdentifier1reviseLabelControllerLIdentifier26openMBlockStatementkXSExpressionStatementATCallExpression@YMemberExpressionLIdentifierpromptActionLIdentifiershowToast‘[ObjectExpression?\PropertyLIdentifierçmessageRLiteralε请选择仿真对象"请选择仿真对象"init\PropertyLIdentifierdurationRLiteral 3000init\Property$LIdentifier bottomRLiteral"$250initZNewExpression} LIdentifierTopMenuRLiteral基础配置"基础配置"`ArrayExpression œZNewExpressionLIdentifierTopMenuItemRLiteral网络配置"网络配置"OArrowFunctionExpressionMBlockStatementVIfStatementWLogicalExpressiontWBinaryExpressionYMemberExpressionUThisExpressionLIdentifierڪchoseIndex¢!=RLiteralnull&&WLogicalExpressionsWLogicalExpressionCWBinaryExpressionYMemberExpressionYMemberExpressionYMemberExpressionUThisExpressionLIdentifierallSimObjYMemberExpressionUThisExpressionLIdentifierchoseIndexLIdentifierobjType¢==RLiteral1||WBinaryExpressionCYMemberExpression>YMemberExpression6YMemberExpression%UThisExpressionLIdentifier%allSimObjYMemberExpression&5UThisExpression&*LIdentifier+5choseIndexLIdentifier7>objType¢==RLiteralBC2||WBinaryExpressionGsYMemberExpressionGnYMemberExpressionGfYMemberExpressionGUUThisExpressionGKLIdentifierLUallSimObjYMemberExpressionVeUThisExpressionVZLIdentifier[echoseIndexLIdentifiergnobjType¢==RLiteralrs3MBlockStatementvƑSExpressionStatementTCallExpressionYMemberExpressionYMemberExpressionUThisExpressionLIdentifierNetworkControllerLIdentifieropenMBlockStatementΑSExpressionStatementTCallExpressionYMemberExpressionLIdentifierpromptActionLIdentifier showToast‘[ObjectExpression\Property2DLIdentifier29messageRLiteral;D请选择正确对象"请选择正确对象"init\PropertycqLIdentifierckdurationRLiteralmq 3000init\PropertyLIdentifierbottomRLiteral250initZNewExpressionLIdentifierTopMenuItemRLiteral路由器配置"路由器配置"OArrowFunctionExpressionMBlockStatementґVIfStatementWLogicalExpressioneWBinaryExpression5YMemberExpression-UThisExpression"LIdentifier#-choseIndex¢!=RLiteral15null&&WBinaryExpression9eYMemberExpression9`YMemberExpression9XYMemberExpression9GUThisExpression9=LIdentifier>GallSimObjYMemberExpressionHWUThisExpressionHLLIdentifierMWchoseIndexLIdentifierY`objType¢==RLiteralde2MBlockStatementgSExpressionStatementTCallExpressionYMemberExpressionYMemberExpressionUThisExpressionLIdentifierRouterControllerLIdentifieropenMBlockStatementSExpressionStatementTCallExpressionYMemberExpressionLIdentifierpromptActionLIdentifiershowToast‘[ObjectExpression\Property"5LIdentifier")messageRLiteral+5请选择路由器对象"请选择路由器对象"init\PropertyTbLIdentifierT\durationRLiteral^b 3000init\PropertyLIdentifierbottomRLiteral250initZNewExpression LIdentifierTopMenuItemRLiteral交换器配置"交换器配置"OArrowFunctionExpression MBlockStatement ÑVIfStatement WLogicalExpressionVWBinaryExpression&YMemberExpressionUThisExpressionLIdentifierchoseIndex¢!=RLiteral"&null&&WBinaryExpression*VYMemberExpression*QYMemberExpression*IYMemberExpression*8UThisExpression*.LIdentifier/8allSimObjYMemberExpression9HUThisExpression9=LIdentifier>HchoseIndexLIdentifierJQobjType¢==RLiteralUV3MBlockStatementXSExpressionStatementsTCallExpressionsYMemberExpressionsYMemberExpressionsUThisExpressionswLIdentifierxSwitchControllerLIdentifieropenMBlockStatement SExpressionStatement TCallExpression YMemberExpressionLIdentifierpromptActionLIdentifiershowToast‘[ObjectExpression \Property  &LIdentifier  messageRLiteral  &请选择交换机对象"请选择交换机对象"init\Property E SLIdentifier E MdurationRLiteral O S 3000init\Property r |LIdentifier r xbottomRLiteral z |250initZNewExpression "LIdentifier TopMenuRLiteral 显示设置"显示设置"`ArrayExpression "ĔZNewExpression !\LIdentifier TopMenuItemRLiteral !显示/不显示标签"显示/不显示标签"OArrowFunctionExpression!![MBlockStatement! ![SExpressionStatement!#!HXAssignmentExpression!#!G=YMemberExpression!#!3UThisExpression!#!'LIdentifier!(!3isShowLabelQUnaryExpression!6!G!YMemberExpression!7!GUThisExpression!7!;LIdentifier!XAssignmentExpression'*'==YMemberExpression'*'8UThisExpression'*'.LIdentifier'/'8allSimObj`ArrayExpression';'=SExpressionStatement'T'iXAssignmentExpression'T'h=YMemberExpression'T'cUThisExpression'T'XLIdentifier'Y'callSimConn`ArrayExpression'f'hSExpressionStatement''XAssignmentExpression''=YMemberExpression''UThisExpression''LIdentifier''TempConn`ArrayExpression''SExpressionStatement''XAssignmentExpression''=YMemberExpression''UThisExpression''LIdentifier''isNewObjRLiteral''¥falseSExpressionStatement''XAssignmentExpression''=YMemberExpression''UThisExpression''LIdentifier''choseIndexRLiteral''nullSExpressionStatement(,(pXAssignmentExpression(,(o=YMemberExpression(,(UThisExpression)(),LIdentifier)-)>initializeConsume’RLiteral)?)IisNewObj"isNewObj"RLiteral)K)UisNewObj"isNewObj"SExpressionStatement)a)XAssignmentExpression)a)=YMemberExpression)a)rUThisExpression)a)eLIdentifier)f)r__newObjTypeTCallExpression)u)YMemberExpression)u)UThisExpression)u)yLIdentifier)z)initializeConsume’RLiteral))newObjType"newObjType"RLiteral))newObjType"newObjType"SExpressionStatement))XAssignmentExpression))=YMemberExpression))UThisExpression))LIdentifier))ì__choseIndexTCallExpression))YMemberExpression))UThisExpression))LIdentifier))ܱinitializeConsume’RLiteral))choseIndex"choseIndex"RLiteral))choseIndex"choseIndex"SExpressionStatement**MXAssignmentExpression**L=YMemberExpression**UThisExpression**LIdentifier**__isShowLabelTCallExpression**LYMemberExpression**.UThisExpression**LIdentifier**.initializeConsume’RLiteral*/**KisShowLabel"isShowLabel"SExpressionStatement*W*XAssignmentExpression*W*=YMemberExpression*W*hUThisExpression*W*[LIdentifier*\*h__isShowPortTCallExpression*k*YMemberExpression*k*UThisExpression*k*oLIdentifier*p*initializeConsume’RLiteral**isShowPort"isShowPort"RLiteral**isShowPort"isShowPort"SExpressionStatement**XAssignmentExpression**=YMemberExpression**UThisExpression**LIdentifier**__isShowInterfaceTCallExpression**YMemberExpression**UThisExpression**LIdentifier**ױinitializeConsume’RLiteral**isShowInterface"isShowInterface"RLiteral**isShowInterface"isShowInterface"SExpressionStatement++RXAssignmentExpression++Q=YMemberExpression++UThisExpression++ LIdentifier+ +__isShowTableTCallExpression++QYMemberExpression++3UThisExpression++!LIdentifier+"+3initializeConsume’RLiteral+4+AisShowTable"isShowTable"RLiteral+C+PisShowTable"isShowTable"SExpressionStatement+\+XAssignmentExpression+\+=YMemberExpression+\+oUThisExpression+\+`LIdentifier+a+o__allSimPacketTCallExpression+r+YMemberExpression+r+UThisExpression+r+vLIdentifier+w+initializeConsume’RLiteral++allSimPacket"allSimPacket"RLiteral++allSimPacket"allSimPacket"SExpressionStatement++TCallExpression++YMemberExpression++UThisExpression++LIdentifier++ѹsetInitiallyProvidedValue‘LIdentifier++ئparamsNMethodDefinition+0LIdentifier+,setInitiallyProvidedValuemethodOFunctionExpression,0‘LIdentifier,,paramsMBlockStatement, 0VIfStatement,,WBinaryExpression,,BYMemberExpression,,4LIdentifier,,paramsLIdentifier,,4reviseLabelController£!==LIdentifier,9,BundefinedMBlockStatement,D,SExpressionStatement,S,XAssignmentExpression,S,=YMemberExpression,S,mUThisExpression,S,WLIdentifier,X,mreviseLabelControllerYMemberExpression,p,LIdentifier,p,vparamsLIdentifier,w,reviseLabelControllerVIfStatement,-#WBinaryExpression,,YMemberExpression,,LIdentifier,,paramsLIdentifier,,deleteLineController£!==LIdentifier,,ϩundefinedMBlockStatement,-#SExpressionStatement,-XAssignmentExpression,-=YMemberExpression,,UThisExpression,,LIdentifier,,deleteLineControllerYMemberExpression,-LIdentifier,-paramsLIdentifier--deleteLineControllerVIfStatement---WBinaryExpression-1-WYMemberExpression-1-ILIdentifier-1-7paramsLIdentifier-8-INetworkController£!==LIdentifier-N-WundefinedMBlockStatement-Y-SExpressionStatement-h-XAssignmentExpression-h-=YMemberExpression-h-~UThisExpression-h-lLIdentifier-m-~NetworkControllerYMemberExpression--LIdentifier--paramsLIdentifier--NetworkControllerVIfStatement-.$WBinaryExpression--YMemberExpression--LIdentifier--paramsLIdentifier--ʰRouterController£!==LIdentifier--ةundefinedMBlockStatement-.$SExpressionStatement-.XAssignmentExpression-.=YMemberExpression--UThisExpression--LIdentifier--RouterControllerYMemberExpression..LIdentifier..paramsLIdentifier..RouterControllerVIfStatement...WBinaryExpression.2.WYMemberExpression.2.ILIdentifier.2.8paramsLIdentifier.9.ISwitchController£!==LIdentifier.N.WundefinedMBlockStatement.Y.SExpressionStatement.h.XAssignmentExpression.h.=YMemberExpression.h.}UThisExpression.h.lLIdentifier.m.}SwitchControllerYMemberExpression..LIdentifier..paramsLIdentifier..SwitchControllerVIfStatement./"WBinaryExpression..YMemberExpression..LIdentifier..paramsLIdentifier..ȰPacketController£!==LIdentifier..֩undefinedMBlockStatement./"SExpressionStatement./XAssignmentExpression./=YMemberExpression..UThisExpression..LIdentifier..PacketControllerYMemberExpression./LIdentifier./paramsLIdentifier//PacketControllerVIfStatement/,/WBinaryExpression/0/ZYMemberExpression/0/LLIdentifier/0/6paramsLIdentifier/7/LBatchPacketController£!==LIdentifier/Q/ZundefinedMBlockStatement/\/SExpressionStatement/k/XAssignmentExpression/k/=YMemberExpression/k/UThisExpression/k/oLIdentifier/p/BatchPacketControllerYMemberExpression//LIdentifier//paramsLIdentifier//BatchPacketControllerVIfStatement/0WBinaryExpression//YMemberExpression//LIdentifier//ĦparamsLIdentifier//̧menuArr£!==LIdentifier//کundefinedMBlockStatement/0SExpressionStatement/0 XAssignmentExpression/0=YMemberExpression//UThisExpression//LIdentifier//menuArrYMemberExpression/0LIdentifier/0paramsLIdentifier00menuArrNMethodDefinition0!0ALIdentifier0!00updateStateVarsmethodOFunctionExpression000A‘LIdentifier0107paramsMBlockStatement090ANMethodDefinition0G3)LIdentifier0G0h!purgeVariableDependenciesOnElmtIdmethodOFunctionExpression0h3)‘LIdentifier0i0qrmElmtIdMBlockStatement0s3)SExpressionStatement0~0TCallExpression0~0YMemberExpression0~0YMemberExpression0~0UThisExpression0~0LIdentifier00__allSimObjLIdentifier00purgeDependencyOnElmtId‘LIdentifier00rmElmtIdSExpressionStatement00TCallExpression00YMemberExpression00YMemberExpression00UThisExpression00LIdentifier00̬__allSimConnLIdentifier00purgeDependencyOnElmtId‘LIdentifier00rmElmtIdSExpressionStatement01+TCallExpression01*YMemberExpression01 YMemberExpression01UThisExpression00LIdentifier01__TempConnLIdentifier1 1 purgeDependencyOnElmtId‘LIdentifier1!1)rmElmtIdSExpressionStatement151gTCallExpression151fYMemberExpression151\YMemberExpression151DUThisExpression1519LIdentifier1:1D__isNewObjLIdentifier1E1\purgeDependencyOnElmtId‘LIdentifier1]1ermElmtIdSExpressionStatement1q1TCallExpression1q1YMemberExpression1q1YMemberExpression1q1UThisExpression1q1uLIdentifier1v1__newObjTypeLIdentifier11purgeDependencyOnElmtId‘LIdentifier11rmElmtIdSExpressionStatement11TCallExpression11YMemberExpression11YMemberExpression11UThisExpression11LIdentifier11__choseIndexLIdentifier11طpurgeDependencyOnElmtId‘LIdentifier11rmElmtIdSExpressionStatement12"TCallExpression12!YMemberExpression12YMemberExpression11UThisExpression11LIdentifier11__isShowLabelLIdentifier22purgeDependencyOnElmtId‘LIdentifier22 rmElmtIdSExpressionStatement2,2`TCallExpression2,2_YMemberExpression2,2UYMemberExpression2,2=UThisExpression2,20LIdentifier212=__isShowPortLIdentifier2>2UpurgeDependencyOnElmtId‘LIdentifier2V2^rmElmtIdSExpressionStatement2j2TCallExpression2j2YMemberExpression2j2YMemberExpression2j2UThisExpression2j2nLIdentifier2o2__isShowInterfaceLIdentifier22purgeDependencyOnElmtId‘LIdentifier22rmElmtIdSExpressionStatement22TCallExpression22YMemberExpression22YMemberExpression22UThisExpression22LIdentifier22__isShowTableLIdentifier22׷purgeDependencyOnElmtId‘LIdentifier22rmElmtIdSExpressionStatement23"TCallExpression23!YMemberExpression23YMemberExpression22UThisExpression22LIdentifier22__allSimPacketLIdentifier33purgeDependencyOnElmtId‘LIdentifier33 rmElmtIdNMethodDefinition3/5LIdentifier3/3?aboutToBeDeletedmethodOFunctionExpression3?5MBlockStatement3B5SExpressionStatement3M3qTCallExpression3M3pYMemberExpression3M3nYMemberExpression3M3]UThisExpression3M3QLIdentifier3R3]__allSimObjLIdentifier3^3naboutToBeDeletedSExpressionStatement3{3TCallExpression3{3YMemberExpression3{3YMemberExpression3{3UThisExpression3{3LIdentifier33__allSimConnLIdentifier33aboutToBeDeletedSExpressionStatement33TCallExpression33YMemberExpression33YMemberExpression33UThisExpression33LIdentifier33__TempConnLIdentifier33ʰaboutToBeDeletedSExpressionStatement33TCallExpression33YMemberExpression33YMemberExpression33UThisExpression33LIdentifier33__isNewObjLIdentifier33aboutToBeDeletedSExpressionStatement44)TCallExpression44(YMemberExpression44&YMemberExpression44UThisExpression44LIdentifier4 4__newObjTypeLIdentifier44&aboutToBeDeletedSExpressionStatement434XTCallExpression434WYMemberExpression434UYMemberExpression434DUThisExpression4347LIdentifier484D__choseIndexLIdentifier4E4UaboutToBeDeletedSExpressionStatement4b4TCallExpression4b4YMemberExpression4b4YMemberExpression4b4tUThisExpression4b4fLIdentifier4g4t__isShowLabelLIdentifier4u4aboutToBeDeletedSExpressionStatement44TCallExpression44YMemberExpression44YMemberExpression44UThisExpression44LIdentifier44__isShowPortLIdentifier44aboutToBeDeletedSExpressionStatement44TCallExpression44YMemberExpression44YMemberExpression44UThisExpression44LIdentifier44ױ__isShowInterfaceLIdentifier44aboutToBeDeletedSExpressionStatement45TCallExpression45YMemberExpression45YMemberExpression45UThisExpression44LIdentifier45__isShowTableLIdentifier55aboutToBeDeletedSExpressionStatement5%5LTCallExpression5%5KYMemberExpression5%5IYMemberExpression5%58UThisExpression5%5)LIdentifier5*58__allSimPacketLIdentifier595IaboutToBeDeletedSExpressionStatement5V5TCallExpression5V5YMemberExpression5V5tTCallExpression5V5mYMemberExpression5V5kLIdentifier5V5gSubscriberManagerLIdentifier5h5kGetLIdentifier5n5tdelete‘TCallExpression5u5YMemberExpression5u5~UThisExpression5u5yLIdentifier5z5~id__SExpressionStatement55TCallExpression55YMemberExpression55UThisExpression55LIdentifier55aboutToBeDeletedInternalNMethodDefinition5-TCallExpression=>,YMemberExpression=>$LIdentifier=> ViewStackProcessorLIdentifier> +>$StartGetAccessRecordingFor‘LIdentifier>%>+elmtIdSExpressionStatement>C>fTCallExpression>C>eYMemberExpression>C>YLIdentifier>C>IButtonLIdentifier>J>YcreateWithLabel‘YMemberExpression>Z>dLIdentifier>Z>^itemLIdentifier>_>dtitleSExpressionStatement>|>TCallExpression>|>YMemberExpression>|>LIdentifier>|>ButtonLIdentifier>>debugLine‘RLiteral>>components/TopMenuBar.ets(55:7)!"components/TopMenuBar.ets(55:7)"SExpressionStatement>>TCallExpression>>YMemberExpression>>LIdentifier>>̦ButtonLIdentifier>>Ѥtype‘YMemberExpression>>LIdentifier>>ܪButtonTypeLIdentifier>>NormalSExpressionStatement>?TCallExpression>?YMemberExpression>? LIdentifier>?ButtonLIdentifier?? fontColor‘YMemberExpression? ?LIdentifier? ?ColorLIdentifier??BlackSExpressionStatement?/?_TCallExpression?/?^YMemberExpression?/?YMemberExpression??LIdentifier??ButtonLIdentifier??ĨbindMenu‘[ObjectExpression?@=\Property?@;LIdentifier??ΧbuilderOArrowFunctionExpression?@;MBlockStatement?@;SExpressionStatement?@ TCallExpression?@YMemberExpression?@YMemberExpression?@UThisExpression??LIdentifier?@MenuItemLIdentifier@@call’UThisExpression@@ YMemberExpression@@LIdentifier@@itemLIdentifier@@menuItemArr¤initVIfStatement@U@QUnaryExpression@Y@i!LIdentifier@Z@iisInitialRenderMBlockStatement@k@SExpressionStatement@@TCallExpression@@YMemberExpression@@LIdentifier@@ButtonLIdentifier@@popSExpressionStatement@@TCallExpression@@YMemberExpression@@LIdentifier@@ҲViewStackProcessorLIdentifier@@StopGetAccessRecordingSExpressionStatementAA TCallExpressionAAYMemberExpressionAALIdentifierAAButtonLIdentifierAApop¥constSExpressionStatementA>ATCallExpressionA>AYMemberExpressionA>AXUThisExpressionA>ABLIdentifierACAXforEachUpdateFunction“LIdentifierAYA_elmtIdLIdentifierAaAhmenuArrLIdentifierAjAforEachItemGenFunctionVIfStatementAAQUnaryExpressionAA!LIdentifierAAisInitialRenderMBlockStatementAA֑SExpressionStatementAATCallExpressionAAYMemberExpressionAALIdentifierAAForEachLIdentifierAAģpopSExpressionStatementABTCallExpressionABYMemberExpressionAB LIdentifierAAViewStackProcessorLIdentifierAB StopGetAccessRecordingSExpressionStatementB'B5TCallExpressionB'B4YMemberExpressionB'B2LIdentifierB'B.ForEachLIdentifierB/B2popNMethodDefinitionBMBLIdentifierBQBZallSimObjgetOFunctionExpressionBZBMBlockStatementB]B_ReturnStatementBhBTCallExpressionBoBYMemberExpressionBoBYMemberExpressionBoBUThisExpressionBoBsLIdentifierBtB__allSimObjLIdentifierBBgetNMethodDefinitionBBLIdentifierBBallSimObjsetOFunctionExpressionBB‘LIdentifierBBnewValueMBlockStatementBBܑSExpressionStatementBBTCallExpressionBBYMemberExpressionBBYMemberExpressionBBUThisExpressionBBLIdentifierBBƫ__allSimObjLIdentifierBBʣset‘LIdentifierBBӨnewValueNMethodDefinitionBC$LIdentifierBBallSimConngetOFunctionExpressionBC$MBlockStatementBC$_ReturnStatementBCTCallExpressionCCYMemberExpressionCCYMemberExpressionCCUThisExpressionCC LIdentifierC +C__allSimConnLIdentifierCCgetNMethodDefinitionC*CuLIdentifierC.C8allSimConnsetOFunctionExpressionC8Cu‘LIdentifierC9CAnewValueMBlockStatementCCCuSExpressionStatementCNCnTCallExpressionCNCmYMemberExpressionCNCcYMemberExpressionCNC_UThisExpressionCNCRLIdentifierCSC___allSimConnLIdentifierC`Ccset‘LIdentifierCdClnewValueNMethodDefinitionC{CLIdentifierCCTempConngetOFunctionExpressionCCMBlockStatementCC_ReturnStatementCCTCallExpressionCCYMemberExpressionCCYMemberExpressionCCUThisExpressionCCLIdentifierCC__TempConnLIdentifierCCgetNMethodDefinitionCDLIdentifierCC˨TempConnsetOFunctionExpressionCD‘LIdentifierCCԨnewValueMBlockStatementCDSExpressionStatementCCTCallExpressionCCYMemberExpressionCCYMemberExpressionCCUThisExpressionCCLIdentifierCC__TempConnLIdentifierCCset‘LIdentifierCCnewValueNMethodDefinitionD DJLIdentifierDDisNewObjgetOFunctionExpressionDDJMBlockStatementDDJ_ReturnStatementD&DCTCallExpressionD-DBYMemberExpressionD-D@YMemberExpressionD-DF_TCallExpressionF>F^YMemberExpressionF>FTYMemberExpressionF>FPUThisExpressionF>FBLIdentifierFCFP__isShowLabelLIdentifierFQFTset‘LIdentifierFUF]newValueNMethodDefinitionFlFLIdentifierFpFzisShowPortgetOFunctionExpressionFzFMBlockStatementF}F_ReturnStatementFFTCallExpressionFFYMemberExpressionFFYMemberExpressionFFUThisExpressionFFLIdentifierFF__isShowPortLIdentifierFFgetNMethodDefinitionFFLIdentifierFFªisShowPortsetOFunctionExpressionFF‘LIdentifierFF˨newValueMBlockStatementFFSExpressionStatementFFTCallExpressionFFYMemberExpressionFFYMemberExpressionFFUThisExpressionFFLIdentifierFF__isShowPortLIdentifierFFset‘LIdentifierFFnewValueNMethodDefinitionGGQLIdentifierG GisShowInterfacegetOFunctionExpressionGGQMBlockStatementGGQ_ReturnStatementG&GJTCallExpressionG-GIYMemberExpressionG-GGYMemberExpressionG-GCUThisExpressionG-G1LIdentifierG2GC__isShowInterfaceLIdentifierGDGGgetNMethodDefinitionGWGLIdentifierG[GjisShowInterfacesetOFunctionExpressionGjG‘LIdentifierGkGsnewValueMBlockStatementGuGSExpressionStatementGGTCallExpressionGGYMemberExpressionGGYMemberExpressionGGUThisExpressionGGLIdentifierGG__isShowInterfaceLIdentifierGGset‘LIdentifierGGnewValueNMethodDefinitionGGLIdentifierGGisShowTablegetOFunctionExpressionGGMBlockStatementGG_ReturnStatementGGTCallExpressionGGYMemberExpressionGGYMemberExpressionGGUThisExpressionGGLIdentifierGG__isShowTableLIdentifierGGgetNMethodDefinitionGHILIdentifierHH isShowTablesetOFunctionExpressionH HI‘LIdentifierH HnewValueMBlockStatementHHISExpressionStatementH!HBTCallExpressionH!HAYMemberExpressionH!H7YMemberExpressionH!H3UThisExpressionH!H%LIdentifierH&H3__isShowTableLIdentifierH4H7set‘LIdentifierH8H@newValueNMethodDefinitionHOHLIdentifierHSH_allSimPacketgetOFunctionExpressionH_HMBlockStatementHbH_ReturnStatementHmHTCallExpressionHtHYMemberExpressionHtHYMemberExpressionHtHUThisExpressionHtHxLIdentifierHyH__allSimPacketLIdentifierHHgetNMethodDefinitionHHLIdentifierHHallSimPacketsetOFunctionExpressionHH‘LIdentifierHHnewValueMBlockStatementHHSExpressionStatementHHTCallExpressionHHYMemberExpressionHHYMemberExpressionHHUThisExpressionHHLIdentifierHHԮ__allSimPacketLIdentifierHHأset‘LIdentifierHHnewValueNMethodDefinitionHK LIdentifierHHinitialRendermethodOFunctionExpressionHK MBlockStatementIK SExpressionStatementI JTCallExpressionI JYMemberExpressionI I(UThisExpressionI ILIdentifierII(observeComponentCreation‘OArrowFunctionExpressionI)J’LIdentifierI*I0elmtIdLIdentifierI2IAisInitialRenderMBlockStatementIFJSExpressionStatementIUITCallExpressionIUIYMemberExpressionIUILIdentifierIUIgViewStackProcessorLIdentifierIhIStartGetAccessRecordingFor‘LIdentifierIIelmtIdSExpressionStatementIITCallExpressionIIYMemberExpressionIILIdentifierIIRowLIdentifierIIcreateSExpressionStatementIITCallExpressionIIYMemberExpressionIILIdentifierIIRowLIdentifierIIdebugLine‘RLiteralII components/TopMenuBar.ets(190:5)""components/TopMenuBar.ets(190:5)"SExpressionStatementIJTCallExpressionIJYMemberExpressionIILIdentifierIIRowLIdentifierIIheight‘RLiteralIJ12%'12%'SExpressionStatementJJ&TCallExpressionJJ%YMemberExpressionJJLIdentifierJJRowLIdentifierJJwidth‘RLiteralJJ$100%'100%'VIfStatementJ4JvQUnaryExpressionJ8JH!LIdentifierJ9JHisInitialRenderMBlockStatementJJJvSExpressionStatementJ]JgTCallExpressionJ]JfYMemberExpressionJ]JdLIdentifierJ]J`RowLIdentifierJaJdpopSExpressionStatementJJTCallExpressionJJYMemberExpressionJJLIdentifierJJViewStackProcessorLIdentifierJJStopGetAccessRecordingSExpressionStatementJJTCallExpressionJJTCallExpressionJJYMemberExpressionJJYMemberExpressionJJUThisExpressionJJLIdentifierJJ֪MenuButtonLIdentifierJJۤbind‘UThisExpressionJJ‘YMemberExpressionJJUThisExpressionJJLIdentifierJJmenuArrSExpressionStatementJKTCallExpressionJKYMemberExpressionJKLIdentifierJJRowLIdentifierJKpopNMethodDefinitionKKILIdentifierKKrerendermethodOFunctionExpressionKKIMBlockStatementKKISExpressionStatementK'KBTCallExpressionK'KAYMemberExpressionK'K?UThisExpressionK'K+LIdentifierK,K?updateDirtyElementsratypestartendspecifierssourceImportDeclaration.rbtypestartendlocalImportDefaultSpecifierLIdentifierpromptActionRLiteral-@ohos.promptAction"@ohos.promptAction"aImportDeclaration0jrctypestartendimportedlocalImportSpecifier9@LIdentifier9@TopMenuLIdentifier9@TopMenucImportSpecifierBMLIdentifierBMTopMenuItemLIdentifierBMTopMenuItemRLiteralUi../classes/TopMenu"../classes/TopMenu"aImportDeclarationlcImportSpecifierùLIdentifierùLabelReviseLIdentifierùLabelRevisecImportSpecifier̂̌LIdentifier̂̌LineDeleteLIdentifier̂̌LineDeletecImportSpecifier̛̎LIdentifier̛̎NetworkConfigLIdentifier̛̎NetworkConfigcImportSpecifier̝̮LIdentifier̝̮RouterTableConfigLIdentifier̝̮RouterTableConfigcImportSpecifier̰LIdentifier̰SwitchTableConfigLIdentifier̰SwitchTableConfigcImportSpecifierLIdentifier̩PacketSetLIdentifier̩PacketSetcImportSpecifierLIdentifierܮBatchPacketSetLIdentifierܮBatchPacketSetRLiteral./Dialog"./Dialog" \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-functions.ets-c3985e4dd1692731c2379e8e5c36923d.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-functions.ets-c3985e4dd1692731c2379e8e5c36923d.msgpack new file mode 100644 index 0000000000000000000000000000000000000000..f0bc07e49ec3dc17d2e54a84de320a89722b98e3 GIT binary patch literal 19403 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 LgQb9h%8~eMWsqz+ literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/dep_info.json b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/dep_info.json new file mode 100644 index 0000000..8e4adec --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/dep_info.json @@ -0,0 +1 @@ +{"resolveConflictMode":true,"depName2RootPath":{"@ohos/hypium":"E:\\jiaocai\\ensp14\\oh_modules\\.ohpm\\@ohos+hypium@1.0.11\\oh_modules\\@ohos\\hypium"},"depName2DepInfo":{"@ohos/hypium":{"pkgRootPath":"E:\\jiaocai\\ensp14\\oh_modules\\.ohpm\\@ohos+hypium@1.0.11\\oh_modules\\@ohos\\hypium","pkgName":"@ohos/hypium","pkgVersion":"1.0.11"}}} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..0543bbafc7854c13faf2263af6f0f55824b1f946 GIT binary patch literal 95074 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 { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",appPackId:" + this.appPackId.toString() + ",sourceAppAddr:" + this.sourceAppAddr.toString() + ",targetAppAddr:" + this.targetAppAddr.toString() + "\n"; + } + }; + } // 应用层解包 + isValid(sourceAppAddr: string, targetAppAddr: string) { + return this.sourceAppAddr === sourceAppAddr && this.targetAppAddr === targetAppAddr; + } // 根据用户输入的应用层地址判断是否正确 +} +// 传输层数据包(解封包) +export class TransData { + objId: symbol; + objLabel: string; + transPackId: symbol; + transSeq: number; + transTag: string; + appPackId: symbol; + sourcePort: number; + targetPort: number; + sourceAppAddr: string; + targetAppAddr: string; + timeStamp: number; + transPackedString: string; + constructor(objId: symbol, objLabel: string, transSeq: number, transTag: string, appPackId: symbol, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId; + this.objLabel = objLabel; + this.transPackId = Symbol(); + this.transSeq = transSeq; + this.transTag = transTag; + this.appPackId = appPackId; + this.sourcePort = sourcePort; + this.targetPort = targetPort; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.timeStamp = Date.parse(new Date().toString()); + this.transPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",transPackId: " + this.transPackId.toString() + ",transSeq: " + this.transSeq.toString() + ",transTag: " + this.transTag + ",appPackId: " + this.appPackId.toString() + "\nsourcePort: " + this.sourcePort.toString() + "\ntargetPort: " + this.targetPort.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n"; + } + calcNumSplits(): number { + const MTU = 2048; + return (this.transPackedString.length + MTU - 1) / MTU; + } // 计算拆分数量 + pack(): Array { + const numSplits = this.calcNumSplits(); + let transDataList: TransData[] = []; + for (let i = 0; i < numSplits; i++) { + transDataList.push(new TransData(this.objId, this.objLabel, i + 1, this.transTag, this.appPackId, this.sourcePort, this.targetPort, this.sourceAppAddr, this.targetAppAddr)); + } + return transDataList; + } // 传输层封包 + unPack(simHost: SimHost) { + simHost.transData = { + objId: this.objId, + objLabel: this.objLabel, + transPackId: this.transPackId, + sourcePort: this.sourcePort, + targetPort: this.targetPort, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",transPackId:" + this.transPackId.toString() + ",sourcePort:" + this.sourcePort.toString() + ",targetPort:" + this.targetPort.toString() + "\n"; + } + }; + } // 传输层解包 + isValid(sourcePort: number, targetPort: number) { + return this.sourcePort === sourcePort && this.targetPort === targetPort; + } // 根据用户输入的端口判断是否正确 +} +// 网络层数据包(解封包) +export class IPData { + objId: symbol; + objLabel: string; + ipPackId: symbol; + transPackId: symbol; + sourceIp: string; + targetIp: string; + sourceAppAddr: string; + targetAppAddr: string; + ipPackedString: string; + constructor(objId: symbol, objLabel: string, transPackId: symbol, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId; + this.objLabel = objLabel; + this.ipPackId = Symbol(); + this.transPackId = transPackId; + this.sourceIp = sourceIp; + this.targetIp = targetIp; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.ipPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",ipPackId: " + this.ipPackId.toString() + ",transPackId: " + this.transPackId.toString() + "\nsourceIp: " + this.sourceIp.toString() + "\ntargetIp: " + this.targetIp.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n"; + } + pack(): IPData { + let ipData: IPData; + ipData = new IPData(this.objId, this.objLabel, this.transPackId, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr); + return ipData; + } // 网络层封包 + unpack(simHost: SimHost) { + simHost.ipData = { + objId: this.objId, + objLabel: this.objLabel, + ipPackId: this.ipPackId, + sourceIp: this.sourceIp, + targetIp: this.targetIp, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",ipPackId:" + this.ipPackId.toString() + ",sourceIp:" + this.sourceIp.toString() + ",targetIp:" + this.targetIp.toString() + "\n"; + } + }; + } // 网络层解包 + isValid(sourceIp: string, targetIp: string) { + return this.sourceIp === sourceIp && this.targetIp === targetIp; + } // 根据用户输入的ip地址判断是否正确 +} +// 链路层数据包(解封包) +export class MACData { + objId: symbol; + objLabel: string; + macPackId: symbol; + ipPackId: symbol; + sourceMac: string; + targetMac: string; + sourceIp: string; + targetIp: string; + sourceAppAddr: string; + targetAppAddr: string; + macPackedString: string; + constructor(objID: symbol, objLabel: string, ipPackID: symbol, sourceMac: string, targetMac: string, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objID; + this.objLabel = objLabel; + this.macPackId = Symbol(); + this.ipPackId = ipPackID; + this.sourceMac = sourceMac; + this.targetMac = targetMac; + this.sourceIp = sourceIp; + this.targetIp = targetIp; + this.sourceAppAddr = sourceAppAddr; + this.targetAppAddr = targetAppAddr; + this.macPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",macPackId: " + this.macPackId.toString() + ",ipPackId: " + this.ipPackId.toString() + "\nsentMac: " + this.sourceMac.toString() + ",rpctMac: " + this.targetMac.toString() + ",sourceIp: " + this.sourceIp.toString() + ",targetIp: " + this.targetIp.toString() + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n"; + } + pack(): MACData { + let macData: MACData; + macData = new MACData(this.objId, this.objLabel, this.ipPackId, this.sourceMac, this.targetMac, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr); + return macData; + } // 链路层封包 + unPack(simHost: SimHost) { + simHost.macData = { + objId: this.objId, + objLabel: this.objLabel, + macPackId: this.macPackId, + sourceMac: this.sourceMac, + targetMac: this.targetMac, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",macPackId:" + this.macPackId.toString() + ",sourceMac:" + this.sourceMac.toString() + ",targetMac:" + this.targetMac.toString() + "\n"; + } + }; + } // 链路层解包 + isValid(sentMac: string, rcptMac: string) { + return this.sourceMac === sentMac && this.targetMac === rcptMac; + } // 根据用户输入的mac地址判断是否正确 +} +export interface macData { + objId: symbol; + objLabel: string; + macPackId: symbol; + sourceMac: string; + targetMac: string; + toString: Function; +} // 主机收到的链路层数据包的数据结构 +export interface ipData { + objId: symbol; + objLabel: string; + ipPackId: symbol; + sourceIp: string; + targetIp: string; + toString: Function; +} // 主机收到的网络层数据包的数据结构 +export interface transData { + objId: symbol; + objLabel: string; + transPackId: symbol; + sourcePort: number; + targetPort: number; + toString: Function; +} // 主机收到的传输层数据包的数据结构 +export interface appData { + objId: symbol; + objLabel: string; + appPackId: symbol; + sourceAppAddr: string; + targetAppAddr: string; + toString: Function; +} // 主机收到的链路层数据包的数据结构 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..2eff36901758bf18f61d7e2b96859f3e4e3dc3d9 GIT binary patch literal 228453 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.ts new file mode 100644 index 0000000..e659fda --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.ts @@ -0,0 +1,409 @@ +import { SimBase } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/SimBase"; +import { AppData, IPData, MACData, TransData } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/Datas"; +import type { macData, ipData, transData, appData } from "@bundle:com.example.ensp_fourteen/entry/ets/classes/Datas"; +import { updatePacketLog } from "@bundle:com.example.ensp_fourteen/entry/ets/functions/functions"; +@Observed +export class SimPacket { + firstSendHost: SimHost; + sendHost: SimBase; + targetHost: SimBase; + sourceMac: string; // 源主机mac地址 + sourceIp: string; // 源主机ip地址 + targetMac: string; // 目的主机mac地址 + targetIp: string; // 目的主机ip地址 + message: string; // 数据包内容 + size: number; // 数据包大小 + allSimObj: SimBase[]; + allSimPacket: SimPacket[]; + id: symbol; // 使用symbol()生成数据包对象唯一标识 + upJump: any; // 上一跳连接对象,可以根据具体类型定义 + points: number[][]; // 路径点 + level: number; // 数据包展示优先级 + constructor(firstSendHost: SimHost, sendHost: SimBase, sourceMac: string, sourceIp: string, targetMac: string, targetIp: string, message: string, size: number, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + this.firstSendHost = firstSendHost; + this.sendHost = sendHost; + this.sourceMac = sourceMac; + this.sourceIp = sourceIp; + this.targetMac = targetMac; + this.targetIp = targetIp; + this.message = message; + this.size = size; + this.allSimObj = allSimObj; + this.allSimPacket = allSimPacket; + this.id = Symbol(); + this.upJump = null; + this.points = []; + } +} +@Observed +export class SimConnect { + nObjS: SimBase | null; // 线一端节点S + nObjE: SimBase | null; // 线一端节点E + ifsS: number; // 线一端节点S的端口 + ifsE: number; // 线一端节点E的端口 + width: number; // 线的粗细 + configCorrect: boolean; // 配置正确与否 + constructor(nobjs: SimBase | null, nobje: SimBase | null, ifss: number, ifse: number) { + this.nObjS = nobjs; + this.nObjE = nobje; + this.ifsS = ifss; + this.ifsE = ifse; + if (nobjs != null && nobje != null) { + this.configCorrect = true; + } + else { + this.configCorrect = false; + } + this.width = this.configCorrect === false ? 1 : 4; + } + updateObjConn() { + this.nObjS.interface[this.ifsS - 1] = this.nObjE.objID; + this.nObjE.interface[this.ifsE - 1] = this.nObjS.objID; + } // 更新仿真对象的接口信息 + deleteObjConn() { + this.nObjS.interface[this.ifsS - 1] = null; + this.nObjE.interface[this.ifsE - 1] = null; + } // 删除仿真对象的接口信息 + equals(other: any): boolean { + if (other instanceof SimConnect) { + const otherIdS = other.nObjS.objID; + const otherIdE = other.nObjE.objID; + return this.nObjS.objID == otherIdS && this.nObjE.objID == otherIdE; + } + return false; + } // 判断两个连接线是否相同 +} +@Observed +export class SimHost extends SimBase { + isOnline: boolean = false; // 主机联网状态 + port: number; + appAddr: string; + macData: macData; + ipData: ipData; + transData: transData; + appData: appData; + constructor(x: number, y: number, type: number = 1) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.ip = ""; + this.mac = ""; + this.img = { "id": 16777226, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 主机图片 + this.imgTm = { "id": 16777230, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 主机配置成功图片 + this.interface = [null]; // 主机只有一个接口 + this.connections = [null]; // 一个接口对应一根连接线 + this.port = 8080; + this.appAddr = this.ip + ":" + this.port; + } + setDefaultName() { + return `SHO${++SimBase.flag}`; + } // 生成组件默认名称 + onlineSwitch() { + this.isOnline = !this.isOnline; + } // 切换联网状态 + createPacket(mac: string, ip: string, message: string, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + let isNewPacket: number = AppStorage.get("isNewPacket"); + console.log(isNewPacket.toString()); + AppStorage.set("isNewPacket", isNewPacket + 1); + isNewPacket = AppStorage.get("isNewPacket"); + console.log(isNewPacket.toString()); + let packet = new SimPacket(this, this as SimBase, this.mac, this.ip, mac, ip, message, 1024, allSimObj, allSimPacket); + packet.level = 1; + packet.points.push([this.objX, this.objY]); + packet.allSimPacket.push(packet); + updatePacketLog(`主机-${this.objLabel}创建数据包成功,信息为[${packet.message}]!`); + this.send(packet); + } // 创建数据包 + createAppPacket(appPackSize: number, appPackTag: string, sourceAppAddr: string, targetAppAddr: string): AppData | null { + let appPacket = new AppData(this.objID, this.objLabel, appPackSize, appPackTag, sourceAppAddr, targetAppAddr); + if (appPacket.isValid(sourceAppAddr, targetAppAddr)) { + appPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建应用层数据包成功,信息为[${appPacket.appPackTag}]!`); + return appPacket; + } + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } // 创建应用层数据包 + createTransPackets(appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string): TransData[] | null { + const appPacket = this.createAppPacket(appPackSize, appPackTag, sourceAppAddr, targetAppAddr); + let transPacket = new TransData(appPacket.objId, appPacket.objLabel, 1, appPacket.appPackTag, appPacket.appPackId, sourcePort, targetPort, appPacket.sourceAppAddr, appPacket.targetAppAddr); + if (transPacket.isValid(sourcePort, targetPort)) { + let transSplitedPackets = transPacket.pack(); + let numbers = transSplitedPackets.length; + updatePacketLog(`主机-${this.objLabel}创建传输层数据包成功,并成功分割为${numbers}个,信息为[${transPacket.transTag}]!`); + return transSplitedPackets; + } + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } // 创建传输层数据包 + createIpPacket(appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetIp: string, sourceAppAddr: string, targetAppAddr: string): IPData[] | null { + const transPacketList = this.createTransPackets(appPackSize, appPackTag, sourcePort, targetPort, sourceAppAddr, targetAppAddr); + let ipPacketList: IPData[] = []; + for (let i = 0; i < transPacketList.length; i++) { + let ipPacket = new IPData(transPacketList[i].objId, transPacketList[i].objLabel, transPacketList[i].transPackId, this.ip, targetIp, transPacketList[i].sourceAppAddr, transPacketList[i].targetAppAddr); + if (ipPacket.isValid(this.ip, targetIp)) { + ipPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建网络层数据包成功,信息为[${transPacketList[i].transTag}]!`); + ipPacketList.push(ipPacket); + } + } + if (ipPacketList) { + return ipPacketList; + } + else { + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } + } // 创建网络层数据包 + createMacPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): MACData[] | null { + const ipPacketList = this.createIpPacket(appPackSize, appPackTag, sourcePort, targetPort, targetIp, sourceAppAddr, targetAppAddr); + let macPacketList: MACData[] = []; + for (let i = 0; i < ipPacketList.length; i++) { + let macPacket = new MACData(ipPacketList[i].objId, ipPacketList[i].objLabel, ipPacketList[i].ipPackId, this.mac, targetMac, ipPacketList[i].sourceIp, ipPacketList[i].targetIp, ipPacketList[i].sourceAppAddr, ipPacketList[i].targetAppAddr); + if (macPacket.isValid(this.mac, targetMac)) { + macPacket.pack(); + updatePacketLog(`主机-${this.objLabel}创建链路层数据包成功,信息为[${appPackTag}]!`); + macPacketList.push(macPacket); + } + } + if (macPacketList) { + this.createPacket(targetMac, targetIp, appPackTag, allSimObj, allSimPacket); + return macPacketList; + } + else { + console.log(`主机-${this.objLabel}创建数据包失败!`); + return null; + } + } // 创建链路层数据包 + createPhysicsPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): boolean { + if (this.createMacPacket(allSimObj, allSimPacket, appPackSize, appPackTag, sourcePort, targetPort, targetMac, targetIp, sourceAppAddr, targetAppAddr)) { + return true; + } + return false; + } // 创建物理层数据包 + receive(packet: SimPacket) { + if (packet.targetIp == this.ip && packet.targetMac == this.mac) { + let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived"); + console.log(isNewPacketArrived.toString()); + AppStorage.set("isNewPacketArrived", isNewPacketArrived + 1); + isNewPacketArrived = AppStorage.get("isNewPacketArrived"); + console.log(isNewPacketArrived.toString()); + packet.points.push([this.objX, this.objY]); + updatePacketLog(`主机-${this.objLabel}链路层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}网络层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}传输层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}应用层获取数据包成功,信息为[${packet.message}]!`); + updatePacketLog(`主机-${this.objLabel}获取数据包成功,信息为[${packet.message}]!`); + } + else { + console.log(`主机${this.objLabel}获取数据包失败!`); + } + } // 接收数据包 + receiveMacPacket(packet: SimPacket, macPacket: MACData) { + if (macPacket.targetMac == this.mac && macPacket.targetIp == this.ip) { + this.receive(packet); + macPacket.unPack(this); + updatePacketLog(`主机-${this.objLabel}获取链路层数据包成功,信息为[${this.macData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}链路层数据包解包失败!`); + } + } // 接收链路层数据包 + receiveIpPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData) { + if (ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveMacPacket(packet, macPacket); + ipPacket.unpack(this); + updatePacketLog(`主机-${this.objLabel}获取网络层数据包成功,信息为[${this.ipData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}网络层数据包解包失败!`); + } + } // 接收网络层数据包 + receiveTransPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData, transPacket: TransData) { + if (transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveIpPacket(packet, macPacket, ipPacket); + transPacket.unPack(this); + updatePacketLog(`主机-${this.objLabel}获取传输层数据包成功,信息为[${this.transData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}传输层数据包解包失败!`); + } + } // 接收传输层数据包 + receiveAppPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData, transPacket: TransData, appPacket: AppData) { + if (appPacket.targetAppAddr == this.appAddr && transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveTransPacket(packet, macPacket, ipPacket, transPacket); + updatePacketLog(`主机-${this.objLabel}获取应用层数据包成功,信息为[${this.appData.toString}]!`); + } + else { + console.log(`主机-${this.objLabel}应用层数据包解包失败!`); + } + } // 接收应用层数据包 + send(packet: SimPacket) { + const connObj: symbol = this.objID; + packet.upJump = connObj; + updatePacketLog(`主机-${this.objLabel}发送数据包成功,信息为[${packet.message}]!`); + if (packet.allSimObj.find(item => item.objID === this.interface[0]) != undefined) { + packet.allSimObj.find(item => item.objID === this.interface[0]).receive(packet); + } + // console.log("packet.targetIp:" + packet.targetIp) + } // 发送数据包 +} +@Observed +export class SimRouter extends SimBase { + constructor(x: number, y: number, type: number = 2) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.ip = ""; + this.mac = ""; + this.img = { "id": 16777229, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 路由器图片 + this.imgTm = { "id": 16777233, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 路由器配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + this.routerTable = []; + } + setDefaultName() { + return `SRO${++SimBase.flag}`; + } // 生成组件默认名称 + checkDestinationIp(destinationIp: string, network: string): boolean { + // 解析目标 IP 和网络地址 + const [networkAddress, subnetMask] = network.split('/'); + // 分解目标 IP 地址和网络地址为数组 + const destinationIpParts = destinationIp.split('.'); + const networkAddressParts = networkAddress.split('.'); + // 计算目标 IP 的网络地址(根据子网掩码) + const calculatedNetworkAddressParts = destinationIpParts.map((part, index) => { + return parseInt(part) & parseInt(networkAddressParts[index]); + }); + // 构建目标 IP 的网络地址和网络地址的比较字符串 + const calculatedNetworkAddress = calculatedNetworkAddressParts.join('.'); + const inputNetworkAddress = networkAddressParts.join('.'); + // 比较目标 IP 的网络地址和给定的网络地址是否相同,并检查是否在同一网络范围内 + return calculatedNetworkAddress === inputNetworkAddress && subnetMask === '24'; + } // 检查目标ip是否属于指定的网段范围内 + receive(packet: SimPacket) { + updatePacketLog(`路由器-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + try { + this.checkDestinationIp(packet.targetIp, this.ip); + } + catch (e) { + console.log("packet router err:" + JSON.stringify(e)); + } + this.transmit(packet); + } // 接收数据包 + transmit(packet: SimPacket) { + let flag = 0; + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); // 当前遍历到的接口对应的仿真对象 + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); // 当前数据包的上一跳仿真对象 + if (item != null) { + // console.log(String(obj != objUpJump) + " " + String(this.routerTable.some(table => { + // return table.net === packet.targetIp // && obj.objID === this.interface[table.port-1] + // })) + " " + String(packet.targetIp)) + if (item != packet.upJump && this.routerTable.some(table => { + return table.net === packet.targetIp && obj.objID === this.interface[table.port - 1]; + })) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + flag++; + } + } + }); + if (!flag) { + updatePacketLog(`路由器-${this.objLabel}找不到对应端口进行转发!`); + } + } // 转发数据包 + getTableConfig(): string { + let str = ""; + const routerTables = this.routerTable; + for (let router of routerTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['segment']}\n`; + } + return str; + } // 获取路由表配置信息用于展示 +} +@Observed +export class SimSwitch extends SimBase { + constructor(x: number, y: number, type: number = 3) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.mac = ""; + this.img = { "id": 16777232, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 交换机图片 + this.imgTm = { "id": 16777227, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 交换机配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + this.switchTable = []; + } + setDefaultName() { + return `SSW${++SimBase.flag}`; + } // 生成组件默认名称 + receive(packet: SimPacket) { + updatePacketLog(`交换机-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + this.transmit(packet); + } // 接收数据包 + transmit(packet: SimPacket) { + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); + if (item != null) { + if (item != packet.upJump && this.switchTable.some(table => table.net === packet.targetMac)) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + } + } + }); + } // 转发数据包 + getTableConfig(): string { + let str = ""; + const macTables = this.switchTable; + for (const router of macTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['mac']}\n`; + } + return str; + } // 获取交换机表配置信息用于展示 +} +@Observed +export class SimHub extends SimBase { + constructor(x: number, y: number, type: number = 4) { + super(x, y, type); + this.objLabel = this.setDefaultName(); + this.img = { "id": 16777228, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 集线器图片 + this.imgTm = { "id": 16777225, "type": 20000, params: [], "bundleName": "com.example.ensp_fourteen", "moduleName": "entry" }; // 集线器配置成功图片 + this.interface = [null, null, null, null]; // 路由器有四个接口 + this.connections = [null, null, null, null]; // 四个接口对应四根连接线 + } + setDefaultName(): string { + return `SHU${++SimBase.flag}`; // 生成组件默认名称 + } + receive(packet: SimPacket) { + updatePacketLog(`集线器-${this.objLabel}接受到数据,将进行转发!`); + packet.points.push([this.objX, this.objY]); + this.transmit(packet); + } // 接收数据包 + transmit(packet: SimPacket): void { + this.interface.forEach((item: symbol, index) => { + let obj = packet.allSimObj.find(obj => obj.objID === item); + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump); + if (item != null) { + if (item != packet.upJump) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket); + pac.level = packet.level + 1; + pac.upJump = this.objID; + pac.points.push([this.objX, this.objY]); + packet.allSimPacket.push(pac); + obj.receive(pac); + } + } + }); + } // 转发数据包 +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..52d7de32097ea69276226da9c40d114c9835bc66 GIT binary patch literal 24056 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 // 接口网络配置信息 + connections: Array; // 连接线对象 + routerTable: Array

| null; // 路由表 + switchTable: Array
| null; // 交换表 + constructor(x: number, y: number, type: number) { + this.objX = x; + this.objY = y; + this.objType = type; + this.objID = Symbol(); + this.configCorrect = false; + this.isChose = false; + } + receive(packet: SimPacket) { + } // 接收数据包 + createPacket(mac: string, ip: string, message: string, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + } // 创建数据包 + createMacPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): MACData[] | null { + return; + } // 创建链路层数据包 + transmit(packet: SimPacket) { + } // 转发数据包 + changeIsChose() { + this.isChose = !this.isChose; + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..e65578718579bde790e3cb7655b7bc98d6744191 GIT binary patch literal 9872 zcmds6&2QX96puf4*O_FK&E%tr(^l3Bp{d(u6K~QqTcu4~s1(!>M0xalt@|G z@6Eh<@6Ej5{Kg~Q`uxICeDN4QfVNCNJTZ|gl#f^PQ+n~BVHC>Q@_fO-53H(6Hli5f zQA6VV7#>A!VBqA^g6`@{e1yq%)P|Z7LXy5%){90qN4wt?P~m|h-j+CCO@@EB5JF2 z3Uho$lEj3hL`Vz-Phl=<31XztY#}f~r_xB8R9QL?8$6#PA_92Yb?q12l5u_M_M^#6@Eim?h>`{C2Z*z~wraEY)-*LGGGyK~qY0)#* zSrN*uVVM)>3Ip%>!oX#J7qOKsSLrjXxQ|Q!zPL~To;)+Ll%Fc(D0eC0O$I8Dx7zwSOVr{l(psFwmy|f1#g~*&&JvaK89vde z#!a#j1vr6yRK3JWLzG&C;iGaermj&U!$5~R6Co|8Z(@eNwg9tXu14TB&cG~Ad6TK7 zP}Ur$ib+E&+jvb`i>=Z(2<$ltz zRb|RnrbycC9<%JF$&k1E5E)hzEMJ^8!Y~<8qby%B$lR3qv<4{@`n!C&9hLi&MXK3? zV)kLjp=*);W(`=RrC>D3r6kRFPYMrxBba!hu%onMnN*%b3j8saol)T2GjGi8VwZyj6OSW=rd;9>4J4+Din#w)Gozk=0KI59oFE?0U*MCtgA9=dShC? zqjTAT7Opq5-8pnlNu`vPtJhX8y#3oNZ`^$8%CGNVM}8sGAXX0>5G|t|fxU+w|JD^L z^n?iQuIma8xD7U*x!DE~>s6MZr$|`1c5kVo~A= zha`!ICqx7$=?2ND)Qv}yfh-S@SUt>W^)ZvKkD0;xm>H^%nLYI}Gh81td+TFn#ARkb zEWb=L*#6yb*>M(j1MrLsVz4?Hz~7ox;h5vBI&ma009*1std@G9mKxy6TU~Y=rx(y4 z)+PdN+ocF@O}f8CxUvzV811Awqt^OiOQ;`l@S`zle%i1+aDo!=A}HIKGoYO=SD5at zsIFk)j9TjlNYvLk6mU`DC#vStp1tsBseTpIs{wq`25%a#3FCfG)Y(>;+NPwKL{ zwUrifaoNc17zSKY{}O^FBaOe@3@B`Zbs9_34=nY8Kzp-v@=YtmADr)F2(%f>zl5m< zErr4RyA*8ZF%!75=0?p?hLsJ4VVq0+8#!R+tB=c??BHA~hWF(gFP<|PJ>zZTH( z;f>lRfyM`RYHy8G5i6S^a|ir6@Dz`1-W1pF0(6Q$;?X_2D#4#RdulVBJSBG7*;=1D zal@c#{BL%*Y9f9eCj0{)-GiHEe0>9RW*@cb*5RMCkmoV=hOl{y4Tyt%CjlSl@y~n} zl*a0_(Cp6~&VJjxQHI;Nrq iQFCmngMC;`T9~U2E$mHzM)|hp{{Emjml&G)J>VbDRl%wN literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.ts new file mode 100644 index 0000000..8f5564a --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.ts @@ -0,0 +1,16 @@ +export class TopMenu { + title: string; + menuItemArr: TopMenuItem[] | undefined; + constructor(title: string, menuItemArr?: TopMenuItem[]) { + this.title = title; + this.menuItemArr = menuItemArr; + } +} // 顶部菜单类 +export class TopMenuItem { + title: string; + fun: Function | undefined; + constructor(title: string, fun?: Function) { + this.title = title; + this.fun = fun; + } +} // 顶部菜单选项类 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..5c81fa18e7de84c184130295190a055713d56f02 GIT binary patch literal 108627 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 dIWcZxfxJKX*#6; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 是否正在新增连接线 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 是否正在新增连接线 + ) { + this.__TempConn.set(newValue); + } + private __isNewConn: ObservedPropertyAbstractPU; // 选中连接线下标 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean // 选中连接线下标 + ) { + this.__isNewConn.set(newValue); + } + private scroller: Scroller; + private __logText: ObservedPropertyAbstractPU; + get logText() { + return this.__logText.get(); + } + set logText(newValue: string) { + this.__logText.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 10 }); + Row.debugLine("components/ButtomMenuBar.ets(44:5)"); + Row.layoutWeight(1); + Row.margin({ left: '5%' }); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/ButtomMenuBar.ets(46:9)"); + Column.margin({ top: 5 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Image.create(item.image); + Image.debugLine("components/ButtomMenuBar.ets(47:11)"); + Image.border({ + color: item.type == this.newObjType && this.isNewObj ? Color.Red : Color.Transparent, + width: 1 + }); + Image.width(50); + Image.onClick(() => { + this.isNewConn = false; + this.TempConn = []; + if (!this.isNewObj) { // 选择创建对象 + this.isNewObj = true; + this.newObjType = item.type; + } + else if (this.newObjType != item.type) { // 选择创建其他对象 + this.newObjType = item.type; + } + else { // 取消选择 + this.isNewObj = false; + this.newObjType = -1; + } + this.allSimObj.forEach(item => { + item.isChose = false; + }); // 创建对象时必须全部设置为非选中状态 + this.choseIndex = null; + }); + if (!isInitialRender) { + Image.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.name); + Text.debugLine("components/ButtomMenuBar.ets(70:11)"); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simClickObjArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Scroll.create(this.scroller); + Scroll.debugLine("components/ButtomMenuBar.ets(76:7)"); + Scroll.border({ + color: Color.Black, + width: 1 + }); + Scroll.layoutWeight(1); + Scroll.height('100%'); + Scroll.margin(2); + if (!isInitialRender) { + Scroll.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.logText); + Text.debugLine("components/ButtomMenuBar.ets(77:9)"); + Text.fontSize(15); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Scroll.pop(); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..a8b381b1b45edc826e281550d67e4739046f4713 GIT binary patch literal 686435 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�)63Q=2m9BJ7pgurJ)@!$N<>|p*8%q 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

)z~?w+ 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 { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new LabelRevise(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 修改标签控制器 + reviseLabelController); + ViewPU.create(jsDialog); + } + }, this); + this.deleteLineController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new LineDelete(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 删除连接线控制器 + deleteLineController); + ViewPU.create(jsDialog); + } + }, this); + this.NetworkController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new NetworkConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 网络配置控制器 + NetworkController); + ViewPU.create(jsDialog); + } + }, this); + this.RouterController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new RouterTableConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 路由表配置配置器 + RouterController); + ViewPU.create(jsDialog); + } + }, this); + this.SwitchController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new SwitchTableConfig(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 转换表配置控制器 + SwitchController); + ViewPU.create(jsDialog); + } + }, this); + this.PacketController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new PacketSet(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 数据包设置控制器 + PacketController); + ViewPU.create(jsDialog); + } + }, this); + this.BatchPacketController = new CustomDialogController({ + builder: () => { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + let jsDialog = new BatchPacketSet(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, -1, paramsLambda); + jsDialog.setController(this. + // 批量数据包设置控制器 + BatchPacketController); + ViewPU.create(jsDialog); + } + }, this); + this.menuArr = [ + new TopMenu("删除与修改", [new TopMenuItem("删除对象", () => { + if (this.choseIndex != null) { + this.allSimConn = this.allSimConn.filter((item) => { + if (this.allSimObj[this.choseIndex].objID === item.nObjE.objID || this.allSimObj[this.choseIndex].objID === item.nObjS.objID) { + item.deleteObjConn(); // 删除线时应该先将线两端的设备的connection设置为null + return false; + } + return true; + }); + this.allSimObj.splice(this.choseIndex, 1); + this.isNewObj = false; + this.newObjType = -1; + this.choseIndex = null; + } + else { + promptAction.showToast({ + message: "请先选择要删除的对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("删除连接线", () => { + if (this.choseIndex != null) { + this.deleteLineController.open(); + } + else { + promptAction.showToast({ + message: "请选择要删除的连接线对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("修改标签", () => { + if (this.choseIndex != null) { + this.reviseLabelController.open(); + } + else { + promptAction.showToast({ + message: "请选择仿真对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("基础配置", [new TopMenuItem("网络配置", () => { + if (this.choseIndex != null && (this.allSimObj[this.choseIndex].objType == 1 || this.allSimObj[this.choseIndex].objType == 2 || this.allSimObj[this.choseIndex].objType == 3)) { + this.NetworkController.open(); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("路由器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 2) { + this.RouterController.open(); + } + else { + promptAction.showToast({ + message: "请选择路由器对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("交换器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 3) { + this.SwitchController.open(); + } + else { + promptAction.showToast({ + message: "请选择交换机对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("显示设置", [new TopMenuItem("显示/不显示标签", () => { + this.isShowLabel = !this.isShowLabel; + }), new TopMenuItem("显示/不显示接口", () => { + this.isShowPort = !this.isShowPort; + }), new TopMenuItem("显示/不显示配置信息", () => { + this.isShowInterface = !this.isShowInterface; + }), new TopMenuItem("显示/不显示交换表信息", () => { + this.isShowTable = !this.isShowTable; + })]), + new TopMenu("发送数据包", [new TopMenuItem("发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1) { + this.PacketController.open(); + } + else { + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }); + } + }), new TopMenuItem("批量发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1) { + this.BatchPacketController.open(); + } + else { + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }); + } + })]), + new TopMenu("清除屏幕", [new TopMenuItem("清除屏幕", () => { + this.allSimObj = []; + this.allSimConn = []; + this.TempConn = []; + this.isNewObj = false; + this.choseIndex = null; + })]) + ] // 顶部菜单栏数组 + ; + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.__isShowPort = this.initializeConsume("isShowPort", "isShowPort"); + this.__isShowInterface = this.initializeConsume("isShowInterface", "isShowInterface"); + this.__isShowTable = this.initializeConsume("isShowTable", "isShowTable"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: TopMenuBar_Params) { + if (params.reviseLabelController !== undefined) { + this.reviseLabelController = params.reviseLabelController; + } + if (params.deleteLineController !== undefined) { + this.deleteLineController = params.deleteLineController; + } + if (params.NetworkController !== undefined) { + this.NetworkController = params.NetworkController; + } + if (params.RouterController !== undefined) { + this.RouterController = params.RouterController; + } + if (params.SwitchController !== undefined) { + this.SwitchController = params.SwitchController; + } + if (params.PacketController !== undefined) { + this.PacketController = params.PacketController; + } + if (params.BatchPacketController !== undefined) { + this.BatchPacketController = params.BatchPacketController; + } + if (params.menuArr !== undefined) { + this.menuArr = params.menuArr; + } + } + updateStateVars(params: TopMenuBar_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + // 修改标签控制器 + private reviseLabelController: CustomDialogController; + // 删除连接线控制器 + private deleteLineController: CustomDialogController; + // 网络配置控制器 + private NetworkController: CustomDialogController; + // 路由表配置配置器 + private RouterController: CustomDialogController; + // 转换表配置控制器 + private SwitchController: CustomDialogController; + // 数据包设置控制器 + private PacketController: CustomDialogController; + // 批量数据包设置控制器 + private BatchPacketController: CustomDialogController; + MenuItem(menuItemArr: TopMenuItem[], parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/TopMenuBar.ets(40:5)"); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: item.title }); + MenuItem.debugLine("components/TopMenuBar.ets(42:9)"); + MenuItem.onChange(() => { + if (item.fun) { + item.fun(); + } + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }; + this.forEachUpdateFunction(elmtId, menuItemArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + } // 顶部菜单栏按钮每小项 + MenuButton(menuArr: TopMenu[], parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel(item.title); + Button.debugLine("components/TopMenuBar.ets(55:7)"); + Button.type(ButtonType.Normal); + Button.fontColor(Color.Black); + Button.border({ color: Color.Black, width: 1 }); + Button.backgroundColor(Color.Transparent); + Button.bindMenu({ builder: () => { + this.MenuItem.call(this, item.menuItemArr); + } }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + }; + this.forEachUpdateFunction(elmtId, menuArr, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + } // 顶部菜单栏按钮 + private menuArr: TopMenu[]; // 顶部菜单栏数组 + private __allSimObj: ObservedPropertyAbstractPU; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyAbstractPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[] // 仿真连接线数组 + ) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 临时any数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 临时any数组 + ) { + this.__TempConn.set(newValue); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __isShowLabel: ObservedPropertyAbstractPU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean // 是否显示标签 + ) { + this.__isShowLabel.set(newValue); + } + private __isShowPort: ObservedPropertyAbstractPU; // 是否显示接口 + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue: boolean // 是否显示接口 + ) { + this.__isShowPort.set(newValue); + } + private __isShowInterface: ObservedPropertyAbstractPU; // 是否显示网络配置信息 + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue: boolean // 是否显示网络配置信息 + ) { + this.__isShowInterface.set(newValue); + } + private __isShowTable: ObservedPropertyAbstractPU; // 是否显示路由/交换表信息 + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue: boolean // 是否显示路由/交换表信息 + ) { + this.__isShowTable.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; // 单次数据包传输的集合 + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[] // 单次数据包传输的集合 + ) { + this.__allSimPacket.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/TopMenuBar.ets(190:5)"); + Row.height('12%'); + Row.width('100%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.MenuButton.bind(this)(this.menuArr); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..9050102d9a7cde90b5930b3b99de23436ad385a3 GIT binary patch literal 25555 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 WEbmJKR!jBUaF+XRbW45K{r>>hqe1-u literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts new file mode 100644 index 0000000..766393b --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts @@ -0,0 +1,36 @@ +import type AbilityConstant from "@ohos:app.ability.AbilityConstant"; +import hilog from "@ohos:hilog"; +import UIAbility from "@ohos:app.ability.UIAbility"; +import type Want from "@ohos:app.ability.Want"; +import type window from "@ohos:window"; +export default class EntryAbility extends UIAbility { + onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + } + onDestroy(): void { + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); + } + onWindowStageCreate(windowStage: window.WindowStage): void { + // Main window is created, set main page for this ability + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + windowStage.loadContent('pages/Index', (err, data) => { + if (err.code) { + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? ''); + }); + } + onWindowStageDestroy(): void { + // Main window is destroyed, release UI related resources + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + onForeground(): void { + // Ability has brought to foreground + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onForeground'); + } + onBackground(): void { + // Ability has back to background + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onBackground'); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..247ce0087e531c098ffe0bb0b2bc23130457fbc4 GIT binary patch literal 20251 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.ts new file mode 100644 index 0000000..9301b43 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.ts @@ -0,0 +1,59 @@ +import type { SimBase } from "../classes/SimBase"; +function ValidateIPAddress(ipAddress: string): boolean { + // 定义IP地址的正则表达式模式 + const patternWithSubnet = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\/(\d{1,2})$/; + const patternWithoutSubnet = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/; + const matchWithSubnet = ipAddress.match(patternWithSubnet); + const matchWithoutSubnet = ipAddress.match(patternWithoutSubnet); + if (matchWithSubnet) { + // 带有子网掩码的IP地址 + // 检查每个组件的取值范围是否在 0-255 之间 + for (let i = 1; i <= 4; i++) { + const group = parseInt(matchWithSubnet[i]); + if (group < 0 || group > 255) { + return false; + } + } + // 检查子网掩码的取值范围是否在 0-32 之间 + const subnetMask = parseInt(matchWithSubnet[5]); + if (subnetMask < 0 || subnetMask > 32) { + return false; + } + return true; + } + else if (matchWithoutSubnet) { + // 不带子网掩码的IP地址 + // 检查每个组件的取值范围是否在 0-255 之间 + for (let i = 1; i <= 4; i++) { + const group = parseInt(matchWithoutSubnet[i]); + if (group < 0 || group > 255) { + return false; + } + } + return true; + } + else { + // IP地址格式不正确 + return false; + } +} +export function checkNetwork(allSimObj: SimBase[]) { + for (const item of allSimObj) { + if (item.objType == 4 || item.objType == 3) { + continue; + } + else if (!ValidateIPAddress(item.ip)) { + return false; + } + } + return true; +} // 检查创建虚拟对象的IP地址是否正确 +export function getNewDate() { + return new Date().toLocaleString() + "\t"; +} // 获取当前时间 +export function updatePacketLog(text: string) { + let logText = AppStorage.get("LogText"); + logText = logText + getNewDate() + text + "\n"; + AppStorage.set("LogText", logText); + console.log(text); +} // 更新主页面底部日志信息 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..738f11d2ce4666b09a7120c1fc192a762b6a3ae3 GIT binary patch literal 117897 zcmeHw2Yg(`@xR}@>a(%sa~H;bmMG)H$akkZoz8Tdniy;_B>X~%BTHvnAWQm5GT;CS z-3HTp3t)OTy_Zmv&7I1{8UFD5_!r%GXJ=<-XZLNL z4L|$HN6!q4etS+Rx@~0aydCGxZR_aSeaYhaxvuTo+dF!idRjZ$qZ=1Zsu>&!MfAv^ zs>8R7ZXFqc4E9>unX_dD7qDhzWJF|WBoYbd4(`cywKug<_7{DTY0Vvr>v9J-E$(c~ z)#ci|JLfIvSkl##%e7C-wfA%_otEqAp4Qp4FxNe8*Y=j&!O@lF=cx%s{3LNKfdc4D z8msZ2;g4?6dBDQmn-=G`YH5QIUw% z#-rrh!Kz?v!|)DKeNcG%$ndx7Kdp-X8V*`)BTCc;Paj>7XlS5|WIf`Rtb-^7;fa$ruOKf=0?T$*6`2g2v1> z0Vc*qhwGwxFof*=irGY{iG`*ISlig(@O=4aa$F>wTCk+OdG`GMqrRs0rPcKRz#ku$ z924>PENbnxP(x>YLL`!E&mFW^Q`f>=k1bW>)apnW6Mxdwwj^guLxabMO|KE1X?Iui zw8c%W*ta@+)jIq=M|r`w+CJg=qo})3LK(xN+=2EV?Q(Gal^d&>vKeWil)L-1?+FxAi-d~&``irC1 zMSoG!EZ^Pk;--S`f)Ph|!3cF1ldz!=oj1>N2iaRNfupxz#L-(Y;?i3%?&vKTar735 zOmy}Zj5vA=&Q;i3FsynD`XPG@`tyh0VpzX>i&Uy1-Ox~<$YdJo7+bI8lCA$Fy{gLC07h6Ne?~^YNHOxKxd0<0VRUQ@9B@=4o35Unb3NNP6C*L}Z*5<= z6SLG5`Dhp~Sklyl8H|Sw1xuQ6AhM0IA#5aQ!V1|4CJ7od*Cd!MCLEzKN-VQh8IxfX zK}b`Oll7`m#wM^C_6{54%!7X7Bxv{Q(5&re>^N&)T#;-BQ(_Ck_0_Y>bga7C`gFQJ zlg>0IGO30{L%K0t+u79Bw77d#)8hFpO(R@wMuBj)7*{NDMsS&mk*-d0C*d{h2 zd@vGGWt>T6Yy;b&m)xyYZ?IcyOG{f02LnAgTT;o}!A!wpu;5x_%!D1$>RTa?K^C7H zV@KFY5JnW?POuAF-H%qsfz;4DaVRys5m)yp0Um$qtAzCApjM}NHgRt z0T{`_!dL<;cH)xG7OYroT0Oa+G<9{)UNCb}Yg@~Vr8~AQ?%A~k^&+cqmW6PDU`v`Z zasVtAY{{00G#ZPcL(q^1G13A5E9(h=ZYL7SF!am#U+5MLOqSiS1T8Qv>I<=DhO45M zz^@z@NU#OS5leJ4BQW=Q)Xn?~evO{V%ODYf{2C6|Vo~yg(DWe!I$VPzwbHg6KjzKl%os! zGl}aEarbqIKzz&O*hnB=uzW!Y<08QvSD9mZLZrAYg;2`m$ne(gUE5oGTASMT%;5@f zmo2j&h-6}9sJ+9nr3axZKEB+wkKz4a2yP5 zwlNV;W3QY^XR~seGY3C$xNh`Xs1j_eztkfC)FPkKfaV_80nO#^1Dcb>faaKWurSh_ zX*`W?){B+YzZOh(7;#K?7@^6|Wb8kN&6_7CJHjcj-P2MklQ^b3j5ww{jJQm97^dOm}S4or^t9cT%|Vl5A*5CgYiOB9V+I zQt8_0i=L)CZmhlo(;YXlJ#`4*+3C)IwfyN0BaZ0~BYmIlFu7y8!-!+LgGkCRT=eqilG4eT}5+~!*?e{O?FvANBW1#=rl z9CI5++~+o&>$$=fs8y zt%(g1&|DLTm^4A)L^ZL&q$whaCN`YpnAl)?$~m!N8pp&2X|{4sY?#J%V#6tpi47x; zi47v7jKYZx!!8pW#@#12g&XYiSs5ljO9&i7;~A}Fm6q3 z=%*Y<(4Rj{Y?fAbt5;5JyzTa;8gYDryEgH7Lu0BwldW%z*ETQe=+23QLEd(IOEdj0 z?BA5uz|#n3y_nM6Sumwx#4)8|#I}E9xr3b0Fo9!2!-!)-!-&g-hH=M)h7rev29dn| z8%7)x8qQTXpg2?d9U}`&_J`S7Kh0GPRk#6xGsOJbYK2BUMzncu@06$N}1%l+fQ6t&`&Vp=qDJV zeqtkB`iRV%ryN1{5}fSlB^Yt^5{$U?5{x@~2}T^f1R@ih%N~q4dI`=|*h?_1dI|a= zdkOmUhhD}0B6bu*)EX)Jg6t_c-O*Dp;^-+D zap@@-ck~pDIC=_1Hgfh9j5vA<&Q;h`FsynC`XPG?`tygL!q!tf5RU9!{&=D>nQBbn zSRxxwr130BCfg8~r_*=E{o<|#P0hLJ>QIF^SN}_ki2ap8(feI{jjP;yjZ;Ohv3wo$ z8htR(cen3&p`h#>MVE#&M#@IK1*bMk#}QcYBI!3VI4g96bdiw&{p+ z1KCAzvZIS&#L-1C;?hMh?&u;IadZ)gMwO5HQ;t;)Vll@bW5hoZ{oz?skn27e>UOi zDg1L>k+$KB>m~LaDAn~a6(*E>s>xr@nIw1GA}5uqKMHubmswD&^Ae6@qtSCJ!Sy?E z+p{;rtgjA#iRJM4=l9y-ulBOkRNs(JWz*?oDw9gavuV75B&UyiHO+6!MPKx?)Kr@1 zccE`DX%tVczFzEIy;?8`WW+HDWP}ERj*HFg4RRdF6pnEqBaU$(BQE1W#vS88MjYcn zMDi{+GvXKra<0O0Aj4`LNI&E_kp3+4t^5D;V)L`n$c|-C6;s)GeKwoK^LXi0DxSjK z?rd%J*n#3y{hk(CqecEkQ^V_Br-o;{PYn+jQ^SMH)TjKbM{fFi>I`b-KyPrVfu3s^ z18bn?8pgniaxm0w97s_P#Lc4(+>-I!dWn-WbP)Gbt!k(dfWhJb6H!n;almqVwabV27clF7VYMCN3~Jc4H;bOdh#F6a$z$<1G~a8_$O z-7uoVZcJ~U!XvR5p;LGphqtL7Z3|jM;T51hJv}`|P;G>ljGj zn4H8tBMc|OHl{l+T)>X7Yo3ki2FgE4pIu=$%f^iC2D2?2Gcp_Yz)L|hssjhLw)8AQ zU8+>>Jz#H^k*JFwL$hom!12aU`KAz__#@GgY&;*Ra@Mi#;T!aWw{S{E*&5FVpd_WhyVlAVd$q0=Ed zg4ISRU*?grGeT$HOxZc(5;({v`&d=NL2!s5q)T;QXjLPOL*Ov{>eb>54}VtKPnpuC zD8h`x;5SI3E0VF+y{Y8%h#>h59HC)(*2O7tZHP+1tUi_1PLbq`MUsLp^>O**?3en6 z2v=+(@LnEz{XnzJ-G z&!z!m=V@?(O#{X*(BQ(}u1!r+OfS^n5}Q)Y;1Ufkvnj>cWg1*zQ);rxe}x8Di)&Lv zCdWneXNj49Aik6POrH{pU7Mm5_iIx-^?q$?r*an%2D>i`R0=J!*l>zgTYZ(6=~qJv zZ*wQI^$kh97=&+owWtF!{1MqKN~^y{gD=@%o8=@%n3 z{gQ!VL|iFy2JGQz2*w1C*%u>@*%u=&voFRSvoA&*voA#Qjt(;7n0;}s!r2$YYW77x zWG_R17U>lJ|D1i@Hp0W~D}zfkiF9KonaVb1lXS1Wo+Ce$KaX?cwEoY&+@$u@7kpz;O|Z5ywR+MDi{|G2*xg#kmSELNV;P2z4>t=&<5G z&`UPx1g2)eu6uTXD8A)zV&1javh&eSg5%=3s zOl;1}sHzyTZbwn)eg&0bMShsk(bLnh*t#Ia$&L$B$iwY|6cXk|eqciDf)o3NYKn8tBI3Tg5pKQN8!1u0H(T##bKaX|_Zw+m7XyIhcB-2H+S zc_hwj>|rvlCgzR{Qj9n*NHJ301u4$rxFE%d$aYTM##CbuAp}t;_V&c3DQjFzYkYdc`f)wM{1u6O|2N(2b z$tlbaksl(1%9#!oo#KqCzRb&&hb$gV%rrFM+$M{ImUtpw-yjYc@s)??yj*!G$?`jJ z<)Nhfp2jrm#r)=hg82<2j`Q}VLOIqZ4 z+B~|zb@S+0_syeD4wt>COmWNJJ7V=j%Z?Y1h&|d75gWtVV?^w;X`z%tVh<~|Sv1^j zKgZfEa*blA<8}}42Kij0*aa}$wb(3jjbazZJs(aExJI!Xf`P9&IXKEqv|$*%j*~;9 z-I7PZsMv4{F%_I14v(se8>285_Heq-KbV2x1~uy7bU!8z$Mtj&!Ndm1#Bmt5ZghAz z6$~scVG+A-9`-aEBhzvBr^e1UYt+ETqF_-@*4P*}#r5?`W}d9EDS*hMWW(RMzhkYG z(_%3R78jgCT-Me`45r%48g5L*kaGnp=u*}?NZ3_KNH_uYGS4i*OmVM=v_lA5t|uY3 z7DD(i|LCe=MjA4f5Cmi(D<}d?F~-QkmVzQ8fh|GuAbm$yZE9={+X{*y64(}ZjmCzP zq7Hm$Dp6V(H;;C-mlnpD4Lgg{NX^k0WqoJdH5w7VO_TN|Xjk~LprI-t;K#Uq#C5MS z(e4p@2Pr?MYNSD%M^)ho$b_^QgG=yxz+91sm=G`*cag^6o>7=Wn^UBG#y2+h#*lNS z{|J6VjeTHWyYZ8f$G)(iD3=5oi%j=}c}jY6J%Z*zlT|PQO&C(n6n1RY#siR@mK%zDPUEXK zG{jtDJXX?R5d#Xv!=!4Qi{Q-R7)`{X+dxtu!`npTDUM(Sg&T_h{4xo5i*RSCM%Xy- zw$w1D2^+XabP91~AtT`p(M+dkaGHkBz}`3r=?FYcgEM5w5ec2a+e4gHLAc{{4wZ-j zteRTLya%?nb;(A@UUC zQVlN86M2epxdvCttYq2^tEL!N^5zeVte~qkxK`s;<~$2UWu9v_Se3_Sl?FFS36u&q zX>f~%tsmnKMut!&jFP(DqQRXuX(ym9@6_OKhqMIVt--yr7~)CLy&Bw)?}+r`v16Fp zFz(mjA<2NMV*(oQAq^g(eKGRdv5aMnM>Kd$l934}RAr6FH28yr$i|fO4;nm9kaUZU z&`}@P;7Nzn1U{+3(++MEjHfktR*O}m`$nvI&B%5m^xtPScwUl||58cMYw)6m`^M6L z$4URCq!%@KMT^x6|HWYO7CR)W=KNvf6%F37Njeej_J#&;IV2_UEe-xEizf3B^j8hu zky#b=js|OrIq(FTZH)%+OHNc%#OZwvK6KN0B5LuW1|LguvMxa%Yk;3g)4CI@V#cQ$ ze3mD3%=k=$&t+DsE28^cgD+)P1%0W(*BT#F%eT=)ndxf{{+q|=zZ!fi`6wm6)!+!- z?!t!D?g$-@)h%%+p~A=Nuw1wI5d<#R;dr9s;YlP+(D6E)p!e#+HCWIj+-^BRhf^d2 zs*p)|B;XVsPSd3e*D{tdPSfEGNk%r9gzIo;=x~;V$jFrQEFI1vNV>3r-g=G>=Q*S% z@H`zZaB!iuYFU_9X77i;X0d?lhJ0^>2QNXN&;`t;YL|7nTDVnb+}n(RnW~k+^QGpe?exu zRfjtzC#rekbf*q?7wS71J@sxK?vuo1SAy=-;Q?8!&JY+6={ba+dT zg>e+<$KM&zFvyCO_?8ZTwFy>>j`&v{-f;*<;5$03k$lNyly!{`@57QORb z9X^o6tr(%XA3Cex<{| zWWl68LI2X>KQgO={-eV;#k{j#X8T5mBYjpMLY$8D!O=d^8kLAlJi$2H2g@We*>z*| z&SgG0jv(3UH%6~J&Ic=e_P&b16+SpoW+l54bfOPVmRS{avJX!6DeqK;qkYmc%c(v% zGmp!eJ~&%)Ax|O&&i28%K6}TSkqPJe;6h1D-nj|VUg(319l{cLu@5eh#Sl+|F7d%- zKKG8*=ABulHjK-BaFt|0m9YsL>M9>xunCS0R{7v2DWZaI z^1&^XlO}`HCD|=LxJ~AynxF!1^T8c5Cn>inI`bVqxXYm&fp_`f9!H@QjC*`=pHB=S ztOsJ4N0o7(4}K@f$;YXr-}&GnpVb3ziE_~pn35jy!DBw#5W-@IL|Zda*m%qbPuL{g z49)w551w*JO5jsIct#dYRwU>dA3P_sD(E>MJnt*g2X8C0J@12;B`2y-;`Fi)UUAcT zGt}Z0AG{{X$+`r+=7Tq6!DQXdaA@#`58ld?IcB`&gTKnGRDVSGS0B71vnuEvAFT1I zA%w$5+sjOAeDHoApZ9(6q2!~K_|OL*IXrzPXAc`6`QS52OX315{Fx6vcZf^i=RWvS z7DGG<`qBqq7x8r4ylqFOHjJ-*@L$P*Dg@9}|MkJQKJ15S-UwA$s~@JsZ+&ot-|8=> zphF(vhok)V{(``x{BR7>;n;?ZMp=*X!!p0{QY)|(rcJ?~c$puLm*nK7M1H&ZV+9buvsBxwr&UQ#j;MsmSR~AhcAn05_oG-H~ z=zKr?)?dU+ez4pg*n0k`&upfRe8Bm36 zjqk}nyJvOeR7=g94F zHGw~1w8wx+Q_)GE^TP|0nw*rVU+}|AHYeRfIw>W+U==7-fXtAbYhVQn!V-CJf`>xT~{C#nkK^noA# z?xOJ)=#PK*!zYrOT$G?s{O}K1F4g%KxJvL3Km0RKNlsfMt@Fq^(1Bmj&Rs zfW5mS@VEf1AUZh}BWOhcP7L(wq5Cq|$;OERI8`#B>ZrrrqEiEKdO&(;UDb5ULn-m} z0Gw$PY#KV_nE^Q4AsB&Y2jE=EmuyB^&kex&0bJbQrh16&^+-&dhCX_J04|jD9zpe;i`2Uo$`(V+%4(JPYJp^0Qbt0 zspjKVn;Z8A;Ql`Ey;*GN39+psijF!0XCW6ZS7YCB7bjH*JC?(J9{yz}pVN2z)yLf0KO4YLxYF0azUn zUwrF4DyAjTQCA1xT}e)kO62bb;C-8;E|iW+N$&^Xqk!#;Z?Qw7R?d%urT~0qle8X9 z^H~5scSuU$=K=Uq7EKl)=*s|nEwd`<>j3<_n4caXv;8{&-%3tY8N}(^02~o?(YYSA zI3fr~2d#d9preCuEJ1SqRgYitV}r0fXz!p1TponuWmd8-LB|K-1esMqCj{Z7p!(uF zY_wQrIw=UJN{KUqa8}UXpLR&?&I-c$l9s$Qg$kb^gx@;ECGfXFxJVX5 zJPEoe2rGlV_NV{L)SDP9gK)WIKoydznrvJige!xxKTTE9!$;U#Q*)=pD}!*gO|UdN zy*9PHw$(M{qS+5Vmsvv%YwyDOqS?GOcGsY1Tq|sGZ1>t6yhg_BN+#G~k zgI1qP>-98+qNH1caAzVY!bqe1wiEs0s zRnv@TgYc(3!KWF23c?FAD;b;UUI@ZVGOL1K3c{a*xV2Rz%GAL!=bwY{S{}34g7Ai9 zrqp>O2yZz&_g9=9*RzALTGEot8B~3B5Y{?mCU9*K-jl@;PlDbH!Uw&3?x9RQ+4vv` zA4>*QH5vTOejJ2PmFH&cBLPbMGzg#B1ZzYm{VWKdI|L)}^B{aF`I6-*>z6_JnojVT zBLTi{jfsuuwO8SLo5ZvUDn82GtaEmO5m=bhL2yP4E9okacw!ZK(Drq_%_Ps3xcS#OZEz@yV z;jR$eLnQ@jeBtGSZcF2y5Zou}$Pm-3wlwYw!2=Q^OH|2SKe30=@=*+(l!Q(OmIWv{@cnF>h;fIzt!hGT5 z=qv#B!Ibu72%ZhaHWhtv{@Xyl@Cu<-*myPsFWThY8SVFC2wrx`OW?~PctsXZRwC$? z5WFh0D(KY^yk5+oPoyF#-|HcGTe6}mBk1iA{LNkUozZ*$7J@Z01DTniH6eIcmQC)l zbJbMi-4MK=C-zk1{SbU8vr?rI-G?FgNM=>gM=-$x3PRMF_rfc=V}C?XN=cUr9_N?}BRoHw520L?-at5F8P8|e6GJbLfxR65Zg6Ncj?R}z(=ZYa z5rz{b6<4ZxD`O=}T@DiKK9Oaj&MXh4|8$^?4UQ_;`JwbvpokigvbE{Z=s2Smr^&I<=1)y|f>ht6$Y3f7T)|(&@&F zTu(P*c*N+uy_R<7W-r*ay}PGt37>I_cJt}R1IiS-?9+`($$lMO4wX9J72ClAKJ7R-VoNHDSi z3>Pd+WH=sf9D{wD4;wpv%*^6Ps0bExSD*8m5iCrEB3N*+2s*oBqT^vgOhj$NY{d>6 z`{G0BB1DmnhEm74^fQQ;+oD7LZ>8>SELgqFh-_D;x7Iby?^x2aSI3Op4!O2mPp&2U z(4_t|sm3@oZ)uU&smWdG+T<{Xv0IZngqvJ1k%ETE zC^ba0PdSnlqk95opTfvQFa!!k28 zjQ*J4sOE_bzCK5KiJOXOY|?@e@kTY$m^qyNW zy(qp6XQRuDre2KDwMA1eM&?6{rPmmhvjv}_W;*)397B37gjT_ev|yx_-<_6vF+#Tw zr6)SJyT_?4i}BHEv&J}!`O-9L#s~$cDW+MqB3c4V1tY34&bAb6p=ubRP&K0|G7^34 z=$Ij+hnWvd>lnP`SW-~+A8iYM!r0OLw)A9d|9B+Ou~SOHS(pSb93C&@ zs00*-7Yk32tW4|#4NlT{HOs9lF;v!*_|Py*=2w_FGt5t9o0vE>%&%FKvNehpPY$0e zizaQCk+$b*aK03gUc+YWd<}jp=}hdm8eAj}K;~^rZme=$#7Bl%I#P@|i8I42or#Gf z!?bkgrtGFFD;^`pGsC8`%{bnKmvkm}JD(?}Bi80}&8(*Rxi&OrOy$D^#(0+4RF`>)!^Eb#jNy^t-xaUhsfyk2 z8GA;9=QQ4^ zLQi(=0K}0!lRU>Kh)r!7!=uA5OIB35jJ?dqiHlWkQjy_-;@72Qq%CKCU4u6zI}>|T zgSTaXA@byuqJ5iB6|-fia*ro%#j#=*kt&igJVyMkO;=KdV*RtrX2sIxM3@z&tRJ`IhN$9AVh2le*07 zI2~5#Mf<946xj+LPL}LQHO_jn4yQ_XCU&Y0r|UR_ksb4PiuQCqY;3A~0;wxb8=LAf zCXO4M>M|xy8`D=Ke;H2?&%gqh2+tp1Y}1#qi*>lfrY~cc=x|waeRojoF4N&Eo4%a& zDjlw|>C4zPd=}Z%cPEt}4Jf97%2L=fV8xl?&O9^RRZ-ue!#$D%IS6yOhmRneR%A?^L1sxq zD8Y{vEgnRENaiP}VA_XtctlEIVvp$Xn2v+~8P&lSo-84g-BgChba-4cAy;4~kL&QH zWI~M^vCWJpb$D9RN!2zpp4Q=6NoQiu>hLEzf;*$y-`X;d&Rfn_EdIo2kxj2*w&EzV zUEj^*S!7e+Jyd=?b^N*%LE39G<8>Y0lp>hozp2C9bUqr__yR!`V6M{ZZ5>uiV$$m* zs>anitd&g3V2rKR;XO%bV(;;3V~TD$E`O52JC5y5^ikSdvG_oTk0o1@i`jn6N03=p z6T>sdpV?a7PZjNFd=@!`@$@JwE(6S$e->GA^u^E8N-Q{XvfF|qC6v1o5U$ip!2eXg z8;ndZa}r%=O|GI>_bYof&intOMP8=aKR%E+V&0B(X>o1)_V$jRCb~Ts#dpu#X8%ig z_P@AH!ONfhx3%GEXFAg6Y2L4*1ypv)?c9PTH%1)uenx2C?>0TAtAb46nD{f|nD{f| zvgpRRW3JDLW3JCg!CaqFYtapVexDcJ-U&vsWqPb^YP8jHMSpTvzotdR)%`(HeEG+v zq2WWMZVj!68(LeLVtZ_8sOEay&Q2?6XN)-786zdu*ErqL%ouSrGe%sR8RL#-#)zYt zF;dXX7`2)i{`@{SvrmGNt;+OQ+04W?Zgf>Y8C1WiMMQfW6us27v7PAN*bd^x)={SL z9vhobc0F!yZx*ySMjY*p5o&L=7F9Uop)VVgIGP+IjwZ*5OOs>V(c~C$G&x2JnjE86 zlf$3i=O*W65NRzNdKyGp+1K|$q$TNk+}Lg_Xl#r)8XF_FL8PS^&cmpwF@dA0G2&=y zjJPy4#vM(K5l2&Fq@bxWYBe?d`F(C`D=*U`TbB8SsH5XD^AedyGZKSUhA?gv2aBO# zJ0tOa6+IPlq!vy`wNSOUuwfo-k|3MlKZ;aDLTsSoOHlwJ0w}%|i%C(BMpgy+?OKj$ zqbMk39Id1c?(FL5>FB}b0pv#kZz%f&+ymz96wZeL+5)D)3bxQTgTtp{mtfT3>mt14 zHW+&9LVH;Z(Kv=^M)I$A8pIV%Z~%&3U^R7o6!W z5k_dcSX|~Oc}C*0anv6kJVeQq#9iV7#m*qbGBDjzjFIWEmAhgT1=pb%#lT&Fip?(5 z+v{o*C7+2$RcX^gL*-DS5yo~Hp^A-9>M}whstVPO43Sl^GtA;kh4vUPgTv>LzO(pI z6Eq!FBqJ1;%C#azcq&}NR~1R&srEp9`?2JOYS9uW)g%@k#mH7avs7b*cBBhcGi&na z(Bz`p`J`GCZb6$q%18@7jN+;qy^rFkN_rk;A*wc~{Hjc(QVnT*kvNgbG~mm0@pQJK z)>`93WoZ$d>JmkYVkoQ*OJPPRj&7mCW?lX-hPE1uZPE&Mf)TYz-2>I$HPs{|w0G^Q zE^T2u)TOsos7ZQ0DTpeCxgH}_bd~WNvCYj*a)^M$Hn*kOXsc01xTC;L?iCbV$gbOv z@Fk?%3f|Y|rT4+O#LO6OVq-8YrJs4+pSm0o6pIh-hH-%CCX8%a^zgU6s=W+gKwqI$V1 zDz@Prii%zMR#enWzl?9BXR?_@I+=+lGl^s}o2+%Hzk#f06fA1s=KkMp>NECt4h~kL z8Dprhe^TUAtY>RFhjn@@ssB$724DR`?rkwrTVac^Ul4edbY$tC5Op+ zMiHX4^?#(?>7%C1*pWIMt%4!Z_^F^NAIyu<0 zFhSA&Fnzc)S50d(33CqhL`APjkLzfl0v)P(4j2RvgC{Xi$QWK8~+-|F6#%||eWv*(9pkO9CQ|BGBQ7CGuYLRK+~HNv=;1D=_>Gxi|IJ1f-PtYVCQ_6MDBggN3I3<*C(+W&zA zotc%)*b^M-%vF04@yww;#yWdWkL`t(T=w#TI9R35kws-SqYNXB=d2?NRLzWuBMOD8 zn$?W4)9_pZU4F|`^-)q4PbgquG*eZ^L_9QCRsYIy(HyG2!%@-pM^(#z7bStOC1x7a ziEK98n98J6I092|Ju3r@ly!}gjihjE7*x%yYsT;_14dOVG=N#x7+dWhbif3=ZR^k) zn(vRK|37s2+@?QcpX=~tk>2b}9lp+M&tL2CZ{6GH*%Akp93^WSMTi>z*5Po9>m`So zj2-TyaBPK&nl*hShhQsI^hr__gRvbiInp?UvEzMkg3rC%KEVek$skdx<2uO)r}*#z z94|BA($A-%=A-eSCgh45r*J4YQ+t#(YKT~Fh1#3djFH_gptxBsSM7&{pCuDq;Dd{7 zCSdF$AFM25f|WkFG|vQ=`rvY3Y#%hiw&hMUL|vQL|54pB_>YF%D92diav1_nRybqV z_~5#d6@DEDge#)*^Q1Dyhr89LGGn*;;PxUa-|mAu^Hjdm2Y35o?WpqJ<*HnpXiTOW z6F95F=Qh#}*;FRm5U(vX#8_GPDBW1&ZXY~g^L)l0@WF#_hA`{?K@Kfv>*M&?BHH$4 zG6Kew`=iYWjQx@0%(?b)PjI|BM;|Am&Gn-@SH~zRq%PGt$}o}w*1cd;m9ZCm@RFOV zW+Q*e2e10<-MLcrFQn?L9E#5D&KVQ2=v-A*5$SA$v%hjgI&ZDKzT_MAsQP$W(d%-6Zs)4M3UO!CUxc{Z z8~wds8{?>GHU6WzMj=K~EWB@Q$};wi4-Tg=V-%FsbsT;;2fA}p_H9xYgWfIoTi

uXoTn=mH97k=fC>|t2IztV?-#|i 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 Y@Q?ZHyMNsI`I|EL@vq<7dF%E60};Y>lK=n! literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.ts new file mode 100644 index 0000000..0f990c6 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.ts @@ -0,0 +1,1513 @@ +interface BatchPacketSet_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip?: string; + mac?: string; + message?: string; + allSimObj?: SimBase[]; + allSimPacket?: SimPacket[]; + packets?: any[]; +} +interface PacketSet_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip?: string; + mac?: string; + message?: string; + allSimObj?: SimBase[]; + allSimPacket?: SimPacket[]; +} +interface SwitchTableConfig_Params { + controller?: CustomDialogController; + simObj?: SimBase; + mac1?: string; + mac2?: string; + mac3?: string; + mac4?: string; +} +interface RouterTableConfig_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip1?: string; + ip2?: string; + ip3?: string; + ip4?: string; +} +interface NetworkConfig_Params { + controller?: CustomDialogController; + simObj?: SimBase; + ip?: string; + mac?: string; +} +interface LineDelete_Params { + controller?: CustomDialogController; + simObj?: SimBase; + allSimConn?: SimConnect[]; +} +interface LabelRevise_Params { + controller?: CustomDialogController; + simObj?: SimBase; + newLabel?: string; +} +import type { SimBase, Table } from "../classes/SimBase"; +import type { SimConnect, SimPacket } from "../classes/OtherSimObjects"; +import promptAction from "@ohos:promptAction"; +import { checkNetwork } from "@bundle:com.example.ensp_fourteen/entry/ets/functions/functions"; +export class LabelRevise extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__newLabel = new ObservedPropertySimplePU("", this, "newLabel"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: LabelRevise_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.newLabel !== undefined) { + this.newLabel = params.newLabel; + } + } + updateStateVars(params: LabelRevise_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__newLabel.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__newLabel.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __newLabel: ObservedPropertySimplePU; + get newLabel() { + return this.__newLabel.get(); + } + set newLabel(newValue: string) { + this.__newLabel.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create({ space: 5 }); + Column.debugLine("components/Dialog.ets(13:5)"); + Column.margin(10); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("原标签: " + this.simObj.objLabel); + Text.debugLine("components/Dialog.ets(14:7)"); + Text.fontSize(28); + Text.fontColor(Color.Gray); + Text.width('80%'); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(19:7)"); + Row.width('80%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("新标签:"); + Text.debugLine("components/Dialog.ets(20:9)"); + Text.fontSize(28); + Text.fontColor(Color.Gray); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入新标签" }); + TextInput.debugLine("components/Dialog.ets(24:9)"); + TextInput.onChange((value) => { + this.newLabel = value; + }); + TextInput.width('65%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 40 }); + Row.debugLine("components/Dialog.ets(32:7)"); + Row.margin({ top: 5 }); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(33:9)"); + Button.height(35); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(39:9)"); + Button.height(35); + Button.onClick(() => { + this.simObj.objLabel = this.newLabel; + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class LineDelete extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: LineDelete_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + } + updateStateVars(params: LineDelete_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __allSimConn: ObservedPropertyAbstractPU; + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[]) { + this.__allSimConn.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(62:5)"); + Column.width('100%'); + Column.margin(10); + Column.backgroundColor(Color.White); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.simObj.objLabel + " 连接线列表"); + Text.debugLine("components/Dialog.ets(63:7)"); + Text.fontSize(18); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/Dialog.ets(66:7)"); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objID === item.nObjE.objID || this.simObj.objID === item.nObjS.objID) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ + content: this.simObj.objLabel + " : " + (this.simObj.objID === item.nObjE.objID ? item.nObjS.objLabel : item.nObjE.objLabel) + }); + MenuItem.debugLine("components/Dialog.ets(69:13)"); + MenuItem.height(25); + MenuItem.contentFont({ size: 18 }); + MenuItem.onChange(() => { + item.deleteObjConn(); // 删除线时应该先将线两端的设备的connection设置为null + this.allSimConn.splice(index, 1); // 然后将连接线对象数组中的该连接线对象删除 + this.controller.close(); + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + }; + this.forEachUpdateFunction(elmtId, this.allSimConn, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class NetworkConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: NetworkConfig_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + } + updateStateVars(params: NetworkConfig_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip: ObservedPropertySimplePU; + get ip() { + return this.__ip.get(); + } + set ip(newValue: string) { + this.__ip.set(newValue); + } + private __mac: ObservedPropertySimplePU; + get mac() { + return this.__mac.get(); + } + set mac(newValue: string) { + this.__mac.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(97:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(98:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(103:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(108:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(109:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(114:9)"); + Button.onClick(() => { + if (this.simObj.objType == 3) { + this.simObj.mac = this.mac; + } + else { + this.simObj.ip = this.ip; + this.simObj.mac = this.mac; + } + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class RouterTableConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip1 = new ObservedPropertySimplePU("", this, "ip1"); + this.__ip2 = new ObservedPropertySimplePU("", this, "ip2"); + this.__ip3 = new ObservedPropertySimplePU("", this, "ip3"); + this.__ip4 = new ObservedPropertySimplePU("", this, "ip4"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: RouterTableConfig_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip1 !== undefined) { + this.ip1 = params.ip1; + } + if (params.ip2 !== undefined) { + this.ip2 = params.ip2; + } + if (params.ip3 !== undefined) { + this.ip3 = params.ip3; + } + if (params.ip4 !== undefined) { + this.ip4 = params.ip4; + } + } + updateStateVars(params: RouterTableConfig_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip1.purgeDependencyOnElmtId(rmElmtId); + this.__ip2.purgeDependencyOnElmtId(rmElmtId); + this.__ip3.purgeDependencyOnElmtId(rmElmtId); + this.__ip4.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip1.aboutToBeDeleted(); + this.__ip2.aboutToBeDeleted(); + this.__ip3.aboutToBeDeleted(); + this.__ip4.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip1: ObservedPropertySimplePU; + get ip1() { + return this.__ip1.get(); + } + set ip1(newValue: string) { + this.__ip1.set(newValue); + } + private __ip2: ObservedPropertySimplePU; + get ip2() { + return this.__ip2.get(); + } + set ip2(newValue: string) { + this.__ip2.set(newValue); + } + private __ip3: ObservedPropertySimplePU; + get ip3() { + return this.__ip3.get(); + } + set ip3(newValue: string) { + this.__ip3.set(newValue); + } + private __ip4: ObservedPropertySimplePU; + get ip4() { + return this.__ip4.get(); + } + set ip4(newValue: string) { + this.__ip4.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(142:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(143:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口1下一跳:192.168.1.0/24" }); + TextInput.debugLine("components/Dialog.ets(144:9)"); + TextInput.onChange((value) => { + this.ip1 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(150:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 1, + net: this.ip1 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(165:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口2下一跳:" }); + TextInput.debugLine("components/Dialog.ets(166:9)"); + TextInput.onChange((value) => { + this.ip2 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(172:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 2, + net: this.ip2 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(187:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口3下一跳:" }); + TextInput.debugLine("components/Dialog.ets(188:9)"); + TextInput.onChange((value) => { + this.ip3 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(194:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 3, + net: this.ip3 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(209:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口4下一跳:" }); + TextInput.debugLine("components/Dialog.ets(210:9)"); + TextInput.onChange((value) => { + this.ip4 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(216:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 4, + net: this.ip4 + }; + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.routerTable.push(pushItem); + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class SwitchTableConfig extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__mac1 = new ObservedPropertySimplePU("", this, "mac1"); + this.__mac2 = new ObservedPropertySimplePU("", this, "mac2"); + this.__mac3 = new ObservedPropertySimplePU("", this, "mac3"); + this.__mac4 = new ObservedPropertySimplePU("", this, "mac4"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: SwitchTableConfig_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.mac1 !== undefined) { + this.mac1 = params.mac1; + } + if (params.mac2 !== undefined) { + this.mac2 = params.mac2; + } + if (params.mac3 !== undefined) { + this.mac3 = params.mac3; + } + if (params.mac4 !== undefined) { + this.mac4 = params.mac4; + } + } + updateStateVars(params: SwitchTableConfig_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__mac1.purgeDependencyOnElmtId(rmElmtId); + this.__mac2.purgeDependencyOnElmtId(rmElmtId); + this.__mac3.purgeDependencyOnElmtId(rmElmtId); + this.__mac4.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__mac1.aboutToBeDeleted(); + this.__mac2.aboutToBeDeleted(); + this.__mac3.aboutToBeDeleted(); + this.__mac4.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __mac1: ObservedPropertySimplePU; + get mac1() { + return this.__mac1.get(); + } + set mac1(newValue: string) { + this.__mac1.set(newValue); + } + private __mac2: ObservedPropertySimplePU; + get mac2() { + return this.__mac2.get(); + } + set mac2(newValue: string) { + this.__mac2.set(newValue); + } + private __mac3: ObservedPropertySimplePU; + get mac3() { + return this.__mac3.get(); + } + set mac3(newValue: string) { + this.__mac3.set(newValue); + } + private __mac4: ObservedPropertySimplePU; + get mac4() { + return this.__mac4.get(); + } + set mac4(newValue: string) { + this.__mac4.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(247:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(248:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口1下一跳:mac11" }); + TextInput.debugLine("components/Dialog.ets(249:9)"); + TextInput.onChange((value) => { + this.mac1 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(255:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 1, + net: this.mac1 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(270:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口2下一跳:" }); + TextInput.debugLine("components/Dialog.ets(271:9)"); + TextInput.onChange((value) => { + this.mac2 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(277:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 2, + net: this.mac2 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(292:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口3下一跳:" }); + TextInput.debugLine("components/Dialog.ets(293:9)"); + TextInput.onChange((value) => { + this.mac3 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(299:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 3, + net: this.mac3 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Dialog.ets(314:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入端口4下一跳:" }); + TextInput.debugLine("components/Dialog.ets(315:9)"); + TextInput.onChange((value) => { + this.mac4 = value; + }); + TextInput.width('80%'); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("添加"); + Button.debugLine("components/Dialog.ets(321:9)"); + Button.onClick(() => { + let pushItem: Table = { + port: 4, + net: this.mac4 + }; + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port - 1] = pushItem; + } + else { + this.simObj.switchTable.push(pushItem); + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class PacketSet extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.__message = new ObservedPropertySimplePU("", this, "message"); + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: PacketSet_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + if (params.message !== undefined) { + this.message = params.message; + } + } + updateStateVars(params: PacketSet_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + this.__message.purgeDependencyOnElmtId(rmElmtId); + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + this.__message.aboutToBeDeleted(); + this.__allSimObj.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip: ObservedPropertySimplePU; + get ip() { + return this.__ip.get(); + } + set ip(newValue: string) { + this.__ip.set(newValue); + } + private __mac: ObservedPropertySimplePU; + get mac() { + return this.__mac.get(); + } + set mac(newValue: string) { + this.__mac.set(newValue); + } + private __message: ObservedPropertySimplePU; + get message() { + return this.__message.get(); + } + set message(newValue: string) { + this.__message.set(newValue); + } + private __allSimObj: ObservedPropertyAbstractPU; + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[]) { + this.__allSimObj.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[]) { + this.__allSimPacket.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(353:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(354:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(359:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入发送信息" }); + TextInput.debugLine("components/Dialog.ets(364:7)"); + TextInput.onChange((value) => { + this.message = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(369:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(370:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("确定"); + Button.debugLine("components/Dialog.ets(375:9)"); + Button.onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }); + } + else if (this.simObj.objType == 1) { + // this.simObj.createPacket(this.mac, this.ip, this.message, this.allSimObj, this.allSimPacket) + this.simObj.createMacPacket(ObservedObject.GetRawObject(this.allSimObj), ObservedObject.GetRawObject(this.allSimPacket), 1024, this.message, 8080, 8080, this.mac, this.ip, `${this.simObj.ip}:8080:app1`, `${this.ip}:8080:app1`); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class BatchPacketSet extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.controller = undefined; + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__ip = new ObservedPropertySimplePU("", this, "ip"); + this.__mac = new ObservedPropertySimplePU("", this, "mac"); + this.__message = new ObservedPropertySimplePU("", this, "message"); + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimPacket = this.initializeConsume("allSimPacket", "allSimPacket"); + this.__packets = new ObservedPropertyObjectPU([], this, "packets"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: BatchPacketSet_Params) { + if (params.controller !== undefined) { + this.controller = params.controller; + } + this.__simObj.set(params.simObj); + if (params.ip !== undefined) { + this.ip = params.ip; + } + if (params.mac !== undefined) { + this.mac = params.mac; + } + if (params.message !== undefined) { + this.message = params.message; + } + if (params.packets !== undefined) { + this.packets = params.packets; + } + } + updateStateVars(params: BatchPacketSet_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__ip.purgeDependencyOnElmtId(rmElmtId); + this.__mac.purgeDependencyOnElmtId(rmElmtId); + this.__message.purgeDependencyOnElmtId(rmElmtId); + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + this.__packets.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__ip.aboutToBeDeleted(); + this.__mac.aboutToBeDeleted(); + this.__message.aboutToBeDeleted(); + this.__allSimObj.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + this.__packets.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private controller: CustomDialogController; + setController(ctr: CustomDialogController) { + this.controller = ctr; + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __ip: ObservedPropertySimplePU; + get ip() { + return this.__ip.get(); + } + set ip(newValue: string) { + this.__ip.set(newValue); + } + private __mac: ObservedPropertySimplePU; + get mac() { + return this.__mac.get(); + } + set mac(newValue: string) { + this.__mac.set(newValue); + } + private __message: ObservedPropertySimplePU; + get message() { + return this.__message.get(); + } + set message(newValue: string) { + this.__message.set(newValue); + } + private __allSimObj: ObservedPropertyAbstractPU; + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[]) { + this.__allSimObj.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[]) { + this.__allSimPacket.set(newValue); + } + private __packets: ObservedPropertyObjectPU; + get packets() { + return this.__packets.get(); + } + set packets(newValue: any[]) { + this.__packets.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Dialog.ets(415:5)"); + Column.backgroundColor(Color.White); + Column.justifyContent(FlexAlign.Center); + Column.alignItems(HorizontalAlign.Center); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标ip地址:192.168.1.1" }); + TextInput.debugLine("components/Dialog.ets(416:7)"); + TextInput.onChange((value) => { + this.ip = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入目标mac地址:mac11" }); + TextInput.debugLine("components/Dialog.ets(421:7)"); + TextInput.onChange((value) => { + this.mac = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + TextInput.create({ placeholder: "请输入发送信息" }); + TextInput.debugLine("components/Dialog.ets(426:7)"); + TextInput.onChange((value) => { + this.message = value; + }); + if (!isInitialRender) { + TextInput.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create({ space: 30 }); + Row.debugLine("components/Dialog.ets(431:7)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("取消"); + Button.debugLine("components/Dialog.ets(432:9)"); + Button.onClick(() => { + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("新增"); + Button.debugLine("components/Dialog.ets(437:9)"); + Button.onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }); + } + else if (this.simObj.objType == 1) { + this.packets.push({ + ip: this.ip, + mac: this.mac, + message: this.message, + allSimObj: this.allSimObj, + allSimPacket: this.allSimPacket + }); + } + else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }); + } + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Button.createWithLabel("批量发送"); + Button.debugLine("components/Dialog.ets(464:9)"); + Button.onClick(() => { + this.packets.forEach(item => { + this.simObj.createPacket(item.mac, item.ip, item.message, ObservedObject.GetRawObject(item.allSimObj), ObservedObject.GetRawObject(item.allSimPacket)); + }); + this.controller.close(); + }); + if (!isInitialRender) { + Button.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Button.pop(); + Row.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..c00bcfe471dac8debd12e49c77712b56e6014f79 GIT binary patch literal 597189 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�CeJ)?S^(KD)LM$d?K2Gbu5K>CCDz;2L! z>AtXe6|~f}omGLM?dM4q`kDtJWd2o1fj7KR%N7hR zuNiv5(ljG$z0u#>n?!Db7w-n^3XAgM4=Qsh&%HuC=LtJdl3u;L+jKr%)yLMu;k`@Gut&YYvyvAm4}(0&*=rwkIk^5{Uuics|vkg zRo>L|re@{}pd$-eR1VqBvPywd% zHVs~Et3qLOsGY}`U}R!{EL(Gu$h0TzK8F z@x7t(R}b##$vLdNNpX~gO)iEe-!ix#eHpagBelwj5OxR>u@4Zj*Wmo(XnD4}x_k({ zk~>+dmc~`LY2U@bHur!w2L|J1c%4~!JK_Yu-Oe)Q?TB*$Z09x5pH~gOVq$utI#HZF z3SSvkE-Ci44s38fG`Pp$fOx4zdFKKT6g;X46y4Aj;f<|a>RVo=SKrv;HospfIXcX* zgZqL!X0$_oU9JE!bWM21s6m^Uk(vf|^w4l&eV4tALG(JXcMRI00{wLC#CW zstFQ7P|Xs=8ARX7hO^XZPLDJB5s_OG#en;pkQQ|D@OEf?d`da5S^F?XTBLBU_{F68 zSzR|#Sq`?=DWN*&8jzvShE~IRCiOwj*w;5`>RaG0@;rFOoO0$J?uH)>-vuqT-qV!7 z3u$Si=r`zlLbl#E*|a(H&WG>=nvk#v`+e+ z;Yl}B;~vt5w+2mMH7*V?2Naym>$%<>!5NyK&4c&e$XnTrnSn@!4*O%j7Ypmm)AOlI zS%8Eyr^L?2fe49mDNoO25M`WNVtSw)&I2>4Z!i*W`H>K9P_&MTz9QOpYnRiKfq&TAyhY%z3O=updS zYSbex!poxS%`Na#4&6RKtUAbMQa{<#L#YrE|1@xh*zb)OGs~$Jmy958A&-oJYs$YP z@MEh@1I}C<8+b{DbyAPE=CKK%Yx~%^;uAhj2a%8yhe5T;a>~3?Vq)j@mHnm&a=A&L znKET*r!K+9>$;@WH7R!6*kp?yA9X|s7X%Vff5W4$P2q>ZHvKykb?pf6fx8_cwCdWC zkE?ipBvqrX9pSXa{%}!0k((y!8j;VS_=aG7qEanRkCjxnW#?zX4($a-+x)>j#wN=Z z2;yH^o|qQFn9BNQXK(Sfx2!Ymb^9#JPW^%%4BpMDW2Vp?&U)crhS9tXe-@S1cAZ5{ z!?lpg{;pdhBU)B}DV#+K_34-^XtIYti^^tq-m|D+o`gS(${IVtSyXsmZ`R!DeZARS z+fGxlk!YZq>DJ3Fbm3jp*?ik%3&X4@WEa{aTe9<7C;R@;j+d;Jn)2+R>-$|iW@GC# zhj&jH9d}QF*){avp+gyrOzJ9c9DIG|2Aj+Ecq}|x%B(W=iAQaWZcXu-&~w+&Qm3>u zcWdtu>akcDrOL_I!;tUVaI{W-_`@w@CqLXWcHYA+qYH;ym@Zhs;g->(!>vL#pEE4W z)Cw86g_qIc_s-r4IA%w#i}4qq<| ze`nF?(VaytU&zzDu4XQ8>87O_W@qQr=U*50gv78?FD~$`k+mK7t`*KxORR#l3@y`PSq!HLk!si=eW-x&5#-_N>Eg*(s^9ty&?%O2*4hRW0?(vrH-Dp#4sDH`~qBA0r%XBLXv1P(Rg;ND@I2(fn{35a4lKlHrHWl~>gZC@OW=fHQgM zq0ky4r}@%|*Vpwyt`BDv!Myj3w1Bt?4=)Zmy*+X8cv4y?{j1@5o=u(I)&y*Ub}<1R zwqsB6qP_#c85Dkv$rqGJN@Izsy&TVZdYPpi?QSToNziv}B7`gTa!{+cLdo3fq1Z;!8MD+rRz z_vm#Fc&j0kEtn7~nZcKWGVpLgX9L>8$NuHb-Xu#g4a3Cb`w$Q1Mo};mdi2PL4o^kFWYDx6JnoZ+S1dXm1seVhqhi`7gA=E~C4Fy)zVEqzjpzh%~(YmNks5UdTWsJS>E8aiAHCAy}ltKj=~D(Ssfu z2(k%(LEbcY)eK*}YUyuDM%_2gYBct|x54*}+IZ>bxg6U@1<6!JY;OtYE+<}ok}UXF%`6Lolnwi)#q ztQ6p;c}O32p^*A^Yx_kt&qwCrRZ!R*=!Tv%@;R`Obz`KdDbuVQ?~l8OW{s74VD}nM zM8B=)U)TI)9EeyA(Q4-Y%#o3L@7{?mwu3@2!hwi6f=IbbPRXq*r-h^x57qh9ewKJp z9y`?SOHh{l@=SLwL0RIE1N+;nOHh^w(?TM;bP385;Y8SGQ0xVsm?*h+Vu=tFY>Cfc zzu2j3P8^$dsX6%)LpLJtE%_ot@F{>gUN(8~HuN8Rgmr~jsSEb-DE?+#A#&o=;Akpj zhLTuHF^wJ7ER??=f^)A{(4aDcgarGW_d}4N8qu`M=n-1X-?|@y^zfU_?B4mx;@F9$ zs&p?##hBSoruhl*L!>eD#eFE_kx)+l=KT<9%)Fr&j^%^Z+$Xv9XC)UBPsCUI_-uuK zWa(tr7&<6hIqJqfFMw|n$nu@dx5`tS2dmbV zPge7WGFKjq(v{^IAsJ5JLlL>UI65hk#I}#JR>+!zv6Z2B34nqtR@Sa7R^`AeR@O`6 zij~+aIFk({Ny1;TvUcJtR>3?8f5pmrd0erwdVR$zeAvBZ_9X27vCu&jRxWk2$B^-d zq^1475dTinwT^gD3fsu7G`Sh#9p3L~*gW7UNRjm}PwPnMQ8 z)#_xiQYlsTUr}8Lsrx6UATt-BsNf?pVJ~CBqkUr@!o}rzWxFSuDlx3E>X}UE0~QMy zuo(JiNzZ6KIavEVVyj&JKGD2hkL% z&oy4M#X#W_q2?5hCbl$8JqKsEc?b-KfW48X4(A0a?m6@0zK~~b5H69rx-U5}5QRH@ zXtQwl%RyyGw77KrOnGX3_29AUL>V9C`X^X^-Zglrk|ig37$7@n@Et8718VrDR=6-2 z;pi*o{=_3o)sxFJCmy=4NWCV((1C$@(A_AB3OB8@ph7pfW5WewH6l=hNAJSdcb6;Z znDGIevixKP%g&BMQSa|gN$#D6l1G(iAyp6*4gdv}Uv=_Cb!?rhybW^7^FC3w3El+3 zSPkS1=bUE>_+pn?h25Y68w#AK>?br=`H_h0ITRqZ2H1-Ma1C7+e!?NTNv3))?2Ha*{U7T5KyT<(% zDVFA!z%T(P5bX8`!zc{FtM=i77W7OZb)3z^SAgWs8|)h^PnL0>*5e~Ddh*106{jeY z76*d&9EhiO-#1JD{PsYSP%+Au@=?BfamZsWT}y2v{_*fY0yTS$GS2wRM_+uly!_Gv zzZPa zb)wTM?tKCGYX)B>0(okm>9mSi;zaFJomP?B^Qz9dPOCUQgbK3=6|Kus^yrf&1pt;G z@DZ%uu-<=K)C!@Fm@NdG0BJ)ps~gUw~v%Jf3h;^d~32c;X9ZP#%yA$58F8Cd~>c>Uu<65`&3Sgs*!U& z^V0d&WS!C|s!~}OW!=)XMr9qtcf=FZ6V-|0~{Qt&eB+Ky4?lm}dD||yi;eP@ z%@=Lmc;WV|&)mA{ksbHnG?xcG*Xp28h92{Lik*m{pwt_4INun$Bm6)Xd|^rQF&igf zqFVBcl~A)tD4%o_u$JJ-p%7L3oKuA=w7RGYKNbypvZcQyA211jt_yK+-8M&$ zl&a6h6%eH>CrZJ%*#9-AFC5msaon-k>!ze2Zq+Tg98 z7=&ZpV1!0^_7_@YM)(%37F)bJ^rDk}DLf7(92~CW+3*t}n`v=4!b?L|>yR`|g;jr9 zJ+;^?r?%XvZ_P2%3LWCwhr=4bhLu`Mh2FKr^s0ecKF^__hQ11F?gTHgh8G)n!?`oQ zfbhO5ctyE;PRQ?uzJdnN8gJ~g=Vz0Fy6|XY@&f~j)cXgIY3k~;b9Kyh8ELpusxD_o z#giLW&XiA@7%z<Cd{VZHg0^%kxqtIcc^?2GoJvLFQte9RlIaOUgUYF?l z5yD90(Lm!r556Z9jm1&8QMbB$2+%iKs@i#^96sXZHTRJYys$O&i9}dM3{O*UYinLt zpx5QW6GQcSVHVy%(9Im&%q?Ury?Z)dYX(Qd(W}9;FYx9^)-q|Xa|cO$gGAAgOh1#&gZ9`tq%g1L^96h>sE{+P3}j_6IxdAu z7@jvEbAknL6=>OluA7-cu3Z_tJG`vqQd@f{D_IR+woWPft3faO=AuAv#re?xi(?A{Nba+=p>$t3_u@Qh$c;u-7$^2o4WHMmj^iWvx zJrx!s3)Tj{j#kL#^BFU*S!Sn%Ma|g3lYRxmD!`LI7T8Geaz#GBQ%H-Mg~?`_kgdhE z3=Vux$f*1^k-|{r6 z?`rVZ@k8A48kF2q*V zMG7s;8Rj0xM?#OIl{%^6Oq6-Sb&&5aw}06D5I5})giSV?O|AEkE-Ql7Ak*N&#AK70 z=}J+i$qT~HJ_vOBVr#Rn9gZuXe&ULfdk7y6JN+OAtLhm;zao^UAHR6Ax-_*OQ;4>$ zMa~O7j(X|~t&L;rq$?jqaq&y_C}!ImMS9gb%v$i3(DTnoo!!P-tDAHQUqWzKjTd&FzP{Y5!X2fykxKZEYa9T5O4U|4@iG9^BmtKNR`)hQgP^ z!OwU<#7%qn6{^tY3e^(vVknduNaCicn;W4GT?i1IZE1z##-cZkgn!ul5I5=fhqaH4 zRM|thY#*%x`)I}BKT-Q=c2tph^wqF>07CoDX-yBb!EZ759Dd_i_%-sQp?jnC?p=Vd zhbCU1Q_li~*2xfe*w$9Zm&n8~xPFK;wQy+_iuhB?R{fhfpRT9T03$!7e#_e0#H@nBfX!~c$tYBL9r@L)^rN)(8-m+3u@Gtxzw< z(xEoP|IGn4$W;RM+&o-I)nwOrG=~j4_5Z^)yDZGW=JZ+P;G7zm`7!V0( zn0W)3?3 z@2$idHWqtMMUjmaI`vMj<%eyL19S1cgR8=r)58n3JcL$e^}MB95Ld245LTwCcZ>XM zNT4JPh3AXbYDywSe6b3a1>v#~Np0kFnS!P(C22OEY0D z=E9HHfke}-DBgD98ljX`8)4GSKo%vd=b-8@9Bci12b zKg9Xo4DqdDExBAF^=xYj>3y)$uO3_(cBO~FQ41noO?UN* zt5}BHH|OsS>j})KCOv(Vt<;q;;71I;dm(kd(s%t@GgF;gvD|?he*clr^knJD!Bs~i zXXZ1ykvH@CoTcSEJ8whlrM%V~y%gHG$oIygG~pUuPPdGVp2@>4I=E)pVT&^S2xoWJ z5$=uoh!>JFdNyks84Xq+uppb-O0}<@L%XH&W^b%8U=li|EKqvz?lf+)IxGv}In^V3 zHJibUp%%T!YQa0zMt086seEtdlnK|tvnF_WOsjxb0^xD<&aR;07otK>ObswE;1*am zZ)%nWm!wU29k;WL`bgNFMBYllm77*fWHr7qNadhGQUME+BcN4gf#0whP6cn7A_7(oLTvZk5qux%fDxv;Xm;Zy-) zqackUxHn)w1W{6YuET~{cn#DW|31VA7Qn#|8*2j;P@ZNa>Zk?^&nUAu+eJu`Wx|$P zD?ktp>>4vhQ+~7d4Uq7%*CY2n#N1hs+BOSrtsESJz+WBa)LEeywR{S$GPJU&9S@7z zv4cm4Tht)ct8WuD(v+SGUe|65&4)tjC#~_}Sm49agZ~_o4{&x2iEeXn#8EJF5V<+$ zS2e3QtD0s)0B2T%^VnP-4?Mul&{=cwPtoMfkuZZh5~ealI5&}?aO7=T>YL82-2>ig z9vFBL{_M%KUE!^XcMt57I&3i9?=&shY|10^Dt z!HF;@nUL)s6EsLvHaD4Ibd3pm2AS~dX!5$=sss~moI$>0xJs2ld&MkR3!Q9Ds2aY} zXem;mAG0DcQ0wSg}S;Zk~^g<^)Y4_9&7@{6)&uj3$bks}$ z&q2+&x!xT$V|Hn-Q#I4`eMXQ|yK6Q!?C6G0i}rY@rNQMMIIYXT$sOF}#k24(TG$25 z1#m_zc~4K*_?DjJ>E5c7?aq!LPPXU7JT$X-RTS=-!GG|M3Pjm;&Atci3oPipG79jp zbxj$;)6#Q58R0!)bp4nRV+rr*z})QKBrss*8@eKzysNj$2rngoZ?yoaGxD(2gRql@ zYsxdrieu}RS4&gxDor0gJ3UsNC{N?m=!zdCkA9GzFH|}_251T;0h-HW@rE#^(xkZY8fQj-6PlA~(9?1Tnj~I|0Yj zH9gfy5c{G*kYGXA;GO`4z(9!ULXoc>Io_R}Nv=!w5Z#&dT-`xfDy#s&Zv!r@89LmV zvAVYu=F#8Tb9*T0s$SRB9rgY9dS}wo1Bl&|L=(1c4O}zoT#>z>h5>QX-I|64v^#zi zO3(N!580st{YwAI`#j}Nv`)|uIIbC%b1f~&-P%h zTi||du(GSLC|PtHJm}QhpaSq-fK8c$w5d5OZ{#3NRbk1z`y`Yr|0Ib zp@DDDguJle;KR$_8f5e8+APpYg2M`3J!pQloB_?YV6Om&)KOGG1(jP)Q9g zm}$9%&WnoO<9e=fyrc@QL%0?wu|GtUH}=$51jY>JpM#q;dJcX7LnpUzg3bG*y1Z?* z8oP^BFrFEey=Od}7Uwes@DUW?^jL@UF}+ueH^kfO9rhQ{oomlSRWUUlB)5mF^qA5I zPRY!L#nJL?b#?iW(qW~^QnfVRJ!NBd$!S294Y2;!o+=wiHUZgR;bbxkb6*43H0YX& z{n*sOGcyw>G3Iy0J>3NFmAR+?98KQRYt}<9aJYj|z(5^{AB5}?y_@#-gKZtwIMhSg z^Ao9{G>WKV*4q1o;9F5DW?voy#eNY@UeVjx2i7(GAJVs?OI*XVk@DyXtGcIWo45p{ z!nR<+nLq7ykZ{l=56J7UIQNbGJ5v?2EeGeHU6|BpqW9hf0=bAyi1`EmPag6o!qZ}1 zbcDf6UBH5^J)dY0;g^HEKUr`9L5P=znKp5v!F$i{3<NmY zI}w#uW3H>vd2=MEL{NUzu1Wly(E35Sbi2lZIdRIAgOsO`<41?glqTFJfUw#w232Wz z+pXtIe^7?3ZcPGIICzPmw*fw&ere82n$Hn3&_SB8-rVT#rmybYz8;@$2E7-H^X`{1 z+wAu5Ayu3_%Fbxk!v50cK}8Gx)6*jqw;(UntPe%SE%@i6_k31`0hYt;Qaw+k0&kH* zD%TuDRKl$aSOOp(hZ|rk%QM}(L)1iop9-E+qqpZVQNJP zWv5{_j_*^(^k<{VjXiafLUMce%bmz(pVLnErKsq8&L7Oz5nY12=$^;&!P_|*e4+w# zBErTFvLhQkiRD92Y42T_@c0!AZL}ccRmE~YBW;Di80cWrNFE@u>Szy^rt(>1-2 zg_o}Q71b4^C!qXwXK!!HMo9;A7SV&?zeSRl_L%A3B(BKmZk&fUE;4aObi>!=C%Gf?iqZn$pL^(w>LR zLvS%{rz}$|K-eEx8}NJgLgw+r2G_mIdb;kzyNo6rpqOx8jBhl;i-TR`fS$ptBfU;g z3UATqkPTKZ7;s?#u22-fq1~f!+kAJT%bEJQGv3>or-K8@fP1+GNS29iBzQW2&b*CY zZ|0O@Kb`Epm6a`Kg{NZg}<+uH`}oE{GX`XHwzq?}h7UXV#XEDb7q3MjPn%~Xdk+GmL@6SbhtjKckSR7mqhs5L%vZiO@>H$^d zzQc@|Vq>UVmJ04De-%w$-O~x5g9}W+W(cZ>YpalDF{80Fx~_VzbMnd&>^)Lq98%A9 z&vi^*gJ3|+Xj*{1Jg^>~7M?>oCfglzkzI56dyl;dLGQeF&7*`)^wVR>PxMs&VZGDg zU>+`YWh_WMhVP=!fotnpmy8a&(Dgbx7|e9|A6V^>7Y0l|2v6yiKS%G99;R&Xwd}*X zhqrg(DFkFa2m$vbcH;o8fNTHd(d3=IlzqrDXMz_QPmUn{NIq{CvUT!~cY`e$Ml$rj z(d5T_$`q!`>V<`z+Rj?)@1!pe@*dhO8%^B$ZO@W2^N!wmY& za$OA2rgz|au89KPdhVJPg4Yy!&Hy~gf$SlWy#;pMpp*C=z;5Uq`XEiO_qve%3a%(X zE+{<%j}wFEfv3Xq?RDimP%1P4?ub0+_Fj*gl4j7M*6UdYQG3APEZiUm%?_#O;35`v zD0E|%(e&!Q-g%l?$X8;S5F!fhVG~o$YjbJmY5C`3C%jwipyGudJ6=q9#{vQ-^I&{I zCJhKF&E^)aE={dJv^-6pdFhUsAs;OU`(0E>zX(U~X_RIF!y#x#W_fq~>3AQ)qj5Vi z%b7pD=PDPUjW;37qXsu#AvR6V6uPH!F+LB1#e14aA5uGlm_xiyL5B+v5Eu-((Y$$I zyArL4`5uQZ`v2{n-;ZS1QOC8jGqXLtv;MJ=U`N3Z9wH@vSl_Puqi^p6l6O7p4Dx!H z?X^kxHS~1f+39Rg_t4$L?t+ADB_Fp&Zw@Dw{dkPu^;2PFOg9#HrtA-q4# zO9TSm5Pa(1?w;E-?dcZh&bccTt+uCo=Jq+~)~%{jRi~=HIk$?NKn-Lt7kcPnW&Rck z8JnC{(`%(%p<5wc-xJrzhDB1*M2Wn+`f$ny5+#PO?*znRNow=7tIw)>KX%lyYbnwg zH?GUu)efkCB}>8KG>uLKo+bxa%Z?zN0>kA_0Ya_pMIlG(p&z$hwnqWL%b);;=kMeh z-U_h(OH{&x@=OL{pvfXDz2>&n^S+9mN|nUY&)c`BJd6Y|yiE@Lq)fYOEPd5)2Yma? zi}DWoQ%B+3D@a@Za?Kt}O&;MB>dz>K0lCPUX2Yk30=cspr+9SYB`Mr16V0a$a*`T; zfXy-wAstKtJ_w1kjIv;pufphZpA6)+%@-_ zPJ+Q$=ZcI{p|D&yiY6f>?$S4E7H37&J&V!dyo;(P&>T_UM|C?9iHeDUcsA!*On|8aSj(Ogv?j(C_z)iCc zG}=bu!2@;b?pyLAz_zYph+RlmNqd1e4Kb*oa{SH!?9!X2h)Qp+4=W*oBScID_lho(zZoJ z@*fy z6^*aPXx{n`L!8bC+AmJ?;mVwvIXUFO`H;d|4qV=Gdn8T&l^oFOIG;oL4It}=dyJi6 z-t@G?|2J{_2^5cmc@*&sX>Ms>x5?+Z>sGcFV)xin)K95`t=Nm(t3t`$oxqz2Ltt<{ zg2@0`QO{vT=erSS;7FLgBk+=?gR!_^^?@Mo+V(Yjg3x-f~*7J{Z#n0zX;33?C9s0TlbCdRGD`djJaf%GR|G$tU zeMb;(7o+yBJsqKWSr%A0sb@h)|i|6p)oh!bYBM+y`v8=d7 zGbo76+@gP;E54Q^Z6`r>TcNQ`H_|er@!#jW$0fO8LnqS?b*KB7nNj!e@^vuAGVkmV zcX}>PX2iuj`?WmPL!8!lxmLd(+1uJYi_H6P$BLiJk-i(d%~m7os$piO;4{>M&z#la zI3$7PuYnYcNU7T08s(qN9q zKYpxOC_H|8zOcr-apd-m8Ls)IBVB9KHvRUnr}^Z?CKvtXEEj!uc+q3rZ1$v0QoQ%) zgk>_%3`xD&%%ke(fe?`D_XVVlyV`qt+)FfQk4a=p{(HkxhDLo5~q&QP0`iEdZT@znq18!2iud;MCw9;rS3ANviC zg+mRFqugCB1w)4=nZKE%^4RQjS8MgHwSKhyT-3g>+phPU$=RQcY#MDD{?uO=b3HQJ z3$=Z=1k*VA)kqCiUN0*K^BzG-8UZ)ZM< zqyt3BoxEdXlE2D)5;v{7k~{e?8pR=sy&S`7PFqLX0xO0 ze;&&g1UAj?Mk*MQ@LMybLp$TPXo6o<_ z6@NQNfAvrVR4c@u0f{p+V#COv&6C)co2drV<1U%(NO8lfoC7ZtdQ;nBUwinKGEZOR zkI8WnUVMG$2fUQMkIBNh7U}FVf3DMN$in$ftJ9T5e(Y|yWocBcJbX)Kt(;7L8;4P( zn0!#DUzRSkqMOgOn%DT|1yaST{adX_iu(2^qUN=&zMQy_oTEEt6)@AFl z=R56dm%CA~C(9RW_2B@&C-WC;{ViVgD+PVkObl6mA?n}gbg!S^sgTALY+tko;J=o7sEWT)4cMSZioAxr$c(%J1t z-S}#Y1rRFBi4u0bRDaJAprIrt}e zw7R>|t9P3lQTJl44PCnO(dw;seJg5Q?sj&fZvWN`QEzxFmtT}(956_3v@on3lliOB z&Ayzx%8m9g$Z)P@@ug;TgD;%cpYZ}2P}jw3itFp6uP(2z?-lUK$>AqxCl3ujB%yfW z(!Jz%S>zK`)31yUnsnsh!HAq1ydQk~2gg1R;`;Ka{&p--ntX2**wb0}0#SQ^jOn0% z+;d5FN$NrkepaQhzTS%!tvs^75KJE1|C^W}+qISyQ}kFGmEXv6@^)}H4{tQv4Y;Nc z;S&bl;A!*tP7G=uWWLT9j$~Llnql3e8P;2opE0E^pwwOoR4kx@0}!hHu(Fb3 za3t>k9#A_2KO7vMN0*wwbp5cIQ>KMEmCIfXx8pd2-tnqo#dQ4>hG+dLc{LT7k^@|g z8w76Pg4^c$z$LAS@t}aS&>DtrlRk}yRSMy2<3W8_8~Iks75>v*j>cwL3<_+ITLLgP z02|#6D=wm9yi#p7tcu77W3=b_ zCA!>zLqY#AUB4+&faGORhytt8pA3NsR*c01gtLlUF4Kib5d`2g7;S9V`YA)IiyM{z zh@gcg&3;@3v2#Z_@x~-!f8t>>u;)+oz(E?V03;nC>H_gz}I zLkmDzJoeZX`B_8S!Uv^5F`Vd`7K8wmNqNwVKQVQT7ae*$J5NHG4Jx4EoD3)d##dPx zS2RS2(JB?*%`1LO*tFjl#neZU}FK>&-ds?mcgJUv?&My z^oeHQb{u+WXE3P3-6JSic3`%ZDxt2_)aC**hVGt8;rDVGb}ZpzL0IYYe!6X^Z~ z3Y7%Bfk9~H*lzZlwbqq57%Rpzuz{CB!9eG+p$mJL?3M76+V7*;sp#A|U|~zf3`A|6t&r41#u-4MmXdr4+hscLP6D!^S^uJUZ$V zCPABm)WQB_t}4n{TEJ%t4-Gj1Dpz1;(>UmaK{XC)D%Wfwq9_3v$|1@!fQ!@SoT-UF zVR%-ZvKLJi2N42C==ohid8iVRAOp1=(!QNt$uEW2iHy(Z6}e)_XccxM_BtQKf*1^_ zgTxyQ$t(CGL~aF>3ea`JC2Sw##MxQh|Me(g!2W zd`xhkU}JVYU>!?>-obq`3=Ckeq2PgUaq!E)aTt#+8xj^lQ?V-(y~fxAoKN-6PnvNU zW5N%twi1?!ixUD?c*Pgu97U9x$Y@Ej7t znGZMNREUrSJWNA|CKy8ef@m-nJs6YhDD3>EW2&Ac4nV*`d_8hdSIlrs%y;Z<;v(SK z2f$+TG&2~p#CR@FGtUYa0iVWLm=!w&8>$SWag>AM2BgL46y4CGnlLt-@@RBZ3hPmh zPc*B9Uxz&b*08avAch4s*pI=}gw4Q}3C1IZhC!hT<3ka08*1CV=WE*=jhZpvVO+82 z5eLD0)aaRu%o#>&a2+}5gPDEK1wsc~#nWibs_9w-v^@Td!@h)z?&)@FEF+v967?YZ zfv3bVCs9+z{FIrB3>0bzzu6^}hZCkIz{(&4!;pt@jKIW3kO6NKj>tWv&zPz_dz>%y z4qg#X0cS56jLAx|e%X%+0pgRF%rzuYgAfBv0Y%FS9;R@jrnb}snD>+mXXwLB7#!hE zP9oJqG~|UzVCklA7yA4#{BcviV8ZZFBnjgsAvRN*Oh7g^rt<`>VB;|-K;xR4t!VK> z0ZvUL5)&{(jma8Oe>_yF0xoslE(O>Mx?qfX1A0|bvIKfaa6~6 zh^mau)xzhu}bV*ZYD?2j~lf32`=u~m0lYp!jz3A|T`|-l3Tod!t;Y{Zz>~#1=!7SVqcxOvf zxhe2xxhR_eo@9s8L#7$__-K0`iPBaGvm`i(RX<=kpo=ll^ays>4Xx}}&KjD&Z>{(gG zl%X{ELt^X9H~Um4KlGX1Ucb3{i)F=+?AUc#Zq;s4R6HQsVk>H2qpW$MO>lfQ`B9Z( z%2t_=&5Z)DN!&m`S4Cex6~BI39_u7U&*z8xZXEVdiWfR<%7wK6`ULN&vA!-Rc4`fP z8m`GBi2*??`>0!k9oFUe4%|@K>GVkO=F7`FT?VA0IsUZ7r+%lemD4{I_dj_y+R+s7 zcKz0+_G)Xpzt)iXo!#D+9HZ#GTWd6Tdr}x#7KI)c$JN!xX*MB`e_+Q6S?bZ(?`o&k zgI5L?#eA>BBQ5l3AXbmo;Mn9H)!{PV`+3T~i(n&k`w5>e_WIq<^+*m44YpK80?5(l-n^Nd^s{O7KEZk@|c$&v<%CTE=`p)eyz5ntn?|u92yKj8w{+nOF``K6J z;q>pcEdGh)7k7W_t-G&%; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyAbstractPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[] // 仿真连接线数组 + ) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 临时any数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 临时any数组 + ) { + this.__TempConn.set(newValue); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否插入新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否插入新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __isNewConn: ObservedPropertyAbstractPU; // 是否正在新增连接线 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean // 是否正在新增连接线 + ) { + this.__isNewConn.set(newValue); + } + private __isShowLabel: ObservedPropertyAbstractPU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean // 是否显示标签 + ) { + this.__isShowLabel.set(newValue); + } + private __isShowPort: ObservedPropertyAbstractPU; // 是否显示接口 + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue: boolean // 是否显示接口 + ) { + this.__isShowPort.set(newValue); + } + private __isShowInterface: ObservedPropertyAbstractPU; // 是否显示网络配置信息 + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue: boolean // 是否显示网络配置信息 + ) { + this.__isShowInterface.set(newValue); + } + private __isShowTable: ObservedPropertyAbstractPU; // 是否显示路由/交换表信息 + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue: boolean // 是否显示路由/交换表信息 + ) { + this.__isShowTable.set(newValue); + } + private __allSimPacket: ObservedPropertyAbstractPU; // 单次数据包传输的集合 + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[] // 单次数据包传输的集合 + ) { + this.__allSimPacket.set(newValue); + } + private __isNewPacket: ObservedPropertyAbstractPU; + get isNewPacket() { + return this.__isNewPacket.get(); + } + set isNewPacket(newValue: number) { + this.__isNewPacket.set(newValue); + } + private __isNewPacketArrived: ObservedPropertyAbstractPU; + get isNewPacketArrived() { + return this.__isNewPacketArrived.get(); + } + set isNewPacketArrived(newValue: number) { + this.__isNewPacketArrived.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/MiddleContent.ets(24:5)"); + Row.width('100%'); + Row.height('74%'); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // 画布 + Stack.create(); + Stack.debugLine("components/MiddleContent.ets(26:7)"); + // 画布 + Stack.width('56%'); + // 画布 + Stack.height('100%'); + // 画布 + Stack.border({ color: Color.Black, width: 1 }); + // 画布 + Stack.onClick((event: ClickEvent) => { + if (this.isNewObj) { // 若要插入新增对象 + const obj = this.newObjType == 1 ? new SimHost(event.x - 25, event.y - 15) : this.newObjType == 2 ? new SimRouter(event.x - 25, event.y - 15) : this.newObjType == 3 ? new SimSwitch(event.x - 25, event.y - 15) : new SimHub(event.x - 25, event.y - 15); + this.allSimObj.push(obj as SimBase); // 插入并绘制新增对象 + } + else if (!this.isNewObj && this.allSimObj.some(item => item.isChose == true)) { + this.allSimObj[this.choseIndex].objX = event.x - 25; // 更新X坐标 + this.allSimObj[this.choseIndex].objY = event.y - 15; // 更新Y坐标 + this.allSimObj[this.choseIndex].isChose = false; // 更新选中状态为未选中 + } + this.isNewObj = false; // 取消新增状态 + this.newObjType = -1; // 取消新增类型 + this.choseIndex = null; // 取消选中下标 + this.isNewConn = false; // 取消新增连接线 + this.TempConn = []; // 清空临时连接线对象 + }); + if (!isInitialRender) { + // 画布 + Stack.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + objS: item.nObjS as SimBase, + objE: item.nObjE as SimBase + }; + }; + ViewPU.create(new CreateCon(this, { objS: item.nObjS as SimBase, objE: item.nObjE as SimBase }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + objS: item.nObjS as SimBase, objE: item.nObjE as SimBase + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + objS: item.nObjS as SimBase, + objE: item.nObjE as SimBase, + conn: item + }; + }; + ViewPU.create(new CreatePort(this, { objS: item.nObjS as SimBase, objE: item.nObjE as SimBase, conn: item }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + objS: item.nObjS as SimBase, objE: item.nObjE as SimBase, conn: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }; + this.forEachUpdateFunction(elmtId, this.allSimConn, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: item, + thisIndex: index + }; + }; + ViewPU.create(new CreateImg(this, { simObj: item, thisIndex: index }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: item + }; + }; + ViewPU.create(new CreateLabel(this, { simObj: item }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: item + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }; + this.forEachUpdateFunction(elmtId, this.allSimObj, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + // 画布 + Stack.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create({ space: 3 }); + Column.debugLine("components/MiddleContent.ets(56:7)"); + Column.width('22%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(57:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机详情"); + Text.debugLine("components/MiddleContent.ets(58:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(62:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isNewPacket) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.allSimPacket[this.allSimPacket.length - 1].sendHost.objLabel); + Text.debugLine("components/MiddleContent.ets(64:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.allSimPacket[this.allSimPacket.length - 1].sourceIp); + Text.debugLine("components/MiddleContent.ets(65:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.allSimPacket[this.allSimPacket.length - 1].sourceMac); + Text.debugLine("components/MiddleContent.ets(66:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送数据包大小:1024kB"); + Text.debugLine("components/MiddleContent.ets(67:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已发送数据包数量:1"); + Text.debugLine("components/MiddleContent.ets(68:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要发送的数据包总数:1"); + Text.debugLine("components/MiddleContent.ets(69:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(77:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收主机详情"); + Text.debugLine("components/MiddleContent.ets(78:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(82:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isNewPacketArrived) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // Text("接收主机:") + Text.create("IP地址:" + this.allSimPacket[this.allSimPacket.length - 1].targetIp); + Text.debugLine("components/MiddleContent.ets(85:15)"); + if (!isInitialRender) { + // Text("接收主机:") + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + // Text("接收主机:") + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.allSimPacket[this.allSimPacket.length - 1].targetMac); + Text.debugLine("components/MiddleContent.ets(86:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收数据包大小:1024kB"); + Text.debugLine("components/MiddleContent.ets(87:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已接收数据包数量:1"); + Text.debugLine("components/MiddleContent.ets(88:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要接收的数据包总数:1"); + Text.debugLine("components/MiddleContent.ets(89:15)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + // 配置信息展示 + Column.create({ space: 3 }); + Column.debugLine("components/MiddleContent.ets(101:7)"); + // 配置信息展示 + Column.width('22%'); + // 配置信息展示 + Column.height('100%'); + // 配置信息展示 + Column.padding(2); + // 配置信息展示 + Column.justifyContent(FlexAlign.SpaceBetween); + // 配置信息展示 + Column.layoutWeight(1); + if (!isInitialRender) { + // 配置信息展示 + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(102:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("网络配置信息"); + Text.debugLine("components/MiddleContent.ets(103:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(107:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.choseIndex != null && this.isShowInterface) { + this.ifElseBranchUpdateFunction(0, () => { + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + ViewPU.create(new NetworkChart(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: this.allSimObj[this.choseIndex] + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(117:9)"); + Column.width('100%'); + Column.height('50%'); + Column.border({ color: Color.Orange, width: 1 }); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("路由/交换表信息"); + Text.debugLine("components/MiddleContent.ets(118:11)"); + Text.fontSize(21); + Text.fontWeight(FontWeight.Bold); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(122:11)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.choseIndex != null && this.isShowTable) { + this.ifElseBranchUpdateFunction(0, () => { + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return { + simObj: this.allSimObj[this.choseIndex] + }; + }; + ViewPU.create(new TableChart(this, { simObj: this.allSimObj[this.choseIndex] }, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, { + simObj: this.allSimObj[this.choseIndex] + }); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + Column.pop(); + // 配置信息展示 + Column.pop(); + Row.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateCon extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__objS = new SynchedPropertyNesedObjectPU(params.objS, this, "objS"); + this.__objE = new SynchedPropertyNesedObjectPU(params.objE, this, "objE"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreateCon_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + } + updateStateVars(params: CreateCon_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__objS.purgeDependencyOnElmtId(rmElmtId); + this.__objE.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__objS.aboutToBeDeleted(); + this.__objE.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __objS: SynchedPropertyNesedObjectPU; + get objS() { + return this.__objS.get(); + } + private __objE: SynchedPropertyNesedObjectPU; + get objE() { + return this.__objE.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Line.create(); + Line.debugLine("components/MiddleContent.ets(150:5)"); + Line.width('100%'); + Line.height('100%'); + Line.stroke(Color.Black); + Line.startPoint([this.objS.objX + 25, this.objS.objY + 15]); + Line.endPoint([this.objE.objX + 25, this.objE.objY + 15]); + if (!isInitialRender) { + Line.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + rerender() { + this.updateDirtyElements(); + } +} +class coordinates { + x: number; + y: number; + constructor(x: number, y: number) { + this.x = x; + this.y = y; + } +} +class CreatePort extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__objS = new SynchedPropertyNesedObjectPU(params.objS, this, "objS"); + this.__objE = new SynchedPropertyNesedObjectPU(params.objE, this, "objE"); + this.__conn = new SynchedPropertyNesedObjectPU(params.conn, this, "conn"); + this.r = 30; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreatePort_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + this.__conn.set(params.conn); + if (params.r !== undefined) { + this.r = params.r; + } + } + updateStateVars(params: CreatePort_Params) { + this.__objS.set(params.objS); + this.__objE.set(params.objE); + this.__conn.set(params.conn); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__objS.purgeDependencyOnElmtId(rmElmtId); + this.__objE.purgeDependencyOnElmtId(rmElmtId); + this.__conn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__objS.aboutToBeDeleted(); + this.__objE.aboutToBeDeleted(); + this.__conn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __objS: SynchedPropertyNesedObjectPU; + get objS() { + return this.__objS.get(); + } + private __objE: SynchedPropertyNesedObjectPU; + get objE() { + return this.__objE.get(); + } + private __conn: SynchedPropertyNesedObjectPU; + get conn() { + return this.__conn.get(); + } + private r: number; + k() { + return (this.objS.objY - this.objE.objY) / (this.objS.objX - this.objE.objX); + } // 直线斜率 + distance(point1: coordinates, point2: coordinates) { + return Math.sqrt((point1.x - point2.x) ** 2 + (point1.y - point2.y) ** 2); + } // 两点距离 + closerSPoint() { + let objEPoint = new coordinates(this.objE.objX + 25, this.objE.objY + 15); + let objSPoint1 = new coordinates(this.objS.objX + 25 + this.r / Math.sqrt(this.k() ** 2 + 1), this.objS.objY + 15 + this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objSPoint2 = new coordinates(this.objS.objX + 25 - this.r / Math.sqrt(this.k() ** 2 + 1), this.objS.objY + 15 - this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objSPoint = this.distance(objSPoint1, objEPoint) < this.distance(objSPoint2, objEPoint) ? objSPoint1 : objSPoint2; + return { x: objSPoint.x, y: objSPoint.y }; + } + closerEPoint() { + let objSPoint = new coordinates(this.objS.objX + 25, this.objS.objY + 15); + let objEPoint1 = new coordinates(this.objE.objX + 25 + this.r / Math.sqrt(this.k() ** 2 + 1), this.objE.objY + 15 + this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objEPoint2 = new coordinates(this.objE.objX + 25 - this.r / Math.sqrt(this.k() ** 2 + 1), this.objE.objY + 15 - this.k() * this.r / Math.sqrt(this.k() ** 2 + 1)); + let objEPoint = this.distance(objEPoint1, objSPoint) < this.distance(objEPoint2, objSPoint) ? objEPoint1 : objEPoint2; + return { x: objEPoint.x, y: objEPoint.y }; + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Stack.create(); + Stack.debugLine("components/MiddleContent.ets(202:5)"); + Stack.width('100%'); + Stack.height('100%'); + if (!isInitialRender) { + Stack.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.conn.ifsS.toString()); + Text.debugLine("components/MiddleContent.ets(203:7)"); + Text.fontSize(15); + Text.fontColor(Color.Green); + Text.fontWeight(FontWeight.Bold); + Text.position(this.closerSPoint()); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.conn.ifsE.toString()); + Text.debugLine("components/MiddleContent.ets(208:7)"); + Text.fontSize(15); + Text.fontColor(Color.Green); + Text.fontWeight(FontWeight.Bold); + Text.position(this.closerEPoint()); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Stack.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateImg extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = this.initializeConsume("allSimObj", "allSimObj"); + this.__allSimConn = this.initializeConsume("allSimConn", "allSimConn"); + this.__TempConn = this.initializeConsume("TempConn", "TempConn"); + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__isNewObj = this.initializeConsume("isNewObj", "isNewObj"); + this.__newObjType = this.initializeConsume("newObjType", "newObjType"); + this.__choseIndex = this.initializeConsume("choseIndex", "choseIndex"); + this.__isNewConn = this.initializeConsume("isNewConn", "isNewConn"); + this.thisIndex = undefined; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreateImg_Params) { + this.__simObj.set(params.simObj); + if (params.thisIndex !== undefined) { + this.thisIndex = params.thisIndex; + } + } + updateStateVars(params: CreateImg_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__simObj.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __allSimObj: ObservedPropertyAbstractPU; // 仿真对象数组 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: SimBase[] // 仿真对象数组 + ) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyAbstractPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: SimConnect[] // 仿真连接线数组 + ) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyAbstractPU; // 临时any数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[] // 临时any数组 + ) { + this.__TempConn.set(newValue); + } + private __simObj: SynchedPropertyNesedObjectPU; // 当前对象 + get simObj() { + return this.__simObj.get(); + } + private __isNewObj: ObservedPropertyAbstractPU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean // 是否新增对象 + ) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertyAbstractPU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number // 新增对象类型 + ) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyAbstractPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null // 选中对象下标 + ) { + this.__choseIndex.set(newValue); + } + private __isNewConn: ObservedPropertyAbstractPU; // 是否正在新增连接线 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean // 是否正在新增连接线 + ) { + this.__isNewConn.set(newValue); + } + private thisIndex: number; + InterfaceMenu(parent = null) { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Menu.create(); + Menu.debugLine("components/MiddleContent.ets(234:5)"); + Menu.radius(8); + if (!isInitialRender) { + Menu.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = (_item, index) => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (item === null) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: "接口" + (index + 1).toString() }); + MenuItem.debugLine("components/MiddleContent.ets(237:11)"); + MenuItem.width(70); + MenuItem.height(30); + MenuItem.contentFont({ size: 14 }); + MenuItem.onChange(() => { + if (!this.isNewConn) { + this.TempConn.push(this.allSimObj[this.thisIndex]); + this.TempConn.push(index + 1); + } + else { + if (this.TempConn[0] != this.simObj && !this.TempConn[0].interface.includes(ObservedObject.GetRawObject(this.simObj))) { + const conn = new SimConnect(this.TempConn[0], this.allSimObj[this.thisIndex], this.TempConn[1], index + 1); + this.allSimConn.push(conn); + // 更新两个连接对象中的连接线信息 + conn.updateObjConn(); + this.TempConn = []; + } + else { + this.TempConn = []; + promptAction.showToast({ + message: "请选择连接不同的对象", + duration: 3000, + bottom: 50 + }); + } + } + if (this.choseIndex != null) { + this.allSimObj[this.choseIndex].isChose = false; + } + this.isNewObj = false; + this.newObjType = -1; + this.choseIndex = null; + this.isNewConn = !this.isNewConn; + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + MenuItem.create({ content: "接口" + (index + 1).toString() + "已连接" }); + MenuItem.debugLine("components/MiddleContent.ets(270:11)"); + MenuItem.width(105); + MenuItem.height(30); + MenuItem.contentFont({ size: 13, style: FontStyle.Italic }); + MenuItem.contentFontColor(Color.Green); + MenuItem.onChange(() => { + promptAction.showToast({ + message: "该接口已连接", + duration: 3000, + bottom: 50 + }); + }); + if (!isInitialRender) { + MenuItem.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + MenuItem.pop(); + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.interface, forEachItemGenFunction, undefined, true, false); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + Menu.pop(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/MiddleContent.ets(289:5)"); + Column.position({ x: this.simObj.objX, y: this.simObj.objY }); + Column.bindContextMenu({ builder: () => { + this.InterfaceMenu.call(this); + } }, ResponseType.LongPress); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Image.create(this.simObj.img); + Image.debugLine("components/MiddleContent.ets(290:7)"); + Image.width(50); + Image.border({ + color: this.TempConn[0] === this.simObj ? Color.Green : this.simObj.isChose ? Color.Red : Color.Transparent, + width: 1.2 + }); + Image.onClick(() => { + this.TempConn = []; + this.isNewObj = false; // 取消插入新对象状态 + this.newObjType = -1; + this.isNewConn = false; + if (!this.allSimObj.some(item => item.isChose == true)) { // 若没有对象被选中 + this.choseIndex = this.thisIndex; // 更新选中对象的下标 + this.simObj.changeIsChose(); // 更新对象选中状态 + } + else if (this.simObj.isChose) { // 若要取消选中对象 + this.choseIndex = null; // 更新选中下标为null + this.simObj.changeIsChose(); // 更新对象选中状态 + } + else if (!this.simObj.isChose && this.choseIndex != null) { // 若要更换选择对象 + this.allSimObj[this.choseIndex].changeIsChose(); // 更新上一个选中对象选中状态 + this.choseIndex = this.thisIndex; // 更新选中下标 + this.simObj.changeIsChose(); // 更新当前对象选中状态 + } + }); + if (!isInitialRender) { + Image.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +class CreateLabel extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.__isShowLabel = this.initializeConsume("isShowLabel", "isShowLabel"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: CreateLabel_Params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params: CreateLabel_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + private __isShowLabel: ObservedPropertyAbstractPU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean // 是否显示标签 + ) { + this.__isShowLabel.set(newValue); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.isShowLabel) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(this.simObj.objLabel); + Text.debugLine("components/MiddleContent.ets(327:7)"); + Text.fontSize(15); + Text.position({ x: this.simObj.objX + 25, y: this.simObj.objY - 12 }); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(1, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..7bc1a02f03ba91ea5a67f2d511c5123acc997d5a GIT binary patch literal 222607 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 + get simObj() { + return this.__simObj.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(9:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objType == 1 || this.simObj.objType == 2) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(11:9)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simObj.ip); + Text.debugLine("components/Table.ets(12:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址:" + this.simObj.mac); + Text.debugLine("components/Table.ets(14:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }); + } + else if (this.simObj.objType == 3) { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(17:9)"); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址:" + this.simObj.mac); + Text.debugLine("components/Table.ets(18:11)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(2, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class TableChart extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simObj = new SynchedPropertyNesedObjectPU(params.simObj, this, "simObj"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: TableChart_Params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params: TableChart_Params) { + this.__simObj.set(params.simObj); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simObj.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simObj.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simObj: SynchedPropertyNesedObjectPU; + get simObj() { + return this.__simObj.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(32:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + If.create(); + if (this.simObj.objType == 2) { + this.ifElseBranchUpdateFunction(0, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Table.ets(35:11)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("端口" + item.port.toString() + ":"); + Text.debugLine("components/Table.ets(36:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.net); + Text.debugLine("components/Table.ets(38:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Row.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.routerTable, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + }); + } + else if (this.simObj.objType == 3) { + this.ifElseBranchUpdateFunction(1, () => { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + ForEach.create(); + const forEachItemGenFunction = _item => { + const item = _item; + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Row.create(); + Row.debugLine("components/Table.ets(43:11)"); + if (!isInitialRender) { + Row.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("端口" + item.port.toString() + ":"); + Text.debugLine("components/Table.ets(44:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create(item.net); + Text.debugLine("components/Table.ets(46:13)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Row.pop(); + }; + this.forEachUpdateFunction(elmtId, this.simObj.switchTable, forEachItemGenFunction); + if (!isInitialRender) { + ForEach.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + ForEach.pop(); + }); + } + else { + this.ifElseBranchUpdateFunction(2, () => { + }); + } + if (!isInitialRender) { + If.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + If.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class sendHost extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simPacket = new SynchedPropertyNesedObjectPU(params.simPacket, this, "simPacket"); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: sendHost_Params) { + this.__simPacket.set(params.simPacket); + } + updateStateVars(params: sendHost_Params) { + this.__simPacket.set(params.simPacket); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simPacket: SynchedPropertyNesedObjectPU; + get simPacket() { + return this.__simPacket.get(); + } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(61:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.simPacket.sendHost); + Text.debugLine("components/Table.ets(62:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simPacket.targetIp); + Text.debugLine("components/Table.ets(63:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.simPacket.targetMac); + Text.debugLine("components/Table.ets(64:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送数据包大小:" + this.simPacket.size); + Text.debugLine("components/Table.ets(65:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已发送数据包数量:" + 1); + Text.debugLine("components/Table.ets(66:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要发送的数据包总数:" + 1); + Text.debugLine("components/Table.ets(67:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +export class targetHost extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__simPacket = new SynchedPropertyNesedObjectPU(params.simPacket, this, "simPacket"); + this.host = undefined; + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: targetHost_Params) { + this.__simPacket.set(params.simPacket); + if (params.host !== undefined) { + this.host = params.host; + } + } + updateStateVars(params: targetHost_Params) { + this.__simPacket.set(params.simPacket); + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__simPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__simPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __simPacket: SynchedPropertyNesedObjectPU; + get simPacket() { + return this.__simPacket.get(); + } + private host: string; + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("components/Table.ets(80:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("发送主机:" + this.host); + Text.debugLine("components/Table.ets(81:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("IP地址:" + this.simPacket.targetIp); + Text.debugLine("components/Table.ets(82:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("Mac地址;" + this.simPacket.targetMac); + Text.debugLine("components/Table.ets(83:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("接收数据包大小:" + this.simPacket.size); + Text.debugLine("components/Table.ets(84:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("已接收数据包数量:" + this.host); + Text.debugLine("components/Table.ets(85:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Text.create("需要接收的数据包总数:" + this.host); + Text.debugLine("components/Table.ets(86:7)"); + if (!isInitialRender) { + Text.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + Text.pop(); + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..b5007e4e89534666864f4df721a4444d2098ab93 GIT binary patch literal 231883 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

S7k-eJBMFmu)CA|u>(-qJuXyX>4P||! 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 Bx@!Oc literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts new file mode 100644 index 0000000..50fb192 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts @@ -0,0 +1,311 @@ +interface Index_Params { + allSimObj?: any[]; + allSimConn?: any[]; + TempConn?: any[]; + isNewObj?: boolean; + newObjType?: number; + choseIndex?: number | null; + isNewConn?: boolean; + isShowLabel?: boolean; + isShowPort?: boolean; + isShowInterface?: boolean; + isShowTable?: boolean; + allSimPacket?: SimPacket[]; +} +import { TopMenuBar } from "@bundle:com.example.ensp_fourteen/entry/ets/components/TopMenuBar"; +import { MiddleContent } from "@bundle:com.example.ensp_fourteen/entry/ets/components/MiddleContent"; +import { BottomMenuBar } from "@bundle:com.example.ensp_fourteen/entry/ets/components/ButtomMenuBar"; +import type { SimPacket } from "../classes/OtherSimObjects" // 自定义数据包类型 +; +class Index extends ViewPU { + constructor(parent, params, __localStorage, elmtId = -1, paramsLambda = undefined) { + super(parent, __localStorage, elmtId); + if (typeof paramsLambda === "function") { + this.paramsGenerator_ = paramsLambda; + } + this.__allSimObj = new ObservedPropertyObjectPU([] // 仿真对象数组123 + , this, "allSimObj"); + this.addProvidedVar("allSimObj", this.__allSimObj); + this.__allSimConn = new ObservedPropertyObjectPU([] // 仿真连接线数组 + , this, "allSimConn"); + this.addProvidedVar("allSimConn", this.__allSimConn); + this.__TempConn = new ObservedPropertyObjectPU([] // 临时连接线对象数组 + , this, "TempConn"); + this.addProvidedVar("TempConn", this.__TempConn); + this.__isNewObj = new ObservedPropertySimplePU(false // 是否新增对象 + , this, "isNewObj"); + this.addProvidedVar("isNewObj", this.__isNewObj); + this.__newObjType = new ObservedPropertySimplePU(-1 // 新增对象类型 + , this, "newObjType"); + this.addProvidedVar("newObjType", this.__newObjType); + this.__choseIndex = new ObservedPropertyObjectPU(null // 选中对象下标 + , this, "choseIndex"); + this.addProvidedVar("choseIndex", this.__choseIndex); + this.__isNewConn = new ObservedPropertySimplePU(true // 是否正在新增连接线 + , this, "isNewConn"); + this.addProvidedVar("isNewConn", this.__isNewConn); + this.__isShowLabel = new ObservedPropertySimplePU(true // 是否显示标签 + , this, "isShowLabel"); + this.addProvidedVar("isShowLabel", this.__isShowLabel); + this.__isShowPort = new ObservedPropertySimplePU(true // 是否显示接口 + , this, "isShowPort"); + this.addProvidedVar("isShowPort", this.__isShowPort); + this.__isShowInterface = new ObservedPropertySimplePU(true // 是否显示网络配置信息 + , this, "isShowInterface"); + this.addProvidedVar("isShowInterface", this.__isShowInterface); + this.__isShowTable = new ObservedPropertySimplePU(true // 是否显示路由/交换表信息 + , this, "isShowTable"); + this.addProvidedVar("isShowTable", this.__isShowTable); + this.__allSimPacket = new ObservedPropertyObjectPU([] // 单次数据包传输的集合 + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + , this, "allSimPacket"); + this.addProvidedVar("allSimPacket", this.__allSimPacket); + this.setInitiallyProvidedValue(params); + } + setInitiallyProvidedValue(params: Index_Params) { + if (params.allSimObj !== undefined) { + this.allSimObj = params.allSimObj; + } + if (params.allSimConn !== undefined) { + this.allSimConn = params.allSimConn; + } + if (params.TempConn !== undefined) { + this.TempConn = params.TempConn; + } + if (params.isNewObj !== undefined) { + this.isNewObj = params.isNewObj; + } + if (params.newObjType !== undefined) { + this.newObjType = params.newObjType; + } + if (params.choseIndex !== undefined) { + this.choseIndex = params.choseIndex; + } + if (params.isNewConn !== undefined) { + this.isNewConn = params.isNewConn; + } + if (params.isShowLabel !== undefined) { + this.isShowLabel = params.isShowLabel; + } + if (params.isShowPort !== undefined) { + this.isShowPort = params.isShowPort; + } + if (params.isShowInterface !== undefined) { + this.isShowInterface = params.isShowInterface; + } + if (params.isShowTable !== undefined) { + this.isShowTable = params.isShowTable; + } + if (params.allSimPacket !== undefined) { + this.allSimPacket = params.allSimPacket; + } + } + updateStateVars(params: Index_Params) { + } + purgeVariableDependenciesOnElmtId(rmElmtId) { + this.__allSimObj.purgeDependencyOnElmtId(rmElmtId); + this.__allSimConn.purgeDependencyOnElmtId(rmElmtId); + this.__TempConn.purgeDependencyOnElmtId(rmElmtId); + this.__isNewObj.purgeDependencyOnElmtId(rmElmtId); + this.__newObjType.purgeDependencyOnElmtId(rmElmtId); + this.__choseIndex.purgeDependencyOnElmtId(rmElmtId); + this.__isNewConn.purgeDependencyOnElmtId(rmElmtId); + this.__isShowLabel.purgeDependencyOnElmtId(rmElmtId); + this.__isShowPort.purgeDependencyOnElmtId(rmElmtId); + this.__isShowInterface.purgeDependencyOnElmtId(rmElmtId); + this.__isShowTable.purgeDependencyOnElmtId(rmElmtId); + this.__allSimPacket.purgeDependencyOnElmtId(rmElmtId); + } + aboutToBeDeleted() { + this.__allSimObj.aboutToBeDeleted(); + this.__allSimConn.aboutToBeDeleted(); + this.__TempConn.aboutToBeDeleted(); + this.__isNewObj.aboutToBeDeleted(); + this.__newObjType.aboutToBeDeleted(); + this.__choseIndex.aboutToBeDeleted(); + this.__isNewConn.aboutToBeDeleted(); + this.__isShowLabel.aboutToBeDeleted(); + this.__isShowPort.aboutToBeDeleted(); + this.__isShowInterface.aboutToBeDeleted(); + this.__isShowTable.aboutToBeDeleted(); + this.__allSimPacket.aboutToBeDeleted(); + SubscriberManager.Get().delete(this.id__()); + this.aboutToBeDeletedInternal(); + } + private __allSimObj: ObservedPropertyObjectPU; // 仿真对象数组123 + get allSimObj() { + return this.__allSimObj.get(); + } + set allSimObj(newValue: any[]) { + this.__allSimObj.set(newValue); + } + private __allSimConn: ObservedPropertyObjectPU; // 仿真连接线数组 + get allSimConn() { + return this.__allSimConn.get(); + } + set allSimConn(newValue: any[]) { + this.__allSimConn.set(newValue); + } + private __TempConn: ObservedPropertyObjectPU; // 临时连接线对象数组 + get TempConn() { + return this.__TempConn.get(); + } + set TempConn(newValue: any[]) { + this.__TempConn.set(newValue); + } + private __isNewObj: ObservedPropertySimplePU; // 是否新增对象 + get isNewObj() { + return this.__isNewObj.get(); + } + set isNewObj(newValue: boolean) { + this.__isNewObj.set(newValue); + } + private __newObjType: ObservedPropertySimplePU; // 新增对象类型 + get newObjType() { + return this.__newObjType.get(); + } + set newObjType(newValue: number) { + this.__newObjType.set(newValue); + } + private __choseIndex: ObservedPropertyObjectPU; // 选中对象下标 + get choseIndex() { + return this.__choseIndex.get(); + } + set choseIndex(newValue: number | null) { + this.__choseIndex.set(newValue); + } + private __isNewConn: ObservedPropertySimplePU; // 是否正在新增连接线 + get isNewConn() { + return this.__isNewConn.get(); + } + set isNewConn(newValue: boolean) { + this.__isNewConn.set(newValue); + } + private __isShowLabel: ObservedPropertySimplePU; // 是否显示标签 + get isShowLabel() { + return this.__isShowLabel.get(); + } + set isShowLabel(newValue: boolean) { + this.__isShowLabel.set(newValue); + } + private __isShowPort: ObservedPropertySimplePU; // 是否显示接口 + get isShowPort() { + return this.__isShowPort.get(); + } + set isShowPort(newValue: boolean) { + this.__isShowPort.set(newValue); + } + private __isShowInterface: ObservedPropertySimplePU; // 是否显示网络配置信息 + get isShowInterface() { + return this.__isShowInterface.get(); + } + set isShowInterface(newValue: boolean) { + this.__isShowInterface.set(newValue); + } + private __isShowTable: ObservedPropertySimplePU; // 是否显示路由/交换表信息 + get isShowTable() { + return this.__isShowTable.get(); + } + set isShowTable(newValue: boolean) { + this.__isShowTable.set(newValue); + } + private __allSimPacket: ObservedPropertyObjectPU; // 单次数据包传输的集合 + get allSimPacket() { + return this.__allSimPacket.get(); + } + set allSimPacket(newValue: SimPacket[]) { + this.__allSimPacket.set(newValue); + } + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + initialRender() { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + Column.create(); + Column.debugLine("pages/Index.ets(35:5)"); + Column.width('100%'); + Column.height('100%'); + if (!isInitialRender) { + Column.pop(); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 顶部功能栏 + TopMenuBar(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 中间绘制区 + MiddleContent(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + { + this.observeComponentCreation((elmtId, isInitialRender) => { + ViewStackProcessor.StartGetAccessRecordingFor(elmtId); + if (isInitialRender) { + let paramsLambda = () => { + return {}; + }; + ViewPU.create(new + // 底部选择栏 + BottomMenuBar(this, {}, undefined, elmtId, paramsLambda)); + } + else { + this.updateStateVarsOfChildByElmtId(elmtId, {}); + } + ViewStackProcessor.StopGetAccessRecording(); + }); + } + Column.pop(); + } + rerender() { + this.updateDirtyElements(); + } +} +ViewStackProcessor.StartGetAccessRecordingFor(ViewStackProcessor.AllocateNewElmetIdForNextComponent()); +loadDocument(new Index(undefined, {})); +ViewStackProcessor.StopGetAccessRecording(); diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/filesInfo.txt b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/filesInfo.txt new file mode 100644 index 0000000..1642d1c --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/filesInfo.txt @@ -0,0 +1,12 @@ +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts;com.example.ensp_fourteen/entry/ets/entryability/EntryAbility;esm;entry/src/main/ets/entryability/EntryAbility.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts;com.example.ensp_fourteen/entry/ets/pages/Index;esm;entry/src/main/ets/pages/Index.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.ts;com.example.ensp_fourteen/entry/ets/components/MiddleContent;esm;entry/src/main/ets/components/MiddleContent.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.ts;com.example.ensp_fourteen/entry/ets/components/ButtomMenuBar;esm;entry/src/main/ets/components/ButtomMenuBar.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.ts;com.example.ensp_fourteen/entry/ets/components/TopMenuBar;esm;entry/src/main/ets/components/TopMenuBar.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.ts;com.example.ensp_fourteen/entry/ets/components/Dialog;esm;entry/src/main/ets/components/Dialog.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.ts;com.example.ensp_fourteen/entry/ets/classes/TopMenu;esm;entry/src/main/ets/classes/TopMenu.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.ts;com.example.ensp_fourteen/entry/ets/classes/OtherSimObjects;esm;entry/src/main/ets/classes/OtherSimObjects.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.ts;com.example.ensp_fourteen/entry/ets/components/Table;esm;entry/src/main/ets/components/Table.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.ts;com.example.ensp_fourteen/entry/ets/functions/functions;esm;entry/src/main/ets/functions/functions.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.ts;com.example.ensp_fourteen/entry/ets/classes/SimBase;esm;entry/src/main/ets/classes/SimBase.ets;entry +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.ts;com.example.ensp_fourteen/entry/ets/classes/Datas;esm;entry/src/main/ets/classes/Datas.ets;entry diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/modules.cache b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/modules.cache new file mode 100644 index 0000000..844c562 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/modules.cache @@ -0,0 +1,13 @@ +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.protoBin +E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.ts;E:/jiaocai/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.protoBin +E:\jiaocai\ensp14\entry\.preview\default\cache\default\default@PreviewArkTS\esmodule\debug\npmEntries.txt;E:\jiaocai\ensp14\entry\.preview\default\cache\default\default@PreviewArkTS\esmodule\debug\npmEntries.protoBin diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.protoBin b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.protoBin new file mode 100644 index 0000000000000000000000000000000000000000..c8be1d869c29ebf0c5215b64982774d98b3753c5 GIT binary patch literal 75 zcmd=1^Zw&X79nR2Mj?AH@p#wZ;GFytztY^K)FQ{cy!?{HlFa-(Ar+ibN}OEmTufXH H0u2rT+YA^L literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.txt b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.txt new file mode 100644 index 0000000..e69de29 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/preview.ets b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/preview.ets new file mode 100644 index 0000000..e69de29 diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/sourceMaps.json b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/sourceMaps.json new file mode 100644 index 0000000..d5967d2 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/sourceMaps.json @@ -0,0 +1,122 @@ +{ + "entry/src/main/ets/entryability/EntryAbility.ets": { + "version": 3, + "file": "EntryAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entryability/EntryAbility.ets" + ], + "names": [], + "mappings": "YAAO,eAAe;OACf,KAAK;OACL,SAAS;YACT,IAAI;YACJ,MAAM;AAEb,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,GAAG,IAAI;QAClE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,IAAI,IAAI;QACf,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI;QACxD,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,CAAC,CAAC;QAE3E,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACnD,IAAI,GAAG,CAAC,IAAI,EAAE;gBACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,+CAA+C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3G,OAAO;aACR;YACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,oDAAoD,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAClH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,IAAI,IAAI;QAC1B,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,oCAAoC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF" + }, + "entry/src/main/ets/pages/Index.ets": { + "version": 3, + "file": "Index.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Index.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/ButtomMenuBar.ets": { + "version": 3, + "file": "ButtomMenuBar.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/ButtomMenuBar.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/TopMenuBar.ets": { + "version": 3, + "file": "TopMenuBar.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/TopMenuBar.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/MiddleContent.ets": { + "version": 3, + "file": "MiddleContent.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/MiddleContent.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/Dialog.ets": { + "version": 3, + "file": "Dialog.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/Dialog.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/classes/TopMenu.ets": { + "version": 3, + "file": "TopMenu.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/TopMenu.ets" + ], + "names": [], + "mappings": "AAAA,MAAM,OAAO,OAAO;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;IAEtC,YAAY,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE;QACpD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,CAAC;CACF,CAAC,QAAQ;AAEV,MAAM,OAAO,WAAW;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,QAAQ,GAAG,SAAS,CAAA;IAEzB,YAAY,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;CACF,CAAC,UAAU" + }, + "entry/src/main/ets/classes/OtherSimObjects.ets": { + "version": 3, + "file": "OtherSimObjects.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/OtherSimObjects.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/Table.ets": { + "version": 3, + "file": "Table.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/Table.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/functions/functions.ets": { + "version": 3, + "file": "functions.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/functions/functions.ets" + ], + "names": [], + "mappings": "cAAS,OAAO,QAAQ,oBAAoB;AAE5C,SAAS,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IACpD,iBAAiB;IACjB,MAAM,iBAAiB,GAAG,yDAAyD,CAAC;IACpF,MAAM,oBAAoB,GAAG,8CAA8C,CAAC;IAE5E,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3D,MAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAEjE,IAAI,eAAe,EAAE;QACnB,cAAc;QACd,0BAA0B;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;SACF;QACD,yBAAyB;QACzB,MAAM,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,EAAE,EAAE;YACrC,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,kBAAkB,EAAE;QAC7B,cAAc;QACd,0BAA0B;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,IAAI,CAAC;KACb;SAAM;QACL,YAAY;QACZ,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE;IAC/C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;QAC5B,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE;YAC1C,SAAQ;SACT;aAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACtC,OAAO,KAAK,CAAA;SACb;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,oBAAoB;AAEtB,MAAM,UAAU,UAAU;IACxB,OAAO,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE,GAAG,IAAI,CAAA;AAC3C,CAAC,CAAC,SAAS;AAEX,MAAM,UAAU,eAAe,CAAC,IAAI,EAAE,MAAM;IAC1C,IAAI,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,OAAO,GAAG,OAAO,GAAG,UAAU,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA;IAC9C,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC,cAAc" + }, + "entry/src/main/ets/classes/SimBase.ets": { + "version": 3, + "file": "SimBase.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/SimBase.ets" + ], + "names": [], + "mappings": "cAAS,SAAS,QAAQ,mBAAmB;cAEnB,OAAO,QAAwD,kBAAkB;AAE3G,YAAY;AACZ,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAA,CAAC,SAAS;IACtB,GAAG,EAAE,MAAM,CAAA,CAAC,8BAA8B;CAC3C;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,OAAO;IAClB,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW;IAC5B,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM;IACpB,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,8BAA8B;IACtD,KAAK,EAAE,MAAM,CAAC,CAAC,uBAAuB;IACtC,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS;IACjC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ;IAC1B,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO;IACzB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO;IAC1B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,QAAQ;IAC5B,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,SAAS;IAC/B,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,aAAa;IACrC,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;IAC5C,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ;IACjC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM;IACxC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM;IAExC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;QAC5C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,SAAS;IAEzB,CAAC,CAAC,QAAQ;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE;IAEtG,CAAC,CAAC,QAAQ;IAEV,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,IAAI;QACpP,OAAM;IACR,CAAC,CAAC,WAAW;IAEb,QAAQ,CAAC,MAAM,EAAE,SAAS;IAE1B,CAAC,CAAC,QAAQ;IAEV,aAAa;QACX,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAA;IAC9B,CAAC;CACF" + }, + "entry/src/main/ets/classes/Datas.ets": { + "version": 3, + "file": "Datas.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/Datas.ets" + ], + "names": [], + "mappings": "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" + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/watch_logs.cache.json b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/watch_logs.cache.json new file mode 100644 index 0000000..6ccfb42 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/watch_logs.cache.json @@ -0,0 +1 @@ +[{"time":"2025-11-23T07:59:15.474Z","category":"etsTransform","level":"warn","msg":"\u001b[33mArkTS:WARN File: E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\MiddleContent.ets:28:29\n The regular property 'item.nObjS as SimBase' cannot be assigned to the @ObjectLink property 'objS'.","type":"plugin_log"},{"time":"2025-11-23T07:59:15.474Z","category":"etsTransform","level":"warn","msg":"\u001b[33mArkTS:WARN File: E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\MiddleContent.ets:28:58\n The regular property 'item.nObjE as SimBase' cannot be assigned to the @ObjectLink property 'objE'.","type":"plugin_log"},{"time":"2025-11-23T07:59:15.474Z","category":"etsTransform","level":"warn","msg":"\u001b[33mArkTS:WARN File: E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\MiddleContent.ets:29:30\n The regular property 'item.nObjS as SimBase' cannot be assigned to the @ObjectLink property 'objS'.","type":"plugin_log"},{"time":"2025-11-23T07:59:15.474Z","category":"etsTransform","level":"warn","msg":"\u001b[33mArkTS:WARN File: E:\\jiaocai\\ensp14\\entry\\src\\main\\ets\\components\\MiddleContent.ets:29:59\n The regular property 'item.nObjE as SimBase' cannot be assigned to the @ObjectLink property 'objE'.","type":"plugin_log"}] \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/generated/r/default/ResourceTable.h b/ensp14ing/ensp14/entry/.preview/default/generated/r/default/ResourceTable.h new file mode 100644 index 0000000..547c6ef --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/generated/r/default/ResourceTable.h @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef RESOURCE_TABLE_H +#define RESOURCE_TABLE_H + +#include + +namespace OHOS { +const int32_t STRING_ENTRYABILITY_DESC = 0x01000004; +const int32_t STRING_ENTRYABILITY_LABEL = 0x01000005; +const int32_t STRING_APP_NAME = 0x01000000; +const int32_t STRING_MODULE_DESC = 0x01000006; +const int32_t COLOR_START_WINDOW_BACKGROUND = 0x01000008; +const int32_t MEDIA_APP_ICON = 0x01000001; +const int32_t MEDIA_ICON = 0x01000003; +const int32_t MEDIA_JIAOHUANJI = 0x01000010; +const int32_t MEDIA_JIAOHUANJI_TM = 0x0100000b; +const int32_t MEDIA_JIXIANQI = 0x0100000c; +const int32_t MEDIA_JIXIANQI_TM = 0x01000009; +const int32_t MEDIA_LUYOUQI = 0x0100000d; +const int32_t MEDIA_LUYOUQI_TM = 0x01000011; +const int32_t MEDIA_PACKET = 0x0100000f; +const int32_t MEDIA_STARTICON = 0x01000002; +const int32_t MEDIA_ZHUJI = 0x0100000a; +const int32_t MEDIA_ZHUJI_TM = 0x0100000e; +const int32_t PROFILE_MAIN_PAGES = 0x01000007; +} +#endif \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/modules.abc b/ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/modules.abc new file mode 100644 index 0000000000000000000000000000000000000000..c0041007155294c3e5e38b2be4090d589ba4e272 GIT binary patch literal 578160 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 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/sourceMaps.map b/ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/sourceMaps.map new file mode 100644 index 0000000..d5967d2 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/sourceMaps.map @@ -0,0 +1,122 @@ +{ + "entry/src/main/ets/entryability/EntryAbility.ets": { + "version": 3, + "file": "EntryAbility.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/entryability/EntryAbility.ets" + ], + "names": [], + "mappings": "YAAO,eAAe;OACf,KAAK;OACL,SAAS;YACT,IAAI;YACJ,MAAM;AAEb,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,GAAG,IAAI;QAClE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,IAAI,IAAI;QACf,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI;QACxD,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,CAAC,CAAC;QAE3E,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACnD,IAAI,GAAG,CAAC,IAAI,EAAE;gBACZ,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,+CAA+C,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3G,OAAO;aACR;YACD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,oDAAoD,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAClH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,IAAI,IAAI;QAC1B,yDAAyD;QACzD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,oCAAoC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,YAAY,IAAI,IAAI;QAClB,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF" + }, + "entry/src/main/ets/pages/Index.ets": { + "version": 3, + "file": "Index.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/pages/Index.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/ButtomMenuBar.ets": { + "version": 3, + "file": "ButtomMenuBar.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/ButtomMenuBar.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/TopMenuBar.ets": { + "version": 3, + "file": "TopMenuBar.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/TopMenuBar.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/MiddleContent.ets": { + "version": 3, + "file": "MiddleContent.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/MiddleContent.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/Dialog.ets": { + "version": 3, + "file": "Dialog.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/Dialog.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/classes/TopMenu.ets": { + "version": 3, + "file": "TopMenu.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/TopMenu.ets" + ], + "names": [], + "mappings": "AAAA,MAAM,OAAO,OAAO;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;IAEtC,YAAY,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE;QACpD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,CAAC;CACF,CAAC,QAAQ;AAEV,MAAM,OAAO,WAAW;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,QAAQ,GAAG,SAAS,CAAA;IAEzB,YAAY,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;CACF,CAAC,UAAU" + }, + "entry/src/main/ets/classes/OtherSimObjects.ets": { + "version": 3, + "file": "OtherSimObjects.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/OtherSimObjects.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/components/Table.ets": { + "version": 3, + "file": "Table.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/components/Table.ets" + ], + "names": [], + "mappings": "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" + }, + "entry/src/main/ets/functions/functions.ets": { + "version": 3, + "file": "functions.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/functions/functions.ets" + ], + "names": [], + "mappings": "cAAS,OAAO,QAAQ,oBAAoB;AAE5C,SAAS,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IACpD,iBAAiB;IACjB,MAAM,iBAAiB,GAAG,yDAAyD,CAAC;IACpF,MAAM,oBAAoB,GAAG,8CAA8C,CAAC;IAE5E,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3D,MAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAEjE,IAAI,eAAe,EAAE;QACnB,cAAc;QACd,0BAA0B;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;SACF;QACD,yBAAyB;QACzB,MAAM,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,EAAE,EAAE;YACrC,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,kBAAkB,EAAE;QAC7B,cAAc;QACd,0BAA0B;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,IAAI,CAAC;KACb;SAAM;QACL,YAAY;QACZ,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE;IAC/C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;QAC5B,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE;YAC1C,SAAQ;SACT;aAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACtC,OAAO,KAAK,CAAA;SACb;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,oBAAoB;AAEtB,MAAM,UAAU,UAAU;IACxB,OAAO,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE,GAAG,IAAI,CAAA;AAC3C,CAAC,CAAC,SAAS;AAEX,MAAM,UAAU,eAAe,CAAC,IAAI,EAAE,MAAM;IAC1C,IAAI,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACvC,OAAO,GAAG,OAAO,GAAG,UAAU,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA;IAC9C,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC,cAAc" + }, + "entry/src/main/ets/classes/SimBase.ets": { + "version": 3, + "file": "SimBase.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/SimBase.ets" + ], + "names": [], + "mappings": "cAAS,SAAS,QAAQ,mBAAmB;cAEnB,OAAO,QAAwD,kBAAkB;AAE3G,YAAY;AACZ,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAA,CAAC,SAAS;IACtB,GAAG,EAAE,MAAM,CAAA,CAAC,8BAA8B;CAC3C;AAED,CAAC,QAAQ;AACT,MAAM,OAAO,OAAO;IAClB,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW;IAC5B,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM;IACpB,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,8BAA8B;IACtD,KAAK,EAAE,MAAM,CAAC,CAAC,uBAAuB;IACtC,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS;IACjC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ;IAC1B,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO;IACzB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO;IAC1B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,QAAQ;IAC5B,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,SAAS;IAC/B,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,aAAa;IACrC,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;IAC5C,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ;IACjC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM;IACxC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM;IAExC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;QAC5C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,SAAS;IAEzB,CAAC,CAAC,QAAQ;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE;IAEtG,CAAC,CAAC,QAAQ;IAEV,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,IAAI;QACpP,OAAM;IACR,CAAC,CAAC,WAAW;IAEb,QAAQ,CAAC,MAAM,EAAE,SAAS;IAE1B,CAAC,CAAC,QAAQ;IAEV,aAAa;QACX,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAA;IAC9B,CAAC;CACF" + }, + "entry/src/main/ets/classes/Datas.ets": { + "version": 3, + "file": "Datas.ets", + "sourceRoot": "", + "sources": [ + "entry/src/main/ets/classes/Datas.ets" + ], + "names": [], + "mappings": "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" + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/loader/default/loader.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/loader/default/loader.json new file mode 100644 index 0000000..a4b7988 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/loader/default/loader.json @@ -0,0 +1,23 @@ +{ + "modulePathMap": { + "entry": "E:\\jiaocai\\ensp14\\entry" + }, + "compileMode": "esmodule", + "projectRootPath": "E:\\jiaocai\\ensp14", + "nodeModulesPath": "E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader_out\\default\\node_modules", + "byteCodeHarInfo": {}, + "declarationEntry": [], + "moduleName": "entry", + "hspNameOhmMap": {}, + "harNameOhmMap": {}, + "packageManagerType": "ohpm", + "compileEntry": [], + "otherCompileFiles": [], + "dynamicImportLibInfo": {}, + "routerMap": [], + "hspResourcesMap": {}, + "updateVersionInfo": {}, + "anBuildOutPut": "E:\\jiaocai\\ensp14\\entry\\.preview\\default\\intermediates\\loader_out\\default\\an\\arm64-v8a", + "anBuildMode": "type", + "buildConfigPath": ".preview\\config\\buildConfig.json" +} diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/merge_profile/default/module.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/merge_profile/default/module.json new file mode 100644 index 0000000..1e301c7 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/merge_profile/default/module.json @@ -0,0 +1,55 @@ +{ + "app": { + "bundleName": "com.example.ensp_fourteen", + "vendor": "example", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:app_icon", + "label": "$string:app_name", + "apiReleaseType": "Release", + "compileSdkVersion": "4.0.10.16", + "targetAPIVersion": 10, + "minAPIVersion": 9, + "compileSdkType": "OpenHarmony", + "appEnvironments": [], + "bundleType": "app", + "buildMode": "debug", + "debug": true + }, + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": [ + "default", + "tablet" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "EntryAbility", + "srcEntry": "./ets/entryability/EntryAbility.ets", + "description": "$string:EntryAbility_desc", + "icon": "$media:icon", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:startIcon", + "startWindowBackground": "$color:start_window_background", + "exported": true, + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ] + } + ], + "packageName": "entry" + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/process_profile/default/module.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/process_profile/default/module.json new file mode 100644 index 0000000..77c7835 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/process_profile/default/module.json @@ -0,0 +1,58 @@ +{ + "app": { + "bundleName": "com.example.ensp_fourteen", + "vendor": "example", + "versionCode": 1000000, + "versionName": "1.0.0", + "icon": "$media:app_icon", + "label": "$string:app_name", + "apiReleaseType": "Release", + "compileSdkVersion": "4.0.10.16", + "targetAPIVersion": 10, + "minAPIVersion": 9, + "compileSdkType": "OpenHarmony", + "appEnvironments": [], + "bundleType": "app", + "buildMode": "debug", + "debug": true + }, + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": [ + "default", + "tablet" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "EntryAbility", + "srcEntry": "./ets/entryability/EntryAbility.ets", + "description": "$string:EntryAbility_desc", + "icon": "$media:icon", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:startIcon", + "startWindowBackground": "$color:start_window_background", + "exported": true, + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ] + } + ], + "packageName": "entry", + "virtualMachine": "ark9.0.0.0", + "compileMode": "esmodule", + "dependencies": [] + } +} diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ResourceTable.txt b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ResourceTable.txt new file mode 100644 index 0000000..f0beb89 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ResourceTable.txt @@ -0,0 +1,18 @@ +string EntryAbility_desc 0x01000004 +string EntryAbility_label 0x01000005 +string app_name 0x01000000 +string module_desc 0x01000006 +color start_window_background 0x01000008 +media app_icon 0x01000001 +media icon 0x01000003 +media jiaohuanji 0x01000010 +media jiaohuanji_tm 0x0100000b +media jixianqi 0x0100000c +media jixianqi_tm 0x01000009 +media luyouqi 0x0100000d +media luyouqi_tm 0x01000011 +media packet 0x0100000f +media startIcon 0x01000002 +media zhuji 0x0100000a +media zhuji_tm 0x0100000e +profile main_pages 0x01000007 \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/12827611826178336895 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/12827611826178336895 new file mode 100644 index 0000000000000000000000000000000000000000..9c4cacb07099610d7e2a94109ea4b8fdeb56091d GIT binary patch literal 110 zcmd;JU|>irD2UHX%uQthvXc^vQ*D8?t5r-^W@3JFVrEQgUU7k;NsMDbL2z<@L267< zYH@yPQF3Z=3`lWIYEEiyYFirD2UHY&d<{;$V+Dd@{t5r-^W@3JFVrEQgUU7k;NsMDbL2z<@ jL267NB^IZ;0BKjN7?5OgVrEQgUU7k;36Lr&s*EWv pN{-1*%*=}^N-fSWElN%;jsaNB^IZ;0BKjNn5@ji{N%*UnAE)D0z(rZRZ>(L qQ(TlBlbe{C7gLm4oL^d$oLU?M(h`%Knv$6qgKC~I&>Rq;mU#fF{yrc8 literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/12591516603000343113 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/12591516603000343113 new file mode 100644 index 0000000000000000000000000000000000000000..e7425ef93466d69cc505ca497773d1b5d1040638 GIT binary patch literal 365 zcmcIfK?=e^4D3M<;z?iN3k1QFHxYjkD7)JrDZAN{Y!CgtiC**p4TO+nGLt!UUH9ZB z%RN%2w)6vP+So7##fL9%FjA-~5FqPxxmqzes3a(X7zDM>l2E}<05cXtfHon1oky*_ rGa8S*rPB*djVd3l{gciiVqQsmYhoXMf1=c3&bX#k_x4pe{WyLDsOWZ$ literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/13346930149730069584 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/13346930149730069584 new file mode 100644 index 0000000000000000000000000000000000000000..a66251f8a75ad07c662eb11a3872965e29b83584 GIT binary patch literal 172 zcmd;KU|^`qD9y@@FUi#_$V+Dd@{o0ypwQ2sQF2UfVrE`UQEG91X;E@&aST{bOlnSQE>KBKaY<2TUbSWp27!z! z1_nkT?dQzEzzw8978Yd|lw{`T2?4n%j>$<(O3k60Yd{u(Z3Hw@Xs5@j7pe+#n8$n`UF9Ax KC$~`Zy*L0UJtw6A literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7813705467349408760 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7813705467349408760 new file mode 100644 index 0000000000000000000000000000000000000000..e891c336f684f6da0f15e10b2255cdb054c6a72c GIT binary patch literal 169 zcmd;PU|`58t;{bi%+xE$OJ@OclM;(l9f7o~RZLc9Vt#UBW=v{cae<);kSZyvj43Wk nj>%2T%!?^XEzU13N=_|~0cnZJO-;#6j6pI?7-$FxP{l9+QeHY& literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9598306224695187522 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9598306224695187522 new file mode 100644 index 0000000000000000000000000000000000000000..5acf1997eda74e25b5bf1b020963905e1ae722fd GIT binary patch literal 187 zcmWe+U|`6~Ow7+HP0Y*6j4#R6E67V{0SYE17N@!cX;-TlkbH7tW=v{cae<);kSZyv sj43Wkj>%2T%!?^XEzU13N=_|~0cnZJO-;#61ZzPtQW$6y2vE^T0Om(QM*si- literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9691874802280713449 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9691874802280713449 new file mode 100644 index 0000000000000000000000000000000000000000..5f6dbb36b797e4f47708727e065010f84945f41e GIT binary patch literal 185 zcmd;QU|`5i%*=}~NK8*H*2^l+&tm}!B_$T8x&vuftC+0J#QfyM%$U@?;sQexAXQRS s8B<)890Sr8Qrr=pO%@E3YJ4MQUque2vE^T098>yod5s; literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9730315321514649119 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9730315321514649119 new file mode 100644 index 0000000000000000000000000000000000000000..e08c2b070f8f9bbe4f7c12dc41ec8ac99165a0db GIT binary patch literal 419 zcmcgoOA5k342^;daiu5l1cKnoonTK;x(k%)G)T%cQzp|zZ*N97dVvPQBj5LuBLGyA z)AHyza9-M;)bA`w(l+(8RPQ*ji{3Gk=ybgqSU+m=I64+gq;XE3)Cx9(6lk;-)SOse zmqDZKZO_)cm=M6muxfNLAGUqR7H}abA)a9NYB|m3Coa zW9Z1lfYgDJ86m+A8~h7Y9rz>o&hI%5QkPl+VLAGI@7??E^WFKfCF3LryqU%7{QNEY z_t(-W(RqY@P}{D5GvWEUX%U?>wl9fbQvH$kdo{4v+1Gm;D@5z7_4<@PV;#bW@2}d| zx&|`Dv0ef%0KWr=fEE^qfpfqS;5HDFtWUr(;4k1fa07=*z(ZgeIF7>;z!tCq`~tiP zyb7{Qzyvr6`~hTLpvmGcA_&KA06Fe!;Nbp8vwv*%Cn07QXQ72Jt3tJn`lizg(kPMA z$GQkZ#}_?GTiBmwAKbU8wq$pe2wb6T>Br&1qP-l3bvFp59myEST^ZXA5lg!#n@ZSB zquju+hJM?yvPn-3EAnNnp28~qB-*p%$hCVy`KNQoiHMT*oP3=6Hf%jdoeyF2$|IBX|MnOw?s10)JgrY6uYB$Ckl;~uIZh{`Ym-Xu? z&8}q^UD4@vc9q`@cAbWBpSPnR^_%nzzT6<(*K22%q}!ycUMS)3C@1M
    TOm3|BI z7jw5@g#Aw1RT=j%WzW { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",appPackId:" + this.appPackId.toString() + ",sourceAppAddr:" + this.sourceAppAddr.toString() + ",targetAppAddr:" + this.targetAppAddr.toString() + "\n" + } + } + } // 应用层解包 + + isValid(sourceAppAddr: string, targetAppAddr: string) { + return this.sourceAppAddr === sourceAppAddr && this.targetAppAddr === targetAppAddr + } // 根据用户输入的应用层地址判断是否正确 +} + +// 传输层数据包(解封包) +export class TransData { + objId: symbol + objLabel: string + transPackId: symbol + transSeq: number + transTag: string + appPackId: symbol + sourcePort: number + targetPort: number + sourceAppAddr: string + targetAppAddr: string + timeStamp: number + transPackedString: string + + constructor(objId: symbol, objLabel: string, transSeq: number, transTag: string, appPackId: symbol, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId + this.objLabel = objLabel + this.transPackId = Symbol() + this.transSeq = transSeq + this.transTag = transTag + this.appPackId = appPackId + this.sourcePort = sourcePort + this.targetPort = targetPort + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.timeStamp = Date.parse(new Date().toString()) + this.transPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",transPackId: " + this.transPackId.toString() + ",transSeq: " + this.transSeq.toString() + ",transTag: " + this.transTag + ",appPackId: " + this.appPackId.toString() + "\nsourcePort: " + this.sourcePort.toString() + "\ntargetPort: " + this.targetPort.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + ",timeStamp: " + this.timeStamp + "\n" + } + + calcNumSplits(): number { + const MTU = 2048 + return (this.transPackedString.length + MTU - 1) / MTU + } // 计算拆分数量 + + pack(): Array { + const numSplits = this.calcNumSplits() + let transDataList: TransData[] = [] + for (let i = 0; i < numSplits; i++) { + transDataList.push(new TransData(this.objId, this.objLabel, i + 1, this.transTag, this.appPackId, this.sourcePort, this.targetPort, this.sourceAppAddr, this.targetAppAddr)) + } + return transDataList + } // 传输层封包 + + unPack(simHost: SimHost) { + simHost.transData = { + objId: this.objId, + objLabel: this.objLabel, + transPackId: this.transPackId, + sourcePort: this.sourcePort, + targetPort: this.targetPort, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",transPackId:" + this.transPackId.toString() + ",sourcePort:" + this.sourcePort.toString() + ",targetPort:" + this.targetPort.toString() + "\n" + } + } + } // 传输层解包 + + isValid(sourcePort: number, targetPort: number) { + return this.sourcePort === sourcePort && this.targetPort === targetPort + } // 根据用户输入的端口判断是否正确 +} + +// 网络层数据包(解封包) +export class IPData { + objId: symbol + objLabel: string + ipPackId: symbol + transPackId: symbol + sourceIp: string + targetIp: string + sourceAppAddr: string + targetAppAddr: string + ipPackedString: string + + constructor(objId: symbol, objLabel: string, transPackId: symbol, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objId + this.objLabel = objLabel + this.ipPackId = Symbol() + this.transPackId = transPackId + this.sourceIp = sourceIp + this.targetIp = targetIp + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.ipPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",ipPackId: " + this.ipPackId.toString() + ",transPackId: " + this.transPackId.toString() + "\nsourceIp: " + this.sourceIp.toString() + "\ntargetIp: " + this.targetIp.toString() + ",sourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n" + } + + pack(): IPData { + let ipData: IPData + ipData = new IPData(this.objId, this.objLabel, this.transPackId, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr) + return ipData + } // 网络层封包 + + unpack(simHost: SimHost) { + simHost.ipData = { + objId: this.objId, + objLabel: this.objLabel, + ipPackId: this.ipPackId, + sourceIp: this.sourceIp, + targetIp: this.targetIp, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",ipPackId:" + this.ipPackId.toString() + ",sourceIp:" + this.sourceIp.toString() + ",targetIp:" + this.targetIp.toString() + "\n" + } + } + } // 网络层解包 + + isValid(sourceIp: string, targetIp: string) { + return this.sourceIp === sourceIp && this.targetIp === targetIp + } // 根据用户输入的ip地址判断是否正确 +} + +// 链路层数据包(解封包) +export class MACData { + objId: symbol + objLabel: string + macPackId: symbol + ipPackId: symbol + sourceMac: string + targetMac: string + sourceIp: string + targetIp: string + sourceAppAddr: string + targetAppAddr: string + macPackedString: string + + constructor(objID: symbol, objLabel: string, ipPackID: symbol, sourceMac: string, targetMac: string, sourceIp: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string) { + this.objId = objID + this.objLabel = objLabel + this.macPackId = Symbol() + this.ipPackId = ipPackID + this.sourceMac = sourceMac + this.targetMac = targetMac + this.sourceIp = sourceIp + this.targetIp = targetIp + this.sourceAppAddr = sourceAppAddr + this.targetAppAddr = targetAppAddr + this.macPackedString = "objId: " + this.objId.toString() + ",objLabel: " + this.objLabel + ",macPackId: " + this.macPackId.toString() + ",ipPackId: " + this.ipPackId.toString() + "\nsentMac: " + this.sourceMac.toString() + ",rpctMac: " + this.targetMac.toString() + ",sourceIp: " + this.sourceIp.toString() + ",targetIp: " + this.targetIp.toString() + "\nsourceAppAddr: " + this.sourceAppAddr + ",targetAppAddr: " + this.targetAppAddr + "\n" + } + + pack(): MACData { + let macData: MACData + macData = new MACData(this.objId, this.objLabel, this.ipPackId, this.sourceMac, this.targetMac, this.sourceIp, this.targetIp, this.sourceAppAddr, this.targetAppAddr) + return macData + } // 链路层封包 + + unPack(simHost: SimHost) { + simHost.macData = { + objId: this.objId, + objLabel: this.objLabel, + macPackId: this.macPackId, + sourceMac: this.sourceMac, + targetMac: this.targetMac, + toString: (): string => { + return "objId:" + this.objId.toString() + ",objLabel:" + this.objLabel.toString() + ",macPackId:" + this.macPackId.toString() + ",sourceMac:" + this.sourceMac.toString() + ",targetMac:" + this.targetMac.toString() + "\n" + } + } + } // 链路层解包 + + isValid(sentMac: string, rcptMac: string) { + return this.sourceMac === sentMac && this.targetMac === rcptMac + } // 根据用户输入的mac地址判断是否正确 +} + +export interface macData { + objId: symbol + objLabel: string + macPackId: symbol + sourceMac: string + targetMac: string + toString: Function +} // 主机收到的链路层数据包的数据结构 + +export interface ipData { + objId: symbol + objLabel: string + ipPackId: symbol + sourceIp: string + targetIp: string + toString: Function +} // 主机收到的网络层数据包的数据结构 + +export interface transData { + objId: symbol + objLabel: string + transPackId: symbol + sourcePort: number + targetPort: number + toString: Function +} // 主机收到的传输层数据包的数据结构 + +export interface appData { + objId: symbol + objLabel: string + appPackId: symbol + sourceAppAddr: string + targetAppAddr: string + toString: Function +} // 主机收到的链路层数据包的数据结构 + + + diff --git a/ensp14ing/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets b/ensp14ing/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets new file mode 100644 index 0000000..7da6568 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/classes/OtherSimObjects.ets @@ -0,0 +1,442 @@ +import { SimBase } from "./SimBase" +import { AppData, IPData, MACData, TransData, macData, ipData, transData, appData } from "../classes/Datas" +import { updatePacketLog } from "../functions/functions" + +@Observed +export class SimPacket { + firstSendHost: SimHost; + sendHost: SimBase; + targetHost: SimBase; + sourceMac: string; // 源主机mac地址 + sourceIp: string; // 源主机ip地址 + targetMac: string; // 目的主机mac地址 + targetIp: string; // 目的主机ip地址 + message: string; // 数据包内容 + size: number; // 数据包大小 + allSimObj: SimBase[]; + allSimPacket: SimPacket[]; + id: symbol; // 使用symbol()生成数据包对象唯一标识 + upJump: any; // 上一跳连接对象,可以根据具体类型定义 + points: number[][]; // 路径点 + level: number; // 数据包展示优先级 + + constructor(firstSendHost: SimHost, sendHost: SimBase, sourceMac: string, sourceIp: string, targetMac: string, targetIp: string, message: string, size: number, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + this.firstSendHost = firstSendHost; + this.sendHost = sendHost; + this.sourceMac = sourceMac; + this.sourceIp = sourceIp; + this.targetMac = targetMac; + this.targetIp = targetIp; + this.message = message; + this.size = size; + this.allSimObj = allSimObj; + this.allSimPacket = allSimPacket; + this.id = Symbol() + this.upJump = null; + this.points = []; + } +} + +@Observed +export class SimConnect { + nObjS: SimBase | null; // 线一端节点S + nObjE: SimBase | null; // 线一端节点E + ifsS: number; // 线一端节点S的端口 + ifsE: number; // 线一端节点E的端口 + width: number; // 线的粗细 + configCorrect: boolean; // 配置正确与否 + + constructor(nobjs: SimBase | null, nobje: SimBase | null, ifss: number, ifse: number) { + this.nObjS = nobjs; + this.nObjE = nobje; + this.ifsS = ifss; + this.ifsE = ifse; + if (nobjs != null && nobje != null) { + this.configCorrect = true + } else { + this.configCorrect = false + } + this.width = this.configCorrect === false ? 1 : 4; + } + + updateObjConn() { + this.nObjS.interface[this.ifsS-1] = this.nObjE.objID + this.nObjE.interface[this.ifsE-1] = this.nObjS.objID + } // 更新仿真对象的接口信息 + + deleteObjConn() { + this.nObjS.interface[this.ifsS-1] = null + this.nObjE.interface[this.ifsE-1] = null + } // 删除仿真对象的接口信息 + + equals(other: any): boolean { + if (other instanceof SimConnect) { + const otherIdS = other.nObjS.objID; + const otherIdE = other.nObjE.objID; + return this.nObjS.objID == otherIdS && this.nObjE.objID == otherIdE; + } + return false; + } // 判断两个连接线是否相同 +} + +@Observed +export class SimHost extends SimBase { + isOnline: boolean = false; // 主机联网状态 + port: number + appAddr: string + macData: macData + ipData: ipData + transData: transData + appData: appData + + constructor(x: number, y: number, type: number = 1) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.ip = "" + this.mac = "" + this.img = $r("app.media.zhuji") // 主机图片 + this.imgTm = $r("app.media.zhuji_tm") // 主机配置成功图片 + this.interface = [null] // 主机只有一个接口 + this.connections = [null] // 一个接口对应一根连接线 + this.port = 8080 + this.appAddr = this.ip + ":" + this.port + } + + setDefaultName() { + return `SHO${++SimBase.flag}` + } // 生成组件默认名称 + + onlineSwitch() { + this.isOnline = !this.isOnline + } // 切换联网状态 + + createPacket(mac: string, ip: string, message: string, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + let isNewPacket: number = AppStorage.get("isNewPacket") + console.log(isNewPacket.toString()) + AppStorage.set("isNewPacket", isNewPacket + 1) + isNewPacket = AppStorage.get("isNewPacket") + console.log(isNewPacket.toString()) + let packet = new SimPacket(this, this as SimBase, this.mac, this.ip, mac, ip, message, 1024, allSimObj, allSimPacket) + packet.level = 1 + packet.points.push([this.objX, this.objY]) + packet.allSimPacket.push(packet) + updatePacketLog(`主机-${this.objLabel}创建数据包成功,信息为[${packet.message}]!`) + this.send(packet) + } // 创建数据包 + + createAppPacket(appPackSize: number, appPackTag: string, sourceAppAddr: string, targetAppAddr: string): AppData | null { + let appPacket = new AppData(this.objID, this.objLabel, appPackSize, appPackTag, sourceAppAddr, targetAppAddr) + if (appPacket.isValid(sourceAppAddr, targetAppAddr)) { + appPacket.pack() + updatePacketLog(`主机-${this.objLabel}创建应用层数据包成功,信息为[${appPacket.appPackTag}]!`) + return appPacket + } + console.log(`主机-${this.objLabel}创建数据包失败!`) + return null + } // 创建应用层数据包 + + createTransPackets(appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, sourceAppAddr: string, targetAppAddr: string): TransData[] | null { + const appPacket = this.createAppPacket(appPackSize, appPackTag, sourceAppAddr, targetAppAddr) + let transPacket = new TransData(appPacket.objId, appPacket.objLabel, 1, appPacket.appPackTag, appPacket.appPackId, sourcePort, targetPort, appPacket.sourceAppAddr, appPacket.targetAppAddr) + if (transPacket.isValid(sourcePort, targetPort)) { + let transSplitedPackets = transPacket.pack() + let numbers = transSplitedPackets.length + updatePacketLog(`主机-${this.objLabel}创建传输层数据包成功,并成功分割为${numbers}个,信息为[${transPacket.transTag}]!`) + return transSplitedPackets + } + console.log(`主机-${this.objLabel}创建数据包失败!`) + return null + } // 创建传输层数据包 + + createIpPacket(appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetIp: string, sourceAppAddr: string, targetAppAddr: string): IPData[] | null { + const transPacketList = this.createTransPackets(appPackSize, appPackTag, sourcePort, targetPort, sourceAppAddr, targetAppAddr) + let ipPacketList: IPData[] = [] + for (let i = 0; i < transPacketList.length; i++) { + let ipPacket = new IPData(transPacketList[i].objId, transPacketList[i].objLabel, transPacketList[i].transPackId, this.ip, targetIp, transPacketList[i].sourceAppAddr, transPacketList[i].targetAppAddr) + if (ipPacket.isValid(this.ip, targetIp)) { + ipPacket.pack() + updatePacketLog(`主机-${this.objLabel}创建网络层数据包成功,信息为[${transPacketList[i].transTag}]!`) + ipPacketList.push(ipPacket) + } + } + if (ipPacketList) { + return ipPacketList + } else { + console.log(`主机-${this.objLabel}创建数据包失败!`) + return null + } + } // 创建网络层数据包 + + createMacPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): MACData[] | null { + const ipPacketList = this.createIpPacket(appPackSize, appPackTag, sourcePort, targetPort, targetIp, sourceAppAddr, targetAppAddr) + let macPacketList: MACData[] = [] + for (let i = 0; i < ipPacketList.length; i++) { + let macPacket = new MACData(ipPacketList[i].objId, ipPacketList[i].objLabel, ipPacketList[i].ipPackId, this.mac, targetMac, ipPacketList[i].sourceIp, ipPacketList[i].targetIp, ipPacketList[i].sourceAppAddr, ipPacketList[i].targetAppAddr) + if (macPacket.isValid(this.mac, targetMac)) { + macPacket.pack() + updatePacketLog(`主机-${this.objLabel}创建链路层数据包成功,信息为[${appPackTag}]!`) + macPacketList.push(macPacket) + } + } + if (macPacketList) { + this.createPacket(targetMac, targetIp, appPackTag, allSimObj, allSimPacket) + return macPacketList + } else { + console.log(`主机-${this.objLabel}创建数据包失败!`) + return null + } + } // 创建链路层数据包 + + createPhysicsPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): boolean { + if (this.createMacPacket(allSimObj, allSimPacket, appPackSize, appPackTag, sourcePort, targetPort, targetMac, targetIp, sourceAppAddr, targetAppAddr)) { + return true + } + return false + } // 创建物理层数据包 + + receive(packet: SimPacket) { + if (packet.targetIp == this.ip && packet.targetMac == this.mac) { + let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + console.log(isNewPacketArrived.toString()) + AppStorage.set("isNewPacketArrived", isNewPacketArrived + 1) + isNewPacketArrived = AppStorage.get("isNewPacketArrived") + console.log(isNewPacketArrived.toString()) + packet.points.push([this.objX, this.objY]) + updatePacketLog(`主机-${this.objLabel}链路层获取数据包成功,信息为[${packet.message}]!`) + updatePacketLog(`主机-${this.objLabel}网络层获取数据包成功,信息为[${packet.message}]!`) + updatePacketLog(`主机-${this.objLabel}传输层获取数据包成功,信息为[${packet.message}]!`) + updatePacketLog(`主机-${this.objLabel}应用层获取数据包成功,信息为[${packet.message}]!`) + updatePacketLog(`主机-${this.objLabel}获取数据包成功,信息为[${packet.message}]!`) + } else { + console.log(`主机${this.objLabel}获取数据包失败!`) + } + } // 接收数据包 + + receiveMacPacket(packet: SimPacket, macPacket: MACData) { + if (macPacket.targetMac == this.mac && macPacket.targetIp == this.ip) { + this.receive(packet) + macPacket.unPack(this) + updatePacketLog(`主机-${this.objLabel}获取链路层数据包成功,信息为[${this.macData.toString}]!`) + } else { + console.log(`主机-${this.objLabel}链路层数据包解包失败!`) + } + } // 接收链路层数据包 + + receiveIpPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData) { + if (ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveMacPacket(packet, macPacket) + ipPacket.unpack(this) + updatePacketLog(`主机-${this.objLabel}获取网络层数据包成功,信息为[${this.ipData.toString}]!`) + } + else { + console.log(`主机-${this.objLabel}网络层数据包解包失败!`) + } + } // 接收网络层数据包 + + receiveTransPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData, transPacket: TransData) { + if (transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveIpPacket(packet, macPacket, ipPacket) + transPacket.unPack(this) + updatePacketLog(`主机-${this.objLabel}获取传输层数据包成功,信息为[${this.transData.toString}]!`) + } else { + console.log(`主机-${this.objLabel}传输层数据包解包失败!`) + } + } // 接收传输层数据包 + + receiveAppPacket(packet: SimPacket, macPacket: MACData, ipPacket: IPData, transPacket: TransData, appPacket: AppData) { + if (appPacket.targetAppAddr == this.appAddr && transPacket.targetPort == this.port && ipPacket.targetIp == this.ip && macPacket.targetMac == this.mac) { + this.receiveTransPacket(packet, macPacket, ipPacket, transPacket) + updatePacketLog(`主机-${this.objLabel}获取应用层数据包成功,信息为[${this.appData.toString}]!`) + } else { + console.log(`主机-${this.objLabel}应用层数据包解包失败!`) + } + } // 接收应用层数据包 + + send(packet: SimPacket) { + const connObj: symbol = this.objID + packet.upJump = connObj + updatePacketLog(`主机-${this.objLabel}发送数据包成功,信息为[${packet.message}]!`) + if (packet.allSimObj.find(item => item.objID === this.interface[0]) != undefined) { + packet.allSimObj.find(item => item.objID === this.interface[0]).receive(packet) + } + // console.log("packet.targetIp:" + packet.targetIp) + } // 发送数据包 +} + +@Observed +export class SimRouter extends SimBase { + constructor(x: number, y: number, type: number = 2) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.ip = "" + this.mac = "" + this.img = $r("app.media.luyouqi") // 路由器图片 + this.imgTm = $r("app.media.luyouqi_tm") // 路由器配置成功图片 + this.interface = [null, null, null, null] // 路由器有四个接口 + this.connections = [null, null, null, null] // 四个接口对应四根连接线 + this.routerTable = [] + } + + setDefaultName() { + return `SRO${++SimBase.flag}` + } // 生成组件默认名称 + + checkDestinationIp(destinationIp: string, network: string): boolean { + // 解析目标 IP 和网络地址 + const [networkAddress, subnetMask] = network.split('/'); + + // 分解目标 IP 地址和网络地址为数组 + const destinationIpParts = destinationIp.split('.'); + const networkAddressParts = networkAddress.split('.'); + + // 计算目标 IP 的网络地址(根据子网掩码) + const calculatedNetworkAddressParts = destinationIpParts.map((part, index) => { + return parseInt(part) & parseInt(networkAddressParts[index]); + }); + + // 构建目标 IP 的网络地址和网络地址的比较字符串 + const calculatedNetworkAddress = calculatedNetworkAddressParts.join('.'); + const inputNetworkAddress = networkAddressParts.join('.'); + + // 比较目标 IP 的网络地址和给定的网络地址是否相同,并检查是否在同一网络范围内 + return calculatedNetworkAddress === inputNetworkAddress && subnetMask === '24'; + } // 检查目标ip是否属于指定的网段范围内 + + receive(packet: SimPacket) { + updatePacketLog(`路由器-${this.objLabel}接受到数据,将进行转发!`) + packet.points.push([this.objX, this.objY]) + try { + this.checkDestinationIp(packet.targetIp, this.ip) + } catch (e) { + console.log("packet router err:" + JSON.stringify(e)) + } + this.transmit(packet); + } // 接收数据包 + + transmit(packet: SimPacket) { + let flag = 0 + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item) // 当前遍历到的接口对应的仿真对象 + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump) // 当前数据包的上一跳仿真对象 + if (item != null) { + // console.log(String(obj != objUpJump) + " " + String(this.routerTable.some(table => { + // return table.net === packet.targetIp // && obj.objID === this.interface[table.port-1] + // })) + " " + String(packet.targetIp)) + if (item != packet.upJump && this.routerTable.some(table => { + return table.net === packet.targetIp && obj.objID === this.interface[table.port-1] + })) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket) + pac.level = packet.level + 1 + pac.upJump = this.objID + pac.points.push([this.objX, this.objY]) + packet.allSimPacket.push(pac) + obj.receive(pac) + flag++ + } + } + }) + if (!flag) { + updatePacketLog(`路由器-${this.objLabel}找不到对应端口进行转发!`) + } + } // 转发数据包 + + getTableConfig(): string { + let str = ""; + const routerTables = this.routerTable; + for (let router of routerTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['segment']}\n`; + } + return str; + } // 获取路由表配置信息用于展示 +} + +@Observed +export class SimSwitch extends SimBase { + constructor(x: number, y: number, type: number = 3) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.mac = "" + this.img = $r("app.media.jiaohuanji") // 交换机图片 + this.imgTm = $r("app.media.jiaohuanji_tm") // 交换机配置成功图片 + this.interface = [null, null, null, null] // 路由器有四个接口 + this.connections = [null, null, null, null] // 四个接口对应四根连接线 + this.switchTable = [] + } + + setDefaultName() { + return `SSW${++SimBase.flag}` + } // 生成组件默认名称 + + receive(packet: SimPacket) { + updatePacketLog(`交换机-${this.objLabel}接受到数据,将进行转发!`) + packet.points.push([this.objX, this.objY]) + this.transmit(packet); + } // 接收数据包 + + transmit(packet: SimPacket) { + this.interface.forEach((item: symbol) => { + let obj = packet.allSimObj.find(obj => obj.objID === item) + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump) + if (item != null) { + if (item != packet.upJump && this.switchTable.some(table => table.net === packet.targetMac)) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket) + pac.level = packet.level + 1 + pac.upJump = this.objID + pac.points.push([this.objX, this.objY]) + packet.allSimPacket.push(pac) + obj.receive(pac) + } + } + }) + } // 转发数据包 + + getTableConfig(): string { + let str = ""; + const macTables = this.switchTable; + for (const router of macTables) { + str += `接口号: ${router['node_ifs']}\n`; + str += `网段号: ${router['mac']}\n`; + } + return str; + } // 获取交换机表配置信息用于展示 +} + +@Observed +export class SimHub extends SimBase { + constructor(x: number, y: number, type: number = 4) { + super(x, y, type) + this.objLabel = this.setDefaultName() + this.img = $r("app.media.jixianqi") // 集线器图片 + this.imgTm = $r("app.media.jixianqi_tm") // 集线器配置成功图片 + this.interface = [null, null, null, null] // 路由器有四个接口 + this.connections = [null, null, null, null] // 四个接口对应四根连接线 + } + + setDefaultName(): string { + return `SHU${++SimBase.flag}` // 生成组件默认名称 + } + + receive(packet: SimPacket) { + updatePacketLog(`集线器-${this.objLabel}接受到数据,将进行转发!`) + packet.points.push([this.objX, this.objY]) + this.transmit(packet); + } // 接收数据包 + + transmit(packet: SimPacket): void { + this.interface.forEach((item: symbol, index) => { + let obj = packet.allSimObj.find(obj => obj.objID === item) + let objUpJump = packet.allSimObj.find(objUpJump => objUpJump.objID === packet.upJump) + if (item != null) { + if (item != packet.upJump) { + const pac = new SimPacket(packet.firstSendHost, objUpJump, packet.sourceMac, packet.sourceIp, packet.targetMac, packet.targetIp, packet.message, 1024, packet.allSimObj, packet.allSimPacket) + pac.level = packet.level + 1 + pac.upJump = this.objID + pac.points.push([this.objX, this.objY]) + packet.allSimPacket.push(pac) + obj.receive(pac) + } + } + }) + } // 转发数据包 +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/classes/SimBase.ets b/ensp14ing/ensp14/entry/src/main/ets/classes/SimBase.ets new file mode 100644 index 0000000..b664056 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/classes/SimBase.ets @@ -0,0 +1,58 @@ +import { SimPacket } from "./OtherSimObjects"; +import { updatePacketLog } from "../functions/functions" +import { AppData, IPData, MACData, TransData, macData, ipData, transData, appData } from "../classes/Datas" + +// 路由表和mac表项 +export interface Table { + port: number // 设备哪个端口 + net: string // 连接哪个网络或设备(下一跳可到达网段或设备mac地址) +} + +@Observed +export class SimBase { + static flag = 0; // 当前仿真对象数量 + objX: number; // x坐标 + objY: number; // y坐标 + objType: number | null; // 对象类型,1为主机,2为路由器,3为交换机,4为集线器 + objID: symbol; // 使用symbol()生成仿真对象唯一标识 + configCorrect: boolean; // 是否配置正确 + isChose: boolean; // 是否被选中 + objLabel: string; // 对象标签 + ip: string | null; // ip地址 + mac: string | null; // mac地址 + img: Resource | null; // 仿真对象图片 + imgTm: Resource | null; // 仿真对象配置成功图片 + interface: Array; // 接口网络配置信息 + connections: Array; // 连接线对象 + routerTable: Array
| null; // 路由表 + switchTable: Array
| null; // 交换表 + + constructor(x: number, y: number, type: number) { + this.objX = x; + this.objY = y; + this.objType = type; + this.objID = Symbol(); + this.configCorrect = false; + this.isChose = false; + } + + receive(packet: SimPacket) { + + } // 接收数据包 + + createPacket(mac: string, ip: string, message: string, allSimObj: SimBase[], allSimPacket: SimPacket[]) { + + } // 创建数据包 + + createMacPacket(allSimObj: SimBase[], allSimPacket: SimPacket[], appPackSize: number, appPackTag: string, sourcePort: number, targetPort: number, targetMac: string, targetIp: string, sourceAppAddr: string, targetAppAddr: string): MACData[] | null { + return + } // 创建链路层数据包 + + transmit(packet: SimPacket) { + + } // 转发数据包 + + changeIsChose() { + this.isChose = !this.isChose + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/classes/TopMenu.ets b/ensp14ing/ensp14/entry/src/main/ets/classes/TopMenu.ets new file mode 100644 index 0000000..e58acaf --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/classes/TopMenu.ets @@ -0,0 +1,19 @@ +export class TopMenu { + title: string + menuItemArr: TopMenuItem[] | undefined + + constructor(title: string, menuItemArr?: TopMenuItem[]) { + this.title = title + this.menuItemArr = menuItemArr + } +} // 顶部菜单类 + +export class TopMenuItem { + title: string + fun: Function | undefined + + constructor(title: string, fun?: Function) { + this.title = title + this.fun = fun + } +} // 顶部菜单选项类 \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/components/ButtomMenuBar.ets b/ensp14ing/ensp14/entry/src/main/ets/components/ButtomMenuBar.ets new file mode 100644 index 0000000..5825df4 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/components/ButtomMenuBar.ets @@ -0,0 +1,91 @@ +import { SimBase } from "../classes/SimBase" + +interface SimClickObj { + name: string + image: Resource + type: number +} + +@Component +export struct BottomMenuBar { + private simClickObjArr: SimClickObj[] = [ + { + name: "主机", + image: $r("app.media.zhuji"), + type: 1 + }, + { + name: "路由器", + image: $r("app.media.luyouqi"), + type: 2 + }, + { + name: "交换器", + image: $r("app.media.jiaohuanji"), + type: 3 + }, + { + name: "集线器", + image: $r("app.media.jixianqi"), + type: 4 + }, + ] // 底部菜单栏数组 + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume isNewObj: boolean // 是否新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + @Consume TempConn: any[] // 是否正在新增连接线 + @Consume isNewConn: boolean // 选中连接线下标 + + scroller: Scroller = new Scroller() + @StorageLink("LogText") logText: string = "" + + build() { + Row({ space: 10 }) { + ForEach(this.simClickObjArr, (item: SimClickObj) => { + Column() { + Image(item.image) + .border({ + color: item.type == this.newObjType && this.isNewObj ? Color.Red : Color.Transparent, + width: 1 + }) + .width(50) + .onClick(() => { + this.isNewConn = false + this.TempConn = [] + if (!this.isNewObj) { // 选择创建对象 + this.isNewObj = true + this.newObjType = item.type + } else if (this.newObjType != item.type) { // 选择创建其他对象 + this.newObjType = item.type + } else { // 取消选择 + this.isNewObj = false + this.newObjType = -1 + } + this.allSimObj.forEach(item => { + item.isChose = false + }) // 创建对象时必须全部设置为非选中状态 + this.choseIndex = null + }) + Text(item.name) + .fontWeight(FontWeight.Bold) + } + .margin({ top: 5 }) + }) + + Scroll(this.scroller) { + Text(this.logText) + .fontSize(15) + } + .border({ + color: Color.Black, + width: 1 + }) + .layoutWeight(1) + .height('100%') + .margin(2) + } + .layoutWeight(1) + .margin({left: '5%'}) + } +} diff --git a/ensp14ing/ensp14/entry/src/main/ets/components/Dialog.ets b/ensp14ing/ensp14/entry/src/main/ets/components/Dialog.ets new file mode 100644 index 0000000..e4155f6 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/components/Dialog.ets @@ -0,0 +1,477 @@ +import { SimBase, Table } from "../classes/SimBase" +import { SimConnect, SimPacket } from "../classes/OtherSimObjects" +import promptAction from "@ohos.promptAction" +import { checkNetwork } from "../functions/functions" + +@CustomDialog +export struct LabelRevise { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State newLabel: string = "" + + build() { + Column({ space: 5 }) { + Text("原标签: " + this.simObj.objLabel) + .fontSize(28) + .fontColor(Color.Gray) + .width('80%') + + Row() { + Text("新标签:") + .fontSize(28) + .fontColor(Color.Gray) + + TextInput({ placeholder: "请输入新标签" }) + .onChange((value) => { + this.newLabel = value + }) + .width('65%') + } + .width('80%') + + Row({ space: 40 }) { + Button("取消") + .height(35) + .onClick(() => { + this.controller.close() + }) + + Button("确定") + .height(35) + .onClick(() => { + this.simObj.objLabel = this.newLabel + this.controller.close() + }) + } + .margin({ top: 5 }) + } + .margin(10) + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct LineDelete { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @Consume allSimConn: SimConnect[] + + build() { + Column() { + Text(this.simObj.objLabel + " 连接线列表") + .fontSize(18) + .fontWeight(FontWeight.Bold) + Menu() { + ForEach(this.allSimConn, (item: SimConnect, index) => { + if (this.simObj.objID === item.nObjE.objID || this.simObj.objID === item.nObjS.objID) { + MenuItem({ + content: this.simObj.objLabel + " : " + (this.simObj.objID === item.nObjE.objID ? item.nObjS.objLabel : item.nObjE.objLabel) + }) + .height(25) + .contentFont({ size: 18 }) + .onChange(() => { + item.deleteObjConn() // 删除线时应该先将线两端的设备的connection设置为null + this.allSimConn.splice(index, 1) // 然后将连接线对象数组中的该连接线对象删除 + this.controller.close() + }) + } + }) + } + } + .width('100%') + .margin(10) + .backgroundColor(Color.White) + } +} + +@CustomDialog +export struct NetworkConfig { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip: string = "" + @State mac: string = "" + + build() { + Column() { + TextInput({ placeholder: "请输入ip地址:192.168.1.1" }) + .onChange((value) => { + this.ip = value + }) + + TextInput({ placeholder: "请输入mac地址:mac11" }) + .onChange((value) => { + this.mac = value + }) + + Row({ space: 30 }) { + Button("取消") + .onClick(() => { + this.controller.close() + }) + + Button("确定") + .onClick(() => { + if (this.simObj.objType == 3) { + this.simObj.mac = this.mac + } else { + this.simObj.ip = this.ip + this.simObj.mac = this.mac + } + this.controller.close() + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct RouterTableConfig { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip1: string = "" + @State ip2: string = "" + @State ip3: string = "" + @State ip4: string = "" + + build() { + Column() { + Row() { + TextInput({ placeholder: "请输入端口1下一跳:192.168.1.0/24" }) + .onChange((value) => { + this.ip1 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 1, + net: this.ip1 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口2下一跳:" }) + .onChange((value) => { + this.ip2 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 2, + net: this.ip2 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口3下一跳:" }) + .onChange((value) => { + this.ip3 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 3, + net: this.ip3 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口4下一跳:" }) + .onChange((value) => { + this.ip4 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 4, + net: this.ip4 + } + if (this.simObj.routerTable.some(item => item.port == pushItem.port)) { + this.simObj.routerTable[pushItem.port-1] = pushItem + } else { + this.simObj.routerTable.push(pushItem) + this.simObj.routerTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct SwitchTableConfig { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State mac1: string = "" + @State mac2: string = "" + @State mac3: string = "" + @State mac4: string = "" + + build() { + Column() { + Row() { + TextInput({ placeholder: "请输入端口1下一跳:mac11" }) + .onChange((value) => { + this.mac1 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 1, + net: this.mac1 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口2下一跳:" }) + .onChange((value) => { + this.mac2 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 2, + net: this.mac2 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口3下一跳:" }) + .onChange((value) => { + this.mac3 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 3, + net: this.mac3 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + + Row() { + TextInput({ placeholder: "请输入端口4下一跳:" }) + .onChange((value) => { + this.mac4 = value + }) + .width('80%') + + Button("添加") + .onClick(() => { + let pushItem: Table = { + port: 4, + net: this.mac4 + } + if (this.simObj.switchTable.some(item => item.port == pushItem.port)) { + this.simObj.switchTable[pushItem.port-1] = pushItem + } else { + this.simObj.switchTable.push(pushItem) + this.simObj.switchTable.sort((a: Table, b: Table) => a.port > b.port ? 1 : -1) + } + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct PacketSet { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip: string = "" + @State mac: string = "" + @State message: string = "" + @Consume allSimObj: SimBase[] + @Consume allSimPacket: SimPacket[] + + build() { + Column() { + TextInput({ placeholder: "请输入目标ip地址:192.168.1.1" }) + .onChange((value) => { + this.ip = value + }) + + TextInput({ placeholder: "请输入目标mac地址:mac11" }) + .onChange((value) => { + this.mac = value + }) + + TextInput({ placeholder: "请输入发送信息" }) + .onChange((value) => { + this.message = value + }) + + Row({ space: 30 }) { + Button("取消") + .onClick(() => { + this.controller.close() + }) + + Button("确定") + .onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }) + } else if (this.simObj.objType == 1) { + // this.simObj.createPacket(this.mac, this.ip, this.message, this.allSimObj, this.allSimPacket) + this.simObj.createMacPacket(this.allSimObj, this.allSimPacket, 1024, this.message, 8080, 8080, this.mac, this.ip, `${this.simObj.ip}:8080:app1`, `${this.ip}:8080:app1`) + } else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }) + } + this.controller.close() + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} + +@CustomDialog +export struct BatchPacketSet { + controller: CustomDialogController + @ObjectLink simObj: SimBase + @State ip: string = "" + @State mac: string = "" + @State message: string = "" + @Consume allSimObj: SimBase[] + @Consume allSimPacket: SimPacket[] + @State packets: any[] = [] + + build() { + Column() { + TextInput({ placeholder: "请输入目标ip地址:192.168.1.1" }) + .onChange((value) => { + this.ip = value + }) + + TextInput({ placeholder: "请输入目标mac地址:mac11" }) + .onChange((value) => { + this.mac = value + }) + + TextInput({ placeholder: "请输入发送信息" }) + .onChange((value) => { + this.message = value + }) + + Row({ space: 30 }) { + Button("取消") + .onClick(() => { + this.controller.close() + }) + + Button("新增") + .onClick(() => { + if (!checkNetwork(this.allSimObj)) { + promptAction.showToast({ + message: "请正确配置IP地址", + duration: 3000, + bottom: 50 + }) + } else if (this.simObj.objType == 1) { + this.packets.push( + { + ip: this.ip, + mac: this.mac, + message: this.message, + allSimObj: this.allSimObj, + allSimPacket: this.allSimPacket + } + ) + } else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }) + } + }) + + Button("批量发送") + .onClick(() => { + this.packets.forEach(item => { + this.simObj.createPacket(item.mac, item.ip, item.message, item.allSimObj, item.allSimPacket) + }) + this.controller.close() + }) + } + } + .backgroundColor(Color.White) + .justifyContent(FlexAlign.Center) + .alignItems(HorizontalAlign.Center) + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/components/MiddleContent.ets b/ensp14ing/ensp14/entry/src/main/ets/components/MiddleContent.ets new file mode 100644 index 0000000..cb05510 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/components/MiddleContent.ets @@ -0,0 +1,332 @@ +import promptAction from "@ohos.promptAction" +import { SimPacket, SimConnect, SimHost, SimHub, SimRouter, SimSwitch } from "../classes/OtherSimObjects" +import { SimBase } from "../classes/SimBase" +import { TableChart, NetworkChart, sendHost, targetHost } from "./Table" + +@Component +export struct MiddleContent { + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume allSimConn: SimConnect[] // 仿真连接线数组 + @Consume TempConn: any[] // 临时any数组 + @Consume isNewObj: boolean // 是否插入新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + @Consume isNewConn: boolean // 是否正在新增连接线 + @Consume isShowLabel: boolean // 是否显示标签 + @Consume isShowPort: boolean // 是否显示接口 + @Consume isShowInterface: boolean // 是否显示网络配置信息 + @Consume isShowTable: boolean // 是否显示路由/交换表信息 + @Consume allSimPacket: SimPacket[] // 单次数据包传输的集合 + @StorageProp("isNewPacket") isNewPacket: number = 0 + @StorageProp("isNewPacketArrived") isNewPacketArrived: number = 0 + + build() { + Row() { + // 画布 + Stack() { + ForEach(this.allSimConn, (item: SimConnect) => { + CreateCon({ objS: item.nObjS as SimBase, objE: item.nObjE as SimBase }) // 连接线绘制组件 + CreatePort({ objS: item.nObjS as SimBase, objE: item.nObjE as SimBase, conn: item }) // 接口绘制组件 + }) + + ForEach(this.allSimObj, (item: SimBase, index) => { + CreateImg({ simObj: item, thisIndex: index }) // 虚拟对象绘制组件 + CreateLabel({ simObj: item }) // 标签绘制组件 + }) + } + .width('56%') + .height('100%') + .border({ color: Color.Black, width: 1 }) + .onClick((event: ClickEvent) => { + if (this.isNewObj) { // 若要插入新增对象 + const obj = this.newObjType == 1 ? new SimHost(event.x - 25, event.y - 15) : this.newObjType == 2 ? new SimRouter(event.x - 25, event.y - 15) : this.newObjType == 3 ? new SimSwitch(event.x - 25, event.y - 15) : new SimHub(event.x - 25, event.y - 15) + this.allSimObj.push(obj as SimBase) // 插入并绘制新增对象 + } else if (!this.isNewObj && this.allSimObj.some(item => item.isChose == true)) { + this.allSimObj[this.choseIndex].objX = event.x - 25 // 更新X坐标 + this.allSimObj[this.choseIndex].objY = event.y - 15 // 更新Y坐标 + this.allSimObj[this.choseIndex].isChose = false // 更新选中状态为未选中 + } + this.isNewObj = false // 取消新增状态 + this.newObjType = -1 // 取消新增类型 + this.choseIndex = null // 取消选中下标 + this.isNewConn = false // 取消新增连接线 + this.TempConn = [] // 清空临时连接线对象 + }) + + Column({ space: 3 }) { + Column() { + Text("发送主机详情") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.isNewPacket) { + Text("发送主机:" + this.allSimPacket[this.allSimPacket.length-1].sendHost.objLabel) + Text("IP地址:" + this.allSimPacket[this.allSimPacket.length-1].sourceIp) + Text("Mac地址;" + this.allSimPacket[this.allSimPacket.length-1].sourceMac) + Text("发送数据包大小:1024kB") + Text("已发送数据包数量:1") + Text("需要发送的数据包总数:1") + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + + Column() { + Text("接收主机详情") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.isNewPacketArrived) { + // Text("接收主机:") + Text("IP地址:" + this.allSimPacket[this.allSimPacket.length-1].targetIp) + Text("Mac地址;" + this.allSimPacket[this.allSimPacket.length-1].targetMac) + Text("接收数据包大小:1024kB") + Text("已接收数据包数量:1") + Text("需要接收的数据包总数:1") + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + } + .width('22%') + .height('100%') + + // 配置信息展示 + Column({ space: 3 }) { + Column() { + Text("网络配置信息") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.choseIndex != null && this.isShowInterface) { + NetworkChart({ simObj: this.allSimObj[this.choseIndex] }) + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + + Column() { + Text("路由/交换表信息") + .fontSize(21) + .fontWeight(FontWeight.Bold) + + Column() { + if (this.choseIndex != null && this.isShowTable) { + TableChart({ simObj: this.allSimObj[this.choseIndex] }) + } + } + } + .width('100%') + .height('50%') + .border({ color: Color.Orange, width: 1 }) + } + .width('22%') + .height('100%') + .padding(2) + .justifyContent(FlexAlign.SpaceBetween) + .layoutWeight(1) + } + .width('100%') + .height('74%') + } +} + +// 绘制连接线组件 +@Component +struct CreateCon { + @ObjectLink objS: SimBase + @ObjectLink objE: SimBase + + build() { + Line() + .width('100%') + .height('100%') + .stroke(Color.Black) + .startPoint([this.objS.objX + 25, this.objS.objY + 15]) + .endPoint([this.objE.objX + 25, this.objE.objY + 15]) + } +} + +class coordinates { + x: number + y: number + + constructor(x: number, y: number) { + this.x = x + this.y = y + } +} + +// 绘制接口组件 +@Component +struct CreatePort { + @ObjectLink objS: SimBase + @ObjectLink objE: SimBase + @ObjectLink conn: SimConnect + r: number = 30 + + k() { + return (this.objS.objY - this.objE.objY) / (this.objS.objX - this.objE.objX) + } // 直线斜率 + + distance(point1: coordinates, point2: coordinates) { + return Math.sqrt((point1.x - point2.x)**2 + (point1.y - point2.y)**2) + } // 两点距离 + + closerSPoint() { + let objEPoint = new coordinates(this.objE.objX + 25, this.objE.objY + 15) + let objSPoint1 = new coordinates(this.objS.objX + 25 + this.r / Math.sqrt(this.k()**2 + 1), this.objS.objY + 15 + this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objSPoint2 = new coordinates(this.objS.objX + 25 - this.r / Math.sqrt(this.k()**2 + 1), this.objS.objY + 15 - this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objSPoint = this.distance(objSPoint1, objEPoint) < this.distance(objSPoint2, objEPoint) ? objSPoint1 : objSPoint2 + return { x: objSPoint.x, y: objSPoint.y } + } + + closerEPoint() { + let objSPoint = new coordinates(this.objS.objX + 25, this.objS.objY + 15) + let objEPoint1 = new coordinates(this.objE.objX + 25 + this.r / Math.sqrt(this.k()**2 + 1), this.objE.objY + 15 + this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objEPoint2 = new coordinates(this.objE.objX + 25 - this.r / Math.sqrt(this.k()**2 + 1), this.objE.objY + 15 - this.k() * this.r / Math.sqrt(this.k()**2 + 1)) + let objEPoint = this.distance(objEPoint1, objSPoint) < this.distance(objEPoint2, objSPoint) ? objEPoint1 : objEPoint2 + return { x: objEPoint.x, y: objEPoint.y } + } + + build() { + Stack() { + Text(this.conn.ifsS.toString()) + .fontSize(15) + .fontColor(Color.Green) + .fontWeight(FontWeight.Bold) + .position(this.closerSPoint()) + Text(this.conn.ifsE.toString()) + .fontSize(15) + .fontColor(Color.Green) + .fontWeight(FontWeight.Bold) + .position(this.closerEPoint()) + } + .width('100%') + .height('100%') + } +} + +// 绘制仿真对象组件 +@Component +struct CreateImg { + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume allSimConn: SimConnect[] // 仿真连接线数组 + @Consume TempConn: any[] // 临时any数组 + @ObjectLink simObj: SimBase // 当前对象 + @Consume isNewObj: boolean // 是否新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + @Consume isNewConn: boolean // 是否正在新增连接线 + thisIndex: number + + @Builder + InterfaceMenu() { // 接口选择菜单 + Menu() { + ForEach(this.simObj.interface, (item, index) => { + if (item === null) { + MenuItem({ content: "接口" + (index + 1).toString() }) + .width(70) + .height(30) + .contentFont({ size: 14 }) + .onChange(() => { + if (!this.isNewConn) { + this.TempConn.push(this.allSimObj[this.thisIndex]) + this.TempConn.push(index + 1) + } else { + if (this.TempConn[0] != this.simObj && !this.TempConn[0].interface.includes(this.simObj)) { + const conn = new SimConnect(this.TempConn[0], this.allSimObj[this.thisIndex], this.TempConn[1], index + 1) + this.allSimConn.push(conn) + // 更新两个连接对象中的连接线信息 + conn.updateObjConn() + this.TempConn = [] + } else { + this.TempConn = [] + promptAction.showToast({ + message: "请选择连接不同的对象", + duration: 3000, + bottom: 50 + }) + } + } + if (this.choseIndex != null) { + this.allSimObj[this.choseIndex].isChose = false + } + this.isNewObj = false + this.newObjType = -1 + this.choseIndex = null + this.isNewConn = !this.isNewConn + }) + } else { + MenuItem({ content: "接口" + (index + 1).toString() + "已连接" }) + .width(105) + .height(30) + .contentFont({ size: 13, style: FontStyle.Italic }) + .contentFontColor(Color.Green) + .onChange(() => { + promptAction.showToast({ + message: "该接口已连接", + duration: 3000, + bottom: 50 + }) + }) + } + }) + } + .radius(8) + } + + build() { + Column() { + Image(this.simObj.img) + .width(50) + .border({ + color: this.TempConn[0] === this.simObj ? Color.Green : this.simObj.isChose ? Color.Red : Color.Transparent, + width: 1.2 + })// 选中框 + .onClick(() => { // 仅允许一个对象被选中 + this.TempConn = [] + this.isNewObj = false // 取消插入新对象状态 + this.newObjType = -1 + this.isNewConn = false + if (!this.allSimObj.some(item => item.isChose == true)) { // 若没有对象被选中 + this.choseIndex = this.thisIndex // 更新选中对象的下标 + this.simObj.changeIsChose() // 更新对象选中状态 + } else if (this.simObj.isChose) { // 若要取消选中对象 + this.choseIndex = null // 更新选中下标为null + this.simObj.changeIsChose() // 更新对象选中状态 + } else if (!this.simObj.isChose && this.choseIndex != null) { // 若要更换选择对象 + this.allSimObj[this.choseIndex].changeIsChose() // 更新上一个选中对象选中状态 + this.choseIndex = this.thisIndex // 更新选中下标 + this.simObj.changeIsChose() // 更新当前对象选中状态 + } + }) + } + .position({ x: this.simObj.objX, y: this.simObj.objY }) + .bindContextMenu(this.InterfaceMenu(), ResponseType.LongPress) // 外容器绑定长按事件,避免与内组件冲突 + } +} + +// 绘制标签组件 +@Component +struct CreateLabel { + @ObjectLink simObj: SimBase + @Consume isShowLabel: boolean // 是否显示标签 + + build() { + if (this.isShowLabel) { + Text(this.simObj.objLabel) + .fontSize(15) + .position({ x: this.simObj.objX + 25, y: this.simObj.objY - 12 }) + } + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/components/Table.ets b/ensp14ing/ensp14/entry/src/main/ets/components/Table.ets new file mode 100644 index 0000000..70f5070 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/components/Table.ets @@ -0,0 +1,91 @@ +import { SimPacket } from '../classes/OtherSimObjects' +import { SimBase, Table } from '../classes/SimBase' + +@Component +export struct NetworkChart { + @ObjectLink simObj: SimBase + + build() { + Column() { + if (this.simObj.objType == 1 || this.simObj.objType == 2) { + Column() { + Text("IP地址:" + this.simObj.ip) + + Text("Mac地址:" + this.simObj.mac) + } + } else if (this.simObj.objType == 3) { + Column() { + Text("Mac地址:" + this.simObj.mac) + } + } + } + .width('100%') + .height('100%') + } +} + +@Component +export struct TableChart { + @ObjectLink simObj: SimBase + + build() { + Column() { + if (this.simObj.objType == 2) { + ForEach(this.simObj.routerTable, (item: Table) => { + Row() { + Text("端口" + item.port.toString() + ":") + + Text(item.net) + } + }) + } else if (this.simObj.objType == 3) { + ForEach(this.simObj.switchTable, (item: Table) => { + Row() { + Text("端口" + item.port.toString() + ":") + + Text(item.net) + } + }) + } + } + .width('100%') + .height('100%') + } +} + +@Component +export struct sendHost { + @ObjectLink simPacket: SimPacket + + build() { + Column() { + Text("发送主机:" + this.simPacket.sendHost) + Text("IP地址:" + this.simPacket.targetIp) + Text("Mac地址;" + this.simPacket.targetMac) + Text("发送数据包大小:" + this.simPacket.size) + Text("已发送数据包数量:" + 1) + Text("需要发送的数据包总数:" + 1) + } + .width('100%') + .height('100%') + } +} + +@Component +export struct targetHost { + @ObjectLink simPacket: SimPacket + host: string + + build() { + Column() { + Text("发送主机:" + this.host) + Text("IP地址:" + this.simPacket.targetIp) + Text("Mac地址;" + this.simPacket.targetMac) + Text("接收数据包大小:" + this.simPacket.size) + Text("已接收数据包数量:" + this.host) + Text("需要接收的数据包总数:" + this.host) + } + .width('100%') + .height('100%') + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/components/TopMenuBar.ets b/ensp14ing/ensp14/entry/src/main/ets/components/TopMenuBar.ets new file mode 100644 index 0000000..970592b --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/components/TopMenuBar.ets @@ -0,0 +1,196 @@ +import promptAction from "@ohos.promptAction"; +import { SimBase } from "../classes/SimBase" +import { SimConnect, SimPacket } from "../classes/OtherSimObjects" +import { TopMenu, TopMenuItem } from "../classes/TopMenu" +import { LabelRevise, LineDelete, NetworkConfig, RouterTableConfig, SwitchTableConfig, PacketSet, BatchPacketSet } from "./Dialog" + +@Component +export struct TopMenuBar { + // 修改标签控制器 + reviseLabelController: CustomDialogController = new CustomDialogController({ + builder: LabelRevise({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 删除连接线控制器 + deleteLineController: CustomDialogController = new CustomDialogController({ + builder: LineDelete({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 网络配置控制器 + NetworkController: CustomDialogController = new CustomDialogController({ + builder: NetworkConfig({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 路由表配置配置器 + RouterController: CustomDialogController = new CustomDialogController({ + builder: RouterTableConfig({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 转换表配置控制器 + SwitchController: CustomDialogController = new CustomDialogController({ + builder: SwitchTableConfig({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 数据包设置控制器 + PacketController: CustomDialogController = new CustomDialogController({ + builder: PacketSet({ simObj: this.allSimObj[this.choseIndex] }) + }) + // 批量数据包设置控制器 + BatchPacketController: CustomDialogController = new CustomDialogController({ + builder: BatchPacketSet({ simObj: this.allSimObj[this.choseIndex] }) + }) + + @Builder + MenuItem(menuItemArr: TopMenuItem[]) { + Menu() { + ForEach(menuItemArr, (item: TopMenuItem) => { + MenuItem({ content: item.title }) + .onChange(() => { + if (item.fun) { + item.fun() + } + }) + }) + } + } // 顶部菜单栏按钮每小项 + + @Builder + MenuButton(menuArr: TopMenu[]) { + ForEach(menuArr, (item: TopMenu) => { + Button(item.title) + .type(ButtonType.Normal) + .fontColor(Color.Black) + .border({ color: Color.Black, width: 1 }) + .backgroundColor(Color.Transparent) + .bindMenu(this.MenuItem(item.menuItemArr)) + }) + } // 顶部菜单栏按钮 + + private menuArr: TopMenu[] = [ + new TopMenu("删除与修改", [new TopMenuItem("删除对象", () => { + if (this.choseIndex != null) { + this.allSimConn = this.allSimConn.filter((item)=>{ + if(this.allSimObj[this.choseIndex].objID === item.nObjE.objID || this.allSimObj[this.choseIndex].objID === item.nObjS.objID){ + item.deleteObjConn() // 删除线时应该先将线两端的设备的connection设置为null + return false + } + return true + }) + this.allSimObj.splice(this.choseIndex, 1) + this.isNewObj = false + this.newObjType = -1 + this.choseIndex = null + } else { + promptAction.showToast({ + message: "请先选择要删除的对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("删除连接线", () => { + if (this.choseIndex != null) { + this.deleteLineController.open() + } else { + promptAction.showToast({ + message: "请选择要删除的连接线对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("修改标签", () => { + if (this.choseIndex != null) { + this.reviseLabelController.open() + } else { + promptAction.showToast({ + message: "请选择仿真对象", + duration: 3000, + bottom: 50 + }) + } + })]), + new TopMenu("基础配置", [new TopMenuItem("网络配置", () => { + if (this.choseIndex != null && (this.allSimObj[this.choseIndex].objType == 1 || this.allSimObj[this.choseIndex].objType == 2 || this.allSimObj[this.choseIndex].objType == 3)) { + this.NetworkController.open() + } else { + promptAction.showToast({ + message: "请选择正确对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("路由器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 2) { + this.RouterController.open() + } else { + promptAction.showToast({ + message: "请选择路由器对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("交换器配置", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 3) { + this.SwitchController.open() + } else { + promptAction.showToast({ + message: "请选择交换机对象", + duration: 3000, + bottom: 50 + }) + } + })]), + new TopMenu("显示设置", [new TopMenuItem("显示/不显示标签", () => { + this.isShowLabel = !this.isShowLabel + }), new TopMenuItem("显示/不显示接口", () => { + this.isShowPort = !this.isShowPort + }), new TopMenuItem("显示/不显示配置信息", () => { + this.isShowInterface = !this.isShowInterface + }), new TopMenuItem("显示/不显示交换表信息", () => { + this.isShowTable = !this.isShowTable + })]), + new TopMenu("发送数据包", [new TopMenuItem("发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1){ + this.PacketController.open() + }else{ + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }) + } + }), new TopMenuItem("批量发送数据包", () => { + if (this.choseIndex != null && this.allSimObj[this.choseIndex].objType == 1){ + this.BatchPacketController.open() + }else{ + promptAction.showToast({ + message: "请选择主机对象", + duration: 3000, + bottom: 50 + }) + } + })]), + new TopMenu("清除屏幕", [new TopMenuItem("清除屏幕", () => { + this.allSimObj = [] + this.allSimConn = [] + this.TempConn = [] + this.isNewObj = false + this.choseIndex = null + })]) + ] // 顶部菜单栏数组 + @Consume allSimObj: SimBase[] // 仿真对象数组 + @Consume allSimConn: SimConnect[] // 仿真连接线数组 + @Consume TempConn: any[] // 临时any数组 + @Consume isNewObj: boolean // 是否新增对象 + @Consume newObjType: number // 新增对象类型 + @Consume choseIndex: number | null // 选中对象下标 + + @Consume isShowLabel: boolean // 是否显示标签 + @Consume isShowPort: boolean // 是否显示接口 + @Consume isShowInterface: boolean // 是否显示网络配置信息 + @Consume isShowTable: boolean // 是否显示路由/交换表信息 + + @Consume allSimPacket: SimPacket[] // 单次数据包传输的集合 + + build() { + Row() { + this.MenuButton(this.menuArr) + } + .height('12%') + .width('100%') + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/entryability/EntryAbility.ets b/ensp14ing/ensp14/entry/src/main/ets/entryability/EntryAbility.ets new file mode 100644 index 0000000..1c7aa63 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/entryability/EntryAbility.ets @@ -0,0 +1,43 @@ +import AbilityConstant from '@ohos.app.ability.AbilityConstant'; +import hilog from '@ohos.hilog'; +import UIAbility from '@ohos.app.ability.UIAbility'; +import Want from '@ohos.app.ability.Want'; +import window from '@ohos.window'; + +export default class EntryAbility extends UIAbility { + onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + } + + onDestroy(): void { + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); + } + + onWindowStageCreate(windowStage: window.WindowStage): void { + // Main window is created, set main page for this ability + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); + + windowStage.loadContent('pages/Index', (err, data) => { + if (err.code) { + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? ''); + }); + } + + onWindowStageDestroy(): void { + // Main window is destroyed, release UI related resources + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageDestroy'); + } + + onForeground(): void { + // Ability has brought to foreground + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onForeground'); + } + + onBackground(): void { + // Ability has back to background + hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onBackground'); + } +} diff --git a/ensp14ing/ensp14/entry/src/main/ets/functions/functions.ets b/ensp14ing/ensp14/entry/src/main/ets/functions/functions.ets new file mode 100644 index 0000000..4f74730 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/functions/functions.ets @@ -0,0 +1,62 @@ +import { SimBase } from "../classes/SimBase" + +function ValidateIPAddress(ipAddress: string): boolean { + // 定义IP地址的正则表达式模式 + const patternWithSubnet = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\/(\d{1,2})$/; + const patternWithoutSubnet = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/; + + const matchWithSubnet = ipAddress.match(patternWithSubnet); + const matchWithoutSubnet = ipAddress.match(patternWithoutSubnet); + + if (matchWithSubnet) { + // 带有子网掩码的IP地址 + // 检查每个组件的取值范围是否在 0-255 之间 + for (let i = 1; i <= 4; i++) { + const group = parseInt(matchWithSubnet[i]); + if (group < 0 || group > 255) { + return false; + } + } + // 检查子网掩码的取值范围是否在 0-32 之间 + const subnetMask = parseInt(matchWithSubnet[5]); + if (subnetMask < 0 || subnetMask > 32) { + return false; + } + return true; + } else if (matchWithoutSubnet) { + // 不带子网掩码的IP地址 + // 检查每个组件的取值范围是否在 0-255 之间 + for (let i = 1; i <= 4; i++) { + const group = parseInt(matchWithoutSubnet[i]); + if (group < 0 || group > 255) { + return false; + } + } + return true; + } else { + // IP地址格式不正确 + return false; + } +} + +export function checkNetwork(allSimObj: SimBase[]) { + for (const item of allSimObj) { + if (item.objType == 4 || item.objType == 3) { + continue + } else if (!ValidateIPAddress(item.ip)) { + return false + } + } + return true +} // 检查创建虚拟对象的IP地址是否正确 + +export function getNewDate() { + return new Date().toLocaleString() + "\t" +} // 获取当前时间 + +export function updatePacketLog(text: string) { + let logText = AppStorage.get("LogText") + logText = logText + getNewDate() + text + "\n" + AppStorage.set("LogText", logText) + console.log(text); +} // 更新主页面底部日志信息 \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/ets/pages/Index.ets b/ensp14ing/ensp14/entry/src/main/ets/pages/Index.ets new file mode 100644 index 0000000..863b5aa --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/pages/Index.ets @@ -0,0 +1,49 @@ +import { TopMenuBar } from "../components/TopMenuBar" // 顶部功能栏 +import { MiddleContent } from "../components/MiddleContent" // 中间控制区 +import { BottomMenuBar } from "../components/ButtomMenuBar" // 底部选择栏 +import { SimPacket } from "../classes/OtherSimObjects" // 自定义数据包类型 + +@Entry +@Component +struct Index { + @Provide allSimObj: any[] = [] // 仿真对象数组123 + @Provide allSimConn: any[] = [] // 仿真连接线数组 + @Provide TempConn: any[] = [] // 临时连接线对象数组 + @Provide isNewObj: boolean = false // 是否新增对象 + @Provide newObjType: number = -1 // 新增对象类型 + @Provide choseIndex: number | null = null // 选中对象下标 + @Provide isNewConn: boolean = true // 是否正在新增连接线 + @Provide isShowLabel: boolean = true // 是否显示标签 + @Provide isShowPort: boolean = true // 是否显示接口 + @Provide isShowInterface: boolean = true // 是否显示网络配置信息 + @Provide isShowTable: boolean = true // 是否显示路由/交换表信息 + @Provide allSimPacket: SimPacket[] = [] // 单次数据包传输的集合 + // @StorageLink("isNewPacket") isNewPacket: number = 0 + // @StorageLink("isNewPacketArrived") isNewPacketArrived: number = 0 + + // aboutToAppear() { + // console.log(String(AppStorage.set("isNewPacket", 0))) + // let isNewPacket: number = AppStorage.get("isNewPacket") + // console.log("hihihi!!!") + // console.log(isNewPacket.toString()) + // AppStorage.set("isNewPacketArrived", 0) + // let isNewPacketArrived: number = AppStorage.get("isNewPacketArrived") + // console.log(isNewPacketArrived.toString()) + // } + + build() { + Column() { + // 顶部功能栏 + TopMenuBar() + + // 中间绘制区 + MiddleContent() + + // 底部选择栏 + BottomMenuBar() + } + .width('100%') + .height('100%') + } +} + diff --git a/ensp14ing/ensp14/entry/src/main/module.json5 b/ensp14ing/ensp14/entry/src/main/module.json5 new file mode 100644 index 0000000..f2ff2c7 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/module.json5 @@ -0,0 +1,37 @@ +{ + "module": { + "name": "entry", + "type": "entry", + "description": "$string:module_desc", + "mainElement": "EntryAbility", + "deviceTypes": [ + "default", + "tablet" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:main_pages", + "abilities": [ + { + "name": "EntryAbility", + "srcEntry": "./ets/entryability/EntryAbility.ets", + "description": "$string:EntryAbility_desc", + "icon": "$media:icon", + "label": "$string:EntryAbility_label", + "startWindowIcon": "$media:startIcon", + "startWindowBackground": "$color:start_window_background", + "exported": true, + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ] + } + ] + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/element/color.json b/ensp14ing/ensp14/entry/src/main/resources/base/element/color.json new file mode 100644 index 0000000..3c71296 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/resources/base/element/color.json @@ -0,0 +1,8 @@ +{ + "color": [ + { + "name": "start_window_background", + "value": "#FFFFFF" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/element/string.json b/ensp14ing/ensp14/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000..f945955 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/icon.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cd45accb1dfd2fd0da16c732c72faa6e46b26521 GIT binary patch literal 2041 zcmaJ?c~nzZ9u6@;0AXaYAVN(;Kr(@>EJ+}skOWf=BA~*l4us@ELY9{%0m5QX6pnb} z(jZF|S&pLAS}3BZAfeQSvJ_h>F2Q1PYqi?o5`;m_yjZdG$1v}l_wK#F^L^iMz2}uD z#K$>1dON~kFlWvhW+Jp=tuN9J`ZlM-rl4h+ij|^D0y9;4JOuz-EdVnB6i3R-0ulk9 zApi4zAQA>!N9@-o026$1@L`d124`3G5<@_m`0f)Ug_Ie~;HT2q<_a=HH> zDwTdfD^-cW-|_xWVP$f@93UhDN-#&khZ>jZXLTi~$0`7x3REP6pk%&^2|`c>DutjN zMJD4Zs6Z}{FOpd;*mo2zm(GzXRXiCV;4m3zNCYnu3Fy=i5;2An&Lp!#LP;bRD~1&s z%VH6UY+}r6YDgG+p34OJIZ{BTn&%4s=CT&#TBkuOhdeU@g(w#guoa*b^)73=XyI65 z7Swys6)YS}?1EeZ6b!-I+yCnIya^g0>-NLsLWd8t56GZ_S3r|ZGbR+mV2ErEb9J)X zIF!njY-D-7{qtF2(?nlQ$0}!pzt=}hc*m%%)0Jb#N_K4@IC-`Pi5DahPZN7N9rH;ol;Gc*>-Go@gXKTM{eP)iJj6CYTIi}B#zLKZYD@_;m zrXmXXsFq@~ou-z!9bHoM8*(hwl>X(zm)TDcdkF4lZm$1jP*HbnD`o1$g}_R#+bu2D zr%7Y8KdsaC-V*aem5#@*M%r^GPgu%P2e-BnBClhP2yoGFe40>);=}>{NONtkXQ01p z)OX^t2Ojhddot9eg0WTIVSTNBa}7V-^_pO595w|Hx9q?k4dMp@$G7PK*TD=y;ck6J zdGRB!_RAI2nR3%tO1IkdWp*bw*?<=pM_LZb30?!oK)s;En( z!#nnd9=cXJ<}+e{XLdx(q3&ikJISe?eSHHohk+pz+$6Cv{ytvc{QXmMn2XQ9U8rvt zrJdAn(0gpSD@N=yTrI_2^P#*zQg7MTp1)k(lv(*(KtUR6@M|2WB>2wRwC-h=wk6XF zPtSes*_JwI+^d>xW489MJw5R6=t5?{R zc|E8i?RL@p9)A3ZJAQOg`}+F;<_vnWA!KxR#g%jZ@y_1Qu#Uw)kFPw_xmZ?a^e*1{ zM|ImtqA|(CaDQ@Fyvcof`MN66&VI6m6gAyAXx`%cDx6BI{Bj#}V*Rn1(b~;Am)D2u zX7(027IO?Z2VYK^1vXXpoZ@AtH~N?0rYWwtyA15`6vEf6fk&;o-L;7zFt`5nk*iOy z`<918zB+k;EytI$FAXug)jk*e@e};4e9g__w4A5ev!!)H$yC@{?vsRqJ##X1R%xPG z&_R3oDi$MtTkVqfPj)HEUDx_7wd!y{8#1%$U*Dd0sK@=#6+!XlsE-s^1f5E`R9Wo71^b~mbVdU;Fw0LG~mUQg;xsX4QYRo3B@rH_=ry>DE8ef!c2ta8UcI#26# zF|`*4wtMHe@%#eGZw`#Yj|QWuB`eRD)b~)r9mM95p_JVG%-IdcbIX5qG#GpGD+IrS zEqxb1Rg&Dadk5#7t4j68I1f!@A$efp1?I%&d*56)yl!tkz!14<$0Od_&6cGw$WW0r zjSlQA7l*6;vgfhv!cR|RmAD$+w6j`rVf=-?-D@q>kOseUVSb*~jbAS^*1h?ZL)n(9 zDa}`4etXO6`}9;{k5E^N{rcfnV_(LPwsDg``wtyS*V<19c3!PGJ3Kqy9ksvkwbJ%Z z*N(fT0{e*Wji-Ck5!3YE0j|PZ@&z`v=kitWL$bqSt!e4bH!+(|Q)CZ30^nVPfkx{s zX{6of`p=BiPb@u@IyL!tRk>?qgBqCmo-Zlt!636g?z`s~zdfwuB7DXZHvV`Usp+%Z zo*&;Biu@MHE&2j+?j^o`Cr12u<>vOe=a&8a2hlcmFjJiDR>XnD4c4DAhZWCkiAgW{ E51q9-lK=n! literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji.png new file mode 100644 index 0000000000000000000000000000000000000000..1467d82eb87510ab58acefc0d09706b0c5f1dac0 GIT binary patch literal 5044 zcma)=^;Z;7)5qyvKtj5tq#GBcTwno(1!)N>X<-3rkflRfkS^(^Yl#JcWs#Il30aZu zk``W`_YZi^^TWM!?l1Ry&&)kDpP3jPh#G)|kpv413!tH{qWfSI9+o2!!Nb1S!6g1* zus`Ukfv{>unYXd9s9iNwUg-P2-Ou$gHZVd)!OGmozeR`Q^O0C%(`x0>AC@!N=oHP- z4?CzFgH=%F?4SB3*rTUqEtT0lle~kc4jQF7Y;=zH zMt(&-@BenE;bFFaGrPOs{LxkwtMiD_vH%-9OgfPIEiMN2o5Qjgo0S>t^oQvfb3`UO ziA6!qi8zk;b@L^lcMK+sN?y1G%K_zZ<0QMo(CRLMoUF`w*kDEs%Bonp^AQF47#1hs z2qUV?v=U7iWgnbO;Oj;YkB9b#p(VQ2apiz<(|ylYQNJ1fn@qtJ>iGD${T>^l53BqhdzhDkC>E8!rHD=jNa%L1qO@AXrVx^R8=l)>mYoCpv{k~&vmS{ouy zd)UlmLy(ea?ct@bxu|A{B0z0Q>~(3w>!sH9KnZ^SisVNCNk%Vz;N!=SOTK*hV($1O zz4n?Bkdcv50K2~%t2Jx09xZ8*1u$D!tc2Cq*H5+59BAz=E-f)HBfa!C*4CoiQoE+Q z86+K&WCa9BIl*!L4Yt`6l}2pB>(f`Av9YI=tesRpf2I=y2L=a!d%DQ%cT~?H{r^_{ zUW9g;tK9|m#c>~*^UyEPOBTA<5b{_zphLdc+KMs z^5Nv`voljE`s|@S!T+w~j|6zqY3l9z=g&BrxjRG=g~WgQVK_!}El0~f^+^2DW|u{f zw95jGz7a2aXXbT=tQUt1egl5ODB}`a9>%*CIxkGJ9KKu2EzR`79CA zm%@XZ zwSqt(yLE}=WBpJ{utT& zLrzi*h}Xi+l#OAQO^uF@o^fz;>Mm48Whla=I&WO*Wd4+U5->xdhdJTlcxu+%3cg1Q z{^w2hJ%Bv9+Wza<3x^g1_)PixB)yixW)hiGP0zX>!OgdqC3QH*E%_k0>&>VTE%C&Z zF&kC#h6TP}487Q&$niYbE&*4a`{@Sv8&ji=sKFwVd$`1`Y@B%a>ukL8iicilgZi`Tlt>YtlyaaK}NiU8+|l^1`}p82XA zRfUU-8_O!^8=NVT-n{~2;`%&i5yCJqR(<_o;64VcjflJSvjx})`U1>f6C;l6}iNG^1swd)Z0l#j3N-|f|D0@TIDL0g>$(kO(|Nt*}#xwJdn!J+XpTdN535-X0Ifoc{oR% zc1;!k4r5KI`;;a++BgE2&{`?9b#l_RXAti9VQ>gpMMi4Mf%Mw7Z*6ZUe29)*I4O%0 zehx7;k0h(Szy9imG$RK`z(i3L3thwbPRdg105l%{?P_m9cm>f0A*Iu zmc9BtXmAt_=HvH|6f#X)y}e=^uQt_Ymb=7?j0Ee?sU;rtC$NM(6%go+1TgJ^K%kR( z`bIA{6YT!kS;O4)bV74-pP9{l=9j!V#?I>Ie+I=3^Dttc@v+8Oz?(Ov|it(|yy6zt;J zEdwk9$Lr=R!dN-gASy~q^wIehjU?_IOG34%yyt$cX8Ia$qPEi>bABDuAv|+fU%b9} z(fTtD{hd}`@t(t0Na4c<4E_r2d&yyJx(KQ^Ts_-Xo^PEXMIa1_$jQ?P2nkzU_KO94 zE3b1xQ<9T8Ogen)3mY1!K5SHV_eAVI-w!O(fxA^UF}6b$zmH6A#uYeDu!Pv_vh8|* z+Yt#pEgXH0+@-u3F|xQ?ohT9vJWHla6XMJSq?Om!Ducl^g++5c^Yiow1R|$Ks4SP4 zmlw9Nz0FWv3&n%oS6^P*KzB@+l0l<9i?s^H%Mm0_snb%c6Q@XT&Wr0Trr%xuUZ{Fr z?x(Js6_6#e-WG&!ojj6hx1}E4Avcl`th_|VtIgWo7f(7q{}jD|s82;3^UtVhXmEI` zDtZe79@yZ7>6z;|g?zzR1IT|+Po~XzuI6HJ({X)>#rIxi-sfOx?0kQbZrFhmz~oMn5F7hS)y}T;`#>@^C1oA1xA#BE z9K*$#Rvi1_65_OWneLGxW-j53rH&xs@&XLpHSk-mnjT7am4&yZ)b3`)ii|~;#Ch%j zw9<+D!n<%dUEAvFBt{3G`mP~o^FQ}1v9m)QQ9m*}AJA*)Wf1V87U5RKmhh!La;Un$ z6(^FB%O4X_zWl3pS>62Sg&Cf3DMoTLYNcoB3)|P$O9s0iM)z;rSLwo6^@V%hvcJi4u1+`E7TSFdX+E<-MxSwlTN|H{nqrd9=uN3{FUb*V_rkT2 zrM5ldZB%73M)CrQp9mYCNfh4=7K`FP$)H>&gxf( z-z*;=AGhWPxC~&A0m{fE_kRrURitIi>M;odnqmaKK6E=|*VIjolW2DA*q;o$@zlnB zLcf7=F!c(nw20zI8OPw_mi<{kNYE?X%H!dMqksAld1beItT*`&e!dvgb6d-l9i2T> zeIvuvJ3ntMlpw7;B>z!uw`8B79 zo#nqMb5q3>=)!l?1^rf%fC_^)21Yez6E7XOc|AvSpI5Z9;6-eZ@vNB64Bp12%{Bs{XqK6n*Q&Tf`xYTB|v$q%7 z+B(&Aibk+sz@{mCArd|ZZv1hfc*QAYR?N&u?sB9w}IAi1(yr%W>ww`+J1l-y_)<^to?gL%?1|gzGXhW&Xn*2?H~NLKnXWYH{0Q_Z#Q3?-&wOTpLAL{IqgVN34BgH6DYcMb0Hq<1BygKn$G5K z7l$icWL6{zYq}JQi@3XUJ76gfjh2U&hT%X+Yf+S|D$L4pNK_AvM>d z4(HwJm)kE&74*s=|H57lr3^X^+z$u;MZDMUucDakg2BAJy`_1y^TzU_TjR^%<)tOf z%NuQwqaz1mD(RNb1Hj8Id;OufOzj2#jIx)P)UGpJ%I(2LX3EOS(3EZ=Dx)8Y{>$zj z1F@zL`AAekqJO?Vzk7I>v_fw+lwBnLEz&awC~f=w`}ar|Hmy@u;}S`6@dl{6y1J{M zU)zQR#<|lF*Sy_30^vpRBjb0}Ukj(N=P2T@Z;fAw$g|iZ~x7Y%;R8diROhJA#OwZOu{^m`WB`TDXhIaiv znXM+ic*sZt%?}(L929>2`n8X*+dSds+Mpyeunt$R^s=B%l#Q4eB{XYqIHxm}*(mE^ zZM~W_KR=)CJj-=#&#Yyng!XT1YoTP6r3fR4SMl-!d{JEA+VYis_ROa$(!9}@IRynpwh`<^lX%U7>rx?a9DH63=$f(A&~e3@@;1){gMwq#kEM=T5UV% z|J~uEN=>M$s-&0mJ%T^ft$f{@%A9igQHjNz~}R3R!gAj{DI19A@HfdBvi literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji_tm.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji_tm.png new file mode 100644 index 0000000000000000000000000000000000000000..e2d78d0041abeaff7b4a649fb3321c212f7139b7 GIT binary patch literal 3666 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 XHxJT{8L#^13xtxDR07qCn*{$Ka8Q%s literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi_tm.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi_tm.png new file mode 100644 index 0000000000000000000000000000000000000000..cdae40399940fa29b89b503fbd7b768c174d80e2 GIT binary patch literal 9634 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 IA_f8f1L}#DzW@LL literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi.png new file mode 100644 index 0000000000000000000000000000000000000000..cb99d04d9909c3ffd3711623777afa0145f62951 GIT binary patch literal 12094 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 b{Rv2Bx)D8VpZ5Bfxdli|D2P{z8V39aD!h~? literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/packet.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/packet.png new file mode 100644 index 0000000000000000000000000000000000000000..50a8ef046144a6eaaa029659285ed37dbf6d9b37 GIT binary patch literal 26968 zcmV)5K*_&}P)AK00b-s3=Fw>B}GB*P6`o`Q3?!5AThbPfB`pPWMKGq4MZ|9T-L>-4j14| zNi9wW(jS0Wr3h#_&`1#=TO=LA)&Q}SAZ!~DyS${J1jr5mv5P{2oPq2VAX_6HiJgSR zPA(_{sqX=@ZE|x;lM(J_;7QF34F=L2KrF*h%n-!j&ftXbfBqr{28*u@49pV{Vo5U@ z7`C@EFi6}&h^Z`KVBl|IVAysZA%+N(g2bXkun-FnGo__5Fnn6hz`z^Hz#x2qfq^R; z77#exrT})EJ3~GYrZeO)qyj}e8S)sC8T5cGBL)KoLk2Sd9)CVo->dpK001BWNklhPM3)RFGf5Il{*V@9CWYCY!mV!d8J>i+u8 zPn`Lk4dv5=KJ*AYapn&_13&Tize~>g*r9mh%#R(xr~7|2Bk)AbKbom{YRF?p;0b0t zb_9RN?|&@Jc&q~XqyYYo6X4Ia``vYlHNwEsTCX-Dk5>9_B_P6ioh&e|b-QTGniAI& zsl>0%gYQ5v@!P6yz0v(eOW$)&2hZkN2c7i}j61yIq33rosqetlD|cO9sTPrTSa%V*55_Zg@kC-#zEua-*UMuvMCagVuG!8U_RG-YNVf+ zKt6Zd?cGGG_jdHWm7dqU?>?Vt@^TSvuZz1~qOUGe{Wty4%HEucJorsA$yYVUs^f9Z z?`*bXwTkQWyPM}hKae8dH~%&Jb-SOza$sV+j(sqq4P%1>w%Cey-B<75vb`*pow?|1 zQqa$iXtCXfqS}yQF<*)@+dX~mx}CjNM}Nfv>N4m0a=KcSH>&1siD_tRjn^nng8)#&wdt*f}N zC_0@UZ;ZdUoaubEHsgZYTGe8i`@4AB!_SFUyx@3O40fFJz-J<1aaIJwBGRBTq9xs? zKWb8^E}>%4n=7Q&^3F8S5ck@m$ydqq!-bUO35 zeldL&>1ZrO!1}udMCep%U+Zi(H_PsdgZj5}oYhP{V=2~0U!#q>MlXe+d-@Wd&cl|P zkP;>|#QuCS-57y&!()^=&z=$6^OIVjjz20ayBz~n5$q=6)L&lbp7HmpSS(^OB~nV~ z8f?gu7t@h`PlN197Yn*2*{UZ(%uOy={~VG_jAILD&ezr3&GYi-&Ki!_Q-^ok0rqj` zwc5SxO0r6d$6DJ2dTVifFIF>w>UX|p1wd~@Q7_0qvOoH;)B-j6c8ZlaDzs%r2ouoz z)Or!|QgkZxAWqb7cj7l4T{tiV1&mmVP?w1VxDz7ql~xYSp{KdC0MM#v>v|r~GFnI! ztXNLvu_<)dtC;M}>DuOaYOL-t++Z>fJ~WXFE!_ii444e=rNxFN>a$5Sotqfk96NfG zFx$E~N~^ymNfi<)K`9Zj@7H&{Cl5TMqPkEhsS+_&oTcBf8@=IG5X3B3O-3KwbR}0gIwVhe&%K7Vqww+d}0$ z2*U2@V#Wf{qJ|Fjb$0oomCm>YwRHC{x?D zjCHKAt-rHKEwvlt--JYUoL~QYzUm6bb|o8xg~e5Adlwz9C*nRD7R6v->EG@T^?SFN zi@4{ydZhtb=~~9EYrdX|8MY32!^QQ$7Au60BDAgux)0~MI@iDNi}}r2v6!D1^Z8{l znO_wX;pxs`R9ZT=(NxB?F~utZ?`XNw3c0u~Q$;BWuawfTGN0O=a8)Ay@Y zw^w3NuiM%`uHkd}tn@jHktIYj6KB+f%=8{a#DcT_W$}{UQ)pz1BN50@|HMip9b2s< z_36cWGW$r2QtvUi)ic_NqM0}w_$nx!ql6Ov2;1PE!FttEe_KcTj_2~Puh%mM^mVEC zWJ=;bz7vgFcJpsEoldxiwrd)tjjZ7`{+sW7ov!zo>dgK9bnXdrcGjy|Pt1&W&}Z7t zeVp^(p%leGkCFb3^>3nfzg0ia^a}keF7=N-Gk&~}b{*^QXK4;;%Rqng{i)8Ux^LNS z4Ow3c!2;da`o7=pem5K*{r%DL^Z&PZbiDrP_kXRcKh~2zDta0!q{$qEgc#^j3^G*1 zG{n=Zi7gj%M1EJq3=GDiF}^8!ldEF>{ny3p)mO#kH@_K;FTVb}i{;z@Vo_WT$BV0C zHoq=b%UR+QjCF9K`e8g|&Ih!BTcCw%y`}5Adgs1lA7(3B3t?7`-yY1l_u(1@>C#?Y zjA;Ic1txPZ?#~dZgVajg&u1tDvBzMRN?+>Oh7!m_w%}z!h!tyB=UvA(E6awpMRS$g zPrD5n)7eZTVPx*9x8HqYIkiOld&Y0y_+zF8cXQr$-QKxVhk*^9qk$L-aF+2`8wGn> z8k4ow-?A9I{{27tm;dF8_c-?BX_F!CyJb(t1 zs2`Ui()P`HvAlj$oPY7B#pJu+{C8Jh|M`D8z4=^|q+=WLZf{%Mu$1mFZM_bn76D_$C>EV!dUI7=Ux{Vj6d(VSfB40l>+^s0 zfBk1xi+`v83(@AO=&5}Y>)-#Wbgu4Nw9plI0n9HYa{E0d?5248-JciV{nLL`y#2HP z^SA4ZuRb5n&x((quZ!m|WR4o?nt^zVuI=mEmTi5pIxVm2#6f4%WVQ_cnZk;Er$F-t zH!nx$&Oeyk7|c+-SSa^Dvj}3clLD3Ot-Cl%-6{}GL+(I&nOGs}7z3Y6tQ?vw}0^u|Lx1Go3B6q_0?y;_a`3}-P2zdZ(hGC2B$Ae zX2Ls!qogf^Jv6v|J-nD)6xVOQD9(QSkBiIS{^|c--2CSA)9yuaIvDHUtQZOw^!u6w zapvV>B4928((1wn-+c;Aap!?Vj$^w5xbORwVBQiYn5;9lNQ79~>d~!#Z-ra^>R}*| z61$MUV2w5ox0M7GpqGXqg>O75j)fl^}@Z+M*z0&#e z0YI?=XrqHx+UoLEarRe#TDb{atlS-d28Qpe0CCf&Sdt$w4C$H8y>y?M47YRmWeef5QR=VDCO zjSbA5JG#a6R)!sHaee?X)|y|DU6>xt#887nR^`v0ZO=X32$+;VYaJKE^+>Q*x{HX? zI+dO~m+xaWo677e#;GxSCK|e0To&Ja{b&F2YWT^2`r=o=ULSpSDot~u#axYGSJ#KA zgc_F9V)Ev<#n~7CkIsMocLwX%#b=+4iW3>eJFRIko88EiB7(h{>LpTq20dXO5p!22 z6l~6LXDR6mcQiUn!}ApJSAYTmcm0#WPfF+TaAF2Ct21{npM7*$jBys_D-M7=oxxGW z7L-^iKW&?0yTPaZ)}`&p**J0A1crw+V9++snHrwnT~}H&VK*`BhPY2I;S96(4%Chx zvGr~n|NNePPBGs%Q{Tkl=_bnR0vemhC~-5kUt@IiOq{t>^k(hiVm2-&XTSZQFTVSW zzdd{*Wl#&C-PK}9`b~Ex>gq~VDgvV@uFqtF`=S`X`pw@TuHF`(e$p>~^=VhOU|}PP zf|l6vV!G1HWMdH_9rcci*66v!!BBQ@*#hy#u)^(ORa0!OLZIY{MF|XIhRSWemkp80 zJczSu5CmjA7zZ6{YtJks+P9TsZFz9X4K)T`Y@$9IL|j({%0QY;V#Z3kZprFrMdsmR z-fhm3vF7ZmbL%En&6b&HvzQ9*+ylq2BgWO00^70kVmqAKN6cMG)wVz}TzD$K#e6;~ zuH|>Qnu)<^Y*A-M$MO)OcJZKPrYFkBX_RfNNVUMR5=_ zu0gmm){E;mUlsGKZ~nsMmk55qfP3v>v6?K4*|oUzQV*C4s6T%p^U7&4 z(7#r1V3;vb=Qyu*Q%}TNKVW`945Wdb7Rk9_^Ny_^_dhcUZ6-pd#X}YYt>~%Ep*d{m7Jj-R5M~Ax53er-|OQHH(O4CGE)RRI>;)*Ukc`$eyDs1ui0E;%GvRZHia5 zXmzJB@1dMIg3iF34UtwS>|K9*Es5(L-4yL>`7tifip#6B;$m_m$K9$pky3a%l#OGE zi+il_iFR>%+%I0;ToxDK|5blIITJ!p(Xl%50Z8$Y#(+EKKuRciDpXHqI232ziSl zT3=k-{_d{idui!kXCh2|UYw0Zf2+&lcqAGhi4jU_wB(z?8I9?6)IAlvoy+QR{U5Xz zlYdYwq{nsSZ%R$jOw4uRQVQivn0PD?-{fzsR})Q`9-~)Lle~%rYs!_RwQh^OXv7Auj}d@#2!jRMXwpI zZ1RC^M04j9lmyq)>W?E#h~;^gLX@Mz@_EyAkXx;Dvt4-s)1g}bN(FFxn>*Q%z2#@O z+;K5mz1K%8i$3%Qn`djy!C4l*1zO4c$KoW6!ZzaTE79CV zaWg%aNBLaWOp7Bad@^$36tsk2VjU6F9qQjmA)`_e|NZuA`43iCS_ne9`RE?uED=HW zyZvG$&N^St`W-oHPo((GfEV(KFL0*x*2Pdn-5*R9sip>s`1`$n@%HShc>UGu;^yMK z`1JEXE_xryOW8V>WkanIIG+l*cl&azcv93EJa%-12?bMcL~NyzwYr=B##&(&7)}}Z zHsC1E38JPBn1ggnFvv{I4a{n#0xsG(`-S?R2rbSv(@!^GAY7}&U(z)@5rl&Fg zxE;dYYFz6v18CyJ8kU4ZiX+MM!}wUrIsPX}QDRv{0}FYWi`kpv^_PEEOm4m_uE*oz z*{ENtAEXlIO$s@F?a0MA_yp(msTBz z_Nfv4LrKfJ46CDP%bX#c)z;r_olgYNTN80@t*ke4eZOd(6ocnSBHp87CK2A!%Ei5^ zKW&e;y&0lp9AuKAvnYV}3gX1D1P41eX9GBp!co&t+(*ROT_&Vmze7hIt^Rj+Je=N|8IgzK2*Ph*uVxmhOr>z`O1OU|J95w7Mopd|?dP8 zs8sB@k?XLQgk!?&Ivg-w8F220oq5G$N#U`W^Rf5epX}bpl`x09oXI&i8()ecu8Wh?)8bgB-u_xTnxsAyV|`#de|UBq#zj=x z)?QWwoYW)7D^%GRHgMB!z4T}x5B)$Ul8coz(yt^Q7RASMjX(e7b8$|ogItIrsD`ba zixqHz7*)KF!HI)-!=he&_Sc9qw=!0LtbDvoxIe=IbMQfIh@N+lHH3DsC?9dZ{d5dnu7!6AB6$S6@fJCT6E zPI&!g@#Yngh&RRX+4G{KnCF2ML98L*poQF)9m4r!DPIyCvSG3cxDliqk!ltMP@1_-py)B)KP-#h@>% z7y(5i(U?NN35{6Danjdwh)zZ;Ok!a>&iz7Q_Csc=l`{cp+16C-AXRw~Y!Z^Ccy?#yjc+om-qHzjoS|$ym?O zEHB+$PzDdkbrYAWFHCqw6)@T!XXz|uWT*p3Ws!L{_6~djili&oH8YX#C+ia zscIpVayu;|E-3x~y0(*?7n~q}uhK(hJ-2!>C5y@f&m>z$D}rY~^z2})N4)>gcE5}J zOdL)s2?a0{bTB9W!KlR4CU1(1^WPRX*WbwzqR7kRZgC`UUVkWMa2dV}2R&H-3Ft@w zQ5|8{qXWpAYC0WhgJFhadWCKHTSPY_Ed@7f`J1zEHx)tW!V&4OdyQ)ozM)ytUyJUr zTMR|GN6I9)Q5fjun{Q-uUKY{;=yPjrLjSry3eWWWjCKSOSm;30lrBi>r%Q;^6WT z4nL98Whi(hCD52F$TN~KQET}e`GPj}`1cBKl%D2f4T$T}dhdT$3S8>d!%TV`CO~@v zY2%^ihno~1YJz-!*Ncz|ce5uk$^&3(#o;lP)#B=0(Bk47`5-RjIGc+btJu&;bF6rH zh}iJLPNzuo43^SR__M@?I`nsN5a|p15umlobk(%NnKL&`ZnJw6^9FeYQ3ou@ zm`N*F)(*IH3+_Cb%m1z<*|7pQC7PzXrN5MOy`x|yyN3}c>L~cj3gtEn3~xv_1$B^Y z@;b(T2sxXRB)nQKmb_^0d5!_y4<+{f9_u#u^QU*lyKB5Fu)7kpn2i;Ac`5hwr8u&% z@?fx(#X^KEv+YoN6iOahCAkulWniA#X5P1ptp{)fCm&xu@yt%B-gTU$gMeiK3DkYi=uy|fFyZ~DBZ>QG8!2!y#W}oVt(asH z^7-rE%4+eY81&m>(3=!5o})Ll?O21U%@i9Sik%Ds8?h`%s5BVmpax!!+8uQqjWH}L z8r36SHi$WyxHnVgh7D%%PGiRqrqJBF~ z>M1z)9{q%uOOP&M5MCTsCE941V4~n6|50qJjOlm;v5pK!$FhPbNC^&2NhUgPI2!5u z+ct7n5GRjmvxexs$NEQbp~qgP*c$~6U7ZVBTzqSed?bwgTrTPt z&lN4HnmBfbS?42&NR|&*z)GgvG78eOoBrj_RrNTaQD)h518mOiGLN`&0 zBRF4P98FB)%QxktYwecUFNn)Atah}-FJ!a;LRLL8L`2xa&F43&lq6f@YIUU-zAQ#< zrIHU7N1~3;5F;sgf7jeatZeGxE~iPtv{AINj&V0c*N=cae%L0|m|e_wZAzPV+zj)| z7#dT6AOms8GQFL@R)-cIfAlHE*FVjQ|qc}!p$?59pCO7X-HOfGiF-Cij) zfNWeVYaWhZq$LiI3Xhew06)E~lgcIRC?=xEZ}Q8J1v%#G^!QRKG~(oBLiGmElvO}& zUME;ZEsg}MXh*Kk#=?sVR%s-R!{~UNBM-5D)IaA%w`mUgVM*%4z0J%fOEV2waK4a& z*}pm$%p1sj%DhoTlYCG(t*bsMsQ&er|5(iVd-+CG|3ZQD1PvXFh>6*mPE<@N$A9xO z@kp1zRp^6jhX__K$>SuK5De`XlhLGlX}W%aq!)yt?0{>X3ZJ|3mZs1!MUMoY=E9vd zJ99FvjBH2s2I=Nh!5`3&BR#a~yec9HLk|RBY|TQPYp+%^|HKb&bIaZf6s^#vR5% z_yHwCTB>ESoKBQpC+2hhjh!KFr8@PL-ZdB~`psD)B0d+&l2apPmQ*G-URCKl)~_H= z!gER`pTdZ`jslj{X>~uM=`C zc-J^dk!+T@4vd-0`86&sg^|x+{Z?fn#gV1p4Ts89Qmn=BNIX_jS0yp6s0CQw%`n0Q zdwViMy6?0VMXMW@xDQOs;{9_KUX)vMAZxno1#7@&BIs*j=^KR!p0++wX0Ad=J0fc3 z6q0C)8cDH`05z7CWhzyWN|oikk8~bWZ{tTsk_R=XGIQ4L+wphAS%?G5Hrm0f2VRvG zYOV;$tMfO)$=}N&bt#KQN79u9)PV?EP=QcRqU2nY4`%fM$!Fr+&SmPsZ@VtqM$AoI zaL_>A=ccGTN6~0mEtHPc6Netz^083K+zYaB6`VpnJ7s=rF#98&G2yAIEH%j-XcQ6P zo3C>nj^NzQBM0*Tt`l+|7sD^pPfB~rW2W)5*5R7TnBS&?6mN?&#Uo#ye{b$QlD_l& z*^xN$j0&8(SP_!0psIj<6LFrGx^ZATWthwEV8nF}oQPVd+eE*Om>;l|?nAQsujz|` zmkM%P%EUvMKjn}6%Kb9Ys>H#3@m2vVB-R4_l~AiVSkm+9it9>mIRb*{hs=7KYI}K4 zeZU{zm!IMjN{pN=QC{Q@zDmkGU&ymJxqd4f@;Al#8(A&JXG(6Sj)h=_@=fi9wM$xo z_3Q$``bYso0X23X+h9iK!qDpuB9FxM9~aC3JYPiv001BWNkluO7Px&Xox9 zY$=|jrL5e^EK2QC)*yn8dQvn*?6P#kkTdpmqE5l`8;WVZvKrJ!6w>`E((Lv{Zwp3c z+A7U&p^-@P5z;G;eDPX@{I!C_zLnMDq8Q4wdMa3Ps#uGzEEsTNT+3bnwy{N#9~7UR zstG?cclDOtA7*St58F8NyG&Q!JMpw=snSfWFjX*R_&hLdNx>jvt|1+3LCxryR0?70 zJ{5qJ`Q7zC7*r$U+DM8Gn|WyF!4Cj2i8JJ=wx10tzPpaphsIS}v*JcfvBEg7&tDgB zzyC%U`Hf=L6>A~$+cOdJNF^!eGS?9SXS53^#e8bh9d2s{nU&?s-c5TGH@-J9Zv^Ml zAQz&9Ow>q!76f=#S;Ya-QX%hTDo4rdh;V@&Y`umOvQXUYLPbKZ<{cHQSrx}Bc-~c= zkB)5N%9NCdqv}6+I@Tw9eGrq~qo`v8Q`^3p#`aO(zjre~AM_~>6jEVAhworQ%Go1x zStF#gynXehAco9u%I7?i8TItES3ExvM^+t`g)AA4#7VX4_&ZQV&`93)?LBm`Bxdi? zLUxK)(g)?tRVNvN6beX^q?M7R91;&L?E)uGOI&=plKXqC>gp(X;^Id=McrYiG*!mV zN3Q#vlMZ5NoeaQ{wesDlIL$pIRy<}o_{T9 z@rAhZ8&$e$xg@~RNOdg~SWmGB7ki+qI-0db`8R-|h`F zelW}onZ+WjwGFu7XgEAjI@>XVg25KEGS7)CkesjrddSLgeJ%@!YWQ|WCvvXH{m!O0 zaA|vu_4&+k0z~BXwF27haK2D~fx?dwG*u($pDG)D5A8N*Hs)pVOUYKb z*fV+cFu~2IZmltumaJ2^*Qn~+aWuqC6Lz*1liNJ;@e#?PR;;1=HK;E+v7ppc47bZT|rkXQx z;jt1Z=OW(Wv7iXm)@7rvHUj#cCfS{x_ZSPaO)iyaEM@Of``O@i?MV-LrfQteo+1J*C2#JHtu5<*y`PZ9C!pqugX1@p&7}D8JwRK*)m10=tPh`5wG;yG2l1ab>7r zx}f4}i12s8$P;GH#ShC)*m`LV+aafH!ON~h3@+si6vR&^!`1byxE5zw$l8H+-d8Cw z~FL+yKC#`!xvEL1IigRwMT_1v1(W4FG{xdbZs;4 zBEUdW)==JD#~)4;*p0k!_BX?H6BUHj-CszD<(X27Ul$< zX5Ud^<|g}&qV1+Fg~&yF;z{|Qz|4sW8y}~*5!2^V@q6rlT^-$pv{x5D7ZJEnOQ$pD z!E0R1GKh;_9R9~+z(@X#|Is0=24!&kVUxG1?PBMwO_uY&QXLIHK6S@4BXjslTtuxp zRl5nop6cINr3~1)Xm}!G*VYsrMRAoyoYB-3W8k{}*rZ+agAQe>l}&fKFHw^r!xT$F zq=f&#b4DozFefvRJZZIH@y!w04ry{|YLr;0h^@LebCeM4(H2ViCUIIKRCxWR_6gz4UXWMk=afcH#1MgHiHbqh^*CH!gKD!;r`gKTdNGja_^STy zZccHk4g7}F#NNq#2NTbRfi=)?;(j+eKw~xJ6~Aq$(!jD+?(#~DQ4w3Rfv)CM1!WT< z1u3Z}$BG04958|+OejeNYsLW%Z|6^K;goOB+_lCfHY_4Z<#C_0Hz`Y&^t@Y4X!DtY z)%SC>QfIYkF;8|RLIfEnMLD+{*K?W&*CBDeWKEX}y*q)yc$WpIZ$-#c*^#dmk9;XY zUd)y1e8JQ2Jf64LCXoa_{cq|3Ke7ivuA){hXXV>tLVMd^iUu7V(b zOUj1INhHaP=*@EKyZvs%%#EqoPpL_}yieQT!!;;}ly_qDpn?7^g!vS(B%+?&2sg{h zL2Aws8`>W~PZe?4Ks*G1_iu;uN8s+(_Qhbtf5~vEU{xNM`uNz!b(>Ic5qFwAbM`&s z3*k7GIazeMmJD}Gg80r$ix61*zalNo1mVY~l3DDa>;6TR&86}#-zwJP?9~@i{LbXr zlSlRBNdIK7mx8iR*SAvvLqDfvV9kCY{#Jkz zH9Abp5c1Y-!z%0>m@Ue(nnr5G2XR{&%10gerSIbU1{cngpEwhjI@+ux3dT7efZaS- zq|ezkCFnzs@J&FSC^{LTJpl*dYE-R{$Zw4m=1k$@3n_aPF&y8#aR&8BQ0(~lNDdLQ ze6*Jho68Hvd5PR1K%#GlTZK$lCAZHn+cZ=JcHUer`fjkr&fMTE4nfNk0A`JqZf1~8 zF=;|8Lc6oayO-{rzwBQ2R^kW-SM^bp8G`qRvO{+iIyzn4=$|G;`(Vs8q1Q~%u`(hQ z6W!59nxyow0Zi;WQ7N$%WJ;ngaU_GQG*ne72Ds!FVlDfWC%LiUlhTw$q|Y@1uVyY5 zUHIA?i)Y$G zT9Qo`34U#1=f49mR^VlB;^d9F(ZYmuWWk}n$$$>J{*vy2X+3#4U_WB^c}N;~09!J-Rjr4RD^AY4Je8Rs zctnDEm_EIou;Wu8P$uuw=Olv#Eqz(q}!`l~nJ6|cViQZDM(GP_A3 zR?W9l_7M?R9$&L*sVp8EE9=3G6$?p^ad>Dh)o>fMy3Kc(neUjy8136!`95>6Y`O%0 z^VKTP1u-C|(_~3Fmxk(+SYripbKYabTbnV*;F}UV-K!A~x@f-w$UL)$21l$ZX03Ql7(;m9uRi!hUdm^f&*OS4rpgOy8rM9qD$pVzNg>baF z_*^xERk*RI!sra3n77Xz*`@p1G?Bf%jZZCl6EX1?O?cFB&@;+Z`iKvyq*f;4?8!<> zWv%EA){wG%0(0pMb+&b;*c3Az(jk}njSY&jc$QNOqLMy4OeX3 z`+)h*>!n766*JhRx!ahTiQgRIdj=YX=PdiifgzZD4BfXXG!N*|9hdHh8OgC~&LSef z#cr{cAt<6(P{8RxGEqtKA>D_7r0KP)@>~d0ay?tQ2`UUvWVXY!r^V`PrrK0!pp7|! z9wk;4URA*w6D0qYRfKo*jxcLMAZcriJ{g5>{Y&g*Q`H3*f|sGN{jGf*Y%t&ao^v&!y;{QZlQhvRJtDSu?W9 z--7eyTqFr>fkzwa7{8&>?NiY2np<}+FVbWN&S<7I3+^OpMN;e~X2T7T9RKv8F46+; zW!@4TFu$nD-QOKCH&jHA)^u z&_xV7W0Q68Ka&h6l^PiXLTzaqxJ4)tx|$b3Nc7PBvlYU2V=`eNW^Bh+#90@DIfic4 z{Z2GhKjHk~d~zS{B+47&usyFFB4=;D6(N7=ePfPfM?MlxUeYJ+ZN9+%u4i`zv*6-H zy@A(J0OQ!kkOGQSzuhM2Lru)}d98EUO_&jcy$gCYX(N@iOCL)5JlOTbHkmnyGRsqJzs#Nwd0?M{rC@U8T#*g?l{G5Qs>LxSNWo zFGL7yIT}tyd40Kh@wCCs?JYF!rd9+BTH+wUfkey@H_>lV2qn%jMwuXzUDo+?v>c2h zYmA>^@!`H;RC0@f;3!6a%htA(Bg!4|DJn5<(ZW-}6BZCIUZ&#IePv#IrcpJ@-V8QF_gI*|;Ig4?hOJsb%xG-FSd8`7)_ ziC^sws$ghRf_f@va3bXS_Ij$!mCNG#tztaHF_prpFjDP^MWzLuk^P^=>5a<;5nR;6 zV-7oJ^`y8J5sV|eD9KwJaKoP*3gGFXqypGD0^Ng{vpbq!16BYhz`AP{k|fRqLgw-= z@e|r3hMiBp|MstBp?M>0+%8^dQ+1->R&wbp?mptc9Xv#VZ?8?QJ6UTK6}Q%Nw?nz0 zftXh^eSkqVg)#A|z0BqgUdGV53TxW+%S#*yrYf)<+U$4pFD)URUDE^oBq#PBe}A?GT;%OrGFb~j2HMC`NUlA-p5 z0Z~dbJ-eBPA&eQ<5|_*u<{TbR&R}owF~nS`2)pEp{wJc7>zX(VXWj^IEEF{K=9@p4 zoBA8ITXtk^OU7n6)O`a-ca@;<;**hfN4+Uty`B`OQfObkR3S>$5?O1JQ(UL3a%Zta zDve5Zj@zI&@mvCyk3Hrjfb#!qa4fNo~11ozS64SO;@+XVVvv8fx`8Mck!^6K7x z4$fZ}Ci}0C0SZVQRN;k{#e%+u>sqOyl({#a539sf${vS&AQ7xic%$xH5JHOMB*BMc zjarAyZxsfdoT(D2oEF`YHV}IL(m_d6aWbCA=nnd)ngq7XrLq#h0n=bw{NP~PNWG5| zkAml!vw#@^B!DBafvC^M=y)-~#ZvHq6JTOlDvXiMFx3vRTol*yHwxoagdi^Jp_mcX ze<5W0)>hU9Mct27w56>AlrwEAdUbKF%Jzy|R@GJWCo*?R#V$;SvHFtvP=8zU(G|17 zP23!uc~jiqgN)N98aeA=EZ>X<7$C?|P|bu@SLmg@>V4?D9)!kWV!rFhT4g4>jGw~| z$+|hTGrT#;lClx`Sy>@TpX>6(*Jj5-9$aBTxFO;&JrWK$pU$M*U5fxQ%N63tDvzt2 z`7W5&uHxg^J4N@9Rns4YSeQ&i%nBcU^}Q;r}Dye`;N0|299*3UwKYOpCfJ2X48~853mGh zY7}Rj<9Hw(67DR_*_Q?6dpRA>FK&v7HspLMu6+8@=dyr|^!%1WD)n3}4VDga#;_TU z&20h(NIFrAQ-0w5`p##yqs|mo^46g!+EM{Gh9imF8yEAPBuB^9hV*Q97Z4#|oKgGj ztKwWcpuRk%%8;alv^{5rP@qM9L1D#t(@V-~OYs;pxv!B>P$bahBXucXYgys(o3Z1+ILD9ezSE#^8NxQm#}rfsugxYK?h z^(kT{A9R!r-LkrGapG;)q=0l@PpkuGIC;;Oa??(=RRP2{nFPFG4{vj2v1b=BF;^5k z5W#Y8i*q@YRPh@fZH?QJHJ~jH_x$;)xKQTz^`#sR;*Q|B<7dAN>j367^&ND}y+}o@ zDswnJgv?Tb{ptH|f^CsU$%VmrmXaJnDkyb4i2y0R-&PGIhLQ^)YV8?vtvtQUx2nh~ z>&0CAg+{;c)ERC(%9Y)a=pLiAm@H)xmyAwWj>3UcE~;>=M^p^SxT$NOLS zvPuLzn4t4pn#M{uy50ody9LU?k!=d|5;m@fkcp0ih}kS0UN{_%oJlcI);3r&$LV5m zm=hUBGOtAMsx6BFJ19xiqjDjEUp)KBA(H1J=BYNK`R*%;^t1Eg*^AG$qteGt4uD_@ z2C~7-O0h^2r5mrK-pS!?W{4MJ(~ovo=x^J=)uu3JL^Pk$P*HzO$jWi@_Hx&ks%aq% ze;0y%$5180; z`?+@|%YzfJL+da{grG2GLFlX1jWDUiu?lNnjaS;9LglN(O;=J7monpxmg4EjGXNd@TOwS_%y%suP350YKl(kz&ySQ}sIp)Z z+Z{=Pu8KB#Q%+28GCeUl3as_I?^}CEe1h$nshf0GN7zzKFlWL3;#w?g?Iv)oy+h7a zW$03_>b}}>e4_q{__{s9FRx8|9c89>Xt?4vz}?P))%#eiD1SZjBBethwTO~CJq2#a z$S7h)g1HR)hyE}Ku1v?2MGq*ZwcQPhfJEX=KY zR5b}v&9=!GuMo!~V5RhTWxMX3oG24qE|?=~N6Tv9u@6T`{0nSqM**@j=OBvciR7E8 z-rHE*e{!RUzL}gJDq^Td7az&1XGIUfwbL;;CA4Q3w+BU%B>=P9BoC&b2z?JFl-OuY zhiv;RBG=;k#jk#;g`(1Cl4N}M`~@2!Ns$%d16$YvjfLS5YAb1xTpP4hlhAuC8ubXv z+cXlkWN-0dD#~;Pkw?OX83H(7QWvG31$c7uEACTR3Q!F{LCozf&YTD)nw#*6xm0Om z3?LpE7>_68=-_S+ocCC6UX$IOSP5pt?}~%Mk#X{{A06g5i+dkQP&sy^5?UdeA=2zL z$Zes&*wtwl)?+ZJg|3Jj?iNKHmwNu?o7WnPYncEA7bb!uSABU6@ErNg{q=-53-^r2?^MVd=n?&#X&0Rd* z?@AV+JTuwSAsVDS*T$~h1q*~^w6HKk!_HV#D4i?^5pwdT0y!XNmqu62^i248PVqt@iN2+Z5UysV z;)zTaSUKRv_I6RHItxM^BQ(9vR6;us0(Z9(A(mqoH^=S=N=$%z>z;{R{bT7F1V0TW z0odkwMFOy6QvxFgqyZu+-PQ$BPl!sgZ$K5011wNP{05z!M$Dh#^yhu58R&LdSV0$wvt4^oCggItyG6ZNk)9PBaau?y^C!g zDxbw|>0GBvS4&7!=n$8(@6~-3%vL-kQvd)U07*naRKPc0t+ongr12^VD6Mdd2v(A# z)E>i~w?K><73U5GtjUConKry;mqgNNqEK=mWULl_0?*l|0PIN93|4t)mWff!+}}CS zKF1fNOkt1o*4Og``5)(U-D;bJp8{Q%NfeX_PWxFOm2=g3Dr*#f!FJVo* zkFkNLh*kGFjzS-RMYgK>IviX%-8JBmBLfpR%U(rCz1`CHqZS=U)^938%!8X2xs^ZQ z#z2d2W*uchRG~OGPM9e6o|XQH0>sH=eCybqM=~`pvf706%o=yDICYJQ#q|*=Sv!n7 zA`_$Pyc#I8X-%w`csVC-a(VUp?D)I%fMXxLNYOj$gYT4t8%_;#f4%~EhXRjXlq7&1QK!QXt}83;CGrJG~XzEXtlPs zNK6tqglDgpw#A~2h*!8vGkZAXK*q>~rUabG3&7!qNlHP)tDIMus)53#ve;gV2zv@8 z4eJC76UnU*97-D4Tf}UpPaH@%c>H!GAXJDlX}hq9*&TDSx&_AGKectFJQx0Sj5euR*R+umu3qk-UV@d}HS7x`bE)pbLHQah6 zPUsl5Wauq){cz453!q|_nb&6BJ<;E7Vs5*NAofY;06QaC7ca?!^X4rHciL8}mD+V# zR6<}3EJO4*m(9MVdhg%D!jP>Qo)8j1ffs}?D#&N9^rz$Fp&^E8&HacdFEFo(dEUgmg#MLEUDXvoGZ=@X^^EQ^Bn|i# z&#t6xcPJ6bcE4m-%)l#(3X>>Z-zXm8=u|xu=i{EXuw_?i`Ca?VB?5`Vg9CZ;AHMqB zYBe(AbgG7Vf--jZn1SV^j>SSDjI)Ux8S=!fv>zaLq35U1^n12N2gk#fOTynup-k9(~+g|cfCJ8jlGQI@Sw zYP?WDUp#v$?u@DPrZ|7A7!J7`JEyXx6U(9wLoaR73DzQ~bk&X~@m4US(Rq(%^c$-Q z%+VndJRe5^b0?ZZNkwu*RSlLL2?b&#%bEOFk=VPIxsvyagmp9Gl#F6egony$t)_Zo zM;;1i)}wHqz=moxu~{#zF}8Pn4CEIpFD5+*D&Qf3=%J%x$Y032H-ZB^w5eFqx#Y5j%g;~08Hes9e4*J5;!uxQ={$FO5)*k^7J)P0G}^*^kTMK6BH zGXrx7r@c3wKHx&nv(1@UaB!Ie{gj9x?u%!2Lgo#n8B|2ZCPc@C+Z3aJRUm!EkN|wy z61A%#8QW*CGK8HZHFA3ID!*NNc9WP(6I_1zCQ+wlwDFR#J05z(omqQz#VvS~u%9L&37$iUIa_(_s%37`UFSnb?Oom% zY@kx+3?Xs3Tlrpxg(J-oc4(AC4x}Q%N!a=m`rbl(M&+B$Z5oGbzvg)>Eo}RBu^pVb zjD)Mdm+1+OcvB2i-#>m(ff%XWlnL2_PTvXi3tB7$?r((EfElRdeYvQC7Xv3UhSS8v zbfEreYl*Q;j7we;4>_BoF-B?H9&&#C_`QQCST_mJZeUO_Y*JqJHw23fpMHu#+Xl_% zJzO^&Vu7jXHT3LQ)&coaxwJaA^#BDEE3@iL7<n8Vf^Y4JEsvezv{P?%wG1SFfCucZ?;T6*||*p{nsN&>@CHVD>{wSpWq z;)TJ@M4bUIFy2SdOvDCw|3MFYj;ly(qS1=V{k*MtcoeHWVjtdtnDR#*WqGVeJ>{^Q zOKVhkSA8TJ3Q3;paue~Vk_8T{?O72gejNNfR44(l9hmZBFGKe2vj-^*B&Fof&)?+I zb|jgUGdHhHsu|v96yWBin3xJzS6xrUoK{HneYlP6feGf)QL_DPcjDrHD0woLCLvxn-T&0a9}NEshg&!yKl1U$|!&v`qorN(mcVLEN?j zW+Dg6N70kR4-u(cz~t*qrR+@<(uwldl~ZJ(ED`7K5lrstKC#+EDnwm~Y*0V!{n7Bp z@#e$cobSq6+mCz7;dhtJDusxa6q4NG5%*Mu6*x#r&J$;Wi^*MIT$&><6kX+b?G&_c zqPAuX-px=DP@Oq6KUO-^_8tI1Gl9c!H)vHfdP@P^_L#c;q^{eC1!04^W~gz{c%pcy zG?QX1uw~xJmQ3y*147U^sZY47bEQ$csu>^GbOSb%wR<32KB&F#{-*od!{7az^AjPG z9279iv1ev)Sbl#N<`i@j#FzZ0}x*-hz-JXl$DtkZ;}) z-iw`_FoJYk|LySOZaw4hXWw;a=sk~X|6T96>-VUOoDQ5vVL~YL>PQ6UE21YNt|PX> z7^+4cq2Nc#b;Lu++!<1+xOqnjy`kS^qRpJS2FOc-4npRC!N~83!K}FRy@@#)n3D-E zsA=Q44L$A}wr#&l;j;-&Hf8Fj2yh+}=JdHQ-%~#Y@#cBRUN&nIa{Fp_B}JmWZB;&Dxy;Zwnq_ zk!kg&!6c#camQotf85*O^>{w0HHi!FyC-7Efd|3O!kU#GU7-{LEfx#GMM+VL%h&>j zeVTG%C1Tyjo%5VNNJ?#~HCMAESC7&zA9jWiAs5`x$ro-415OW4Y$zr*5h(HmkycpcMCr8#wd4y}qFHoCAyL%ay+BZNZ z5A(xgYS=k5N53aB;oBq=8=7FQGeKGT^j?n1O2TbvleL9uuGTXu{5hH4`5Y1rgj}j) z3dbd8Sn;BeGg}9ssTwz-c*P@04GscN#8kS)A-)hD9c6%Eb#Mc0R}N**fkR4TUZ~Qh zitOm02w8Ed1gx{FffSTor2ya}#}Mm@&WiS-K@&EyIViWm1HkY1JnOP>7JL}Ef(Mht z*Lrcl2a)Iwx94X3LYKI+j#%*&s7qL=UPq zz0!{Qs&f&W#)R!S2kYM!!F3$P-|xUaoYLE)6mGDmAMBizFITAcf`8!I15V`NVdt2_ zy0xnM-17d4`VAidwBU1deBhknSV4L^eN9lY3jtFqO&EHH^GgNXJIeO%XlE`5*ZXFURC1sXuXO_o~c47`8nXNV^sm7B7K{ZSlJDVmq&Lm4PokBGcA|WR*3{itIC96 zS$6+3x2AWMTfzCW2Ji z>J0Q2F(=7&i{<4PvVthxR5s!kX3yFvL=}zAO2iaf@{RVY6H(inBscXydxkh5#q*dJ z0YwmPzfQzi(raa(4A~W;Zy$%*#d-4gyfY>dW>IBZ{7|1w$0icQYDyit_c`k-S#5xe zG3@s{2lEJS3~eEIn`b6)+xKx@EC;SZ%62txQf0!%EC~!;m??ahgYq(cYUJsfZp&MI zIaSIeY8SOb#{wbxyA&z`U8KM3#GJTgrVO8{!tcqfn;YTo`6?4svfotZxEOrz*KBZ~ zu#mZS^|zbF7F`(CrR7fK%LgNK^n|5R_#){v0)}G6hOs=JvIEQ3+^>~YvXTZ_D%^dJ zrsstet3Stoy#I3~z`d5pDV52gB`=wI0xt5`cr)GF@rYIr-ClX zDU_4Y{Ta)nYl46?JWo3^} zAyj^N#xY6MK=rl!zaaL&deN5rcbw6N=V~;;DQLRhTvynNXe+iLYaa2uZK5Z)B`KTf z#?s5Qf5>;t77q!y6wUu(&*pAsjUi>sjE;`@N+360`s1CFX#~;&317V&T+jEm$L~vV-l=zRwy?%zEA8X z!O%$JsA{`p8lrH-ErRl!nuoKpgJ4~-#4cqxYVK^T-+;4;wdyYtP~pmR;U^|*DANVu zoOG7K#K%uGUPc)98WEe~H-%Lre~PxIMU%L5Z7#O;WAAra8ihIN!yS(+)$oY6C#bMj zkxqoXYjko=4%-N9)uLXWY!b3Ev0>&)(swFiWKS7%rkU#5QAibEf_FJ!|8d`11}ntE zu)v36A~h@2V-`r1kRYS7s;V6L!Q}}0+=!Ea`4D=*)C%E)%76sXDZu2V03@dTy zT2~Fda@R6V#H5u~xANtRb)ptTDjk*BoF1U9*aDl(T^_4OF~)bHdXvy9wjIcfeLV;mgqprd3mk7&20;O_Cg zvt39{_?tR|0#7+G_X+N%LO~E`&s)@mlD`mvVzN^)Yx|d%6d6iz6{`;S%g^iAntQ|S zEVXrisxi2dOHlJpU9^pZ6pyHbmL@j+I?Sdq8t4h9EEauE8Y{+ZE8`fy#fiN&7~UH- zX2u3NN_!d$FQe@B`s`6Rk`~K7sx&E&2|+~od$1*k`NB){)_HF*ks5?l3I2B2;pnbA zxzAzGzVj|MJA1G0yms3KWy250&AA%WLGL%sMAfC((wO-TsNf8eWDIao89a5Ojj8en z7i>R4K_AV1UpoRIiOoc9Hm7u%{%d4FxB|)^rObGKWIQdr8PV$GHZf-+uF*rL`jVja zCTgTbW(`CgtB-*I3%jVd2%37t5OEaUqsFjOo`4o|OUE9#_)6r$%_ULkHjBe$WxW<} zoj08(w}+fcOpoC#QG)Bk9K0I0?ZKp2iwi!q2UwRLb6|sZ02q{E_jbTjmsAr$&M3N= zg7({@hn_-2SEqCv5rplhX*e8ScnB#+SWjGPU{1_2mcKp!g5F-3=W`IU8Dz7eL%l$3JYV^z;ku019v@QGAsp+@eWa(?yF$!xh@U;;RKzC z_|T|9rrq_XV-5~6=tQ7Gijg1y2YnVK<D@ZKB$IceJ5S z95DQv2j@T*9rZWf0dYQfQJ9My*y?=SV-_P5P*pGu@E97%L(V96q06$NCh&qPome-N z%SoLR4KFb|LFB~Y@TbB<70PgNAtQlyo1JM-mzjQ$8LgzP8rh}qQek{%OIzwz8!*LK zMEoSgl~(3bls|9xrZf4^6~!0X9?57OifZI-nV|JQOe~?y3TDW!Ldiflj7v% zanXKpY_YP^K6yk^u?8R*V`S24)Ikn^Z&OTW2L_SJs&SuLLaN;7y4}~HafkUa6p;Jy zXC^Bwl*|x+AJzyvQp7bo$FP(%%s4OVP}cl&mvx=C|6z zv7;^MFyVSvTwS-+4qiRc%uLT6W2Wn#7UP+A%bi|}k;5P(T$Fb!?pdUTQbqxB-Mr8U zFIS!K;i5Q1TBUweP)WHA$TD^@9({ zFmFGx3+532y&KbWSAuD&ZH5Q6zv~dO*+7Tc(AN@rhcUqORXgYBg*UQV2vR)jJu3z+ zRan2)OJ!efAy?FhCEMS6ghQNfGBIK=@}`mxriFCFVO%l4ZQ07NXXLr<^GI$6%>@UA{_Y+y&n3clQl=tV`{G7iB>u+4= z;8hmmfvg$eWyuoRI@_?j!vl6;dU_Wgw@lOzS7aksm87;%+zeYV3haol4wGyZcU}M7 zye|XpUDta9Sf1w?XF^9+k3;|1RB0`L#Z2MCN5|5=Xq{5`xEAj*0ZPN;lkeN|Vbs}( zB0f%{@CyEK;g^qI{DS?a|Ht{o?0;CYhqMgZJ&Ayh;KfuMAC6_YxSlBJ8u6ycr|w8C z>P@7HVqS@u3oOX|-=+Im3F*k`JyC=@gaI!b* zOMgs1Kjhq%a&WLU0?t6Ccw@M1(Mjk0xp{VMBL9z=hVY6Wc5tiRRp=?e1!5Z>ayHp# zzz?d+HQQ2Lvj{baee?VJ=L`W!ETv!h?8H&Gi$RJ6imjiGxkEmAsJ46#wWhkC&#_>` zq!)7_8#J`2`NW?%5m%myn6DMz(_NxS7R9CXF|2H#eDe9<6?I4Pyg$yv+;ie%qXOUbhPTInY`5XY-Zk*J(2yX1Mj0K(it_5 zjl|)~{vl=mG9I>Na8$D&@z8R8A3(&J_^VZtR)becBCfm6>~n{mJ6Tuqt-EmMR{Uq8 zK8&JiURXs+(3%=veU7$RRorooTk37zZ2x`;lu=66x6MI|szmi?WM^7xs{0;FYS6;A z&()-CR5{XZ^4i%FL9iKPfiVIdu24J=P-lE2<|+I0QvYt&?0WT!zxep~{<;5t@aZ4e zR3}SzZb;FcjIWC4{pZGB6PeqF!_(r~=f5tFUj6#N{r2X&|4KY{z((a_z%sQFgDlt~ z&O4IxV~7QWOb2qh++KAQYlb_9W}FI7o62P00uQmc12DWr)`?`vKM zkr19(5mO?Ho%0_C{d@pNY~-(p$d|A#91wf2|gy=yY6?R2*j&pvIQ7IY~Di9)l*BvpT6-Hx08wn9ih9zo17gMG11clD1sE8A9j zW^3FNQEtW(|28%WwaJU*f9%TC!2kdU^GQTORB`;gxY0Jqi@~RtpZ>Fd^6BUQ;=eUL{^ehjvrYyH zd6)4j=hk=Isu5njt8Zb`P0qHC`Uv(JiGzojRnXC%nsNJyF+6y??XZp- z*!eq1aJJO`93G8~^Q&`nc~lE4b1*?FDZz(Axi{8f~=3%S&MYp>=8@)U|>-^>4o1cIGpIxu6TCKSBgaU%cCwdetkd!g zHqEwV>x97(V~i^z+(y*(-|Ix1i96TK&exShpPpMM`p~7K-E#~FE@B?VVSu|3_=u`M>msf9vBv`0M}Vmw)uH6vZdMFNS*}TmYsXVRchrQ0#ui(Hc*`RHtOGTb{}p zgBb+?js|z8@?77mpvRly`r9vx%dfsFmT$i=I#+N0*81wz-&sz+`*#=1$4;F`J0_z{PNRdBH*qHEat( z*B-m61^I{e`b1(7jhbM>#0eekShE|~Kbz4qkDReqwflWkA0AeJehFHuu`1~@l#)nc zR-W);s-YGQRR1()%8@XImgB1DF!1EfNgz0&L5#6=Ga4R44N7DxuJv!G+o%OWmMLe7 z6UHXm@lNjdIlZ4?pL`A1^Lu%%KEo+s{Rngvt7AQ1u@3&uvBN4+(35ceUV->;6zB2h z3N!w)-97r#-tfh$El0;M|9KJdKwC-=UWmX)#Y6#03l)@snEMzmROT&n=GJ8Vg&r&H zA!1%GaTSt>g*drX(=L^#r8Z6_iWL>t8s8Kx?WsMzc&$jMH{#9{VVPrb7pxi;F3W#s z`zSM&xg0|rIfDdP3nitx38sxL$6n5)acxFUH6O8;vkO}FyBesZ5$AU2XWYe^;ZRF9 zir0B7C#2u{cZ);TzDLwPMrSxWmS-!CZ+#A$eMn3uJbuZZ$lq0vSKP60yzYX0xgERa zviW=rdhOO2c%aZx=o@dJ=wBtiildhzU?r1uMEjI=LyD-p*P4uOF%QB@38@&!M4S%= z;S~?JPAs}?4@LpwpdVb>3V)E*LSAXOZ&&7IJuMj!TC>@ieBoris+I*- zJFisO|5P*{@W;DBiG#^U69s38Ibxh}B`+@IL=lKjFvA4rfru4fMpb2-GmEAMNn)S5 z-3s8{qHVt|VgLOUb%ZIATpRAz=9$X<87>jGTaVvms$J*=5`f4d?gyM%8NifaN869P z6u?|A*hG)%t#-~MyX)*XCJDMtL91IYnhKpEuiKv?e8bwY!>Un#55%lEQHK&UctjR- zWlV^K3v8aau?eihe?g6vRRKU~3lX&B`#^bI3wkV*t-N(JmI7pLJYkO%^zAxwUZL3x zgGdgd%NQ@J%%C4^n~dEAx-o4BS^{>?{zHC99C4o*zYFs|=J%?phZ^?+;~pv*f*_NQ zcxZCKBkqe>m65u&dbk&%Wb7mk!>oQ~X?ddUrpbIP=|O^mN5fWCWgw`6n__PtCl0 z1fF2V-DC8lzT&Ykx?yK$i9!UFJmyqEM`W=l13t1vK18?bc9Hft+FQB zvZWA7vQ{XHEY)wEb2{JOAK&wRuj_rE=e@7{{@mN=ey`_xlk9BF_<1CG*x1mL!?jn!jg+b4^2 zLetRJR&Wf70P@|_0nrI$mNgrjo*|v=i@{@Q06%OXj;Ie@ebfR3;QaN0E}GV0YqAM8 z2zNS?f_03val%C6F))9ip#eaT4rc)nuryx)oe)B#!s+_JKXKu#{hnA22>4TlhSvxF z6%^Xq4q!r}U;$bnuqp-&)&gk5KoBhrZB2C*02B;`sDYts5KUDG1g;5%L(~C(UqF^O zihlsy0b%;LFV>qrFo;GY!`0Nn!^1)0>L3y&Pz?fu!S*nqP*s+ODm8*g^QEg2sV9FU zAh1*n1xKdgNJPLMqOTt*jHVA{Mfz6?1oA(yMC#vVViin{?n_pKfWUhx{Z_QL{@IO$Y>u zG)8KgAdz6ODcJawj)s=$Z(9Tj6Gp%iX}@j#|6_aVUv2l;Kp?X`Bd`?Q8LYo4g+u`S znKc~u@3CnAE8gF>{{J3}&cE8Kv4T+S#R^=}c2KzrMNn9F+khx=F}i|`Z{v!A;f zo3N&hY>qhPM1TFslQ-4LMdIhmr+ckEAWLQ}$bjCZe0XSBNyEsx@W>%w{_Hv}emPB) zOoHjD5ZtXSIb=|>s7#{F^~74>>3x2~*)FrfZ3hTsJmWQo0UC^b(hgMVUGey}I^`OR zJu^iexYqb9XYyKaUsL!%^ul|?UlF^%LWN}fh@4X2Rg}O2Ak&BgV5c-mSXIKwizyZg z4==`Py(>jdxzBp%%;~5u$Tt=5dv;+WT!=c;CU*OKQJKjx>TF2)F~Oe8RnB6fwWc@b z!di|+3AbqpJ7Si&73MeA5bym8cH?nt(nHrZfh7&(7PBdB*^ZImdWIkIIHY)et}Nx& zblijem4{wLlw~;&cMyb5cvf2)L9~_HT@?Z?=N7AKv6|Os(I8_tW#eFNHD<1^c}I;` ze`oNUY*9%Bf)|0f*mqE29%aG1lbrjM#5I$uoXqYLOw9jomV!J@Xk&#TAabV$+24tm z%H~Q-){JyQ(8|AaBsU5s(WlaDntP&L-(@BS)g=abYiVOgo4n@xuLOLw7PECNs&c8X zcwcld=-N(L#G8tfPqE9w&XHlCM#I=|fW5EW2r~l9OtZ;+*72g%&8q>n^)v{<5$$qC zS`cyd;Vp#C{-(XT`IPA(9SXq5_bZrwOP=4Ql6$7=O@vx zwW+izY#rZyMiRBv<5Z?U6B)i`tu(2=rD9Nno;lIQ-6(;5;l@2=(_yI`m_!#al`e41 zw7MI-5P8} ze0z>I-!^9QY7rQaQ^KKm>3KY4(bj(3LsDc=K+MjSjI%Q0 z(+=n;1sbNCI2KNrav{KzX#3a4B*la+I{(n;z{(WfIqn;HXfUoq5FbW zc{#XGMWo){qAt}Ta8&7bU}!;X@hJmZJOW-m;Ry`t8Fw7-^MTE%1b=QWlVEpaviS$O>DtWh z(PeqYhK#;(Or1UxqWlx}GvMbL3i-{9%0q$X)rShg;Cq*=UHPhfFK~)yQu8S%u3jI0 zXa{&ZIeyl`QV#n4i`8^*F|Ua8#MHYgnXkjUJ)zU7hE-wZ7p|{n9mH8do<=S z&BlzCvJr@4o*-?(9=gMLYlt4pn?L{#cw z>g^T^7wlws;bEb0?E;wF({$x7DHvZRBjlrfHqeS1WM#A|*iZ5fix;Gv2ARk+BMA?C z&RdGvN%)|~I5lp)>L+Abh+z(F=OvgLVOEAM)WmI`htv(5DL?km(X1J_xP+oN?(sVA zZ(h^BB{Ye(h4tiQshpe(Tt57)^v29cUx2de28vU>QQrOi$MzM^1gp^CfEuwBuI%!V zKipRCiwwG^)JMT5GWTXps${t!P0QlOn}9$hSW7u)HFevNU~s!oc(C@2&**_ODAV$@ z@*!{D#(8+*1v40rdvu82NH9~)*-4=#YP6kDZbe~@O&@hK*fqRhh#B7?cRJl93s!uI zd$HZw=ecl{(s_F(pRCORFA>_zK=vGLhAIJP7giSF5U(1y7v?+BFC&mY`q}NM(F*E_ zO+V4esPBCBE@La%M>?SMW+0Cj-b5PD)A+~=SSTb^y)D?fvibbS*#JhMR$54=_-D6O z={SjR-Q#yIK2I5IV8A`5t5sXy@-OSHe@&arq_0a);W=0{8P=e6uq*b>3I&Y(F`Aj}@y zKnKJ9xdz8d%dO4{E>!4jbw3$t{*ZbEyLD0>`!SED72;`Hsa3$K<1Cfa7|^0|X~xVk%&sS|#S{KfJOYz6q-M!qY` z+)WxSIX`42MlEplojlQ(T-~1aE_pNU{4ehSi;BW;sp3%}QP*w5=OZ?p5P6WzS9UBS zLw3VaH{Ver>WU!p>e$Dfp=R~3M;KpUa#$W(IdsNmcPWm z_WG8J;=@yp#wSmMn7L2BviDw*M{1)B22X2qtW^%WMG)-nih2&F5AJv1RhWO!8_#RE zz0;<|v$SO=GGgk+z6FHKOl`pDtTPrPD%UkKINz9I5%@BW$;A8;Bn;ibJPu&O~sBZFQewfjqZ8of% znY3?5KcI8|c%rA96`;H$S8>M{G2rp&``kF_`$@W znJEtXUEg`=h&$@gYgOjNQzv=Uk}&Ls(m6u%F4L`YyePS3oL4jqq0<~BnXmrUq_SE|?M~j!BdLw~HoaTstBb7=HK+WcPWE@_ cIQZCt9|&h0`tm_w@0Wx*(gtzY*ysHJ0mylrOaK4? literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji.png new file mode 100644 index 0000000000000000000000000000000000000000..58189e342a950d8ee355c8103faf707b3db10ba3 GIT binary patch literal 19448 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 E0mBdkk^lez literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji_tm.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji_tm.png new file mode 100644 index 0000000000000000000000000000000000000000..a2e634a80831ecd8118beeb4bea8bd601e77e2e4 GIT binary patch literal 16883 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 Z$`sQhws1=Hdf-6~44$rjF6*2UngH}d#{&QW literal 0 HcmV?d00001 diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/profile/main_pages.json b/ensp14ing/ensp14/entry/src/main/resources/base/profile/main_pages.json new file mode 100644 index 0000000..1898d94 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/resources/base/profile/main_pages.json @@ -0,0 +1,5 @@ +{ + "src": [ + "pages/Index" + ] +} diff --git a/ensp14ing/ensp14/entry/src/main/resources/en_US/element/string.json b/ensp14ing/ensp14/entry/src/main/resources/en_US/element/string.json new file mode 100644 index 0000000..f945955 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/resources/en_US/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "module description" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/main/resources/zh_CN/element/string.json b/ensp14ing/ensp14/entry/src/main/resources/zh_CN/element/string.json new file mode 100644 index 0000000..597ecf9 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/resources/zh_CN/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_desc", + "value": "模块描述" + }, + { + "name": "EntryAbility_desc", + "value": "description" + }, + { + "name": "EntryAbility_label", + "value": "label" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/ets/test/Ability.test.ets b/ensp14ing/ensp14/entry/src/ohosTest/ets/test/Ability.test.ets new file mode 100644 index 0000000..8aa3749 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/ets/test/Ability.test.ets @@ -0,0 +1,35 @@ +import hilog from '@ohos.hilog'; +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'; + +export default function abilityTest() { + describe('ActsAbilityTest', () => { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }) + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }) + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }) + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }) + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + hilog.info(0x0000, 'testTag', '%{public}s', 'it begin'); + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }) + }) +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/ets/test/List.test.ets b/ensp14ing/ensp14/entry/src/ohosTest/ets/test/List.test.ets new file mode 100644 index 0000000..794c7dc --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/ets/test/List.test.ets @@ -0,0 +1,5 @@ +import abilityTest from './Ability.test'; + +export default function testsuite() { + abilityTest(); +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/ets/testability/TestAbility.ets b/ensp14ing/ensp14/entry/src/ohosTest/ets/testability/TestAbility.ets new file mode 100644 index 0000000..9484761 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/ets/testability/TestAbility.ets @@ -0,0 +1,50 @@ +import UIAbility from '@ohos.app.ability.UIAbility'; +import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; +import hilog from '@ohos.hilog'; +import { Hypium } from '@ohos/hypium'; +import testsuite from '../test/List.test'; +import window from '@ohos.window'; +import Want from '@ohos.app.ability.Want'; +import AbilityConstant from '@ohos.app.ability.AbilityConstant'; + +export default class TestAbility extends UIAbility { + onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) { + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onCreate'); + hilog.info(0x0000, 'testTag', '%{public}s', 'want param:' + JSON.stringify(want) ?? ''); + hilog.info(0x0000, 'testTag', '%{public}s', 'launchParam:' + JSON.stringify(launchParam) ?? ''); + let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); + let abilityDelegatorArguments: AbilityDelegatorRegistry.AbilityDelegatorArgs; + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments(); + hilog.info(0x0000, 'testTag', '%{public}s', 'start run testcase!!!'); + Hypium.hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite); + } + + onDestroy() { + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onDestroy'); + } + + onWindowStageCreate(windowStage: window.WindowStage) { + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onWindowStageCreate'); + windowStage.loadContent('testability/pages/Index', (err, data) => { + if (err.code) { + hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? ''); + return; + } + hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', + JSON.stringify(data) ?? ''); + }); + } + + onWindowStageDestroy() { + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onWindowStageDestroy'); + } + + onForeground() { + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onForeground'); + } + + onBackground() { + hilog.info(0x0000, 'testTag', '%{public}s', 'TestAbility onBackground'); + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/ets/testability/pages/Index.ets b/ensp14ing/ensp14/entry/src/ohosTest/ets/testability/pages/Index.ets new file mode 100644 index 0000000..423b427 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/ets/testability/pages/Index.ets @@ -0,0 +1,17 @@ +@Entry +@Component +struct Index { + @State message: string = 'Hello World'; + + build() { + Row() { + Column() { + Text(this.message) + .fontSize(50) + .fontWeight(FontWeight.Bold) + } + .width('100%') + } + .height('100%') + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/ets/testrunner/OpenHarmonyTestRunner.ets b/ensp14ing/ensp14/entry/src/ohosTest/ets/testrunner/OpenHarmonyTestRunner.ets new file mode 100644 index 0000000..917d27a --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/ets/testrunner/OpenHarmonyTestRunner.ets @@ -0,0 +1,47 @@ +import hilog from '@ohos.hilog'; +import TestRunner from '@ohos.application.testRunner'; +import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; +import Want from '@ohos.app.ability.Want'; + +let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator | undefined = undefined +let abilityDelegatorArguments: AbilityDelegatorRegistry.AbilityDelegatorArgs | undefined = undefined + +async function onAbilityCreateCallback() { + hilog.info(0x0000, 'testTag', '%{public}s', 'onAbilityCreateCallback'); +} + +async function addAbilityMonitorCallback(err : Error) { + hilog.info(0x0000, 'testTag', 'addAbilityMonitorCallback : %{public}s', JSON.stringify(err) ?? ''); +} + +export default class OpenHarmonyTestRunner implements TestRunner { + constructor() { + } + + onPrepare() { + hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner OnPrepare '); + } + + async onRun() { + hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner onRun run'); + abilityDelegatorArguments = AbilityDelegatorRegistry.getArguments() + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator() + const bundleName = abilityDelegatorArguments.bundleName; + const testAbilityName = 'TestAbility'; + let lMonitor: AbilityDelegatorRegistry.AbilityMonitor = { + abilityName: testAbilityName, + onAbilityCreate: onAbilityCreateCallback, + }; + abilityDelegator.addAbilityMonitor(lMonitor, addAbilityMonitorCallback) + const want: Want = { + bundleName: bundleName, + abilityName: testAbilityName + }; + abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); + abilityDelegator.startAbility(want, (err, data) => { + hilog.info(0x0000, 'testTag', 'startAbility : err : %{public}s', JSON.stringify(err) ?? ''); + hilog.info(0x0000, 'testTag', 'startAbility : data : %{public}s',JSON.stringify(data) ?? ''); + }) + hilog.info(0x0000, 'testTag', '%{public}s', 'OpenHarmonyTestRunner onRun end'); + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/module.json5 b/ensp14ing/ensp14/entry/src/ohosTest/module.json5 new file mode 100644 index 0000000..4fc9701 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/module.json5 @@ -0,0 +1,37 @@ +{ + "module": { + "name": "entry_test", + "type": "feature", + "description": "$string:module_test_desc", + "mainElement": "TestAbility", + "deviceTypes": [ + "default", + "tablet" + ], + "deliveryWithInstall": true, + "installationFree": false, + "pages": "$profile:test_pages", + "abilities": [ + { + "name": "TestAbility", + "srcEntry": "./ets/testability/TestAbility.ets", + "description": "$string:TestAbility_desc", + "icon": "$media:icon", + "label": "$string:TestAbility_label", + "exported": true, + "startWindowIcon": "$media:icon", + "startWindowBackground": "$color:start_window_background", + "skills": [ + { + "actions": [ + "action.system.home" + ], + "entities": [ + "entity.system.home" + ] + } + ] + } + ] + } +} diff --git a/ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/color.json b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/color.json new file mode 100644 index 0000000..3c71296 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/color.json @@ -0,0 +1,8 @@ +{ + "color": [ + { + "name": "start_window_background", + "value": "#FFFFFF" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/string.json b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/string.json new file mode 100644 index 0000000..65d8fa5 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "module_test_desc", + "value": "test ability description" + }, + { + "name": "TestAbility_desc", + "value": "the test ability" + }, + { + "name": "TestAbility_label", + "value": "test label" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/ohosTest/resources/base/media/icon.png b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 { + // Defines a test suite. Two parameters are supported: test suite name and test suite function. + beforeAll(() => { + // Presets an action, which is performed only once before all test cases of the test suite start. + // This API supports only one parameter: preset action function. + }); + beforeEach(() => { + // Presets an action, which is performed before each unit test case starts. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: preset action function. + }); + afterEach(() => { + // Presets a clear action, which is performed after each unit test case ends. + // The number of execution times is the same as the number of test cases defined by **it**. + // This API supports only one parameter: clear action function. + }); + afterAll(() => { + // Presets a clear action, which is performed after all test cases of the test suite end. + // This API supports only one parameter: clear action function. + }); + it('assertContain', 0, () => { + // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function. + let a = 'abc'; + let b = 'b'; + // Defines a variety of assertion methods, which are used to declare expected boolean conditions. + expect(a).assertContain(b); + expect(a).assertEqual(a); + }); + }); +} \ No newline at end of file diff --git a/ensp14ing/ensp14/hvigor/hvigor-config.json5 b/ensp14ing/ensp14/hvigor/hvigor-config.json5 new file mode 100644 index 0000000..0c81a69 --- /dev/null +++ b/ensp14ing/ensp14/hvigor/hvigor-config.json5 @@ -0,0 +1,17 @@ +{ + "modelVersion": "5.0.5", + "dependencies": { + }, + "execution": { + // "daemon": true, /* Enable daemon compilation. Default: true */ + // "incremental": true, /* Enable incremental compilation. Default: true */ + // "parallel": true, /* Enable parallel compilation. Default: true */ + // "typeCheck": false, /* Enable typeCheck. Default: false */ + }, + "logging": { + // "level": "info" /* Define the log level. Value: [ "debug" | "info" | "warn" | "error" ]. Default: "info" */ + }, + "debugging": { + // "stacktrace": false /* Disable stacktrace compilation. Default: false */ + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/hvigorfile.ts b/ensp14ing/ensp14/hvigorfile.ts new file mode 100644 index 0000000..f3cb9f1 --- /dev/null +++ b/ensp14ing/ensp14/hvigorfile.ts @@ -0,0 +1,6 @@ +import { appTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: appTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins:[] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/ensp14ing/ensp14/local.properties b/ensp14ing/ensp14/local.properties new file mode 100644 index 0000000..0350976 --- /dev/null +++ b/ensp14ing/ensp14/local.properties @@ -0,0 +1,9 @@ +# This file is automatically generated by DevEco Studio. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file should *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. +# +# For customization when using a Version Control System, please read the header note. +sdk.dir=D:/Huawei/OpenHarmony/10 +nodejs.dir=F:/Huawei/node \ No newline at end of file diff --git a/ensp14ing/ensp14/oh-package-lock.json5 b/ensp14ing/ensp14/oh-package-lock.json5 new file mode 100644 index 0000000..ea0c500 --- /dev/null +++ b/ensp14ing/ensp14/oh-package-lock.json5 @@ -0,0 +1,20 @@ +{ + "meta": { + "stableOrder": true + }, + "lockfileVersion": 3, + "ATTENTION": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.", + "specifiers": { + "@ohos/hypium@1.0.11": "@ohos/hypium@1.0.11" + }, + "packages": { + "@ohos/hypium@1.0.11": { + "name": "@ohos/hypium", + "version": "1.0.11", + "integrity": "sha512-KawcLnv43C3QIYv1UbDnKCFX3MohtDxGuFvzlUxT/qf2DBilR56Ws6zrj90LdH6PjloJQwOPESuBQIHBACAK7w==", + "resolved": "https://ohpm.openharmony.cn/ohpm/@ohos/hypium/-/hypium-1.0.11.tgz", + "shasum": "fa799d273fa7d921701578c5e7084849354a4af0", + "registryType": "ohpm" + } + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/oh-package.json5 b/ensp14ing/ensp14/oh-package.json5 new file mode 100644 index 0000000..0d57d0f --- /dev/null +++ b/ensp14ing/ensp14/oh-package.json5 @@ -0,0 +1,13 @@ +{ + "modelVersion": "5.0.5", + "license": "", + "devDependencies": { + "@ohos/hypium": "1.0.11" + }, + "author": "", + "name": "ensp_fourteen", + "description": "Please describe the basic information.", + "main": "", + "version": "1.0.0", + "dependencies": {} +} \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/LICENSE b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/LICENSE new file mode 100644 index 0000000..4947287 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/LICENSE @@ -0,0 +1,177 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/README.md b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/README.md new file mode 100644 index 0000000..762e757 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/README.md @@ -0,0 +1,219 @@ +
Hypium
+
A unit test framework for OpenHarmonyOS application
+ +## Hypium是什么? +*** +- Hypium是OpenHarmony上的测试框架,提供测试用例编写、执行、结果显示能力,用于OpenHarmony系统应用接口以及应用界面测试。 +- Hypium结构化模型:hypium工程主要由List.test.js与TestCase.test.js组成。 +``` +rootProject // Hypium工程根目录 +├── moduleA +│   ├── src +│      ├── main // 被测试应用目录 +│      ├── ohosTest // 测试用例目录 +│         ├── js/ets +│            └── test +│               └── List.test.js // 测试用例加载脚本,ets目录下为.ets后缀 +│               └── TestCase.test.js // 测试用例脚本,ets目录下为.ets后缀 +└── moduleB + ... +│               └── List.test.js // 测试用例加载脚本,ets目录下为.ets后缀 +│               └── TestCase.test.js // 测试用例脚本,ets目录下为.ets后缀 +``` + +## 安装使用 +*** +- 在DevEco Studio内使用Hypium +- 工程级package.json内配置: +```json +"dependencies": { + "@ohos/hypium": "1.0.7" +} +``` +注: +hypium服务于OpenHarmonyOS应用对外接口测试、系统对外接口测试(SDK中接口),完成HAP自动化测试。详细指导: +[Deveco Studio](https://developer.harmonyos.com/cn/develop/deveco-studio) + +#### 通用语法 + +- 测试用例采用业内通用语法,describe代表一个测试套, it代表一条用例。 + +| No. | API | 功能说明 | +| --- | ---------- | ---------------------------------------------------------------------------------------------------------------------- | +| 1 | describe | 定义一个测试套,支持两个参数:测试套名称和测试套函数 | +| 2 | beforeAll | 在测试套内定义一个预置条件,在所有测试用例开始前执行且仅执行一次,支持一个参数:预置动作函数 | +| 3 | beforeEach | 在测试套内定义一个单元预置条件,在每条测试用例开始前执行,执行次数与it定义的测试用例数一致,支持一个参数:预置动作函数 | +| 4 | afterEach | 在测试套内定义一个单元清理条件,在每条测试用例结束后执行,执行次数与it定义的测试用例数一致,支持一个参数:清理动作函数 | +| 5 | afterAll | 在测试套内定义一个清理条件,在所有测试用例结束后执行且仅执行一次,支持一个参数:清理动作函数 | +| 6 | it | 定义一条测试用例,支持三个参数:用例名称,过滤参数和用例函数 | +| 7 | expect | 支持bool类型判断等多种断言方法 | + +#### 断言库 + +- 示例代码: + +```javascript + expect(${actualvalue}).assertX(${expectvalue}) +``` + +- 断言功能列表: + +| No. | API | 功能说明 | +| :--- | :------------------------------- | ---------------------------------------------------------------------------------------------- | +| 1 | assertClose | 检验actualvalue和expectvalue(0)的接近程度是否是expectValue(1) | +| 2 | assertContain | 检验actualvalue中是否包含expectvalue | +| 3 | assertDeepEquals | @since1.0.4 检验actualvalue和expectvalue(0)是否是同一个对象 | +| 4 | assertEqual | 检验actualvalue是否等于expectvalue[0] | +| 5 | assertFail | 抛出一个错误 | +| 6 | assertFalse | 检验actualvalue是否是false | +| 7 | assertTrue | 检验actualvalue是否是true | +| 8 | assertInstanceOf | 检验actualvalue是否是expectvalue类型 | +| 9 | assertLarger | 检验actualvalue是否大于expectvalue | +| 10 | assertLess | 检验actualvalue是否小于expectvalue | +| 11 | assertNaN | @since1.0.4 检验actualvalue是否是NaN | +| 12 | assertNegUnlimited | @since1.0.4 检验actualvalue是否等于Number.NEGATIVE_INFINITY | +| 13 | assertNull | 检验actualvalue是否是null | +| 14 | assertPosUnlimited | @since1.0.4 检验actualvalue是否等于Number.POSITIVE_INFINITY | +| 15 | assertPromiseIsPending | @since1.0.4 检验actualvalue是否处于Pending状态【actualvalue为promse对象】 | +| 16 | assertPromiseIsRejected | @since1.0.4 检验actualvalue是否处于Rejected状态【同15】 | +| 17 | assertPromiseIsRejectedWith | @since1.0.4 检验actualvalue是否处于Rejected状态,并且比较执行的结果值【同15】 | +| 18 | assertPromiseIsRejectedWithError | @since1.0.4 检验actualvalue是否处于Rejected状态并有异常,同时比较异常的类型和message值【同15】 | +| 19 | assertPromiseIsResolved | @since1.0.4 检验actualvalue是否处于Resolved状态【同15】 | +| 20 | assertPromiseIsResolvedWith | @since1.0.4 检验actualvalue是否处于Resolved状态,并且比较执行的结果值【同15】 | +| 21 | assertThrowError | 检验actualvalue抛出Error内容是否是expectValue | +| 22 | assertUndefined | 检验actualvalue是否是undefined | +| 23 | not | @since1.0.4 断言结果取反 | + + + 示例代码: + +```javascript + import { describe, it, expect } from '@ohos/hypium'; + + export default async function assertCloseTest() { + describe('assertClose', function () { + it('assertClose_success', 0, function () { + let a = 100; + let b = 0.1; + expect(a).assertClose(99, b); + }) + }) + } +``` + +#### 公共系统能力 + +| No. | API | 功能描述 | +| ---- | ------------------------------------------------------- | ------------------------------------------------------------ | +| 1 | existKeyword(keyword: string, timeout: number): boolean | @since1.0.3 hilog日志中查找指定字段是否存在,keyword是待查找关键字,timeout为设置的查找时间 | +| 2 | actionStart(tag: string): void | @since1.0.3 cmd窗口输出开始tag | +| 3 | actionEnd(tag: string): void | @since1.0.3 cmd窗口输出结束tag | + + 示例代码: + +```javascript +import { describe, it, expect, SysTestKit} from '@ohos/hypium'; + +export default function existKeywordTest() { + describe('existKeywordTest', function () { + it('existKeyword',DEFAULT, async function () { + console.info("HelloTest"); + let isExist = await SysTestKit.existKeyword('HelloTest'); + console.info('isExist ------>' + isExist); + }) + }) +} +``` +```javascript +import { describe, it, expect, SysTestKit} from '@ohos/hypium'; + +export default function actionTest() { + describe('actionTest', function () { + it('existKeyword',DEFAULT, async function () { + let tag = '[MyTest]'; + SysTestKit.actionStart(tag); + //do something + SysTestKit.actionEnd(tag); + }) + }) +} +``` + +#### 专项能力 + +- 测试用例属性筛选能力:hypium支持根据用例属性筛选执行指定测试用例,使用方式是先在测试用例上标记用例属性后,再在测试应用的启动shell命令后新增" -s ${Key} ${Value}"。 + +| Key | 含义说明 | Value取值范围 | +| -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | +| level | 用例级别 | "0","1","2","3","4", 例如:-s level 1 | +| size | 用例粒度 | "small","medium","large", 例如:-s size small | +| testType | 用例测试类型 | "function","performance","power","reliability","security","global","compatibility","user","standard","safety","resilience", 例如:-s testType function | + + 示例代码 + +```javascript +import { describe, it, expect, TestType, Size, Level } from '@ohos/hypium'; + +export default function attributeTest() { + describe('attributeTest', function () { + it("testAttributeIt", TestType.FUNCTION | Size.SMALLTEST | Level.LEVEL0, function () { + console.info('Hello Test'); + }) + }) +} +``` + + 示例命令 +```shell +XX -s level 1 -s size small -s testType function +``` +该命令的作用是:筛选测试应用中同时满足a)用例级别是1 b)用例粒度是small c)用例测试类型是function 三个条件的用例执行。 + +- 测试套/测试用例名称筛选能力(测试套与用例名称用“#”号连接,多个用“,”英文逗号分隔) + +| Key | 含义说明 | Value取值范围 | +| -------- | ----------------------- | -------------------------------------------------------------------------------------------- | +| class | 指定要执行的测试套&用例 | ${describeName}#${itName},${describeName} , 例如:-s class attributeTest#testAttributeIt | +| notClass | 指定不执行的测试套&用例 | ${describeName}#${itName},${describeName} , 例如:-s notClass attributeTest#testAttributeIt | + + 示例命令 +```shell +XX -s class attributeTest#testAttributeIt,abilityTest#testAbilityIt +``` +该命令的作用是:筛选测试应用中attributeTest测试套下的testAttributeIt测试用例,abilityTest测试套下的testAbilityIt测试用例,只执行这两条用例。 + +- 其他能力 + +| 能力项 | Key | 含义说明 | Value取值范围 | +| ------------ | ------- | ---------------------------- | ---------------------------------------------- | +| 随机执行能力 | random | 测试套&测试用例随机执行 | true, 不传参默认为false, 例如:-s random true | +| 空跑能力 | dryRun | 显示要执行的测试用例信息全集 | true , 不传参默认为false,例如:-s dryRun true | +| 异步超时能力 | timeout | 异步用例执行的超时时间 | 正整数 , 单位ms,例如:-s timeout 5000 | + +##### 约束限制 +随机执行能力和空跑能力从npm包1.0.3版本开始支持 + +#### Mock能力 + +##### 约束限制 + +单元测试框架Mock能力从npm包[1.0.1版本](https://repo.harmonyos.com/#/cn/application/atomService/@ohos%2Fhypium/v/1.0.1)开始支持 + +## 约束 + +*** + 本模块首批接口从OpenHarmony SDK API version 8开始支持。 + +## Hypium开放能力隐私声明 + +- 我们如何收集和使用您的个人信息 + 您在使用集成了Hypium开放能力的测试应用时,Hypium不会处理您的个人信息。 +- SDK处理的个人信息 + 不涉及。 +- SDK集成第三方服务声明 + 不涉及。 +- SDK数据安全保护 + 不涉及。 +- SDK版本更新声明 + 为了向您提供最新的服务,我们会不时更新Hypium版本。我们强烈建议开发者集成使用最新版本的Hypium。 + diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.d.ts b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.d.ts new file mode 100644 index 0000000..8a501ef --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.d.ts @@ -0,0 +1,140 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export const DEFAULT = 0B0000 + +export const when: when; + +export enum TestType { + FUNCTION = 0B1, + PERFORMANCE = 0B1 << 1, + POWER = 0B1 << 2, + RELIABILITY = 0B1 << 3, + SECURITY = 0B1 << 4, + GLOBAL = 0B1 << 5, + COMPATIBILITY = 0B1 << 6, + USER = 0B1 << 7, + STANDARD = 0B1 << 8, + SAFETY = 0B1 << 9, + RESILIENCE = 0B1 << 10 +} + +export enum Size { + SMALLTEST = 0B1 << 16, + MEDIUMTEST = 0B1 << 17, + LARGETEST = 0B1 << 18 +} + +export enum Level { + LEVEL0 = 0B1 << 24, + LEVEL1 = 0B1 << 25, + LEVEL2 = 0B1 << 26, + LEVEL3 = 0B1 << 27, + LEVEL4 = 0B1 << 28 +} + +export function describe(testSuiteName: string, callback: Function): void + +export function beforeItSpecified(testCaseNames: Array | string, callback: Function): void + +export function afterItSpecified(testCaseNames: Array | string, callback: Function): void + +export function beforeEach(callback: Function): void + +export function afterEach(callback: Function): void + +export function beforeAll(callback: Function): void + +export function afterAll(callback: Function): void + +export function it(testCaseName: string, attribute: (TestType | Size | Level), callback: Function) + +export interface Assert { + assertClose(expectValue: number, precision: number): void + assertContain(expectValue: any): void + assertEqual(expectValue: any): void + assertFail(): void + assertFalse(): void + assertTrue(): void + assertInstanceOf(expectValue: string): void + assertLarger(expectValue: number): void + assertLess(expectValue: number): void + assertNull(): void + assertThrowError(expectValue: string): void + assertUndefined(): void + assertLargerOrEqual(expectValue: number):void + assertLessOrEqual(expectValue: number):void + assertNaN():void + assertNegUnlimited(): void + assertPosUnlimited(): void + not(): Assert; + assertDeepEquals(expectValue: any):void + assertPromiseIsPending(): void + assertPromiseIsRejected(): void + assertPromiseIsRejectedWith(expectValue?: any): void + assertPromiseIsRejectedWithError(...expectValue): void + assertPromiseIsResolved(): void + assertPromiseIsResolvedWith(expectValue?: any): void +} + +export function expect(actualValue?: any): Assert + +export class ArgumentMatchers { + static any; + static anyString; + static anyBoolean; + static anyNumber; + static anyObj; + static anyFunction; + static matchRegexs(Regex: RegExp): void +} + +declare interface when { + afterReturn(value: any): any + afterReturnNothing(): undefined + afterAction(action: any): any + afterThrow(e_msg: string): string + (argMatchers?: any): when; +} + +export interface VerificationMode { + times(count: Number): void + never(): void + once(): void + atLeast(count: Number): void + atMost(count: Number): void +} + +export class MockKit { + constructor() + mockFunc(obj: Object, func: Function): Function + mockObject(obj: Object): Object + verify(methodName: String, argsArray: Array): VerificationMode + ignoreMock(obj: Object, func: Function): void + clear(obj: Object): void + clearAll(): void +} + +export class SysTestKit { + static actionStart(tag: string): void + static actionEnd(tag: string): void + static existKeyword(keyword: string, timeout?: number): boolean +} + +export class Hypium { + static setData(data: {[key: string]: any}): void + static setTimeConfig(systemTime: any) + static hypiumTest(abilityDelegator: any, abilityDelegatorArguments: any, testsuite: Function): void +} \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.ets b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.ets new file mode 100644 index 0000000..7e1796c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.ets @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import Core from './src/main/core'; +import {ConfigService} from './src/main/module/config/configService' +import {DEFAULT, TestType, Size, Level, TAG} from './src/main/Constant'; +import DataDriver from './src/main/module/config/DataDriver'; +import ExpectExtend from './src/main/module/assert/ExpectExtend'; +import OhReport from './src/main/module/report/OhReport'; +import SysTestKit from './src/main/module/kit/SysTestKit'; +import {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect, beforeItSpecified, afterItSpecified} from './src/main/interface'; +import {MockKit, when} from './src/main/module/mock/MockKit'; +import ArgumentMatchers from './src/main/module/mock/ArgumentMatchers'; + +class Hypium { + static setData(data:Object) { + const core:Core = Core.getInstance(); + const dataDriver:DataDriver = new DataDriver({data}); + core.addService('dataDriver', dataDriver); + } + + static setTimeConfig(systemTime:Object) { + SysTestKit.systemTime = systemTime; + } + + static hypiumTest(abilityDelegator:Object, abilityDelegatorArguments:Object, testsuite:Function) { + const core:Core = Core.getInstance(); + const expectExtend:ExpectExtend = new ExpectExtend({ + id: 'extend' + }); + core.addService('expect', expectExtend); + const ohReport:OhReport = new OhReport({ + delegator: abilityDelegator, + abilityDelegatorArguments: abilityDelegatorArguments + }); + SysTestKit.delegator = abilityDelegator; + core.addService('report', ohReport); + core.init(); + core.subscribeEvent('spec', ohReport); + core.subscribeEvent('suite', ohReport); + core.subscribeEvent('task', ohReport); + const configService:ConfigService = core.getDefaultService('config'); + if (abilityDelegatorArguments !== null) { + let testParameters:Object = configService.translateParams((abilityDelegatorArguments as Record).parameters); + console.info(`${TAG}parameters:${JSON.stringify(testParameters)}`); + configService.setConfig(testParameters); + } + testsuite(); + core.execute(abilityDelegator); + } +} + +export { + Hypium, + Core, + DEFAULT, + TestType, + Size, + Level, + DataDriver, + ExpectExtend, + OhReport, + SysTestKit, + describe, beforeAll, beforeEach, afterEach, afterAll, it, expect, beforeItSpecified, afterItSpecified, + MockKit, when, + ArgumentMatchers +}; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.js new file mode 100644 index 0000000..edecd8e --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/index.js @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import Core from './src/main/core'; +import {DEFAULT, TestType, Size, Level, TAG} from './src/main/Constant'; +import DataDriver from './src/main/module/config/DataDriver'; +import ExpectExtend from './src/main/module/assert/ExpectExtend'; +import OhReport from './src/main/module/report/OhReport'; +import SysTestKit from './src/main/module/kit/SysTestKit'; +import {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect, beforeItSpecified, afterItSpecified} from './src/main/interface'; +import {MockKit, when} from './src/main/module/mock/MockKit'; +import ArgumentMatchers from './src/main/module/mock/ArgumentMatchers'; + +class Hypium { + static setData(data) { + const core = Core.getInstance(); + const dataDriver = new DataDriver({data}); + core.addService('dataDriver', dataDriver); + } + + static setTimeConfig(systemTime) { + SysTestKit.systemTime = systemTime; + } + + static hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite) { + const core = Core.getInstance(); + const expectExtend = new ExpectExtend({ + 'id': 'extend' + }); + core.addService('expect', expectExtend); + const ohReport = new OhReport({ + 'delegator': abilityDelegator, + 'abilityDelegatorArguments': abilityDelegatorArguments + }); + SysTestKit.delegator = abilityDelegator; + core.addService('report', ohReport); + core.init(); + core.subscribeEvent('spec', ohReport); + core.subscribeEvent('suite', ohReport); + core.subscribeEvent('task', ohReport); + const configService = core.getDefaultService('config'); + if (abilityDelegatorArguments !== null) { + let testParameters = configService.translateParams(abilityDelegatorArguments.parameters); + console.info(`${TAG}parameters:${JSON.stringify(testParameters)}`); + configService.setConfig(testParameters); + } + testsuite(); + core.execute(abilityDelegator); + } +} + +export { + Hypium, + Core, + DEFAULT, + TestType, + Size, + Level, + DataDriver, + ExpectExtend, + OhReport, + SysTestKit, + describe, beforeAll, beforeEach, afterEach, afterAll, it, expect, beforeItSpecified, afterItSpecified, + MockKit, when, + ArgumentMatchers +}; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/oh-package.json5 b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/oh-package.json5 new file mode 100644 index 0000000..30a5883 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/oh-package.json5 @@ -0,0 +1,11 @@ +{ + "name": "@ohos/hypium", + "version": "1.0.11", + "description": "A unit test framework for OpenHarmony application", + "main": "index.js", + "keywords": [], + "author": "huawei", + "license": "Apache-2.0", + "dependencies": { + } +} diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/Constant.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/Constant.js new file mode 100644 index 0000000..13f6849 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/Constant.js @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * define the testcase type : TestType, Size , Level + */ +export const TAG = '[Hypium]'; + +export const DEFAULT = 0B0000; + +export class TestType { + static FUNCTION = 0B1; + static PERFORMANCE = 0B1 << 1; + static POWER = 0B1 << 2; + static RELIABILITY = 0B1 << 3; + static SECURITY = 0B1 << 4; + static GLOBAL = 0B1 << 5; + static COMPATIBILITY = 0B1 << 6; + static USER = 0B1 << 7; + static STANDARD = 0B1 << 8; + static SAFETY = 0B1 << 9; + static RESILIENCE = 0B1 << 10; +} + +export class Size { + static SMALLTEST = 0B1 << 16; + static MEDIUMTEST = 0B1 << 17; + static LARGETEST = 0B1 << 18; +} + +export class Level { + static LEVEL0 = 0B1 << 24; + static LEVEL1 = 0B1 << 25; + static LEVEL2 = 0B1 << 26; + static LEVEL3 = 0B1 << 27; + static LEVEL4 = 0B1 << 28; +} diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/core.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/core.js new file mode 100644 index 0000000..cfcb5f1 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/core.js @@ -0,0 +1,159 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {SuiteService, SpecService, ExpectService, ReportService} from './service'; +import {ConfigService} from './module/config/configService'; +import {SpecEvent, TaskEvent, SuiteEvent} from './event'; + +/** + * core service for execute testcase. + */ +class Core { + static getInstance() { + if (!this.instance) { + this.instance = new Core(); + } + return this.instance; + } + + constructor() { + this.instance = null; + this.services = { + suite: {}, + spec: {}, + config: {}, + expect: {}, + log: {}, + report: {} + + }; + this.events = { + suite: {}, + spec: {}, + task: {} + }; + } + + addService(name, service) { + let serviceObj = {}; + if (!this.services[name]) { + this.services[name] = serviceObj; + } else { + serviceObj = this.services[name]; + } + serviceObj[service.id] = service; + } + + getDefaultService(name) { + return this.services[name].default; + } + + getServices(name) { + return this.services[name]; + } + + registerEvent(serviceName, event) { + let eventObj = {}; + if (!this.events[serviceName]) { + this.events[serviceName] = eventObj; + } else { + eventObj = this.events[serviceName]; + } + eventObj[event.id] = event; + } + + unRegisterEvent(serviceName, eventID) { + const eventObj = this.events[serviceName]; + if (eventObj) { + delete eventObj[eventID]; + } + } + + subscribeEvent(serviceName, serviceObj) { + const eventObj = this.events[serviceName]; + if (eventObj) { + for (const attr in eventObj) { + eventObj[attr]['subscribeEvent'](serviceObj); + } + } + } + + async fireEvents(serviceName, eventName) { + const eventObj = this.events[serviceName]; + if (!eventObj) { + return; + } + for (const attr in eventObj) { + await eventObj[attr][eventName](); + } + } + + addToGlobal(apis) { + if (typeof globalThis !== 'undefined') { + for (let api in apis) { + globalThis[api] = apis[api]; + } + } + for (const api in apis) { + this[api] = apis[api]; + } + } + + init() { + this.addService('suite', new SuiteService({id: 'default'})); + this.addService('spec', new SpecService({id: 'default'})); + this.addService('expect', new ExpectService({id: 'default'})); + this.addService('report', new ReportService({id: 'default'})); + this.addService('config', new ConfigService({id: 'default'})); + this.registerEvent('task', new TaskEvent({id: 'default', coreContext: this})); + this.registerEvent('suite', new SuiteEvent({id: 'default', coreContext: this})); + this.registerEvent('spec', new SpecEvent({id: 'default', coreContext: this})); + this.subscribeEvent('spec', this.getDefaultService('report')); + this.subscribeEvent('suite', this.getDefaultService('report')); + this.subscribeEvent('task', this.getDefaultService('report')); + const context = this; + for (const key in this.services) { + const serviceObj = this.services[key]; + for (const serviceID in serviceObj) { + const service = serviceObj[serviceID]; + service.init(context); + + if (typeof service.apis !== 'function') { + continue; + } + const apis = service.apis(); + if (apis) { + this.addToGlobal(apis); + } + } + } + } + + execute(abilityDelegator) { + const suiteService = this.getDefaultService('suite'); + const configService = this.getDefaultService('config'); + if (configService['dryRun'] === 'true') { + (async function () { + await suiteService.dryRun(abilityDelegator); + })(); + return; + } + setTimeout(() => { + suiteService.execute(); + }, 10); + } +} + +export default Core; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/event.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/event.js new file mode 100644 index 0000000..1333a1c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/event.js @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class SpecEvent { + constructor(attr) { + this.id = attr.id; + this.coreContext = attr.context; + this.eventMonitors = []; + } + + subscribeEvent(service) { + this.eventMonitors.push(service); + } + + async specStart() { + for (const monitor of this.eventMonitors) { + await monitor['specStart'](); + } + } + + async specDone() { + for (const monitor of this.eventMonitors) { + await monitor['specDone'](); + } + } +} + +class SuiteEvent { + constructor(attr) { + this.id = attr.id; + this.suiteContext = attr.coreContext; + this.eventMonitors = []; + } + + subscribeEvent(service) { + this.eventMonitors.push(service); + } + + async suiteStart() { + for (const monitor of this.eventMonitors) { + await monitor['suiteStart'](); + } + } + + async suiteDone() { + for (const monitor of this.eventMonitors) { + await monitor['suiteDone'](); + } + } +} + +class TaskEvent { + constructor(attr) { + this.id = attr.id; + this.coreContext = attr.coreContext; + this.eventMonitors = []; + } + + subscribeEvent(service) { + this.eventMonitors.push(service); + } + + async taskStart() { + for (const monitor of this.eventMonitors) { + await monitor['taskStart'](); + } + } + + async taskDone() { + for (const monitor of this.eventMonitors) { + await monitor['taskDone'](); + } + } + + incorrectFormat() { + for (const monitor of this.eventMonitors) { + monitor['incorrectFormat'](); + } + } +} + +export {SpecEvent, TaskEvent, SuiteEvent}; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/interface.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/interface.js new file mode 100644 index 0000000..b5c185f --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/interface.js @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import Core from './core'; + +const core = Core.getInstance(); + +const describe = function (desc, func) { + return Reflect.has(core, 'describe') ? core.describe(desc, func) : (desc, func) => { }; +}; +const it = function (desc, filter, func) { + return Reflect.has(core, 'it') ? core.it(desc, filter, func) : (desc, filter, func) => { }; +}; +const beforeItSpecified = function (itDescs, func) { + return Reflect.has(core, 'beforeItSpecified') ? core.beforeItSpecified(itDescs, func) : (itDescs, func) => { }; +}; + +const afterItSpecified = function (itDescs, func) { + return Reflect.has(core, 'afterItSpecified') ? core.afterItSpecified(itDescs, func) : (itDescs, func) => { }; +}; +const beforeEach = function (func) { + return Reflect.has(core, 'beforeEach') ? core.beforeEach(func) : (func) => { }; +}; +const afterEach = function (func) { + return Reflect.has(core, 'afterEach') ? core.afterEach(func) : (func) => { }; +}; +const beforeAll = function (func) { + return Reflect.has(core, 'beforeAll') ? core.beforeAll(func) : (func) => { }; +}; +const afterAll = function (func) { + return Reflect.has(core, 'afterAll') ? core.afterAll(func) : (func) => { }; +}; +const expect = function (actualValue) { + return Reflect.has(core, 'expect') ? core.expect(actualValue) : (actualValue) => { }; +}; + +export { + describe, it, beforeAll, beforeEach, afterEach, afterAll, expect, beforeItSpecified, afterItSpecified +}; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js new file mode 100644 index 0000000..d10d15e --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js @@ -0,0 +1,85 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import assertNull from './assertNull'; +import assertClose from './assertClose'; +import assertContain from './assertContain'; +import assertLess from './assertLess'; +import assertLarger from './assertLarger'; +import assertFail from './assertFail'; +import assertUndefined from './assertUndefined'; +import assertFalse from './assertFalse'; +import assertInstanceOf from './assertInstanceOf'; +import assertThrowError from './assertThrowError'; +import assertLargerOrEqual from './assertLargerOrEqual' +import assertLessOrEqual from './assertLessOrEqual' +import assertNaN from './assertNaN' +import assertNegUnlimited from './assertNegUnlimited' +import assertPosUnlimited from './assertPosUnlimited' +import assertDeepEquals from './deepEquals/assertDeepEquals' +import assertPromiseIsPending from './assertPromiseIsPending'; +import assertPromiseIsRejected from './assertPromiseIsRejected'; +import assertPromiseIsRejectedWith from './assertPromiseIsRejectedWith'; +import assertPromiseIsRejectedWithError from './assertPromiseIsRejectedWithError'; +import assertPromiseIsResolved from './assertPromiseIsResolved'; +import assertPromiseIsResolvedWith from './assertPromiseIsResolvedWith'; +class ExpectExtend { + constructor(attr) { + this.id = attr.id; + this.matchers = {}; + } + + extendsMatchers() { + this.matchers.assertNull = assertNull; + this.matchers.assertClose = assertClose; + this.matchers.assertContain = assertContain; + this.matchers.assertLess = assertLess; + this.matchers.assertLarger = assertLarger; + this.matchers.assertFail = assertFail; + this.matchers.assertUndefined = assertUndefined; + this.matchers.assertFalse = assertFalse; + this.matchers.assertInstanceOf = assertInstanceOf; + this.matchers.assertThrowError = assertThrowError; + this.matchers.assertLargerOrEqual = assertLargerOrEqual; + this.matchers.assertLessOrEqual = assertLessOrEqual; + this.matchers.assertNaN = assertNaN; + this.matchers.assertNegUnlimited = assertNegUnlimited; + this.matchers.assertPosUnlimited = assertPosUnlimited; + this.matchers.assertDeepEquals = assertDeepEquals; + this.matchers.assertPromiseIsPending = assertPromiseIsPending; + this.matchers.assertPromiseIsRejected = assertPromiseIsRejected; + this.matchers.assertPromiseIsRejectedWith = assertPromiseIsRejectedWith; + this.matchers.assertPromiseIsRejectedWithError = assertPromiseIsRejectedWithError; + this.matchers.assertPromiseIsResolved = assertPromiseIsResolved; + this.matchers.assertPromiseIsResolvedWith = assertPromiseIsResolvedWith; + } + + init(coreContext) { + this.coreContext = coreContext; + this.extendsMatchers(); + const expectService = this.coreContext.getDefaultService('expect'); + expectService.addMatchers(this.matchers); + } + + apis() { + return { + 'expect': function (actualValue) { + return this.coreContext.getDefaultService('expect').expect(actualValue); + } + }; + } +} + +export default ExpectExtend; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js new file mode 100644 index 0000000..63635be --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertClose(actualValue, expected) { + console.log('expected:' + expected[0] + ',precision:' + expected[1]); + if (actualValue === null && expected[0] === null) { + throw new Error('actualValue and expected can not be both null!!!'); + } + let result; + let diff = Math.abs(expected[0] - actualValue); + let actualAbs = Math.abs(actualValue); + if ((actualAbs - 0) === 0) { + if ((diff - 0) === 0) { + result = true; + } else { + result = false; + } + } else if (diff / actualAbs < expected[1]) { + result = true; + } else { + result = false; + } + return { + pass: result, + message: '|' + actualValue + ' - ' + expected[0] + '|/' + actualValue + ' is not less than ' + expected[1] + }; +} + +export default assertClose; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js new file mode 100644 index 0000000..7fba0d9 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertContain(actualValue, expect) { + let result = false; + if (Object.prototype.toString.call(actualValue).indexOf('Array')) { + for (let i in actualValue) { + if (actualValue[i] == expect[0]) { + result = true; + } + } + } + let type = Object.prototype.toString.call(actualValue); + if (type === '[object String]') { + result = actualValue.indexOf(expect[0]) >= 0; + } + return { + pass: result, + message: 'expect false, ' + actualValue + ' do not have ' + expect[0] + }; +} + +export default assertContain; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js new file mode 100644 index 0000000..8ab4ac5 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertFail() { + return { + pass: false, + message: 'fail ' + }; +} + +export default assertFail; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js new file mode 100644 index 0000000..c5008e9 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertFalse(actualValue) { + return { + pass: (actualValue) === false, + message: 'expect false, actualValue is ' + actualValue + }; +} + +export default assertFalse; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js new file mode 100644 index 0000000..1e11b93 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertInstanceOf(actualValue, expected) { + if (Object.prototype.toString.call(actualValue) == '[object ' + expected[0] + ']') { + return { + pass: true + }; + } else { + return { + pass: false, + message: actualValue + ' is ' + Object.prototype.toString.call(actualValue) + 'not ' + expected[0] + }; + } +} + +export default assertInstanceOf; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js new file mode 100644 index 0000000..a74f4a8 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLarger(actualValue, expected) { + return { + pass: (actualValue) > expected[0], + message: (actualValue) + ' is not larger than ' + expected[0] + }; +} + +export default assertLarger; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js new file mode 100644 index 0000000..e847e6c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLargerOrEqual(actualValue, expected) { + return { + pass: (actualValue) >= expected[0], + message: (actualValue) + ' is not larger than ' + expected[0] + }; +} + +export default assertLargerOrEqual; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js new file mode 100644 index 0000000..17e84b0 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLess(actualValue, expected) { + return { + pass: (actualValue) < expected[0], + message: (actualValue) + ' is not less than ' + expected[0] + }; +} + +export default assertLess; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js new file mode 100644 index 0000000..f754f97 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertLessOrEqual(actualValue, expected) { + return { + pass: (actualValue) <= expected[0], + message: (actualValue) + ' is not less than ' + expected[0] + }; +} + +export default assertLessOrEqual; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js new file mode 100644 index 0000000..8d45d6a --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertNaN(actualValue) { + return { + pass: actualValue !== actualValue, + message: 'expect NaN, actualValue is ' + actualValue + }; +} + +export default assertNaN; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js new file mode 100644 index 0000000..ceac555 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js @@ -0,0 +1,23 @@ +/* +* Copyright (c) 2022 Huawei Device Co., Ltd. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +function assertNegUnlimited(actualValue) { + return { + pass: actualValue === Number.NEGATIVE_INFINITY, + message: 'Expected actualValue not to be -Infinity. actualValue is,' + actualValue + }; +} + +export default assertNegUnlimited; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js new file mode 100644 index 0000000..53a7bad --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertNull(actualValue) { + return { + pass: (actualValue) === null, + message: 'expect null, actualValue is ' + (actualValue) + }; +} + +export default assertNull; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js new file mode 100644 index 0000000..6e68c0e --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js @@ -0,0 +1,23 @@ +/* +* Copyright (c) 2022 Huawei Device Co., Ltd. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +function assertPosUnlimited(actualValue) { + return { + pass: actualValue === Number.POSITIVE_INFINITY, + message: 'Expected actualValue is POSITIVE_INFINITY. actualValue is,' + actualValue + }; +} + +export default assertPosUnlimited; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js new file mode 100644 index 0000000..7e2ca2c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsPending(actualPromise) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + return helper === got ? {pass: true, message: 'actualValue is isPending'} + : { + pass: false, + message: 'expect isPending, actualValue is resolve' + }; + }, + function () { + return { + pass: false + , message: 'expect isPending, actualValue is reject' + }; + }); +} + +export default assertPromiseIsPending; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js new file mode 100644 index 0000000..eb8e65c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsRejected(actualPromise) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + return { + pass: false, + message: 'expect isRejected, but actualValue is ' + + (helper === got ? 'isPending' : 'resolve') + }; + }, + function () { + return {pass: true, message: 'actualValue is isRejected'}; + } + ); +} + +export default assertPromiseIsRejected; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js new file mode 100644 index 0000000..48eaf78 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsRejectedWith(actualPromise, expectedValue) { + + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + + function tips(passed) { + return ('Expected a promise ' + (passed ? 'not ' : '') + + 'to be rejected with ' + JSON.stringify(expectedValue[0])); + } + + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + return { + pass: false, + message: tips(false) + ' but actualValue is ' + + (helper === got ? 'isPending' : 'resolve') + }; + }, + function (actualValue) { + if (JSON.stringify(actualValue) == JSON.stringify(expectedValue[0])) { + return { + pass: true, + message: 'actualValue was rejected with ' + JSON.stringify(actualValue) + '.' + }; + } else { + return { + pass: false, + message: tips(false) + ' but it was rejected with ' + JSON.stringify(actualValue) + '.' + }; + } + } + ); +} + +export default assertPromiseIsRejectedWith; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js new file mode 100644 index 0000000..20f236f --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsRejectedWithError(actualPromise, expectedValue) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + return { + pass: false, + message: 'Expected a promise to be rejected but actualValue is ' + + (helper === got ? 'isPending' : 'resolve') + }; + }, + function (actualValue) { + return matchError(actualValue, expectedValue); + } + ); + +} + +function matchError(actualValue, expectedValue) { + if (expectedValue.length == 1 && typeof expectedValue[0] === 'function') { + if (expectedValue[0].name === actualValue.__proto__.name) { + return {pass: true, message: 'actual error type is ' + actualValue.name + '.'}; + } + return {pass: false, message: `except error type is ${expectedValue[0].name},but actual is ${actualValue.name}.`}; + } + + if (expectedValue.length == 1 && typeof expectedValue[0] === 'string') { + if (expectedValue[0] === actualValue.message) { + return {pass: true, message: `actual error message is ${actualValue.message}.`}; + } + return {pass: false, message: `except error message ${expectedValue[0]},but actual is ${actualValue.message}.`}; + } + + if (expectedValue.length == 1) { + return {pass: false, message: 'When only one parameter, it should be error type or error message.'}; + } + + if (expectedValue.length == 2 && typeof expectedValue[0] === 'function' && expectedValue[0].name === actualValue.name) { + if (typeof expectedValue[1] === 'string' && actualValue.message === expectedValue[1]) { + return {pass: true, message: 'actual error message is ' + actualValue.message + '.'}; + } + return {pass: false, message: `except error message is ${expectedValue[1]},but actual is ${actualValue.message}.`}; + } + + if (expectedValue.length == 2 && typeof expectedValue[0] === 'function' && expectedValue[0].name !== actualValue.name) { + if (typeof expectedValue[1] === 'string' && actualValue.message === expectedValue[1]) { + return {pass: false, message: `except error type is ${expectedValue[0].name},but actual is ${actualValue.name}.`}; + } + return {pass: false, message: 'except error type and message are incorrect.'}; + } + if (expectedValue.length > 2) { + return {pass: false, message: 'Up to two parameters are supported.'}; + } +} + +export default assertPromiseIsRejectedWithError; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js new file mode 100644 index 0000000..855426c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsResolved(actualPromise) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + return helper === got ? { + pass: false, + message: 'expect resolve, actualValue is isPending' + } + : {pass: true, message: 'actualValue is isResolved'}; + }, + function (rej) { + return { + pass: false, + message: 'Expected a promise to be resolved but it was ' + + 'rejected with ' + JSON.stringify(rej) + '.' + }; + } + ); +} + +export default assertPromiseIsResolved; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js new file mode 100644 index 0000000..d5eb01e --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import isPromiseLike from './isPromiseLike'; + +function assertPromiseIsResolvedWith(actualPromise, expectedValue) { + if (!isPromiseLike(actualPromise)) { + return Promise.reject().then(function () { + }, function () { + return {pass: false, message: 'Expected not be called on a promise.'}; + }); + } + + function tips(passed) { + return ( + 'Expected a promise ' + (passed ? 'not ' : '') + + 'to be resolved with ' + JSON.stringify(expectedValue[0])); + } + + const helper = {}; + return Promise.race([actualPromise, Promise.resolve(helper)]).then( + function (got) { + if (helper === got) { + return {pass: false, message: 'expect resolve, actualValue is isPending'}; + } + if (JSON.stringify(got) == JSON.stringify(expectedValue[0])) { + return { + pass: true, + message: 'actualValue was resolved with ' + JSON.stringify(got) + '.' + }; + } + return { + pass: false, + message: tips(false) + ' but it was resolved with ' + + JSON.stringify(got) + '.' + }; + }, + function (rej) { + return { + pass: false, + message: tips(false) + ' but it was rejected with ' + JSON.stringify(rej) + '.' + }; + } + ); +} + +export default assertPromiseIsResolvedWith; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js new file mode 100644 index 0000000..749cab0 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertThrowError(actualValue, expected) { + let result = false; + let err; + if (typeof actualValue !== 'function') { + throw new Error('actualValue is not a function'); + } + try { + actualValue(); + return { + pass: result, + message: ' An error is not thrown while it is expected!' + }; + } catch (e) { + err = e; + } + + if (err instanceof Error) { + console.log(err.message); + if (err.message == expected[0]) { + result = true; + } + } + return { + pass: result, + message: 'expected throw failed , ' + err.message + ' is not ' + expected[0] + }; +} + +export default assertThrowError; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js new file mode 100644 index 0000000..61f092d --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function assertUndefined(actualValue) { + return { + pass: undefined === (actualValue), + message: 'expect Undefined, actualValue is ' + (actualValue) + }; +} + +export default assertUndefined; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js new file mode 100644 index 0000000..627fb3b --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js @@ -0,0 +1,138 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class DeepTypeUtils { + static getType_(value) { + return Object.prototype.toString.apply(value); + } + static isA_(typeName, value) { + return this.getType_(value) === '[object ' + typeName + ']'; + } + static isAsymmetricEqualityTester_(obj) { + return obj ? this.isA_('Function', obj.asymmetricMatch) : false; + } + + /** + * 是否是function + * @param value + */ + static isFunction_(value) { + return this.isA_('Function', value); + } + + /** + * 是否是undefined + * @param obj + */ + static isUndefined(obj) { + return obj === void 0; + } + + /** + * 是否是Node + * @param obj + */ + static isDomNode(obj) { + return obj !== null && + typeof obj === 'object' && + typeof obj.nodeType === 'number' && + typeof obj.nodeName === 'string'; + } + + /** + * 是否是promise对象 + * @param obj + */ + static isPromise (obj) { + return !!obj && obj.constructor === Promise; + }; + /** + * 是否是map对象 + * @param obj + */ + static isMap(obj) { + return ( + obj !== null && + typeof obj !== 'undefined' && + obj.constructor === Map + ); + } + + /** + * 是否是set对象 + * @param obj 对象 + */ + static isSet(obj) { + return ( + obj !== null && + typeof obj !== 'undefined' && + obj.constructor === Set + ); + } + + /** + * 对象是否有key属性 + * @param obj 对象 + * @param key 对象属性名称 + */ + static has(obj, key) { + return Object.prototype.hasOwnProperty.call(obj, key); + } + + /** + * 获取对象的自有属性 + * @param obj 对象 + * @param isArray 是否是数组,[object Array] + */ + static keys(obj, isArray) { + const extraKeys = []; + // 获取对象所有属性 + const allKeys = this.getAllKeys(obj); + if (!isArray) { + return allKeys; + } + if (allKeys.length === 0) { + return allKeys; + } + for (const k of allKeys) { + if (typeof k === 'symbol' || !/^[0-9]+$/.test(k)) { + extraKeys.push(k); + } + } + return extraKeys; + } + + /** + * 获取obj对象的所有属性 + * @param obj obj对象 + */ + static getAllKeys(obj) { + const keys = []; + for (let key in obj) { + if(this.has(obj, key)) { + keys.push(key); + } + } + const symbols = Object.getOwnPropertySymbols(obj); + for (const sym of symbols) { + if (obj.propertyIsEnumerable(sym)) { + keys.push(sym); + } + } + return keys; + } + +} +export default DeepTypeUtils; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js new file mode 100644 index 0000000..482e28e --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js @@ -0,0 +1,315 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import DeepTypeUtils from './DeepTypeUtils' +function assertDeepEquals(actualValue, expected) { + console.log('actualValue:' + actualValue + ',expected:' + expected[0]); + let result = eq(actualValue, expected[0],[], []) + let msg = logMsg(actualValue, expected[0]); + return { + pass: result, + message: msg + }; +} + +/** + * 获取失败显示日志 + * @param actualValue 实际对象 + * @param expected 期待比较对象 + */ +function logMsg(actualValue, expected) { + // 获取a的对象名称 + const aClassName = Object.prototype.toString.call(actualValue); + const bClassName = Object.prototype.toString.call(expected); + let actualMsg; + let expectMsg; + if(aClassName == "[object Function]") { + actualMsg = "actualValue Function" + }else if(aClassName == "[object Promise]") { + actualMsg = "actualValue Promise" + }else if(aClassName == "[object Set]" || aClassName == "[object Map]") { + actualMsg = JSON.stringify(Array.from(actualValue));; + }else if(aClassName == "[object RegExp]") { + actualMsg = JSON.stringify(actualValue.source.replace("\\",""));; + }else if(aClassName == "[object BigInt]") { + actualMsg = actualValue; + } + else{ + actualMsg = JSON.stringify(actualValue); + } + if(bClassName == "[object Function]") { + expectMsg = "expected Function" + }else if(bClassName == "[object Promise]") { + expectMsg = "expected Promise" + }else if(bClassName == "[object Set]" || bClassName == "[object Map]") { + expectMsg = JSON.stringify(Array.from(expected)); + }else if(bClassName == "[object RegExp]") { + expectMsg = JSON.stringify(expected.source.replace("\\",""));; + }else if(bClassName == "[object BigInt]") { + expectMsg = expected; + } + else{ + expectMsg = JSON.stringify(expected); + } + return actualMsg + " is not deep equal " + expectMsg; +} + +function eq(a, b, aStack, bStack) { + let result = true; + console.log('a is:' + a + ',b is:' + b); + const asymmetricResult = asymmetricMatch_(a,b); + if (!DeepTypeUtils.isUndefined(asymmetricResult)) { + return asymmetricResult; + } + + if (a instanceof Error && b instanceof Error) { + result = a.message == b.message; + return result; + } + + if (a === b) { + result = a !== 0 || 1 / a == 1 / b; + return result; + } + + if (a === null || b === null) { + result = a === b; + return result; + } + // 获取a的对象名称 + const aClassName = Object.prototype.toString.call(a); + const bClassName = Object.prototype.toString.call(b); + console.log('aClassName is:' + aClassName); + console.log('bClassName is:' + bClassName); + // 不同类型不同对象 + if (aClassName != bClassName) { + return false; + } + // 俩个string对象 + if(aClassName === '[object String]') { + result = a == String(b); + return result; + } + // 俩个Number对象 + if(aClassName === '[object Number]') { + result = a != +a ? b != +b : a === 0 && b === 0 ? 1 / a == 1 / b : a == +b; + return result; + } + + if(aClassName === '[object Date]' || aClassName === '[object Boolean]') { + result = +a == +b; + return result; + } + + // 数组 + if(aClassName === '[object ArrayBuffer]') { + return eq(new Uint8Array(a), new Uint8Array(b), aStack, bStack); + } + + // 正则表达式 + if(aClassName === '[object RegExp]') { + return ( + a.source == b.source && + a.global == b.global && + a.multiline == b.multiline && + a.ignoreCase == b.ignoreCase + ); + } + + if (typeof a != 'object' || typeof b != 'object') { + return false; + } + + const aIsDomNode = DeepTypeUtils.isDomNode(a); + const bIsDomNode = DeepTypeUtils.isDomNode(b); + if (aIsDomNode && bIsDomNode) { + // At first try to use DOM3 method isEqualNode + result = a.isEqualNode(b); + return result; + } + if (aIsDomNode || bIsDomNode) { + return false; + } + const aIsPromise = DeepTypeUtils.isPromise(a); + const bIsPromise = DeepTypeUtils.isPromise(b); + if (aIsPromise && bIsPromise) { + return a === b; + } + let length = aStack.length; + while (length--) { + if (aStack[length] == a) { + return bStack[length] == b; + } + } + aStack.push(a); + bStack.push(b); + let size = 0; + + // 都是数组 + if(aClassName == '[object Array]') { + const aLength = a.length; + const bLength = b.length; + if (aLength !== bLength) { + // 数组长度不同,不是同一个对象 + return false; + } + for (let i = 0; i < aLength || i < bLength; i++) { + // 递归每一个元素是否相同 + result = eq(i < aLength ? a[i] : void 0, i < bLength ? b[i] : void 0, aStack, bStack) && result; + } + if (!result) { + return false; + } + } else if(DeepTypeUtils.isMap(a) && DeepTypeUtils.isMap(b)) { + if (a.size != b.size) { + return false; + } + const keysA = []; + const keysB = []; + a.forEach(function(valueA, keyA) { + keysA.push(keyA); + }); + b.forEach(function(valueB, keyB) { + keysB.push(keyB); + }); + const mapKeys = [keysA, keysB]; + const cmpKeys = [keysB, keysA]; + for (let i = 0; result && i < mapKeys.length; i++) { + const mapIter = mapKeys[i]; + const cmpIter = cmpKeys[i]; + + for (let j = 0; result && j < mapIter.length; j++) { + const mapKey = mapIter[j]; + const cmpKey = cmpIter[j]; + const mapValueA = a.get(mapKey); + let mapValueB; + if ( + DeepTypeUtils.isAsymmetricEqualityTester_(mapKey) || + (DeepTypeUtils.isAsymmetricEqualityTester_(cmpKey) && + eq(mapKey, cmpKey)) + ) { + mapValueB = b.get(cmpKey); + } else { + mapValueB = b.get(mapKey); + } + result = eq(mapValueA, mapValueB, aStack, bStack); + } + } + if (!result) { + return false; + } + } else if(DeepTypeUtils.isSet(a) && DeepTypeUtils.isSet(b)) { + if (a.size != b.size) { + return false; + } + const valuesA = []; + a.forEach(function(valueA) { + valuesA.push(valueA); + }); + const valuesB = []; + b.forEach(function(valueB) { + valuesB.push(valueB); + }); + const setPairs = [[valuesA, valuesB], [valuesB, valuesA]]; + const stackPairs = [[aStack, bStack], [bStack, aStack]]; + for (let i = 0; result && i < setPairs.length; i++) { + const baseValues = setPairs[i][0]; + const otherValues = setPairs[i][1]; + const baseStack = stackPairs[i][0]; + const otherStack = stackPairs[i][1]; + for (const baseValue of baseValues) { + let found = false; + for (let j = 0; !found && j < otherValues.length; j++) { + const otherValue = otherValues[j]; + const prevStackSize = baseStack.length; + // 深度比较对象 + found = eq(baseValue, otherValue, baseStack, otherStack); + if (!found && prevStackSize !== baseStack.length) { + baseStack.splice(prevStackSize); + otherStack.splice(prevStackSize); + } + } + result = result && found; + } + } + if (!result) { + return false; + } + } else { + const aCtor = a.constructor, + bCtor = b.constructor; + if ( + aCtor !== bCtor && + DeepTypeUtils.isFunction_(aCtor) && + DeepTypeUtils.isFunction_(bCtor) && + a instanceof aCtor && + b instanceof bCtor && + !(aCtor instanceof aCtor && bCtor instanceof bCtor) + ) { + return false; + } + } + + // 获取对象所有的属性集合 + const aKeys = DeepTypeUtils.keys(a, aClassName == '[object Array]'); + size = aKeys.length; + + // 俩个对象属性长度不一致, 俩对象不相同 + if (DeepTypeUtils.keys(b, bClassName == '[object Array]').length !== size) { + return false; + } + + // 俩对象属性数量相同, 递归比较每个属性值得值 + for (const key of aKeys) { + console.log('key is:' + key); + // b 没有 key 属性 + if(!DeepTypeUtils.has(b, key)) { + result = false; + continue; + } + if (!eq(a[key], b[key], aStack, bStack)) { + result = false; + } + } + if (!result) { + return false; + } + aStack.pop(); + bStack.pop(); + return result; +} + +function asymmetricMatch_(a, b) { + const asymmetricA = DeepTypeUtils.isAsymmetricEqualityTester_(a); + const asymmetricB = DeepTypeUtils.isAsymmetricEqualityTester_(b); + + if (asymmetricA === asymmetricB) { + return undefined; + } + +} + +/** + * 获取对象的自有属性 + * + * @param obj 对象 + * @param isArray 是否是一个数组 + */ +function keys(obj, isArray) { + const keys = []; + +} + +export default assertDeepEquals; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js new file mode 100644 index 0000000..015ab19 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +function isPromiseLike(obj) { + return !!obj && isFunction_(obj.then); +} + +function isFunction_(value) { + return isA_('Function', value); +} + +function isA_(typeName, value) { + return getType_(value) === '[object ' + typeName + ']'; +} + +function getType_(value) { + return Object.prototype.toString.apply(value); +} + +export default isPromiseLike; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js new file mode 100644 index 0000000..639dffc --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js @@ -0,0 +1,116 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +const SUITES_KEY = 'suites'; +const SPECS_KEY = 'items'; +const DESCRIBE_KEY = 'describe'; +const IT_KEY = 'it'; +const PARAMS_KEY = 'params'; +const STRESS_KEY = 'stress'; + +class ObjectUtils { + static get(object, name, defaultValue) { + let result = defaultValue; + for (const key in object) { + if (key === name) { + return object[key]; + } + } + return result; + } + + static has(object, key) { + return Object.prototype.hasOwnProperty.call(object, key); + } +} + +class DataDriver { + constructor(attr) { + this.id = 'dataDriver'; + this.data = attr.data || {}; + } + + init(coreContext) { + this.coreContext = coreContext; + this.suiteService = this.coreContext.getDefaultService('suite'); + this.specService = this.coreContext.getDefaultService('spec'); + } + + getSpecParams() { + let specParams = []; + let suiteDesc = this.suiteService.getCurrentRunningSuite().description; + let specDesc = this.specService.getCurrentRunningSpec().description; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, ''); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + let specs = ObjectUtils.get(suiteItem, SPECS_KEY, []); + for (const specItem of specs) { + if (ObjectUtils.has(specItem, IT_KEY) && ObjectUtils.get(specItem, IT_KEY) === specDesc) { + return ObjectUtils.get(specItem, PARAMS_KEY, specParams); + } + } + } + } + return specParams; + } + + getSuiteParams() { + let suiteParams = {}; + let suiteDesc = this.suiteService.getCurrentRunningSuite().description; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, []); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + suiteParams = Object.assign({}, suiteParams, ObjectUtils.get(suiteItem, PARAMS_KEY, suiteParams)); + } + } + return suiteParams; + } + + getSpecStress(specDesc) { + let stress = 1; + let suiteDesc = this.suiteService.getCurrentRunningSuite().description; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, ''); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + let specs = ObjectUtils.get(suiteItem, SPECS_KEY, []); + for (const specItem of specs) { + if (ObjectUtils.has(specItem, IT_KEY) && ObjectUtils.get(specItem, IT_KEY) === specDesc) { + let tempStress = ObjectUtils.get(specItem, STRESS_KEY, stress); + return (Number.isInteger(tempStress) && tempStress >= 1) ? tempStress : stress; + } + } + } + } + return stress; + } + + getSuiteStress(suiteDesc) { + let stress = 1; + let suites = ObjectUtils.get(this.data, SUITES_KEY, []); + for (const suiteItem of suites) { + let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, []); + if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) { + let tempStress = ObjectUtils.get(suiteItem, STRESS_KEY, stress); + return (Number.isInteger(tempStress) && tempStress >= 1) ? tempStress : stress; + } + } + return stress; + } +} + +export default DataDriver; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/Filter.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/Filter.js new file mode 100644 index 0000000..0ca3b4f --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/Filter.js @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ClassFilter { + constructor(suiteName, itName, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + } + + filterSuite() { + return !this.params.split(',').map(item => item.split('#')[0]).map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + } + + filterIt() { + let classArray = this.params.split(',') || []; + let suiteFilterResult = classArray.filter(item => !item.includes('#')).map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + let itFilterResult = classArray.filter(item => item.includes('#')).map(item => item == (this.suiteName + '#' + this.itName)).reduce((pre, cur) => pre || cur, false); + return !(suiteFilterResult || itFilterResult); + } +} + +class NotClassFilter { + constructor(suiteName, itName, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + } + + filterSuite() { + return this.params.split(',').map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + } + + filterIt() { + return this.params.split(',').some(item => item == (this.suiteName + '#' + this.itName)); + } +} + +class SuiteAndItNameFilter { + constructor(suiteName, itName, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + } + + filterSuite() { + return !this.params.split(',').map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false); + } + + filterIt() { + return !this.params.split(',').map(item => item == this.itName).reduce((pre, cur) => pre || cur, false); + } +} + + +class TestTypesFilter { + constructor(suiteName, itName, fi, params) { + this.suiteName = suiteName; + this.itName = itName; + this.params = params; + this.fi = fi; + } + + filterIt() { + return !((this.params === (this.fi & this.params)) || this.fi === 0); + } +} + +export {ClassFilter, NotClassFilter, SuiteAndItNameFilter, TestTypesFilter}; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/configService.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/configService.js new file mode 100644 index 0000000..0e2ea1b --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/config/configService.js @@ -0,0 +1,293 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {ClassFilter, NotClassFilter, SuiteAndItNameFilter, TestTypesFilter} from './Filter'; +import {TAG} from '../../Constant'; +const STRESS_RULE = /^[1-9]\d*$/; + +class ConfigService { + constructor(attr) { + this.id = attr.id; + this.supportAsync = false; + this.random = false; + this.filterValid = []; + this.filter = 0; + this.flag = false; + this.suite = null; + this.itName = null; + this.testType = null; + this.level = null; + this.size = null; + this.class = null; + this.notClass = null; + this.timeout = null; + // 遇错即停模式配置 + this.breakOnError = false; + // 压力测试配置 + this.stress = null; + } + + init(coreContext) { + this.coreContext = coreContext; + } + + isNormalInteger(str) { + const n = Math.floor(Number(str)); + return n !== Infinity && String(n) === String(str) && n >= 0; + } + + getStress() { + if (this.stress === undefined || this.stress === '' || this.stress === null) { + return 1; + } + return !this.stress.match(STRESS_RULE) ? 1 : Number.parseInt(this.stress); + } + + basicParamValidCheck(params) { + let size = params.size; + if (size !== undefined && size !== '' && size !== null) { + let sizeArray = ['small', 'medium', 'large']; + if (sizeArray.indexOf(size) === -1) { + this.filterValid.push('size:' + size); + } + } + let level = params.level; + if (level !== undefined && level !== '' && level !== null) { + let levelArray = ['0', '1', '2', '3', '4']; + if (levelArray.indexOf(level) === -1) { + this.filterValid.push('level:' + level); + } + } + let testType = params.testType; + if (testType !== undefined && testType !== '' && testType !== null) { + let testTypeArray = ['function', 'performance', 'power', 'reliability', 'security', + 'global', 'compatibility', 'user', 'standard', 'safety', 'resilience']; + if (testTypeArray.indexOf(testType) === -1) { + this.filterValid.push('testType:' + testType); + } + } + } + + filterParamValidCheck(params) { + let timeout = params.timeout; + if (timeout !== undefined && timeout !== '' && timeout !== null) { + if (!this.isNormalInteger(timeout)) { + this.filterValid.push('timeout:' + timeout); + } + } + + let paramKeys = ['dryRun', 'random', 'breakOnError', 'coverage']; + for (const key of paramKeys) { + if (params[key] !== undefined && params[key] !== 'true' && params[key] !== 'false') { + this.filterValid.push(`${key}:${params[key]}`); + } + } + + // 压力测试参数验证,正整数 + if (params.stress !== undefined && params.stress !== '' && params.stress !== null) { + if (!params.stress.match(STRESS_RULE)) { + this.filterValid.push('stress:' + params.stress); + } + } + + let nameRule = /^[A-Za-z]{1}[\w#,.]*$/; + let paramClassKeys = ['class', 'notClass']; + for (const key of paramClassKeys) { + if (params[key] !== undefined && params[key] !== '' && params[key] !== null) { + let classArray = params[key].split(','); + classArray.forEach(item => !item.match(nameRule) ? this.filterValid.push(`${key}:${params[key]}`) : null); + } + } + } + + setConfig(params) { + this.basicParamValidCheck(params); + this.filterParamValidCheck(params); + try { + this.class = params.class; + this.notClass = params.notClass; + this.flag = params.flag || {flag: false}; + this.suite = params.suite; + this.itName = params.itName; + this.filter = params.filter; + this.testType = params.testType; + this.level = params.level; + this.size = params.size; + this.timeout = params.timeout; + this.dryRun = params.dryRun; + this.breakOnError = params.breakOnError; + this.random = params.random === 'true' ? true : false; + this.stress = params.stress; + this.coverage = params.coverage; + this.filterParam = { + testType: { + 'function': 1, + 'performance': 1 << 1, + 'power': 1 << 2, + 'reliability': 1 << 3, + 'security': 1 << 4, + 'global': 1 << 5, + 'compatibility': 1 << 6, + 'user': 1 << 7, + 'standard': 1 << 8, + 'safety': 1 << 9, + 'resilience': 1 << 10, + }, + level: { + '0': 1 << 24, + '1': 1 << 25, + '2': 1 << 26, + '3': 1 << 27, + '4': 1 << 28, + }, + size: { + 'small': 1 << 16, + 'medium': 1 << 17, + 'large': 1 << 18, + } + }; + this.parseParams(); + } catch (err) { + console.info(`${TAG}setConfig error: ${err.message}`); + } + } + + parseParams() { + if (this.filter != null) { + return; + } + let testTypeFilter = 0; + let sizeFilter = 0; + let levelFilter = 0; + if (this.testType != null) { + testTypeFilter = this.testType.split(',') + .map(item => this.filterParam.testType[item] || 0) + .reduce((pre, cur) => pre | cur, 0); + } + if (this.level != null) { + levelFilter = this.level.split(',') + .map(item => this.filterParam.level[item] || 0) + .reduce((pre, cur) => pre | cur, 0); + } + if (this.size != null) { + sizeFilter = this.size.split(',') + .map(item => this.filterParam.size[item] || 0) + .reduce((pre, cur) => pre | cur, 0); + } + this.filter = testTypeFilter | sizeFilter | levelFilter; + console.info(`${TAG}filter params:${this.filter}`); + } + + isCurrentSuite(description) { + if (this.suite !== undefined && this.suite !== '' && this.suite !== null) { + let suiteArray = this.suite.split(','); + return suiteArray.indexOf(description) !== -1; + } + return false; + } + + filterSuite(currentSuiteName) { + let filterArray = []; + if (this.suite !== undefined && this.suite !== '' && this.suite !== null) { + filterArray.push(new SuiteAndItNameFilter(currentSuiteName, '', this.suite)); + } + if (this.class !== undefined && this.class !== '' && this.class !== null) { + filterArray.push(new ClassFilter(currentSuiteName, '', this.class)); + } + if (this.notClass !== undefined && this.notClass !== '' && this.notClass !== null) { + filterArray.push(new NotClassFilter(currentSuiteName, '', this.notClass)); + } + + let result = filterArray.map(item => item.filterSuite()).reduce((pre, cur) => pre || cur, false); + return result; + } + + filterDesc(currentSuiteName, desc, fi, coreContext) { + let filterArray = []; + if (this.itName !== undefined && this.itName !== '' && this.itName !== null) { + filterArray.push(new SuiteAndItNameFilter(currentSuiteName, desc, this.itName)); + } + if (this.class !== undefined && this.class !== '' && this.class !== null) { + filterArray.push(new ClassFilter(currentSuiteName, desc, this.class)); + } + if (this.notClass !== undefined && this.notClass !== '' && this.notClass !== null) { + filterArray.push(new NotClassFilter(currentSuiteName, desc, this.notClass)); + } + if (typeof (this.filter) !== 'undefined' && this.filter !== 0 && fi !== 0) { + filterArray.push(new TestTypesFilter('', '', fi, this.filter)); + } + let result = filterArray.map(item => item.filterIt()).reduce((pre, cur) => pre || cur, false); + return result; + } + + isRandom() { + return this.random || false; + } + + isBreakOnError() { + return this.breakOnError !== 'true' ? false : true; + } + + setSupportAsync(value) { + this.supportAsync = value; + } + + isSupportAsync() { + return this.supportAsync; + } + + translateParams(parameters) { + const keySet = new Set([ + '-s class', '-s notClass', '-s suite', '-s itName', + '-s level', '-s testType', '-s size', '-s timeout', + '-s dryRun', '-s random', '-s breakOnError', '-s stress', + '-s coverage', 'class', 'notClass', 'suite', 'itName', + 'level', 'testType', 'size', 'timeout', 'dryRun', 'random', + 'breakOnError', 'stress', 'coverage' + ]); + let targetParams = {}; + for (const key in parameters) { + if (keySet.has(key)) { + var newKey = key.replace("-s ", ""); + targetParams[newKey] = parameters[key]; + } + } + return targetParams; + } + translateParamsToString(parameters) { + const keySet = new Set([ + '-s class', '-s notClass', '-s suite', '-s itName', + '-s level', '-s testType', '-s size', '-s timeout', + '-s dryRun', '-s random', '-s breakOnError', '-s stress', + '-s coverage', 'class', 'notClass', 'suite', 'itName', + 'level', 'testType', 'size', 'timeout', 'dryRun', 'random', + 'breakOnError', 'stress', 'coverage' + ]); + let targetParams = ''; + for (const key in parameters) { + if (keySet.has(key)) { + targetParams += ' ' + key + ' ' + parameters[key]; + } + } + return targetParams.trim(); + } + + execute() { + } +} + +export { + ConfigService +}; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js new file mode 100644 index 0000000..632a682 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import SysTestKit from "../kit/SysTestKit"; + +export async function collectCoverageData() { + if (globalThis.__coverage__ === undefined) { + return; + } + const strJson = JSON.stringify(globalThis.__coverage__); + const strLen = strJson.length; + const maxLen = 500; + const maxCount = Math.floor(strLen / maxLen); + const OHOS_REPORT_COVERAGE_DATA = 'OHOS_REPORT_COVERAGE_DATA:'; + for (let count = 0; count <= maxCount; count++) { + console.info(`${OHOS_REPORT_COVERAGE_DATA} ${strJson.substring(count * maxLen, (count + 1) * maxLen)}`); + await SysTestKit.print(`${OHOS_REPORT_COVERAGE_DATA} ${strJson.substring(count * maxLen, (count + 1) * maxLen)}`); + } +} \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js new file mode 100644 index 0000000..65d063c --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {TAG} from '../../Constant'; + +export default class SysTestKit { + + static delegator = null; + static systemTime = null; + + constructor() { + this.id = 'sysTestKit'; + this.index = 0; + } + + static actionStart(tag) { + console.info(`${TAG}${JSON.stringify(tag)}`); + var message = '\n' + 'OHOS_REPORT_ACTIONSTART: ' + JSON.stringify(tag) + '\n'; + SysTestKit.print(message); + console.info(`${TAG}${JSON.stringify(tag)} actionStart print success`); + } + + static actionEnd(tag) { + console.info(`${TAG}${JSON.stringify(tag)}`); + var message = '\n' + 'OHOS_REPORT_ACTIONEND: ' + JSON.stringify(tag) + '\n'; + SysTestKit.print(message); + console.info(`${TAG}${JSON.stringify(tag)} actionEnd print success`); + } + + static async existKeyword(keyword, timeout) { + let reg = new RegExp(/^[a-zA-Z0-9]{1,}$/); + if (!reg.test(keyword)) { + throw new Error('keyword must contain more than one string, and only letters and numbers are supported.'); + } + timeout = timeout || 4; + + let searchResult = false; + let cmd = 'hilog -x | grep -i \'' + keyword + '\' | wc -l'; + await executePromise(cmd, timeout).then((data) => { + searchResult = data; + }); + return searchResult; + } + static async print(message) { + if ('printSync' in SysTestKit.delegator) { + console.debug(`${TAG}printSync called ...`); + SysTestKit.delegator.printSync(message); + } else { + await SysTestKit.delegator.print(message); + } + } + + static async getRealTime() { + let currentTime = new Date().getTime(); + if (SysTestKit.systemTime !== null && SysTestKit.systemTime !== undefined) { + await SysTestKit.systemTime.getRealTime().then((time) => { + console.info(`${TAG}systemTime.getRealTime success data: ${JSON.stringify(time)}`); + currentTime = time; + }).catch((error) => { + console.error(`${TAG}failed to systemTime.getRealTime because ${JSON.stringify(error)}`); + }); + } + return currentTime; + } +} + +function executePromise(cmd, timeout) { + return new Promise((resolve, reject) => { + SysTestKit.delegator.executeShellCommand(cmd, timeout, + (error, data) => { + console.info(`${TAG}existKeyword CallBack: err : ${JSON.stringify(error)}`); + console.info(`${TAG}existKeyword CallBack: data : ${JSON.stringify(data)}`); + resolve(parseInt(data.stdResult) > 3 ? true : false); + }); + }); +} \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js new file mode 100644 index 0000000..6a9d7aa --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ArgumentMatchers { + ANY = ""; + ANY_STRING = ""; + ANY_BOOLEAN = ""; + ANY_NUMBER = ""; + ANY_OBJECT = ""; + ANY_FUNCTION = ""; + MATCH_REGEXS = ""; + + static any() { + } + + static anyString() { + } + + static anyBoolean() { + } + + static anyNumber() { + } + + static anyObj() { + } + + static anyFunction() { + } + + static matchRegexs() { + let regex = arguments[0]; + if (ArgumentMatchers.isRegExp(regex)) { + return regex; + } + throw Error("not a regex"); + } + + static isRegExp(value) { + return Object.prototype.toString.call(value) === "[object RegExp]"; + } + + matcheReturnKey() { + let arg = arguments[0]; + let regex = arguments[1]; + let stubSetKey = arguments[2]; + + if (stubSetKey && stubSetKey == this.ANY) { + return this.ANY; + } + + if (typeof arg === "string" && !regex) { + return this.ANY_STRING; + } + + if (typeof arg === "boolean" && !regex) { + return this.ANY_BOOLEAN; + } + + if (typeof arg === "number" && !regex) { + return this.ANY_NUMBER; + } + + if (typeof arg === "object" && !regex) { + return this.ANY_OBJECT; + } + + if (typeof arg === "function" && !regex) { + return this.ANY_FUNCTION; + } + + if (typeof arg === "string" && regex) { + return regex.test(arg); + } + + return null; + } + + matcheStubKey() { + let key = arguments[0]; + + if (key === ArgumentMatchers.any) { + return this.ANY; + } + + if (key === ArgumentMatchers.anyString) { + return this.ANY_STRING; + } + if (key === ArgumentMatchers.anyBoolean) { + return this.ANY_BOOLEAN; + } + if (key === ArgumentMatchers.anyNumber) { + return this.ANY_NUMBER; + } + if (key === ArgumentMatchers.anyObj) { + return this.ANY_OBJECT; + } + if (key === ArgumentMatchers.anyFunction) { + return this.ANY_FUNCTION; + } + + if (ArgumentMatchers.isRegExp(key)) { + return key; + } + + return null; + } +} + +export default ArgumentMatchers; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js new file mode 100644 index 0000000..c6a866a --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ExtendInterface { + constructor(mocker) { + this.mocker = mocker; + } + + stub() { + this.params = arguments; + return this; + } + + stubMockedCall(returnInfo) { + this.mocker.stubApply(this, this.params, returnInfo); + } + + afterReturn(value) { + this.stubMockedCall(function () { + return value; + }); + } + + afterReturnNothing() { + this.stubMockedCall(function () { + return undefined; + }); + } + + afterAction(action) { + this.stubMockedCall(action); + } + + afterThrow(msg) { + this.stubMockedCall(function () { + throw msg; + }); + } + + clear() { + this.mocker.clear(); + } +} + +export default ExtendInterface; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js new file mode 100644 index 0000000..1bd83be --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js @@ -0,0 +1,256 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import ExtendInterface from "./ExtendInterface"; +import VerificationMode from "./VerificationMode"; +import ArgumentMatchers from "./ArgumentMatchers"; + +class MockKit { + + constructor() { + this.mFunctions = []; + this.stubs = new Map(); + this.recordCalls = new Map(); + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + + init() { + this.reset(); + } + + reset() { + this.mFunctions = []; + this.stubs = {}; + this.recordCalls = {}; + this.currentSetKey = new Map(); + this.mockObj = null; + this.recordMockedMethod = new Map(); + } + + clearAll() { + this.reset(); + var props = Object.keys(this); + for (var i = 0; i < props.length; i++) { + delete this[props[i]]; + } + + var props = Object.getOwnPropertyNames(this); + for (var i = 0; i < props.length; i++) { + delete this[props[i]]; + } + for (var key in this) { + delete this[key]; + } + } + + clear(obj) { + if (!obj) throw Error("Please enter an object to be cleaned"); + if (typeof (obj) != 'object') throw new Error('Not a object'); + this.recordMockedMethod.forEach(function (value, key, map) { + if (key) { + obj[key] = value; + } + }); + } + + ignoreMock(obj, method) { + if (typeof (obj) != 'object') throw new Error('Not a object'); + if (typeof (method) != 'function') throw new Error('Not a function'); + let og = this.recordMockedMethod.get(method.propName); + if (og) { + obj[method.propName] = og; + this.recordMockedMethod.set(method.propName, undefined); + } + } + + extend(dest, source) { + dest["stub"] = source["stub"]; + dest["afterReturn"] = source["afterReturn"]; + dest["afterReturnNothing"] = source["afterReturnNothing"]; + dest["afterAction"] = source["afterAction"]; + dest["afterThrow"] = source["afterThrow"]; + dest["stubMockedCall"] = source["stubMockedCall"]; + dest["clear"] = source["clear"]; + return dest; + } + + stubApply(f, params, returnInfo) { + let values = this.stubs.get(f); + if (!values) { + values = new Map(); + } + let key = params[0]; + if (typeof key == "undefined") { + key = "anonymous-mock-" + f.propName; + } + let matcher = new ArgumentMatchers(); + if (matcher.matcheStubKey(key)) { + key = matcher.matcheStubKey(key); + if (key) { + this.currentSetKey.set(f, key); + } + } + values.set(key, returnInfo); + this.stubs.set(f, values); + } + + getReturnInfo(f, params) { + let values = this.stubs.get(f); + if (!values) { + return undefined; + } + let retrunKet = params[0]; + if (typeof retrunKet == "undefined") { + retrunKet = "anonymous-mock-" + f.propName; + } + let stubSetKey = this.currentSetKey.get(f); + + if (stubSetKey && (typeof (retrunKet) != "undefined")) { + retrunKet = stubSetKey; + } + let matcher = new ArgumentMatchers(); + if (matcher.matcheReturnKey(params[0], undefined, stubSetKey) && matcher.matcheReturnKey(params[0], undefined, stubSetKey) != stubSetKey) { + retrunKet = params[0]; + } + + values.forEach(function (value, key, map) { + if (ArgumentMatchers.isRegExp(key) && matcher.matcheReturnKey(params[0], key)) { + retrunKet = key; + } + }); + + return values.get(retrunKet); + } + + findName(obj, value) { + let properties = this.findProperties(obj); + let name = null; + properties.filter(item => (item !== 'caller' && item !== 'arguments')).forEach( + function (va1, idx, array) { + if (obj[va1] === value) { + name = va1; + } + } + ); + return name; + } + + isFunctionFromPrototype(f, container, propName) { + if (container.constructor != Object && container.constructor.prototype !== container) { + return container.constructor.prototype[propName] === f; + } + return false; + } + + findProperties(obj, ...arg) { + function getProperty(new_obj) { + if (new_obj.__proto__ === null) { + return []; + } + let properties = Object.getOwnPropertyNames(new_obj); + return [...properties, ...getProperty(new_obj.__proto__)]; + } + return getProperty(obj); + } + + recordMethodCall(originalMethod, args) { + Function.prototype.getName = function () { + return this.name || this.toString().match(/function\s*([^(]*)\(/)[1]; + }; + let name = originalMethod.getName(); + let arglistString = name + '(' + Array.from(args).toString() + ')'; + let records = this.recordCalls.get(arglistString); + if (!records) { + records = 0; + } + records++; + this.recordCalls.set(arglistString, records); + } + + mockFunc(originalObject, originalMethod) { + let tmp = this; + this.originalMethod = originalMethod; + let f = function () { + let args = arguments; + let action = tmp.getReturnInfo(f, args); + if (originalMethod) { + tmp.recordMethodCall(originalMethod, args); + } + if (action) { + return action.apply(this, args); + } + }; + + f.container = null || originalObject; + f.original = originalMethod || null; + + if (originalObject && originalMethod) { + if (typeof (originalMethod) != 'function') throw new Error('Not a function'); + var name = this.findName(originalObject, originalMethod); + originalObject[name] = f; + this.recordMockedMethod.set(name, originalMethod); + f.propName = name; + f.originalFromPrototype = this.isFunctionFromPrototype(f.original, originalObject, f.propName); + } + f.mocker = this; + this.mFunctions.push(f); + this.extend(f, new ExtendInterface(this)); + return f; + } + + verify(methodName, argsArray) { + if (!methodName) { + throw Error("not a function name"); + } + let a = this.recordCalls.get(methodName + '(' + argsArray.toString() + ')'); + return new VerificationMode(a ? a : 0); + } + + mockObject(object) { + if (!object || typeof object === "string") { + throw Error(`this ${object} cannot be mocked`); + } + const _this = this; + let mockedObject = {}; + let keys = Reflect.ownKeys(object); + keys.filter(key => (typeof Reflect.get(object, key)) === 'function') + .forEach(key => { + mockedObject[key] = object[key]; + mockedObject[key] = _this.mockFunc(mockedObject, mockedObject[key]); + }); + return mockedObject; + } +} + +function ifMockedFunction(f) { + if (Object.prototype.toString.call(f) != "[object Function]" && + Object.prototype.toString.call(f) != "[object AsyncFunction]") { + throw Error("not a function"); + } + if (!f.stub) { + throw Error("not a mock function"); + } + return true; +} + +function when(f) { + if (ifMockedFunction(f)) { + return f.stub.bind(f); + } +} + +export {MockKit, when}; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js new file mode 100644 index 0000000..28eda2b --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import {expect} from '../../interface'; + +class VerificationMode { + constructor(times) { + this.doTimes = times; + } + + times(count) { + expect(count).assertEqual(this.doTimes); + } + + never() { + console.log(this.doTimes); + expect(0).assertEqual(this.doTimes); + } + + once() { + expect(1).assertEqual(this.doTimes); + } + + atLeast(count) { + if (count > this.doTimes) { + throw Error('failed ' + count + ' greater than the actual execution times of method'); + } + } + + atMost(count) { + if (count < this.doTimes) { + throw Error('failed ' + count + ' less than the actual execution times of method'); + } + } +} + +export default VerificationMode; \ No newline at end of file diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js new file mode 100644 index 0000000..f648b11 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import SysTestKit from "../kit/SysTestKit"; +import {collectCoverageData} from '../coverage/coverageCollect'; +import {TAG} from '../../Constant'; + +class OhReport { + constructor(attr) { + this.delegator = attr.delegator; + this.abilityDelegatorArguments = attr.abilityDelegatorArguments; + this.id = 'report'; + this.index = 0; + this.duration = 0; + } + + init(coreContext) { + this.coreContext = coreContext; + this.suiteService = this.coreContext.getDefaultService('suite'); + this.specService = this.coreContext.getDefaultService('spec'); + } + + taskStart() { + } + + async taskDone() { + if (this.abilityDelegatorArguments !== null) { + this.taskDoneTime = new Date().getTime(); + let summary = this.suiteService.getSummary(); + const configService = this.coreContext.getDefaultService('config'); + if (configService['coverage'] === 'true') { + await collectCoverageData(); + } + let message = '\n' + 'OHOS_REPORT_RESULT: stream=Tests run: ' + summary.total + ', Failure: ' + summary.failure; + message += ', Error: ' + summary.error; + message += ', Pass: ' + summary.pass; + message += ', Ignore: ' + summary.ignore; + message += '\n' + 'OHOS_REPORT_CODE: ' + (summary.failure > 0 ? -1 : 0) + '\n'; + let isHasError = summary.failure > 0 || summary.error > 0; + let config = this.coreContext.getDefaultService('config'); + if (config.isBreakOnError() && isHasError) { + // 未执行全部说明 + message += '\n' + 'OHOS_REPORT_RESULT: breakOnError model, Stopping whole test suite if one specific test case failed or error' + '\n'; + } + message += 'OHOS_REPORT_STATUS: taskconsuming=' + summary.duration + '\n'; + console.info(`${message}`); + await SysTestKit.print(message); + } + console.info(`${TAG}report print success`); + this.delegator.finishTest('your test finished!!!', 0, () => { }); + } + + incorrectFormat() { + if (this.coreContext.getDefaultService('config').filterValid.length !== 0) { + var value = this.coreContext.getDefaultService('config').filterValid; + var message = 'this param ' + value.join(',') + ' is invalid' + '\n'; + this.delegator.finishTest(message, 0, () => { + }); + } + } + + async suiteStart() { + if (this.abilityDelegatorArguments !== null) { + let message = '\n' + 'OHOS_REPORT_SUM: ' + this.suiteService.getCurrentRunningSuite().getSpecsNum(); + message += '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description + '\n'; + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${this.suiteService.getCurrentRunningSuite().description} suiteStart print success`); + } + } + + async suiteDone() { + if (this.abilityDelegatorArguments !== null) { + const currentRunningSuite = this.suiteService.getCurrentRunningSuite(); + let message = '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description; + message += '\n' + 'OHOS_REPORT_STATUS: suiteconsuming=' + this.suiteService.getCurrentRunningSuite().duration; + if (currentRunningSuite.hookError) { + message += '\n' + `OHOS_REPORT_STATUS: ${currentRunningSuite.hookError.message}`; + } + message += '\n'; + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${this.suiteService.getCurrentRunningSuite().description} suiteDone print success`); + } + } + + async specStart() { + if (this.abilityDelegatorArguments !== null) { + let message = '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description; + message += '\n' + 'OHOS_REPORT_STATUS: current=' + (++this.index); + message += '\n' + 'OHOS_REPORT_STATUS: id=JS'; + message += '\n' + 'OHOS_REPORT_STATUS: numtests=' + this.specService.getTestTotal(); + message += '\n' + 'OHOS_REPORT_STATUS: stream='; + message += '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description; + message += '\n' + 'OHOS_REPORT_STATUS_CODE: 1' + '\n'; + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${this.specService.currentRunningSpec.description} specStart start print success`); + } + } + + async specDone() { + if (this.abilityDelegatorArguments !== null) { + let message = '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description; + message += '\n' + 'OHOS_REPORT_STATUS: current=' + (this.index); + message += '\n' + 'OHOS_REPORT_STATUS: id=JS'; + message += '\n' + 'OHOS_REPORT_STATUS: numtests=' + this.specService.getTestTotal(); + let errorMsg = ''; + if (this.specService.currentRunningSpec.error) { + message += '\n' + 'OHOS_REPORT_STATUS: stack=' + this.specService.currentRunningSpec.error.message; + message += '\n' + 'OHOS_REPORT_STATUS: stream='; + message += '\n' + 'Error in ' + this.specService.currentRunningSpec.description; + message += '\n' + this.specService.currentRunningSpec.error.message; + message += '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description; + message += '\n' + 'OHOS_REPORT_STATUS_CODE: -1' + '\n'; + } else if (this.specService.currentRunningSpec) { + if (this.specService.currentRunningSpec.fail) { + errorMsg = this.specService.currentRunningSpec.fail?.message; + message += '\n' + 'OHOS_REPORT_STATUS: stack=' + errorMsg; + message += '\n' + 'OHOS_REPORT_STATUS: stream='; + message += '\n' + 'Error in ' + this.specService.currentRunningSpec.description; + message += '\n' + errorMsg + '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description; + message += '\n' + 'OHOS_REPORT_STATUS_CODE: -2' + '\n'; + } else { + message += '\n' + 'OHOS_REPORT_STATUS: stream='; + message += '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description; + message += '\n' + 'OHOS_REPORT_STATUS_CODE: 0' + '\n'; + } + } else { + message += '\n'; + } + message += 'OHOS_REPORT_STATUS: consuming=' + this.specService.currentRunningSpec.duration + '\n'; + console.info(`${message}`); + await SysTestKit.print(message); + console.info(`${TAG}${this.specService.currentRunningSpec.description} specDone end print success`); + } + } +} + +export default OhReport; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js new file mode 100644 index 0000000..852fbcd --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js @@ -0,0 +1,137 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +class ReportExtend { + constructor(fileModule) { + this.id = 'extend'; + this.fileModule = fileModule; + } + + init(coreContext) { + this.coreContext = coreContext; + this.suiteService = this.coreContext.getDefaultService('suite'); + } + + taskStart() { + + } + + taskDone() { + const report = { + tag: 'testsuites', + name: 'summary_report', + timestamp: new Date().toDateString(), + time: '1', + errors: 0, + failures: 0, + tests: 0, + children: [] + }; + const rootSuite = this.suiteService.rootSuite; + if (rootSuite && rootSuite.childSuites) { + for (let testsuite of rootSuite.childSuites) { + let suiteReport = { + tag: 'testsuite', + name: testsuite['description'], + errors: 0, + tests: 0, + failures: 0, + time: '0.1', + children: [] + }; + let specs = testsuite['specs']; + for (let testcase of specs) { + report.tests++; + suiteReport.tests++; + let caseReport = { + tag: 'testcase', + name: testcase['description'], + status: 'run', + time: '0.0', + classname: testsuite['description'] + }; + if (testcase.error) { + caseReport['result'] = false; + caseReport['children'] = [{ + tag: 'error', + type: '', + message: testcase.error.message + }]; + report.errors++; + suiteReport.errors++; + } else if (testcase.result.failExpects.length > 0) { + caseReport['result'] = false; + let message = ''; + testcase.result.failExpects.forEach(failExpect => { + message += failExpect.message || ('expect ' + failExpect.actualValue + ' ' + failExpect.checkFunc + ' ' + (failExpect.expectValue || '')) + ';'; + }); + caseReport['children'] = [{ + tag: 'failure', + type: '', + message: message + }]; + report.failures++; + suiteReport.failures++; + } else { + caseReport['result'] = true; + } + suiteReport.children.push(caseReport); + } + report.children.push(suiteReport); + } + } + + let reportXml = '\n' + json2xml(report); + this.fileModule.writeText({ + uri: 'internal://app/report.xml', + text: reportXml, + success: function () { + console.info('call success callback success'); + }, + fail: function (data, code) { + console.info('call fail callback success:'); + }, + complete: function () { + console.info('call complete callback success'); + } + }); + } +} + +function json2xml(json) { + let tagName; + let hasChildren = false; + let childrenStr = ''; + let attrStr = ''; + for (let key in json) { + if (key === 'tag') { + tagName = json[key]; + } else if (key === 'children') { + if (json[key].length > 0) { + hasChildren = true; + for (let child of json[key]) { + childrenStr += json2xml(child); + } + } + } else { + attrStr += ` ${key}="${json[key]}"`; + } + } + let xml = `<${tagName}${attrStr}`; + xml += hasChildren ? `>${childrenStr}` : '/>'; + return xml; +} + +export default ReportExtend; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/service.js b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/service.js new file mode 100644 index 0000000..74e9aa9 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/@ohos+hypium@1.0.11/oh_modules/@ohos/hypium/src/main/service.js @@ -0,0 +1,996 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import SysTestKit from "./module/kit/SysTestKit"; +import {TAG} from './Constant'; + +class AssertException extends Error { + constructor(message) { + super(); + this.name = "AssertException"; + this.message = message; + } +} + +function getFuncWithArgsZero(func, timeout, isStressTest) { + return new Promise(async (resolve, reject) => { + let timer = null; + if (!isStressTest) { + timer = setTimeout(() => { + reject(new Error('execute timeout ' + timeout + 'ms')); + }, timeout); + } + try { + await func(); + } catch (err) { + reject(err); + } + timer !== null ? clearTimeout(timer) : null; + resolve(); + }); +} + +function getFuncWithArgsOne(func, timeout, isStressTest) { + return new Promise(async (resolve, reject) => { + let timer = null; + if (!isStressTest) { + timer = setTimeout(() => { + reject(new Error('execute timeout ' + timeout + 'ms')); + }, timeout);; + } + + function done() { + timer !== null ? clearTimeout(timer) : null; + resolve(); + } + + try { + await func(done); + } catch (err) { + timer !== null ? clearTimeout(timer) : null; + reject(err); + } + }); +} + +function getFuncWithArgsTwo(func, timeout, paramItem, isStressTest) { + return new Promise(async (resolve, reject) => { + let timer = null; + if (!isStressTest) { + timer = setTimeout(() => { + reject(new Error('execute timeout ' + timeout + 'ms')); + }, timeout); + } + + function done() { + timer !== null ? clearTimeout(timer) : null; + resolve(); + } + + try { + await func(done, paramItem); + } catch (err) { + timer !== null ? clearTimeout(timer) : null; + reject(err); + } + }); +} + +function processFunc(coreContext, func) { + let argNames = ((func || '').toString() + .replace(/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg, '') + .match(/^(function)?\s*[^\(]*\(\s*([^\)]*)\)/m) || ['', '', ''])[2] + .split(',') // split parameters + .map(item => item.replace(/^\s*(_?)(.+?)\1\s*$/, name => name.split('=')[0].trim())) + .filter(String); + let funcLen = func.length; + let processedFunc; + const config = coreContext.getDefaultService('config'); + config.setSupportAsync(true); + const timeout = + (config.timeout === undefined ? 5000 : config.timeout); + const isStressTest = (coreContext.getServices('dataDriver') !== undefined || config.getStress() > 1); + switch (funcLen) { + case 0: { + processedFunc = function () { + return getFuncWithArgsZero(func, timeout, isStressTest); + }; + break; + } + case 1: { + if (argNames[0] === 'data') { + processedFunc = function (paramItem) { + func(paramItem); + }; + } else { + processedFunc = function () { + return getFuncWithArgsOne(func, timeout, isStressTest); + }; + } + break; + } + default: { + processedFunc = function (paramItem) { + return getFuncWithArgsTwo(func, timeout, paramItem, isStressTest); + }; + break; + } + } + return processedFunc; +} + +function secureRandomNumber() { + return crypto.randomBytes(8).readUInt32LE() / 0xffffffff; +} + +class SuiteService { + constructor(attr) { + this.id = attr.id; + this.rootSuite = new SuiteService.Suite({}); + this.currentRunningSuite = this.rootSuite; + this.suitesStack = [this.rootSuite]; + } + + describe(desc, func) { + const configService = this.coreContext.getDefaultService('config'); + if (configService.filterSuite(desc)) { + console.info(`${TAG}filter suite : ${desc}`); + return; + } + const suite = new SuiteService.Suite({description: desc}); + if (typeof this.coreContext.getServices('dataDriver') !== 'undefined' && configService['dryRun'] !== 'true') { + let suiteStress = this.coreContext.getServices('dataDriver').dataDriver.getSuiteStress(desc); + for (let i = 1; i < suiteStress; i++) { + this.currentRunningSuite.childSuites.push(suite); + } + } + this.currentRunningSuite.childSuites.push(suite); + this.currentRunningSuite = suite; + this.suitesStack.push(suite); + func.call(); + let childSuite = this.suitesStack.pop(); + if (this.suitesStack.length === 0) { + this.currentRunningSuite = childSuite; + this.suitesStack.push(childSuite); + } + if (this.suitesStack.length > 1) { + this.currentRunningSuite = this.suitesStack.pop(); + } else { + this.currentRunningSuite = this.suitesStack.pop(); + this.suitesStack.push(this.currentRunningSuite); + } + } + + beforeAll(func) { + this.currentRunningSuite.beforeAll.push(processFunc(this.coreContext, func)); + } + + beforeEach(func) { + this.currentRunningSuite.beforeEach.push(processFunc(this.coreContext, func)); + } + + beforeItSpecified(itDescs, func) { + this.currentRunningSuite.beforeItSpecified.set(itDescs, processFunc(this.coreContext, func)); + } + + afterItSpecified(itDescs, func) { + this.currentRunningSuite.afterItSpecified.set(itDescs, processFunc(this.coreContext, func)); + } + + afterAll(func) { + this.currentRunningSuite.afterAll.push(processFunc(this.coreContext, func)); + } + + afterEach(func) { + this.currentRunningSuite.afterEach.push(processFunc(this.coreContext, func)); + } + + getCurrentRunningSuite() { + return this.currentRunningSuite; + } + + setCurrentRunningSuite(suite) { + this.currentRunningSuite = suite; + } + + traversalResults(suite, obj, breakOnError) { + if (suite.childSuites.length === 0 && suite.specs.length === 0) { + return obj; + } + if (suite.specs.length > 0) { + for (const itItem of suite.specs) { + obj.total++; + if (breakOnError && (obj.error > 0 || obj.failure > 0)) { // breakOnError模式 + continue; + } + if (itItem.error) { + obj.error++; + } else if (itItem.fail) { + obj.failure++; + } else if (itItem.pass === true) { + obj.pass++; + } + } + } + + obj.duration += suite.duration; + + if (suite.childSuites.length > 0) { + for (const suiteItem of suite.childSuites) { + this.traversalResults(suiteItem, obj, breakOnError); + } + } + } + + async setSuiteResults(suite, error, coreContext) { + if (suite.childSuites.length === 0 && suite.specs.length === 0) { + return obj; + } + if (suite.specs.length > 0) { + const specService = coreContext.getDefaultService('spec'); + for (const specItem of suite.specs) { + specService.setCurrentRunningSpec(specItem); + if (error instanceof AssertException) { + specItem.fail = error; + } else { + specItem.error = error; + } + await coreContext.fireEvents('spec', 'specStart', specItem); + await coreContext.fireEvents('spec', 'specDone', specItem); + } + } + if (suite.childSuites.length > 0) { + for (const suiteItem of suite.childSuites) { + await this.setSuiteResults(suiteItem, error, coreContext); + } + } + } + + getSummary() { + let suiteService = this.coreContext.getDefaultService('suite'); + let rootSuite = suiteService.rootSuite; + const specService = this.coreContext.getDefaultService('spec'); + const configService = this.coreContext.getDefaultService('config'); + let breakOnError = configService.isBreakOnError(); + let isError = specService.getStatus(); + let isBreaKOnError = breakOnError && isError; + let obj = {total: 0, failure: 0, error: 0, pass: 0, ignore: 0, duration: 0}; + for (const suiteItem of rootSuite.childSuites) { + this.traversalResults(suiteItem, obj, isBreaKOnError); + } + obj.ignore = obj.total - obj.pass - obj.failure - obj.error; + return obj; + } + + init(coreContext) { + this.coreContext = coreContext; + } + + traversalSuites(suite, obj, configService) { + if (suite.childSuites.length === 0 && suite.specs.length === 0) { + return []; + } + if (suite.specs.length > 0) { + let itArray = []; + for (const itItem of suite['specs']) { + if (!configService.filterDesc(suite.description, itItem.description, itItem.fi, null)) { + itArray.push({'itName': itItem.description}); + } + } + obj[suite.description] = itArray; + } + + if (suite.childSuites.length > 0) { + let suiteArray = []; + for (const suiteItem of suite.childSuites) { + let suiteObj = {}; + this.traversalSuites(suiteItem, suiteObj, configService); + if (!configService.filterSuite(suiteItem.description)) { + suiteArray.push(suiteObj); + } + } + obj.suites = suiteArray; + } + } + + async dryRun(abilityDelegator) { + const configService = this.coreContext.getDefaultService('config'); + let testSuitesObj = {}; + let suitesArray = []; + for (const suiteItem of this.rootSuite.childSuites) { + let obj = {}; + this.traversalSuites(suiteItem, obj, configService); + if (!configService.filterSuite(suiteItem.description)) { + suitesArray.push(obj); + } + } + testSuitesObj['suites'] = suitesArray; + + let strJson = JSON.stringify(testSuitesObj); + let strLen = strJson.length; + let maxLen = 500; + let maxCount = Math.floor(strLen / maxLen); + + for (let count = 0; count <= maxCount; count++) { + await SysTestKit.print(strJson.substring(count * maxLen, (count + 1) * maxLen)); + } + console.info(`${TAG}dryRun print success`); + abilityDelegator.finishTest('dry run finished!!!', 0, () => { }); + } + + execute() { + const configService = this.coreContext.getDefaultService('config'); + if (configService.filterValid.length !== 0) { + this.coreContext.fireEvents('task', 'incorrectFormat'); + return; + } + + if (configService.isRandom() && this.rootSuite.childSuites.length > 0) { + this.rootSuite.childSuites.sort(function () { + return Math.random().toFixed(1) > 0.5 ? -1 : 1; + }); + this.currentRunningSuite = this.rootSuite.childSuites[0]; + } + + if (configService.isSupportAsync()) { + let asyncExecute = async () => { + await this.coreContext.fireEvents('task', 'taskStart'); + await this.rootSuite.asyncRun(this.coreContext); + }; + asyncExecute().then(async () => { + await this.coreContext.fireEvents('task', 'taskDone'); + }); + } else { + this.coreContext.fireEvents('task', 'taskStart'); + this.rootSuite.run(this.coreContext); + this.coreContext.fireEvents('task', 'taskDone'); + } + } + + apis() { + const _this = this; + return { + describe: function (desc, func) { + return _this.describe(desc, func); + }, + beforeItSpecified: function (itDescs, func) { + return _this.beforeItSpecified(itDescs, func); + }, + afterItSpecified: function (itDescs, func) { + return _this.afterItSpecified(itDescs, func); + }, + beforeAll: function (func) { + return _this.beforeAll(func); + }, + beforeEach: function (func) { + return _this.beforeEach(func); + }, + afterAll: function (func) { + return _this.afterAll(func); + }, + afterEach: function (func) { + return _this.afterEach(func); + } + }; + } +} + +SuiteService.Suite = class { + constructor(attrs) { + this.description = attrs.description || ''; + this.childSuites = []; + this.specs = []; + this.beforeAll = []; + this.afterAll = []; + this.beforeItSpecified = new Map(); + this.afterItSpecified = new Map(); + this.beforeEach = []; + this.afterEach = []; + this.duration = 0; + this.hookError = null; + } + + pushSpec(spec) { + this.specs.push(spec); + } + + removeSpec(desc) { + this.specs = this.specs.filter((item, index) => { + return item.description !== desc; + }); + } + + getSpecsNum() { + return this.specs.length; + } + + isRun(coreContext) { + const configService = coreContext.getDefaultService('config'); + const suiteService = coreContext.getDefaultService('suite'); + const specService = coreContext.getDefaultService('spec'); + let breakOnError = configService.isBreakOnError(); + let isError = specService.getStatus(); + return breakOnError && isError; + } + + run(coreContext) { + const suiteService = coreContext.getDefaultService('suite'); + suiteService.setCurrentRunningSuite(this); + if (this.description !== '') { + coreContext.fireEvents('suite', 'suiteStart', this); + } + this.runHookFunc('beforeAll'); + if (this.specs.length > 0) { + const configService = coreContext.getDefaultService('config'); + if (configService.isRandom()) { + this.specs.sort(function () { + return Math.random().toFixed(1) > 0.5 ? -1 : 1; + }); + } + for (let spec in this.specs) { + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + break; + } + this.runHookFunc('beforeEach'); + spec.run(coreContext); + this.runHookFunc('afterEach'); + } + } + if (this.childSuites.length > 0) { + for (let suite in this.childSuites) { + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + break; + } + suite.run(coreContext); + suiteService.setCurrentRunningSuite(suite); + } + } + this.runHookFunc('afterAll'); + if (this.description !== '') { + coreContext.fireEvents('suite', 'suiteDone'); + } + } + + async asyncRunSpecs(coreContext) { + const configService = coreContext.getDefaultService('config'); + if (configService.isRandom()) { + this.specs.sort(function () { + return Math.random().toFixed(1) > 0.5 ? -1 : 1; + }); + } + const specService = coreContext.getDefaultService('spec'); + for (let specItem of this.specs) { + specService.setCurrentRunningSpec(specItem); + // 遇错即停模式,发现用例有问题,直接返回,不在执行后面的it + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + console.log("break description :" + this.description); + break; + } + await coreContext.fireEvents('spec', 'specStart', specItem); + try { + for (const [itNames, hookFunc] of this.beforeItSpecified) { + if ((Object.prototype.toString.call(itNames) === '[object Array]' && itNames.includes(specItem.description)) || + (Object.prototype.toString.call(itNames) === '[object String]' && itNames === specItem.description)) { + await Reflect.apply(hookFunc, null, []); + } + break; + } + await this.runAsyncHookFunc('beforeEach'); + await specItem.asyncRun(coreContext); + for (const [itNames, hookFunc] of this.afterItSpecified) { + if ((Object.prototype.toString.call(itNames) === '[object Array]' && itNames.includes(specItem.description)) || + (Object.prototype.toString.call(itNames) === '[object String]' && itNames === specItem.description)) { + await Reflect.apply(hookFunc, null, []); + } + break; + } + await this.runAsyncHookFunc('afterEach'); + } catch (e) { + console.error(`${TAG}${e?.stack}`); + if (e instanceof AssertException) { + specItem.fail = e; + } else { + specItem.error = e; + } + specService.setStatus(true); + } + specItem.setResult(); + await coreContext.fireEvents('spec', 'specDone', specItem); + specService.setCurrentRunningSpec(null); + } + } + + async asyncRunChildSuites(coreContext) { + for (let i = 0; i < this.childSuites.length; i++) { + // 遇错即停模式, 发现用例有问题,直接返回,不在执行后面的description + let isBreakOnError = this.isRun(coreContext); + if (isBreakOnError) { + console.log(`${TAG}break description : ${this.description}`); + break; + } + await this.childSuites[i].asyncRun(coreContext); + } + } + + async asyncRun(coreContext) { + const suiteService = coreContext.getDefaultService('suite'); + const specService = coreContext.getDefaultService('spec'); + + suiteService.setCurrentRunningSuite(this); + suiteService.suitesStack.push(this); + if (this.description !== '') { + await coreContext.fireEvents('suite', 'suiteStart', this); + } + + try { + await this.runAsyncHookFunc('beforeAll'); + } catch (error) { + console.error(`${TAG}${error?.stack}`); + this.hookError = error; + } + + if (this.hookError !== null) { + specService.setStatus(true); + await suiteService.setSuiteResults(this, this.hookError, coreContext); + } + + if (this.specs.length > 0 && this.hookError === null) { + await this.asyncRunSpecs(coreContext); + } + + if (this.childSuites.length > 0 && this.hookError === null) { + await this.asyncRunChildSuites(coreContext); + } + + try { + await this.runAsyncHookFunc('afterAll'); + } catch (error) { + console.error(`${TAG}${error?.stack}`); + this.hookError = error; + specService.setStatus(true); + } + + if (this.description !== '') { + await coreContext.fireEvents('suite', 'suiteDone'); + let childSuite = suiteService.suitesStack.pop(); + if (suiteService.suitesStack.length === 0) { + suiteService.suitesStack.push(childSuite); + } + if (suiteService.suitesStack.length > 1) { + suiteService.setCurrentRunningSuite(suiteService.suitesStack.pop()); + } else { + let currentRunningSuite = suiteService.suitesStack.pop(); + suiteService.setCurrentRunningSuite(currentRunningSuite); + suiteService.suitesStack.push(currentRunningSuite); + } + } + } + + runHookFunc(hookName) { + if (this[hookName] && this[hookName].length > 0) { + this[hookName].forEach(func => { + try { + func(); + } catch (e) { + console.error(`${TAG}${e.stack}`); + } + }); + } + } + + async runAsyncHookFunc(hookName) { + for (const hookItem of this[hookName]) { + try { + await hookItem(); + } catch (error) { + error['message'] += `, error in ${hookName} function`; + throw error; + } + + } + } +}; + +class SpecService { + constructor(attr) { + this.id = attr.id; + this.totalTest = 0; + this.hasError = false; + } + + init(coreContext) { + this.coreContext = coreContext; + } + + setCurrentRunningSpec(spec) { + this.currentRunningSpec = spec; + } + + setStatus(obj) { + this.hasError = obj; + } + + getStatus() { + return this.hasError; + } + + getTestTotal() { + return this.totalTest; + } + + getCurrentRunningSpec() { + return this.currentRunningSpec; + } + + it(desc, filter, func) { + const configService = this.coreContext.getDefaultService('config'); + const currentSuiteName = this.coreContext.getDefaultService('suite').getCurrentRunningSuite().description; + if (configService.filterDesc(currentSuiteName, desc, filter, this.coreContext)) { + console.info(`${TAG}filter it :${desc}`); + } else { + let processedFunc = processFunc(this.coreContext, func); + const spec = new SpecService.Spec({description: desc, fi: filter, fn: processedFunc}); + const suiteService = this.coreContext.getDefaultService('suite'); + if (typeof this.coreContext.getServices('dataDriver') !== 'undefined' && configService['dryRun'] !== 'true') { + let specStress = this.coreContext.getServices('dataDriver').dataDriver.getSpecStress(desc); + for (let i = 1; i < specStress; i++) { + this.totalTest++; + suiteService.getCurrentRunningSuite().pushSpec(spec); + } + } + + // dryRun 状态下不统计压力测试重复数据 + if (configService['dryRun'] !== 'true') { + let stress = configService.getStress(); // 命令配置压力测试 + console.info(`${TAG}stress length : ${stress}`); + for (let i = 1; i < stress; i++) { + this.totalTest++; + suiteService.getCurrentRunningSuite().pushSpec(spec); + } + } + this.totalTest++; + suiteService.getCurrentRunningSuite().pushSpec(spec); + } + } + + apis() { + const _this = this; + return { + it: function (desc, filter, func) { + return _this.it(desc, filter, func); + } + }; + } +} + +SpecService.Spec = class { + constructor(attrs) { + this.description = attrs.description || ''; + this.fi = attrs.fi; + this.fn = attrs.fn || function () { + }; + this.fail = undefined; + this.error = undefined; + this.duration = 0; + this.startTime = 0; + this.isExecuted = false; // 当前用例是否执行 + } + + setResult() { + if (this.fail) { + this.pass = false; + } else { + this.pass = true; + } + } + + run(coreContext) { + const specService = coreContext.getDefaultService('spec'); + specService.setCurrentRunningSpec(this); + coreContext.fireEvents('spec', 'specStart', this); + this.isExecuted = true; + try { + let dataDriver = coreContext.getServices('dataDriver'); + if (typeof dataDriver === 'undefined') { + this.fn(); + } else { + let suiteParams = dataDriver.dataDriver.getSuiteParams(); + let specParams = dataDriver.dataDriver.getSpecParams(); + console.info(`${TAG}[suite params] ${JSON.stringify(suiteParams)}`); + console.info(`${TAG}[spec params] ${JSON.stringify(specParams)}`); + if (this.fn.length === 0) { + this.fn(); + } else if (specParams.length === 0) { + this.fn(suiteParams); + } else { + specParams.forEach(paramItem => this.fn(Object.assign({}, paramItem, suiteParams))); + } + } + this.setResult(); + } catch (e) { + this.error = e; + specService.setStatus(true); + } + coreContext.fireEvents('spec', 'specDone', this); + } + + async asyncRun(coreContext) { + const dataDriver = coreContext.getServices('dataDriver'); + if (typeof dataDriver === 'undefined') { + await this.fn(); + } else { + const suiteParams = dataDriver.dataDriver.getSuiteParams(); + const specParams = dataDriver.dataDriver.getSpecParams(); + console.info(`[suite params] ${JSON.stringify(suiteParams)}`); + console.info(`[spec params] ${JSON.stringify(specParams)}`); + if (this.fn.length === 0) { + await this.fn(); + } else if (specParams.length === 0) { + await this.fn(suiteParams); + } else { + for (const paramItem of specParams) { + await this.fn(Object.assign({}, paramItem, suiteParams)); + } + } + } + + this.isExecuted = true; + } + + filterCheck(coreContext) { + const specService = coreContext.getDefaultService('spec'); + specService.setCurrentRunningSpec(this); + return true; + } +}; + +class ExpectService { + constructor(attr) { + this.id = attr.id; + this.matchers = {}; + } + + expect(actualValue) { + return this.wrapMatchers(actualValue); + } + + init(coreContext) { + this.coreContext = coreContext; + this.addMatchers(this.basicMatchers()); + } + + addMatchers(matchers) { + for (const matcherName in matchers) { + if (Object.prototype.hasOwnProperty.call(matchers, matcherName)) { + this.matchers[matcherName] = matchers[matcherName]; + } + } + } + + basicMatchers() { + return { + assertTrue: function (actualValue) { + return { + pass: (actualValue) === true, + message: 'expect true, actualValue is ' + actualValue + }; + }, + assertEqual: function (actualValue, args) { + return { + pass: (actualValue) === args[0], + expectValue: args[0], + message: 'expect ' + actualValue + ' equals ' + args[0] + }; + }, + assertThrow: function (actual, args) { + const result = { + pass: false + }; + if (typeof actual !== 'function') { + result.message = 'toThrow\'s Actual should be a Function'; + } else { + let hasThrow = false; + let throwError; + try { + actual(); + } catch (e) { + hasThrow = true; + throwError = e; + } + if (!hasThrow) { + result.message = 'function did not throw an exception'; + } else if (throwError && throwError.message === args[0]) { + result.pass = true; + } else { + result.message = `expect to throw ${args[0]} , actual throw ${throwError.message}`; + } + } + return result; + } + }; + } + + wrapMatchers(actualValue) { + const _this = this; + const wrappedMatchers = { + // 翻转标识 + isNot: false, + + // 翻转方法 + not: function () { + this.isNot = true; + return this; + } + }; + const specService = _this.coreContext.getDefaultService('spec'); + const currentRunningSpec = specService.getCurrentRunningSpec(); + const currentRunningSuite = _this.coreContext.getDefaultService('suite').getCurrentRunningSuite(); + for (const matcherName in this.matchers) { + let result = Object.prototype.hasOwnProperty.call(this.matchers, matcherName); + if (!result) { + continue; + } + if (matcherName.search('assertPromise') == 0) { + wrappedMatchers[matcherName] = async function () { + await _this.matchers[matcherName](actualValue, arguments).then(function (result) { + if (wrappedMatchers.isNot) { + result.pass = !result.pass; + } + result.actualValue = actualValue; + result.checkFunc = matcherName; + if (!result.pass) { + const assertError = new AssertException(result.message); + currentRunningSpec ? currentRunningSpec.fail = assertError : currentRunningSuite.hookError = assertError; + throw assertError; + } + }); + }; + } else { + wrappedMatchers[matcherName] = function () { + const result = _this.matchers[matcherName](actualValue, arguments); + if (wrappedMatchers.isNot) { + result.pass = !result.pass; + } + result.actualValue = actualValue; + result.checkFunc = matcherName; + if (!result.pass) { + const assertError = new AssertException(result.message); + currentRunningSpec ? currentRunningSpec.fail = assertError : currentRunningSuite.hookError = assertError; + throw assertError; + } + }; + } + } + return wrappedMatchers; + } + + apis() { + const _this = this; + return { + expect: function (actualValue) { + return _this.expect(actualValue); + } + }; + } +} + +class ReportService { + constructor(attr) { + this.id = attr.id; + } + + init(coreContext) { + this.coreContext = coreContext; + this.specService = this.coreContext.getDefaultService('spec'); + this.suiteService = this.coreContext.getDefaultService('suite'); + this.duration = 0; + } + + taskStart() { + console.info(`${TAG}[start] start run suites`); + } + + async suiteStart() { + console.info(`${TAG}[suite start]${this.suiteService.getCurrentRunningSuite().description}`); + } + + async specStart() { + console.info(`${TAG}start running case '${this.specService.currentRunningSpec.description}'`); + this.index = this.index + 1; + let spec = this.specService.currentRunningSpec; + spec.startTime = await SysTestKit.getRealTime(); + } + + async specDone() { + let msg = ''; + let spec = this.specService.currentRunningSpec; + let suite = this.suiteService.currentRunningSuite; + spec.duration = await SysTestKit.getRealTime() - spec.startTime; + suite.duration += spec.duration; + if (spec.error) { + this.formatPrint('error', spec.description + ' ; consuming ' + spec.duration + 'ms'); + this.formatPrint('errorDetail', spec.error); + } else if (spec.fail) { + this.formatPrint('fail', spec.description + ' ; consuming ' + spec.duration + 'ms'); + this.formatPrint('failDetail', spec.fail?.message); + } else { + this.formatPrint('pass', spec.description + ' ; consuming ' + spec.duration + 'ms'); + } + this.formatPrint(this.specService.currentRunningSpec.error, msg); + } + + suiteDone() { + let suite = this.suiteService.currentRunningSuite; + let message = suite.hookError ? `, ${suite.hookError?.message}` : ''; + console.info(`[suite end] ${suite.description} consuming ${suite.duration} ms${message}`); + } + + taskDone() { + let msg = ''; + let summary = this.suiteService.getSummary(); + msg = 'total cases:' + summary.total + ';failure ' + summary.failure + ',' + 'error ' + summary.error; + msg += ',pass ' + summary.pass + '; consuming ' + summary.duration + 'ms'; + console.info(`${TAG}${msg}`); + console.info(`${TAG}[end] run suites end`); + } + + incorrectFormat() { + if (this.coreContext.getDefaultService('config').filterValid.length !== 0) { + this.coreContext.getDefaultService('config').filterValid.forEach(function (item) { + console.info(`${TAG}this param ${item} is invalid`); + }); + } + } + + formatPrint(type, msg) { + switch (type) { + case 'pass': + console.info(`${TAG}[pass]${msg}`); + break; + case 'fail': + console.info(`${TAG}[fail]${msg}`); + break; + case 'failDetail': + console.info(`${TAG}[failDetail]${msg}`); + break; + case 'error': + console.info(`${TAG}[error]${msg}`); + break; + case 'errorDetail': + console.info(`${TAG}[errorDetail]${msg}`); + break; + } + } + + sleep(numberMillis) { + var now = new Date(); + var exitTime = now.getTime() + numberMillis; + while (true) { + now = new Date(); + if (now.getTime() > exitTime) { + return; + } + } + } +} + +export { + SuiteService, + SpecService, + ExpectService, + ReportService +}; diff --git a/ensp14ing/ensp14/oh_modules/.ohpm/lock.json5 b/ensp14ing/ensp14/oh_modules/.ohpm/lock.json5 new file mode 100644 index 0000000..6f8e080 --- /dev/null +++ b/ensp14ing/ensp14/oh_modules/.ohpm/lock.json5 @@ -0,0 +1,42 @@ +{ + "lockVersion": "1.0", + "settings": { + "resolveConflict": true, + "resolveConflictStrict": false, + "installAll": true + }, + "overrides": {}, + "overrideDependencyMap": {}, + "modules": { + ".": { + "name": "", + "dependencies": {}, + "devDependencies": { + "@ohos/hypium": { + "specifier": "1.0.11", + "version": "1.0.11" + } + }, + "dynamicDependencies": {}, + "maskedByOverrideDependencyMap": false + }, + "entry": { + "name": "entry", + "dependencies": {}, + "devDependencies": {}, + "dynamicDependencies": {}, + "maskedByOverrideDependencyMap": false + } + }, + "packages": { + "@ohos/hypium@1.0.11": { + "integrity": "sha512-KawcLnv43C3QIYv1UbDnKCFX3MohtDxGuFvzlUxT/qf2DBilR56Ws6zrj90LdH6PjloJQwOPESuBQIHBACAK7w==", + "storePath": "oh_modules/.ohpm/@ohos+hypium@1.0.11", + "dependencies": {}, + "dynamicDependencies": {}, + "dev": true, + "dynamic": false, + "maskedByOverrideDependencyMap": false + } + } +} \ No newline at end of file diff --git a/ensp14ing/figs/evolution.png b/ensp14ing/figs/evolution.png new file mode 100644 index 0000000000000000000000000000000000000000..52847bd569767472039a9d972b12b56ace9d07d9 GIT binary patch literal 137500 zcmdqI1yEc~w=O)myE_bnOK^90cMlpQxCeKK8QcQFo!}Y>?hssqyCrCFF5f->ch38s z`oD9l?yXaG>&{e7?cP1R*Rxl5ukQ7%)vrshn*dA&8F?816chje_4Wn4t^y?AO8;k{ ze>C!c*23GMUDKY-#NFkxZd>H+`!Ai^UcA;ZF?23 z=jr90($w72Iy*PNNX@~?tE2zk#Vsl|Eu(&B2}DCn$1R{`>*^6435FzpDXVLoUO1%Z zlF)GfEh$yd(8C}tBWG^q6S8$-Y4ahXsHE);1lb!r=zoCx50p@_&@gW(5Ru-hKVSi% zV4z{4Vd0R`&`^i1e*i`J|>hL(g_XxNgE?_)PE^hbWFLjN-@u?*=w6xtk zlIt6qrV$B1G@3f*R*;mQnJpekX-n7CwDjiLxdlR6DH#jv(6D)4-GU2QInUP>04mHI z5UjVhMFAT-2A^HlcG@}|2?d*n2vMLc;@b@?JkQ#-Ibo}6%qlE9;G&uELTUEe4WsV< z;C8ko?x=-J@KOx4NfWR;QJ@?oPI~P-TA!_+Mb`4GqKqY7u=P+<%|I>FvO>MfUJvqu zX%oZT6?wl;?kKrW9uUZrlJ9L|qy!6)ggs3X6N80i_uQ0%MVN$!CP~?)q&k4YV2doS z{Z(+WZE=cKZ)*4R`zwG**~u+_+uqh9#}D$!MOgwnUY!9o2b~=nN#YyXFrs<}6oUf! zrA8F47yzIk4n?n%yJ~z-5_*e5_Yhdk<>BixPJ2dtmfJjM4s z!o>wV9sO+D0Jn;o)g^A^G8iEFz9Xj<=^>%HtzN^pNSU4XzF@yaTz=Q&xEUB%(o!{~ z+i9DUX|OSOdwAw~y%y~|Fl&BW8@HU3*6AU#-(o3WhsNXL+`}&uiR)$(=WV8! z(qFs5N*%?I>RQu9y1yeD1NmB3TTnL zk~V3d6GvB%_4f^`(B}*oWK^(P>=_SpIC_prRf5F%3F2L~lMO4_VJg|hzQ5ls{&0Y` zrQ?DT0Cz^{W{ni};E(E+BmWBMT$AsMRK7bqNUm)kD;bhv>7`~FUgPpC@AP;{dmEax!$-Ilo49t@EZb$ zrJ~lThLM|T3X=NVzXD{pj*q17Bsv=Wr_XS|m6guyjiVTifcB=YRkKwn&Tnp-yOV`n zP6OqhE5x3AY7dfyoKF4!tx(LQIUFy8%OqH}dCj4@6qTR{)Y#k0wQ>ahzB>72`WKC;(zfmjGs1yHU*`XzAKkph zmhguDk5PFI@6poA;10%01fil6ufVrZ4V4XO7h|6y`|ERNI&Jbj<( zw)<-8Y`eQi7GP#;+NAfcm8;li@4qxU-_ZQBc527bm~JcK{=k1$c3IqqPyM%^(*68q z-~VPc|C6Enze4KjU*6Sj<9m9-!g=fG^Al<_=H~>@J=HSJ+dZeT=^4I=FUgg+9uD(Q z*-;E12}Qj;#uo4TdKm};GmU4psIrEM#T(7bM<{<1D4U$cR`Yqkmyzl7R(sMcG^frO zkmXsuRfj*NHsCcM0f-o^7?i>qG%16yVanXf0z#~g=-o)y#@}PDeNxa==9)=O_{^OB zeb^9b>p8E*BBpX~Rr?V)oxr;rCdoj#t4u`rgli|q9>|Htl-!hA95Vylp}a}r$T6n@ zJB**ioW(R~UzfZsgwdkxFRp^57(Ylqer^l$U3&!_u~Ka9QWRHL_<@|%oqY1DS5Iqt zd>8w|2B&#=A)W-`=gV%6?uzH)IXb6B&n2Fryu#E#&ldS+rI@N@&(RjG_zYf$pP*?z zFtGFoCd_rHf|ljAsgeA1STpb0$IsnygP&thqD8-^4L(;lEM851$t8cbRGv4O}HW$RZWK<*DnW1enk>I0rIETl)PTp$w4!`#>`JLZ8g zFDd$~{g{5<=V}H$z5hPlkwrMq0%ce(^F{qxRH>*yIcaC-ipJNL!>-okMCB?Jge2&G)ae^3v1m>QjiKUtM4$Ft~3)HgUN->tb|nbA<@DK&Yrb~^gpM6I78xd zXx$UEao&9+$Z&&#!eheux{il|IYORj9O-FklKyVE?%WYWbqlHmv-A~Edgo&-mxxpv za0#u_f&CHl8>`Vn1-{k0>Vu~MKhbyRC$vYukC#S;+N-O#x$b?9kuPG$9)k{HjIQqj zPpc`0o9APbUwVmLUjgNtwhF;@F*w^h9BF5-O&mzXm+W{88zkM{; za}*^R2V;laEjkPw0Wh|;#>>>Nq9R3P$A>U)zKH}lMV9M)?r-)^WUX}K+Y>QKm*C&> zaYYwD61fSTxidH@t@kf2+*gEE*92Svuo|O%5PH!ysKy?%Gz#LnDL!t<2Deu^H8&th zPBLn71f^&AL|(K-g&sW^G$oT`d0y}I|5SOmvfSpjx2SR18g=>7$BXl{k~iv*XdCmQ z82rI5(0WE}<0Og9S!*d^GWB5LY=e|xYW8TbgICn>Wp?YPvDp0BqW8mwP@rnX0Eq%y zdOB-!dWV7$u}s z5scp%3Q1G98>T9Fo8J#CeM3#mECA zAiT^aKNhNbfcp-1#d}@>O`w;&ha`LyPWdg z>*09t^Kc}id5#|LrsH5`ob$Mn=g$iym=5C-h71fYGp8Mu#4;dh$LkpLHZzdBDahrv zHhpj>;`w3Gi@eGMSS@aGINGdIRv!4Ua^eG}NaE}6N^B%6()JIY>OFc`At!V=Gl8F_*q#VDZLnKWvYEf zy-mbm`ukvmyNLxs1K%C}?vZ4j1yi7)_71Ls5{nP+O#B%PE6ytsZ2az@=QDC*uvtJ zu4#`RSDH+7(gs=MIEK;e6If_p2-c_Vg^m*TDk$i2DqA}cj8++7k$CMW`?yog2qo{3 z9-za`*2gbAu{44s*&#n>7_&pYs`RaZCbt>xiTIas2*fpU_!yez#AMU^UhYwgj$|a; zJhx_LCU*0zP!wepYmTCbcHF_P6?SBvL9E!&NYm(Fi{~hP>KrM@FK+DMDMVz+d(fP7 zav%^|l@9LIv}n&_Y5E0(G~x^WR{(WG5LhX0E((4mu3}%icT&YB6s$MV`4JkAH(GM1 zgk4@vepp#lg?DJ5;af(!s~4nxa(H=L+KqVSCjy**w+JRN~4VLrvWfRtf_WO_P9PtpgsVe(8bi$yC5!2 z)HpY&T8Sgkvi^*7t;UoEc~Vli1`=RU?d^VIjubI*4B*_M;1xZOypz<@{mbC5q56$J zgX@Ly>mpG)rbYcse=M{X=VMrDvb~U|$WoVNIOo z-E3x$DKdDby#9r1kB19M=@$#~Xu4x=Rvo9}yHzb08!H;O=sfYdT`VLY*$JY>SSEwm z50}>bS!7c7#XAbiV+%-@vBMGb-RwgTywuMZvwyjsNsTi|80L!=)2naXi*-(3Ks-TP zXtOPq8rmJP5R{tEKagDOr0bc;Mv)rL4?qHZF~grYtg zUXcbCx{7X)Id7Pu6^>G(S(c#{k>K^&NITvug&aY*TW;|xt)@HA9P?Qn_q^ zNptP=AlDYgGzJk%&(xF1M*~$LiO$my#o=1wpCRotbdgk9dvg8Y}6OwK1 z1NOF2mFkxB3!^2v^vaqA(-GuBlTxD|DZEljE@TY4SIX*LqVoZKe9zGtZ)6EyPOMT+ zQhH2Gw)Ace;OnolOI}}DmtgwfwIQMvbwR?Ygke6e?6okxPNOlhf5=M*sax zg%r$Gfo&3nG>H^UNIjIgf>u?bQMq~)Y}}941Z)zC1u+OFqyRRU7AhEoBp?qHRk5n< zLH0;=;r5Jra3*j>vCAl>*|;RXLRDzW%+f=vxPX}$tl?K|%LUjcmFd9mG(vE9SEUS8f6W6J6ymdF~Huu&2dn4J|N z`E-P_{i#W68VJy3SYT8eTHN5mnnvV|82`*6C75!}!V#8*3hQG*=2aYS`D1WQ8)H7p z3`F{SlYy{w5FFPA=n$?x9^K4Y`nx)ZS!w6d&aJ4m!S9!sMY68SgIa3!Inl@1y#Fcs zK2%#K>q}y?%jJg_=ikP{o)6@4Urx!cpdyPkTocm=?y zAD0l_4i4S_?0%fQI4ZwTtgUkt1^l|PE1A`5J8zQuu2ggaI|`u1Aya1%D~4hZQ!)<% z;N}D09}ELvWs?9WH#@0DK7p*6K0`^Lrk{3(5z===FoRyAe6DX)(H`GhJe_YmA9!ES z4zRuqv_7Ha%~xbAYf`&b2DuTHh*6-bI0LSqMJ%rnGW>S-7spv|s2C%V?zR}kCp4jZ zY2*X|rQE1+yBQwVj5(83cbPGPgM_dq74P#L90GG!-+0E-7~|(ympcN{N^PC25{UyH zOc>ZzDuy6bO{fG)^C&kMT(O+60&-_eEGP^<3>G2R$|ql&7mmE|bH3#f{&inpyqsRH zI(==o(*rGx0^p{O7YaJLUI8V^+vQi?yRU$n<{9qRh{pY`gqy0!aDoBxRhn7X<&WJ~ zSn}@iGfK~-4UGjP1tQ&2d+f4Xgm1wF;x!vxjiPD>1KiXv^2iDh2}n_yf>tUL90*e! zHUu@ENgNJTEEWze4vQ%ck4SlpD1hk!pJiK8UsgqWC%0a(ekE$yvTPi36YYq#&X0kZ zV?=n`PxISu*_ok4vkZ64iln%VYTVfqdQL&NASsF;N^;_^3`sz|s_}16M>?X;XXvAo zE+MT}mAllimTmYBdw1;6d$Pc`oFIu|CTPQyZB)}km%S95()RPEJwO3n-nPg zMB-}li#Y6?g-GjxO0X+s;Vv0)FXXTT(hR0>eMIpYx{RFc%DAEkSd%_^1=MQOMW=4q zpoX61k^NyUKj4cb7iy9+&e>btZq6XouQ-)z-J=a^pf^M*YiVFc1Z%(_C|{N7H6?gp z3lwomgve5<EvGy#p)Q&m;!(4e(9&=yQ4xbDsNM{~m`bt}>1M1va{ZnIzQ>Mn zEL?W9u6EX-V39#a^?V{IWBb$3ABlM~Qw>Zg9z|&xw{aIcnKs-uKbq!FDy1`NjEZT! z`3X2x)$s=`t3sPY24-OGTnRbYx2?RE`zRl6hWy7$|AIfI>=h7H#G7BUed#7Ng}BwV zfdma%YWDBnqwyg^N~q^E=1Hp&>upMp;KTCznKWs&n}oX@jmMs%&dp7AF&d(j*lH1# z;Y(l;-A0fZCroOiOD;|C(=VG&3Al>71YDhL{Y7ximxyAp`htkU=T-(XFN_nTOy9YkQy_|Mjw6`98A$`aX02)ZWH+Twu^-WUwoc;8 z5*`PvZA!}GaywHacO8QSyb)Ycy6b^s_1&jYvV&mF4)1|J59xZ2?EcYT4H4qEQwfjh zsyIwtlSBxsB7*0}3_2&)PP`J2ID#G>-bq2DgLMie>?{XNJoLLvM=kb073)$f`z1Ja z8?P4$KJZ(!8n(+zq-y57-v?AGTH<>8la?^zbrz&W1G%Ql;2YF;i7#V>#PT@5r2n5rWn5UGK4P*}j zO!iWvKEAR0h7>I#6XV%*?f{An3y3ha!#c!D!}X|rxCBK*6Y``nA>Hu~b7^EP zXQH3D;71*oM*ac_g0C^gE4A-_`kgLbrK^s7B$u=7oj8{P?OrT|1uXg(ZT)pJ7E2qE z2!HD)uj?@CTGuw%O`&lb!bO9D54JGHu5eSWreh$DUV<*PML>$C-r#jEpd$A?g@a*P zkRJq!>=~y|io%>}E>c)3^0ckf>iXw!U^M%At+gMH#LzP=8yO*GyeqEn2(>qGVI-2z zGpZt?JGUZ{&19D?JDv$R>kG-jhLajak`|}L%`cWZt*OOSW#PrYTbe~OZ_-z6DjT6S z01g)eD{s*YjmSmBdVpG4%}lM^jCb2H6O)DETFQ=PVPDdH28d;3u|vIYe_T|k)EGfr zQj3dN?8l7ID?OwLLOna~fx7te<+BdSAj1}EHTE2SItLN)&VOZ)%so?#S0Gy{&%=WY zMfMTKRA0zFha@vC#ki_s!?EHe3SrQ1py_ar`RnE&`VZ!X+&Ic^^qPb-UU;tnafduE zhtL~^E3KiwOyf$%7_L!EQ8!sb5)rvyyTzm;Sq)zy$=)yeD~Wmhp1)6$v;}JL_=Auo zusGc1B%lB!0$B|9yQ?=~Pen#2L6ys`lsKr9`hTy#jO^A807H zj#ihVf;<;;`o#c(3L-98y8!Y(2Uu7Dz;(YAKxn5l-ryNBw3U7SLg0NJBR7DJf8o85()>iWIDmzXFU@myL6|lPIHMF+C}VMefR~c5F+svNTOxy9g31 zEJ8$FjSO$a&NWTq4X#puclv9RVqHPDH|h~wvoyY;UgYgLC3a~r=E>>VwajD1y#kp0 z{4c>;4-$RaT`491Aimyy6y93Yc-y1=iyLLj@!t_#I@0$6qN7hVM?n~G>||*Z=!V3l zyN9GL@GJoPA?@=b6V|N?(x3UjEEj_|`xCy%*4fKd0SFm%;Lmq=UtZ4MWB7Hrc3BB; zsD_hs?Y) z$W3_9p?nd+T_(Q<%J>GcC7Od;9=b6ux8Tz&qtzO)z+yws9Gk%*88R*cZ*W=G#IY5DreXbY>IJ}%=$92B)c z(Z2#v6zjqbskQZ*t+IA-&OMjulVcil>BnkgiRFwb6$moQhVwhZ2m z4-eIu=n$)t&kMUfin{zruK#Q;GmfdtM5;U@%acKD*>Qw$T4+Je>DRHqP!ZJ5WD{@k z8F!?B35GL>))Ab;bR8KO!?rH@Rdqm{Ly^DSy|$TuZgohf7yjcoToNTHi|7cVU+Wks z&{MgDn6lwHZ>rii&?HyEC(W}uc05PRSwu%a@|ZcE^vRi9J!%uSXQ2sRgZENPUO3-f z3j{_I;us1T%E231qg#&TTe+88Op5>!ny*qXQhy6^YSy?=R#_*Tinwf{)KiQipcw*FTEp=M=q zcvRxa1~q1PjJl3_-%!gL`ks-XTo4WR_3Caqj~-hkbDSZMbo@7B`7e6XvUTxX@ALOj zs5QVzOrFzu`+fPY-k%z(c`*&^JL5u8{`LBSWbLaaYHS1U*hWN+dO`y9J^75B8G*(W$fiob z+_9XJ0|19a%Y$WKK#s^`vKpEaB&Ou@ixvTi8|)Y?dY=ARj2`%NpY#>bS3yCQ(#6d8 z2l5J7Ecj-2x4Ci6{am$fpkKAvKIVx*@=hu##JpoKVO~ZPX=*W3&p;$j&}xC#8u;!L zFn_bG0^P8RGNXtgXJak;*VpbB0j8r+e;<>SsKa%^qJTM5Kc32$sG4=Wv(FUgt4?DD zm7rNVoxDz*i||)KJq4nuq*`HM>-ts}&xX|?;a~tQ^pUXbP*6(c@^yYvc$}?ggbzF8 zeXk>?u}&PdVY_RiE$m<#kS-o}4uO`nWF`OeSS*PZcB_Y+-EJjYF_L(C9V(cW|GJC#QbnafJZXpGmz+VgiE}EI^P4`;?EKiT+;{Kq;OCeoI*rseM=;(Ol1-im8v zkUEq2&?H+_MNZxsGz{XDiZe}5?@jku1VuR>YTdEaDepfPf&((vpN}_4?D9esvDFWo zXC!wS<1Fj4dh@e0*~3A5#X9j-7sXYwbh&X=iE_1%nviq`d~KRNTTd-Z-Lhd>mBpme#wdmQr7*pkypiE1$Bd$)EOi>N z--Gn>TB;W;qwVqvnvD~fwOB22A}#hh_mMCwE=*}$Xty&Z-qpkAxXy)i`ieC(2h?d8 zxp{Vw3!&@`YZ&}JnL*S{bwf`+ibw=|qrf?zQf5c+{TzMMdEDAJC4K~UpYAAH#0aL{ zZ@Lt#CZq-d!_NiGHo2}p!*Ne0yM*1g4BAo4ZI)fOB<^2YqoN~$uZ*b2mK&+P}ECTLV5M>Kn3n1?add%szH_BYc6j?Hb^Nd@%5yEb6HsV$*wt7~!T5wdY9SIJA>_2(zS-Qe5$T(gkXGZhwp%<_x#ro%sV>78ER zX52tbCl}A}f^mJuFP-_fY~#F{i9;0@Sos35{s@N+uK~hdd?jO zuODb4vo(%c8m-3v4?SWP7q?F_y7Ws)^aef;dn05J5p0~C)Uk0Kv#EWWO69)yB;u9qB`vTqB-5(LAjuW^U5%`rcbO!S(q7~&!1w|o- z%}j-|;u!ogdurPEcs$!$Bm&Xu@P`93vP5J1mok1*`n&CqV5W?1?xNy2OE`pI;P?+Y zZfxFLHuf1|$|AvO;#_0no3!fEa$*3igK>Uz!Bfw1UdIU{-~okec32&EB~PSlX5AcE z89#Z?bWXjV!(*Z7Y`5`4tMN(!+Gu75V=!r|BuGke)~XS@wit*TlF4EX)A(5pY6U6R z3yWKN9w)uoiZKHPNg#oB(E33&u(kPBUzDF`T^qE06y;SrKIRzJ zAF-H!!r!l@&2A)AHZ%nFe`9x-1jX{pVi+<;WA3_k$st2xTGXMId>d%cxD;G(eUr&@ z0So4qQ`j;kyo;#@a4g@^HUWg!-}(@9--nERl*q6T?OZ|Re-F?R_*uvBo_YJD8Sa+0bL8i6UpkFGAx&L31t zFRbY-5kw}=p<5AQ?y&-eV4`vom~Gidn0FAdi=VG@y>bS0R>A7`r7eNx@>0&+ATdvc^?bAp$xYedx1IFe@F+ zsKv+~+G?`ZkVFOLFUwW=P~?=J73oFoLbHs;>f}i|5r9qOZ?{&W8nVyjU7fcgvlcLe zU1`xbbXX557Y*K*HG{atq^f9V*g^qQ(T`L$FI$H-2HIJhMHz9hY*8iRScJ_IK%m+_ zP*}D^q^rvDz+Pi-b>D>aJs^Ol$TM`;m4i-U_OG)_wo z$N;&Df@vNyMSY1A+i=j8jf$(1sgn*UseekbD{zSLukKG+?W`R0h(W+QZrp5L+Rq03`b+3qRZx6kG3>EAfLoj}+ zd;r!-4TgWa6DSc6(&3m3pH4X!`b7F7TG=dH3oZBPcJwtSHT@&=I9cW~)2z{kMnlIcLT8*PKerrd+Ak7W~N`d>qx!B8i@u6B#YJV7n@d%PbD|z7hIR zZpwBY`TAk78<{u*odjE4bczr^$K8)GgScLl z&(82%#J|d7`mO4}wGR@N;(V=w-?Y5Q=D8bBYb%}8r_HU_?BX;8UQQQT04>0XyN05^ z%eLq<7VT=aswOnub@JBI=o$!<$R?4=OcUhVPs%}|$r%=(D zM&uiU6A}rKD%u_6VzFxw1^AnUTz+EBE~TGHTkfpb*Ejl<$uyuWG0Ub=6|HyUjI}~} z>+B-tGg(@Y^K$B19dGdIYZ6V1v*s2_jIMlPUf=aYIg}FwI?Y6aF6DXOg2g2M@&TAn@8Kp_aDC3=i$fD6*f#keEi``)2g79#n1cKBtsY@vbMVT)_Q9 zB4o^mTlSKQO}Y5ilTp!A+S=@-dP`U9L&f9_yd5Ao3}sESFn?igL3*bWdptecY+^(n z7#1t_Lq5h4IIMS*Y}ZPw6?D&eVcv3|7ycY;bsMkm8!yjWLl=+Y;l(!JR_igsl}Ptq zttz=~oXRWXuHy=tE)nF-Kfbh9NCjD#Smxwllp z!`jb*Q4MTXR>ZjxpT3$LH!tunicf04kV1sRJe5~Q)laiHl&%$zBb5u?4U-Oj-6b6n zmL-L=w*e63#NI+vZVRg>Xj5;@zUU&(t*(u-oy8VUfB}i_y?EENnzX&cFZhEw!{xk_ z=tri8lEx(}wEArl2}23TU(jk{Va3#gxop@;0GyhT7GnlQmnIekjrgW=Ms-GY5$1)W zOwj!a-^$yLYu?U&Qn&ZwM#))rQZY7Qm~7O3y7E7BFABO}K65@*U;G)B);vN%(|IUh z|10k@lQOH!Rm?T3%%IFQ`#;ly|GyhLbTrmLy#_uWjb>dxYIs#x1wuc>@*ic87BjczW=AT9DTJU%16ob(ns#o4>!>P#M)MX1=>@=^YT z{8n-8MG-h++OLig?+F-;)Qg-+m1|>bVamDX#;%-v@D^p#*F125cRXK z{a{nEj0Y`9ZW02dcDy?$Cf5f0h0{O`RR-^c22%`+RomA()Sn`CFwiJv9HAiW_Mmb? zFdQyFNv3AX;Bmqx@)rd&GIzdF8#cW}Ws}GF^+vup@3j$0b|;{1=-+c1?K!wU9u0nhhm^OzIiclkl9e7oN8?f_UZfC z$wU!oCD;1G(N_hvAr*aIT2oXb72GFhRz0t1oMZMB&XJ_WI@XY9V?KmVQqrS)8%?6Q za&13v3PStgxK=|rREA7>PBc0RTBSu_r$w?G7UNG&K|D)gG^^ky%ExK!q5Or{!UhtD zSZik37N~5>1H^yj`snDYF)MP`pv98Ti^D$`VZslSN*1^idu(Rl_LAXhNq6h-9~QaK zUSWR6?UMSlWcmsq!@KV3%Fp_w_R+^5d@MDk&+7i3X3OkUiIp7*gytifIm~uoc??SJ z9Vg>yDV}y>BlD$Gf`f}GPgZNs(X~FXRZ^}(rhS7H>)Q8EnIqK{8$ zvN5AvL!6PI%L#SRGcq}GrF?>-Qltk(BERzc? zYPuFUnbC@#2)o1r6Sf2gR|&?$eZf_xKY=8-O|6*D86yWq>qH>cHjG}^K;o+cVv#&$ z%(2*MFqeV^NTpbu4@r|zJ{aH=>Q;XBpw~Ozvt!8t;VO`&aWD!~ ziYMcLcPm5Wk?OjHNb^t9D0Rk|_{F>(8zq~}vg2JZX`I~Bf968KOUx*-fB19u|L^;k zzyGK2U%mKW`Ti4|;m2=>BOkZ?ovX4&(*MQ_{H;!-zUN<){PuU$!?6A$V$@?>m*~C; z%zx-i+~pHe&3i+BPm!=2vkSr{Az(;Iy~PzDn253|II)Sg7PU0YlautN(IF@l8rUk| z^Ulf`p+Ws;8luVuRe|YD_t*xW*zA?JuH5@)Isvj)@-oM{R$7jS)a$$)@p(}ep@Eh-%iiWD(GH!Wdvjd*6Ikpxz}Rv zUI9F(JvWwrbo>8#8^#U!`AIUJZDKhzT~skILDk3Y`swX>jF^Ya&T=!wW90 zz@g5nfA!CTbn7L{k|cSR`*h_Kq;$yi_x^BfKHtWQs&FEWl6qyZiMFiO*@t@N2{`NC zW;@PLGBU(!{(Ay?VihDq7)T$5+6eNTypI?_-IbG^H$1T~12v(Kk_F59OC54V=5Agk?= zcT$JWeH_;`D*Y<-iLe0sM2Z2|Z3uM68!6cWboQ=WE0dr{$wchXv(PCVYGY0abeGSj zm27N?`$RsoyVcP~IP6hKqnBF|T~om*L!@rJGBE&)X)LYwVKYRle^I$va%jRKy+x%V z=19KWI3X@a?8r!w0AG&xu%FV?PT1HI&qPOgwQ*lg3%S91Qt~Svo3dLa_a3LDxAck|O(f zSqiCE>d@bS-|*1qhKoj^;(eAETw7VQEfut%ccaUSbBA0pGwb?iJGt`;&se_fC7D0h zLz;VZ*zxwsl{|5SiNt`DD^jUi`uzHE0!%TzPnFG%^SC!XqY@=Jm}N#pGiDjEzxq1t zhI3`HRmx9)hqhu%iO2i+ly(r79nSKp$4VK}|0+9Uq&1OsS=Klvi5VidR#TIO$VZ1s z7452B*%x(uIvoutN`KV!mkOkAvm2swwVrYw8zD*wW0p$R0v6lX?7$_De1e8k-?2%A z(`EYlwP3CHN0H@TgBD^yFj%!bHO=~jtC)3pbn|G;dmoX{6^168F> zB2y(QXWJy5ial~t$T11P#%zt3eOrpPDHYJ?%ZoSLE6-O#wj8{3>uiY`XxTD6Z=JX+ zA5fyY9uZR{J)@1MI4f^C2?@u-grWT+6-gh3i0B^k9^H(RYHFNPfchTWv^@FGm)err zx)bK-k?wwFjY>(XU>8z|%Mo9(44A$FIxhJ`;UGxbHN+pm7~fG1<{K3RSmc{eG>!kx z2stEYqW1JN;y^NEhlxs!tfI(=t?YSKYI<#B&`AL+di}^Z;J$PDur%sHHC$XdVp)b3 zl?s8EvJ~ zvc7I20i&5_PB=gdHjF%23K;+;FYRo)QvinJ7Mc9?Xh&5y0dFaew)J274d}< z*mr9AL76ZBA}Xr3sGn!tL@C^`p`9Zexg4d+@FDQoXrf}*y6QM^L`bXf+^q$+a0WFu zl2!G`?Z!E7awR9s6$k2)6*{QIlolDiR#2D%Ay%kv*)6lm(#m!S|Al|l#Qr;5lm)Hw zDSsoN4A|7{_193fHuLkx4Ucud;*|}TJ??XR(`0V_!C7T)$HxD@Ff^lxW64{zI@a?Q zko@k4Th)oid@JzVd!D;$^yQF!zv)&+_YK-gZCJUwC<$grIQzJX6nh(d=Sh}}?Rv-0 z?~_K)Bd3EEnEWW@BWblX5Kw+T^F;ESzC_Y=ead$XJvUagaaTw;{ zS=YUzZ*-UBd<9lnDaAOTc`DY%qk;l`gR@|W(++v4hul_Ms<){d48R;7A3Jd zY>k=%Ep4kg=LyHJ3S^2TmH2vwUObb0$2Eo?7|qQ+icql;6c)fA@~i~e9w;Z+B${kR z{27)z8wRG`?%}IzRQRLsncG8JFq?CfM=35Mdes^Q3R2(|@D0O~SJY^znFvc3**^{P z-JY3+OSA|&7B4t7aPQY6De{IUXGhq89%zWTVATS0KBY5qF*Sy18eyLx0yP2g{xv1= z@c7k8SOzuHY@xN^W$Git!ei``>4!7Q7LFR#2FNu*+-YelMrlxU#N1EdZ|CPI&^Fe_zn=7T$4$7y?O(n{VLw3cfsto8{Y5 ztc;6?-OB;SdL89NvAku>8D>tpY7pvZ{0cr+Im1reBN)Xe(CQ5Hy1S=skg>v&PbMF;Nn5geCLSOY!VX31t-*bYi327z0;<`NkvjbBIu zvtlX?xv{QXn7DbF=FS;xn^)mbco{J!gfzY`zsujXz#U8iyt&OZx97RvAFrIj9cKgk9j zz2u&t%-JeMggzNs4nMjT$_O?nmal){Dm7VOCt=!Av}o}nw*HmNZP||2PlxAzzh#VN zg`;*hpi_FFb1ye`_dw-CiWQn<#X<$aBT4o_b@Bn8Cn4`Hm*|Km%j?3L*z)fJGrUHR zOG#NwuXFG?k*yburTFigp5792+Fk)+fg4}k$yO08;1oh+W;w4`insxQLh2|0nHWM? zh=tG2U{#iDb6B0n=X;}yegay#g%Q50_ZE9G@gYM*CU!b;MlJe$M^;*xVoB9<7SS_| zaz!X4`DVzy4{qfe>~rtLCEFtTM_vKW`+iGGrlNW4N&j6~;g4j{5R{&x4s247a)dL8>ESo>_ac(e%;LqMEZ+Cr}w`z+#^v>*d>{&cePx zam1sk#kpeO2(ZP-_i@ABbcgtjGwCp}M-aj0Eo~QKKlt>6WBJeYhkueweO5M*hwF6Y3->3$ z_)5C^(gXDo^t=LA0CkCk!gq*dkB%rp`$wqCng4^iw~T7*f7d>P7B61BNU-1(mlg{o z!9#Fpafjj*3KVw@ZY>fdA-KD{6sK5Qv}jwjEwud&|MSdqp7TGm=9#r--pqcn*UH|> zevy@({k^aIx;}R~w|9BaR-&!oG>?VxvDoyn0okL*zIT~O2{LnlAG3|i4I#ZkDm9&j z>`@W>GXr*xe8nNRHy(GnM(XCgOGbfq0TiNpjg6rtFQgpOX-_AzlEQ)Pn>1eOYekAuVavEQ2y{__eO&*m`nve*fiSVY}RA8$A*_v6RF&E)KuTB9_mYc@#@rOLxL;(~U^@D2l>*SMiXgR)rO3!yl!N zV6MC-Up*SsW~urS1Dr!`qF9w7jz?iUUJaH@i?3=?<9*lj58#^gQwd8*ozAy6e^h=P zYCLvbmFx5yUbN`_&jX8H_s9pmo?EK1^{a9(iB*yR^7`wKe*jA&p;2BpJ^U8%TkBiv zzda_?lsqIiO4PBCfr2NLnWYM0T8|!WhH0!EJoO0b8%cdL{VeVIt@S?ujLgqB=;H~i zDm23CWmvNXlC#2Ps+y9{>g)+CoyS8hWI0}`zPQVy^b9=!#5<0ml$~9!^dCTz+p`}p zklH3MSA^eOyJzis{xZKZ%m~tLx6?t8m<0U zLGERfYu-|(@KR4%Wl$)an&k_Diu~b2y1OI`iV9)pHDTym;y~EaZeFJgaosrnWRb&R z#a8J!X0I+ofYRlN4ibatLVqYI-GJCyCC|kWt_^4V|QxLHmg@ zDA2<&tym%3#bKv7zJqU5{{%mH&>AnTM~uxPDtPBnPP#R>#$MHP5CH9u$RYqnBL0#gZsG@&grvXHTCkjyBk8qYUT39&T+gi>yi zBo}1EgN~y;GM{KKy&I=5m+kSIJJ)`WPLcfUxG;}$B%GCawShZ$?+5}BjZiWdI~nN6 z(%Mssw$TGun%JiG0HakO3V&Vb*fL;|)#p&w5M*fAr|~)BES;3lJ9;RJbC8|{WV6DX z?)AjEByb!D$N~Tl2KQL{1~5iv-VK&J21c66W^XgVXEY6SkUmrO)1`Dz1kt`-`jcn_i1yEI zC@!nLMh;jafmbH8=TJ3;SU9C^ayr=O7WniB)PIH83m+FMlR2mjuBlFq>&_^VTe z<+}3gT`>EIwYWkG+sl@Ga0F-Z;FLUH)+%U?bKl5}q>T$`BPr>?S|CmhIbBL|*mBgA z@muwwmVWrkY>0k#^Km&UGnUaEmKm1yw6~_%hiV@b+)r(V>(Vl^LH{R*h1k^j3$n0U z-@s@a6sW`jOp8K48ASl_b8DK)#Sg@zOpPv96Ltyoz~I#f)DYULiadnu?J@w&$wHJc zhM(k#*aI7+#c(=`c`#}jWLENB@+T1T{T7e&!Ff1G$!3jpI@<-EZg{?eg=gDnvzo+> z&z&((7^l1@V-3k#+k8@C1fl<9BUFOgs}|vQEFRQG*3!862;+9Jcpuu~^4zIrf%|+c zK}cs-Kdz0u=osz~ptBMfX|tC8tKyn}X0!m&Cy>Gc{gQMlmJ-$Z zPv&XZ&mcG)RSxABCqV!OrbAKZOUu?3HA3(B-ctCziktlLrq$LIw#Y9 zwFG>ak1V;ZbDZoevxW3>(qfrZb5ocWkKJd?P22p>9+r@@7FRMWjjQ~Qp!G&qlw|Yd zZ-yYp=QVAnM#Zq^n@W2`8sQM{Ekim?Q@)tZTNQTUc>2x7G!nINV>6{GdP7EO7>YdB zK-!dmTZtb;Lg)vG`arxii?q~G?{_79e3G&A^TXXraC>V)B^d$ zh5=m1Ie-;KWrwe|n5oEq-KVYFz zw``&wNv=B$MLlM&*HwE!aAKAzbIrTp3CtM(!XrRMZ;Fy#evmqCc}vla9XB}-`Gq?A-=G2H!mnFL2D=Tb-*cHu**Q9g7eq>3-B{P zHj}?CD1kOsgGvg7-QL2+!^ga60+1}C$KtzAmw?(hq;?jvH1C%0=+F!`&^FRx$(qWJ z_D_G&>e1+41lmR<)gQDjMW__>G4SW=J;A3|4eQ4)a|YQy_m3k_ri2oar9mG+7j~qOIgPF{%3o>oBjTZ@TYb90pbVKeGHpbM(ai&Bsd^n>LXA^ZKTyX4+4a{HAwoGy5L^6711_{iFA=Z}k2ulK#yr6#vFd z8hwc`Vj%7D=@aQmwB3qU_kZOn{oA>PtZefC=-)~Xr|BJu24igJ^?7u%v^G1g5ZVM3 zs@{)9ue9{oR1Yp)h{K?tiLZ~v^8{8N%RK<*0g#3G|GiepJO0Zv&VJ8O-b ziDD;CvSm;Ml=A`Zr8xiqUrh-Qu@GPuF|Es!oKJ4DH%wBtx3|uU*0JG1Lj-V3b@DO{ zxrv?!&w`0;aKiSfhAGb5=1H67BuLQ__EY<{{?(RQvgGL|Mkh93hse6ak){YM;2z2I zJfb{vsTAtREp)&YcA)i=^P0|?=;(g_-pay}ndq!RrD&kej>Rw^#ldUx``# ziW%B?6YNxgbzI<5_YAIDM}9zQUW4v)q2!H~YE?xQVYq4y9X+DFQp#fCwRVkIcZHu8 z-!+|WtN^V#<*39|n@itw2Ia<1Rhw%HsZYj5suR;Y@?OP8YvI~%x^%MSGRVXsn8svj zJQ9Q%>r!5K&hw@5jz`EnkcHTrW01rAQTP*824TKx4=gKcB#Az>)-Q1#`N-P+Kw10}Oc`Q}9_VWcd%$E|Vp z*bPuV_x+`5c3dv(mAsZ`(McNbap~*ITi5i8ni%Lr^R0wkq^$Y1aG8@I70*uZ%Dg-& zOLeTaDW=1iix|pq?z>f=SuOY55EvInoMp=CBV)=G(&gD2xAcXHsZ508=eQ94Mf*jU z`0}LEmNMj6(e2)FjrU+O4|7trWw=>7x8tzIb;-9!37IKoCSLI0czdZ*6^=iB%Igu_ zhJIa9HA(dq)?fINzu2^KYC4Nc3XD%)M1v`SW-F!4~zy7b}Tt%rfXT&>lE>OvRY&}OS z`q1Y`$?|HKeWE@6&O)NWSTd_>7O%ERr}l&C4;2ldvBD&6O1nARMGr@z%|?q-jEW8l z&4b%8gjiYsq+b3i-{#B?JbA4lP&!q^VTnP)wTS$X5Do0{g8qGyU8z)sVFZteD5e|{ zozlhd*?fF@q~3(aGPLC6U>u7uE2YRmz)B{q1pIeMF`j%l)NJ*e2?}GtqfQ^^id)yd zU>C{7B4?4%@+-@bdQNx-`WjvKJ8fn# z9ut9!+&cL1hkk-ei6(Z(RnD^Xlz#jmv)O?`O&&}XZnXlbV_|yIc&A zB8^rxyN}DY`lii|FqDODjL82W;!nNsG}um$PX?kx2muEW0RdJxCq|HWsj^BAY8lJP zEz~uD2oEZ6@h9W{r$|hELB@`y~I{^yZnldUTf5Uks zZBoaI>mXjUV5kDBr$roPpm;gujw~Hd%77)=A*p0@z#`DRcLlbrcN+a}1-4i#r>|sG zvUTADk`+jmb4Z=r#GV0+HfcMlR=E>1uO9;TebuE!sVdbM5osiIt3xlLo#) zc9*e`-j_p1PF3|`b5s6UNO7Dbw(Wl z-|J6`#~fxXx6b{pRlA?6*h0lDEru5lJaxEtcH=oaLA-Nz_Dk&8_@au4Sk8E9#2+i5 zkD%J^TZ^eV**E~ta!c66O*}Ny+TIxz>ATG=9#1vZffvi?7&a+u?P=0GDpX$RyQl?g zZ>L?5A1Qd9zeUIvSeZTMX(q#1Fy!b3o$n zw6un!^{Vsmk*0XL@tpP#=e>(Fd*tQ=u#;vIEXh$f;v~bz)H%>fM<;k1h zsW-oG65O6{Ly9KvAENx(vn@P9^ zfcu*VhcAvo);^a>7!DI1J<3qzj-1W)8&^~|zs$a~@Z%A$y$$x~rn`FimJswB? z(R$ZI9wK?EaRKZz;QglhLfhBmIwo}Q(+*G7{X>3b{a;V|%*A`-)c>#h76QdBs_hL% zZugl9U5Wz_YB)DBVgq;%S++B&olcFL_rhl>LT3{sL<|yRfVeD54|1KCJ46Tr5S}9{FK;9U#$rpFjtYw&>#cftl9ILN?~S@InHn^ zs=b-5<}~~uld?Fg`MU~yhn|**NqME%f9*ymh4MqWw0)bvqUJfflPoL9d zaAKuycD}7ivKRYI!4;d_BZ61^8>|HWyY^7yB2U%a@uUci+ z%rSHh)X(rA%9(I*TGvcpJo)v2nzBkF(Q~+3F7b>XhBtblW~d=V*2JNvwjb91Db|vP zWpWP+8g+`P)pQV#vwQt4d9Kc$V7=js8c!*`tCrIl?=@a*=7f|n zn@C{#*u7UrHcS?f8!Z|Z8g>sq{u@f)SETYU6Mx>bt?Hl8MG`+xTbNt_phw%^6(lz7 z(qr2Fa%$n33T9rqC?G8_pN>jc5v~Se_2JX^xS4`+H! z(qXPt&YnFq1vBJkR3>J)f|uCU&y4<(KCfNW3wc+zW=BfqH$UuSpvPcy%*6<`*E$$` z$je?9@9*efc%mtn?((@dgLAH|KT@oyA|>=g<8@~XcW@c1)@a@|S?{mSU48c^UE;xc-fTb;>S%^x`^DO93v zR9ueDLSpBXXzN(OBY&269k$6gd1hMAK7~jVw|Y#Du8$DAL+!(bD>k2=lcV^*&?~{b zQMR#CXJz8Bb>MD&bE(^*x56~F_6eb+{6y5g!inDW$+5{QIy?c;Q!d~RPGV47W78hBR? z|Jx&RjZA@U@Y9sw=2dimkZy{v$0|+JU|peolBJ8`u?37(K&3#{I*K2fDH;~my1~Rf zScx;O%)(o*Ah&#5^InQreC{O_)xMjz$=x3YFGogQTZNgc zkAohxG4X}jI0QkQI97{hj}r&#^~$p(Qm}lu3lzy&2e%F;q#VF_`~qg77@HjzBcA3* zE4kHTpY7qb5Xf_3f83`0C)^Q2gUP4#(#eGpFM~1|Ql|NGWv{y@rXOgsDO}I=ZwX~3 z?Aeoi5#S}j9Tv}uKGA@JDNcQg@jdHmoo&9f zZ9Z$vo}65;Y$JUsmcfYJF{Grh;%vVCZtmV@{6qWwGSZww%{F(ODY64}mcyvMT20L; zESc<`eWBCm4zY8dWTR%P*{W6<)0NE)?oOPL#^$%Vq$-ZLEDb0r8*%0h7?s$#&ZUoM zbq6c3_{ik8@=?mt(R-azdCWJ00RWH_N(B(4T)Uy!HZn7mT3-L&1P-GvEh*&Sa6uB* z3i1yEaJa$z034$lp+#qpA*@fA0|3_Z6KOjhh}|V@25zXgXP)G4 zBdZEj(=bxBm__(_j1eLkVg*9%W$fizRECqx)aXNTeHp|JNP*epDL zz&Mb3Vwa`zz{vb}wQj4+CzGbH&#E-(30D;@u(OO1RN_NLkD3u^LPo@C{m7|^9hEoh zp@WEWT!NJ`=W;)g=Qwrp#|iny%yzQf=HJhW`5d)|liLIe9`hTb&Zibe7!wlmnxa+-QR^$rar}B;Aa#_va*1Su6N`{@Wtuv1a(x$He{b5_^aZh&P~&r2AKD=wO#!;UhYgphq{tm*vp0LA8`jv5&#}F#tO3O9YFltAZ*of)m0Mj#+f4KAKNBWT& zl68Q^!*cQQ$ZMp^lh7MwZRQ5E4Db`DnzjkPUeumXA8c|uhhB$kt#o^UYp;w$gV=RjMwsHOc)>MoeW}Jf271F z!}4y;bWr|qL6l%1zB{=rpf=Y7#QM7ale@y=HdSKON=@sHK?SRd<$`;}=8-zlD8XUs*(Y>8OPF z3~&e~Zte!e&-BH=8np5H!*>-!0c4R%qRXv6T6OhqI6r0NGdg^Wc!1R^_MumVbu+Oc zKjLjLZGZ4cGeEwvP6a_lDI&uq&YN?SBqQYIV!!&m194okD<}IET>%bq-Mqv90n9^R zUer8Y`|A#uzUSN+?k~W5f91V4z`LF`@*s}ScojdMBhE1Rz+@jkj*}H2JIN~s!kuK?8ACailtoCcEE@><~=#Yg#IKmi*p_X(My9t^z!g2 z1*&5dCWhSrP4>W#=78e;34ZQ9Kr!haHATIe@s{k=Bc<>ipSsbo2NwriSCRh!w5xiV zzxQ(>_dRb{s%`@5=>unM)H~SshXdz}oYXQc6TBaC%_sWJgZcqS)gyViM>1M0z8k{C z)At;z|I;^HH>dreC3pq!wu}?tGneu#I{XYdaC7V=NR22 zczc6afQ1Cs^oUGuHLlp0&}56;z`gBDTY!-OfwsWb%f93J3-PA(<7s~{yFtc?g$&J` zSTdwjpLe~|tbK+@Cq{$HDC{u4=tQLkzg~UNvsbbs>UC0sKk}O|ZnZOJTJOwrxPU3B zz2f&@dgbXqrL(h7h1H+t;WnO`ws?G1Mn&FC$m>_zuPX8@1vsDgh{!6i-ht(f$D0y7{%Mmh`u~1 zE9eM^Q5kyvJOxi&CWJh17ez#cmaH4g$fSw3o{%khp)(w(n?W67fR~vDT{@b5!O=I< zDvP%KmV9B!9TX$uJ5#hC$ZQvcEoOlN&z*)h<7w#ViN!T~h?W^Ews|L|4C%-8;a8IV z89R)vuM(o4|Ng;YtX|}6*B$K=QkdT;xVP34!pgMm9TogKYlDt=A=&(K3o4cy_Pw{@ zL2--Da! zkqGAO&RCDk{Aq)DhRp@N;zlMLMACvqTIq=LKro(o>XGO}nxY5qa;_Y>&elgbS~X1a z-}@HM%3@4fjf{f~eS7=`^rdHoWpwHuGtEn`T7Fk=@wl#WmX1bdr<$B_?)#P&5p{T! zGR7?jc)lLUs6Nt>vuCfCY}1f1D$v!)sMve?rRMCT1p0lnN%Cvaue?>?{xpjED}MfU zq7_Q(0;-ETAAuTf&*=&9(1l~d*2$4qf}LDadB!NW-JU&O=&t3(iBR79zY zvOYYH8MmAU53bXEFGhzp8~uM2qb(S95AAYpdcNI(I={I7WGBSo55vcoC3=YB_#S&D zi4Wn*(7MJj$*M?XCXSr0 z2EtUN7&{**WFk?8FNOU`0N$K`x_x|EDpGgs4q3hwOA!y*3b@^9@Y-86<$4jM%Wit~ zu(c`I^{aHYD2u~kl6HkMo%NQH0N+FG0!%x~;vS@(;8sv0jB(Q!Zhgp9q^G9lay>wG zzeOb6?+!RQg=FL6ehq8Pa(!Wa12wGX@vbUz=**82Wr+o{m{O=_Dviie7!}*(Rsg7T z@$pLm_cn+uOB>AwhM+BbH=f1e^dd!T=cGTr;uh{O$D?EOg@v@n@^<8bh6SusC@5xB z&TD0TSZ+6=(0pXV5hIeba1rCtV2Wt2#2Cc8k=6HBivr-HCaq26HXR@CXf(z;pQR#A z3s%UDRmA+$iH2*{2~Ft4ogqB&M!xy>U@?RiKpBUM$(G0Zl{|sUWD%RNaAg{~QEo!{ zIwzGn$0k`uGcA3@+K~S-&qU{J6!oi4ZCZ=uY>Pu;WBggoFGtQb95F+h_Ut936tiG{ z5Wzmb2S4b6IIU3&A8mT(+i9f~-o$1`uP6ekjh;YbqjC;qV^Z^!8q$BgWoHG66z98P z2M_`SIEESy0$$TcO-EL?v`2F~*nS8Y;+m@``}b{NR%UJyIV#bX{LsHRS>jk#{vg+I~_Ih zK)a~)(5)N@i!Ex(#&6pGZ%0KQH_{9HDMG+q_R3X$PA$Y_(E?)BNxg7*79%1f&mi9% z2H}JP!g&JXGdgmwPI_Ayyvn7vUERHmdC_T~>0JX0UEyj%sh>AHDofTf;)APi{PoK@qgWx!5|kY$hLsB`HezfQ2Tb#-P~Yb>*bPaChFHH;$a?)r1pSa7o*z;V|3-i%g{{-&>3j|t zdr*TE@o9z*+ax8mkMjA_`p0%(0c0tZ>X?12K8g@+?SFz+0=K|X({bvKF2wC&3V4|Y z;&G%=;e$$RYcnf_@|y5?7`|+n(8^}EzJTvI4=1aApxUg}muV7_e4<}}JaUBN{=Uog zL+n|UWV!y>bCq;aMt$C-yWoCn7?l_^A*W~wby^0@AZabq8r?UWJwLTb$YvhrXTkZ< zh?Sefc=wpj5s{Iav_T8sXt^CGs-oq7Qa`&aAv@f1>M9mVj?9h5Dekei#|7>LUsfyv zr{jqz|L-vmO3MG!HL_g+J4&6rSaD*D#``&GJ|(HmL-bQufOudG*oP0 zsHRC~#_5O*K}_D9e&MLs{Ud7Z zM>$^OqiKHfUYppyeprAxuAJzrxswf}U#_-g+8q>y4t@(>mRY`PB~}|%A7S^Yin4pnx2IF5W+*3U z4qWD{0`kK^4Dqx&-25;esy#glC6+Tu{EWW$ck-?1Fqz=1-9DUu<%M8(ZOXcKR}m+S7^r5~bhr#Atz zI&G5fqu+H|98Owo;u{*XA018&ztvffLS`d$Q_C__xV>tkrV?>yXK#K~Ve=P~3UF=S zR^E^Ax%XjDHSi zR2z}mae3cRS&%ylu2kD!m!s5sS&=&;i)|~gdGyI;oHZ$eYI+;x?@Vq8J^?T1Fc`^U28B;{t;oWJF~VdQ=@;`qY|J>^!AL-z}qO#7#u71)8@ZOo$WXDRh?6k}l+ zSlA;F;Y@wPP^=J{8$H5iF_u$49q7YmJ9VWNyn7pj`ug!s{2iL>@6sm=1@HHiI;4r{ zS3_UftzU)1$%`Upj(RVKN7J4q0XBnq zA^DkeU5O(r@~)Gtp`Y~fJ4KK1FwK^?QMX=CDhkRifRKX~ZWe5pM4r6IU$Tf$);dfa@TCC(}XdE_rSxUz0IlR%vQ zk-mrHg`Y)2s(eJzZUW=>imK~roGRe6tV7s8BOPaO$%?)_WOaFPrkE5B z2z?jNsOxBQt>#YXmx1Lq>+&o>4bz*-LW2IZlDNR=`A_%COseTZl}ty}bMI?Guo*-! zJVGXjFf;*HwVy}lQ5I#OJxFMPb?@3_yXfL~clL>W-bN}Kg^wMuFN4h_4dr;46b~5i zbx=5x$T)oaNX=P|Oq%q!vtCqM@P3`o)6tgIB(v<~-W9FA$(`qJlr++L zfi1*dA>X424A?~sf=kau%v&KnD~Y`s4M*(lmKuf)=f`x@U0WF%jYb|59~MibXl>8t zy!_)j7GhdZ|^BPlE`gq3~y0rq+88~o~k z`&nd$1+vO26T}Gczve8-1SS~(PT2e@SiM^l*c7XD9AYj+8ZN67k}BxNcET;1JNjI% z@1987ySp^nX{Dch0AY*D&kJ*JD}8>ig^muiunGqj?c zm2IDZ!Eg`G1ZY@Aek_1G?%sE!=IKM)1@H^u9$E5XEYQLyE1MAa6hnt|b^lm#|JbD1 z%{ff;VD((_D$SNk@gIP=qy9etVy}&yz$dO6eoV&_!=*1^h%L~J0pAM-&YsiKnV|?A z)dfni1dq@(@5>YSeEn+Ufpn`3#070NyC>e@J0Kj=$PsdeTMfJZDXJK>2y(olIBPM4`k5) zj1~XC;zjs+C+}PMz;fESNDcoJY-}^=GvSF*&TT!|_qR`3ei7LBvt!gQUqXr9UfeN%N zqKfGy#BS4zS-i(v=NxXYu>3&SVo0GVNgayM$e9uAf}JoXuoQ1o_BBN4C>`>kDHIZ{ zs8Si9AKw^-*6=4k5#~y?xnNZhO?r#0ZTGRtRG*+0V8Ye5Hihg~jjNL=dp>|NGU`EU z;KAf9j~e6TXra##u$b?J{mGK-=`2@t%67>rt(;1L*<#k+cVb3kbla9)j;3Ao9tLdV zY8&EDY=zGjCvGt9rq$sQ4L4D{d06(fy$#Ye(;vpye#PK(4g_SZ1^b610Xi_wUne({k883bvR8Ij-E-oJ zlz>CPd%83{OgaQbt0iqXpRbiGzosBU_h#^|_KfGyWYPHgbecqX})c z!+$m`)fcIiC(UeED_>sU0K`frvW~atPgl2wU0>!7LBuniX%n;&MvCgh5K$!-EKxUt z!iL77v#>u*i@n_r0GLaYCIsT(rPZkN#}R-Qbd>R{B5UucfRGjc?ICCP(L2*;J}Z3w z(Oh!vL<#+3?}+2pj8N6O?}1gN>k8%#rcG_6%7WzJwJa^lP%rHa0{k}26R!&&iOHTx z5jMf|mWcFS^9tt=>1SfP8y~E#Q6+SI;9SEeM&jGz%kP1yzzA+|myKUfAZRMGyN&Np z;V5^AN;W3Iwwz?epx6%xgss6_2^VT+OPJV&$y7k0vu#Fs6u8PXaRjy1YnMrpw=^e3 zu?)(L$!QfGLq_hDDb?RjNJjf&Eio?boEa4M^YwI%XF-|yQd|e1vG^{zSW{L9BK+a6 zXj9b5qC8E^1V+w8QQlB&Y`V3a`B9X8h(0-5lXCTYHmyg9w{6LE&Hl}D76l#k|B zaPLPYFcSWbda#PK`u529hjdDR_%ZnVj}gq?-4~N>u@*nkI=Aot0Q@&XE$PfEe=)uJ z@aRVg*7_@ltJuZxA=G`4?VEucMP^(VHOYjKFe<+4I1As%i}tKKirGJNO9NxF#|rG! zU2w`nhQ`lU=+gX7es)TFH@8GOWo|bkg)O%oZ?+iWz#p{ktSMOhxc*hUSm_a(40kG# zZ|DZH3|<%e3Sg8rAyE%$;n2~xH+)vy#*PDgSRPk6^nA9c$T9P1w!;+})z6DK#S#1V z`^~)MpRy0!rt7b3$Q+>fGcTLvd~BHfVbwgogBfN@4udL#&c;-!j~Nlw&P`&E1gjk= zjNSbAo$C1m+W7X+`7o@DwLy8SrPCo4%5NVZc6az zxdJ9)M|~$^3H*Z80RoNjE^ks&l5}*=%OPSA@Vju4`3{#fqMT6Xd94{hz$;sEtc%%p zaP_yJL~PLRTPo?C?4O$3jsrc)9eyZ6gQEyzRGmC zUB58n<>Q*K4xowQ4d(VjClpyhmVFs@q29QEhX78IS^(04{-ucw3|xS~nIxi*8`asj zknG{xa3^;bNhE+s_((U^^by*vovJSG0=BR*aYtj&Pn(QH-{mzmz2ar0TnstZCn9*jz|<&vkpwAR$>8 z?o#xJ$8w|1t@UjVlDx=z4FvP3yrY1F-7UdBbl9c8Qvm2NYSI+f?EP^VQ0lD3I#~^x z2eJsiH^pV2%xGT}pSVEkyoJuW1W@{}H$=1aWB?c`)2RtJ)qB3=ZJ3QL&18e-pDX3= zH;pX>Cf~^hXmPl~B;3s{5=%#KGq&|?O%$_Xels^+gle@990@o`cY~myKNnCyd>c zJz85`Z-PZ?=`u{k|L@Pij7;u5&Ho)M^*;_Ea@KeFWxBLcXr*CAXFbZtx_^781H*2u zIHq!m0*A6IiB`=nsZNacPabrqvi}jIussPJTV0Xx0$+J;bzs-4iiW)p(T_n9R=8D7 z7Q>?0d-IE=IiCs$?gP*xu^U!J;W9q3&hf%VB8tkqBOwWyWW?RC3V89U9?H^r>=_t7 zp$#6yeQxoGgYxo7Pf0#3_}buS=jzVXo6|R4h~&R!mC5{4-H{%d3ib{Kc)YfSp_OW| zbt!&K%4Q)6!GRxsd_1+5!ZFB(QsIEyKNKOhda%-RC;a}bvuPt-gUOMFH`9wWDc&+s zmt(;Zv!4#ERwaEzt(B==R>EtdD9(OJr4J8sgiz>RrgWM-F>(DcNT`Fw>00EYW!5vS{LQcx7Mtr#|y9S@H66cY^i0U|JbW@SYa~ zM|qpM9!ZjlP#jKBJ(2SK@{9Zf6+E$=SDG^$qajP z_-J{>E0w9Wz@{volpuV~taQ!c5|eiqJF8WaFj7@vErtN~eHaa<3av=#L7Dm5_WONN zA{y%K&9L~X)~*4u=w}&vvLjRWO#nq~<|Xy=eiVj@pkIoRR`J-rjE$fFo20sHEGQoy=aRC`EBjd&U$Wbk@Bw4Ci?iGclS}!N_KHAMJ&%#oM zPI!&;rg{$}>Gu|oXm4$d?&&9ai8F~Mi}W*kQ+%RGZ<4P$#>ECaDlE6{U34XjQZ+5V zonsuuCDq{*xD&s#iZ=MOE3J3&e<$VzN?~c`qQ$Wvu!oH7?U_Zz$+v&QgJ#Xf#uzOd z$G@g@rFuVSXjrK+nzows;4w-|I(4DW$odt%(fvqIWq%MNmyzoGA;@b7QM>tmF8f@4W#0=XaW9x|BWMgP$k|-E-ppknvIvBi%P!nuaZ1 zDO`@f*DixA6SB|hOe&fGY%iX=4wmPHBYTZBNrMG!F~E~XM9SFVIKcKmH|YWi4C#Y%B@7c%Xr=$5HYLO4JuuFc#~|5WQC z70t7U!j1yPNgdM}4&D%1+Jwfl5yWj)(BO_t$K%(#cse!m{qS$=bDQAyD7j`*6&T}^ z8cVd7S+h7c;fr~eTN2K9tX4@I%*5cna_X1 z`}44^`S7E(SNN_X@zLNpTN;adwBTn*eUp*YWn1lLBg1=}?x))#n+ML$$Hx4>o#$T? z^|E@%8P7|}$tJ(jIgvEduN z!%G%C8V7P#O$~(T_ymCcFwMgtO7alxj;)TYK_TtJ28fLJQfdK88uJA@1ZM8=FNk`U z&5{i{%j+_!(9$B*Zakm}(Z78*-v5x&F)mei?8V}tF7P*0hYH?IFKJUNqR8G&hMzJ86rcqC@H zz(e17$UajVW6ySY#L6Y@P+So}$f+(hj7uykB}Wa1q>%+%v|tT0`7AM2&&_clk##} zYeI9~aR;%rCv&azzGK1#Q;76NP=a?AosrIzEF%>cb+Ny}RhC0k9F()JJ8_BncwVc= z(d_xcWUUS|)YKyMYa+KH99YXWAG}HL{p`d~I^b)CeC8Ld zA|NGrma)}Uq1d?Qg@OqkbWW*-gbq+*C8E8ir02Eg97-oyPhy88)F)9TumsNYf^4F& z3U<3nRWvbg5;ltgvH+ON__8mbPs~J&Yo(%wBga^z7W|&M&7`l)u6+vxZGx1*VRVD= zzni7%E+Rv2 zixXDXKK@tGC!*=PEo3$DBF8mkEOWJ^CRA(Lk@n zL6ZL+-{}mydNTSZtM}*pRw3-}qTZFTs-&tqW4GXYM zaKF_-KeS9S%~)pad^LY8LQHL!%`woPC;8gIe$f(sO!j{9yE|wg(OOXNmpGda+vsr% z?!W}P(k5@;t!kpv8_3Xt^E+tDcsJ9LiBDADNpjxqodse+UsgMtZfm$zecCWv`(Xe4 z$!*jJ+nZh;uc##4Y{GQ=^c0(>BmO{nmh|aA4UBCPOL(uoEC^?4Y0Y$UztS|CE$Sp{ z*Ag{q$5h*;N%qSAnfN`!S&buryV$)C6A+>uZ0#bnS}rNTmVNjUKi+mirB4txOV4R} zMTZ~nB@ZBU;^3AeZw|A%1d=;Ghc#y4kg)87#C>?f%JG+fq`?sYcT+fAffJAG;=S4pL)blkP zPlstCV|Csfg?&#>4b4KMf;lgq@K1Duy;&zca+Du|I$VLRm}+}O1c#`NA0zSNCk5Z+FZ0GPn7_J`&D$L}cNWP1AKblVRGU$| zt{Ys66I>b~IHkB2ClDlfaA>jM?vxfS5;VBGyL*efd(q;>TcA`Zw1;o4v-kSe-rw5e zoN@M#Gj@LD$D1+dJCk>2+VkAk?RB5pILToE))pJ;Yhue{_1?S*J(!`#gMHh=~bYwb)M=+1oA+X=OCEGf?qLT_}Hzr>%EKuT|PBxlT2xkEM zbQ}4}+~i5?p*3k-m!=i14Fj!aqmVvbo=j1~g;Mqeo~|~r?>|SXscaC_YN~IH=SSjU zY>I9<%ABNH*F5RWW#n|Now5WP#$QAW&Fd>p3*+{SYKR4BzZkr5c~L3oW4w{|{v8&< zuGnX2vnNMwcteS~wr7=oO)79|Pepk76jUlz!NkocNQI_;w3PdpZsc4pkyvEK$10#` zEr`PrM=+FYeNAFnHzmDz@xdBeVqNTLDHY3miq7_Z#Vg^ln7c0A1Xau3 z+`SE2yg4Z=!eLVV<3Sw$bcawJXMp%Cc5j!1{mY`L8)C6Li?f8m<=DO*?D|iAZvrA8J^2j zeN=5EENlNpLHYPY=1wNwVZ{34gH_kLWb2XXIy+gL320(~0oh2PC~f|f<+lk z4;;Q8ZN#eUv-eC^{J;u%rBQKG^JL5ZcRQe87hN)AxXONfh|$|Ks!vus}NW_S$01D-NteqZ&NdiPf1R1lLx8FqrmZi zrgzX69z9V~s>p8Mq?F?mCWDRY$;3CXuHY!q$n=%~6TQGo{u0&#?~mDFe36^eqntLF z+z-tZ^ZR^JUcQ+8s@t9Wj2kVUX@XtQveF_@r|PWeJk&dhkAXt(%=$Jr%l%vHN3b_g zCH6I?J%g3kvV?PrT?j$tFB}yGU@*HV=!9C)A4l5wY=d%J2q#9Ai{oWVFjwe_U0Mar zMKpCvS92$V2&?NodjVqjL=5|+e5`~ItbsUp#&HXk~<~!5FM#07Q6#keGjt60-wARuFu}#6E~AwVb*-6Y=&|^4 z(>@zeqkSL!d};jm-0I>>q5r@E0ck7yJd{f8#H_{6Cn# z@UNz*|JDos`}X4DdD+vlr)SIYeZ6x}{sN}E`Q8{wEnof1t8@v7k3pBc;H-vEjhFu* zYAt_#>{J|6b-C|I-_<|4qdx4MuUt#_>q9B25jO-Hu6d zA;}a0;j!iVI5Y}q5^oq2psKH)OIu=0rgeEOPjZ!I1?Os^$&>7$+rH={(&7VLGnx+O zGaVj%KJjlUHG3vZ!sbcofb@Q`EP>^|yKBvA1jg=O{8-76V&cW{q^;sbHVm=T_2k=d z^R=+s5Bx=xT32~wr2ONHPuD=n6#UQ3Y0V-EdjAH z$+QxCS*EuDB`PwrK4giwyA+wzxN|M}@wEaUNAtC%H2=2LgJ`9ASy4?Jd=kYylDO

^dtkUD z04G)U*O_J+nk2dQ`wT@;Bbyd|v_H~4ZCA8gElD^9X;$4-W}_3huC|__|FAB3=Ibq4 z_P2NG2u-B2>b2}q1!c@tjL1rjAMqoWglZtZwp!aaGLvccjZ0@3LU|D-X3afz)D1}w zM>cv0v)Hw;e%K3cJMNKz%V0B^TA*h0s3V9g?V9~|sY%l9xiY~)oBLV7M_R<(P-?^1 zIyWy?{mSWv{$YWqZSRNd%=F+gsKbpD;7^ODKJs@-WE`;SlI420mwzUvuW~$)or_h%rhG5m z5-oV=)SrlG-jM*HPg<>NjVu8C#dWus(ZZqBu z?_^>6HLcA{UD)x`D7kA>GcJqUw?mBPE zQ%N3f=49Y%!IS4Gy22Jz;)cM#p^LA&@vZHhVs-C6S@TaF z4bOCY&g=acA};z5QH74rI=vIaF`_GNNhCOotp1B?<3Ffe{)@yT^9&)ySkbhXga$rX%aCSu5kQarE_Ar)edt3+LM}LlLCfRfW^xJ6}`5$ zQ7Or$^fnQuz}SHraGa3$-QYuea z4Gny{Jh2q$L{TN((mVZ!d{=c8D2o^Rb+hSp!jk9Y}yjX!z@ zzy%N8eS#oEHLxqf#%Lrlf_Xy1h(lPPU%ek5kC=|NZ!adMcI^Sf6hrfs?PBPU(@yVK zMD^o9>qUi=$TWdH4W0xSgE1%q?PB)4Pifwb)Y^Xt0_=ae`96$XB#mY!D1~CED*Kf~ zd+5<~W%GJtyWjPjYnLucsHb^yDG4}7YwdO+&0BoHueRbW7Rjp}HSEVdN7qjt zc5n)kAGn$#Lsl=ddJG$NY-ffJq`PJAzG%ryXsl`&`f*h%RUGX&OzHc;B zS$w`J{u;lL?s8N&C~j<9N8L*nx7O?MBxVB3;`{?G1oA{@;?|vK13zas2LHuqFrP`n z?#4^vIKI|;1?)|9Tz9_4!JabM5<&bpAKbQ*wqm0tUg`Ho+<1VLkHgFU5q~nRYnEj7 zF0>m~@q(G0Fz;wF#}tZLJ(s#Smt9Aosvsm%si(wYQhu8Pj-J=R2LxCJ0K(t*d$_rn z;5RVE^Uv6(#DJgFN*AL?LkNu8DY+cPpt)AN3OfL%jqZuigZ6uoc$XBBVzG=Zpt_!cax7*Q8U zc&=P*brya%D4B9MpQT?U)=;S`IH`7#$2b`pQu*_jC)23x8KZnn;%d23kQ+iWfr))F zAz`|5wH2QcVZ8avt<5p>g^TeEw;(UXH_1Q0^U96Z?7&Y-KGdlLW(b{K)EjkOTU;l; zaFK3D-F7Fh@kvl3v^r;g?InwGQ0FDhhGv;ru$i=-eLe-R%G?^oxx=y7!=AnRcgb^D zMyj}4R&9Q%M@zkW}b#<26N|*6{Ck6NQBSF;kjjp!Gafg&Y9i#E+YHk@Wpf#_]xR+vo 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≫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∾y$T)8)sdJ;B7&b58|= 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

g8PZs>M&tuDz%I2k_)XUwTTGRj0;XVz! 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%0DA@Y{svV_Yp+xb1?Y=}rt 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

Y|cv7sn=0`N1aUxCahI>{pm#E= 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�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

lm^e}GB{feS)zy=W{Fr($Tv55 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 T>}cd3_)lF~ODSK$)c^kgMF+MI literal 0 HcmV?d00001