{"notes":[{"id":"mamba/mamba-2-hybrid","category":"mamba","legacyPath":"","legacySlug":"","legacyPaths":[],"title":"Mamba-2-Hybrid","subtitle":"模糊的记忆","author":"Z. Yuan","paperDate":"2024-06-12","publishedOn":"2026-01-22","paperTitle":"An Empirical Study of Mamba-based Language Models","paperUrl":"https://arxiv.org/abs/2406.07887","bibliography":{"title":"An Empirical Study of Mamba-based Language Models","authors":["Roger Waleffe","Wonmin Byeon","Duncan Riach","Brandon Norick","Vijay Korthikanti","Tri Dao","Albert Gu","Ali Hatamizadeh","Sudhakar Singh","Deepak Narayanan","Garvit Kulshreshtha","Vartika Singh","Jared Casper","Jan Kautz","Mohammad Shoeybi","Bryan Catanzaro"],"url":"https://arxiv.org/abs/2406.07887","pdfUrl":"https://arxiv.org/pdf/2406.07887v1","codeUrl":"https://github.com/NVIDIA/Megatron-LM","preprint":{"id":"2406.07887","submittedOn":"2024-06-12","url":"https://arxiv.org/abs/2406.07887"},"publication":null,"citation":"@misc{mambamamba2hybrid2024,\n  title = {{An Empirical Study of Mamba-based Language Models}},\n  author = {Roger Waleffe and Wonmin Byeon and Duncan Riach and Brandon Norick and Vijay Korthikanti and Tri Dao and Albert Gu and Ali Hatamizadeh and Sudhakar Singh and Deepak Narayanan and Garvit Kulshreshtha and Vartika Singh and Jared Casper and Jan Kautz and Mohammad Shoeybi and Bryan Catanzaro},\n  year = {2024},\n  eprint = {2406.07887},\n  archivePrefix = {arXiv},\n  url = {https://arxiv.org/abs/2406.07887}\n}\n","citationPath":"/content/papers/citations/mamba/mamba-2-hybrid.2add9f814f3a.bib"},"thumbnail":{"src":"/content/papers/assets/f2e0e285e0d5337a787c2e32537b37089640a036c9339c3574c147a3cbaad4eb.png","width":1245,"height":322},"locale":"zh-hans","path":"/content/papers/zh-hans/mamba/mamba-2-hybrid.06a7d341f756.md","headings":[{"id":"定义问题","text":"定义问题","depth":2},{"id":"解决问题","text":"解决问题","depth":2},{"id":"先看纯-ssm-的成绩","text":"先看纯 SSM 的成绩","depth":3},{"id":"电话簿与模糊的记忆","text":"电话簿与模糊的记忆","depth":3},{"id":"加回多少注意力","text":"加回多少注意力？","depth":3},{"id":"手算一次显存","text":"手算一次显存","depth":3},{"id":"讨论","text":"讨论","depth":2},{"id":"12-项标准任务","text":"12 项标准任务","depth":3},{"id":"长上下文大多不输多文档问答落后","text":"长上下文：大多不输，多文档问答落后","depth":3},{"id":"结论","text":"结论","depth":2}],"anchorAliases":{},"guide":null,"relatedReading":[{"id":"mamba/repeat-after-me","relation":"referenced","topic":""},{"id":"mamba/mamba-2","relation":"referenced","topic":""}]},{"id":"mamba/repeat-after-me","category":"mamba","legacyPath":"","legacySlug":"","legacyPaths":[],"title":"Repeat After Me","subtitle":"电话簿测试","author":"Z. Yuan","paperDate":"2024-02-01","publishedOn":"2025-12-23","paperTitle":"Repeat After Me: Transformers are Better than State Space Models at Copying","paperUrl":"https://arxiv.org/abs/2402.01032","bibliography":{"title":"Repeat After Me: Transformers are Better than State Space Models at Copying","authors":["Samy Jelassi","David Brandfonbrener","Sham M. Kakade","Eran Malach"],"url":"https://arxiv.org/abs/2402.01032","pdfUrl":"https://arxiv.org/pdf/2402.01032v2","codeUrl":"https://github.com/sjelassi/transformers_ssm_copy","preprint":{"id":"2402.01032","submittedOn":"2024-02-01","url":"https://arxiv.org/abs/2402.01032"},"publication":{"venue":"ICML","year":2024,"kind":"conference","url":"https://proceedings.mlr.press/v235/jelassi24a.html"},"citation":"@misc{mambarepeatafterme2024,\n  title = {{Repeat After Me: Transformers are Better than State Space Models at Copying}},\n  author = {Samy Jelassi and David Brandfonbrener and Sham M. Kakade and Eran Malach},\n  year = {2024},\n  eprint = {2402.01032},\n  archivePrefix = {arXiv},\n  url = {https://arxiv.org/abs/2402.01032}\n}\n","citationPath":"/content/papers/citations/mamba/repeat-after-me.6f1018ade730.bib"},"thumbnail":{"src":"/content/papers/assets/6d45fd8ab61191e1263c400e01bf76bdd9ef3534ecc4485835332074ea553443.png","width":1378,"height":416},"locale":"zh-hans","path":"/content/papers/zh-hans/mamba/repeat-after-me.82bba41fa9d9.md","headings":[{"id":"定义问题","text":"定义问题","depth":2},{"id":"解决问题","text":"解决问题","depth":2},{"id":"抄写任务","text":"抄写任务","depth":3},{"id":"状态不够大就抄不完","text":"状态不够大，就抄不完","depth":3},{"id":"transformer-靠-n-gram-找位置","text":"Transformer 靠 n-gram 找位置","depth":3},{"id":"讨论","text":"讨论","depth":2},{"id":"合成数据学得快也推得远","text":"合成数据：学得快，也推得远","depth":3},{"id":"先告诉我要找什么就没问题","text":"先告诉我要找什么，就没问题","depth":3},{"id":"预训练模型电话簿","text":"预训练模型：电话簿","depth":3},{"id":"这篇还没回答的问题","text":"这篇还没回答的问题","depth":3},{"id":"结论","text":"结论","depth":2}],"anchorAliases":{},"guide":null,"relatedReading":[{"id":"mamba/jamba","relation":"referenced","topic":""}]},{"id":"mamba/mamba-2","category":"mamba","legacyPath":"","legacySlug":"","legacyPaths":[],"title":"Mamba-2","subtitle":"注意力的远亲","author":"Z. Yuan","paperDate":"2024-05-31","publishedOn":"2025-12-06","world":"external/mamba2","paperTitle":"Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality","paperUrl":"https://arxiv.org/abs/2405.21060","bibliography":{"title":"Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality","authors":["Tri Dao","Albert Gu"],"url":"https://arxiv.org/abs/2405.21060","pdfUrl":"https://arxiv.org/pdf/2405.21060v1","codeUrl":"https://github.com/state-spaces/mamba","preprint":{"id":"2405.21060","submittedOn":"2024-05-31","url":"https://arxiv.org/abs/2405.21060"},"publication":{"venue":"ICML","year":2024,"kind":"conference","url":"https://proceedings.mlr.press/v235/dao24a.html"},"citation":"@misc{mambamamba22024,\n  title = {{Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality}},\n  author = {Tri Dao and Albert Gu},\n  year = {2024},\n  eprint = {2405.21060},\n  archivePrefix = {arXiv},\n  url = {https://arxiv.org/abs/2405.21060}\n}\n","citationPath":"/content/papers/citations/mamba/mamba-2.3152f9dfa9a1.bib"},"thumbnail":{"src":"/content/papers/assets/771f5c6bcb0b30ac06fac163812a3aa6aad0063df419f7ffd41bc60cef195e79.png","width":1462,"height":556},"locale":"zh-hans","path":"/content/papers/zh-hans/mamba/mamba-2.16b1612b4608.md","headings":[{"id":"定义问题","text":"定义问题","depth":2},{"id":"解决问题","text":"解决问题","depth":2},{"id":"把-ssm-写成一个矩阵","text":"把 SSM 写成一个矩阵","depth":3},{"id":"把-a-简化成一个数","text":"把 A 简化成一个数","depth":3},{"id":"跟着四个-token-算一次","text":"跟着四个 token 算一次","depth":3},{"id":"两条路各走一半","text":"两条路各走一半","depth":3},{"id":"mamba-2-模块","text":"Mamba-2 模块","depth":3},{"id":"讨论","text":"讨论","depth":2},{"id":"状态大一点记得多一点","text":"状态大一点，记得多一点","depth":3},{"id":"语言建模","text":"语言建模","depth":3},{"id":"原作者也建议混合","text":"原作者也建议混合","depth":3},{"id":"也不是全面升级","text":"也不是全面升级","depth":3},{"id":"结论","text":"结论","depth":2}],"anchorAliases":{},"guide":null,"relatedReading":[{"id":"mamba/mamba","relation":"referenced","topic":""},{"id":"mamba/gated-deltanet","relation":"referenced","topic":""}]}],"text":"到了 2024 年年中，关于 Mamba 的消息有点两极分化。\n\n一边是原作者在 2.8B 以下的实验：Mamba、Mamba-2 在常见评测上追平甚至超过了同规模的 Transformer。另一边是越来越多的研究指出，它在照抄、检索和 in-context learning 上有短板。AI21 的 Jamba 干脆在 Mamba 层之间留了几层注意力。\n\n问题是，这些比较的条件都不太一样。原作者的实验不到 3B 参数、不到 1T tokens；Jamba 这类大模型又没有在相同数据上训练一个用于对照的 Transformer。\n\nNVIDIA 这份技术报告想填补这个空白：用**同样的数据、同样的超参数、同样的评测流程**，训练 8B 参数的 Mamba、Mamba-2、Transformer 以及一个混合模型，最多训练到 3.5T tokens，再拿 35 个任务一起比较。\n\n作者名单里除了 NVIDIA 的研究人员，还有 Mamba 的两位作者 Tri Dao 与 Albert Gu。\n\n## 定义问题\n\n作者想回答的问题很直接：训练预算加大以后，Mamba 能不能跟上 Transformer？如果某些地方跟不上，加回几层注意力够不够？\n\n为了让比较公平，四种模型共用：\n\n- 同一份数据：1.1T 与 3.5T tokens 两个版本，都是 Nemotron-4 训练数据的前身，70% 英文、15% 其他语言、15% 代码。\n- 同一套超参数：作者在小规模上试过，Mamba 的最佳超参数和 Transformer 差不多，所以全部共用。\n- 同一套评测：固定版本的开源评测套件，同一套提示词。\n\n模型配置如下：\n\n| 模型 | 层数 | 说明 |\n| --- | ---: | --- |\n| Transformer | 32 | 每层是注意力＋MLP，32 个注意力头，RoPE |\n| Mamba | 56 | 两层 Mamba 的参数量约等于一层注意力＋MLP，状态维度 128 |\n| Mamba-2 | 56 | 同上，换成 Mamba-2 模块，头维度 64、8 组 |\n| Mamba-2-Hybrid | 56 | 24 层 Mamba-2、4 层注意力、28 层 MLP |\n\n*表：整理自原论文 §3.1 与 Table 6。四者均约 8B 参数，隐藏维度 4096。*\n\n3.5T tokens 这一组只训练了 Mamba-2、Transformer 与混合模型。作者的理由是纯 Mamba 的状态太大，在 1.1T 这组就比 Mamba-2 慢了将近三倍。\n\n## 解决问题\n\n### 先看纯 SSM 的成绩\n\n1.1T tokens 的结果里有一个很突兀的数字：\n\n| 模型 | 五项常识任务平均 | MMLU 0-shot | MMLU 5-shot |\n| --- | ---: | ---: | ---: |\n| Transformer | 67.87 | 38.32 | 46.28 |\n| Mamba | 68.07 | 28.63 | 28.00 |\n| Mamba-2 | 68.56 | 28.94 | 29.19 |\n\n*表：原论文 Table 2 节选，8B 模型、1.1T tokens。五项为 WinoGrande、PIQA、HellaSwag、ARC-E、ARC-C。*\n\n常识任务上，两种 Mamba 都略胜 Transformer。MMLU 5-shot 却差了 17 分以上，几乎掉到四选一瞎猜的水平。\n\n训练到 3.5T tokens，Mamba-2 的 MMLU 5-shot 回升到 48.7，只比 Transformer 的 50.07 少 1.37 分；平均分甚至反超。看起来只要多训练一些就好？\n\n作者没有就此打住，而是把 MMLU 换成三种问法：\n\n1. **标准格式**：题目后面列出 A、B、C、D 四个选项，比较模型接下来输出哪个字母的概率最高。\n2. **以选项文本为目标**：同样列出选项，但比较的是包含字母的整段选项文本的概率，例如「B. sorted('ab')」。\n3. **完形填空**：题目后面不列选项，直接比较每个答案文本接在题目后面的概率。\n\n对 1.1T tokens 的模型来说，在第三种问法下，两种 Mamba 与 Transformer 的分数几乎一样（5-shot 约 38 到 39 分）。\n\n作者由此推测：纯 SSM 学到的知识可能和 Transformer 相近，卡住它的是格式。模型要读懂「上面列了四个选项，要用一个字母回答」，再把每个选项的内容对应到相应的字母上。这种在 token 之间搬运信息的工作，正是注意力擅长、纯 SSM 比较吃力的地方。这是作者的解读，三种问法的分数支持它，但还算不上直接证明。\n\n还有一个细节：3.5T 的 Mamba-2 从 0-shot 到 5-shot，MMLU 只提升了 1.45 分；Transformer 提升了 4.38 分。多给的示例，Mamba-2 利用得比较少。\n\n### 电话簿与模糊的记忆\n\n另一个测试是电话簿：提示词里放一串「姓名：电话」，给两个问答示例，再问某个人的电话。\n\n[![三张折线图，横轴都是电话簿长度（千个 token），竖线标出 4K 的预训练长度。(a) 标准电话簿：Transformer 在 4K 以内接近 100%，超过后迅速归零；Mamba 与 Mamba-2 在 0.5K 左右开始下滑，2.5K 以后大多在 20% 以下。(b) 答案中正确的 token 数：两种 Mamba 从 12 个逐渐降到 4 到 6 个。(c) 反向电话簿，先告诉模型要记谁：Mamba 好一些但仍随长度下降，Mamba-2 在 3K 左右降到 10% 以下，Transformer 在 4K 以内保持 100%](/content/papers/assets/f2e0e285e0d5337a787c2e32537b37089640a036c9339c3574c147a3cbaad4eb.png)](/content/papers/assets/f2e0e285e0d5337a787c2e32537b37089640a036c9339c3574c147a3cbaad4eb.png)\n\n*原论文 Figure 3，取自 [**v1 PDF 第 8 页**](https://arxiv.org/pdf/2406.07887v1#page=8)。三张图都是 1.1T tokens 的 8B 模型；竖线是 4,096 的预训练长度。*\n\n左图：Transformer 在预训练长度 4,096 以内几乎全对，一超过就崩了。两种 Mamba 大约到 500 个 token 就开始答错。作者强调，和 MMLU 不同，这个差距在 3.5T tokens 的 Mamba-2 上依然存在。\n\n中间那张图很有意思。作者没有只看答对与否，而是逐一比对答案里有几个 token 是正确的。一个电话号码约 12 个 token，两种 Mamba 就算答错，也常常对了 4 到 8 个。\n\n作者称之为**模糊记忆**（fuzzy memory）：每条数据都被压进了状态，只是压得不够精确，取出来的时候走了样。\n\n右图换了问法：先告诉模型待会儿要问谁，再给电话簿。按理说，Mamba 可以一路只盯着那个名字。分数确实好了一些，但仍随长度下降。作者的解读是，即便事先知道问题，模型还是很难决定哪些信息要精确保留、哪些可以忘掉。\n\n\n> [!TIP]\n> \n> 这份报告的电话簿任务沿用自哈佛 Jelassi 等人的研究。那篇也比较过「先给问题」和「后给问题」两种版本；在从头训练的小模型上，先给问题时，状态模型可以表现得很好：\n> \n> - **[[24.02] Repeat After Me：电话簿测试](/blog/papers/mamba/repeat-after-me)**\n\n\n### 加回多少注意力？\n\n接着，作者把几层注意力加了回去。为了比较公平，他们调整了注意力头数和 MLP 的扩张倍数，让每种层的参数量都差不多，这样层数比例就等于参数比例。\n\n[![折线图：横轴是注意力层占总层数的百分比，从 0 到 100；纵轴是验证损失。0% 时约 2.615，约 8% 时降到最低点约 2.554，之后随比例增加逐渐上升，100% 时约 2.63](/content/papers/assets/5b19ee03675ebbd942f790c816960a5b57e28b46fad1020453f2a1f4e4a2c647.png)](/content/papers/assets/5b19ee03675ebbd942f790c816960a5b57e28b46fad1020453f2a1f4e4a2c647.png)\n\n*原论文 Figure 4，取自 [**v1 PDF 第 9 页**](https://arxiv.org/pdf/2406.07887v1#page=9)。1.3 亿参数、24 层的混合模型。*\n\n在 1.3 亿参数、24 层的小模型上，注意力层占约 8% 时验证损失最低；全是注意力或完全没有注意力，都比混合差。8.4 亿参数的模型也确认了同样的趋势。\n\n其他几个设计选择：\n\n- **MLP 层的比例**：固定 8% 注意力后，MLP 占 30% 到 50% 都不会让损失变差。比例越高训练越快，50% 比 5% 快了约 20%。\n- **位置编码**：840M 的混合模型加不加 RoPE，基础模型的表现差不多；扩展到 16K 上下文后，不加 RoPE 的平均分反而更高，所以后面都不加。\n- **层的排列**：第一层放 Mamba，让它自然学到位置信息；其余的把注意力和 MLP 均匀散开。作者没找到比这更好的排法，也不需要重复固定的块。\n- **GQA**：注意力改用 GQA，验证困惑度只增加约 0.04%，推理时省下不少显存。\n\n最终的 8B 混合模型共 56 层：24 层 Mamba-2（42.9%）、4 层注意力（7.1%）、28 层 MLP（50%）。排列是：\n\n```text\nM+M+M++M+M*+M+M+M+M++M*+M+M+M+M+M*++M+M+M+M+M*+M++M+M+M+\n```\n\n`M` 是 Mamba-2，`*` 是注意力，`+` 是 MLP。四个星号均匀分布在中段。\n\n### 手算一次显存\n\n我们拿论文的配置算一下，两种模型推理时要带多少东西。Transformer 是 32 层、32 头的多头注意力；混合模型是 4 层、8 组 KV 的 GQA，都是每头 128 维、bf16：\n\n```python\ndef kv(layers, kv_heads, head_dim=128, tokens=1, b=2):\n    return 2 * layers * kv_heads * head_dim * b * tokens\n\nMiB, GiB = 2**20, 2**30\nt = kv(32, 32); h = kv(4, 8)\nprint(f\"Transformer 每 token {t // 1024} KiB；混合模型每 token {h // 1024} KiB（{t // h} 倍）\")\nfor n in (4096, 131072):\n    print(f\"{n:>6} tokens：Transformer {kv(32, 32, tokens=n) / GiB:.2f} GiB，混合 {kv(4, 8, tokens=n) / GiB:.3f} GiB\")\n\nssm = 24 * (2 * 4096) * 128            # 24 层 Mamba-2，内部宽度 8192，状态维度 128\nprint(f\"24 层 Mamba-2 状态：{ssm:,} 个数，bf16 {ssm * 2 / MiB:.0f} MiB（与长度无关）\")\n```\n\n```text\nTransformer 每 token 512 KiB；混合模型每 token 16 KiB（32 倍）\n  4096 tokens：Transformer 2.00 GiB，混合 0.062 GiB\n131072 tokens：Transformer 64.00 GiB，混合 2.000 GiB\n24 层 Mamba-2 状态：25,165,824 个数，bf16 48 MiB（与长度无关）\n```\n\n这 32 倍里，8 倍来自注意力层从 32 层减到 4 层，另外 4 倍来自 GQA。Mamba-2 那 48 MiB 的状态，在 4K 上下文时和 KV cache 差不多大；上下文越长，它就越无足轻重。\n\n这只是一条序列的显存账。论文 Figure 5 预测，在批大小 32 下生成一个 token，短上下文时两者速度相当；上下文长到十万以上时，混合模型快了将近 8 倍。这是报告给出的预测值，文中没有附上相应的推理系统实测或详细的延迟模型。训练效率则有实测：在 1,024 张 H100 上，混合模型的 MFU 是 29.9%，Transformer 是 30.7%。\n\n## 讨论\n\n### 12 项标准任务\n\n3.5T tokens 下，混合模型在 12 项标准任务上全部胜过 Transformer。论文表中的平均值把 MMLU 的 0-shot 与 5-shot 各算作一列，共 13 列，混合模型平均高 2.65 分：\n\n| 模型 | MMLU 5-shot | SQuAD v2 | 论文平均（13 列） |\n| --- | ---: | ---: | ---: |\n| Transformer | 50.07 | 53.4 | 53.17 |\n| Mamba-2 | 48.7 | 51.9 | 54.69 |\n| Mamba-2-Hybrid | 53.60 | 58.67 | 55.82 |\n\n*表：原论文 Table 7 节选。*\n\nMMLU 的训练曲线也值得一看（论文 Figure 6）：混合模型一路领先纯 Mamba-2，但训练初期还输给 Transformer；到 1.5T tokens 追平之后，才一直保持领先。\n\n### 长上下文：大多不输，多文档问答落后\n\n作者把 4K 的基础模型继续预训练 50B tokens，扩展到 16K 与 32K。四个注意力层用的是完整的全局注意力。\n\n结果分成三类：\n\n1. **电话簿**：混合模型不只在预训练长度内全对，还能稍微推得更远。4K 的混合模型到 5.5K 都是 100%；16K、32K 版本也超出了各自的训练长度。另外扩展到 128K 的混合模型同样如此。\n2. **RULER 合成任务**：在大海捞针、多钥匙查找、变量追踪这类任务上，16K 混合模型平均比 16K Transformer 高约 12 分（74.19 对 62.33）。Transformer 在变量追踪上经常直接照抄提示词里的示例答案。\n3. **真实长文本任务**：九项任务的平均分，16K 与 32K 的 Transformer 反而高约 1 分，差距主要来自多文档问答。以 HotpotQA 为例，16K 时是 48.61 对 42.17。\n\n作者对第三点的解释是：LongBench 的多文档问答会把相关段落和大量随机的维基百科段落混在一起，问题放在最后。SSM 层读的时候还不知道问题，可能被无关的文档带偏。他们也怀疑，扩展上下文时把不相关的文档直接拼在一起训练，可能让 SSM 误以为它们彼此相关。\n\n另一个观察是，混合模型对提示词格式更敏感。以 4K 基础模型在 Musique 上的测试为例，改动提示词后，混合模型的分数在 10.63 到 16.16 之间波动，Transformer 只在 15.25 到 17.68 之间。作者也指出，LongBench 的提示词原本就是为 Transformer 调过的。\n\n## 结论\n\n这份报告用相同的数据与流程，把 2024 年关于 Mamba 的几种说法一次对照清楚：\n\n1. **纯 SSM 在多数语言任务上不输 Transformer**：3.5T tokens 时，纯 Mamba-2 的五项常识任务平均分还略高；其他任务各有胜负。\n2. **纯 SSM 的短板集中在格式、照抄与 in-context learning**。MMLU 的落后可以靠多训练补回大半；电话簿的差距则在 1.1T 与 3.5T 两种预算下都还在，3.5T 的纯 Mamba-2 在九项自然长文本任务上的平均分也落后；答错时是「模糊地记得」，而不是完全不记得。\n3. **约 8% 的注意力层就够了**。8B 混合模型 56 层里只有 4 层注意力，12 项标准任务全胜 Transformer，KV cache 小了 32 倍，长上下文的查找也更稳。\n4. **混合模型还有不确定的地方**：多文档问答、提示词敏感度，以及长上下文的训练方式。\n\nMamba 一开始是被当成 Transformer 的替代品来讨论的。读完这份报告，更合理的定位是：大部分层用 Mamba-2 处理序列，少数几层注意力负责精确地回头查找。后来 NVIDIA 的 Nemotron-H、Nemotron 3 系列，走的都是这条路。\n\n\n> [!TIP]\n> \n> 这份报告用的 Mamba-2 模块，以及它和线性注意力之间的关系，可以参考：\n> \n> - **[[24.05] Mamba-2：注意力的远亲](/blog/papers/mamba/mamba-2)**\n","imageSizes":{"/content/papers/assets/f2e0e285e0d5337a787c2e32537b37089640a036c9339c3574c147a3cbaad4eb.png":{"width":1245,"height":322},"/content/papers/assets/5b19ee03675ebbd942f790c816960a5b57e28b46fad1020453f2a1f4e4a2c647.png":{"width":506,"height":303}}}
