From 65e6a5233e999e2b9f37415bb3c07dce4c5c74b6 Mon Sep 17 00:00:00 2001 From: ai_member_only Date: Wed, 3 Jun 2026 08:10:02 +0800 Subject: [PATCH] auto backup: 2026-06-03 08:10:02 --- .vala_skill_hashes | 2 +- AGENTS.md | 160 +- MEMORY.md | 21 +- add_month_week.py | 69 + .../skills}/biaoshu/SKILL.md | 0 .../skills}/biaoshu/scripts/biaoshu_number.py | 0 .../cambridge-yle-ket-exam-library/SKILL.md | 0 .../core-content-json-standard/SKILL.md | 0 .../全包词汇/L2知识库-三级+A2.xlsx | Bin 0 -> 86542 bytes .../三级单词表_已标注词性.xlsx | Bin 136412 -> 0 bytes .../全包词汇/新课标单词_36-40.xlsx | Bin 0 -> 6862 bytes .../现状/L2 已使用.xlsx | Bin 63089 -> 50692 bytes .../_shared}/audit_l1_config/SKILL.md | 0 .../_shared}/bitable-reader/SKILL.md | 0 .../_shared}/feishu-embedded-sheet/SKILL.md | 25 + .../knowledge-mastery-calculator/SKILL.md | 5 + .../lark_bitable_operate_as_bot/SKILL.md | 10 +- .../scripts/operate_bitable.sh | 0 .../_shared/lark_docx_update_as_bot/SKILL.md | 135 + .../单元挑战/scripts}/apply_fixes.py | 4 +- .../scripts}/audit_all_unit_challenge.py | 0 .../scripts}/audit_core_reading_S0.py | 0 .../scripts}/audit_explanation.py | 0 .../单元挑战/scripts}/audit_final.py | 0 .../单元挑战/scripts}/audit_l1_config.py | 0 .../scripts}/audit_listening_explanation.py | 0 .../audit_listening_explanation_v2.py | 0 .../scripts}/audit_listening_full.py | 2 +- .../audit_unit_challenge_listening.py | 2 +- .../audit_unit_challenge_listening_v2.py | 2 +- .../scripts}/audit_unit_challenge_reading.py | 2 +- .../scripts}/audit_unit_challenge_v2.py | 2 +- .../scripts}/audit_unit_challenge_v3.py | 2 +- .../单元挑战/scripts}/backfill_audit.py | 2 +- .../单元挑战/scripts}/backfill_fixed.py | 0 .../scripts}/backfill_listening_audit.py | 0 .../scripts}/backfill_unit_challenge.py | 0 .../scripts}/batch_create_delayed.py | 0 .../scripts}/batch_create_safe.py | 0 .../scripts}/batch_create_two_step.py | 0 .../scripts}/batch_reading_matchInfo.py | 0 .../scripts}/batch_reading_pic_judge.py | 0 .../scripts}/batch_reading_pic_qa.py | 0 .../scripts}/batch_reading_pic_qa_2.py | 0 .../build_listening_choose_1217310.py | 0 .../scripts}/fill_speaking_expl.py | 0 .../单元挑战/scripts}/final_audit_all.py | 0 .../单元挑战/scripts}/final_fix.py | 0 .../scripts}/fix_021801_second.py | 0 .../单元挑战/scripts}/fix_ability_tags.py | 0 .../scripts}/fix_ability_tags_v2.py | 0 .../单元挑战/scripts}/fix_and_backfill.py | 2 +- .../scripts}/fix_and_backfill_v2.py | 0 .../scripts}/fix_and_backfill_v3.py | 0 .../单元挑战/scripts}/fix_answerset.py | 0 .../单元挑战/scripts}/fix_components.py | 0 .../scripts}/fix_distributions.py | 0 .../scripts}/fix_json_and_p5p6.py | 0 .../scripts}/fix_matchInfo_0213_0218_desc.py | 0 .../单元挑战/scripts}/fix_p1_4records.py | 0 .../scripts}/fix_p2_pic_batch2.py | 0 .../单元挑战/scripts}/fix_p2_records.py | 0 .../单元挑战/scripts}/fix_p4_dialogue.py | 0 .../单元挑战/scripts}/fix_remaining.py | 0 .../scripts}/fix_second_and_pic.py | 0 .../scripts}/fix_writing_records.py | 0 .../单元挑战/scripts}/gen_batch3.py | 0 .../scripts}/gen_unit_challenge_spk_wrt.py | 0 .../scripts}/gen_writing_speaking.py | 0 .../scripts}/gen_writing_speaking_batch2.py | 0 .../scripts}/generate_explanations.py | 0 .../scripts}/inject_text_rules.py | 0 .../insert_listening_choose_1217310.py | 0 .../单元挑战/scripts}/patch_ability.py | 0 .../scripts}/produce_p1_picture.py | 0 .../scripts}/produce_speaking_p4.py | 0 .../单元挑战/scripts}/rewrite_p4_all.py | 2 +- .../scripts}/scan_missing_explanations.py | 0 .../单元挑战/scripts}/test_one_record.py | 0 .../scripts}/update_image_descriptions.py | 0 .../scripts}/update_l2_difficulty_skills.py | 0 .../scripts}/update_pic_judge_descriptions.py | 0 .../scripts}/update_speaking_p4.py | 0 .../scripts}/update_speaking_qa_ability.py | 0 .../scripts}/update_writing_p1.py | 0 .../单元挑战/scripts}/verify_record.py | 0 .../scripts}/write_audit_results.py | 2 +- .../scripts}/write_audit_results_v2.py | 0 .../scripts}/write_audit_results_v3.py | 0 .../skills/audit_unit_challenge/SKILL.md | 20 +- .../reading/reading_pic_judge/SKILL.md | 37 - .../questions/reading/reading_pic_qa/SKILL.md | 37 - .../writing/common/writing_pic_qa/SKILL.md | 6 +- .../questions/writing/writing_pic_qa/SKILL.md | 35 - .../scripts}/convert_components_to_json.py | 0 .../scripts}/dialogue_backfill.py | 0 .../scripts}/dialogue_backfill_v2.py | 0 .../组件生产/scripts}/fill_components.py | 0 .../scripts}/fill_components_by_id.py | 0 .../scripts}/fill_components_by_id_fixed.py | 0 .../scripts}/generate_component_configs.py | 0 .../scripts}/produce_components_111.py | 0 .../scripts}/write_L4_F_configs.py | 0 .../scripts}/write_L5_G_configs.py | 0 .../scripts}/write_L5_G_configs_v2.py | 0 .../组件生产/scripts}/write_p4_safe.py | 0 .../scripts}/write_p4_to_bitable.py | 0 .../组件生产/scripts}/write_p4_v2.py | 0 .../skills}/dialogue-choose-config/SKILL.md | 0 .../dialogue-core-navigation-config/SKILL.md | 0 .../dialogue-fill-in-blanks-config/SKILL.md | 0 .../SKILL.md | 0 .../skills}/dialogue-reading-config/SKILL.md | 0 .../SKILL.md | 0 .../SKILL.md | 0 .../SKILL.md | 0 .../info-sentence-building-config/SKILL.md | 0 .../info-word-spelling-config/SKILL.md | 0 .../组件生产/skills}/task-router/SKILL.md | 2 +- .../skills}/task-router/agents/openai.yaml | 0 .../task-router/component_configs.yaml | 0 .../task-router/scripts/generate_component.py | 0 .../task-router/scripts/review_component.py | 0 .../task-router/scripts/route_request.py | 0 .../skills}/task-router/test_config.json | 0 .../db/components.db | Bin 6311936 -> 6717440 bytes ...2-U18-L2 登龙秘笈_20260602_122952.html | 5627 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_143618.html | 5627 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_144300.html | 5627 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_145304.html | 5627 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_150355.html | 5626 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_151410.html | 5631 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_152759.html | 5647 ++++++++++++++++ ...2-U18-L2 登龙秘笈_20260602_154030.html | 5973 +++++++++++++++++ .../__pycache__/__init__.cpython-312.pyc | Bin 184 -> 213 bytes .../core_imagedrag_prompts.cpython-312.pyc | Bin 10313 -> 10342 bytes ...e_listening_choose_prompts.cpython-312.pyc | Bin 19485 -> 19582 bytes ...ore_listening_drag_prompts.cpython-312.pyc | Bin 21411 -> 21508 bytes ...re_listening_order_prompts.cpython-312.pyc | Bin 22699 -> 22796 bytes .../core_reading_prompts.cpython-312.pyc | Bin 29221 -> 29250 bytes ...ore_speaking_image_prompts.cpython-312.pyc | Bin 20920 -> 20949 bytes ...e_speaking_inquiry_prompts.cpython-312.pyc | Bin 24528 -> 24557 bytes .../core_speaking_prompts.cpython-312.pyc | Bin 12131 -> 12160 bytes .../core_writing_img_prompts.cpython-312.pyc | Bin 34848 -> 34877 bytes ...e_writing_question_prompts.cpython-312.pyc | Bin 36903 -> 36932 bytes .../prompt_registry.cpython-312.pyc | Bin 51914 -> 51943 bytes .../references/component_registry.md | 2 +- .../__pycache__/db_manager.cpython-312.pyc | Bin 15147 -> 15176 bytes .../__pycache__/feishu_client.cpython-312.pyc | Bin 20194 -> 20194 bytes .../__pycache__/generate_json.cpython-312.pyc | Bin 90671 -> 90700 bytes .../__pycache__/html_report.cpython-312.pyc | Bin 61172 -> 65413 bytes .../__pycache__/kp_matcher.cpython-312.pyc | Bin 16138 -> 16138 bytes .../__pycache__/llm_client.cpython-312.pyc | Bin 11780 -> 11780 bytes .../match_component.cpython-312.pyc | Bin 10464 -> 10464 bytes .../__pycache__/parse_script.cpython-312.pyc | Bin 32030 -> 32030 bytes .../scripts/html_report.py | 170 +- .../scripts/pipeline.py | 3 + .../scripts/proxy_server.py | 3 +- .../scripts}/backfill_G_152_plus.py | 0 .../英文台词/scripts}/fill_000001.py | 0 .../kids-english-script-production/SKILL.md | 73 + compare_vocabulary.py | 41 + compare_vocabulary2.py | 41 + memory/.dreams/events.jsonl | 2 + memory/.dreams/short-term-recall.json | 143 +- ...26-04-03-request-timed-out-before-a-res.md | 2 +- ...26-04-13-request-timed-out-before-a-res.md | 2 +- memory/2026-05-12.md | 18 +- memory/2026-05-17.md | 4 +- memory/2026-05-18.md | 6 +- memory/2026-06-02-1227.md | 49 + memory/2026-06-02-1433.md | 47 + memory/2026-06-02-1440.md | 28 + memory/2026-06-02-1450.md | 23 + memory/2026-06-02-1451.md | 28 + memory/2026-06-02-1501.md | 37 + memory/2026-06-02-1511.md | 45 + memory/2026-06-02-1525.md | 26 + memory/2026-06-02-1537.md | 36 + .../audit_l1_config.cpython-312.pyc | Bin 14843 -> 0 bytes .../batch_reading_pic_qa.cpython-312.pyc | Bin 19097 -> 0 bytes .../rewrite_p4_all.cpython-312.pyc | Bin 47810 -> 0 bytes skills/vala_git_workspace_backup/SKILL.md | 5 + 183 files changed, 46545 insertions(+), 262 deletions(-) create mode 100644 add_month_week.py rename {skills => business_knowledge/skills}/biaoshu/SKILL.md (100%) rename {skills => business_knowledge/skills}/biaoshu/scripts/biaoshu_number.py (100%) rename {skills => business_knowledge/skills}/cambridge-yle-ket-exam-library/SKILL.md (100%) rename {skills => business_knowledge/skills}/core-content-json-standard/SKILL.md (100%) create mode 100644 business_knowledge/新知识库初版/全包词汇/L2知识库-三级+A2.xlsx delete mode 100644 business_knowledge/新知识库初版/全包词汇/三级单词表_已标注词性.xlsx create mode 100644 business_knowledge/新知识库初版/全包词汇/新课标单词_36-40.xlsx rename {skills => business_production/_shared}/audit_l1_config/SKILL.md (100%) rename {skills => business_production/_shared}/bitable-reader/SKILL.md (100%) rename {skills => business_production/_shared}/feishu-embedded-sheet/SKILL.md (85%) rename {skills => business_production/_shared}/knowledge-mastery-calculator/SKILL.md (93%) rename {skills => business_production/_shared}/lark_bitable_operate_as_bot/SKILL.md (73%) rename {skills => business_production/_shared}/lark_bitable_operate_as_bot/scripts/operate_bitable.sh (100%) create mode 100644 business_production/_shared/lark_docx_update_as_bot/SKILL.md rename {scripts => business_production/单元挑战/scripts}/apply_fixes.py (94%) rename {scripts => business_production/单元挑战/scripts}/audit_all_unit_challenge.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_core_reading_S0.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_explanation.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_final.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_l1_config.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_listening_explanation.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_listening_explanation_v2.py (100%) rename {scripts => business_production/单元挑战/scripts}/audit_listening_full.py (98%) rename {scripts => business_production/单元挑战/scripts}/audit_unit_challenge_listening.py (98%) rename {scripts => business_production/单元挑战/scripts}/audit_unit_challenge_listening_v2.py (98%) rename {scripts => business_production/单元挑战/scripts}/audit_unit_challenge_reading.py (97%) rename {scripts => business_production/单元挑战/scripts}/audit_unit_challenge_v2.py (98%) rename {scripts => business_production/单元挑战/scripts}/audit_unit_challenge_v3.py (98%) rename {scripts => business_production/单元挑战/scripts}/backfill_audit.py (96%) rename {scripts => business_production/单元挑战/scripts}/backfill_fixed.py (100%) rename {scripts => business_production/单元挑战/scripts}/backfill_listening_audit.py (100%) rename {scripts => business_production/单元挑战/scripts}/backfill_unit_challenge.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_create_delayed.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_create_safe.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_create_two_step.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_reading_matchInfo.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_reading_pic_judge.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_reading_pic_qa.py (100%) rename {scripts => business_production/单元挑战/scripts}/batch_reading_pic_qa_2.py (100%) rename {scripts => business_production/单元挑战/scripts}/build_listening_choose_1217310.py (100%) rename {scripts => business_production/单元挑战/scripts}/fill_speaking_expl.py (100%) rename {scripts => business_production/单元挑战/scripts}/final_audit_all.py (100%) rename {scripts => business_production/单元挑战/scripts}/final_fix.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_021801_second.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_ability_tags.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_ability_tags_v2.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_and_backfill.py (99%) rename {scripts => business_production/单元挑战/scripts}/fix_and_backfill_v2.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_and_backfill_v3.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_answerset.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_components.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_distributions.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_json_and_p5p6.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_matchInfo_0213_0218_desc.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_p1_4records.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_p2_pic_batch2.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_p2_records.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_p4_dialogue.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_remaining.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_second_and_pic.py (100%) rename {scripts => business_production/单元挑战/scripts}/fix_writing_records.py (100%) rename {scripts => business_production/单元挑战/scripts}/gen_batch3.py (100%) rename {scripts => business_production/单元挑战/scripts}/gen_unit_challenge_spk_wrt.py (100%) rename {scripts => business_production/单元挑战/scripts}/gen_writing_speaking.py (100%) rename {scripts => business_production/单元挑战/scripts}/gen_writing_speaking_batch2.py (100%) rename {scripts => business_production/单元挑战/scripts}/generate_explanations.py (100%) rename {scripts => business_production/单元挑战/scripts}/inject_text_rules.py (100%) rename {scripts => business_production/单元挑战/scripts}/insert_listening_choose_1217310.py (100%) rename {scripts => business_production/单元挑战/scripts}/patch_ability.py (100%) rename {scripts => business_production/单元挑战/scripts}/produce_p1_picture.py (100%) rename {scripts => business_production/单元挑战/scripts}/produce_speaking_p4.py (100%) rename {scripts => business_production/单元挑战/scripts}/rewrite_p4_all.py (99%) rename {scripts => business_production/单元挑战/scripts}/scan_missing_explanations.py (100%) rename {scripts => business_production/单元挑战/scripts}/test_one_record.py (100%) rename {scripts => business_production/单元挑战/scripts}/update_image_descriptions.py (100%) rename {scripts => business_production/单元挑战/scripts}/update_l2_difficulty_skills.py (100%) rename {scripts => business_production/单元挑战/scripts}/update_pic_judge_descriptions.py (100%) rename {scripts => business_production/单元挑战/scripts}/update_speaking_p4.py (100%) rename {scripts => business_production/单元挑战/scripts}/update_speaking_qa_ability.py (100%) rename {scripts => business_production/单元挑战/scripts}/update_writing_p1.py (100%) rename {scripts => business_production/单元挑战/scripts}/verify_record.py (100%) rename {scripts => business_production/单元挑战/scripts}/write_audit_results.py (98%) rename {scripts => business_production/单元挑战/scripts}/write_audit_results_v2.py (100%) rename {scripts => business_production/单元挑战/scripts}/write_audit_results_v3.py (100%) delete mode 100644 business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_judge/SKILL.md delete mode 100644 business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_qa/SKILL.md delete mode 100644 business_production/单元挑战/skills/unit_challenge/questions/writing/writing_pic_qa/SKILL.md rename {scripts => business_production/组件生产/scripts}/convert_components_to_json.py (100%) rename {scripts => business_production/组件生产/scripts}/dialogue_backfill.py (100%) rename {scripts => business_production/组件生产/scripts}/dialogue_backfill_v2.py (100%) rename {scripts => business_production/组件生产/scripts}/fill_components.py (100%) rename {scripts => business_production/组件生产/scripts}/fill_components_by_id.py (100%) rename {scripts => business_production/组件生产/scripts}/fill_components_by_id_fixed.py (100%) rename {scripts => business_production/组件生产/scripts}/generate_component_configs.py (100%) rename {scripts => business_production/组件生产/scripts}/produce_components_111.py (100%) rename {scripts => business_production/组件生产/scripts}/write_L4_F_configs.py (100%) rename {scripts => business_production/组件生产/scripts}/write_L5_G_configs.py (100%) rename {scripts => business_production/组件生产/scripts}/write_L5_G_configs_v2.py (100%) rename {scripts => business_production/组件生产/scripts}/write_p4_safe.py (100%) rename {scripts => business_production/组件生产/scripts}/write_p4_to_bitable.py (100%) rename {scripts => business_production/组件生产/scripts}/write_p4_v2.py (100%) rename {skills => business_production/组件生产/skills}/dialogue-choose-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-core-navigation-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-fill-in-blanks-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-image-description-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-reading-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-selective-reading-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-sentence-building-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/dialogue-single-choice-image-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/info-sentence-building-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/info-word-spelling-config/SKILL.md (100%) rename {skills => business_production/组件生产/skills}/task-router/SKILL.md (94%) rename {skills => business_production/组件生产/skills}/task-router/agents/openai.yaml (100%) rename {skills => business_production/组件生产/skills}/task-router/component_configs.yaml (100%) rename {skills => business_production/组件生产/skills}/task-router/scripts/generate_component.py (100%) rename {skills => business_production/组件生产/skills}/task-router/scripts/review_component.py (100%) rename {skills => business_production/组件生产/skills}/task-router/scripts/route_request.py (100%) rename {skills => business_production/组件生产/skills}/task-router/test_config.json (100%) create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_122952.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_143618.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_144300.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_145304.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_150355.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_151410.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_152759.html create mode 100644 business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_154030.html rename {scripts => business_production/英文台词/scripts}/backfill_G_152_plus.py (100%) rename {scripts => business_production/英文台词/scripts}/fill_000001.py (100%) create mode 100644 compare_vocabulary.py create mode 100644 compare_vocabulary2.py create mode 100644 memory/2026-06-02-1227.md create mode 100644 memory/2026-06-02-1433.md create mode 100644 memory/2026-06-02-1440.md create mode 100644 memory/2026-06-02-1450.md create mode 100644 memory/2026-06-02-1451.md create mode 100644 memory/2026-06-02-1501.md create mode 100644 memory/2026-06-02-1511.md create mode 100644 memory/2026-06-02-1525.md create mode 100644 memory/2026-06-02-1537.md delete mode 100644 scripts/__pycache__/audit_l1_config.cpython-312.pyc delete mode 100644 scripts/__pycache__/batch_reading_pic_qa.cpython-312.pyc delete mode 100644 scripts/__pycache__/rewrite_p4_all.cpython-312.pyc diff --git a/.vala_skill_hashes b/.vala_skill_hashes index 785241c..2ef855a 100644 --- a/.vala_skill_hashes +++ b/.vala_skill_hashes @@ -5,7 +5,6 @@ find-skills fc331652faaa71746a3f63a6bd46ae57da7679c5081b03e84c930ed366493503 skill-builder 20cdb6ec00e493cdfac624a9a844207acf1bf155c6f3f8e07c2bbf591ba2e73b kids-english-script-production 3cb6929e4f5a43e7245adb79091e56ce4cc2ae77198dc795fe1cc088575c3a78 lark_wiki_operate_as_bot 2a37701f568849f03eb46dd938baeda171380fe252b698ac8bda69caa19aea08 -vala_git_workspace_backup 4cf352bec88fe84af065ba1ffcbb06647b77df0e01860faaf0bca9fd64b968ec cambridge-yle-ket-exam-library 5c87898002c7d6175b8076ad18c46dea043e1d4e971371b90647d188bbbb06a9 task-router 08d85461f17ee0bad2ad6f64f84f3c826cd69a515fe56aa847909d097cc40fab vala-interactive-components ec339d3314d3874e366199a14f71b1c94b8965cc1c64e34d9ea4211583696cef @@ -47,3 +46,4 @@ interactive-component-json 243023a4e9ba4482347b84a69c21f33d1d06a2a5cff6b8e15da05 audit_l1_config 88298b77e28be383fa31b75c8e48c3c05c950848af656126c45c35e93219e8f1 bitable-reader 8e1beacd3612c102c1b210307532f1f61a0351ef24ae32b62f1c62998bcd5363 core-content-json-standard 261bfe87076f0700d68811db431702bc22e647d3fa6bbcd8c6b75d573103f911 +vala_git_workspace_backup 6e07e4904702dd2b8c4041fee5bdeed5ea3e80f15fc440fafbfeaa334c0684a1 diff --git a/AGENTS.md b/AGENTS.md index b47e22e..eab49fe 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -135,9 +135,9 @@ System: [...] Feishu[xiaobian] group oc_xxx | 发送者 (ou_xxx) [msg:om_xxx] | 目录 | 用途 | 说明 | |------|------|------| | `memory/` | 短期记忆 | 按天记录工作日志,格式 `YYYY-MM-DD.md` | -| `business_knowledge/` | 业务知识库 | **所有业务知识统一存放于此**,包括业务术语、数据表说明、SQL 模板、数据抽取脚本等 | -| `business_production/` | 核心业务生产区 | 按业务模块独立隔离,包含「剧本翻译/课程组件/巩固题/单元挑战/英文台词/组件生产/组件配置」等独立子目录。其中 `review/` 为**业务决策沉淀层**(非审校流程目录),记录每次模块调整的「为什么」,帮助小研理解规则背后的 know-why 以便更准确判断。下设「课程组件」(对应组件生产模块的决策依据)「剧本翻译」(对应英文台词模块的决策依据)两个子目录,未来其他模块产生决策时同样在此记录 | -| `scripts/` | 脚本文件 | 所有 `.py`、`.sh`、`.sql` 等脚本文件必须放在此目录 | +| `business_knowledge/` | 业务知识库 | **所有业务知识统一存放于此**,包括业务术语、数据表说明、SQL 模板、数据抽取脚本等。其中 `skills/` 为**业务知识技能层**(考试题型库、JSON标准规范、标书规范等被其他模块引用的通用知识技能) | +| `business_production/` | 核心业务生产区 | 按业务模块独立隔离,包含「剧本翻译/课程组件/巩固题/单元挑战/英文台词/组件生产/组件配置」等独立子目录。每个模块下可含 `skills/`(模块专属技能)、`scripts/`(模块专属脚本)、`memory/`(模块专属记忆)。其中 `_shared/` 为**业务共享工具层**(多模块共用的飞书操作技能),`review/` 为**业务决策沉淀层**(非审校流程目录),记录每次模块调整的「为什么」,帮助小研理解规则背后的 know-why 以便更准确判断。下设「课程组件」(对应组件生产模块的决策依据)「剧本翻译」(对应英文台词模块的决策依据)两个子目录,未来其他模块产生决策时同样在此记录 | +| `scripts/` | 通用脚本文件 | 仅存放跨业务模块的通用脚本(备份、同步等)。业务模块专属脚本放在对应 `business_production/<模块>/scripts/` 下 | | `output/` | 输出文件 | 所有生成的报表(`.xlsx`、`.csv`)、日志(`.log`)、导出文件等必须放在此目录 | | `skills/` | 技能定义 | 个人技能目录 | | `tmp/` | 临时文件 | 临时中间产物,可定期清理 | @@ -149,7 +149,7 @@ System: [...] Feishu[xiaobian] group oc_xxx | 发送者 (ou_xxx) [msg:om_xxx] ### 强制规则 -1. **脚本文件** → 始终创建在 `scripts/` 目录下,绝不放在根目录 +1. **通用脚本文件** → 放在 `scripts/` 目录下;**业务模块专属脚本** → 放在 `business_production/<模块>/scripts/` 下,绝不放在根目录 2. **输出文件**(xlsx/csv/log/报表等)→ 始终创建在 `output/` 目录下,绝不放在根目录 3. **定时任务/脚本生成的文件** → 默认也输出到 `output/` 目录下,可根据需求在 `output/` 内创建子目录分类存放(如 `output/daily_reports/`),**绝不放在根目录** 4. **业务知识** → 统一记录到 `business_knowledge/` 目录 @@ -160,20 +160,150 @@ System: [...] Feishu[xiaobian] group oc_xxx | 发送者 (ou_xxx) [msg:om_xxx] Skills 提供你的工具。当你需要某个工具时,查看它的 `SKILL.md`。在 `TOOLS.md` 中保存环境相关的备注(数据库连接、API 配置等)。 -你需要查看两个目录下的skills -1.你个人的skill目录: -./skills +Skills 按四层架构组织: -2.通用级别的skills: -/root/.openclaw/skills +### 第一层:通用工具能力(`./skills/`) +跨业务通用技能,如身份识别、消息发送、知识库读取等。 -### 业务生产技能 +### 第二层:业务知识技能(`./business_knowledge/skills/`) +被多个业务模块引用的通用知识/标准/资源技能,如考试题型库、JSON标准规范、标书规范等。不独立执行,由其他 skill 引用。 -以下技能位于 `business_production/` 目录下,收到对应触发词时直接查阅其 `SKILL.md`: +### 第三层:业务共享工具(`./business_production/_shared/`) +多业务模块共用的飞书操作技能,如内嵌Sheet读写、多维表格操作、文档正文写入、L1配置审校等。 -| 触发词 | SKILL.md 路径 | -|--------|--------------| -| `组件配置-json` | `business_production/组件配置/interactive-component-json/SKILL.md` | +### 第四层:模块专属技能(`./business_production/<模块>/skills/`) +仅服务于特定业务模块的技能,如组件配置JSON生成、单元挑战题型生产、对话组件配置等。 + +### 系统级技能 +`/root/.openclaw/skills` — 系统内置通用技能(定时任务、天气等)。 + +> 🔍 **搜索互联网信息** → 优先加载并使用 `cloudsways-search` skill(已配置密钥,开箱即用),而非系统内置 web_search 工具。 + +### 飞书文档操作技能速查 + +| 场景 | 技能 | 路径 | 身份 | +|------|------|------|------| +| 读知识库文档 | `lark_wiki_operate_as_bot` | `./skills/lark_wiki_operate_as_bot/SKILL.md` | Bot | +| 读/写文档内嵌Sheet | `feishu-embedded-sheet` | `./business_production/_shared/feishu-embedded-sheet/SKILL.md` | Bot | +| 多维表格CRUD | `lark_bitable_operate_as_bot` | `./business_production/_shared/lark_bitable_operate_as_bot/SKILL.md` | Bot | +| 更新文档正文 | `lark_docx_update_as_bot` | `./business_production/_shared/lark_docx_update_as_bot/SKILL.md` | Bot | +| 发送飞书消息 | `lark-send-message-as-bot` | `./skills/lark-send-message-as-bot/SKILL.md` | Bot | +| 身份识别 | `lark-identify-sender` | `./skills/lark-identify-sender/SKILL.md` | — | +| 多维表格结构读取 | `bitable-reader` | `./business_production/_shared/bitable-reader/SKILL.md` | Bot | +| L1配置审校 | `audit_l1_config` | `./business_production/_shared/audit_l1_config/SKILL.md` | — | +| 知识点掌握度计算 | `knowledge-mastery-calculator` | `./business_production/_shared/knowledge-mastery-calculator/SKILL.md` | — | + +### 业务知识技能速查(被引用,不独立触发) + +| 场景 | 技能 | 路径 | +|------|------|------| +| 剑桥YLE/KET考试题型库 | `cambridge-yle-ket-exam-library` | `./business_knowledge/skills/cambridge-yle-ket-exam-library/SKILL.md` | +| 14种核心互动JSON标准 | `core-content-json-standard` | `./business_knowledge/skills/core-content-json-standard/SKILL.md` | +| 标书/需求文档规范 | `biaoshu` | `./business_knowledge/skills/biaoshu/SKILL.md` | + +### 业务生产技能(强制执行:匹配到触发词时直接调用对应 SKILL.md,不走 MEMORY.md 兜底) + +收到以下触发词时,**必须先读取对应 SKILL.md 再执行**,禁止跳过 skill 直接用 MEMORY.md 规则手动处理。 + +#### 英文台词(English Script Production) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `/英文台词`、`英文台词生产` | `kids-english-script-production` | `business_production/英文台词/skills/kids-english-script-production/SKILL.md` | +| 飞书文档表格读写(通用I/O层) | `feishu-doc-io` | `business_production/英文台词/skills/feishu-table-translate-fill/SKILL.md` | + +> **示例:** 用户发来飞书 wiki 链接说「英文台词生产」→ 调用 `kids-english-script-production`,用 `--feishu-url` 模式读 F 列编剧台词 → 英语思维重构 → 写回 G 列 + +#### 组件生产(Component Production) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `/组件生产`、`组件生产`、`组件回填` | `script-component-production` | `business_production/组件生产/skills/script-component-production/SKILL.md` | +| `组件设计`、`设计组件` | `component-design` | `business_production/组件生产/skills/component-design/SKILL.md` | +| `对话互动配置`、`对话组件配置` | `dialogue-interaction-config` | `business_production/组件生产/skills/dialogue-interaction-config/SKILL.md` | +| `互动组件规范`、`组件格式参考` | `vala-interactive-components` | `business_production/组件生产/skills/vala-interactive-components/SKILL.md` | +| `组件标准化`、`对话组件标准化` | `task-router`(`dialogue-components-standardizer`) | `business_production/组件生产/skills/task-router/SKILL.md` | + +##### 对话类组件配置子技能(由 `dialogue-interaction-config` 调度) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `对话选择配置`、`choose config` | `dialogue-choose-config` | `business_production/组件生产/skills/dialogue-choose-config/SKILL.md` | +| `核心导航配置`、`core navigation config` | `dialogue-core-navigation-config` | `business_production/组件生产/skills/dialogue-core-navigation-config/SKILL.md` | +| `对话挖空配置`、`fill in blanks config` | `dialogue-fill-in-blanks-config` | `business_production/组件生产/skills/dialogue-fill-in-blanks-config/SKILL.md` | +| `看图说话配置`、`image description config` | `dialogue-image-description-config` | `business_production/组件生产/skills/dialogue-image-description-config/SKILL.md` | +| `对话朗读配置`、`reading config` | `dialogue-reading-config` | `business_production/组件生产/skills/dialogue-reading-config/SKILL.md` | +| `对话选读配置`、`selective reading config` | `dialogue-selective-reading-config` | `business_production/组件生产/skills/dialogue-selective-reading-config/SKILL.md` | +| `对话组句配置`、`sentence building config` | `dialogue-sentence-building-config` | `business_production/组件生产/skills/dialogue-sentence-building-config/SKILL.md` | +| `图片单选配置`、`single choice image config` | `dialogue-single-choice-image-config` | `business_production/组件生产/skills/dialogue-single-choice-image-config/SKILL.md` | +| `信息组句配置`、`info sentence building` | `info-sentence-building-config` | `business_production/组件生产/skills/info-sentence-building-config/SKILL.md` | +| `信息拼词配置`、`info word spelling` | `info-word-spelling-config` | `business_production/组件生产/skills/info-word-spelling-config/SKILL.md` | + +> **示例:** 用户发来飞书 wiki 链接说「组件生产」→ 调用 `script-component-production`,读剧本表 → 生成互动组件内容 → 回填对应列 + +#### 组件配置(Component JSON Config) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `组件配置-json`、`组件配置JSON`、`互动组件JSON` | `interactive-component-json` | `business_production/组件配置/interactive-component-json/SKILL.md` | + +> **示例:** 用户说「组件配置-json」→ 调用 `interactive-component-json`,根据组件类型生成标准化 JSON 配置 + +#### 单元挑战(Unit Challenge) + +##### 总控 & 核心 & 审校 + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `单元挑战`、`出题`、`生成题包`、`听力题`、`阅读题`、`口语题`、`写作题`、`题包组合` | `unit_challenge_master`(总控调度) | `business_production/单元挑战/skills/unit_challenge/master/unit_challenge_master/SKILL.md` | +| 单元挑战全局规则/通用资源 | `unit_challenge_core`(核心层) | `business_production/单元挑战/skills/unit_challenge/core/unit_challenge_core/SKILL.md` | +| `审校`、`单元挑战审校`、`题目校验` | `audit_unit_challenge` | `business_production/单元挑战/skills/audit_unit_challenge/SKILL.md` | + +##### 听力(Listening) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `听力拖拽`、`听力Part1`、`图片连线`、`人物匹配` | `listening-drag`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L1/listening-drag/SKILL.md` | +| `听力信息匹配`、`listening matchInfo`(L1) | `listening_matchInfo`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L1/listening_matchInfo/SKILL.md` | +| `听力选图`、`听力Part6` | `listening_picture_selection`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L1/listening_picture_selection/SKILL.md` | +| `听力图片选择`、`听力Part3`、`三选一图片` | `listening-choicePic`(L2) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L2/listening-choicePic/SKILL.md` | +| `听力表格填空`、`听力Part2` | `listening_form_fill`(L2) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L2/listening_form_fill/SKILL.md` | +| `听力信息匹配`、`听力Part5`(L2) | `listening_info_match`(L2) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L2/listening_info_match/SKILL.md` | +| `听力长对话`、`听力Part3`(L2) | `listening_long_conversation`(L2) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L2/listening_long_conversation/SKILL.md` | +| `听力短对话`、`听力Part4` | `listening_short_conversation`(L2) | `business_production/单元挑战/skills/unit_challenge/questions/listening/L2/listening_short_conversation/SKILL.md` | + +##### 阅读(Reading) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `阅读看图判断`、`reading pic judge` | `reading_pic_judge` | `business_production/单元挑战/skills/unit_challenge/questions/reading/common/reading_pic_judge/SKILL.md` | +| `阅读看图回答`、`reading pic qa` | `reading_pic_qa` | `business_production/单元挑战/skills/unit_challenge/questions/reading/common/reading_pic_qa/SKILL.md` | +| `阅读完形填空`、`reading cloze` | `reading_cloze` | `business_production/单元挑战/skills/unit_challenge/questions/reading/reading_cloze/SKILL.md` | +| `阅读信息匹配`、`阅读Part1` | `reading_info_match` | `business_production/单元挑战/skills/unit_challenge/questions/reading/reading_info_match/SKILL.md` | +| `阅读长文选择`、`阅读Part3` | `reading_long_passage` | `business_production/单元挑战/skills/unit_challenge/questions/reading/reading_long_passage/SKILL.md` | +| `阅读开放填空`、`阅读Part5` | `reading_open_fill` | `business_production/单元挑战/skills/unit_challenge/questions/reading/reading_open_fill/SKILL.md` | +| `阅读段落匹配`、`阅读Part2` | `reading_paragraph_match` | `business_production/单元挑战/skills/unit_challenge/questions/reading/reading_paragraph_match/SKILL.md` | + +##### 口语(Speaking) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `口语日常回答`、`口语Part1` | `speaking_daily_qa` | `business_production/单元挑战/skills/unit_challenge/questions/speaking/common/speaking_daily_qa/SKILL.md` | +| `口语看图回答`、`口语Part2` | `speaking_pic_qa`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/speaking/L1/speaking_pic_qa/SKILL.md` | +| `口语看图识物` | `speaking_pic_recognize`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/speaking/L1/speaking_pic_recognize/SKILL.md` | +| `口语问答` | `speaking_qa`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/speaking/L1/speaking_qa/SKILL.md` | +| `口语话题讨论`(L1) | `speaking_topic`(L1) | `business_production/单元挑战/skills/unit_challenge/questions/speaking/L1/speaking_topic/SKILL.md` | +| `口语话题讨论`(L2) | `speaking_topic_discussion`(L2) | `business_production/单元挑战/skills/unit_challenge/questions/speaking/L2/speaking_topic_discussion/SKILL.md` | + +##### 写作(Writing) + +| 触发词 | 技能 | 路径 | +|--------|------|------| +| `写作看图回答`、`writing pic qa` | `writing_pic_qa` | `business_production/单元挑战/skills/unit_challenge/questions/writing/common/writing_pic_qa/SKILL.md` | +| `写作邮件回复`、`writing email` | `writing_email_reply` | `business_production/单元挑战/skills/unit_challenge/questions/writing/writing_email_reply/SKILL.md` | +| `写作看图写作`、`writing picture` | `writing_picture_writing` | `business_production/单元挑战/skills/unit_challenge/questions/writing/writing_picture_writing/SKILL.md` | + +> **示例:** 用户说「出10道听力选图题,L1级别」→ `unit_challenge_master` 总控调度 → 自动路由到 `listening_picture_selection`(L1)执行生产 ## 飞书使用规范 @@ -189,7 +319,7 @@ Skills 提供你的工具。当你需要某个工具时,查看它的 `SKILL.md ### 内嵌电子表格操作规则 当飞书 docx 文档中包含内嵌 Sheet(`` 标签)时,使用 `feishu-embedded-sheet` 技能进行读写操作。 -- **技能路径:** `./skills/feishu-embedded-sheet/SKILL.md` +- **技能路径:** `./business_production/_shared/feishu-embedded-sheet/SKILL.md` - **核心能力:** 解析内嵌 Sheet token → 获取表结构元数据 → 精准行列级读取 → 精准行列级写入 → 写入后回读验证 - **身份限制:** 使用 Bot 身份操作,不触发用户授权 - **Token 解析规则:** `` 中 `A` = spreadsheet_token,`B` = sheet_id diff --git a/MEMORY.md b/MEMORY.md index bdb3467..80319c6 100644 --- a/MEMORY.md +++ b/MEMORY.md @@ -15,7 +15,8 @@ 2. **身份限制**:所有飞书文档/知识库操作**永远使用Bot身份**执行,绝对不触发任何用户身份授权弹窗,禁止使用用户权限操作飞书资源 3. **权限告知规则**:Bot无权限访问目标知识空间时,回复:「当前Bot无访问该知识空间权限,请将Bot应用(App ID: `cli_a931175d41799cc7`)添加为该知识空间成员并授予查看权限后重试」 4. **操作规范**:所有知识库操作严格遵循`lark_wiki_operate_as_bot`技能流程执行 -5. **强制执行范围**:无论来自任何用户、任何群组的飞书文档/知识库操作请求,**必须优先使用`lark_wiki_operate_as_bot`技能执行**,禁止使用默认的`feishu_fetch_doc`等用户身份工具 +5. **文档正文更新**:修改知识库文档正文内容时,使用 `lark_docx_update_as_bot` 技能(Bot身份),路径:`./business_production/_shared/lark_docx_update_as_bot/SKILL.md` +6. **强制执行范围**:无论来自任何用户、任何群组的飞书文档/知识库操作请求,**必须优先使用Bot身份技能执行**,禁止使用默认的`feishu_fetch_doc`等用户身份工具 ### 飞书消息发送规则(强制执行) 1. **身份限制**:所有飞书消息发送操作(给个人/群组)**永远使用Bot身份**执行,禁止使用用户身份的消息发送工具 @@ -68,24 +69,6 @@ - ✅ L2专属:口语话题讨论题 > 规则说明:L1题目仅使用L1词库词汇,L2题目可使用L1+L2词库词汇,禁止跨阶段超纲出题 -### 【教研规则】对话台词优化通用规则 -#### 前置规则(强制执行) -0. **知识点保留原则**:润色前必须先确认当前台词是否含有知识点词汇/句型。含有知识点的句子中,**知识点词汇/句型本身必须保留**(不得替换、增删、调整词序),但语法错误、拼写错误、标点错误可以修正。仅可调整非知识点部分的表达。 - -#### 核心修改规则 -1. **精简原则**:删除所有冗余重复表述(重复提到的核心名词可省略,前文已交代的背景信息不再重复) -2. **口语化原则**:所有台词符合日常对话习惯,避免书面化、生硬的表达,适当增加低龄友好的语气词(Haha、Oops、Uh-oh、Oh boy等) -3. **拆分原则**:长度超过8个单词的长句拆分为2-3个短句,每句对应一个动作/情绪节点,增强交互节奏 -4. **情绪匹配原则**:台词语气严格匹配角色当前情绪(惊讶时拆分句子加问号,欢呼时用短词,失落时用省略号) -5. **场景适配原则**:可通过动画/画面表达的内容,不再用台词重复表述,减少信息冗余 - -#### 统一风格标准 -整体风格定位:低龄友好、活泼生动、节奏感强、代入感高 -- 单句最长不超过10个单词,核心知识点相关句子不超过7个单词 -- 每个角色的台词符合其人设 -- 对话节奏快,每2-3句台词对应一个剧情节点或互动环节 -- 弱化说教感,所有指令和引导都以自然对话的方式呈现 - ### 【教研规则】文本输出格式规范(强制执行) 1. **禁止 Markdown 标记**:生成单元挑战的音频文本、阅读文本等任何内容文本时,禁止使用 `**` `*` `__` `_` 等 Markdown 加粗/斜体标识,也禁止使用 `#` `>` `-` 等块级 Markdown 语法。输出纯文本即可。 2. **适用场景**:单元挑战所有文本输出(音频台词、阅读理解文章、写作提示、口语话题等),以及任何需要嵌入题目 jsonData 的文本内容 diff --git a/add_month_week.py b/add_month_week.py new file mode 100644 index 0000000..5d4a4c6 --- /dev/null +++ b/add_month_week.py @@ -0,0 +1,69 @@ +import pandas as pd + +# 文件路径 +file_path = r'/root/.openclaw/workspace-xiaoyan/business_knowledge/新知识库初版/全包词汇/L2知识库-三级+A2.xlsx' + +# 读取文件 +df = pd.read_excel(file_path) + +print("现有表格的列名:") +print(df.columns.tolist()) +print("\n现有表格的前5行:") +print(df.head()) +print(f"\n现有表格总行数:{len(df)}") + +# 定义要添加的单词、词性和词义 +words_to_add = [ + # 月份 + ("January", "n", "一月"), + ("February", "n", "二月"), + ("March", "n", "三月"), + ("April", "n", "四月"), + ("May", "n", "五月"), + ("June", "n", "六月"), + ("July", "n", "七月"), + ("August", "n", "八月"), + ("September", "n", "九月"), + ("October", "n", "十月"), + ("November", "n", "十一月"), + ("December", "n", "十二月"), + + # 星期 + ("Monday", "n", "星期一"), + ("Tuesday", "n", "星期二"), + ("Wednesday", "n", "星期三"), + ("Thursday", "n", "星期四"), + ("Friday", "n", "星期五"), + ("Saturday", "n", "星期六"), + ("Sunday", "n", "星期日"), +] + +# 按字母顺序排序 +words_to_add_sorted = sorted(words_to_add, key=lambda x: x[0].lower()) + +print("\n" + "="*80) +print("要添加的单词(按字母顺序):") +for word, pos, meaning in words_to_add_sorted: + print(f"{word:15s} {pos:5s} {meaning}") + +# 创建新行的DataFrame +new_rows = pd.DataFrame(words_to_add_sorted, columns=['单词', '词性', '中文释义']) + +# 填充其他列(为空) +for col in df.columns: + if col not in ['单词', '词性', '中文释义']: + new_rows[col] = "" + +# 合并到原数据 +df_updated = pd.concat([df, new_rows], ignore_index=True) + +# 按单词字母顺序排序 +df_updated = df_updated.sort_values(by='单词', key=lambda x: x.str.lower()) + +# 保存结果 +df_updated.to_excel(file_path, index=False) + +print("\n" + "="*80) +print(f"已添加 {len(new_rows)} 个单词") +print(f"更新后表格总行数:{len(df_updated)}") +print(f"已保存到:{file_path}") diff --git a/skills/biaoshu/SKILL.md b/business_knowledge/skills/biaoshu/SKILL.md similarity index 100% rename from skills/biaoshu/SKILL.md rename to business_knowledge/skills/biaoshu/SKILL.md diff --git a/skills/biaoshu/scripts/biaoshu_number.py b/business_knowledge/skills/biaoshu/scripts/biaoshu_number.py similarity index 100% rename from skills/biaoshu/scripts/biaoshu_number.py rename to business_knowledge/skills/biaoshu/scripts/biaoshu_number.py diff --git a/skills/cambridge-yle-ket-exam-library/SKILL.md b/business_knowledge/skills/cambridge-yle-ket-exam-library/SKILL.md similarity index 100% rename from skills/cambridge-yle-ket-exam-library/SKILL.md rename to business_knowledge/skills/cambridge-yle-ket-exam-library/SKILL.md diff --git a/skills/core-content-json-standard/SKILL.md b/business_knowledge/skills/core-content-json-standard/SKILL.md similarity index 100% rename from skills/core-content-json-standard/SKILL.md rename to business_knowledge/skills/core-content-json-standard/SKILL.md diff --git a/business_knowledge/新知识库初版/全包词汇/L2知识库-三级+A2.xlsx b/business_knowledge/新知识库初版/全包词汇/L2知识库-三级+A2.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..55c0002db17c8ce5f2c9d1a5397a21e190d86b95 GIT binary patch literal 86542 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 AI{*Lx literal 0 HcmV?d00001 diff --git a/business_knowledge/新知识库初版/全包词汇/三级单词表_已标注词性.xlsx b/business_knowledge/新知识库初版/全包词汇/三级单词表_已标注词性.xlsx deleted file mode 100644 index 3043ac7246df08c6afe95eaaa2635ade4ea227f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 136412 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

iQ$KP+e2Rsry--l$(xNJU=3f^A3gru3BQL z9t07nqFBP0Si6y!530AzkFb01Raxj0MS?A7%4d~@;07YWU;Z=VAK@)KMmFpf&16L> zK26`P6e{-ai+bP5$GIJKey;2sv0yKNtjj(fV<`e6+=Jo^ck`6zX!^q4-0JU+@yw@W zbuk$tiPWMapsn!RS7jzVh-rIS$dx?`a?2k->gJpFhyHy825YmHQB=hh=QEW*JEdL= zfE)8L4E~tg7`s^{du=1j#It^U!?=x*5QFfgC-D-M_r3wQNmh;D-gHcrXT2zc*#4xt1_HM?^vhys zBG6Y19qw!rCOFb6KN9)BJ*_ky@CrC%mIC%9Qox>MtS)MfjT`)Bzm{p$j`uf`Pg@t< z2iF2k?C-)|;K$nv0de)Q{D9F*3NlKAC8q8riDx@p;$3{;X1WJ|lhBtS|Fr5h1Q4st zDbW1lLJ{ghfpZK;zy37uW`ep1M9WApom=`8aoL%XyQ5(3U-wAEI7L~|d7ew$JW#0v zoc0mc&=>oMlP24>DRl%}4jH=-0>w=CB2(Qe;A2F!_2a0Y5!P{QhL^u;s2bwYYD-5R zY*lmf^ZHT)GVt)$Zh%P?-@5{sQ97|sW`8ez;fF`kEj2$RVWM1>g^=SveNRUl z-xX>HZ1%va-ZBbtAL`nxlZ>ZtVS781i_YOg9akAs8omfAcyxBAlV{J^;9qWBu)Oh} z3HoK;HowgmNYh)eJ>_&kQzt1LBwJ&z+?5dat=Z+35zJM}eb#LqUE%70&2c;bL?OGk zRdrFIMuQyFUQa*c^D2oxWuv3Y{IBxu`wfA`$3IdgRY8Kyr!aC|!`r0lsJz_x{XVb} z&B_tkCxLhQ5vmXwD)FChD=t7sU%2J_@n?bMHxS|X*gUsqltX1Wv?Xo9mxVNB=5a+F zh;FJA7))7}7~cpgiG92<1@-hSHy8d01Z=Xvj~T%f8`hS4mS`l@dQ=zz!>-WvHuQ^{@VEYh0jgS@P;z`&T&*Ciu7j&?>3P0s1cC1K$M>^kN>talfr0 z#!cE{dkp*a+fj%=LNo8-%2!`#pRA9-Amv<(F9IGw}xd@<(QbJ-hp`^uS>?6z>$(W_e#Ewt7&m z7qYmg9IC9$#fI&r_LNbQEucc>BMP)6)RX(;DW~%P@48eEWX>B&-41^kVHEqnX6$c4 zB`$|d-G4%Hml`k`9nf&6x0RPXS%k0xy0UbusZ&_ReQ(ZNQ|JZ1IBN`av5SIh?I8i5Sn}Z@F584zRN{<#RtHc|l~O zP16#X zkNeJ4Yn|fE$Kf)xe&N_QZ3(on(IA4PZ@G6=(k5-(zZVxKLUS_}LaTiAB#($7gJ2S% zO63jQ?JAh`ku8Q765QXjA%{cbp;Bso`u%S&ZpJ?GJ6*}W`rJGj9JxXU_@PxlGlzms znClHeu6g)}msgS=EW_RNENSz+r_1S3SNaAV+=k={^_{cnLAL(@{~lmgv0s!STi;xY z_bp$qk@Lv5<;F zru}&m(^3m+wHcJM!YJlW;NR%R2lc_qVD4SS78X=2+u18|s#b2)Yb~h)aHCipaT@5@ z0^&SQ7?%1=#}Lu)V)4>rvGO$^sY}ORe8J19Gfx`Q1uXSbK;{A<{=AsQ=>Ii} zZlhR@LOGG3nxbN(3}jbxKN5a_Z~B$)ieCVjHCt-6zmYWHc143*lH8t~3q}1`wGCVF zSrEt)g9&=xgv9F;*VT2@XYNW~pQhE*(pC2ctd91O(_MYf5{g`>hZ-vXW!R)t{W%Q;&Eh$yc_og|=>Kbz zb88tmV>3X9GnlWI8@N5@p0Mh~k9_z`$!ps16zHlA8wm9il^7yt;Y?|%qPZ$krejK07t|HirI4U;R?EbyS=A~J(+ zY+t27F{EqmqhiK;P?pamqi*kEpd-RLheqrjaGD;T*eUJ%}ngB%x-vh_p-tThjldU<8KMd1! zIsB$+!{gJ09`Qro6`%6J0q+dl))q{mGS726(?TnQ+*I><2?Lr8eg^aBU#~`csuY=T zQ|v%~>pCD?d2uf{AqI?;=IiPP&|h{ux<6&>Q5u@R?q!N_SsmeR%Z1AZ>QhxI7)Scg`*?=&+zGaCeO zp8B|1#wTYnA2s}IQ^-7=_kwaOeUin>iPWtBqqza=44rt%%1dAD+Sh>AH6y1xWegEt zq-Lkrl$BYQVHM66zZGL>RpZBE7wgeP)GpRL*CLnDG_nfJk4Pi!4sixMVZNF^nCO3Q5$Dlid>yBKZo}p5N@02E@Nn9HUhyc)F@8r3L*aH zYerKO1B8p!{y zws4%C(tKV#Emqm*)Eb`==+krqrup$%avJc5P3HnOjBrlYWHX4t*PO0<_o^L}03<1P z$|$ZDA#$^OHX>EAo&I`}yb3ez`8ZR#p5H-HHGk0f%2LAZ#OmxbO54om2VUDFd6S?0 zHT_X?qdA%2A-ARK5H~MB=VVM6~nYXs*iIuZ%MN& zB**5%eES8oVsBW#1`+ABR9i0I=*#~5p@Y4!GJ;BMQSxDas;z2Jc(QSmHGxDZSp90T zf~M)g`0O>PR522*Ro?#NUeFWQDL%Yf1j46{9z9de^bUYc#ryQnjJe~E?wi{R=C@(^ zp1%c6%K;rF2FyBguAZ(+)P`uVo6N6%e)T?>r@1=M=4dm&m4BH3VJ+BoL{tf)u^sV4#aSyE&;Ilr zMtCOF#f@3OB2nfb9Vy`;z5ncy5F0|o{8`&yT_rk^0~N6a-iUiblHjE@yKG)YQyk2P zLWwElT1irTVED?=e?Z`OAA`z&a}g9Mg5mLL^-fO=Wq$jXdFxou$5FV5rvjafnstM8 z0Y4H%o9TIV8{aMuO(io~`@jLyXH-yH$*FHgPl?IH#P=W3Kap|NSjx=Aay3xN#uX$L zPN4k90bNsZ~cDE()w z7_(<|4-`X_A&d}fOQ389E%)Vn=e%_I`f63fg!BoZ9!vyZpoBGc21{x)`9m*_7H6o!8bW) zWh#bf_q}VBTR7h0|UZRa9?Mx?C049%MV){+K=0MOP zb4b(~H%YFF*nY?(K%6Wu)-K?uFZB>7pmO!HT`;}!QZ48fR{N8eg^ek#r1K@Mqx7AJGU8zy$i-|RW&cdZv2HKqtUdmEXfrWAKQ z_Z#KF2+?VX%M#DeAaPQ>NM(%k9;VBdzHtZVz-S z%Qtd7RLjng)L}u&lbfB>^48QP@e#0zoKQIT&u0YI6T;Zc3(bJiytX-yt(t6+vR5rIc=~%l%g>lR9=5^+`VN!JT%2 zr#8$Mxby8Z9tHY02@|1+7@~QaV_7n)@_%WYHXEBnce;c2VNECIy zH|>YeB+{ECCGr9}ke~H*t&wSOQGR|n4!MBOPv!$9hS=_w&)neYLRM*_8Y6)Z(y}m7 ze<=A6fcA~lqec}qu1#*uHvWK29u}R+4i*rtO^yxN-0zhoPigcj+V-%D@65!PN97PR znuAa#25-~63`1$j{hcDOJ71HA5G`9gMW~i{9Ch1HNIB_CjDW`eXt``Y6~EADSvO91 zkNIBSPB(3OuQBZN7ssO$rg0wUB#?we$TH9v%_25C?q8fCqI~y=iEdoz!PI=qjb3se zs;cV8%nmeO55_l{0FE*7*MMW}Li5=%<}YXlX&leC_IyH-GDP(VoO^xwfe@pIAd*zf zPX;R3!Guf;H1SE57z1NDHj7<>8K}Ttf2%PxKo}oEc1bF6+5I;lq_lqMOT7iomO?>s>|h#rx)g=VzB!XNX6EC1 zCYl5>A?g6lI;Btv@bMA=a=v^~4$DDqV9=cn;CU;@Nb$~0N#fNkB zTpj$Wp^k|@w1&Pe{|j*zu1Tp#&u75WaKWAtFI^h-FeS$~dtm>^A^{c|t=Hf+EEfz4;$h^>49CTVB5>W$@C>D}2k;A*8 zdX_I4Ac{ss9rF#p?}paHTbi69C$>!kNeuVy>ZA|QeopA<`KJ z5y?(N7rgKwdS(}GKV9r#hJT|A)RuL|VI*~UJuzVUjF-VRlKzF6qCi~6Y=2X+CqZs- zF_Yz|!uhe_UhmGPbKVR~Zty-ODclb>jAyG7k86tHyt9XW@VK>fot5J;oW zpQ-U}=ybVvbLYwK>H50ryca(MI*@)uK)#|kt97-lx!qP}O`Pg*i49C@3UPg z!3697+5G;I`la?}s(Bl;xgAVaR1{?MUZ9g}z$b-hs(p0+*nqYcjny=%+FA8~pdU)4 zoT7>opD!WxCtio){gy4yuf1zc{iQ%q7m9PJsb)m0$5VI}v9&kh2KMIO|KsT@1G4D4 zEg&FW(%l`B(%s$N-5@31-QC?KARyh{-Hk|tv^3lS-|zmPGxIz%`|MbI?RDaxS=?5H zznm1bJxRZQZI4B>VD{)v0Kq_L$=?3PE`gD6MC~dS#BOxl4z~y5_=YRoFU_4|} zflB8cl{ql`ff?J|?^{yfo`@pq3mUaMZYz)f*}qmg)ZEuYdK6a#;@T~7W8&#R{;+Kl zHm?yw-tO%2X;nea0!F~SvG-_aUzUwtazO^7B_|ht-OlnKcl6^qfcr3@CT>Ac>YNLP zZa|>6=R_msoONV(Tf+5$S|Sm#<&dUW(CyXMot|cKn?{PWebVhF~~D>xELz8W8aY5Gq|eg98A#r`)m zi$fHJA&-6A=JtGf15x-pSe_rBI9b=b+=|bHiSjf*5O`9U?SWsx!iOQ$BG-(T8lx}G z!l*j9-Vvn4(G2QTPUm1pTOVj%*?U+nkf7Kl@;7D+M~V&d6x^M3s~jCL7`1^}=Qs1J z!>@tqoeE4yra$Q+0NKrcS9?KRdvuv|Gn3i^tMJ%esvdjr@xhmvL8VLuqPLy$)w^r~ zc30io6hMmecC=D9v_hM2{@qaBph4v0`KWM<&p~C~;Z9A;$WxrH)w1*zDqpvG~R#qAN(IlSa(f@es+-*vr8~GY5sNO zuVDBiuP*|gqJ|1Zkg!0!{IXJd5L2#AD>;`=IzIviDE9$Mfq+89#{t=c9vwKtSang# z3#J}uTnkVlcWJ6hUT(e4{`wMchv)tHKcuZ~A~Vzpu(59QcY%f`(0Zw@;5&dhAB&gm z=vLQJQ#WM4sUX2xLfLfot-L^cHW7j2YK5M!&5e)9dipm+(kVA=zEQ40X+y)g%-%C@ zu)Nw7brZhL&7AA5&rtrtg!wkJLU6{SoUOB-qg)!HD_Kw_t*doL9oMr%OleiG?b5EX#_3kb+b1?p-WwBKFG zWsx?}p42=H9z)h0=4MtzGU6t>HS-oDOU{~R=BvtN^rmyRyG$p^$P$#!){(=i&E#Ke zMXeep_rf=4qbKDgAtEZ2?2{X$=Uteaxy$RYa~+gYB%Z)fFINvzJQqO|>CcgrTWGM( z&r#H|Ru)ov{y#R|Zh{)hB38{sK z(y24scM6_Je~DDmijV*9D)70J*TQeoh9hath6k2~%Ig<~kIw!oJ?K3-1>&*n(bF=j zo7{9N9}6Eh;2*^(XVH|4Jzfr|kpg`c!o_pl7>j?j7v8&h%qISvq~}bI@dRTHVc9s; zlF5>5rCcE|L1dJ@U3_i|epiIt%y*avpryuG?VF^j?=+=ao!J5_kWiqWBrVo|>Yj{c zk|%WWEDmoIqjxzYTomen-OloFw~K#Df((A|S6Kuq>j;#&6ONz7#JtXg8AUjR%!gFT zjA(PeRE|B@%<}Og^$AyMKnVpMyf?W)@`a%n-?c?Ti35*eU>2+QF={gK4MC(zSu$il zaLXdHw=7*~ZqE+Wozm!+U34m-tLFdWFOQnzPqSpRZ8m;8lQ)>l( ziy9(tU`1uHJUR6$>>HTuI5H;)Rh@_QlC#PCbjkPl`fBgV+vz>~ZCw>4Ka@ThkNn*6kVwKr>w!Z%K`O{9Sm6ywgT{Mj9T2Igp`;Gh z5|BU->a$-IyswJ;{BQ%sR3X%7#)@+I1rBp|&h3zKyl$Dn?ZIP65Go%!b^bi10C4ns z?|597g&bTI#UawoIndh6wQtbB^}yldi@Skp)HL5=MNwx&v|-!=#H`W(5c>k}0Tvi` z2Hr!>XX-+nZ&*eKrH?;oQDHoyjMV^M-rY-~?dl`IH%9)7u?xhnus5v^U=Al#;m0Bozib^o z6pEcKaJ-Blr1`Y_@MHiC@)s^Lvta$U)-W5A+4GVb{7iJdD1P`1qevpdXE9=3pn5=%)p@U1s+&!DC%uyY zb}I0P>Y%zS%>s!2I)La)hbaQ=YGcVzK|R=@4$<_p#hu>$&6tNDfR=@;pwlkX_cmko zXi$qtiq_IgApehepMAfX=MN@lz|&fL5Ea|^v<&pzBnJ64Yhawy z!xK;3nw?Rs7_QC;$1^ZM;9}8cqzVQ}5FQ*5rMMb+M|$jOcbOMKlVt?m_@ zVnslwyw^{xNqK`KGP>L`QaLt&uW>TaHdnRPh;0!NWZV$@w{zpG*eVkL6lIdGfP{Z= z>2;L+Ax`Ct&nrShtPor-rApE0aYqk(tlFq^ga#W!*w!Q{YIx_MO@SQN_FkQE2|Y8b-&JwGD1 z-FA~+$%Sk>k*qQB-g5T_pw|0|a=sTa(rb8<7`-0c+(Z~3yM;sBO+rl6cfp+M!^p## zDc&l62z;f&e+mV}B2>Q$l|bS`$?;`L^TNKUfAV?oMAY?X*MrSPiStfqkSxA%x=WRO zX^v#wBhVaHAyGt_pi<{F`EB+wZD(*X{DXIF-Q#9b!VkcOJb{*64wj z^KIdrLMPY*FZDTaJe5$$B+fjGQ(n=olvWwj}!`D1k5|!#w ztm1Z>&^CX{O7M#>k?dkRUlM%=;e&?s1i=gW1lLOR%^6ehKpnws!BGzZTE=6&po!g& z5rm2UU??y7fcZg!PPr6abyh2N-1C|N(w?dQb1Ld+xAC2_ zvJtD`&LIq%9+wd~D_#1VPIVZ090@Eoa_9$+cteCK;1ft&-?13MT1xo!ITHY$Vjm9l z-!O#0iyJG?74nUdY68!jfY~W^iqVTdG?+!w5_a~$F`*&z z$EYZ#F)AMbcX<3JD6~9}J2P5=GS?3#2TZXFaKk|C$`g*Bi7Dv^~RrPW~ zr(>jQtiJ;xq@`|XaY@uRytow6(fiB>(PR<{C~rwg6Jx`Z9iqgB7RyizV3cmhI4KmQ zFhZS_cKPNI@F4`6snU)a)IQVGInPM~LfOXdRwYhafc#xKdZxesv&1B54Dyyx)S$z$ zfF7Jl9^$9p1)6*8mR`}gBu%UMZjFDIx(+HedFvr0umw;kn{G)J0t^|!+loUmxlUU~ zJq!zm$M7GTzYmARl6SUeo6?UpSUrAPTRo}$LEJ7{AH926`c+jW!gNb3&?S1HnibtT zMiS%15~4NN)_aDeiV-X}BD7ovR(8;|^!(0TO9@dy#u*ij-#@j~1CRhmLUP_L7A%p? zlU+~Psx$-bCd~R+^UyTIS^QzNyfXcJ7a&UJylXT)>#}CN@ygVlW_>~*+%5it*!&Xz zjVJA_slZZ*_Mavu9%m5e_2HdR&SxR0^v^>4udYX)aC4n-2XCBWyy!`cMTP(Af zmuS7FM1*3R-m(GkR_5<5N9iO(;#nJ=ss1P*GXkpUniJp{B`XWm;7 zzQ`1kUBQ(6>FjR`F}2R&CRW1O8PuywTrHYPDwvZnoHbIz!^yY%e;$! zDbzLsm9Kk(eLVCsSAXpn;xw6?;Q7WlYYbK(Gn4q&O!GBnRM^3U5Fb!})sKh1;p#uS zO~4NTN2cV*0Bd__6erYrB=HSN4B>458wv}|3Aq2$9-5*i{{zek00BC=#3(qde3(9c z)q!g&Q$J09fw{8sgTDYcF(x?eDs4SnegJ#>hbJe!m43trv$kF61 zj;trar{@asEWK9Y2(4${rRN2=1_}8R^D$=XQee7qGB7vWKtMb3>NO{9v&tUm|$55sMkq}f}5{c0!O~Zrh=>b3WZ=Z z9AOQY@;9U*az~amLdt3+-?gHInUY@$F%?e(m*)v0n$vv}1WZ)ovUqUjN5*dzDtz#) zAFvX<0r5}w5gjz3#PSDV;MyrB67p~YS_2GP1&G^G16E_!40^OGh=bYczGdi&TcBZWXU3a*&-`Vyi_4D zgCA&5MDD|B^CqjSjdbJ&Iqx_Gk>L)E$c+Z^T$Wj>l47XyIxqMm(F+H;zEe%QA&4Bz z}`GZvz?$L0l82bj?UD zj+9P0o!w`iQ2v|uNQ~Z%G54)|o2@(F+BEayqnEzKP8=<8VNlgmgtrDyv5g+grfPiDz2W%Dme`3Te zVTy(CV#HIzlrtR4g_A9W@Sr(zn(}9Mn1tSOcQ|3WbcMOw>u;P1cO5N&(gIda2Yh$v zz=ljA8?3mlN*WpedWpX# z=1-s|?jTu*pp;&Xgn6+(j+C#wFE3n}W7b5=0MKE;@O0-C@>A$Ks6OJs%JR~0qy81) zmTLd%>*LEBMDy6{T^?NX-a!C#u8uNo~H9JN!Xq0*tVIQ&xzwQ)E}D3nGDqsk{G>Gj}j|KZX-UYaKM%8_$#|Jy<3I;kf! zi@|p~+)UmYT82%0D3c2L5y#R*zK!DwawO1T-edz(spli{9TJ%1mMKJOeO0&$Vj$-c zb(x{OA@Rjk;E;O*q&d%y1)&xoP%8;K553@#-Sv6_5L?OEjAZ7z?$j)rOdXzR0gfcz zP~`ePo6co!<-sZ@?*ar&VQ`X<_bJ7F%vj7W$>ct9za!hLSDJD8#og}yGRL}*DsW7P zKMkiAkz#&oGZG1Duv14FuQvRmVIQ4&q2pxh=h%uTHJI18mVl+=^ED$R&jaIyVg`~%QEEg76|mIq{4S# z;paRFFYm{MkZO&fs_WFZ3|(3nW9}=wII5d1(3dGl)8o20cLPe>0b0s`>=Js{brBd+ zDFR=?U|wSoOU!hB1Yx35Lxc9pHA@r=xIPKKa7d{!PW)!D;29D`ZjK0w1IFdgeq|bc zgT_KDP=y3~45mXP{6wmdFilKTN-`Mzgy50(q>)XOgTMWrJGW9@f*Zyr%pH>ciAwpG z!fn0JI*Ah|-hN}+5a$jXpWx^XXJ_xf<%$WSW^PVZ5_sn|P_AmG zf&I47l6g(0`G^9HbA$@-G;Q{N8a%6=s4R80-}?r5xiJ*#Z+q;?s z0b17()iChdS2>R< zv1?@opcjBS+~dF(9mD6xoBQkid&K7(NCRKDWB*GP|J2}uN|6#5WUJs5fbEZB0cZPoQAN{aoV4$p9$34A&6m`CSLhuJYd zzZU>3WW}9asR9pCU}t@fG6g{Ddmuq~O7-p>^DaF*KGt6Q)vE+W*8o(XUO0H{_d)Cy zd}-O~R2G(0TtE+qgk=}SYQ&dC-4UXY$bIhwd6H?aP|27ee1!Ck9mFB>u22pcOD>7` z4zLSg=OLu1<3Sb*fQVzGbMO}GKHWLCSt-OUvx-wP0Au3tDpCJhF2E9*|1BX;QI~-% z?1p9ru?RiVlpXY8nSF`wXAIWJc>Mk#k>MX>2aLMlr>8$AzxObN6&@I`8Ud&p1^T(E z@8Ke+gkTE}8i1dP-OXno=u9=%$C5uXgyU$+zVrbCBY|01^SiBsAH7Z!I9RRPxYNPe zGt^#wchzGvkG8kp9Ob_jzD~W`4TXVQG)Ytdfk3ES1qcN2L8>}}-yc-?xDdd)_OYTO zWvh{=Ii~^UH6S=-oi8D*{`jGVU6SQpwIV+v$Xr`+`tAmH%F-Ui)QbuXY=Dd)XNby* z$xU?sCUTN?)SDU*1Bo!V{?{c3<_+^jOz;_b!=w4aoz?bnzXvAj2v9xVtSZEq2Ol88JA&V;a{oL%oZlZ7 zp6LYShN$u6(Sk?vm3sc5KZ=P44r0LTl$t>XBKh4vZgsveg!GQA;->0J9?C~x7qvJ+ zI3EHNG3IE**OROO9b^Mb$u%|=rEK)^sBaBKIU{8RcF^ngi%m#e}3vqY!Y-2=h5)CCy zC$As!fJ6G0UDLz4Osop8lsu!{Q~K|sO`2F)i}a8(EuKYa%p^b5l!i4Bi> zqWM71%wHc%pSpFI<%qywFQGYF{2f?GbLcX$RP|iOrNe@=wZ$7FP=G?A@IM5hp>&S8 znEv=c=EV3@zGINcJ^&3OZo!U|a|5l;-eK=n1DH$7HLXuI8`_;7o==koVKg_7M~^LB2wl*jE94VH0l#Ak?PkcGNYj`==jFA3Lyxm8=xQ%1Qe$zR;Y74BGRshAZ z6QDRs0u)C^8c-oPkzS(U|3(sUwMl|5pYEOJI1E1d0^%EsHJe|JG9%M1X1-oD+fFU_ z0nId$1|c+=DsA+(r_Fn<SoS}fQ2VSX5|f)9 zS-d$h3?&|3K}cWdO|tJB`{b}78LU@C1b`vL%Qv}tUkVJt);5{GP7bh`3gAA+W5zEH+IRN(~d=>$(K;+arzMYlUI1)+r z$g#5LUeGx8Hk>~vW@>h*X?D2Ro|MYzr5+YYMl^NK5<`V|E6fFt;Xm{j6Qr=qm946X zuHj7|=kFS9L><0jKCCM&+rvqm*Hq!$v&3SGX7Pu;4@68CkA^Rnwn(!NZJ8w)}q#3~-{LI@<}N*Gc#hfpU?eJOr?gzuflz@CZbrrdH2#dy~b?3*1`g@5VtINuLG>t8(0Z zLHnEnHb}wSMtp?AXr7|}26|8ZLk=f|!?xc?7T8Jp&LP9MeVI#n@dL$qW8n*z$@bpL zeaC-|7#4+*FYn)b25Ps}Z{!PMl*)N92>U0Qgs&YVm~|0rz*dV~ZeNdHf!mTwTpDkC zJIa7T@WeKE3I5LiXh$Hpw0=5pne6o^kaL*cx^P)C`+in%|8i9e1lb;__Etal+urr( zW3yZnVkAtXRPziOjxVEbO?$iUVI{q-fsy}>g95_3wPF^(-qklg*#(hr2+DZ=p1v2D zbOJZ9fAS06O;B|w4AOE9Q~8hvI3q3qrv+35n}w!hx!(V06N%F~`tjB`xsshaUMPV? zUMRqgVd_M2^oQKkFEe&&WZ&1Bb|>8RRbns9*3cNmv(-57qT_Q|viiy?Xf^=n-M~!O zYUPm?Dsu?ad_HJrbV87#4L)guP?M-C**q4ccX%eS2Raz)Qn{r~bJQItVy0ur`?lx^ST zU9~FDd2{|;tDA;`))V#^ClwpXc7hG11BcWJ!cyNPbriF!q#wiJM zi*J82Nzhc5@O5&xZ{$rP`zupq7rvYqV&{Z>lV&FV)-K&lF$+%mQfw;I$ArgWalI#5 z@wHAz@#p>6XalB2YD!RtO2P(xs4b&nD@?{T9l!ON)o#44x-G%M-_ydgB~t!AHezB5 z3C6#2$)@&AD?(Ok<749Wd2!LbLgL5;b&ffl>TRSVL=t{K|EA2&9%3oC_D4X!)QWOEoBHXQ z#ntEXW-(TVPu+%lNT6J!#i0X+CU|M-jEn;dFTK2{-`1p|+zgXJm6sy9L196?zH7#R zWPrH-eg9PvQHbpG^#;kZ(2=Jkj}k+Chndk|KP&7JDsp2*!G{Mr&oc;Gyuh~G+!R;m zLoYAqYZn3ONDU`>17>naTCVG#*u%nY=lp4*`r=x-Y2ts)e&OG%hGI?heY>8YUWH&} zG~EV1QYvQ6_4J}8*{6$NgQFz+d0(5izJOu%SC*es>k^A>wv{V&iqzg8O2>ccIsNfu z@a>@HSL`HiK}5%5a|Z^E&q^(?2d=M&mZ~IsW?1h)$()U=WI9WS{#R-Y2E{hli_7b~ zdlf`5BKFU@Jr4yh4dUg+%^g&vX;z|{WtD2|m+`hJ`(IK1=X!8Sul24o3BplHaoM+A?fXq>&W-i+c?$+a2gHSd=QF7)2dv!c|tc8!uM;r8ms(^S+0@ zIvQvmQ5e*)+bLH`PR}vu4^&(1_(;QN%L>q>hOj?y6Q#yqtC+bO3uBe{l}aZHEKtBa zeH8WlJCTP5MS`nd@7VE4*yxuRlK3Dw=qfIb%Sw+GV9xlq2GNqJdO-dTP`K-Tx@q!$ zO>y17^HOV^uI?JPN`!sRbsgrXx-OAF5Q7VxzVP+Fz8l4vvCHWP=^u;q_6hnHz4;~3 z`>PbhiGfp%s{~)Oax8Jt-Rl#dulFmThg~a4^LOKj4oOf9$|b&uNYbNE1J8^uawtgl z_LDS;t+S`K6%`K)Av_*Nd{0TjCZ_WJKl^eMZS1xTKey^gd`A+}&M!pkCIpLx{>=95 z?YT*niK&|67K=%ci+GmBK1Lchd93;3}R$acVLy8}>e5QJ54`P}AW}|r-r%+zIAaG~a?olHWJo2n z_6=1i>&{lC>(av4(QQV=+{6b4fz-jcP?*oXLK@U75X$v>deMm8UNcZoe1U|*+O|r{ zN|xGbZdx2!-rq8og4~41toE?J8-;)m_IMha67S){40^(Jk>>DU#mgx^(Z`xTtga7k z1|$r{fCml*1}*zB%|>I``Xqjp&`9yXu|>Dx80@`V`)QoT;OzQho#x@8Hw=22-bWixp#w!)d|6ZTd@c zb~a6p$6B{m;OGznMI5+(pAQr-vHAG?u6xn1`uHh{O(njK0@yr8~O;UqEgI`58Bkz=Q;s*Kji#d%5Ouw z-0hmvQU?{&A*&o3Hcw9CEfha7#IiiBUQF)v_A+Ychi)OQhJvro({l_pLHMSO??-Bt zY@*o<5HePzXEmL8MNMegvY9qWD*a5W27a)Ec=-y%%oiVz2do+~Dy!ZdyUCmU@Uh>z z1ERCzF%iW=<*bYqhKOq4tEb&Y#|NZ!l%)ohQcQol2VHrN#8bQY{hr>;_9ruj1~Vq^ z+8LDnMqg45>3PS$T`oqvSgBFB%iAYSZ-LEntc;kEQb5Og0Ct$s$rD7A{0R!%mOQV; zA(>w9HY8)0K{wor!!BthSnAu%Cm=D6@(DqE)vjhR;o6t;*eWX1YAkIpXJY97Cd*0C z6c;k;S>;6HA7>%>4P=jzN%DZca7u@e^`^08Q-B&ZFn1rXtRg`zEkdoq6>LRpU-jmp z=KErDPr+Rrxx+_&e7<~PTM`l5fH~l|Z)6k1Yz1NGgNSTh?BK>XOJchzxRZg&cBa^b z6jK_iGK)Zri5F`ZTqS2j=_3UhK{D!jEVUWOCjNv^{F#H~k(kcL?d^F>8}U$CH^h+M zk|{Oeik2-m*bLF?tMX{RO3i?{xga$vhauEi4}K0ZR-mU0))c4s(@*hcwPbP&`Xl33 z7A*c*hpzT+g27*rz?A|R_o>K1f*ETy&rr-W7RGev@{sY-i)6!kKf~+Qlqu{|0%&mf zFH%r!19aahITMfNw#rLTF!CCmW)xk=K5_&kAUe#8Uk}UD-;>N+ewaV<;~Uh!@cs%gL%6!Ny6ZL?_yGM;!tvS@@#}O zN)ZyOAAk`LRM^7YrhZv2Yss!`F$-^?74gs=`}q`JYd>G4gI1-a(s9vrf841-lPSmMv@uD zt2ROEMf}GqVN}Ao7?n%!4nsRzZ=)^!+1ki&S${@&YE6N$a@T&P>VF2$4QKJ)ZS2eV z(2c^x;JJ+CGNeUupj~+u&+vuO*jjxRwRnohW50(G^j(8oTq58R?9>k0c1?}$l2wm{ zSsi%zWVkmasiIQE4W99ae<6YLe%iiJg3C`c)O21S)_=Uby$C9C&@-&5rQwJQ_6B8+ z_ulNml9Kx*BnC5Rr#E&B_=aUNlPeVH(hsfP-Yp)G5q(5(3X#Urjc#AOcuh?dTBsdLlk2~S=&Z3R9iN4Rw% z17xpr{PU;W5DLZ;V$4lp)M@K+41Nau&+1BQSeetXE$n}AK`9&dw(2*9h8D?23&r(_ z*OP0csb+e2K4~<>n8&o|(rR5n)L3T(Pi{q;Oo{Z=vVJVkATN4Ck?8B(EGQ{a91IzZ zsh(3gm8?umyM_K@A|MNcO)DriRz5Uv^JL|;;ZVm|DK#pn7NuQnpFJxB2_{KO^6LEx za-;)v!{^k8;~f+&BZ^1bCCiFaB}JPy*R`~FW>!bmg5X=KSn17`JP3S5xI#W^V>NH@ z(d_$JC4Lp+EH$j!Yr#!iG?9g&)xndx<;uNmXaWmLu!F`|0~wbx9cdB_Bi;2&%k`%X z%uS0$C!Aa_k4Cr77vHAdIRAY^msM|d?#x*T{Ww5>PKj8856_8~j1yc$n zG%Qm6h-o7DyrWoMfCFl#q#C@SqH9OjzBSLACav5*Of3XH?8~S zC3^Q$7{m`%CnQTB$6U3W1@}+Wmz@!cisG5y{K@awxlO6k&K!29t92i*`?HMu$(^fP zU!{>J2iGT2*;A4cU{z+zzg4nDMLF-Qwv@?O|H4?F+?Gm{2X@V2hhnzd==jMQwNN4I zO9sWA4bki6Qm(I(NhJ}LOe0b2i=rH9u^Xw$*1aSRZvCb~?CDa&=ZG41Oj(X=Jaehn zW>P%5M4Q`XBuPr==Jqz@{ZlXoJl69Ga$+fIR`{GzrbaEwT28KDy8!ishIUDaml!IW zC=BN0Mr+{D+9rK7(r0^uLtgy>qb)Q}yRzlfHhf64$XReLAXsF6Rcx!SaYe)`p}hr* z*&J&05`Ow`w-lKc+$9(9Rftxpu}|KUn>@jc-o@xgaR(B1{FrlTgw>l?sZr+it8gu% z#i=V=OztJ=K&Hg?ApzIN_sK^&rzvYyQ~%}zx*J3Yei1;~tfAYomRQbatI&Q6t3Sre z$?-Sfw0EE_?crpX!%^=fycr6=sO&dr>RN=Tab#w5D7Tw1&*sHQ_SD#@jR>v z5^D2fw|W`f{q}C|UzeQbx|iZ3$7som-NXo?{Ikf*Gj+B)aeLg=C0n{SYeJ194&wP< ziGP8=L&xQ^qUfk#EupjlbTWW+K!o}XO?6{hR~X6vK=AMS$))Fpe6ENeCYaiEK*X^Y zrv(+z@#UjC)?xk6G0nI8mp|?xUx-oF^zM`-Qhh5iHSu!*gVL@OmY+ZFZP3+%iAmR+ zLA?eU+mTE3*Oh{34~BWzd1e^QIP2hj8XP~*@xj&OXNSZFvGyB`7)u|s$#ACn!g}V! zyNK1+#@e(KUR65vg@+?6Sm*ykQ@1G0pfy|5L@S3gW+T+5>?QY?qYX+yD2;aXz0MTKOMCbPuu>gQaGRjIR42NBdS zoCTYU*eD1_(8<5k9Un}&vrm^Sq{jO_>6qAeQcMfogJv`J6ltpSRHN^U#uP#Zu z_Uo$P{w>GF5QFP-aGY70ofT~LtJGAL_6mzO4(&l4sc}&rlUeXvkTDXS#4TN^?)G5+ z$JL$v480AIqQrbI?w8gJ4Q816lA7b&gm|5Ch-n!1gi|FA9{qtGgz8FJPUL<+7Obqd zcrS$@j@2$Ya@4y%`DGLS_3GO5_Tl;ok<@{T%-QwnwBBvt8f;pnWSqtF?h=*g`=C7k z>|-x)d*hlk+_xE&#SfojxD>*UewYI_ek7q8lq$Bj7vo7D@a8Hbx2MaC=<5N5I@d2$!-FfgniE)H<@#=~^cCl*@_90B} zMBvB~zlj=m3z>69mUL%cWlSeJKm0l+$*%a{%SQez!;09&-62x87o|LoLmC3;8e zi^cp{%!^dCnyi_Wa-$5OwON0U!2O|XZ$QQGkE@6K0~oKkGUPWBl|xAA zs1IVgF_ZdcETMv^MCFH1F8Yv-L?VC7obW&IF#4-;n(_8Ux@uOjzNfw<^v+w579oh= z^z?G3Mk^J;g9qh4Wc~bOIF40f!V5uGH)eBcV*gXsQ1zyE)GFyM-%O7pmR}LgD33e7 zw}9N#{<+YSj(=XnI3Io`MJ{>KBmlG5yUy&%P6VgT4~<;#A#JtLg1+(E8|~!D!-yOr zi0+WAL_tAmf79>rcA{Ddv^aLt_vfmzB@D$ZzFHZu)2$VYY-=Q=*j#;)##oa_t+g3z z+Aful_BUk|RJ$$x2}(848eOsPSUK&QmqUGNPSMi-4lS)e9h0~DiBz{h{i#YDA<3>5 zTHm8#ToxVKgir1yqC);X%NTeUM#vWLkV8xd%8XA{J@r;M#4>$%;0*j8$Miy67+0Hw z?HY;2KE$g*~%S*S}|v^7FA zL{OQ~M1m46UZl6cZgt{%yOgm|N@;<}I?Czz{lZNx+76+aGT0{mJ`=0zZM}WX3T)zn^8lc^!G{=}&@R+ajRPW6t+0vUWVQ8;8Xq5jeM zE#ekFLr$o>r&G=pn@k8TVOuO8x)6Pb6RBrM^-ICN6%#wgZ*XF{YeNOjU@B zFPT4^){q+SGdBFpPJ)M@F{MM!)Y!@Huz=$!YTw z>w_6BpA208j3Cx~a!Exlghhv7(&h!==+e#YG~65g{O$0Wateiq-?|FCh%u+ecE)}D zB{dYHwNZ)~qQyVfwU{Dkx~G?>yw+2GY{q|W5ny<+!sxTPLp^sMmcSY||4RCS);16- zRuLqo6OUQy*kV{t<6(D2uG6f!v3a*?hM0>05wlg!yK`i;xAA7?a<*SO%);#za6D6` zZLhKew4AtgcUJ@l{qX)EAGR-27^y}o1vWvzs|=L8B1w^~8rDKWK}+npws+^CEUNl% z^5%RSennVF{(G3oB00?_>c!OUG}J5g`hOk#30fv=lqxa8nj zA>@Vt{FCc#LI#h>qW<6L2Uu^w}dJ5bpM&Q)`j>M4nqLRg1}{_f-Laq5a341>?A2V7tnOLyA+ zT<;zkMd8+(K)0Kx9%!UI%*6R!*-TQ!fs(2yjP^ji(sDIpSb^gs+gJ{jskYUT%i2Wk zAw)N-$xaenh7ZQl#Z0D;fEXCt9}>HYs%1aDI_{is-$)Oe$0Xqh!?xhlsi;xDj+kF@ z2RfhlFKvp95ARxv)55@AFK@B}1maq(#? zu}sFIv6s|YjcX^IR8+VL@lkjrMSH}g@k}X&fh%0(MOByxyxt^a--g!^(=I68g5FS+ z;CP9&C(H)X;k$@f@nJzll%vPgcug@qB)dQ!+`Q~e6xf4BHOq9via`{Y zC>oFQ5s8rME87=$*H3O9uvFiM$AEi^|98(siL^WG6LzW{20>yfDG5p3Am73{2>kO4 z9I9q1UGJetv0)$`0xG9O>5DF&7y z7XL}v0z>NYzpvyI>fY(8ixY+NA8*=$1S5Gq-h_SbVwXyLAI4~EY|!#rSys_X8WQCW zOS>Nj`(SBKVs!hsLg;RJSh|?TDDmibJbx4^QgkF7c*`RydJiMq*HE(F(d?L4w(a95 zzjTGK68}p<#tM7g1;mTLHY{>J+VZWFEo(}!;X3%m23E(ei)}yJOVpAD4X~o(vyqu=$NwOi|Q%F;L(87{wAn`3$$$D zn5!^QKhb@`5y~wDcRR8|%)kI2F(D)x^aB?rgc4Bs0Gy`i7pej82WCp@SM`Qli6Vve zF#4sw0bVHL;V&HM&qRJmzmFZygB~fsmWOh^oL&K=5%^~`n2Cu2a$cuEZXlpoF!@6i zF_0n@#E#|sZnb~mt1sCj)CCaNq}ZHhs=5|~NFgcg2Fl|O4lUM9y{={0Q>fjeRh)!z zbkKQuU*?uqzkb-TkT8!!!xE1%HC4Xej=#sx`Z*^(rp6t>jD6VPrt>X%R{Us#W1(G7 z!QvyFU<^Zk1~&7VzoN6g7AK?{V<^oUP$h712Xk0RHdvBA7*nLc#WOian;h{)Bl_~U z2;Se_C1^8QHa6$vm@}2MAo2Kp`}N}P4%vJQDX2;E@=t{+y{uZp)y8Dhm#@nAs58_pW4Yo? zjMcv=b-3+SC}>#;SRcvg=yQ2*Yutt@%bfP*4?D!H6=BxT?=Bu&nKs<#)|6veAE7py zZodElr7mOPgI&<+wXavBKNs_|HY;h)&TX;fI%K`;Cdonq|^C8#O*XwI5nCz?!UV+|0cExvPRg9R0Y$ z(?6oSuEO!uULC%>9f z{I0wOi*4nD^i9>74+WXGlT=RXdovQWm{l;E)yOKTk8V4C_Dz>8(pH)Tu7uYcGS((4 zICB=t8?RirRn+_*4C{rEwTA5?-y-8)rl<7UFWGs2=2vNge17YhxzD$C)Zhydz+832cBRwFo>{f$(^c3rtR6hM?%F-l^Z*fWcmVimjiM}}qw9|tFW z%UZtsU0f8f8Sa6o1xp4oHSOuJ=ns(Kt%IdH6NlqUu!fkI03iX_5$lFhe{SdH+qpA5 zkv%kwa3t<`Ex9Gi7EkE3eTK=B7#o65N|Yk!ytuP3I(4r8w5EQ zmPu!ZF(v(sC}W+V{EImnm~Fv!{z4~$kGV#!{+Lb9h%nIBeEJZBYKD7kjk04*TG$nb zG{mk=2K_bK<_{O*;`xjgr$D1UvJwRY+-r~PXU2+O_=vv$fZT2Ul@$;ut!+YJ=|_{3 z!mb~mh6KQgVl;_Y?1;8`FW!K>z<=IAJXQIOpjTCVh%-Z25KEHEo)RJ+NnnaayzrV1 zZq3X@5QvUl|2#6BGw-yrW{!r_19NMA@uh z4rT+6qYtdr+lF0{zkji2)vS4fQ($G8)oc$kQiGr*@QM^i_=CFrV8kVNvEf{wWFyxoM3I5&<1$=U-Ig~v&LZz4 zcYJ1CWt~K1q5yP207@qT0sj#Vc=r;P@S3i}`5yPtx1UUVI^E%re~iY)tPIfs*GA(u z=Ks)yUzcl-Tc`hCBcU*v8mNzfDGK8K^bO6T{4r_@O~i~(CSIp=!RU`7!G$;Vj_^Wb zDSl=zJP*y*8cD)9zZ+c%%%`_XyI_tqWK9CeSpkLr8%9&w#!=}u+l+?sp~44A%Pdn( ze~j_E{Df(l*E0d#Z%4)kZbXxKJ@l8Jrmvv$kB88_{TODf;Lq%EewJ_oP{h;2p`Iar zzivPO#ht75<5gz&$R0dX(ALm7ZD(7B2u8eeU(v1dMsoa5`s2xuNX!QoR=Dc#d&P-r z42O2Cv*$vU-r9FiZjm}9=i-s_43v3;odP($sC!|MkM1nzex`S?|1L!lo#6*U)@46Y_!~lsY_&5ijxw3r5;NcflujNHRUEXK42aQC#&n1WVCqo z3Eq~CFVJx!r80rqIZWk#nR0m!?}pzc0aAd(aCmphvePtd z3aLHT|Iu{TaaHu)7N`L34bt5y-JyVVcQ=T1hjb&|-QA#cBi+()2cGx-fA|1% zX7+FIwZ3al{_IPlnLgCAVy(i-zbu=YO5}Q`W9)622KOIy4up+;Xg|D(jQ9bykQ000 z4@b0-VH)!U?>x|4LKZOVix@o}Y@hl0jX+48-znP-%hs6(cB%E2FXM8TG$!@r-u)sm$m;`w zql)OgEp?XSZ^uWmrFcO?lPtBp;7?3bPyml4=eBjExitluf7#ko^H6(1d{U2zm<`Mq z+q;(PzwxWO4pJj46ba2Np>=$SCVd6#y}=_ZlpTeM{mK(3TINcoF)14MQTtN{vma!~ zCB4lGcW3AZYhqdufu#v?ZXYNvim0wR3+VZwVzP|~qszQEOU0wA&3qS)76ne*_%tHm zCA9>nW{XpX#II~OqY8?`J>&{07Rn?VVw!L=LRAWwe#*RF2ViiTJ@E7E7pL_WeS$wh zZHh2R(ZR!Re~`X$@wY*=|HHMPIG85 zi$3T46CXv7K!gt<%LV->%R$MMZBKf=wM#-OSyegwuh%dQlmQ?)V$#Q~8m35zu*n(- zV~wU;12WD|$e<;vOx=TZe?74sV&ZvD=gjWmS-At-Z04+|X3F4uc!VooKWu6^;Ykik z@KJoXlESJgL2`5TYtCCOw0h2zG>NB4%9HbC{iIEDwNgl~wG zGp4@tLpM+CsQmH9zQO%ILu_UWfW$YaqjmS^S^mC0rta<2R)Y#UHjH~bsg%2-I9u~+ zvl$vHT~)vQP}~bJ&NnZ@+m-Ct9`f5w&UUEGds^2 z=nfPF=a{dC3~S1auyk|oR1Ck4rkN5=PEl0`J=lBR?jE6Vxsn__=3JWJt-E^KXErx7 zxCw1?yMg@N#UkMe=UCm8L{}e?c7KV$-QfTw&?rqSv~;r+6++`eTnk#TWs!90lc13v z-^O^u9au2>+WE2PRNGE8#=RBwB}$vHqPX+FPhwG3L+&~+cDRTSbIX#8z!k!&75&1% zh2Hz4?$~Wl2QZTnV=ujscJCV}v(E$qnMA@w;t`~IvJp%%oV9Wf5uhrKVKlbhXIl)i znak~Wcb-)Q{(u8xW}Q&*<-y|>+Fqoj5D?jqcF_j;Tty$6)BMODi~j<5gQUxGogQ1` zL~7l!%bp4FyE0;P-J+c)nOuo{+a>!$h~Zg6!kZYyK4Z9pXEQziT`$!qYPeZ)a6=TI z39?O$fAbg>q`})H()N=#Bzt3^{MU6;Di4_!FuFAwd7I05^C?k*mG%cuJa)d9H4fRb z?)F;x_)G8(-uASgG%|ZIJKq@f&axtW;3?cTE9bS zX@bI)lVjw7%$#F56FAQnF9v|AFi5710Nu|$D58`=RTi~P0)9Wab<*{<4@Jc69tTj4 z3nnDAx)V{LD$}wO9v5s5>UYm^zUR*;1M>ZMvH4_+e6>~LO#6+Y=Rsy+Vi*tnD{v&v+2%_;a7@Ml=wH{rr=(>!m7Szi z36$7>XRNdwcM)lA|(8LCfQDc+wXo`Im6DyzysobVe$JcR5x%$kZ+u zwnU=R;K1zj0^`U`1;)K~KI1BJb^N(}JmnKQkI!L6YwhGso1*Avj&q;{kP`qU;2Tf^ zEEz35WMuz-j#lfO8FllKMr!TGpd*B?Kx}tL=+{SbDjmU@(Fa!Povcck5 zWg#r!M5MD;^Yz^0bVz%*c0c?(8+^UNTGH5)3=pwZld}TeQB5JXQ`sT5>TYpwrlq#; zBGm4ka0+y<9vW|EMoh}(%+9wxN8lEYigR!Y+&zZ9E~!$h-Mq-Fx{{SQib|%_+}~AG z`cnGD*G{(2=-Dz7D(!N zuBQOG&f&AQcAnH)N+}^V&myLTrQ96C1t{0XYH2|Pe(q5baldqEj2bn22yvk;^F=XI ztTrx8UhEHO&lq8iShx$n;$aAr?Qz6Z`r!`eTk#r|+~Y_nbDLvaH3Le3gmhv{Kkd!- zK2;Z0fgDl{(M=kUq|uTx&bb*;Dlc%IMne>|;bYv>&FwBZEAYYv{tQ$2=U1*8>pfne zPDqX5Tev;_ULR}UP4Ed%zdD;W*}Q&qH6VJ~e!Nha9J@YHa;~@?VSm*(73Z#hhCGSf z8^&SYo{nYL@ewvI%w`Wxe|KX3Nd>p|!*kss2f~RFkS=G@24F)c#KGxu+}oLX%2F|e z4$28w)XS@pO;hnT=f@=U=+FlX2JQkn;hiYdeECtK;(F;7+kB}PX$bD(Dw+NXS+I$1 zp_#x2L;AhiBBg7sm<5i}2s?-HF)oXZSS+thQ`l!GK&xP>@^y zNPwv`!9$KM-C$!0!MP>TfzIx@@WFT+$$lCaV6UbAo?*97y!!MB$> zGTk&Xk(^Ey3u2?Su?zP24_G3zkYT^70KS{=QWP!yGS^pZnyzpxLiRy}zFg3`rB9(} zOlLwxk-l18ge+ypWFloxyt>Owvd3QYJ+ z*e7kSbEQDdD78<09`CfVnRFLUUb#~hIia~?4y3z~Mp0uA`i}BRtV-3l;wtGMaYUI# zggfx$bI7oqS3YCJmXeEPmtI)0J+ zEM$C|cMKHZzP5KYt=cW18+SEf_@pg)YM5d*|Hrx!$t&>QUkstJ=EopvN%q5H<;P8P zGM?KHP}H9U?IzoOJe^TjU>L`lXGhjQy@JOys*4ucT}tHd*J+se z;r#s0!bDu-(6sdT_39l_zuid(>`DY2d7sy)<%93kKek=&)7&hhVV1)rJ zUK}0nHGj-8KyGItwV(9F#xToNH|9m%_1E>(->+n~QLnSnFO%mu+nZ^g3u!ptYrOAZ zlFQufso_JmbI6|gTYBUu)h2Lt>|$9pAO&Mc8_6s-W@Ax5tB(CMrWKCx!`-a51Sc=f z9~^3*n13F?G9flJdoPxV{ppXV*R$UV&T-om+eCK9H+k1I0bp)H4nYVwlW&Y6K!Fgp?Ye64}0#0;_oo5a#;ptdJYh&getVR}nOWAN8c zn^)J5by&E+fLHzoPo#?marv>O2O!}qaEn?k_O5PY*Jg!*p=?5y#730{jU_<`Es#s@VY+$(De03f|erR+cbwnD-B8AK_smIDI|yj z%IhhmVJ4M_QN?o}bAP4%0xdw@V65D7Dd+G}{f!w3>*5REKJ!=|x`E&SbL$m5A7`uN zO>`I1vCjhksU+n=Uyf&}_ph3eEFd1&JMB)Jcs$!|4sYE?x(ZN57N+hb8#xRYHRd-| zY@pkyx(I~EmqgPZ7Q0K=OQ;~x9ik{2xnr1srrqY9Zj~4A6a5N1!7p5frvUxkt>M28 zJeiy$^Wit}cN=IAW0x2D-s7688iGg>V`UV>k9)ze{XLhSk;7^uA1bc)a<2C;Qk{fMZ*hN7!nCoJr1j))sqn0-Oq*T*)N3V^E9@J$3BB& zWhvr~knN@DN$D{pYH?2TZ#PDOQgcG3BfXwr$68(}o*1|U(3G^cIC%crGutg;++Sx? zjOJm`=5)TYL0Coa9XeoNcl<3|bN-P2V0nK)8YZ=w5(b_^PWn|JO&NZT2dfPi6&2o# zr)RrLtj{~&?rRA8#mBc#8i%D6HUZ-^Y97X|F6}AL=M|!LFa&1=@bimCNBg5$igZ?? zb_1|U7cIP;tL>a~NM`eNO@+-M7F~MSaoGW>YW_jvds(*wxDet2P;4VXM^{l}Qh7Uu zaGJ`N9F>n?Fvn%(k*;3;W+y0{6zV#~J+knA)_m0a`%lR<#{Y)=Px*{lCVEf1(DPw^ z)P11b*9IF-rV$VQ8Q0PY7F)u^L<-X$ftjX}^j_z-YGB?fh-2Myp16hIFOf=94H{T(^33&|33@|} zeq)A1^`mZfEIhOLVi#DxCReabj(e=QpG28=`+4YnSsI(6Y}YtinI})6M7g;Ns<~ zikJ_)2eenYlH3_SSSOQFTRJS9oyJ(Y14naw1j~?SPr1kWk5r&t}@D)ljI#k_zeU> ziR<>{wp(^E60=FCWSiN|v99*tBm;n?<)WKGM7qW>}Mq4Yvm;0ETEPa0NnsYh>>?ts3k(=(RzV(_v&>X-ib{-{jCWPQT5T|o#qsyuU zD|a1^`gWNdo%Jj{He$^{mO=zoJ^JUMO8c77FEe6yUqG5%(%?XNXBRF zBXsq}DNZk4 z|Mm2?BU z@+90QVT9u?0^U%vz zn0EkF>o9uBXKba44qq=w7VWV62QNfx-Ai=;s7413kAkd2eDfhxHrfa~aL@nRCsK<5 z&iD2yLQ1%`E8ySuGM&d14Yak}6Z@@3qNh=*snUU3*iOb?8V9qD;#gT&Z}17w6*u4G zh@f(NW?4wo>=&ipMzL7`J5_fb7AgtD)PPG;G5i{hWV19BC{5*z(_+uaRwo~M$Pd-1oTsi;EFRFtwMg){K|FrptYp@X|aI)i{!eVx~pn)CQQVH!J*O^ z52LthdI`0a%QaB!q%~0U& z%Z0&ZV`er#zh;YK69M_Su@HECzxkdmI;%c;G|H&ERbOzRd(-cFQuIkO>29pVU;St? zq0HgS7g`J$>L$fQ51_{u&T3Jp(t_%r$@g6-0m=#uWq~hb!7B?77_(ez6LO5;@B;ee zQ;N#=zhe7G;a2K|bY;b`(b$)>FaDWoD5L}`^2Q?xt}X;??yjYB>JtWvW{k6vA!V#g z&&>57bdeU3%?GV%E)gdPD@QQy|3>x`Rk9`+8d4i=Jg|igi-NKg!pYa>PfboSZb&F1 z!*DUBou37Z9}ITHYinr8IIu+<>%c_8_NwV*$4)o+q zv<^n5J3U=P{j=Msrdy(jxr9lr^6B^UrH3nKUI~BrIQHc7^$y#Q+PII8f(!O?;S#V) zlz3JpxyQ3(Sw)NtgSHMXT%|b7f*=S5*G{hJB}p*=y&^9GH39&!@Ci|W8rn%vm<7FQ z{RO5$Jza3XFS2sGQiu|cGKR0Wu)LS~^r~kHJ=R9Krxu@F3HMm3uW7?*ekr5+tgdj2 zs-Rk!sB*$&U&trZ91Id-cWc9sYPbKBedco}r$Hr;^H)VEd9J1?=th}6&b&|z%-1>cAo)VCIoX46 zH-EHBO>>g^u+8E+0CroneRST*ZRMCK#c15VkTUUFS@|U?pN!7i6*)iBW zxg%2UVi_2gWpF6E8?h^?P#`Ekv2LCx=-k~t=gX17>@U$aOs4~fCy8~p%)1I>C-oBf zoxLX%y$Te_eBH|k!UE8A0k2}9@Ww>}1lgR_#N|kdsTc46{}~$A<~{qyMZDM-e52J5kYE}*ei}KCp~HuajfCE^Va>z@F&w+qvK+Kr7^ze(Y)tjK9G{R zQ+(fP_v0oE+Ng3w<139eK*(im-K!fu$nAeVu?ap1n{61p8sD^`T_OE)Tj_$p#){2U zz7oW3iEp>CPK6g%MVNiF$n?_@Ysz_+aq{Wdw1FbsU=UaZCy;Hfv)NGupAFo;Iot`8 zm8=+ATT0|@?jR^%&)TLxo#W%RlPU~eH+SQ;J|7Oodm*w>xfHcG;#ny6_O!0zdxC+pSQgpmMb#oahQELS;*f(_?a-!r;)7!w6IHAT*Sp$)i{s0L*@W2WG|X z87f2wud0C|V`K=&CfKCOHm1t;me>Hc2L!yudVEgd0dI6_820p;xD>t?C*{Y-j>AiGuIo=hDmBLf!sWkL+S-A6w_>Y6 z6_gLU{mdOL)_{5vEQw0ZpcEzvp=SU0phRw3ZZs^TcUBhr%6pg&cc#ov3gt?sIRcrm z^IB}ev~nouk>K1qyGtJ!b{qe*ANb`EiZ^4)_@mmvED1-ZG=fD9e2MXBUCl!WI}LU` z35QD=N3YKOLLQ-d)YkA5)-sZ)Wo;ok(^(7=?^+lF1~#IqMi^G|nBb`j5u4S4n>)Nj zmlrnXb>aZ#%HfLib@Orb;VPHj=mPVrQX`zu?x2zF8=_?yCl?u5vI6|ODeaj8uPNzOD6X$U&Y~nB<(Q1G4^1{v=>HswR(9;x@xDs)AYESi@ZBuVyhzA@wa}So zz6IR%{0PJ`HL0hU^_&nqDB=i^^D5mvv|F_zH#wki^#ckQatw*+64vp1#9){h5(yKL zz0DiyXr35qFI1?Hg49mt2X9fvxM!Hq#Ssq@A4tSX0 z?sgkMO5wo5SO6Qq{27_o-||+;7_U~;FP-i9>m6VLH1oc0ZLONKdMp|pY?;GtaWkX; z8jh9jsT}a4_X;jg&#l{P%Zjwj@PP*+c1r54BaLVEMKXJ7Og6~Q&I0WxSm|zD^qSE| zFOS-~q5ah4@h_vK>u4~0zaf=Lt>qD}-cTeNDgX8mh{xs8=RrQDVf5UbZ{VognOw4B zTAvltO@3^J^hHH{^myf=lYC83LU2Lm5va)Lqm%pl>$^2-Cg`q3!* zUY9lQfdtI_QGuE_1upqNZh&dcLYC&-FecdB_T>)c{2zfQ(%o|7+=5lp-_4U7%z3i_ z;_Gr!zB0tCg9I}TCnIyO9J_f>lttjZQ3aV{XYj=9O#3kR<|Xv8J~ zbs`ZPrdFi1+_ck4RyxIg!f?lT(3r_+dH^|$!uT%@KFX(e z%TSa_{0L?*YQ4QDx}F6Nk$=`3LBngMsRfiga>RJnP|SwYPhqYuwvo&6W;WuG=2QIm zFBb+?Le9mU=|&3iu;b6nkHGwCfvUH4i$v?_GC^@Lv3J|Zy5YB^DG=n6xR0BRfqd` zEoU3k3!V7=3eUR+j-|S!48{n1i$lOXU}2Qev&nB+5u&+qyL|$~`Ya5RL-Gq-c12JU z5BSG!S!m-}2TDv)x0m0a^ncvG(fKugh5pMjJwR?VNL^PLn2$b7LpS@YoL_8T?Czf8 zqRO^^gcpMo{#ilS>9lz8FMGLcbNky#2`&leV4HS{tL#12iaxl?zV8>sNZ-_am@vKsz z%*Pq3?AREd{uBBY+8XnhKtA;nDaQ5TuajUy6EeSlnbZLE36N&OAmrH3r*M5|JM)7u zay}MQ5XJmN!vdmm9^Rx6_KWgNWkr8pRLIEF;iX!NAajNVEY|NJ{F=k8RRsh`_r5Hc z9a-HzG7Gqe-_=#nBL~*lot;uD7q{VJd+_3>p@omQ?dcmZ68$ zH%*x|9{;WZrQirC1+B)M##pkmZSR=!kK)8MR|Jl;?dN?1Ump+1$W&&=F%q|@6qmmZ zhIDdBjT0nxNE!gUr_t~hX+)%=#&-<(A9aeeCZhM)7oL9hay06@KISXni$a~7Ft~XU zi}8obRp(vl-70Z;`1COZ)7~OI3(zcNbrk{4f>HWYd$0%a=HMHRIyJQ14K{evj`aLw zi#vH1Mq&KLMoxEueXY8+%1$lL6VD?bSoTQJ3>i6iL1?J$?#}{331udEbs%eSC|+_{ zp*F8W4J@a6b@PCfWhQ}FjlqN**2TS>k(e=4HAjw6*cObf z8K*u^CRe!{Y>E}l{Q=~ZEfeK&6sp*42R7%8`pd1n~8P8##q z-1vLGja@a2R?T35wCQdnlGMFBw!=ccK*=}71$G%-cv_9%>|#w zg0*TiVaT=dfB4Z;-b{l>YE3+Rr(dJu29T=iyN}!^_ZG&Q8K1#JqfX!>hwD4xBl&Pq z5A4LCs&Pa%bP-X1_d7aSevVNLHix*Z75N5_rIg;9yjAxN;HF+eUJK|A!FR$ z13N_6nv~;PBuzOHM$a0z>>-6W0pE7xjr%aR*G?p4ZJ?uHFi4E1Pnym{mW+AXzuCL_ z0K!fF$KwMnN4aZcKK{r)l)U3cg;Wo@%lL}8?z8LUv?>Iilp)vur2}hwx!Lq!*f`D( zC!<=MXR3Xx)Gls>TNQR&?l#+3+_A#p0tPUXX?5x}>tZJlMI)0k&>Yi#$BjhxcDzkX zTlGoZxCiVCx5^6G&an*rAr#xDaHWApVVh?fKTKnUyDdcoQG?>UGT6-=xW`Y>zW^2q zcm4bPOgLy^Prj>p4K;0+!NnRf*NrptyiHdeAIkEBvwZ5YWJ=@nDD32=>pwGvv9hoI zCX$OzJt|kqb+VDTG=nu7x-beNxNL`pLpuk12dLx~z?*ru!AMvixF`+V6|+LZwcdg$ z&u-B_t==(c#j!eW)T?^nv_>B0R)+0GR1_5S7C{k$BE=^K513_^`)FQiXP&(gvEVNn z07)vNUcbv9T~QcSJ==Fq%YY1codY_fiXX2Y60tzadKo^uTTPK0jL4q%tf_D| zQND&Sq1ov;fw>=XSX@^0)^Zug3wmPZ+Abwy|MncSM+{mHMdkeEvLCpdEuW0VN8Xn@ z^aOev#8HY~!wvBE6%#lwmR`_3A;0d+fq^4@zKcz&-l?V2XLlcWgCrdzz9;e85GI%M zj}cm`-r&f-F$jk4T*jK|b#fF?SDGJd<@!y7O&Ji``TY+KpdhGa*-z<5^+Zx>+V1mc zTA!ZyayA&dp)$E(3%J;-7Tz`4?6`%jAVb1zhZ}n+o9G3jrfG3aruelBq@?{DT(C0>WSq3wCA%|*h&`2f#=IO)5VI7rm2tU zim9#nd1yAYLt~|sgl?!dXB}S8o5;-6YgEcaMa~q@;|WMQ3F>Uvmhh_m0GZ6pP{OPV zx5vUz$UJM;O);Bu{&Cs|Z zJN5qGmp{JTiprrrRZD2(H%hL?cWD^5@ZJ0!1AXao3(_51Zsu~q2{`*z%$bPSXsY1m%lW==GN(*=v$lZuL)D&SrjWYw2y{U2(SN0E2w52QP9L4FF=6uf!Mw8CQ7dq*X1& zEPp3=uv0cQb+@Ma7|rkxW2D9$G7%@QR~CLUa&}~DUb48$5{@w?gPpQLw!X7>%DSw> z=r5J;y)sp|IbWHB0I|sea{O?g=UK2{@RYiGK-(PLK##05kuBv5* zZyUFL;Ogl_*RhBX;6BcY=Kv`wiCA-4KGc4{y02*Oy)EL8>3n?2_#T~PBPcajVq?Uz zxqFPysf$1K)>>sXq-lIROAp5ay+x#fV;kjt@~Pa9Q|9(uI~b_cXqqIlWi3zG{)LvC z(LjnTA(zaRP3obpAIQLst1HgXqHU^5bpr3@d_x}025&(ZHjPe0O%BP%gE-dqDKJ4h z033r9%}ZUa$W-MHrc)6Nm%Wdg^b`?O3XDd239<>kUP zN0IJG5&AsbU7XOZF=0TW9{oO@JyAomd9u63@=r{)Co1o457BH;j3NPOms1g6C!s$fpE?8+ix8G;g3p2R!YYa0g{S*=7x+Nr&T(2LZ!|d$r^n`*l$% zznMbxt`FUlIA1}OB>y1NBnf^ZhCe9z_mz{0^s8kfr0{CWM*EF_n(9T+g8fqc8z{ah zy95vW&T)CgsyO*4$P8gSV^SdE8i1@CFV?&c`Wq&T+Le_0Va-4Hf7E6=_|Kj3oq;lc z*PWkYAsqdk6o!bPh@VLK6zQ$#QHY4+*L3Iff3FeIb`|M0lp?2I++8DOR9~|zKgq;b zrJeya#ii`XB6J*8wvRBB>gXcKzBzHwL-i$uM}1qsYfut)V^-i2h|mrez0ZKCXQPM; zL1eqXZ?45CC-pvEU$$+GRa_UB4Oqm<^9>@b-&g17Cp03EyBf=s?plZ8NLHmF*s19! zc8o4$AFV(1wMC@qzH}76nTbEYrtw$ek7i|kRg93iZxafjEu^04mBc7mrs0a$Q9qF9 zr)1g-J`-|y5gIQo9yYrH4pJaqogf##3?Raex32m57&{2mL$8+zzdIpK{A!?Mh^XSq z?W9Q^M-HuEf2Ghr;f+2fY}D$c}^m6{i_yPc#g|G;mN6 zyEUB)mEjX@Cd{T-y+3>h@78yN7n@R#G)XRj8r_$tVoE7JEWwb> z(neEl`M;uqac~ftVN0q&{(og1`;lY_NSVhGiw;jnDjJh|jsO0@I)v-u=M@X)jY4$B z!8vq;)41q^Ynme>mB4JYU%uU?7;~er!(?%jGI>`VE=Vj?VNW!#pTx{gKi`g@hJ5B> zDk0A!gpv3}oLKi5YSLF%W8_oj;68MQ?fK;durbHlA}slr?B(C0HRApG6@+yrf3DCe zl$2ql5Yf6`vqOEo?mb>nrd!nVEAhcJJ)G#3M&Y5Zf85 z`7h|xi&Z~g|{^Sou#$;>xlxCk5C@ICoQq-MyamTdhYv_J!r(IxrP}cb{o*Vz3n3 z+|l1rCYx$&!#0~6>MEWlQ`sSbT90;uwAJ|DN`sJ4Gr55$(;ZA(Non>JNfUu$`~yj{>^3q+>xKu^M-O1DlO<d3~bDWnmwk=b_pU< zA~QRbdj!aiH#lrJ%tM`5F*rFxM;w9Z5GWUwUVp~klP6+nye9-d8Oq?rEo2)%bs}4v z!IcG(&`asG>B1^h(F@f=+TMoSLyx(&wdcN-mrZMJ#3*FSU54hp#jT2{`KiRgVIX+-Hu|zN2*4PXu}62pw@#}K%*ZtThMU148M>As)zEQk znY7FU5T_y_Y6IkE-O?JC!jK7fEuPeWM;Ec`YxKCSl9jVUu!I$oU$W0@;b_P>84-Ht z*kKa5|FC&S@4VOxDu`A7{|rpi*!sG5hhX@_V;eoJ32ww>^_v#U5Qh4fiJ2OVoBLS5 z;K#mt;HqQ26aav{KU{2lPxa7nr3}zS*Cp6jpbgf;G0aypgx#6ftx)x$12Etvlk@B) za^DmyLtpRzK1Y&;7V1XWwKoI`kRB#QGSdk|QLFwUtC#r-t+q^cop-(8^?dQb(0J(L zll4kj&vL)3?Q24A_wVn5UWh(R`O_wYs4xXGv@kCzoR3p&(;y7*DLMk_3o&m^g|JHw zS-b9$lN!m@}P9K1}+9VHr zv>TuXfmXh{t_d;79*C!<$+6%Dlo-Ons3Hna;Y;;Evp_9V&7d)Fqka>8gCjxo47mZ4 z0ci9K^QHmA8`98$R4Ims>QW#U%N*09n(jU%77j% zj_bXLR|jO2nvE4i3{kImK_u6nRwxD@ga%7Ys2rdv0i1U43L8>M9e4_ zul7MCRmPx|@5`SQtZtL& z`a-&$tZsp{d5E_$G|*~({7+>6Ma@8*L(rC$P1E#uvXl0DwJ6Cx0B_)f5CaR`-Q6{u z01C;D2&NmlPmUeZHXy5Qzh45eVj%AE)c1yx#G$ApRQ;rmx$^@HLQ(4<-*2IdZiID6 zns+pYRND^M!c=U+^L^hN7b0k}+x8x#y_B@vv`fJSbv-5=LN z(X!?by5g9XX|@OXyXRq{n1S)3m>(lItv;HHO0;@B@VXM6I;tA2jbh2hNzb>1l=6_J zIzU>xd6D-6>vsS{D#H3N@PjxJ1qXYe0UE3$OV<8;8-3B$r+akTT6mT)BQf_%yvEcq ze)ug<>j&?YG`-=7QjU1M1$K9y0vN^^Zo!~ECc)WVhMi-906uoe8owb6gzdu^-L}+D zUnc!D+MNOmTJoTp+5R5_6#|-o|IJq_pvmBTjd%DrC|8Drfbcb0*@@_bzB2*xb)Ck~ zznm3WJs-r~y;*_7zgTU-s<>Rxx5Kl|muJoE*1+K9ap3u8a{Jb=ZU~-~;g4hbE}XR}|75Gp7(v6tkNV zZO~IRP21!l%t=4*d1O6Ra3eGsur(kBmJDEodRTFkdky=RuMiBG%lx5m@l1cdacs|nW|@sS3Viur3F*BQ7;8t{EyVgloo3IcxJG8a;R}xv=MG` z$ZZVUpRV0RA0QZC0>dsOtl2aKy4PWj+f?^3@*#DXs1yK2?qcsfh$B|W5QyHd^qzhx z>uKiEhoSwz$yztvH3gH8zc7Qk8}=Pp!g?insl9c#@Xp8`KW9VWA_h2g0)RarKpKp# zprBtm!DPAWnk_4i6*SW&G_-t#v~)xeV8{3&Xa&ZFQhhAwu}=y(Ht_V{59?e#?PD=M zw@;lTRD!iGKCez6p|VB;J=Ftjn9RENBmN{`@(dItC(bX?&PzyW;o+FMdwMs&LXo|Ue8w0l;vEJ*K4eH`2xLP-oKP|^Ys?P~TMchl+<;CK?)!d&0`k-$4(`US z9%imYPj`P>1nGo0;o;2OLsqQ$gRbWl12C+U<@I+s%FTs0(zxHMxg24Ukw71ai9wQS@B(#q1_GbG zBH8lBI9-M5O&m5`^~FM?1fuOq`|Bj#f?X5Vo=vLUFH%6aPAS3g@YT#TKbVjBX)yT} zEF<9Zeo`>hyeS*5Zx!K+aG+=$Vt?nmR@GP;ey~fbR{uT_-W|l5`DQ_tn<6BNkn$n_ zZ5;`#Fd!gPE3SJ#5ikpDO~L_;Q3+BkN^KZdkyFtsqipkFK8=oKd<*>%k%FfjMA|WW z89*L=y~O7Ja&KYs7jR&GcC@d7b%}zwieHUP4RZ{brLQF+ATBWgwN^J+hwCRxnlG1` z2Fag@6!me@wk6d6*=ZHg|7CUIRD5h>!yaysD^LPKVvsfL#*DqzE#*H_C5k#zCltm? z_izg)CfayBS(v_YyT@`sYfs3GiC<95yK1~6IP0Ya^lLrx4QHp*R`n`a08K9%o2;-x z1juEYj|m_^=5>2psMwR|7EhV}pQ{v@Fs?(LhwLOYNn!>L7&$nE7J9mZlWou75rvtR zM$>U;58h&qUt#2h#KiUAgw(J$c9<{d$WE7g23*8QVMsd4oRuw#fCW-mv9I`4?kL=T z_3!W1!rlu>QDa*HjX;caczbXf9Z6-)8Y;gJnfO+acdv|TFVq(Wy0;GTTC$dlD zOCZQHgL!ExUF}dzCU~GkGsqrl7af~9FtRiz0kd53|IKosKXJ66LsxspJTu}CJz?i> zTRqQz2ZH(rOE#T8(2o~fk?AFn*(6AO>mW5xN2_u zHa)`4alna0k;T=}97({q?{!8NS|S;12YC>YRF=NuR6qiMZHyYfGZh*bvU5!z6h^KI zk`9PKzH{klLVa%0Ko)vUMb z;xA)?=h*eI5P}11WWEo>35Ak@#SoqONV2QKfCC|(aw^w?#MZHb5~uBGWGPINhe0_- znQ7mcH62UJ!*M$KV-22VTNjsM4w@HN&8OFh1lTZPIkFxPjFs=?Y5e6&y-P)p?QCK-^1heI}Ei)oy-mp-gRe6Ab7vHr@u1|*} zPm(V7SEHSM_K+xW!TJFS1rRWF0YqO2XP*>F_}gYKB83xo!nxP&{r%}tm0!$=9R$CR zM{1VA^%A@f-f?X^5PKcu?Pv$TA_@6qff@W?cH6O}$5k`f_a*4xs9(5BEbWNQ8YRI!g;mb4Am)`(ScPLCj9L12`P zfqCK%=E8}AzS5{HS1;$c=W8=IV#=Hr$$_A;yl-QSux6iSM~v@ZcX#jZa0L{cNx;0GxNA+X_ChI2 zjYc<0@0DiXB0?fP#kCgq7}sw(${lHK8c=}yPPi70l6f>a%I9MP{SJZdNmzN0XT_bn zi;9Aje|^*~V_;fQ-RdjT4Di3_tblMKzVwnMG1L_|TJ5}0YJD7;rnIl{lhT61eYnu? zNNJYcfR^>5cJDp1kVz^Hn@)C^ayL^dwOARAt^KY~W>uQ$Vjjp;PPwF?EcItf;+=X( zKjp_WDiRX;axk9cE}O8W$o8oY6v#{e!&hh$OLU!U+fZRlyv3(GW2$mBViiUtMh7^n zHbD>Ny8i2dA74(F7`Q^SUODxUX~Y!rekuV`@6krPH~VORM~PdxL5*zLwh2e=V5Fcf z+r;9P1K)1|)Tc;FosIRfIIs?Nsz#j?^k;gkJR(N-vJ*J*xjwRVDsyM8zfS-&lC+OJ zpZ^)0#Tbf{OOU{z26K&msbG=hfW*-yBP;gs{=HxY#5ysgOWn}}+%dvS+*S8fWGAbW zUQmQk^oBorJvsU7S=y%0v+^10vasn3cix@dO|$DQnx}k5O?8n@T)cO?OA^rbslhoc z2tNl{iFRsKfn-vz?`q4hSLlXWl?zA$FaK(&y4rrG4cClW_dInFuBPfdN?ii=BoT=4 z?(P{6#TAyb5di=Zd8FEcV{tjrbPWLzxG_rmc4B;Fw&q8wgIJm7nc#7kq`!>m1|>Y> zbPQ~7luG!XDNDc?%KPsES?V_ssqm#d7L_k9A|E_yzf(ro-ou z1>c`c`?f z;PNZ~clqJs3z7f3{84J52*t=m*|q|NLs-fT}CFBhLSeyGrg47NhQu)4Mk z)i{*=0LMEaBPsLZ(e1^Sjh3jUlh*{Oe;4r&qrn(S2-NgM*}gnJP}Q(uBBSms#v@%0 zR)UdB>!QCV_AsxIe1cBm3oEYob1wH)XtwK>VGhFIv8t-NJaJ;iMIW4*|DPEj4QM z4^jtkwr1G0PoF{;3|^#^h(o|*Ix~~7+yj+%SL+2_@yMOsm>;($i!zHy! zyLZmv%v^ymA{PDJ#B3ZoGaRNhk1mW%cyXcw~|aD!dpU{VlZtMD@Za(a4#fLAjF z8DpS|OXH#Vm*C{l8D`Dtj2f{-Nzv+7I#y}`FFW|ImV!{u95dJK3AWQs)Bo2qN;-S= z3HtT1f5&~b-3r!eSu*PLgX}J5uWX0uTw3&ky;Q6XI3)LGu%MY#4igb6K^iG336<^~KtLL#yF+Pd zB&53=k#40sC8QA~C8R^TTe|!1na}Tg?{oh@GxN+jXYak%yWYT|3i~MEJH#k)N_@3@3!Fs{Xs*fQXi#zrk1f^&j|E<&uP)PiPWro-rBl z&-|2*u0B2N7yM%%PaU*Dd0PL|$c(E+_59(x(jgf8{bEC=yHkBLH$Kh|eNZG$Xs@?# zsosqtL6IO%p+qWXd7Aj>;Wj0)Ncz;cAI_g1yqQ^@gd9}3uTFqp`lp&N42zrU(`#7` zua^3rviDwvR#u5U2sX3SSpG79^2TOREve&JjT`Qi{$+khvMMH9Hi^$8T#f}!0Fm5S zs>1&6jEU_#Ue41q{!zAYoyiw6mwkDEl3XYwkS%p4VKB~^NW>HkemM$>z&%=67Jk{v z@!BAJ#XAzaNkX$y+y<+Fm4Ndk7?D>z%@C&Eio;R;&YErL{dj~J_m2Yk*gv8Az(MQM zcF5(`*IqWcTl&e8MY4;X)_k)Z)OcDwu$+u?^7d3^r)d%@4$1s=;V9VAP$?DVj%|-G z@+DI1w=Rm~azf$eptaNUJpHYO4O@%_|ZLa`oMLt z(B^suU-7Ezv_=$~%Mrm=h5tD08{kom6NuUk9A4iV%3DXg-moHzg4!TIUEqzo!R0)# z#N~xe-q%=Zj&Nm{vA^>YcV&Gtckk`2alTo!e8+|kv9nW|XefFKVlAZIRH6ZF463#} z8NA=XBKmY3hwgb$X`YC_sQ=vxR^E^p>N2T-Pg8+yVUfUToeuFdozh#KM7>S@1%R)i z+?;($nMS5rh{Li-3BUi@dV6w?g7Z|}-B*9M$GdvsBZd*f3ne%Blyy45Hd8|1Ccqzo zJSMzX>{x3fe!Lj%1CHUsQJ3fsHfo&=Uyq_oSAb!taB+y1GA7xTD`NF?#BAc2?G?IT zMMH9DJ5tMOJj@!E*mE8>3<41pmSRB04xyH%ugp`{7tOv~IoKe`r-91sV*NwSJ+@x$ zcebsWtUq=n*FWnl>62O;7G1$6ALds1)`8~UP=uA1ydIn5fh6H9`zk1agF*ab!LX1j zKUd&3-X3<=Fn2h(%)6lrTy_?V>xo2j5!$SE^ad4Tv1uf0H{;H)&pd_}(q?_l!F6PW zzN=pXpXoci3+VC|w-YUz?!H%^ZgzkpgqmJ3Rm!TVq_oCA+$NmQZ6IpnW5~al?ejPHL5C?qe zsfI6#+o8r9|F07ddYK5(D)Acy#9Sck`gQCHyd62>AlQR=7jYUwcmN-s2WGh#zyro<2u6N9|G1vD z#Nv7>P`h=J<|ASQt+zTS%dGp`=xfY6E(OPjmq(UlM$or+9AI3)Mmysf?^-H|NbyNS z&5$W>rB&r$O;xoB?X_Fi34$Z*8&V^ zF^Nh_Yv>>^ue<-chOuNfbH>U~*qPEvon)?*l1H4HkSqb*{w5h*0A&Ri~)d7MYx2FgRU(swAiJ4v~XCxkStfkXs& z_yV2+QKIIk0JKoj7;T9S@D4<}tv6SfA`5`aT|Tal6pZg2q_F?9#tb4AprV0LDV%@~ z2n7sO!WCmY#?)M068R&A;m>a;_ItmP@5&TD`=`s5;rEwsbxfO-MDa;K zhhUjX5LGq1tb&KLW7mYASfUo_M(7T26qXA9E$?CYm!js#8-xOf4d>~7N(0jR4sfq- zggVHY9o|qj#3%g)oZR_v*^hR4ii;xO?sibe4#*K9p%zsd zJtb%9*Mq)eHRslYTEp+$=9O)2D-Uck3h}k+}>uOrgdk*KNx`gTi zkBWrtz>;3m!TB0USSCK=6Qg~NRrwDD<7MFCQMSz>ay>m8VCxhnuY39{%w4>W=3bcd zBbm(`a997r{9rtU3M_xahI`=@uh)^Set#iy@`QjYl6-b=wSratTdssU5N?nQj6zkp zRT(}Py<&%ava z*UpJqx~_I*D#Z}splQQLXVyAt`LP7N1ZL(h|2w`n%qT71uB33or{rN;=#NRFx3j1_ zqReI?wc#MXUBX!rYAz7Foz%VmmZt`6R))53e6#3YJs08@CKtX#igVQdH7U|J8&MHl z4{Z0Clba~zp8Neb_ezp5& zDmH{FgZ8`{I$33nYrqiZ7 zkVWuS=65;XymW^q0zBlI%9nmUT>Fa6+erO&BJO<|jj+F+CF-we2yK1_W9CpW^UQ~j znevvVkJx8jo#yeWucWTaLRiTRL?2uB`3u@LRh)9VBIW1%`aSkP)hlcl*mGQe$|mJv zYorf8Abh%zjd~62u{MP$ySeoQG23+^1GW1vHh(X(x_5nzh!F_)7>4?%g|Jw@x8s2J z@g|Y#S?|k4e7!vz-o_{MA(2oPq|f#3DC}^zmdtrM@6M zsEdReF-PY!ePyB7*&D&tYVWZ-{yuUlGYz(r{wHhGM^K2UOjfNPJP-|)T^FXweZtbY zVZ&1_R8cQu8c0ZG%CRbDB^|v@Si44xikYY#%xKFeFMJm4N73{u&51cKkrMk`TenJ? zvC>%+wV-5t`>VAnBR9onZEA2`FMO2@+yGA9H8WVL`NWch8(I)O$KTEiSun!9-FPMJ zLXM#f_sW-F!^xGjeFACL$FKeM+lt-)D0WizK^+jOC+vOCfVWy0ei=WrcJzyD1bI9h zWP@Z1Z^1&4o>U3T0E6?>G4!pdrKWUk;-4j z+14`uc<1-q-!SC`muRE&t(=)p+RV=74&L(^qs%VTd|{MC;eSuV(!!Tj(ma6Ek3fWK zC4aHLt9EOK8{(9{=-&l8oN7PRj$G!_t*2;hejtq@+AS7Zw^gJ>k*mCO;e?U6ab+Z$ zIwQ`W{&oq*5hu&p;!Z`gsnIoYyr0^+w9E}3kJZ?sJO1Xw)5)?<_U3-oM&G}%*1Ohr zGV#sGIH877n&0!Eu72rr_#ozBejWX_g}#Ft>ad{xZoZTGa0JWwpCj1lOU)buec?sHKv`61+>e@T^K?NOK$#Ogv(j)@v*0fbp9AdbejOX{6d}e zTm&9xNwjbNYKzn%%WJ&X!TAis0Ll1HztI@q?--hBewI;z{|&rDf^WE}Jb+XLw5}hQ zS2=dXC+G{q2cS*Lg_L{BKh|7<2Y*T8$)?VfBi^;OUN)op-H}=e_(cmM-QyQy=Qr)1 z-<;j4+G3|#zE9{P8u7lsrA5RG68$6Bu^z{+ZRzv0ZQ4-!>h>j>aO+!_gWFc?jYT1e zOiFumS3{3l6!2lW0Ox5 z1@09h*daBHuSPzb&3J;CcL!JMlQQ!Ww^Xnh%J}AsM*MowN+bR z&BWSkCm_h~~@0Bhy$b!hu@~UF2$itXvZR&(^kdGyDhO|JO8+hfvX)LW^PH#ovZc|6V)y7xtO9UI z=szmcc04tq8Z_7`Pl;*=p?h^}jqS+vUA;4HN>(GWIXQ%HFkqhDf(qlmSYxfwAPjYK|+<$)wYaFZuNgpW>SX z%Eu4=KBw1OVbPi7y?bq?A6FG`67=r;^mqfcq{s;W#@JA1%r=!jf0i{^*r`>B-h(Ci za^03fQr|V}ij$M{nRc%I#ix=_Kb2lpBTYLLr)()h$QoQ8(W)_5;pPB_c$%LFTngnY(%DvddQ$lQQWg1+rMe z2%RJIVv}1JIeCE;OH!g>^cM1!X?s5OoI*)$3e_pC!7Qgh^{Q;y zeI~A_i)7d_gnE1m z3u^lW(z-@i6)HigH!HDo-Z-)6ST?;R>?5#vw-t4ZeYH|BaN5%wy(%%;aPzaE*!ODq zxX$jIEU&i!LdL!-8Z}5RAh4{PFDBy1+xahLBTjU8`OVa?(F;tXz@PKsLwsj51Xnyi z3{nOMNy*KxIBm)Hfft>>XU&u~FsY$aOfv&VKv(!!nPaiemUhjnu)q!J2lsC9wDnr703OpD_Ko^qu#=`A&pnU`KB3^>6Fk zl!yG`Mr_dH6%&Z(xY%jSH#7eKRaRDgNKiUL$Q5}n?`I4zQ zs@MmlOv-b@D%2D{gM(SO zpqV5^`z7GeJwaNG4jg5)%YAOnLe8wh#5kXiYByIn|4`TC9@}_o!+Nh<&%TokGN)8` z`h!4F1IX4n|}2)V4p&fnmPs;6Ziq7$Bw-GjT$lv6$Q{BeOvvo7NZq;}Cu$c2so z6Q)Qbu{5|pFsEg_JUBf=_?w;6)0Z9&JB)$LYrTi*9W;-L5+Nq9o@fasyM4I?z!iG5 zv3MHyAdD;aOqG=NJGTI2^{K}){c9t)yDLVWCau*nain)3I0B6o9+!$Tc!VR3WmZ?jDAiFLr^fu=S9@+eV4 z0V^yN&oCx-xBA!a$@udI65JfPz~y5#>Bdi<%lM62JP>QW1vAPWoSHNlG|x`WxB8uQ zz#bbXvIA1}gk6Ri6o5$+nV3_V#8nA1gGX0UU9)uQ#Az#C|D6StnrT?j*E(V>J8B{u zb2OVQbMaMd3c{zbceVcNFl`I4Q;&5ry3QD{d#fu9(+q|<1L6F8b#e0^!8lc%MlT%9tb%wJF zV@)h$4F%&Vlh?~odM-%S-RhXl#yiZ%(BHMuX=VRc^YtoIE4&78LWFp6k7P+tNKubn z*4V4AWp@Ul4{nWvox?BmQ-PlFcD1d;9o>sjL$aet>zCF)zBAL4(1M)8@EO(t@NLeel zYAd&LtIsXw$Xf>8&eL9#D$4Y&g!}{#wq6Bu4&H?s+E!>Y*!L19Pr1n3nSjYtW~iL4 z5S(}GmtI9@!ujK%DtU&Lc<4PFP0}-bceKcQ*@ToZn|D?_)wU3QJbW_H^_^8=4&2Ns z3Cp?si8{F=o9HsnYm$PO;{MYl0*{?PgpM1ggS9AjbGnxIhf;Jf`vA2vSG#88rv$ry z2LunsC@=}Y&y}N>Y!eiELPDQt;r4K*H|Ig4z5e?6dlnh zd;q`qQ`~YeeV_GTpghLUfIm;82(cdp>@h9Q{Y^Ac1T*VexE=FQ{#5 zb&AUag&*ZE>ljGRBtZ7(VyeJPkPQoHkhuB9fBvIEikAGLQBPkQib3f&0e301F=S}_ z%%QEJg?oC<4`q&82Gp|x4R2vUP$r1Pg*mPH<`L4L#8fX0jkM)Ww=@YHk zz^5bDu$&c4#35StG`i8#0d>8fgI@2)BpJtOH1i(!+LrHhQh70lGaaJ$ln;*CTa;>^ z^Smd1uz9Lw^0S}wYHF4?7MRk0_=|1dGd3U&fhc&H{RDX@qTgjBh6%=m9@lIh-NXq5 zDbU$5GK41?QyAYjD~#k_{Y!eR4?+^#*v#>qNyx;asw zU-0(CHP$?F?kAqsH{;~UY?HK~U;|6|JXX(CY^NnncpqKgN#RubD9IicQ~OzJ>q5Qw z?%iQBpUVdZ7V%n}ez&5QnbCnS0fCJdvrNw8dSX@EHodm07};a%`(UlBC$#9vxHpS6 zZHp8oPp_eUk}bCHJbkOd%IaV;z78Ip+8jL;I|)93#Sl#7nAvkUYY8^$uLykW&{BO; z8Iy8NX4k9a3)fLhU>`=5*jmwFup^+jQ-A-KYG+bb?e-NjyYE~Je&p)yUm&X?NtCLJ6IMnjb*{w}F?!8dO z`mCfjs3d>?5QR$5-m*S1Ump`p_xaH*=OBamQ|#nGgjL-E-}vaa1Y@9yqiKt~d+PjS z#ivmd`<^4gX+=9dwMprCn&+CMDqF{2^xeEn4w#ztnDaOrjSQB6ubKNmK{&uBrH1Jt zZE?mv!HA3gE{{msh4P%CTi8Fj7tXFNoBA_@4QPv!C#MwzRk|kJBX{#-28xJ!G#<%- zfIT@pTk9PO-zhZ9$wOweO>FhZ{c+At>TF0o;^F9Sr*Pk;Gh_D*Vf7=`CRjaPI-}4* zrrqya8!`>093>ZrUs>-;ZeHUi4tuJ*!imB8E?*}vZ37C%@&@;esk5~RrP=EiRri{; z#q~x{m1!ND^{17^dRSfOSN}F#7l)nY?cD7wd5k65(R-=1;b^bX(vt7utAa=veh2yX zi@Ufz$UfNMk^7n9JZeJ{$$qyv`y-&!-L3f}06ZcSl$+fka;_)18qKA8 z>xK=N^e+^b84HfR8Kz+@eTuOlU)Z=jD5k?V%4y;B;q(~sDog!-<$B!CX*OpH!@ytB z;ZMubW(pz4k9xqths0&r7hr8I%IB>?@EZez*U-2=gHkl4!3vdQzvFEitX@R zBqMvAM|eY+gQF!A;+(EvO_W?;>!pf zKoIT}l`tQe9ZOWkE_y5qBX}@KIJrF}Jk@P*;;Y|wm2ZCAsN40~>hB8WH6b*I3ZH*W z+#Y79|1XBpElT2Oi>gQj1;TEN@r<{;Yr^Kjn-9})h?_<`!Ds(qFBx=B(n(480C1*` z?Dv5J&W7J!47!m&!4N&VW3aZJJ*XNaNm)@`PRphP<_D$g$Q8?S>A z!A^pP?gNSMe$-Q`7!Cz&&=09f?yN*jbdnZ@l3f@&AW?+H%SXKaHiwd>7v_);OkH~6 z*Xm>fz%xO035D|7#0+v;J8t53`_9ie2K#81@=6v&G(49{M`|gMhc+pUW#u^Wcp}U^ zJS0X<7t=D_t><#~49oeA^(6$IPdoz*K3)tBc4HV@Ho1TaJ*(`rE$}B7(YyVQ@}q;);S>g&q6iU)711xOe`(eAsJ)@hoHY{O;S;o?@ou`GKnsukGOg`?J zY~jV%XBH6^Ln~T4+!`Yq`ruI}=5OYrCezM?$?{50(5)o;B_{p>%9reO0h}P=4?3DH zkDLZrVG>3s9i*sjWN`UN?HxANYk)#9b`P{uv;Ib7t5%QCO*5$8;qs<)?p}>7HK?3g zXESWc^#6G+9`zZYi(S?JZ(Ei`Gfq$fUx8P0azDbAbBjU@IXEKMA{1vykHRQeS$NxF zO$81I?@0S{`^xyr)#uvxrV#=HkAee*MZd3V6(XR<)?oy&jJPl^noOt>3=-A5;`Msv zJ~Co|muP?bqoKg9$aL>-?z&HF8dF}XjDqYpHTA`R35$cLMb#fqNJ)q}NktjZdlP^M zYCh06sB*j*>9B7XDW+rZ5y81@4+>+zPi}7YUPsAuBl%IhC75^mzF9P8z+&^C?4yft zkFXpYUUyTiy(o~1urlh7^xKO@b|PhB4S$G=TYI{i!QuZhgH5u$x@mwRo-0%S*gdJCTb?)S z=YU|a-KF6T8^JWhYC8Rw25c)`)!J=*TR2{C7fOe-;?LWKM2R@OVG&jAXeXD-?3x%5 zQH|wO<&$Top-b*@`i1BH!F!D7V_Xg}rBWmL>k~rj^-M)`aYRHh@hr5y8JeOdBK+Nd z$#VSU9o*?l&dQo8S>?1ne=T#4G3w;jR-5Hjt8sYmbI`w$4 zXXb~cy~8*27;f>+m3JKuK4@v}`pUQY1EItw*8&_hgOq@3_M$U}3;w_0fDmc;rtT+P zB=+BD!+xfP&2H~+Kf}=jaE*l?P5c12`M*6&(sEF-uk~U(^^Xlm9J46sXbSBKt<))- zHYWBvL?)VwYXr5c(}XW1A1I}Ne6njp#SDID;{7NTy;YZG8m#al^!}QT&M2eM)Sbqa z6UV3bk}_!lMSWH>7VzbYYGK=JQG#Zz#5J==aJq{6ZeGfQ5#;uilrall)G!2TIP>SS zUh#4G3d-%y?t26v3vw94}ek{t*I0D?9k5Q*(*c}$`OUv zdY0!Mf^I6G=O?KddVf&*q0XTWG1|FY{+}^)Jd`J+qH^Lux3PgWFkmoL#DR_oZ$zB& zxFR@Q{gF=zyNJJ@y}BR$`kA@eFAMjF2Em~BIwS2KGkK(p$YO^xK2ne9m+gz&l8AQW zXV3^@n}o#$5bW9M!Lw4XIv=w2Xt-!g74nwzYyIPs|6N#n1-p=NNrvTT=exT#pU<1E zUV;IWLpTwVdPy{kO$u*Aw7wO-*Z=a|28qsT?l&~maKGWjuvcXE+q4(MFnr);-isxp zH$Hg?{c8T~;z*Q)=I(FoY!f|YB9qq&SXCC;Af-7^Do3GSU@Rf%mVA7$l2tv1&m+|N ztoL3R4m*L7PvEf-+mRt6Q+UvGOhJd}6ss>8X(g(!vKOAJZuE}^I9T?R^L->@nH3_y z1|26MbNnq~m7lrWcaBVSlNpgBY1D)6x+OiaJ~*zgnxpL%%KU7BM`VBcf;Y^BBzLT& z4jjS2V4~B-y;R!sNBvlI{qklKfFry zx{{>4p$>#dUqV7~ENA9n&^nrmxfmSTqeu{3cs&tr0fLb4ooxS>_v2kqz`!x25RIA* zQWF7BYa%(a%nF@qB6{<_7z@3D+C_Ui$dECozrEQOcl7$%FdoIwJ|FT+gNx$k$W{;P zjyOsob6Nm3qm>C28-urA9KQYF))62Yh9l1Kr{BXP-xU)*9nuhi!|=}8YiXl&^d%XS zQ2@FSAg%bu)ouYQwbJJcU31A36zkz(6lHphKpbCbm~3c=Y+`FMU+{I^x$%mb{A1=@FId4crN<14g+zp#)|oOG13nmB;-Pmf`KR1 zjbpcj&rZ$c@J8XXxnl#J7yli=X6LAhc}$^(udB~TTwXv9gsgre=wiuVB8-a+|#B~dZIXRC63 zl6IDhyVKnnB@^m2TS~3Rhj{8nkSjN>L**Xqyz}VBpV4W={#mSxGQ87fpHYoF>Nzr} z#tL_5#uo%*8%p`T7Eo9~6WUc6Wm2$y3CMP%jyq4u${HEnYntQ7xlb%9oXd9@xtUMW^C|cEC+l|IDsu{%swfu)rV#J9Fe#Ny{8D z^Uymy%Us!TuUK6G@aB#_+i_$6^Gd24)p;F#xo2PTyY zx3Huw7wE2)tpR*(0&97Xu zl9k?V2#$PA8#L`#NVgimXezT_ckg_JJYG@_(PMKK$9juE|=tN_jCxfPmubb9JED=ly!XQdq$ag~gR7WZ$yi4IFfWvc$vr z92p->UsUTAM|Ph263x}COl1>yxolpx5zkHUT;VJJ9dh;p!ouc>W5=?!ww8mXAy51l zK_Xloc<0SbB=w{5eF9YuLi!2p-F~SWt=rE0zKh+^hXAU(0kGCVb$8u3apG9E(bghJ zDap|7<@QjUR_r2CTOwBQhEQXRJ1Xr9f}{=AX6gSPAB0h15PVWnBK*1$|J0Frv+d`% zPMLI~AR>v9uM;+qR;hya{<930fscz+B}Zp8hw|-J3MCDOoFXh#$@h!tsUIB4W$^jM zpDu!^nTmY0I{=;hp!XL}e&YKD$*1FWemnN?(pT&Bk2oc#c2aE3Xwy^S5BQ1=Jrcg4 zaY@6!cVxbKyvJD#Ci;Lg87A!`!(PN$A6`ml5@C5olQD1FbBmEW&KAM^R_^leh6bCu zsl{^T+3eVW)H5!YAdrxS7==!;&Jh&TiPP~c7@Hii)JJ@tdu>s8tp*Zx`Ej#NA${^_ z%`kq@rChj~-Z#V-z3r#ZwDWXuif+av9Y25gpQm-2Tgk^4SOm$^8SaFH5U^ z*Axc+7rDupxznTJ(4(Z|db?4$*1IhrlT0G~%4#x_=O>Ey+Y%N2(An*w^^F2+*-CBy z(t^Q8W&ZOoD_ntiifeO$Z@ftBPT1y9RqY|(GY$BvVCExtnDJM-UWoES%wYWp^NHcm(THMO{SoJIPPG!P}`fNGCt z`585(y(HyA4K#Q!P8yj7ov4VUN)2T2rQw>;F9jf?<*CL6Gfw!}Jh-%n z9-SzcoLV)6e)*b=Fg>n6YOG|8<@)zZ2R%r0VtMDY2{z&RkAo%=?Zg{Sq=OgrH^d5W zh`ZO!2ZKE178lQQc{7Zgk$J zE;Z_Q5~1HlbxO#jCwCsely)h9(Cbex=tU6vX%Z`YK@hw4<(mzYtekd#bon>Vc~2-c z<80HVCBVID;&)nHWG58`F{zic=F?2`Tfk^H@`)5H`;NVi^O-|_ng`zwH-k4B$6D+G z*0*||LCF|amLZXhmy~*Cw+T*?A%qxMEFxo~7;cRnr=hkywjb!mH}z?}cxcc8xp-We z#ZXe!W&ldM2r$M_q(?T2F|N%##*de6lTp5*K>jIDK^bc@X8|>N?c;`NEToeNpDGKL zK1d3$$SXMnbDZ}aG4ksWYW@6{kJQDtS zAj%?v(bYL)6WdgD@{UywZP@Kl(0KwgGMT+->o$jU!TtLSsbUYZ)k=ADs@M|=v zkj>Aq-|&fmuLo`_lc5md)>n>@Qg^i(=7G(A)y0FaJ@~ey$HgzH;E?LkL_|2r;Sn<) z#}n9iG_V?JeQI_1tLQ4Nv~Kw9IP6+JpHH8>C+i%m)xZZk!B~+7z9cd^29}6O((XlT z_tqm4^8&4Lb`t`>!^473lkGiHFkaHh`E!6JsuEYR^BTinTz24esp4vFH<`WDNKBs> z4Bz{rec+bawX^#1uvU^Q)G&I9vMQt`N43sBo6LF|iRG7$;B#NGAknFM| z#9=aFzt6>8Y}cwBe_o;p%ofA}|GtGfeQhh&T_$dpp)7}{X!|tZ=Kk#f|Iy&_SCct@ zL}#?rH%@b=r)DSl^++Q8cXl`RrOFqifJWdhG3bbVK6i{(Bwr{&?mSK@{Kz9BdF~B7T;Y{yz6CN$O%4mvVqwr2j)27gSVzeD1oXyG z)@UDj@lvvK8wlYbvjcGzb4Pb7KE(?z<>i(w1j~_Y5=n_ga0rmfoY-pdXQ%yu#*>&f z$mFF_8~m&{v<-88nr|iJSD%TlGoDAcLRS2VD&swk`VER$fL<~LRV9wT$A;6U*8GIz zpaG~64qL&3H*)fQxBC|3?U?v~mbzpO_Og$?h$+Oa9~(`Gfg_c_)Q^D?G54Za{O zevH=x%*xSqusA^mi1%3ao`zC|7Vofui0Tk)_E&E{Zv-#3{uzL$fLkeLr?5w0&0)GP z*fFo3@4A@p^5qjv>Fy_A?e+m16FY$NwoO?Nu#vspuATRuRM;ip3CDZ4yF)WIo;mtd zv$(MHRQU5G0l(eaDkbNUM03=airstLbf`u%!q9Rf0GuXDDjNZ^43Wv&gi^;wfW1V4 zYpb<2UT83Frq(r(Ku}U6KUj2?vjh7SNZezy7ytHel~f> z!Wn~mF8zJNpPZD%R|gGpc94TAbp@)h^jcjJUW#`nO=}Ft+_mzV3 zYGclS1Y+hnV;V$Q1r*`+^fFv3BDoiH*;QuBqsbWq<9X?oQy@IO3~B2ZhU4xPE0`&w~=YIB(g&=ogtfXE16Ptb}s+ZC{EbN`=-kw-G4!lu#bZL(m;gaeV7=& z@oUHaL0*RT-z19?I`X2=>mg`aQ`{au|JULSW+f030f~CQ1QIeMF;S7B;qv}~onfz4 zm}n3sqpMm2-I9qrh1uP-6#Q%`@i|uw>q$$90peWV5a^QcZk~RvxvPfU$vqYL?l}tn z@1x0bc7T5<4}MAjj<|5Ooan}s8AfH4E^=&TuY!)KhfO?P<%yXqnH@8r-4@mgTtoLB z^$af>gr@`;%otu`j?AVe@EOA0Zws=9k0dRXWwHEAdua5(ngh5mw0E#-EXZpz{y%LA zNKnN;S<1*D4@^)M67anl$snY`SD0zFi=gX_aObB>ZSGcA<2Rh;CU6G^3kCOZ=3taK zftpxw$GHSm?WL$cFcsZlBL>P5QJ_OU>P)RSjFI`dD8J6& zt<58*_qZtPZ>5l}Xjy~gTYjP+wyjo}8GBMzikz1!?p1SBPY3=;9EEm3d;vX<3{-W| z_`j^FzyAE^i{fa3>Yq&!ma>^R{)e%8YTsJ6gRASanIUkS39E(;0w8F{_8e%cLa<4I ztqe^fg4ARG?AvovxoD&{Cwg2VugFI7wWmCBKNv;8hX36gBI4zW( z9O6_}_0TP)=rZRIZ`0i)g|^yy$$WQk?W>1uNKy${Z=z#Pb4VV&j@152x@av#zicDB zru@0)j#kvHXi#X+;o{)^l8Y^s{`{N-t%eE@^haCCcz-d7D4$WJBL3Sp+4WMSEN&9( z7b*C55&NPiqoSn_0ladDP`3FF3iQOM4KTGV;fI~~NivhIl6?Q#Ib!?(RI6{oG+#Ct z`&ZGh#177s#7EYSC0OE^qP$5S>_`+PP4X-fXC&d}Y`1pX_l2w=r(=B;17T(eqQa$O7QePo0>k#&Sz_aDTHVShR7dhmsr%?O${D-G*C&qc<&T08q zT}Gy4w9a>PSQ@wO)}5i%2jgkW-eV@+ z7(}zRA(WHlh*0BZ2>T?bTd_)yHT^)f3D?XA!9$uSP26Q5jg4|K5&z3l;(x8AJ3}9j zcAW1mV!?Zyz#f(|+VnRsn=H~^&`^Valx3YJIha2bW zmOShK;-poJ?Y^r%UQ|B@6y;6qu3YDq*yxIWg}9Qc02EJua&MstM$OYqOR8|F24ki^ zhT?o4ZMjE&%7p4gegWS!q`HGevmf;-uS@0XFB+`pbmUwi^G{dr2jA4CN15XN6vm5j zA|=psrgOPdRA78f0p!zYdqt$1S5d$)yDPfNn_r^j__HiUYPC=^i4VafK` zswj3@SVBke6Dk2jXBSkIhb<9J^fe^iN?`Z?PLK4-L1(;iwzgt=NsG{LQQL>pcrn7# za+h)Ic3rB@Bu)J!O~3 z6#?0YRSAPBNp(zRU;!FWQf->xf7vpD4f=IxoUaLYPcpxR(ox%q;v3^nnfA&z?Rt#E zf2fm*1al9f8Yo!$0htz=4k3P5=By8-Mo}jo6Edz*1?xu_p$l|T;2MekJ-oTHn-Sr# z$&D)YXqzjzOiBwUaUBys2UB5#o5Hn$ft|Z2ytxyTU}6_Nwy<9oxZ{La zLE_d>@v|WQ0$Csc*E0OSWD5q0jbp<8wM@lAt=a}6sP1vX)BRD&fH~J?dXPkavEge^ zl^MjapS#)}3)s9jgboJj1YZ0^q!bz4+wp*Vogh% z>@&qQc0x6_)|@A^Q-Gk2q$7*R3H5)7*t<;+u)Q%dI<_WOyFWE`>|xpnDLlGMY?&>X z;OF}PAhBAn3vf_ts0(@0bsu9ztc423WRfF();zj9j#6p3)HUN!QvUgZ%!koJlpa#* z{#e{H!_b;~&Gi!dG%Pg|N0|7le3iQ5C3@iwerf!TJIeWKXCdA@S$I+V*U!ay&v97N z$k_=R8|*X2-pCn2K41rO4lR3P({4_*_D}i`pZx3TYKf0?N1<`-Awj%(F&}@V70~c2 z&BjFnc&BN{kAM%Ulu_9CkhFYYF~)Rc%XqEId6;E3q@AlixN^n?pQ`CoP(`yL((d(fjKuT=%QEm;vDIxch#})wkER%W@l{-0_B`=Ytk6% z$1)eZ@1O*-XX8QOMtsmq7+I9bZVeQ>?JBt^W)2PDiAe9q_zxfzX3;j7$ z2`I?=iIQb5{r?gMwiiT4Z{euz!r+$9kG!&_a;SuH+qm;ACrju? z9qH({zSi(eX}PGD9%N~H^ZE%YQ6L_N7M1FJD!$a1a!_XDE4(&yj&!0h);y0JbNj!3 z?)P@SJ;#erNI(Q}O-=9*i|KE4<|u0u4t_@Uy)2H}L{B*zM1y4w&3*cZqk5j7U4;$T z$9&=D+bbZ*NHJo8h2UvQ>`Z@~sN^p*5Dv(*Lj}QCX(h}mh4eEQv1uBu_ikgCpp&yp ziHdnX9`_UU7j2_*rwawGLc?kD+cRrqVdl$k$=-GdbZ+^kT&AZZ-}Oh*bA3y1$H0U0 z%?)tTe|RG$pFTJk{+a&A7d?GQ$4<-Q{SW>3KG$<=QwBv-`7zI2Qx3X z?wM9m1G0G-Mnl=G|FBtFz^Z1HI1>gM>~;#bvx}BILW1Fx(aWQ!R6-;3?WzLHgl_Qq#j|l+i131 z{LqK*tRj7!W0iK|;Z;WX&dgR&M{jU4eiJXUf}x_<*T;>h$~HbB$D&EVaQr38gkB>1 z@Jdh<*Sud^@`MeI^QVTD!%h@S-WuZEj770$5e8_hf)XZWYq%{7WDL3z>hDa{M!9Flb&tQ?|O(-bJ zMNFf}ih%qEi|Fp&elhfe8d0#SEX4Sx-?h7`n)y$117_*Dof#x^AO7j&E7u;y)umS-JN@y*Gku&&7V}(XpG*{NnBl(&DdG z<4X|v?(88Hj2G}pkc^8BjrRQR#qPDirLSM~+c5Yihyst^2I zQtK-IobxWvbFa4b4=hBVkAYd`GjpXf06} ziUGj;gA-d@U4%Rt-v0$MB65IWrlOy56QZxz1MgSoZuw${H4~!6jwLIyVq$`Pi=0PV zXx112NY1=qv=NM04^uYMf8F<~Ktz8HnL$G2tzAsIdM54Ve_& zCb;yAG*QhP&X#^8u#xr$N!ygWr!)$*1AlHej}Chk;&WH2K!EVwYR5ecydvtzN4qJZ zn+B<>LGcbgSQ}nqybB)iUP7K`<+sNF40qH(1}iV?@e(Xv(%rv6<`H&vVGxrEQI?;P zpTE6t5E=?(IqK=~(zNsrnxq5nd5Cas0Cy?_UG8Xy^Uf!%)iZD@T z+HT#D;_W;%h2||}7d$phc~U^rI{XWet2h8v=bL?4tit~ytP0E7Ig#3ZK$^M-dSwHt zuHH5>{gIR+rmDbUGBVfKQHZwAA%lVC3w3knDRCHoYoiK4&tLD)v+AbT?7UYnWQx&c zVtcr`w`8;9^tVqaYl|;Cvja`AaReJk$rHqU{evI;GyGy?v&k~r;$r4d?*Yj7_&<F}h6VRPk9WIrEq3rVlFookG&$8>R*h}fy?JuEGogEqq|EBii#W8U zmgrj25{66%iuSgE%L_>!O4M{hO#pjzNCp$26Km4jYp+~kT$Sij!wo;O+r+Q9uyXf! zZVdWH!z=!7voXd1gWdV`;%PrNW?7u$Uoq;I(p$QfF19kv#8LG2T&rhjmQ?)~hyn)d zV}oKEe2eR&DHh}h!mE#}X#nA0g9lQI zdZJgi`gPwG`Qi+ zf)m@)=9Y8UP?p(_!4kn267?$k*~E3_WS2Xu11*F#r3*QEZ_L(jF|HaE*UasEq!w(S z9AhV)s#x8JSls(Q;oEh=Yv00dwUKj-Ju#V|N#StitgaSUeFgprRq_?=pY(Wj=9M!m z3pPGXnd%bfS?(}wrGKU&!j%*88sATf95(2yw;?11Qzfterb?alwZTX@Ay<-Ycz<|^ zOWCP4kLkXOb&PTOebSEQ+1H-2M^`0QnzA{)Uc%V7`88Nl5JCbYpa5GueEIiQSq?w9 zk|`8f>9zaWWx_kDEqYKWmIx1hjBN?y>@`3L1x{mRb zi7+X%I53~BQKh)nrIo_5)1;-0e*V<|a9Fp~wqa&WAFruF54=|JG&G75RzBl~aDJih zMi65+4?A0Q-gm00ZaI@vF-WNHaa#JJ)TyK6`u`C1m0?kJZQHbn#L(T1w19wgcXzjh zq;z+;G)gxJ(hU;Qh_uojA`Q~;E%1Kc?>PK9FgUaK+ShevWrl3B7te$Tr(`3;WhgbV z3W`n3o9cD9JT7_6Hq6w;Z=!B%YZq$qb)&70=Od$Uj65VwE;DiDl$X8;1n}P8F$OVE zBbN~g2DKR?LSu@#cW4PGrZa2FH`?*O>TF!ZFS2FuGc38fJeRvLWdE^x&n0gDV;f~J zZ>u;5c|Lx)!^@HW?o;!2EBC#xAhY`3rVmV=VdG9f_u!XNTz*h`;%2T^6s(-So?2DK z5(X=m;x8p;tb%R1RC(IEvESezyi{hXw1fh_d}6fG1@O?xh%r%~n|SsFJTWFFq+m$s z#2Sh?UlIn8U9*1c;Ih*dYYbOqbaHBbFdL=^j3ueT*gv)fkOepttcH)S!nkOwB-SEF zZ@!#cLB#G_Nt&9spObDoGx-hXxDqt@3c6E%)zx-D}|&s~1EJohDOtnA)CI+PzY&#Z^Y zbh=)g4?CTrv*{tc&8}&g|8e?4ys34gINCLdbc}xr4l8ivH-P;9jmGZSfxx{Mu-<7{8OK76Av1IkZ)aiBdWi@Ocv_HHB=roM<+Z~=OML^DwXTI9dppw-UxDBhWgrWy9WDX zPKPV3%6V8#;R6t&AGz1XJdB9c?&^WHfgg8m=wH|WPC!BuW56pL=g$H!cF-0 zY1!^Gy)ch1)=~84!H0*}H%s(*Q)I^EDrO*#JwZ7FD#2A>5aWv83}M3^d8g8>xT-lw zOXf{jxJpZgsP5PXyZxW{g||@s6)5E56<2>%R$yUZJW3Q?Ne*N77Px|hDoZ1E>wZaW z0Rf=aqrSR_GLQvXA&>=Z?zC^3a}=32j|hfWtBkDS$&I)Jw-xbym}^n+cw|R()&0!)Da?kn^!=>XwyzIy(Kg!lBz+z6-(^Is@oTlck_#ClIP(#ryiS87TI3q(8Ox@m}oB-=E_x z1YOy~g>j2h%?>ZAdMtTbwQV-N?%}@JapLB%ttJ2RKN<+Rbi(Y>b)lYAp)af5+E?>e z(4Z4Wq|5uL@yD0HFNLF7LWj708kyS7hJg*HpK}IiNsq+f78ZRTjZkU7Ko0w_8;|62~l>h<;0cm-4A|gX?$1%k| zInGI8xAiex`sG?RtH6Y9`?<3eo0QF!S7>1~qmFO5Y@aEpZl^};D;|D~L-Xt6e=Yq? ztwJ>g)x_6td(>r2-cb;Wf3|cV;9!Y*w!kg9C0*YhYJEfMbtzs_aRfW&hMC}@K4mhT zR*~tZ0NMA~nn&DasB&E>pV_G2xl7jiobKA<)(>4hGyNA74Igx|OQJn^L!AV#AvE>B zPFuS$l2)VdnNBWxF zmOCLnIUe&GFmUl43?=6~l^{&bOH2anw8ZU6Gj36ok}~-H@mdZPj!8Noq+5J&M6P{C z0p+!Fb%} zYC8|y-Np!k5an=(Kj<)gN49kr{`iLhRZk)LA_Z1^Pd>}%WKNiDp5 zehv*8FEG<81~!X-c(>8j9=eKjo|qBp>u-)82rOyYafJedF@P3m5d6Cs{t>d)15YA|4dEgmD2SRNe!TEXR%w}xKmO;~Qd<%#y*)-$0m>(uXQI7c z`d8g*2g^hIdv4Ou%w-D^L#JHCskTv-=UZW<7dI3N%D6*K>8DLdy;Z7$QOBpX4|c>0 zjB~Z(xxK{GQAyiXwU0$z;$JzwJw?^X!pMAU3y8d0-&Iu8fDY__5#dW6PLF9-xi;Ah zuN)G<2@Cqh)5Isr+~%EUR9-2weB;>Hy?S>&eZc&S+WY`vXkq!ULrW~HyEi3;%dGsB zR1w?39bgi&G?mv!xdx~w`1Rs_R;_hdbN>9@bNxf$&z?#m@_GN;y-y+3y9U>xMo*N4ab zl&T#Q>1r_8DZkWq;(Kua;33H5_HxTDEv1>%-$SsaWaLgl0*U|+`qI^(vX$M9G)s_o zUcH7a#VRJ#ek=V!iunfP^|`rVMq8$6;}ZGTds|oNud!(S!Y!kQdu{FGL5O8VAq0T# zFH_D9)d(ff!Lz<}6?@4_j^LdS4ol@+XBUSP2D$h+tjbmVgY&v}%)Ggb@4BdQY1{1F z={iDq*Yf8`lEus6H)D=V%D#;@U5WPWmgC(y@T-~Z7SLmH8}nS$P7YN(%NhWfcSl~H zXy6ZJ?Q7JMoc8{}mVnbI*750H$XgWehyn1jwbeL9Xy|E?Z->$(0f`qT-gX2ctB=5+ zC#uXAqtVBqgEx8U%A5NQ1_IaVPPW!lpL4;T7N|loWE9^ZmYW zv|oxLO{k02HwW~l327NdAu4Kk z9`ZO_KXQ9OOqyM%g!oUBGN2^&LX=$5>yki~nb3bb4m|?tz*yc0FsvW$R6T9z8LfSj z8ak_nnhk*KgoizJyc@3%b8Z$x1mYMj(IG|gKI*5(cL-ZC1y-EtyI)qaqvFR5Oj!Zh zSl>50cP}}XEd*G0X@Urtkgbhc=o|M#wrMA9GZ7`gWz`6dn$l*vmO^nxvgq;sly&Qt z!6We(J-D!o?y-WwdCCV3+&KF%tfhdI`$m$1;R^l%h2<6&vjKY){GV*BY4i0ng0G#U1EEBh26E(xO( zjX#4vI)WuX%+c#R7$?AelC_Zg zI4rCxX8as^8Wsdq-W}xpjJ^zla_1)R-XXYtm(K}!+q33>YP@WY&*}gDy)z5KpRelB zY%h;q!$2=j9Nn^&H?+Q+HC9S+h0z=jrfq%#_tWgnk!YP)q>pkuq@U4~xhV+=`0ySG za}mOI`O}LtN{XMCCU5K!VU{WPhxDRRgjkH$&GaVe zQ`#i!-7`m9S@&kzIxhfZh~^(M)UAlD(5(otuJ_v!9|V@?<~yiR z8I@(^J*!6{fCs3EPRN_Dh_C2TIXkRE%O10&q(TpN*F*IB89okjWgfzGp5{~H zE_EWu+utCsD>aFZn)=I@H?oZwUf_-p+{EgYd^4l?t9`0F=6QqIo|@+Xw1;H|g3RYn za198s>HjalCXwUo-0}K0<gW)B$i0tu3T{oat$)KP?!5*&c6I# z9D}sqlfZmu%vM8I#`x~)_;5!)|D|s1SoUve=Ty%EqX@X5@^H~tDOQjD?Vd~0LoAO1 z@zk-_gfYUGoy(}jv}e8OzpscERCY9B(k<>|UUIem{8P`x9Q&I1nb}XOY;KUy(F2~Y zKr4qqE!{u$RKGYSgJHaTIltOCx&6g8+BjIe!tNXi$2O4!#PU?{{F9qSB~F?DwgKt})Elh}Zk zUTj+{JhV!x5D{gJl+vrP98;qQX%o4Uz@rJVy$Eaprk5Yoa`i5#t{+o>6Utm-)or-R ztlk&0t+l&bC7AbR#wVF?a^aUKML1b&^e|THJ_5xVF$2k44kse(p06zpFr z>;hJRtI$VVvwd)ba_h~|dc`%aNs1s_AfOwSo6Ol7d20?4 zQ_C$j>!XxaK@=yLmdxr=XH(ES>^03gWP8-!oct1|Xv#3ZEIz^S0D%6xqnoc9~Oa zEqxm)+37aldooYsc~T|U32DollR!VkX)-i87Uj6LKNDz zHG5}?K%=CokM+y3e+D8XD8m^UFG zvLU!Xg-=gtso?*@y!dlT8ypqkUxgfg*?5U=`+=>p&89WH^{@Q{rB3RS!s>=(@8mpq zwIo$O5_~Mf3MqPJP7IAG-|3Cvtz@0NR?q_H8D)#h?ESu<*d7j?689DQF+6mR#}#E_ zZZb@$M%IPVsb;kB2c8dOP{XO#dt4&H5LUd@%`nEFpakCD=%pBB5!gdR>yBF(nNs6Azi zfO?q%8KAu~{g><=ooGx1+rv$nzcPo72%C?}Czz-<->U*pf7H*9cWbzCX!kK$&yx)m zgPqaXNNerNKX4clgn+M-|E(#f44z*Gdqt~q{-2H*FR|z`>KUxvHk9=?LG?CiGbn7~WO9{ELxh`@_*^?H-*)7FdRh z_mVSMbH&|=yAA5LQZ4n&QG;YbDZTKenn_TOo32Z{zgFs{a%Z8y5<#2%E-3lWsd1cz z#?Wu>quc7vo*Sdze&e1d`K2+L#;fAZy%oQSi;thwp|1&FB^A>D0ybRqeHOd-%r$<}MAev{RWe>@n}DeTPzeIRtJB0(gB=jguZC(se{ z+O><0b*1MN_QT;|z{B6=r6~T4KCD!JbUi1z{gf8X!eNq^F|CC9uV>f)=ppqMF3N9{ z8v0#rH}>3HrMOF<6BhUF z&O^`f)WQ4i5Y3(?Yz(b4`#aiL+|2_~1>c{rP{E6;>^=-7w1ai0n)JAa$hlR+DWr~esF%3*~PMe(rhZ)8Tyrz z(T!lz1Nb+a)3#|AeMwT}aLYg9OAZ17J3gCn)CP}_%-$V#2Dv4(Cp{m_{^)|%b{18U zmdErq1a7}*aHLFvm;_`UZttViqTfot@L_)hy*J{JeNtG@u38>oEUq9ympvlcwFSwk zzSC_CZpp{MH6b_;#|w6Z`^OytB=;%m)Fu9d9n9)#g2#tu?~ZR_5DTI;x=;Jvgt!EE zY1*K!C_~D_yQ4mSeyS=wo*zf)`1fru@umm?hzLsN_3Lc@leDK0bQlF| zgh0kt9wBIAFM!;$$C9g0?sjoJ`1r(E(ZON|$0#m#2%|YxO|Y`mcgFKTf^el* z`YgB`4^}>GT9`H^H(1gD)EK+ovMA}e52KIJ@WN=9G&l!6N}@5+qutzUYoFtkUitUQ zp_i+*e*NmJx1S6`Q9&7{2E7v6uF=|l=_H*GjlJP)WXqLwWk?wGSo#QpTHXV?(Zea+0}&2Jy;WUlR6>KBlQ^{42Y z5~J-l&h+T+)#&lZZP?GqHfmHA&}F%zh#B}0dj4{Pi&#CZgR<@9*T0(VImmXnx==0q zeCF~!{QHVu@Xt3qCnD|3L9j*aVa604t_#rvhiP|7h+Zx!b(?LU_PpC%=Nr@6KA|4lWLif3pA_bp zh3Ou{-{UqavQv%yUS;)i_!!gEkph`uz(MHi#^;wzuSa`&^@>I#hu-*J9lWZ~%pgp~ zNq4Cq)?v|~d%Ku1ksN9pWp{hv|lBGUTbcgZlV}I6hJ&@ z$^p4D2%!u_c)WQkQV`fZ0a4KZ^v5iw!RE!)B|9isW$jR{t)yC{=>QGBjwk;XpP-4d z&uovUh*^B}gc`TZ`|Act_$xA`_GanLn!MAuzCCU{pSkbAfW;<>Zx(T4LNc?}slE8l zgqdcbdqqxK8A02QR~|b_2SL-CNH4wVFY7I-QUy5{1T~9=WV9_i=aPVN$tKM^?SdK^ zGd^t=!U~9keSrE~3xxV1D_j7jy5cO`Y=J zPV3#3ID(GFrKl!qO}V|uV@kM>`XhbuB_unm{ks*-;W z{;Cd(V~AJ%wA_H|aUFkFNKcG|)2%>fbw^W5ZU{jb4w+w4F1))hm0!bia)5l@{tE-T zmDXj+1!!*42e#V;;UI!%DByK$u&<8Xj{y{w}5xzXd-gkhVHXfOE%-l& z`ITm-xRP0$$zt9nd+%JuoY*05I#CurAjm#M4?_@4lOf0XO>(?BtDy8{6qOhL{eJIFcI zjRi8giYT4f9|Hp-L6k4HG3SP%16lXNCG<1;ruA*DTj&oZttB{J*2aUMmQh6Fkgi|R z`WOG9_v?r#v6O8-619|@Gp~Smj=tPx5v`SZv(-)@%S|6wZ~0Les~mIq$v5sX)+f}{ z${1n#ar}JWJ;*8w+k>cw%4SL?CixDHMWLMw!{)&hgbg13e{lKtlvGxZU9X z166YBZhimrn+OLZAfPY(=*xu!cKi)z)~{3btSQw?xVWH=Zw;}UbQH?A4ScLc^!X>L z8tI?>tMjC(63*86{g-KK|Jk+oTqjgDW;YaAwMdsPm`Y?DS%eLG%sf;j?jP3KG?np!a)O`k;Ef@ zgod38pwy5`q)~YFn8`{NfmN(ar_jmIAHc#A9*}(wVcX1Unlq{2-Dsen754GP6Q5Dg zIl4T=(k{{8N2Gy`A1=fD_F?Yfaw#O&Zo)Oj9Gvz!%hi zw+Emx{t~S3fWqD`UW}5{R2-Z6yqo%>NVhRt!Aei9mi@zI5lKCU(1LBvH5l#I?uCjO zJM~85(`mledi?;#sJ#NHWfAE6eUBVsvXAVa0WWfAUBe?;EuQTTS4ja;TsEA1%smU1 zn(TW5qcKFR*O{jJo{4;1QPWFzM;jwGbu640`uy&F)rkCbQZ28>*IWz2Qb1ps4*dhz z5DKSvo>*UCM)hk{dhivsI)en#8W;G=bG@~BYrbpC#s9#+(2KBHhEdA^;|P8G4_~2T zkcZL~XchSGqpH9eZbGB1f@EKfh1y)aLSRwy58iNn>E9b3 z6z)${db{$sDftW^vEH=>+{k#xoJ5FKKP2^vqInnZdR_=%gth28nk2ks96@tmjems?76GnDo_sgY8;ZuJwUC+>BqpwQ>3 zK&~J<>B}2N<2OV8`@3YQ3PI#+J$26{_72jdmOt<;-@}@);R4rqW|Q+B<;QApqA<$7 z)XVp7@af*qncPq)TO?L%ec=0Jn6QANY$-*lW2d^U>QM5>DB&5%evBPneBw9Pyt2FS z(>b2f@jzcqoSPEq!zo10=Z3J042F%~ZN{Xf`v>RSM z1o;!2kiKS#-V+zS4=oq35Z?2eusyFnz?c+ zsoy+68)4a`x@6}SwVoPxAArV;Qp&j+g9*-XdP{6}O3QQ6Pc^qrjgkT&3Xs%eq9+IY zekHn-&2Hfowc4?2*hyNKZpL)(cao>~{U^)Th#HVhF#h-7$Z9FO65W8@nmTwmowqMO;xfYv zMht{ERdwkL(ZiWHn5|DwX-`T{z|W+qDuUM%H*k%Y%EXEu|F?^HHq#-{6!w8o8(347 z_120+WU(6H^b|DcAQ>}egUyG)ud4U88osV?yV3qI+W9aS^KA6YIka;;H2-Hu;(HDT zp-k|EoSLGO-k;@<6gW^0wmVN0tEWPrcyD;o$xlLJfTpO}|HUaFH(Xk*`1=;WL6~20 zwu`1)j@YwT`JVH;k>Bkn9z$YTnWXn-dFHEJU8S2OFi;2Es%`{-)X6lOG6^i7dlIB0 z1x5a1Z;CWh`(-%&cFgkTs54`Lrh(zl*guIPvT-7t2* zj%(8TcZz_{Y2QanA`500VX57=lqz-G_&cQQmpp#g^sU6pC*DhOxt5E+i!7K~W}HX8 ziF|g@PZ;YKwv5aT zE&sVwNo;gv3oqM=Z;>AXZ`*PajP@TwMuMZ)4q&Mf^M8mY|{O4y`LjYjUqErarHplLT6=YZHq^8 zfyVybL-MEGpUnsc9zeSipEO16^f>tWGs@nLU*NM9UkRvsR7aiU4J>HbX$H#o_rRHK z+2ID~Ih;TjKLuU*HejpNGUr(M{0s_qK!m0w=JRVy73Vn&vobrVyCH4jEL>;;T>6eJn`@6`H!~7Ch_H3$&ekxNdDHiunraB1wAd78~U0ZP$ z^UP9@e4}xg7M=Z<7tv#?l~}|Ba9-Iwj%^X^@9?xBl`8fmx(;RERa%yp$_3?9i2IX2o(Ry)rYFe408>) zC1153{*sRx26=(cdqLw67)oL~&@8<;G&t1IxjoUpQ z50S2sU!{(=0=NC}aO2+E(H{y$8~S>riPg(iN9CIHCbnWTiqD(hPx=VPPDl+Fs!yrO zw2qU&DpY=O#{cN3vTm0BXCv{03M`ivY@e($IpR3_aK`K%?f`}w% z$)&|95ad7|Oy&!jo=iKaQGQ9}&@iZ~aqd~XQ}0fxs2pn5Vz6<4JZGz}tijH-jLhQv z#Rb0I8@Y2LX$v?&HIpXZ6->PQGT|*i>gOf)o)Ip{_<4BR(94-hA(`zN7?zh8hQF~> z)i0J%e>TP7d_Dt22GKz$BQoX*>5<(h@6nY%;-#&`KHckERdS`?gcaVMIhsW(XW$|U z5}S4IbbnE?MTFRRR95ox;nF*6w~SzF$~;xI-NabpD(tRt+wh0bHLOqltrHuZ!sHx? zKK!h#)0&{u+NE7p;t`5S56AnBYHZg5O}83u$8i?k0N z61V@E=ycnvXNKXfhu!+DdWQcI|po@|8=R-*}|53Hkbh()*57*djo5G8+bzuR|)Db0Z(&>@UH zIEIu1n7 zfWVtC8!eZ*7{m*3PglLFqUyT6XmZACSBv1m4vJ4#ET%oG_L)Tgii6YCL@bx@(2bK7 z1&SNrB{+s-^pUgbLf{rQ44+daFwG~)jq}z-Ilz4h(J*WtO{qIO1G;WmHBV1^QDkal zHsp80hYZ2cm>^A!o6^$eHEJUYh7h9OHxz?~r}4f2h@7e5U+^j#dx27SeD^H>#aspZuh4&2u{s*WpR`rcu>AOd^%`~T60zv&@=ua0=VL;156 z$!?`9-)6isc+YY0AmB4{6}BU(M^A}C9W7<#Nr8B@sR{EdJZnCf9DK%}OXJUnNBe)g zVw!<6e!VL#g1WaupN~czE%5kKe12(>n}y@Ow-}BaGX1tSN8qI8wfp%vDQpC@a_5r< zE*31?9%Am&_MlQDzcIQdN5m(NfchlTX}g99j>bC>Nd>6Uom3oV|1X(mt@}O{cV-ni z!PS9PVRtWw27>9t1Y3OGZkOF95zAasJ76zf5(IKS#f=TA&&@$UopsUi8D7shFRH@U z@i)XoAoz(|qlaxS?>}{yLWXY>@`f2^?1rxT$>yOO8_+lEUmK-5z(O6SMUt?U%3`j9 z3*Jqc!kb$B5-IY?5N+82HO@~E>Oh!mizFD%uAP2CquN}<^?e`r8_~88TkA#djCpJ( z&{1yc8jWyWUi2YaQ2W}=cBTrl93lj34>9Ai@v3lJSV7TfBW0vACb#&8xZJ@iS(BSR z;D_5oR@=96MNL+_UF0JM8)Di(VgUNy(?U4H+P`A3*lx;lAW_))3qunX#}nwwT1=>m6t?E@tAy6|bpNe=+oS`hDZ}^3Nv2 zA(cymL^%X(1|l^)slPYRF;G@n$F=xfcpw8CaGF?t?yp>=aw#o1c~Zewu z!wjymf1`<+RBktUNY4usn1ozt%i6AZ7q_ zr>K$+B6N4(^9>OE(;fFka{<0s#XanDg-R3=8Ql8Qm*=jhY$U?1j7w4`(JkB__PV!+yz)SpOtqr5ptPhq~5Wp$^Cj zh{c{x{B9lATS;XVS~K$o7z%v|)8*xz> zE86@AbXS9R1jv%Be%v-fB&#F7;%7RK<&i!2uUo5gd};rg0A@w9498ujaWr`(yt7{-0?L z+yVS=zW0G^&>|n%c#0}G;Ae^9M=0`_yG`=%D1rTM9UwfVzvy_2zVVU$p&>Rs49tjS zCs6rdiI_(jxYCtCceE0KW3C}@C9A$Uk#sU~=acZ3wi)+}bLNgTn6@TJcajQIqofIp z9Qq7SDtNq14`Vah*-=$La3h;k`D()lFGO_A_v(ZD;`$LOYuCf_nG~UcxPIuUc9WD{ zmIzfPAX4DTC1MN@$Y&87_~Ur{oz_AA`wNcRY$W@(hW51^9wK0v^6RVe8&muo^dvR zjIe*waT)R0&a*ZCOU6*sGPC8Z8X44vo6(qC89Wu>ov( z6gqTh+AIkg>z79jJtxTAlQeny-$1MM*nbHf!^>IFz|YDa@JEah2!+q;R3tXkgbNG>g{>QDo+tgBcH4W!U z5NAcs`5VW23N(JeagKDNLnz>6aouz+Bjd&iVxEDZEk31l-$wbzio;ig#t!U+$~^Ou z+_GrvR|idpTYB9B-~WYq!*eLhDIF z;DqxD(5*Q~=4iSeV+>~yo=oz!6ByUz$ggZZwaQvZYqy2eT%uEz3Bg?>kexWD%EMDc zIyKFQE6wjL{XkZtS-leUX~N-W757lyWcEYLj>|^`#Kn2k6hq80#Cu%jdJOc_yRfkJyh+(NISFheFhy(Tj-yJ$#8yL`R%bnEZx z?U#<*1Ott4(pe=Bn%r-9&GQilR)YOE49>thC{*gxsB|MBAOHh~so1~51Ke1t?T6AOb^9o$aQjH`{}T-fR#CLv?hWe#46V{e=@ zy+>@*X&T@&YyjKA?r7x~^(Za2R+1Se{FhaLUfS=b73T*tgdHrTjzv*~8!}wWkv#mS z^`OmJx`Mg&q}5d@$9Cdd^8c9+-djbi0s5@DMC@3B;h0!$P4Na7@+%aNg9g32aleK> zv(}cOKO#@W!wqzA$gPRog6<6vq98co)SYe*G%+WlWxK>`lZrbrg>r}>!Rq-JyY#Bk zD4fr-#O=9 zu|ZMjV~J2n|ED6^CxGCpsgQY5SpWKLlhuwGj)aG~5*5Z8a@+x$`#d%cK9bqUYMM6> zt^S1M^7qFJZ~xB)scGf({xNz;#_phCVL`b0%Gq1&${7-jfKk?~@d1YYqnU_|zFo`3 zr&6fK2IYJ(s#7eEgI={;+vbF>U)xPv(tjK6V4R%>h3M_wl$KDLzdjHOlU?VY_G1gh zq+>N5FJCFAd%SLCeAwK6cHtFV)nv=wp^mzLuoYj3Dvn}f^=lnG5?aFl98(N0asJsw zlPaUsx{y~AHc2=Y9MR>E5$u53KvZ(SZ4w{(BdA!&7)Yh!yflx{Ma(kC#~15Z`x@UF zHWm*nxcwC(7YlxpEP`-yI=fW!GbUj%C(9S5>3=hw=o(ICP}!__14WS)xWzX9f~Ai~ zO$t@G@X8tHR@shL7BYF;FuM5pZ=S;N`o2)~gZI# zkJM|Pi(3(GjY*R?J8YceB zuODGerOI7rK=mu=8_An1cK^Z_nRN<8UjWg6Ezf~_W_T2drU6a%?B zgIR#=z7~Y#`G_J3imHHOluDUeI(T|NK&xGIWFhOf1zhYs zfB1j+E?U}wbYU&6hRlhnTAD16{X?BAj`KnbV{f|L%pctIAH;1gM(29V#QH+Elm#dx z{kY3NB=rkNH!51Lm6d6TekVOlaJ=ePS9OoeE32_0ADu#_YY|5d@(_jZeRF9BMlYSh zV75TkI1OdvXuVK2C!#+8xkmJw|@-d)BWwQn^C1ck~?YF~N?EA-r@PmbVxhP^YhiuvTt6zMv&iwM| z26_y@2JXwqq$$sXNAE&G{CF6VB0-XViKh+h=RP#YL0uCrw=$giNj~}DXDZql3{^I zt!d2b62D4jigr8h)%pVVZRz_UlO2%jmQY%AJbOL|lzT6jU)OaB0acU{CevN6{U2jCECz|MwKlps+T{9Z`*vIZ;psNGnA1CRu+=pTxb|Nc2 z&c>&x%FDY6kgai@JVLguonLumSqQ)NaQwL9huFNfp<+T?Q(O#4a;41l$NJR=P zLl9z2#LhX?ce(N|vbEW~o0{%uPmp8n<~JO`-wkI*=;gF*68<5D?q9tsT0yj)5kCH@ z5IyB%rl1j_$79V6^!(C?8=RgXj{3C6LYWsNc%?Xm6*#0_GW>|p9RAyW*>dO1&d#~sB!&3}4wQusL4`++kA-{;)DG_V&Q(JfX!Z#nyf!}Tx3l(!y(a9FB7qW8D{OGn z?yWaAZS}92z1~Flcm2vKZ{}%V+d2}~jNCzp+OfCnRZmf;4L{BufsV?($t{ebv8l>- zJ>2)NnYVl_RZ_lZN;O+L@xn7-M9@{wT-2$NW+vs#C>lHmgVZ!#^O98al2P+L%4ZRO zyd!a>v1}6Q&69I|#{Ii*T>UdO6llbxeZ+i`cKQ3|Z3}l=EKFe6g`PBl2H*YH5-tCP zYN#MnX!|N7N7~+;SswZnUwq8U8ydqGXZk4~n&w8x&3qGkSE+1;?NszlA@n_sSbD=k zErk?iTXui$IS)e%7b7X0b?QJ~J0damXI6F{V~08zvosMn0>y|efwtByy1d4XtrIt8 zEEMl#dsS~Rf|@Qr$v4tiF6-9bTn?^IycvIO#L&D>y7pcUAC--j=;UwkR@#sfBA;KR zhQ_H}*%^GF6GOx595hO!^cSE;vvmLG9*4-jH0b%4gut$3Y?QOMkIb$`4i{r$W;nST zG-S)fe~X(p$mMYYzzX>%+JCAfDTTHQDEWdvc>hcYK!JrN^dk|>b$n)QRBsrL_ZBbR z>+fk+;$g;LZ|}6~oF52m<#||Ww*P_`@I59(D4rTp@zjRmrJjpYJX|3o!jZ3h11ww+ zobBCxIhJZXpIg;xDZd=4iH2ylKfZMK6I91`2Gm8QPm-py1n3wH1de;mLVqE|JT#5& z{?&;>h#N}AGNdVz=AG^oIB|iOBdpE{`YDuxcfd$EVrssTC2qwAStMr)3B8iSYf~VY z&@l0%Uxw{8&nLYG&|Qd0taROY!*;LjnV#kj74%^+@x&Fx-v%jU%i!bFB{1Ip-ETa7 z&|I88ABfTY)j9DKKKl8Wbg4Xn)kPnvXbLi;!jmCj>#;vjkHPO8)|ACJp$m}^K7V(-+t)7+lJ^~C~aT6a6aX=hdIRI6PgLTk5s zaY*`zj{%e47*d)*hMKIn+-BK*c=0N545@mYazr**u1rEjcQRWE1ik8e`C&^^HSCo^ zC`5+pu7l58L^qKP;VoZaycMwo*WQM&M1G6&9`BsvA_CbyukMRF)cq#Wkn{%pOWJ|x zw=Y{bzk<>mZfb86P1x@SwAY|$qvAyS9DVHfcDCOZGYdYWDFXFGFzx@V>necaT9!5* z+zIaP9^BnM5Zv8$ad&rE+%1q0+#LeJA&?-!C6M46>_2edt@qxo_d~H;MQxw6XJ)#4 z=IidS;R3w{QJQ?55Mb$rGDFj)b=wE&cv=aHI zf6;D$fvwyfcvA zmS!Mhq{(vUS6*IpMvkk)A+BG3aIxh?mZbX%8(ec!Ty>eS*gl4c%ST5jqGD<|PV0!r zdg4B+@Wlytpt?~u^q}ZsRH?1BD2_Kxwl%=}#?Q|$!26pBY2kb*C0b=7C3(o)hOfns zjAAEW1I+JjO`Q^lxO=X>-#sWW0IiS;4C2iAK@$VENk-W9MT^B%tT8t)7ALs=GVuFx znWvXM3JQx0)Mbyoh{vL2AZlN;j0{VkfU6{d39btGaxvLvZ>+voPe{g$EVWD0 zI5d=Orj*+^MU!vrh#Sn=Sy;R6YmkWxYNNp6l*B>R+qdu6PC6R0@}Lv^av(v=)4Go9 zg@&_05LD4k&f*?6hHYJ`p`ln8k&9-RASp#%={|q)GwZ_)3WF1CR(v5{FlS6k^A>iz zKO&=AV}`gdO1P(}8hr06U07$%C*w9UN3GA6Zwz)h)|7f8`Q*oKc?sAk`P!v+07!}* znUi;eF3ez)uJ-6PQTnVuN}2DV8cfhCout0pjEDOjfFu_aYCe~9Vq5H;V!qs{%q0Yc zj=>C?I}U{`h63WJbd@tP5wntZ2lN>niD*Kd+w14l?7zNV*M0c-dRz&JbO1JCSU9|i zmthNqJC27eVN+79lCVtNmtSh}I}ET+)!hGDr*zlO(!%klb?vt&vr7)c6dR9zH9L>EmavBg>M~IS#U%JR3RM5}h3|C$T7PO4I`*7wD`umH33!RvOym@`6as0vZXu!LV-hhz z)c%uox$Qs0)YPDoi1FhVBh=50%7s(_b;w-A3tx_=O;x0h-sZN%FH5n^)hPM={*-c# zVf6t#Bwbl3jHm+1KO#GmzxlIFhKYTshhO-!6$Ej<=A!W~HYn!RL;%T*qS> zG>-V#;IKCUfon2VY`@B6@rRhrGA}4%wjgh;zyfu3N$fPl zJU&i_i;aXm1=)cmn2z^*2)s1scOnxoMgsvDNP1FsQ1b>F&O1l-vqxrq5MnZPl^sSR z09p4wZjq28p_mxQQ+Easg|Fg64Y1AJjz&c8Jw0lo(lt(wA^?Yh<(Gcn%4N)tKnE;k zDdtC~(%v<)ovXV?66%ylJW0A@RI6~p%}=)3mO?$H`9L^#>Bt}KSy`Rh%Y;%cB$EfCcK&K8fr;VMFM zbS*xuhcL_YVQvHdrf57B`a{864xYIRr%bJhJNCx?r%h($@s-?S$BmCo2{3g)DW=om zqV9N@AS>iR-CRF@u5~)Yp0CuFdhMrVbuZ|h+29l&qbs8sKmBZXQp2YsKPr%kBIoZ- zYotuhy8a4pOgDxr7f8Pe`R8bWxy>?cR^s#ANFOYtjOV-FpnQZSN7u{J)mO~Hjoka1 z?%KSx(iPGZ)bX5>+y6Z9 z-eX#l4MM>6AC9n>xZWPsj5*l;0%Ia555|>$QU4myqWl}^PCa9##(UHN#U@7wIOsUd zKE28i5ef$gadacu%{wM9E+<=%G+VHpPdQ*>UYCBGm6zo90*g*Cd>z=da8n3w4~M$M z8Uu1_3)|{F`2{I5!@7oOk1$)S^@8{>8kGo3;i-67&pze$wAu0z-3mvW*k(aA?YT}z z>sP3A^5U0kqAZ;+qtj+`rG4^5viKbwA(KQ#5Te>6!O=Dq|0X|XpP56z|4^|9I;5_| z_8C!LDLexZ7E^t2^>fksX^N=&SI44i|NGXbot=P0O*wc;DhjL5%4oJko#2&N7N!86 zc>1IT$?=-cgFC;O^FGe|VFO%PjxVOaG=;+p$>NAokO9RMy&%d^zbX7sQIED4xq-ro za8&i^j0=?*Vsnn4p>?bVXpQvFRv2KtW$*?{YMA7yoyz2Yh^OC!0t0UzG9QF=$X*3U zSx7e3%C}rp)R=@=LTO*h%fsG-bpa+E6FFUyTp-UvPLm|}E#e|Gc3t8%E7}yuTEnV8 zIEp@dmaC0!tQm=zlDo66+(!d-ADi4}#9dy0)^aH0Ekz8m4JLPuCSU`9C1H9XQ6EGT zzjE(H9ENmEqLjs5!Q(vdZB9flH(Sa_ntT5|LrwnR-tm_iT2=^d3x_&C#h*|igW(dG zp{nU`{mS_cDaV%>A2?6iIjRE~1N%f?^H{c4b>vX&?onyhGI{bzix8$AAi&cZV82`K ziPcb4lZn-AFN{_FhIlMkdfb)<9mrUL)6)cE?(7}Dc)67v)fqrRgoajms;+aS=GfZR zbq`dx*e%{kJbaOswo-|lhG(qAkBXiNwk5Keq%5t|c)LMB+_eFtj{(lgFO)g*nju9m z+h>1sw=4Qb!}>+)l6$1Pw7AI5k`3q~{X$Qs0Z^9xmKSA_=;6X3=*N4IH7Ab`P)|Kd zYUZ0gKH5MsE>us8STq{#^^p7tEZ5){kBD*3jW}}7{VzLI>>e359xQfE7Y_qN4u!$o zlBX@bJ(T0}q?qObvj+&#X=?&yme}O8Fcv^UM{H(TQiyA0*vQ(|IwLU!I$>1fyPaD< zDBD(i5!Kch6#2HBmkBPC0TU4gd0#}OgbL8V@{)BS+J{so2tltr6&t*Xi$n{nijI6T zoIZ)d$I$>8CUG-7_mihrS^`^HEMMG9|2~1!clH`(rl;_d{XoZNuKe=`3Wh4 z2_}Jzy!xp$K`h&wn^zWN1!5uU$jGTMMy&b13xD=t3IdLI2i`R_L%BIx8j9s7;fv)f z<$YYaw@`QCrNX&viyTr=-$~KbISYUy=Z+KeqkwYA**UWQO5|V9*=qVIVXO3d&``?@ z*no1$>AnG4d~!v=tRO#|}Dq>?(_0%@Pcp1nt_!on6zLlr*NC#`y^m z$9~S8F9}oM1qE7)JG^t~yhdBp&rpyiq1U=ej>Iq-ktIvbkfP4%S2bol__A0zTdSRB ziLrgOp52gNtQxOb_VB3i_fhIv202D1y+E1JJmr?*#Y9%IWyQFxR|#$-s%;WOu?!zJ z$XdtF_LA@uwM)MN(2ox-lvQVN?4pTi`j3N)#`8|$YxPeiym_{Av`lUi{C(lGLCQ=8 z7dY-Q=v`*}l2T5(_H9n=?(&!oa!Ba>^_R=qGgZm%{bQaW6E5k($><%cNqvri^4cz^ zy}9EucIWCQdCNrLZc2ac6GKhZ$LtKg0Bu3|R(0ignCvOrf2xP9AFk!0tusWlYZnhG z>Mc0JdL~>caW*itt9ALNjsXcDrYJPwob5Kcbv@2GpmvWGM;$a7_c@#On?I+7tBN`N zifS1gb{SP2vkwYBEm~ZszzrRN8v?00X7=jc=)ete9kG;J^kWYAu)m_+oq!dP#T3xl zOn*Ut`Xn6LVxfLs^j*BC#ryP+Z&viSC-_~?>=eM4K6kb(m6XwkV3VF$R>8wj_T}}C z2%NGJ{o0;tx5%&Kf&mvRWGG^q&HzmAiiS@yOg!n<-RH+}iqXQVKsfP$1LU;%+(++o zR`~@G0zEHId(>xm-~+hy?)LPkHpQ`vvDMzkHaqJY8-!wG0~|mJEZWyvP0d6krwD!P z?|Wu>pUE}0(~yz2*_fPfU{B=mv4a*9=ZeOdds)WHGf4g4<*OuiT348BAMy9Lc!afi=SrvEtdkA_MJbfwr_R0Hd zd0oWBV#!&4H-L92HZv_L#2*#*Zh%$Ai%t{;D3ICzQ!pKSLpy`aH!c*7!WhZ9%5V`6 zbgn1>ViT|snn%|cZ-7SgXl1hn5@k=$Hlo+1xT*|yUXofh)T^h8G)0^di4Y^jbS6z}3K(%+3WPp)OvDt{F7xscAJoM5!weIMXYxd zPd>Eiiak$Uy9w2w`0Bmqx}P+%0=KWgF4{YnM~Rn9v&$psY5nYC0B4LUu;Ho1-a%p- zLxVwa3LPP1YY1KJX^vP!Jk}w3YpFcMTZY$Dj++6FHB|+}0|#H^7|abM`hHxUu%0In z%&Ti-?A%eYL9WeKSOvEf3z`v5&X^4j0Hhs5OmCW39AAVCP5l534}Dnv-2v?KVY#v6 z4eRZq7`fIBRLx18CcMYZTH^KHG|NK|MpBCQ;pZb@&3t%U`M%7u7?j>jL)wr2;hWDr z$WTtGyVpl>EBz`+DQ;a$B-Msk44~ttoWn^60zI5TWz21nY?8%Xw3$>XhylSke$o_S z#d%nIKBRpmTI$1L;~>HI;uN5a3Y1pfD}lGE22NEVk%R5-MHKwZoItJ`9~9*^x1s;# z!f4K?ym(^zh|E-Zh^~7q0NBzxvX}-lgmOmwT&mvVVQBv)?p~3U;vY=y``N zXFKuJO;hnajfU6dg5#2|geX`*ZU9zb*fYWtk&K-HtMv@=WOAjZboQm(W1(-8!@!@N z_|&8M|0q54xk$ZRou8OCJ$4#oRa*GUXw=quHw`t{r%^|gPO9tuN5$-vG~ z(QZb$n}sJ4ln*=B;J4&`_s3km^=|W?MjuzV(D{t!WEzUjup5D+(b(AvCT_{_(AtF}UeX_0rL-Ex=_+Q#Y|5CowibgquhBG;yGSoKi#u zEg{$9J5NpVxx$$C4^M~=OB3VR7%@bSMVUaa1Kwwhz6At2Sb#ZEx9cE-AU^q#J{P&d z&-WFbVT#Of400Tf$r;(_mJwrufgX&{TEE`Wnqvbgdsdg#dbV6KLUNG^sw%!Zo#u&g zaQJvA1mE0l5u z-fWoLJIXgZ``Sr5mw+~%l4s_b1$frlSDUFvPSQzoBTIk$958yL)Mf(Ialetb`$MV2 zHu^Bde{?wxf^#-5nT=3sKixu%EPRhG@^HR3BWk>VgRx2wjO8$*OJL~hqG5uo42nJwLRpOw-@A%%MoNS&Q^%^Os~I z3`mx;C__^W;#8$PWCV%~R0!AF1}h4{sxAUn6^J#IHws~lHSgm%4kydW|Dew3WY3<@ zp(5M-8f=1IwX*kCugIKaFfK;Zk8_aV+1O*Z&At($TP{y@)fNMKvu)vIj3k=aioxW! zN_@WYTgEJdpkhPG1R&x}bp|VXCQC!f4UplW-%nsDAk_QoK8E>AV!1^HcOgl}6*bN( zrcPJe8RDkPDb?j+3AJgJ*+V0@#mBH82tkkcd}qB*_X-cpSfhz>w>j{D*iB}U@2V^H zF)+C#NL9|>BQ@;d*jbqQRD`d{x48yR>rg%_cNXVk@e19f-YH!%FloEP8(TQlh9ajV z)~6I+*;UyTSWT?(S60l%_N=RgD8>A5+dy2_$R>JlN&U`1k5IW3E zXw-WxyA|?WB^K=q4W{z;HO>7%;BsY3!ZjXInsPjd@@n1E(aRm%T5$z%RU9x^>`)+;*Ots(D;j_QOD; z>+Wa+>n14_kC!a;EEXBn44z7aoCNY;!hBhX0OE`ChcktRgG@pYE`So6;ho?db+ zRb`8+3O&9zP_1Q(m(U+b*PdwH*#C5jOArU!aZzj4dM$nhG7ZL&!TqOrxIx~6F)3Yk z^uCL#SKYoKQAS5{c=j-=-gj}>0}W2oZ6$+o)yHc2ZXMFUfuzZyEUvHo04WewneL)` zQ(cj*|Mdwneu-e;YeSKMR`(;`kGD6gi|*9t$HVUXNg}3izb;yLes|b<1_&cs8j0=z z)GYkmPc^mQ3nl!xgO*HF96q0|e!zU$^2i}XPA<+R+e7u%TlGUsJ9y0(+_?>1n-J4} zV9xxcIMp|MAn8$JW9kb;`UU0fKa_nlG^>9=c&`$PJ|CSzX>dNi;|eB8zY)y|WF33$ zReUIW2<(-9zo~rgTGNOCXXQ^Lh`7E>%2T;U)xyv)49hptXTs)kc6)(!EMG=tWG45B zKZ7pTEkx1{NrTzfddTmz=V)1d|M1hRx7UN~<{2wse7gj&*$``kcPIUR0cy#v?)IU6 z_t7slj2)gL*W~B61R?4$`tQbZ4m-QFiEuov_+tGCtDy|v*8^c(-g(dHi2{wRch~UQ zpYz|RuvAyUbmFj{1P%gDA3Zgq=Lo%pYixZeD-^xg-0*L zH^NNyLtYIj#K<9ZM_}HcKAumgtQ`e*<3Fxl4`}S8PxN34f;liQTM4!IA@e2SkJwjZ zIC|ve9hf7Bk|>!IjyqW4~L{m<>fWp z!SP6>iY#*|8M<`XqKe7WCm&8Nj&}=fTzpE0Rmv869eE6Ho^2bk)~~Irhdh+8bJ4Wf zJha7?Ka?ETlI#;;&#-b2IjIwngO^d3_q)b^IsXUU@G7;K#mC~{ zzL+hH_q<`~T#UvXK0hyhw=?NoW2i5dX-L+r=s5~L{hpMATG6Nd(mB>+kQ*pvXRET9 z9suoXm`R`CFNgaXcLOkr1LjP{!SzwWCUkkEFdL7F)T9LkS8SpNx?S?)mAr$C%OBL9 zjfN_f(!q0*CkQBlyyQ_m5Fwd?s7m{@acP!R?kQ8t?QukG&;H~vJfsuFawz-U)5zdu zftKv2HrwXEK)e2>l53*Tk2g1rg=isUf0A}~J#q>#8^*9SV>mb)F7hbfg=J~YL>^w~ zy#Q;;6mV7zwBKBLo?0R8FuvCc%IwKvT=~mMRNe8YUXO5T)-^>g8p#cKEc^hFQLev` z(P9(b0|Iz6E~=LHgb0rP>E1%la=>JlNWvdy0@7&Go!QmnhfE zsJr@@Wvub;Am+K!f}`PH(U75}=RmJtYR@|7O*}VYN8zai*h|c;vzqxJ`teZANP{vW zYLSB*d120O7*jII;V&XjeBK?me7cEthN&ah2bx{2a6cbV#F*e{2i2P-pNk*GI7DYQ zA%-ZI(vaArL?u5=#+BbX3s{kssRz*5};$XECSA zvXEP9A#bvWFf#zWy6|mb3o*#CrN1L?{dqgoKls4cEqjn6#TKhhJC7>kCtAA*ZerwJ zps;7<*;jSCyxT?E^1`TC!xvaYkOOv0zn&)&h@Mz29YHU6rsZLv6{VSUVhMB=<9Uub z%P8~{TPr{f8hdhh|6oRk`}wQE6ikEju8Ehq3!M2Xz6zz^x_3W{PHqs2euwkh!?_^z zml{mYlM06fpaaXJj6;I8MN;XISPJe9cWqn>5XJAR6RU|CKg?0?2pwy-UlGSX#yyrd zfkgMr10iyqU*6aRqGepN?^PhnJe@i!J5c#mpIHj$&bt#BG4~iLCgwG3Q$n0a;WufQ zq?@F^j#M%vL1#~IOIp9wNSzN**?448{9foEF_>FzG!Fu*M1T(3Ll^co0_*_Wkf@pf zyDt8TwMp+5M)^Guh9WD@wmND|q+t9al|Ok~IP~ToSwyv=`Y}dEu=!;H-lV=hRc+EI z-4M)s^57_)=}Q_G<;rS=D-NPU`9K;O>p1rL9o`(ljP5|e1egB214wJ@mF-)JCLr&m z>95HFXsC~>Ujk?xvJqVTc(Wiu@yE(3w4f+8(9|Bv!N9yWSHHK0sm3Iq(Xxr9pz?@2 zd~cUWKk*oCy@pV<1zc2F;DDxWGV|gTwu|9)=FZOH8Ax>RP?^TqdDe}A)TrR(24uuw zMoo-4|Ma*wA~ao34tH64LgFYdJPJL>F@aV4B#eTHPf%ARw%W-G>^Yg~n;S9J{7rPJ zLSNhn+-F(oNUGDd>qO%vH1a429S>67j-<7sa^?=c8nrFv2fTpKL2up5hxpraH2=nb zW1MV~6M@Z|p5}H*YH}hf{ZbFGnqXa)n=lH^yoOT2XePE6chdQXzj~*p3K-JEl{H71v=RPKZ8@7%DPEn z-(Pq2Pqca`#*w?rqCEBK_gydt=FMex8+<1C^5STT%hIg<VMC2r7YsKA@SBeB>T6+XH$1O zPO6SU2t^NLlOz_Y;w;adM5PC}M~v<9Q#>=yr{OTzRb|tKlv;?I0)F5dt!y$vt=~N~ zCJbF3UMS53o(p(aMPPY6oU$zof9O?b^J9m{fm2)d7sfhzqN$puqbu!>j%_`b+lbP! zV5dZtASZa}4k~2tYs;#8SA++ftU^hBDLQR|X1$sEf^sivr%8>1dI!4}x(dc!W3#v8 zq~r!3-7IN{6K637`KB(sztAPv5TGQ0tBB7_p(@P zD%Z(5NsMIc%hIDZ#Zq*X7=dUXHJbb=bg9wf+Quoobs<*G>7|+5Vi_(?WxEe5X=^BP zg{x?&mZbgWM90IT(=n-`_=xJUreWSAi+l^>#l*3LUNADtuQvcQh&%*#h__&@9E7HM z`Zm5gf6r0DbTU0&Sk^G+ZU>WXxuZa!iTQVB&8q759BrqbNdkuBl^zy1|2a)mS^T1e zkqf0I^V<%Q6>kMQ^r5e%_7dbk)?b#rgw$JwI*Qwi!&NNs2BoYH-^gMtESg779xg-2 zILJav`_t{%SY9yO!%=Nf_Q#;&8tdIbGjX+I1>9N}dT9kpjhH_qqnafiZ}a@U=DELi z;_kb1^iild&CFZg+p~FZP@sAnbPiKU1ARhEGY|r2_WHHHT+-+IBiex$&X+;&H%WWr z{REOS?k_GO64Hk7=94+Q+G_|B$%bn;3*6?qzuWQI7;BjARR~YsA#_sLW7H^3?eRFt9a0x!x2!Y-M&tR^;3b>_MhJ2=3-Tn^N!BHM(JdnD6fssYVNKEbIOWb zu*2HokAvq`_g(JZ!zmNjvB-C2JW<_4uIs{fjUQghC*?9JZ*Ohu>D(sDMm-5R_q(oy z1eW@49GX9$t(G@gHZwI?2bJg}U5$NxQ`466igw^#U0J*IIUD`-nwqsl9>wHqc6PnK2ziy}+8o0@fcA@NVR4VeiJu^8A{Y(&jk8hAbL5G@Z}( zYMMNX)8h0s%q`^GVzh6VurX43Js+0JT#}IRy@doZS4eC`fAf|$$5!DzpsU;Her<)6 zZKh7NnM@Y1n`a{7j+_;hTsD*VsLLcQ%7Sm%(q;a-!mU(0N`Eo0OlX-^Ma(Ja1HYn+ zxQ(m=C+f+>Y#_(=IWo7@jyz?$9sy`>=h1UrZl;Jr=QUVrbgr1VERcBQDrxTL2Q!LB zAHDrs7i&$#gcURDI2Y5#NA8eOv|j-b|NWo@?SwUKkPr}*z=NXwrDR@Cu6CwQPIk{~ z7OyrVKOl;JpYBX*tUeP`_A^$BIqEf|e-BlT<LuAA3cL+aQpT$njXcZC+4$W{MFQ>9DVm-$PE}uYj>K+A7v<5BGTOE> zE^Ug&r1Kc;)itW3HwcNL=cmJ+lH*+-!tI*2VLIJ%a0=ri=$JQ+#Sdwy7i?8tH{`r; z!6oH`W43PsHj74jREgJI)aeJ0O-dxy%fKxXBG>o50aNLqwc#_N2D>{}v*%XU)Kr6l zj9g&3|#3`gH;4F3##EAroiOGT1X zTnh~94KTn2e+}+m3+X?H_+?QwB@3a3vLT0mz}$i0R;`kNRW#6HWI=~Lr^Lh@szYpH z4TntPcQ^Tz&m4F>s$5`=?d4e5d`=~82RCN^<<~Jpsa|6Y%j6cDiY@N@&36%SowHrG z=qYsVV&6E;^N+HNa|ItI+&xxp{CFQe@t&ZubsFqfNtx5j;}C2s_FFf<=~LhQqL@)! z$$=lkkm0OLwmC}XVDr}hql$9lo;NPfwN%~27DC+`vNOp25%Rwu(jv(_1s{08DQG}l zfQQtRaB_6FaCA4)^mevzGk9J_wW&(V18nHP(^=?IvoPrtmJ=Ey88}0lsSwmWrdsLF zE^{g`$robcge$!V{pg&^&wT$Q5#!^2-sQJ6Vl_W(D6Ln@ro>|WD%g7N+1w(|HT-13-6%>TNwmq zP*wHNWLAeW?(9l5`D}4h9pCT!ED=ACDIsF;)x!jikNUB>uZ6nGDU z9QaRZGbdMz|0SNSpG%1j2LX{w``1MNeT5*%ZQ%BR_jR|naIpC6mHmHRAa}Y-T@V@y z!cqbo0`G6>=lcg!!@peMdD**JTUfZevA(?h&#U~??f-qDAjnK4sQ=ys{Br>QX|?|? ziiHaGpEmrTg8#IF{}#Ll1c68YPlf%b@ISTu-@@k)c;Z| XRRvgJx*#ABfL~!?&Z97a7l{7@OvwZK diff --git a/business_knowledge/新知识库初版/全包词汇/新课标单词_36-40.xlsx b/business_knowledge/新知识库初版/全包词汇/新课标单词_36-40.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..4c76ecdcf9815aba6a28df11f01dcfab56adf6b7 GIT binary patch literal 6862 zcmZ`;1yodB*B(*{>F$!y0ZFCPAqE&g5b3TVhmex)RJuDwT3V3q8bUzn4iV`A$$xxZ z|M$Kx|M%a!?!D`*d!K#Je%7=1IcFbLMKp90003|wVC>wfC)=kipNMRYATI*sW#(Y2 z>f``(eqs!Rak<;sD#Mj=I=OK%m)l;rHl#+-72rJ=i^yt$bG;6(=dcU9*xy5!u=nuj zr_SRFXJV~S0UdI!+wt-CJ&>Gcz7QW8%#Fxhe^bG;;2%{@g4hed#<6Ho=zXL-9yrMWN)!7`Kt?L!|0in}ZHl zW*BYvK9Q^b%LR-R_xpRuu0KWv00{r-f~kX(`EMUa;yS?H+yo(pASVa55$WKu5zt`) zLt~CR&cF}*Dg_zdiJx=n(+gaA_zdfDsS-D8@SU9%Jk;T1vK@5$okcdFj|Mg#zegqc!k7OMW;`d{r*k$ zAxQQ0!LH%^C;#RqRWE~?022VnU;_Y%k=(f3K5?-!w=@59=lRXfo{p~btRRWce&v|E zCBhD;_o;ttPlfMXhuS0agRx~=h+pR4nG;R9EC*=JC2D}q6 zJ}DsbCrR(~J`fSk)Eag5LUiwCM-9%p@Y_)>uN}Gz)(=fY!f4Q!)ta+9Gf!;W3Z$@V z^PyvAUlFqvu|*%E)m0|Xyq9*2=6T&bJ>Nm zvRzl$6zq^$Nz1P7dJ>V=ZAeZs0JLDP)58;JNd_DjuM?=g(Katg=^beO6bdK2>Fq(E zhE7l>@yj}8#$ez9o^_8asd`mP)kiFM#!cwOOv5?qRH^Q#_4}X71u*u^S6-hcHxCr> zd1iVGkJ=>oLQ7GK_nOn;@mJ2<>)FNeGs@DVuofWJ;U%-KaVVR;2(gnejis~~9D#@} ze8>ym|AoB^5w)b(Osdj{!`HK-oS2&z5L(^{6*+t6nUeMzrkMm;7EpFS=cjc-!8(Np zyu=dsGec6WRcTNQuy~SkL(Xe^%Ltc=y&GEZ_b)|n1`qbyH+ z^SE&KCSy|aAmIti1vvH{w1&CZg>__`kE%nqlKOS1)r6?$4aTnw0c@IBYFboF>Ka+b zAZYUeT_wxgwDL~E$I{{^luxOg>d5@-9ZQ0YbclM#-60dTgjd>S0`cNT{Xa%xUyn}5 z;t|FfJVSmv8W}^_Mi(LoPTR|K)Iz_`GU!t1*bW%7xNh_bnc}krzCDxsLJnTXXDyc4 z;pM-VpQerVIY`qw`$H(d_dMuI`IupckE|Ly)CL00dG)l$7i2)mYxT+3;A++ z!wdJDPQ-F28lEwGTXsxF>MqLK>vmsO@XXHebFrJgavJIH)2NK+_$rj${^Qz8JnL}p z;u}j)Wtui8Gg*wHe~lDN<5lF~!J}@hZ8P16SVJ0<=FcLCvZSf)chpb8i8C9OP3(=L zy6ZcYxh~>B_%Bhzt=bVBKA8q5#qaeAt#zz|;FIcM7=&&JSHw~@j<(({hgRScq3^oR zT*$4SEYnCO-HK-SDRW*}Fe@dt348KIj6>J2ogR0pRiSU_P2MT5?6$s+k6&(es8!|f zizd%+Yfp^J-db}}Au}th$ zX~d)3i}pAs&r2x^v<=%z)-zlik6W87GOx3*aAOk6}n#vwt@KSiIOQ=);9YbA?l4p zuJ!n+yiLtQC7$LymPJQPoVZv(-7syURb~CXsjc*k3Qs22i)6PBqoZrsfE@mY$d=)W zzD$J=VqxvVK3+s#DZ`_O5XA+A%A81pNk-1QuKF`B29p?NBw^tB0cwC*5shEU1fTeM`BW5R9)UX%Y*CTr*({*YazH43QD8mn~E$GipF-3nv&d* znEUd;3h{uSCKkhhC$;`*{yGF(bpB@lK~-n>+m*e@Hk5x4AOK+#npl9{3Ju-i)tx{b&IbZ`@fb}W!Vau@+egtpQm8+McqJ|9osEu}4z2x-2~$f4+7{t9&YTb3Fb1 z=Vw>1~O%pZGzj?s{nZW6nrq$`mCfB1%LE{q zA)SRCz5V;ly~SD2O}n1bk!P;4-9syuL}wCG)T}wtzg(M}Hjn4hPP30MjPrLxqvh9j zguLsvi5=Ue+TTkS21Qjenoe{_W_p2#=vh6EyI9Ki3{?$!vnJ_;=cp_;sWph%X1cNL z7|PYaI{Prm!q$)A&JBT;I5u0g&UVlIsZtTg*U^o6%0Kk5@FBtSjKpR{@fDg~kX5L^m%mnGq`ibQGwJhd&=GRs3b@k|V zb6eV-bb1FbNU+H}ln`5w#df6d8hmdN?##)6>F+C32!tKhMEH>n<3G_iXqQoc2%7+O z!a4ACRM}hvM2BAHWDc`-sd({v-#-nEj3E0$y0Fjv%ne73NSZ*R_&&5FsyZ-pm9Nr` zRuramf2Ej&jWdPY71}&x1c8iQQwE$XfD~~oqV+fR&`wJjW4MKLU0*R3W5nN^6ulR= zfmXj9N+Q9TBI#P;k5;7Gjt;mnGQcI}dGkX!g{Nw9-f*9dL;$2j^(LK+I}dX?1|^8z z*+siMsv4dv;o%+nedPMoNBU5$o2J^0n}HK{@N*g~B~qMtdH7G=NPSg#A{>#zfw-2($5S9>3Jy{W`M~!9z^(>d9ih%n&*-83Sru>wF zRmln=Qb3mC*~}$jk1UTmh@SAL0!BM8HsC5|H7})UHD>K_jgM`cK>Yq;{M(am$dhyu|8}z*3jlJWw{n)ABmz1{}ylcoG$bl$9R(;G!!5kP6sg zQNpU6&N7n6%YgM?qDT}7vKd3%%jH8yQ6_S2bjKj+g;tgW1*!$GjFK;F@gjf&z6h73 zVa(uQ{o@+cqqnMnKGxgzxW)+Zh)sMbz3ICj< zM@F$I{KlG|9uwP7W)c6KQBIvKg%w-W1^-W9K{AT0;YBC-zDrf;%=_8RTPvHeezG1~^XWXwiV~z;X940hh ztX*%^pxj#S3OK9JAH5=?FHhkd#FMalfbkbu$mSEsI?d{-yB9g&oKnttI|T?i4~H3j zZfaXpVdv7}k-)7d5M@DK6lL$1qZ25I9wA5o<&w4+6s>AcD zs>Fy!{_w#=yzOTR(&Y(=wN@qVM4Yh`xy}`P#RwEi}OQW4$I10N1{P50#mrKVuU-=b148KC(RHX_R@@=Z4C=D?n6a&iN@@4Nq&z?SLz03;8)nqypOUIS|@> zLj3D-%4kMQbbxb4kc3T9C?hACO?HvDMw;9OF+{F~k5Xj_B{auQqRhy6cBswNP zj@UNBj9`_GbfYYlAPv~&ZFZcLKzw@^v&CrzSb>L=@7ksihxoFHiVC38Wuy3IzbLCQ z*4$3_I}?8CH@rAQ@H*JP(NbnAW+m5x-3Y1Wf__Vx4M|xU8issEyzTtl=xt=%kG|o+ zvxR@_##15}`SpluOffo@KRs~}fe&OH9`Zexh4oeViqBLqi{*HzmPB(HRHo38sZ^OH zpzP^5)@e6=IcMIeV08}&yP6&`35fH)BK)Gll{c#zp7C`hmvFCPZ?bDmrmRg5yk1vm zAryO<4Q^NG4nk&{)_M)jWb;98D{hkj0*Mb4wu;viMP|uPokBGHe#rOT^%^{!sn073 zD*VI(Ay#5tn$PPC^PtDHKRQYB0)wy^uQKv#IA4yWZYwcYjY{8_DBiYJ#Bd&6(RhvF z=R6mU>QYGdqNUCpV%(4_B*|6$h4X!Ak-W{2=tQ=(J1sfewr~YQw~DY1#Zc`yk({I7 zeAIn_eNyk+nO@#kwUpZ7IgDN<#uP5`Zne){N2A6q%wFU~ENipu+ky<;XreoLZCs`n zr!`deou0o~nO8m;|M*Sl78P@zmK|N6ubl7#LRTK2$rqn7kRTPzU^tgUn5_CkjZ7ZcDy<}otT`gEdi)MRUNy% zUcPX5a0uC-YVv6to238uM9b?qe_jn)!9XAKn6=4=~ttr)J_bydF7^cZ=qPCp8EG2?l zGKw}^nP1qsB3dsqwyqC>{QDB$AQX~1yZmQ4pVSxKAO}TqahkuZtJ$4L3I|-N`L;hJ z#6)I0&h6^^j~0sREb4(ZR(|<vKbY^0Dk>Yrl9X+NVFj%j%<1Zro|qXQ zqbNgv$0ymwX5oBjgIeCHB<#qgx41$7ZO)ly;F!G6$B!R@UJBeVt z@Oe;n8E&#^x_4iudJT>%MZwWT)U5W?XzqP$w6iRFqmuoru3xgXUaB|ds14tMzQoZq zE&`dJogaJEYpzHw8-c|mL0S|1t4wL08VfrF&oNP-(>`Ho0U=hv%p`0kP;{P0c!?-I z;lM|uw;J%YGBy(p`(2igtU@+%#M&GMc+W`LMoN~!uXJ95)RHvhc7;==luyfnhsg-p zjS$>Nc(NDG29uLT&(_z(ax5;!LsSzd(&b-*&!}QumSWUi?m*QYW2BV*XKACd-v){# zZjxX?5(lF_1EB>U*wNj1KIfY&xDqsXo!`4kIQ`zn>!!Hj^1;8gmmJYd(~i^}F;agx$fu!`xvldPuHW~}xF-89Zd^&WwgxhO3fKAVvhI~TkP)0@dG6q|dZBIV#$DXiou z4V72q!#fz6@Z~)_#uWfI!^ z-R)nFRvOrE=S?3*Ihxeo2m}n^|L_6)+fk}d)TP`g001-6QT#ta_IovB;^1KOJItch z#=%{Z1XqbLdZQQP0fjq}AkHwd$KGu$=@vT+c3^#?2x^C^?jB2(u;n*%xWmB36W^%Z3bw;P2}*Go$vF5ROjK)@+s#bm7E`yslgsD0)bu`r5(uD@kbMGtJ-oFC*# zYPxNlW*UxjqY|w#qt%%t_Izljov=kH?wfhXgAY3T=dfAB#O z)wOcbqxU?Lr$xeQj-2o3ohIH%Z6SX8AaX!1qhgN`bOr;O>b*O@niBsemxV4puN+D0 zIg((iKji)q(myHwOH_5SVt9evxWSb~8vp^-5*Z97eXYk_1Q^H6L_|Fm*bPsDQDTH$ zj6Y^^`tA=vvaLwm>~rdmS!8W62hE0l>;npPYa_Tu*SJ-z$;(!?Loiz=K3fySv44{K z%4e4KGc_+m^hU%B%7{lv zFdc@~0R}s$rgxPJq;|`L{Mi|(Vq^`gVhI=K?s9WyJ!~H15l4x15RUezpsFk5VDDmX z?_#Lo0W){j|E;3(cx6ZzHv!T+bKQqrK&_l2Y9kzd7>cP1Rq0K^d1Lf3q6K&Dx&S7gXWxfEIXr`xQmp4ERO!z6@$|=~6ht?$HFjj}8W;L( z-QPrO6Mp`tm;9D`^pLRgXPZQI%QS?_cQbND!oU~FBnm1C+W)`zfYi)ihaZyP|GN`$ z7k#(v{|5^I_@Q+D6aBxN0C(YcE8~B|myo~zFLm;}2JTiy{$s$O;r?F+{%f7&u9dsP z{(r2Xgd_Jdklpxu5^xuKH*5b5#XxfWj~sp%csC3F4g84&BLDf%fV~U88|8n470Lbr p|35K**UsHQ`r8gSIRNlq!b(*U1G$j_0AL|cab*7X{9TR${13BMLRbI* literal 0 HcmV?d00001 diff --git a/business_knowledge/新知识库初版/现状/L2 已使用.xlsx b/business_knowledge/新知识库初版/现状/L2 已使用.xlsx index 069dfa3daa5e15cfac6b2ce83a74eec56a9bf0cf..59bf77fa48ae12d5fc2adaf5328fff71a7f52d67 100644 GIT binary patch literal 50692 zcmY(pWmKD8(>4rkffo1TS}0K5i%YRmoM6FS0u&GK?(R_B-3jil#ob*36qhg8{r>r$ zA7`?%*3Lfn%$_-B=9p2Geg6R$4i4@kT(DD*w&b9kbRz86IPAfMJ;t_1iuSg@9as#0 z|7HeTgXAXVP^~O)@(LHqu)MJYJlA5Vmo39U{(U4yB@P zOp$;x?^<)P52A_8Q$Grgj^u>p?7CO7t@%dO5Mkt#lfCcFwO;TEWJBd0+it2p`pYb7 z<}{fk=2FY2MBBTq!O2(imAq_~1R3+djYcRONA`R2H-xuvl~FvEto;$&XJdp;q}I=h z|3`$aK7^VJ*wMeegM-8R|BGN`Yj5(O4C8U#mc6W~L3$?lS#&ZGl3&N81M*C$YKx2G ziR$8fLH;~lzAIEAT82-m#E7huwxtqOcan>f>*5du37`_ zV)Io}bR~L^PVIUt!NB3Y<6pn zGQjQISdZgi;k;6x8gM309*Ct8334@#4e;)i;>H|JLOY9-YfTsUz-nTIs7tZ%Bbf58%EB`m7C>_RU1rQ4uo0oTjxIgEqdyXqJIQ5K9l zIwD@lnu|=SDrwp3QPl5|bKK*Nsz#dR!Q-fl(zb-u zUp;{OpO@E#OeT-`NZEaDScx?#yeDjncICA~wp4rix-89v)vN}mXQX}nhCLGyT4iqY zX7N6@$^mqQuL@2Z4BG&iJQ@mnV+O@P$c@8Hst$H%8#;twd&h9AeCkHk#OWAgSkwt$9x z^5OycL|(v*TrH_uXL52kE5e={vUaQCd8;60L%mSaRY$duAo)cidx)uZ7mK$+28|s@ z_+w^JilrjSyZldVNjX9H^#kQtn>e0L9Uq4_B17)VY|{kQb2Ma@1MV>;iMBHw_8q1{ zPe=ul)3<=O)x2a4JosdS4bD<7#{PM5Vi&X`Lx2Ld%|{h4-_Yp3zyB}=zgru)!u)bypwEcbQLyKpMy7j^0^z_p~w^DW9g+LPN zV8~T2<#|p}%4Dy2u&cXXido`-A}6jjsQe3~WRrgL0+bPV(^#MB50ZbC(z`2VfIb^= z;QhClT#sK75{JJJlC|}ArsH;23QZbps_0z^t*Mm1_gJLhn3avJo78jzNGAcntLhF* z!FoLT$yd#ap=?wvd3+RXX`_VCg+Ftz2~|1{zRC0fcsnIH8nKfJ+IIE_?c`OOv7H++ z-m$kpzL&U}u$dKJZ7`vJVg!b0VsFdooXs7iXH>dTIX@=5bn9Qe{2rFV*yBIYyU`J^ z^txT!d9;b=m;ROE+K&bADDjRukpvO{GyAUMd0Y%44*Yn+@Q=%Pe#V6)J}HkV?N_KR z^mr2$Lf^e582y9fb!TX>al@)n5hy>~?_6BOTe?InJTm%P2dJ_e&wU;d5A7D@uoquc zrMa$LrbP){*;XBg5OvV%%l5k2WHNnyThaY1SpQj2@;WbdldLY-A>FOHN22^qW1j4R zedGJ@6~6WNy8Aec;`v_Po?&4=SY?JCtyKySG#UK$?oeNf^ym4N{M)rnRFA)9S_Q`6 zu!LoiJjmk^jUs?IoO;o?h82Z16$8s`sIER5*QhzByc@w1X+#`z;pN{Wk!?liMD~PN z{-T-RqH&VMBIvTEHgf0f$|DP`zFweJ_w+?=orQP8|K9+Tq!6lURu2bvUX1`p@c#mc zi>)OmMLG>zU*0-ivEzr^n;V z-u>fil{dIUd;N7VndJgw@+o=kDO=w5Y2h{9w&;5FeCEx~>+$NVaoeVTN5TS-0vkYTVqE!_1U{hM`tJJWl+^iF+)UKExdi(-#H3kSd0 zUM#(N6TPzODHQ1i>Amhi_1+ZGoR-P&Fp{^ZAg_Z}Pu?r!(Y+0iY0nGbC1LFgzK_>$ z*_E#s(Cm#jhmQ00yEkXP*UsR<(d*9FoR{9B!I!4BLFiSdLg&lI6ExegY*PU;dJdBy z+v~}Z?6t)E;kx%yxVQbuK6s%!H=E_)^;+CJZ&Xj{jmIj(LD=inw$f(#d{EfC859qj2IC&g8{THj*e0qLj z$0A6}_;%kUEE63xa+m0o7^${6kD7?yP?olJx0$we@Xy`o`HDQAj8x~z>}l}LXpQ{s zINxjlueR`Z+u`+&eSFNq#c4U#0pnoy39`#Y|7de8$C>`2$$3#rea%Zl{i)k+fxF=| zQ{gwsa6yf7)%Q%yvtx|6>fwS~t1dCYqZ>5wGS>`zzY2o)tyZ{Q)4b+)^dA3aR8*ba zbGYe#*Lz8EtO>TCYbXkPEJR`EdQ%LY3_8B5JIR(~5+tZ>KZB^%=)Jl~I9zo9T|iQ~ z_Wzz)P$c&5p+xbhBdWrsM(^y+)v)&|v|b#A$MdV<7wSY}Llli5o_(Q%Qg z&+5~X41$a1hIwbiMxefhj^&`6<*;no+ZnFB_J8DW42>!UROYs+rlz(I4NdfQ$zh|n z%10O0XHrZhdfeTi-igA~4PN;C#%B||W~rw8X72y$B!r)G3U=vGcDE1`$shGp`lr)* ztewtmX;_YkYRIkM?$y6(maY;oF~M|kR+;2{I8_B%2yS1L*QAF0+;jg7!Q9Y#0gkmU z0YRXa*}Fn?NvF(nwn)adT|V^)9oYG`dFIfp8E!q_+#Yzt^GsBSFW4A`P*Ik-(aD!v zu_+I~;tp0eo@^NFd2xF`3j=)Q)gj;0fOKh)bYJS}@y+uGd+^3x7o#&l@rPhMon04 zp)i+;is(T(02!$@?XYr>XN+UWbz=hJzbIJu;n57YPbQ8pYRF@atL3Oc4hLIKPlQ{? zM3Cr{6<}+=-S>73?GE*d3>b-BtF=Xbkj_`fN8QTXv{O3LkKW$|plLWCQx#>xe*p!BrDU~^F7Zh zRRVIChW=15kLKlYF>2AJrF-Tn`8z&*alk=2wC)aR%5X)in2-X~d+yc+$)ZR&xZ4_A zVsd25=R%N2M$Q@N)KhD0i^Y;V#lOwopB&^)5{01qyAdYM$C&4scNjW|D}~cNIeLV;FB+ zOXp$o5KHoz?I_H;^h1m8GOyaLncB#p`*yl;ZnzZ#&m!ELW#jl?vGk(#gmwD{l_aY) zJPuPm-<6bFiwX74&Fi?oXxD2Ns3Qr6DdY7Ypp9ADj#*-fL}L^k%qlsiac*)_XIp_1 ziGCkEgFY%h9o}!dFZ_Go+gz&#u+NU-As+Cpe3t+yEf(-aqqDN5vx=3CE>dq%V4=~( zMO8vtAJ7Dvedgezx1{!D;fvh;E>9G4nge(lqkEXP#syjBN}7G9k1vxD3mZ4K=)PKwimF{R}Aq3PDR!U@h+)Y zyUyemS^3l`a^Bq_M&SEG!DK!4KNMUwaaxfhKYJcygVe{tY^rvt6-`9@pP{+&3s+Wl zXe{_)`??$8X{uLJ@0AxF)Fp#YTzaM~vraiLY>_`q!_PgfqK4#EmV~z?b_AsV=(?iu z!~UVRu{ceI(sBA~=i}AlsELC>|Biu64`(A_gU2@e-u^kGh13?iWi9T`3S6tm87&Ke z=8I=}c=Cm3a(?S_#YHs=uZ$%9i8CZdncGSYV*qPnKM-`aBT;8c`+{t{q+NQYgB9-|?-W?RewPlEU^NvL z4U^!}bg4NN3X;P+A1ui*e-zA3kki9iE)6|T^P>J4{Nv&A&MSjXOSd&G)Nf^IWloL* zUB_@SutJ-r@{qIR{Rvl3A6Baxm(2z7$Jw=yvy@D?^LMriE$zuvw8)6@6-VrK6>^#K zZ;JYzpL9XUvvDhTM7ywq%XLr|iF3juEXbqE$~3bLS7>j!8cMoP zYFRZa&_P#-^Nu|8jvu3JZHs!pt^DGvPPH3%0@S;HJj+0!j_$mZYY&Pg+bJ}^CYpe4 zY~5j3C~hin;gZ|=1*8z=*FYu<+hfX=>=l{@X1ao&E zJnjJ=c)35kuneKV%P17NuakOtydC#+zkasU5ViUuy+k4jUTtE=F**;@`JNds-%9Jz zkloZ2pic+sGuj($&^uNy7OZMQo!;X=663q|_1x+GP#I0Z49BS8u!fwaP7aGB;*MUh z@9Bm`0=fB3A*8V@>l;t|E%8XG#eVputZ_{xCIjtG56CStJ6yABJNwl!w*owgZ8E5~ zxgZnmx&RHjG-B`fLeV$3@L9>$W_{aO=dE@RG_P$PliG>f_8>E}S?8v!y2(spqv+(l z%#xK81*qoQC+9@HaH5XwiCOmPXNxt0Y3g%NZ6V!0bM=I-Yr_fq0nShqV7je+r`I_N z>f>du3Q6K~t7=SiBs0!Uvrjqf4%y`pTVr%_+thq`RQy>R z7_K-L;o@EqK+3OxB`VF%I9K_YG z8d}=NR(DLKP`W=89}u#u_;L36vA#$_sc>k*1}vNQpW%t=YC4n*ZOwN6lq)>Q}&+sE+JXg2s8(fs3LImAah`X0e7rw1bOuWeu z<>Eu@lLX0B4&3vc{cgR*>Xh@p2>O-EpE&c0!RJJpis5zhr9IrX8m#5EtQt7S9&4GM z=j1}hWuw0_!v_mW>y!URsZh7~GdHy!iAl@qRG*-;2=#v%Vsan9GRQHvc|b$4^2@4% zjGC|@rQ{%zm{q3b3V>$8haq#G5oZY?A8t;DJGJsPIKO{rAFK>htDZ7>Ykc2b0yLS* z`8kNKB07Nw`ao3OUqKjq>jLpgbZJj+{t%)qo6h*z#Kdk=d~#ZuGPqZZGM|JqMFDybomx|+dDHHyG4T}B>J$@2>shBL==0Ct zY7=#Z5l-v*dfM7rPPm{9S`47j7638F4w2%8076`O{tVtu%? zH~on#;;%OUK_{)UPKYU9+qzQQswz92o8vk3wQ?k{)%UR{^6{PW#_P)^9nbD|8+UP+ zl4P;rC|Pd8A8%$9!Z}Nrk^JfWo!8lQ};F0Pta8xXZUH*SPq3m11YWZ*)A<{{Zgk(<99b|MNB=X=-96oXfCCZtJpE_ zt4`s`Yk9q{N%qM{1W#LeSxxV8al+O@Jn~u)Ezq@@QE>XVmzd8QE0URALJ!~7n^?u<+|3I%s%ks3X&Md`RCk?bg`2Xe0CcJomK21)l}O ztJ$R^f+5GjSs5XUJP;{H_#M-H6Mg3|U;{fzp2iAs!K#u)Gx2>z3l!-8?3}QWqXcKe zQ05{;%0C~C$L9*b?cdQV79i2}w}I`I&f{o>xh4;(Tjd?aKdS~u+?Fh}9h*5Pq*nE$ z3|F>zvMlT1r#^7hBZ@s=3VF01G-ey~N8g#T7^V9RClwbY%YT&pH{a*qPA7xT`1| z#HLsGiAx%!EsOl6E$LzosH(x*TMFI%awn!1?S&c?t0g|415Miy*N`O~yloHXsapTN zjtn;{`I!k@oN~LZ0xG~aJ@@S>57Vf*2g`1xWcr1G$cl|F=d;K&En~>64C&(!d6KfD&jO&gBg4Tq^*wz8|~>dB$d>7GNYRnpAE~Ruor5 z#4U5TtOs5}YC$;Ge(uu5)|@m}S9IsFH)PKIlK^ zkNcu*HDXU}2o~4|hKrQ)M9wi_cNi5`7bC09t+NoZa<1=9pzCP4xXmwDg4{XFIjxg! zE3m*espO`RFoXs}87eXk3Wmij*zM)n{#am})?xk%t^SxG z57l)f?(%w8%|5c|wOq8CJw$*xm||hwujnkDH=K+vAkRSid z?7kdkgs7eqN7Lp)2kRbBH;fk&~FKiQpY59DSo=ppBJM(oFaJI>A@^^FjBr z1C8!U9;rT<`ZG=9bCM(;r4CLO*AwK?H(y zod#YC#m}!*&SQ}$i}ZF=#O62YQ;VD1HHto$*o)BWnph49uVUxTOk-#P7SEOEdM-{^ zpOB%7P~vNk+zlcsH=gsgGBfBmr{u@@#!8ditulFF>h62}h7r0b+dqA;7`zT7-)mUV zf|Bj1lB2B_Dq9eBcY&Z%0>)8zLJt5Fm3T$?_AO!nXX5CpWQc%woA9VjvdPo#RkqQ7 z*phiQ7bWfcu3rfrTuzG>>VDSiB55zeOm&2s*E_!xqPZnMEtQ{7g?~kFo^q}mn@_~B z5TCtl2Q{VD^v}=_YMK0&tWs^L=I3wk5PL^@8btZ2te9A-8f3qk51ycx{Jui`{b~K7 zk(lGk;I79v`-)nlPEn&&OTh2+!xOT>^-lZSkE|Y3Ji&K~ygMlDnrTH2wmYvu7ed)R z!_Zyhj+F#?q{l44!NTWKd<820?hY{$((JzQjPQWK8&=Ljt3f#$#2M=vx1XR}lV8bb z7t?@)dDv1~v#$&4A9Kks3^fS8ffI^Np37&e3&;~sioBqJLZhEAqzV<3_be06E9$AI9u&!ziGX%X~j-O9El%`sib1nK$@ z9)`E;7J43uC&T}8A9SBr% zh_ONUhX!|7wCTF|!XtY|ymG(D4j$1BxergIT*v=8EP)~^>GxvQK98R=p<1v9asH6; zU*cSp#Nx8&8Z0`zs}5vZg+f3r%4LE3H~0~pgpx$>@`Fk1k8AN{naK|{Rh$)?cq?m& zCWS*cMwuNhi%+l8`bS~*v=>2!#-@02wN>jc55Xj>dB%)9`ITX188K`oRX7<;p+m5` z1t?nc)xS>z48zu6M&P04OuRouHAHBs=uWt{m>8b_>lOPnGnUoNShyY!-=^5W%GE0* zZr)pne?^uQ?YnEC*)BWiZemul#sy*Q4p&1N-)Eoe*++dw^_8=|eqBLw#P2^14x4Ps zT`CG_k{t!nUu?pZR^?OhN%TjSn?PM@rIFW~s=RYMCTrrdxw9?&uXOlA zldga{ebtyXgfADzh^Czz!&I>(Sodl1KJ05OG{^EFKWvmHKCB|i>9sZoZMZJ#Fn z`;l%?AW^>Bsf*6?6rPcl;bdId$b3+i(Ag3gp;u0;qFzCYUy5I7s%jpK?5;9A)sraB zD6A;`^OytPAnC&M_Cdh26V!$nFu$#DgNKA)y8jA^cu#7tfAJRVF@qYu39tWvd&P#$ zvpa1150``fu6INZ&j_Y)BaUZ>5bvjJGTL$_@eYQv2&a`f&4k(NA7puHe6#zM+#Sel z$1*v%Z74T%KPxzQnl5uj@24oqg?h=@lVUEG#qyvkhfk-M+ppJ;gGcU5W?V~j1OMm~ zr%%_#{F(DagE{Zp++9}$+ebWkM~3VXKJh1`$C>|1x6mn3hE0< z?#A``zfTcN5la16y`z<~ETTK_e}v??g}wcrrA)b6QGh@UFY%Eb2@&}6Mfx{uBV)C_ zSQiH;dLEb~*~K;leWsVOu9|H{AWeoB_ymrGsC)sU{p(^xeOEm0Pu(PEgCbn*D{9?3 zIhF?Ih%V?`@@xs5#>G9d0IL~eAUpR;O}bdo3S5!y6`*Jd^^jbRQV(|JEiJQobE4 z$v*$R{IN=&bcEsgo9Z~)9pS5MU+4PeLVE-~-MhgW53%+b$5ZD+Q%FqG-eVHR zSBlFu{fMH!@~-a!OZ#z#c&Dkq3SI01F{fQ^vgM?KMPEHx?hs#|+;z5aBVKH3Rw-S)>{Mz>zxU02Xi zM|1fQ>-_<+5I8h+)Ds9ZNqTQTPyru(nK>|cguLNV!Iz;&S_1^&L?@l6ebhf};|BS^Nuvh(H zPE*E#TaJZ*p#Zu5eV7Mw+A5_?noLq&PV(bcL~Ad%=P7uA`D&Iag*x>R=>!JmK_C&k z>K28SN=EXXsaN&Ry{p0mt7TW2Je-pE<5lRdh1#Rv;>;>czb3(zl3D!c`iDN)SK268 z)`K_!3_L(TF7a|5WUd$opKHKe{A&G(xwQvM{TyNa+(&EwwP2(WZV|$Bu&9J_6Rin5 zXy?=5#u>OqNMe7yBbnTJxj9L?amB4~ zGMkngOhiq!EGQT3q%3fe?s%v$1w>Q$cM}<0f_(@T6JlPF%_F6< z(2IJNg73;cszV#d^ zReaW{eqP3S3@}i04o1a$pS!Kk)1Q@xEa|1;W$&1>ikgE@(o|Wq$*YUk3M#-K`3O{5 zYvL2{_bCPobki~>h>Q+gSzvyanqeCFmcus_9=c>AXq_`Al_JcPK^H`WM8wg816=ICFUiG*GRpXc7BJF2u08C97)Cac+4xxI$kxfqHs6l2PM z!b2KMJw|Rs2jeaQe~*;T*27wW6l}&Z1en+gF=x1V#+6CMg_(!Z*!4MDg3G}6lI>&s zV-&)F2>BheHRJ-q-H$jULt1#bW8eU|43SYw!4Kk{^jeU>JFx+Gcvsu%ThXW<5v=yz zl$^qLzefAK?nKgH2j<2-sH1OvFe}1dKPIj48B$Z`xUj927D1QRukfX-L#>jwTc1XK zqoHax3T{h`Vpbx&(W1ja%_(K|f`$F<>sPycBMPyNm#+6yxhlb(n6B+26(qtwOj88x z=BOVdi;`h&UXwdK+GeGpJUmJE0}xLZ3d#9c_$J`Sgm7;^Z5&9)Zj4J9L#4oC3sHA< z`ylbR*UB9in4RnMA^^Bg=vvrB2eut2(3}Lb86w6@TK-dR+we<}3rawvGP!tpwQnY& z*g`_?_GT0=C(bt(VNQAYE+bcLlO6uL0~pjHw(qR`D*=UNJC_1RqlinjchAki0BKdx z!KgjzyXM8%g~GIg_f<2l#7!6cVK}{I3Uxl4&kUEa`^lK>suR6b&1Cr%AGR0FCinXv zue@Hq%y?GFX|uBiH3s|tl6TPwTJZ_Q*z23eYT;2M0$iny+&vj<2y>o1aLG*wDoAAe z)u;CN825%rMov4eRd8V^vH}Vq94U6oq8I!K>+I+VML}|^l0Qc)wY|M;eVh#VG?mH_ zn1P@&*-B16z_^p?n+o4{oM~e=H%*du+;KKJLwGb19kPHpsx5G^g?6YB_FpnxE}32~v3q3g#xSUE_8~JElA-Vr2LwY^<1~>F%&$+Z8CG;ISh|4`It^Nyuo5WU&Tus2{u>%Uvbc7Q z2Z>t#`w|9Qv+#kOa8{#l>fMEyZI%(gx;@=thlDgu8KzGghS!7FU*1d3dHh90##uV<;N@Jx zgMiLg2w}8HIx%6O*lB7&3C%Oqndi0+=4%|(1L&bp4?i?hI^T{DqZro(mGUSbthr>B zam%k4CQY)rjO)SLHOhqJ=S)M3CPRyq?6(Dbo1zJd*MMGw*()EkI%@LDsu8Gzi7Q-{ z{J1+FJ1huznfQ7-OD<1KPfp!-q|gSwhxvUEy6@%A*-7X`vpAj;9{uoGZX4xIc8?qN{iZ%0KZaOqV^;9xYZ}?ufK}4fi zt2wP(FZlA#u0!$mH*Rdz2w~(v!_lH|*bH&5mI7`5sw#&w%Ci&Uv(ra!@{8nIluPo` zA+1o7G@zyEwMtTNC9obA0sR z{isDg0M+?B7Hhe837=4kkI`j};e&Z#clSskKVS3XT($Wb&W*Wpithk*sr1bMRQW?A z=#*&p8-OXIA+@HDeOjXiVv6>?tQ=cX3aQbGs0GH~rs=CdO7>3>>+2FnJ!pJfNwBs3 zt4yGU+Fr%wvfqC%x26SpIMI&x^iP^}0w%6id`fz=4ACwVOYsMu#=w3V#?MFM8Qg}1 zE(=6*<7*48MoiNdTCL$78OBSyH^FDR>}0hs3HLFlJ^X z<=?a;OG6SqUnxk-{zcF~QDEShUT*dvDXQp*NX%$a1d0X6u7J}0ziWMp#n>u__f4=m zb`Q+SNOAltJ{epmV47n+^Su{cIrI`xRm7(kuUa(j@&buhHYf(D zYP}$aoxbfYsZc1ptzK;Gnklx1424ndItp;f9o04TcZU^b&!sbT*uYE0`{s%MUKP%~ zvpM=q+U9Ef1B~R_sZ41nqzVC?pdo&C8tYFbhh3Y?a z&&L{y5np4Q@XyS$5kVc6&H*TamL|B6CdItr;%N%5+O@!`kUb8_$^3+vtXZ^ZBLw8D zSP{5=jUUEIC_$7zv_)t5{XR-!x86@TQ_fa&N53F_&Mu2ciga1d^{>)@aH5ne`g67O zY$7>%eO=)qIo^Ynt!&tUCZ(QSBszU`Hfq(PuJZzj%sXKfR6AEzT@7v$b~+r=*(G3Zj1neSZxd_YaLP0*hpsb{9SWA!kgW;VbX4fK z3?7c4k`>4Oy1`*U+c9no^CTy%RD53ViJ&!-^dAE+4u@|uQbHPb7zQL#T0g;kE6!4D zKW2=>(v2ze`R~NM@5TH@!1uS--s`iaD91x)Otp?<*Sl+s33rdKV^7RaRg!Vaxl9f0 zVFy6{Y13+REPRZrqPw+VftLV=-z1}h1Zye6bL!%QOnl+T-AjMU9W0tmY+(V*mP4fe zV@Pn*&XLJiAh0M^HBf5LAqBLq0aguJ(Uj*bQJhGr|Ibcw_#002qR|tQ(;A*{}Asi zl^NOkP9yV!ChiqY5_wwlKZ}9rxa1nXe!=0!O2ZLY(3y{*XJR+8Jqd2(@R9II&=9(v zp?CPX0i4`dmvTFZ2R@X}h7j{50HptmK3S9n68QrEagv{}z9ePe4ixCpAl)B11b&5< z&Yt4l5S78k9U6Y~@5qD;xVqgF>=zmjqJ(0P9^~O!nbM0CPKv*m`UV9Q0oVv#>i=Uz zDSxJ86-eX?c#1d!<}Zm=fWhT6`_K`WI%p2Gq)2H!;t!JQ(hVou3B2L1Sj!e-AmWd{ZwGab z#INCU`d!FWsD-@%yJk%Ek1!c0AsZCscwDT^-B+=uGp8Xa_=T^Eu(-FphAZ9_P}Yiy zN&3#vmhOwY5!Uz8a$&8Fe5izpsR}iBCV93{awfBOu&QOwA25toa2$w0PmR6ZuM22J zwO-huvNiw|;aqMX)OMQi+{j)J%<6h(Z$H#tOYeAC zrN7G_AitieebU;Wr9}U!E2dal?DQ2lG;Okb7()^qOmRVHhUJIKz;0E>CwCNy(TBJ| zL~49l`gc>E?LQ{V>A&|wJ?>3L?C&+xHt2tT=f5!K+Ag1^Nm z9*P2{Z7-!`4n(%lpL;&Gr#Ul64l>KhB6zy6qcEfjVc^NVGqnEG@U1~z3q}n>J=nu; z`hGsGY0^5WcDdt@4${>8h_UA4*K*)}-gQ2V194Qz7K+bxp8-T*#@n0;U+|Ulcui;) zjznUrUH>5^V6E?V4S^`^k6W17dn5H6SXFNT3JS}@wCHp%lAA3S{V64p_5n5=djuZ8 zKu?dd^M+P&B=+_eJ}|opgereO`vfwO&8{gJ++ladLK@6yf$yWuXrD)-A}iFtqCANcm4+$vh#8qMz=t zkbm4RR%VNiA0MGwx^|1Sl$f64JKqrUyY&>llnD^~y|e5eGpT%Y{{@`!Od$vFs%(nw zSX^OLl@?jR$e`4A1f~;ICM&}~FDFMkGU&LXXt%`0Atm3_`KI?kMAa7x%CtfE?T5U& zPDDE`-h{8!uaHBCGEM&-40P^L39Wt%ETEK+{0aEAFtbzd%$cg|SDY0mRrnX5s~s&7 zV)bg{+sEhMM??wzXFq`Yqu9?5F)6z|@_ub>`5))2IsF!;o>T2>>-OQ3QZuP3@GrDp zO?FQS)IGx2J3>@*^>5(?dV?69`x^~=bns(lg8R%I*BDB!TNnVrOnnP>(_5gRaIWp` z!G|vpt&ngHp$=r6fICvI7Om#>;x)M%2bB9c!uz?8UY+NY-fwPh2~tjU?)=$9YD`L& zf|>k$S#hxOPo4Qf`2)UYyA}97wSCAT{G!%gLQ!=f=1Bym)tA04`V8G12u0!*Chpba z8mA z1E;?AR@!b2^X&{1xn8+^bQVG20wd5`&qk!Dn#&>187=Fl(j>Yw#8bh_#S%i<`JuS> zlHdi>Oyxb8$r}g!fmyb-&c>FLDWIrf^^nLBl1;*1(Z0@>JP#r}vftxO|3jwdu z{&16@LNL;DrC$i3&GM91puxO?9pnb{1~7c`QuXoCoOU-qQOs2m2!d%qtU zb$lOU99ziPf7orxQN|m;WcotL9)~I&*D37LHO64MDHyV61ZTpxQ3f>-5>`%UlR~6% z>xMPMEOui+73^Ufz~5}f%>y@Ga20QOyZ_A8fKv zI%v5LUh4^p;>i8^47Q)#VD`5YZgBD^{XfK-fswFq`W{A%V1Dvk88$nr^=rklewfx) zh#Znx19ZraMw7`~?Uu>gh`-e$e};Kl6Nffxfb<5PHx@&&gTY6L>3ddsB&&@OEn#v` z1=p9>;|U5AJT(TV*|813M9SU~k&kofEG+AP{2)Yubb}-lFO&NDm4!0&vX9C}B!H6v z7tq@3kz33UlMevP62TCrkITj%moe2mS4j6d->G)#!6$W+CUmT-nx5P&u%4m@(KECi z*R$Ie^+B%)bV?EpVQ6XKj+leiJ=c^eP%R37bEDx!@zO|o2k&yN?d1FmEQHzVCW4^r zNuoI78KwMn{F;em*_dP*Q~zI)IiP;@i>6(U(EZoCrQUgtNl0 zQ>pm)6N+fmSZ6k2MZn9t;mbP8h)3r|^6tr=Vl~F>cR}Ci4Lj z;bk#D)$_vdt$`FP5fngL>B~Cs12!JinwJ*b=*3;Z=P8u$3YU%Y3Dy|hzD{x);iewK z|8xZgyCIgL5W=vUKHAYM#ul>F(~2_8*Bj*r2ipmbbzn zRAY%sjZEPyK@jdhtKq}sg0_$IPz=0eS&{E1vahqs9+O5POb77B;czmi%FTAzqb$G% zkmc4)u02mhtW8cgb6z*P#pRbG0#SHQB}UhKwiCrBUV?9ji-WWHcxzCgL085Qm0T%3bgmb2zz`1kg` zoQObM7#~*Y8nDI%W!s5x+bINGv;)0K2eDZEae+0e#1c5@2UX6@R%VJOjgEzuZ18T6 zEv8tzvc?F1HgFy^G2%HBE<1%dhh67W9yI7gRgA_{GuJ93%3k^|WE6_*#ipv^^`9}R zE|{n;P|jseJoUzttol-&m*ANa^?t2r*pd%{*F`|YUDm;~ZMxJ+hUx@+xbO*|nVgHD zH5enrd64>dC5T@t3Yriln{hS#SFCQeFz>XWyPi9~N;o&f>{mb6`;dN(egP3p{BobL zOBdEnOuJw(|E3BXW&2YhZqA>%_Yzu6k)HSx+EJ(c=jflq4xOivE*EK104cPzzYC_n zvxq%DHv*?T>lC_S*_{9F34aSp ze+c^k77}?UG#^tnQkzv_6t_f4KwXh9KRmd0=(0Ccn=M0)$z$45X@m4wPw&Y00{_=~ zM47WNCxg9ZaXF%>3BVmuHE(05_uUq5L1-dx>O0P|a9S{DL217O+LD9BW5gstmr@_k zMV@G$#`fZZY_sfF<}4R0{FttPenDyAlAI|w)lo1B&oDB#7CisKtXEa5m1&Dc8Mow( z-GFIFX&Sp~Ma1?UBDWJD{UH+cNGY#b<8wBzb~Iq%TKx}%{^xU~X8tBfv*S2(>z;_0 z3BYuE&JMwn7oMmJ9t|e>*T?QAN5^~c3`TVV&YmPE6VJi#rU3?(=T^1iV~a$uNUHU8 zhYYY9O;tT!ZL%Nn*v+0+Bu1g7mWx$dgpDx9zFNRv*8lf|uN)!QR6@=3K}sS!jq#7K||4Aap14t0-D?MWS~38?!M2CC!oPa6>uRt#M0ZPk^BB z6{b}I7iW!6Ek0Jb=|x|iE5fvn+#wfgts`a2uNuvEtbf8V1ta}I<07+|nu2G{QyM62 zIHTUW#wZi~!TPf~gOp4PhTH}nk6f{Jr;iM%Fy35ylJzgXU}R zq58xLXE_=v&Kj-p+1z#28s}cVd=A1-M7bG7y*ze!ad^9>&c{ZHQ~BZ@k`1j6+K`f- z1(*b7gja-ysYSh2Q*try_El=0&&I|mQ6@kJ6!msivX8pX5D*>=9OuDJFS06Z$^DFAK*6NX}1K(Lo`r^}HIzH2`=t=u(c%`_Z(0}eIOUHGN?_@KHAB|d{ zI6V^ zXj#Yq$I>+i)b;=URjXw#Tg$eM)zY$;ZM$XLwr+Oau&}IUyJg$Y+4uMSU-#T|Kli-x z(&bqpwi9Y#EBhYRgg^alD8xz|iN>W>3)}PpsA=bj$PB$(oA>w+x?!Ojg7TKF&aBQ) zkJ%fl$9p!q-g7ju_#K!FC*1U^0Nv91hl~q3q`U|5aEOkG(w4mmU!cLNI-P(?h`cdb*W%nvfEZAU$c#R$| z7AfcL+}E#IN>hi7SR^Z*tOxiriV26pJ~+4sU22hjFnr`T*j0|;voh^7Qr5oSx#_gN z&(>knQ(!5am$~#A<;@>eoFaus?(!4J?$6GrCqL&%sIW}+$gN-ZiP6R^e^;BCm@?&Q zLXVi!#zN7B`H4(=0W~lY{1Uo16VoDjpkRBMKd*eQ+v-|2E9&Hd@bHNE!e2LWjr=7~ z34+t;k;YHg8r;xVRI)L{(^fFC++RE1S;+2~2q5!Br4^3x_;KtU(OlPv@VSN+ znrY-$*_sZEyBP2HeYPJrL6Vc;7A}n{2_zDvl=m!3Rw93$J5?n3(~?(J>kC?Apy(k^ z#QniQLV_6$L{74wtR&QD83=h=9z!-ERG!n`@Z=$e)K?vyshXF#^g>{NLc|l;nqvDc zTo{ni0Hecb196+L&AhYd!_5tsQ^R{|>ZE@omucCwc+YTiz~*@qBsTe+&F>che^k=c z)DkBjx%0@c66+y-+TH(0mN$seH9xl|^pBj?@u3~1;5zLq15$jCdOQ2OW1_J>(sN7o z#*5qIQk7N|@IG^NCG&C~EZtqfp=J+YnvaU~x%f60kC%61OVg@F0GOkZ5nn=;cElhs z^3_2@EQIzKr))eue*4iT!fif=bKcRc~!CQ`(nvg#I6c!h(>rRxX(lOx(3;9cm9yVpzRoaiP~H7G&8 z0y|dpo6d%oK?2;IvZO$*%iPsJz{m4<#eLb&@_|JD?b~5nT>wJxsn+Co-Nc7_N&nSz-{7;f$%ec$4LEL_tmJKCn;G%0 zbU!A1Kf9GJ2F=cwk7{V90Mhl5wYM^!`4R3j#ur+{^$h0#SA`@_w~lu>Ba{w2#J@>k zD`Y!^5niJaymUuD??faLCF zdlA|{>NJs9npKSq2O3j3?#Nt}qcJVbUAGWHkGjo@!Tz+PY?_VNA$TXrM)wjNchRUt zEpJEK!AstO2Zw^3Wem-s&yd!LY;nmPv{bqN@NB=$ee!V-B(F%u^wB(dizY&JZuKfJEDcg$0c9VE!V?>-d2#ZoG+A=gNx**0JCzkAXd#irVS%8^rX<7@$p)8q` zIAm_V&>M1RB00|{DI><54Z>u;Qe`XobwV=sVNOVFMHku*_;j*yJD`JFW&ryZZ7#+H z?Jk!}zq-~@h|d}aX z{q1pp@oHJTc*mfF!^(&_6im!K84K^It9{>)j~6IorlV0Drl+2sq?U@Ub$R4zT%$(w z`58;12Hu`8Hc{)a@V6bRrBPA-{wuLTot3(}0VM1` z!Bn7)1>ckDAq^0XtZ_KCRAO@CQgQYRzhBOjhOTK6c>#i~`54J0f|Tse7A$H7K{~F5 z_5cR!MPutlR7^smdq+tql{oM+3%2SAI~$C}nqx!L<>s)jxg6W1``j_zIhGgpdky>z z-Yjhy`z7nYMUi_672{T6^Vadf)qPPHIqvvF(+zzRrO1(NKwT{^aSbP9r)X?_1Od=L z!EBD!u#w1Dg4p!$_MXu8QeU%%WUXjBS7yb?3FS{8KRLQ$QUTcPglX0yDs+5{k6T*d(CXpqAEUmNR<;lbS1t1cR^T|`VY|Afbzum z_GW7<4@4aWi#6l@IqvU)Oe3lt8f6*y>!uxx=x+pi#4*INpLs&+Tdv>aTnQ<22iL?M zka{MXgXDAX-zg4EFDjUC)U1BG0te`77Pm-7(S>YQf0g$!n3=lgN{mV{$LSb~fv&(4 z??%@PP4--_3Nqr4cJH?pL=x?Q;=beOH<27T5hRaF!>sVc@^xijeih|WUCbX^05b$& z4YKyL_%aq~ih)cLDn-ogNqr^h=lC_t&PUw2alz_@cn(rVmc@)2TiPV`<0SPGVctI7 zQ+i~d>vr(IX0VSSFplYk3=G=xR80@XfGlk6Z%S1q>%2$Fj5C#tB4-!1ec#+S*V|BW z0W}_3(x5GPw&+}Y(1aTX3?(XcMRPbY#;d=2XH z>EAv0?`=L18V}RT}Ht}1(*M+;G_+5%$K<2pJ`eCZX;KuzV zr#>h~eI`-SJXvvdy*JioAeP~3XYQ!CG@4(8%o1s?d-s1JN(S>31qGAg{nq=j*LD*aWk z0~D-wZoOTHDNPUQk&Z7aJavkIneB>!e$j+}5e@3~^hT8vjQSDyux6c%HhcK9wP&Ko z!THx8E-H+!Q>ZQ)+wC_10@yvEM5uXR{$VGpt@tyOzklPJe0($G_-lGXO!%XWD&1FEJ~yIL-PO(EhyCZ;0(MATs{G%H7d~bD&mtGi^RBxDvE!FXQL1yv6ZC zq@ANJZ0&@8Zby9PHO$gSMsf7iP*F^r_n&Nf#Ib!^<55l=h4nv*7nPxGtTyWVBBsCg z!T!O|Q8SC)@TWCv>U-Ad!Oa|f2s?7p&N6op)1~U%50)lYbJuc9gXZC}FJq6;ca!y^ zXTq&7imK<|J!3r7`1eoJ3_C;CGirE)XCH_MRM>&mGmq$%2=F(anVJf-GunO$RZQe! zjKqO_1$*8>SfDu`#oH2@!1dbii(YfX$fTpXdTr8LC+JGIE#68R?M|3P0aIV z1L#|b16?OfW)7GsCcBj|--k8LmOWGENOBT5s{V|`kR!yb1#__QtRBg+RhU-7!5J`MB`_uy#&+f0u1 zP!84z4|ZJ)=+zU{Y7-n@EF@D>C(AmJc8S^+-pq)2w@^&$(#`Gqt?XOWJBoZnz~Ya1?uwsMD?Bh zSH=1isHcaD4 zqD&vKP&shJ@E~h?>@Bwl>SbcAq!gnV_*Euk1jc5k#jMV5nPDrJM`E;i_Ta2Z)e_M_ zq{w_{f;s)W8}vW_@TMp*&1xM@?d;c&A0bQgHmibyOs}zIIB<*c0zf-NUXBAQtXkok zF0NS(Re=O!zmAR%DeLP%KLCvuGiRWj82>E3mq&>_n4TbcbP$7j2_ot{tZF_5Vyn zed2*>L$0Y+-yI(fIqa;;pgR&ZGY#DN>W4^fq|V~t~nO|W)bB9dejnr%AD z09Bc|Zj6S**K~7u;mE2wfo)(CutXf+<$Ry>Avb)>q)B}(J}-=Yc?7I39~GuNc2r9V z@mX7~k`225BQR|nhoYacc}_AYFXa2L`tsV&rW1-mAJi2EU=oIW8a)-VkZJx6?iW*J zM99@=y9}rqP5#2K>s%{z!UD&KZ^;(wSob9M@2`X zY*nz~4c15l?w)2z2Z9_)en|VL;H;-Vb+V+Sgq5oKS}SItb>&01Q56Jjwt<+>}iCs`i=K!bb@&USE`-Ex(hBMZN_C9Gi(S`|cJ1o(!4B@%&bK4Nc^ycx;h<#rg&H14BMhsJ5)Td>~;pz4-KRcI_Iy+IXNTD zEkzyCe_w-`Z&doJ`CWt6`9pp-G~u`5^lvui;ywISd>!z+@TyLsx-gE&BGvD@&N!G; z7(X7l`Qni|kbGT}!a&~34FuiTHUprTKTucZ8s(9OuE5sgD(QesgM2qpA22q5M{?Kq z^uUUbY@I4MM`9~&`oZJJ+{)E)CBVIK>~Mz?xcRratHjmdp{mlLj=8xuPtRsBn|^je zt^cV`80!%r*#UnDjEoIzMNVPPR6I_YbQhGN5rB??t5nNSA<^^^oYX+;`1q0K&6dun*{FdXW6qsg&a@WDQ%dfo6=KKz4V2t7ts_AZzTY5R~)JwP_6yYj- zL4V-YA&kQg(O86td?DT=$-gPF+|YcnjV0PX?j`g)KQ&Ey{tQepJ=&r&fRlm|Fiv5l+c<5an2~!b=!eV)10G=VXP( z&CM7fy|q7bz7n57O&tNkT4)}hkgS}GLkW4u5y&(0&!Wfe4w`g9u7Y}B>%d)Sn^j@z z*#QzWtwGa<-FY857wsJTq`1fwxqnDO6SF)}in5MwI&S;i)7@i8~%6J?g zY0FM&k3+^kuO`P_jo{i6|UL#=*@@TuI z&D4K{AR?4iZ+7b1ablJkH03TAMzYh6BA!C1;q7N8Pr|_-3+(0BWSTQzKHQ3evf9o` zC2ZUmg#k7#KElbM2nU(^?&GUP0P*{_7B|vJ9A;X=3YD{0%&Zaz(rPuIqznYPa1AE3 zpC>D`iy~agxT_u!s%-(rB?G4rKaQP^$JEXa;XpiAErT!m!Q#skJlsZqH_GBr0Kvu5S0sVM{_-HBF zHQGP`6OHbu3Q<~@dazG86;qI#3ru>6dSBszkVj9}7p7(89?}4v8Ec z$J)0XOuNt7=ub|2K&DdiBM`4zK1n4V!8b=yH>Ux;3Z8y@}}EvNLe z|L8~Gv}_E=yO)u)V7lWi7*(Mdku;{4x@LB9^%QYbEPux?%=S++Ei!plhcEz~Jbpv| z%-)kc>2u31?&%hHg&dT!~m?Fx{uIJqJ^!eJ{yL`3F-M5@Le^%?sC#HpYa z&Be7FkF4@Iq=f(}2V&57Y(O~?=}ijN;qTw_=}Z{<2CO0Ymn3ZKM|JbH{dE^Pk@Cmh zI(Y9n3+hkf+S<0ezQy1E>FYZDvlhTe`(yQCS}m>_`BfleYa}LS6$L(@6KoE@Y*)8p z0Xxkp1l%QP3h*nM=#!G@8*Rs|i_J+j*j6x_z%TVxP5qvqb62$tC~J#Z`Fg^$E8X6~ zK51p7xg7JdY{EXp;3X>u>y1OFrStkiggGs0NjuF=1l)gN7O$gloTddKQEDjvcY%?;#54{Y^$IyQmd|`FcvzzDh57ui5zOKG{Nq4g1uG!>w{D4W;m^>Ma0#wx z+mMrVL1MhV^(Ee`W4HWeNAGt%*Hmo--Tl~T*;SDfBn3iz)&-!XYy+dfMR#}a-wcCg zWP==w8T0vCQ0GD_$6GH)a!X4LI*Z0SizL|fRn$BJXEC|{YKl!3^2jy35>x?)phaNq zU=}dygIT(;??)QO70=LCy56I2-Rm#)fPJCDlfC!+lb{3sntlNX>> z>zU@m8*AP6-p^|^=tDhA3JP5^axeW4M`vF&W?v*hnpQ!lU7w&jip4BD;@NZk^7}_? zv|VqPfE!C?87Hu+q^Q+j9?f>C{{+61TkbF+NC5`#&u!;!etqJT)RY@dS^08VWi4`< zWN19m*m`?-+>9$7@Cd-;lgUPJjf#L$Lwxm}PKF!plZ>JDz{wAJ?5JQ5rH+xH;HkL( z9fv)PKN94R^9yL+SkaIDR}ODHr%|VTaWAl~UEQ!Yf-^tOsIKQqf2-e1$YIvZ$$Naz z{!uslqs~BsKUZNY_;W8%gDsGz)3dX(q2`Q+2s+T!v$>VZGFFyNzb&$2h*t2b{QB^5 zbns^=?xbag+{1l0*Va>;Ij5eg+<5+6@QVGvxdA4K0g5zT*S(rFg;=W=?oef;IiMPM z&QmzbQF(lhfqBuCd65;dt9ynPKEmD!j#e=C5#CTRka6R2(^_DF!$|Po(s`zK76o{6 zQtU)}IK_HWlrCOHFCVD`)^SG7Y}({Kkm`33rvt-sM?*kfACJ9#+q)*d_K9iyjsYYN zVnd5{Cay2Kz8``Q0N@H`IPrV?!`r7Z`ur!$M(ZP5aiFVx8%M2^5a$;-+hb6n&UdW} z4k&T8sp4u#^u^9q*n*XLfLJ%dJ1Y*>)=`?ZEawkp*jzN-TqNVZo7|$G zxwn6?#%gUkLm`e4RJ{$)6HvEez93BA1J||C~M1YagR=pvz}vj^&%<3{&F` zLyI0DR#p@*Tf6-);eRs7M~}z6$R{oc$R%7J@fwNMNd6}xBdH%HsTT`-aR;(D<(caD zg9!j>7=_Bj07XaV-mEUjI}FJK6B8H!2252JNipAEef$89Q3g-1SK@1P(6P0^S@3N` zr$}}zDc8(>3kg*st5pBw9#w&@R6q2`s`?S~rGR+dka$9}t+OkK5cy72@;dK3g5~OL zVl>t}o`!RijixZw-}kEA04MQ~vt=A=-nx-Znn-SmYOjcv>MiCHjh>FAceDc6RlgHl zssp&ED%V95bR`oA8OhIbT~nc=bs{j53k)kR_S4dwn<<5=8$b=p?sE=J>Nz2u+Sp51 zNcNiQT&)Cex%5K(0)7HMVF+Cj-<-2X2hC^M`vi>ju(M5WT~7awwzkQih%|y5fWW5U z!7tZ14i4`ig2X=bBVmpB-pK*;t`vf<77`jxJ%Avo!^fgH9x)vtBR%uONcF&kZmob= zapDs^5hbt!xhRdT*M8PiXJo@y$MkC0aJ8FF7{wxQdts(% zybRmjV$agvpy#V}q(I`B&7{M!`!(2pmHxYR$NnA6oj3yTd0)5fYJSczU(V{}TLZd$ z);I%`vkv6&BS|;9Q7(uQrI|O)6OF-4RDyWDn5CnDv{z@e>##alsCNxk_9xmL8lLoy zDAF^jt+`XF4W7r(fvi~w^g@s>P!tUKR;sf({V>c`pf~|IM72}D?yy1!38?(b$}qpr z2CHMnLz)bYP2r_dA}HNow&cn!w`>wU06&y_XV{E7Jx@0A`%U<(D)-E+ZB#f)!(PMh z{c@*-*M$@YivcxIqN#7XrGal|dTg4>Kj7*i+Vo;6D)GQ9OUy&dm8O}!-ERC;~6iuvuaI0Zo~~r*YzZ8>8h-&56!WSFxK88&Dqc>Z(YYm#9L(*Za3~{F6}dXXi_q z!L?TP=c5eQWfxg0bt7 zOWZ0ES>@NwAqQB+6`qy)5i z(!XqN;%7>BCap2baBH+GRqRICmH+A1@{2?mz1<(&S9E`1^BoUqLsQrs4{Dw->BT3t zpI^K0`k%CU%D|k;0XQDV9uh)w(=hBbDphuuPvEd-(l0Woly`3dVk7vcIv0VQlZB>b z&8QZ~>iE96$7)_1%VbreL9AtVTpPTCk~fDR3VO}438RDi%(g0WelYVM1lX1csh=&2 zH!@GxdJ{N}zRE^9doB^*W8>Ht!Xpk`iG7e!{hc3CGpJsKP>c6d{pZgXSM}y*K*YjX zC@CxK>{;xKPq_=~)sah$iFebb3{|PqLMZ=!K3vlel)uanpu$ib^> zOo>duY1=wwm-mG!OTgto> z7M2hZD}c^6g0!*0aV0;mF&-Ib+7TAJBM^a6<(ZAOQ98uhj}#ZMsM>Tv%QU(0(l~R| zXg7oDeN}<1lxwWrhW{XqQMSi#=sEHdUxPX?72ViSra8MTx+72G8T6Z^zE>q}zhL1x z|4UHli5-33QaYPe>d)qt3E6VVbdOVSQbZcp1mkA{#6((#L!KCNQLU=V<^wLKn4iHZ zL+ph0;LopY_#t>KddX3GP4@rB_3Zq7@@*h-VhE%IXxcDKGGHdYNT{zDytW%Voq8Y1 zen*zrUrACRd2rx^+*8~IS3ucTRgd&7ibgXQN=k9xH1lS25XbC=iu_3a9?Px3 z9dl$Ms&ZDCoM|~=+as2`mEV`#*Q23jCyvQ8y6NKL>abYbAV_qT*p*7yof?8kpzpM5 z2-GO|ff!_RMK?z*N43o$4BG8)dWp>;;|(rIU+ckuLSrLXv3yR{Vp%(H+C=dX6@`V7 zh;p_%xf0|uvu2ui?Yb5v@OX!2+;m)luo27DJgXmVq)KHH%XDogq z?dI%&ZL;{V_L&U4olGMKS4vaiX2>XX2u6- zSDwln@>2qN@EI&AlZO25zKf*zkw?IOoJEh4_%DDMm^*542|NRGTL{Hd3Ih1&>i-sX zFfej+t$1+wCZN)!kWd~@O_xpCwpUlU9kA{_n=_FjG zEiq?yH0R?@{;)DnrO~@JYZIFP&(-_UM>2ruYwi8hjs%fNVVG8%Xn?K^W3T3oCejZ3 zo^3{;W3Yed_hs^$-3)@IoY~4O!e`$n?hsUP6B$3e+A7o-T%m2d;@rU!S;qX@h|vv=dX-r0jtgL+x}!tVaS z|0Oj^PE{S|um}fe!Y$fE<7T^m<5#QKAuaL}R#jWekS#R(pBJ5H$|vhb@rJkf<6P~2 z?=n#Avn5DumAEhxMKGt#-L~4%l==UMvpEOr9;)u41dkbpTZR*YVq?`fY;-IKQXt!z zYjQGd1q7a0!It|8YN!++}1vnYt;b4{uiwa2@SSv$Xku1=Q%j?+$&SJoK4$H9%qH!R8(AG3EoUiGCPZuPV{|197FVvYWz&VTL|Xc#_p z&?BTC0vw^=5|GwpzgxMgY&EZqbtoF*4H3_@1gZ)sNI97^WZ55IX&2U%yr6vw$aZuZ z-)BI@VTDBu;+>=lqmhJe1N~C5n$e7xTZxWG%Xu=5em|fVxcwKBalvH#fQ|Yte>Hqu zxk;J>qtqq$Yr(CTS8qqPgp@FfUCrTN_>SFx4@BGf&7H&Q&)>g!gq6@3kZC^tUTLJM z=eVy_bKB)uOj2k02mH7svKRz@bNBQU@(%8TR6XFJwH;q-vlOh)6pZCd7oWVWU^!07 z@6xP7^aLg`_Z$(!z_>L2)KX5x;LJP4e0M$7@bMib^pVcf9sm30SLAsvZ;-|c zCS_VS+iDhBu|iru2#2jfncf5a1(Z#?bu zV}N?ez#70EO11OLO_LP8=G5NCT*S^^HbZZ~9GDFGo2onbHNUymX<-4J^wgFO)|#ge ze*e2LTB8yDd*>D>qCkT=vmWIH4NCt#xqq{(-yIOYa={(gg_VEq{SdkeT^K~5_G7qN z&aypUo5CVI7ez`*3?)FFu#asV#rT1C8_=r*u@^Oas$DY+gi4$harH`ED7cmC+Wlyf~!X89NXsEP5*tm7K94(MwKAl8Day!25`&f)tc^!g9VmlR!(&HCMUT8)7pM zQsqedx?$eO9xQ-!#9r%6(GA$K4H9X~7c2AJ34q zWRkRm#{0T3NK}7V7?cwVpLY4eu`)M);=}v4{;o~!N?5}SQL?)6pXLTKO&2DOuxHxO zhX7zWN~F+O1!!T~%XdOfNzv3_lxyANAoNV&yV|CaojL#WDqjHRx|rJXdru~mA*BE@ zoPQpVZfBe2FJ=Af09&|br+)*DR|QD^wGHLLQFMF-W$TB2Lz38Jlqv57GkybdTDqNS zY`FX1zpWJou^2UKGBa!ntOq}xsg40t*J2KfnH0UtdJh>B?T{-pcVRROmllWY2Lo@P zNmCb0bSMyzPhx8aF~JBm5wm#I5jauAOoBN&SS4v-zSCt%{R~wxD6E3Zmh5GjW7{*v z*f$nad)TqjV{k*g#i%va!TpT^=;Z%K(xYPzHa^?nd|D)(s zGX=$-F1jquNA?GMBeOdG0^g^O+pP&0osLl#s?L*l+B4wEdqJ6t<_mo{d*3r4u`wR>Aiv)P?Ee%Pnxe9% zx6XeP784J+O!T=v7?)Z9rOW^0@m?#`5ndyS6<@d9hCcI%Ml>O2(8OPhb0RFmqbIC?fd$*BcL!K{>kPZF8}z+$&g4f5S4-J6P1udxWp_d4H?y zx7UL4)MCf+1~9Db0inf3<1oJj!D{!3e%FZ8Qe{C%6%iLV$L4@E68K1J{6{NZ)$;22 zQ?aV-wJ#KBNX2-EnRQYjou){al?cc*tKqEO`_}Zyd$E{Q3hr9<@U|5OT^4|D!DFT& z{Vi({cJ=H!maGqKh<E2;TAb z4dS}GqN0xLi(n5(=aZe#uSHF8HxR-{!H$cLC*GUrjY>mTrmr?tj%?8&d7Pms)bRiS zb@^|i<2q~vXV*-9-z*dFQq{)YtLd#BpY$zlk_YRcQRG5GVJ?qpzs zv-zd^4QPPu!Jb=8IuQ2Jfg*6USF_FgM0@&Mvr}}3^@Jr4bOm5Anq-|@RmjXQq-6Kp z@JYmmQT(Y3OKVFiC$RD$b53?at98YHyKZd?xektSSyrIWKQ*->MA%!S#RhGQHp{ajsOvldlg-fWQx zLBi|$Z@KORmTPg*b3P40ap(_-DY4l$nTA}`dI8#&C2`+Bwp9l^aOh#eIBPL{&TO$S z80Y?jj#4)soE5gWb7IcxZP@s1+CW?=N7F;2@1iv>Q^<+DH&s#m&;?Cw6B3*9YyWi% zQRKKX|4jTR9riS-$NI0~z)B(~-JVf9Oc-EHX*R_%hjU)H_>KqI69T@ke^K^Y&ZKnC z6hyH>m>~gF^Ju?(9@!PvB9FDSpp&uputXbiNwpv|?_c}iP|-MU5R)(^jI?mR6j~m! z=1J6SgMkr$GU}Y(VC-3MoqPoTC~t0YI;mjchN*YS+wW-&?-N}2V}&KHd=sn8@mjAZ zr;&hc-1Qrf8_5^`Nw_{Nqek?*oY`RB8t+^Gb<`uRH*JikSuum1Cc884BM(Klne@-! z=;mV@Z%)ky6Rn#5&L{!Xh7UG7X@av(kF2XfgSxhIVBptvd>#U)N9kH4_!$yD7 z_$CF-2$yGw;}n#ZXEOB2mwCo^yXdx1+nrV8Ie4zB_z!Z(7AY1h0K^V-L9_b6q!W=|Ur*YhofRtKs=^vK?@9e}=A8juW-qCSaoMay&nWQCzd>XY*xq9TBQ#!#cJ*Jy z(;3~h`kF6}>*vnA1-y7Ix!ClPe=${}D_+zCcHJCEbN-wC|BM1>~{7lC{NfoFFLnEjH}2J}{U)$^L%a-?Y7&qk&MywM+WsXlm8NZe6wy zo@qk05;#1Z+`1B}dGBC2Iu*qRHBR1U15QB#_Y9NQm~83f%a<*MoKFt6;0Gv2h~o@f5)>+_i9;4nZce`ga^)^JIIn4Hqk&LEsmKqJ3 z)db&ct3nesA1j{j%z$FBqOFE;jQDKX-!&6DM)6OM;A@%5*?EnZs|IV|K&@wTBA!Q6 zqoo3Hj$`9tHImzXoe|WeZcW({awi$Od_|v9byXLTS-ii2%MFjQazJc3p!j`xVrGU= z^mDogROF>Cl$?kDn;Y z(uBfRjz;cLjGwxQZB_4{Hv2yXxn%-BhY+JgTh1Q_p#LJql{j&j8+Rz5c+P>6sYJax z*G7Yz3ksHUcd!9iT+~_&`ip3Q8_m5F4iUB z#vTkFaU#@8^V@M_-|KAnCcq`>-IwlpmoI~l`XjTS#<|Y>2XU6I;G?iyu8g``Ae4zR zY2T$!S!^Lz;(po)*AgPP{}il2wW)jA1mn)6^NnQxJmM2rq-_QaoZjP$oFpr>U08h# zv}Chi%mzt6|D8ttS6G{8!+(lu5hj1CGbv{?F2hH4VFKGZPT(XdKC6kaoN?B5Wk~&9 znJ?vr|CS%A9{ma@S$mM&^Ja{291`UMRexr3|8cwv)wRwWQ5zRS^w~9srQ9!CUnupo z%dMGWu`|LK0Cd1?Pe{_;so4aKLGX^+q$5A3SsHgHS4JDD$Pcf}y-zH6OY<0f4bh=G zV-|lWm1Cih8twU4dM^#nq?P5x$6=XeA|uIw51bmFS;k@QP|YIM=a3DRjtd$e7|IA( zRgl9*QeWluL`2~@Jc6mfzQ2h1K5vWI$XiLXtVlB#}+FTezs?^kRLt zW&Lg&m&9aGk06^jZuIzG)6`($NU$(*qd%M`QFYe()t^{+aVwh7lnbOerj=Y=nIxM& zq9~(#|MpA@Ckz?q9)q{LXrLb1D@!(+|Dj{w$zxv^Vn+?-5)wmDVf5t#n0Ecvs`!SF zfsW~Q`lBXva@jX%G%2EZa(#I_@cu&S;rj?aBiYuy|4!lbOa~JXJBanE1~I+Tr=0N=(1-$Ikcf^~M@2z~^A%nydRFtGP@jdn#(E zhN0*8Z7a2es^eAL{TSzR9?j!;&)JubE-#^Z`#}O?v`%kjKK={a0YylkzT3`7L>zzf zGOqtffIeo8cKFCgVzd>s@KcJ1D~nI06z;<&R=N@wB{n3nSbq#9@DI~_9qWUOW6)#? z(~EQ5&V{p3gYF>3$FOi3jE@vT@9VRF>8od}$uwhZDo+cf@Y+N+d|tm``0N@*eKPd< z?%N-tFauR-%n)x~eGX)l1o{ictpipDa(hor%rfBOK?G4nznuRP+n{ zVDy8I>Ifk*j-oR-G$Sk&Z#RG89x#pU?|110Ksu0E5p;K~S;p5LdM|ecOtb*MLS*H3 zH*kV!flhx6T;Mp&9*-hxAvPAHV-^;2K5)luB@!j@v+JZxu@H_!pk z_aT*!2liS8S_(+$JXe@+%BYkCg?Zyq>pT1vrqEuvbk( zj?~wc!M6@DDwPOHM;-Uuiq7~*6XE5b3?;cb#nTALxyx$O4X|}Y$`^829|WjIG^j># z8zT5l)?$o7KQMMVXYwa*^wBg=PEjKRK6BeF1Ii7j=>NlyatG7_tgyzM> z{wEy;8ER4ITH!zyb(T)x@^fK_nuc_VDwCn-irR2W(l@9q+9FkSU4NE+>Crly*$qd{!d5#{sui%dN#0D6 z3Gn;xV4-z{A<%>F_mm{D9cUP)6RuIC-=-Ua7hDmT8qt^S@w|P2PdnOB*7AG>QAN+ zNP8znsj{3Ce&?3Z$u~U;djl-f-#kpvlwySe!md<1 zy=e}#E?!S@hC$1XuJL4`O{|V6iqyGM;eTN9H>NAL;_T!zraoBteQ?D{4Jc&(!X$8W z@+N#q=%3lrIIHQyK`+zzGB0tgX|)>8Bew?RAPHW=d4KSBD@RV`rZNa$j8o&`)TMAW zj^8V@f{7c0emZ#W0&inD)Yf#byBaM$^}At$lw=d**DsNr9ju?E7p1Wk77CQ(&?sz% zx8`qbW!Wvdt3xqQAFF##KGxjf#b`v16bXn=OUAfAbuyLAG6(fD*wdW{s_L>)#GhbL z+1W0PZl@S3@+IBjx&HUJlGBo|?zB1exWe^V4=IFr>J)a!ZH%LhF&GgF7%6*5S@zc7 zDCBm7_SZ&7x7z6c@YayV>O&egMnvJd?F=07Vj+=VV09e_{x(FCt&}iEFx2=OGS z`*qf##(8)naD_+>Hs)TdRwj#BvZ7uWYLdaH2q0@AM;Sro?%1a;BehLHqy zS?9g}tfc#w4T@end=W)HdoO0iv#`Ab;E10`+r}D;KsQ@N`(zyt^(L4^XTTCfTf}Av zmt%o-$HjnSLG{7U=ZWJ39q{x(GVir$|5yAPYopB#A{#ICiAm07^ul(o6Jj06>~zTL z>21oR=;!v6|B}IZAy`?H&o7c$y{Ioe_rjucvQ=rPDw+&BIwBNqEt2xfq3^@wZZAq& z*HV@^`S>yNea02NN*Yq(dN3pxs|VsUpAI%w&{^YeDKi#mv+Z5h=%fCQ-b$k7_G^Ci zaM|AI4ebX?U{#oWbAM9xxzLD638Dx#j+jnbm~5u2M9*0T{-=MYuV67aZKRG zHpN*b*Di3;gJI?}>d6GM!IY{JH?fT5wv@fGR$AFNkRG+7cEj5Oru6v->FQTTn9yaVMulxiH5+)yH#kwIO9gXr;GvjVmlIIi2@)y)a z900HXX>s{rpNR3UqRDVl*uY<5R6W z)Gc>*ViLpj3d`4Yig5deK(;~<8a(Qi?jBnNKW@?;mL!Nw5)?KX-)PZMTOHBMd$ofSK5I zS1$(#abt_DYwP6EZdbzd91l9b31*F=iG~@*%Pz%FTs`a&qBK%JcF{jc6&r(v`iC$r zTm#UXr_}$iuD5_{tNHdofnvoV-HSUEio3f*aF-&5QrxY$yR>+5DOR9J ziU#MM?|;{Q_uX&Zm#pNhm6bi`%${xY+k0jRW^^JhzvZUb4O;(K9J$HN7a8w*14y>hn^_6lY$3prp!RuuWmad>S=sRHax1gp> zv{@G~>()-w#r;V^cjmrc)`8bKBJ70tUR^A%p0OF0T`?Mf80pETX_#RhpZYJEh%Kb2 z;f+ki)}IBSMsk)bpD!hccoE#ALQ_G=-4Pmppc=N9E-FZ(MickoQ0GUnL9WeVDR4I| zww@^lJkrrW!8#RcVH7=XL6IyU|JEHx^t!Y(zoX@x7s~J5i z4jBqg8D+zR+5xLJ!aM}TcbF>Ef#iNv9GLs>q&8!S9=9YdR)c!SB(s8Pw^>=#Wm(km zAN8dCneJC`rPv#B-yB55BRDdiI@PeWwYP0=yTKx?ap0OJgyse`pPB;bMU?r zhpCD00 zb25V(4dM!dg?hG@;t-5gkyYM0glxoE45v{6J2~NO{v0vsN9txe{|1bapm_vEL;s?1 z(KSu@hC>M9U8|E-2eaap`Us9Lr}j(_z|sZilZV{1F&tMVF=>BJuxkXbjnv~nAh#*m zx=Hcxj`gcfJ9Jv+3nCXTmNV9ey4V}DsE5B-&WO=Ezm>OdEcKlCzBEOilE+=kKy)d! z>-+x`K@oV4Vwh|>>zvR^4f2`rK0nRMkf=WS9#zRIhsAO=41PSdLx>$=N;IQm!uK5n z3GPBok7W^}4Szv>4F!m;EmJG7eXSk#vAol6L%gtugLL_jGZ;FzJjyhe0tT`Db|a(U zUL5|^sDwD=&srP$@sQl#f7!bIbZ?CaKeKjD0IsbQBz~MsP03bUYIiFYMV&AxIjW=> zw|efcDeGPAWL8El3d~3#XGLS^TmbrU55>5aLs2a~PsRaVN?`h=+Uou}46nfULONwW zoMJ|oGdQON!wCQ5-}sIpj!O_ep}bh(AQJKZjCR-7jgvXlZh_Eoqt|~~t?h+gp zF;5q67zZ|VVB{+@!_Ah(BvnpCaJT!gy12BodXNe)jg= zpL1Pyss|WuoA_sIS2ja1Yczt1YhwR;o#aVi$p1p!ujK?7LIyay+B05(3Ht;_;%5&l zDQYm0h@!1xV{e(Z^`aF}M5G4Y#I}9t!w4iy>H5wtKHJ1GU;gy?WMk=0pMHB^*m_n| zmm=3_`c9{i>zyo?yBMkhYbr@7J1_XRTCS&awMBf4WWM92+i}&=1Q$^ylcFKZ<_AeH z6&7oT?<%_bOzNLd!6E|GRF>G9RwCf-=R{N{#a@iYWZLeCG#tH22>paN zhQCDgugr3aJPhJYhF-K>I*X4Q^lL{!Lvga|ZVW}zse=h|qJyskx$WnMUw?`65WJ@v z@6V_>CvGT|a|2m)4cWbudTv!~PwI3cVB{Y5& z_DE;eln~a|9+X2X$rPQupK{eF36=Yh!mY`!JV_r~6s3FKeVx`}oY6$g6f3<92!2lj zYn(fj_%QhL+}r=o!~6N{);*LpBZ;ckDyf6mHklB`mM5aq;rG%=DNTY?GHYG+~`r#yM_PmOZ`&PSa1(Z0(BRm?Bn_I`+G)Al?8 z(v1yrqDT(!rrIb_dS!0f)^`?58Odw>v8sX1nfK%wkN4=%kBj)%dx?Zj96F5Epx{*1 zY{q9=U_9BtsDfaMh&6oVBrx*t#g;HkRt<;q?W5s$njVUKu(KKw^McM}MS#0TQGg?L zSxi1yKJ|a6cA|-#+=+s-WMGAD-63*Tem(9HKy06x8&_5NvV5hlBx8HB*fhT8<|crK zd%+``_zdm6-jVj5U3j`J<||4FrI0zosT0#;A8tb(jd^lYE&r*~h{<@bsBO)1lV_`s z)6RBOz;kbOL}Lo3onla2K^<$ZZyf)XT=?1j>FwgkWsqf_manHvXXVB5QsntzK}f(& zq2IV|OWVlKI4SN<*bFU`l8XLrGsg+1`3gjR6xIPh44OEvwOHW~oRpj$Z?iE#nem6> z1cZzeVr_j%F$CP2Aw)(PZ}nb6)k?ty$Q{0rpo0njuOT%DOLrcQlVo;;;RfFog zR9u=d1a(76aZ{r({D+A@K)V6%* z-j0#jH;r5FT#BU4CFWDQj--DZ*mIe%)syaLRxj6AlIq8v0czLx=gO4?aZxJz&b$a1 z^O|v6%c-YRin~nIcfGypk&+;4jsI?J}(QH`DH&JefGHSNWpVLn`CMw+8>@ zOCIq;gS8%d@Kj{h7X0zla3c)_%o?_n9pt(e(V?{g=q}0D|RowM4!J=rJj6#|ZwCGp+upZYk;{*jBbs1#)K^x z{SgB>)UJJl&i@tDn^?*kxQ%wM#=@sxj!*fxLq7#CT5LL+@Rh9A%%jfQ_&e$Z!&bE0 z@`1jsfX(fbh^bV)?JJ6g`2%lB+8U_x7ADb!d0j*i*Oz&P>DtcbuIRRco`{r6ZswPD zi*g#cw6&Zoq>9JuKore#QK}uT#Kd4R0{%exKZ_sk-a9{qAKz8SZn<_b`ufMLebmm% zt((y-=A#ynTjiPU5N;A%-|_#9`C?VZ7PxzsksF+%b}Ti~aehoGjIE^siL(B8!;C~OIU7Gt< zvx)Wh1s!3g!6k|1wVm<3Ce3)CF~1Yf&=i)jENi(e0FToE;%wIaV*|$|gez>aC*(&g z^SSUyy{6kLgj5x}5_{`-IZN5p7LEabT>&XKOYMI4a=Le0UQ8fPX_+tOu}^0EEQejA zu>FX|eSCIA$jVOWBaP0O_WH{rdty30_@Bog8TPd9+%cMT9s(esY-M9nI zG%t8MV|0^Sy;$xh*#SkTIIWi0Ud&Y-rqJYC)QF*TnndJRHei&cvc;LOTLD@3G}Szddxtjs|Ys zKA+4s6Z_D=6<$RgmqoY!?aT5+myKj@)9+^MpJm!OmwTnq>gmC;ml#XEamsVj z7}RY1Z%j>^&A1~2{s%L?$#{atLw37xxbo zPMfgg3@>7Jo<7|3aQNnd_pu^-#s_u9W(&y%5_`S%RXVDNpG16(>|vsW1ndHd4;1!) zeZfg0v7O=F|7*E~1mZzG6)2o% zU0+@qKeR*i)XdMq5crm!wd7&{&=2ad-x2dNblW0)C?L#anTI}wZ`M*MX<tiInGEJg(}a@v4RTB${(@;h(z zJ)dCF{Z6B6EM&>i`_P^jV30(y2xex`&6A(Dt;QG!97s~+E%q&1H!nX4`+ATp5s zu#5K+@YM5mHYJs5F*>F>vB5wCi=Gi1J$5QP+yPSD_sIdqCbde1AqFzV_Z!v_LCEbJ zbEg+BuA!*BMN~Pw+k>pG+dGHn?d((@xX7`>2|Xj(WoCrVdUYBVoIa>URtm1`xTFp% z(EMidy@&G#_IzDjN%Qp9wO?3>C-(e|vESJ6b^Wucr?Er6m&D(EjP<{87cw%dui4Gv z4~#yeinA9NZ^|m76V^;QA~au?8ElX?_wl`NO;N^Dr`7AjUrkh;&v!&~z*MQ24mUVL z)p&h-nxd$Xol1Md`noZm@gpnifqM2EA_bzA$sMXPq7HN-Bna?gp*HxZue?ky$CyGAlu*P)RAEy(Y-KH6`W+k z1I&+cEEKs#E>yMD1ntI0d)Ab^Cl{I5d6f{Dc(5LZN>TLuvon&T4b##d3u(-M3oU@q|b-tjFSRPrX8|WPI}y zu<>-#;kuyOoOCJPm&kpe5JuPum0JvUlWEO7ob*$*$u%B@&x@+i>-SkL7vxf32eRV* zsRx6NtDxvlOD3LCkR^KDAyL8*Qur`@@-!x7w&iH9R^e3eyK1rne*Z2lh5gxC1yquG zJ3-VGE{*Vri|i`U&PF?jS!=F(*Tlv8j=RQ8NpIn^#JXj9|u9 zn#XNneCyU1x!P3TZayZ>?U=}GZndNdLD{Z%`^k1y#nJS;D(Jl>U_vmb31e!&F*Q)L zr(V>AxR6H1gnWidLzb`~yzA4NrftR;<8(MuiDtgKm@A50R+ekI@HXQ^?my?|E6m*qG>S^1m-wM3Gk|$S^+~hgC(03{) zf*CA$8(nd#llH3y#d3_RO-sON*kVMaJZ55j=CM$y!FB8hGe+-fol^y%JzN~Rt+Z?dj8YF0f zgyUL!duk4%bI}N0YazyTw_usJX5r5te<=nnFhOZNJS^zU>i(S~FOQVL9tY}9yo18e zuGsmX17g_ij@0RStIR5~FaWbnE>rU#op6{e}5=QJ-Un$W@H-hdinFv zj6h%d1c(^@A-1*Aji-tCJ)UyB%wvGLj7oSP?$~F=~>r*J-M6{E$uR2!=_Oy@zacolrKTPF}c_HTstb><;q`RQ`e~}3|=61 z81#8>^Se{#lY%iEct%PHL|nGhYqE}!{Q1Do^I@^RfG)5j>I)0(Ov zMhkGARFj1FVnoYm0^6Vd0qxjuTY{+x+tNr+pj+gv8K}46{)K&?LIV8w%-DxZq3d)* zV=tMO@G3T>vAQ7JEoH%2Cs1<=D6R0J;FTJKLt|Y;0hv5Q$_FElLBgUj41s05-y728 z?U44C=lzkV$J9=J^bf^y!ueVnkK(Ie6d(VzjFV0Fb2Y7pG4lCmZ{nLq>%ae6MVNjF zHvdkc-m6En{~|w!Nsl|hRj3;<#0uVV8xw<3lrnaaXR zfWyBazt=!i{>xqJYCPuN2Dn*`ykFz7mWUrR{7n{ucj-qi$;=#QXPY8q;h@CRXzuRg zCjp}=G)Botj(J2dAxVb3y zz&r9p)hO2tNaz6(1McCwN{6jaE40gT0ds%)ujCQgq}Y2XAL!z3PT|bVG3)ni2#uX@ z6oSHmfZg~>q=DvA%HISBCi+=rkxNqIwT*(S`u>-?EuPs`KcCTtK`K3TvF%D0w zYTL;X1q{A|@(+LYj&;U?>4C2KkCw6=oV7D{$y?L;FJB9UI*%m0eH%vQQn%c^=$KNy zEKm-jSGvh3^D|55Ch#v0EO##sy@iC|w_gWwI@3S2zYP?R-WhXWJ@S*>Yq*gPLm(Xt zACs%SCkzv#B0=^A*RbC-=+JlU+_cq-a}SRE`Rg;=hp?yc*Rh*a)V{@TJYlhri$=Dn zTUI0J#!7EEUHy_@WCdI*yhwNM6+rnG#`q%(_0rmer5naLfSvCP04}nORHvQqx$keH zYB|eX9!)IK%A_pYV~!DoR}fW78y1m4mtnZ}2n$i{za#txt~~252a@z1T^vg}NDedW zBQ9To4ylqZC0VJEgX;iqS^Ozuf{%EmC^r6C=!`S<0W9>c=Tk42A#v>$d8(l%-XuM7 z{DcDD6S}xO-k&X1bLi-;81mo!(}xcx^q5c@Vfjl#n@u#1_%rQ_9{77U@5M~mgfH%` zo9u&Lc2PkT>w^#U=0fZewjU_M*p)^gPQ9ey{2;9F@U%r6Em*BubiRePf0MI$ABR^0xEdyFhNJ_zH8@K16a7SVonm8+&{cFK940DSz zwHdQTgp2#+v#3`M=Pr2((lM#ky;x%9k_Qk$e;BMm1ILS&c0JwqjH6m1pFH3CBO57D z`f~dk>?AE{xi0RHlR7{2cd$jV{kddRkx9BG3>21n@TK0qx#+w{#H+31irRtsKxoKl z3Kv_1QmY<6?8G`{RdGkRS-nmBIpE$|m8m7viI;vzx4rd(b6lQ1-*SRQLXI5?w!oHn zv~l4z|9ca2v9x+Ps;!0XRoPp%jDFn!LH^7unsgD_-;Ce&X2%JAMWinMsWI*@{Czj_ zpRX=`XljKeLGUu9L} zGr3N8_^#XD&GKw14Ha73uIY@4QY?##A%;+j;ORX02pdx8z2^M8z2i+Z_v=M5cK8J~ zDIwmW4a+pp=roi&QR>dvYagarMl4PX>@k-;Oko{|aU~WoUyWh)49c+YtR!EiSC+xO z$w0s01dl+HI~LbX?n@`iS^g@x#_fDv(Gt<6_V3Oo4p>UaQ_ZsM6J?sxHWmn%mk-_C zR-}Y*3E`3Xty75_*H~_1hjQ4Wf#Ccx2IHI=*cUTAb2R7T*F++$tydF~0xl_4F|7Wc zaW}_uv?o{YLJv#nVQ3(!*aWGMe*1RB?hC3yhE81Y$D))~IM7#Gq7TbO@)$8ocppV% zXuW8)uYK#n7_SL`uMXGA3;Y(~ou_`sFPwhj3OdzJEuEgxEQY zzWZaTM7M6?MyhTy%9W1h(efF+r+{{!FrfQsSUGgV?lD_u-pz z?5l$rtxc`8FSPl{L4C+JBt8@abVDvJ)pR z*I=@8G}s)doOv?&JNnBAYE=!c0pf>ddT>o7`s&unj(hhpbriZ;D>L=Boj_gPpBN zx|y$g7p$$lrwIV1)lzYbxM6~wqFuSFutwF^Dng{dTsTz$Q3xwjR~4&BjL|LSsjt9= z_#g5Oma1)_|3d$iNC|GYMe43>J?^h%h0YRy&?fj3On_4h`KNhoIO&}-?5mV>hHp@8 zRto#7B2_W5Urb2p07fO2)og|y+#U%9C@);QMW(*wTjmph<;jrfjsrOJc~#*Yiuirg zlV{x=*yAk=^|)N|suweEdpq$wvf?BLLhbb6j>y*at;YsYm?-B@ijYoWIi6V(pUZ;r z@)P)FTc72!wUwW@;WzSpQlv_8*2*kbz*Q;^reV8uOS8iKbgP*H+WDWzw9z|tWYyU= z#~9|?U=yTb4J>x11bP6LND3Wopdt14&aYfl=7t`@MjoYay z&w1>gw|nidvCQ=#9Mw0%UQhBk{r(c{pZqwyVeM0Ui%zlDvX9d0Ok2U~CF!9Y#c)eZ zOFob#-=ONVAN(OUV^X0zVQ2rxsPx)8_|D&Nt<1fJFPDs{VoeW2vcI&ov!&s$j?0~b zCX+vzi?3qmRS#T{e}M+sB5`N`L@vI2FA?+XPYwvR^wte3fQw)eBs}##R-hj~QL^v+ur7dQB zyT|GXLyn)Q;fX7;<0owsbJS4$ff=d%Xb)zNppII;`kN{JNvhSOx4}8gW5k`1&*A+GloJW2u zvtmC#6z zTZvOX|KM|C-;-|VF6b~$;oa17*NRCMcLAaumzLz#=r5G2nT3zxKpEMmjgD&<`ee`1 z`mC>X!|t`$%O$Aa{xX8QTIc0b)0*l+HdbY%^~HRH0-ikh`|YN*rY0t^Al?oMb~li0l7$fWtEcDf`A?f$B+bF?2X2(2RLos7=A7Q? z5%;5|IQ>QgInwhxnLf~P#m-}g9_G*FBtRz0Hr0~8a%fjG<22jQ>To&5nXh%ifm^1Z zF5#;A`2pFEKTNJ0DVaOIwnv~yK0n^8{r94Q35EM@cNJRlSI;jJ8GVZZ$~Qi&Omom^ z9*L?Whga`duxJ9%RW1$-tn(ODv_5pnI@WO~;9XBXNKP8$k~o}ir(P_*W_a1kyKX9^ z70C!8a)SrR3aQtZHt& zO&9WX)h=o0tW%l5=^wG_%?5_a+MGZC`N4>77-=w-M`eBW5u>T<9{sC{RS|ft%8AA4#ie|R4W89m zQ1&uDlHw#&0#Gg1gzvJJQMP;t_-j;p&hRt{m!ZzPYWcc@01y+%D-m7uSjyz@E7JPoiG+l9mH>)<%oh-cxs69 zX4J@{^8H@*CS}eE~-+>O&-#^Pk0#Vv&*V5kuTviV-m31b_1Fl zG-9`Y=&ZnQIkTjoiMkf0Ui!Mo? znnf#?jo>9NHGuoQ?kWv!a{yH?x6N`ed=ZJr^vKn2NG0Y^3PS*5oLta}R@PCcVEzQ% z2VzMiOO>U!k9dCs9~DQ4r6y!3w!X~TwMTSUK)ad1W~qkkmN}#na#f*T-#pALDr}6# zgSi4Y8+@C(2j%j8%{=&UOolUmLNpA*{^;#_0GYu*(Ph=(lDf8=|E|Txuj>47HC3C>R4p_YKa(Ogp9lgeQqSE zDL`g8Tg{RCTfp7fhDEg&8VTQn<}E)&S$he)`Nm00DuLjvHSzKAtKncc=jB&i?!x=Q zCO5l@8dCJT-j3)%NgJGg!Jde{3g{kF9OXv7iORlt8w7R6k3DIyglf)lrrN_MWtd)b z;^w1W{M)guhDJ7We?Xx#+uIkm?IVbSFhSZNkT$Vcr)W^d#WaZ|d-r@eQ_xwCc0$X3 zM}&}@_r>DtCLkf>n!sP(FSg}6%ke^P6sd7er0AvHFYc9E`oE_&+XX zTVz}#U|tequsuc$@YeM*$oh~Fk<)P$d147s)HgzHZj-}RUfGUucFRMKoSn?M{^5G) zfNXhumTPM#5bZi>aQdEkh{`Hm=fTSAhw65}5l-ug%VXxbZ?elvw^ZW`)=M4P zOC89gaGu#&nfv+njgwwum;^rZSFEl*aF2saqS4+1kT5Q$I5UWUxK@ZiB$j0F!2PoJ zhpvgkNr{i_EN9kZhiSjuxHw&`XpD$U2hW#{M&?%1HFlpDoxMkeS!^ab4az^l zx;7j9RwZ%;p1w_vtwr|A-keo$Z>5(V1BXAh(%*S+Jo3L5H0KBp3_z01D{3dNk_eud zE|wk*4RaI0?0BKOg9M>4c(pRq?gqDMKXuwFgFE zMlAvSK|%I+*u~X7d|=;BPdfb!oj-7+(J8{kU0+P|O4&g(F=0ypA>(M(zWG4s;26CL1J9|*YR69PultxJaEN2Uctahe?z56> zTHtu6E(y=S$j$R?cJW{jX=s8^Om2zczMbvTzdt8nq2y1w31XD(jdQH1(#9sjdMMU( zQWbhrLcLy!kJnjLzbVj;9hV~iq$aQ(lYeid*P4#{8kofr)=+(#DE#}_kVF-6nCa8R z^KwggqyK9MRMu;dKokzEOPK%pasO+Ad8|Rn8Wna=D<8l&zKZ$oqw^K)Dbn1Yg5;O~g33~>#$q4e7`mgdmhM^em zuK1hkr?(kLD`+jqVs$V$-rV{!jR;dC1rqZI&Sc0paW{1z_`moub?az$`^M?(EUot~ z5EE!5K;2Z29aGMoCGss+wYKN%$P(Nv{0nlu;==P-W zO!w5l>K3~63*12_+^?^FsY;v_enZwtflV#}Ta5H3&g8@QG>&)jC~~>=@$=VYpUoDMFV)1W z47RcFpe%5?j7`tWJG^i>Cg--PJDb{(&#-mM^+ogGHQRdC}7>H>gg^(&qc1c z7`11citd=(VD`lwG#D<|tLKsnQH{a(U+(Vtc^T_m%^l!=$@*(wF(~*OM%T|rujPS{ zJk7x)L}RT>CO=z;aZQ~0*`L>D9IRW|C~rH_+%P%cfPS?}7Gjnk7!s}%b;9#K0yc@d zdmO$iANhe>L@4Lv=sw73d3W=6d4y>0?QdS}#JkqS^}%B?*HzP;;wu~s?(UU3 z!jISV#b+KeBc(ST^}@e&C?p+8sRxuL2RZI5lDw%@gv}Mz)_@3u{rHHUH@ss!{T%Ha z1<|f+Ju%@Gz#H3!n7Bw2mQ-ETVA~=LhjXs&i z{{&MINI>V186)j24M8nhKKml~ltXDl-N1%zZ6qK}iH=ums!KA$X46@Ns%W0xp!K`gHR-g% zJ{^ca*GCC?3Rn*$(4@k9&*OI>emxB$^AoY}$cgSfM^n!4%y*?*RVmRZ`!l+Q82p_A zgxWitPFK8kCjJnT!GB0&K5bR*H(OI?(heBN0WeX3ML6j+y2m^56-o&?xJG-lQ_-|# zbXpkfN6EJk4w23y7RSp&pd>KR#z09-(gKNe8rl6FEHG&EeGmEIj4l0ANRwCPkAO3= zCTo}rowFIpKiG-9yek6_R2iL1S0 zmZ|Z$7vwNJIm2)RySa}6eZCw^7OR)1K0isUPMu^bOk-8k=T5@M6#gtp*hWF;apY`k zr>1}+PAQa7IT|E_q@QB7^WY_{y;kR-o4o=dAI}_T0@lg#P8d0zD1}t{|k9l{Gv9xXw$fZ1E~Au zUA<_}$z;zj#ze7{ir2(jm>(-^uCxNv;M`d9G@L<3s>fQgn^T8;P0Y@}B=pEC4}kg1 zoQ#x?EZ8b@9S(U@m{PHQqgQZp;1<(0@Le|RPl=+6l<&cV`dilDbFH+A%g6pbs(PI1 zG&r+WC`0xyU5FtKf_SkV-&r|CM{T1x${h(q2~+imB)sN)8BW`o&(sK8iC@g%AEwho zMgtW4dx?`bl3O<{y&kj(eJr;m$%FV{M;o+168iTKH+hDhCvI?|6vK&->i6aaFHQ$5 zZ`=UzO=U1&);utCok5dT27UM)wfPxlYv+=ub*u}TgVlEETa#{`<}*a+L@r>lK20b( zPI)Eqw{YKwqiEtQIn6U*y=Kqsn{O%VJ2#)CmnQkF6jN{J`Ims)U+*#}3x+>IaSgCg zh!0fEJBZ1CzrP5dJG*RrXcQwKB_EM}XVDc)*!BKU=Kcmwzbx?3YExUn!|1=lx(eAH z%YfsWHHUryFyc3K+e?xBo4^vzXO9~pu{R8Z$r{K}XVv@(3JQn67cUA$ZsD4p`xE?B zZ96gZY3cfhNrX=VTbXoUD4998S0fL0B9u0v)K~I(n*pq!J!$ii3Wv-&X1OCwhBI=J z@zrf4S^z=;k&$@#S7Bm8~v$Ts@O)4^-mI{=UdI)c9W$w2MDY``8kD>3F;C1yey@; zMol1UG!->9F}D?PDpS{?v|nDjZ=(}wP1yNrOuw*F8J695%Wc145Xcq>!-^38?7(aU zOp|n98faiDNwr~XII^Tf;c`HKdGBMp+R5(=7xf)YcZk_PKXySspZ~b~E@l^dP@%mm zKtTVd+)R-`7$0O8Hh9J>6lmcyg$fnLB@cnoLgv^^MJ3 zkx5$t7mL82Rx*#sfkKVA9hlXTBb0V!X@$7#P^XcvRHaG#&dc%*NOOwt;6arB#FKV2k9Xe_v4$~XTZbL zgPH7;F-)dlnwg~Hb(p_y=u|$&?fCT!zku(O4|Qz#ItU%K(j&(uGksdKRwFw zsQytg7Y08S`}7R`@=dYeyYh}Q@ru@(jS*VgVWM2@euPWBXS83QKG$7DlA^zDUFrbL zn!w{9QjofpqM_5m$S3nhTxn7ev1M6++Ps|JtoaMSj7ugipwLrM06dU!unAjs!EO^m zPgz?)&)zsv$KDu8((bmFB|_@(H_2!}XdeE!1}w`hciI}~-5$@l*?_Hs5~|Xxh)049 z?u2R6cS|wZUNQ8XiZG|YB^Wx(J3^~BWVfqKQC0*BGfP-;?8)kF6#f6gxAxSu-&;QL zB|Kk$>wV5mI2B2Rmz9=2``zR}SMp?v-fqwyYvlroeB)^Fq-<*th~qNf}AWf}_WT_KvQA4Y2OZdV`Cy2^f3PH*NbMi>4o^n!*_lwOI* zoYvsJF0Pgs3iZ%o%*t|a9z#>iH%Y_4aGydX)j0)C+G!-Ug+wvo zfVAB;t1s;J+d6uayTyaVDQD4?QTP?-ZzxYfS^k{Wq%Zzn5nP?`FEefGey0Cgu>Iv$m#x55NuNP6)azM;D(fMrLiXLw~2h8>b{4Hz04AXA5ZT7HqW=e zVfcOH1A$d5OX-hr-C3S(aJH}J`XR0qDv}fhJ8h@*^_BwUHG{bgGA9#GI^s|?3)AGY z=2UhSgSn>T5p4tgJG&Hoy*EWTd;|7=xa%F%w#R7%R;RC1eihq0RYtxbCpD+O$&Zm5R%9vpu&l$ujVL?Oe&91)4CH z=|%Iq1Y|>GLpp)l8P7K_p;khFt?j-iNos&R==dd_#+`Y#uloW_h$kB*eFwzcmv=C4?E zpF+I4##9Xk5kUt2x^Gi*d`d#!x~6TJPq+LzL-rMN%$vp+Kr}W8u_~z(jvN0%`Y2VWw+J<1y{`!-qlIqW@cpXeo0Fs{y9o z01PJmFXsN2ApL(?{2!tEmMn}D#(@=4i?@gHR;^qTMaf8)nGF}^0)mG(RD;pN9)Xx7 z;BMCNnKcMDrjl>{+RL$^`GQu)4t3mO;uwZdWY84DHo3#0YD-kLtrv;fIooB6o5I*G zzQk?u`Sep^uF#XDyT`hXKmTI`|KC>}okj=c(iU$N2uOF8`mLLJ`!u#Elrjp-xJY7{ zGMx3Px5ua*Y_tRFR8^YxeTewr(ltMJUe;`4IeWW5A^z`9S|<6VkN_Q=dI6{l&`ASH zCr5WnM|TrVA7@K9qkp8RI#pR^fCCrkouvUC8;fp137ILTku%~4Rnp3*R4e`2Rc@6P zg#tW+2<0m8jn1jhnN=H!pt^&+tEDswb^q5$T4*Zf6kzX~CYpEh582INg>R__xbTU+ zFtt8>?+Ql0w4?T=Jho7=Rh z6_`y|Ev7Qu@Rq{)kDs8Jf{bK+a+&Pu$KXb%Qbu2&heZ&|YSH=Lnt49tR$%BloYgs_#EJ|v^x%G@a=|}>;9g)@f#+3CYwA1^`G{L)^{$bkOuvZ-4Znp0yv3?^!mmBxICE=Ww~^K zhd+Q1F7Wy9S1`a|1OyAG4{EMX&Ti~x&d&d^_21N6gDCYd;D5}3E`$D?6u1T>4*Y+q zKRCHs{$J#u409p4s0awT4F5Hd|J_0`;udgw!27yeTRK?&*Ei??)j)=7w4PNH0>Wt> z3Ig$eQ~z`S5HR|G8u&---K;Gw-QC##bNN48`M2Bu?}maAdpiFW1pJ!;|F+uyLn_$w zzijxw3IA;c|A&ya_y2wJ|F(($CjPgU{||9U-+zeze{}xe?fhGj{->Rf{r{(0sVSlW T!-atG5_pRMV_x^qFeCgw^kYu2 literal 63089 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 z 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 +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_tables ``` ### 2. 读取数据表记录 ```bash -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_records [page_size] +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_records [page_size] ``` ### 3. 新增记录 ```bash -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh create_record '{"字段名1":"值1","字段名2":"值2"}' +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh create_record '{"字段名1":"值1","字段名2":"值2"}' ``` ### 4. 更新记录 ```bash -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh update_record '{"字段名1":"新值"}' +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh update_record '{"字段名1":"新值"}' ``` ### 5. 删除记录 ```bash -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh delete_record +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh delete_record ``` ## 完整执行流程 1. 自动获取Bot租户访问凭证(有效期2小时,自动复用) diff --git a/skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh b/business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh similarity index 100% rename from skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh rename to business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh diff --git a/business_production/_shared/lark_docx_update_as_bot/SKILL.md b/business_production/_shared/lark_docx_update_as_bot/SKILL.md new file mode 100644 index 0000000..2baa019 --- /dev/null +++ b/business_production/_shared/lark_docx_update_as_bot/SKILL.md @@ -0,0 +1,135 @@ +--- +name: lark_docx_update_as_bot +version: 1.0.0 +description: "飞书文档正文Bot身份写入技能,使用 lark-cli docs +update --api-version v2 --as bot 更新文档正文内容,补齐「读文档→读内嵌Sheet→回填文档正文」全链路Bot身份闭环" +metadata: + requires: + permissions: ["docx:document", "docx:document:write_only"] +--- + +# lark_docx_update_as_bot 技能规范 + +## 核心规则(强制执行) +1. **身份限制**:所有文档正文更新操作**永远使用Bot身份**执行(`--as bot`),绝对不触发任何用户身份授权弹窗 +2. **文档范围限制**:支持知识库文档(`/wiki/`)和个人文档(`/doc/`),前提是Bot有对应文档的编辑权限 +3. **权限告知规则**: + - Bot无权限编辑目标文档:回复「当前Bot无编辑该文档权限,请将Bot应用(App ID: `cli_a931175d41799cc7`)添加为文档协作者并授予编辑权限后重试」 + - 权限不足时提示需要开通的权限:`docx:document` 或 `docx:document:write_only` + +## 适用场景 +- 将润色后的台词/文本回填到文档正文段落 +- 更新文档中的配置说明、备注等文本内容 +- 批量替换文档中的特定文本 +- 在文档中追加新章节/段落 +- 所有需要Bot身份修改文档正文的操作 + +## 前置条件 +- Bot应用已在飞书开发者后台开通 `docx:document` 权限 +- Bot已被添加为目标文档的协作者(至少「可编辑」权限) + +## 完整执行链路 + +### 步骤1:获取文档内容和 block 结构 +先用 `lark_wiki_operate_as_bot` 或 `lark-cli docs +fetch --api-version v2 --as bot` 获取文档内容,定位需要修改的文本/block。 + +```bash +# 读取文档(获取 block_id 用于精确编辑) +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +fetch --api-version v2 --doc "" --as bot +``` + +### 步骤2:执行更新 + +#### 方式A:str_replace — 全文文本查找替换(推荐,无需 block_id) + +```bash +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +update --api-version v2 --doc "" --as bot \ + --command str_replace \ + --pattern "要替换的原文" \ + --content "替换后的新文本" +``` + +**Markdown 模式(支持跨行匹配 + 省略号语法):** + +```bash +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +update --api-version v2 --doc "" --as bot \ + --command str_replace \ + --doc-format markdown \ + --pattern "开头文本...结尾文本" \ + --content "替换后的完整内容" +``` + +#### 方式B:block_replace — 替换指定 block(需先获取 block_id) + +```bash +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +update --api-version v2 --doc "" --as bot \ + --command block_replace \ + --block-id "blkcnXXXX" \ + --content '

替换后的段落内容

' +``` + +#### 方式C:append — 在文档末尾追加 + +```bash +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +update --api-version v2 --doc "" --as bot \ + --command append \ + --content '

新章节

追加的内容

' +``` + +#### 方式D:block_insert_after — 在指定 block 后插入 + +```bash +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +update --api-version v2 --doc "" --as bot \ + --command block_insert_after \ + --block-id "blkcnXXXX" \ + --content '

插入的内容

' +``` + +### 步骤3:验证更新结果 + +```bash +LARKSUITE_CLI_CONFIG_DIR=/root/.openclaw/credentials/xiaoyan \ + lark-cli docs +fetch --api-version v2 --doc "" --as bot +``` + +## 指令速查表 + +| 指令 | 说明 | 必需参数 | 适用场景 | +|------|------|----------|----------| +| `str_replace` | 全文文本查找替换 | `--pattern` `--content` | 回填润色文本、修正错别字 | +| `block_replace` | 替换指定 block | `--block-id` `--content` | 替换整段内容 | +| `block_insert_after` | 在指定 block 后插入 | `--block-id` `--content` | 插入新段落 | +| `append` | 文档末尾追加 | `--content` | 追加新章节 | +| `block_delete` | 删除指定 block | `--block-id` | 删除废弃内容 | +| `overwrite` | ⚠️ 全文覆盖 | `--content` | 完全重建文档(慎用) | + +## 最佳实践 + +1. **优先 str_replace**:回填润色文本等场景,直接用 str_replace 匹配原文替换,无需获取 block_id +2. **Markdown 模式跨行匹配**:需要替换大段内容时,用 `--doc-format markdown` + `前缀...后缀` 省略号语法 +3. **精确操作优于全文覆盖**:避免使用 `overwrite`,会丢失图片、评论等 +4. **保护不可重建内容**:替换时避开包含图片、画板、电子表格 token 的 block +5. **写入后必须验证**:每次更新后回读确认内容正确 + +## 与其他技能的配合 + +| 场景 | 技能链路 | +|------|----------| +| 读文档 → 读内嵌Sheet → 回填正文 | `lark_wiki_operate_as_bot` → `feishu-embedded-sheet` → **本技能** | +| 读文档 → 修改正文 | `lark_wiki_operate_as_bot` → **本技能** | +| 读文档 → 读内嵌Sheet → 写Sheet | `lark_wiki_operate_as_bot` → `feishu-embedded-sheet` | + +## 异常处理 + +| 错误码 | 含义 | 处理方式 | +|--------|------|---------| +| `99991400` | 频率限制 | 等待后重试,使用指数退避 | +| `429` | 并发编辑限制 | 同一文档每秒最多3次编辑,排队重试 | +| `403` | 无权限 | Bot未被添加为文档协作者,需用户授权 | +| `400` | 参数错误 | 检查 doc_token、block_id、pattern 格式 | +| `404` | 文档/block不存在 | 检查 token 是否正确,block 是否已被删除 | diff --git a/scripts/apply_fixes.py b/business_production/单元挑战/scripts/apply_fixes.py similarity index 94% rename from scripts/apply_fixes.py rename to business_production/单元挑战/scripts/apply_fixes.py index 336bd68..d7a233d 100644 --- a/scripts/apply_fixes.py +++ b/business_production/单元挑战/scripts/apply_fixes.py @@ -2,7 +2,7 @@ """Apply answer distribution fixes to rewrite_p4_all.py""" import sys -with open('/root/.openclaw/workspace-xiaoyan/scripts/rewrite_p4_all.py', 'r') as f: +with open('/root/.openclaw/workspace-xiaoyan/business_production/单元挑战/scripts/rewrite_p4_all.py', 'r') as f: content = f.read() fixes = [ @@ -100,7 +100,7 @@ for i, line in enumerate(lines): break # Write back -with open('/root/.openclaw/workspace-xiaoyan/scripts/rewrite_p4_all.py', 'w') as f: +with open('/root/.openclaw/workspace-xiaoyan/business_production/单元挑战/scripts/rewrite_p4_all.py', 'w') as f: f.write('\n'.join(lines)) print(f'\nApplied {patches_applied} patches') diff --git a/scripts/audit_all_unit_challenge.py b/business_production/单元挑战/scripts/audit_all_unit_challenge.py similarity index 100% rename from scripts/audit_all_unit_challenge.py rename to business_production/单元挑战/scripts/audit_all_unit_challenge.py diff --git a/scripts/audit_core_reading_S0.py b/business_production/单元挑战/scripts/audit_core_reading_S0.py similarity index 100% rename from scripts/audit_core_reading_S0.py rename to business_production/单元挑战/scripts/audit_core_reading_S0.py diff --git a/scripts/audit_explanation.py b/business_production/单元挑战/scripts/audit_explanation.py similarity index 100% rename from scripts/audit_explanation.py rename to business_production/单元挑战/scripts/audit_explanation.py diff --git a/scripts/audit_final.py b/business_production/单元挑战/scripts/audit_final.py similarity index 100% rename from scripts/audit_final.py rename to business_production/单元挑战/scripts/audit_final.py diff --git a/scripts/audit_l1_config.py b/business_production/单元挑战/scripts/audit_l1_config.py similarity index 100% rename from scripts/audit_l1_config.py rename to business_production/单元挑战/scripts/audit_l1_config.py diff --git a/scripts/audit_listening_explanation.py b/business_production/单元挑战/scripts/audit_listening_explanation.py similarity index 100% rename from scripts/audit_listening_explanation.py rename to business_production/单元挑战/scripts/audit_listening_explanation.py diff --git a/scripts/audit_listening_explanation_v2.py b/business_production/单元挑战/scripts/audit_listening_explanation_v2.py similarity index 100% rename from scripts/audit_listening_explanation_v2.py rename to business_production/单元挑战/scripts/audit_listening_explanation_v2.py diff --git a/scripts/audit_listening_full.py b/business_production/单元挑战/scripts/audit_listening_full.py similarity index 98% rename from scripts/audit_listening_full.py rename to business_production/单元挑战/scripts/audit_listening_full.py index 36d3b80..ee29e36 100644 --- a/scripts/audit_listening_full.py +++ b/business_production/单元挑战/scripts/audit_listening_full.py @@ -4,7 +4,7 @@ Unit Challenge 听力审校脚本:P1/P2/P4/P7(P5/P6无数据,P3跳过) import json, subprocess, sys, os APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" -SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" +SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" CRED_FILE = "/root/.openclaw/credentials/xiaoyan/config.json" # Standard ability tags (from ability_tags.md) diff --git a/scripts/audit_unit_challenge_listening.py b/business_production/单元挑战/scripts/audit_unit_challenge_listening.py similarity index 98% rename from scripts/audit_unit_challenge_listening.py rename to business_production/单元挑战/scripts/audit_unit_challenge_listening.py index 859fc63..c6c9f71 100644 --- a/scripts/audit_unit_challenge_listening.py +++ b/business_production/单元挑战/scripts/audit_unit_challenge_listening.py @@ -17,7 +17,7 @@ import json, subprocess, os, sys SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) WORKSPACE = os.path.dirname(SCRIPT_DIR) -BITABLE_SCRIPT = os.path.join(WORKSPACE, "skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") +BITABLE_SCRIPT = os.path.join(WORKSPACE, "business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" TABLES = { diff --git a/scripts/audit_unit_challenge_listening_v2.py b/business_production/单元挑战/scripts/audit_unit_challenge_listening_v2.py similarity index 98% rename from scripts/audit_unit_challenge_listening_v2.py rename to business_production/单元挑战/scripts/audit_unit_challenge_listening_v2.py index d771d1b..7368a90 100644 --- a/scripts/audit_unit_challenge_listening_v2.py +++ b/business_production/单元挑战/scripts/audit_unit_challenge_listening_v2.py @@ -12,7 +12,7 @@ import json, subprocess, os SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) WORKSPACE = os.path.dirname(SCRIPT_DIR) -BITABLE_SCRIPT = os.path.join(WORKSPACE, "skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") +BITABLE_SCRIPT = os.path.join(WORKSPACE, "business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" TABLES = { diff --git a/scripts/audit_unit_challenge_reading.py b/business_production/单元挑战/scripts/audit_unit_challenge_reading.py similarity index 97% rename from scripts/audit_unit_challenge_reading.py rename to business_production/单元挑战/scripts/audit_unit_challenge_reading.py index 5757f60..ea9a05c 100644 --- a/scripts/audit_unit_challenge_reading.py +++ b/business_production/单元挑战/scripts/audit_unit_challenge_reading.py @@ -5,7 +5,7 @@ import json, subprocess, sys APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" -SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" +SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" def exec_bash(cmd): result = subprocess.run(cmd, shell=True, capture_output=True, text=True, timeout=30) diff --git a/scripts/audit_unit_challenge_v2.py b/business_production/单元挑战/scripts/audit_unit_challenge_v2.py similarity index 98% rename from scripts/audit_unit_challenge_v2.py rename to business_production/单元挑战/scripts/audit_unit_challenge_v2.py index 3b61546..5b0f357 100644 --- a/scripts/audit_unit_challenge_v2.py +++ b/business_production/单元挑战/scripts/audit_unit_challenge_v2.py @@ -4,7 +4,7 @@ import json, subprocess, copy APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" -SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" +SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" # ===== Standard Reading Ability Tags ===== STANDARD_TAGS_L1 = { diff --git a/scripts/audit_unit_challenge_v3.py b/business_production/单元挑战/scripts/audit_unit_challenge_v3.py similarity index 98% rename from scripts/audit_unit_challenge_v3.py rename to business_production/单元挑战/scripts/audit_unit_challenge_v3.py index 319257c..e4c241d 100644 --- a/scripts/audit_unit_challenge_v3.py +++ b/business_production/单元挑战/scripts/audit_unit_challenge_v3.py @@ -4,7 +4,7 @@ import json, subprocess, sys APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" -SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" +SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" # Standard ability tags TAG_L1 = {"显性信息定位|关键词识别","基础语境理解|场景/行为理解","图文判断|句图一致性", diff --git a/scripts/backfill_audit.py b/business_production/单元挑战/scripts/backfill_audit.py similarity index 96% rename from scripts/backfill_audit.py rename to business_production/单元挑战/scripts/backfill_audit.py index 7827618..b9b9afe 100644 --- a/scripts/backfill_audit.py +++ b/business_production/单元挑战/scripts/backfill_audit.py @@ -4,7 +4,7 @@ import json, subprocess APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" -SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" +SKILL_SCRIPT = "/root/.openclaw/workspace-xiaoyan/business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh" records = [ { diff --git a/scripts/backfill_fixed.py b/business_production/单元挑战/scripts/backfill_fixed.py similarity index 100% rename from scripts/backfill_fixed.py rename to business_production/单元挑战/scripts/backfill_fixed.py diff --git a/scripts/backfill_listening_audit.py b/business_production/单元挑战/scripts/backfill_listening_audit.py similarity index 100% rename from scripts/backfill_listening_audit.py rename to business_production/单元挑战/scripts/backfill_listening_audit.py diff --git a/scripts/backfill_unit_challenge.py b/business_production/单元挑战/scripts/backfill_unit_challenge.py similarity index 100% rename from scripts/backfill_unit_challenge.py rename to business_production/单元挑战/scripts/backfill_unit_challenge.py diff --git a/scripts/batch_create_delayed.py b/business_production/单元挑战/scripts/batch_create_delayed.py similarity index 100% rename from scripts/batch_create_delayed.py rename to business_production/单元挑战/scripts/batch_create_delayed.py diff --git a/scripts/batch_create_safe.py b/business_production/单元挑战/scripts/batch_create_safe.py similarity index 100% rename from scripts/batch_create_safe.py rename to business_production/单元挑战/scripts/batch_create_safe.py diff --git a/scripts/batch_create_two_step.py b/business_production/单元挑战/scripts/batch_create_two_step.py similarity index 100% rename from scripts/batch_create_two_step.py rename to business_production/单元挑战/scripts/batch_create_two_step.py diff --git a/scripts/batch_reading_matchInfo.py b/business_production/单元挑战/scripts/batch_reading_matchInfo.py similarity index 100% rename from scripts/batch_reading_matchInfo.py rename to business_production/单元挑战/scripts/batch_reading_matchInfo.py diff --git a/scripts/batch_reading_pic_judge.py b/business_production/单元挑战/scripts/batch_reading_pic_judge.py similarity index 100% rename from scripts/batch_reading_pic_judge.py rename to business_production/单元挑战/scripts/batch_reading_pic_judge.py diff --git a/scripts/batch_reading_pic_qa.py b/business_production/单元挑战/scripts/batch_reading_pic_qa.py similarity index 100% rename from scripts/batch_reading_pic_qa.py rename to business_production/单元挑战/scripts/batch_reading_pic_qa.py diff --git a/scripts/batch_reading_pic_qa_2.py b/business_production/单元挑战/scripts/batch_reading_pic_qa_2.py similarity index 100% rename from scripts/batch_reading_pic_qa_2.py rename to business_production/单元挑战/scripts/batch_reading_pic_qa_2.py diff --git a/scripts/build_listening_choose_1217310.py b/business_production/单元挑战/scripts/build_listening_choose_1217310.py similarity index 100% rename from scripts/build_listening_choose_1217310.py rename to business_production/单元挑战/scripts/build_listening_choose_1217310.py diff --git a/scripts/fill_speaking_expl.py b/business_production/单元挑战/scripts/fill_speaking_expl.py similarity index 100% rename from scripts/fill_speaking_expl.py rename to business_production/单元挑战/scripts/fill_speaking_expl.py diff --git a/scripts/final_audit_all.py b/business_production/单元挑战/scripts/final_audit_all.py similarity index 100% rename from scripts/final_audit_all.py rename to business_production/单元挑战/scripts/final_audit_all.py diff --git a/scripts/final_fix.py b/business_production/单元挑战/scripts/final_fix.py similarity index 100% rename from scripts/final_fix.py rename to business_production/单元挑战/scripts/final_fix.py diff --git a/scripts/fix_021801_second.py b/business_production/单元挑战/scripts/fix_021801_second.py similarity index 100% rename from scripts/fix_021801_second.py rename to business_production/单元挑战/scripts/fix_021801_second.py diff --git a/scripts/fix_ability_tags.py b/business_production/单元挑战/scripts/fix_ability_tags.py similarity index 100% rename from scripts/fix_ability_tags.py rename to business_production/单元挑战/scripts/fix_ability_tags.py diff --git a/scripts/fix_ability_tags_v2.py b/business_production/单元挑战/scripts/fix_ability_tags_v2.py similarity index 100% rename from scripts/fix_ability_tags_v2.py rename to business_production/单元挑战/scripts/fix_ability_tags_v2.py diff --git a/scripts/fix_and_backfill.py b/business_production/单元挑战/scripts/fix_and_backfill.py similarity index 99% rename from scripts/fix_and_backfill.py rename to business_production/单元挑战/scripts/fix_and_backfill.py index 3fdb39a..800c83f 100644 --- a/scripts/fix_and_backfill.py +++ b/business_production/单元挑战/scripts/fix_and_backfill.py @@ -4,7 +4,7 @@ import json, subprocess, copy APP_TOKEN = 'CMHSbUUjka3TrUsaxxEc297ongf' -SKILL = 'skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh' +SKILL = 'business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh' # ===== Ability tag mappings ===== TAG_MAP = { diff --git a/scripts/fix_and_backfill_v2.py b/business_production/单元挑战/scripts/fix_and_backfill_v2.py similarity index 100% rename from scripts/fix_and_backfill_v2.py rename to business_production/单元挑战/scripts/fix_and_backfill_v2.py diff --git a/scripts/fix_and_backfill_v3.py b/business_production/单元挑战/scripts/fix_and_backfill_v3.py similarity index 100% rename from scripts/fix_and_backfill_v3.py rename to business_production/单元挑战/scripts/fix_and_backfill_v3.py diff --git a/scripts/fix_answerset.py b/business_production/单元挑战/scripts/fix_answerset.py similarity index 100% rename from scripts/fix_answerset.py rename to business_production/单元挑战/scripts/fix_answerset.py diff --git a/scripts/fix_components.py b/business_production/单元挑战/scripts/fix_components.py similarity index 100% rename from scripts/fix_components.py rename to business_production/单元挑战/scripts/fix_components.py diff --git a/scripts/fix_distributions.py b/business_production/单元挑战/scripts/fix_distributions.py similarity index 100% rename from scripts/fix_distributions.py rename to business_production/单元挑战/scripts/fix_distributions.py diff --git a/scripts/fix_json_and_p5p6.py b/business_production/单元挑战/scripts/fix_json_and_p5p6.py similarity index 100% rename from scripts/fix_json_and_p5p6.py rename to business_production/单元挑战/scripts/fix_json_and_p5p6.py diff --git a/scripts/fix_matchInfo_0213_0218_desc.py b/business_production/单元挑战/scripts/fix_matchInfo_0213_0218_desc.py similarity index 100% rename from scripts/fix_matchInfo_0213_0218_desc.py rename to business_production/单元挑战/scripts/fix_matchInfo_0213_0218_desc.py diff --git a/scripts/fix_p1_4records.py b/business_production/单元挑战/scripts/fix_p1_4records.py similarity index 100% rename from scripts/fix_p1_4records.py rename to business_production/单元挑战/scripts/fix_p1_4records.py diff --git a/scripts/fix_p2_pic_batch2.py b/business_production/单元挑战/scripts/fix_p2_pic_batch2.py similarity index 100% rename from scripts/fix_p2_pic_batch2.py rename to business_production/单元挑战/scripts/fix_p2_pic_batch2.py diff --git a/scripts/fix_p2_records.py b/business_production/单元挑战/scripts/fix_p2_records.py similarity index 100% rename from scripts/fix_p2_records.py rename to business_production/单元挑战/scripts/fix_p2_records.py diff --git a/scripts/fix_p4_dialogue.py b/business_production/单元挑战/scripts/fix_p4_dialogue.py similarity index 100% rename from scripts/fix_p4_dialogue.py rename to business_production/单元挑战/scripts/fix_p4_dialogue.py diff --git a/scripts/fix_remaining.py b/business_production/单元挑战/scripts/fix_remaining.py similarity index 100% rename from scripts/fix_remaining.py rename to business_production/单元挑战/scripts/fix_remaining.py diff --git a/scripts/fix_second_and_pic.py b/business_production/单元挑战/scripts/fix_second_and_pic.py similarity index 100% rename from scripts/fix_second_and_pic.py rename to business_production/单元挑战/scripts/fix_second_and_pic.py diff --git a/scripts/fix_writing_records.py b/business_production/单元挑战/scripts/fix_writing_records.py similarity index 100% rename from scripts/fix_writing_records.py rename to business_production/单元挑战/scripts/fix_writing_records.py diff --git a/scripts/gen_batch3.py b/business_production/单元挑战/scripts/gen_batch3.py similarity index 100% rename from scripts/gen_batch3.py rename to business_production/单元挑战/scripts/gen_batch3.py diff --git a/scripts/gen_unit_challenge_spk_wrt.py b/business_production/单元挑战/scripts/gen_unit_challenge_spk_wrt.py similarity index 100% rename from scripts/gen_unit_challenge_spk_wrt.py rename to business_production/单元挑战/scripts/gen_unit_challenge_spk_wrt.py diff --git a/scripts/gen_writing_speaking.py b/business_production/单元挑战/scripts/gen_writing_speaking.py similarity index 100% rename from scripts/gen_writing_speaking.py rename to business_production/单元挑战/scripts/gen_writing_speaking.py diff --git a/scripts/gen_writing_speaking_batch2.py b/business_production/单元挑战/scripts/gen_writing_speaking_batch2.py similarity index 100% rename from scripts/gen_writing_speaking_batch2.py rename to business_production/单元挑战/scripts/gen_writing_speaking_batch2.py diff --git a/scripts/generate_explanations.py b/business_production/单元挑战/scripts/generate_explanations.py similarity index 100% rename from scripts/generate_explanations.py rename to business_production/单元挑战/scripts/generate_explanations.py diff --git a/scripts/inject_text_rules.py b/business_production/单元挑战/scripts/inject_text_rules.py similarity index 100% rename from scripts/inject_text_rules.py rename to business_production/单元挑战/scripts/inject_text_rules.py diff --git a/scripts/insert_listening_choose_1217310.py b/business_production/单元挑战/scripts/insert_listening_choose_1217310.py similarity index 100% rename from scripts/insert_listening_choose_1217310.py rename to business_production/单元挑战/scripts/insert_listening_choose_1217310.py diff --git a/scripts/patch_ability.py b/business_production/单元挑战/scripts/patch_ability.py similarity index 100% rename from scripts/patch_ability.py rename to business_production/单元挑战/scripts/patch_ability.py diff --git a/scripts/produce_p1_picture.py b/business_production/单元挑战/scripts/produce_p1_picture.py similarity index 100% rename from scripts/produce_p1_picture.py rename to business_production/单元挑战/scripts/produce_p1_picture.py diff --git a/scripts/produce_speaking_p4.py b/business_production/单元挑战/scripts/produce_speaking_p4.py similarity index 100% rename from scripts/produce_speaking_p4.py rename to business_production/单元挑战/scripts/produce_speaking_p4.py diff --git a/scripts/rewrite_p4_all.py b/business_production/单元挑战/scripts/rewrite_p4_all.py similarity index 99% rename from scripts/rewrite_p4_all.py rename to business_production/单元挑战/scripts/rewrite_p4_all.py index a876ebe..4592fd3 100644 --- a/scripts/rewrite_p4_all.py +++ b/business_production/单元挑战/scripts/rewrite_p4_all.py @@ -8,7 +8,7 @@ import json, subprocess, os, sys, time APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" TABLE_ID = "tblVmeDtBDKsAEfz" BASE_DIR = os.path.expanduser("~/.openclaw/workspace-xiaoyan") -OPERATE_SCRIPT = os.path.join(BASE_DIR, "skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") +OPERATE_SCRIPT = os.path.join(BASE_DIR, "business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") def run_operate(action, *args): """Run the operate_bitable.sh script""" diff --git a/scripts/scan_missing_explanations.py b/business_production/单元挑战/scripts/scan_missing_explanations.py similarity index 100% rename from scripts/scan_missing_explanations.py rename to business_production/单元挑战/scripts/scan_missing_explanations.py diff --git a/scripts/test_one_record.py b/business_production/单元挑战/scripts/test_one_record.py similarity index 100% rename from scripts/test_one_record.py rename to business_production/单元挑战/scripts/test_one_record.py diff --git a/scripts/update_image_descriptions.py b/business_production/单元挑战/scripts/update_image_descriptions.py similarity index 100% rename from scripts/update_image_descriptions.py rename to business_production/单元挑战/scripts/update_image_descriptions.py diff --git a/scripts/update_l2_difficulty_skills.py b/business_production/单元挑战/scripts/update_l2_difficulty_skills.py similarity index 100% rename from scripts/update_l2_difficulty_skills.py rename to business_production/单元挑战/scripts/update_l2_difficulty_skills.py diff --git a/scripts/update_pic_judge_descriptions.py b/business_production/单元挑战/scripts/update_pic_judge_descriptions.py similarity index 100% rename from scripts/update_pic_judge_descriptions.py rename to business_production/单元挑战/scripts/update_pic_judge_descriptions.py diff --git a/scripts/update_speaking_p4.py b/business_production/单元挑战/scripts/update_speaking_p4.py similarity index 100% rename from scripts/update_speaking_p4.py rename to business_production/单元挑战/scripts/update_speaking_p4.py diff --git a/scripts/update_speaking_qa_ability.py b/business_production/单元挑战/scripts/update_speaking_qa_ability.py similarity index 100% rename from scripts/update_speaking_qa_ability.py rename to business_production/单元挑战/scripts/update_speaking_qa_ability.py diff --git a/scripts/update_writing_p1.py b/business_production/单元挑战/scripts/update_writing_p1.py similarity index 100% rename from scripts/update_writing_p1.py rename to business_production/单元挑战/scripts/update_writing_p1.py diff --git a/scripts/verify_record.py b/business_production/单元挑战/scripts/verify_record.py similarity index 100% rename from scripts/verify_record.py rename to business_production/单元挑战/scripts/verify_record.py diff --git a/scripts/write_audit_results.py b/business_production/单元挑战/scripts/write_audit_results.py similarity index 98% rename from scripts/write_audit_results.py rename to business_production/单元挑战/scripts/write_audit_results.py index 6e6259f..48a6cbe 100644 --- a/scripts/write_audit_results.py +++ b/business_production/单元挑战/scripts/write_audit_results.py @@ -6,7 +6,7 @@ import json, subprocess, os, sys SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) WORKSPACE = os.path.dirname(SCRIPT_DIR) -BITABLE_SCRIPT = os.path.join(WORKSPACE, "skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") +BITABLE_SCRIPT = os.path.join(WORKSPACE, "business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh") APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf" TABLES = { diff --git a/scripts/write_audit_results_v2.py b/business_production/单元挑战/scripts/write_audit_results_v2.py similarity index 100% rename from scripts/write_audit_results_v2.py rename to business_production/单元挑战/scripts/write_audit_results_v2.py diff --git a/scripts/write_audit_results_v3.py b/business_production/单元挑战/scripts/write_audit_results_v3.py similarity index 100% rename from scripts/write_audit_results_v3.py rename to business_production/单元挑战/scripts/write_audit_results_v3.py diff --git a/business_production/单元挑战/skills/audit_unit_challenge/SKILL.md b/business_production/单元挑战/skills/audit_unit_challenge/SKILL.md index e5e5094..a07b7ae 100644 --- a/business_production/单元挑战/skills/audit_unit_challenge/SKILL.md +++ b/business_production/单元挑战/skills/audit_unit_challenge/SKILL.md @@ -203,16 +203,16 @@ Step 5: 写回 — 将审校结果写入对应表的「审校结果」/「审核 | 脚本 | 用途 | 对应表 | |------|------|--------| -| `scripts/audit_unit_challenge_listening.py` | 听力 P1-P7 第1轮基础审校 | 所有听力表 | -| `scripts/audit_unit_challenge_listening_v2.py` | 听力 P1-P7 第2轮深度审校 | 同上 | -| `scripts/audit_unit_challenge_reading.py` | 阅读基础审校 | 所有阅读表 | -| `scripts/audit_unit_challenge_v2.py` | 全题型基础检查 | 所有表 | -| `scripts/audit_unit_challenge_v3.py` | 全题型深度检查 | 所有表 | -| `scripts/write_audit_results_v3.py` | 审校结果写回 bitable | 所有表 | -| `scripts/fill_speaking_expl.py` | 口语-P1 explanation 补充 | 口语-P1 | -| `scripts/gen_writing_speaking.py` | 写作/口语内容生成 | 写作-P1/口语-P1/P2 | -| `scripts/gen_writing_speaking_batch2.py` | 写作/口语批量生成 | 同上 | -| `scripts/gen_batch3.py` | 写作/口语 C级批量生成 | 同上 | +| `../../scripts/audit_unit_challenge_listening.py` | 听力 P1-P7 第1轮基础审校 | 所有听力表 | +| `../../scripts/audit_unit_challenge_listening_v2.py` | 听力 P1-P7 第2轮深度审校 | 同上 | +| `../../scripts/audit_unit_challenge_reading.py` | 阅读基础审校 | 所有阅读表 | +| `../../scripts/audit_unit_challenge_v2.py` | 全题型基础检查 | 所有表 | +| `../../scripts/audit_unit_challenge_v3.py` | 全题型深度检查 | 所有表 | +| `../../scripts/write_audit_results_v3.py` | 审校结果写回 bitable | 所有表 | +| `../../scripts/fill_speaking_expl.py` | 口语-P1 explanation 补充 | 口语-P1 | +| `../../scripts/gen_writing_speaking.py` | 写作/口语内容生成 | 写作-P1/口语-P1/P2 | +| `../../scripts/gen_writing_speaking_batch2.py` | 写作/口语批量生成 | 同上 | +| `../../scripts/gen_batch3.py` | 写作/口语 C级批量生成 | 同上 | ## 已知能力标签库 diff --git a/business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_judge/SKILL.md b/business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_judge/SKILL.md deleted file mode 100644 index db22651..0000000 --- a/business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_judge/SKILL.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -name: reading_pic_judge -description: K12英语阅读看图判断题标准化设计、生产、审校工具。使用场景:(1) 根据给定知识点、难度等级生成符合教研规范的阅读看图判断题;(2) 校验题目格式、难度匹配、内容合规性;(3) 批量生产阅读看图判断题。触发关键词:阅读看图判断、reading pic judge、看图判断题生产 ---- - - -## 文本输出规范(强制执行) - -所有输出的文本内容(台词、题目、选项、解析、音频文本、阅读文章等)必须遵守以下规则: - -1. 禁止 Markdown 标记:禁止使用 ** * __ _ 等加粗/斜体标识,也禁止使用 # > - 等块级 Markdown 语法。所有文本纯文本输出。 -2. 英式拼写优先:单词涉及英美式拼写差异时(如 colour/color、centre/center、travelling/traveling),统一选择英式拼写。 -3. 标点符号规范:严格区分全角/半角符号。中文内容使用全角标点(,。!?),英文内容使用半角标点(. , ! ?),不得混用。 - -# Reading Pic Judge 阅读看图判断题生产技能 -## 题型说明 -阅读看图判断题:学生查看图片,然后回答关于图片内容的判断题,通常是Yes/No问题。 -## JSON结构示例 -```json -{ - "category": "reading", - "type": "reading_pic_judge", - "questionSetID": "010401", - "textTitle": "A Letter from Tom", - "questionSet": [{ - "questionImage": "010401-00.png", - "question": "What can you do at Sunny Salon?", - "answerText": "Yes", - "ability": ["听觉抓取关键信息", "听觉抓取关键信息", "多特征整合", "语用推断"], - "explanation": "根据图片内容判断正确答案。" - }] -} -``` -## 生产规则 -1. 提供图片和相关问题 -2. 答案为Yes或No -3. 绑定相应的能力标签 \ No newline at end of file diff --git a/business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_qa/SKILL.md b/business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_qa/SKILL.md deleted file mode 100644 index 1305675..0000000 --- a/business_production/单元挑战/skills/unit_challenge/questions/reading/reading_pic_qa/SKILL.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -name: reading_pic_qa -description: K12英语阅读看图回答题标准化设计、生产、审校工具。使用场景:(1) 根据给定知识点、难度等级生成符合教研规范的阅读看图回答题;(2) 校验题目格式、难度匹配、内容合规性;(3) 批量生产阅读看图回答题。触发关键词:阅读看图回答、reading pic qa、看图回答题生产 ---- - - -## 文本输出规范(强制执行) - -所有输出的文本内容(台词、题目、选项、解析、音频文本、阅读文章等)必须遵守以下规则: - -1. 禁止 Markdown 标记:禁止使用 ** * __ _ 等加粗/斜体标识,也禁止使用 # > - 等块级 Markdown 语法。所有文本纯文本输出。 -2. 英式拼写优先:单词涉及英美式拼写差异时(如 colour/color、centre/center、travelling/traveling),统一选择英式拼写。 -3. 标点符号规范:严格区分全角/半角符号。中文内容使用全角标点(,。!?),英文内容使用半角标点(. , ! ?),不得混用。 - -# Reading Pic QA 阅读看图回答题生产技能 -## 题型说明 -阅读看图回答题:学生查看图片,然后回答关于图片内容的开放性问题。 -## JSON结构示例 -```json -{ - "category": "reading", - "type": "reading_pic_qa", - "questionSetID": "010401", - "textTitle": "Look and read. Write yes or no.", - "textImage":"010401-00.png", - "questionSet": [{ - "question": "The man has got black hair and glasses. ", - "answerText": "Yes", - "ability": ["听觉抓取关键信息", "听觉抓取关键信息", "多特征整合", "语用推断"], - "explanation": "根据图片内容回答问题。" - }] -} -``` -## 生产规则 -1. 提供图片和相关问题 -2. 答案为开放性回答 -3. 绑定相应的能力标签 \ No newline at end of file diff --git a/business_production/单元挑战/skills/unit_challenge/questions/writing/common/writing_pic_qa/SKILL.md b/business_production/单元挑战/skills/unit_challenge/questions/writing/common/writing_pic_qa/SKILL.md index ba27ee8..5add107 100644 --- a/business_production/单元挑战/skills/unit_challenge/questions/writing/common/writing_pic_qa/SKILL.md +++ b/business_production/单元挑战/skills/unit_challenge/questions/writing/common/writing_pic_qa/SKILL.md @@ -282,14 +282,14 @@ description: K12英语写作看图回答题标准化设计、生产、审校工 ```bash # 1. 定位表 -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_tables +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_tables # 2. 新建记录 -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh create_record \ +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh create_record \ '{"题目集合 ID":"000001","jsonData":"...","图片描述":"..."}' # 3. 回读验证 -./skills/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_records \ +./business_production/_shared/lark_bitable_operate_as_bot/scripts/operate_bitable.sh list_records \ 5 ``` diff --git a/business_production/单元挑战/skills/unit_challenge/questions/writing/writing_pic_qa/SKILL.md b/business_production/单元挑战/skills/unit_challenge/questions/writing/writing_pic_qa/SKILL.md deleted file mode 100644 index 5b9f82a..0000000 --- a/business_production/单元挑战/skills/unit_challenge/questions/writing/writing_pic_qa/SKILL.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -name: writing_pic_qa -description: K12英语写作看图回答题标准化设计、生产、审校工具。完整规范见 common/writing_pic_qa/SKILL.md。触发关键词:写作看图回答、writing pic qa、看图回答题生产 ---- - - -## 文本输出规范(强制执行) - -所有输出的文本内容(台词、题目、选项、解析、音频文本、阅读文章等)必须遵守以下规则: - -1. 禁止 Markdown 标记:禁止使用 ** * __ _ 等加粗/斜体标识,也禁止使用 # > - 等块级 Markdown 语法。所有文本纯文本输出。 -2. 英式拼写优先:单词涉及英美式拼写差异时(如 colour/color、centre/center、travelling/traveling),统一选择英式拼写。 -3. 标点符号规范:严格区分全角/半角符号。中文内容使用全角标点(,。!?),英文内容使用半角标点(. , ! ?),不得混用。 - -# Writing Pic QA 写作看图回答题生产技能 - -> 📌 **完整生产规范请参阅:** `common/writing_pic_qa/SKILL.md` -> -> 本文件保留为快速参考入口,含题型 JSON 输出结构摘要。 - -## 题型说明 -写作看图回答题:学生查看图片,根据提示写出答案。考察图文匹配 + 书写表达。 - -## JSON 结构(bitable 写入格式) -```json -{ - "first": { "category": "writing", "type": "writing_pic_qa", "questionSetID": "...", ... }, - "second": { "category": "writing", "type": "writing_pic_qa", "questionSetID": "...", ... } -} -``` -wrapper 以 `first`/`second` 分别对应题组1/题组2。每个题组内 `questionSet` 包含共享图片及题组内全部小题。 - -## 快速链接 -- **完整生产规范**:`common/writing_pic_qa/SKILL.md`(11节完整规范) -- **参考样例**:bitable `单元挑战 → 写作-P3-看图回答题`,record_id: `recviZlAxxXlAb`(ID=000001) \ No newline at end of file diff --git a/scripts/convert_components_to_json.py b/business_production/组件生产/scripts/convert_components_to_json.py similarity index 100% rename from scripts/convert_components_to_json.py rename to business_production/组件生产/scripts/convert_components_to_json.py diff --git a/scripts/dialogue_backfill.py b/business_production/组件生产/scripts/dialogue_backfill.py similarity index 100% rename from scripts/dialogue_backfill.py rename to business_production/组件生产/scripts/dialogue_backfill.py diff --git a/scripts/dialogue_backfill_v2.py b/business_production/组件生产/scripts/dialogue_backfill_v2.py similarity index 100% rename from scripts/dialogue_backfill_v2.py rename to business_production/组件生产/scripts/dialogue_backfill_v2.py diff --git a/scripts/fill_components.py b/business_production/组件生产/scripts/fill_components.py similarity index 100% rename from scripts/fill_components.py rename to business_production/组件生产/scripts/fill_components.py diff --git a/scripts/fill_components_by_id.py b/business_production/组件生产/scripts/fill_components_by_id.py similarity index 100% rename from scripts/fill_components_by_id.py rename to business_production/组件生产/scripts/fill_components_by_id.py diff --git a/scripts/fill_components_by_id_fixed.py b/business_production/组件生产/scripts/fill_components_by_id_fixed.py similarity index 100% rename from scripts/fill_components_by_id_fixed.py rename to business_production/组件生产/scripts/fill_components_by_id_fixed.py diff --git a/scripts/generate_component_configs.py b/business_production/组件生产/scripts/generate_component_configs.py similarity index 100% rename from scripts/generate_component_configs.py rename to business_production/组件生产/scripts/generate_component_configs.py diff --git a/scripts/produce_components_111.py b/business_production/组件生产/scripts/produce_components_111.py similarity index 100% rename from scripts/produce_components_111.py rename to business_production/组件生产/scripts/produce_components_111.py diff --git a/scripts/write_L4_F_configs.py b/business_production/组件生产/scripts/write_L4_F_configs.py similarity index 100% rename from scripts/write_L4_F_configs.py rename to business_production/组件生产/scripts/write_L4_F_configs.py diff --git a/scripts/write_L5_G_configs.py b/business_production/组件生产/scripts/write_L5_G_configs.py similarity index 100% rename from scripts/write_L5_G_configs.py rename to business_production/组件生产/scripts/write_L5_G_configs.py diff --git a/scripts/write_L5_G_configs_v2.py b/business_production/组件生产/scripts/write_L5_G_configs_v2.py similarity index 100% rename from scripts/write_L5_G_configs_v2.py rename to business_production/组件生产/scripts/write_L5_G_configs_v2.py diff --git a/scripts/write_p4_safe.py b/business_production/组件生产/scripts/write_p4_safe.py similarity index 100% rename from scripts/write_p4_safe.py rename to business_production/组件生产/scripts/write_p4_safe.py diff --git a/scripts/write_p4_to_bitable.py b/business_production/组件生产/scripts/write_p4_to_bitable.py similarity index 100% rename from scripts/write_p4_to_bitable.py rename to business_production/组件生产/scripts/write_p4_to_bitable.py diff --git a/scripts/write_p4_v2.py b/business_production/组件生产/scripts/write_p4_v2.py similarity index 100% rename from scripts/write_p4_v2.py rename to business_production/组件生产/scripts/write_p4_v2.py diff --git a/skills/dialogue-choose-config/SKILL.md b/business_production/组件生产/skills/dialogue-choose-config/SKILL.md similarity index 100% rename from skills/dialogue-choose-config/SKILL.md rename to business_production/组件生产/skills/dialogue-choose-config/SKILL.md diff --git a/skills/dialogue-core-navigation-config/SKILL.md b/business_production/组件生产/skills/dialogue-core-navigation-config/SKILL.md similarity index 100% rename from skills/dialogue-core-navigation-config/SKILL.md rename to business_production/组件生产/skills/dialogue-core-navigation-config/SKILL.md diff --git a/skills/dialogue-fill-in-blanks-config/SKILL.md b/business_production/组件生产/skills/dialogue-fill-in-blanks-config/SKILL.md similarity index 100% rename from skills/dialogue-fill-in-blanks-config/SKILL.md rename to business_production/组件生产/skills/dialogue-fill-in-blanks-config/SKILL.md diff --git a/skills/dialogue-image-description-config/SKILL.md b/business_production/组件生产/skills/dialogue-image-description-config/SKILL.md similarity index 100% rename from skills/dialogue-image-description-config/SKILL.md rename to business_production/组件生产/skills/dialogue-image-description-config/SKILL.md diff --git a/skills/dialogue-reading-config/SKILL.md b/business_production/组件生产/skills/dialogue-reading-config/SKILL.md similarity index 100% rename from skills/dialogue-reading-config/SKILL.md rename to business_production/组件生产/skills/dialogue-reading-config/SKILL.md diff --git a/skills/dialogue-selective-reading-config/SKILL.md b/business_production/组件生产/skills/dialogue-selective-reading-config/SKILL.md similarity index 100% rename from skills/dialogue-selective-reading-config/SKILL.md rename to business_production/组件生产/skills/dialogue-selective-reading-config/SKILL.md diff --git a/skills/dialogue-sentence-building-config/SKILL.md b/business_production/组件生产/skills/dialogue-sentence-building-config/SKILL.md similarity index 100% rename from skills/dialogue-sentence-building-config/SKILL.md rename to business_production/组件生产/skills/dialogue-sentence-building-config/SKILL.md diff --git a/skills/dialogue-single-choice-image-config/SKILL.md b/business_production/组件生产/skills/dialogue-single-choice-image-config/SKILL.md similarity index 100% rename from skills/dialogue-single-choice-image-config/SKILL.md rename to business_production/组件生产/skills/dialogue-single-choice-image-config/SKILL.md diff --git a/skills/info-sentence-building-config/SKILL.md b/business_production/组件生产/skills/info-sentence-building-config/SKILL.md similarity index 100% rename from skills/info-sentence-building-config/SKILL.md rename to business_production/组件生产/skills/info-sentence-building-config/SKILL.md diff --git a/skills/info-word-spelling-config/SKILL.md b/business_production/组件生产/skills/info-word-spelling-config/SKILL.md similarity index 100% rename from skills/info-word-spelling-config/SKILL.md rename to business_production/组件生产/skills/info-word-spelling-config/SKILL.md diff --git a/skills/task-router/SKILL.md b/business_production/组件生产/skills/task-router/SKILL.md similarity index 94% rename from skills/task-router/SKILL.md rename to business_production/组件生产/skills/task-router/SKILL.md index 60c3c74..e27f549 100644 --- a/skills/task-router/SKILL.md +++ b/business_production/组件生产/skills/task-router/SKILL.md @@ -61,4 +61,4 @@ The 6 components are predefined: ## Resources -- Use [route_request.py](/Users/shasha/.codex/skills/task-router/scripts/route_request.py) as the first-pass classifier and execution planner. +- Use [route_request.py](business_production/组件生产/skills/task-router/scripts/route_request.py) as the first-pass classifier and execution planner. diff --git a/skills/task-router/agents/openai.yaml b/business_production/组件生产/skills/task-router/agents/openai.yaml similarity index 100% rename from skills/task-router/agents/openai.yaml rename to business_production/组件生产/skills/task-router/agents/openai.yaml diff --git a/skills/task-router/component_configs.yaml b/business_production/组件生产/skills/task-router/component_configs.yaml similarity index 100% rename from skills/task-router/component_configs.yaml rename to business_production/组件生产/skills/task-router/component_configs.yaml diff --git a/skills/task-router/scripts/generate_component.py b/business_production/组件生产/skills/task-router/scripts/generate_component.py similarity index 100% rename from skills/task-router/scripts/generate_component.py rename to business_production/组件生产/skills/task-router/scripts/generate_component.py diff --git a/skills/task-router/scripts/review_component.py b/business_production/组件生产/skills/task-router/scripts/review_component.py similarity index 100% rename from skills/task-router/scripts/review_component.py rename to business_production/组件生产/skills/task-router/scripts/review_component.py diff --git a/skills/task-router/scripts/route_request.py b/business_production/组件生产/skills/task-router/scripts/route_request.py similarity index 100% rename from skills/task-router/scripts/route_request.py rename to business_production/组件生产/skills/task-router/scripts/route_request.py diff --git a/skills/task-router/test_config.json b/business_production/组件生产/skills/task-router/test_config.json similarity index 100% rename from skills/task-router/test_config.json rename to business_production/组件生产/skills/task-router/test_config.json diff --git a/business_production/组件配置/interactive-component-json/db/components.db b/business_production/组件配置/interactive-component-json/db/components.db index 2632c18a5316a78d7bbaacd6643413cbbe6091c2..4d327e9c6ae0e3d3767caba5856ed669bea52bda 100644 GIT binary patch delta 52614 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 F^#5|fB8LC~ diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_122952.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_122952.html new file mode 100644 index 0000000..1c09854 --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_122952.html @@ -0,0 +1,5627 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 12:29:52 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频中,包含了一个常用短语 stand in line,意思是排队、站成一排。其中 stand 是站立的意思,line 是线、队列的意思哦。
+1. 听音选句
+Brainy:仔细听音频,选出你听到的句子吧~
+- Stand in line! [正确]
+  - Brainy:太厉害啦!你精准听出了短语 stand in line,真的很棒哦!
+- Stand in circle!
+  - Brainy:不对哦,这句话里说的是 circle(圆圈),不是我们听到的 line(队列),再听一遍试试吧~
+
+2. 听音选意
+Brainy:"站成圆圈"是这句话的中文意思吗?
+- 对 / Yes
+  - Brainy:哦,不对哦,句子里的重点短语是 stand in line,和圆圈没有关系,再想想看吧~
+- 错 / No [正确]
+  - Brainy:答对啦!你完全掌握了 stand in line 是“排队、站成一排”的意思,太优秀啦!
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first heard Mr. Justin give the instruction "Stand in line!", then you chose the right picture of people standing in a single line, and got praised for being ready for the next step. (你首先听到贾斯汀老师发出“排队”的指令,接着你选对了人们排成一队的图片,获得了表扬,已经为下一步做好准备。)
+Next you heard Mr. Justin ask everyone to "Read the blackboard!", you picked the right action of looking at the blackboard, and Ben responded positively that he had got the task. (接下来你听到贾斯汀老师要求大家“看黑板”,你选对了看向黑板的正确动作,本积极回应说他已经明白任务要求。)
+Finally you heard Mr. Justin say "Take number 1 as an example!", you selected the correct picture of number 1, and Ben said he was all ready for the following learning. (最后你听到贾斯汀老师说“以1号为例”,你选对了对应1号的图片,本表示他已经为接下来的学习做好了准备。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_143618.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_143618.html new file mode 100644 index 0000000..db17cb4 --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_143618.html @@ -0,0 +1,5627 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 14:36:18 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频里,有一个常用短语 stand in line,意思是排队、站成一排。这里 stand 是站立的意思,line 是队伍、排的意思,合在一起就是站成队伍哦。
+1. 听音选句
+Brainy:仔细听音频,选出你听到的句子吧~
+- Stand in line! [正确]
+  Brainy:太厉害啦!你准确听出了 stand in line 这个短语,太棒了!
+- Stand in a circle!
+  Brainy:不对哦,这句话里是 circle(圆圈),不是我们听到的 line(排、队伍),再仔细听一遍试试呀~
+
+2. 听音选意
+Brainy:"站成圆圈"是这句话的中文意思吗?
+- 对 / Yes
+  Brainy:我们听到的短语是 stand in line,不是站成圆圈哦,再想想看~
+- 错 / No [正确]
+  Brainy:完全正确!你已经掌握了 stand in line 是排队、站成一排的意思啦,真棒!
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You hear Justin's instruction "Stand in line!" and then pick the right picture that shows people standing in a single line, and Brainy says you are ready for the next step. (你听到贾斯汀老师指令“排队!”,之后选出了展示人们排成一队的正确图片,布雷尼说你已经准备好进入下一环节了。)
+You hear Justin ask everyone to "Read the blackboard!", choose the right action of reading the blackboard when Ben asks what to do, and Ben replies happily that he gets it. (你听到贾斯汀老师要求“看黑板!”,在本问现在该做什么时选出了看黑板的正确动作,本开心地回应说他明白了。)
+You hear Justin's order "Take number 1 as an example!", select the picture of number 1 when Ben asks who to look at, and Ben says he is already ready now. (你听到贾斯汀老师指令“以1号为例!”,在本问该看谁时选出了1号的正确图片,本说他现在已经准备好了。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_144300.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_144300.html new file mode 100644 index 0000000..614ec11 --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_144300.html @@ -0,0 +1,5627 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 14:43:00 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频中,包含了一个常用短语 stand in line,意思是排队、站成一排。这个短语在日常排队的时候经常会用到哦。
+1. 听音选句
+Brainy:仔细听音频,选一下你听到的句子是哪一个吧~
+- Stand in line! [正确]
+  - Brainy:太棒啦!你准确听出了短语 stand in line,真厉害!
+- Stand up please!
+  - Brainy:哎呀,这句话说的是 stand up please(请站起来),没有提到 stand in line 哦,再仔细听听音频吧!
+
+2. 听音选意
+Brainy:“站成一个圈”是这句话的中文意思吗?
+- 对 / Yes
+  - Brainy:短语 stand in line 是站成一排的意思,不是站成圈哦,再想想看吧~
+- 错 / No [正确]
+  - Brainy:完全正确!你已经掌握了 stand in line 这个短语的意思啦,棒棒的!
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first hear Justin's instruction "Stand in line!", then you need to find the group that stands in line correctly, and when you pick the right one, Brainy says you are ready for the next step.(你首先听到贾斯汀老师的指令“排队!”,接着要找到正确排队的小组,选对后布雷尼会说你已经准备好进行下一步了。)
+Next you hear Justin tell everyone "Read the blackboard!", then you need to find what you should do right now, and when you make the right choice, Ben says "Ok! Got it!" in response.(接下来你听到贾斯汀老师让大家“看黑板!”,接着要找出你们现在该做的事,选对后本会回应“好的!知道了!”。)
+Finally you hear Justin's instruction "Take number 1 as an example!", then you need to find who you should look at, and when you choose the right person, Ben says he is ready now.(最后你听到贾斯汀老师的指令“以1号为例!”,接着要找出你们该看的人,选对后本会说他现在准备好了。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_145304.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_145304.html new file mode 100644 index 0000000..56b9df5 --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_145304.html @@ -0,0 +1,5627 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 14:53:04 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频里有一个常用短语 stand in line,意思是排队、站成一排,是课堂和公共场合很常用的指令哦。
+1. 听音选句
+Brainy:认真听音频,选出你听到的句子吧。
+- Stand in line! [正确]
+  - Brainy:太厉害啦!你准确听出了stand in line这个短语!
+- Stand up please!
+  - Brainy:哎呀,这句话是“请站起来”的意思,没有出现我们的重点短语stand in line哦,再仔细听一遍试试吧。
+
+2. 听音选意
+Brainy:"请坐好"是这句话的中文意思吗?
+- 错 / No [正确]
+  - Brainy:答对啦!你完全掌握了这句话的意思,stand in line是排队的意思,你很棒哦!
+- 对 / Yes
+  - Brainy:不对哦,这句话是和排队站好有关的指令,不是坐好的意思,再想想看吧。
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first hear Justin's instruction "Stand in line!", then Brainy asks which group is standing in line, and you pick the right group to get ready for the next step.(你首先听到Justin老师的指令“排队!”,之后Brainy询问哪组是排队的状态,你选对了正确的小组,为下一步做好了准备。)
+You hear Justin tell everyone to "Read the blackboard!", then Ben asks what you should do now, and you choose the right action to show you've got the task.(你听到Justin老师让大家“看黑板!”,之后Ben询问你们现在该做什么,你选对了正确的行动,表明你领会了任务要求。)
+You hear Justin's instruction "Take number 1 as an example!", then Ben asks who you should look at, and you pick the right example to get prepared for the following learning.(你听到Justin老师的指令“以1号作为例子!”,之后Ben询问你们该看谁,你选对了正确的示例,为接下来的学习做好了准备。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_150355.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_150355.html new file mode 100644 index 0000000..e939ebd --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_150355.html @@ -0,0 +1,5626 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 15:03:55 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频中,包含了一个常用短语 stand in line,意思是排队、站成一排。这里stand是站立的意思,line是队列、线的意思,组合在一起就是站成队列哦。
+1. 听音选句
+Brainy:仔细听音频,下面哪个句子是你刚刚听到的内容呢?
+- Stand in a circle.
+  - Brainy:哎呀,这句话说的是站成一个圈,并不是我们听到的排队哦,再仔细听听音频试试吧~
+- Stand in line! [正确]
+  - Brainy:太棒啦!你精准听出了这个短语stand in line,太厉害了!
+
+2. 听音选意
+Brainy:"站成一个圈"是这句话的中文意思吗?
+- 对 / Yes
+  - Brainy:不对哦,再想想stand in line的意思,重新选一次吧~
+- 错 / No [正确]
+  - Brainy:答对啦!stand in line是站成一排、排队的意思,你已经完全掌握这个表达啦!
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first hear Justin's instruction "Stand in line!", then Brainy asks which group is standing in line, and you pick the right group to get ready for the next step.(你首先听到贾斯汀老师的指令“排队!”,之后布莱尼询问哪一组在排队,你选出了正确的小组,为下一步做好了准备。)
+Next you hear Justin tell everyone "Read the blackboard!", then Ben asks what you should do now, and you choose the right action so Ben says he understands the task.(接下来你听到贾斯汀老师让大家“看黑板!”,之后本询问你们现在该做什么,你选对了行动,本表示他明白要做的任务了。)
+Finally you hear Justin's order "Take number 1 as an example!", then Ben asks who you should look at, and you pick the right person so Ben says he is all ready now.(最后你听到贾斯汀老师的指令“以1号为例!”,之后本询问你们该看谁,你选对了对应的人,本表示他现在已经完全准备好了。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_151410.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_151410.html new file mode 100644 index 0000000..6b56089 --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_151410.html @@ -0,0 +1,5631 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 15:14:10 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频中,包含了一个常用短语 stand in line,意思是排队、站成一排。这是课堂和公共场合很常用的指令表达哦。
+1. 听音选句
+Brainy:仔细听音频,选出你听到的句子吧。
+- Stand in a circle.
+  - Brainy:哎呀,这句话说的是站成一个圈,并没有提到line(队伍)哦,再仔细听一听吧。
+- Stand in line! [正确]
+  - Brainy:太厉害啦!你准确听出了短语stand in line,听力小耳朵超灵敏的!
+
+2. 听音选意
+Brainy:"站成一个圈"是这句话的中文意思吗?
+- 对 / Yes
+  - Brainy:这句话里的line是“队伍、排”的意思,不是圆圈哦,再想想看吧。
+- 错 / No [正确]
+  - Brainy:完全正确!你已经掌握了stand in line这个短语的意思啦,它的意思就是排队、站成一排哦。
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first heard teacher Justin ask everyone to stand in line, and you chose the right group that was standing in a single line, getting ready for the next activity. (你首先听到Justin老师让大家排队,你选出了正排成单列的队伍,为接下来的活动做好了准备。)
+Then you heard Justin tell everyone to read the blackboard, you picked the right action to follow the instruction, and Ben said he had got the task clearly. (之后你听到Justin让大家看黑板,你选出了符合指令的正确动作,Ben表示他已经清楚要做的任务了。)
+Finally you heard Justin ask everyone to take number 1 as an example, you found the right person to refer to, and Ben said he was all ready for the following task. (最后你听到Justin让大家以1号为例,你找到了对应的参考对象,Ben表示他已经完全准备好完成后续任务了。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_152759.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_152759.html new file mode 100644 index 0000000..8fc8ccd --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_152759.html @@ -0,0 +1,5647 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 15:27:59 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频中,包含了一个常用短语 stand in line,意思是排队、站成一排。其中 stand 是站立的意思,line 是队列、线的意思,这个短语在日常排队的场景中经常会用到哦。
+1. 听音选句
+Brainy:接下来我们听一听,哪个选项是你刚刚听到的句子呀?
+- Stand in line! [正确]
+  - Brainy:太厉害啦!你精准听出了这个短语 stand in line,非常棒!
+- Stand in a circle!
+  - Brainy:哎呀,这句话里说的是站成一圈,可不是站成一排哦,再仔细听听音频里的内容吧!
+
+2. 听音选意
+Brainy:这句话的中文意思是“站成圈”,对不对呀?
+- 对 / Yes
+  - Brainy:不对哦,你再回忆一下短语 stand in line 的意思,再试一次吧~
+- 错 / No [正确]
+  - Brainy:答对啦!stand in line 是排队、站成一排的意思,你已经完全掌握这个短语啦!
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first hear Justin's instruction "Stand in line!", then need to pick the group that lines up correctly, and the right choice will get Brainy's praise for being ready for the next task. (你首先听到Justin老师的指令“排队!”,需要选出正确排队的队伍,选对后会得到Brainy的夸赞,表示你已经为下一步做好准备了。)
+Next you hear Justin ask everyone to "Read the blackboard!", then you need to choose the right action to follow the instruction, and the correct choice will get Ben's positive response that he has got it. (接下来你听到Justin老师要求大家“看黑板!”,需要选出符合指令的正确行为,选对后Ben会给出积极回应表示他明白了。)
+Finally you hear Justin say "Take number 1 as an example!", then you need to find the right person to refer to, and the correct choice will make Ben say he is already ready. (最后你听到Justin老师说“以1号为例!”,需要找出正确的参考对象,选对后Ben会表示他已经准备就绪了。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_154030.html b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_154030.html new file mode 100644 index 0000000..e4e1e1a --- /dev/null +++ b/business_production/组件配置/interactive-component-json/outputs/L1-S2-U18-L2 登龙秘笈_20260602_154030.html @@ -0,0 +1,5973 @@ + + + + + +L1-S2-U18-L2 登龙秘笈 — 组件JSON报告 + + + + + +
+ + + + +
+
+
就绪
+
+
+ 成功: 0 + 失败: 0 +
+
+ +
+
+

L1-S2-U18-L2 登龙秘笈

+
+ 生成时间: 2026-06-02 15:40:30 + 模型: doubao-seed-2.0-pro + Wiki: KNAZwTYXsib2Ijk6BrGciRelnSf +
+
+ +
+
+
1
核心互动
+
16
中互动
+
+
17
总组件
+
17
成功
+
0
失败
+ +
+ + +
+
+ 1 + 对话朗读 + cId: 1218201 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 2 + 对话朗读 + cId: 1218202 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 3 + 对话挖空 + cId: 1218203 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 4 + 对话朗读 + cId: 1218204 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 5 + 对话挖空 + cId: 1218205 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 6 + 对话朗读 + cId: 1218206 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 7 + 对话组句 + cId: 1218207 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 8 + 对话选读 + cId: 1218208 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 9 + 图片单选 + cId: 1218209 + mid_image_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
meaning
resourceMapping
question
imageInfo
optionList
answer
preDialog
tip
corFeedback
errFeedback
postDialog
cDesc
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 10 + 对话挖空 + cId: 1218210 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
audioFile
itemName
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 11 + 对话朗读 + cId: 1218211 + mid_dialog_repeat + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 12 + 对话挖空 + cId: 1218212 + mid_dialog_fillin + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
img
question
optionGroupList
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 13 + 对话选读 + cId: 1218213 + mid_dialog_select + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 14 + 对话组句 + cId: 1218214 + mid_dialog_sentence + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
question
optionList
answer
tip
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 15 + 对话选择 + cId: 1218215 + mid_dialog_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
resourceMapping
preDialog
imgShowTimingList
optionList
answer
corFeedback
errFeedback
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ +
+
+ 16 + 核心核心互动-听力选择 + cId: 1218216 + core_listening_choose + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
sceneDesc
key
resourceMapping
cDesc
+
+ +
+ +
+ +
+
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
+ +
+
+ +
+ +
+ + + + + + + +
learningPart
closing
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+ +
+ +
```
+# 重点句子 1
+音频文本:Stand in line!
+讲解文本:刚刚听到的音频里,有个很实用的短语 stand in line,意思是排队。这是在集体活动里老师常说的指令哦,要记住它的发音~
+1. 听音选句
+Brainy:仔细听音频,选一下你听到的句子是哪一个吧。
+- Stand in line! [正确]
+  - Brainy:太厉害啦!你精准听出了这个短语stand in line哦!
+- Stand up please!
+  - Brainy:哎呀,这句话是“请站起来”的意思,没有我们的重点短语stand in line,再听一遍音频试试吧~
+
+2. 听音选意
+Brainy:“排队!”这句话的意思和你听到的句子一致吗?
+- 对 / Yes [正确]
+  - Brainy:完全正确!你已经掌握了stand in line是排队的意思啦,真棒!
+- 错 / No
+  - Brainy:再想想哦,这句话是老师给出的行动指令,和排队有关,再选一次吧~
+---
+# 重点句子 2
+音频文本:Read the blackboard!
+讲解文本:刚刚听到的音频里,有个常用短语 read the blackboard,意思是看黑板、读黑板上的内容。课堂上老师经常会说这句话哦。
+1. 听音选句
+Brainy:认真听音频,看看哪个是你刚刚听到的句子吧。
+- Read the book!
+  - Brainy:这句话说的是“读书”,没有出现blackboard哦,再仔细听听音频内容吧~
+- Read the blackboard! [正确]
+  - Brainy:太棒啦!你准确听出了关键词blackboard,太厉害了!
+
+2. 听音选意
+Brainy:“打开书本!”这句话的意思和你听到的句子一致吗?
+- 对 / Yes
+  - Brainy:不对哦,这句话里的动作和黑板有关,不是书本,再试试看~
+- 错 / No [正确]
+  - Brainy:答对啦!你已经明白read the blackboard是看黑板的意思,掌握得很好哦!
+---
+# 重点句子 3
+音频文本:Take number 1 as an example!
+讲解文本:刚刚听到的音频里,有个很有用的短语 take ... as an example,意思是以……为例,后面加上具体的内容就能说明要参考哪个对象啦。
+1. 听音选句
+Brainy:仔细听音频,选出你听到的那句内容吧。
+- Take number 1 as an example! [正确]
+  - Brainy:太聪明啦!你准确捕捉到了句子里的number 1,非常棒!
+- Take number 2 as an example!
+  - Brainy:哦,这句话里说的是number 2,和我们听到的数字不一样哦,再听听音频吧~
+
+2. 听音选意
+Brainy:“以1号为例!”这句话的意思和你听到的句子一致吗?
+- 错 / No
+  - Brainy:再想想哦,句子里说的参考对象是数字1,不是别的内容,再选一次吧~
+- 对 / Yes [正确]
+  - Brainy:完全正确!你不仅听懂了句子,还掌握了take ... as an example这个实用短语哦!
+---
+# 完成反馈
+Brainy:很好!你已经回答完了全部问题,相信你已经听懂了这个任务中所有的重点句子。现在让我们来查看结果吧!
+```
+
+ +
+ +
You first hear Justin's instruction "Stand in line!", then you pick the right group that is queuing properly, and Brainy praises you that you are ready for the next step.(你首先听到贾斯汀老师的指令“排队!”,接着你选出了正确排队的队伍,布雷尼表扬你已经为下一步做好准备了。)
+You listen to Justin asking everyone to read the blackboard, then you choose the right action of reading the blackboard as required, and Ben says he has got the task too.(你听到贾斯汀老师让大家读黑板上的内容,接着你选出了按要求读黑板的正确动作,本说他也明白要做什么了。)
+You hear Justin telling everyone to take number 1 as an example, then you pick the correct person to refer to, and Ben says he is all ready for the following task.(你听到贾斯汀老师让大家以1号作为例子,接着你选出了对应的正确参考对象,本说他已经准备好完成后续任务了。)
+
+
+ + +
+
+ +
+
+ 17 + 对话表达 + cId: 1218217 + mid_dialog_express + + + + + 已保存 + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cType
cId
title
asrPrompt
resourceMapping
preDialog
imgShowTimingList
img
tip
corFeedback
errFeedback
question
example
postDialog
+
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
pushType
cType
cId
kpInfo
+
+ +
+
+ + +
+
+ + +
+ + + + + + + \ No newline at end of file diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/__init__.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/__init__.cpython-312.pyc index 1c7f066956a5b59b37e32ccac247920c77606415..51d9f11b97ad58d54036281fc19fdcca43805497 100644 GIT binary patch delta 65 zcmdnNc$JaoG%qg~0}wPg$Yo9BF=YK(2;@w(S5inSEzZnKEiR5PD9TSMO)kmI&(nXt TyXDF5Z7*AUpYL5aF+C6fm{1vT delta 36 qcmcc0xPy`BG%qg~0}wC;f5@E3W61O?e4>*QTXA+~PEPT}mOucybqh@Z diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_imagedrag_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_imagedrag_prompts.cpython-312.pyc index caf8fb6a754d5708a5dd832a62aa5765411e3ff9..c25ca9839429959ac3f7a80d4675c8d5d7b84b51 100644 GIT binary patch delta 69 zcmX>Z@GOAmG%qg~0}wPg$YpKh5mjUTS`Xw+R#sC|NGdJP%u6jUjxQ+6Pbp0<$;{8w Xf4;lr$?k10TYI1HUANg=?H?lm7j7F) delta 40 ucmaDBa58}BG%qg~0}u%Hf5_a(BdW&qD|ND(ni5-ac4kga@#YM*e~bVKd<}O1 diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_listening_choose_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_listening_choose_prompts.cpython-312.pyc index 5cda2ca6503133708ea728b8e9c102872cfc7c1d..43bfc304ba25477ef3db0634e0ff0566c135ba26 100644 GIT binary patch delta 128 zcmbO`gYn-CMxN8Wyj%=G(BL4KwUI~MEBR|1kf&dipI@S{mtT;Ymz~vQkqNa_CDXcPCqlRB(*3J cC{dQGo1C9pke`>DSE8F$3{b8XmF6r+Q{P-nEkZ{$kQ*%&o9x}%P&aHOU_9w*Dud6$}TQQ zOitCU$V|+yOw7|yDlN{;OD!&rFDS}SDNQcP%+J$*zPshg?rkqyd!O%Jr=OWul3J7q nlqgHpP0r6P$j?j7E78p=2C4&U$t@@;)}Q=QPIz;1paByANqIMd delta 31 mcmZo!!MJ!iBhP7GUM>b8II-?y=0+Z`K&D@6n|B6!GXVgmJPODF diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_listening_order_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_listening_order_prompts.cpython-312.pyc index 9c8a599b45ed0fd1e8453971fbe5ddc2f7513d60..8e00756ff5d9102c206bbee4e0237e74e9032949 100644 GIT binary patch delta 128 zcmZ3zk+EkJBhP7GUM>b8XmF6r+Q?HEmi)C9$kQ*%&o9x}%P&aHOU_9w*Dud6$}TQQ zOitCU$V|+yOw7|yDlN{;OD!&rFDS}SDNQcP%+J$*zPshg?rkqyd!O%Jr=OWul3J7q clqgHpP0r6P$j?j7E78p=2CCcK6DH3D0P5Q^>;M1& delta 31 lcmeC##JGARBhP7GUM>b8a9Z~}kkT*FaUr8aUv^X;_wYWIGpeR43G`S=* ZKTrSp?v^LJx4mrbeZF_y<_Y;znE;8g9dG~u delta 42 xcmX@~gmLK;MxN8Wyj%=Gz|!y`b0bewKGUz{$=UfzY{l7`IXT6f*XB=U0suey4}1Us diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_speaking_image_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_speaking_image_prompts.cpython-312.pyc index d150d3efc60627d06235a687742524185a559a11..3df6d0b4f9e15b0b2407c4a03ed0b21212a6e5c3 100644 GIT binary patch delta 71 zcmdn7nDOdjMxN8Wyj%=G(BL4KwUOt$AM4i^Aa63Ozmh^yX>n#=YH@LVK~a86X>v(s ZexCmG-7QacZ+qF=`+V=Z&AR^GOaOEF9ESh^ delta 42 xcmcb*m~qEqMxN8Wyj%=G;Ii;z=0=|HeoVizCUf{Ju@z@$=HwJ__VVv$0suW&4)p*4 diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_speaking_inquiry_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_speaking_inquiry_prompts.cpython-312.pyc index 18d260557d44cdaac3761e8b20ed75fcdf9f3e95..51b9326f0c9193c902d301c8c720cb4bbfb47839 100644 GIT binary patch delta 71 zcmcbxpYiQ}MxN8Wyj%=G(BL4KwUNgxmi22JkT=;SR!JeLv^X;_wYWIGpeR43G`S=* ZKTrSp?v^LJx4mrbeZF_y=A76RCIEV+9I^la delta 42 xcmaF6pYg(eMxN8Wyj%=GaB#uL%#A!|u}r^mCcDQfu@z@$=HwJ_?u<=g0sv8O51ar1 diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_speaking_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_speaking_prompts.cpython-312.pyc index 0d94728573e4cad3606b32162dfb9f2df458b31f..cf5ae06994a5a98aa7384662fbb6d462ab90f4cb 100644 GIT binary patch delta 69 zcmaDH*AUNhnwOW00SFo#@-uAM!_xav+n_sk8FarRBz#Xpu delta 42 xcmdlxfoZ`6CZ5y0yj%=GFz?XE%#A#oT9|&NPd?nD#8#Z0nUhnznYGn|830Hq519Y} diff --git a/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_writing_question_prompts.cpython-312.pyc b/business_production/组件配置/interactive-component-json/prompts/__pycache__/core_writing_question_prompts.cpython-312.pyc index 182f34c0bc9ed8fa1727f2989cfe039594866734..fc8acd9ffff79415cd33bd7570c3c620a487928c 100644 GIT binary patch delta 71 zcmZ3!fa%BrCZ5y0yj%=G(BL4KwUOsU59`-9AaC-u9wmjO(&Eg#)Z*g!f};GC(&UoN a{5<{VyIY>@-uAM!_xav+oB#D_G6Mjb?;b4x delta 42 xcmX@IfNA*xCZ5y0yj%=G5PkS#=0=_qJxsrHCg1E)Vk^$h%*iR#mHGKpW}ef$yj%=G(BL4KwUMWYgY|0#kT_>{Sk=PE1HugJ;ISe4j{vomvYiZ^SpDVPEPG8ztc diff --git a/business_production/组件配置/interactive-component-json/scripts/__pycache__/feishu_client.cpython-312.pyc b/business_production/组件配置/interactive-component-json/scripts/__pycache__/feishu_client.cpython-312.pyc index 6c63d35b6b1f63408d05a6c8c0b587f070054259..0633ab95427e4f460fa9a3eaf83d9cbf3de77ac5 100644 GIT binary patch delta 22 ccmaDfm+{eDM()$Ryj%=G(BL4qk^8zI0988%x&QzG delta 22 ccmaDfm+{eDM()$Ryj%=GurytEBlmSb09PXi1poj5 diff --git a/business_production/组件配置/interactive-component-json/scripts/__pycache__/generate_json.cpython-312.pyc b/business_production/组件配置/interactive-component-json/scripts/__pycache__/generate_json.cpython-312.pyc index 2a34dc1e47f7e5f8089de1ef65accacc4063a18a..e967f264bccc4d94c63eb1debfa3174c5d9a85ce 100644 GIT binary patch delta 75 zcmZ2~g!Rl3R-V(myj%=G(BL4KwUOsG7wgwDAaC+ZE+vJe(&Eg#)Z*g!f};GC(&UoN d{5<{VyIY>@-uAM!_xav+&4S$91-TjJ!U6dJ9UK4v delta 46 zcmX?egmwK9R-V(myj%=G@PE?Z%#A#^xtM;%On$?q#8#Z0nUho8tjE1wkDF008~~W# B5MKZQ diff --git a/business_production/组件配置/interactive-component-json/scripts/__pycache__/html_report.cpython-312.pyc b/business_production/组件配置/interactive-component-json/scripts/__pycache__/html_report.cpython-312.pyc index 0c119cf5c66a3719b25195f8087301a3be1dea9f..6190787957bbbf37aa28955f28edc9044c82c718 100644 GIT binary patch delta 6611 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 delta 3371 zcmaJ@dr(tX8owv6dy|+1NJ1dtaZxb@0zn==KtvRa(^kPW_mYlwW_vUF z<@^1<@4UX7@0_#qfqe2~x&8y4PDA16tMQ+Fi$8i>U#NfuxoX)x85A$GL$BfkJ*WPo zYEU_#;51th?}U}P7K4_PosyAO6g8maw9u)t!I08KD_f`mIj4j7l-)=VPE{#J;ww;T zV5iED3~*27kSB4;kVWTWRh_~s2Q;_~!ve9Z7Rr$V?R1aKp@Qpl7W_cpmVLh-ZZp$W z;U1sgABKE&gJubib>MF}0KZd*)nDr9X{znDLQ0g;9Mho1@P=s-@S(v+H_AC>L@yyQhrnD6aYI8((~4TJC&+p0cs|I- z)ven?lF65osCjTd!>c0m=c|Cryp1QYJZpyXSuC_f`?B89AXk)iyok`_(bM^>5Nd!2 z1zf>%Bz_r&6(-F;Ph?n<~CSC%a z1l$m)ht47(d3$UWx3+Y z_06kW9_y%oysojfV|h(8UrOS{9FTPLWpH;%W^p$$I|-0F z0adkI3#9i)_(B5YEyOh>dA@MS@7~7O5cPEe0r;dg6FK3>+U`v9M~WwR@ZJFDHr{BN4Hi^?dq8Uhm>ZWnJpLvZxpyQc{Rw zO?pT%M##GmA1?V>7*?i%xhYF;dPq+BSyq}kEwG!LTzg*0a_^)NMz zI1AC0X;@dm3r%*5Y|3j*tWb=y;iw##(VSJ8!5I@PcqAed_h1rZv#@0rt!!*1i582k zWZ2Z4xm+vqnV3%#tz2yBL~9nd^rB_QmO-@gu=VJC9m6Ow?qDhi&HvTrC+0I~fjcX+ zjTWxpv@@Y0O3c8Axkgk7#j8qD8oaPF8+NQR(UyU`!%Z$If!*j5hy)j3Wwsq$EdwPwM&HZ|&jo2w7!TqI3NBmQ3)el6Y)|7^=gmq2JcEUPY$?p`xm1|7T1nR$-s z3qN~j`^14azt}S}vHj`KcaBW#7@63)`_}n43m|ECYV_jnml)`OdAID;$|!vh&4zvd zP$+8r{ya!~KL9VE$kv7W!ke(LI1;csDk1z4PW~l5?7DOjhA!JsN%Yv|dYQrHVw-Us z>j?%n`nok>zLF0$SB%hhWi~v2Wfr`Br5+Tq6gYAuu(P-Mlv(&T~|1#E``JJs}OSqfVV~ zBb(P1?$$GB?UnG>hiB=h#3{1SJywGT;m>3Ju;bcMdB`1r zFW)di>9{GYstWfPz{|9=)vUeCAN2It*@`KtGWuZLC6E68x<+jv>msL3QBUacz{Vi_ z`(}yZA@0EWfc8&QqwJ?K87%(%9PGHAqg-fb3pCI)kqRr!2Do|KthFz2alS1H-3iz4 z=%8~#4JXWcI5trPvg1bhY~m(86&J0zYf!-JUr$G^@c!2?TFEgQN1k8%N6O%(Z_3dq zeDF_NE)wtRwk{^8eC)A$Q#R zSWIELk)ClDCsVg_Z>AVyLwISZcoDk(^x&DljAn$52VuKllZ&u%i9zy-4wI?gkCAc&-AM|BW6;f+Z*LVR|W)s{7QQ@E2Sw#KANIzvO(`p zwjr^SI!OV1gdtA*gWcV}K(|zm>TYkO5er_P|Ad5y#U|eP#8MP*eB=@<-nMvBDbh`! z+_=Om{`bs+-XPcK_b%k`V~yOT!p~q3#E~E&CAQh00a#VavQn-+W`PSYX#x} delta 20 acmeCG>#E~E&CAQh00gJZMK*H(w*vq{2?iMe diff --git a/business_production/组件配置/interactive-component-json/scripts/__pycache__/llm_client.cpython-312.pyc b/business_production/组件配置/interactive-component-json/scripts/__pycache__/llm_client.cpython-312.pyc index 76af7e9eda1e5ece5b4af38457ba0b5ccffbb394..7ef27624e4c2ae81de48bd830f919bd7103c5c65 100644 GIT binary patch delta 20 acmZpPX^G)J&CAQh00a#VavQmS>H+{cq6K>Z delta 20 acmZpPX^G)J&CAQh00g to prevent premature tag closure) + def _js_safe(s): + return s.replace("
- + + + @@ -637,6 +644,7 @@ body {{ font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto San const COMPONENTS = {components_json}; const PUSH_FIELD_MAP = {push_field_map_json}; const CHARACTER_MAP = {character_map_json}; +const SECTION_CHAR_MAP = {section_char_map_json}; const LEVEL = {level_json}; function getApiUrl() {{ @@ -1020,15 +1028,16 @@ async function pushKp(idx) {{ // ============ Push All ============ let pushAllRunning = false; -async function pushAll() {{ +async function _runPushAll(mode) {{ if (pushAllRunning) return; pushAllRunning = true; _batchMode = true; _batchErrors = []; - const btn = document.getElementById('pushAllBtn'); - btn.disabled = true; - btn.textContent = '推送中...'; + const cfgBtn = document.getElementById('pushAllCfgBtn'); + const kpBtn = document.getElementById('pushAllKpBtn'); + if (cfgBtn) {{ cfgBtn.disabled = true; cfgBtn.textContent = '推送中...'; }} + if (kpBtn) {{ kpBtn.disabled = true; kpBtn.textContent = '推送中...'; }} const validIdxs = []; for (let i = 1; i <= COMPONENTS.length; i++) {{ @@ -1036,7 +1045,8 @@ async function pushAll() {{ if (c.status === 'generated' || c.status === 'saved') validIdxs.push(i); }} - const total = validIdxs.length * 2; + const perComp = (mode === 'both') ? 2 : 1; + const total = validIdxs.length * perComp; let done = 0, okCount = 0, failCount = 0; function updateProgress() {{ @@ -1051,56 +1061,57 @@ async function pushAll() {{ const comp = COMPONENTS[idx - 1]; _batchContext = comp.cType + ' / cId:' + comp.cId; - // Push config - const body1 = buildPushBody(idx); - if (body1) {{ - setStatus('cfg-status-' + idx, 'loading'); - const r1 = await doPush(body1); - if (r1.ok) {{ setStatus('cfg-status-' + idx, 'ok'); okCount++; }} - else {{ setStatus('cfg-status-' + idx, 'fail'); failCount++; _batchErrors.push('[' + _batchContext + '] 推送失败: ' + r1.error); }} - }} else {{ - setStatus('cfg-status-' + idx, 'fail'); - failCount++; + if (mode === 'config' || mode === 'both') {{ + const body1 = buildPushBody(idx); + if (body1) {{ + setStatus('cfg-status-' + idx, 'loading'); + const r1 = await doPush(body1); + if (r1.ok) {{ setStatus('cfg-status-' + idx, 'ok'); okCount++; }} + else {{ setStatus('cfg-status-' + idx, 'fail'); failCount++; _batchErrors.push('[' + _batchContext + '] 配置推送失败: ' + r1.error); }} + }} else {{ setStatus('cfg-status-' + idx, 'fail'); failCount++; }} + done++; updateProgress(); }} - done++; - updateProgress(); - // Push kp - const body2 = buildKpPushBody(idx); - if (body2) {{ - setStatus('kp-status-' + idx, 'loading'); - const r2 = await doPush(body2); - if (r2.ok) {{ setStatus('kp-status-' + idx, 'ok'); okCount++; }} - else {{ setStatus('kp-status-' + idx, 'fail'); failCount++; _batchErrors.push('[' + _batchContext + '] 知识点推送失败: ' + r2.error); }} - }} else {{ - okCount++; + if (mode === 'kp' || mode === 'both') {{ + const body2 = buildKpPushBody(idx); + if (body2) {{ + setStatus('kp-status-' + idx, 'loading'); + const r2 = await doPush(body2); + if (r2.ok) {{ setStatus('kp-status-' + idx, 'ok'); okCount++; }} + else {{ setStatus('kp-status-' + idx, 'fail'); failCount++; _batchErrors.push('[' + _batchContext + '] 知识点推送失败: ' + r2.error); }} + }} else {{ if (mode === 'both') okCount++; }} + done++; updateProgress(); }} - done++; - updateProgress(); }} _batchContext = ''; - btn.disabled = false; - btn.textContent = '一键推送全部配置+知识点'; + if (cfgBtn) {{ cfgBtn.disabled = false; cfgBtn.textContent = '推送全部组件'; }} + if (kpBtn) {{ kpBtn.disabled = false; kpBtn.textContent = '推送全部知识点'; }} pushAllRunning = false; _batchMode = false; if (failCount > 0) {{ let summary = '推送完成: 成功 ' + okCount + ', 失败 ' + failCount; - if (_batchErrors.length > 0) {{ - summary += '\\n\\n失败详情:\\n' + _batchErrors.join('\\n'); - }} + if (_batchErrors.length > 0) summary += '\\n\\n失败详情:\\n' + _batchErrors.join('\\n'); showModal(summary); }} else {{ showToast('推送完成: 全部成功 (' + okCount + '项)', 'success'); }} }} +function pushAllComponents() {{ _runPushAll('config'); }} +function pushAllKpAll() {{ _runPushAll('kp'); }} + // ============ Regenerate ============ function toggleRegenPanel(idx) {{ const panel = document.getElementById('regen-panel-' + idx); if (!panel) return; - panel.style.display = panel.style.display === 'none' ? 'block' : 'none'; + const showing = panel.style.display !== 'block'; + panel.style.display = showing ? 'block' : 'none'; + if (showing) {{ + const card = document.getElementById('card-' + idx); + if (card) card.classList.add('open'); + }} }} async function regenerateComponent(idx) {{ @@ -1130,6 +1141,8 @@ async function regenerateComponent(idx) {{ type_name: comp.type_name, cId: comp.cId, character_map: CHARACTER_MAP, + section_char_map: SECTION_CHAR_MAP, + config_info: comp.config_info || '', level: LEVEL, }}), }}); @@ -1208,8 +1221,9 @@ function rebuildComponentBody(idx, data) {{ }} }} - if (data.kpInfo) {{ - const kpClean = JSON.parse(JSON.stringify(data.kpInfo)); + const kpToShow = data.kpInfo || comp.kpInfo; + if (kpToShow) {{ + const kpClean = JSON.parse(JSON.stringify(kpToShow)); if (kpClean.kpInfo) {{ kpClean.kpInfo.forEach(k => delete k.candidates); if (kpClean.kpInfo.length > 0) {{ @@ -1233,17 +1247,32 @@ function buildJsonSectionHtml(label, key, data, idx) {{ const raw = JSON.stringify(data, null, 2); const escaped = raw.replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"'); const taId = 'ta-' + idx + '-' + key; + const secId = 'sec-' + idx + '-' + key; + const veId = 've-' + idx + '-' + key; const numLines = raw.split('\\n').length; const rows = Math.min(Math.max(numLines, 5), 30); let lineNums = ''; for (let i = 1; i <= numLines; i++) lineNums += '' + i + ''; - return '
' + - '' + - '
' + - '
' + lineNums + '
' + - '' + - '
'; + const isObj = data && typeof data === 'object' && !Array.isArray(data); + const toggleBtn = isObj + ? '' + : ''; + const veDiv = isObj + ? '' + : ''; + + return '
' + + '' + + veDiv + + '
' + + '
' + + '
' + lineNums + '
' + + '' + + '
' + + '' + + '
' + + '
'; }} function ensurePushButtons(idx) {{ @@ -1271,6 +1300,51 @@ function ensurePushButtons(idx) {{ header.insertBefore(cfgBtn, kpBtn); }} +// ============ LocalStorage Auto-Save ============ +const SAVE_KEY = 'icj_' + document.title; + +function saveEdits() {{ + const state = {{}}; + document.querySelectorAll('textarea, input.kp-input, input.ve-input, #apiUrlInput').forEach(el => {{ + if (el.id) state[el.id] = el.value; + }}); + try {{ localStorage.setItem(SAVE_KEY, JSON.stringify(state)); }} catch(e) {{}} +}} + +function restoreEdits() {{ + let state; + try {{ state = JSON.parse(localStorage.getItem(SAVE_KEY) || 'null'); }} catch(e) {{ return; }} + if (!state) return; + for (const [id, val] of Object.entries(state)) {{ + const el = document.getElementById(id); + if (el) el.value = val; + }} + document.querySelectorAll('.json-textarea').forEach(ta => syncLineNums(ta)); +}} + +let _saveTimer = null; +document.addEventListener('input', function(e) {{ + const el = e.target; + if (el.tagName === 'TEXTAREA' || el.tagName === 'INPUT') {{ + clearTimeout(_saveTimer); + _saveTimer = setTimeout(saveEdits, 800); + }} +}}); + +// ============ Export Updated HTML ============ +function exportHtml() {{ + document.querySelectorAll('textarea').forEach(ta => {{ ta.textContent = ta.value; }}); + document.querySelectorAll('input[id]').forEach(inp => {{ inp.setAttribute('value', inp.value); }}); + const blob = new Blob(['\\n' + document.documentElement.outerHTML], {{type: 'text/html;charset=utf-8'}}); + const a = document.createElement('a'); + a.href = URL.createObjectURL(blob); + a.download = document.title.replace(/ \u2014.*$/, '') + '_modified.html'; + a.click(); + URL.revokeObjectURL(a.href); + showToast('HTML已导出,当前修改已嵌入', 'success'); +}} + +restoreEdits(); ''' diff --git a/business_production/组件配置/interactive-component-json/scripts/pipeline.py b/business_production/组件配置/interactive-component-json/scripts/pipeline.py index 1d40ebf..6574846 100644 --- a/business_production/组件配置/interactive-component-json/scripts/pipeline.py +++ b/business_production/组件配置/interactive-component-json/scripts/pipeline.py @@ -389,6 +389,7 @@ def process_script(wiki_url_or_token, db_path=None, dry_run=False, target_cids=N "category": category, "result": result, "raw_config": comp.get("teaching_config", ""), + "config_info": comp.get("config_info", ""), } if dry_run: @@ -503,6 +504,7 @@ def process_script(wiki_url_or_token, db_path=None, dry_run=False, target_cids=N "jsonData": result_data.get("jsonData"), "kpInfo": result_data.get("kpInfo"), "raw_config": res.get("raw_config", ""), + "config_info": res.get("config_info", ""), } if status == "saved": entry["component_id"] = res.get("component_id") @@ -532,6 +534,7 @@ def process_script(wiki_url_or_token, db_path=None, dry_run=False, target_cids=N report["failed"] = _progress["failed"] report["skipped"] = _progress["skipped"] report["character_map"] = character_map + report["section_char_map"] = section_char_map report["level"] = level # 记录日志路径到报告 diff --git a/business_production/组件配置/interactive-component-json/scripts/proxy_server.py b/business_production/组件配置/interactive-component-json/scripts/proxy_server.py index e728f73..834ada4 100644 --- a/business_production/组件配置/interactive-component-json/scripts/proxy_server.py +++ b/business_production/组件配置/interactive-component-json/scripts/proxy_server.py @@ -170,6 +170,7 @@ def _do_regenerate(body_data): type_name = body_data.get("type_name", "") cId = body_data.get("cId", "") character_map = body_data.get("character_map") or {} + section_char_map = body_data.get("section_char_map") or [] level = body_data.get("level") or None if not teaching_config or not type_name: @@ -186,7 +187,7 @@ def _do_regenerate(body_data): try: llm_client = LLMClient() - result = generate_component(component, character_map=character_map, llm_client=llm_client, level=level) + result = generate_component(component, character_map=character_map, section_char_map=section_char_map, llm_client=llm_client, level=level) return 200, result except Exception as e: logger.error(f"Regenerate failed: {traceback.format_exc()}") diff --git a/scripts/backfill_G_152_plus.py b/business_production/英文台词/scripts/backfill_G_152_plus.py similarity index 100% rename from scripts/backfill_G_152_plus.py rename to business_production/英文台词/scripts/backfill_G_152_plus.py diff --git a/scripts/fill_000001.py b/business_production/英文台词/scripts/fill_000001.py similarity index 100% rename from scripts/fill_000001.py rename to business_production/英文台词/scripts/fill_000001.py diff --git a/business_production/英文台词/skills/kids-english-script-production/SKILL.md b/business_production/英文台词/skills/kids-english-script-production/SKILL.md index fcf0458..11cd56e 100644 --- a/business_production/英文台词/skills/kids-english-script-production/SKILL.md +++ b/business_production/英文台词/skills/kids-english-script-production/SKILL.md @@ -66,6 +66,79 @@ description: 用英语母语儿童思维生成自然地道的分级英文台词 - 参数不合法:直接输出参数说明,提示正确用法 - 飞书写回失败:自动备份结果到本地 JSON 文件,不丢数据 +## 飞书模式执行规则(强制执行) + +### 0. 目录下多文档时必须确认目标文档 + +**问题:** 用户发的飞书链接可能是目录节点(包含多个子文档),如果目录下有原始文档 + 副本等多份文档,直接盲选会导致写到错误的文档。 + +**规则:** +1. 遍历目录子节点后,列出所有文档给用户确认 +2. 如果目录下只有 1 个 docx 文档 → 自动选择 +3. 如果目录下有多个 docx 文档 → 列出标题和 obj_token,让用户指定目标 +4. 禁止在有多份文档时自行猜测选择 + +### 1. 写入前必须验证行号连续性 + +**问题:** 飞书 Sheets API 的 range 写入按连续区域覆盖,不关心行号是否对应。剧本表格中 E 列有内容的行号通常不连续(中间有剧情描述空行),连续 range 写入会导致全列偏移。 + +**规则:** +- 写入前统计目标行号列表,检查连续性 +- 行号连续 → 可用 range 批量写入 +- 行号不连续 → 必须逐行写入(每个行号单独 range) +- 写入后抽样验证 E/F 列行号对齐(前5行+中间5行+末尾5行) + +详见 `feishu-embedded-sheet` 技能中的「批量写入前必须验证行号连续性」章节。 + +### 2. 完成后必须输出结果统计与变更明细(强制执行) + +**目的:** 给教研提供可量化的生产质量参考,同时作为执行者的自检手段——如果统计结果显示"改动极少"或"改动类型单一",说明可能没有严格执行 S2 适配规则。 + +**输出格式(飞书模式写入完成后必须输出):** + +``` +📊 英文台词生产结果统计 + +| 指标 | 数值 | +|------|------| +| 源列总行数 | 153 | +| 已写入目标列 | 153 | +| 无需改动(已达目标级别) | 114 | +| 已适配 | 39 | + +📝 变更明细: + +| 变更类型 | 数量 | 示例 | +|----------|------|------| +| 词汇降级 | 8 | in a hurry→fast, by myself→alone, must speak of→will tell them | +| 英式拼写 | 4 | favorite→favourite, practice→practise, Mom→Mum | +| 引号规范 | 4 | 弯引号 "..."→直引号 '...' | +| 长句拆分 | 22 | 一句拆两句,降低 S2 句长 | +| 拼写修正 | 1 | It's→it's(句中小写) | + +💡 适配说明: +- 原文已是儿童英文剧本,BoBo 台词为婴儿语(BoBo free! / Mess! Mess!),无需改动 +- User 台词大量为短句(Thank you. / I miss her. / Don't worry.),已达 S2 标准 +- 主要适配集中在:长句拆分(降低句长)、词汇降级(简化表达)、英式拼写统一 +``` + +**自检规则(强制执行):** +1. 如果"已适配"行数 < 总行数的 10%,检查是否遗漏了需要适配的行 +2. 如果变更类型只有 1-2 种,检查是否忽略了其他适配维度(词汇/句法/拼写/引号/标点) +3. 如果所有行都是"无需改动",说明没有执行适配——纯英文路径也必须逐行 LLM 审查 +4. 输出统计后,逐项确认变更明细与 S2 适配规则(句长/词汇/英式拼写/引号规范)的对应关系 + +### 3. 长时间运行任务必须主动反馈进度 + +**问题:** 英文台词生产涉及 LLM 调用 + 飞书 API 写入,批量处理 100+ 行可能需要数分钟。如果不给进度反馈,用户不知道是卡住了还是在运行中。 + +**规则:** +- 每处理 20 行或每完成一个阶段(输入解析/意群拆解/英语重构/写入),向用户发送进度消息 +- 格式:`📝 英文台词生产进度:已处理 40/153 行,当前阶段:英语思维重构` +- 写入阶段:每批写入完成后报告 `📝 写入进度:第 3/5 批完成(60/153 行已写入)` +- 如果单次操作预计超过 30 秒,先告知用户预估时间 +- 遇到异常(API 超时/LLM 失败)立即告知用户,不要静默重试超过 2 次 + ## 飞书模式输入规范 - 飞书表格中的多行台词必须使用真实换行符 `\n`,不要使用 HTML 的 `
`、`
`、`

` 等标签 - 如果把多句台词写成 `
` 连接,飞书读取后可能会变成单行粘连文本,破坏 `角色: 台词` 结构,影响后续意群拆解和英语思维重构 diff --git a/compare_vocabulary.py b/compare_vocabulary.py new file mode 100644 index 0000000..eb3b814 --- /dev/null +++ b/compare_vocabulary.py @@ -0,0 +1,41 @@ +import pandas as pd + +# 文件路径 +file1_path = r'/root/.openclaw/workspace-xiaoyan/business_knowledge/新知识库初版/全包词汇/L2知识库-三级+A2.xlsx' +file2_path = r'/root/.openclaw/workspace-xiaoyan/business_knowledge/新知识库初版/全包词汇/KET和三级不重复.xlsx' + +# 读取两个文件 +df1 = pd.read_excel(file1_path) +df2 = pd.read_excel(file2_path) + +print("文件1 (L2知识库-三级+A2.xlsx) 的列名:") +print(df1.columns.tolist()) +print("\n文件1 的前5行:") +print(df1.head()) + +print("\n" + "="*80 + "\n") + +print("文件2 (KET和三级不重复.xlsx) 的列名:") +print(df2.columns.tolist()) +print("\n文件2 的前5行:") +print(df2.head()) + +# 提取文件1中的单词(第一列) +words_from_file1 = set(df1.iloc[:, 0].astype(str).str.strip().str.lower()) + +# 在文件2中新增一列,标记重复的单词 +df2['是否与L2三级+A2重复'] = df2.iloc[:, 0].apply(lambda x: '是' if str(x).strip().lower() in words_from_file1 else '') + +# 统计重复数量 +duplicate_count = (df2['是否与L2三级+A2重复'] == '是').sum() +total_count = len(df2) + +print(f"\n" + "="*80) +print(f"总单词数:{total_count}") +print(f"重复单词数:{duplicate_count}") +print(f"重复率:{duplicate_count/total_count*100:.2f}%") + +# 保存结果 +df2.to_excel(file2_path, index=False) +print(f"\n已更新文件:{file2_path}") +print("新增列名:是否与L2三级+A2重复") diff --git a/compare_vocabulary2.py b/compare_vocabulary2.py new file mode 100644 index 0000000..c6de3ae --- /dev/null +++ b/compare_vocabulary2.py @@ -0,0 +1,41 @@ +import pandas as pd + +# 文件路径 +file1_path = r'/root/.openclaw/workspace-xiaoyan/business_knowledge/新知识库初版/全包词汇/A2中独有的单词.xlsx' +file2_path = r'/root/.openclaw/workspace-xiaoyan/business_knowledge/新知识库初版/全包词汇/KET和三级不重复.xlsx' + +# 读取两个文件 +df1 = pd.read_excel(file1_path) +df2 = pd.read_excel(file2_path) + +print("文件1 (A2中独有的单词.xlsx) 的列名:") +print(df1.columns.tolist()) +print("\n文件1 的前5行:") +print(df1.head()) + +print("\n" + "="*80 + "\n") + +print("文件2 (KET和三级不重复.xlsx) 的列名:") +print(df2.columns.tolist()) +print("\n文件2 的前5行:") +print(df2.head()) + +# 提取文件1中的单词(第一列) +words_from_file1 = set(df1.iloc[:, 0].astype(str).str.strip().str.lower()) + +# 在文件2中新增一列,标记重复的单词 +df2['是否与A2独有单词重复'] = df2.iloc[:, 0].apply(lambda x: '是' if str(x).strip().lower() in words_from_file1 else '') + +# 统计重复数量 +duplicate_count = (df2['是否与A2独有单词重复'] == '是').sum() +total_count = len(df2) + +print(f"\n" + "="*80) +print(f"总单词数:{total_count}") +print(f"重复单词数:{duplicate_count}") +print(f"重复率:{duplicate_count/total_count*100:.2f}%") + +# 保存结果 +df2.to_excel(file2_path, index=False) +print(f"\n已更新文件:{file2_path}") +print("新增列名:是否与A2独有单词重复") diff --git a/memory/.dreams/events.jsonl b/memory/.dreams/events.jsonl index dfe6a2a..42158cd 100644 --- a/memory/.dreams/events.jsonl +++ b/memory/.dreams/events.jsonl @@ -82,3 +82,5 @@ {"type":"memory.recall.recorded","timestamp":"2026-06-01T03:18:26.408Z","query":"句型库 L1 L2 pattern get home talk to","resultCount":2,"results":[{"path":"memory/2026-05-28.md","startLine":60,"endLine":66,"score":1},{"path":"memory/2026-05-28.md","startLine":46,"endLine":62,"score":1}]} {"type":"memory.recall.recorded","timestamp":"2026-06-01T10:44:19.887Z","query":"互动组件生产 中互动 核心互动 剧本表格 对话类","resultCount":3,"results":[{"path":"memory/2026-05-07.md","startLine":354,"endLine":368,"score":1},{"path":"memory/2026-05-18.md","startLine":793,"endLine":810,"score":1},{"path":"memory/2026-04-22.md","startLine":1,"endLine":8,"score":1}]} {"type":"memory.recall.recorded","timestamp":"2026-06-01T10:44:47.489Z","query":"王璐辰 反馈 组件配置 中互动 核心互动 问题","resultCount":2,"results":[{"path":"memory/2026-04-30.md","startLine":50,"endLine":63,"score":1},{"path":"memory/2026-05-07.md","startLine":354,"endLine":368,"score":1}]} +{"type":"memory.recall.recorded","timestamp":"2026-06-02T01:49:17.841Z","query":"英文台词生产 L1-S2-U17-L1 摩托怪客","resultCount":6,"results":[{"path":"memory/2026-05-28.md","startLine":46,"endLine":62,"score":1},{"path":"memory/2026-05-28.md","startLine":60,"endLine":66,"score":1},{"path":"memory/2026-05-29.md","startLine":1,"endLine":14,"score":1},{"path":"memory/2026-05-28.md","startLine":35,"endLine":49,"score":1},{"path":"memory/2026-05-18.md","startLine":791,"endLine":810,"score":1},{"path":"memory/2026-05-08.md","startLine":33,"endLine":55,"score":1}]} +{"type":"memory.recall.recorded","timestamp":"2026-06-02T07:02:08.195Z","query":"interactive-component-json 组件配置-json skill","resultCount":1,"results":[{"path":"memory/2026-05-20.md","startLine":40,"endLine":59,"score":1}]} diff --git a/memory/.dreams/short-term-recall.json b/memory/.dreams/short-term-recall.json index 096eb6a..c8f9bd3 100644 --- a/memory/.dreams/short-term-recall.json +++ b/memory/.dreams/short-term-recall.json @@ -1,6 +1,6 @@ { "version": 1, - "updatedAt": "2026-06-01T10:44:47.489Z", + "updatedAt": "2026-06-02T07:02:08.195Z", "entries": { "memory:memory/2026-05-07.md:57:74": { "key": "memory:memory/2026-05-07.md:57:74", @@ -198,13 +198,13 @@ "endLine": 55, "source": "memory", "snippet": "**图片资源新规:** - 每个题组共享一张图(非每题独立配图) - 产出 JSON 同时输出图片描述 prompt(英文,卡通简线条风格) - prompt 写入 bitable `图片描述` 列,格式 `{\"first\": \"...\", \"second\": \"...\"}` **通用化写入流程:** - 单元挑战全题型适用:定位 bitable 表 → 创建/更新记录 → 写入 `题目集合 ID` + `jsonData` + `图片描述` - 各题型仅 jsonData 结构不同,写入流程统一 **重写文件:** - `business_production/单元挑战/skills/unit_challenge/questions/writing/common/writing_pic_qa/SKILL.md`(11节完整规范) - `business_production/单元挑战/skills/unit_challenge/questions/writing/writing_pic_qa/SKILL.md`(简化为快速入口) **bitable 更新:** 已将新 JSON(每题组1图2题)+ 图片描述写入 `recviZlAxxXlAb` ### 刘彦江 (ou_5af74c1fb96042e33cc0f16b5ca02cf4) — 图片描述格式修正 - **时间:** 09:46 ~ 09:51 - **修正:** 用户给出中文样例格式,要求图片描述从英文 prompt 改为纯中文结构化列表 - **新格式:** 编号 `1.` / `2.` 自上而下,每段", - "recallCount": 11, + "recallCount": 12, "dailyCount": 0, "groundedCount": 0, - "totalScore": 11, + "totalScore": 12, "maxScore": 1, "firstRecalledAt": "2026-05-11T02:19:37.985Z", - "lastRecalledAt": "2026-05-26T02:59:03.427Z", + "lastRecalledAt": "2026-06-02T01:49:17.841Z", "queryHashes": [ "6f88450e9f9b", "be437071312f", @@ -216,7 +216,8 @@ "e637236fe74b", "14d903a64d04", "ab90b7e9cde8", - "240a6a5dca41" + "240a6a5dca41", + "7e6aa000abdb" ], "recallDays": [ "2026-05-11", @@ -224,7 +225,8 @@ "2026-05-18", "2026-05-20", "2026-05-25", - "2026-05-26" + "2026-05-26", + "2026-06-02" ], "conceptTags": [ "创建/更新记录", @@ -1874,20 +1876,22 @@ "endLine": 59, "source": "memory", "snippet": "3. **后置对话禁止重复下行台词**:如下行是 User 的后续台词,后置对话不能复制,统一用「无」 4. **组件配置权威文档**:`WD6LwyWNtip8M8k0RWxcbJDcnxe`(飞书知识库 - 教研生产配置、修改规范) ## [李应瑛] 组件配置正确流程纠正 - **纠正**:不应手动往 wiki 文档 C 列写文本格式配置,正确做法是用 pipeline 脚本 - **正确流程**: ``` cd /root/.openclaw/workspace-xiaoyan/business_production/组件配置/interactive-component-json && \\ python3 scripts/pipeline.py \"\" --send-to gc9f72ff ``` - **Pipeline 6 步**:读取飞书文档 → 解析剧本sheet → 匹配组件类型 → LLM生成jsonData/kpInfo → 写入本地SQLite → 生成HTML报告发送给童瑶 - **Skill 目录**:`business_production/组件配置/interactive-component-json/` ## [李应瑛] L1-S2-U17-L4 门关啦 — Pipeline 组件配置生产 - **文档**: SAadwW8YaiObl8k4op3c6vs8nqb | **Spreadsheet**: It4AsFkC7hXHc4te9yUcyLHRnOe - **结果**:16个组件中 15成功 / 0失败", - "recallCount": 2, + "recallCount": 3, "dailyCount": 0, "groundedCount": 0, - "totalScore": 2, + "totalScore": 3, "maxScore": 1, "firstRecalledAt": "2026-05-21T02:47:59.335Z", - "lastRecalledAt": "2026-05-26T06:08:47.532Z", + "lastRecalledAt": "2026-06-02T07:02:08.195Z", "queryHashes": [ "09344f87b646", - "92e62f6b8e3a" + "92e62f6b8e3a", + "d70b515b4a03" ], "recallDays": [ "2026-05-21", - "2026-05-26" + "2026-05-26", + "2026-06-02" ], "conceptTags": [ "scripts/pipeline.py", @@ -2664,21 +2668,23 @@ "endLine": 62, "source": "memory", "snippet": "- B级规则:听力句子 5-8 词(均 7 词),每组 3 张同类物品不同属性图片 - 能力标签:显性事实理解|关键词识别 ×2 + 基础语境理解|场景/物品/动作识别 ## 梁辰(user_id: ou_28f02dcada1193913cfbb6310f8daf07)— HTML 诊断页面教研规则 JS 文件 - 用户有一个 L1 关卡诊断工作台 HTML 页面(部署在腾讯云空间),当前只做数量级统计,缺少教研规则校验 - 需求:提供可嵌入 HTML 的前端 JS 校验规则文件,使诊断有据可依 - 输出:`output/l1_pedagogy_rules.js`(42KB),包含 8 个校验维度: 1. 词汇超纲检测(基于 L1/L2 词库) 2. 英式拼写检测(color→colour 等 115 组映射) 3. Markdown 标记检测(`**`/`#`/`>` 等) 4. 标点规范检测(全角混入、`~`、`!!!`) 5. 题型-阶段匹配校验(20 种题型对应的 L1/L2 阶段映射) 6. 台词质量分析(句子长度、负面评价) 7. 知识点曝光度 8. 句型合规检测 - 接入方式:`` + 调用 `PedagogyRules.validate(summary, level)` - 数据源:L1 词库 147 词(过滤 enabled=true)、L2 词库 52 词、L1 句型 8 个、L2 句型(从 437MB bitable 导出中提取唯一结", - "recallCount": 3, + "recallCount": 4, "dailyCount": 0, "groundedCount": 0, - "totalScore": 3, + "totalScore": 4, "maxScore": 1, "firstRecalledAt": "2026-05-29T00:23:17.391Z", - "lastRecalledAt": "2026-06-01T03:18:26.408Z", + "lastRecalledAt": "2026-06-02T01:49:17.841Z", "queryHashes": [ "c1d4076205e1", "4aa0ef719160", - "e30c130b9d1d" + "e30c130b9d1d", + "7e6aa000abdb" ], "recallDays": [ "2026-05-29", - "2026-06-01" + "2026-06-01", + "2026-06-02" ], "conceptTags": [ "5-8", @@ -2853,20 +2859,22 @@ "endLine": 66, "source": "memory", "snippet": "8. 句型合规检测 - 接入方式:`` + 调用 `PedagogyRules.validate(summary, level)` - 数据源:L1 词库 147 词(过滤 enabled=true)、L2 词库 52 词、L1 句型 8 个、L2 句型(从 437MB bitable 导出中提取唯一结构) - 技术注意:L2_pattern_list.json 体积 437MB(1,082,450 条记录),直接嵌入前端不可行,已提取唯一句型结构后嵌入 - 所有 6 个测试用例通过 - 用户后续想尝试其他对接方式(API 模式 / 飞书 Bot 联动 / CI 集成)", - "recallCount": 2, + "recallCount": 3, "dailyCount": 0, "groundedCount": 0, - "totalScore": 2, + "totalScore": 3, "maxScore": 1, "firstRecalledAt": "2026-05-29T02:33:30.526Z", - "lastRecalledAt": "2026-06-01T03:18:26.408Z", + "lastRecalledAt": "2026-06-02T01:49:17.841Z", "queryHashes": [ "4aa0ef719160", - "e30c130b9d1d" + "e30c130b9d1d", + "7e6aa000abdb" ], "recallDays": [ "2026-05-29", - "2026-06-01" + "2026-06-01", + "2026-06-02" ], "conceptTags": [ "l1-pedagogy-rules.js", @@ -2878,6 +2886,99 @@ "script", "src" ] + }, + "memory:memory/2026-05-29.md:1:14": { + "key": "memory:memory/2026-05-29.md:1:14", + "path": "memory/2026-05-29.md", + "startLine": 1, + "endLine": 14, + "source": "memory", + "snippet": "## [梁晨] L1 Pedagogy Rules v4.0.0 交付 - 在 v3 基础上新增 5 个校验维度(来自 16 个教研 skill 规则提取): 6. 组件合规性(12 种题型规则,来自 11 个 dialogue/info config skills) 7. 字段完整性(7 项自动检查,来自 audit_l1_config) 8. 掌握度预测(W_i×M_i 加权公式,来自 knowledge-mastery-calculator) 9. 格式规范(标题/Markdown/标点/英式拼写/价值观,来自全量文本规范) 10. 语法检测(三单/主谓一致/双重否定,来自 audit_l1_config) - 输出:`output/l1_pedagogy_rules_v4.js`(59KB) - 数据:L1 147 词、L2 52 词、L1 8 句型、L2 1 句型、89 组英式拼写映射、12 种题型规则 - 已通过飞书 Bot 发送给梁晨 - API 兼容 v3:不加 options 参数即为原行为;加 component/componentExposures 启用新维度 - 能力边界:内容质量诊断(第一层筛选),不是全链路归因(看不到 UX/服务端/学生侧因素)", + "recallCount": 1, + "dailyCount": 0, + "groundedCount": 0, + "totalScore": 1, + "maxScore": 1, + "firstRecalledAt": "2026-06-02T01:49:17.841Z", + "lastRecalledAt": "2026-06-02T01:49:17.841Z", + "queryHashes": [ + "7e6aa000abdb" + ], + "recallDays": [ + "2026-06-02" + ], + "conceptTags": [ + "v4.0.0", + "dialogue/info", + "audit-l1-config", + "w-i", + "m-i", + "knowledge-mastery-calculator", + "标题/markdown/标点/英式拼写/价值观", + "三单/主谓一致/双重否定" + ] + }, + "memory:memory/2026-05-28.md:35:49": { + "key": "memory:memory/2026-05-28.md:35:49", + "path": "memory/2026-05-28.md", + "startLine": 35, + "endLine": 49, + "source": "memory", + "snippet": "- 答案设为[2](英语的),与申报 adj. 英文的不符,应为[0] - 🟡 rubber (1218116):释义题例句\"an eraser made of rubber\"解释的是橡胶材料,非橡皮擦工具 - 🟡 Chinese(n.) (1218113):例句\"Chinese food\"中 Chinese 是形容词非名词,与题目义项\"中文\"不符 - 🟢 fun (1218119):解析末尾多余一个 `\"` - 🟢 eraser (1218111):`\"an eraser表示\"` 缺少空格 ## 武钰涵 — 听力-P1-图片选择题生产 - 题目集合 ID: 121601,难度 B级(L1 第3-4阶段,Starters 3) - 知识点验证:10个词中仅 run(v.) 在 L1 词库,feet(foot 的复数)可视为已有,其余 8 个(bus, taxi, trousers, shorts, winter, snow, cold, bee)不在 L1/L2 词库 - 用户指示直接生产,已按 SKILL 规范生成 2 个题组(各5题),含听力文本、图片描述、正确答案、能力标签 - 已按 bitable 配置格式输出完整 jsonData + 题目完整配置 + 图片描述 - B级规则:听力句子 5-8 词(均 7 词),每组 3 张同类物品不同属性图片 - 能力标签:显性事实理解|关键词识别 ×2 + 基础语境理解|场景/物品/动作识别 ## 梁辰(user_id: ou_28f02dcada1193913cfbb6310f8daf07)— HTML 诊断页面", + "recallCount": 1, + "dailyCount": 0, + "groundedCount": 0, + "totalScore": 1, + "maxScore": 1, + "firstRecalledAt": "2026-06-02T01:49:17.841Z", + "lastRecalledAt": "2026-06-02T01:49:17.841Z", + "queryHashes": [ + "7e6aa000abdb" + ], + "recallDays": [ + "2026-06-02" + ], + "conceptTags": [ + "听力-p1-图片选择题生产", + "第3-4阶段", + "l1/l2", + "5-8", + "场景/物品/动作识别", + "user-id", + "答案", + "英语" + ] + }, + "memory:memory/2026-05-18.md:791:810": { + "key": "memory:memory/2026-05-18.md:791:810", + "path": "memory/2026-05-18.md", + "startLine": 791, + "endLine": 810, + "source": "memory", + "snippet": "- Wiki token: `U1zEwHZaaie07TkjmOOchurgnIh` - Spreadsheet token: `DCcKsLbrmhfXgrtB7N2c9GA4ntf` - Script sheet: `wMQVyV`(186行×9列) - Knowledge points sheet: `DCcKsLbrmhfXgrtB7N2c9GA4ntf_NtIcXt` - 列结构:A=类型, D=剧情描述, E=角色名, F=编剧台词(English已填好), **G=组件配置** - 知识点:point, talk, understand, a lot of + `talk to...` / `I can/can't understand...` ### 交互模式差异 - L5 文档 B列/C列 为空,无详细组件类型标签(仅 A=互动/核心互动-口语) - 编剧台词F列已全部填写(英文) - 互动行的 User 台词含红色标注知识点词 ### 完成事项 - 24个互动行全部生成G列配置(组件类型推断:听力挖空、朗读台词、口语表达) - 写入方式:同上 Sheets v2 API - 24/24 全部回读验证通过 ### 脚本 `scripts/write_L5_G_configs.py`", + "recallCount": 1, + "dailyCount": 0, + "groundedCount": 0, + "totalScore": 1, + "maxScore": 1, + "firstRecalledAt": "2026-06-02T01:49:17.841Z", + "lastRecalledAt": "2026-06-02T01:49:17.841Z", + "queryHashes": [ + "7e6aa000abdb" + ], + "recallDays": [ + "2026-06-02" + ], + "conceptTags": [ + "can/can", + "b列/c列", + "互动/核心互动-口语", + "24/24", + "scripts/write-l5-g-configs.py", + "wiki", + "token", + "u1zewhzaaie07tkjmoochurgnih" + ] } } } diff --git a/memory/2026-04-03-request-timed-out-before-a-res.md b/memory/2026-04-03-request-timed-out-before-a-res.md index 2733296..ba23f0b 100644 --- a/memory/2026-04-03-request-timed-out-before-a-res.md +++ b/memory/2026-04-03-request-timed-out-before-a-res.md @@ -108,7 +108,7 @@ Sender (untrusted metadata): 目标是实现,我要与考试相关的题目信息,agent 可以100%输出真实考试要求的内容 注意:不要加工,直接取真题样例 -assistant: ✅ 已完成剑桥YLE+KET官方考试题型库Skill的生成,路径:`./skills/cambridge-yle-ket-exam-library/SKILL.md` +assistant: ✅ 已完成剑桥YLE+KET官方考试题型库Skill的生成,路径:`./business_knowledge/skills/cambridge-yle-ket-exam-library/SKILL.md` ### 📚 技能说明 1. **内容覆盖**:完整包含Starters/Movers/Flyers/KET四个级别的所有官方考试题型、真实样题、考试时长/分值/答题规范,100%来自剑桥官方2022-2024版真题集,无任何加工修改 diff --git a/memory/2026-04-13-request-timed-out-before-a-res.md b/memory/2026-04-13-request-timed-out-before-a-res.md index 5102d11..40c54eb 100644 --- a/memory/2026-04-13-request-timed-out-before-a-res.md +++ b/memory/2026-04-13-request-timed-out-before-a-res.md @@ -44,7 +44,7 @@ Sender (untrusted metadata): 把这一套判断逻辑沉淀为 skill assistant: ✅ 已将整套知识点掌握度判断逻辑沉淀为独立技能「knowledge-mastery-calculator」: ### 技能信息 -- **存储路径**:`/root/.openclaw/skills/knowledge-mastery-calculator/SKILL.md` +- **存储路径**:`/root/.openclaw/business_production/_shared/knowledge-mastery-calculator/SKILL.md` - **包含内容**:完整的计算公式、判定标准、使用示例、数据要求、优化方案 - **触发方式**:后续遇到知识点掌握度计算、学情分析、退费原因定位等场景自动调用 diff --git a/memory/2026-05-12.md b/memory/2026-05-12.md index c4676fe..536a721 100644 --- a/memory/2026-05-12.md +++ b/memory/2026-05-12.md @@ -25,7 +25,7 @@ 3. ⚠️ sentenceStructureClozeWordMcq: "put your toys" 省略 away 不够自然 - **技能沉淀:** - 脚本: `scripts/audit_l1_config.py` — 7项自动检查 - - SKILL.md: `skills/audit_l1_config/SKILL.md` — 含完整审校流程 + 4项人工审核清单 + - SKILL.md: `business_production/_shared/audit_l1_config/SKILL.md` — 含完整审校流程 + 4项人工审核清单 # 2026-05-12 工作日志 ## 会话记录 @@ -53,7 +53,7 @@ 3. ⚠️ sentenceStructureClozeWordMcq: "put your toys" 省略 away 不够自然 - **技能沉淀:** - 脚本: `scripts/audit_l1_config.py` — 7项自动检查 - - SKILL.md: `skills/audit_l1_config/SKILL.md` — 含完整审校流程 + 4项人工审核清单 + - SKILL.md: `business_production/_shared/audit_l1_config/SKILL.md` — 含完整审校流程 + 4项人工审核清单 ### 刘彦江 — 1213001-1216010 批量审校 40 条(12:10 ~ 14:00) - **范围:** L1S2 Units 13-16,每单元 10 条,共 40 条 @@ -101,7 +101,7 @@ 3. ⚠️ sentenceStructureClozeWordMcq: "put your toys" 省略 away 不够自然 - **技能沉淀:** - 脚本: `scripts/audit_l1_config.py` — 7项自动检查 - - SKILL.md: `skills/audit_l1_config/SKILL.md` — 含完整审校流程 + 4项人工审核清单 + - SKILL.md: `business_production/_shared/audit_l1_config/SKILL.md` — 含完整审校流程 + 4项人工审核清单 ### 刘彦江 — 1213001-1216010 批量审校 40 条(12:10 ~ 14:00) - **范围:** L1S2 Units 13-16,每单元 10 条,共 40 条 @@ -176,8 +176,8 @@ - meaning 标签(合作阅读)为开放型自由文本,非受控词表 #### 产出文件 -- `skills/bitable-reader/SKILL.md` — 通用 bitable 读取技能(164行) -- `skills/core-content-json-standard/SKILL.md` — 全题型 JSON 标准 v2.0(393行) +- `business_production/_shared/bitable-reader/SKILL.md` — 通用 bitable 读取技能(164行) +- `business_knowledge/skills/core-content-json-standard/SKILL.md` — 全题型 JSON 标准 v2.0(393行) - `scripts/audit_core_reading_S0.py` — 合作阅读 S0 审校脚本(含审校发现) # 2026-05-12 工作日志 @@ -192,7 +192,7 @@ ### 刘彦江 — L1 配置表审校 + 技能沉淀(11:50 ~ 12:10) - **数据源:** `Nq3Zb258aae7SRs2QfXcqsQYnxJ` / `tblTxGpf6GQ5c7DZ` - **ID 编码:** 7位 = S(2位) + U(2位) + 序列号(3位) -- **技能沉淀:** `scripts/audit_l1_config.py` + `skills/audit_l1_config/SKILL.md` +- **技能沉淀:** `scripts/audit_l1_config.py` + `business_production/_shared/audit_l1_config/SKILL.md` ### 刘彦江 — 1213001-1216010 批量审校 40 条(12:10 ~ 14:00) - **范围:** L1S2 Units 13-16 @@ -210,8 +210,8 @@ - 受影响:1213004/1213006/1213010/1214008/1215005/1216001/1216004/1216007/1216008/1216010 ### 刘彦江 — 核心互动全题型 JSON 配置标准沉淀(17:05 ~ 17:50) -- **产出 Skill 1:** `skills/bitable-reader/SKILL.md` — 通用 bitable 读取(任何 bitable 通用) -- **产出 Skill 2:** `skills/core-content-json-standard/SKILL.md` v2.0 — 全题型 JSON 标准(393行) +- **产出 Skill 1:** `business_production/_shared/bitable-reader/SKILL.md` — 通用 bitable 读取(任何 bitable 通用) +- **产出 Skill 2:** `business_knowledge/skills/core-content-json-standard/SKILL.md` v2.0 — 全题型 JSON 标准(393行) - **架构:** 通用字段在前(ID/kpInfo/taskData)+ 5大题型分类(📖阅读2 🎧听力3 🗣口语4 ✏️写作5)+ 审校规则 + 扩展指南 - **覆盖率:** 14/15 种题型(口语探讨 S0 无数据) - **产出脚本:** `scripts/audit_core_reading_S0.py` — 合作阅读 S0 审校 @@ -240,7 +240,7 @@ #### 产出文件 - `skills/interactive-component-json/references/json_structure_guide.md` — 27 种中互动 jsonData 字段结构(8736 bytes) - `skills/interactive-component-json/references/component_registry.md` — 核心互动部分从🔲更新为完整注册表(含 cType+bitable_token) -- 与 `skills/core-content-json-standard/SKILL.md` 双向关联 +- 与 `business_knowledge/skills/core-content-json-standard/SKILL.md` 双向关联 #### 覆盖率 - 核心互动:15/15 ✅(口语探讨 S0 无数据已标注) diff --git a/memory/2026-05-17.md b/memory/2026-05-17.md index 87a3e9c..8ad5b5e 100644 --- a/memory/2026-05-17.md +++ b/memory/2026-05-17.md @@ -32,10 +32,10 @@ | 对话组句 | 1 | dialogue-sentence-building-config | ### Skill 库补全 -- **新建 skill**:`~/.openclaw/workspace-xiaoyan/skills/dialogue-selective-reading-config/SKILL.md` +- **新建 skill**:`~/.openclaw/workspace-xiaoyan/business_production/组件生产/skills/dialogue-selective-reading-config/SKILL.md` - 格式来源:`dialogue-interaction-config` 技能(business_production/组件生产/skills/) - 与对话选择的核心差异:无正确选项,所有选项平等配反馈,要求为「选择一个你想表达的观点」 -- **更新**:`~/.openclaw/workspace-xiaoyan/skills/task-router/component_configs.yaml` — dialogue_selective_reading 配置从占位格式更新为实际格式 +- **更新**:`~/.openclaw/workspace-xiaoyan/business_production/组件生产/skills/task-router/component_configs.yaml` — dialogue_selective_reading 配置从占位格式更新为实际格式 ### 关键技术点 - **嵌入 Sheet 写入**:使用 feishu-embedded-sheet 技能,通过 curl 调用 `sheets/v2/spreadsheets/{token}/values` 批量 PUT diff --git a/memory/2026-05-18.md b/memory/2026-05-18.md index fdc7045..247e490 100644 --- a/memory/2026-05-18.md +++ b/memory/2026-05-18.md @@ -749,9 +749,9 @@ QSID: 121301, 121401, 121501(听力-P1-图片选择题,L1 B级) | 音频录制 | Justin念信4句音频待录制 | ### 互动组件脚本参考路径 -- `skills/core-content-json-standard/SKILL.md` — 14种核心题型JSON标准 -- `skills/feishu-embedded-sheet/SKILL.md` — 内嵌Sheet读写 -- `skills/lark_bitable_operate_as_bot/SKILL.md` — Bot身份多维表格操作 +- `business_knowledge/skills/core-content-json-standard/SKILL.md` — 14种核心题型JSON标准 +- `business_production/_shared/feishu-embedded-sheet/SKILL.md` — 内嵌Sheet读写 +- `business_production/_shared/lark_bitable_operate_as_bot/SKILL.md` — Bot身份多维表格操作 ## [李应瑛] L1-S2-U17-L4 门关啦 组件配置(2026-05-18 21:00) diff --git a/memory/2026-06-02-1227.md b/memory/2026-06-02-1227.md new file mode 100644 index 0000000..aab7f49 --- /dev/null +++ b/memory/2026-06-02-1227.md @@ -0,0 +1,49 @@ +# Session: 2026-06-02 12:27:02 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: 041be183-8cec-4c53-aff7-a16a1403d8c4 +- **Source**: feishu + +## Conversation Summary + +user: 组件配置-json https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf?from=from_copylink +assistant: 处理完成。**L1-S2-U18-L2 登龙秘笈** 共识别 17 个组件,全部生成成功: + +| 类型 | 数量 | +|------|------| +| 对话朗读 (mid_dialog_repeat) | 5 | +| 对话挖空 (mid_dialog_fillin) | 4 | +| 对话组句 (mid_dialog_sentence) | 2 | +| 对话选读 (mid_dialog_select) | 2 | +| 对话选择 (mid_dialog_choose) | 1 | +| 对话表达 (mid_dialog_express) | 1 | +| 图片单选 (mid_image_choose) | 1 | +| 听力选择 (core_listening_choose) | 1 | + +HTML 报告已通过飞书 Bot 发送给你,打开后可查看每个组件的 jsonData 详情,也可以直接在报告里用 `[配置↑]` / `[知识↑]` 按钮推送到远程数据库。 +user: 组件配置-json https://makee-interactive.feishu.cn/wiki/PgWrwllW2ikQKgkLTYKcmKFonXc +assistant: 处理完成。**L1-S2-U18-L1 中国周** 共 17 个组件,16 成功 / 1 失败。 + +| 类型 | 数量 | 状态 | +|------|------|------| +| 对话朗读 (mid_dialog_repeat) | 6 | ✅ | +| 对话挖空 (mid_dialog_fillin) | 3 | ✅ | +| 对话组句 (mid_dialog_sentence) | 2 | ✅ | +| 图片单选 (mid_image_choose) | 2 | ✅ | +| 图片多选 (mid_image_multiple) | 1 | ✅ | +| 对话选择 (mid_dialog_choose) | 1 | ✅ | +| 对话选读 (mid_dialog_select) | 1 | ✅ | +| 听力拖拽 (core_listening_drag) | 1 | ❌ | + +**失败原因:** 听力拖拽组件(cId=1218116)在第5步 dialogList 生成时,LLM 返回的 JSON 中 `"trans"` 的冒号用了全角 `:` 而非半角 `:`,导致 JSON 解析失败。这是 doubao 模型在中英文混合输出时的已知偶发问题。 + +HTML 报告已通过飞书 Bot 发送给你,16 个成功组件可正常查看和推送。需要我手动修复这个听力拖拽组件重新生成吗? +user: 你刚刚生成的这个cId全部不对 +assistant: 现在清楚了。问题在 `parse_script.py` 的 cId 提取逻辑——类型列里写的是"对话朗读1""图片单选2",cId 被提取成了 `1`、`2` 这种短序号,而 ID 列(col2)里虽然有真正的 7 位 cId(如 `1218101`),但因为是**多行文本**,`re.match(r'^\d{5,}$', raw_id)` 匹配不到整行。 + +让我修复这个问题: + + +assistant: Found the bug. The cId in the sheet is embedded in col2 (multi-line text like `"S1主线\n自动\n对话朗读\n1218101\n..."`), but the parser reads col1 as the ID column (which is empty for component rows). When the type column has short cIds like "1", "2", it can't find the real cId from col1. + + diff --git a/memory/2026-06-02-1433.md b/memory/2026-06-02-1433.md new file mode 100644 index 0000000..f09f4a1 --- /dev/null +++ b/memory/2026-06-02-1433.md @@ -0,0 +1,47 @@ +# Session: 2026-06-02 14:33:33 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: 7b6ba6c6-7b2d-4c96-91b5-9f019c021e8c +- **Source**: feishu + +## Conversation Summary + +user: https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf组件配置-json +assistant: 这是 L1-S2-U18-L2「登龙秘笈」的组件配置文档。我需要先读取剧本内容和知识点,然后按组件类型生成 JSON 配置。 + +先读取剧本内嵌 Sheet 和知识点 Sheet,同时加载组件生产技能。 + + +assistant: 这是「组件配置-json」请求,需要先加载对应技能。 + + +assistant: 张昆鹏,收到。执行组件配置 JSON 生成流水线。 + + +assistant: ✅ 组件配置 JSON 生成完成。 + +**L1-S2-U18-L2 登龙秘笈** — 17/17 全部成功,0 失败。 + +| # | 组件ID | 类型 | cType | +|---|--------|------|-------| +| 1 | 1218201 | 对话朗读 | mid_dialog_repeat | +| 2 | 1218202 | 对话朗读 | mid_dialog_repeat | +| 3 | 1218203 | 对话挖空 | mid_dialog_fillin | +| 4 | 1218204 | 对话朗读 | mid_dialog_repeat | +| 5 | 1218205 | 对话挖空 | mid_dialog_fillin | +| 6 | 1218206 | 对话朗读 | mid_dialog_repeat | +| 7 | 1218207 | 对话组句 | mid_dialog_sentence | +| 8 | 1218208 | 对话选读 | mid_dialog_select | +| 9 | 1218209 | 图片单选 | mid_image_choose | +| 10 | 1218210 | 对话挖空 | mid_dialog_fillin | +| 11 | 1218211 | 对话朗读 | mid_dialog_repeat | +| 12 | 1218212 | 对话挖空 | mid_dialog_fillin | +| 13 | 1218213 | 对话选读 | mid_dialog_select | +| 14 | 1218214 | 对话组句 | mid_dialog_sentence | +| 15 | 1218215 | 对话选择 | mid_dialog_choose | +| 16 | 1218216 | 听力选择 | core_listening_choose | +| 17 | 1218217 | 对话表达 | mid_dialog_express | + +HTML 报告已通过飞书发送给你,可在浏览器中打开查看详情并推送配置。 +user: reset +assistant: 已重置,可以开始新的任务。 diff --git a/memory/2026-06-02-1440.md b/memory/2026-06-02-1440.md new file mode 100644 index 0000000..8638166 --- /dev/null +++ b/memory/2026-06-02-1440.md @@ -0,0 +1,28 @@ +# Session: 2026-06-02 14:40:31 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: 2fcf4f79-a61f-4766-84f9-bab9731a45ad +- **Source**: feishu + +## Conversation Summary + +user: [L1-S2-U18-L2 登龙秘笈](https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf)组件配置-json +assistant: 张昆鹏,收到。执行组件配置JSON生成流水线。 + + +assistant: ✅ 组件配置JSON生成完成。 + +**L1-S2-U18-L2 登龙秘笈** — 17/17 全部成功: + +| 类型 | 数量 | +|------|------| +| 对话朗读 (mid_dialog_repeat) | 5 | +| 对话挖空 (mid_dialog_fillin) | 4 | +| 对话组句 (mid_dialog_sentence) | 2 | +| 对话选读 (mid_dialog_select) | 2 | +| 对话选择 (mid_dialog_choose) | 1 | +| 对话表达 (mid_dialog_express) | 1 | +| 图片单选 (mid_image_choose) | 1 | +| 核心互动-听力选择 (core_listening_choose) | 1 | + +HTML 报告已通过飞书 Bot 发送给你,可以在浏览器中打开查看详情,报告内支持一键推送配置和知识点到远程数据库。 diff --git a/memory/2026-06-02-1450.md b/memory/2026-06-02-1450.md new file mode 100644 index 0000000..e790c49 --- /dev/null +++ b/memory/2026-06-02-1450.md @@ -0,0 +1,23 @@ +# Session: 2026-06-02 14:50:51 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: d5955758-0fb7-4bbf-9c79-b5dc03249b00 +- **Source**: feishu + +## Conversation Summary + +user: [L1-S2-U18-L2 登龙秘笈](https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf)组件配置-json +assistant: ✅ 组件配置JSON生成完成!17/17 全部成功。 + +| 类型 | 数量 | 详情 | +|------|------|------| +| 对话朗读 (mid_dialog_repeat) | 5 | 1218201, 1218202, 1218204, 1218206, 1218211 | +| 对话挖空 (mid_dialog_fillin) | 4 | 1218203, 1218205, 1218210, 1218212 | +| 对话组句 (mid_dialog_sentence) | 2 | 1218207, 1218214 | +| 对话选读 (mid_dialog_select) | 2 | 1218208, 1218213 | +| 图片单选 (mid_image_choose) | 1 | 1218209 | +| 对话选择 (mid_dialog_choose) | 1 | 1218215 | +| 对话表达 (mid_dialog_express) | 1 | 1218217 | +| 核心互动-听力选择 (core_listening_choose) | 1 | 1218216 | + +HTML 报告已通过飞书 Bot 发送给你,可在浏览器中打开查看详情并一键推送配置到远程数据库。 diff --git a/memory/2026-06-02-1451.md b/memory/2026-06-02-1451.md new file mode 100644 index 0000000..6b10815 --- /dev/null +++ b/memory/2026-06-02-1451.md @@ -0,0 +1,28 @@ +# Session: 2026-06-02 14:51:38 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_270924c22bf8d63cf356dbd37614055f +- **Session ID**: 87eba2a5-2065-4b25-8f57-60b53151993b +- **Source**: feishu + +## Conversation Summary + +user: 为我简单搜索一下 好未来 现在的总市值 +assistant: 好未来(TAL Education Group,NYSE: TAL)当前市值数据如下: + +| 指标 | 数值 | +|------|------| +| **总市值** | **$61.2 亿美元**(约 ¥440 亿人民币) | +| **股价** | $10.06 | +| **当日涨跌** | +3.60% | +| **近一年涨跌** | -0.69% | +| **全球排名** | 第 2,817 位 | + +数据来源:CompaniesMarketCap,截至 2026 年 6 月 1 日。 + +历史对比:好未来在 2020 年高峰时市值曾达 $429 亿美元,2021 年"双减"后暴跌至 $25 亿,之后逐步恢复至当前水平。 +user: 你是使用什么api进行的搜索 +assistant: 没有用到搜索 API。`web_search` 当时返回了 **"web_search is disabled or no provider is available"**,搜索功能不可用。 + +所以我换了个方式:直接用 `web_fetch` 工具逐个抓取财经网站的页面,最终在 **CompaniesMarketCap** 的页面上抓到了市值数据(`companiesmarketcap.com/tal-education-group/marketcap/`)。 + +简单说就是:不是搜索,是直接爬页面拿到的。 diff --git a/memory/2026-06-02-1501.md b/memory/2026-06-02-1501.md new file mode 100644 index 0000000..a85c304 --- /dev/null +++ b/memory/2026-06-02-1501.md @@ -0,0 +1,37 @@ +# Session: 2026-06-02 15:01:30 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: fa1484ea-e64c-4761-8f5a-dd24406de814 +- **Source**: feishu + +## Conversation Summary + +user: [L1-S2-U18-L2 登龙秘笈](https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf)组件配置-json +assistant: 张昆鹏,收到。执行组件配置JSON生成流水线。 + + +assistant: ✅ **组件配置JSON生成完成!** + +**L1-S2-U18-L2 登龙秘笈** — 17/17 全部成功,0 失败: + +| # | 组件ID | 类型 | cType | +|---|--------|------|-------| +| 1-2 | 1218201-1218202 | 对话朗读 | mid_dialog_repeat | +| 3 | 1218203 | 对话挖空 | mid_dialog_fillin | +| 4 | 1218204 | 对话朗读 | mid_dialog_repeat | +| 5 | 1218205 | 对话挖空 | mid_dialog_fillin | +| 6 | 1218206 | 对话朗读 | mid_dialog_repeat | +| 7 | 1218207 | 对话组句 | mid_dialog_sentence | +| 8 | 1218208 | 对话选读 | mid_dialog_select | +| 9 | 1218209 | 图片单选 | mid_image_choose | +| 10-11 | 1218210-1218212 | 对话挖空 | mid_dialog_fillin | +| 12 | 1218211 | 对话朗读 | mid_dialog_repeat | +| 13 | 1218213 | 对话选读 | mid_dialog_select | +| 14 | 1218214 | 对话组句 | mid_dialog_sentence | +| 15 | 1218215 | 对话选择 | mid_dialog_choose | +| 16 | 1218216 | 核心互动-听力选择 | core_listening_choose | +| 17 | 1218217 | 对话表达 | mid_dialog_express | + +HTML 报告已通过飞书 Bot 发送给你,可在浏览器中打开查看详情并一键推送配置到数据库。 +user: [OpenClaw heartbeat poll] +assistant: HEARTBEAT_OK diff --git a/memory/2026-06-02-1511.md b/memory/2026-06-02-1511.md new file mode 100644 index 0000000..17de964 --- /dev/null +++ b/memory/2026-06-02-1511.md @@ -0,0 +1,45 @@ +# Session: 2026-06-02 15:11:06 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: b6d4a9ca-0330-4e7a-89b3-0c9bcdec9b0e +- **Source**: feishu + +## Conversation Summary + +user: [L1-S2-U18-L2 登龙秘笈](https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf)组件配置-json +assistant: 张昆鹏,收到。执行组件配置 JSON 流水线。 + + +assistant: 📝 **组件配置 JSON 生成完成** + +文档:**L1-S2-U18-L2 登龙秘笈** + +| 结果 | 数量 | +|------|------| +| ✅ 成功 | 17 | +| ❌ 失败 | 0 | +| 总计 | 17 | + +**组件明细:** + +| ID | 类型 | cType | +|---|---|---| +| 1218201 | 对话朗读 | mid_dialog_repeat | +| 1218202 | 对话朗读 | mid_dialog_repeat | +| 1218203 | 对话挖空 | mid_dialog_fillin | +| 1218204 | 对话朗读 | mid_dialog_repeat | +| 1218205 | 对话挖空 | mid_dialog_fillin | +| 1218206 | 对话朗读 | mid_dialog_repeat | +| 1218207 | 对话组句 | mid_dialog_sentence | +| 1218208 | 对话选读 | mid_dialog_select | +| 1218209 | 图片单选 | mid_image_choose | +| 1218210 | 对话挖空 | mid_dialog_fillin | +| 1218211 | 对话朗读 | mid_dialog_repeat | +| 1218212 | 对话挖空 | mid_dialog_fillin | +| 1218213 | 对话选读 | mid_dialog_select | +| 1218214 | 对话组句 | mid_dialog_sentence | +| 1218215 | 对话选择 | mid_dialog_choose | +| 1218216 | 核心互动-听力选择 | core_listening_choose | +| 1218217 | 对话表达 | mid_dialog_express | + +HTML 报告已通过飞书 Bot 发送给你,可在浏览器中打开查看详情并推送配置到数据库。 diff --git a/memory/2026-06-02-1525.md b/memory/2026-06-02-1525.md new file mode 100644 index 0000000..daf0250 --- /dev/null +++ b/memory/2026-06-02-1525.md @@ -0,0 +1,26 @@ +# Session: 2026-06-02 15:25:43 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: 4c49cd1f-9ac7-48a1-936e-75fc56bf9c84 +- **Source**: feishu + +## Conversation Summary + +user: [L1-S2-U18-L2 登龙秘笈](https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf)组件配置-json +assistant: 已识别:张昆鹏(技术负责人),执行 `interactive-component-json` 流水线。 + + +assistant: ✅ 组件配置 JSON 生成完成,17/17 全部成功。 + +| 类型 | 数量 | 组件 | +|------|------|------| +| 对话朗读 | 5 | 1218201, 1218202, 1218204, 1218206, 1218211 | +| 对话挖空 | 4 | 1218203, 1218205, 1218210, 1218212 | +| 对话组句 | 2 | 1218207, 1218214 | +| 对话选读 | 2 | 1218208, 1218213 | +| 对话选择 | 1 | 1218215 | +| 图片单选 | 1 | 1218209 | +| 对话表达 | 1 | 1218217 | +| 听力选择 | 1 | 1218216(核心互动) | + +HTML 报告已通过飞书 Bot 发送给你,可以在浏览器中打开查看每个组件的 JSON 配置和知识点匹配详情,并支持一键推送全部配置到远程数据库。 diff --git a/memory/2026-06-02-1537.md b/memory/2026-06-02-1537.md new file mode 100644 index 0000000..87e8f2b --- /dev/null +++ b/memory/2026-06-02-1537.md @@ -0,0 +1,36 @@ +# Session: 2026-06-02 15:37:46 GMT+8 + +- **Session Key**: agent:xiaoyan:feishu:direct:ou_8b79b7f711e42a4004f3f3c225a1a99c +- **Session ID**: 85a4c785-60bf-42b1-b8dc-65a4b18b92e0 +- **Source**: feishu + +## Conversation Summary + +user: [L1-S2-U18-L2 登龙秘笈](https://makee-interactive.feishu.cn/wiki/KNAZwTYXsib2Ijk6BrGciRelnSf)组件配置-json +assistant: 张昆鹏,收到。正在执行组件配置JSON生成流水线。 + + +assistant: ✅ **组件配置JSON生成完成!** L1-S2-U18-L2 登龙秘笈 + +| 统计 | 数值 | +|------|------| +| 总组件数 | 17 | +| 成功 | 17 | +| 失败 | 0 | + +**组件类型分布:** + +| 类型 | 数量 | +|------|------| +| 对话朗读 (mid_dialog_repeat) | 5 | +| 对话挖空 (mid_dialog_fillin) | 4 | +| 对话选读 (mid_dialog_select) | 2 | +| 对话组句 (mid_dialog_sentence) | 2 | +| 对话选择 (mid_dialog_choose) | 1 | +| 对话表达 (mid_dialog_express) | 1 | +| 图片单选 (mid_image_choose) | 1 | +| 核心互动-听力选择 (core_listening_choose) | 1 | + +⚠️ 注意:核心互动-听力选择 (1218216) 的 5 个知识点在 MySQL 中未匹配到(如 `read`、`blackboard`、`... in line` 等),需在 HTML 报告中手动修正 kpId。 + +HTML 报告已通过飞书 Bot 发送给你,可直接在浏览器中打开查看/编辑/推送配置。 diff --git a/scripts/__pycache__/audit_l1_config.cpython-312.pyc b/scripts/__pycache__/audit_l1_config.cpython-312.pyc deleted file mode 100644 index e7c99df671a92e4e01f9658407728e4b90b1bafa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14843 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 L!6K#2xKsZdrOHJ) diff --git a/scripts/__pycache__/batch_reading_pic_qa.cpython-312.pyc b/scripts/__pycache__/batch_reading_pic_qa.cpython-312.pyc deleted file mode 100644 index dc23da4b863c25585fcc6455dd479e1bae7c6956..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19097 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 diff --git a/scripts/__pycache__/rewrite_p4_all.cpython-312.pyc b/scripts/__pycache__/rewrite_p4_all.cpython-312.pyc deleted file mode 100644 index b0078f52d6f60d498459e08f6334b1af40506be9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47810 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 diff --git a/skills/vala_git_workspace_backup/SKILL.md b/skills/vala_git_workspace_backup/SKILL.md index eb35c30..41476e3 100644 --- a/skills/vala_git_workspace_backup/SKILL.md +++ b/skills/vala_git_workspace_backup/SKILL.md @@ -1,3 +1,8 @@ +--- +name: vala_git_workspace_backup +description: 自动将OpenClaw workspace内容定期备份到Git仓库,自动过滤敏感信息,无硬编码凭证 +--- + # vala_git_workspace_backup Skill ## 功能说明 自动将OpenClaw workspace内容定期备份到Git仓库,自动过滤敏感信息,无硬编码凭证。