From 25613141740f2280e87fe62c5ff276ec463a7250 Mon Sep 17 00:00:00 2001 From: sinlatansen <13700198+lzy-buaa-jdi@user.noreply.gitee.com> Date: Wed, 25 Feb 2026 20:27:46 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=86=E5=A4=87=E5=86=99=E8=AE=BA=E6=96=87?= =?UTF-8?q?=EF=BC=8C=E8=AE=BA=E6=96=87=E5=A4=A7=E7=BA=B2=E5=92=8C=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=90=9E=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plan/paper_output_plan.md | 364 +++++ docs/plan/paper_result_need.md | 416 ++++++ docs/result/paper_evaluation_report.md | 172 +++ figures/comparison_bar.pdf | Bin 0 -> 16887 bytes figures/comparison_bar.png | Bin 0 -> 50864 bytes figures/pdr_vs_airtime.pdf | Bin 0 -> 47835 bytes figures/pdr_vs_airtime.png | Bin 0 -> 93155 bytes figures/pdr_vs_tx_cost.pdf | Bin 0 -> 42304 bytes figures/pdr_vs_tx_cost.png | Bin 0 -> 87907 bytes generate_bars.py | 57 + generate_figures.py | 210 +++ results/all_raw_results.json | 1808 ++++++++++++++++++++++++ results/flooding/all_seeds.json | 602 ++++++++ results/gradient/all_seeds.json | 602 ++++++++ results/random/all_seeds.json | 602 ++++++++ results/statistics.json | 128 ++ run_statistical_experiments.py | 207 +++ 17 files changed, 5168 insertions(+) create mode 100644 docs/plan/paper_output_plan.md create mode 100644 docs/plan/paper_result_need.md create mode 100644 docs/result/paper_evaluation_report.md create mode 100644 figures/comparison_bar.pdf create mode 100644 figures/comparison_bar.png create mode 100644 figures/pdr_vs_airtime.pdf create mode 100644 figures/pdr_vs_airtime.png create mode 100644 figures/pdr_vs_tx_cost.pdf create mode 100644 figures/pdr_vs_tx_cost.png create mode 100644 generate_bars.py create mode 100644 generate_figures.py create mode 100644 results/all_raw_results.json create mode 100644 results/flooding/all_seeds.json create mode 100644 results/gradient/all_seeds.json create mode 100644 results/random/all_seeds.json create mode 100644 results/statistics.json create mode 100644 run_statistical_experiments.py diff --git a/docs/plan/paper_output_plan.md b/docs/plan/paper_output_plan.md new file mode 100644 index 0000000..0816d41 --- /dev/null +++ b/docs/plan/paper_output_plan.md @@ -0,0 +1,364 @@ +好,这一步的目标已经从 **“继续做系统”** 转为: + +```text +冻结仿真平台 → 产出论文级结果 → 图表化 → 可发表材料 +``` + +下面给你一个**专门面向论文产出**的执行大纲(给执行 AI 用)。重点不是再改算法,而是把现有 Phase-3.5 数据变成 **审稿人可接受的 evidence**。 + +--- + +# `paper_output_plan.md` + +--- + +# 1. 目标(Objective) + +将 Phase-3.5 仿真平台输出转换为: + +* 可复现实验结果 +* 标准论文图表 +* 对比表格 +* 统计显著性验证 +* 可直接插入论文的 figures/tables + +**禁止修改算法逻辑**,只允许: + +* 数据采集增强 +* 实验批量运行 +* 可视化 +* 统计分析 + +--- + +# 2. 输出目录结构(必须固定) + +``` +docs/ + └── paper/ + ├── figures/ + │ ├── fig1_topology.png + │ ├── fig2_pdr_vs_airtime.png + │ ├── fig3_tx_efficiency.png + │ ├── fig4_scalability.png + │ └── fig5_tradeoff_curve.png + │ + ├── tables/ + │ ├── table1_algorithm_compare.csv + │ ├── table2_scaling_results.csv + │ └── table3_efficiency_metrics.csv + │ + ├── raw_data/ + └── scripts/ + ├── generate_figures.py + └── aggregate_results.py +``` + +--- + +# 3. 实验冻结规则(CRITICAL) + +在 config 中增加: + +``` +EXPERIMENT_VERSION = "phase3_5_frozen" +``` + +要求: + +* RANDOM_SEED 固定 +* 参数写入 metadata.json +* 每次实验自动记录: + + * git commit hash + * 时间 + * 参数集 + +否则论文不可复现。 + +--- + +# 4. 必须生成的论文图(核心部分) + +## Figure 1 — Network Topology + +目的: + +证明不是 toy example。 + +内容: + +* 节点位置 scatter +* sink 标记 +* 典型 routing tree(gradient) + +输出: + +``` +fig1_topology.png +``` + +--- + +## Figure 2 — PDR vs Airtime(最重要) + +X轴: + +``` +airtime_usage (%) +``` + +Y轴: + +``` +PDR (%) +``` + +曲线: + +* Gradient +* Flooding +* Random + +意义: + +证明: + +``` +Flooding = resource inefficient +``` + +这是整篇论文核心图。 + +--- + +## Figure 3 — Energy Efficiency + +定义: + +``` +TX per Success +``` + +柱状图: + +``` +algorithm → TX/success +``` + +审稿人关注点: + +LPWAN energy cost。 + +--- + +## Figure 4 — Scalability Test + +扫描: + +``` +node_count = [6, 9, 12, 15, 18, 24] +``` + +Y轴: + +* PDR +* Airtime(双图) + +目标: + +证明算法随规模变化趋势。 + +--- + +## Figure 5 — Tradeoff Frontier(论文加分图) + +绘制: + +``` +(PDR, Airtime) +``` + +散点: + +每个实验配置一个点。 + +形成: + +``` +Pareto frontier +``` + +这张图非常“论文感”。 + +--- + +# 5. 必须生成的表格 + +--- + +## Table 1 — Algorithm Comparison(主表) + +| Algorithm | PDR | Airtime | Total TX | TX/Success | +| --------- | --- | ------- | -------- | ---------- | + +来自 Phase-3.5。 + +--- + +## Table 2 — Scaling Result + +| Nodes | Gradient PDR | Flooding PDR | Random PDR | +| ----- | ------------ | ------------ | ---------- | + +--- + +## Table 3 — Efficiency Gain + +计算: + +``` +Efficiency Gain = +(TX_flooding - TX_gradient) / TX_flooding +``` + +展示资源节省比例。 + +--- + +# 6. 实验批量运行规范 + +新增: + +``` +python run_experiments.py --paper +``` + +执行: + +``` +for seed in [1..20]: + run experiment +``` + +输出: + +``` +mean +std +95% CI +``` + +论文必须有误差条。 + +--- + +# 7. 统计要求(很多人忽略) + +每个指标输出: + +``` +mean ± std +``` + +并计算: + +``` +t-test(gradient, flooding) +``` + +输出: + +``` +p-value +``` + +目标: + +``` +p < 0.05 +``` + +否则结论不够强。 + +--- + +# 8. 自动绘图规范 + +统一: + +* matplotlib +* serif 字体 +* 单色可打印 +* 无背景网格 +* dpi ≥ 300 + +尺寸: + +``` +3.5 inch (single column) +7 inch (double column) +``` + +--- + +# 9. 一键论文数据生成 + +新增入口: + +``` +python generate_paper_results.py +``` + +流程: + +``` +run experiments +→ aggregate +→ statistics +→ generate tables +→ generate figures +``` + +输出全部 paper assets。 + +--- + +# 10. 自测标准(执行AI必须验证) + +生成后检查: + +* [ ] figures ≥ 300dpi +* [ ] 所有图可单独理解 +* [ ] table 数值与 raw_data 一致 +* [ ] 重跑结果误差 <5% +* [ ] seed 改变趋势不变 + +--- + +# 11. 最终产物(你将得到) + +完成后你会拥有: + +``` +✔ 5 张论文核心图 +✔ 3 个结果表 +✔ 可复现实验脚本 +✔ 冻结baseline数据 +``` + +这已经足够支撑: + +* conference short paper +* systems workshop +* embedded networking paper + +--- + +# 下一步(论文视角) + +你接下来不需要工程决策,只需要三件事: + +1. 跑 **大量 seeds** +2. 生成 **tradeoff 图** +3. 写 **Method + Evaluation** diff --git a/docs/plan/paper_result_need.md b/docs/plan/paper_result_need.md new file mode 100644 index 0000000..e9f7054 --- /dev/null +++ b/docs/plan/paper_result_need.md @@ -0,0 +1,416 @@ +下面直接给**论文产出阶段(Post-Phase-3.5)操作流程**。 +目标不是继续开发系统,而是把**已有平台 → 可发表实验结果**。 + +你现在的系统已经满足论文最低条件: + +* ✅ 可复现实验(seed) +* ✅ baseline(gradient / flooding / random) +* ✅ 多指标(PDR + airtime + TX cost) +* ✅ 自动实验 runner + +接下来只做 **科研标准三件事**: + +--- + +# 一、跑大量 seeds(统计显著性) + +## 为什么必须做 + +现在结果: + +``` +PDR ≈ 18% +``` + +LoRa + 随机信道 → **方差极大**。 + +单次结果 = 不可发表。 + +论文要求: + +> expectation over randomness + +即: + +[ +Result = E_{seed}[metric] +] + +--- + +## 目标规模(直接照做) + +| 项目 | 建议值 | +| --------- | ---------- | +| seeds 数量 | **30–50** | +| 每 seed 时长 | 100s(保持一致) | +| topology | 固定 | +| traffic | 固定 | +| 唯一变量 | RNG seed | + +--- + +## 修改 runner(核心思想) + +你已经有: + +``` +run_experiments.py +``` + +现在只加一层: + +```python +for seed in range(50): + config.RANDOM_SEED = seed + run_single_experiment(...) +``` + +输出结构: + +``` +results/ + gradient/ + seed_0.json + seed_1.json + ... + flooding/ + random/ +``` + +--- + +## 每个 json 至少包含 + +```json +{ + "pdr": 0.187, + "airtime": 0.368, + "tx_total": 217, + "tx_per_success": 36.1 +} +``` + +--- + +## 然后做统计汇总 + +计算: + +``` +mean +std +95% CI +``` + +公式: + +[ +CI = 1.96 \cdot \frac{\sigma}{\sqrt{N}} +] + +--- + +# 二、生成 Tradeoff 图(论文核心) + +这是**最关键步骤**。 + +论文 reviewers 不看日志,只看图。 + +--- + +## 图 1(必须):PDR vs Airtime + +### 含义 + +证明: + +> flooding 高 PDR 是用 airtime 换来的 + +--- + +### 横纵轴 + +``` +x: airtime_usage (%) +y: PDR (%) +``` + +每个算法一个点(带 error bar)。 + +--- + +### Python 示例 + +```python +plt.errorbar( + airtime_mean, + pdr_mean, + xerr=airtime_ci, + yerr=pdr_ci, + fmt='o', + label='gradient' +) +``` + +--- + +### 论文意义(非常重要) + +这是: + +> efficiency frontier + +审稿人一眼能理解贡献。 + +--- + +## 图 2(必须):TX Cost vs PDR + +``` +x: tx_per_success +y: PDR +``` + +解释: + +``` +能量效率 ↔ 可靠性 tradeoff +``` + +--- + +## 图 3(强烈建议):Airtime Budget Curve + +固定 airtime 上限: + +``` +10% +20% +30% +... +``` + +看谁 PDR 更高。 + +这属于: + +> fair resource comparison + +非常论文化。 + +--- + +## 输出格式 + +保存: + +``` +figures/ + pdr_vs_airtime.pdf + pdr_vs_cost.pdf +``` + +⚠️ 必须 PDF(矢量图)。 + +--- + +# 三、写 Method + Evaluation(论文主体) + +你现在不要写 Introduction。 + +只写两章: + +``` +III. Method +IV. Evaluation +``` + +--- + +## (1) Method 章节结构(直接按这个写) + +### A. Network Model + +描述: + +* N nodes +* single gateway +* LoRa PHY abstraction +* collision model + +不用写代码细节。 + +--- + +### B. Routing Algorithms + +三个 subsection: + +#### 1. Gradient Routing + +写: + +* hello dissemination +* distance metric +* next-hop selection + +给一个公式: + +[ +Cost_i = w_1 RSSI + w_2 HopCount +] + +(即使当前权重简单也可以) + +--- + +#### 2. Flooding (Baseline) + +说明: + +``` +each node rebroadcasts once +``` + +强调: + +> upper-bound reliability baseline + +--- + +#### 3. Random Forwarding + +说明: + +``` +random neighbor selection +``` + +作为 lower baseline。 + +--- + +### C. Evaluation Metrics(你 Phase-3.5 的贡献) + +定义: + +#### Packet Delivery Ratio + +[ +PDR = \frac{received}{generated} +] + +#### Airtime Usage + +[ +A = \frac{\sum TX_time}{simulation_time} +] + +#### Transmission Cost + +[ +C = \frac{total_tx}{successful_packets} +] + +这一节其实已经是论文贡献点。 + +--- + +## (2) Evaluation 章节结构 + +### A. Experimental Setup + +写: + +| 参数 | 值 | +| -------- | ----- | +| Nodes | 12 | +| Area | 800 m | +| Duration | 100 s | +| Seeds | 50 | + +--- + +### B. Reliability Comparison + +放表格: + +| Algo | PDR | CI | +| ---- | --- | -- | + +--- + +### C. Efficiency Tradeoff(核心) + +插入: + +* PDR vs Airtime 图 + +写一句关键论文句式: + +> Gradient achieves comparable reliability while consuming significantly less channel airtime. + +--- + +### D. Discussion + +直接写你已经发现的: + +``` +Flooding improves reliability by saturating the channel rather than improving routing efficiency. +``` + +这句话就是论文卖点。 + +--- + +# 四、你接下来真实的 TODO(最终版) + +直接复制给执行 AI: + +```markdown +# Paper Production TODO + +## Phase-Paper-1: Statistical Experiments +- [ ] run 50 seeds per algorithm +- [ ] save per-seed JSON results +- [ ] compute mean/std/95%CI + +## Phase-Paper-2: Figure Generation +- [ ] plot PDR vs Airtime (error bars) +- [ ] plot PDR vs TX_cost +- [ ] export PDF figures + +## Phase-Paper-3: Method Section +- [ ] network model description +- [ ] routing algorithm definitions +- [ ] metric formalization + +## Phase-Paper-4: Evaluation Section +- [ ] experiment setup table +- [ ] comparison tables +- [ ] tradeoff analysis text +``` + +--- + +# 五、一个关键判断(你现在的位置) + +你已经从: + +``` +工程实现阶段 +``` + +进入: + +``` +科研结果生产阶段 +``` + +后续成功与否 **不再取决于算法**,而取决于: + +``` +统计严谨性 + 图表达能力 +``` diff --git a/docs/result/paper_evaluation_report.md b/docs/result/paper_evaluation_report.md new file mode 100644 index 0000000..9869a56 --- /dev/null +++ b/docs/result/paper_evaluation_report.md @@ -0,0 +1,172 @@ +# Paper Evaluation Results Report + +## 1. 实验数据汇总 (Experimental Data Summary) + +### 1.1 实验配置 (Configuration) + +| 参数 | 值 | +|------|-----| +| 节点数 | 12 (1 sink + 11 sensor) | +| 部署区域 | 800m × 800m | +| 仿真时长 | 100s | +| 随机种子数 | 50 | +| 算法 | Gradient, Flooding, Random | + +### 1.2 统计结果 (Statistical Results) + +| 算法 | PDR (%) | Airtime (%) | TX/Success | Collisions | +|------|---------|-------------|-------------|------------| +| **Gradient** | 12.13 ± 1.42 | 39.63 ± 2.05 | 62.38 ± 10.35 | 93.6 ± 6.94 | +| **Flooding** | 23.74 ± 1.30 | 96.52 ± 1.22 | 67.52 ± 3.30 | 327.5 ± 5.66 | +| **Random** | 11.55 ± 1.39 | 39.03 ± 2.21 | 69.73 ± 10.85 | 91.74 ± 7.59 | + +--- + +## 2. 论文主线叙事 (Paper Narrative) + +### 2.1 核心结论 (Key Finding) + +> **Flooding achieves higher delivery ratios at the cost of near channel saturation, whereas Gradient provides a substantially more airtime-efficient operating point with comparable collision levels to Random forwarding.** + +### 2.2 正确的问题定位 (Correct Framing) + +❌ 错误表述: +> "Gradient achieves comparable reliability" + +✅ 正确表述: +> "Gradient operates in a significantly more efficient region of the reliability–airtime tradeoff space" + +--- + +## 3. 论文结构建议 (Suggested Paper Structure) + +### IV. Evaluation + +#### A. Experimental Methodology + +> Results are averaged over 50 independent simulation seeds to mitigate stochastic channel effects. + +| Parameter | Value | +|----------|-------| +| Nodes | 12 | +| Area | 800m × 800m | +| Duration | 100s | +| Seeds | 50 | +| Confidence Interval | 95% | + +#### B. Reliability Comparison + +观察: +- Flooding achieves highest PDR (23.74%) +- 但 reliability 被 channel contention 限制 + +#### C. Channel Utilization Analysis (核心) + +插入: `pdr_vs_airtime.pdf` + +> Flooding operates near full channel utilization (96.52%), indicating that reliability gains are achieved through aggressive channel usage. + +#### D. Collision Behavior + +| Algorithm | Collisions (avg) | +|----------|------------------| +| Flooding | 327.5 | +| Gradient | 93.6 | +| Random | 91.74 | + +> Flooding increases contention by 3.5× rather than improving forwarding efficiency. + +#### E. Reliability–Efficiency Tradeoff (论文核心) + +插入: `pdr_vs_tx_cost.pdf` + +> Gradient achieves significantly lower transmission cost per successful delivery, demonstrating improved energy efficiency in the resource-constrained LoRa environment. + +--- + +## 4. 三图定位 (Figure Roles) + +| Figure | Role | Priority | +|--------|------|----------| +| pdr_vs_airtime.pdf | 主图 - Efficiency Frontier | ⭐ 必须 | +| pdr_vs_tx_cost.pdf | 主图 - Energy Tradeoff | ⭐ 必须 | +| comparison_bar.pdf | 辅助 - Quick Overview | Appendix | + +--- + +## 5. 讨论要点 (Discussion Points) + +### 5.1 关键发现 + +1. **Flooding 不可扩展**: 96% airtime 意味着无法扩展到更多节点 +2. **信道是真正瓶颈**: LoRa 多跳性能受限于 MAC/PHY 而非路由算法 +3. **效率优先**: 智能路由的价值在于找到高效运行区间 + +### 5.2 论文贡献定位 + +本论文贡献: +> **Quantified efficiency–reliability tradeoff characterization in LoRa multi-hop networks** + +而非: +> "提出新路由算法" (审稿人会质疑 novelty) + +--- + +## 6. 客观评估 (Objective Assessment) + +| 阶段 | 状态 | +|------|------| +| 仿真平台 | ✅ 完成 | +| Baseline 对照 | ✅ 完成 | +| 统计有效性 (50 seeds) | ✅ 完成 | +| Tradeoff 证据 | ✅ 完成 | +| 可投稿叙事 | ✅ 已形成 | + +--- + +## 7. 后续工作 (Next Steps) + +### 7.1 Figure Polish +- [ ] 检查字体 ≥ 8pt +- [ ] 确保单位完整 +- [ ] Error bar 可见 +- [ ] PDF 矢量格式 + +### 7.2 写作 +- [ ] Abstract (最后写) +- [ ] 1页 Discussion + +### 7.3 可选扩展 +- [ ] 不同节点密度实验 +- [ ] 不同区域大小实验 +- [ ] Duty-cycle 建模 + +--- + +## 8. 核心数据速查 (Quick Reference) + +``` +PDR: + Gradient: 12.13% (CI: ±1.42) + Flooding: 23.74% (CI: ±1.30) + Random: 11.55% (CI: ±1.39) + +Airtime: + Gradient: 39.63% + Flooding: 96.52% (SATURATED!) + Random: 39.03% + +Collisions: + Flooding: 327.5 (3.5× higher) + +Key Insight: + Flooding PDR is 2× higher but + Airtime is 2.4× higher + → Efficiency frontier is the right framing +``` + +--- + +*Generated: 2026-02-25* +*Data: 50 seeds × 3 algorithms = 150 experiments* +*Status: Ready for paper submission* diff --git a/figures/comparison_bar.pdf b/figures/comparison_bar.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c83b17d64a42b57e34a9d8df071cde0c94a1e241 GIT binary patch literal 16887 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 literal 0 HcmV?d00001 diff --git a/figures/pdr_vs_airtime.pdf b/figures/pdr_vs_airtime.pdf new file mode 100644 index 0000000000000000000000000000000000000000..86d99c468b03dcbe72cdcbdb8d1057f0e6e2f61d GIT binary patch literal 47835 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 VnoOme6)YYFj=7MQ)-=$9{Rf6t2Fw5e literal 0 HcmV?d00001 diff --git a/figures/pdr_vs_airtime.png b/figures/pdr_vs_airtime.png new file mode 100644 index 0000000000000000000000000000000000000000..9e12cce0f8ce0405daa48a96fbae7d2a6f2c40a4 GIT binary patch literal 93155 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

