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 0000000..cd45acc Binary files /dev/null and b/ensp14ing/ensp14/AppScope/resources/base/media/app_icon.png differ 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 0000000..ae4abd3 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/Datas.protoBin differ 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 0000000..072f7bc Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/OtherSimObjects.protoBin differ 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 0000000..e1075da Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/SimBase.protoBin differ 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 0000000..6e62cbb Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/classes/TopMenu.ts new file mode 100644 index 0000000..8f5564a --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/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/cache/.default/entry/src/main/ets/components/ButtomMenuBar.protoBin b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.protoBin new file mode 100644 index 0000000..1d42ca2 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/ButtomMenuBar.protoBin differ 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 0000000..1c8a5c0 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Dialog.protoBin differ 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 0000000..e362902 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/MiddleContent.protoBin differ 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 0000000..80e83ac Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.ts new file mode 100644 index 0000000..7f14b27 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/Table.ts @@ -0,0 +1,498 @@ +interface targetHost_Params { + simPacket?: SimPacket; + host?: string; +} +interface sendHost_Params { + simPacket?: SimPacket; +} +interface TableChart_Params { + simObj?: SimBase; +} +interface NetworkChart_Params { + simObj?: SimBase; +} +import type { SimPacket } from '../classes/OtherSimObjects'; +import type { SimBase, Table } from '../classes/SimBase'; +export class NetworkChart 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: NetworkChart_Params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params: NetworkChart_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(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 0000000..e14c7ad Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/components/TopMenuBar.protoBin differ 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 0000000..1a2eebe Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/entryability/EntryAbility.protoBin differ 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 0000000..9afe2bc Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.ts b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/functions/functions.ts new file mode 100644 index 0000000..9301b43 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/cache/.default/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/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 0000000..68a9ec6 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/entry/src/main/ets/pages/Index.protoBin differ 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 0000000..c8be1d8 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/cache/.default/npmEntries.protoBin differ 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": ";IAQW,SAAS,GAAE,GAAG,EAAE;IAChB,UAAU,GAAE,GAAG,EAAE;IACjB,QAAQ,GAAE,GAAG,EAAE;IACf,QAAQ,GAAE,OAAO;IACjB,UAAU,GAAE,MAAM;IAClB,UAAU,GAAE,MAAM,GAAG,IAAI;IACzB,SAAS,GAAE,OAAO;IAClB,WAAW,GAAE,OAAO;IACpB,UAAU,GAAE,OAAO;IACnB,eAAe,GAAE,OAAO;IACxB,WAAW,GAAE,OAAO;IACpB,YAAY,GAAE,SAAS,EAAE;;OAnB7B,EAAE,UAAU,EAAE;OACd,EAAE,aAAa,EAAE;OACjB,EAAE,aAAa,EAAE;cACf,SAAS,QAAQ,4BAA4B,CAAC,WAAW;;MAI3D,KAAK;IAFZ;;;;;wDAG8B,EAAE,CAAC,YAAY;;;yDACd,EAAE,CAAC,UAAU;;;uDACf,EAAE,CAAC,YAAY;;;uDACb,KAAK,CAAC,SAAS;;;yDACd,CAAC,CAAC,CAAC,SAAS;;;yDACL,IAAI,CAAC,SAAS;;;wDACrB,IAAI,CAAC,YAAY;;;0DACf,IAAI,CAAC,SAAS;;;yDACf,IAAI,CAAC,SAAS;;;8DACT,IAAI,CAAC,aAAa;;;0DACtB,IAAI,CAAC,eAAe;;;2DACf,EAAE,CAAC,aAAa;QACrD,sDAAsD;QACtD,oEAAoE;QAEpE,oBAAoB;QACpB,kEAAkE;QAClE,4DAA4D;QAC5D,6BAA6B;QAC7B,wCAAwC;QACxC,oDAAoD;QACpD,0EAA0E;QAC1E,+CAA+C;QAC/C,IAAI;;;;KA5BgD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKpD,8CAAoB,GAAG,EAAE,EAAK,CAAC,YAAY;QAAlC,SAAS;;;QAAT,SAAS,WAAE,GAAG,EAAE;;;IACzB,+CAAqB,GAAG,EAAE,EAAK,CAAC,UAAU;QAAjC,UAAU;;;QAAV,UAAU,WAAE,GAAG,EAAE;;;IAC1B,6CAAmB,GAAG,EAAE,EAAK,CAAC,YAAY;QAAjC,QAAQ;;;QAAR,QAAQ,WAAE,GAAG,EAAE;;;IACxB,6CAAmB,OAAO,EAAQ,CAAC,SAAS;QAAnC,QAAQ;;;QAAR,QAAQ,WAAE,OAAO;;;IAC1B,+CAAqB,MAAM,EAAK,CAAC,SAAS;QAAjC,UAAU;;;QAAV,UAAU,WAAE,MAAM;;;IAC3B,+CAAqB,MAAM,GAAG,IAAI,EAAO,CAAC,SAAS;QAA1C,UAAU;;;QAAV,UAAU,WAAE,MAAM,GAAG,IAAI;;;IAClC,8CAAoB,OAAO,EAAO,CAAC,YAAY;QAAtC,SAAS;;;QAAT,SAAS,WAAE,OAAO;;;IAC3B,gDAAsB,OAAO,EAAO,CAAC,SAAS;QAArC,WAAW;;;QAAX,WAAW,WAAE,OAAO;;;IAC7B,+CAAqB,OAAO,EAAO,CAAC,SAAS;QAApC,UAAU;;;QAAV,UAAU,WAAE,OAAO;;;IAC5B,oDAA0B,OAAO,EAAO,CAAC,aAAa;QAA7C,eAAe;;;QAAf,eAAe,WAAE,OAAO;;;IACjC,gDAAsB,OAAO,EAAO,CAAC,eAAe;QAA3C,WAAW;;;QAAX,WAAW,WAAE,OAAO;;;IAC7B,iDAAuB,SAAS,EAAE,EAAK,CAAC,aAAa;QAA5C,YAAY;;;QAAZ,YAAY,WAAE,SAAS,EAAE;;;IAClC,sDAAsD;IACtD,oEAAoE;IAEpE,oBAAoB;IACpB,kEAAkE;IAClE,4DAA4D;IAC5D,6BAA6B;IAC7B,wCAAwC;IACxC,oDAAoD;IACpD,0EAA0E;IAC1E,+CAA+C;IAC/C,IAAI;IAEJ;;;YACE,MAAM;;YAAN,MAAM,CAUL,KAAK,CAAC,MAAM;YAVb,MAAM,CAWL,MAAM,CAAC,MAAM;;gBAXd,MAAM;;;;;;;;;;;;oBACJ,QAAQ;oBACR,UAAU;;;;;;;;;;;;;;;;oBAEV,QAAQ;oBACR,aAAa;;;;;;;;;;;;;;;;oBAEb,QAAQ;oBACR,aAAa;;;;;;;;QARf,MAAM;KAYP" + }, + "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": "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" + }, + "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:messageSCallExpression("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 { + 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 0000000..66ff239 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-TopMenu.ets-1aee16f3970fdc246c6e874cecdca34a.msgpack differ 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 0000000..f0bc07e Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/modules/new-functions.ets-c3985e4dd1692731c2379e8e5c36923d.msgpack differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack new file mode 100644 index 0000000..e0bdb76 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack @@ -0,0 +1 @@ +r@ \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack new file mode 100644 index 0000000..65830a1 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack differ 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 0000000..0543bba Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/Datas.ts new file mode 100644 index 0000000..bfa0ac3 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/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/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 0000000..2eff369 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/OtherSimObjects.protoBin differ 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 0000000..52d7de3 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/SimBase.ts new file mode 100644 index 0000000..913f7d7 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/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/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 0000000..e655787 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/classes/TopMenu.protoBin differ 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 0000000..5c81fa1 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/ButtomMenuBar.ts new file mode 100644 index 0000000..81855c7 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/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/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 0000000..a8b381b Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Dialog.protoBin differ 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 0000000..c00bcfe Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/MiddleContent.ts new file mode 100644 index 0000000..3ca13c8 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/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/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 0000000..7bc1a02 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.ts new file mode 100644 index 0000000..7f14b27 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/Table.ts @@ -0,0 +1,498 @@ +interface targetHost_Params { + simPacket?: SimPacket; + host?: string; +} +interface sendHost_Params { + simPacket?: SimPacket; +} +interface TableChart_Params { + simObj?: SimBase; +} +interface NetworkChart_Params { + simObj?: SimBase; +} +import type { SimPacket } from '../classes/OtherSimObjects'; +import type { SimBase, Table } from '../classes/SimBase'; +export class NetworkChart 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: NetworkChart_Params) { + this.__simObj.set(params.simObj); + } + updateStateVars(params: NetworkChart_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(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 0000000..b5007e4 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.protoBin differ diff --git a/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.ts b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/components/TopMenuBar.ts new file mode 100644 index 0000000..9981a2e --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/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/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 0000000..9050102 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/entryability/EntryAbility.protoBin differ 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 0000000..247ce00 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/functions/functions.protoBin differ 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 0000000..738f11d Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/entry/src/main/ets/pages/Index.protoBin differ 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 0000000..c8be1d8 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/cache/default/default@PreviewArkTS/esmodule/debug/npmEntries.protoBin differ 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 0000000..c004100 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/assets/default/ets/modules.abc differ 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": ";IAUU,cAAc,GAAE,WAAW,EAAE;IAsB5B,SAAS,GAAE,OAAO,EAAE,CAAC,SAAS;;IAC9B,QAAQ,GAAE,OAAO,CAAC,SAAS;;IAC3B,UAAU,GAAE,MAAM,CAAC,SAAS;;IAC5B,UAAU,GAAE,MAAM,GAAG,IAAI,CAAC,SAAS;;IACnC,QAAQ,GAAE,GAAG,EAAE,CAAC,YAAY;;IAC5B,SAAS,GAAE,OAAO,CAAC,UAAU;;IAEtC,QAAQ,GAAE,QAAQ;IACM,OAAO,GAAE,MAAM;;cAxChC,OAAO,QAAQ,oBAAoB;AAE5C,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb;AAGD,MAAM,OAAQ,aAAa;IAD3B;;;;;8BAE0C;YACtC;gBACE,IAAI,EAAE,IAAI;gBACV,KAAK,iHAAuB;gBAC5B,IAAI,EAAE,CAAC;aACR;YACD;gBACE,IAAI,EAAE,KAAK;gBACX,KAAK,iHAAyB;gBAC9B,IAAI,EAAE,CAAC;aACR;YACD;gBACE,IAAI,EAAE,KAAK;gBACX,KAAK,iHAA4B;gBACjC,IAAI,EAAE,CAAC;aACR;YACD;gBACE,IAAI,EAAE,KAAK;gBACX,KAAK,iHAA0B;gBAC/B,IAAI,EAAE,CAAC;aACR;SACF,CAAC,UAAU;;;;;;;;wBAQS,IAAI,QAAQ,EAAE;gDACtB,SAAS,EAAoB,EAAE;;KAlC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIC,OAAO,iBAAiB,WAAW,EAAE,CAqBpC,CAAC,UAAU;IACZ,gDAAoB,OAAO,EAAE,EAAA,CAAC,SAAS;QAA9B,SAAS;;;QAAT,SAAS,WAAE,OAAO,EAAE,CAAC,SAAS;;;;IACvC,+CAAmB,OAAO,EAAA,CAAC,SAAS;QAA3B,QAAQ;;;QAAR,QAAQ,WAAE,OAAO,CAAC,SAAS;;;;IACpC,iDAAqB,MAAM,EAAA,CAAC,SAAS;QAA5B,UAAU;;;QAAV,UAAU,WAAE,MAAM,CAAC,SAAS;;;;IACrC,iDAAqB,MAAM,GAAG,IAAI,EAAA,CAAC,SAAS;QAAnC,UAAU;;;QAAV,UAAU,WAAE,MAAM,GAAG,IAAI,CAAC,SAAS;;;;IAC5C,+CAAmB,GAAG,EAAE,EAAA,CAAC,YAAY;QAA5B,QAAQ;;;QAAR,QAAQ,WAAE,GAAG,EAAE,CAAC,YAAY;;;;IACrC,gDAAoB,OAAO,EAAA,CAAC,UAAU;QAA7B,SAAS;;;QAAT,SAAS,WAAE,OAAO,CAAC,UAAU;;;;IAEtC,kBAAU,QAAQ,CAAiB;IACnC,8CAAiC,MAAM,EAAK;QAApB,OAAO;;;QAAP,OAAO,WAAE,MAAM;;;IAEvC;;;YACE,GAAG,QAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;YAAjB,GAAG,CA4CF,YAAY,CAAC,CAAC;YA5Cf,GAAG,CA6CF,MAAM,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC;;gBA7CpB,GAAG;;;;;;YACD,OAAO;;;;;oBACL,MAAM;;oBAAN,MAAM,CA2BL,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;;wBA3BlB,MAAM;;;;;;oBACJ,KAAK,QAAC,IAAI,CAAC,KAAK;;oBAAhB,KAAK,CACF,MAAM,CAAC;wBACN,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW;wBACpF,KAAK,EAAE,CAAC;qBACT;oBAJH,KAAK,CAKF,KAAK,CAAC,EAAE;oBALX,KAAK,CAMF,OAAO,CAAC,GAAG,EAAE;wBACZ,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;wBACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;wBAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS;4BAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;4BACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAA;yBAC5B;6BAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW;4BACpD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAA;yBAC5B;6BAAM,EAAE,OAAO;4BACd,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;4BACrB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;yBACrB;wBACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;4BAC5B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;wBACtB,CAAC,CAAC,CAAA,CAAC,oBAAoB;wBACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;oBACxB,CAAC;;wBAtBH,KAAK;;;;;;oBAuBL,IAAI,QAAC,IAAI,CAAC,IAAI;;oBAAd,IAAI,CACD,UAAU,CAAC,UAAU,CAAC,IAAI;;wBAD7B,IAAI;;;;gBAAJ,IAAI;gBAxBN,MAAM;;+CADA,IAAI,CAAC,cAAc;;gBAA3B,OAAO;;;;QAAP,OAAO;;;YA+BP,MAAM,QAAC,IAAI,CAAC,QAAQ;;YAApB,MAAM,CAIL,MAAM,CAAC;gBACN,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,CAAC;aACT;YAPD,MAAM,CAQL,YAAY,CAAC,CAAC;YARf,MAAM,CASL,MAAM,CAAC,MAAM;YATd,MAAM,CAUL,MAAM,CAAC,CAAC;;gBAVT,MAAM;;;;;;YACJ,IAAI,QAAC,IAAI,CAAC,OAAO;;YAAjB,IAAI,CACD,QAAQ,CAAC,EAAE;;gBADd,IAAI;;;;QAAJ,IAAI;QADN,MAAM;QAhCR,GAAG;KA8CJ" + }, + "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 0000000..9c4cacb Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/12827611826178336895 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/897159066498233754 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/897159066498233754 new file mode 100644 index 0000000..e2e46a8 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/app_compiled/897159066498233754 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ids_map/id_defined.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ids_map/id_defined.json new file mode 100644 index 0000000..58893d5 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/ids_map/id_defined.json @@ -0,0 +1,95 @@ +{ + "record" : + [ + { + "id" : "0x01000000", + "name" : "app_name", + "type" : "string" + }, + { + "id" : "0x01000001", + "name" : "app_icon", + "type" : "media" + }, + { + "id" : "0x01000002", + "name" : "startIcon", + "type" : "media" + }, + { + "id" : "0x01000003", + "name" : "icon", + "type" : "media" + }, + { + "id" : "0x01000004", + "name" : "EntryAbility_desc", + "type" : "string" + }, + { + "id" : "0x01000005", + "name" : "EntryAbility_label", + "type" : "string" + }, + { + "id" : "0x01000006", + "name" : "module_desc", + "type" : "string" + }, + { + "id" : "0x01000007", + "name" : "main_pages", + "type" : "profile" + }, + { + "id" : "0x01000008", + "name" : "start_window_background", + "type" : "color" + }, + { + "id" : "0x01000009", + "name" : "jixianqi_tm", + "type" : "media" + }, + { + "id" : "0x0100000A", + "name" : "zhuji", + "type" : "media" + }, + { + "id" : "0x0100000B", + "name" : "jiaohuanji_tm", + "type" : "media" + }, + { + "id" : "0x0100000C", + "name" : "jixianqi", + "type" : "media" + }, + { + "id" : "0x0100000D", + "name" : "luyouqi", + "type" : "media" + }, + { + "id" : "0x0100000E", + "name" : "zhuji_tm", + "type" : "media" + }, + { + "id" : "0x0100000F", + "name" : "packet", + "type" : "media" + }, + { + "id" : "0x01000010", + "name" : "jiaohuanji", + "type" : "media" + }, + { + "id" : "0x01000011", + "name" : "luyouqi_tm", + "type" : "media" + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module.json new file mode 100644 index 0000000..aecb732 --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module.json @@ -0,0 +1 @@ +{"app":{"apiReleaseType":"Release","appEnvironments":[],"buildMode":"debug","bundleName":"com.example.ensp_fourteen","bundleType":"app","compileSdkType":"OpenHarmony","compileSdkVersion":"4.0.10.16","debug":true,"icon":"$media:app_icon","iconId":16777217,"label":"$string:app_name","labelId":16777216,"minAPIVersion":9,"targetAPIVersion":10,"vendor":"example","versionCode":1000000,"versionName":"1.0.0"},"module":{"abilities":[{"description":"$string:EntryAbility_desc","descriptionId":16777220,"exported":true,"icon":"$media:icon","iconId":16777219,"label":"$string:EntryAbility_label","labelId":16777221,"name":"EntryAbility","skills":[{"actions":["action.system.home"],"entities":["entity.system.home"]}],"srcEntry":"./ets/entryability/EntryAbility.ets","startWindowBackground":"$color:start_window_background","startWindowBackgroundId":16777224,"startWindowIcon":"$media:startIcon","startWindowIconId":16777218,"ohmurl":"@normalized:N&undefined&undefined&undefined/src/main/ets/entryability/EntryAbility&undefined"}],"compileMode":"esmodule","deliveryWithInstall":true,"dependencies":[],"description":"$string:module_desc","descriptionId":16777222,"deviceTypes":["default","tablet"],"installationFree":false,"mainElement":"EntryAbility","name":"entry","packageName":"entry","pages":"$profile:main_pages","type":"entry","virtualMachine":"ark9.0.0.0"}} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10580750280879350585 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10580750280879350585 new file mode 100644 index 0000000..e8d5bec Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10580750280879350585 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10646380563940590597 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10646380563940590597 new file mode 100644 index 0000000..4225cad Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/10646380563940590597 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/11213201727408963998 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/11213201727408963998 new file mode 100644 index 0000000..ec539bb Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/11213201727408963998 differ 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 0000000..e7425ef Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/12591516603000343113 differ 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 0000000..a66251f Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/13346930149730069584 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14776038471789566508 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14776038471789566508 new file mode 100644 index 0000000..88025e2 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14776038471789566508 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14800250669292906942 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14800250669292906942 new file mode 100644 index 0000000..2ccf6e5 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/14800250669292906942 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17802602488540885802 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17802602488540885802 new file mode 100644 index 0000000..d6d142d Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17802602488540885802 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17821087964157098802 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17821087964157098802 new file mode 100644 index 0000000..0c12942 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/17821087964157098802 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/1873027210265857131 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/1873027210265857131 new file mode 100644 index 0000000..478fb4b Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/1873027210265857131 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/5334465202777172314 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/5334465202777172314 new file mode 100644 index 0000000..84b0962 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/5334465202777172314 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7615957933737073028 b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7615957933737073028 new file mode 100644 index 0000000..f681078 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7615957933737073028 differ 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 0000000..e891c33 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/7813705467349408760 differ 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 0000000..5acf199 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9598306224695187522 differ 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 0000000..5f6dbb3 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9691874802280713449 differ 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 0000000..e08c2b0 Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/module_compiled/9730315321514649119 differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources.index b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources.index new file mode 100644 index 0000000..9d2de7e Binary files /dev/null and b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources.index differ diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources/base/profile/main_pages.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources/base/profile/main_pages.json new file mode 100644 index 0000000..c225a6e --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/res/default/resources/base/profile/main_pages.json @@ -0,0 +1 @@ +{"src":["pages/Index"]} diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/loader-router-map.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/loader-router-map.json new file mode 100644 index 0000000..0ec611b --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/loader-router-map.json @@ -0,0 +1 @@ +{"routerMap":[]} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/temp-router-map.json b/ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/temp-router-map.json new file mode 100644 index 0000000..0ec611b --- /dev/null +++ b/ensp14ing/ensp14/entry/.preview/default/intermediates/router_map/default/temp-router-map.json @@ -0,0 +1 @@ +{"routerMap":[]} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/build-profile.json5 b/ensp14ing/ensp14/entry/build-profile.json5 new file mode 100644 index 0000000..197e83c --- /dev/null +++ b/ensp14ing/ensp14/entry/build-profile.json5 @@ -0,0 +1,31 @@ +{ + "apiType": "stageMode", + "buildOption": { + "arkOptions": { + // "apPath": "./modules.ap" /* Profile used for profile-guided optimization (PGO), a compiler optimization technique to improve app runtime performance. */ + } + }, + "buildOptionSet": [ + { + "name": "release", + "arkOptions": { + "obfuscation": { + "ruleOptions": { + "enable": true, + "files": [ + "./obfuscation-rules.txt" + ] + } + } + } + }, + ], + "targets": [ + { + "name": "default" + }, + { + "name": "ohosTest", + } + ] +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/hvigorfile.ts b/ensp14ing/ensp14/entry/hvigorfile.ts new file mode 100644 index 0000000..c6edcd9 --- /dev/null +++ b/ensp14ing/ensp14/entry/hvigorfile.ts @@ -0,0 +1,6 @@ +import { hapTasks } from '@ohos/hvigor-ohos-plugin'; + +export default { + system: hapTasks, /* Built-in plugin of Hvigor. It cannot be modified. */ + plugins:[] /* Custom plugin to extend the functionality of Hvigor. */ +} diff --git a/ensp14ing/ensp14/entry/obfuscation-rules.txt b/ensp14ing/ensp14/entry/obfuscation-rules.txt new file mode 100644 index 0000000..985b2ae --- /dev/null +++ b/ensp14ing/ensp14/entry/obfuscation-rules.txt @@ -0,0 +1,18 @@ +# Define project specific obfuscation rules here. +# You can include the obfuscation configuration files in the current module's build-profile.json5. +# +# For more details, see +# https://gitee.com/openharmony/arkcompiler_ets_frontend/blob/master/arkguard/README.md + +# Obfuscation options: +# -disable-obfuscation: disable all obfuscations +# -enable-property-obfuscation: obfuscate the property names +# -enable-toplevel-obfuscation: obfuscate the names in the global scope +# -compact: remove unnecessary blank spaces and all line feeds +# -remove-log: remove all console.* statements +# -print-namecache: print the name cache that contains the mapping from the old names to new names +# -apply-namecache: reuse the given cache file + +# Keep options: +# -keep-property-name: specifies property names that you want to keep +# -keep-global-name: specifies names that you want to keep in the global scope \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/oh-package.json5 b/ensp14ing/ensp14/entry/oh-package.json5 new file mode 100644 index 0000000..225946c --- /dev/null +++ b/ensp14ing/ensp14/entry/oh-package.json5 @@ -0,0 +1,10 @@ +{ + "license": "", + "devDependencies": {}, + "author": "", + "name": "entry", + "description": "Please describe the basic information.", + "main": "", + "version": "1.0.0", + "dependencies": {} +} diff --git a/ensp14ing/ensp14/entry/src/main/ets/classes/Datas.ets b/ensp14ing/ensp14/entry/src/main/ets/classes/Datas.ets new file mode 100644 index 0000000..77371c0 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/main/ets/classes/Datas.ets @@ -0,0 +1,248 @@ +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 +} // 主机收到的链路层数据包的数据结构 + + + 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 0000000..cd45acc Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/icon.png differ 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 0000000..1467d82 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji.png differ 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 0000000..e2d78d0 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/jiaohuanji_tm.png differ diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi.png new file mode 100644 index 0000000..5b3de1a Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi.png differ 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 0000000..cdae403 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/jixianqi_tm.png differ 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 0000000..cb99d04 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi.png differ diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi_tm.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi_tm.png new file mode 100644 index 0000000..8c17004 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/luyouqi_tm.png differ 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 0000000..50a8ef0 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/packet.png differ diff --git a/ensp14ing/ensp14/entry/src/main/resources/base/media/startIcon.png b/ensp14ing/ensp14/entry/src/main/resources/base/media/startIcon.png new file mode 100644 index 0000000..366f764 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/startIcon.png differ 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 0000000..58189e3 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji.png differ 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 0000000..a2e634a Binary files /dev/null and b/ensp14ing/ensp14/entry/src/main/resources/base/media/zhuji_tm.png differ 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 0000000..ce307a8 Binary files /dev/null and b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/media/icon.png differ diff --git a/ensp14ing/ensp14/entry/src/ohosTest/resources/base/profile/test_pages.json b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/profile/test_pages.json new file mode 100644 index 0000000..b7e7343 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/ohosTest/resources/base/profile/test_pages.json @@ -0,0 +1,5 @@ +{ + "src": [ + "testability/pages/Index" + ] +} diff --git a/ensp14ing/ensp14/entry/src/test/List.test.ets b/ensp14ing/ensp14/entry/src/test/List.test.ets new file mode 100644 index 0000000..bb5b5c3 --- /dev/null +++ b/ensp14ing/ensp14/entry/src/test/List.test.ets @@ -0,0 +1,5 @@ +import localUnitTest from './LocalUnit.test'; + +export default function testsuite() { + localUnitTest(); +} \ No newline at end of file diff --git a/ensp14ing/ensp14/entry/src/test/LocalUnit.test.ets b/ensp14ing/ensp14/entry/src/test/LocalUnit.test.ets new file mode 100644 index 0000000..ed22d4d --- /dev/null +++ b/ensp14ing/ensp14/entry/src/test/LocalUnit.test.ets @@ -0,0 +1,33 @@ +import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'; + +export default function localUnitTest() { + describe('localUnitTest',() => { + // 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 0000000..52847bd Binary files /dev/null and b/ensp14ing/figs/evolution.png differ diff --git a/ensp14ing/figs/overall.png b/ensp14ing/figs/overall.png new file mode 100644 index 0000000..c9c7d20 Binary files /dev/null and b/ensp14ing/figs/overall.png differ diff --git a/ensp14ing/figs/relation.png b/ensp14ing/figs/relation.png new file mode 100644 index 0000000..769a2aa Binary files /dev/null and b/ensp14ing/figs/relation.png differ