From 295bcacb22e65cc5ec5761101073fce0471a1485 Mon Sep 17 00:00:00 2001 From: zpz1349878361 <1349878361@qq.com> Date: Tue, 22 Oct 2024 22:09:04 +0800 Subject: [PATCH] 111 --- ... Framework 源码的项目泛读报告.docx | Bin 0 -> 18350 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/华为 Framework 源码的项目泛读报告.docx diff --git a/doc/华为 Framework 源码的项目泛读报告.docx b/doc/华为 Framework 源码的项目泛读报告.docx new file mode 100644 index 0000000000000000000000000000000000000000..056bff06c62eb76cf99a193522839e1c8300f9d6 GIT binary patch literal 18350 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