# zlU`gpb)RK(CMUstTbGSYI51tnZRE$B`USdwdo%uGu^pKJV2LvqO?-tMVl<`Laga_F zQfT_~JSr^Uu*7}#K+Pk$hmFp&$T*zyn`&cSkE!2E%~VT)s#WNB9b(>arfN+P0WF%# zzXmRbLbI9_GkRvC17OJK&G3%c6x`if%4uwTKCh@tB&?)Gi9EgLw}RY8@lU^uI4;v) zHDlQavRiPQ5My5iRWZcKRw1XkRB|;TRxDW}mR||Yxw+E)KuEpTq{=%rCdRN~_ldwt z6SGxRW@A+2EJyPJnM<>Z==Cb|&Dllr0&$T41NE zgV#=$(u~7(n^JQz@9~2V<~(UtZC43*f!Y!|Hs6~}y7y|bOJwetLktdDZi2&fdMG`< z2>+ex6pXFDunt(=e2$YC7~tETOj9O)!2H0}cIx}oeHh63WA~(E=k%=uufDr)&2dKA zgd)E@lH}ihyH{a3jiJ|?sV?XN9XZ6n)$g()#Om@jpcxR?@S0NHgV>E*%MO2^=V{`y zrjbnWN*-h~2^5g36ycGx4D#@x6xT=i6sgV z4%Qj0^iN7%g(Q}^HCQsA&lMrF_NEiK0*q<;>U-Z z)st9F^jv0D#4?~)@Ajo8VcR@AtC2hVUs!u~SqYn^`+F&H5;u%}MfU1VDm|O${IBj; z+|)h)snF{5Q)7{n%Qx>MLR7m%zj$`n_19zHyTu!hS8D;LLUW#f4v&@*6>37@eNh|L zF$IRD)?*-xrVrNzV{R*zF-&B|6>cjRSp6Z5c%h&5>a=-piQgf$rAF*khVIu@*P>QI*{@up7TQ_5mZ0x=fg7~f2qDlsx zg~rKFJEzX1_o~U65^i$Q&$bP4ynzjGiEj2T@3%9%##;~(c`T<7T6a8RTLN~9CFqFQ z^4r^E2QhTKeAeR{R}Ur^N>JgDw>1(xf7hl43WY`r1Gf^>^L1_uF!69)Gm zog^oJZ!igaLXic-V=;1@C_dhN%HD5uCQ9$M7&w@FlS;O8gZTZov_HVhh&@Q;rq28R z#bYmFhT1tqS<}&wjK@8wfY@O2^B5tW_P7Y)yK@n@6TC;AlV(AS{u>q~!f)T*kfIX# zi#cgGzZ0_BcK11Ib?I{!a?#lkMJ_^qL^v*Q^6mexotG$>5O@2<6iXB<{*O?rz zbsOvxMokkuDfo3;oC1E&uJ-yG<%I#yp-$irUJ028n#5i$?JAY$0u7bOXt#h>@D1MFRF{S_HJ=) z2IaPr-MqOz{tS`zR~hndh`(iMH$1=a!$i^K#N+%S{sa4h!jia`cRn)Be;(J0?fwZ^ zKC4{m1{~U-D9reudg*lLv##8SDJF9QoRN3M;CC!aD1KKoQKX|#>kM#x|~u+HE@2CU@>7DF4%iJid7B z@O36<2EngQ0w=|6ja>Vt5zdv?^S;f>j{LDq><^r;_N&v-w4%2_5XPFyYGt{0Du)`? z8VhO|I>%#G9)D!!a)7%05I_H3#-HMeO52hq6X%BeB zk_U4c2f^E;_%+fg;^rbI02OZibOC;xhB(5e?5;CT`h!*j_W706S&CtREltsB_brDE9B$gRhw53r~=F65*SFz0!JMU9x?> zynE#Bu4i$mP%yrg2pEBaFh4m-$h8EngGAWOUZ{zk5w>+geoV3*hWj2}X z#amO|0s6T8HMRomMvshyE^&zNN6$1l%TuT>&-h_+xGXmTLC_13&(bZpFhP`1Cz9+Y z^9qN)Ld?(qeDi6I96m^Ps-<9L>&Xq){?#u;0}FxT6*6BxEh=uSfifFRUFuCd6vy^VIHV18kCfn5(k-d^awZl)FiE z*ctyMx@hgJb)xXyaoX`sRVu0J&7#wj-Wdee4kPiPvhFlg(jy zgDIw(d?m-4-(q7nPP=b-Xfq!{%(g1TsszE=SW}>rZWSUX{XX<>gRc{`HF0)L{z4bM zL^#+KO3FqG@xcrnzfr^*<{-coDd62%%rhQ84;%RUv}l#Ix;&nl7)y==08&pzvoSJ> z+l9Fkdn}f}nG*llFKyia9Nc26Ykxn}`+cYdU)Y-%VgccWN0?_9=i_&y@7}I6_Hg@{ zAW!-H*Y{Z-sMZl5VtVB%r&n=-Og}#dnGeH%pLbf-+T(_7Gi#dBNVd6^84UR7d0B%@;@v+MBpCNseX{P0NMrMfZ!c;&9uEFN5|ID37#c ziRF_qtnnpR{&p^T_f6;(*idsbm6I{r<_`3MtLIR`oL37)TgXPsWK%JIF`HJ|oZknI)ExPZPQz8!D#wkc`3PpsnTSA>^2$5Mhy;qu!pMu^j{+ruyHm)mBXK`XLL8s4n{ilOO{YOd^)V zM(0*#&#AyP-wtY-SP~kOKt%CSnD>>E4)+@4zk1Fbs|o;A9nRyvQE)B)4$(6PQAD#m#~ z_k@=j-fGrE-?Cqw(yWqldA|qHd+Jywlp8)`6izdgP@!JySgyAycviXght+cXSt%_2 zOqeM{@lu*TKtO8OGtGT(OpmPOp!IB@%Q;!8^2zWFzd!EP$CXiy94+Hq!JTLnnC?Q6 z4By3Ng3fA;A7xyu=#9MSjelgFq4L&rW%xA$nqb-5+%qBc(pzZ)eu-F2HgQin*_wa8 zS5FVl&8!-W$Ys7Z@_dl?0{x>A@chEQA#Kd0;%-k1d+pt9jD&-rCauQcCKx5caUkZQ z79HioY0s|czU7M;R9Z(Hdu@%;O*V@AU=V64OiuPvL5x95OP<6$lgSRm+!N?qxy6_q zAFW`>T*z&$l)`Fg9#t|^Q1xfAlP~9&t)CYRvx4;>qlv3)>+6?}HXQwZIw753Chk(8 zIcurzcHf&1Q?bf@UQJV;jc?R1poQ47(PG300T9Q&3c`w= z^NybewQOAP`Ww}k9WP&?u(w{;uozZo;|MJilZg1bGsh;XFAYDUMK+-R(zKG)56;z> zlVrVOeAzmfU11M+%ae!wpwSTgh>}4$uX4dt*K5WuZ;K-sG$47NHOfm$`s6c890~`2 zDe3X7M=uqobjg0^$IU{hosc-KxLlUfNgf?ZNBYSGN*^anOlXPcH1!=L$-<4`B%t5Z z`yqOsJVniUms2JDLNINK@DH&olz)Bw`_l*7-mHH z=vJy$AwSS=et>dSS7YFH3M+4s9(%s6I0YY9mga=w^aqRT(BkrGv@{=ORl2Z4j7r?) znoS?X7_1bQSTMeJW%p|JY%#gF;N_hZ&XnI7uMj2j`uoRGb^vp3%!C_BW5+Hf{ebU( zO$d?L0f}ndtXaa)zAl2znoP38^LgiMBoqhj@$5ng#(>>~$ z+(MhZHbdw-jZXcYnS1x)Pw@-VE5xG?YCKQTi`^ir{W+hpN*TWTljYX_>L4+d+ULmS z^Q1H#{4Qc3W(nM7M5CPne4CS%B@Qn!nx(&z2H8<|HY_uGNG%|A8V&rz#DYa8xu#Vf zqVqmbImHThLMp`vw+%0>H?yDN*^*Ytv?E;i=^fFxr&#Z*QWW(ALPd?KTEoSlU17Od z;!#V4APlM9_5tvHeHZX7NR@dW`l_2I0W>ws620K<8{FXO%Yk*>jBN9duhEjHSp3UB zsmx?;XqA6YFnsdyALzQ?C&v_$+66e?Pk^U!+}PL{TI~&hGCdlD??0-Uz6D>fG&;f* z>sG|fF8XRuu(Vd2(tkHp5Eh0*K?^J5?PXt%VHfgDL&cZM$a{cQvh6S^&^N&$i+mRL z-@jcKB2ABW5TKPZyIJ!@^!$hM0q_*kTVw}6UTja*>IEA(hf6Q(oWP_kU+D1n9GBlW?29>f?Kv?o)7m7Ie_}jH>B{&}RxGmm4p!fsvi^ z+2}-Zg2yr-my@@$s)ibwkOWac_$g*O{)JQwmS2KEA^oqb4hRHFHS?YZ0^qUa)YNEC z0+x|Qh4+y;aIEyQ1Z};`H_Onv zTE<1t!8yop;>DLDLbBA#op-CPSb7G+zrQ!K5tV#*(e2$u`&ZGb!ce}`#hCrOd?~n7 zA!tiC)fj9UyP7ND0*z#<+OTG4Qp*{T;;uZxppMTFsDWP&`6UoKqPgnK< z!u3@^!j5Ja1DpZ`X&XeX7y*o%HthL8D%Hyj@+hrI?<)1&rU6##NIkS3gW46vjpwq#6^n{z~Aa{K;BGk63)d_w=95WrYE#1;-CHL@7U%q%CC7dj<05 z=`CqxEe09oPl{ZfPGDq&4VctP`pG*r@8G$eT`l&th4Mf_` zoX;&gG?g4)w(nq-@*xiprZNnc4&dUJmD~*yet9V=skB`H9}$XiPe~6mKX{VgByYI? zB)pUAv+T=c1^Z@73V7I_e_PqPgc${WoqK>%^OZYIK6+RcA5l9?Itgdyv3>ia@l`}> zlz#Ohb71UzOOuSs#qlIz#nmrkJDbrok(Y30*uHyz`ZHtNxVO5eb54HKZigt-o&#@< z!tF~sZjW^?POnJDifs5uYIjccIZqIYRIBIX>`6k&CXCNAg7ni@QbfF3P8S*wR8JgG zs$ns+{ohwS<4fs-*zf#yBre_|^e;~4H&$w=K^Cg-5qfCfQ=V=0=l$)Ghcr7hwbJ5B z(EME6BL?-%W7A|PY3tSc_U&H7Ur%*|o$(u?oevJ&l8u+gx`-N72^LPv0{|L9?wS#C zyA9)>ZofoVIzOyik%axliwUWo>HkKbD0x>@Xdm0MaClkqqKOTex--PyXW@3q;4l+U zsFm@q2Kp%&(7Gj0+<@(T`W!Sx9j7RZ5;-NaXyas|ag7u9@EzL+G*X&=MyYi0D<&=L z5bOOZbU^v;UcCSzf^^qUA5LYp@9oVIP=bi-MCdx zz-iL+VNs2t84uki5`PZjL?ndPQ3PWbRB&!M&GMdj)t+l~b`dq_y%XSe%^5CRTaxY} zQ26yTjjPzuH|BROSFbNmw@9ey`R#k|^BC#_XcwUAYRPvyw~yUUA5LxtEO-w}aRt^= zZ0{9~rUb4YvaY~5uJ<>e4o@C#&$MQ|)G_jm(YEhsde{m$MNUue81pjx-TnF3mUCcM z5>}8~znRYhTzflwR=q!1Ul<&cj>+>UY&wAM{0`=-_6 zFKIh%VBNRP7Gr95JIkx&s#uhM2;Wf=W_(8BR`+?%H(XHSc;W6m%9l_#&80qv{M~|p z`7H4*F=gPcPpYs-1G(StH*P!8$rB_MvBp~AQks$lWc!bIile)~~ zkbK~=WJ>}DxUcDYU9S#yJJ@dHH3R1Z6PIDo`On{dx zsvd}{2<~%iP3GMWuUGHDcRWB}Wf`Wrh4_1IlH+pleXPLZ#-3AC$&6v8M99ftgZE7M zuny;8(|#nT`o0MOUAGSwyWj71T0BWuk_eZrS-RF6AQEYf+svir#xpkYzWIabUiygK zB@YQqGdZt-9SJ>hW|TkBB31yFA$+!b<)|01hN*$dEs0XZ7Zj+0U!#lwgh;Es>~8z< zt%WSPFCk6D+vx%GDCwUSaCYrRB_JGHQ~9LLAeA#lhFe>C8#^-dS{9IDe$Lg~p|t~4 z$^Y>0*yr7YNU11p@9nYd@NaLALXXyn66BOgg&0J+ahZw=t@_5+)ECOL9c!#^s5kO5 zg5tUqk{oQg-$p5k6yRU@m#-rzgc5s_2fvb$C3*J-`%TPJ4*m)H-m2<*w#!Dr#5-?& z%id}i@ydVdOVxx9hxt_Qt&WLGD!s#G*N1|IkDiW)P40@Dadx|lnUD5aox1F+BUl|L zj)$kjHJxEPP8bL?XO9jQsuN z4g`qsRFS4}TkztvFdd07%e&HiNy*k2M?wES>LNh5 z^A1@XV$*hle}^W_7GN*T$0(t~8{Z|#a(rvx%BxRu*$tYoi5lEtc_Nd23d8zNZ@E77lCta$+TnqvK*Oe$PF>34w zUO}`5PLN9wi2w!lKW%c`AUe%{+vm>{nZK69jw z+m9~j?lh&rm5i=!y1)NiBfBy|kZ}CCZIF+}+O8?Ux10H#anj(WK4q0(7&Dj^Vdhj| z%0T_K+#=;ql7x9|`1&SjB8{}DOCKiNc6U?TTaGDyK!=!0e#L-l-jsjNi~vYEKLySd zftD7Jz80_TA8W=l_B13}!m)f(tzecgZF~B;*a~PnWf}15ZZ36`bJF`wnBACV{ zMOFbc&S@`6nM-y)P}#L(#m9LXKaPab<`N}NA(_#rp#|T zg^n;!9}WA%S9`c+vMWNpJ71`!CYM}!J!LL49c>`>@wJB*V%(njIIb^<8UUTpLa~D* zyk(JyRj&TF+u&ew$;Bok(6Q-*!)f=DPqy^W+YWqdl90H^5Y6t-!Pr`UnKKvx-8Bnt zs{VRDdIiQ7vgR6tUxiede@N3kv~}uoN$(laLn27iUk5 z$uvbfQ#}q}i|r~eEAaZNT3BHAY`5mG=dv55H$20iZanZ?^Oh?uUj5oo`0AocGmC{Z zHUx86q}rHnqIbz4uW8sjM@#)Z!5se_z81WoFqeqcm>wXT#(DB~!>&SGh*rv=H}pY5 z%?o?ChRxcPKFeK+v0`qL+cz-8f9?UJ>K>*eZ(7sEdRhfACV&C&%AWvtAvFfWJeVdM z!EQ|?%(c}-ld_OFH;u~IS?5y^MQlV8;$uDdnWgcPQH3+X#O)OVqL8#*V@09vGFvVY zdcDZ=tdDSVo@V7#%-D0ChOQ=Ckavm6%(Nsw1oJMhrG*jn;}~I*MGrsT5V0E310}8#0Yq1l{ zlSEIW=5&md%%0)JdPNDM5TlTjSS~=`k(tkxP4m%d&+$wel|4F-_3tvl!I`IIb!3#^ zyt8-9<{5mp>vi07#UEG_f1L#R=EbbQOBkmN`4_i4+?Hyzdpw43$qPvT)V>V8L~=>8 zmXXL>6-&F~Yo(jD;d3iaitBa*CqIU`EgMfPu#89;F%8vF>jLwpoPs3sfwvwAx4NZ8f`PbQJ0xzjl>16slWa z^GgYy?$NB^2>q10+OE<2>0&C8Zq*@;1<|pY+;jEVKK-u!hmq_eCeDM#LselR>5&o3*$h9lU|)=F}Y_aXwje8GFo0-F0B18 zaCTRTog(Dryrg9cQ~=I%;+gg>pq6@{UAD4|d0<_Yz~| z%v3TZyeAm9Qo<0sFPMvxdRq4xMX^f{C$l@nrm2rzUxw%pPK??SKK^aA-uqe=63I@S zH1nE)(sU_S<@`CpJ*X)^EuET!w0K2Lh^SH9Yt;{#UrtfSU%n*0k^qDYLWAGAudr(# z?Hx4(vZ>?+`%depfZL0W=|FVw&Ub8M`=c0ZtUOJgXPSqR>$e5V|<-M5kOhULZRWo(95y zUVDeGnR2FL{68f_9F-z?}sDCf8aDknh46O7L}^E>1}^Al%9Bi9#ykx$mE3jACl8E z$^83u@THH|@BGumgUvo7IaOAb`YVu?y6#Ec7(mRP`tQ9*B8i7q1YwDpE;wP7nSw6~ zS$cdO!}p>{!u0nVwM=fj8n&4eNG3$fjbqX4prh;Q34?+SozrNLH~AIqe?z03EEtlp zV9`!x0WA^`LSJLEsUH*Zm*nOG@E%_aDKhe~2%E|H^}u6_#YV8!iNkLArZ<3fcns*b zy+}vT%^KuzF=q$vJpk-nhmpWIG*!b5oS=Ymyq53W<~h|emEJn5y5)o|_w4acXiLTP zt}o?v@cSXksc%dyY11#VeLdo9-tW@G=jI4Xo8)t09_L1mv;NQ0Tse}Ma?@n#TMT0v z5pT>cKqwdSOfK@M)Lh5-|1Sm^1KfcAvKL5uW;SbH*$n-50>;B#ywjkHwWp{QATrFn zL_^hLGE1*#7({|OdjlB7{JwsVvj&C&~;0C_HZ9#^wVGl@mSb)DnA~+m1*qRR8d8dTH zm0}M_ZdB>>4e1j7{;t#aAJloO<%{t76y{OTK}OYnxlD%BVNKtwC#1NM?t5?zc*(U< z;PMyBp?QKugI$GC_( zM|k3rc1uOph5r<3niB`X4)Wt^d`$!#J?Gi*;H8Gu`XI0x1sa#hvJ7D$DW?Sg^YZDv zo48*D1}^o@HqJZiRoiQ6pMjT>t7orF&Zbu5E_xbGN6T*|7^RR8*Vs&?CYuFp+c_E$-))^m4{rC-%0;$SR zyA(ZPnvc=p7@-}dw~HP!#_cn#WBVgk53R!tD{hwCf83G_%zJAr<2lv?GRHU&BI-!%| zggc=Fm^vfRHGMdm3QM6);?mBQ&0vLf0gaVTz5b21{xv?AUe#DXE6o-$c5eowLEEH_ zN8%?|n(Kb=h)@*f5A>U$Ik=M%ve7is&V0X}xwsBPX8FD-Pg4bTle{QBcPCd=c2ycO zj{@-L?1v|%SpElqPNF8-FZZ6ueN*)USf8(g5FVEuBUsqx1iBPXH$}D@VPv2Y5%@+n zQ~@N6Bts)7^&?m7*L%B9JJ;mL)0q0g`k8!ow{*sMAF1S2RT+jk@))9FlQ2zaky*Y= z&=PcMN!_iVuvS-7uQg}=+`SSPkuqTY`26~K%;5m87qqz~BP%C2ep;P#I4AvFjgzqL zok5=3MfYEOxp#{B-R<>z<9V@Ddk8-%!UpsIT(22S?!8AZO?WSG{bU4x>vyZhmB&B_ zFmaX@h)HVOOgx?l?UwN_s(@&Lb@Rtz=uVYZk3s4%IS=m5{~aHw9T^j(7w7$CD| zt^<(QUl%v11&9keT&(W!hG{2WMpwbkC0QeZm7_;F{m&979Qb}4=;-a?0lw;KO&I7I zU%0|mNCd)4TheJ_l;>ZNV_-CJ)H_nXc+5&JDyFxTC#&xi>oseyU!O$PG4*#csqHaqZJSzH&(&CV+hb1zX3|Y zf(}C8lg-S^3(LkM7J!|wV}(la#Nh-pyTZ3vt^A93_D;_a`LW2Lrw=JohebxqcUcaA8!-Q(( ze~?=xpJSE#mpr+89dPGd^W{U5)V^|L$36{f&x~Xse88zSK{>CS#v2vEPB6yAk}TIr zh7~!lF9!P5&+)5Mx}KrS_I1zF^9uHaFBObiTdmave!WRJ*`CmlchoK>_!}-Umf6Wj zsZwm~b;c{G(I~rd*Q$wnS|%d@8zeFu z)0F=U#EkwI*crIoQc?iJ>^DV&S&*f<`#A=iGJHL3Ba&E;5k8F&oFD~wQ*^1~<652v z_uix)&&TQoa0Pw+n{cu_t|9UABo80Uiy#hP=hK`w;^AOPjD6q#`Ic|DM1sI#UI18= zSb;HANyo=-<+?0(?6xP!9ZZ1kIx_tD)n-mnSi2kOFHSAk^G1!^6V`Un2j@osh2872 zeJ6*HW&i^-$C2r>tL<@dI5+Di2Xc~%%NIWO!pA$MQSM^oL`5MVG6j1^i8dnhbq^6L zAfw}VOTs|f9=QQGS9yMNcq=WqYb*6n<20b@Vl(pUl0UNneL@o5a%8vw`n!0Rq(7Y( zWbVB^?E@~|4E`d@!cxITi^~1t zX=-&6bU6=?;t=r({iD?iy`10s@y-;m?Rn2`sLv4!!|XlL43=AuOm`|CO`Bb%h2$E3 z9m)UMNna9BFoOvSOW43{Ofdh)Zy7e~UbE=rhae?G9!h|iWv*MK@;?# zT3YgiL`;~EX0Yeej!CP~C*XuiOh^^J&dr9=ct(MQJ54h=DPnRX!Iqzew^E9^s(+r2 z(M8CuGl|Q5>I?l|a?cLLk18;CsA61MOgYBiUOnBaG`+soyNHPn7bj|BDM^)qnn?4r z?%=YgV5ioyq93`_|2=?SqQXJ$m5pr?&BP*ctlF-YE!_vO9|quN1qDN}@4f)3e|_{> zB0w21qlZUvDF)-;jfy>P!(a>2R{yn0#`xaZD8DKiuj+Tb2_a@KRq6q#qO{`lGre`l(+l+ z&i0GV2(2BtkQ|88RxnpVaJEFZTpU<5324v&TtSP9=GPmEcUWdj?C%tS%F1}f0h!27 z{`-#qQr_HqZO*uoPZ+$mkdjVt4uFs%8440DIIwxn=~%NK{!U?n^wz*G7}@CG_`Ah* z4WW#lGdn+As-MyV`8YjRx&$H)=NXG@q>sfDO2hy29c2HMCTv1sm@^)m)PG1#ECk>d zAcqHhR7k=R7Sb}Q35;Gi20%Ov_+@xZBekqZt))NkUmMF)p(5e3j9}3%dkrr($m_sn zulw`CaF+=%v+sWm%074+Hk7%|KzPzxSa`Y#$|v2gA$)67CIV(Q1tmv778Iv*ccqQQ z3Ytsn)Uk>TYdwpNy|(8B6#SG!7m&hQ4#zS-y=|HgDQfSusRPQk&Cymy z5vk+?XG3=~a>VKJauj<%fXj0;ClVPofYIJ9@HS-w*ts|xcu6C^qQ08!`kK_!5|oE; zLK(e%s{R61TO+19VU}@SRn-xGIXEMfG}V=!C8O3!=HR{f=_ZQd;Q(($*xsg(l_s+6 zxaP#2-GYAYI!Xc*jVw?4m#Es|I25bhWG>KJ(64xs3_LoGKqp#6ufe?l2v%*Y;lG0K zzbj7zXSpJMrJfi=ww=!ld^wU;Qy_{=a9%WyO=oyIVt|cGNLoYo>Pc=Pj$~b=$8HxA z+zl-RV(tHruJ4Ygvj6`tien#S?-?iAgzP;-j=jkyL_)UXpp42$8XTiI$PO80N4D%0 zlAS#w{N9)D`}6&Ne!s`>`s;plJLkI2`+ASp>-l;lA znLtf`KJ48EaS)!31nZHUZJUg!sP51K0i*_|`nuWplli9OC|BntVtik-A_gZ0V%Oe+ zJ8$IGN9=EsvOts$#UaNG#)!sD3(&!sUJt`|+;elIuzRxBZyf=t!C!U*-NCphq_%|Q zvwc?Phi;Pm@d4n4JAjUnU?NV}px}bRFN&eD$$0)9l|_ zRJ$Lzc1!K#NqAl^I6QcL##;feCq*DL#U$*X@CO1v2@PKw+A#Tz+HQl6wcm)afZ=it zvi$}oN&@s04ii8s`vcgRxet4sZ_8i><>urlM~m8}wt)D`1Q^$GK;qcF(U=%#gCsvd zlR0aP3vwR4E5D}?Y6T7Pu6NMFfQ8L%j)oGh}7X~^{-=A7JTCtttlKuqBKAFUde zgT!5%o5?O3k&AA+*7XdnI=D16_-gi6{yqmyoIP0-2RqN^l>eIJW0fqsfq9~DM=Mi3 zt3^5iq0?6;D7aRa?!`>m4b$NZO=R|y5kaE2*3C!Is9FM1Z?D{0omF-q!H_O#`&(NM zsF&SZX*=^a=qTr!ma=|Hki!Gz2iTs(m|NKivI|*BfsT;d0}DU9$=xYM3bUSe&+yk3h?O= zIXTc*V>0xtFI@xXBX`e*+gw1j4~kE@Wo2eqtZUBOw(N8KX*#U0)3s8Z)~e{>Xdw|% zTv)gbarjIP<_FzQK6VzYn%A-@uU}TYRy)*mJ|vGcUm|UaK#ub2);nhoxr2_!_w)%`O7(g7Y&)KD1-?eq z;Z#i&)fYo96`=E-N8JNu<(lx>Kxe)8&AXbf=;<%M-x7l~rEY|P)-~^fG6q#jwDG^o zrmThq3@I4YPvh>?O^QeZgX|H0V|UejU$$X134`coaJsnd%7U#a{oe1UD56}?nT7!4 zDAi=5l#~?dtpLIkV3p(6vYJoz{44Lp&=b7*r_RcCRvDKfWVepp7#O8uj?E1$uca`5 z634vXY6aONt)12K-ea-vROO$PHv|TcpSp~GQX-wu9S*<+VL88}!O1+prpqwmtgkKn zUUT)pzCSZGHe419m4$CD;_9=XHYm3oD9M7R+;*iVW%p)?OF(|GoTX2aELi(yELqA6 zgzSFRq8Hdm`FTE;<-h_id@b!99ex&d@?86SvfubAD%_8Cx_;90PK^2>=mParbf|d+1X6llONpBNMvV;w4byL> z)!)AT^AQ<~c8K=N4*mry{^jvfB!hudpqy|~Zu=1Ye{4a}TL-z5Uyb&tD#ko_4z&W@ z1U!m>#YbSh`&e1UEESpz)O1Qa0L-b+rUXMx-xe=0WXOFN0i}ZUMDg%(iGN)y5P$b; zjvpPnA$QEQ5&?b!u6rio_koL|CL29CbR`%`P3r?IAy0|GgI|_TC%`UXFR&$sTyk6q z@MDeVeAQV?TvFw_HlIrzTeH$81Jdr@kt_efxj>i89zGN>ns}&eTkHNy?QP|5_4!@$ zWbsT$czAiA022KxvC^tfopuCgxt)vhUTN$@4*vSx z+ax7-YZj;_0d36zXj(r80au6ZrR+pa=yV0XM$T(MAoS?bgdw}pW56!1HIi~k@=el+ zUd7Di*I>vUSu4!D%yNGaMOA1L3~AC@MHA-wvgy7(;21Ouv^ZZX-+FKh0l~r;_(Q?Z z=$mzIfXi!)KrLYRi4{hGMtWMnFp#|l94-#PrmPHbSynxOU9J7ewIkrPl*y`LVpjggu}Q3z0nEos0e4rO6X95%uThT?u4j2MJTMQfda&#nZ7>-_z>RbDx~>J< zg93yF!Sq&8xD{un)0QX%7IF3iz45&xv5;=`aUD2py34Hyt)SLpb?42`OQEKnu zEGJxQU6k^xnx}SKZ1gY3Qb@%|sGem=1Rz)h(apjjGT!4#O&jV`VH;knu!}N=aQPVr}o`HLMo{mSj^tSGu&JmXULR; zR6LPJMkBs zWu-zAj`d3RUb|ME`yrY7QfOqhzEq%orSCDi@ZiXysQsNzpIhXt5tAGD!Q*X)3^!$iBe;92KEJ5T$6Qaz{Qb663c- z6ZLj+Y&20Blsnq|y2qFgGD!EC+QaM{g>nbJ*?au*7Ok*Oo;kDtIXJ*+AdXM~p2*wQ z^jqx+6!Fu%CB7hMRgcQ_Jt_Lwl@GB)8YT(0exu?H$4_}0r0G+ay|3w1CBh*B7yrPLXM(tPe>E^$GSH{W z6P9qX-L6Z#8arO=&118Z_}`NPSXCvzn|x1EYQ|?*HBqUk{!-$F_CTv+Qp_0NX^e)` zcO?~yBY9gMChSu)1}hiOe0Akx0$X*Xk0+nKZX#-0k`Ce)8rEVxL$pSK{&(+hap z`;mWxyFygVx4;)c@1bOt=KxwqR2NRZzn*KZLK^`{?bp`uqxSis+53%puvUawMa1lV z03Ah-V6a?MA)>y=da+6c)?UZjYr4MnhQ>a>1WZ59J7fO>ufERqP_5O#y{*M$Frb#y zLwS#O!OHD?cVO=%gC^^^BvOiv4>%q$ezS zI5Ct?pHcnSj_f=LYg6XKuWju*r_};GGF$LEzV+CqF(Y34R@*f7NuyNHmo~$*l;sJh z<5OW0C}@t_#7@>MZ=KtX)lc+bQ0Irni>CBIu$dE|g!kDKHt!BZDL~~)(g~;S{TI_2 z?n=EvyLC+^3YU=iHc-;+4sbPa6}5xSEssgbXVs*6&m_v=AM=uq38%o&G7^#v*p8sZ{t}b-RWs-q@dqm3Ny(EpQ-XH5C^>SnAF=lc-jO|Sv zEYf$l*4f=i@xN~Ny0;H)Wso*SMlxW~2mu6A+2(kj8OtXf;$25eP$dppXz}MZSht*F zp|gZN%V^$n7?i&){>j~V&vQ44e{(nYN!f{m=Pn>xNS0imBSGbK(!?0s{qujJgbAuQ zKuZaU@})KB%u-sTFSxB};9E68l`&O}9jCO8)_eydj`yB<`GIrmBgRHV>`cUOe8$(~ zr)6IZIa0lAW_DZpMfP@z#hr#QD&05k#Sg#Hobm~}3@B!JFkjN1XJiG|;0gdk-dLX# zfRtafKtmg2<8KM3wV`II;}SQMYqV=F8i%v0K)I0m@#wlAFkQg7&UwU795<719XHRV zJTc;M5%DQE?0j|0a%M7^ESfwyZFkE<+$|`y&lo{V9NTU_QE1AFuaaa^Vm?hkC$de+mC9wv*orl_$;_;v}?{wBB$aTmu$u-!}c@{psfJ5 zYEl!d5tVjp0Yl>>kPw4hpIZ<*e4i20p@@gXn2X|g1$-U@1xJIvN%TS(qM!}oC|cpF z3I~N0aKK)5a}Am+GtYHW$v5J_APC}nN*OEccvT#3+aD)fxNOZKp%9i5Yv095QuIim zs`GFa$`51m#LgG=MdA&`s5sJ9MC_gu4vOS_X%v)o<{+%~9xAZaAs*cQ=!r4`b^63v zzkHm+x4&w8S)Mp^rYG6E7vKB+5gHnHO=M1}2sgW{T*X*`U|w@Ay=%qaWkQJV#o!}7 z1Pj3l@^|G_-I+N7<#PEYqD$j{XeSCR8s49WoX>=yAMCYcOyyR{R1l}Z1&+0$b&<>U z8G^_@cVQP`0W{t;StWInPP{+#30nW;0IU21w%60Eh)G?CU#?Lj;<+&*fxuzmkLAWe?@ zA+|u;Vxm7fFKuYDn zTct$y7LjONcPc-eAVe1!a9MFSP^SKo&Ic>w^@Ts@6Xd5CwIZN_>OhmXu~+^0|xEwm2Z3bj;!uI4YihBAPJkBC^D;3 zaK$CxidMAyV3yM|d&PW|^RAG_2X?+hxx8}zEH)V&DdNY<4s=a5zU{_egik)YdM+kH zuS+-@%3z+#f3^o|$GcT-4sqfF!Y_RNX%KhH$gSw4J~G->rQL69Ohr-ZOg*r#9rr@w zG(7pHDgVcg{ACAXHcvylu|yeLN1tY!A?#8=BH$(?OR_9jz)nAsePHZ(mCJi$G7`sb^1*x1Kh1+z>xU=9S=%qJoFpoL$7za z)4r_XPrJvU%bEjB0)5iIEDqXJQ@)Xd)@A3V(^L=xU(TI$NfLf%2}(7{-#A-Xo`2w9 z<1hdD#=J^ENdWh~(zQJ@wjS5}rwTh>aPm$NMP{gHsrmY&Y*P8fpL0Tw33^$e=~qb& zna&_2fKO(rd6(2Ni{q&h*Oen(TNn#AxQv{0;eY)p-ua)Z!{W|2xtOYIotcbT4pVb_){O4bNwnjXm-vC{mZqV8I_u?t`hJh#5XW+?cFr8Ib&N?r# zm)^0pCR(-<((^!lcGQX2weTzO74UIxB}XIzNfAGYPhRb; za3KFWI{uAs0J@~iPHq{!U{h&ghKw~-|L55#|32GiJxL@3TM6%jyM)2;Nm^_B`iVEk zvp%%qF`d_#_)X^G1k_^wmUO8vn?(8k6==wn`T!(epE^A`yO$E($(F2f8N!Hdk1fRA z)q1ZHGicM?vOSMntPB6S9nJaeh?|KY(lSTO>gEY+UjEw8$pn3-(LJ&hy#|Y!GbZqTLt&$i61s5Px#}oSthQR1iv@wa$JXGjr}Du{}RCV{=VDOInP*- z)8PlgFDu&av%BU3Lx|2-eozjuK-5x@_^(;!d!UB9eS5Bt*|@T@!M~O2A2jXSzK;SF zZT*fdhXbeC?L*N0ijm%h!{oCUKeB}t`Mt}lJKAR$S^*_s1=M=ySs@GJKPF4v50-sp zF6#0C6duR$3a~O;_d##~@`0n&E_oB@|NW+({f%!$Ek3(@IakNOQ7N^x_9LN@`ei6jcwrH34NqNWQ7nT%agT13hALD73~aeIT-2<=eKa{I!N3 zpG%6G$bSxdqhdlzFDrP*S^SlVg`g;<$Qni?pkY5iQ9bIhxM89)@I3W-Xhrq)pQ+dc zg-oxTfteqeZs0t}mMMUl62F)C$~J819{sl~>PFcZL+Z#}MXA4cW;tBtAlJW%)}$p~ z{C}g{Z^P#gW>4D|g^2*kCYTN-j3ia1OdlZoUr=j0U##OoyR3@xQRsD8-tGPn^?s9P zkADKze?PyZf-?PXS5AUwaCe>n`XY{26$+o{Yw94H1H0seGT3T;6YU`QbD3P`AakV7cRIdX(%fo&(VD!JjK7?O9g!| z=RbSaJS&jy?wwNvfzbl(xdMe;pZ|PXMm-^XuE&`L9W6J{y$!({l0Dy5?uQDdb+0`E zbYE}zZE7RnMWKobL}aZw;Kz|j9= zd>h-rNfG~Ow9ts)63(1oZOb~MV^oN0#|LRTpOV=ta2jS^NI_LK#hnZ4C5Zc57JxTJ zPM+Hc&7;o+f$%sWiH!YvH|3WDX;FhBRq9pvw*{N3G;@pCCR+Iy zkecXPDSbeK``f%^Q|&nsm7H&u?6yg!L713oK5+sR2gO{?c}k)g3&j-|o1cgx_gJC1 zO5YX@{|X(v3xfloS^*NZ+~&(#ueKIorE$gg>!*4y6g*x0!bq&H!^$cS>^T!m3}1Dy zT+!vpX@+SPQNPiGUP#uJ(ctGXd0{WZvok2rBvz@M>2U`)(wM(bhB%E17mXdjG8m4ljp0Y+h3Q2ptAL%hI|(o&i!` zd+NVNb0xv%VybGMyu`gq{?Sih?IyqCNOHBS-sc8?7T#hULO0p9?%0%Tu+qjH0KTPS zbT=RAV?)J8y_XqUot_@QWgu%ho(yP7bi%>Rb6QnW^4Uc-mE1(~vps?RXVxwKR^^!| z7@Y?zZP9S<9E%207h(4{6)4%rupFIVC+{mVbNm6Y4P8;Xyb8G@oqT3FbP9a2=BrTf zkJ>BBmu@1%j@&Ex`04tcdrusJgF-1oAHwQFUhzKfh}ZP?${;Wu6)>!+2$ z#_LmGE$%l-bNnbb@A5EnN$2{WPgS5S<|`UqYMr)Fn$z9GwNPadtP43B zb{a$Rj_?JgAo#DPzBedazr)Wi=X9;O&{1WTr)Xh6^I>#1rW2PXx%4crdO-LIBe6qM zpFBz)R!kAC?V2c%P5$wlhkK%%z4;{dVt!FH1-GmklLhJ4fA1pEQTo$Ce{ZP<-O`Le zCxv{)CWZ{ldAku`8_91AoLH7mRbh9$6q@g$B%EQ>&)yi5Gzxvs(rM=)_Yj^=4NmuR zhb;+;0=LT865R$HiQzw!cPK)6_-37z`PvFY7^01{6iE)kk2`mNyL9-VVy@FHKHD~z z{pYqf&Tp&Xlrs3UvveiqZ)9Orwrgvk^nx!mVTi0#@~|YX4}ZuZcE~V{Y~xf<8Q6u6 zb~(lpI{taQvQMow7t-EzeKOj}bzx~Iq<%4`5qDwh;0mZW&tUbUE`cXw^Y2s% zK7Sv2Pf@aB&dv!xJ7Z5=iJ^QpK`GeGss`0y1REL$%urlOzDO|58s*}%? zl@lDB)A;%g^M8loqe=LXwiilROD3TqDVgw&b(;svlt8OEP#-j zMR(hxNbV)^$EE@>{9sIpk&W#yg?B@IksnhYkFb1m_*7h!+LL<=7-17%TU+z{@S7N= zd>#5V9{6%sy?8}qL-{ydHx5I-NN1Z|%@F+T`ZkvGYA5Izp8DD;GKMhyZ~5k3rCMu> zcq_;kM_IAFv{seOj+;KCd{WsqRRa_RcB-G83rlO8U7y~L)@ho}<1;hnqT&)?{sHRT z^bCO@+C>{9)emK&cpf&*mK0jn8et0xxZtoWKk`YV6a(YuSuA7!A2gzD1WK0Jg3Th+^fFDVE=?|?6^;c1e1YaVI&(a3BnvFC$_%+qK?)UDMg2c>a{q^`y6QdHM zZ-6QO8u3?UFHpxsoVz7>p3Y#Jn3gYM#ZD1+$xfQ?h^qNs&-^Od=62dOf zOyu_BDsWt}c>n1%upUmXzmIvIa@FR!m{=)>Whpue%ZI$f_6;0l&Z9kJc(E}&bO>L_ zY`Cryb>Av9d*Zv(l_QBcGNHp4L-1WsPWDckwgb(ejh2Hx3voZE%SM!tuIAp)7fzkG zZmx4eJp~}nFtBvPh7Xh6m}G@&{{1R6Vu5l%8>UkeG}{z400fJs<&HW#ZxpiFk)Yq+ zs%56M(-wXXCnH?fL47!ieJQ0_W{1hBe80Wyu=%z*Q}XyI%NP;;dC^MGF}fvlOax7q zMPtP6$if(UHt|eD&LYG)=|l4=C8+RvYz0%!T-%ay+FKclHww0^b>Hg*8`^2Pc3cfLC@BOxcWAWK?h}J3e~Q?cRg@ za^V^-kTT?490n}Jr?Ish>{*U|eTXyJQ1JeqDgx|-j6qv;d*6635SRv*vw(?+bK044 zado7)*O}woKLyN~pL>A|fJoV=&%JcK3NXmRLhTQL>vL}44w_GQzMMACgF#f56~1HO z&~smMzf$kyXtfxWFcvmK&mO*BU`|v6ToK9N6EmmW6P};yWp79rRg`Hs4PgzpTPStE z%to{D2OsVBAFuaeBG&*>a=S~USF{$N@y+qs>A@$dr*wh9lg!hg=f>UgAtUo;+4)M8 z)xh#ApB~ANiK7SF3Ntrfy@Qybpo=F_u+Gibx2`KoZq)7E*_vy0@vLAIp={L{y-{cy>(G-*v|u}XXSJNWym235Gf_`?1BfU&dEHw8M+%FD^kdtcRkW8pdBGWfRR)7gn9$%Bs% zHuzsez+nfFRlciWEf6xeu(-Wy4n0}5K1y$k!QS!t+13Af5zxYiY`vlOvA(OrIx|Gs zs`1Z2Ph0Va*6^U&txYop9;o>3mPt#Dw~%r6=big#38rV?U(PPz?DWK8#PY$=BE_Q6 z&pOEA{Hs*UfTfzHPB9P&`7ugaXo- zyh*x>ecR}q)JNW1t`;f{!BgdccLMz`r>=0SCZJp`44ZqVKrAi5 z{M-GlytxbbLz)2rHL}!*iu6Ix^_-+z&yF`fS<7+A0jItA>7QVu8tly7_;hAvt+m7u zf84nJVaOnyuiz5VVc>vpc98$WJ-@0rnBvnwO_)AB+b}fc^ds=%V|Ll_qJaGht8?42kLBBL*X#d51xcj^zO2eDkchmD(+ zZD4~FcRAL#Ri{Qo!r3t^ctgx>aDL>G4U8Qp4s;P%_d&^O<`HT-fdkkqC9>BRM%O1t zz$X83S|@(*v*KkULJIhj%~^>6j56*8FXgPPmvyx+GJ74+>dY=jd66B2Z?cmourz=B z4)`5|6ZABbYW97{utglD8wRiEwHYMu?@pAoXY&uvWLq27!iVfzyC+!Vk&Sl9`0H)$g0@U<8Q1N3lKcDU8!w{0F>}1$Mhe8i zO8!yki6xmk#6^m@K9jmWnZ57`LgIeK4OR{w`LOWs#D@0Hsjsp0&|x^(egoUlw*!ms zDkWASRTV&p_Ou1h2C)~q{nCzUYq5cilyy7PlEU!H2{0^*ipb;db@hjHkLhu;8iVXM z-h$@gO1M4lwO})0xXxH;YixHS-U4A3Aj@j`k6wW8)slFmeP2anXFS zcrbN8kTh-whjuF}lWLKS%G$ElZ|J1`A*{aQLb04^NV|A2axeKYMA4j$=f)s2KE{icXp8^Ir>ErW5krr*W?#EDo3mehRpMP zH48%;wLO8k)&-(8eR$1!r)vR3bFsff+&b

TfWLthN>`cc-q_+ISzgOOT8h~ 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 i;rIW4{N{PS==hX}MeT4#-G8mdF*;_x^vj0{Th- literal 0 HcmV?d00001 diff --git a/figures/pdr_vs_tx_cost.pdf b/figures/pdr_vs_tx_cost.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3ddb1e9399158ca6fd73d8529f1f1cd8ee891daf GIT binary patch literal 42304 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 ~aWaEP|Df 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 QJ~cR=CgkJ{8c`tp7vBCF-T(jq literal 0 HcmV?d00001 diff --git a/figures/pdr_vs_tx_cost.png b/figures/pdr_vs_tx_cost.png new file mode 100644 index 0000000000000000000000000000000000000000..42be0a714c36c680ab70036c86c7911c6ccb3f55 GIT binary patch literal 87907 zcmdqJcTiK&+cg?cP-!+gQtT8dQl&^!Pz0oRLQn|3DTE%XU_n5XD!upK1B9j`y@Qm1 zigW@9ga9FMcknlN?jP@+`_A0&oB8I=jN=(|JUM5dy`N`2YprL$)qMJhmWq`M0)fz~ zJbtJRft)UbKu*0nO9}p^-0}MX_)E%7$HkQvSC8q9lyQ6P?4|?w-Qe1fv3nc zFD_CjTwn$_0X~{phlI;04=%|Lx$E=--~kqE<`z3Yz>jThH9CrG-G~ zIY|$FXA^vVThQER_Q{hcMQHTQn6W*-^ubalwtg|CyKc5mYPG1U`_02^`UVEps)9{b z#mz?t?t8ypPcaynJ`=I(`M!VudleGBF;(|s&LKumznr)`)xVA=IH}&alzG&IdD+b` zvi|94n%iqE?3G2Z`pvClp`J6rr&+i4SvaIv)y59rFLoEmy3r>3Zz z^1-dWA`PtMn~phgk9AWY+^7NO>+Cl+=QUw*6bkin#-ED2H&t#{mary5==VRe@IM$% zH5GEm&yKBtx=(zaLEt z*2s#*VM+UW)Bx6h*BN2aU-1PcG^!t z%pEq#k#k@&tSj0~z~c};&zo>#mEdgmbjX+i3<<~2`ZrUXBi!9l%Uv0$m4ZUX`nrR! zf_}e_j^+jZZKXFFU0<4+m?Tm^Z`$sY76@A{X;`lq8`GB%WDTFpjx)1+&F*fv;9tk& z<~;OuKKQ(Bd{T*j9~&DR7Iu6PM?AtedoX2I3@Woti1f>d*fl62cLpDI633^g1sly@ zb9mY_AJsQ;Ot-Z!sn2n2z}Bp{ zZA{G`)pQ$cGLClMPIcfbuF{^Izf=F`W7wTXJBM=-(tQiPiHibX1kiiW!@fRu|8nus zkG;Qhn6FmiD_ftO>Pe%D4LC*TLUs@Of%ow)zWEq~CSW!uZRjblh(N1ey9K5=`IBWP z_vtijpnZfrt6M4AeyB@eEcuGc+O9b^zNfG(F})&`{s*g?=Hd^FNOf6#Wr~3Ef5Ql!Yqy2O|@>Vg}PmvjfY#^STJ8-B&35CbBeTLXj*a-ojxC$Kn*EXCk&??Ym*5k zP?}L%7a_NF)`LHvG$^ZR5Y9BKJ%{Ta&8wBjM~_~2bLjXmG;FA|JVV7FeUm^xqot)4 z2vZALj5BePoU;6+zLqOTwB1r{(5!YF(c4)mEOk%d4iiMz@iop8s`K8T7sll8nCCAx@rhJp~h}&>=-n8Oz(z-$QKls7mnYLrbEzjZ3HsUju z8ZZ(ey>9dAmOAT4BA0U$E;iYv?cBOZj%#4wIVp)H!-GB#^xSS3%H*|MkIifd=1hA4 zazlY-$BZ1Je07u*%M~^UA93ajWHmUJe`PfC=$wy(r8xM21tciC(Ie8Y*4MB*Y418y z9VvTYv*lG-Tw^>b{_8MbC)Wx(M#RsiIy8VadwvOvU0b7JWo4Zf)`uZ+vQx9(tHqrN zGq*t{>RzAq`o*Agmv7xzv_|oR6`_EZ+5KVBInUuXpkOnIMz1&;-~?vx6W}grOeU7!eSB^T6=JC@Dl`tCk;tsV`Jutjy0XOiC}!wl~PKv zG?93J;wsE&HZzsDX1y-Cz1V-g1_aUfSbZaSjQLoR5fXiSS(XjvPehb~XIk9xp7Gge z3Q1v$>6mc$oy)$5e>+;`p@>nvPBCCKJst2Uy zyD}|EvXnn#49rxHiq+zL2l4{Dn6Q&aG! zWih*vC-7`|CNBSH<5=mWwN#2#U()hQAuuD6 zZWwKZgYSmVtm{-^4?leQ{@*W`1qzjoO!I@e{;Zsl+Y6NLdq^NP_%X0v6 z-APmqPQ83@@Z~7>>FSU>-!P8}zcjl@m)THx#+@7RB%V3-jwoRvPM@{AaSVIJ4gXnq z4DFZ9NZHSaKDo*66~5m){08<_FiA0g^YD)lwN+|Oe(E~3B}_2i!F4cjA;P~!Q3b-I z0u5`zwRD5#j9n1b(Q#`!h>#+KR1hVk<#Bh5Hy+~=Tu@M8X#!`OzkW(pe8Te6AJgFbaj{(5y;xP|}%V9?_mAI0ZZqaJZ|#wUy> zRzy+71ZGc#Fqy?85?mMiXu(TLsO|+b_`)7~Bi5r&axu&C(`RfZ(S4%{pW|4&fhOFV z%C@f@(N?YZS}m?k>5lKt%FMiOV`tYDADEpOi(Af36&O3tr?AN#j%>|h*# zABpCwDp9OY0{ zqmAQ_-JS$&Z7^xH@6Ejz`Pi+gZy~-MkvY;|+&2XYC=X->`R0$j5m}e87V!%F3b!in z6?K<(T8W-1SzSuS$3}wn+77BLCLS|hxrLcoJ+xZ-8g}=Kj*P975vGh`hqzMz>XMR@ zDy*)_Bf?`{SDw-LEFvHM3sbbk3yyWaqpWVHcs?H!?{YA9DF0efqlHZono?rXMQZK7 ztEe8*V$T{m&}s@H=x@{u&kAde8LF$Rk6|@)l2_DlIddjrU4K?fo866smhEV4i5*v5 z-xEwaIsqE7Aoi}Ei!3dBs(Y(TS2xrUg-mBv>-y34&?tb|J21F9c2}V5>@fOCEwbPo zBgX^p`$%|tK4qftJ8zvPUU)g&XTvqhc$H6wzff`Q^=8x1A`i5w@wwz}2;?0#31JUu z8sv>+w4l;-6>Jd*Exf>B$RZfpq;Xw|~6R7xXcXmB|mjhY<2hwzN+!z zv2Sani#oFq*3>_;txR`gy`7df&@|ar88`{9d(i}i4%>UI8Oou$l)s$)w%L4E@^e2< z6hk08q}nP#G#Z+{maw_Ikm!uc_(~;opSUwzBJajL(s>&$8Pe9GB!v=E!^k>*3XPuy z=?ZfwyJFikVv)DQjkl z!bL+`(hMIZIxkn`}S<~jt$z-yR35WoJohE{ZE1ziE)6Wy(e`WZxRswvbH^jX@YWHlwbB#_E# zmrjQ9I((k{Lg65#SX+khx%Lugsupg;g7FH%dP6QPM~d5!N{LUg@E_5F=Z1Kd*83D% zVp2H~g8+wp{}wdTpQ((xbBh(Ot+3im#5$Kq{{{eaDQDGn2SE4wmLl>vR`>-7f?Dg@27Uo`ME-{g5(>)cbp=5%85E!u z_-R)S!glJh1ITbC(s9$Ez81K^<`=QU(hY|~0tO>VMYEEk(c`Po5!z^~XMCO)pRo5j zq`9T%3m9jZ2ie`prmT!sk14M6kXl*E*1Dpnu?C82wWsGrQ18_3h@9{(%k2&S<0&d7 z1vLtJ9J+b$cUXzC0douUTU-b|vu>PO_>bI4Ln)^N*Cg&1&$aRnRGO{f;u?UcD+cKv zqa#!}G1TweRKFGFJ27J8ro&V!fn#NKW1!@m5Aq7WJ3>$pYu%mkab|i$TlomlvrC7D zv!!2x2ziremb9~`-pknni7L9M7WU>MIY+kKC*VvTgPfE)x(#+^+K;+*em;SYv^nq~ za;YmVD6bWjk2cU5-c>11j^@9RwXX4X2&#%XC-KAl6uwq?dM72^a^)SXdogz7MaG?G z5M~lPJBVKBl-$Mc>TxrBc6N4_DF8L+JDb6*HsQOGtU3ahknv-%jQILoQVzBlJ`%_n z>MCa`eft%~&zn=?5Qs7psS2e3fO?egq`_RKt)5AO@0!;ygz7%v&RUCU)#kc!<*o*c z4lgr@nM@94t+x)-Hz5nY%ZLu@{B`xaPl{D?!tid@#nFf%19yFNo=*&_6VA6;EZ${& z3E@g(ugGwH^shIdSSoAw!4Q1v(B7DPSY25`A)+g?THe8-YPFg7!LuZqh2Dy}z;Eo_ z?W7Min7K%~b=3EFsOg2FV)wlK!t8gMuUj1`(q;F41{d{f#odP&=ldD2aGlf*T|tivPI%HW?(~1|nUnH~B*aCw-N66BC1&L2Zgq;v*x9 zt}m00wV17nGcgR=gN;=jh?_bRNyz|vXm;zSJ;@ANMudcP>CGyORS0{5QVJ^MNW_hM zR6CA@t7d-UG0dfg!&8XM8vaihbL9ZRRLq>u7Ol*si?0N1#rK-&m#Q97rSfmyz2du< zf!C;R634jd7-;%)i;0QVAIML}dBeoIG6i-R^0a@hfNJ7}kr1n-mgu!vO*%y(L#m^E z)%@LD^4nDLPm`rakplEs@aqLfrUnLa)E{h5e=UO`uP)y=XnCxJ zP4!;kVHy|-IOkn-=Qg{@q=u9rPgyp~t*fysIzJ|o=mIL3A7IJan>aUB^DW4d%HIYx zvd0X+#^o=9^&4qlXd&P6fVZjHxF+bk92gV+sK<4<*QXvV;a*+m0##}hAQbO$B6p&+ z?WP^W_-mLq%_O&bL_T$Q&g*MyUs|gge%cBcq~XPi_C>X1DY0Bfuch?YAN!5$i>rek zUb~y;K>+l@S>IWh4IvWb#m2SB&!0b=AM7murwoO2f-)58lsI#YZp4k5wEpS*B!Ujz z+S>XFu=l!a{bY)ZA8f}gSNfJtN820GVqrPsACBG+_Tla5I`Mktdk6R_hVRPm- zMszfwe+>H&FbBX0wI1$opV>+A1+%x+uCO>3u|H@dTKD%Gn~1;zg4B4w3#`N0-_6~f z62u1-A!)uM^_E)v1rk$24FK{MnzIc#Fzy(_pnrA-GDztFeB z5z%kcGP*w9)^KOJ4>+@u?pFhI>1i})!Vhzue7j_|ZiQB8P(Cr@>-wm|K8Y@M(&oK| z28C~flTz1d9pw)zE8Oi5#JorNUw}fo{CdQ_=bDJB&|qN$PzLK6xWE!_tqkQ{oBQRb zb?aS)%GMyfQm{)+3sB!Z+}%&1n^iEq#U~+$ac17OB;ID4komssd9ITaE5Fvn{jN*e z%40nVB2aw|J-wLjo}uzXP+G}JW|$X9%=!+)xAW^f?`0$l*XmZPWQy{h(!@x|B;3qldGk(08$I>otwKP#D?fVRiHMS%LI?z3U-jCUd1FRhM>-6-L+ z_I7sDe%e?W>~*-_%01S1#Iz_%oY`_?7L6YKc|l*ybN7{;JlD*XJ$9ECGAGDex9ExL zU!iO$xGjs+y3Xnd8AO>=L#s&9`Sd^b`olS;>3@Xx{~qd_SuaBF$a7n!AJnN~iq2G& z%Yb?I*vNJQ1Q0u+@_Tp)-oBf^)~(bz0Upb;Q}M0ssBK`lJkR2B$E|=PpRLZ@80$O~ zYEt(2(AE8_<{v=MGm8Pl$rvi4Nc{lValHrof_cJSO660c%{^k6l_@tI{)ojuy`yZui%w zXKZLS1LU+uB1rkcE$Zv&%+(-@w;*Vfcb zzP+7t&$9HCyx)Zuav{4UfIJx^J4keEB_KZC49E5({SVu7)DsuTtwUBo5WgeGqIS&Bnxnfxh|+REaxOTfGEBp5}%Vc1j5<8-WqT zB&wgtDD`??>;v&rNGWpE=py8{o-*Ea)-aU>~a`)Ba^$xEttqF(rkvi2Sv`X3W! zYXFg3CzuU~!`I^)u(h)@K(3fB^=;nobvBh>eRDmc3~+5fK&d{|Z$Ob2pGClNKwiEW zP&hL&d$cQo$7`$d!vVKj;aD}Oyg)!V0bbXg#07IU)2nHP4gxY@W>I+59n7M>$())R zajY9f2na#6eEj^?smF(lHGui9cgRgW{Bv92UKSP!;-9G|TEa1x+%W3#mlE`W9lq&y zs+sR!B|Hkf_nR8;dARp?w`l{}Pf-wS`ckD3K>ya7WAKJfNN%|K3G4rX#MR+^kW^Pz zaHO0l5U>Z743W~(GxA5Ix6f=ltQ0!FeKG8uB`tReD2pq!% zLO!Zg;SnUFj>I?6w!&w^he&ku;J*pvh4gRB(a za_YPr*&QPD0Z1+=8gIzg*8;B~$}&X7T*24Bm_E2QGcHU4T6M$kE<<)*E@i3WlfrSq zqG!oPo88wS5N7G4om{z_$ND*XcALCeoOLC2zp3yZ9v-#bF08y=`r6}PH>K5h5qu=% zh?!kRT`ag0B%A_DR68IFJe{c}DGZM(OZ_&3IqPuQ)MnYn9vB4lr%G#G;3UBE#RUaj zM0WIf$h-4^UAR62s04?%58H@M<7Pgz-BNnDueyPBX6+CswE$-BvzYhOS4k;^kbzoE@tFj|QsQ>aQdowa*DEC( z+*hCd`8W@KW7@*w-JSiZYH@Dh37ye%2V3LYo`y zFOU-pl2rikE1<|g6c9qqj(>*n}$pgzFgL*>j3CWW%79!GF&{*TL6UJQi56mb(C2*o%EXd zd6`Z5u|?dBK$8>Pg*#Y2)wPKcp@#w~`_p3A2U$EoFPZ8I!e5be)$c7LB)_2#R`}SQ zf+b6L7Mn&00}XkV6&7v8Gz&QlMWx>x&00R_oz==x{A0`jPKIA(N>V;`+$H(oN|+rs zFTU0+)2wj8R_J3ZbC2Yc#al$_jGojOedEriGm}hGbk#HngT(tj?qhJ8KUc)8`>sd> zum=74aPf4pPDgPc^}(HEFcA@CpQ6+f)H3?xca?4xmZH6dJ+pe&9gaC@lvnESLU|~f z44S6iqOd%}Dgq$?Shn1T?Re41eUb{*OXV|Id6(}{960p1q(`tGEFowtYrr*nNXyw; zP=DGlC76S#p>Qqg`{XW=A>14hgr&^LpnBIuN>J@NZGw z2x`$8NG7dvpiE8!VRB9i!1Q7BnMN<8I1fPKS|c&2;=14OTEWyAUHnVf>J~f$NSDED z{V>;FF#=Ff!`a3cWk<^WfDCJG`pqKpek_hi75RYOB4JEROY7pa+psz{dtpK&s5)Cg z(2hYQuCA^I1E%|4E*>9vhU0MqrvPdx!_udESoFT2oC_4BiwCi+6Vq0^Ow07_y~_+LCLNszAM^(8rkA*o8wWkZXhgtOD{omnmVEFg-Xn#^?)_ z_;qG`TiZ@sA2TrIe}sqFD@hW2A|BwAXX(qcgcr!Slv%toApicrLua zAjT;o0pQyN(nnodbZoMBc|yb(n^|2;uK7=l5eSOHOn8}*>5n0}ExE`dDQ`3cJJ^Spd~pEkxT`(>qnLi9cVW+n#Rnba>< zWwHf4mmew6lKZX}RX(kNN>LSMndR|80E_5RhjalCQO~8m$1*BADpk?cOeJjZg-Qk! zV7*PLBU9ESpXqJ_xnZjRk=G_bOJ_(DMPl=pOR9ApP0m#Dxl=HZ@)H`y0a=a%c(Q?5 z)Q_5B>m6S80zh~e9pTb&>uC}*DMKsh>FK$EaY7-M5KF|futKMUqNB~%a%z4N2)Y6E zuos-fY%F8m+X1V^E54(okUhDafi+3mx?RY^M zarzJ4j4f2-^#CfJAr(BEASBgU>{N6MP|NQB`4p6tY1R9AzOUQFv085vqzfr9Igfs& zl+J0E!W05F53`Vk0V+~N$w$kx6GCT;5u8A?Tz4%(6cm$3NolOi?#`svM=5WFo8`*( zBZ&jM{=gH`iS(S0F%S@z!%g3{9m?Xm^!5hls!TebP*mAR#mdGeQu2TxD^t2ke44%e zqE3cA@oKV3JJ$jzx`NZwTDNrB`Er}Pq8nPUqg9PEt2$TBm7%o zYD!*Q2CUSCsdl;IT^l6G31z;fPPj@lX?tu*mB$0g4M?0s0&u&rz1IZRNwBXcz@HU; zT{g+H2V=FA^esbQZSKLy!bZ%WE)8qQL2r~LMFi3Q@`YDqxdLQLOQjuE#b?0C_}#jRH+vbGF4eo`0jlr*ur*QZ5gV|gGU znDw5w___&Kx!fW*Mdc7&D(4eF^QTgOJOO3PNf+&Rg*q;CgFj(uc5g(jZuqHmalh-M zoGFsZCUy$9*?wMwV;nqb3bj7Zu%^OYbr_J7KedXp7e2FEB!O*nZeIY9IvrDGyk5@4 zPNhQht*xzvx$=rM0d#~g0w+py{A-xnj;cE>dN7UV6m**RLbd}h@`Zu?ACPfid8^^V zEJH}!F$%>WR)D2mcTLVsdikWHN!a*c6%=IdTjOg-+T%fGKHsz+v5#645aZDCYQ5T? z8CXF(Y}V)4cq(x>7wub6Ec{HHr{VTAQ-VOiLkzP{L(C4{o2(lNLagC;HANk z)QV4SKh>P4oST~xYXJ+7n+V^@`tV7q*=O`}Lr_aWzpr+Z>vN(p8C%s$U z(HBRhr*1+as!W6R>%mRClYA4q0L=Ft9P#p%3qD|I84AhiQ$ivIa0%aQX3*qhAX339 zFu-GxeE0H0=wO?Bm*o{+(t195bv$g^OvMQ{{#MktUhNps)+&$%g33_J0-~Cljtcl-JGY2_dLH3OEbRg)(aqQ7$fAytd@!Nu#<)X7d=yQ}IG2&#aUq#`vj zqEG%ja0VC%4D*XwXt8)D^wl1`xGgrths%-ov=b6N^iW~(esHteWKJH{ws<|@Ce`L^ zmX82K0~X=EO@2tIUQvx8Z;KBp#%ej~X6c8x>g^eQeXcic`rvkJjC`ut5Yx*Qauf!WnkU2XNq-Sl{!X3zsl`hQRC?T_o-? zM6@LEv8%GCn2H9pgt9rsmt%oh>oej@z62+--O;7@&HJ<3C>)P}nTp(f(cgIkS2x&v zF(L0>EmegonC}&7{!*m8$fpUtvzX_$BWcjO4wwc(FS-H#Lx;X(>2U_z{+v=*-4!p> z;Kw$}4-^&y$6@}+0SVe5Ax$awo%;_sfWB|=9g1gtlhxFOAtn~K8j7|kt>CG8Hyi=} z@<3Rj8^u>h65V;kSsc3lX(5e$2#+ zRAE=*#?{wrr!5Nl?}wShq3i5+#KYBc!qUXX3@y?jM$QM9SchC)vk|tI+{nAwrX-hF zS*ANj-l@v`Yms2aaY zD2w$dGigy(E&Uc?hx)!2RWyQayd@8%N(<>QlR9X$rskp*qrknaPoomt5>+&jVr^Bg zRnzW|0=&!1r&vnwyPv~+lMN`h&318;RFM+NIONM8 zNOVGVmNXxEGihpVHkED%j3uhTN_EIONlX**-ZlV=t>HEK+k1>A4!@MWN4OjI)8_x! z8=cCw(7yiL3A|5%&0MZe${Ok(hr9u9yA#$89jq_vnrAIUk4c`C%zay3Rf^dZ@0I+j zSu*-B+9sHx!FnAsAxx@kpQOO!n^F-w7QyIQ?!5efH4x$)NrcPvs&0V#Z0^DJY9y>< zMw7~)X4FHTLXR*x3khXnF@z|KQYb1OFot0&M8}UXb2HChAt4L7e(62)s`_?` zZZKs+Mpy=z--F2fA&O98@}2HNax&D1(KvG=?`MIARX~T<_?|v<29-3^%<+1{93{Wb z=TnUTs^^Rv(B{%0aV!mgKB`VL*+DINr{tSacnKZuPiO%eA7^K~fZMPQ1?PIpD+`J& zLO`diCE#ERMd%;{q@#fpRcPqT`VT!d&FvQ4aTX5)7lkZt;JhAG3!W(`OGtL z$Qe=Q?}V)Z``i*rjyE71CQ)sQ4Ajke=R``!7=T>Y<5o4}_pf*94#jnw@|ShxVZH zO&jxv(+&xiNQ6>Pi~#fTZf$dYb1vX5gEE12gG*B(q6|o1kb`-?8kl4CXy_jwHG!RtydXy^8$M|X8Oj}5+XkF-8M)~%H;Vbb`*>5la}sJ7 z21-Y2;`ew}h#^4%V}c+6aK4?Qo*cH>U|CbL2BG?gPhft-a4#BtyD^0gLGy!4g*ZRJ zsjkO8gO^zrre~~Q%y^$EMD*i|ZbE<}upx1&8}s1&eamrES9RgEYTzww_(arMO=s^GgOpfqrk#Hz+QLHK2H`y4zL?l~o@@FSf70G0qWqg`*%86qZyhELagp zP7n0=Y_E3 z?ELoZgzm}=qx%b;(8we8;q&4v-%7Vp!rpG{BuQs#0}cb~t$?|x;mTy5lh=NR+8?*< z^V$t#p%b?IM;xE1iF=tPvmJmpR)jXkMBSuv*%97Kil!ssW1AvkH zl+bjWg$#~xGvK!ZlOk!J3(3P`w{BLOJw?GFI3;m4F@xd{4$bDFN+0w#EVy9TLFs^XoWkUYE#~dAVoqO9KZf?Dlvj~ z)Uop+)JU;kW?O9xZkyO1RyTsT%p1UD2`$E?({nfv&htvd96xN48-Dnz znlUoJo+s6mDn> zV?|Iu#vTlF@;0V8&FxiXv^7ci61)P~FK-=>Q8dwLY{J z(PsDM62y$Jp9{HuCqKSUxqVgL=tkG+OGIERAg&4$SBeBU67tG?Rt|I;bn~a4?NMkZ zhy(Ypb*jQ0Vw)eJ0r*ALp+0R_f8$Ve_jd+lADNGQ)!z8EuGhi0b}LKp^FfFNW_9qx z+=Sid{0mO71W4C=>Qh&V`NWvFcJK4Q>7%GAnreS3nWMt!pzXUaOcRw>YccG=u$6Glq79$k6yaB@!5NTA^Br*HvuyLr5@nIEnY20xr8 zIY!o<5m)t|Eu}M34p)~_enbj=eAQ9qbl}6ag)n1za^Ucq={IYXxXy(KsXi2MA5xT5 zhEq!FQhG-WefM}4n&ed^MC%3w^{&e4)-$$*%|r4DhXeoWSI_!Ix)$mOWJDrs3jQ ziZKo@lyj>46>5opK3WPqR6?tKmy_k9t0jJvWaP8p+W%&r2{_861T~-rtU%9DKk$5b zN)-@MvK?~;>{0UC2C@`sBO!{{kMm4mh8j;`=(e2~#DmxadmCQlgaMS6Xq*R|5erHb zXhcL6%`abD1Wh5;4K4!|DWPXK`UlqYbqRC8W9v3mB$!cHRPnC+&QP50=uhqPk+Qv# ziU{xVo&o!T5VXMQov#M%P(F1S6uWa!O{8+lFZp^OKRqWrpzF|xr)Us4|ASv7xOS7TX4zSk@dc2sY-L*3Uy(PL3eMo zUT(=n)TSPjHpSPS5M$_#kr2(+Q}6*>%WogZqk_|^Wf+P_kH!UuyQl^T`B8ChT8WeM z*BiM`tf}>3sti}hltNGp93)nQ`laCySoiqqkWUs~XT!qqj#u8&y|Kr7ydR6MH5=!W zr%+w8O_{Mr%xU6HN5xsxBm}V{P+gw9tT0-NfNFsz50vNdU$<5YraEc{Y^uZc$GnM} zh<^Ih!;23(-Ug|3x{~xn6tx1_xsWG%30FR)y zn~$*4fSEe7hcGXDmCZ1-cQoXE;2$67mcC z%XbNncR!^beo3B-2`~Pv4LSk{p*hQlQ0P$=r!bs*^)L^we;lzot1+5B)Qs#p8i|zk zE_G`R#XuR(KI#3k687Yh4MwU4v99r`;~jaG)Xa`^JbE?HEE;XGbVWew8>O+ZLIRG| z-(wOPA(^ZrCLex89Qa!pm4Wld1&2i#P!M;LRpl-$Z%Z&gbJ1MnbUgEq;~&Rh*h$SX ztaLm-ycUy1YDirM&_q)wz+GzyInOl8jsxP;#ckkZ)1j5~wk<~;ggx%Ar zMi84Q0Q^vzguA)9oxYvqqWF{G_q1E;_;7nzAU8k16Psun`^(GB1tf|bXdkc{b4JI+ zzq$Lj6*WXaY)1W^-2|0qJ2L0YD$oR8 zE{2#k*A@W}Q7c&XmET{w(RI&n9|891_7v@|4_iR`gOea-bf5Lv(*)%M3e9G!oK(5QcpvL#cfjXK+I$#yW-+VuNri8 zORQpo)Q=Rw2Iu1uk#DB4pXH%en<^}dLWhQrmkxD_4-0m!?B>HF+b>2&Q>1J0#!xU= zP0^lVFfjP`*)DmhNiXgK{4=+-MzbOxwOVtuI9KVSQi(%IfotnUvEgRU1=NO@M?KE-*x6js>J`lr@Msp3`xMZ5Ob_H=fD*3F+ zi{vV1;W&lmNZufYp<4OTi$nEhsZfN(cscN)BJS`ODlZ25(v93rTI43OrLDjAE>S)n zwpNY4nN`FG@8T6v-OxZU5%p`b`}n&c`nSr2xkp2^Qcd7&d?p5qFOnmbrQp>(s=CLq zg$?;f>;_Gu?6X~Wv<)1IY)RphD@3ia{24*G@v?Meh1RH}#x~Bm5Pg1WHtNVSr9ip{ z1QpjD2b@Fn-CVV0QnSnYcENU%aBOsbo|*-iY^oh8ebg%%GQe;fSDx!yU{)%83h_SA zBp)1X#4O9i2a1yT0guxD9pGx0Tf&|Z5|vRZ54D+q2syZ=XF{Tb$evgm6vzr0t}v#j zS)yNSJaVVfTq4(C>U%bRhyFapyV0+Y#bR_9H$d;2z|JkQmVo@iiX)5`1efI6R}MJm zqMbF)iG6LY+3!3tO z#t2_*zsO8Rf189sX&F}Ns3!{8P6zzXpnm0$sgh3}g_3-W3d-Vp6WOK{r=vxNL?oUL zhJs%AZMU@i$>jZPvm{3!Yc*XOy{z40Bo?6y zJjoPdFD(r(t7UrI$-axU8xP40Cu@0}Y0(jfDdB^HUH=THR(ZFb&g$sf$m134fjwbz6))UHKQuw%pw|l=qP}P!)Ps>;Uu= zLO#4Bnb1fddND8_CrAJN?qFk;bP33PUGHU|v zx{w)q`aqJHKRYm>xuj0^jsyIMe(IKHLHTEYku<`GZ?b}e#i9_swT1) z8>TM}y_e33%t{EhJ)$EGdBD+cJ67gvZw(76_(CGvN zDzlplqMw5v_i^}O?}*V{3*rEi91hTAKaDikWDb} zkM&2U-}I!MP>cAgQP9v0K9))l>hHHHa<5TS)mWc>N$~u@eGe{9tW{2ydV$7gwzky(v=ew!zUc`O)#@ zYx&v7$B?a_@$W$h+`4nPc)U&0pw2e$;~h)0Q3=DW5_B&6$$3kc$?lk+-K$1eWoI)! zA=61)JA1|fk39-uNdr@B_B`gz6%kkcK2 zq-^@f3qY^@Vj%g3slkAQ={3CJpI`G^!Cj^n5}1JwmmB$phtflT~t&wkoa#Ggn;tN5TVPXE#3g5o4)YCc#|4uvA~jDzPsz5C=7oGENSi| z&HqkjrnC?bK#=N(-&o$IBLEZXo8t_hpKAa*5C5gNS+p+MQow@f0B~dlhFiSn#Kdr#lS1U00#Brf7*;8 zME~*X+~qY=_dalXm6(_QOAF>zY?UmA=_r&GFyr;E0XKLhc&R@Sw9|kOCs``{4;sHR z!KUdX|6GVm#sP=i4`nvT=;4DAy}Kq>`VStoL(C|Y`6ABzKf?IW?VxEI`0i+YU&|8- z@?W5l7h6%W4s1F}DVG_2jsfix>bd%#c_lz@XzK?}5VO~RDy@MzuLPz3H>N_OXU(%c zf4{vwO$4ueb}>RHN8hj!nT!}?$*4UEdk}~PZvYNRa1GviZy$o$1cgFRylu1+)8>OV zBZ!+cBIP6_im|Kfwj$QV*mw;H={3L&L27m)nZT#Y&?jLQbTC?~F}(06^$Gn#AQ()+ zq{VOtg@=dl0v4%3N}qv&!5zpl6Ts&)KS{E_0s`7PH^sYvZ>6LSOJ&ytlBBrLu7d%@ z4_Mdrjf{+z;{HudA-nK=$QUSKo`H7N&#Sz9KpL(8sb^%Az+c%TOfrl90G=IZuuFhq zMH9KH+HGQ7VV#; z?Ere~k?QKhDtMdo&=7x#~`PFBL^nWAgtdPxM}uWj*p*)3FhQJxG#b0 zm&>>2e-8@6vIOY_lA9`IYZwLFby5$HI{5A7kGEhma&ETm%U{x${Sy+%%&#Vx0LV2 zaKl@;bcGERW3$8mkl(eF@i?56svOd$&WLfUQZOjO;C)cE`r{WGPgXenO>)B)<~iY_ z484VphEHU7?95Ik_d6Ca>hE7F6h2O`JvlJ|t@Y&}-uYj)Qp6X?4Vlb5(@7f?)PUy3 zNwBF-QDfsY$;%A*t+b}2gH@JP5Jtx*DA^p$f!kUi20O8y+z0JJ?I`TYSU@ZW6_FW(S>kFFXt^iEP# zkT&m_^4;zwxg2=E|0km`^F48RUrz!VX-^aib^i;9u{64qli z2kd69c%&wciIxr|o`7-YUrTe90e1h~`rW)eRYP+T5p;?7USt4IGCV4|7Fapz2*4=r zcyCrDtxmXNktMZM;LS&SyaGb6CpKYpU_dCqAaJlCKJqo!j3b~|W0&3~z@VTf zTVV2*)7xFE?T%67&M$8ll)fGEoUz#1CZ}fu_j^)Je{g<~fE3FSDH{rxuLH)KhN2=D z-B!@WI*9@ODT^$@1}n1n{0===V9)+9#@+-R>h=8tp47C^DqEaNq$7KTB9%fS*=KBH zjckKr$db@zEiDL<5@E(zXE65AV#z)-(u!m)Ym$2JXLNq&_q(qD`(AI?IoEZr6SI83 z&-Z!m`?KB6hH{Ovd2)G&MmXtDw$@wp2ld=|&x<~|Z3vW83ySBFXec-%4p%reb$4d`8vFL~x8EQ(*Yl8m;|#jA#8}X31g}NpFTPKMI^bz>Ifi*NQbqx76qW%&lL# zh#cenC(;f3z>)Fh9hA|1BC4KH`b_)+A>u^HJB;n_>2y=RY_f87Rc&{j&i+^V-znQB ztZypzx13#d41J;+;b^Fg0JR~4vOYwN?@YuMc<{!6oTs6V0-M_vCkHO;zsnX8*aSY@ zNwFtK0D$%d-6ccN0#c`5%T;kklXBE}eMpSOpyC$ho`lbfG!kFpftUS1BkmB|bmm{W z&`3)cNa+1AQm&^=O>meIi0?W_z=BAZkSu2xrl_QZ`W_EJXyZ&xOkRWd=B%zX&1C8z zG8G_!x(+rc2*1b6I^k z$m#A<{}ceA$HIA72i-?5sSTf7&Z%dli8>9PXy!i0)tEliz-sQ&^Hk3?mLZB6C)+aD zPd9rLe^}r>sRoN}8xOJ12!YGbOfYV!vh;3M^E=v#H0Avp1Uwq=8s+cZ_oThTIb&hN zotEi~cyU7dZx`4XMkao^3Kc)MDo@KL-BOAui(#szpREbI{ZjV~fuEF%z89v>@f0>c z2qcbJ@2!SZf7RZa!pOlDrmhQbEjJx(<_<0C22+d-Ffn@ zMH*+XVsy%c6DbiGvCy}d#@nq5oU@|jTYgG%=(+#WuOu)O%hBO{ZPOUdoM(wHS8A^^dH3Z}9{oKnv9?)OQn^+3WVuX< zp5QrlDHCE>!z*quP%$DnZBO)ARZ}0PVv;Soa&>{y^r(=PYEM-jeZ!sG>6_;~?le<5 zi)egj&O2HxmnwCk7(Ro6pqM#4e)1P{ZAiqkZEB>fFb#brlZ%%%M@9l!AaoNu?0K4{ zBxan+urTlV%s`(WBd{7upe;3dxeAifG+~P`S{NT}*Tw25k~XB4V=FT5_c^(U%9M6L z|MSxu(N90c-dHX})H66-piUfOJKjrdS0zv z%ZASX2`dE6#BrJ76Vkb-h>Jz*(NES4KQ$E&*>xwJ_RDjB-Gw(&+%FF#*=5qzciUSZ zO6`xyo37v1jA?E7KedY*&# z{A7nha|O0DK=yd2{HjLuSuyD=@fR^ujsJpjmdl{rtwss_y-GjJ7?t6KxMV!eE~3o4 z+45`2lNz%;$5K+6lr;M78fQTKj=uHpR-E9gXGyhp+-;_IR0jU#rb~a>#e8JQHDfa! zZ<~V(;mNwq{XR&ep3-!IIc^Vt}H@8REf!2BHk6UG>ABV_X zKwmgyOC*Nxn#PF}Pa0UNlp=Cdn6O;yG=);!^@w*6XKnq=dZ$)|nOo~{uteC7o5`9Y zJnHP`BwBn`eym?EaUTF}MP`&b2Heo;=CB${@#A_GRaNi+cH~H;k1g2!zvI0>Qnz5( zw_4mDUTeNt5}TJ~X+d~qO4N&6sPY8MU`wZu-+N7wGxi&f55^NcVvYf`S* zQ>Attg=M%QL`2J!I6$*4ceT#$v&~e&Cs7w%pUgSrh6l8D_ZpwND8S4}!jC8oo8q1j z)4wE5vNqHyu|K)oBl&z5i#3KKBvJm@9MI@2l%81R)KZAhJ2<)Z?jLA}@Hk#1*MCEV znnt4D>CpqLp8fdz%D+EJqzudmdyNy2veld=emv=)rfXOgxCj)Fk|uFten$ov)h&%(m%q;xq`0N`vK3l?Yj)qtg7n$?@ZtyL);p_Y2Zc_-G&aw9cT&w2R=xlKDzP&BWd( z_w5migo+aCHSS2=`gy{*B)g5xR?I)Pd~wswcSU6d-r`Oe%s85eE^j5a05{#3uGVY2 zrSSv%;zstw+R#wEpD!Y;nuV}ADCH#KBn_H2%abSHksloN&g_T6z!${jEMt8&M+9{d zAbeylq55Y7l)6O^-v-SX7e9KVqWW8zmF8-lapPDP3$NI1O6_;X4~vY9Jj#-i#Wr$t z!C$RzgKBbNb^~>}2W@bFVQkB8?jVGTP*R&$^`lXya>l3+aumEdtzSMqd1nlq7k;ya z$ULh0Fb2x5c?K7i_c-YF{5+-k_C%Du_#-NX8qN@B zDwhVB!DhktK(VfWv>>y5A^PZYhcvp)jMED2(AHF?4qH74-*B{nD8eH}0Lt!`?YsVy zoD*$va`#7uzr?3T-iE0|J!r+Jt6eZXrP)QenA>5LFgO_bLRS3#kpayC_JtHUxk8Gx zt+`~cab~GdWI~t;qoJEXRNwNg-FiC5EGny9*tEDY$kAVVt*zlSd%4NoHYnS6yb+uG z%;Yd@Z?C5y9V)7_dm$O|EL!(8I^Dv-Asuy}bgoGEz!FD{TRWWb!R`^#IW9Su+l^97lGb zD#~t!<|?Y$28AQ+{QdpwcYWXiI;%Q(*Vr9p5rRUuAN+sZ$%p(4#{pAN0%Pvt zOZ{MbkaE}zm*rd~LDD7z!ynTAr(^gy{n?`J&6$V`B@1F=L(mAc-9z2f5O#}6OcHIGGWbRLRoO?LQ}Xk#AqN~-9FFBiael6i8HdHJ{3Z5WcJ zUxAXaB`;TUX6R9PbVDnboB_LMt}%H3j(`0LD~H#M1H&AjAc3j)@xSn3V6IkR$b zLLwC>9jW~10EhnYb~i>d)_*Vzl7&4YZrmG{AMQ~ut%>6>kDx0>mC!8YK24|o{U4gq z;YB{rIsFrfrjd==x*t#=Flg=Q$b86bZ#T@+<8Y_+q;N7+0!Q>WOv}R&q|C(u_|Xvy zmtaTQ!mZn>i;X(U{oJ*`S?s(1EIJIE{}`|%(k@Ux^AiDnLK@{(-t(6RZk^yPGp~8w z6r7}3$Eg1C297JPnwd_!|o-*+~=B17He0r z*iVUQQ@-!6pK#xijGk^@!>U)it7zC2( z-IKFBpu9!E_$k9!hWwJ$A9YXcBj4Q(3Tq25vS5xDx5#$F#VHT1neZTVJdT+iYaZeCq*6{zYaoryD*yH~xe2 zDc{;B!ng9%a>brFX1$Hml~-uFTt6s{$3S{iz-97Mlb>(~FgNqUaY!9u=a+)S^f`D_$HB5qO0tt6b%55o<-=2mc#c#`QBY@#A$Uj9tU`jOAlFy`+ZvUPfT}> ze+9LB2|P-q14_ICaYp4ovddF#jzBZsMS0wHs`jB-l=;a-Xgr2)dV2Lwb6|@sETx>? z#^&pu-2*oa=j{E$tdLYU))i7#k_5MNt&t?v)v{0=?HIos-tsSjkT4UL^m0L z)Dht_NvbFs@y~TM6%4#0mW%NNv>QVU zVnYdWmU7g$VG}YL$CHi(hmnsD_H;wb_Q4hJFZSuj*e`x2mGe;?mHeoQIklAf*|6wO z(E{Z>=ifwpb&f=lSu$4Pb6HiuuaCOsC;L|^khYnq&zo7cPM;tC_1V=}liYmM@9&jn zWnIf8g)qOB9fv~*mt1#ud3FDA@W{u{3qvGQ5>b3C1FQ)ka-h*zJMYRkIp^PAlji%Pzee=dXi1Z1r*)e6a*X3V1knw_G}LgdPUefd3})dYzTk-OtNt}BJKd%CvKbPG z-GR+6KsiWYk$0Y*orSj012ThA1MnI}CZiOd@jLp5&yCX(X*8NICqyBHPZ?T+WVFF@8=0H4tezaGxq&7$Ja?N1GAu=bzb#~*TlNnng5WX`xFw5 z{L6u}AP^{EF-2Kb1Ov&GuF|A1D|T}On=@{l^YkBS07ZaVbqv7Rhvfv6b(ofci4U`| z30}y6s_X4r4+xL&+Gb9sGIEGj3qw>gQUM>jpUj59Fd-sFvG&T4`9z27&sgTZFa~WR z6YR?ZD-}36_J95l{PTazs$kvYw1qF<3$cuj0Q%m`h2jfmXlMt`0DUOQjRjdFL}_X1 zs6(H@dN1EPE&uj3gfoRzEK}bh1&`{V#ll6;Lm`*t)p*n}x;#mtfN&V`>#9&rj6-rO z9bFxGAPY28QI-^o6BzjyGXMtrnbDW~7F&v-@d`>uhY@N?*uh*}wpUTe3nHw>posLH z<{2IthbppaJ0xb*RWyj|`ia;%ZuMMo`z{WJ@l?b`%+y2Y+IT ze??fRGAP-VO|0^A>D0AS9|LiQM)ow`44kR8MJ#b-c(~Xs@H)wtWWIS7wfwBPOSYzD zV{S#zSY^roo2;yR(s!k~?=^U4I-%jOVZ8{t7lY7Qt22ag3 zl;}|a)^nB`ZbJ?T(BFZyxZAGp8t{U0y)F4wRl&CwAj>ri#Vj&msYC2Y0V-yid#a5P zViF?_x%D{vJFbm{xwyi73)S*BK6|6S*TqL<{NHfP-Uy9n8hhg9V|XYhn_Ya=g+X{X zdOF)9uJL?_PY<=6{I_WKO<$ZvQnNuLsW-dziINrMEjT5*5(8 zuw9SM-x2gx9rYb!)xVcKSqmWZW~2ZYgsRT<3-q6`ZTQWD*CaPCK{jch59Dx5&3s2~ zBWh8AD^(#=sq_Nv{?&2*8ShPr4Zp+GIqk3BRIJW%|IXmf=}VK(v+}ET)d6dVS`yvn(xCLad$dt-owY%e61L3R*gOV9P< zArI@-vFZI&?>#RqT9#}_z6%H!V!>Ycg~Jo%{^bpy&Y{r;-qtW z>=|~Ou;%H8cA;bkrD|FoX^XqdJfBPYJSo`ndYlhE@!gi~Qve5LW)AVWxy68q@G2>% z%1|~!*p5gXXZCh`Y~Nn+NP6rrsISyzMZ=#KxPkn+$dmOKw#Qa3iQE7$Gv1|_c*k6}wz7EJSiUf6>Ljn-J0uq)Y?X@KHi zP=24^Xc=S`-=+c7;|Du;`9w4#T^HY@1W(9r4}(6Vc7ib~0|obQlA)la$!8tqcM4Hi zFH8iJsOENkyGn!waFoA6K+lc^JT>%utDojr=gHG}Rnz!J=BvuYh}6L$ z##qmARc5iWEXDlup^DG4&NdslH|jIHb3 zWL*ky)h&+{v*)H{Si|nT+hwK6r_v0mk_`C zF^qey(}oDpkWNg3+)FC2PY!?qyyYk?=98-*{cvmG#rw=R3JSULMCXX_HJ4-A;#o?$ zDg7Q*tPP~EIy})ve?Y!3K!uSB1#9wF>(=sDS3Iql%91oly`lBPxL`_~l)KPALK!dq zs|3E+tESTzPuui4kB>vimz?)LZZg@%blhX)8UMC-wqjfP6l`eO0ft{2^RgB5cH7_j z5rON-zgLcbFF{)MH0aMZ^PP8qGZ+GElsw)Xz)xq(Hp!GzK*v$`c_4}*nUmR_>{<0i zz5)UTN1_Rlg@!}%S#BT9Oe_su6?q+*%wD42c#6l2dON5b;8XW|Md0pQ?ziwrArSbY zXywt8|NMp7d()m$%gt^@8oGCci27_5@0*}Y1uqZMI&-U+zlT6ppS5OJ*qm=v$$s++ z+DpK^aE2ckzh{{bW(VDtcbYn~@ZQy+`UBM1>fzk&+hfUTO0JgXWzItlN5O{l8nmnK z?0O1?EcAnDWTlR`ac)Nbg+*}FI5^zW;=6BPdh0Kumy>rg*DBX{;?p?~8BbewQn#$t z6y*XT<(?Bl?yeqsuZ)LG^+<8aNBFdac^vT|Vp_CJAB9SMW>qLWO__#lZViBxB8`(S z@5YU^hMN3)FGdgb1Rk_b;LttCHI(x`z?LspDUV#odr#IpC|fi2!M$mc{xj2!|2bcu z9mTl8h^li}Tc7AZ@IXybA-xiwFiKHTC(5U;FsXkB34TZ>LW4cOx%-`jWYb?S?m=}5 zapRYYVBAC-XfXI1-~VX88O+9!^->S@I-ZL$6%5Un`ecX*K?&)~dS3l`EE|!BwDt?P%USXqj=YxFb7}4&E$o*3B)BmYx40qJ909Hncn=}-W zhss_Q9@Ie(gyM`K z=)TZMgQDxs==uA19rp~)`}FB$gpD`W2#zuSD7+iU!Ye2+X@mtKrGm;L4>+@-aCk-s z+g0CfU70UKNP95{4$M;F1V%axA99^Ic$t?;xh)qP_X^BhgB)g1ALp}kI4#HE;H8~S z^?ycEHX%^|h&k&Al+vH%2ioQ2I1Yv391eJOCv$aZO!au=x4v{acu~q*F7(Mi52Lex zsE7vkD^!^bs$Y)gpweUfmRYYNB?!eU2agyLP5x?k2a(K#wYpkbf#K`}fuRazM_a`m z#r?-R1%I9YeJp*0{n!U+3_wjhj}@1yx@mXdqaapS&+w?uHocNJ=cCZvH6_PJ9(<9u zGCW}@!xxP*NI$%+golcL^q9cZ#dqEG#uFDMF`{>x=qCGStyq~ZPh9M3=kI5k1?ENT zqm$z3IZ0=z_=*RN^<;5h5Q z=;)XM0;2#fz0o{Cst@J;qwfBwJg|ZyUGk=*JJ}pKgFA7f1Fszl=~nfMb6IZ6FtHo|W$^x$g!1kV z8C|Z7(|KjB1eH5-LSGe0g7xYb*kJ9_4b|^<_ zG$Y{+MIZJ7n z)4$O&$)CMKF$X2J6$b&a?F1b^SAi>LDQzNz>J-OVqR~p<8+)o#y5V$ndop*Bq}psS z#_j+^9&tjF^R{Iv236J8UcH6fH4y@k&(9yLd#E=38`&lAi!GmeSH5V((@o%L=!+45 zeIWhGkZJ7j%ZeP&d~L!-{qkQvs%+(h?c-JXs0T&!M8?2YTms{iqSNoV?0$-Z`d^o9 z3Q4rFJd3k%RWI%!ZSpb4RlVyZ<}-#a)sn5sx6?}sEZJ|^u(Kur3NLqrTA=v5hhI2t z_nH9!u|g`%%PLmF!ZEl)bz6;5zU$HcjVDfGBwyIsplgR&ohOX9g6@ruMyH{inq;tP zqCsPzb6RS7)SfjCl_lg+tq+8)4$1mpf|xtB;Nta89NKkQSCPwOzGljH8j~Q8pnWFo z71Hb9C3>s4*BQNd$dKRWXZ>j4LRZ$Re;5%rWC$HUlJp#972PnMKepwK9SIzi3yKI zAV&Gu`2woa3;Ffe{UuijUu7K4u`SRP34jQsm&e>CLLTC*Ka3a+S{%JNx20TWKk=!l z-&~$^fdADE;bF$Nu-Lw>5yk41qbsOsPnZeI%!HN)MwgbiM_etnmIFZCC%+<2fS zM&mom(T4F?E|B#fUkQ=QzQD(o2bcp-rOUq6ouB*8OXWTcx`lj^3J zG_xHfY+vOFOOplCYM`#E{n~l+Y-F(EvG86FK|L=>Fs8$b+I^4+%Q1iQ;$$FI=mX*- z&|p7AR8zS=02ozafaAmPg#D|<1~B};ZDI??u{@yw{g%mGsf2V`y}1_8;7*UqSscg= zTdls$fj@|O`tZV;d1VaG?VY*uWU}8Sx5u>_pQ2Nf@amx0%BiXqA><31Oaq$+LbA8e`Fzm;dpWHuy_xe!SNgStv{Okkn%zC&56OxLU;-44% zvnnzACQIHjE)(N=)!h>}ZV-_BUvv%25%Z4fi$lJ_-O{rS?$X}fgA*2o5 zT%2Nmkh`&MObip2mm4JY#317(N@fRna}lKXbRp(0N<)OI2kdUjxo6v`DXdlMwlJxH zj`s2c%DhKIcMr9;9LjUCKHX`w@afrS$8z>JbPx_90g=W6s`&5uk}#tw5JmI?AnB}s zWT{xl|0~e5#o+SktNQiBt;Y#mW$a;%5S}b2DJ#2^s)sc=8ncGjlQ-uboUhMZi0Yqx zBV58}kmdGpm?4OC94?6OC4FdQQE9`U_5;M;M6^YH>3qWGc_AJ#5~ADLHZU}rVH^<4 zm(5b_kB5oY6RYbc87RFA@-7FD7KKWErH06i@rvnJb1?p)7tKuyLqo^n5lIIVDvAfo zmVZ@_rL`*vym8IbhsuW^McuBI+;$|mB6$y|b$0oCNZs=e!!Q4!wqX4JCy>rsn$`u; z{j?V-FR!n~xONVWXgHv>=I9o;?@db+hYv5hMJd0Mhq@pyr=Y$<3&>Zup~aySWT`D~ zin_a-^T;LI{i}3~m697i@wwb{zO^oj_lG0vK z$3bA0@9{qrVr!S8`RY2Z%Het3*Sz1&EtA~%GaTHX@oNJz{kQN}a4Yv8nmyt>{l=li zShb)1QPQ;xvH6%9LpdGM*gYTl#03Te)jGpUvFiF>6592%mlPa*e^g;PFSw+#%HA_; z_O6r~9vOSNioFVX-sH~~Br2S}0ijj6ZJ$qOERC+jc1E_hUiE9;E?Nu`^%+Rr5^iUt@}wbatU@oCwrkeQ(6m z1;k|32{z1Ydv{Gf5)Xrws+F~;KL|_Rf6R{Y!yKa}i+?V`bON?BC&ZC2CaK5J@!P>7 z5R;C`=ZSp!`yPG^sa6t8hXZ`RB2@doj4D?1nh7g#J4k(YNIUq;lgAWYj~a0FGeWm*bIeCq_QwEi}8WT~Vx4cHcx;y)T@ zUj4m6)*VhtUvqO1=nI*f*NA_T&*HfNbR}QJJ?JGwHrzob6h`tp$#mDWR`x?1y+d;! z=R?NUR5%x8xJE(3Py%>EHw>|O(a5273v}-NNE?pmM71Y7!PwN^cqTdM&~n2Qz@v$g z9Pm$VszAXdJkOxP?7$Aoz9GeB*}HGKMZ%u^=huk7~$&^m?Pxc86ByWE$H zvv|{tKe_=S?HO4dW+-lem3TJQ1#wU?g5bB#YC0PG4Tl$7sf1(?Xi{EFk|IP9a0&B+ zNiFPE@a{zQ?&M_lGKOsty&NW8$8c5tT|LC-^v?BpdN#>cS1e5>R2R!ueSbPKIyw%K z5_IIbM1wKV=|2X=Q5nFiz0ju&L{_bYgorbd8c1O;zbcUfi-f3sa%PHcpV?1|R^07l z)SnRWLI)_Gg%I}SeGb<~WyF)+3nQ8e5$KUip-A-x!&ntxruo^jkCQ^~`Jv3wni;T9DK^54A&GjK?XBQwM8B2wJ ziAHI)f#JgLQv)w$hOsjz{zE#g>s6_1grERf=8)EgQ&L%kjEPH)6zGh?X^A%P-m?Zj z`6rgDm^ThhE$!NLVZ*Ze+jhU?3*K&sd5`;PNz3IaX2De<^wd~oI61Aj=rTTBm^mlo zHaS7RAd(+GX|8!Pq8oSD!qk7Ss+Yj`b_oa@08`s~wyBMPOl?_zOl>loT1P?lH0~b^ zyEh?M`|;myWJYG|=eZs)D*L&778bTDUqV8{9oD*Us3Zydm-GB_VSevE6?b2^a>Wuq z3yP#i)n{{&wNe&>1}qRl-Gr1G&Zagc^swyRKY<7a zCq?;k#4E^T(;cK<0%vR)X`uF>H;sfht%BJ*Wb!ADjdgbr9pa!{ZWHHU2pLlUoBT?zw6H{>8Vp+>+0x?K^IVrsC%RMiey~ zT~ce5&vwLvMzI-Z;UY$coT1QSM9IH8yy))ca`IC9Uf45Ii21dvaWHZmNP0SKZGC_o zC=3&yw&moC(~=_P-A2dgnRBns?1`V4HS1Kg8JAO0h}>`V=pPGc&mS9=!tFmFFM^*Z zO~6!xzhUXIie`WR<H93=ODpbSR!%{0F5(hfb?e;=F(b(>?iy&`Rh3!1#d-cF*!tPGK6IWlI%_T-5Z*AeiI zrGac!4G=Gn9}u8j@WOk)-U>?KWMu+|x%NXC?pGU0f2K0ka8n@XbN;jQ^|xXTi?x*x zT~e2pA=O3E%FDhN z_)Gl4Baf(mHcCshQQkczJa+`W+rCHQ9B4Bu1QB+940kDnZSbEF0^$;8zgSAjPQJXi z?!@6!(3-^9g1#KIF(l3RZmt66?ox*T?4#|SgC;!noIBmBTs>oEFibBeo-)bIX*%@-s$_l_ z^7{@TG{(cs;F&i2!}AhW$9*AzU9%U)eCD_P92s%-%cI657SrjBMXT~nRe(X5D-;2O zc>ZlL&kZdF_y3`KrE>qJdRGe0dQrA-Qm^P^l&ea$^D0y`8c9M{#d>eJ$6JPOl4-Xi zww`!19Nggkc=C6_99*c&|G7}|bj@p}e%EYX1Q?^KD}*+2sif3bpzHZC0lKBZ3XeJ% zgzgR#OU}_sP@)Nn(=FFd{$Dd~)~S6XHZjtiTBdjJN(m72C5g$*S02hXId42G={2kq9=fH+iwg}leqMm)%Zl%*7b-7A3QgVy>l31$! z$cYR3#TLBkz$-HKT!}C=wefqDf20k+Rl7kG>l6OHytX3^p_dqu$coOe>g3|p7#SOD zZepmasJO#pOa~+VySbFfpywXY!$!M!Fr2;@37KF=HGh!KGD9(y z?1~(Gy|wJ~UK^*iniag1>lvrLYG@JS@qX{;urseO z$tg5~vedU1pL0C}b-W@M6y<`6DWG@4w(IEn6wmXx&o8BVT<%sB-E$!$$w(cq|FvII zT4*0($B8EP)+ZOhGvKO2m_`~oX!m;D;on!RIjH6fHAL(H>tUw#EFv+>M8)*!`I5rw z8wZE(!N~eelFb|YAdZ)iBGWzIp%erouYG%MB_#50ae>6eg1`Q0+rKKTvL&j_14lTE za>YxgrpDA?SkZia%#8!_)hi8?o>*Suuo+I~x~;LSq7)Yu!`uz0SyY_M6dQU~pb^-7 zN))FhDJ>rywy+^8CLGhI{dRdrdk|(7gJ!#V?0#yqG=fI}zO;iXul^Cpa3bW}Luk>? znE*wWt@!#g8Q#!r##JCtPi!CLMs{H%6v1+BJB*2x) zIP$xmaW>daz4H(k!*t*skmL0qi$4Sqj3B8Y5W?=J}1CXZ=I$Sq|_FJtWIlAw)Bp3V4Fu9YIh)LyWAO>gU zUd;r5#p>){w(l*jFc(lXbN{3#(UhbS2_d|t!uwNFj@H?}e~SImiIB!BBffYo0h4{c z-9;7^^z*M7tCXNH3cU7kyZK%J?xo)6%-L^?Di>OW@MnWfY36DE(tOPi&f;($8BG*h zFA^=6(Grleci4MUr&;0psI)l8#ip z{n)CeJ{ccI_WSMCC#q?O?nxKoG{4up1xkfEH1#fW&~Ib zIs#l}R&qHM*_O*wx`=YdUOK3D?W(FaDbZ0xj=vQ-J`kMJeR@3f6afFkTs}{t(yaIF zqqwNzZxRv&>Ff)mV7#O;KC|EK2d*u$0>Q|r4uULK`9P2@5)zKZ@ML{qXCvTb0#<|< z98cdc#{)9GQk}mK5<*+CS2GunYxZ=T8Yt%7Jr{Q)le{q*S`QL6_Jghb=!Cp}N}*`R zkbl&UC_%N(X;Hr2AD#NSBGZj+*xKYDCOpS=_O6VwAJz^mnDnP2uVDt4y-R?;Lo01k zHbx)|6URxvF1l%s&t|iB=ONk}`M*v%iDmE&Z;o&)Zmt(mm%>u5m~nd&?#`&bXTPL_ zsX8^)WLknRir2ndKwYG2($&TV0aN-X{#>5@=WR7lz6^ue@D^_#Ew?1zq8m82X^l=x zBH*?2&K3bT%g1_cJG`ewOg~8(nRhEZ-HEPInm)En@W}g+l~&5N2#QB_+c9?zt#D_} zGR^cs>N8U*W@>Y3#~;`FZq^(zi=F$-jdeC zi_O7+=ai!)TZc8uDZ8gvj=ArMJZ0+Gr6aOMQc}`;8=fj2|G5n9=YprcO6;#H zeA6gWC3MapeZ#fcd^Xj*Dlb;Dnhr8391)8* zdx|zNbfzGkFnz23p>|{eKzU^d?E}*t5u|dZ+kvaQ`qpG%?}08j8s}F&Op6Okj$~|f zI@l}jY>MN4XsbG9{JQc{NB?Sze6{sqW$o;&G}~y23#)M|5^YPs4)&q&Gf2%z0GTa= zLb-6rBfZrpQnNeugLVNiZKfaRgI!bA{%W zQDpl{7k}SFdkDc#q;5BHytsa**h!Nd2ty4>`zpn+f#}GJ}6yKRFN;|uq>rCk|k}p6H zTl6-~Ej0m<`E1puBf6DdT)g`-F6SlLF}h{E^ladC{ry$%xFvG<*nO3Hj)A9!?C2T89H_m${c#&DX+J{66wy8B;wjsLu$EGmSM zeSxhAMFMc|P55QIHrSKV^m+c`Kf_>iHYZ;_q`RA=r$L{Vb9XOno#h-$5j8Y@Wf`Zc zc!kZJ*IfLoCb#e$Z`BSFTreX1n1NBW<|iW-9C;UdRW0b8^hE^u-&lr9qrN^v7foOZ z-qOg<*BnNjp?S3I*~yuw5{<(3YBw9Tod^}h*ZeA`wHZ)NuTt%Ube z`Stx1;k_&P^`z@Z_MPgA(N}+vYRFN}mqXx%+wMEvEn{2)m+NnQv~Tz+Q4S;kZ#dgp zsL^RvM3qtK&X$lZs{h{5{NTuQ_eObK;Xv1l$)mDH_P{U+5e-ldSPoRouD~M!cEo;H zF3$6_-f%qe+tb7`j#4z=c(D`fOmcI&+E@0el;?uW&bOstCa=0rHgqL+EV3D)$FsU0&w3t@8p# zBOb~Rb3_j6q;cl{SqwVrf45AMEv>8KJNdO#H8QuXxIDCgs)}IK7)X4WX}(EIB>5%b zRo_yIA$mecdY{L&USSTiDlI+=S)Xcy?IX01h1>7=o4&KX#rToxi@uqh)_Q-;D8%ZJ z<{=N04hjs}{khfg5Tst=A$0Be_r~**QQu|UT;&uqrfBz135;(})LK=1?vpfi?8zK% zI$rzWrtET?&O=4ijnl59(%*Wo^Le@yYMfn6<1B}89TgYEY4>gByW!Wrn(Vfg9XTf8 z4f-k?8dnQC#6W&*Q)P;X^qtyhe1_^n;=>*OpsPpcHMs$Y#^!UbQ&uTT%; znnjE=ld4}29P?B{Zyl`?eQYg{ZSnEw^_B2>n}#e53|%4?ya~8?Q;n8McLmR%_A(bt zRUEfTZmVC*P6r8@0m`fH5X(-5O2>(OhzvV1oMdK#zOCzX^D}^W4Yd?#oIR^QU)z`i zjZKu^o@Jq)sA9-05GO-Kb6wdK`5-m9E7#5!*O_eJp2Fugng5C^1JMBPc_8T=9UFtZ zvBHYThGU`}r!AiHUfA@seYLL69|5GO8vC9OIUZ!>Pcj=sHLZvYMW~~zhYM*N zo~CFDlg&Yhrkp3uG}f@bl#sAhjLoA&6OZqxf$s3;wE$iL$HMN*f+I2)SN2nXu|=wT zFYw0vlI_${mr}dYJl`MW=mHtM?2Ai+UrSOUjTq!{q-$gb7_>*8A605iVwGRZ%?hCQ zDaO9P&0%K|&)6U_EfELR+(m|G6zMhP*+Gv0Q^&hU*_DcIvpvr-o~!P&X-+Mk1shvS zWTvH=yvpyUrM9f%la4WSJDaGNmE$G4X5+js$=4TRurs)1V3C&waM-DB!#^~m^n>;| zH@&Ei#Va>DRy-8XCn+6M`onXj`Le-3T^%?mpM6IlClpX}hsU-1#4Xjb7Nqwrx?0~M znMHKp%%h!DjFVZ^F*nOiAuwNe7)$0zef+Gpm7J$ynj|B3OS`%-y$fq-ZpC@U#oQvZ zsnpfYZ$(i@Avee?dR|~bq)fb}eWqrVeNk-p3%nIMR#^ezUVuE5_d-ISJJ3(aWiP$| z(!`rGUnJ!KBe`RN8O63Q;$e6B4wHLvj~6{;?NdU}25&AoKl(*QoROC+Ues8~?dCD* z)6aF?yL^TXaQ`?yTQp`4A%D_3Q_y>MBftE$=YY6 zmU;Lzn(3ID;zk&}IZE-I6`P*>UR`cV7U45IYCk`3<>;SXZtI7Cqaz|lU9|N(y7*lk@lMOeRxeZ08dQb(t3%#!Wl_8$h+XX`8Opyqs78u zAAXJQXl|BxN#v9~l&;%n*bECs;0veG%271IZrk6W{-+=xfJf5E&&Sibo)???t6_hx zW5fvT_%fn?wac;%;-nzXZk_{-2xOzZLMK=3#1?k>9-vF!ZC*Wns0TW;Sb}0Mu(5nR z;hUr^wvqZ*tEvR`G|1Wfx#_zlwK1b$EcUJqMbhJobOKP)Qi3sP;JcDk-?a~Lm+!jj zX1tQTdH0^@x>3$%Y(T)8+o*|gzQQXehP(Z|<}`hr(*;EPDXdLb8& zYT)y(>#Ykhr5|T(=mh4pItBsoqNF_E%Ng#JksOK9i5v42NdX3ly$#59@a$emhB!%9 zU!d#K%mg>n5<%X{%B{RU&xd)Km$_q#d%E5v-N)mM?4$GrJh!KM5{CMkhv-tDL|Fb%ifVYab^f<`wkdaCo4die` z%d+j`w^BXm2VT=R)yY!UnBs6lg)vs&_O^NxhVGKOh^YYUm;E<0@o=s6AcL^5UR=6@ z>RUo(u|{_NdGbY10w{;(t|B`bH3X&Sr4|spy^D~TQ09{pq(=xciS=K(M%BxnjzwIN z#O+`P8a+RV&0%bfz>01S@Xz&EY#SHMA(4FQL5z6p;&#P6_S$x^R(G{sf+5Oqf$oF=aYjY%LHEjr*AUHI2@r~s|I`_zt9|w}SrI3G;4$QuhG}qG#Kmb`lfDo)>bs$V zVbYcowyb31$qEmII2z=^MNUhku+&T1{}RR;-$~ynQAz_}E(@Zo9l#EPI4AtfvO^N% zpby`(5Gmw=@IDKYvFC6S?}Q`wjpU zB}gL*?8(+Z08qz)q4x=ebQLsbolTw&46)Y+kd|xmkD)9PcKHY`wKHQgd&7eq;FQo= zgbqQ2Ww$fvYiLWN!gD4?x;6TV7~1qe$%ks@~$ZIHa8h4!knoNb?KrqX(!_NIA8rI+{hx%5}pH7!zggY z`1_l`wc(Px%UyuuLby)52Or9Vf|l$ap5PE%Eb+;kJI2N`Xu@5$p4EJ)^=D+(!Y6>v zCIL&U2h3=@x*cX&*U@7H4i3>tug93au#Fcl z_iGxP&5HNiL&v7{Fz4wreEcTo#F*(MVz4f`LA4ygevP`KICH^*Z>DidECg8-`8hTp)EkLA_vzM4i{DIoQUii#2=t9Q^kj7Uru5-yNv@n4(f*HCH*&<*R?ix$*SLaq${rcTo z&LvkeLfP>CZx4me)0M?MJ&zg){De3Cq;uCBh@lOUV^6_QbGVo%^7uLNyT?LB9B&o%qlTNo2zgHYdjUBS^n9!5=ZoTjQi?Lp39gKF|v-R)Ocj1wVcsH2< zqQ{dc&At~*LAo@u2{u+NBQ%p9dm+Vlo5f_unB*C|1yRG4ji-|pKcABFPM%J(Xb8X7 zAiC~cPhh>1x3>6>grmFn5N~CfB_%noJ$y(>NTDF>#6BU+NB3(OTXMeGXJ3rH#Hr-WF){zdZo{`EruB6$Zu(|89a`WPdzC4oOw`u`#8y922XzyB+;vd7Kd zgf1b3?7g#HdxY#t$Ozfj-a9+ld#@y9Tzl^{Y_bW_@44vn{d~Vae-`&X@8|uT^PKZK zuk$+eu?fEe=*gQUtTQmhq5E9RXYU#k2~%dPDKH7z@rw|w96BCoI%zE}$68}@a!}KF z6Hchgz2&O7D7I8f!BT}kcy!F@= zN+r)(XRoJTr7==#?@;AwAn|8#h#Q(65^#KvyjI`-G<`rSPrrBzkx~cK>?ntiC%6fR z-p;^lg6)WN%JMQ^ZbaeHjR_zcmUZ_6^lKU~Y@}=`r3uzxc*u-*+t}k7WSKtpRY|6O zh~@JH8npCk{zC)r7G7Mf{i{?A<249-Lb3SG?2xy|dG^-rM^JI*uu4{z)XvJ~{$Kb~ zd4#)t8#Ue{X7HE6Q=3~G_?J&eq9$J|XxW#Pbqv5&FXZlAwT(Wa%nQj)TI61Ypj3>ZyGD084r#%`E9p4yrzC51rLXo$CqyRN4 zdo+#zmbdhVB1!|SG{`5cvd+rCS5h}WrHp<3CHQ2);a zm_hA?p-k`DDaY*v!~Ca8Fn3)IzQ0`g>&48*t7zD=5N0AqXwTjg#x}R{!-Td$X_G_>afMvQo$&O(@ezm7A??5jM3@eb>g>8xh@V zD>d=s;6e)ST(r}<)8}E7{H?r03mLtfJo`4PY5FTGg11ah`R;NMSVwfcui<5>fE8I9 zxly?kymGgYd)o5*4Mw*kszl)%?J)c)Z?WE0-~Aa6BeLM5zM`9c9f8qk8Zv|(ty}Ff zaDq^UHx~w6kOxsPr_xN93A5Mm+^p8Apok$0^+|@SbFzLzn^IVt&4fZzpS*?RIsUwn8SQataWBzKmsPXuHj*J>PGk6t~Vr5-lQINpFH6N$f}+ zS&Fd_8``!W)3lW(+^AXQ5l;iOI<&t&`K}zwNPuN?0}+y`^W#PZ4teh)$>n*8$EHYB z)sl?Dsw3^q;^fX6kI@(`GN=`(Uubbcm6Wu#A1+T5F3Z=mj_UnER3uJkC;Wf!b z1xJ(bRD!N{Sg!ClDDFKEqsvcI+d?acJTQWSu*NfTl4(5zt)w`t1TqUbJ$u@D z?P>%$M3B>|D+?jex&;Qd6!P5uT-i+%GodQwJ6sQAhscu#x>EA(%D&?sT1k*8E3%s1 zNB8}HjLt}kt;ho*sF1A->jl`f-GFG}nBS!nt14$_ zG|Dp!oM_@{$4HjBkkicb8@23bon`sDMYj*U{{&yFr2+5QS%*!H0)6z5TN18IYRS)J zSbzxMEhJ|NmvkYx#e?%p6h#VSEGd%f>xvV6)^wv*RBQd{4M!7Nc1QW@ z-rB6>5W0n5ck_s&c;w>-D%6U;F2S#BoA{r4Cn5`@JPY>(_^?f`worx5u~y{NO#tq(UGt#+tGzC1k2sni|5VT3i2$2R%&=|>23@XN2O=g?Fp{ghq! zR*4DK1K&jA)4f^X zPWv?`Zk`p_Td3s=wh)V@N)jKfjryT2s}>I-i8n26mYCQn?}U7-mos^N??eXH&BBBi zQV+|8&Re*P_x8H?$2B|rY!P$ZUT zp(S5U@1NyN?5&k(weyYKfvxVTyuzq1v?zkW8$S&yE|WZ-W&}X0Smc!`S1fAbV3c zj?nijC=uwvm*$o~!}(TP3q?44eO?7q%50_ztBnc%<$GlZO`I4fG+d-?tU>S|gnk3- zyl5x`>%4gA4pv*CkF!Jn7n?h>vx*xD2|vG0P=9n%KZcD z*fneo_n^FTy4nukGf(Ly1Kl^6fg*_-bN=6mFT4+X{g*0?Jf0UziAUi4+9e(3qCs5S zwN`3n9R3BM-I`TRn|Hto1lUDE2Yhg+8Mn<)TVf&Yh}Gn1G%Gh7W$ zJq$-+E0D<11q*MsgDMG=t_>%v2_o*yna^Chq!`wL#1f)bKO?rro8EnYITb6;c`$s- z{8g4|6K1l`p|i-#Mgu~OoE5ENN!ARs&LKuG>o1yT`z9%Hc8v_SxHFQ)sZ2ZkWF5ct zIl&ADe8S6hs`0WZ-mnEJZQ{4~AjIZ$)hj)(Q1;rWuik$R{a|BtS#1LDQgr$~l%0e0 zf&NsG;2=NsL@*`FvX;29JSQW5`XSb=xLD5*xQz_4uL7h3-fkH!)=@Z^IP(xoc@ga7 znv>0!c)m^rvbCY*az%~m5)Dx{J4p{ax~I_eAzHHZdo@&AK_Xg#xwKs$>KG`mRz+~Q z#{8>Z^}+I@)rt>9cI#En}Zf3bvS&X&TB`-;CK_(wR1QGm9)DTcoy0P)|hk! z3YT5o==n2R(s;$HER09F$_*YHpsJAw_}Ah`^RJD`1RUQd=zdG+2QY840rTiqb|?p1 zx0l)le$vYs`zAjy;vUb|G862|n@n4_fugO?X>ELaY55M#zIL-wc@C|4MM}ADD1V09n9e zZ{YE^Qxa&fWCm!H^MvyYwN~>ULO1Zb55EF}pS<{y1>jP~I#1}z^37N=v}Dof@KgSB zX+g%1AVpdA-IO%e?i;E7b*hovR-}Fqwr(@acfYdK-?K2EnRJ&_ooaYh8Co0iHx=XZ zG-(yY7}zVN@W_MAtPnTX-K*6&&l$b#e%&lPh!J0kA1wh)2-@w!B6@X~Wux0SZamTI zO;?+@PX(Wu!sP44HKWHwfE(QLgPt!HX6R5c2I8(C_m6*F9oKMH`5Sk1Re%_)^4=~G zrM-_EBw3YJS)o@lGBiYs?75=^sikkTXwB6#6a*92yD(nP-06S6}iZ4!f{}|N2;?K(*`)oV^mFF1)pFApQu2PlprQtf8fRY+YKsI^7o zMgpNr?rAVW+8lI}s_W?J)SeeQu~0}Y14bygLOoRJ;1(iZ-W-IO-3ZO!v!2k>xAoX5 zETt2m5{D`p`Z4xd2pJJ15MG*>8ZUaedQ}A*mBQWUA5Sd%>-E4Ov-brB@~I=nFWPSJ zfkprYA?idhGD>7+E1X(b@W(-h*QvZB`&|x$lonN#p&%PmTh)|vQ+5KoJLl6V>@{7w zuV|r1a$?1%PZG}yPh*ysmmRlnsoj$i;@IuH!!$exo$x~G7#VS^R|-qZ+-K*jV1k-e zOowWNkB1rFLEP`Ppp6 z!*&M(9a`RQ55jwZxS;a-{f&wmgt`J?ey#=JbH#$bG<_fi`XJ-YUa%dgPg+d3Dg=t? z)a$a-*T$h;6mU{i^;v{^7w9K_dMEJN^yAICgW*{o*sma_D}Lz4bc_=WdDKrbD~yW+I07_1RP7OReq?7_3BD|Te$OW ziks!6R}q~&i0F=s=D*=b&gL@EK%UO)xr?eEKK#xV+_@uy8&WfnXW^HY7_3M?#x~)F zV@4wcgYtQJ<&ev0$naJ#KPsdXeIV8F1MFzV-E6bP!NiaK+CN3b5}EYgej--b!*AYm zZ>aQkg$kgh|+TJqG=s6vTe`*oIMTriETD-z$60OY+Lc@$&lId1DEmo(p>}!~JFqi2MszSE+1J%LCDQrh=yU;P`J)X& zEqeBq4NlKj%JHa6`)A{OdkA`#ZSkK1jC9>a*I;bLo`g@*5%%na;)>R>c zYf-Au57RoUK>?NG=0;kMJ6OVv^uzg5Pr3S2dQpAy60}=6f|mN1H(PWQ^J8==PDA-A z&0L#fFoI?%YV}LDEd1OKiY1<~7eDv++al8;gEc#oGqyWUxI$L|I}rI($ZpXG z9ADxE+hn?~i-)O;GoVd7_VZ3M(#X1x3p`m+JkMfL}l>V-D=9A#=;H*Pmqet2nKnCt0aefr(^e~5xm?t$uk&Y3rb5% z5f%Wtzia3KCaG|Azhbx%&{yD8Fj|g{P06py(YzzEHOUL`+7nQRt1h|#N_e!O?Wp>l z=g~B`SqI#AQ^z<d+U{d!Y;G2LtP6@6C}}4@D^QV7SOlLMurRB_NmEkM zP*Pmx3XI8~(MX7kd>SdNtyrX5_~_ZdyJ7@V$eP<_6V`7g0J6tt5`~3t}dA@~?`Zdd*T0UfvC1>Q~j0g@4jzcYk!n-Fpeze(}6<)`RBpOkQlXaz3LbEisaxUp^U)|)~S60t&#k|E4xhX)sEZ+ ziZk%ptprd@QUYTRNX#ev&(3Mp-hlY(V3?(W={t^q zDrW2F6i4*s$4fFkyCgfH4xz_a4#8HcV#tKbxP~Lms#`!<5z-_WrlG0V z0qjUT(_3diCg}nAXzXYuPz?f$|Qm=fgVXbHzDF6OD?&Vfp9%ab5S zv4fAFt^BN}(lL<$*V7Z)tHehuwDRDS#OM)_I+8&)!Mgzhm^nD)>(yZZb_UfI<f9 z9LT~52(YF6bdUrn0hjpv#gtp7C(fp!eKtoMtvQ&I9r!P&pd+g|aGqc&jT5Wt;T0P8Ubtp*K`8VbU$55*N<$d_i6vwfc#^*h+aX56h) z;3rRPJESgnCCKx391>iMUI(dB=(B*&+l&{p0>+zBLRX!L#f0rx(xr_BK*J5(+B^Gf!5ikYp-el%k3XH9sBD zbE4AlIx^p6=zR;$c>z5E4vQOAny6RO1bIY=C}pe|BYl>f6ap>UEgsWXlZ8m?1BtKJ znmC(h-!R(s&i2Mz5P#ML@xGDkx7)ga9>(K34(<&cqiMh#RR<(jqaq@xmu=XQ3y~D0~GsxEE9t9O0+u3z(=m{nJA;B?djxy zhpFV?H&XFgJ2iA{RBz<_M0aQ8;AF380XgPXPc7q>(WPF~m$U{$TR1xjE6!KQpc)OH zNtVE4f|~sXO783mmF!)AaQYFx6PbO%==iOKdHwX^MtNbY#`nS#@?GD#;J{AaEc`^; zxPt^T(MZYwfbsJze}ePInX{M9h6(laQ+MyU+vFKGdyCgy8)Qw^W)42#A#b=*B7e|P zB3h&d}K{ET@;zqKqY3aMYZa_8gJS`_w_oe+crh4;pxPwC$!M)rIh`T~=Zx zYB?a|;kkiUbc>zEHb>Bo=hUzXZc^q@2#{XF6V^n-A=j+*WMsRITD&qLJ%7YLw(ctUeP^zR$0tn$Y|$v762ilzU0 zf;oC|CfoUCy?MtPPl)e(6xIzk@slQWUX<5UYFoefs~Z8QO*kP<))jfSqW)R_*{|qB zw?x#>m4lvTuajKnsVNk^BNf*l#tGL3GU#RmU2W89EqEekrKHSb(7_~Dhd}0#j-U$% zapytvryCFw=?V`~)9OzqEXC(V*zH4V0(a(H3-1kvPKL*{7~iew{xgw@U9c|)b&yL# z&{20~7~^2D^n*ZmS3K$gZ++r+z7KAZa^R!i2c&uJ`<5QmS2nOd3w$vsV`p?MIre}A zZegnunUUAeI~WG#4~5L1_0V91e5Dy8K+UNjbuY8Ua|xp*4VH3373Z;jQ2i_Yk!6iM zt!Z@UMO5E&Oa)v1!fD-Ka+*kUkx!o1!Qi9&9k58vJ@)?YOQwzz?%QQp=R((}qTf4# zQk0cNx3c6Zk^u;jt@&qCo=?C-(xG69zehsSBL54LCN(XON`}n~Z__CE6B4E_yrE9S zE%8MsA*n2*zef2>`+jOo0b_@^m&5pb-qc>rnJz;Y(>*@5a5^=^)!qiU% zm!CFBtp9R*idh7;-VL3XlgpVbDI2w@lV>4M6wH&HQ)xmwp8330HcJz1EkoYR=Al2a z;sWF4Pm-tm_nK`KbxR3lBdJTKX@U1ruR{Pmt5Cwou2*c27<)WL^baFhQR5!7KQr?n$p2r;%i$i3X_G(3C{wbKvkYgy2r1ATnQv^ z0?Y=zx8VpBY$hy*?mh#TF~^#Sy1is16ROJ4KHEyVlG~?z@2&9B*@qe2@+yz84L{;H zdKfihHxo8HG}}N!v7rae{zZ za|_bbMuP6om2YF@-T*r47J5Bt(%lZ6GVUnSGPZ9H5H0ZGPf@Xgy#`d3E$-wJchgU#9$-mEZ7BxJSTx z5Ad}^epopdSuX|MpX9b9^8nc8X7$y5!P#wiN7yFj%{mwg>WnG3AodF%l|(bbHjVEE z1k#c?upp!?DSZ7-sJ~J?Z*9#yb2|Jw$g+BLeO;ILPO!T5C2?^(uWJfymbZ5})Y+D^ z9WKA%{|Tb)I3N)rQB@7c!XXn~ZO|-ESE8;{1fbB-dn`1`p0NAZS@`|;ztSfil;!@S zWpqF%!pa^~Dt6z<00q8)`7$RAJ%KGgKD&EYN2Is!6L%KR4oF?2K}w{C`a03{_3x#c<+9qXUi*f=eA}zmXb)#Ij(*} z;wxQGVy1smF0lE%X1XKv!V zjewksv8`q#g7|^Z#_!_&TRxd{CmCIWN{`Pw+B-J-*>kGKR<2|4#;zNX=o3@1ax?4Z zTR200S>=`wvZ@Ev-xjmt1jfaA4poNwW( z6QF(F`pD4e?APnyj>L%aBugVj)#aMLgh$><>`%X*=(!j@)jgS=$gyx0eXb^pBehf5 z;uO{66um)>nnW_>=G#J=*YJYuuy7uKo3gCHA`m8C?g%MNcP z{8yMj$SSKP43Iu z_>1e8cNzk2dgPd=7CC8rq+Vql;C)EvF__c<7l_CTqGtPhzU{pPWS56yvVq%C`VvN_ z5n-4sg4*9S{1=1Ce45*y6D))>p^SLyE?}Gt_1a%vK`)>jMqL^53BO;nBn+)N1Suy1 zM$h*JA{Gj$=1#Bw7KwXm!@K=b&2@n*17BA}UjCpNhnF+phIZjWUntV|q8I?hfY?9# z8GoU>M(W0X(JM2luj`(DHAmJv8{g!9V)12Jk#r#u(Z>XI9hj53c!6zs+u^&bV)`KyKvcjmC}RVTL?}>l_5KAP2lGiijMFud zJ?;FIxNe}ETcJ5|Y!X(ijk8Xh?vt*Q%$UbOs_9E``&ED#iMuQvf52O8UoFfv(sv4^ zNh8$V+&dYjtAYjMr3R+eZEwhHS5Rg*yEtPcz6+%gQ&wt*40mx~XFAt=In1D?`nXkryvW>hIq^>a?#5?J|uW8X*)sg7Cj211fl328uUjOWp#SMMd*Ft3pvDkQRV^sgSNl>$7@}uA{q529z(S*A~xr+lM+r{MnIrO{Ff>sFi zo`&<9gK@`u0GmXBmiV$!q+S71ZqdN=a2zn8P+vC969!BD1fu&xCt#+P3&^uiNqIJp zPG+i5xb_S#y|*s^KkwZD#q`f@on+z*l?Jw29l(&%HU^2XDaYd6GXXb$=9BjWOJf%8 zyZ-+BeNHJt`*^GYPo7=SHI?wPZ6Drh8<>8j+y?h&ukAy0JwE;fSoTCOAG4kQ_wm>Q zaO2*==o18JG)uxZL8?SwdbtJn4R++sUkn6{xdG^>+w59#lrI2&y|~;x?%Wh5YAMdl7B&RJ>o-CBZN}eb=4cS#E3I!d zk1RTC9sIXN%phwvVE#1so8LP>t4XwB;z-Fz&_n%{#|lZ?yqDUP0YsG@r%Z$5kv>A= z)2%vwnF2+|YPUycG>25-=M?5*X+i%vedy(<$J-A8$x-?X0eaoEB?YpYcNywMQul~S|%?ii4?RLG$ao?ER2%kZ1^rXYj>6O-I9Oz{kWLcJLaN87Bcv^8s$`6&rnMQKayy@I=* zQZ3`~&~s0IXFU}u7AWT0cK-PH+cVv2SNXiPZ*o#1$=u3(^Dhjo^N-gS@mZdI*|4+4 zkrVhzQE#!{qFu0!a}}Yb;FutFRoo*3H<5!C>J7XtiT{AhBM}H|7$KE%aV)vsO4pzw zNiq^Ug>73(Dzf;9H(@6t&rB6C?=X>KDRPod5H`v2&zLUAVfG$RTo5Wc{o>VPaVe7K zGd6`8ZO}IDx8R8)1phYCc*Q958OZwSy!8ML6a%VVlR6Q{GL3?X8rcwA>5q@DqSW3j zM#J}cDrtr1mPp(ex9z@_l~oiVQmZ`>A?TnlB(drZPuBr;P<;A-u2x(qdPoF>DN2;M zO$&LB@)CTyAB@$GP5spTI+x0qos}+*_n&h=GwNED9l;0=cU$aC_VXUqQkUiy#=s3gd&Ti-UU-fJ#XbiyR5VW;yo=+-B0oKAj!Rb-E5N{C=BY_2oJxj z8^u7uaS4JOlxy6&Nk*|O1eMjikDnxle=EF`z`r|T%in|`0Rib|;SC)x^dX{pE{>v` z*2;`lzvZ|?E*ZM_NA`JTAs@%!O46UxS-a$uvv&@Op|il_Vb&JAQmbsCBSF zd-;wFPt-7iPsy9c*&LcY*FctmD_pL0A*ZzRQ~+v>IV48eQU;0+QaJ$Not%I~u?J2f z`X=B?DGm81gDvyD?dE+uUNLalPPhycCAK_=>6ZMq^1z9}2k&E1-B*Y4xmh1oXzHq~ zgGb@7Va)g#A@}X|vc4Va{!p{Vvi#Mi75wk0IRd6uKAe0G7x2+~2$qH>S)7SK13od} zrZgIqqPZG!Z+$-xt)HX^SqGS(k}%7}9f$w%=m_22_yK(m^!(?e(6Y%vf!-a(^RR-w zk+1@FrEVMd^@bxgHRYxc?E4uWGzpG?+{5TlvvU6L*|nJNTm}qweEJh7EV}D9WPOpj zys^xMPNc#PnS&*NzrY>$^-&ZN``G=Z;%{&5-?xtwNJOxTWa#{*3b!1Tk}#chm#M<$ z%-##n6*nX6#c6u_h_EtYm_COwb2jH_uT2~${^Z}ct=)idOa-6PAG~s$DF(JnuoQ(f z;J84#rVr{U#8>E7$9KbHxWtgP0A{xd1N5t6OCKbXu^Q#gWN{!J10zcjMalR0?+F`P zsdR@%WHXB;Q^#mmVW=`%d1?Lk5OpCOwN44zTXit{Eaj%*xF+&bayp_SFotr;2SXy9 zE1}!UI$AeS7NY;IQi_tW{LcyR4_>no<81Cv@a{@N{5;O`w4Nb%Jilwqk(CsrK6E&G zB%BVp4C73Mf{wH)WvP8)$?&Wvi6Wvj71-0Uc^R%rt}W>tleSng=E%D*BF=L4Nk)Ar zkGtTbs_kH=e)heLmrst_nqCDg$@Kc1ZPG9K2kySUSgEKK_O3m?#v++aiC$;35#!1- z0>8mXK7IrD)W-DZC;xG_Z~oGHDB_s@5@sDgzL)DcqjsQW$fi~?6tUgC0ta==t>p9E zhFv8#T|6f2P5+uzWJ*D)JZ7>Ohc`>cL1p1gzDzOJJ6S*x!eK;@U~dXL;GJHOJZYA_ z@+t~Q6p`%*9%|<{o*XA>f)$k6>QMl{3THx8IS4`9O?a4hEj(`OH*O`9e)2@8lH(3VD3$ZZVb6;LXl%pEhA@Z6E8N*fP7ajaz%( zsq)<^Na5g99V5I;_ogP|cn) zwAZR1<9U7*ELp*WfBmt!ck*iY+s^{R?GFuaN-Zz=WW7$89_hMuF1>%y8blcEKhW;9 zx+QQGA+Ry>3DFhOvz$mwgeADU&5^sl72}~(3)M1kDI$%A)4Ke0Yyc>M0)PYo19YW} zP}`7Zwg=6^4?wI_;r{&Ck_KclpF=ICwbw5i=1WyJOx<4(ex*V+7D+t~Cmu=Nelzz> zMxpN_iG5xg-AVGKm;{O*QJ?+SwwN3h{WKt<4iBhm z{Y(bE;GN@~`TctGu4x{O&T{`IQns55Xiew;E+i6!rz&dLg_H@Y#*AEt3|fOOkxk zZv$LRbThNp{5&YOt$xSK9HWp3g*iF%Iq>Q%LLz19LH%o{O2k{I{8v|o7hUJUkw-@N zDz7#qwVyfHm*8*d#Tl7}CtfaqHn)5JJu$>64PT4kItL*_<{-6Ulcpp=(NQm;bdWp^ z1XlaE@(wdh9DY+`iM~30qDGP0SY^Lix&L>oD^hv3nJF4XjYQnf-hA_hOo*-Z;k}h{0jlq$ zd~zsCZB|ORO2mUZ^?3JtH_8>$M(<0KZ#bXZ;WXcz)&(={)j3K~ZaT%B7ruJL6OaCfGVn*QQSSWbDGF+WYGTInq{zm0iCS!SMUm8o};=dh8vlu<8QqC0hVv%cYfca@CJJclG>8{dh7JNTiB z@$0m4i?kYT#G1e#pSN=^$C6YZ($4F0I#%ol1$(7GMBjb2^e^cDz#y2-Dsmb^w-fY3 zm$lL3UwwrT*g{C(75ML1Vg>z>gF^r9_L3fekPtOd1fxXcFS`Rh8S{Bv^1u> zgP;jscN!Y$!|Lt0a)pIxz(0@>^rA)YzPE5sKl-xzb}{+{w(@uu(O}~#YC{J8$1Pw{ z%kOOP>1BCle^@8%CiE(f{sRhsnvARL{ze)slagOFm@y!x#QXpT2p#szPdejT>l4Om zt{cb1nH}E8x?-IB6d@_-xCkA+r?0O*MB&Q~h+1?emy1Wv!I4rPveqw|_(0}Cw%IS) zS~Zk2a-Ig+|FrYSj=q8BDescCUah{D>_HYh1U09T&csJ%ZIw4(-m$SW8!@@(HO5_3 zBm5#Da0^4#B0J}tY%7P*?3&HpYnaibeh%vYO8|_G0*%Q!G7*#ocaQ3wp8?8YB~Y?c zG&D@Z2E0emAo&PMlToM~)J#(i3`*A^6~_x7dDwzn5CElN^UbM>@4K$%fbJ9nD7eU3h0Q=VXRq(! zAhMiqSbd(mzWlO@k?`bIoajM{0@XR5aNhdHn??iUsYtzvMHjf}cO}3MNY?@M05p0o zGR>8VrK`K1MbwkyZ4J;}>jA1e3`pJNg#=?SH_(Hlo9GQHV!W=rFBZj+y;?wcOM7_j z_c7=jzu!gqDs16+`)jLznQ!6kThbyKj|6&Y$a7PpcKtI6mRGpVG2=%@vK2OlB zJs%1LRbdbly*p;O+cK>q7W?WTSfar2gB??=Xq5B37;VyMwdQig8crCLe`rMotTb?I zD>pUJ5?LiWq4c?;eX)3hr8)yS{^goK0J|bZMIfTz!66K8+B&*DX^_mSk3Y!Z#-{p}A)Z`?daGp)ASo!Esdv3Lh4l;5Q;wD{e zb2HseLSCuQ!$!AZ?oDMNm^!}0a7gzGlT3-FL2^QU-D}?U?A&c@GVQNhG2%q$?>RQB zzf76pJH8@IW9MV?>m7X!mKh%j2n_(*sJ-w2WSMOqno;~u?m$_D>{B)eovWYz$7Fes zJ6DBA@sfmhIx&iOv_`cA#E6;W(s9P$-;|_vkn4uTM)A^R`Act_#fovVUBDz17o(W` z#gsmRr744XU3)=19;~F{8*neHkc9=E!j&^E8w~Yt6NV77D;K;JakH2MsFUOA8S%UB znArbLcL4Pa_rHLBx%9HT;K697RzzEv93vYhL#Ag@ROguL_Qp_M@8+|B;zEOm6;a>( zX@|dyNj0kk@tg`CS#zH~vWBQpPfJYEpq9BemMwdIJ84mA!Y+ADV&2*-@24H6e;u-* zqQDG)gQWOCL}Lf*jY!7PM=*9QW@19SpsegcpDvvq`KORCVMl~QPduJ8iJ5f23A4Kw zhq_GuNy3eq`yD=`&5OScxW3ZMPy1vs4McqC<8anL9=tFPtueliPAEt}txM?Zr!IK3 zOj8Ikz-!EVV&0*^a%3Y1_|L%rh>^g(J9jxYFN)Rr_2?PMl`mdS`2$9WxlrLR?+N_z zW20aT9_lUK#ND%5kF%e8BK&|V%ki)Z6xriOUGi(`?)R8gg?5@Hp5~svAIWNsGp&%9 zluW~>9BQ4lW91>io1X1>jswqIC|Yt$PMT}$nF>(Lky$%0)~%{UD^nGjnwsjq(9u-I*x|Qxp=!fZ z9zr@Z*{=l#3g`F-FOiPyF!Y}zOSFx`7!3DZT|<7u^;5a*D3sp;%%YTf0}frl0sekzJq}l)CQziap=|Vz{25{A(FR zKgxP^rdND^<*Lr?*x{VwIGWrKhSCiR327^S+(rDIy+=ONf-UsNa zJZ;qIdLmPQiTmZ3G(?DDkhVR~9ApRSwO+y_z(Ibcf9vZ1P9hG1JXibw>rwd1(X}4| z@mESfWzqQwW}UD0j^FQa0hc3X$^WAU%b;YS#uGoOmibAut-DvYq}3{N_frc0 z%WN=GkH8j~Gd*fTvI$1kJ1!?b>z%52YSD5y5!?D_=|STFK!CCs z%7lL}`jL0gvq4b3UPv;>_yn$L+o}kcjpUX_nnWQ?W96Ww`|n)z%RCfK&-hZcC>kVB zKQ34Poq8}gG)0xHKaq{3I>VLVe!r zY>T`ZjEQUFc@cn3gj$QgI)iMQuKX%R{&r0q9}Q;=S+A3(TP2V9!sHLp0(}cxM@G*C za-V;VNpY^JuJD*R(XFh+&)<{H8TlT0#6nSYZ%|&i{pnS?GIwa@77ST2T2QE=Ruecu z5#K#S0f&T%Jamo4yT7em>O1|*RAnKD$SK2tT!tHhHG{+oC+>}&p}8%N_zbx88U)Et zy5IKl(Rfy^2I%W@I?fFKI%1uDrGDXBd|C3#*E}@<0L%l6 zFW{uiEKhDS1R*c0m@SE5`V&4f3FPFL})9JD9e=ojQ zFeB|H+YH$VftKYaa4MSRKVWx*CZdaxQW@SgobI~j#Lol?2kGG`HdEL|kfZRyJBjv# zH?*B><^bF!&Lhp6$s0_ ziS2A4MM?~o$pLvFviffsBT6``b^##!sV2-{@1Khrdi-#bG*G#hEkpJ&yPSHW%cWfS z)Bg99Sy_s{xzPKw*So&g_3tEqxzC?XzVx!GIM`%qr`1l>v^A zmb8hRSM5(P*s`z{hgO#(JNu|A6}Uo3k(^|!V9Ov6&4#I`-93_YnlqpCHm~GlSpBwx zXwz(--JpDnxA!jWvi7IORrC54b9Rbf;1Uv>3m^WTT~Q8us`iphEx1D(^bL`|j5gsf zBvS_d4s^RhG7!T#TXof^vHMX=Jed`(2`O2|>K{&kr!*98`6dXy>?W!G3oly}YwOJ6 zt^e<-IzS|jv+pKsRyW-N+SxuR`I&a#2wM#5U`$mmc4<0_kr1HfPI1IBvZg7Nl9+SQ z3EHwnVFQlvAS%m`7QOd~QH5bZ4o%OT90j0c?S@^8`F@&S9RE#!#c z?*+E@*yNd@ohVg;^edODHjmeXL^uJR1d$=Pthq-%S zc^&v3=prUqiX#ZfRJTnveppJr?x`qCuCywoH2Huym0g!lyU-cycCrqJ5xd=;;7RMm ztV53ej}j1wj8un{m^H)0imU5ZArz!q>kyEG5#%oUrXQhgyj_gB%FcQe8dS0_+Z-{B zc0VWfeW}vX<}` z2qavVZLjGOPDwt}Qic*we;t9SJy{jhkSPK=zFrIx7HedtD_U7b{!cwX<^ae$JpA+I zGLF*}?E6HY&0(r3fa)+LN7a%KxK4GjnZyUff&sqKqy(7~?JlVK+{0=|VMl716;}!l z1o5~ai5=TobzGGX7)BeG6TV)IVvS0ciImL$>B|xHWw^RXrYA} z!}0+;d*F%vM{1(b>Q46Wk@}3JJBsuZ^c>~_0wp7hyH0xd8fc>PJHq{W*sY_PtqBrG zStD|jbz$hojRv;*6X#o)83;NQ&tHIfiiG18$#MFd$w5YU0xQ)UptyWowGtEH-tn$F z*m+n2uvvLjW%1ZhgF&$XE$NL>BuA*n71hU&xzQvc6G_nt{X=IR{w24+TyDZ7tUdi^T=_IFz*=sjCHSXC)J3m@jXlix?wA59@v<6g98MA7L>Z zxgk{%IDeTuyQ+h&jBLHGqv6QYID6cXHt^FC!(aMGuz9kF%((Lh zN)Ss`G!Au&5?SSchR2|xGoQ_-ic_KkDkT(!=v-_i0(p)Q9^PCw^yGs%_wF7MoP{is zAK@u4+io>$&2BJVx@(~E06%3x72)j75U?>+wDk}}jcW6w#aLc>97E+x3-HaHZ-B#c zQsR?q@%$QSuq9)SeQ%h^@F?|*RdLdwHF%V2oLQ2|NeE3O5{?J9o!b&nj8 zI%_*f`)b{b&wc+6Tx-v*=*y(y<;g=uz7tantZ93`m!SWkA*Vkc3Sk$OM0@hF?LLt& ztxBp^RheVYL63!KlmM|Dj0X(AHNJ;JK7))3Nw}mW%*Ib(9EnQw&>$0B?oMC}Aj@{{ zCVu#^`@mTfW~u&UK%ckO=<-47kq^p``uN4@^14-$L(NfskftE2_zS=$4O4-mZLda; zkDiN7Q*Z|XT-Ex;;~Mi)Pbm=|*E$77mh6239t6{krw({+ly-yunGq-a8CzPXZbe7e z58_DyQ1obtopy)1yNs^!SmO8d<|ixwJMLTzA3NEA#Y6I~bZawydByYrHIgM|@H)Kb zq5T6xk=deyeQm|E#LGi|$_&;B#E<;$$y(ZDTBW`gT(uK1__{l)B*0a5V6TQXlL zR$twdMWlWuA4*pS&$c{-Y*`$1Ms1OJUN&-AbG<1wpgcxjNPZQiP;ueqEYW#j2&bwZ z1@>jV@p}-k@ZYONN3K>2-@NV8L%CV;FQld`|LCWDaR;cvtg_Lhrxm30q)jVO2fgly`F1Ys`1rRMB$YZLx1pFg?ulTj^$B||v4G$eR zi}p8#cbO7-cd(*(I#4Z@#f*Qp&Fua8-_<}!DBKjzzv&VzMgM)@t#jot&f^i%-t$9% zHt zdLVD>F@)YfKrq+C`0;?A8pKNq8ptIgY0{s7RurJ<0mly9@@3#NM)XHH2A+TCT8}CE zH2Z(_n6Ce>-)4M42XK6GX0K3VSUU0~Sz};ys_CachTfS!_{i5@|dS^96vY3~VM0pEC>~e9a)nY8#r7rx0 z^w4iwtWEM9#3<{%{d(|(*VjAl^z5iV6D!)OOrLG_PDt^pPV|p=k)BaCwwseD;XgoS zN2og9;2*k%H!HQykC71O7@6Mqxos5u6#Ku>?c4+$A5ZrAhG_IXd#Y+GqG8 zBW?*+s%b@3N<#s9hTH%B1|o_zkYZO(@6P`sxqMoOt!zt`5mw&Uwt%Z|L5wt_9#JB! z!?o6QsEy2aB5rw`FiF8!!NPgZW%5ghRZcjfE-V&2DzmePMBo$(JS+^r4?WY0e;zFAP{s z^xXP++u2!=`1;P(WRj`eRtQC;PTD>^Mod*Ib1cuU1r+16ao0hb{Z|eZcuN_3w9XY- z9LwheIR!n0jGNJV4IJwX$hE^{HLM1$G}h^ePO^2B&^?=Gc()e%Q`Oj?1(q?%h9$Y? zAm0>oXu>(1gDF@T3$@tWmmVg`AYT+`&jKziG`VyLrd|@~*;I3q9nscFwODw%r*T}S z^ObMOu>bBCri`)<7}u=uWyzmh*xG+GAMz)g(^CE_vR@Wsf?B$bxAp8n zn%IJ0Rcu?rLP$}m+5?1WuEo3@x8En{zS5J93fn4b(IFdvMgq#}BbVdZ$y$n5kNT_M zfK~DM6PXNiKK0$M$|etHCV6HiinZF7rtphfK94C6E?uFwWzL@r&(;p*p;4~>C7C^V z2uh?DKVfqC>Dbc945>niq}`uCn9O8iTD*J%>~gsimsO{P0CQieF`Xnfw< z-#TL3-`(>RI35?-Ja*VJ+pP~38-pvW#(?o61PE1v(PZbw_qLDoPPcu18_Mc_W;j8d zcQ+^`E`x5FRjOba1bdBbRiLj_cy4O+Vib}MB%uy*g1~n7G(UhXmu;0Az8{qVLB^>S z@5-Xr(%saL!VQMy=c!S*#tgmf#pNN4q3pwh*JX!KPJDhAyFY#Su4D>uKC&2!UwfZJ z2`+VE5{ofj$@a)E1Lyw-wO@8b+GA)^U9%wBw=2ti`YObEN1dk;29jBLqlDNeZy_V_ zIsugxsR$(OnJ20U5B`YqZGOGp1)d zP`UXQ3$_9Wm)F=&dER~tir#`G zuKR==%}-dB%piah(Mxv&!~7~T5X!D~LGs8iqin^PUcP*Z&}%)xf_TRVF|*kOsJaux zsF|)g6%vdd`{3c%1<>cS{zGsn?F7q@(w3s>1BhvvgMnPXZ5AXHD$ms7(lQl?F^=_1 zo^nC9P{uTpQdkG_e->9>OJ@R;$ZYt9ex>fx<5GKlr`CfILP<#jHd2cBT!7jEy z8A-j3{Z`cQ_xLccoRh-yO=ZUPMZqw8OYPQ;A0OB5U#KtA;?FnveM@F)hyL{hE!pFC z9ak5Qi=SC7BmA%B30@H$YySsVO4|WLkkWA7vklKsNg|JGh|I?#-BcMx8p7b z7AtSv9GT~G$#XN{OAbrLQ&DzT`Eg*CBUEkAm6x?BN5l|X$$^kgRO1eWPWBqhkPxK@ zzoZ1}k06jWc?wYRjC6B+>|iIDA6Uf$1AMpZow%9A><(n^oF*WuXv|NeA*`@# zYL>BH97P84)Khl|4blH8TX(cza*6z3F(`U&-T!A0QZSvR`aXdq+$7@5{7BQm#F|!# zv&goOJhv9)4kKH~27zUXbX=_RS9L$B>mZv#^jx_yXs<^D(0B$o$ra}i zzf(dCjRGVQ%qvHgLJbDmM<5Iv@&^X?f`IK~9&bz$<{>B;&j$~bsv5EP)o3k!0d zS?MNW(fKl;?cVgxft)-A5w}A+$jiC)*Y~A2kPNC7lKLPRl!)(p#WN*y(q1rogE$EY zfK#Pe1uu<{MZ9%rz{Mc#iun}%uF@B;I1tmIXYXK7Fzd?{K@1v}h$P~|Of+07uG1i= zSn1mqcLb!9&Jo-qmimiFc@I~Jlikr* zM5(hoW148uGg!Ivz#CZNLbiCUYV1ZUeb_X1@zo6EljI0*pIWY!!6W`0=Hg!PiTv9E zg;R#@KP~4@!K3h{bc7w49hRZvCkf=w;ZLyRqJ5i{Nc`nxoHs?-LTGj^{kR~W{EgLM z{+;dzG@mJI_F-1v31XM>Kr*boiWp=!XxsESW@o^{GP&!m;5vHYs!$?+`vVxXcX~v> z4|2X{+#Fz5WFP_lLlnRFeKx^6b&fofR@|#<`V?kOcO%to@NlWgmB2I_JAj6U=7zF^ zon2B+Yqr~_RKHDpuy`710>0mHB@qtBM05NkY>UR%@pQ<;K3y|4qygY z{L~axZs!%&dF6|GpWR{={KuR~yu9-GBL`CN?mJ-xFu(Rl4SZ*ia`n=dPlhEK3z6PX z-wRKPFYT;cGp~y#?{%&7FqfVO+98|Yy(9U)^7_rk(*>u=y%sCK-5i+*_dTPdk7GOtVHvi3?woLHB2V6po+z&iP?Cmo9 zV^19#uOb7))w+f3$@h4=<{j)AlKy_5c93jlLPI7cYY5OA9uLW72yy`3oDvV@`5aye zX2X@rJ>OHG_o3_tB)q)Beyx@eOm$}>t?)29W?E{UUdR7<$Ge)&?1a%{6Vf`Za<7u} zOhe`?;o6(f_17ak7qP<{VT+vaPv@?<9tf#6b&+Qc}Rn(95Q|1Hn0 zBFkcr;=%DLXZ8pKeL0nYd9X>9xL8xVN|^jlB%A4u>=OOhxoxr58b>kGvhLc*LpV*! z_tG;e+;Q3|=Iy}sa96*PL|JZ~n|9rR=_#S39|vK^m#2gS@0YKQ>U;3A{0X<%rQC6Z z*u?~}N6D!)Zo%js62$y~8#F6!)fn!)wh#tb=I0NV&-8#WB&SixvNiEii?Fo{YTwap z?W|pHvSGw6crOXMr6|36HiHc)XkiT_iXtWSLgFY)CPHH>Jnv7WlzAEjD2iDh=3EM* z4w~}_qAT{sFAy()2~Mu=)hn5fL56dtsB2Qfr1BkY408jxH+EVXF75h5 z<{yeN`2`%eJQKv7=MB?g^UWghkwUZl-Wr+}iz)D-=Nmbr5@BHqu5n&fg<9jmGG~K= zn~p>vwVBFy546gLO}r;*J>!{ryD4}ll#g>+f?Pe;aEX}GQi&!MJm}_aiu^&5Z%cy5 za^V+v&fN6nsjmfbkWH=~G71L6bM3{+lhSTqU8oes3Mft3pJO{4))oE z{dnmR#%PgAFg`Afm5FHX1H^-8T)(5EnOJd4==;vIMlCbPk@0<(y1TKT$7!P@x*sM= z?@Zre;bXo*;2&-u_2IFEqA64Vb4f}HOe%-(5qDJSLM!@WjZ<%m(Q9|c3XNtv`MZ;< zyZxck_ljsr*NS%f501;N@uBJhJ9Z)7p))3iE>ZNvBtWATEcdo zA!u1;O`cZ0N_SwF-cWOw=>q=5196kxi%Pw*O3BuuL9tNXIDGQ7*u5w6%{TDp_9EUc z6kX=NDxsC1sBISySDH?b%NrSxGMMl{H0w?s5Ur|xcENIRzCSaX zbYY46-WAk$Y{|m&VlrQ83b7ambF*@bQkU_2SF3;Tg7r@7qluBbZNC@;jIlf35m=as zVzVg3uA+KrcZkwap+Tle@7C-FED5M20)E6`@3EKkB$1|aZn-{{PIT#5#lWH?Eowj@PWE7gANgz?Rea< zvdHR%ue`X0a~rocR6-z+51&b~*wFvjwb!dlxYF1mU0iCg=Z5%uj{8Lcx-~72@O!yx zl?dm|gUYg$Ro1;R7wGxAOxc!tKMyV}LEP@Z(8sl!FFdxnuagGC@e3rG-{7G$B@w3# zLyB<0`ftcJFkoPzIZvh6A@yOQ`8@6HR=_u#gT)XFsS96<&(>G6lUXD4@sl7BuH&{E zqi&$Ec*l5~-&TB7p?Q3TY*Ma%yr^eD-FTP6tp>vOLs9)aP2cAsJLaqgx!5QuC1=$NWD3)t9S$h_jTkQs}(|x&F zepT?zW#6i|8b2391ugq}-Zt0`3-SvV4=j{q7R4fD~*qHPu?-5FK3KkIQ+AgUas528- zW#`a03mhhxpoQ49&d5hZ;G+bL*b3>>i4nY6>q*lzb9_D_bGM_(7Za>ch5qU{{fp1p zOQ#Rh#*6g&HB@7@k;Q&YWH}_aP5Sg8NA*g^M(PrL!qz?YP+$0jo*?=9GjR#({ii9{ zLG|k}8PY)M$RFFR>9v86BsSa`7XECE31*U$i5&L=IESqQ@1Ls}AUOo{%48}*i(C9m zm=X=E0y)apo7rOvU7!)M@ub1vgp*6xK6}Xp4Na@*?7+|8xY)UQ@2$I%u8InnNNl_#`J>>-GF<%7!+vpTM1N7?oVdsxq=Pw=)ZWF% zJ^ui!1&7{4%3J=s1OxP_kSoWm<36l%%{9#(@`G#!NYdRuhWv>Bxx>xP4aNKC%)>`{ zmXy2e;F-n!Mq{K+7^i;D>9t^Isvyf z6T>eGrfX0%84y83Uk4i{aCYpl{Xj)*%g9LwQ%B!DkV&rG3hA(tCOO|wbw_mR^4B}B z;_(C_?u3qwt6Z^yLhNw(RfQ7CrZ6czL2L!pUT?@Zi*m?+yQUw@AuL z`|hFEFJ^- z{ld9*-|Z%uf+L$&G_7nB&2}8guMwmy_^x*V=+~I+@bQflc`#%5UIkP?cuLA@=O`mS zeXy_XY8I^p`)-${mXCq)Rak@3lkAi1F><3JGxz1HzLs_`HZv6lsjoVk#6`Jom&&01 z1UKEW9xekVI(W_$VLiO$_xo4YGhH( zlRjaZy~*jD;T_@$A|qTG(sx~@YRJP1c^BYDlV*(h|Nc=fP%grFOpRkz>xOc3pRm6R z9>?t_5;`K#)WHUJ2hwUJLN|N`h^lqf?WT>%>szR#%Un2;vgA&ip zG&-{wlbDwqV@#u!NT*Lh@8eTmXQDjjU`tE*7eMYD% zPdqsDfGA0r`9cp@r=SAcvqn=`dz-*ZwjDF%X?da8HUkrczrQ+=-OPYBUdc}9gUK6L zT*JaR)Mtr&BWro<%cX2bzW|`788{@ExZA+pUa;%}na<0{U}(!Z8bPJw*}8~Fc@x9h znQ{$-g(aF=GvjACARnX{>UW;1fIv&w+`-YEXMFBfFhHp)e3YG4QG2QqhI8$xI#!1h$EVwv6 z1G;`b7iB$jzRgE8tysR*Md--O+ms(zDY>lq10@rc>k6R4iWR})pP4K>*CNUU%--+4 z76~J@^EWPYsT)z?9ekvYd5klm)yuC-tCSnwxI3g^L4jdV<7g1{QXQ`*#oHmWD+;WC zAMbfe7yQuSDq?w+C->sH%G7Yfqh+2>|IXQ3AC5zMUFBL=+uUM| zb^_B*Hc@X)B>q+UxUGP(;txY^wAb4sv|V<-hM9YbE}QXO$2Z|^fZ|rvz~=Pi*c@OM zQ6F;$3?0g$CmlzjB@o&oMky!aXP8N!V_|Z0_7Mam?0%B*WWvy)zjA6Qn{?p$z5h~v ztG}UR!ZrUBp9T-vbgeuLopf+5n4e#_=&YKEnm^oEGIMig1SW`Nd6`62Q`wCN0jo7X zD~D#<2IEUy(90fR^A?M3d=2wB*Y|rMPxk%M!!L**qZyJv1^ahin~%gytmG*KUgs22a6=Y28e6ytM}Vf5F0068 zR=}F2Oxi$Qr})cyB2{PjfTl$xJYjZ0WIpL0?8)%EmBIRLW)!xx zD+tovx8;%M_LsKMkZ7gbDtk*V2^~)03h0J9nof3jd*2?w4t*K&Isnd|gTJPL@k}_} z5agB5HE_A{#TNiVzgWX+H)@=Xy`tA)HaP<^N=w^teBb3De`SP2L|cqUnZ7HI*e6wq z_rcc73}IbsRot0RN9Nbu-k%4w6-g6De5&Wclx0Y<&~9kF9Ri;W$Bg`a>y}GjJOi-Y zxEw(lQW1SSyyFcjFpy~!*3eo5XP!>Ov8DJ5Cy-clLvzlKSXp^A7&hc>E<^Pl4-<=@ z)x?0LyVT~OBZG`uq80I-k$copFy^WROZhIat4Z7uL4+hPFFr+prTy9&zxNXDfQWF6 zMpFS|hP*To>|W#35+L!SaefIfyl|yXtDAkyDbQyGz^EC#?T9~10Lr}UBI1=dKVg|O z+KlHV@f=FY<7be9qtGW8a2{O(>wdP!EMDD4E5STq)k*MsgjOU9U!B6Ivkk%x3h?M7 zmON4m)@ul5M7rV~PvNgF_o(=c1AO4p5ff6|oE5|&v=7+xL@UPo@RUfW-W;$&-0DGR zAsft7D+mtWsVu@pjCcpaQL6 z$N;k+aTUCMp8=YGg|BfC5w7REHU@_Yu+{)2ZU0~1ic zpxQb^q{xCaJ8<9VopR~PYE495$!3oe+l~4O* zYKq77_t{b>-hl}wCTlWv^TE3RDd%@bomjEWj?8iC61uLw__`1@omYjH?EUWn|C!6M zeU%``oEMz;z0UbHSczLj(R+aL>obyRpDh&;h~N{&D({KDjP(j=iDED!%j#PI6nX%X zBtBzf+}eQdVb5zuPfu?SiO=#kWw_@HPg`ZL@E5BMe8eG~`~Jsm4O~%Xv@p}yyM3={ zAu^5n^5I_7Dfj4OV1}H%O7VG{jw(SP;Ggj6lRP1N8MwPR4c@$Dji=8B0Oy-Hl6WaT z?An-X(>lDfr1c$G^LDuGkd~z5&0z8so*mSRg!xLK`L2W)EQTsOTUd(Ym2bnsuqQwb zSDnOtp=qYP9B<;bM+`jomDnNi^JcqoUE~5T;7yP2Yba(Z!RI&u*nWl>+rCs0aS$)y zv?~`Gm+=K6(Hfpd*@HLl=pk5q%#nW%-nOgCmMSshqXdVO$y+n+C2GGS_dH7By0aeI zJbXB|hj$Qb4}H{E2?l}g`0ru;Y7*sjPY|5&>_tvoXpGy+$QY74gxK8%N=ZF+F`fIf zjXj2|2DjbN30x&Rkg+JCPu>+WYVQIuB6IT&GQ}Ne#H|95dNHFy0z;(3@Eyz}ysBn8 zDy4zC|JY9+eD%i}F@lJ2H=fDVknNI|1opHNyJ4oLN-aD z&?>msR0i@JRt6)t33F;RS)*45Oi=_mQQ*j`SxV~tZ<^0dSzg9%IT>v7u2zx?0ZfUG z6qyuaFSNp4RvA26jGG;VX5raP_5u4w{1Ag7A2}KyIw$Sn*w*wM4TNb0*wS zLv8WEW2qWKjE4be7+wq})Y+%tOnHYV${0(rl|)XKicUTS6Lm|WnR7;&-T9fg+5YzB zKjzq;W4e}E_2WihGrN5P+i$lgonXb2mkwHaN8l&aX?QoCdgLi=#Mi}*I(%f_xS%{{ z9z=1^6+L~pJi29i1NX!1aj3=G63Jpcz#>&5H>NpZQu#K87(s(X8GKterlpOY)6G*l z_dS0%2D#7pYR~)_4g1eF+>zbsBI{UmWAS&eT?urR;#Bnlg28;mDy5|Hii8`;oZKr% zLX<`zx2KF8MR1KtCm0Q1puFOajVcpL3esDSy|>>Hi_FEFZFKeAk%^>x7KiH&-TI<< zWdne+xh@;fW%VD{H6f6!DzEwqz9J>*#uvB{A&=l_z9jyi-K%&hfXlw@`3(of@G2YX zR{OsAR*&Ef?(nU!@xd>KrtF+Ig)ar=0ABl)_bJj~I9y;;9>~2QkQOfjqRM8&HB5Pd z4~O7S@7|YYA2!sSz@lI??6Ey33P&}Vr4FM@YbUuE(O)r(NblW#!>@3JAh+CS1QcYI z-*g{QS1`|vMbvtc0}-Nh7-&`<$B-b>0aNT^DsJ3}Z($NzfE5>d;*#W5kx*%~vm8PX z^khO3m)Z%?Y)J!63Nx5+6I#co4NRJRpYZfnshq9rViYwj}(^!6w>jL@5av3TPz0u0TLS(zf* z={BpexILktKR)NL3X6M0EQI(>%Od*of3{|u{pgw3=$eQ5d3ijBd|JIHIfPY4kuYvKC_m>l*bepU4nxOgzZ>``QlfjxQ;ZphZ`)n2rFG*SC=c;^`#hmHPCS0oTXn*0r+S-33WTQaBG1Ei!rfF#Q zV^m?%z>RLZ;<&K=IzFY#37SdSo+J9I68q1D_xHRS1Rl+PFbm$#=JR&kd3K(-d<_of z#Y!K(rvL~Wde$7w-r&mno?qP^|6 zqW1NmNZX-j^(qVzklJQ!TahkOe>KqYbwkJ;RpvB9rPGhuRE?Kz?tgx_eG!_H|S-{TIVE@UPcg|3%49TEGqVlfgil+v<`L zj6*-rER@lrkRNO-POOvp;R=LrT{^{!f&F^MA)TQ9bJM{g zY`iw(<6H;ejt~KEp{~`hSap)ub_dQEsWEIjhz{oxRZ+QNn>SEi?JH8l4_Ez{J3_xA zzEUn#lH0cUp)wg?HP}0_WG=X^UI?;h|8WFh8fqiFOnBQ|=E5JJ`yiBe0vBDt9gnkm z?3n5wnmtMH{q7t%$VNK#fuB;+uYP)nX^V*EC_O$f+|YoskR*^Ji7x-PXhu&h0B>4U zK_*M+>}HuJr*|>qN*s@JAl0J28zw{3m-;X2T#asV^XfREe z*aVtMbmZb*|7VNRtXJZxlT(@nH!k5`b{S&~^Po!xj)4X)gExmjMQh?|P^_B9Cw;P0 z?r+U^&OFTG-Xm0<#L}}w(PUjFt3YGoY=UlZ9?PkGnDs9TGXd12(gxt7Hk3rawwVs zyVxA!OeM3umyqzHOY_At$aDiB{KZ3w;r)-^+u&e$tFcMF5;?ov^eE7U>*=v}dgvdG zetN)YplEJcw5O6I(J=L1hP?UcMbHFee8e9JG6J}u>%{kbZ+fqUECPbYDP%{T@@rFM zy^Txi`gY|?Pt~vOn*aKnM+9)n?fWM;Xh8&Nqz_;YLdVf%7G-XHb<@7gA*^}Eb!vh zJ4KqHdoyQijcppd!Wl>Z$JGMg#D3A}*Zo`p*_w+75pxcSOyJo=|WZ*WYA4tf{|EZTpraoPM6Q4l?N^!1K_`CjCxO)@k|TYUHZf7eW;MQYw$7+i4$ zN_z5v7ehY_sror%bqVCH)p>KL&Qsmcv-tVQc06vFppig_)x8#y1eJqvD`1gg=mN!>^0jAh5ntco!g;Ku1_rExt zZ_?PiZFe{NMRb$nQ^Z^3dDp$Ah2Ps3h=&7)_butKEM&SxXL>FtIE|GkD4L#z-RTz1 zA`&^CYjgG73ft+%!=!#T?Z|ZqzKH)JPs$hGwTCg(yMB16UT8ek;bKE5Eq0KxKv&cR zW9+QH$gdAm5yNNLby$(E!Hc%%X|F{h^gX(uH#Y||WFo@O8k(BQbTtBmq<3Mf6MD<5 z5WfBjawT$&%Wu%fb>CAJXGI!zWYTmX=FteAyYISprhWJBBS?xF?AfU;!8j|T(Czrd z?Xev16wS!wsfEw~rrRF-;?ND9CnHa)(pmD*2L2$6#=bMTQsxeGIUlN)X51 zd})mRcNr1umT5IeNg=%Yu8T*_XN(px&1^- zVt|RDC%OcKMsPmbFI0xD6yg6M!y2fW?<`gIfx~ZEAdeNWs*#AsRDT%O%>kD&8FJ7I zx~0^Y51beJlA%74d)Tm}wcm7lDCx@^P061>UQTo9Iv|ZR-!Kg%pR0)9vy9A!9WXch zuMa?IKzp~?+-p$l)4t_Iq^eo__kO|~lrEH(g+adt$ zbk{gkv(XZDL%GKdo-whj0P0Ys>cUQRBlALiQ$-)dGnVM8ca%{JnB59@<$1TrEN)p6 z@9B!<9!Q@2CO$J=E%*h&L>+%JmsY@51L&n4(DGbCO5iDf|MhN5(qaUxFoPJTv&I~D zSDdfqzYv0-Q!_fwq9~9Dl3=R0=Vb(56(dW&IUF#kkr=dPn{aw{ zK$(}mC5r1|0E?({NRjh4;0pi)i9g>_Bk}@3?nJjNonX}2IdgjAPH4uoQt~+-5wmcad|T`uH&RK|)YexKp0N}3 zof>FT-~H^YO8Dz0bHbb#`)@hjZvd{a6B1^1M-0EIAX$6|kL@#xe^84N0;^v!n>=P< z;}a%)U^p~YiZH@KiC65^XUa(OMA$!64d! z1&*guY*t66Sid`q1W8;=%7HyhSSInm&-{py@B!b9ieJKC>r)%*Q z2J@AGJaz;AQAiax8vD0t$~W8urCxcS;la*})UYs7x=y0A`=vVSO5Y$6=h5)%u}GZ7 zkA)e_-ozP;-ZeK*Ec5B(Z-OOYHh{HMXv1D8ih#`!#x;_C8;Kqg_RW#-eYbl~6!<`I z9y-G?{2kYUUEabF$BQy%*oLxGO3iINVun5~p&Cw!2Xz7GR{IRJJ0-%bPemM?vMwH-i_Vrky(QyJZ_^`2W*Mq~nkBqJ@T z)e8r-^A|{DzO4aTI{r;t)k`sb0jvCqkwr7tJ(fQ{GnggPoj^_0<^T-_Y$#coNDvn? zo3_x=*Z(r)WK4S5h)L}nZszQ9U_Xzss8<@GJH}UX+bO5@p#w^#Pc=wmeLCTlr}=NM z$AM<{^IKRYN%Y-t`I%Ku&4vYjTB7BMU`(8C-b2sxSV3NKb}@Sr8Beyn?mbsYB^=Yg zcj%_cf#uL_$M#T0b`MF;QV3D9mxvi$9vH?$XTy5U*JU7T#)ZuHl{%Dh>5V_gVuh2) z@#T45KX8bl7E)Bm6I95O6(+$j%<-QV`9dgNh>+Ay5zxY_=n~^S?1sn z3e)MR+lIdT=KCx3-ZmAsC-t6_Tg%Xu+@W7ENGnjAJ-)y85A32Lh3och_WhJJ@iJYe zWHgx;-oo#`Q!%z{(|%1y&a0RLTeTA+<>5o^-V8p9rew{xS3R0MF=&;6J&DDKNCDw&CuUXQ<$rp_4(Wt?$fD-iW`IekcxZUr6B53PL?|wMXQaEOyWTA~nEFB4q|lt{hGJB{(G;K_X}gm3f_1 z9VMe6mp1#M>^J;!94Z4HcPKp)ebUoqR8&;H@bNYUMmq7}I!}5{xUY11nN9GC zDQ;gc%&_0QI`cEOyv12M<1IID@o|xQ7yn=aO7*`yuZ=+?TlZMdiEwxZ4Eu@R*4CSp7 zu}m;wp6_N#OEK(ArcaVpBj6MF4Uu$~2x9oWH^QhdY{7eV)muA0A#v#~OBxE80)*dw z5-i|UX7wve^CubP&+*-pbxKm5)ryH{O~co{*U>Cn!YHuus(#kV^Lt@rhOYG+ovMY2 z8|zKHKTZyfdW~sB?b2vnw+AbaoVu;GzCuw|TKMdGIc^Zs1p;Y<`Z#_@3<(8`)5>jQ zzJqoqzDSD=+#qC#{1+Q2UW|npHnW=kD(m5@RAQbE=!m!Oh{rnS#aLU-Wyer;C|+}# z>xdqHMB3!>dv?wg3mqN>4+tcs8rKB^xahfx9=5fKpxZxP%%-1pk0j#j3I`Y(r3cCX zJo+VIuWZrgP(S?&25BhWns7#(AfH9LT`1nF@5OWHJQ3*-e$3$Yt&|NTUXXV6K1yQgd0P~MRw=Mw61|A=kb8D016*uEJqp<1GrA0Fk2 zGFPwwORpkiXceptL!X+IG$tjS^eeb!-jR zHKaoCr9eS;v);Noj}`q32+k~PtJi>=Q!?!UL)5!#|2E>qL7=rRF<+by9vnG2oH@0r zyIA>XfQBHQ1J{nR01utpY!RU+K-(c!2kjBT<`h!Brf|-R4Afd9V0PF~tN56~(}9sG z+L8g3%?LZ)Z$g!y;7LYIs9|Czf?`n^yO3eSLQ`TeP)|2u1Z0!go(v&Q+k1!E7Cq^{ zZ`4x4)(Y0i1^OYJN~(`kfi_{!O%+D6_I4*wyL5o+&kX8ZMQpN1%J&rFdOkwcR=Ut; zH%5#rJnNG&)W3pEU$4DcCEBPjSvgbl_}Q`bw4bE+uBdpdKe#AU??9>{;9YB?p>iG2 z#p*}C!nn#z&7o+#u_~p>T6(v=Lz&W|hNP3CXZQI$(5CyBHYCutDPOq#0|St%Pvp+o zLuZo!#q6D@wJaA18WND0oPD@kuh7X1jtcS)ft>yVJwyh!FlCDEOENVC80f&SKMRgS zB81HtS?PjMxR)7ogA=v~;0fLMo-r8e%cFhDd7;vWUjNN;ee;dkGP_U+_cVRHVypoWT`Oo8A28?oK zrcK|jvA8CTkj>x;c`{!)+Vfz;tMIJV@X$o(JqD7S2V zXiJr}{JAObQ<+1@%}XG?j5?szFtn178!EpWBY!K|9FFWUt}+mQs@a_T7n&kB>q?!u z#YoAq?9BDhCWW{0;8k%yfKa#oT^*XZ(FVKU+wUoD8m!l!mdKgDej;{>RNdiUgkOWH z@o3rG+I}l_u1-(yi&@u*gW{$E=mE{wcPRcjIT^?9Te|96z8qC_Lvd>lGCRuV#7QAJ^MWAVA>&zv9GsK)g@vK*i4itI zGc$%mt1hD5^vw@Ea{fYSXw)<`=F|0_NT+BexC`kugf_{C`EkV>x}qf$q8bq05`ta+ zvp=Ui?zgYj!+$>@xfC2#moMT&(4CSQu%W$JmI)v-&>P#Z5-s^byRnkQhnfr!S}8xBWBpg2Xe-!n{0b2MdeG z=~*%wFDQ5niud5*;n;hnhThc8!CerG2nLat?;>-2@j#FIHE+=aHg%pqK$!b?r~_`f z2;_jgG*SO<)Idtg|Mz=HcCr|G zP&*wdUhMDjo9Hg{`GX zwjfx;nhtU!;(mq^PVIkfG(R@y@M1++GuEhcfi+aA6c~Dr9WD(&PxaQ0;GqBeD}OH# zsC)k2Tl0O6T z!buUuy0QjXOz+$2w~v090a-BxY&{VU4+6|=LfY)_BlXe4|C^z3`Vp7Q^D8-#2>mCu zZBvJM1>$Gg&iM$*CGU9F!9?=?QMxm5Hq7s*=3FYZ0Ad3OcX`|C+%pk2$E@3X*jzec zOXGxQxf;^X;pZfcip!Te7ee7r+EsH;E#@b{fmh|t9frK5{NbuMeWFST$%Z~o!EMs| z3SOwpCX$8=tZtruv90J;7~+WKYg8keQBUyR-PA)a4>^e;q?_^fWwJ^j^mpe<2hV{e z?~{U9QAI?>baoW}DUIM**uv1admUN^+UBex2RO~CQWq9NOTPk*j0X`;op{Fxjm0BO zHz2oc6Vo9`lNbbXZ-R=nE1pSKw5&accjVH}_7(<^`&i9M)Nk9v`HU^$1p^GFJKas- zyZr753=(31sDJsnKQQUShL=!~0px%Z5+Z*T7x{Pv{F?b7Pf){afLHM9KJSs!H&}pYxC-sve3{fgmOKPv9$G zL9HXfPoBsmjC41tSnS<<#`R9iS-9IHOCT54e(nk&jY!rWQngE!2Nb(JCT*Tw2(_U* z`4-rJPD1j#<8_fNpo2P{)^98jBx3>-M6=?*ZH8wucVYaI;xiLbx+KUC!`HHvRmlII zT=|aR9CzjN8)ISFxGt_>0$T|_{H#OLZ#Wn&?NGkMRRsvRR z)1M7g6jz;}P%I8GPz2);k6APB3XBIp))iC+~h1W z3Qo$$HK%g(LCxzRi7t`W^KpY)FL*$O1JdFFe?QVQ7!Prho+tgJXAbE`DDKJ-|4Rfr0SQz=rnt8f;DTC!V+A zlWQo#B#47Q+Aoav0BXS7;bk9Fp7SxHO%xEz*JO-fG^7P~t+;Fm~%h}FdaLK2m`OD@Yd=%^+zgu|IcV!ev;+^I6GHUjVER(wn8U5CULggKq@zV+s5l z)kI*hQ7nVtwA3H;D$ODhoc(#aIbFv{*QfQp74dGI65hp5OXg}ZjxSzEwCYBJK7Sk$ zKzMrwkqkJA!s35n(VzVi6w>^XfTzrX_xLIw#LFSe(FNID(qQ8(WqeUq`FOe?+!NM& zi+;Va=J4Gi0DC~+bjLL}rg)8qG#J(fEy9}MQ-l$VtaezgaqdA8^MIg&FvFhFuW0M5hX?Z**a zTb}!{2S>mE^{(5>+Ioqvp}KnXI?SP68esfH<=52I=Hq8rO!3YACCtJVW)?vHqxpQ# zlMSxbSFf$F+rZap+ylY#_je#bl7XOa++ z9eEo2XECk`Yf*P6Z$?op^)s3=J_I3rR(3e-fgnf?%ptFUo!`p8R(W8?5=O?I?Z~H7 z|NH4Guj(&G7ZV=<+7Saj5+5l+XTuLR>R^RN0}EIXVdVZu(SOK~5hyk0%HXphZ5m7{ z%vWz%ZjlC^JWs~pO^vmU=}&P5uO8|Yk-(7-OkCthcYxsu3eFMj584VEjr{}y<%sEq zDNrl;<)bO{CiFaJ;^@UEuS2^Wqx;6fb>HBqUQOsdkc{6QmwgN4`s0FJrOH3w0R(*f zTLo#NgdhFQn*4thJO8Jp%m0sh>i_dCN~r+kaNa-o5eMAZe3+;e}KPEVdjlAd`GZ=5rC*0zQ`|3>=TJkJ^4?djJ@()C5D} z2vKDv!AqWc>SQtZ8nxFZX@b7Km z-GKZQ?TuQ&iH#^*JCm;7domnv9cVf^HN^!@d-^m|`+*)XOAP4n0#*aLm212~l(;U8 zhcF-=TN$kZhYPN8L+_W61LF9g)wX|IH>Uju5)FOqE-Nehsh^u?^Lqd$QG76w=q<1X zIZ?$7Mk+pRtYPqd>I5F<^V4Z47ZIUheB&Z)p2I(qyk19{Mz@-sHAn@iK%;C6K z8h6S6lz{`5?>aNCZDTDbVPo7zmbryS9~?9Y!5pF>>nzZ+pio83jBM3DKIC0194J;V z0QIU!lVCS``5_S7&H|JlHtt&xn!&LdAuT7z>I!%{<)4FjZ9dHm@H!Y-ggT<}8ib)g z0>uCgd_{st*i&5lk5Ai6!!f|v?xPfSDdyP&z9N`hrRqNv`5K4A;8QXF<)B^iB=5^4 zFi4&CPT)|#?U&;0c>;q5wzw}q5=ncM4nrZ01!8JcN1CL6=43NKzxwG zm8Cg&1ZjxOJx8%-)H}RH;YgVS$S@u>BMQ$EjsrryPV(M6IB(XGf0<6w7EFB7oz{s+ zHLoH&2uJk9drUw|Va{{Vy^9#Z7?#({R-j#iLg;r0t>;|AK@=0uvf4q&H_VLX{BU*m zV;MEKbL=m#Z!}|8uM&RIdGwKd$5Xv8i4cR9T}U4h2ig%|N@HJuh!guW8vfaynrVey z51`-TO^&hqV3~14$Ri6(_7QIU;CR@0oZ)r$mgUM)qgMIM!d0(c_tj zv9Ypqfi}Gzb3Qm=Gim$e+P(*rIIv&&C7c`|b_3gt?PDe2Z_Abxh-neG1IARrAU|TN zf(R=2tPV?Z0zntT9s1#rd;x7;(C6CRP}3?1Ax5O=C5A0@c@A>Edi;pd!_K;G4ESN#=b+jWr=q%EXVMMY|m zkdzb=P*4P=8A3v0Kzcw>LXhqhd;n3Tr6mNUySt=gP+%DPJ@dTZ`$v2%ewa10)^Ky* z*LALQ_St)%3(@X)QRG32zi9xgG<5w3nqkJU>feb>`R!8*zH-^xxWdyBCzYE2P;G+l2_kF(YTdzw1KehvBhD>? z9Bs}yV|`*%zqgF{=sDvMtp(=yU}6_W%@w5SS#(V302=PE`hZ zndm$!el6o@6(Sn~+|HzbiFEX_Oelr1+TzE*KKF*)=pcE~kuRB^e-sl$7fyBpLD${yPj=4`J_;%0|!}C z->h39o9nln{yrAxfyZ}Q_7ajIK}*3lm=|Bo#wV+lwfZr`__bA;SAkxw7=g9nG`&st zK`E-)74T>Q_j%wE3xcjJVIpl{FK^%Ao{CPTXLm2`e~n|$c+9iv(=D;x*f9KtEh~l% zyHu@SbM-Bl3SBd845X{XN9>$_?3gvbmn75(rualtBO&b#ban=HY`+igOsi)XH!NLf zUWaJdQZC)5&@DC}LXG)TSy@Sqd2F)>fxh!#N(Ro(4**2)@5A8c5AJDefEC+pv3+cdPA&2p!uMv9YYzLosiVKV6^Md#kGJB;EKYyurL?pkT(WaE z=5(MLx9;CCTm68nxU-@A`9m4N;EOg9ZI+M6J}lT%YmpG1x$UJsDU+N%uw4zdS&YH- z{9TnA^aif!=*2C&YQsMjO$V;0@oDtcXQB6+;LKJ?#ajm3+&mdJA7;(7x(sm)6WLbr z&gBZ180&s2lJPyq&shFZ_l6CP32- ziE>wQXjw(kbBqjuRxAdFhR1nyh!UNLs=WLUtm6Cz{t>OLhk{))r=F%jmC{YSK<`{` zB+t*ZZBk#2tLJYKopSwj;tOZTFr#WLuS!iGehhkCJ^!D@9X&#wVLj9b^=6V~!0D6L zYv0V@^}yQvSeBf9d*N>GHjLcmCKA}2_VyME4?y2sR@;Gk#B4ogU{I0Sy*Ykq4=NgA zIGvLuUzJ}G;di9Dy9{tL6S1>>NKcwoy)Vh#{E7;3hOLI%FYGy!K<6P=!Pn)bG3$$b zcS*ZvgI(5d&u4!MFKgc=Y^yfeIcM(HC=27 z^M`*YvTFDKOupNIl?JPj*b}|Q&_&|@0z&I}%SCP;a{`L#cgy$u-N;O&_J2pUVst!D zde3e`>M6_$_F2?xvl9tt{BDnA#-y_t) zB?PRr^A+0e+=#w2N-`GY0d3D!?;9>I-fN~OR(zB>wrqHW| zCg#)9+sEa2_Zml>ZWQ@c{vzAtRz)ZA_#N-AS&8sK9z#5s`_z(v!dvPXvTKhc$(Bd0 zv5%t;+R>%KR0u9J@PynH@B*vCR>O==ig~?%q^}d2uh{n*k;>T1Z{1`;-w-_|{9w3< z`cXFqN(koz0KL+-Pf{J*ZnVm3Nf+ri&eFROTL@sn<*8fCH(6XJB0P_C=u=iONj9Bt zI%Qjc^%6fU%_VE`>JUyHVfR%4<$7${ar^K^7L@k4Ap}--K(w7&Lp}Kn?NbW#Qq`>W z0u$l_g8GnwkRTu>4=vw@r;Y^*;_Jk)y;(RKGqznIb5+kj+gv~Y$LX9vR;oOrVH1?F z-MFb{D$GKvT*Jmdt`zZ{{p<$}vEB}+-?#WPyof749bgYS&EiR)IBodiRfSpCy|O9h z?bE~B(>0;-t5Ky_KpI@0;x;B3-JJGeziD~C!aZFsDE%Ic+IQeT`F;bd1qn_ zrBV$9LWVRH3}$;k%BlsA#iNzLvUKkjI!?g*b(RG|;^EtIXwik(;3ehyq?o3Mx;3~> z;Zs@T6Njr85aYZr*h2z8-vZ!G;YoU^*c{o$%RVjhurT~Cu{OL~4m}=(x^nI1;%vp$ zN7&`yGt1d;%yXq2@DT92nhADSRwEV=+^;aVYQy*Bevf{B_>)CxQ=VPV;RI2;)Qdks zD;u${7&UgveaW3OorWR4v${V$zZJ5~;RW&br4iXxH)g1dcA`hqD36oyo_*@uYin!Y zMQJ}OGr61XE;3&_=iZr+Mz>RbBL*+D+PB+Lk*m#=8wEX=5Vo~`8?UiEz~J%b260($ zPUZl7WWk52kntvQ1-9G8dz#mltNi>&rQW6L<4xGG)kHgUOh6( zPtRVPC)>P-6%_oPFMr_sb2N9#@#-)`O+I&2M`t&sdx~)_>Tw_j^V}FcoViDa@Ly zqJoG0YNAI!(r~!5Wyp*{bvp6#1OiO<-g2{ls>5jfHo%Bc&J3IxHu!$Pmq+CU8`Ozp zhLBw{4%92AOuo_(@l%|)mfgDX0`dBYuoj?si{t?Ft*n9F-Vl6wIBcGuWK$F*az&|s zA|%)QG^B3CH)#VhOTG%wN|X>|xc=te7Vdcv@wIot)KyEE>Qkb9P_o ztcxpDZxSTjf6h{^Gu6!Z*BW;2(Gu$FZ}5|TS+?@7I!qy|*Pt|rWXu&ZPQr0f899yR z#ZMRJOjju=RN&P%pXH35YVz2N&(U*U*`TVm=dygWel9nFU1QZyw)ohY)qAv?v|b>} z?VbgxE}kFD^5a}>38(5A`lOanIeWrSEScsuyT8Rzy4Rf3D*YnDXnAF2&mD$R7$V1v zkkz%v8+LckncfXa^$(WN3*^!w8Lu;JrStizh^p~+R*t1HV$v5Z-t1WDUvRV$a5s^r zJrdp(#=YC^2%gC^FtyS)UbS9t6~7rh@OU8$c)rmx~kXUu#w`wE{q7yE~~tI zHfLM2`whd#racnh`O#O4dn%>fZh(61%L**RQ8*kTMQmm7DNvNUf9y}01$k(dQFmOT zL(t>>zxw=X&h8!^bdO|>Skj`PKW44Oro^R4%B)m{w-S)>(!j#KkBy&pUYYiWuED-? zWL{U0n+=6?HOP`>)MxZ$09;~OOwiSBDf;Q6l(qK=#8YvH*68ltMU-`D^n1$O(PE41 z*`|$;iDM(AMhBPEa<~GpPK|n;tK=;UCa%!@+ET_+tMj;BSlf z@tUD~L~;(2E>pYQNJ)kEf$J89blY`%(5b}|QH!zX%RUFe)3ep^%|WNoa~!*bB555p zsd!3YlvxR$;%AV{i6EuVgWaH4FOy#(L==wC(Kh8>$^g^3j=|(jJxA{^EI{@$NXfe` zcZI(DoiBmajp4NoL1hu@noq1~obl~Ha&`1(>HIagjMzjDu^2|n&qElDi2y=L3*oDU z=%p3zTu4UVBJZXz3Z-i#OxC#2)dUT7p;(%%O@wb)#X3J4y}N@7&aK4*$f(53U|d-O zhb!1D@9@}zwZgxAurIVl`CG%Nqo4agOk_# zJuhYtzYVy+u%#h`9sy@Dp{_33$gZ|~59fIG0LmzK`O+8eFY%AeLwHpLR4e)rbX9Fz z_cxAX+9XN$Sp!m8tMF-%H0_A2kqN*}2MqF99(VG@1l>&B$!4bm|DEXfbBD~D2>%Yv zBS$al4uU~Q+ft5_6GxxnOb4OoGx;(_)B9B?Z!QS4YY)84%}qHx?!@hV*k^gshW1l< zBJuCalPj+i@IKR_eG`eT;<h`OCB zdDTsaJ4>@89P-V`nrw&AFX`3I>m+do*r4r%1E~Z&+*piO?>y0OF=-owOeXcH;a=&9 zbHc^>_<0M$w#N}Uv1=|siKz8JO{h|N4HBd^K)NI;J~?Y|8T+_qsrFI$Xt0pAXMP4I z#w~4(>(;mjnRmxcl4y@lzb~Fa2*2(A?pD=$^h%x}?SEMx2ja!Ab=wH)dy#kv1W&gu z_H64f-nBP71}qDGgVOVazp9PYCa3ibE%Nf|j?FqEgKVx|Z}As6O!%l!5^Y~^E%K%r z#fAEGi$`3p;;~guFBn$j?vaUk0RWLQ^b%MOaL;dya?3cs%}-6{s(W|wV{)lz>6E+m z59RqS6FfWE^3Dk(!pm&uTRD-a?UqU`e&V$>+C(+(rvpaaBn()=i0zEWJ3aG9&ZrS zZuIbG$W|#p|*68X? z8l(y7c7$&9%aR{Y-gS*M3M!}FLTtBnH2!p9Csa;|KMcl9Yzq1QnT%ZXD6R^TDTiz? zs`+!(;)eNFo6S@WfOI=nGJ&7%zJ%POI5@>_E;VI|QqSOU$A@L-&od#d&Cen!7j zxnVX>Bdd)Tra&4q25DYsm21o8xg$Z|Zk*0@Ct~1{$U1jd*Q5g2hn& z`dHx?S8H5yHySzu|AZcSe;6%oc{S@RecQ5|gs;K+bMZyLn{*9B<>miSKVW2@^?fHZ zW*XZI5Yme=Qa(!4nfE{2DH{UomHngW>_hIP#;*ju9Lv7o(v=e=FB|wey%SoTEPU@x z*x#iMba9X=PR8q?u9}Rwy_dh>X{2+@mL5?;=0qnjOXwfMFlPVdkZb@GbgwvPApd5zQVBQ}2O4Z;l-V{})Q&33Ak$Iot@G%=N{ zU6B_V^7W_A*4Q~QQ;ELxiXFky{l5$Cca}aIq}C>UkH{4Z^{$DV>rp>BovHVGl>fDN zz34}y^ry{Kh0+vRVDOLGQ*$Th$HY3j`f9+$i6qku;YWaO$&~j8wP^?ir zYIb0x%Eiu%bV`Wu-a}r((jWq>O1l-BfyUqEbLE!8_wGx~3CICHt00NlD+Q$#|Dm zd(C+D+3FUWC<=OD*V|B4E*QQVufw6o<2@FMyWg~{fyFygy5F3JoDq+ zROn#R!?lyIxgBC{Ronk*zF*NDlOp3ST^+jTy8qX#e>hdrO{hAyTSic@cW5baLrhXq z&t|gnd*5Pv?Cq~s(-9F7mF=e>77=sV)XP+J1GOAG^L&Y2r3@^DA?<0q!B7^7FH-@w z#)tHLdOEvDz!VAo`YeA)zjgDYU1eV*tUc*Um70hOcMP%|>!E_b)bO8mLvUpE_mmwZcuj zV$u-ex~_acU#u6I(o`V2xwV~GSXh{t@J~yi$!V0WQm?VUa>NSEYs8l+Mol|@%FxqP3=WPwo8ajLY}*zoi;TWJz+1QnCWTkJxtKpL0YZ2g}tO^d(bw?wCax8SVRI>HWyLwY`lZ3l)U+<1+t{b zb|57wIhpeK`ep0<0NZTR%MJ5lr;Vn8Ho7$yt$~$JE1I3egp-j&RVFW}nZuC7H%4}E@RUKRh2{@Z0cix(}8M7u-WITsLtCe9`QaI5s4 zk~OU{gf=v>$%ne%p)89Nu^qeU>q4pcTTVOD{f&{>8*{?Xg*~1KVs&yShhqOEvB&{( zSY9fTC!LF&#U>^uoXBC7NUO)Dw=UadV`njsDEQQ8>XDZs2W}AQL~^T~GQv=o204bl z!Q7rQ?&A+vvL5uj-{y+46VTgrDd(u`dE(C^#QiMt?x5>d8C;K{|CmGBtI1W5(-W`H zG5z1%1tWK^OE|ASAya@E**6Aw{_(%!JoNnDabs;aVcOZ&(l2{rf^ibBNLi-uU-DQvCk|ztMO8y<~XV zmUxEuzn_|Q62$)Z(;{<%|9**zF2d*Pzn}h-%kcl>>kPY2&PY$bJjGSgHWI*(ilVwg Jo}7{Ie*k<)Ead 0: + ax.scatter( + r["tx_per_success"], r["pdr"], alpha=0.15, color=colors[algo], s=20 + ) + + ax.set_xlabel("Transmission Cost (TX per Successful Delivery)", fontsize=12) + ax.set_ylabel("Packet Delivery Ratio (%)", fontsize=12) + ax.set_title( + "PDR vs Transmission Cost\n(50 seeds per algorithm, error bars = 95% CI)", + fontsize=14, + ) + ax.legend(loc="lower right", fontsize=10) + ax.grid(True, alpha=0.3) + + plt.tight_layout() + plt.savefig("figures/pdr_vs_tx_cost.pdf", dpi=300) + plt.savefig("figures/pdr_vs_tx_cost.png", dpi=150) + print("Saved: figures/pdr_vs_tx_cost.pdf") + plt.close() + + +def plot_comparison_bar(stats): + """Generate comparison bar chart.""" + fig, axes = plt.subplots(1, 3, figsize=(12, 4)) + + algorithms = ["gradient", "flooding", "random"] + colors = ["#2E86AB", "#E94F37", "#7D8491"] + + metrics = [ + ("pdr", "PDR (%)"), + ("airtime_usage_percent", "Airtime (%)"), + ("tx_per_success", "TX/Success"), + ] + + for idx, (metric, label) in enumerate(metrics): + ax = axes[idx] + values = [stats[a][metric]["mean"] for a in algorithms] + errors = [stats[a][metric]["ci_95"] for a in algorithms] + + bars = ax.bar( + algorithms, values, yerr=errors, color=colors, capsize=5, alpha=0.8 + ) + ax.set_ylabel(label, fontsize=11) + ax.set_title(label, fontsize=12) + ax.grid(True, alpha=0.3, axis="y") + + # Add value labels + for bar, val in zip(bars, values): + ax.text( + bar.get_x() + bar.get_width() / 2, + bar.get_height() + errors[algorithms.index(bar.get_x())], + f"{val:.1f}", + ha="center", + va="bottom", + fontsize=10, + ) + + plt.tight_layout() + plt.savefig("figures/comparison_bar.pdf", dpi=300) + plt.savefig("figures/comparison_bar.png", dpi=150) + print("Saved: figures/comparison_bar.pdf") + plt.close() + + +def main(): + print("Loading results...") + stats = load_statistics() + all_data = load_all_results() + + print("Generating figures...") + plot_pdr_vs_airtime(all_data, stats) + plot_pdr_vs_tx_cost(all_data, stats) + plot_comparison_bar(stats) + + print("\nAll figures saved to figures/") + + +if __name__ == "__main__": + main() diff --git a/results/all_raw_results.json b/results/all_raw_results.json new file mode 100644 index 0000000..633bd5b --- /dev/null +++ b/results/all_raw_results.json @@ -0,0 +1,1808 @@ +{ + "gradient": [ + { + "seed": 0, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 4, + "avg_hop": 2.33, + "total_transmissions": 170, + "airtime_usage_percent": 28.11, + "tx_per_success": 85.0, + "collisions": 56 + }, + { + "seed": 1, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 18, + "avg_hop": 9.25, + "total_transmissions": 190, + "airtime_usage_percent": 31.94, + "tx_per_success": 47.5, + "collisions": 68 + }, + { + "seed": 2, + "pdr": 7.89, + "total_sent": 38, + "total_received": 3, + "max_hop": 37, + "avg_hop": 15.2, + "total_transmissions": 218, + "airtime_usage_percent": 37.25, + "tx_per_success": 72.67, + "collisions": 87 + }, + { + "seed": 3, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 13, + "avg_hop": 7.0, + "total_transmissions": 201, + "airtime_usage_percent": 34.18, + "tx_per_success": 100.5, + "collisions": 73 + }, + { + "seed": 4, + "pdr": 13.89, + "total_sent": 36, + "total_received": 5, + "max_hop": 29, + "avg_hop": 12.69, + "total_transmissions": 243, + "airtime_usage_percent": 41.28, + "tx_per_success": 48.6, + "collisions": 94 + }, + { + "seed": 5, + "pdr": 5.26, + "total_sent": 38, + "total_received": 2, + "max_hop": 23, + "avg_hop": 12.33, + "total_transmissions": 202, + "airtime_usage_percent": 34.23, + "tx_per_success": 101.0, + "collisions": 74 + }, + { + "seed": 6, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 105, + "avg_hop": 54.61, + "total_transmissions": 322, + "airtime_usage_percent": 56.35, + "tx_per_success": 80.5, + "collisions": 150 + }, + { + "seed": 7, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 4, + "avg_hop": 2.25, + "total_transmissions": 168, + "airtime_usage_percent": 27.65, + "tx_per_success": 56.0, + "collisions": 63 + }, + { + "seed": 8, + "pdr": 7.14, + "total_sent": 42, + "total_received": 3, + "max_hop": 64, + "avg_hop": 33.22, + "total_transmissions": 262, + "airtime_usage_percent": 45.43, + "tx_per_success": 87.33, + "collisions": 108 + }, + { + "seed": 9, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 78, + "avg_hop": 30.33, + "total_transmissions": 282, + "airtime_usage_percent": 48.94, + "tx_per_success": 56.4, + "collisions": 124 + }, + { + "seed": 10, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 24, + "avg_hop": 7.22, + "total_transmissions": 241, + "airtime_usage_percent": 41.44, + "tx_per_success": 48.2, + "collisions": 102 + }, + { + "seed": 11, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 31, + "avg_hop": 17.0, + "total_transmissions": 221, + "airtime_usage_percent": 37.54, + "tx_per_success": 73.67, + "collisions": 83 + }, + { + "seed": 12, + "pdr": 7.89, + "total_sent": 38, + "total_received": 3, + "max_hop": 57, + "avg_hop": 31.18, + "total_transmissions": 262, + "airtime_usage_percent": 45.4, + "tx_per_success": 87.33, + "collisions": 117 + }, + { + "seed": 13, + "pdr": 16.67, + "total_sent": 42, + "total_received": 7, + "max_hop": 74, + "avg_hop": 26.31, + "total_transmissions": 296, + "airtime_usage_percent": 51.54, + "tx_per_success": 42.29, + "collisions": 138 + }, + { + "seed": 14, + "pdr": 2.63, + "total_sent": 38, + "total_received": 1, + "max_hop": 85, + "avg_hop": 37.91, + "total_transmissions": 270, + "airtime_usage_percent": 46.87, + "tx_per_success": 270.0, + "collisions": 116 + }, + { + "seed": 15, + "pdr": 20.0, + "total_sent": 30, + "total_received": 6, + "max_hop": 51, + "avg_hop": 14.33, + "total_transmissions": 272, + "airtime_usage_percent": 47.22, + "tx_per_success": 45.33, + "collisions": 113 + }, + { + "seed": 16, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 13, + "avg_hop": 5.18, + "total_transmissions": 219, + "airtime_usage_percent": 36.89, + "tx_per_success": 36.5, + "collisions": 86 + }, + { + "seed": 17, + "pdr": 15.0, + "total_sent": 40, + "total_received": 6, + "max_hop": 14, + "avg_hop": 4.71, + "total_transmissions": 190, + "airtime_usage_percent": 31.72, + "tx_per_success": 31.67, + "collisions": 62 + }, + { + "seed": 18, + "pdr": 7.14, + "total_sent": 42, + "total_received": 3, + "max_hop": 45, + "avg_hop": 21.0, + "total_transmissions": 226, + "airtime_usage_percent": 38.58, + "tx_per_success": 75.33, + "collisions": 90 + }, + { + "seed": 19, + "pdr": 12.5, + "total_sent": 32, + "total_received": 4, + "max_hop": 29, + "avg_hop": 16.83, + "total_transmissions": 216, + "airtime_usage_percent": 36.83, + "tx_per_success": 54.0, + "collisions": 88 + }, + { + "seed": 20, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 18, + "avg_hop": 12.5, + "total_transmissions": 199, + "airtime_usage_percent": 33.65, + "tx_per_success": 66.33, + "collisions": 78 + }, + { + "seed": 21, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 20, + "avg_hop": 7.14, + "total_transmissions": 223, + "airtime_usage_percent": 38.03, + "tx_per_success": 37.17, + "collisions": 89 + }, + { + "seed": 22, + "pdr": 0.0, + "total_sent": 36, + "total_received": 0, + "max_hop": 0, + "avg_hop": 0.0, + "total_transmissions": 167, + "airtime_usage_percent": 27.79, + "tx_per_success": -1, + "collisions": 53 + }, + { + "seed": 23, + "pdr": 7.89, + "total_sent": 38, + "total_received": 3, + "max_hop": 36, + "avg_hop": 15.0, + "total_transmissions": 203, + "airtime_usage_percent": 34.27, + "tx_per_success": 67.67, + "collisions": 70 + }, + { + "seed": 24, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 14, + "avg_hop": 6.67, + "total_transmissions": 187, + "airtime_usage_percent": 31.4, + "tx_per_success": 62.33, + "collisions": 74 + }, + { + "seed": 25, + "pdr": 20.59, + "total_sent": 34, + "total_received": 7, + "max_hop": 75, + "avg_hop": 24.29, + "total_transmissions": 277, + "airtime_usage_percent": 48.01, + "tx_per_success": 39.57, + "collisions": 136 + }, + { + "seed": 26, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 22, + "avg_hop": 7.17, + "total_transmissions": 205, + "airtime_usage_percent": 34.26, + "tx_per_success": 41.0, + "collisions": 84 + }, + { + "seed": 27, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 28, + "avg_hop": 8.83, + "total_transmissions": 215, + "airtime_usage_percent": 36.63, + "tx_per_success": 53.75, + "collisions": 83 + }, + { + "seed": 28, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 38, + "avg_hop": 15.82, + "total_transmissions": 292, + "airtime_usage_percent": 50.69, + "tx_per_success": 41.71, + "collisions": 130 + }, + { + "seed": 29, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 23, + "avg_hop": 14.67, + "total_transmissions": 205, + "airtime_usage_percent": 34.88, + "tx_per_success": 102.5, + "collisions": 84 + }, + { + "seed": 30, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 26, + "avg_hop": 10.1, + "total_transmissions": 206, + "airtime_usage_percent": 34.52, + "tx_per_success": 41.2, + "collisions": 75 + }, + { + "seed": 31, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 19, + "avg_hop": 7.15, + "total_transmissions": 236, + "airtime_usage_percent": 40.29, + "tx_per_success": 29.5, + "collisions": 91 + }, + { + "seed": 32, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 56, + "avg_hop": 19.42, + "total_transmissions": 323, + "airtime_usage_percent": 57.02, + "tx_per_success": 53.83, + "collisions": 153 + }, + { + "seed": 33, + "pdr": 13.33, + "total_sent": 30, + "total_received": 4, + "max_hop": 37, + "avg_hop": 17.89, + "total_transmissions": 230, + "airtime_usage_percent": 39.39, + "tx_per_success": 57.5, + "collisions": 92 + }, + { + "seed": 34, + "pdr": 18.75, + "total_sent": 32, + "total_received": 6, + "max_hop": 11, + "avg_hop": 4.33, + "total_transmissions": 190, + "airtime_usage_percent": 31.68, + "tx_per_success": 31.67, + "collisions": 65 + }, + { + "seed": 35, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 19, + "avg_hop": 9.22, + "total_transmissions": 234, + "airtime_usage_percent": 40.09, + "tx_per_success": 58.5, + "collisions": 90 + }, + { + "seed": 36, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 13, + "avg_hop": 5.57, + "total_transmissions": 214, + "airtime_usage_percent": 36.37, + "tx_per_success": 35.67, + "collisions": 80 + }, + { + "seed": 37, + "pdr": 10.0, + "total_sent": 30, + "total_received": 3, + "max_hop": 30, + "avg_hop": 12.71, + "total_transmissions": 197, + "airtime_usage_percent": 33.08, + "tx_per_success": 65.67, + "collisions": 75 + }, + { + "seed": 38, + "pdr": 13.89, + "total_sent": 36, + "total_received": 5, + "max_hop": 44, + "avg_hop": 12.29, + "total_transmissions": 242, + "airtime_usage_percent": 41.9, + "tx_per_success": 48.4, + "collisions": 100 + }, + { + "seed": 39, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 46, + "avg_hop": 17.33, + "total_transmissions": 227, + "airtime_usage_percent": 38.81, + "tx_per_success": 113.5, + "collisions": 92 + }, + { + "seed": 40, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 68, + "avg_hop": 29.43, + "total_transmissions": 257, + "airtime_usage_percent": 44.1, + "tx_per_success": 64.25, + "collisions": 109 + }, + { + "seed": 41, + "pdr": 6.67, + "total_sent": 30, + "total_received": 2, + "max_hop": 7, + "avg_hop": 5.33, + "total_transmissions": 179, + "airtime_usage_percent": 29.81, + "tx_per_success": 89.5, + "collisions": 51 + }, + { + "seed": 42, + "pdr": 18.75, + "total_sent": 32, + "total_received": 6, + "max_hop": 20, + "avg_hop": 7.78, + "total_transmissions": 217, + "airtime_usage_percent": 36.84, + "tx_per_success": 36.17, + "collisions": 92 + }, + { + "seed": 43, + "pdr": 10.53, + "total_sent": 38, + "total_received": 4, + "max_hop": 113, + "avg_hop": 48.54, + "total_transmissions": 310, + "airtime_usage_percent": 54.39, + "tx_per_success": 77.5, + "collisions": 141 + }, + { + "seed": 44, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 22, + "avg_hop": 5.91, + "total_transmissions": 248, + "airtime_usage_percent": 42.61, + "tx_per_success": 41.33, + "collisions": 100 + }, + { + "seed": 45, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 38, + "avg_hop": 13.4, + "total_transmissions": 234, + "airtime_usage_percent": 39.94, + "tx_per_success": 46.8, + "collisions": 92 + }, + { + "seed": 46, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 41, + "avg_hop": 16.31, + "total_transmissions": 297, + "airtime_usage_percent": 51.8, + "tx_per_success": 42.43, + "collisions": 134 + }, + { + "seed": 47, + "pdr": 12.5, + "total_sent": 32, + "total_received": 4, + "max_hop": 23, + "avg_hop": 8.75, + "total_transmissions": 219, + "airtime_usage_percent": 37.41, + "tx_per_success": 54.75, + "collisions": 84 + }, + { + "seed": 48, + "pdr": 13.33, + "total_sent": 30, + "total_received": 4, + "max_hop": 76, + "avg_hop": 26.55, + "total_transmissions": 255, + "airtime_usage_percent": 43.97, + "tx_per_success": 63.75, + "collisions": 106 + }, + { + "seed": 49, + "pdr": 10.0, + "total_sent": 40, + "total_received": 4, + "max_hop": 25, + "avg_hop": 9.17, + "total_transmissions": 225, + "airtime_usage_percent": 38.57, + "tx_per_success": 56.25, + "collisions": 85 + } + ], + "flooding": [ + { + "seed": 0, + "pdr": 14.71, + "total_sent": 34, + "total_received": 5, + "max_hop": 55, + "avg_hop": 37.21, + "total_transmissions": 484, + "airtime_usage_percent": 88.07, + "tx_per_success": 96.8, + "collisions": 282 + }, + { + "seed": 1, + "pdr": 26.67, + "total_sent": 30, + "total_received": 8, + "max_hop": 58, + "avg_hop": 35.87, + "total_transmissions": 524, + "airtime_usage_percent": 95.22, + "tx_per_success": 65.5, + "collisions": 319 + }, + { + "seed": 2, + "pdr": 36.67, + "total_sent": 30, + "total_received": 11, + "max_hop": 50, + "avg_hop": 23.78, + "total_transmissions": 514, + "airtime_usage_percent": 93.65, + "tx_per_success": 46.73, + "collisions": 317 + }, + { + "seed": 3, + "pdr": 23.68, + "total_sent": 38, + "total_received": 9, + "max_hop": 68, + "avg_hop": 42.0, + "total_transmissions": 534, + "airtime_usage_percent": 96.97, + "tx_per_success": 59.33, + "collisions": 326 + }, + { + "seed": 4, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 74, + "avg_hop": 48.94, + "total_transmissions": 540, + "airtime_usage_percent": 98.54, + "tx_per_success": 90.0, + "collisions": 326 + }, + { + "seed": 5, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 59, + "avg_hop": 44.53, + "total_transmissions": 542, + "airtime_usage_percent": 98.89, + "tx_per_success": 90.33, + "collisions": 340 + }, + { + "seed": 6, + "pdr": 26.32, + "total_sent": 38, + "total_received": 10, + "max_hop": 70, + "avg_hop": 42.2, + "total_transmissions": 569, + "airtime_usage_percent": 103.23, + "tx_per_success": 56.9, + "collisions": 359 + }, + { + "seed": 7, + "pdr": 26.67, + "total_sent": 30, + "total_received": 8, + "max_hop": 63, + "avg_hop": 37.39, + "total_transmissions": 529, + "airtime_usage_percent": 96.08, + "tx_per_success": 66.12, + "collisions": 334 + }, + { + "seed": 8, + "pdr": 20.0, + "total_sent": 40, + "total_received": 8, + "max_hop": 58, + "avg_hop": 34.81, + "total_transmissions": 531, + "airtime_usage_percent": 96.32, + "tx_per_success": 66.38, + "collisions": 330 + }, + { + "seed": 9, + "pdr": 27.5, + "total_sent": 40, + "total_received": 11, + "max_hop": 63, + "avg_hop": 31.78, + "total_transmissions": 518, + "airtime_usage_percent": 93.73, + "tx_per_success": 47.09, + "collisions": 324 + }, + { + "seed": 10, + "pdr": 21.88, + "total_sent": 32, + "total_received": 7, + "max_hop": 66, + "avg_hop": 47.41, + "total_transmissions": 514, + "airtime_usage_percent": 93.25, + "tx_per_success": 73.43, + "collisions": 313 + }, + { + "seed": 11, + "pdr": 26.47, + "total_sent": 34, + "total_received": 9, + "max_hop": 60, + "avg_hop": 34.56, + "total_transmissions": 512, + "airtime_usage_percent": 93.19, + "tx_per_success": 56.89, + "collisions": 311 + }, + { + "seed": 12, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 69, + "avg_hop": 42.88, + "total_transmissions": 543, + "airtime_usage_percent": 99.34, + "tx_per_success": 67.88, + "collisions": 339 + }, + { + "seed": 13, + "pdr": 26.32, + "total_sent": 38, + "total_received": 10, + "max_hop": 61, + "avg_hop": 34.07, + "total_transmissions": 558, + "airtime_usage_percent": 101.43, + "tx_per_success": 55.8, + "collisions": 345 + }, + { + "seed": 14, + "pdr": 26.47, + "total_sent": 34, + "total_received": 9, + "max_hop": 62, + "avg_hop": 40.73, + "total_transmissions": 550, + "airtime_usage_percent": 100.29, + "tx_per_success": 61.11, + "collisions": 355 + }, + { + "seed": 15, + "pdr": 28.57, + "total_sent": 28, + "total_received": 8, + "max_hop": 70, + "avg_hop": 42.6, + "total_transmissions": 535, + "airtime_usage_percent": 97.53, + "tx_per_success": 66.88, + "collisions": 335 + }, + { + "seed": 16, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 66, + "avg_hop": 36.68, + "total_transmissions": 565, + "airtime_usage_percent": 103.23, + "tx_per_success": 56.5, + "collisions": 357 + }, + { + "seed": 17, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 66, + "avg_hop": 35.71, + "total_transmissions": 529, + "airtime_usage_percent": 96.59, + "tx_per_success": 75.57, + "collisions": 328 + }, + { + "seed": 18, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 60, + "avg_hop": 40.37, + "total_transmissions": 525, + "airtime_usage_percent": 95.71, + "tx_per_success": 75.0, + "collisions": 323 + }, + { + "seed": 19, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 68, + "avg_hop": 43.95, + "total_transmissions": 530, + "airtime_usage_percent": 96.42, + "tx_per_success": 75.71, + "collisions": 323 + }, + { + "seed": 20, + "pdr": 20.0, + "total_sent": 30, + "total_received": 6, + "max_hop": 62, + "avg_hop": 48.11, + "total_transmissions": 539, + "airtime_usage_percent": 98.27, + "tx_per_success": 89.83, + "collisions": 338 + }, + { + "seed": 21, + "pdr": 15.0, + "total_sent": 40, + "total_received": 6, + "max_hop": 62, + "avg_hop": 37.65, + "total_transmissions": 551, + "airtime_usage_percent": 100.56, + "tx_per_success": 91.83, + "collisions": 343 + }, + { + "seed": 22, + "pdr": 28.57, + "total_sent": 28, + "total_received": 8, + "max_hop": 59, + "avg_hop": 41.95, + "total_transmissions": 502, + "airtime_usage_percent": 91.33, + "tx_per_success": 62.75, + "collisions": 299 + }, + { + "seed": 23, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 63, + "avg_hop": 40.62, + "total_transmissions": 515, + "airtime_usage_percent": 93.15, + "tx_per_success": 51.5, + "collisions": 312 + }, + { + "seed": 24, + "pdr": 27.78, + "total_sent": 36, + "total_received": 10, + "max_hop": 60, + "avg_hop": 36.81, + "total_transmissions": 551, + "airtime_usage_percent": 100.19, + "tx_per_success": 55.1, + "collisions": 353 + }, + { + "seed": 25, + "pdr": 20.59, + "total_sent": 34, + "total_received": 7, + "max_hop": 56, + "avg_hop": 29.71, + "total_transmissions": 498, + "airtime_usage_percent": 90.0, + "tx_per_success": 71.14, + "collisions": 309 + }, + { + "seed": 26, + "pdr": 23.08, + "total_sent": 26, + "total_received": 6, + "max_hop": 51, + "avg_hop": 29.89, + "total_transmissions": 455, + "airtime_usage_percent": 81.46, + "tx_per_success": 75.83, + "collisions": 265 + }, + { + "seed": 27, + "pdr": 21.05, + "total_sent": 38, + "total_received": 8, + "max_hop": 68, + "avg_hop": 39.12, + "total_transmissions": 539, + "airtime_usage_percent": 98.01, + "tx_per_success": 67.38, + "collisions": 331 + }, + { + "seed": 28, + "pdr": 25.0, + "total_sent": 36, + "total_received": 9, + "max_hop": 56, + "avg_hop": 31.26, + "total_transmissions": 549, + "airtime_usage_percent": 100.02, + "tx_per_success": 61.0, + "collisions": 350 + }, + { + "seed": 29, + "pdr": 31.25, + "total_sent": 32, + "total_received": 10, + "max_hop": 53, + "avg_hop": 31.94, + "total_transmissions": 560, + "airtime_usage_percent": 101.52, + "tx_per_success": 56.0, + "collisions": 356 + }, + { + "seed": 30, + "pdr": 20.59, + "total_sent": 34, + "total_received": 7, + "max_hop": 62, + "avg_hop": 34.73, + "total_transmissions": 545, + "airtime_usage_percent": 99.8, + "tx_per_success": 77.86, + "collisions": 336 + }, + { + "seed": 31, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 54, + "avg_hop": 38.81, + "total_transmissions": 528, + "airtime_usage_percent": 96.51, + "tx_per_success": 66.0, + "collisions": 331 + }, + { + "seed": 32, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 66, + "avg_hop": 40.65, + "total_transmissions": 522, + "airtime_usage_percent": 95.16, + "tx_per_success": 65.25, + "collisions": 319 + }, + { + "seed": 33, + "pdr": 25.0, + "total_sent": 36, + "total_received": 9, + "max_hop": 74, + "avg_hop": 44.88, + "total_transmissions": 520, + "airtime_usage_percent": 94.3, + "tx_per_success": 57.78, + "collisions": 310 + }, + { + "seed": 34, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 69, + "avg_hop": 48.8, + "total_transmissions": 583, + "airtime_usage_percent": 106.38, + "tx_per_success": 58.3, + "collisions": 368 + }, + { + "seed": 35, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 64, + "avg_hop": 36.63, + "total_transmissions": 542, + "airtime_usage_percent": 98.15, + "tx_per_success": 54.2, + "collisions": 345 + }, + { + "seed": 36, + "pdr": 30.0, + "total_sent": 30, + "total_received": 9, + "max_hop": 62, + "avg_hop": 31.0, + "total_transmissions": 550, + "airtime_usage_percent": 100.44, + "tx_per_success": 61.11, + "collisions": 337 + }, + { + "seed": 37, + "pdr": 23.53, + "total_sent": 34, + "total_received": 8, + "max_hop": 57, + "avg_hop": 42.62, + "total_transmissions": 526, + "airtime_usage_percent": 95.75, + "tx_per_success": 65.75, + "collisions": 333 + }, + { + "seed": 38, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 70, + "avg_hop": 48.16, + "total_transmissions": 546, + "airtime_usage_percent": 99.81, + "tx_per_success": 78.0, + "collisions": 341 + }, + { + "seed": 39, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 66, + "avg_hop": 42.0, + "total_transmissions": 545, + "airtime_usage_percent": 99.54, + "tx_per_success": 77.86, + "collisions": 340 + }, + { + "seed": 40, + "pdr": 22.22, + "total_sent": 36, + "total_received": 8, + "max_hop": 65, + "avg_hop": 40.74, + "total_transmissions": 542, + "airtime_usage_percent": 98.63, + "tx_per_success": 67.75, + "collisions": 333 + }, + { + "seed": 41, + "pdr": 18.75, + "total_sent": 32, + "total_received": 6, + "max_hop": 62, + "avg_hop": 41.94, + "total_transmissions": 492, + "airtime_usage_percent": 89.4, + "tx_per_success": 82.0, + "collisions": 290 + }, + { + "seed": 42, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 62, + "avg_hop": 46.07, + "total_transmissions": 521, + "airtime_usage_percent": 95.16, + "tx_per_success": 86.83, + "collisions": 320 + }, + { + "seed": 43, + "pdr": 23.53, + "total_sent": 34, + "total_received": 8, + "max_hop": 54, + "avg_hop": 33.68, + "total_transmissions": 501, + "airtime_usage_percent": 90.99, + "tx_per_success": 62.62, + "collisions": 303 + }, + { + "seed": 44, + "pdr": 21.05, + "total_sent": 38, + "total_received": 8, + "max_hop": 62, + "avg_hop": 31.75, + "total_transmissions": 510, + "airtime_usage_percent": 92.99, + "tx_per_success": 63.75, + "collisions": 309 + }, + { + "seed": 45, + "pdr": 25.0, + "total_sent": 28, + "total_received": 7, + "max_hop": 59, + "avg_hop": 38.76, + "total_transmissions": 503, + "airtime_usage_percent": 90.93, + "tx_per_success": 71.86, + "collisions": 299 + }, + { + "seed": 46, + "pdr": 22.22, + "total_sent": 36, + "total_received": 8, + "max_hop": 60, + "avg_hop": 42.72, + "total_transmissions": 534, + "airtime_usage_percent": 97.56, + "tx_per_success": 66.75, + "collisions": 330 + }, + { + "seed": 47, + "pdr": 25.0, + "total_sent": 40, + "total_received": 10, + "max_hop": 70, + "avg_hop": 34.68, + "total_transmissions": 553, + "airtime_usage_percent": 100.76, + "tx_per_success": 55.3, + "collisions": 349 + }, + { + "seed": 48, + "pdr": 28.57, + "total_sent": 28, + "total_received": 8, + "max_hop": 76, + "avg_hop": 46.3, + "total_transmissions": 523, + "airtime_usage_percent": 94.88, + "tx_per_success": 65.38, + "collisions": 323 + }, + { + "seed": 49, + "pdr": 20.45, + "total_sent": 44, + "total_received": 9, + "max_hop": 54, + "avg_hop": 36.0, + "total_transmissions": 533, + "airtime_usage_percent": 96.78, + "tx_per_success": 59.22, + "collisions": 317 + } + ], + "random": [ + { + "seed": 0, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 63, + "avg_hop": 27.12, + "total_transmissions": 260, + "airtime_usage_percent": 44.61, + "tx_per_success": 43.33, + "collisions": 106 + }, + { + "seed": 1, + "pdr": 12.5, + "total_sent": 32, + "total_received": 4, + "max_hop": 51, + "avg_hop": 27.33, + "total_transmissions": 293, + "airtime_usage_percent": 51.07, + "tx_per_success": 73.25, + "collisions": 136 + }, + { + "seed": 2, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 6, + "avg_hop": 3.0, + "total_transmissions": 165, + "airtime_usage_percent": 27.07, + "tx_per_success": 55.0, + "collisions": 49 + }, + { + "seed": 3, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 6, + "avg_hop": 3.5, + "total_transmissions": 154, + "airtime_usage_percent": 25.01, + "tx_per_success": 77.0, + "collisions": 46 + }, + { + "seed": 4, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 9, + "avg_hop": 4.57, + "total_transmissions": 191, + "airtime_usage_percent": 31.92, + "tx_per_success": 38.2, + "collisions": 59 + }, + { + "seed": 5, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 110, + "avg_hop": 49.82, + "total_transmissions": 303, + "airtime_usage_percent": 53.26, + "tx_per_success": 151.5, + "collisions": 139 + }, + { + "seed": 6, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 83, + "avg_hop": 38.85, + "total_transmissions": 285, + "airtime_usage_percent": 49.52, + "tx_per_success": 71.25, + "collisions": 122 + }, + { + "seed": 7, + "pdr": 2.94, + "total_sent": 34, + "total_received": 1, + "max_hop": 6, + "avg_hop": 6.0, + "total_transmissions": 172, + "airtime_usage_percent": 28.57, + "tx_per_success": 172.0, + "collisions": 65 + }, + { + "seed": 8, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 5, + "avg_hop": 3.25, + "total_transmissions": 171, + "airtime_usage_percent": 28.23, + "tx_per_success": 57.0, + "collisions": 56 + }, + { + "seed": 9, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 22, + "avg_hop": 10.33, + "total_transmissions": 196, + "airtime_usage_percent": 33.03, + "tx_per_success": 65.33, + "collisions": 84 + }, + { + "seed": 10, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 12, + "avg_hop": 4.67, + "total_transmissions": 183, + "airtime_usage_percent": 30.55, + "tx_per_success": 61.0, + "collisions": 66 + }, + { + "seed": 11, + "pdr": 13.89, + "total_sent": 36, + "total_received": 5, + "max_hop": 45, + "avg_hop": 12.23, + "total_transmissions": 257, + "airtime_usage_percent": 44.28, + "tx_per_success": 51.4, + "collisions": 107 + }, + { + "seed": 12, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 13, + "avg_hop": 6.78, + "total_transmissions": 209, + "airtime_usage_percent": 35.29, + "tx_per_success": 52.25, + "collisions": 83 + }, + { + "seed": 13, + "pdr": 10.0, + "total_sent": 40, + "total_received": 4, + "max_hop": 9, + "avg_hop": 4.0, + "total_transmissions": 204, + "airtime_usage_percent": 34.47, + "tx_per_success": 51.0, + "collisions": 75 + }, + { + "seed": 14, + "pdr": 2.78, + "total_sent": 36, + "total_received": 1, + "max_hop": 8, + "avg_hop": 6.5, + "total_transmissions": 210, + "airtime_usage_percent": 35.96, + "tx_per_success": 210.0, + "collisions": 79 + }, + { + "seed": 15, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 28, + "avg_hop": 9.09, + "total_transmissions": 256, + "airtime_usage_percent": 44.2, + "tx_per_success": 42.67, + "collisions": 111 + }, + { + "seed": 16, + "pdr": 10.53, + "total_sent": 38, + "total_received": 4, + "max_hop": 5, + "avg_hop": 3.0, + "total_transmissions": 190, + "airtime_usage_percent": 31.8, + "tx_per_success": 47.5, + "collisions": 65 + }, + { + "seed": 17, + "pdr": 27.78, + "total_sent": 36, + "total_received": 10, + "max_hop": 93, + "avg_hop": 23.68, + "total_transmissions": 307, + "airtime_usage_percent": 53.52, + "tx_per_success": 30.7, + "collisions": 139 + }, + { + "seed": 18, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 22, + "avg_hop": 9.5, + "total_transmissions": 217, + "airtime_usage_percent": 36.84, + "tx_per_success": 54.25, + "collisions": 84 + }, + { + "seed": 19, + "pdr": 2.94, + "total_sent": 34, + "total_received": 1, + "max_hop": 13, + "avg_hop": 7.0, + "total_transmissions": 200, + "airtime_usage_percent": 33.99, + "tx_per_success": 200.0, + "collisions": 67 + }, + { + "seed": 20, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 96, + "avg_hop": 33.73, + "total_transmissions": 277, + "airtime_usage_percent": 48.12, + "tx_per_success": 92.33, + "collisions": 119 + }, + { + "seed": 21, + "pdr": 14.71, + "total_sent": 34, + "total_received": 5, + "max_hop": 48, + "avg_hop": 16.5, + "total_transmissions": 237, + "airtime_usage_percent": 40.38, + "tx_per_success": 47.4, + "collisions": 103 + }, + { + "seed": 22, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 39, + "avg_hop": 19.7, + "total_transmissions": 203, + "airtime_usage_percent": 34.05, + "tx_per_success": 67.67, + "collisions": 69 + }, + { + "seed": 23, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 22, + "avg_hop": 10.0, + "total_transmissions": 236, + "airtime_usage_percent": 40.44, + "tx_per_success": 47.2, + "collisions": 90 + }, + { + "seed": 24, + "pdr": 17.86, + "total_sent": 28, + "total_received": 5, + "max_hop": 42, + "avg_hop": 14.91, + "total_transmissions": 245, + "airtime_usage_percent": 42.07, + "tx_per_success": 49.0, + "collisions": 112 + }, + { + "seed": 25, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 60, + "avg_hop": 30.18, + "total_transmissions": 300, + "airtime_usage_percent": 52.24, + "tx_per_success": 50.0, + "collisions": 148 + }, + { + "seed": 26, + "pdr": 14.29, + "total_sent": 28, + "total_received": 4, + "max_hop": 26, + "avg_hop": 8.43, + "total_transmissions": 217, + "airtime_usage_percent": 36.87, + "tx_per_success": 54.25, + "collisions": 83 + }, + { + "seed": 27, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 134, + "avg_hop": 50.6, + "total_transmissions": 352, + "airtime_usage_percent": 62.48, + "tx_per_success": 88.0, + "collisions": 172 + }, + { + "seed": 28, + "pdr": 10.53, + "total_sent": 38, + "total_received": 4, + "max_hop": 20, + "avg_hop": 8.17, + "total_transmissions": 223, + "airtime_usage_percent": 38.22, + "tx_per_success": 55.75, + "collisions": 88 + }, + { + "seed": 29, + "pdr": 14.71, + "total_sent": 34, + "total_received": 5, + "max_hop": 18, + "avg_hop": 8.57, + "total_transmissions": 219, + "airtime_usage_percent": 37.3, + "tx_per_success": 43.8, + "collisions": 96 + }, + { + "seed": 30, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 55, + "avg_hop": 16.92, + "total_transmissions": 235, + "airtime_usage_percent": 40.03, + "tx_per_success": 58.75, + "collisions": 97 + }, + { + "seed": 31, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 11, + "avg_hop": 5.83, + "total_transmissions": 189, + "airtime_usage_percent": 31.68, + "tx_per_success": 63.0, + "collisions": 62 + }, + { + "seed": 32, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 20, + "avg_hop": 7.75, + "total_transmissions": 249, + "airtime_usage_percent": 42.66, + "tx_per_success": 35.57, + "collisions": 108 + }, + { + "seed": 33, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 31, + "avg_hop": 11.8, + "total_transmissions": 198, + "airtime_usage_percent": 33.45, + "tx_per_success": 66.0, + "collisions": 75 + }, + { + "seed": 34, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 30, + "avg_hop": 12.56, + "total_transmissions": 249, + "airtime_usage_percent": 42.92, + "tx_per_success": 62.25, + "collisions": 108 + }, + { + "seed": 35, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 33, + "avg_hop": 16.4, + "total_transmissions": 210, + "airtime_usage_percent": 35.63, + "tx_per_success": 70.0, + "collisions": 80 + }, + { + "seed": 36, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 42, + "avg_hop": 19.38, + "total_transmissions": 252, + "airtime_usage_percent": 43.61, + "tx_per_success": 84.0, + "collisions": 98 + }, + { + "seed": 37, + "pdr": 7.14, + "total_sent": 28, + "total_received": 2, + "max_hop": 81, + "avg_hop": 45.78, + "total_transmissions": 249, + "airtime_usage_percent": 42.96, + "tx_per_success": 124.5, + "collisions": 100 + }, + { + "seed": 38, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 31, + "avg_hop": 16.38, + "total_transmissions": 228, + "airtime_usage_percent": 39.04, + "tx_per_success": 114.0, + "collisions": 94 + }, + { + "seed": 39, + "pdr": 10.0, + "total_sent": 30, + "total_received": 3, + "max_hop": 3, + "avg_hop": 2.0, + "total_transmissions": 185, + "airtime_usage_percent": 30.97, + "tx_per_success": 61.67, + "collisions": 64 + }, + { + "seed": 40, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 60, + "avg_hop": 18.33, + "total_transmissions": 236, + "airtime_usage_percent": 40.44, + "tx_per_success": 59.0, + "collisions": 87 + }, + { + "seed": 41, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 58, + "avg_hop": 27.64, + "total_transmissions": 238, + "airtime_usage_percent": 40.68, + "tx_per_success": 59.5, + "collisions": 94 + }, + { + "seed": 42, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 30, + "avg_hop": 12.3, + "total_transmissions": 203, + "airtime_usage_percent": 33.94, + "tx_per_success": 33.83, + "collisions": 79 + }, + { + "seed": 43, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 16, + "avg_hop": 6.25, + "total_transmissions": 179, + "airtime_usage_percent": 29.78, + "tx_per_success": 59.67, + "collisions": 60 + }, + { + "seed": 44, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 44, + "avg_hop": 17.42, + "total_transmissions": 273, + "airtime_usage_percent": 47.42, + "tx_per_success": 54.6, + "collisions": 122 + }, + { + "seed": 45, + "pdr": 25.0, + "total_sent": 28, + "total_received": 7, + "max_hop": 64, + "avg_hop": 14.06, + "total_transmissions": 271, + "airtime_usage_percent": 46.7, + "tx_per_success": 38.71, + "collisions": 120 + }, + { + "seed": 46, + "pdr": 12.5, + "total_sent": 40, + "total_received": 5, + "max_hop": 5, + "avg_hop": 2.67, + "total_transmissions": 213, + "airtime_usage_percent": 36.21, + "tx_per_success": 42.6, + "collisions": 82 + }, + { + "seed": 47, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 6, + "avg_hop": 3.0, + "total_transmissions": 183, + "airtime_usage_percent": 30.59, + "tx_per_success": 91.5, + "collisions": 63 + }, + { + "seed": 48, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 14, + "avg_hop": 4.33, + "total_transmissions": 189, + "airtime_usage_percent": 31.45, + "tx_per_success": 63.0, + "collisions": 67 + }, + { + "seed": 49, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 66, + "avg_hop": 26.31, + "total_transmissions": 266, + "airtime_usage_percent": 45.77, + "tx_per_success": 44.33, + "collisions": 109 + } + ] +} \ No newline at end of file diff --git a/results/flooding/all_seeds.json b/results/flooding/all_seeds.json new file mode 100644 index 0000000..fa31f84 --- /dev/null +++ b/results/flooding/all_seeds.json @@ -0,0 +1,602 @@ +[ + { + "seed": 0, + "pdr": 14.71, + "total_sent": 34, + "total_received": 5, + "max_hop": 55, + "avg_hop": 37.21, + "total_transmissions": 484, + "airtime_usage_percent": 88.07, + "tx_per_success": 96.8, + "collisions": 282 + }, + { + "seed": 1, + "pdr": 26.67, + "total_sent": 30, + "total_received": 8, + "max_hop": 58, + "avg_hop": 35.87, + "total_transmissions": 524, + "airtime_usage_percent": 95.22, + "tx_per_success": 65.5, + "collisions": 319 + }, + { + "seed": 2, + "pdr": 36.67, + "total_sent": 30, + "total_received": 11, + "max_hop": 50, + "avg_hop": 23.78, + "total_transmissions": 514, + "airtime_usage_percent": 93.65, + "tx_per_success": 46.73, + "collisions": 317 + }, + { + "seed": 3, + "pdr": 23.68, + "total_sent": 38, + "total_received": 9, + "max_hop": 68, + "avg_hop": 42.0, + "total_transmissions": 534, + "airtime_usage_percent": 96.97, + "tx_per_success": 59.33, + "collisions": 326 + }, + { + "seed": 4, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 74, + "avg_hop": 48.94, + "total_transmissions": 540, + "airtime_usage_percent": 98.54, + "tx_per_success": 90.0, + "collisions": 326 + }, + { + "seed": 5, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 59, + "avg_hop": 44.53, + "total_transmissions": 542, + "airtime_usage_percent": 98.89, + "tx_per_success": 90.33, + "collisions": 340 + }, + { + "seed": 6, + "pdr": 26.32, + "total_sent": 38, + "total_received": 10, + "max_hop": 70, + "avg_hop": 42.2, + "total_transmissions": 569, + "airtime_usage_percent": 103.23, + "tx_per_success": 56.9, + "collisions": 359 + }, + { + "seed": 7, + "pdr": 26.67, + "total_sent": 30, + "total_received": 8, + "max_hop": 63, + "avg_hop": 37.39, + "total_transmissions": 529, + "airtime_usage_percent": 96.08, + "tx_per_success": 66.12, + "collisions": 334 + }, + { + "seed": 8, + "pdr": 20.0, + "total_sent": 40, + "total_received": 8, + "max_hop": 58, + "avg_hop": 34.81, + "total_transmissions": 531, + "airtime_usage_percent": 96.32, + "tx_per_success": 66.38, + "collisions": 330 + }, + { + "seed": 9, + "pdr": 27.5, + "total_sent": 40, + "total_received": 11, + "max_hop": 63, + "avg_hop": 31.78, + "total_transmissions": 518, + "airtime_usage_percent": 93.73, + "tx_per_success": 47.09, + "collisions": 324 + }, + { + "seed": 10, + "pdr": 21.88, + "total_sent": 32, + "total_received": 7, + "max_hop": 66, + "avg_hop": 47.41, + "total_transmissions": 514, + "airtime_usage_percent": 93.25, + "tx_per_success": 73.43, + "collisions": 313 + }, + { + "seed": 11, + "pdr": 26.47, + "total_sent": 34, + "total_received": 9, + "max_hop": 60, + "avg_hop": 34.56, + "total_transmissions": 512, + "airtime_usage_percent": 93.19, + "tx_per_success": 56.89, + "collisions": 311 + }, + { + "seed": 12, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 69, + "avg_hop": 42.88, + "total_transmissions": 543, + "airtime_usage_percent": 99.34, + "tx_per_success": 67.88, + "collisions": 339 + }, + { + "seed": 13, + "pdr": 26.32, + "total_sent": 38, + "total_received": 10, + "max_hop": 61, + "avg_hop": 34.07, + "total_transmissions": 558, + "airtime_usage_percent": 101.43, + "tx_per_success": 55.8, + "collisions": 345 + }, + { + "seed": 14, + "pdr": 26.47, + "total_sent": 34, + "total_received": 9, + "max_hop": 62, + "avg_hop": 40.73, + "total_transmissions": 550, + "airtime_usage_percent": 100.29, + "tx_per_success": 61.11, + "collisions": 355 + }, + { + "seed": 15, + "pdr": 28.57, + "total_sent": 28, + "total_received": 8, + "max_hop": 70, + "avg_hop": 42.6, + "total_transmissions": 535, + "airtime_usage_percent": 97.53, + "tx_per_success": 66.88, + "collisions": 335 + }, + { + "seed": 16, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 66, + "avg_hop": 36.68, + "total_transmissions": 565, + "airtime_usage_percent": 103.23, + "tx_per_success": 56.5, + "collisions": 357 + }, + { + "seed": 17, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 66, + "avg_hop": 35.71, + "total_transmissions": 529, + "airtime_usage_percent": 96.59, + "tx_per_success": 75.57, + "collisions": 328 + }, + { + "seed": 18, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 60, + "avg_hop": 40.37, + "total_transmissions": 525, + "airtime_usage_percent": 95.71, + "tx_per_success": 75.0, + "collisions": 323 + }, + { + "seed": 19, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 68, + "avg_hop": 43.95, + "total_transmissions": 530, + "airtime_usage_percent": 96.42, + "tx_per_success": 75.71, + "collisions": 323 + }, + { + "seed": 20, + "pdr": 20.0, + "total_sent": 30, + "total_received": 6, + "max_hop": 62, + "avg_hop": 48.11, + "total_transmissions": 539, + "airtime_usage_percent": 98.27, + "tx_per_success": 89.83, + "collisions": 338 + }, + { + "seed": 21, + "pdr": 15.0, + "total_sent": 40, + "total_received": 6, + "max_hop": 62, + "avg_hop": 37.65, + "total_transmissions": 551, + "airtime_usage_percent": 100.56, + "tx_per_success": 91.83, + "collisions": 343 + }, + { + "seed": 22, + "pdr": 28.57, + "total_sent": 28, + "total_received": 8, + "max_hop": 59, + "avg_hop": 41.95, + "total_transmissions": 502, + "airtime_usage_percent": 91.33, + "tx_per_success": 62.75, + "collisions": 299 + }, + { + "seed": 23, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 63, + "avg_hop": 40.62, + "total_transmissions": 515, + "airtime_usage_percent": 93.15, + "tx_per_success": 51.5, + "collisions": 312 + }, + { + "seed": 24, + "pdr": 27.78, + "total_sent": 36, + "total_received": 10, + "max_hop": 60, + "avg_hop": 36.81, + "total_transmissions": 551, + "airtime_usage_percent": 100.19, + "tx_per_success": 55.1, + "collisions": 353 + }, + { + "seed": 25, + "pdr": 20.59, + "total_sent": 34, + "total_received": 7, + "max_hop": 56, + "avg_hop": 29.71, + "total_transmissions": 498, + "airtime_usage_percent": 90.0, + "tx_per_success": 71.14, + "collisions": 309 + }, + { + "seed": 26, + "pdr": 23.08, + "total_sent": 26, + "total_received": 6, + "max_hop": 51, + "avg_hop": 29.89, + "total_transmissions": 455, + "airtime_usage_percent": 81.46, + "tx_per_success": 75.83, + "collisions": 265 + }, + { + "seed": 27, + "pdr": 21.05, + "total_sent": 38, + "total_received": 8, + "max_hop": 68, + "avg_hop": 39.12, + "total_transmissions": 539, + "airtime_usage_percent": 98.01, + "tx_per_success": 67.38, + "collisions": 331 + }, + { + "seed": 28, + "pdr": 25.0, + "total_sent": 36, + "total_received": 9, + "max_hop": 56, + "avg_hop": 31.26, + "total_transmissions": 549, + "airtime_usage_percent": 100.02, + "tx_per_success": 61.0, + "collisions": 350 + }, + { + "seed": 29, + "pdr": 31.25, + "total_sent": 32, + "total_received": 10, + "max_hop": 53, + "avg_hop": 31.94, + "total_transmissions": 560, + "airtime_usage_percent": 101.52, + "tx_per_success": 56.0, + "collisions": 356 + }, + { + "seed": 30, + "pdr": 20.59, + "total_sent": 34, + "total_received": 7, + "max_hop": 62, + "avg_hop": 34.73, + "total_transmissions": 545, + "airtime_usage_percent": 99.8, + "tx_per_success": 77.86, + "collisions": 336 + }, + { + "seed": 31, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 54, + "avg_hop": 38.81, + "total_transmissions": 528, + "airtime_usage_percent": 96.51, + "tx_per_success": 66.0, + "collisions": 331 + }, + { + "seed": 32, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 66, + "avg_hop": 40.65, + "total_transmissions": 522, + "airtime_usage_percent": 95.16, + "tx_per_success": 65.25, + "collisions": 319 + }, + { + "seed": 33, + "pdr": 25.0, + "total_sent": 36, + "total_received": 9, + "max_hop": 74, + "avg_hop": 44.88, + "total_transmissions": 520, + "airtime_usage_percent": 94.3, + "tx_per_success": 57.78, + "collisions": 310 + }, + { + "seed": 34, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 69, + "avg_hop": 48.8, + "total_transmissions": 583, + "airtime_usage_percent": 106.38, + "tx_per_success": 58.3, + "collisions": 368 + }, + { + "seed": 35, + "pdr": 29.41, + "total_sent": 34, + "total_received": 10, + "max_hop": 64, + "avg_hop": 36.63, + "total_transmissions": 542, + "airtime_usage_percent": 98.15, + "tx_per_success": 54.2, + "collisions": 345 + }, + { + "seed": 36, + "pdr": 30.0, + "total_sent": 30, + "total_received": 9, + "max_hop": 62, + "avg_hop": 31.0, + "total_transmissions": 550, + "airtime_usage_percent": 100.44, + "tx_per_success": 61.11, + "collisions": 337 + }, + { + "seed": 37, + "pdr": 23.53, + "total_sent": 34, + "total_received": 8, + "max_hop": 57, + "avg_hop": 42.62, + "total_transmissions": 526, + "airtime_usage_percent": 95.75, + "tx_per_success": 65.75, + "collisions": 333 + }, + { + "seed": 38, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 70, + "avg_hop": 48.16, + "total_transmissions": 546, + "airtime_usage_percent": 99.81, + "tx_per_success": 78.0, + "collisions": 341 + }, + { + "seed": 39, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 66, + "avg_hop": 42.0, + "total_transmissions": 545, + "airtime_usage_percent": 99.54, + "tx_per_success": 77.86, + "collisions": 340 + }, + { + "seed": 40, + "pdr": 22.22, + "total_sent": 36, + "total_received": 8, + "max_hop": 65, + "avg_hop": 40.74, + "total_transmissions": 542, + "airtime_usage_percent": 98.63, + "tx_per_success": 67.75, + "collisions": 333 + }, + { + "seed": 41, + "pdr": 18.75, + "total_sent": 32, + "total_received": 6, + "max_hop": 62, + "avg_hop": 41.94, + "total_transmissions": 492, + "airtime_usage_percent": 89.4, + "tx_per_success": 82.0, + "collisions": 290 + }, + { + "seed": 42, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 62, + "avg_hop": 46.07, + "total_transmissions": 521, + "airtime_usage_percent": 95.16, + "tx_per_success": 86.83, + "collisions": 320 + }, + { + "seed": 43, + "pdr": 23.53, + "total_sent": 34, + "total_received": 8, + "max_hop": 54, + "avg_hop": 33.68, + "total_transmissions": 501, + "airtime_usage_percent": 90.99, + "tx_per_success": 62.62, + "collisions": 303 + }, + { + "seed": 44, + "pdr": 21.05, + "total_sent": 38, + "total_received": 8, + "max_hop": 62, + "avg_hop": 31.75, + "total_transmissions": 510, + "airtime_usage_percent": 92.99, + "tx_per_success": 63.75, + "collisions": 309 + }, + { + "seed": 45, + "pdr": 25.0, + "total_sent": 28, + "total_received": 7, + "max_hop": 59, + "avg_hop": 38.76, + "total_transmissions": 503, + "airtime_usage_percent": 90.93, + "tx_per_success": 71.86, + "collisions": 299 + }, + { + "seed": 46, + "pdr": 22.22, + "total_sent": 36, + "total_received": 8, + "max_hop": 60, + "avg_hop": 42.72, + "total_transmissions": 534, + "airtime_usage_percent": 97.56, + "tx_per_success": 66.75, + "collisions": 330 + }, + { + "seed": 47, + "pdr": 25.0, + "total_sent": 40, + "total_received": 10, + "max_hop": 70, + "avg_hop": 34.68, + "total_transmissions": 553, + "airtime_usage_percent": 100.76, + "tx_per_success": 55.3, + "collisions": 349 + }, + { + "seed": 48, + "pdr": 28.57, + "total_sent": 28, + "total_received": 8, + "max_hop": 76, + "avg_hop": 46.3, + "total_transmissions": 523, + "airtime_usage_percent": 94.88, + "tx_per_success": 65.38, + "collisions": 323 + }, + { + "seed": 49, + "pdr": 20.45, + "total_sent": 44, + "total_received": 9, + "max_hop": 54, + "avg_hop": 36.0, + "total_transmissions": 533, + "airtime_usage_percent": 96.78, + "tx_per_success": 59.22, + "collisions": 317 + } +] \ No newline at end of file diff --git a/results/gradient/all_seeds.json b/results/gradient/all_seeds.json new file mode 100644 index 0000000..b18a11b --- /dev/null +++ b/results/gradient/all_seeds.json @@ -0,0 +1,602 @@ +[ + { + "seed": 0, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 4, + "avg_hop": 2.33, + "total_transmissions": 170, + "airtime_usage_percent": 28.11, + "tx_per_success": 85.0, + "collisions": 56 + }, + { + "seed": 1, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 18, + "avg_hop": 9.25, + "total_transmissions": 190, + "airtime_usage_percent": 31.94, + "tx_per_success": 47.5, + "collisions": 68 + }, + { + "seed": 2, + "pdr": 7.89, + "total_sent": 38, + "total_received": 3, + "max_hop": 37, + "avg_hop": 15.2, + "total_transmissions": 218, + "airtime_usage_percent": 37.25, + "tx_per_success": 72.67, + "collisions": 87 + }, + { + "seed": 3, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 13, + "avg_hop": 7.0, + "total_transmissions": 201, + "airtime_usage_percent": 34.18, + "tx_per_success": 100.5, + "collisions": 73 + }, + { + "seed": 4, + "pdr": 13.89, + "total_sent": 36, + "total_received": 5, + "max_hop": 29, + "avg_hop": 12.69, + "total_transmissions": 243, + "airtime_usage_percent": 41.28, + "tx_per_success": 48.6, + "collisions": 94 + }, + { + "seed": 5, + "pdr": 5.26, + "total_sent": 38, + "total_received": 2, + "max_hop": 23, + "avg_hop": 12.33, + "total_transmissions": 202, + "airtime_usage_percent": 34.23, + "tx_per_success": 101.0, + "collisions": 74 + }, + { + "seed": 6, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 105, + "avg_hop": 54.61, + "total_transmissions": 322, + "airtime_usage_percent": 56.35, + "tx_per_success": 80.5, + "collisions": 150 + }, + { + "seed": 7, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 4, + "avg_hop": 2.25, + "total_transmissions": 168, + "airtime_usage_percent": 27.65, + "tx_per_success": 56.0, + "collisions": 63 + }, + { + "seed": 8, + "pdr": 7.14, + "total_sent": 42, + "total_received": 3, + "max_hop": 64, + "avg_hop": 33.22, + "total_transmissions": 262, + "airtime_usage_percent": 45.43, + "tx_per_success": 87.33, + "collisions": 108 + }, + { + "seed": 9, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 78, + "avg_hop": 30.33, + "total_transmissions": 282, + "airtime_usage_percent": 48.94, + "tx_per_success": 56.4, + "collisions": 124 + }, + { + "seed": 10, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 24, + "avg_hop": 7.22, + "total_transmissions": 241, + "airtime_usage_percent": 41.44, + "tx_per_success": 48.2, + "collisions": 102 + }, + { + "seed": 11, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 31, + "avg_hop": 17.0, + "total_transmissions": 221, + "airtime_usage_percent": 37.54, + "tx_per_success": 73.67, + "collisions": 83 + }, + { + "seed": 12, + "pdr": 7.89, + "total_sent": 38, + "total_received": 3, + "max_hop": 57, + "avg_hop": 31.18, + "total_transmissions": 262, + "airtime_usage_percent": 45.4, + "tx_per_success": 87.33, + "collisions": 117 + }, + { + "seed": 13, + "pdr": 16.67, + "total_sent": 42, + "total_received": 7, + "max_hop": 74, + "avg_hop": 26.31, + "total_transmissions": 296, + "airtime_usage_percent": 51.54, + "tx_per_success": 42.29, + "collisions": 138 + }, + { + "seed": 14, + "pdr": 2.63, + "total_sent": 38, + "total_received": 1, + "max_hop": 85, + "avg_hop": 37.91, + "total_transmissions": 270, + "airtime_usage_percent": 46.87, + "tx_per_success": 270.0, + "collisions": 116 + }, + { + "seed": 15, + "pdr": 20.0, + "total_sent": 30, + "total_received": 6, + "max_hop": 51, + "avg_hop": 14.33, + "total_transmissions": 272, + "airtime_usage_percent": 47.22, + "tx_per_success": 45.33, + "collisions": 113 + }, + { + "seed": 16, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 13, + "avg_hop": 5.18, + "total_transmissions": 219, + "airtime_usage_percent": 36.89, + "tx_per_success": 36.5, + "collisions": 86 + }, + { + "seed": 17, + "pdr": 15.0, + "total_sent": 40, + "total_received": 6, + "max_hop": 14, + "avg_hop": 4.71, + "total_transmissions": 190, + "airtime_usage_percent": 31.72, + "tx_per_success": 31.67, + "collisions": 62 + }, + { + "seed": 18, + "pdr": 7.14, + "total_sent": 42, + "total_received": 3, + "max_hop": 45, + "avg_hop": 21.0, + "total_transmissions": 226, + "airtime_usage_percent": 38.58, + "tx_per_success": 75.33, + "collisions": 90 + }, + { + "seed": 19, + "pdr": 12.5, + "total_sent": 32, + "total_received": 4, + "max_hop": 29, + "avg_hop": 16.83, + "total_transmissions": 216, + "airtime_usage_percent": 36.83, + "tx_per_success": 54.0, + "collisions": 88 + }, + { + "seed": 20, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 18, + "avg_hop": 12.5, + "total_transmissions": 199, + "airtime_usage_percent": 33.65, + "tx_per_success": 66.33, + "collisions": 78 + }, + { + "seed": 21, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 20, + "avg_hop": 7.14, + "total_transmissions": 223, + "airtime_usage_percent": 38.03, + "tx_per_success": 37.17, + "collisions": 89 + }, + { + "seed": 22, + "pdr": 0.0, + "total_sent": 36, + "total_received": 0, + "max_hop": 0, + "avg_hop": 0.0, + "total_transmissions": 167, + "airtime_usage_percent": 27.79, + "tx_per_success": -1, + "collisions": 53 + }, + { + "seed": 23, + "pdr": 7.89, + "total_sent": 38, + "total_received": 3, + "max_hop": 36, + "avg_hop": 15.0, + "total_transmissions": 203, + "airtime_usage_percent": 34.27, + "tx_per_success": 67.67, + "collisions": 70 + }, + { + "seed": 24, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 14, + "avg_hop": 6.67, + "total_transmissions": 187, + "airtime_usage_percent": 31.4, + "tx_per_success": 62.33, + "collisions": 74 + }, + { + "seed": 25, + "pdr": 20.59, + "total_sent": 34, + "total_received": 7, + "max_hop": 75, + "avg_hop": 24.29, + "total_transmissions": 277, + "airtime_usage_percent": 48.01, + "tx_per_success": 39.57, + "collisions": 136 + }, + { + "seed": 26, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 22, + "avg_hop": 7.17, + "total_transmissions": 205, + "airtime_usage_percent": 34.26, + "tx_per_success": 41.0, + "collisions": 84 + }, + { + "seed": 27, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 28, + "avg_hop": 8.83, + "total_transmissions": 215, + "airtime_usage_percent": 36.63, + "tx_per_success": 53.75, + "collisions": 83 + }, + { + "seed": 28, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 38, + "avg_hop": 15.82, + "total_transmissions": 292, + "airtime_usage_percent": 50.69, + "tx_per_success": 41.71, + "collisions": 130 + }, + { + "seed": 29, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 23, + "avg_hop": 14.67, + "total_transmissions": 205, + "airtime_usage_percent": 34.88, + "tx_per_success": 102.5, + "collisions": 84 + }, + { + "seed": 30, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 26, + "avg_hop": 10.1, + "total_transmissions": 206, + "airtime_usage_percent": 34.52, + "tx_per_success": 41.2, + "collisions": 75 + }, + { + "seed": 31, + "pdr": 25.0, + "total_sent": 32, + "total_received": 8, + "max_hop": 19, + "avg_hop": 7.15, + "total_transmissions": 236, + "airtime_usage_percent": 40.29, + "tx_per_success": 29.5, + "collisions": 91 + }, + { + "seed": 32, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 56, + "avg_hop": 19.42, + "total_transmissions": 323, + "airtime_usage_percent": 57.02, + "tx_per_success": 53.83, + "collisions": 153 + }, + { + "seed": 33, + "pdr": 13.33, + "total_sent": 30, + "total_received": 4, + "max_hop": 37, + "avg_hop": 17.89, + "total_transmissions": 230, + "airtime_usage_percent": 39.39, + "tx_per_success": 57.5, + "collisions": 92 + }, + { + "seed": 34, + "pdr": 18.75, + "total_sent": 32, + "total_received": 6, + "max_hop": 11, + "avg_hop": 4.33, + "total_transmissions": 190, + "airtime_usage_percent": 31.68, + "tx_per_success": 31.67, + "collisions": 65 + }, + { + "seed": 35, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 19, + "avg_hop": 9.22, + "total_transmissions": 234, + "airtime_usage_percent": 40.09, + "tx_per_success": 58.5, + "collisions": 90 + }, + { + "seed": 36, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 13, + "avg_hop": 5.57, + "total_transmissions": 214, + "airtime_usage_percent": 36.37, + "tx_per_success": 35.67, + "collisions": 80 + }, + { + "seed": 37, + "pdr": 10.0, + "total_sent": 30, + "total_received": 3, + "max_hop": 30, + "avg_hop": 12.71, + "total_transmissions": 197, + "airtime_usage_percent": 33.08, + "tx_per_success": 65.67, + "collisions": 75 + }, + { + "seed": 38, + "pdr": 13.89, + "total_sent": 36, + "total_received": 5, + "max_hop": 44, + "avg_hop": 12.29, + "total_transmissions": 242, + "airtime_usage_percent": 41.9, + "tx_per_success": 48.4, + "collisions": 100 + }, + { + "seed": 39, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 46, + "avg_hop": 17.33, + "total_transmissions": 227, + "airtime_usage_percent": 38.81, + "tx_per_success": 113.5, + "collisions": 92 + }, + { + "seed": 40, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 68, + "avg_hop": 29.43, + "total_transmissions": 257, + "airtime_usage_percent": 44.1, + "tx_per_success": 64.25, + "collisions": 109 + }, + { + "seed": 41, + "pdr": 6.67, + "total_sent": 30, + "total_received": 2, + "max_hop": 7, + "avg_hop": 5.33, + "total_transmissions": 179, + "airtime_usage_percent": 29.81, + "tx_per_success": 89.5, + "collisions": 51 + }, + { + "seed": 42, + "pdr": 18.75, + "total_sent": 32, + "total_received": 6, + "max_hop": 20, + "avg_hop": 7.78, + "total_transmissions": 217, + "airtime_usage_percent": 36.84, + "tx_per_success": 36.17, + "collisions": 92 + }, + { + "seed": 43, + "pdr": 10.53, + "total_sent": 38, + "total_received": 4, + "max_hop": 113, + "avg_hop": 48.54, + "total_transmissions": 310, + "airtime_usage_percent": 54.39, + "tx_per_success": 77.5, + "collisions": 141 + }, + { + "seed": 44, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 22, + "avg_hop": 5.91, + "total_transmissions": 248, + "airtime_usage_percent": 42.61, + "tx_per_success": 41.33, + "collisions": 100 + }, + { + "seed": 45, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 38, + "avg_hop": 13.4, + "total_transmissions": 234, + "airtime_usage_percent": 39.94, + "tx_per_success": 46.8, + "collisions": 92 + }, + { + "seed": 46, + "pdr": 18.42, + "total_sent": 38, + "total_received": 7, + "max_hop": 41, + "avg_hop": 16.31, + "total_transmissions": 297, + "airtime_usage_percent": 51.8, + "tx_per_success": 42.43, + "collisions": 134 + }, + { + "seed": 47, + "pdr": 12.5, + "total_sent": 32, + "total_received": 4, + "max_hop": 23, + "avg_hop": 8.75, + "total_transmissions": 219, + "airtime_usage_percent": 37.41, + "tx_per_success": 54.75, + "collisions": 84 + }, + { + "seed": 48, + "pdr": 13.33, + "total_sent": 30, + "total_received": 4, + "max_hop": 76, + "avg_hop": 26.55, + "total_transmissions": 255, + "airtime_usage_percent": 43.97, + "tx_per_success": 63.75, + "collisions": 106 + }, + { + "seed": 49, + "pdr": 10.0, + "total_sent": 40, + "total_received": 4, + "max_hop": 25, + "avg_hop": 9.17, + "total_transmissions": 225, + "airtime_usage_percent": 38.57, + "tx_per_success": 56.25, + "collisions": 85 + } +] \ No newline at end of file diff --git a/results/random/all_seeds.json b/results/random/all_seeds.json new file mode 100644 index 0000000..2c96bc7 --- /dev/null +++ b/results/random/all_seeds.json @@ -0,0 +1,602 @@ +[ + { + "seed": 0, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 63, + "avg_hop": 27.12, + "total_transmissions": 260, + "airtime_usage_percent": 44.61, + "tx_per_success": 43.33, + "collisions": 106 + }, + { + "seed": 1, + "pdr": 12.5, + "total_sent": 32, + "total_received": 4, + "max_hop": 51, + "avg_hop": 27.33, + "total_transmissions": 293, + "airtime_usage_percent": 51.07, + "tx_per_success": 73.25, + "collisions": 136 + }, + { + "seed": 2, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 6, + "avg_hop": 3.0, + "total_transmissions": 165, + "airtime_usage_percent": 27.07, + "tx_per_success": 55.0, + "collisions": 49 + }, + { + "seed": 3, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 6, + "avg_hop": 3.5, + "total_transmissions": 154, + "airtime_usage_percent": 25.01, + "tx_per_success": 77.0, + "collisions": 46 + }, + { + "seed": 4, + "pdr": 15.62, + "total_sent": 32, + "total_received": 5, + "max_hop": 9, + "avg_hop": 4.57, + "total_transmissions": 191, + "airtime_usage_percent": 31.92, + "tx_per_success": 38.2, + "collisions": 59 + }, + { + "seed": 5, + "pdr": 5.56, + "total_sent": 36, + "total_received": 2, + "max_hop": 110, + "avg_hop": 49.82, + "total_transmissions": 303, + "airtime_usage_percent": 53.26, + "tx_per_success": 151.5, + "collisions": 139 + }, + { + "seed": 6, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 83, + "avg_hop": 38.85, + "total_transmissions": 285, + "airtime_usage_percent": 49.52, + "tx_per_success": 71.25, + "collisions": 122 + }, + { + "seed": 7, + "pdr": 2.94, + "total_sent": 34, + "total_received": 1, + "max_hop": 6, + "avg_hop": 6.0, + "total_transmissions": 172, + "airtime_usage_percent": 28.57, + "tx_per_success": 172.0, + "collisions": 65 + }, + { + "seed": 8, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 5, + "avg_hop": 3.25, + "total_transmissions": 171, + "airtime_usage_percent": 28.23, + "tx_per_success": 57.0, + "collisions": 56 + }, + { + "seed": 9, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 22, + "avg_hop": 10.33, + "total_transmissions": 196, + "airtime_usage_percent": 33.03, + "tx_per_success": 65.33, + "collisions": 84 + }, + { + "seed": 10, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 12, + "avg_hop": 4.67, + "total_transmissions": 183, + "airtime_usage_percent": 30.55, + "tx_per_success": 61.0, + "collisions": 66 + }, + { + "seed": 11, + "pdr": 13.89, + "total_sent": 36, + "total_received": 5, + "max_hop": 45, + "avg_hop": 12.23, + "total_transmissions": 257, + "airtime_usage_percent": 44.28, + "tx_per_success": 51.4, + "collisions": 107 + }, + { + "seed": 12, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 13, + "avg_hop": 6.78, + "total_transmissions": 209, + "airtime_usage_percent": 35.29, + "tx_per_success": 52.25, + "collisions": 83 + }, + { + "seed": 13, + "pdr": 10.0, + "total_sent": 40, + "total_received": 4, + "max_hop": 9, + "avg_hop": 4.0, + "total_transmissions": 204, + "airtime_usage_percent": 34.47, + "tx_per_success": 51.0, + "collisions": 75 + }, + { + "seed": 14, + "pdr": 2.78, + "total_sent": 36, + "total_received": 1, + "max_hop": 8, + "avg_hop": 6.5, + "total_transmissions": 210, + "airtime_usage_percent": 35.96, + "tx_per_success": 210.0, + "collisions": 79 + }, + { + "seed": 15, + "pdr": 16.67, + "total_sent": 36, + "total_received": 6, + "max_hop": 28, + "avg_hop": 9.09, + "total_transmissions": 256, + "airtime_usage_percent": 44.2, + "tx_per_success": 42.67, + "collisions": 111 + }, + { + "seed": 16, + "pdr": 10.53, + "total_sent": 38, + "total_received": 4, + "max_hop": 5, + "avg_hop": 3.0, + "total_transmissions": 190, + "airtime_usage_percent": 31.8, + "tx_per_success": 47.5, + "collisions": 65 + }, + { + "seed": 17, + "pdr": 27.78, + "total_sent": 36, + "total_received": 10, + "max_hop": 93, + "avg_hop": 23.68, + "total_transmissions": 307, + "airtime_usage_percent": 53.52, + "tx_per_success": 30.7, + "collisions": 139 + }, + { + "seed": 18, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 22, + "avg_hop": 9.5, + "total_transmissions": 217, + "airtime_usage_percent": 36.84, + "tx_per_success": 54.25, + "collisions": 84 + }, + { + "seed": 19, + "pdr": 2.94, + "total_sent": 34, + "total_received": 1, + "max_hop": 13, + "avg_hop": 7.0, + "total_transmissions": 200, + "airtime_usage_percent": 33.99, + "tx_per_success": 200.0, + "collisions": 67 + }, + { + "seed": 20, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 96, + "avg_hop": 33.73, + "total_transmissions": 277, + "airtime_usage_percent": 48.12, + "tx_per_success": 92.33, + "collisions": 119 + }, + { + "seed": 21, + "pdr": 14.71, + "total_sent": 34, + "total_received": 5, + "max_hop": 48, + "avg_hop": 16.5, + "total_transmissions": 237, + "airtime_usage_percent": 40.38, + "tx_per_success": 47.4, + "collisions": 103 + }, + { + "seed": 22, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 39, + "avg_hop": 19.7, + "total_transmissions": 203, + "airtime_usage_percent": 34.05, + "tx_per_success": 67.67, + "collisions": 69 + }, + { + "seed": 23, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 22, + "avg_hop": 10.0, + "total_transmissions": 236, + "airtime_usage_percent": 40.44, + "tx_per_success": 47.2, + "collisions": 90 + }, + { + "seed": 24, + "pdr": 17.86, + "total_sent": 28, + "total_received": 5, + "max_hop": 42, + "avg_hop": 14.91, + "total_transmissions": 245, + "airtime_usage_percent": 42.07, + "tx_per_success": 49.0, + "collisions": 112 + }, + { + "seed": 25, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 60, + "avg_hop": 30.18, + "total_transmissions": 300, + "airtime_usage_percent": 52.24, + "tx_per_success": 50.0, + "collisions": 148 + }, + { + "seed": 26, + "pdr": 14.29, + "total_sent": 28, + "total_received": 4, + "max_hop": 26, + "avg_hop": 8.43, + "total_transmissions": 217, + "airtime_usage_percent": 36.87, + "tx_per_success": 54.25, + "collisions": 83 + }, + { + "seed": 27, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 134, + "avg_hop": 50.6, + "total_transmissions": 352, + "airtime_usage_percent": 62.48, + "tx_per_success": 88.0, + "collisions": 172 + }, + { + "seed": 28, + "pdr": 10.53, + "total_sent": 38, + "total_received": 4, + "max_hop": 20, + "avg_hop": 8.17, + "total_transmissions": 223, + "airtime_usage_percent": 38.22, + "tx_per_success": 55.75, + "collisions": 88 + }, + { + "seed": 29, + "pdr": 14.71, + "total_sent": 34, + "total_received": 5, + "max_hop": 18, + "avg_hop": 8.57, + "total_transmissions": 219, + "airtime_usage_percent": 37.3, + "tx_per_success": 43.8, + "collisions": 96 + }, + { + "seed": 30, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 55, + "avg_hop": 16.92, + "total_transmissions": 235, + "airtime_usage_percent": 40.03, + "tx_per_success": 58.75, + "collisions": 97 + }, + { + "seed": 31, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 11, + "avg_hop": 5.83, + "total_transmissions": 189, + "airtime_usage_percent": 31.68, + "tx_per_success": 63.0, + "collisions": 62 + }, + { + "seed": 32, + "pdr": 19.44, + "total_sent": 36, + "total_received": 7, + "max_hop": 20, + "avg_hop": 7.75, + "total_transmissions": 249, + "airtime_usage_percent": 42.66, + "tx_per_success": 35.57, + "collisions": 108 + }, + { + "seed": 33, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 31, + "avg_hop": 11.8, + "total_transmissions": 198, + "airtime_usage_percent": 33.45, + "tx_per_success": 66.0, + "collisions": 75 + }, + { + "seed": 34, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 30, + "avg_hop": 12.56, + "total_transmissions": 249, + "airtime_usage_percent": 42.92, + "tx_per_success": 62.25, + "collisions": 108 + }, + { + "seed": 35, + "pdr": 9.38, + "total_sent": 32, + "total_received": 3, + "max_hop": 33, + "avg_hop": 16.4, + "total_transmissions": 210, + "airtime_usage_percent": 35.63, + "tx_per_success": 70.0, + "collisions": 80 + }, + { + "seed": 36, + "pdr": 8.33, + "total_sent": 36, + "total_received": 3, + "max_hop": 42, + "avg_hop": 19.38, + "total_transmissions": 252, + "airtime_usage_percent": 43.61, + "tx_per_success": 84.0, + "collisions": 98 + }, + { + "seed": 37, + "pdr": 7.14, + "total_sent": 28, + "total_received": 2, + "max_hop": 81, + "avg_hop": 45.78, + "total_transmissions": 249, + "airtime_usage_percent": 42.96, + "tx_per_success": 124.5, + "collisions": 100 + }, + { + "seed": 38, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 31, + "avg_hop": 16.38, + "total_transmissions": 228, + "airtime_usage_percent": 39.04, + "tx_per_success": 114.0, + "collisions": 94 + }, + { + "seed": 39, + "pdr": 10.0, + "total_sent": 30, + "total_received": 3, + "max_hop": 3, + "avg_hop": 2.0, + "total_transmissions": 185, + "airtime_usage_percent": 30.97, + "tx_per_success": 61.67, + "collisions": 64 + }, + { + "seed": 40, + "pdr": 11.11, + "total_sent": 36, + "total_received": 4, + "max_hop": 60, + "avg_hop": 18.33, + "total_transmissions": 236, + "airtime_usage_percent": 40.44, + "tx_per_success": 59.0, + "collisions": 87 + }, + { + "seed": 41, + "pdr": 11.76, + "total_sent": 34, + "total_received": 4, + "max_hop": 58, + "avg_hop": 27.64, + "total_transmissions": 238, + "airtime_usage_percent": 40.68, + "tx_per_success": 59.5, + "collisions": 94 + }, + { + "seed": 42, + "pdr": 17.65, + "total_sent": 34, + "total_received": 6, + "max_hop": 30, + "avg_hop": 12.3, + "total_transmissions": 203, + "airtime_usage_percent": 33.94, + "tx_per_success": 33.83, + "collisions": 79 + }, + { + "seed": 43, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 16, + "avg_hop": 6.25, + "total_transmissions": 179, + "airtime_usage_percent": 29.78, + "tx_per_success": 59.67, + "collisions": 60 + }, + { + "seed": 44, + "pdr": 13.16, + "total_sent": 38, + "total_received": 5, + "max_hop": 44, + "avg_hop": 17.42, + "total_transmissions": 273, + "airtime_usage_percent": 47.42, + "tx_per_success": 54.6, + "collisions": 122 + }, + { + "seed": 45, + "pdr": 25.0, + "total_sent": 28, + "total_received": 7, + "max_hop": 64, + "avg_hop": 14.06, + "total_transmissions": 271, + "airtime_usage_percent": 46.7, + "tx_per_success": 38.71, + "collisions": 120 + }, + { + "seed": 46, + "pdr": 12.5, + "total_sent": 40, + "total_received": 5, + "max_hop": 5, + "avg_hop": 2.67, + "total_transmissions": 213, + "airtime_usage_percent": 36.21, + "tx_per_success": 42.6, + "collisions": 82 + }, + { + "seed": 47, + "pdr": 5.88, + "total_sent": 34, + "total_received": 2, + "max_hop": 6, + "avg_hop": 3.0, + "total_transmissions": 183, + "airtime_usage_percent": 30.59, + "tx_per_success": 91.5, + "collisions": 63 + }, + { + "seed": 48, + "pdr": 8.82, + "total_sent": 34, + "total_received": 3, + "max_hop": 14, + "avg_hop": 4.33, + "total_transmissions": 189, + "airtime_usage_percent": 31.45, + "tx_per_success": 63.0, + "collisions": 67 + }, + { + "seed": 49, + "pdr": 15.79, + "total_sent": 38, + "total_received": 6, + "max_hop": 66, + "avg_hop": 26.31, + "total_transmissions": 266, + "airtime_usage_percent": 45.77, + "tx_per_success": 44.33, + "collisions": 109 + } +] \ No newline at end of file diff --git a/results/statistics.json b/results/statistics.json new file mode 100644 index 0000000..9b7a040 --- /dev/null +++ b/results/statistics.json @@ -0,0 +1,128 @@ +{ + "gradient": { + "pdr": { + "mean": 12.1252, + "std": 5.1213, + "ci_95": 1.4195, + "min": 0.0, + "max": 25.0, + "n": 50 + }, + "airtime_usage_percent": { + "mean": 39.6318, + "std": 7.3928, + "ci_95": 2.0492, + "min": 27.65, + "max": 57.02, + "n": 50 + }, + "tx_per_success": { + "mean": 62.3804, + "std": 37.3461, + "ci_95": 10.3518, + "min": -1, + "max": 270.0, + "n": 50 + }, + "max_hop": { + "mean": 36.12, + "std": 26.0154, + "ci_95": 7.2111, + "min": 0, + "max": 113, + "n": 50 + }, + "collisions": { + "mean": 93.6, + "std": 25.0347, + "ci_95": 6.9393, + "min": 51, + "max": 153, + "n": 50 + } + }, + "flooding": { + "pdr": { + "mean": 23.739, + "std": 4.705, + "ci_95": 1.3042, + "min": 14.71, + "max": 36.67, + "n": 50 + }, + "airtime_usage_percent": { + "mean": 96.5222, + "std": 4.3925, + "ci_95": 1.2175, + "min": 81.46, + "max": 106.38, + "n": 50 + }, + "tx_per_success": { + "mean": 67.5176, + "std": 11.8936, + "ci_95": 3.2967, + "min": 46.73, + "max": 96.8, + "n": 50 + }, + "max_hop": { + "mean": 62.48, + "std": 6.0449, + "ci_95": 1.6756, + "min": 50, + "max": 76, + "n": 50 + }, + "collisions": { + "mean": 327.5, + "std": 20.4333, + "ci_95": 5.6638, + "min": 265, + "max": 368, + "n": 50 + } + }, + "random": { + "pdr": { + "mean": 11.5456, + "std": 5.0199, + "ci_95": 1.3914, + "min": 2.78, + "max": 27.78, + "n": 50 + }, + "airtime_usage_percent": { + "mean": 39.0258, + "std": 7.969, + "ci_95": 2.2089, + "min": 25.01, + "max": 62.48, + "n": 50 + }, + "tx_per_success": { + "mean": 69.7302, + "std": 39.1544, + "ci_95": 10.853, + "min": 30.7, + "max": 210.0, + "n": 50 + }, + "max_hop": { + "mean": 36.28, + "std": 30.5861, + "ci_95": 8.478, + "min": 3, + "max": 134, + "n": 50 + }, + "collisions": { + "mean": 91.74, + "std": 27.3897, + "ci_95": 7.592, + "min": 46, + "max": 172, + "n": 50 + } + } +} \ No newline at end of file diff --git a/run_statistical_experiments.py b/run_statistical_experiments.py new file mode 100644 index 0000000..7a93fbb --- /dev/null +++ b/run_statistical_experiments.py @@ -0,0 +1,207 @@ +#!/usr/bin/env python +""" +Statistical Experiment Runner for Paper Results. + +Runs N seeds per algorithm and saves results for statistical analysis. +""" + +import json +import os +import sys +from datetime import datetime + +# Add sim to path +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) + +from sim.main import run_simulation + + +def run_statistical_experiments( + num_seeds=50, + num_nodes=12, + area_size=800, + sim_time=100, + algorithms=None, +): + """ + Run experiments with multiple seeds for statistical significance. + + Args: + num_seeds: Number of random seeds to run + num_nodes: Number of nodes + area_size: Area size in meters + sim_time: Simulation time + algorithms: List of algorithms to test + + Returns: + Dictionary with all results + """ + if algorithms is None: + algorithms = ["gradient", "flooding", "random"] + + all_results = {} + + total_runs = num_seeds * len(algorithms) + current = 0 + + print( + f"Running {num_seeds} seeds × {len(algorithms)} algorithms = {total_runs} experiments" + ) + print("=" * 60) + + for algo in algorithms: + print(f"\n>>> Algorithm: {algo}") + algo_results = [] + + for seed in range(num_seeds): + current += 1 + print(f" [{current}/{total_runs}] Seed {seed}...", end=" ") + + try: + results = run_simulation( + num_nodes=num_nodes, + area_size=area_size, + sim_time=sim_time, + seed=seed, + routing_type=algo, + ) + + m = results["metrics"] + e = results["efficiency"] + + # Extract key metrics + result = { + "seed": seed, + "pdr": m["pdr"], + "total_sent": m["total_sent"], + "total_received": m["total_received"], + "max_hop": m["max_hop"], + "avg_hop": m["avg_hop"], + "total_transmissions": e["total_transmissions"], + "airtime_usage_percent": e["airtime_usage_percent"], + "tx_per_success": e["tx_per_success"], + "collisions": m["collisions"], + } + + algo_results.append(result) + print(f"PDR={result['pdr']:.2f}%, TX={result['total_transmissions']}") + + except Exception as ex: + print(f"ERROR: {ex}") + algo_results.append({"seed": seed, "error": str(ex)}) + + all_results[algo] = algo_results + + # Save per-algorithm results + algo_dir = f"results/{algo}" + os.makedirs(algo_dir, exist_ok=True) + + with open(f"{algo_dir}/all_seeds.json", "w") as f: + json.dump(algo_results, f, indent=2) + + print(f" Saved {len(algo_results)} results to {algo_dir}/") + + return all_results + + +def compute_statistics(results): + """Compute mean, std, and 95% CI for each metric.""" + import math + + metrics = [ + "pdr", + "airtime_usage_percent", + "tx_per_success", + "max_hop", + "collisions", + ] + + stats = {} + + for algo, algo_results in results.items(): + valid_results = [r for r in algo_results if "error" not in r] + + stats[algo] = {} + + for metric in metrics: + values = [r[metric] for r in valid_results if metric in r] + + if not values: + continue + + n = len(values) + mean = sum(values) / n + variance = sum((x - mean) ** 2 for x in values) / (n - 1) if n > 1 else 0 + std = math.sqrt(variance) + + # 95% CI = 1.96 * std / sqrt(n) + ci_95 = 1.96 * std / math.sqrt(n) if n > 0 else 0 + + stats[algo][metric] = { + "mean": round(mean, 4), + "std": round(std, 4), + "ci_95": round(ci_95, 4), + "min": round(min(values), 4), + "max": round(max(values), 4), + "n": n, + } + + return stats + + +def save_statistics(all_results, stats): + """Save statistics to JSON.""" + # Save combined raw results + with open("results/all_raw_results.json", "w") as f: + json.dump(all_results, f, indent=2) + + # Save statistics + with open("results/statistics.json", "w") as f: + json.dump(stats, f, indent=2) + + print("\n" + "=" * 60) + print("STATISTICS SUMMARY") + print("=" * 60) + + for algo, algo_stats in stats.items(): + print(f"\n{algo.upper()}:") + for metric, s in algo_stats.items(): + print(f" {metric:30s}: {s['mean']:8.4f} ± {s['ci_95']:.4f} (95% CI)") + + +def main(): + print("=" * 60) + print("Statistical Experiment Runner for Paper Results") + print("=" * 60) + print(f"Start time: {datetime.now()}") + + # Configuration + NUM_SEEDS = 50 + NUM_NODES = 12 + AREA_SIZE = 800 + SIM_TIME = 100 + + # Run experiments + all_results = run_statistical_experiments( + num_seeds=NUM_SEEDS, + num_nodes=NUM_NODES, + area_size=AREA_SIZE, + sim_time=SIM_TIME, + ) + + # Compute statistics + stats = compute_statistics(all_results) + + # Save results + save_statistics(all_results, stats) + + print(f"\nEnd time: {datetime.now()}") + print("\nResults saved to:") + print(" results/gradient/all_seeds.json") + print(" results/flooding/all_seeds.json") + print(" results/random/all_seeds.json") + print(" results/statistics.json") + + +if __name__ == "__main__": + main()