From b3fbf80a3e22e4eff4ff0c11f2f5275967794b7e Mon Sep 17 00:00:00 2001 From: Helder Vasconcelos Date: Sun, 5 Jul 2026 00:38:21 +0100 Subject: [PATCH] AMALIA-9B (European Portuguese) support: SPM Metaspace prepend, ChatML template detection, bf16 compute MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds layerx-labs/AMALIA-9B-0626-{DPO,SFT}-MLX-4bit (EuroLLM-9B base), golden-gated against mlx-lm (reference/fixtures_amalia/). The forward pass is the stock LlamaModel; the new pieces: - tokenizer/spm: honor the Metaspace pre-tokenizer's prepend_scheme ("always" prepends U+2581 to the input-leading segment only — never after special tokens, never doubled onto a leading space; pinned by the corpus fixture) and the decoder Strip step (drop N leading spaces on decode). Gemma unchanged. - tokenizer: ChatFormat::Amalia (ChatML + default Portuguese system prompt), detected from the checkpoint's chat_template.jinja via the new chat_format_for_model_dir (model_type is "llama", so the type mapping can't identify it). AMALIA's BOS id 3 IS <|im_start|>, so apply_chat_template encodes the fully-rendered template without the BOS prepend (HF add_special_tokens=False semantics). - bf16 compute path (ModelConfig::bf16_compute): this family's residual stream overflows fp16 from layer 9 — an fp16 forward is all-NaN logits, and the fp16 mlx-lm reference is equally degenerate. Selected by the family's config fingerprint; the weight cast, batched mask, and prefill logit placeholders follow compute_dtype(cfg); skinny_mm self-disables (fp16-only); kv-quant and the prefix cache are rejected at engine creation for bf16 models (ungated). Every other checkpoint keeps fp16 bit-for-bit. - test harness: compare_close now fails on nonfinite values (NaN-vs-NaN previously passed vacuously — exactly how a degenerate fp16 reference slipped through); config.json quantization "mode" != affine is rejected at load. Gates: tokenizer corpus byte-exact (33 strings incl. post-special and byte-fallback cases), chat_ids exact, front-half/block0 close, argmax exact, 20-token greedy stream exact. CLI smoke: fluent pt-PT answer, EOS stop. Co-Authored-By: Claude Fable 5 --- CHANGELOG.md | 18 + CLAUDE.md | 31 +- README.md | 10 +- apps/mlxforge_cli.cpp | 2 +- doc/supported-models.md | 55 +- doc/tokenizer.md | 26 +- reference/dump_ref.py | 44 +- reference/fixtures_amalia/argmax.npy | Bin 0 -> 132 bytes reference/fixtures_amalia/attn_norm0.npy | Bin 0 -> 98432 bytes reference/fixtures_amalia/block0.npy | Bin 0 -> 98432 bytes reference/fixtures_amalia/chat_ids.npy | Bin 0 -> 412 bytes reference/fixtures_amalia/embeddings.npy | Bin 0 -> 98432 bytes .../fixtures_amalia/greedy_gaps_kvq4.npy | Bin 0 -> 208 bytes .../fixtures_amalia/greedy_gaps_kvq8.npy | Bin 0 -> 208 bytes reference/fixtures_amalia/greedy_tokens.npy | Bin 0 -> 208 bytes .../fixtures_amalia/greedy_tokens_kvq4.npy | Bin 0 -> 208 bytes .../fixtures_amalia/greedy_tokens_kvq8.npy | Bin 0 -> 208 bytes reference/fixtures_amalia/k_rope0.npy | Bin 0 -> 24704 bytes reference/fixtures_amalia/logits_last.npy | Bin 0 -> 512128 bytes reference/fixtures_amalia/manifest.json | 149 +++++ reference/fixtures_amalia/prompt_0_ids.npy | Bin 0 -> 152 bytes reference/fixtures_amalia/prompt_1_ids.npy | Bin 0 -> 148 bytes reference/fixtures_amalia/prompt_2_ids.npy | Bin 0 -> 176 bytes reference/fixtures_amalia/q_pre0.npy | Bin 0 -> 98432 bytes reference/fixtures_amalia/q_rope0.npy | Bin 0 -> 98432 bytes .../fixtures_amalia/tokenizer_corpus.json | 597 ++++++++++++++++++ reference/fixtures_amalia/v0.npy | Bin 0 -> 24704 bytes src/core/config.cpp | 19 +- src/core/config.h | 10 + src/core/weights.cpp | 40 +- src/core/weights.h | 15 +- src/model/decoder_model.cpp | 6 +- src/runtime/batching.cpp | 6 +- src/runtime/engine.cpp | 11 +- src/tokenizer/spm.cpp | 49 +- src/tokenizer/spm.h | 25 +- src/tokenizer/tokenizer.cpp | 72 ++- src/tokenizer/tokenizer.h | 13 +- tests/CMakeLists.txt | 12 + tests/core/config_test.cpp | 35 + tests/model/amalia_test.cpp | 185 ++++++ tests/support/model_fixture.h | 19 + tests/support/reference.h | 18 + tests/tokenizer/spm_test.cpp | 20 + tests/tokenizer/tokenizer_test.cpp | 28 + 45 files changed, 1446 insertions(+), 69 deletions(-) create mode 100644 reference/fixtures_amalia/argmax.npy create mode 100644 reference/fixtures_amalia/attn_norm0.npy create mode 100644 reference/fixtures_amalia/block0.npy create mode 100644 reference/fixtures_amalia/chat_ids.npy create mode 100644 reference/fixtures_amalia/embeddings.npy create mode 100644 reference/fixtures_amalia/greedy_gaps_kvq4.npy create mode 100644 reference/fixtures_amalia/greedy_gaps_kvq8.npy create mode 100644 reference/fixtures_amalia/greedy_tokens.npy create mode 100644 reference/fixtures_amalia/greedy_tokens_kvq4.npy create mode 100644 reference/fixtures_amalia/greedy_tokens_kvq8.npy create mode 100644 reference/fixtures_amalia/k_rope0.npy create mode 100644 reference/fixtures_amalia/logits_last.npy create mode 100644 reference/fixtures_amalia/manifest.json create mode 100644 reference/fixtures_amalia/prompt_0_ids.npy create mode 100644 reference/fixtures_amalia/prompt_1_ids.npy create mode 100644 reference/fixtures_amalia/prompt_2_ids.npy create mode 100644 reference/fixtures_amalia/q_pre0.npy create mode 100644 reference/fixtures_amalia/q_rope0.npy create mode 100644 reference/fixtures_amalia/tokenizer_corpus.json create mode 100644 reference/fixtures_amalia/v0.npy create mode 100644 tests/model/amalia_test.cpp diff --git a/CHANGELOG.md b/CHANGELOG.md index e79c814..6c460d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added + +- **AMALIA-9B** (European Portuguese, EuroLLM-9B base) support, golden-gated + against mlx-lm (`reference/fixtures_amalia/`). The forward pass is the stock + Llama decoder, run in **bfloat16** via the new `ModelConfig::bf16_compute` + (this family's residual stream overflows fp16 from layer 9 — an fp16 forward + is all-NaN logits; selected by config fingerprint, all other checkpoints stay + on fp16 bit-for-bit). The other new pieces are tokenizer/prompt plumbing: the + SentencePiece-BPE backend honors the Metaspace `prepend_scheme: "always"` + pre-tokenizer and the `Strip` decode step (both parsed from `tokenizer.json`; + Gemma unchanged), a `ChatFormat::Amalia` ChatML template with the default + Portuguese system prompt (detected from the checkpoint's `chat_template.jinja` + via the new `chat_format_for_model_dir`, since AMALIA's `model_type` is + `"llama"`), and config-load rejection of non-affine quantization modes. + KV-cache quantization and the prefix cache are rejected for bf16-compute + models (no golden coverage yet); the golden compare harness now fails on + nonfinite values instead of passing NaN-vs-NaN vacuously. + ## [0.2.0] - 2026-06-12 This release adds a from-scratch **Qwen3-VL vision-language** model (image → text), diff --git a/CLAUDE.md b/CLAUDE.md index 3b178a9..7cdd997 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -138,11 +138,32 @@ reference/.venv/bin/python reference/dump_ref.py (`reference/fixtures*/tokenizer_corpus.json`, regenerated by `dump_ref.py`). Two backends: byte-level BPE (`tokenizer/bpe.{h,cpp}`, `BpeTokenizer`; Llama-3.2 / Qwen) and SentencePiece-BPE (`tokenizer/spm.{h,cpp}`, `SpmBpeTokenizer`; - metaspace + `byte_fallback`, e.g. Gemma — tokenizer-only, no Gemma model class). - Both are pure/`const`/thread-safe (no mutex). `Tokenizer::from_file` throws on - still-unimplemented families (e.g. Unigram/WordPiece). -- **Masks are additive fp16, never boolean** (avoids MLX bug #2894). See - `DecoderModel::batch_mask`. + metaspace + `byte_fallback` — Gemma (tokenizer-only, no Gemma model class) and + AMALIA-9B/EuroLLM). The SPM backend honors the Metaspace `prepend_scheme` per + checkpoint ("always" prepends `▁` to the *input-leading* segment only — never + after special tokens, never doubled onto a leading space; empirically pinned + by the AMALIA corpus fixture — Gemma never prepends; "first" throws) and a + decoder `Strip` step (drop N leading spaces on decode). Both are + pure/`const`/thread-safe (no mutex). `Tokenizer::from_file` throws on + still-unimplemented families (e.g. Unigram/WordPiece). AMALIA's chat format + can't come from `model_type` (it's `"llama"`): `chat_format_for_model_dir` + detects it from the checkpoint's `chat_template.jinja`, and because AMALIA's + BOS id 3 IS `<|im_start|>`, `apply_chat_template` encodes the fully-rendered + ChatML **without** the BOS prepend (HF `add_special_tokens=False`) — letting + the encoder prepend it would double the opening tag. +- **Masks are additive fp16 (or the model's compute dtype), never boolean** + (avoids MLX bug #2894). See `DecoderModel::batch_mask`. +- **The engine computes in fp16 — except checkpoints that overflow it.** + AMALIA-9B/EuroLLM-9B's residual stream exceeds fp16 range from layer 9, so an + fp16 forward is all-NaN logits and the fp16 mlx-lm reference is equally + degenerate (NaN goldens gate nothing — `compare_close` now fails on + nonfinite values for exactly this reason). `ModelConfig::bf16_compute` + (selected by the family's config fingerprint in `from_json`, since every MLX + conversion declares `dtype: bfloat16` and can't drive this) switches the + weight-load cast, the batched mask, and the prefill logits placeholders to + bf16; `skinny_mm` self-disables (fp16-only kernels) and kv-quant / prefix + cache are rejected at engine creation for bf16 models. All other checkpoints + keep fp16 bit-for-bit. - **RoPE scaling is precomputed and validated, never silent** — `compute_rope_setup` mirrors `mlx_lm` exactly (`Llama3RoPE`, `YarnRoPE`, `nn.RoPE(scale=1/factor)` for linear) and feeds `fast::rope` via `freqs` diff --git a/README.md b/README.md index 3bedf8b..7fc9383 100644 --- a/README.md +++ b/README.md @@ -81,10 +81,11 @@ the C-ABI / Node quickstart. ## Supported models The forward pass (the `DecoderModel` base in `model/`) is family-shared and runs -Llama-3.2, Qwen3 (dense / MoE), and Qwen3.5 hybrid models from safetensors (fp16 / -4-bit) or a single-file GGUF, plus **Qwen3-VL** vision-language (image → text). The -chat template and special-token handling are selected from `config.json` — loading -is org-agnostic. +Llama-3.2, AMALIA-9B (European Portuguese), Qwen3 (dense / MoE), and Qwen3.5 hybrid +models from safetensors (fp16 / 4-bit) or a single-file GGUF, plus **Qwen3-VL** +vision-language (image → text). The chat template and special-token handling are +selected from `config.json` and the checkpoint's chat template — loading is +org-agnostic. | Family | Example repo | Precision | | --- | --- | --- | @@ -95,6 +96,7 @@ is org-agnostic. | Qwen3 (MoE) | `mlx-community/Qwen3-30B-A3B-4bit` | 4-bit / fp16 | | Qwen3.5 (hybrid) | `mlx-community/Qwen3.5-0.8B-4bit` | 4-bit (text tower) | | Qwen3-VL (vision) | `mlx-community/Qwen3-VL-4B-Instruct-4bit` | 4-bit (image → text) | +| AMALIA-9B (pt-PT) | `layerx-labs/AMALIA-9B-0626-DPO-MLX-4bit` | 4-bit | See [`doc/supported-models.md`](./doc/supported-models.md) for the full compatibility matrix, the per-family deltas, and how to add a new family. diff --git a/apps/mlxforge_cli.cpp b/apps/mlxforge_cli.cpp index b74a7d8..39968e8 100644 --- a/apps/mlxforge_cli.cpp +++ b/apps/mlxforge_cli.cpp @@ -110,7 +110,7 @@ LoadedModel load_for_inference(const std::string& spec, const std::string& rope_ mlxforge::validate_rope_scaling(lm.cfg); lm.model = mlxforge::create_model(lm.cfg, mlxforge::load_weights(resolved, lm.cfg)); lm.tok = mlxforge::Tokenizer::from_file(resolved + "/tokenizer.json", lm.cfg.bos_token_id, - mlxforge::chat_format_from_model_type(lm.cfg.model_type)); + mlxforge::chat_format_for_model_dir(resolved, lm.cfg.model_type)); } return lm; } diff --git a/doc/supported-models.md b/doc/supported-models.md index 812f74b..a527f12 100644 --- a/doc/supported-models.md +++ b/doc/supported-models.md @@ -25,6 +25,7 @@ override — all selected automatically by `create_model` from `config.json` | Qwen3 (MoE, GGUF) | `Qwen/Qwen3-30B-A3B-GGUF` | Q4_0/Q4_1/Q8_0, Q4_K/Q5_K/Q6_K | ChatML (`<\|im_start\|>…`) | yes | | Qwen3.5 (hybrid) | `mlx-community/Qwen3.5-0.8B-4bit` | 4-bit (mixed bits ok) | ChatML (`<\|im_start\|>…`) | yes (text only) | | Qwen3-VL (dense) | `mlx-community/Qwen3-VL-4B-Instruct-4bit` | 4-bit (ViT in fp16) | ChatML + vision tokens | yes (image → text) | +| AMALIA-9B (pt-PT) | `layerx-labs/AMALIA-9B-0626-DPO-MLX-4bit` | 4-bit, bf16 compute | ChatML + PT default system | yes | **Qwen3 dense** models (0.6B/1.7B/4B/8B/14B/32B) run end-to-end. They add three deltas over Llama-3.2, all handled automatically: per-head **QK-Norm** (an @@ -111,6 +112,39 @@ is **not** bit-identical to HF's PIL bicubic, so results on non-aligned images m differ slightly from the reference. The **MoE-VL** variant (30B-A3B) is not yet a distinct model class. +**AMALIA-9B** (European Portuguese, built on EuroLLM-9B) runs end-to-end. Its +forward pass is the **stock Llama decoder** — plain `LlamaForCausalLM` (42 +layers, GQA with 8 KV heads, `rope_theta` 1e6, no rope scaling, untied +embeddings), so `create_model` falls through to `LlamaModel` with no per-family +hook — but it runs in **bfloat16, not the engine's usual fp16**: the family's +residual stream overflows fp16's range from layer 9, so an fp16 forward is +all-NaN logits (silent garbage — the fp16 mlx-lm reference is equally +degenerate). `ModelConfig::bf16_compute` selects bf16 from the family's config +fingerprint; KV-cache quantization and the prefix cache are rejected for +bf16-compute models (no golden coverage yet). The remaining deltas are in the +tokenizer and prompt format, all golden-gated against mlx-lm +(`reference/fixtures_amalia/`): + +- **SentencePiece-BPE with Metaspace prepend**: the Metaspace pre-tokenizer uses + `prepend_scheme: "always"` (a `▁` is prepended to the input-leading text + segment before BPE — never after special tokens, and never doubled onto a + leading space; the exact semantics are pinned by the golden corpus), and the + decoder chain carries a `Strip` step that removes the resulting leading space + on decode. Both are parsed from `tokenizer.json`, not hard-coded (Gemma never + prepends). +- **ChatML with a default Portuguese system prompt**: when the conversation has + no system turn, the template injects the "O teu nome é Amália…" preamble. + `model_type` is `"llama"`, so this format is detected from the checkpoint's + `chat_template.jinja` (via `chat_format_for_model_dir`), not from `model_type`. +- **`<|im_start|>` (id 3) doubles as BOS**: the tokenizer's post-processor + prepends it on plain encode; `apply_chat_template` therefore encodes the + (fully rendered) template *without* the BOS prepend, mirroring HF's + `add_special_tokens=False` — prepending would double the opening tag. EOS is + `[4, 2]` (`<|im_end|>` / ``). + +The SFT variant (`AMALIA-9B-0626-SFT-MLX-4bit`) shares the identical +architecture, tokenizer, and template, so it runs unchanged. + Other LLaMA-family models will be re-onboarded as needed; because the forward pass is shared, that work is mostly tokenizer/chat-format plus any small attention delta (see [Adding a new model family](#adding-a-new-model-family)). @@ -253,15 +287,20 @@ constants: - **`model_type`** selects the chat format via `chat_format_from_model_type`: the Llama-3.2 header format, or Qwen ChatML (`qwen3` / `qwen3_moe` / `qwen2`, `qwen3_5`, and `qwen3_vl` — the last rendering vision blocks for attached images). - For a VLM, the nested `vision_config` and the M-RoPE / vision-token fields are read - too. + Formats that `model_type` cannot identify are recognized from the checkpoint's + on-disk template (`chat_template.jinja`, else the `chat_template` string in + `tokenizer_config.json`) by `chat_format_for_model_dir` — AMALIA is `model_type` + `"llama"` but ChatML. For a VLM, the nested `vision_config` and the M-RoPE / + vision-token fields are read too. - **`tokenizer.json`** drives encode/decode and supplies the special-token ids (`added_tokens[*].special`) that are skipped on decode — there are no hard-coded token ids. Two backends sit behind one `EncoderBackend` interface, picked by inspecting the blob: **byte-level BPE** (`ByteLevel` decoder; Llama-3.2 / Qwen) - and **SentencePiece-BPE** (`byte_fallback` + metaspace; Gemma). BOS is resolved - from the fast tokenizer's post-processor first (Gemma prepends `` despite - `add_bos_token: false`), then the `tokenizer_config.json` flag. + and **SentencePiece-BPE** (`byte_fallback` + metaspace; Gemma, AMALIA — the + Metaspace `prepend_scheme` and the decoder's `Strip` step are honored per + checkpoint). BOS is resolved from the fast tokenizer's post-processor first + (Gemma prepends `` despite `add_bos_token: false`; AMALIA prepends + `<|im_start|>`), then the `tokenizer_config.json` flag. - A separate `lm_head.weight` is used if present; otherwise the embedding is tied. ## What is and isn't implemented @@ -283,9 +322,9 @@ GGUF `Q4_0`/`Q4_1`/`Q8_0` (group_size 32) all run; GGUF `Q4_K`/`Q5_K`/`Q6_K` - **Sliding-window attention.** Only plain causal attention is supported, so models that rely on a sliding window are not. - **Other tokenizer families / chat templates.** Byte-level BPE (Llama-3.2 / - Qwen) and SentencePiece-BPE (Gemma) are implemented; other families (e.g. - Unigram/WordPiece) make `Tokenizer::from_file` throw. Chat formats are limited - to the Llama-3.2 header format and Qwen ChatML. + Qwen) and SentencePiece-BPE (Gemma, AMALIA) are implemented; other families + (e.g. Unigram/WordPiece) make `Tokenizer::from_file` throw. Chat formats are + limited to the Llama-3.2 header format and ChatML (Qwen, AMALIA). - **Batched multimodal serving.** Qwen3-VL runs image → text, but multimodal requests are served **single-stream**; sharing a continuous-decode batch with text (per-row 3D M-RoPE in `BatchKVCache`) is not yet implemented. The **MoE-VL** diff --git a/doc/tokenizer.md b/doc/tokenizer.md index 389859d..450a53e 100644 --- a/doc/tokenizer.md +++ b/doc/tokenizer.md @@ -125,12 +125,15 @@ than BPE mechanics: configured `bos_id` (default `128000` = `<|begin_of_text|>`; `-1` adds none), matching `mlx-lm`'s `tok.encode`. Decode pre-filters special ids symmetrically. - **Chat template.** `apply_chat_template` / `render_chat_template` render the - Llama-3.2 header format (`<|start_header_id|>role<|end_header_id|>\n\n…<|eot_id|>`) - and inject the default "Cutting Knowledge Date / Today Date" system preamble. - The format is selected from `config.json`'s `model_type` via - `chat_format_from_model_type` → `ChatFormat`, keeping the (shared) forward pass - decoupled from the (per-family) prompt formatting. Only `Llama3` exists today; - the `enum` is the seam for new families. + model's format: the Llama-3.2 header format + (`<|start_header_id|>role<|end_header_id|>\n\n…<|eot_id|>` with the default + "Cutting Knowledge Date / Today Date" system preamble), Qwen ChatML + (`Qwen3`/`Qwen35`, with the thinking toggle), or AMALIA ChatML (`Amalia`, with + the default Portuguese system prompt). The format is selected from + `config.json`'s `model_type` via `chat_format_from_model_type` → `ChatFormat` + — or, for formats `model_type` cannot identify (AMALIA is `"llama"`), from the + checkpoint's on-disk chat template via `chat_format_for_model_dir` — keeping + the (shared) forward pass decoupled from the (per-family) prompt formatting. - **Streaming detokenization.** `StreamingDetokenizer` is fed one new id at a time and returns only the text that has become **complete UTF-8** — it never emits a broken multi-byte character or a partial byte-BPE sequence mid-stream @@ -140,10 +143,13 @@ than BPE mechanics: ## Supported families and the routing seam `BpeTokenizer::is_supported` returns `true` only for `model.type == "BPE"` **and** -a `ByteLevel` decoder. `Tokenizer::from_file` calls it and **throws** otherwise — -in particular a Metaspace / SentencePiece tokenizer is rejected rather than -silently mistokenized, because the byte-level pipeline and the hand-rolled -splitter are only correct for byte-level BPE. +a `ByteLevel` decoder. A SentencePiece-style BPE (`byte_fallback` + a +`ByteFallback` decoder — Gemma, AMALIA/EuroLLM) routes to `SpmBpeTokenizer` +(`tokenizer/spm.{h,cpp}`) instead, which also honors the Metaspace +pre-tokenizer's `prepend_scheme` ("always" prepends `▁` to every plain segment; +"first" is rejected as unimplemented) and a `Strip` decode step. +`Tokenizer::from_file` **throws** when no backend matches — an unsupported +family (e.g. Unigram/WordPiece) is rejected rather than silently mistokenized. Re-onboarding a non-Llama family therefore means (a) routing its tokenizer to an appropriate backend behind this same `is_supported` check, and (b) adding its diff --git a/reference/dump_ref.py b/reference/dump_ref.py index 11d8080..729a53a 100644 --- a/reference/dump_ref.py +++ b/reference/dump_ref.py @@ -152,6 +152,39 @@ "café ▁ leading metaspace", ], }, + # AMALIA-9B (European Portuguese, EuroLLM-9B base) is a plain LlamaForCausalLM + # served by the stock LlamaModel; what it uniquely exercises is the tokenizer: + # SentencePiece-BPE with a Metaspace pre-tokenizer (prepend_scheme "always" — + # a U+2581 is prepended to the input-leading plain segment before BPE, unlike + # Gemma) and a Strip decoder (one leading space removed on decode), plus + # ChatML with <|im_start|> (id 3) doubling as BOS via the post-processor. + # The 4bit repo is the only published MLX conversion. Compute dtype is + # **bfloat16**, NOT the usual fp16 cast: this family's residual stream + # overflows fp16 from layer 9, so an fp16 forward is all-NaN logits (and an + # fp16 reference is equally degenerate — NaN goldens gate nothing). The C++ + # engine mirrors this via ModelConfig::bf16_compute. The extra corpus pins + # the Metaspace prepend/Strip semantics where they are ambiguous: after + # special tokens, between adjacent specials, and around explicit spaces. + "amalia": { + "repo": "layerx-labs/AMALIA-9B-0626-DPO-MLX-4bit", + "fixtures": "fixtures_amalia", + "compute_dtype": mx.bfloat16, + # The AMALIA template injects a default Portuguese system message when the + # conversation has none — this chat prompt exercises exactly that path. + "chat_messages": [{"role": "user", "content": "Qual é a capital de Portugal?"}], + "thinking": False, + "extra_corpus": [ + "<|im_start|>user\nOlá, como estás?<|im_end|>", + "<|im_start|>system\nÉs a Amália.<|im_end|>\n<|im_start|>user\nOlá<|im_end|>\n" + "<|im_start|>assistant\n", + "a<|im_end|><|im_end|>b", + "<|im_end|> depois de especial com espaço", + "oi", + "não especial", + "português: ação, coração, à noite, pêssego", + "Amália Rodrigues cantava fado.", + ], + }, } # Fixed prompt set — committed so dumps are reproducible. Index 0 is the primary @@ -567,7 +600,9 @@ def main(): manifest = { "model_repo": MODEL_REPO, - "compute_dtype": "float16" if COMPUTE_DTYPE is mx.float16 else "quantized", + "compute_dtype": ("float16" if COMPUTE_DTYPE is mx.float16 + else "bfloat16" if COMPUTE_DTYPE is mx.bfloat16 + else "quantized"), "prompts": PROMPTS, "chat_messages": CHAT_MESSAGES, "greedy_max_new": GREEDY_MAX_NEW, @@ -579,6 +614,10 @@ def main(): def save(name, arr): """Eval an MLX array (or accept a numpy array) and write it as .npy.""" if isinstance(arr, mx.array): + # numpy has no bfloat16: store bf16 dumps as float32 (exact upcast; + # the C++ compare harness casts both sides to float32 anyway). + if arr.dtype == mx.bfloat16: + arr = arr.astype(mx.float32) mx.eval(arr) np_arr = np.array(arr) else: @@ -612,7 +651,8 @@ def save(name, arr): # byte-level BPE; tok.encode matches mlxforge::Tokenizer::encode for the family). # Dumped per-model so each tokenizer (Llama digit runs vs Qwen single digits) is # validated against its own oracle. - corpus = [{"text": s, "ids": [int(x) for x in tok.encode(s)]} for s in TOKENIZER_CORPUS] + corpus_texts = TOKENIZER_CORPUS + spec.get("extra_corpus", []) + corpus = [{"text": s, "ids": [int(x) for x in tok.encode(s)]} for s in corpus_texts] with open(os.path.join(FIXTURES_DIR, "tokenizer_corpus.json"), "w") as f: json.dump(corpus, f, ensure_ascii=False, indent=2) print(f" wrote tokenizer_corpus.json ({len(corpus)} strings)") diff --git a/reference/fixtures_amalia/argmax.npy b/reference/fixtures_amalia/argmax.npy new file mode 100644 index 0000000000000000000000000000000000000000..3109b8cb997fac97cce01d826894d183eccd019b GIT binary patch literal 132 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC%^qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= ZXCxM+0{I$-I+{8PwF(pfE?yA^1^~fq8+-r& literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/attn_norm0.npy b/reference/fixtures_amalia/attn_norm0.npy new file mode 100644 index 0000000000000000000000000000000000000000..97b37462f65c20c7904668d02cf11bb066c598d5 GIT binary patch literal 98432 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 +@+1k0Lrg+DD0^RBS{ziW)72k0x>EF5J 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 literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/chat_ids.npy b/reference/fixtures_amalia/chat_ids.npy new file mode 100644 index 0000000000000000000000000000000000000000..96b4d7f1915e0125be20eb9e52c95718e4e2978e GIT binary patch literal 412 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
{92Y~~TJckt(B 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%0DUU>KiMpu36{I$70yIsO7 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 W^ucw;>Crl~{b7>snDF$+to%Q|^1~_s literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/greedy_gaps_kvq4.npy b/reference/fixtures_amalia/greedy_gaps_kvq4.npy new file mode 100644 index 0000000000000000000000000000000000000000..5705d839ffa5ff7bec19366b2b8f39ff3fbeaa36 GIT binary patch literal 208 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+l>qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$720EHL3bhL411<)J5B3ZU77h#y0zm8l#0Tsc7#M(f15g|!cK}Lj0Oghe aF$0h<>IjqvvXy}J4qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$720EHL3bhL411<)J8}<5tk0K^Y~ bcoLA$0F*lgq#J-VNF1bI0m%0N;tTcwPXjAh literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/greedy_tokens.npy b/reference/fixtures_amalia/greedy_tokens.npy new file mode 100644 index 0000000000000000000000000000000000000000..63ecd5b023a211cb22282bfe454e3cbf6ee154e1 GIT binary patch literal 208 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC%^qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$720EHL3bhL411??>28QjI85#H)8Nj%Xoq@qbiGg7P69dCDpg6kx4WQT; PQw9bnW{8@{>Ztkw_V6f- literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/greedy_tokens_kvq4.npy b/reference/fixtures_amalia/greedy_tokens_kvq4.npy new file mode 100644 index 0000000000000000000000000000000000000000..63ecd5b023a211cb22282bfe454e3cbf6ee154e1 GIT binary patch literal 208 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC%^qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$720EHL3bhL411??>28QjI85#H)8Nj%Xoq@qbiGg7P69dCDpg6kx4WQT; PQw9bnW{8@{>Ztkw_V6f- literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/greedy_tokens_kvq8.npy b/reference/fixtures_amalia/greedy_tokens_kvq8.npy new file mode 100644 index 0000000000000000000000000000000000000000..3ebda90fc5dd6efbaa7e64455854791407599eb0 GIT binary patch literal 208 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC%^qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$720EHL3bhL411??>28QjI85#H)8Nj%Xoq@qbiGg7P69dCDpg6kx(pL-& XTY%zmK>07G3=B@p5VeohA?5%80PQL_ literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/k_rope0.npy b/reference/fixtures_amalia/k_rope0.npy new file mode 100644 index 0000000000000000000000000000000000000000..1253652d99238a38304cb8cd5a50eef9c984f300 GIT binary patch literal 24704 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�F|d3EyRzxq~_eQ7RskgO|Grz9qqn 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 EANs@cVgLXD literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/logits_last.npy b/reference/fixtures_amalia/logits_last.npy new file mode 100644 index 0000000000000000000000000000000000000000..e22bbb0c64b00bcf5ab4a721b35a599030d28675 GIT binary patch literal 512128 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�O2h5EcDyH}_I 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≠09n-Wtw1y3<(9 z`!=SnIP@kR)%tna?`}NM>4L^IJSNn}WkKiV3THlD<{gLp#_?&0fS3_rIoiE1rmIFG;l{xmOfjH%Gjd0G=^r)TCa?AARo(=Y_g|a^iZ&EG_I!Z*?Fh^Y@7Lx~A{h z!3TZv(-8ZX;WLL1&Mb9*(t^Ry3ih&&&nw!=zq)uyzK>?br2m)8UKlh`i+pg_Je0NO zQQ5x+zxBl%8lM#Ek5BSMmqWAsdpdh+*pG(K21_?F9Us=8mgSE#)HTh#L$kldX>mgM zn~m>h)iQthG5LA5Q}?am-dNU|G}-qbYpkBGk26B8c_#nf_YVKOfp2+ zbVHbbQ1HR$xVoYLHK7Kt%#H<(zt~#u&RXNztXfp>)}=FDe2A9b!j8BWu!1e{3Gc<{X_}F)L<$!Vk4X z%ZEdKI6LI!Z|(W&X@k!|H8ZPgad}q_IN#Ko_vC(+>=hGZHSRlzc+Fq6u{zkZ@c|)* zS7iCFr{5TK=aW3qkS33Wu`^NZ&W-IG>r*+gw?5O;eDIyYp4PI5bH%f@x_4Z>H0V3| zj%VWCH`Lvv&+4CMv=KX94_@I(t#5)fHmR#v6rRqP;x%9=)uw{poaFV|msiU(C)AdaG-BQTyk|MeR9~ z6^pujb7LCG!Beqvd>|(4h#vNNCf4a3;P=7d3^^fdp9dBUzJJ)y8mnaK%>To>rqj|a zAIw+#{L~vGT@Q!-_X_jvDbI9O!@CEa)ZXnOFZN$M=wxm8&n-4**L{uc@4XY_J&o<> z-bmMK?#NiD`LuKXse8Gi%N;}cG=K2-4PWT~WAW0k9^I{fQ1EkJ+!SlaU7>E|T8uYj z)s?u84?RcAljD@|?<{ivbmJ|;d467qMJ|Wq?3f+r$7Vru{;Tl|vp2?{fW5}24N5VaaO#b`!t}JzPl>K`rmO~&}+1H)Dt7IR*jzb0wz0L%zc_v#axPDIWS?oDWm)GTJ$w(C8S3b@AufJC z)R=a|?u9&Fk)4_~mX8&x-7T{R#3iw~wbkDm;T#h?U-yd@x_0KOMY?}9_~3ngA(qub z{^<*6Jzw>w{l30n5Z~U7X>M&f;j{kGw_oe}_@JLN+&S^85Vv{e%f)Yo2A@Yqbp4mc z`k(LWZtv#Om1c5vMvR4+pjO6%-+Jo*XX>uQ^t!IQ?>o>yQwY3C15PWMDYj#X-6Ym1 zahf>PFgKh!(7H|I@Y5t_nVC^0$;>2+EW?bMNoE;l%nTai^Zodqx!&iG@3r>- z`mMG0ea~o|ILpL3Sv&4cp5-rh|ERFe1L580^);p^G_G~N%YTLW-m>B;#du?16 z;-;TC^sSncKhM;T_ zwYqk$szsk;)3S1>H~l>YZN;QU^pQ1awL^@>X|YXszGc=qwp@6}8Ey}GRnJef-Wt`| zoUXmMIQU0XI@sSk@=aIB+Y9mA-W7xM;f}1i$7gBfjHc5W;awU$nLTG>Jk&J}9}ed) zU7e-$(PPJCol*4UujhKuGx6HXTJ+sB^pU!@@4_st%rW=wu5XT|aZ;QTD|erc>cHA^ zea6sWPv0rc6Vp-gAHmmGdhXv^t*egIm$Ss#Lo0Fm4)Bwh{4RQ7@M`pWXWW z-{TvtNwa?l`#N*PxO&h`jL(L5XrZQ@9pd$DNt_(x;f&+UBaIh@m~IOB{8QNbufiJk zr>ES>wHkb2;@$yS=dNDeAe{9y-7Fr8{ez}7R+s9FkIoZ5(C3TAYaM!A9d8Ofu}RDc z>pv0JbIot{PJ=zN{8IzJitmO!KO8i$-<4VZ-V*nRGus++vZTFzXEAD5PDSq*^^fK zogEMRoF24P7e~g5VO{>1=RSQuR6L{E;g}Q7F24J$kwfE~vmeg#XELtC8oydc*;7JI zk7mz{sg3#fVq6jGM+{?G^=5ycahGJ(le)UK@y1~;?d54{+#YhG9-X}(&0n#~(K{N` z@A<}R>&~ot*f#hhH|ot9U@v*6jam?gnt4mSEBGZI{>Y#HTsKSiv$H<$9Kx1zhE$bPUG{#-h9v({IOep7{9}ku|HzTgLOsR@X9K@>3!2c*SiNr2Jhgjt(Crt&H~sCrRZG4X zozqxcwC1zi^I83QcPz}Owfk~;Zr5_9Hl0QM8VfqSDfs&PFjw!=(mZ?YlNB#5`0Ux` zjhD~z<(fEP`rzLV^bUQ7LhpP3J=r@#4}Yr|<>2PVVt**)aV+ah`do-j9)2Cp5;6TO zRt)#~ip60Kn$M42La*9W&3rKQ_C;aMsT23N=z2Kld0|#e_hha4(|9!QpFjBC`qsvJ z#+v4y98((0`5!|}Yjiy)``&4T-}|r9wceF;IXETzd|VLfR!n+bZas58Si}C#lpC_% zdp!H|F!$W7+K?M_XzqPI!T0Oa_0;VBA?N%RmwNeX*n2E!MSC?PC-nMwxc~9c6MX$f zsJoTAwuk@i27R+a*YdtYRp8E8=3D3tG562au zZ^eCe@XuJRn}=tgj5A|Ae4eNuT3w&@ok`4d8($vs>wG&qoV|K-&+P5-Kp1=1GiT<~ ztXerO%u(l?W!1xajjzq$g^jn2Bja7u2X&^WEf(CwvW;HWvGeakaIt`(Lr8zkHw*0%#jN^@mmZRWX0@UF!s!6+>_an5bMj~U4E$3 z;p|?a&VHX&KXbCyQ;T{>o&TlytSx8fG@jkqdTLGF{Jtl|GGao@U!#Q{Md zHGf&m41G2d^01b7Cg9JCaaH$+!+PFx-r3jp1NCL^qk@0p)~{nh3u~*9Kjrr=S^3{D z>_K~)JQwQ8JLiOdgFP<$NPIjzr|Bod`g+1OKlI+V;hY@KntNiVG!&y?nVach#(Xs^!I9uNK}{OCOlHCnvXt7_DKh_}sIu z`Byi7CU%dXgx;bv9a;PQwDI4Bdw+;`#~ITH{x~Pbx;`S*I4$2Bv+`eEsU3M*xv~CL z2liVbJD$}OddA*9bN-yA)tr#q7Zwb@W3JRQ`H};5qW(M=i@Z4t)uuJ9cXBwd^tJVV z69Y5Gcl=g>wIKrpqu*Qw>~;%;UM2Hc715jceU*FP?vNz zPcAQvC&OBN^s|vVKEE|~>c0HZ;*PFq%D)4GZ{E45@%yF^>UWFIpz*G0!EZI^Z#3zy z_Vl*3#HqHNZ%@Q%sF`!ae=|-;`udFaj(6quiy@c$WS556)c#2PFzmS`>zuhgu8nP5 z&)T#&HuMzD?R9gA!(QG!s%v9?=`)#DlV_BEcW(I(X+8B|uDqQPmxOwyq57hYT=8B1 z@@qy+X>2cXt6y5tfxqtWo1Lted5!s^hK|hAUme(srgZpV+!%ioa_PP}`MS=~pjNym zk81p-EUmsBVtO!6iF?vXyz|5Qes43LwZHR;PT$Px4`+e(>0oc~Y#djFcUI`#*;(f- zjhr>#jTIZOoShka#8<+4vqC+}_deANKR(eKwARmCb!`oGEVuf_cURZ)q}Rl_V^(~x zZH-mBUahg;_pRL6TJnBN_rxt9e5bYgKPS|-UYD<{vrEGsK8G#{d#Ib`vt!v)L%jOm z&nYyU-Sx9^O~~hmrwwxLyQ*g^bfT9)Gtf)D3~ z{(4*Rd+YF?exW&C++Qxdug0wH+4>=8)}a~y$FmPj+*>yLsp$g^#V+?xWIgA*y!|Mw zMXLpk*;!eBs`*7BhQEXu^u?B0y{#|QG;L3BOsCtja^xMpdq++DHv5@SyL$Je#{7_v zze~SAX3va~(320wZXss0>eR&YCcW5MEYVh}s9}T|94{dypweN7KRedNX_wUHc z-}}P96>T##h*`g?ZRezV&^OKlHOAMkWz~%sj|@6KANuUl>}Yt$8YhOli+P_oF7}A^ znmdyHK-RVQy(6v}S>Gr5A!he3Z%iM(D;{}p|K_Z7hhBSz9Lv{~tUB9a`r!MIpVjs3 zVc~2V4qCo0OS^^H9m9L-)jjoXj~~Y88lMquXF=jvqg-8;MIeRMcSx;Z;$@_)| zdE>9R{}_i(Jh$iC-Iu>>f=@Km!+KVZox`J{4%OWijji*}*f(Dvic=bk)xV|vZT7mb z-ygDKkjGOSJ6q;tmo6B5_8i=p@5^M5j2q&2K}+k=Sq^FFS}*BM&$k*H_$8-wRMT68 zdg42+^p}1(v-{5E4`zqsNBQ|`p1LP?e$kE(PsMo9QM}t_)xSB;ys@s$y*>MdP>+{| zYd-^C7W!V_(13quHMS4GF3+AH&jlYg$?BKU>{y5u-j_$`pP1>eUxEgn!-r4dhuj>oSdEfTp4bxhUNCtSz3DTcTDQ;oN(UB+YcM_!Q8_ei${LxuuF)W zE+>XwSQ1Z%+82js)>$pYwocH+esZgh)at_U{JNpRT<@uOJt42J4>hmGt_+`Rbe5Z) zLSEID?~8J#4*6=1_!c#G-{;~!8>P|oL5|h`^&!`jy3TAY4xe*;Q1jpHTF%eQ(t1wZ z5VV+`70a}cThE@LF~?@<3mq8n$-{TG_~tjze_gWGoA~&yb^NF2W#?iEWGz%s3AR|2l=>q&`=Ma z*?s%GCF=~4yE|e$?hU_}lLPy>w@J{8ZhV>7c>h=_d~RG9_Oh?DkKg>FlYFn!I~!(i zoi>RV&Wg)= z8-=saK1aoS!&>5?58pleP^cU4js*X2jw`}idVZOnPx^3M*B69$)Z|Ky?PqO0|K2oJ zms>SlOHsuhkRI1-^sD})a;MDR*#p5zP9&{A=k7O zpIob(xuIS>VKlFKX_m8q3uUS$qCE zdrQm-@!k}C{e6g?Kh_uy{&{EJth)L^Y!fu}zUTkkSbgaGi-R9NBj~qsmNs;ed(YL% zvT;O=hxcv^v5M=HS@%49d(fFauY`Hd05zuG7liy$dn^~v z#8{jd_SYAuXZe0^*k29lqZ2}o#isvgKQlWgXl`%&iq{$PLifeznoh6D{&kj4YGx#> zzWGKQdAdIPVwg)O+8B%T)=+nH#z#Kz@$6W&Ils#86AuNA_6s%i-B44`Bk)HIqz46^)j=yhoPC2(e8@{{oL$2sUmo1y4evQ}a-Z2{uK9lvyU0tsqVxoih z)$YYZ*rN9g3*`)X6ndhn^N=ci<6#n0j=@r}43)TdaT6a3?wpUqzz zyL3-|$UFb^?UL+n3kKi!-!wGXf9>wC5bx;O`JwLa2sJw%`-l9{M=hN(VGqsHZi}p1 zdS8~GqoGgE3i(t=>Pc-JmZj7DkWcw_E=|s*f$v0mQ>|G4kgRp+xL#b+H9zHac8rGJ zKQDVjs7-sZayJ%qw+4M_&&vIj#&ojJ@3WKNoz#-=AL4fI%E7;P@3DAx+MtfqkQ|A{ z8AB&Mr?;%PPgZXDeOlx1mJ_k?pRd-RmgT3OcHi@PA@9z2zrR1H@wdae>cqb4l$Otj zee{92%$2t}VJu(Ig})c(16}l?_>POsW0S7McV*)@hkCv=t7g@^+R;;DrJ0yst+R>o zg;{%ubJHw8I~vTkFN_!6D9rvhrYGT0S>4=%JSy+xw~zi~Oj=9paT( zI&I*$c>OnjaV7q<=beP;Y`{){(Pi!|3;G`~IjUAZhd&ea_)ruHs>z3W;{%Dvj%wP)h>e65~M$%;`O$+6gf7oInLmB#-k&8MMvx+l-H^4aAqIySsdx81|Mk?i-v9G@{a zXPqZLv*>8foGkyQr=)}u4MKHv2lLN7lW z=BZt=_?+YGTeEMB(eQbCN0vX%2(>Er=Bqh-yZ2JHMOSmS&RUDsZwUM9y*0C!XXW?E z>~^sr_$N2&&$AO6PYZM8b}Xw;-jW$;M?#~T1_jvZh`652Pna5ZA_&%y$N5efiJ})cJ&WSa$YD2Gz z?a4SY4NlJP7k7pDXJ@@fH|y`2J!0D6`z3Akp}n0!JA_{57eDpHjUjK&4SQQ(AE=F+ zgARH?zq+R`-WT>ZrlEOaw1=F|%HoiaGdXt_Q3k=GSM%OAoQ=S7(TP z%O$$*--Yu;e)Qs&Vb2SKc6wh8elD!RznSq$nBzOttyy}ycW)dO)|DgqwAVcw z4Soi_va!$CyR*(d+Bmz!!v}j<^Yx*IKbZYa{?q*Ma8_NO^~}0A1pns7-Oc-QR_x~d zH2AOH{I|o_@bA_7MK1K%k}!5}>#Y2-)|X@bc4U^$eBUF~(wafPdqRHrHNWu@adn7c zH0!hcp7u1BxA9mU;-38c&@Y>Z?DopdR&(*y!%PedFLbrFE=t zj@XtBf0IHdHRAj^xA7LCw#7~}J*z%hXF30_$Q~BI?tS~Z{zhZDqS2x8wb-+JU(DLy znP%=ALvFXrKJ2>jtyw)pOZz)B#as&RIG9Owian&OG^WEk?1>lrOZoJB-!g$yv4H zT0Qgi7vb5mSutOb6&Igr=d+G4&Q$s5oA^ev&&BLe|Hp-zcs54jjWIK<>2pdP{1Usf zkk9;^6XrPQ-WvA3H>)3MLj(2qhTyOG2`llyvZN$^*#iQS%b6YHYzo}Aqh2L(M23^g*E-7LI+b~y8P5Bk`{ z*{Ft|&N|oB@cl!B*dJ}YN1Prj$NF(}m_s|gWsbU`;b{v8=Z-wmZfe%v3*wou*I39a zU%nTfS&u$o$Z1a&Q!>m?|0wI>VNh5=Eh^eUvqxZSS?IyM<>s``$+H7?3$npy&nrY=~Hzq z=l_|V6?1~0bdWziYHYsRSGTJN{rE0!wK*D3FBp6Vd5@nT$&QD=r#LLTQTx~#-`S70rhDqb_bc!GzdxV9 zbNV38y}GY%CUc_}uZR;ueviza8EQq{-PicGkkiGXu09;rrj5G)Y%FYiYRoR4{jz$N z2210GxGt=3Y@Xh??yBLt?9{A1&&twDPro}>?wpu70&!8dtT(=TWL z82sESOTY1~I{#sao&W6DW490&|1QnyUq0GHPG0r5Yc=$2oDn;OIQg}Es3E!FyF6Hr zf4;*#9lj&U-5Y|>V&gM=VW=P9o1AHCoDbeLmqt@VKI!A%#!kx8Pru9kpN9tTjCCys z2Zp{mCEg#qg!SxcFZa#Wi|#pZ>`ybkF7EpIP~+m3!$n#C@K;ZZ-9Fy)9fHosbWL-0 z;r;bugT}M7^!-wnzdL5_d3>myy|aAs{cT?M+tUVp%QyGchcoQp#l3nPh4c1+tayDch*2F{TTG{g{Cu+OpJ!=$$N|a;mmdmq zPVzKAS!LRYI z*A985n>yy}a?{&8dqL0WM+`r!wy%(aj4nms!*{BMTH*{)%om$LVS zzX|2*aATSu7Vb~Je@$b4T^D-b^q3bv4trYbg2v~?*CWWgU<(+UOuPp2)bVq zJH(g6&#=}Kx4Ls4sHx?$>VEmG^{p{kD?{DmqdMRp9ppFy#-;c55@cGkQ3`b{QuH= zYRsI`u6GOmng2r1rf21dPHI*iEXuAPGlO6JP)G7Ux!*xutGj>h9=l2K)wyfVU9nft z`qr%TR3D9m^_-P7^O;~jdmj-#7v*J1R*&D9-7XFYI*o_FvEa}D#^R70zKM6+p2;75 zX?946!_OSMXXVAdG`7bpp(pK2m*J4({|bItU;gx}_3n@JV^+w8eSg__dU(${_0_D{ zY3Z!vt21^i#N;edQya&Hjpf3bdq#-S`1If(t@!NR;fosLhx#}^jtqM`=N^dXg5LiT z>U8o<)>HiU%p9K)_hj{yyvdi?^ySf^W<2+vIQajXuqHjlYMm9s9`-kf9y7AeJGwe& z9_pI@hi0w$nb333XX)-8y&}#h96o3qZ_ z^+L_vAL`4#k7mW{4EcS~{^k5wtFd*g&rdyIp13}r9gUa5*`&6AJv7Lt8WIbQ)?6_7 zIq`R`w|!%EC?D2QTYQrD(}K2gOMA7WHt5Npwd3T*;`HA7adp@G2EEj#wO_~{7k?ky zh1#{(%oq*vLSNHFEDvOzANz#7EX~(bvSOy4URNv2c5m&T(OJHKkzE|LRA2P8?su}* z)@#dj{Xf}9g6}JbIuM(=BaLT;9N5cRa?2N5$p7t)>A=S~g`BDhbH&Sly>&(KmHzfW zBJ{z1aaVk5!hSPLH|z0#+VnxJzWx*J(&{iJ46g~qF4!!qsc<F^DpvSpkZD-m3+3`@zyJhKjOwdGK>NWY{+YMd&&L%e6|31!- zt>SId2jAtb<2<>$d-ifJUKQ3+lLs~CJ6&kGOUzs_c<0ZJ>8&^TaB`?G8t5s$scCVz zze0B1iTT!ZR*2ia{5vYtfI3nS3qv0NF>8+X9t`#VwtP@W>h1clx86Q0D<^u)&lmRK zH|_Mg{L#nUmEypz<>8LlChjU%o}Jow%`6?ALo^u8s*S(T(nnv&m-qQ^?gzqq_CCI~ z=x}1_eR(riFI#`R@Lb*U@%6EM&o0h_{?;+)mDnx#qQ~{+d9AO;X^Yju`-{4NRrmdD zO&1!ft=&VPUXwi|{t)^=9Q>iZ^IYwl@8@Ofp52(HYGo`dXTv?CzuIxOemTAne6x<2 z_;`8tb6M-r-@6-Ty+eC(kH+F@gZ1QAF19Sce35VO>GAQ#&J=#w$J%pa*9q&hPb^{| z4Qu^RR*kAX{SP(aGnntIgnH0}YI0##Zagu!KJJb0hjr!l zv=|FLLj&>g%X?49I&o51YoAy!zcVJiuWdXd-t<;CthH$UFk*)Rhh*A?|Z~c6|IUeH9`QVS5xxRb! z=cnA$Rc)#Pb?6-ZRh$<;4)>hpEI(*&ohP!-$7onvoy+svW4AE(N1?{llenJC%8}R) zj1?LmmldO0nICHF_Lv#=pn+cZJ&Dh2huG-OZ}~Cjvc{hYHFkK`8sD#{oV)b3zdDdB zXYObm8G2LR#81<&#A=PjXf3gMcaQFi#XB>?f2+(tTIu6IXGda5EDAnu7}mcvtTC2d z8a@+F3-6l$rBL%?)MIMwBO$K;%zkTV&}+YL?D-K{I;wm1;NB%!v5f|u)q^?CaO?hm zUEdb;Qpaj(vR=Knf0(;&j5dBGXmDdzoce=~`)2PB^{Th!>+@;B|Hngpd2g~uFYQ_% zzMQ51HK9(=%BoHIw1@Tn67+Re(A{}@de<+8{@F8*Yp>(8JI9u>X~>J(xv^*BvxoQi z%U9>Adf^N0XT&z~)=(#EDiWPeU3&TpjXz{V-NPJ`dK&dXCv~Pd<6BR^;@l7>lXleb3}lj_q+}Y!Qn>-!2LB>8ci& zZ{EvUIi}x1t*=+~65r+bAG#L*a8_^FgJ!glGj%=En7?x39K1X$R@Xa)GiXvvwJK*H zo;Rrb*^O84oh!1=0YA&juYFbtHMnXx-<;vkXw74mi=V#LH|AxcZC|V z25rvonvQsXK4023J%;1z7!7*Q%&G(Ld^*b?n({{<$e*+8C-Iih$G;Ey9v^DU=MD{M zC13hh-K-Jc3pGpgSB3_CEl0HYRL_Qj4kOv6p+5A|^a37=J#&97)3qGwCF6PB`JpS+Q|QsX@m1H+7F5E5=o! zUe(PmjrpV2<>t}WKQL>~)v;OpEa*EPW5JiPiCCR;)?K;xZ_CnUR#pz|!GHQVEBp-f zqwK0(({}&HcX#g-*#}~+p@DyDNAIWy<2@SdL9xlZJ=OM^6IRaYMz2G&-W7{I9}IQl zxt_PCnlab4y4^eWi7&@{;(Ouq{I0CHtxx+a8{2bfr~%^-bYHEQN5j*zJI59w?)~Qv zdPYt89;xo^{mriFqxYsa=Cd5i>#x(q&)R!7)^DeU_x+vzlB_&i+nKUosGl!}*bk2l zd-hmX4Etu!iJQZFw0}7JvDSJ#dqaFa^b-I0puWDIr5j)Wv+*r)X~>5d-FK$b@8==k zK4YOCW`?@bcYNO<9tnPkTMnHs`b4bDX8o-9+I1@kJ z*cqa4)b*6GhIh{#8uY#1-z50Kzb}N(4nF^;@xM$Td>5dDHDBtU_2k(+edxTqGkbNY z37X5%w74rqgMVsIy*`(f2RRg*b#H2XZFt|hdXg>&1l`x_o;=90cjfJvVo)1v#&X@0 zn~yf8gE{tmv}^nE>8wyIYlXFGLl1eAU%#6Z8(l}kT=)5DuCwUnpr3rr&C*Hio;iE$ z<@&v`DENRC8q2wwSS{4nm$LFHW;)7|{lqrulk@WV;`AB%SXfJb#mEoO#h@Oqid%xF z?yH5vg0{YQtR3>aPxzc!p=)cpFNZ&Ayj`r>_?_85#&1LH@_usg)wO=QGHbmD?ainWGq6zKwKb_}f?YSV-kG~Q4N@H{Moq5i} zg(0SAvvl(RqyGKI$A)=)qmi@vzSt_%jDC7>!65h6p}!hfqx&m|p61inCM=)j{(+#k zbw8I+7ia0NM!(zG8sc~T#jN_LJ%7bKKTG?&v;Pr(mXi-P@$YV#w%w3JIk-9vYQ8OXt#X!jx4>! z_s_u}ziU1*E58SZGfN(Q2O94Bq1Y|>B5vy$)4^xMN%6CE7Yo0jzjlr5gU;u+hx38P z`-d1^>jC{Hz71k#ywcnm*}LM);r)@US{IX^@m=NNpzUP8z1a0ZK{xu|8tR-sdpA~d zdgz4Kmy555SkKLh!T%N+Eyd1%bM?bYUHdE(vpm_~HM@Jy#Vv30dF_O~Ec>ajwl&Om zrrGbdtaELdpu=_XT*wJ+k7&$STFaYzw2}uku0F2}HLgBAUy$|ASXMo%G4pN+b*~4k zPfPXW^W1u)VJ@F&BF}roEpblRS1o#GozHbG)_L)}pn)@o#+P<&z8IknPY?0DCB)1J z`>Q+ey_B^dUpEN4+gmTK9G=lgtUr%+d*_-geXoiWV!7^_|E3VTdh$%}hqH6S-tx#l zKf9|#&-q}_RkFibF{mGYsjbD?6|!_&v#~lFiN6YGn*R?I+C3iDl4tMu|8S$<{V^Ke zSEq8NhG}Z-JCo`~_slnQ_;Ysm z%+sgh=gVswtM@y?ntU+dK5}$r_h~YHXpndLr-66HOyfCOv78Zla?132wz21OMh7*z zcj(Dy!oLGMOPtB>?Gsye@9?ZX@Ut9WoJ009?|&!8a=K#vh?TGQRrjl9)g6D_x9^h1 zOInwoJ_pn)-4;*qVE2}3tS@c~@824Ff)Dev_NSS%asANO;<+)74fW)UJ8*e{bVs!kQO_d)9Rx+4tfQ z|735|ga1R_H|C!_3bv10W3sQ=9Mo#KWtPi;(%s~d|4a&|z-`Lygt;p{!NHPnfG zY#-`HkEwCmstNBL*;qZkG3)sb!G~=^+-JpI@nq1CPilhRi$mS=O+7e&XvR-|og1{J z(4F4S5o?PN^6$JkDb(Wdgk2`9R^DSb!<>J}9@{$Z+uu1x18d5|jIMVN zb!`pzea<=)nShk2eInO!-1*W5u|GrL}+YyC+N^YzBUEKRK`rbB`bf1j04_h_?9 zOn%?luCevjY2Kz;wKtxn)e4QRFNc?Rtv+0f$7hM(rHRXVb!dpyT)xw6arVLx=T$K} zG;xME*4wnu3(g&%!RD&9(X2CMMm!wm+Ml-ke>TpFsa=m`ts{4nS|8W=xb||MoX}W5 z=&%21?EA8{^ukeD`dplSJgn`rz&&T%N@MtH#*Rs=Er6q3-kD_2gK#) zl|8awYG2p>{%|boompA+q_>6}>jCfT8}+YFeICCi+}96_W1HabSjZ#4y|XmrZzSt% zpwq(My)*mzxIK)25#}z6jYHq)PqE0a8azAn;ntzH_Yb*o2H0C&ivPQDX?xIYM&m!m zt1)Gt5BKM0zdAH{?}Wy5qNSK#3VX|^Jl&DqJ06%e(7k0LCRd&C4bBx7hp;m9sULB+1 z-Ah6|=f-zJJ&Xq5=*oxX8oPg3(9t{MtAd{Q9|At?D_s5XW8NyO*R}F_e8J#Btxy;2Ax^*$Zy&>R|@v$(N7 z+CA(qhCgRl&hFLw&QbH}VV%Ft%IBq7y(!OpJ~yoWNL(0nQ15SQyh9uv&XiZbj}Hy< zZ9TmvNAuciMwSo!XPw>7T5CQK>iMyW@k3eP2l%<1Ir9fv$(^~*G3#&InD26RZ`PT` zFEOe)>&*;G_cGH5^{g(PZSH@m@hh=e zct^c^c74}$)Zc1JeBzCz2c07wfJyI_xN^1_PkIN>P#)Ftq;Yd zKQB)_zcK4$5lPtKIzhCJv=^Pb779lFv}>}vL~`gM9%9@U(Bw4VM}Lwr$R zKMZlp@1~)TtgBX>gExow?9Dg2496L`uvqD~ujd^iNOpP65-JsEj zLLJ^7ax$6g;~Vc6@})M!X%1h{&-!jKn&k(LY4-KlI-HZkA@{3>eeJx;ahQE%n0wPq0cs^=i*SS&Ji^!Uti3sM>+DD zF7Ky?b8&^PN3sj!s<=N+33IlKXMzs=S0Dcqbhn;9;_q^Cc6ptgrzh6$-T@)^>W+_k z!9BJ2rK}p;J*z(LE6?^b7UzG5T7~}(*gW}Fk81Op5TCg2Z-4bO6jz6OSr9%i^@MXn z?CyJ)KQy8lUF}V`k@#$DIiHsa_2F~g-s=5|cs5q}W8Jv|=@*W#TOe0_Mqz;AldQGR}!_5Hz~XT^ab|IR$M zD>nMuW2~|M(KnwB^{*%SAXj?M_o!E|vtrvbo(wf-W zG}aDdHA4rrH5S&V)9u+4Ya8pgXR_DDLGhh%Uar}Fd8gZ7f>zcs@1mgN9&v8m66%1yo5h`B{BWqtW3%4h zFDqVoStUC)=qQdUjn(5yY0P)|elcbRJ=7$;|2N(HTsUvmiF4xacqP>SK3QkvibDfE z#7>vdP#?Eu)s`AKtvO#RE9eH8eQGrZ!eH`k1!*LVaHvG`Ju> z6sLx|d|%Ld+2A)ny-!DZSC=ovmce&^%f(puIgtMQP8Q6QJpTQS%=Ea;a$J)!a=aQ_o)y?GDba~hEY>t|xhnRd%-Lx^EyyG0;!=i9592u|H zOZMQ{G31vv{B~yD6V^Q@=q~sCGsnI+#mLa$`=IAbyS_Jm8_p7OtF3>JUx%Kjt-n3g zxB8ub&hAfz{Mz^Gp!o(pv!>^2z`kOUYyGTmtmkuceB%DTS@rj9i0gn5Ctp4kkB0c1 z9eVo3P&ay6Z?2V9-*SCfmVa`8dSf-G9w+m6MdQhyP-pbe1I~oW9^1U@ox{(m&t&C_ zZ>)FR=Yu-4-gn}ppw%`(BO1IZ)bur>hF{2@CrU*`uMmhT?@ zMjP9EBxopB*LqN_a=i8Q!Do@P_}X|l`2EMMb@;88P7ZzNoU_iJS@rT%*1vsxE~}pG zJ1@&WwK^7ZxG<|O4-7wF*k4Vp+q?2jkH3T-cz@X2I<%c0)^=X--?=1D{5&ixM|83t zA6?V$@KDe8|5B)d{kj(05#fF7dH0;GHPyoIS$(S(#ZMbr(f{bIv-i#{f8@x0-yf}W zRoC|C$1RQJc9Wq09a;6N2c8RcuW#s~=h?qbkC(eAuOG|4v+Jpi`7yg|`_k)_P~S9G zN7izt$_Y)D&t8|+-&e;vUCXWd@?GYeSvrXGpsaJ~zVM76>P;>@x8L^hY9F?T{C_YW z>E0pXTC86Ueq0-JM@yP77eDJg*Ul*QbWGTbzj7-_AIz!?J|7s?{drd1oEuZRrn8=r z0~$Fef6IRXh z9eQx+rnJ?u01q3clGbhu|rG?3qu(qnGcd1CE@vUJePZ;Ts5d@FZP4T($6wMHZt7qlPd90@SBH!K>>zhM8I&ZyuNn_`?Iy^4?JT4YKk7Q4XbAlGM zx3{&eXAN=bXI8D<(fGWu$7DUJO}gm6_r%*mZ#z3^K6y4RY|Q6nb&>+umXza}38$b2q8^W1-anQ{@x?AV0EKT(BXvqEg z`J&e7XAYfa$BD5=$noN!vl_9V_w50ioFD%u)WD*6Amq)N5N6)s0=ZhPQ^Mx3T@5GHgo11-T0(C;8HM7nj`nspKN z&N`pFKgfP7oLhQmX)HT^kTdVejhNJi+BZ+$d>2=na!Uhq)X2LU-xY5Pp97vh5^`!S zejSi?zBv;v3H>h**Jjtt?vb^Je6A7nSuW&`|3AyxYchxYu(r=^&t3D!xwJI+PEY60 zsaZW^-paw3FUO{FX*j3pb8h3ygCBB9KYgWk|32*D4B4>pXTqFCAqMlDkLpOxxz?|{ z1g+%F9v3&3yPd<|Yy0n8#A*H&-FqzL&s;SiA8KrVENbq%hX&_@K35O#$%>h->dU)w z_S(28>}8ETdw2PsdFQ;Yoe$RV{G7Nd{x0O&nW*-E7oOYug3vqWc`jzP#qYhczYaNb zUybqKGrg>DXuLQ(8tQ%RaNg1MH;v^-zSN3ZpqVjkMjPK2YV45kS*~`>m#@7i?yDW= znDzPTe2`!J%*?(wJ{~lt^_{^t^=hu#vfg*&fH03%-ZzIf&J7xi)48FhR*Na29%jW? z;?R7gllPqsv$6+<@4z=@)s%e5m35BG`Yczsw3f@0fc+5cq!IzG#G&F}G`*ZQ$_&{MyhY@Dy3%=!+pLCCA#;urr{3tCuvx9lyU7wMoT zr*ushzFsq7C$-tBYku=@H0#`cD(mbOr*`<3pi6@TYTN4m)4(xE|&ll$o}@u*)l zAcwPqezZ|H*1ROEk59->%`VQW_MH=k)bFO2zfW@B|O z=Cc~_7q`b~93J1F@Krv=q|Qcze^2#{|FoME&xE|~nf3ic9M=7Cc+cm8Ico-uta(Uy zN6y9YFReM2)tB#`KFBQ}ojd1b#Ya~?YfbB@OSQaw_h~{~bw@M%+jl(dC!h9OH)c+Z zN3zzvJiBZ-H^inE)WMJ9uCSLn+$U)LU)iTa4a^VksWH0BC!gs2<}5#auj2bL6W3~K z=f<>h4*1@_eAlm!uZ2Bs$T~ahuSeaZ(`e|wXX2*t`NV&kA0O&}!|v%F{kkZ7d;2@L zw{5JRCu?Q(iFZ%#-Uk}<@yO`|UDf`o-9IYm?HsWmZS@{~J{af5jIfuQ;FtIpOt2*D z{fEQeHwK@@zC+^;@@>ZjgYV@ueqY=YG}p&sm-D&d^X9=U{q(4H^oDcgfVeQ!%AFex z@=jYlqqeUN8eWp6pW0Dtp3`-e?0DAP?c#?+gEK>oUe&d_cz4$Ix3heGPx!8)_SBvA z=q7gu#~!gb#Nn)4H+y9GZp06@O*iMhGiJ@~jI5shRhG6i+kV>MJES=2d0?2sZ+RWf zo)Xr(KKs#-W3{I)uPT-ovnR%Q@JU_q!5ZSCu`@#boDgD>gQ4tGSz5cc_m!dM?7>cPA7vfdZ}N5g$NR?E&Axe?#{8`Fu-YFu0wW%ZwU zUGvd7rtkL7()+aRsJ7XyOubxr=;*fKD^G)9Lmc1tL>p5CK-Mw4mUE$x!<;NQKqRY8q zyiPpXSRG7l>>RM3XMAz)s@u!rtMOdeOTDQny`y&J=<6W{F{-uy4)KXoPmRURLC?{U zcltWZ4$IyipN=!bJUvA_eyee391ZBcMey~lL)B^VE$sU0u(#TA=F#EfjlFl=gw+e` zccZSwEnn(*v@uQTDQ?=`7>|THrI-HTJD(SY+&V*?^|aulGxUX!U+-HRblWl1D(J?q zJF-4|)U3TgFLBSz(&O&pv!^=HFJj}5+TJ~8#NWnpu~ztwGA(XtY(4MtL2hVi-$}jH zf^*Rs^WET^J)HTYF+1dtmd@QPLVjKodd$20d3$5uRcWze*keieW`~?TmOU@rr}LK@ zTi1Rc4!Qqv92Wdut7mlFFt!Y5hrG*$n$#C71Rd>jNURZy;?%eyxXAU4v)xg z9Aa82XyLxNX*||7-XHw-d!_qBy~?9=;A74ER93(7#k*_A8o_^i?wNf@h-1~Dm-!cD zeI7g?YLNnKd~HCeUi9sm8y zUfnxCJijfwZQK{?n2-FY(Pmk_DgGxzKJ^G)>B1i|{2?p$f6qEIb_p@<+Fs5T@r&7< zx!F~-bhqZkad_D0$m~|}+Zc<*p=R`=x}}F+wYHj)OZ(IA%*H2&b;U=QrEzx9UaZeA z82tRG*7z=#Q}Xemc(AcO_@@s>!a4Pao^9Uv&Y;6`-Mb}A%L}tK+c~ZYv2LHW_U^qW zclH(Ic<5U_zIV{~+U!{HPyXmDwi~nN($YS+X89$D@^J0sv&#u$6 z_OLDuXhmQ9Ta!P&L*n4Z*0qP&)U7$s7Xu$(2z4$_^M0RI1J<{{{=X;WW;Dz{E%cN* z^84Xw17B9^dacmw{1vDAxI8N_^m-+`YW!$|?_|ZGw(Vy=|K@d19BP5)%V+hl_?>aX zjrR*{yY@NZXDanVGw(f>6}Q@aI7|Q4;=0DOV`lKl=bU)t`>nwT^X)J9ViYT#)w15C z6;13VPWvC4eLVOjk9^?YQQ`fu>?&FPX%96hR`b*Y|M=kC+$VcRJQs4SKE!c#<43}G z9W_22^r821@ls=JzAk%Pm^(F`G0p<|@Wq_FyQYyito@#>``-C-i0R3!ebl?!^?WpI zKlhfzaQMBl7*+`WTo~#=@9JY`kp98_GAj?XSHEh| znQ}>p=Vu|``biu+XAci?|3{Y2C&rF3*^g@7-fCvyg2BHFEo`jr`Cwo1`n>#7*R-aE zcXo~6gnZb;np+JG{PZ`S=JA(S^tB!>*2{`bJ*hFZyF={JJ1=K{8|L^vaYFX`I4rh| zohGg~Y9BF94g07=?^@S)D%W~yaraIQx$@l49xG;7&*~k}{de8t>u2Mx;HS@CI*ZNN z+5fhXL%nKEHTjnbYu=uX#XGH7cBTXsC{+weC*Ub`>#2D5UU#V{#Rqam>GOl z|L=`e8q^>fB5;@>4W;8T7D;evfeSFH|}k&`gQO07>VOU zZfMM&-L+cwKAhpsg1^n$!&&`LjlVyA@H51HjpbF1I#=lEdi(ZTn$=tS)V<^4|IPJ^ z&9^Td)U3}B-!+_jv|5z?XzS>y1+j0aQ|Ao7#6%xHtA(SobpJ?Wx!}{(uK9Ir)_G@L zyx6sx(iik(<@KlSN1s21_q-#AdeZaLvU069HqWYC^{fu%!|y+7M9b~E-X>ntn3n3! zd3j1KjyJ~RAt&bZT@O4JzY6uqFFIZmG~mmI-8(#cad>}5Y#VCY-cM&&$-Y0UuGFD; z^|#vO3+>%E|Dv9GuJ)ZT_P!+a)%>iSiD6!2T5moy_s0a0YM{HUhKbYm?+F>3)?d4tP(it%;X2%~xOc!Kn$bU7o zd{%DwzJ8n&SI7S0ck|b0Upswp9y>$C>GOhyYE15z%c|4KHCJoAYWJ)!HgT#!Ym4pq ztanezs>|I%4&_WwnBz8nfdQ_lC3f^#0VwYGcRXn|jxq{89I6R6QKreQR3FIl`|W#Yy2gA1;r*LhQ8X zuRhf;)>~!zU~T88`nogJ&XlfaXWggSA@NA@%Lh%>n|L3O1G_(*<%@GcubAt+GLL5O z&aM#rr-eMxj0SSce>sx>&o}m-wLY44@0qM~>xry9TXUn}@6MrqZVP)J80Ut3?wOtZ z&T(~P?_HX8rXHI8OME$B-@BlB(+A(FzSTW7spe0Jk>I2KX+~e4ceL-WjqS(3xs7S)95d(1uqGe=K2DA^ICX$ztC$J#+(rANNg4~ zG3LM6ok`t&cy@@xIbpvQ z!upq|_2hYYdCza{+8*ll4MT%Ddi0^tSL${5@cBIwdSWztW9W^?;=ze)J-9fmXDsF^ zK~wqoW9%8OhqM3I-ujWgbd#(5Vl3VhbWtnn(V6tttaIzdtg~XW7imL_SK^M~v-P}3 zyJKR0=vBTti}V()_(!MT#LA8N&JTHUri#($(em9FyE^)0s5^P5p&nT!b{~G+Y?ryPKbI!_M*?#em*-N#Cv$q$Xd^a+CC-wQmojRpK8W>zO&f>OO3x7*T;!rKk;qce&V3# zKW4>d&R@r!p%3_{*MFOx7dM9e5>^ozb#^1`yg|+4J*TFCP(*1@IiyESb zb>xe${5rd_b=2|hjlK6bS$;g9eIotVZ7e4Bsr!!xj>VpNLcW%k*B|UF{b!7ez zLmc*!H~P_0-u{qPyUrxO^3D2N$9U-VYvQb+%eC>RP@nXXH+kgWBk{G+t2A9H)HHwe zEN$qZj<+i|`B$yKG z#D9ENjI@?x?~XR!KdjCAZ!P(HT^tc|a%J|kxIOsmv*1J7eVTiCmiEqCnyLfm`K^uR zUd{1uM)t+fyW?5wd6!>&UNyToE2m!%`};ihGxy(T&G}@gpPNH2{x>@})WBHtPR$-2 z{9F{zg!;KZ`?feP)P!6)`!8&~YlxRl{C=o)#H%J|XYUR%{Wfc@y|QwmKi7>pVO>7` zdkhC%)%%h-EcT6agP#|K{q)po*|)Xdw8rZ2({WpTGS=$eEm?bugz^Di~kO> zjK(3cB%G6;i$Q((yX14Se-|TR54B*<>RIC(8`E~PP_J_RLdZWIoj=Zoo3ehEeR{eDIhY!3Is^ld*qPCJcqr)NZ1IR!`>r@`FlP2 zp7ZD*ugB-Q@B6y1>oeY;>;47<#u`1}CA(I+r%8X79?3o&@+&5>J4c=qKm$ zv6wjAuuJUgYGl#{3`6UKnDsw%?}5WcBp%ac7wCd&G~IggGZ=<^6?n^oGVC z4tuM)TJYUETZQ|FgxL9{PG@HSBEAr^W2-{9YVSsKwJ>U(mQFYQyJwXtsuZFv7(y?bK! zoZ<4oUwt6g{G`dD#I3fhvxMt z^y?0-D`)g2)=jc0Qg4{NE93PaFJuFsrxeaXfrm^`mRP9T`81ox^+AWxaD~ z$er<-L38R%t2c(;(#KP~XP#O*FU8^hY9W8}{o|~dy-ySCWN*$c4L-@M+Uwn?g5Sqw zfs;}=3J-KeyZ!0?fTsY(COCDKzzc?NVb*ANgv$yq*zn}Z3#{X7ddZsR; zF&6a2H~Bp*s}J-S{eLz)8uTG%d-z_8{1^tTC6L;$JJA%Y3A}N3-6OH?iuy>$7z7OgJY;vcqv~JQVhz8Q%>4UD&;C zLND!^y*(ZeYdas-n6UISBZj&b8^7q+{_4fA;n*-9EVtsbmwKNQ7sW`}SDx&lUgqg- zx!7;wIscY5J|Jj^M#f@c_-5E!%+{j&S)q@&%^nl<&EJ_>|DL;i=>_Xfo;~*em!J)P z@^L)$w7mV#jKSXO=Y4&6O03>9{+`}=I9`Y;T{{=(h9=L7#X&pHFZGn?6>(e8%}ACn ztHr#=_mwlbT-BJC9th9)WDoTm4Y}a&^6cetPsqs`S$@&aXk%-s_cvpW#_!0A z`QqDNp$?uo|7n+2M?=2k$)7*`bH!U59~9Q3HT~%MXl&lKn70mf4dC377daG@c+|;xrH}US z9?d)va(vgsSdP5Q@44CMLl4UjpY;!&sKw-YyKdv%yT5O!qy7`etFt%7r@}t=czIY` zOgo2K@ZI;{S?ip6Rdy&23O>k(+Pd~!Zsgkh!$M3nZ_dKFD3*kri}`}`qW|QL4#e{H ziP|5~SkF3Zp$77CWY#`>o$OW5#I-7`W>>@sVJ~$N(>cM11u+sw1pTRj{GE{%kC^G> zy7)s3<&W#p7!Eq(*Pr5-p(c7+Ux-uf{kcP4&kXVT-DE#8)3V+h%WfZPa$DG!e|)jW z%ffhR_xx^T?PYCsryKKci9>_7|2~ciTKQEx7>|Ur!1%vHuJwhp>-;Q#hvP>v8rOt# zai@4ToMWr9-;SY)>(lZ_TzcEL;h(yu6LFgBzWqjG{g7Mvk~f;L2hHHo*eB$We*M|v zO^wB`Hhv%IrTLB3SpC(>xu>Si3%Ta!ra^CVqnDmuGN_C7>EHaP;<>mnthXX-FMC^O z*NJQXibZeO|H7<%T^oAM{xs;B{PX|t;O~nu&K&4&o9^+4e|t8b7kp7$Iij;Yn!C}` zL0;7J{-BAyV_Do3?&}d}k8c_+S;I49b$xkb=MTT=>TkmDs{I!K-+zyQ?~CKvkjK^H zkB#Z!+u7}^<&N2phq^r-G&eKooA1BLo)S-n94!y|dP~pv;vGFFzJtOZ^7Ds~Kl(PG z<~I)UigQ|HbrZ|2U3*8~#6UYg4SK#OXw2H`X5FDsE4g9$;eGu-wXrj2W#}P!RZn}t z{YlNr3vHYi-q|j`7)Qjz<;I$PJz)aR_(Q8Bp%3|G-^WAjXJ_px-?X5%{{61SS^C&D zo{v+5|JJ5aeY{@R{Lo*Y%v%4&T6axn)^w&E9BVW-R}9WteeSHJlLH&GY9{}_4QjVV z93M0w*Vg}N_>RbnJS+;nIOA!7pL)mMZ<@I0T1_7f|GfFw?5E@8R9sKQ?IY<=LNyc;r#shlD<*pF6@Ho_od~ z-`X@_uhFdY!`||uE^9Tmr#Q@?o29YqvX_L~d)NFAWNFx*^2`VM_ujlL-MVj$EwZ#g z>+Wq9bfZt?{lenY8`iVmXB%%DV!37FzGr?nSf9^&S+A?vi#?kCOdJ$n4f~6Q&+2Dg z`J#j2tQ^~$&uYmp=dV5a=6!mnMS7ked{Ae(8VU8I^T|B$vWKl5(Q z{zK3meR<}4a&*?WO}?C?$7SW(USr{RfVgSI8n=ft$r)_jIgQ1mrbCUzY;C=BP1d{H zWmip%<-xuEy0)G;+&e1!iLm};ul=O4wJ*rh!Fr9ShB!_P`T1DTrG52-`ndn&xO4Hq zC%f_HD--)#wtB>!*oa|F^PT1QTYG(ge#sTjf(z9}8O?f;x%hyXo z|6iSbCe+COY9K$}{d#;W_)eeyleOO2?eF~X+sO4!q0ai`+hK3@d3*NCm>+sno{nv- zN6eKkd0#Wc;JfzScp{vUX9gYW0Y1{0n&=VNd{`?^Z>&CYGPj(5Isb;bp3=47cyjz_ zS+#`Tp#?pEN#j4pTN>MEm&W|LJuBwpvTtoY*K(+j{wm~9KE=IBcs3I1%@6xt9Qx&& za0c9!?&UzP=}sTYw;bB{#+a;&8XVES zhWEWY8S^<4_aDx>zgC>tmMASLMK&Cm#1{|E@SJ)JdN7_fXb6xzHD@HTQ-rEs0xQ_J|+E+Fh%QTFM7M<$@3P z^!(JuTL&$fXZ{O~&6fv0yKg^v9}nO8853jc>0`CxJAe4DFX`Gh@9C^s+w+mEoLn4V z3;#U*{Op0@4Cb3T&V|ve^}PqbRrMDg-5#_pCT9V^kInk6PiuR}(cydV--}UW_eO$m z)?X*&&YELcy=c9AV{uqhO!lVrxxokVtMjKq-A>QS8Nc-hoyisd=y8pZ3+wSu?0%C% zzW6OiTZLZxWSklNl>eJUefTnU;vE`#w0rctGEmuK79Em@e(1ejA2!>7!lKxjOsz;Jh~;KZ)0bdeX7@tv?oLh1lp- zUo7u>Wyq;sx1OG{zje>f%A@_CY5Y|1-5UNm46WMdlsF)qLGwc)IRFB|rZK55u}V?M4G(;H8I7yq(r zvCyJ#oLZ?L9sWfe7wd&Oi%-tvL0;~P(KsS#htChhg)uXnJ8GvE)8g{riy9iwTQYl5`M&bSc?LJLFPyH}n74m*!$d{asXU_=djo#s}zYj{s z)|R^|A(t0*?LF~%CTIHuJ-xH%@^D9}x!iue@ec85h*`XoIp3(U{;`hdVzn+GY4+)? zy~XtV#{54j#C?C(`LWfK!Ma0@)$#BN>)fO@?{714PkybVc8_HB!%MUGg&Nc4F~$8% zc46EWeA8RjS(3dqei8D=5AWR+=Bq#d<`LYxSdrheBNPVlBPD{{$~&_117!{eKwd-W_r* z5By#&=uj?c+unS6HfU6ykDnMHowbMm{ZpK3L(k3@wdV8LF@5Hs*52E)JY19YjLziE zy8N}zNg)?<{h@d~4h(tK2jW;aOGC>Wf4Q}tVP6gPv!6Jek$l@O9=Ncy>(I zg|@}0rry0QD|YLzlcguV9p89^83Rq~H~Z}w^zP4PeiP1VY_8|*Sy{Q)zt)jo^W=>0 z@}drEDVM(u8gv%8Cl2*f^CN<<>a$+RvEPpKvcC>GdLj65Ug!^6`slL%)3p5Xap)St17u?Z)0<4k?!>o9nd=+ z%D{DS5-59SOp4-bhe4$^xG!k!%Z^X}oFU}`= zpiQ;+?%nbBQ14TN4!#v%3eV+=o~)6LBb(!V68lerPWB2u{vmD-XYU5hRRcO!d(W1}{1^-M zphbGWv1>ggHo4e2=>8*dS(tll)_iN~R~or8#QlqqTY7zU@SCRX>x{AHGjT}B+YiEd zz*o9c!656btv@E(obn&r>BjcGz2{e2rc`dV1mnm>;zJ*SiXLypBPx9TG1 z4SP>roHJ)-#jAee7o+d6cdu-oeHVvkbSQUY!8&KAX06Fb`|3Y_$k82H`qL9ML|;3E z_#V!}+%Lyi@bAp_9BRyOYwZzoa&GWZZuP#iW25HM!n%$5BA4da`xD*Ubm^ex&dg)F zz9KyPM%MYcJWKz6-*4BL)-DfwA2+eKx?dUI75`ZFZQ;EISv|FJT%pzA^YcmUW(pkIvuMy~!T1)`dOii&!S}C4Tu*w|!zL4vJl4Wzf_~*)2lO zT#MIt=Ju@j-2ZUAKWO(4@!AmEkF)f0c>F5(NypY0oxr}<8_DjSkIqy2;j=z@clSK| zX{g0%GY4mgn(7TP@ZsrrBv!=hg0FOULSw$@6V|ut>R1}|uvOM?1#3OmSWTTrdika- zExNBpV_9eLc3HXP-`|ED(Wkurd*dGko!*$`kMrn1vbV$)@x5^Vd_Tk~N7sg!mc;Wx zJ2ZJ=tkay$LLO=VW949tuI+E_S7fcJ&u0gJ7ldbY{A^hNiI^W^*e~l_YaQ>=7yqt{ zJHkD6SK~FCBX?IU9efA)eq1=$oOOE!J$yH;X^op^41VM6()fi?5A5D}r=U~1c1{?d z+&#HhGj)**`INtrG~k{d#g4WeX6sV#U*$0G=JjSyu~r;?eE;OZw^DB1r&l?A4CjgX^su?K zqNaRt&EK86_Kv>!V^%FjLLHuo$Ew>yS-yFPPUyv+n}<1Kz94&FScCueotHg0`19Q* z1N|S~wci;0Q!Dio(?4d_%ROsbOOD2~>L5q@eNh|}bj~mOG*^$&rrI8##SbQ|`~0C3 z*7wuAQ@W;qYp5apTpj$oZsPu4S-6l>EZ=EpIG&9?krxCShw+e zv-VMUb+g}RvTJ9@C+^!ztj-4U+sm1?LD>6=tbCjI{rs_~=Lg2Z@a>XUJt6PnelD!# zx0u>p9`bfo$b!0= zSnylE4+E(d&-Bt+c&J^{5mow>nx9SD%Yom zGr>M`d1o9FcT8N%pPcyjXVrA;uJw+6oMCcC+keVB-(9P*-wn5A#iw@kPUGVAX9K@q z^n$#6uxlEzmzun*d$i#1U0CBUf{*lL&rL!e=|;}Pxk=CHVZ5=uFV5Z=m&YmbfuMD{ zQ(HNuZR>ut@%CY@*TXPSwTPw_@Tx?W%!T>EzIu{5|?`V}6U%nXeY-#U5eKgIRlvmGzDEE%{=o z*`k=$y*XL&s+pR6HLPpC7}QNpUwmH2Hlt|uQbJ%(d;*y`%IQr zFU{KP;O;r2kSBZmW7a(HtB08MGN1eg zkgum3%fA})$$I=UR}SZAC+F#Har?37S`9!FjmF^<=tX&>5jj33yIY(c&a}(Jc_Yt!y(+#N&&CnK4;q-%tNHG$iM%}6 z_%}gobYiYt9n_evtRpuxW3IZN6o-}vF^h}un>AMdDUA=v%H5H{{}U#x+|%f7LA!jK zmR&3BJ0{1@gg?dO;qN;AYgWEa3whA@G&iqn>&c%u_{n$Y3T@NGmf0u6Z#>^A`>KsS z#eZ32Yu%m2Juw<;*guBCJ8H}Sy|YV#2CVJ8kT*VusuXz&uGCk(^~sd1c#aRg@=LwtM1Sv`-6z!Q4e?CSxnA5g zYk%5OgH`cDJQDo(om`k54I1FzJ44-WiqR0WcU{ zJ}hgld|Z-U9QIQO=ZGBqDQgXL<(d9zNp95c+o2YEkMCmU6Z^@q9>2sbuK6Ly{M;l~ z#`WP`vKPJ6jBn2xu~qRpm#i;GcZBtPYY&gV2)SP;UeegvEVnvi9=TN;bO zS+_@Hv8x?_<>cK#>#q*ywcewJ8Ch%6#OcNGt;S<9KlIOWS^i9(VRFg;vF<++)}9sO z5TpHOH|En1vhuKNmR~fk=4W?(d%R)hz)y8^7OBTSH|D?owU&I)+Ap)`g&cn`dsV*5 zgLmv}zsd9DgWVqsx!FByE&X_4%niLG2h-B>PFWg}XMQ?Aoz?Q6^6$}hcqEN+gqn&-E_bv)PGa!O|-!GBhssrim#1G#ZITh<4v;6x-{2kB5HtBKn3fjwf`U@vR&X+h|zXTo!T*VXR`+Ljak%C{PA6@1?y ztoIMGGVDo9G&2^v#7jbdsgZx5Nev%rd`Or}C-nb?m=@24JkysmL9S^3;jkwyJ15=O zzv{X$Jo6jrwD^4R)7dST=3Er&{kp7N%H4)tZ=bc+DRFG5>vyyKIxD+wjD>l0wKO|7 zhC>hiCTmZ*;k$jGkE6o;w`BQDbA05Bct08Xm`1)Cn}$8~9!>JYdivs)tbEMR-W>ee zr(Bw=C*}7e-Mc#U((Lf;!RB1sm~VU-YHZytLf!rSmlauO+GzHepf$0prFVT3Xlwt* z_lG)&!M^%NOk&rPuOQ_ID=l>wK~v~8r+z@BCM&lp7B*a7rFO+q$&Q(p|jN-(7xX#>O(8ux96UX`6;FqjpgpPSQ*RWNAa_` zJk-fL^yr*07RT3T4D@2}C%UGMrP=F4Uer!)#)4mmhkN`shfjPHzdiKMWkD4;dscsm zSx&?u#@(~$=7TCtGT?Ie^FN6 z^p#xECLi_>&-gMc>)he9ITv;TM zWFL)-!?~uG!&&P;oc&x_Tdrx}n*3eSHNDtNUhGRd*Mxk(Im@3NqRH zg}DDRU*z(>;14aSzdD(3Px|xEB<-Rp^o;q4juECuK2 z^FwdVD?UEGeCGe1Y1ZZQnc3SzJ>_h@>>ILta*rS14111+YwtcA?%D6LtTUc(dYabN z-gnElVeQ7WBd6x8#kQdyY9J14%9XR~{`{rk_h!eszBlMhjGu@{LXPyJz3Iz2ZI6>D zuK96p=tXg?I(0{R!gR@1P=J3rq_3Os;Og{^=SIivz zZ}S(lhkl_w-z@9Pw{=%$)j)5_hdF$8E${Z{|Alc$>kMU`LvlbLf0m_zBSN0!;~g;; zd|eQ9yMDYY{wM598_r<;a!}kGn}#)3WYwB(UEAlB?wt^HCKog`*{AOD;luH>PzN=n zLu2#giT3o_j@hwT8P-1_t5*8dx^n4zz=zLghhvAZjxnqw&-!gV_;0;);>@6dr{k7* zHstjGW$%u~VZR--`u~lgujgc)7y8y2s=v0*%9q}l)P*(ZM32jn-qe$FFGp&4!^Ay$ zxuXSH74$X>x&#e9Upg#P%KAgvM zvnS3R{9fTdy{H>qJ{f=Bx@xj^&!&YQI=JiC#yYbG-+u2{pD&X-kXL>GV5m7?HfSw5 zrO{_%`xpzcsmnIO2Y#;6`0DsvWBn)3p6PY@J+!s>?_5zM_pIlS!O?XCMzlbk| zZ^@}y`mx@!#`;oBw0^-WRL{O@F+4l(glKAlr?svdf5 zt=P9~G4Glk4)4&y$`F%W>=zq0rk|r4e><#2lXA+3jbhKnYU;ime>JNHdY9(!%Zi;Q z?Y~*q@~IbSPfmxpWBn!;e}6(B5!%O@J5S?^sC&OXn)Yt0k8_oEPl{E7G6#%l+^mxjFQ zF>BMfTKJx9-@Z>Zw)U^$`FJ#5jJap(EQU+N`_@qt`#+ssGpp8@$Eor8@V*+nIeT50 z`@dPb^UV1?y?g5Gzh^|>dR=b3NB_G8?QIc{gt#w>3q#!eToGg8oL{ed2Q^m9pN2gT z&pI#ot#0z-#>q_hMeMbR-uKWbLD0rgY6O z`l36zdm((^oOkNDWvKJ7Y8d*6KuXlD0Ys;4& zkni&wi~SW@zK@1n${GK>zc9o@r#CgGEj1MnEgzZPGxW4`j9+r~`{0v!cLTHeXJBC!P%Fz%|)OyhR(irZp=Y=4 zo|s1b;r69h$hlAiFT=h9>4L8)%l#b3@ML`}XcTJLFcb$HH1_x_iir z+U(W%xuCc0virvRjrk&$4Px)cYAf$Q%&Nof*<&Z554xZk^Y!xfVc(@OFP#5$DmHy$ zZ!uWcyR>0{u{xh!TTdO-=dO@9{pVcdvsmpl9_qR{>%2N>>7d?^H(tB@=Kp8oPsjD~ z)~+AO9vb4jEchcoYGe;*@t7njW9Ehg#_g@m-n~x4O!Ye`cVz z>xDB#{N^prT4Qoe=ZyJNy63z&qOm=Pv+^ZR;!{gLzb(}F{GgwA%o_C0)aF=|&ecR6 z<>|~gH=d3qLDzb1c8JMYVeMzbUTUL9^@{UQ-t^t$SsGH4$(oCUrVr{Kt_(W)X_zzl zUDD5DP^)F#m%HIC|C|$J!LQe3_010D&Ns^W%P(h&wfLbX*5HR+%lYBiBWDiIi;>3m zlT+Uc>)IEqx>gfs!g%99gj(|TiSX>GtbE8D|E713{ij%~@c~)=c5&Pvb3$HS^TYWx zJNRZ#_2loOkOS{-kQF!IX>y;5@fle)+<4YN3vxLebhcYO5F>F?*q5I)LNC_VuVT48 z{8`7^dRa~Nk-Qtr;kUDLXe?$v%Kgz3e?64Y62%>t%ynKhl_g>ZxbGoRv@Se={zK zh2f0nxB7i`$)G+5H~v=e;a#m~KN@H0MqcPxZdba*gP1=a{PMnf z*iTK>Pwa9fAI`U(vc4yBx<#0KRrkh&e&>Z}|Cn_i@M}qk{q&F%aq&r>)qvKAgU0N| zfBtw*3u9S-H)FRfzuwfnk*sru-kp8&>9-M`oZVb`u!cCNWjCKWIIq-0&G*i#B!W)W+%{PW$S2>&fFyS$o|U*1k2&rJ<)no`$n}mNwVP4rNyc zKVOxlH94@iKBJ4ByqNqsW#8zcS?G*sOi!c>5UxJ<%Nh<;C875W`rO z7M#;3HCAiAN!!cAb9(eXozT7WgYRm(tg-$0Km+o3Zr8U3t=j9Dkl$^y;^NmxG0^&5 z-4mPj64ZqUcy_nsc#u50M=7viGOZ+hfEL){*a@fZqg*+^T=MHfjdzce%fk!77x5n%;-g7=mH#ut`5~8bt`Dqte8{&L z)m2>X%PXCV+55A?ySHa&hkqY+hwPltpd~%_gAk|wIVI$8{jOri=?Qfg&l%x;HC+-k|B|qmeC*j+&bANl$(J0- zi#@LE`ht)bamw{Ijh&HVT^Qn|6E(jnduw>to?FMJjsG$`9uLQjVf{<9Vw5jh5TBUj zo)7QOijVF-5czu55Rble?R~$K zu4ueCHfwAjKAs)&X-_>Y7FzW?TVC*V92#`R{|hJX(?1=m?H}XgAy4KwSNZF?Gg}|a zDL)?xH8Ss{?8PB(c%ZRdiv5YDgWn#WtBHKd-JRL>L(Z(dT2_pD{PD(WDi`u9CO*(S zpFWm7BpwU<|M{}P{~w3?yrO$@W*>QYqG$GyWBIoJiP@t=j^u2u&5mJjp!FArB{&Al%BsW>ARgm-Vwii_p9XYPM7Yd*hxJFUYv z_vFLxI)2iCv&3_Ih*|Gm+r67YU7riT&Ef1lrt8B(UF7X|jpfMu*5t3+?~zsKC&M1* zpOTe3KKO4+J(Jxw&Ix&~MpABoAm)$J*aaoLp_tea~V)%X6=E|`;T5nOPy|Me) zFjjP}?qZV%^X(?>=Gx&4WZ`O zw#RQ`dSmr+zKH3KA?DGpSB1YzNlW%n6aP&$IrPn!=kdm3)NlJ_w-0)j8)uXI!&&Dh zJv(of2A#?AFB&fkXQv#fAIg& zkk55OF2C1$uDyF(SX-ZcEl%&*ud{l?9C4~QT^9bfwS#Hsp~{ z>VI(@8ulKY7@wK_UQDh_N8W#3sEf0k7H-KO8WgX*$*rC{Fz9XH;Fp|?#Tl`G{7;CR zP7iA=$H#{LvBr(TXJ^c*;lA_7-g=Kd$Fg)R|8yw-v??ZfaNf|e{j5cMKZ+M~mf!Ol z&z`upCO`P(&kbt4UDsE|m*N{U2lZEjf9={?Gbhy7o_rAJbKMgwzr-Vd@?&orw!Rqn zv@rDRdqNNDt5;<=$$l;>Q(@}M`Z|LVrhG8+3t$g4ci0{!g}a%_(| z@zU^jD!rpe)s6P_yYs+aH)Xv`XJVI+so{(jw_Ms!uBXJ4jW23V@&7jDgepWkjqW8&Jy!z$h&kU_g@J2 ztgBZ496R^EIGs!OemXl8bi8rb?$P9ap~uAF+}tEPHEW;o#(!)b&-f`^(E84L-$A*3KGcYBKaag){hoa?`}VALX@F0E z5huspAxCuJto2)aIBOlfqYu8F{bK0bU&qNa2k)qvJe#9;#Y`txWoc1;eY5C;pL&A+ z%zYqhFW24|!>x^v3hSt=@8RZIIdTs1laG31qsAL%pA9`FxAJZuYr3|sHN_#nV)ff* zepasTiXDT$m&erbe4U^NIi^*5mMdq>NcQ$PCG^TgS@VsTH@+kMbH=$@XNG-_jorfY z4@}IZ!S8f!%^zi5tAXEt^rfELPTUt0zh0W%G;2><-8c9$8sgOZ;^f0{$dx_SjDMbw zG#2;DeB7XGefZMN2RUESn4ZNecb?I;nySH~pkLpQvFzHR2Ywkebw*qfUkQ7yn{{7( zei*yPq#yEa{GVBC(Zg^o3+wCga~fYA(;ACwwDB%M2kz@j>#Oe(#dAb_TPH)fxVhl0j_9FsMg((`@0J|WE06Z+9!@68A6s;S)i zj`71hdE7qxk)Ts^c5VF8pb_ye4SoMic>ZwK+}*QlEgi(6f1P#nLazQb_K!C;Pu;%R zSYEAZEj8UHfV^t-}@TV$%kTU&sSw9_5S(B&b`Tf)tuoUo5mq?=)#&FRH;K+{byU zzI<|yy4Djk=RG~(-VYk9&*b-m-~2qNIPEnW^r3gxn3!i>K3L;|>>2T%I67_)wWB%v zsnbWY;@c)R3VK@A`ajL;mA5vBkMc3zwSDAx_vX-rx_VA0Yll273jV*4<-b~rf$#Rb zsq6K#CuI3c+w}I@P|J(r*;pRyPCTRIq2Q|;h|iw1b!A){z88Ats<6j%q2`ZIT+7Ap zf=>CYc4B6&N8_h;t$$W#)y??d8mqN>n)AA1KdWp0h)2EoY77?2s?IvhIzsS8N~Ra=yGV^s#vLg`B&lEqgc*?I}ia=?{Kw+C8zXA9KQZJm_pB zdsy(zSl-3sjIq}3+0hB)n||kK<;Q+%D_%9fwd?Q4IYHa<{&-{BdN4bgBlp+nTFmP= zo)WuFJl`_=wzws%C#Tlt*CSo~Zqo9BX1xR=hM%ix2j` z*ba|{L2K$FpC68C&AlP3kNz{ftJZqR`!l-Mi^leUPw-El(h#5BSDS;g*0uLTLGN;> zpGLEE$Bz}EuJSGxx!yQG_wJrQKgc6}iRY@2Q~9B1)_2W*=XWjto;y!IlD#tgw?{{_ zVwG>TIxlF&H{pdWZEqgt`}5qnS-O`Cr-3$Ciz6 z$?n^J^8aL<9{iXSJBJ*}+r7=9AAN3JIkX3zc~1`-^H&{c;qstin)aUly{UWVm^<9q z{_07)&V|du`R_Ymo_&sLY@XbXh8)t+g^l^}|FZ9h2jb$`Fs#A%UpHoH^{XK!``j4T zR|mdW=eEYX2LJ8xtC@qd`1!8YnLg!@mS~=DpYGm)F|F}Ai&&yj+2AWwCTQchTlJpZG#SIQQRNSj)mOQ zj#|hqozo;e)8)#L6WU%F<00qo4?Qa<^5B`g(JLRG%8KittlEBe*5L2U$b-GCBWHeh zoYz>M-KWcEf_CMIUaad(WYvggW8^p^AP#KzV$e@>_Y-JF>< zZ#ZbQ{(7(Hk==7EKm0RLD1zBS@oFGSR89Nwy&I-?{}EoIR}P< z9%$i)Vza+~=DS*`%WEg*S<}B$qE2!ncF)B_>vOYoZM~aL?uT9;3+Ei)#q8XDJb!4HFRZ-D*P2m zcgWL8A!h#28Gon5LGeO(CNA~y-yGFfzYO}qp7GnDjZ;Eh{x;Na<8U^p^A4d_VwTfs zjhzjko!879>@lfl=O>@-ec;49dWKJ1#(1d1m$P(X-Ft&hjop)TXTW+PpYI9Z8XB0) zjdhL;^J(baS@n1}=xkA(9&)}gyCnGZsjM?i-mVQXTpj9ocKH9m8P57H&CJTZ`{v&l zbhLf;kQfO)tv}@18KCaNp`WZhsX6-Q%NHlCXY+!ebl~hzd%p0KCLRg;aBnnd!g_kq zIZvzhd|#MvF7%?D{7d)5?H%{j)c1w{?Zs#H(r4zssMYMF#qJDW5&Hkq?3|!a+Vzee zQ475>6wZ|K_*(E=?x*+M`8C?ues{$~A$MxbSKlz&wceXTAE?E#F%~b@f5yPSJG$2Y zf1Q7NjNj^F&OKQ<i~zysswwp}pnV$#s1<^}9XA zwoaTdb8u#CYK$j@-EiHJOvOubRoZ806BP z>ip7KgZ}u=ie#eOqZ(Zr%5u zy3z0NLO#w3anqu@+}8Dq_B zAwGGuwmA9vYh_J`AN_nhQZS-G>Ocf=}oxv|G&?AEr& zjafb7eR-2hIpxDEi*;Goho_}~&Wi1p5Z_Z-`S5L0i{~4w!MkIAW18GM%NOhMN8QBx zomgYyKK*)^Hk@;OrD6Y`Cja!gb79Bqsqx`Zx7}iwaDF@*>N>S~8w5=|XI{wuGW7bK z>`|eI_2$}H`8hvU2HiTJ4i8$DmyMhA$t)kmte)Z$lRQ~N9%;b)Ka2TceLb)+OCx*6 zWPWJjKf7K(OQYtRCqJIqXZ>P-N%!>os;r!uqi^0gbI^-waeR31uB_+Z4Yk}g>`#N< z^&91`*3@tGY)yGoH_zzs+OEAL)}>)D*K@P)jmdsobJjq6G)Xh&e<<#cE#e~~?_Uk| zvlm?%U)q>PF3vs}qoLR2fIj8i-kUZ@p7~{;@fZuaxiGtbh?VcOHQe|ep*Pf54gWjD z^u3Uybz`jYX>m?i>ucG0@qysa2jj8wYrnV78k}cOHC9`Bd?0A=hLCfvwzc?{y#oAxVZW;eCXu|yigT84%K53Ny&Ze8=idYe& zv0=}j$U4Km6C2DN)KXnv74j<1vl}}@)J6`i>o?mejlJ*B8~RV(Pw(1!cv<$yV69^= z|7b5ibkB4_A z&%xJs{Y-e5c85Z~)aE5w=gd)AYtbcbe64uweQv0u7_QE$9?n`cT$;i$k61QeD<)d|LMQP!oRWJ33I;6^$Pbe%}^!CBN!n4>=nT zy3#9ht0r#=XYN?nj|9KO<$b*)cQ58LYYzYL!#E~JL%yt`H|GVts@0WQ-;tAJPN=m$ zc5SVNA$R&jJaR@~*9YC`ch44eO{cqNr^h$K86@^EHI`2~*faZ%5bu(pmAUbokc)G( zdxdqb3waf*x*X8>z<6t#;fMXie`ySbHRR@z?4;jv%U4=boBs|ub_U4FnE9U-R=XZdUY z(KtW6OSAIxiL9QXu}9idz1$a%eA52XI4o%2H%DIl_QZ*e<@(3jTZ7KG4!NLxzHXoW zb~wAuU7V#gn*LSDg@3ni^`5Eson5Ps{0=wfyZLJ3j2Ufgt~m6Bxq8@H^FpXM&3R`i zrgkki-hsOFP0ZGG&pG5hwa}aV5Vx^4e-=Lq=fEwYmcH}$m=V{;su1rxvX_VY@J}85 zH+-gdt@q^o?09>4|Iu*X`F-yFm0jES>!CM)5zaBOUzT;YJfGz|eVY5PVJ|VM8$XvX z9nAl?#_~=_)-y-_#p>QAA&2TNPyA6cwWZ~`S^Xnt2gQ!ThbOc2wmjs}8SweWz8`ch z7HfXFd+NU+?C%}Voi%4RmN&8JE&KCDAL%*q@pZ$H7kQ-*>!{JuSvq(;OE2@Y@}d6n zA@0>0KVAOK|6SwbLXL*x*l6JHKp9 zfA?kO;mF|6I^mr9W7mAuKc|QHXz1dY*7)J9J;Xg4>LBlQIyK}=Z2IDekTdnCjU7X8 z$g}hDtn3HUgFN0DV)XpQZ)^9(^yQFyI^+kf{5aN*Yl7zGVUO(alIk*Z@Xs%|?fRnN z!zMk~BkG~v{}s*`u^bRCvdI zv5sU%L+<#jmU7H@ah?|UgdEyaK88b0Sh3RZvMimbpZ|u6^We3Oy`u+j3HPi`1I}dm zb8kwh{dHZRAGe0uJEIP2OnY)cfAXg%#3*KG$1_>|=nVJ2vs#xfej2NHU+(DkciBl@ zyFa^Ywf%6GANo@cKPlq+O9u4x7F3j~kxwZZ2NNt8ah)?eCjVD6>?RE9U_=v21^q3wu|CO@_KJ$BJ_so?$wNevnEf4GP!8>|F z|BC-T*#|-_)_fvAtgm-`OU2~9cg-C5t@iRYlErJ54*t28*u=%>t+U&Td2RkQ>h=F>0-SyyH?g(2R7DgD?;7(jg5oe*9(5?=^H~`=xnl{ zS2U&%>xt{|tXeu}#^d#&f9X`+ttVG{Lf);X2Uz<4c~);t>W&X{x}F>KcuaPF(8k}+ z?EG!4H;xY45YLlYyeq8xxvc$v6>6hS>Lym_gIds!JgSvFPtMZz2OE1wzITkF@ORDl z!Eft~W={z|)5g2A)*Z>}b6Qke`FVBYbK@654{~BIotV2$R!^!CpZ0I;%(SomdNvLV z@zI3ui2r_teCSWPgSGrtR=bTu&6b7toGaFTDys+Ah~G9gZ?mji|0$l1w}iaQqngW& z+AZq7{jKTwu37pJtM}w$Jk;8}y&BV=ea_BLnxGN!*vr{;T`Ugggg&*`kFvLhHPy{; ze>uhp-BVXFjAiLu%=B4UJzO`oaKPlXzuH?d=}#tO9$s7t;j7M{bl1b;>|M#`LoZXUGvNDMSUf|v~p(m z?`j@R>tQ+Z&l0!K(gFYJ$}{iW+1MKPp}|ADw%!F7p~b>5GK*w^YlJ1@M)AGx0&(;C~;wfu|4nX_+}7R3MQiF+?(?Qb1< zR1asoeP?%lOUN_LT^-}`m6`Qe)^~sp>h+uKcfvoHxitG9L5uo-Y2&Gl&&l$|ed{l5 z%x~w3y!xHLBD;R}jx0Y`W$E1Y??XJ-2Y>X5TCnfSo*NGZJ)M_z4qTUgOXzj}^3|UD zX#cL4gqXL?dSC5^ioreatAYEQ2A|dZIm9@rM`yJ-~QNr{qfv?&+te z!rs=GD`RKb9^sy~yeBr#_~smYK8}i!aE|cBv(flTahrd1V|^hv){rOt$hXgj9O#vq zjjeS^Seq`KYjVavHKE(Bv-a7m^*!gO-cpaz#`5R6xjT0K$Cw-Lzc(v)_EV#u#sRTU zh||7123lI>%FquBRK%> z%Kj*BiOK&RKppsbMpm!v9`;z-dt?8fsr!!myDrba4;}RPyS3WZYHMrTB#^MTC^8aU zSgm!{Sy$bAwT>#{U<71O*$`I3USVXAgfOm)y#on5jO$X7Av0m#uczPZ`?&8vj>q}_ zyg%=8p2vBd=jWRM+SuR!to+9|V3o>*tN_nHy+&gB=EU(mMEW z9`NGN1URSfS;79#W!3r-;r^hOH)~$+Q9~OyHurS6Cg?w6pb?s-7xgL^S7+VfY&=;f z24{$OlPn(S3~zpK$jJuY1vSGbwf&8r@w>)^#i#S!2lE=QpS8vwHGgJMpKFD!nwu8J z8{ZO63N$PCXJqAcb`ZlcVOpRmI=w#J5#&|uV(|`7M+QF2=}?pBG^TB9UYEtWSXM3? z^eVpc(Y<&O2faQS^b|4R`=xMN(8qnl@%Fo{ym~i1>=x|7w|msbs^I*U+4;dcdd2h3 z+4aNSVRfMK@hpz@8d}zi@Q0%nK~3Ok$hmspqh5nUwM7rkuoe$%Hy-+ZU(Y9oqk{D~ z2&9+~5JvFEn>vz%d`igBR!E zfX1D1W8ee5*mptC&Qv>cG&b>ke|Bl0X?NN08}>&XO&_e~>&oDc&3h+LSB4c~QNS0i z(ywP+@E4zSu~qnFV>ROrxwqFl@Lj_DgTbG1+Cactf4AfLwm z+lu+wg9Gl43u5Ot4mSz3@y4v*+s`yspVr8mG3%d8o|EOjxYW+I;nbk^#6Zh`+gKgC zhyVQG=i36ks%!P_9{!3AH}atGjt9Q^Z^+D#HU3K2uJH%6c%2mF*ZFkfzPAQ_X^ZAZ zv$({I`d-^qdm_K@^*XhJ;D27LHrA|?xJt{KR3AZ72W4OJ;*I?^wdkk z@SC({@9;}!hXyg~HDbi|)q%ec2mCl+Y`CWXF9tq~MQnIFFsp9lNqji+j-KU1TzbYu zJ@dmoe&>i4fBLnYJP_oCw*I78mS?TkQ=OrgJBKggdLiiT`_35TcC<0=s#m$bHK-rG zoF8}hjQf|e_VL|&y~g;c&T*zS$Cn>5;@CUBKNrl=ne*jLj>J7Z`_-@{{3dv}Lsnkw zyD{t^o(gLQoYFMjXv`f$u6OPE6G0yNr_YS_Jaft5&-B+d{$}GlvWEw}xrcAoi%m?p zxGCUPU8yHJn%o%Aa*m__3EPH$4))_pZ*j(&-Q)iE#)ms_XAPaLYV2HR&=Wn2N8EHp zr}F16Ie2D=L4T1)`Ts!g@WQ`0^(@CUcV@uT!HWl45`$RG>1UH#N7JSRvOYVO1^Ip|&fTp|}!!jNOR7thLo-|^PS z)AGjd<`1Yp+QotW)?C(@pZpLP&cwwJvEi8Z^?>uj;-Js)8DAgD@=*_O27Qi?d|A|(UgXf7^mb0qUkVF?HTr}1>S-)kLxblxcIWNk!XWSB za?fZuJS>>-#X0=nyXQIC8^W8yR?Ulv-hLS9`s-nrV2?ZLOgtY8ay+aHvGQ4rYxT}v ze#!GG!F}?p2dIzn#v4wIy&DOWd*;9UN5j!U{hk#*7x;EURxQw}-XQnH@V$6l9{9mW*13lS`BI1Ox+LJw{ra8W=DXv!0xcWU3V+9Y{&{fzBSHW4=jLa! zxbWYc%c1eHS$xp?=L4VBCI9g&FKY*V=C&Y)C$cAoWr1$!QV*2R@$CG-7g}J=@$1p7 z7~dUE5By#g=<$qjSWuIf1vP$g)_Z!_My z9=tbyYLHjHZ zt2udgra10sjLWZO`LssB!L;B^Ik)!TvwZi?I(PVIhqU$I;pD(KwS@zmxO3QhmiH`% zv2b0W;}^5z;okxuFU+bXK5o@BKjnIu*EJjezPYD@Z=?P0kR$bIt#k43JZtQ^v-b
lXA849H;-q2|01jrJ`k+^%l6AV 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 literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/prompt_1_ids.npy b/reference/fixtures_amalia/prompt_1_ids.npy new file mode 100644 index 0000000000000000000000000000000000000000..ec36e019b21f4a78563d0f0794fa7543e1fe85ef GIT binary patch literal 148 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC%^qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= qXCxM+0{I%II+{8PwF(pfE@lP>2Fp4|hAo#F8A1ga7?Q3qG5`Ra5+6SR literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/prompt_2_ids.npy b/reference/fixtures_amalia/prompt_2_ids.npy new file mode 100644 index 0000000000000000000000000000000000000000..325c6d0ee5adee03edd6e98c375614dd2e198326 GIT binary patch literal 176 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

9M6S(Gipbx4tYP@QSO24ytC!^mRjn$ng1b- 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 literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/q_rope0.npy b/reference/fixtures_amalia/q_rope0.npy new file mode 100644 index 0000000000000000000000000000000000000000..918454a68daa7426f6f30c9b4f413a7e0c0c663c GIT binary patch literal 98432 zcmb5%g`1Yu-aYUE5l{iaLP7)-5d{ncB<2|vvBAbfMF|@fJL!-T5Rg=)>_9{XW(EYi zy8{f=e!*80ZY_r7=E&v1OF^gOZ0F{e~1xw7QCmVNsTI_I*M zotw7o+JC>6t(&&&Kk%~4FY9yhnFBBD+b{k@`dm1uAOE0p`&`nGz570`o3`7xb<+;5 zo9?sk{;gU!y`ky<@BeLCQgUF|l9G2;mXy>hFDaP=ud&-yl$11t&ZQ+KrTBKf2J~BS zB)xf|q-2oXzUO7y1(Z+W21fIQhrZEea(if5_?Tng8a$Q_d3p3c3~ELwurm zFT9u7O1dR(SgDWTX?az|E{B7meuX)J*Wt{EwfITAf$vwj)7V4l$MA4=-t}_&YxU02 zzqiwUV8?>@!8`D$pZ1ZPIWeDqleS-tFTy?e=E-Zq{zlGD+VneaQdUyZjQ#@a(jEK7BD9&fgC&;#*1o?Y%P>AAqs2H%waT*@cpl-o|?z zo()@-TPw@CTkujQcg#FGyh=j@Eon;;+=T72iGLd7lpS2w2D74By8$prC&5cMQ%t=&xL22h#WB zS71x1>D@D)bG`SyVkLYp7rY;2T@7MCg^yKN#=5rrj91p`-7rSpLiW~lTim-`JLn_n z{l)gei}+^H)1f~*b96U6lASu9^FFWR9oQ#AH}MSdoJ{~v8=&UXwu?~`#( zzwH9m=v|fV1M5qT3(kB^o$0I0mEU0yJNwY_^vlXTf)Ddf*=JH$*4;+s+KZh@r$4e+ zK3_1`AoD(JdVriu>E0FgcjyJ>$}Hh)3U>x_7W3yB%VAsb{`_fEGdk`4g8xW))zq1N zZ5ChJavxOC@8CbY_by^}=p*Egfs^PL_=d>2n?3-S!PR`L#BZQq&U}bp|DMcuUPWWmeeQiZdA}_@JN;G#Qcvqb@%_h%f2~X#zJutDY1Y{kb&SW8 z;0bs~?3>QY7K-~so_*^@x7D`Ggm7SHkn3&pjU z^Pn!>2k#17$f>!qxL3@ecZYKEQnB;B_nGCzIXsLnZTe8|S#l197sc-3TPSvxHe^pa zoW2lGmNy&5%lT5yyIu7i{VrWkycF8WeF(CSe-YaZj%Ig}(}}MxJI^1)H(2>?=)Bv! z(&8PZp`6V3X|OjO2@k=s{4aU-Vmf=~U>KqN=lFGJQri3*yFad!n|099Gaf51-gzeS z?QLwg##vvB;KV{n$+OCgr0<}I;Su->Wv{_~*}vdb>X<}#gt;(^-48O}4~o~MJM(9* ze?|Yv{|bNBOLKNLc2)hprqnyg$-2qj+mwD3M$)(99U<#0>#2d9tswKi1sucwD_)_l zefZ1DjSpVQpE;7b&>24iS&OaMAJMycZtfYay?Y~EU~ewIBYjF~Nl7hvZ+3C+v73us zA@(D^l>an58)q&*EB7z4a*DesPI#{y#pTyS!>NJ+()!& z10EpnJHEf^mh^C(wS6$(R`ef`J>oibWNu91UxPDl^I(J60QQY=jQ)8CXB<9t|Cox0 zY4hpIj<+9VjE&92M?F` zwr5v*zv_HL zyaRuU)0PwYCcwYE$KHJZf`RPbaFlq~>3`Jy2A#fI43F@gS169bz4QVYASd&-3f&!l zCf?Ot|Aek0 zbmn{ZjS6VZcPeBIa{gw2Uq}z&JC2?EdOh|C_H)W*ui2hGL|Z1~w4G%szAo__F-iT^-1ug!%xbxf`8J6iM)wn&r~WGJ1^m_J?8bKzoi@G1pShRcDn_td z@@Ma90ngI^;6aeS$$V}uueLgxDzk(?`(fta)?yby)=SoH+E9S}2JtsL`fu;m3umpq zURu0s)b}nq^Dl!DeAnU*73PAx+1@exa@Jo}D1)}*`{Pp!&L8=+@nx`HJ;(7kghg^P zCdarptfH@g?AIqi?n$-v)n#%A4fk#57*x6@S1nn(R+R-x2yOk zuu)E9ebI_;C3k|nLHJZTM~fXnr#~{zr;CkYXMem)?0%eiKOSm96X?sgS4Hug^ji6i z=-yq6-@7@pTC=m3exa8@&dszlWBjW8#IvS1<*p=l1OJG|4{Muh2s3|!cLiGkoU`6s;a&pcn#i0eRb8HzO7*AOsfWWmg^_J?dWOzdFPC4SLGIV zEx!8>eED7SUj9>Y#_>Qp-;%57qsq-~_B-@M?bxBK{aKln$%h?a@ABgP{5pD#ybkPf z_<8o}a$msv!kxg2xtjjpOU`&@GL8e-8M_j`p|}}t4%xT+p?&g?tUl)dioj zpA&luM!|!8o%!nHark7uYUb2cbmmfjm`T5nFEy|C($=~a#rOV|%? z=f4ck^sL7V#*@yR>j|5yJM(m%oQ(Yw6#5oDF zsKS>qd`rE}aQ4E*IOEwzY%Tr^&X=2ShRO7$^ojEBNglkzmwi8bQs(fz6~(>w1^fd$ zz7}-1a^>Zmq&<7lPrzqzjInMg=PI%8_+7pg`YLD4!|Xehor<>&#Afo>sI;!w#|CM+Of9@E+;HNxe1AN3@4)=%;gRXMNi2oq=1>PW*KD}+Fe#Xt= zXJ{mrb(QB1r~ArJtR`enc#W^Z`8OW)Q^ zO!>_DW^zWdYty&j9-ftZNuHNIxtsVGkU5fdK3ZF|PJWjE623?*`|;W04RFT%R{jFJ z9$i)5i|%Lp@GVj{%Urk(YSG>J{)Tz58ZsuA;QT%F-3ogx zeujMyu7SVgo94Za!#O)f@Er}WiRT`6I{e9hHD5hgQeM3CWX(=eE^{pVT{oPy_#uDR zOy=_k{AqXWY4k?O-w{q1JCJX&wU7#`FCD5)=T<`DG`MqwT*b}A2 zd&Y2_-)&a&y(FGJwk2f#^cU-^Z1$j@^x1TNpYI^vi7#Wn1I*z2Ni2KN&6Vb_+#?|O z)iHPru{*?;8ct+kZyo9em z93%b{-zexMCw*3xe|P92_K4h!`EvGWa`K(9>%~yu|K}JHxxMMTPYYH^b9nXR7xV@BNF|-h6EnPZn#CUykAyx{Js{ky>l z^a#FF;5xWS&gSarj_(o68lOaGuRDdk45y7*FTd~~!&j5Ol3t5TAbZqfa`vS&hi1^t zJ!_o1c)nSlk$WWHJ~;E^5%|d%W&U-7iOSq2p0@5Twmr^V&D`1(?)Bb}vwPuu-&Wy! zqEP(Zbu69pr#@~Bcf)IP*YItx4ISj~s_qf^M!Z^lw)k-EI)`2d3+1-J-|+7#=R^7e z_>n*J@E7m#g}M%AFNgdcVTjzB>YPHq4=M92j8MK5*X8>c-bGG+yZgRikAz`#+V+;b z1H@Ly`3i31e;hx_w*%B+cZ8Y;7$^BZ(sOXu(jVe4;mnQP%|C{B;32rP(maLydyxwH zC*rnc=A``W0p&Pnz*F#VC=vVHyZotdThQzI+QVOveK&J5eY{E8#q4Twa{stY`{&@J z#d1HmSZq4`Ot_J+&MN(cpMVi!BXL2QXXL&P1Nic{kF2M5%DgPT0T1T;fX-O_j9=oL zC+AyufqqqdM<~%R`P*gMa4pkRW{tuRuHE=e)D_G?Z^+9dAr#ic_=fi0B zV)8NUmGe5#q)S5UM!a1Cr^f_*cX=DUtkaU zdGGvQU5h_+B=g{QXb;2LTZ#9eJL%g;*;yk;^X0estn2(Xo%OgUPCdI;+Bfn3V!0P( zo$WyHAm=)$M*o2Cfo1gPc!_p2HlOp%eUu%p%q7ZxNzbPni1omEhl}NBPHawR52#UQ zPr|P#o3>v`XARBqekb8t?DW}%IAtE;%Xjj#e3>^j%=4V#ztY)1KUMAn@doVdDWAhj z?5zJOa2J2(<4kx?EbTg|OnI2WzNW&y&X+SO?{Nm-N@xsyi&zop*npZmeI@zsJG8e90ZI4SV9c`+Il3g>?3b#ub?U zRlGX?L)vvW?5aJP4{y>P=~hsM9uAA0&3BesQ+)ry*}r0E-Y+Y+k7z@8`WOCNp(f1b zKM?zB95HoJ6PXIrGN* z_eEE*XR*%^J6xH+*)PFVcmbO5XB@Lnod>7#osT=iFLXK1e*LVx|K3~ZoH4cW+A@18 z{XJyPeg^sG%N+Ow9*3-%+r=|yOXO#Lkb0YhFybuQSPr}Ri{wS!E-kPt9`MVYS zYx+@~oPXrJjkm`e_`by-!gQEhsb3*{iC8zhM_F-i-W^}+U5BL1O3zZqQaGPIia-0~ zTJ}#+U%A`|9-%Y$>#Zuz&E5FgiRJz>3l9?8n{P?M?-1-Gpb_6r@>A|HI8-cS+|)B3 zk(;(o;LEyQfd4zUm0J%N@?}4GQ2kFSvxLrGuoBkN?~6BrzhN78&i{NPRmbnjZ;6-V z7x?bXP5rofLneESHf6G|Jd$;5?BPeTWwuo-IiKc@_UNsduAm2Pj%GBsqc6^)N?XdYS7*J=830ou3%5czd#2V zxx)CXV>3C2h<%Og@b3eM@E@s;-{26)J*5g%GdFTRuBa&PX?LPySEo{C@Ihsr}viSCw-^ zh5E#HhUV-744@~&(RAv10q&&-^G$^7VHM>4`oXO*1#&lNrM|3zthuc5+*2O*yj$UE z{v1`Jj3T?*E z$vKI?lKmy!2j}iL-@7%$3+1%q%iL(newzQbXl3$^KVNJfdoX|YujO^eFF}uES_mw z@h$SK$@qExyzlN}CGrQ;H^BMEB>Ur!74{Zw%O3XxJALpOJL@{*{}@r-58z{2^YCuoEhvn{p&&T!T-%fueua|gJ`WD;>(x2TSZOwa(p}Pfg?qK($GcWS~ zU-0GKzEo%SgFWc%8{hHgy&izGU}w0l%vl7N(MRGna?JfB$c zzq^cf&gB1!{Ue?G%geBezCwLFh;55MFBH%A!D3tUxI#!w6@JsBB=?Uyp>7DuRqVtV80y3wUz$GvQG8ZPn;gB;U>n7`| zt+LCUPm?|GYPg$!1K$l|b8yDx68@~;|DFZ>oAIB=|2hBl{OOl1@wqUY|3W<1bFvR* zZ_2xTh!2uC6qdqTcJ|9NA^kZGHkbbd9xk?B!5Y&iZRu@Fi*5Z|Y#07rzg z|Luz}iY=78P+o2E^jG%r>U75DUD%P%J?IB|G3-*NPvH^z+k$l^{}VcMFzfwesDOXN zp)iAgN=0#>$-ShBve`>_7yCzBzN9y)<1V}#-&@|{Wd7;w{63K12D7hzk2C)drn7g9 z63d*Q2)DBjVn2#AUw+|hQ&IfR&74WSIcGC>KIC7CXXAQe+sNMvvaei;8^c(7C!Fuo zm+8iG)6b16i{C?QJ?9RXAodFX>-Zm>IhVP0Bjlc*=hjr_rE=|}b9d|sJt~TKy^P~F zaEsiGb9>L5%zl}DDb8BofxkOk$XAzdYkf1CzZH8i{|5R=x*VE`FM-vNy?cdN&Zf37 zoP7ag?u}-b(jDLUvi{G6 zjQvq!d*b}t?GY8lK3SlRGx#$m-_mFBr_Mu+O@XhC*o*Ack-0kxzM>z5_td|=oag9C zFhTk1^0TgA6WbY=<0ts9S6}MQ*}D{9EjALb!Cm-rJ}zgEqVp~nK^J%sZh-EPeIR>6 zYdAsfX^{TN_-5?u!U3K)nm=tiL+oPwsPTDIEN%b4bM0&P6>?jPpTnQ^-GY5oG+qO@ zd(J3WOn+BuE{OHVw<~i#G+@t!^w~8q3Dy?Wi=R~{-|mlk@16KsYfJXLX6joamVN41 z{%_z@{tuuRJr`$>?L%)5`^hV1FH+BH_m#TJ4x%p?yA=x1M0_9|$GwxR`%Iq4=D$*aPXTkMVQ~>;~!I8{npb{YD$w&_mUE3p?$MR8yIS}fz*mYp$5 z`{uyUd^No5$#nLa5wJImgP-_s#z%{Nh6_-&plrFZrSF8ZAY+}s0XC#xrFW7)i{3-- z0{zoKUw33@{yfRfdfAemiXXyjm1%*O;tBX>cv0REd_Cm7CsY*Ag+bnXB6Q-Lr7xQD zzXrqU%ivGCgZNY8Ssz*R`}5aS+xLkq?Am${SmbO$?o*@#MeJkGaGZ@RwNJvjH1ZC4f7Pc8O&a>>c!Kd_={5i)n#y#>Cck#3}^W}5(JYUc+{NveQ()Gm8 zpjSiAxXqv&eJk`UXgki|Q>*gl47&z0pC{wnA#3#{$lg*H=bU<_yx4!~>kH`2!T0#< zu(yFb;0WlbJ%5PL!(9u-{>Yf;j7xoqAf`J?H-Aaiso-*=F6=U4edl*_!%JbeathA-$L&_*oxlsn;4 z^|Zt<@C{S8Z9zV+fv1R77kirB2w%i^7Oo1po9zU5!`2Z0zvL}16z9`p>^IAc|Mn#N z(+q8@VGg7Zo{%%m`+O^&d37!9#?GBM`%T7c7~d1n8#3qL=S$v4>ZwJaBro^4>dM>+ zd%^&A8<9od3i_w@-pAjCr8u&Xwzyr3n2IVtev#`WJv#J-&q}9QQRl)qOX_xGy6vC z_b25y(g(v@_zyf(D6WUj^eDQHHXTH7PuIkodq&#u7=QYp9yC(tmADi>zU&Lx z!_O$_8~P0WmVbBKif=C8ee#Z?Z&dCSIGdeskj&S{;;V7icb+!^cNg2A{zRFYaFLvk z;bHg)E+{R2pDwE?-cd^A?@PCZ8sfj>cg>x3bS2D!{LVcR&w$I}YS9dSSd%VA#PjGW> z=^~zg7tjyC5BJNt%~`&e~Oq)&p(kL-7+;4|2n)8BY*`lyoq4t|Qg zg5DcCsAn9`9&ng?s^H1Ejy5zen1^!r#koUdpZkE_8K;j<##8vO!TZ5tc!!<&{)N2x zh2nf#!fs`~XCGZpU+$Sr=!y6mIYYE}v~sC8?byVZHJtn5mGXx0jfC`l=gQ(b&u?d! z!)kTp4$?vXzHorDo8;{x??GILuPsz%f6vaIy*Hh`@i_i1V1+WTsOL8PI*f)pAaf(@ zCgXH*MX{gO$h(Qo{`v&{vo;K1FNC~zHTa5ef>`EH#;-GbIz0$-uRGWC^FG@{H~Loo z8}SHjc@r;|bBow!uo2e54~62GjmOz1GAG`HUFp{ND*pA5{UF~rRrxZ;t>|+8iIBd} zcV2h8tg?9b%$Pm_k3i1%2Vga1kM3V^ev}sf&0IBY%6OOZJx{03z1W`{*Ua%0q3pCF=UYEGf!O^% zbC=27PG8@p+%1LT_t}>GJ=F05f7){_`z8Di%$C=#AYXhQZorda*M$nS)K? zXt)sm;ycQ^`&#_4Lh*N-ALz;aji4)Eb#`CKS~-H9HuWmEZz#Wn-kWbDUd5Mw*@?e5 zJ&Mj8sHYFMz*X4?;DuuK@mos{Z*M0>CfqH@OqqfJl>VB+&&1+D~jKlC-Xnc9xW$pZ!*rE zYcO5FkK<*0dC%H%>p;dS{sW+@*qQ9~`A%Z_Zz46~8zHtU+(S3SN8&rhXUKaGj)86Y zpN8y{$B7M*Gnv0VoX@`6d%u7ii$B3vUGBqtv+2zB+r{3cJ1SR`Kl3boTvy&$@tj9} z#d^bqPyzdhe^y@n`|cwJamZZ$9cK>rrpLfg_LK4-hDmfA$QjfSXCF?#jq%I})D`<2 z&%3|Enui_gk&?3W+ob@H;OP*RU@&M$6@np|9b40{4PC z6~!|q_lkye?sHk2SF!W1*U72EZUKv+0pF!^@*CJjnCCf@_~(~8+dL!l@l!a3FV7u_ zyTgO@8oUKwB%X22{2ioR?rCT8=Zsp#o{E>_G4c*k|G)7|Fh|bw+BH!Av*O>&OTYDo z?fJ8RU&hxC4utHB+25Ap+X`YZmwp*?wl0J9>d8LeN9+ZhwURlK-@V?$Ift`;tJ5hz zuA=x|a}u387eYJFxYfGPS)XTS+;Y!;oL)tDQpd%3Iy?Q}6=%%0qIVN(MX#mn(zzq$ zjQbsL4;N|2j^dm2ZSMcah^4>&lK&YVUS3@HPqRD8c|h(=I%{ehI(NyX^hWKu8Q-VQ z^i$fDvB`SP@5I~jWt=i+vM#fxvQOl^n}Nr}pZqyf)1KAJT#vIJe}v4ZsgQC0mH%59 zNH>w+1m|9HCEsmO0sn!HPzFntf4NXRr)scMew6&)IPuAHfkiSz-=45oh-|Cl`wm$SE{vrpzdcaU=r{T+QaJ(|8rT^W-p z<;C-{KHZ2fd;gE(A3!tpJjlL|&bplsxl?8RA70QVeSN?3)A%!P1$D25oA^(`H}j>x z-}eqv==60jztF^&&P{#)@6SG$@zD)_jz32z5IFiYhejNy@xTFXhkNJznfN{(Ns8 z!dFurIons$r{FyENa)C)-(T__{h?S(dJO+2I1Mi0zfK)jLC&X!rRKi2Ob|O6GDfL) zYN6P^+%u<}7t`eq6dTO{x-y;FIXjv_Bf2Ht4W5Td%IwE?IenVvb*Lzg$2dCs|FL+3 z*fV&eyo}FQ{8yD0*U|@K+25=4=ls8beYw0#@TdIWDEE)p$#^}^SpO!k4tsBC!`FqK z-w3``CU=|*lrQja&zF8~$6kVSC(C*NIBupNI?LG=7DD=dB(9_1U!v2;o9K`5a>#tx zQQ4LF^MdigH?o_0M)ryHd)91AxRpQeHCelk6n~ZPF!3|_hW`(FzhQib!hVo-vV;8L zIA>bU`mfZpP&>2#C;n5xvv6CnZ|TSI+w7cMx6)VA&6N2;Y#?M`smecxUI$;nWcE_~ z#G^R#wN<(G;Tdmx*PG}u^gHmIvR|`Lz!UJe(&Fzlhp8j`YyzZY$-m+do{ubc}91!QT$EhcgM5Y?Zmc$C44{1$y_~!y_I`(=E`jL3+!e1yHfW% zzCrA7_ES-oqu_koKyR=cjP}3 zD&_y=IeD**^jJ9!#d98Z5`Rg#-j(Jk5I(@%PW&)t9p* zWBegs_KaE(z80n{vl3F@YVpkb#n2Ll72GN1{84F7gxRox|2h9QwLo7d-oLDP4o_q+ zrt?0B(+|MWba%eD=yiAwo^XIUiSO5*)zFWBt~Tx^_iuK_DSK9YnOm86E7}X zZI#~Q1_^^;yHLCzFvF^tfg1s zp*VNf+?OWf%%3muPw)b~T`&jA^a=eEED?W+U4K=vou4V!jz9OJy#Kx8IfsXrI@9#S zA@qF(XSP^3zB%l6kba$G?%YF%PkK2pad_6v08=Xajp zg3kVsy{3eneWeQ2huobrMm->VOy*41adX%PTJxPC=eWw^9bkW)cu)1L!h6B`g1*7) z;7GY+*)P$98!b&L*w8n^ZrTx zto7W1N5h@syTLQ!L*PjICRj*kt^arJ(R1l*;a+9dtmqOM`?v-tzt9Auj z&^O>C@QZS5$?L~{kDiZDg{xufGUp5Aycq%MhgR(6^h2fApK_Vc`Tb%l984brbNHWU zXPwt96vw+efA+e@a6Ek?|1WeEocsU3>2LY-P92oZe9eD<_>jtCzc*+9OJ3Shmu`)R z$o*OQi`WbB6YMc`+MM=W1z9tn!3KCm{CwyLGa+Mnshs>?pL@qG@CASFQwP#lh#xMV zyWS~~x@#G)HuPM0NBl~@^v6?p8J=PMKf}Yk&rtESWrRAPquW8w>95%txAfCOocI2O zzF#bN=su7=t4f)37fu(i!S@v3S9C}1+k^iszK7V`;+}9mtYv2%W?!zV&fClU<^h@K znWuNd`}E^D`%Ni+PTowMXM6|Mn3?%P5SzAO0dhATXC zB<#a~ihg*O&YqqAzZyPe-vM{gIU}>z*0LU|Dx3ZCV*b70cGwcyR}|Ob61oCvvj;)O zE&IUL$}FeTx2Hh?s;O%ms0077vtR!s?<(ibr4_}$0cB5l(K~Mo`^iiHrS3!Vxp*pn z)R@dpEm;?h6;t9r-S$N8mF26@CVH5u2f&(YPL@U)I>y8q-baNjQ7` zucgKwj;FJh_JcjxL)hJ6sQEURJsMYI-zB~pcZAIM>=Rqi8JidB+~@x;cMizUJ7o>m zgq@+OoSor*`RCz%_)?}I{}}cj^kiHQx`mxyQVo~G}^7vimPL%G-Es!$FaU?tqBe9r%u=m%h&yl2^4TmLoj5^c_$ zI*wimw~42HxtkuOAI_w^(eFVWNW1odj7RQ*Bj|?oBKVkHhn??-Mvyz~a=4k^4{C~K zo<3sEynyrXh0>q5u=DTnm-79E^Lz9b^o!P7${sBKZ~p8vS=UeEANce8#$j|h-A3JY zd?(Bo&pz}OUMs#REax=H{+$1=LJvA?G2aa%`I^(0l@`ysThx;?ZybN#FKhMnf_sRZ zU)XQpvEoniw}Q)|QhW`bjek~WzHN5L@8dh5M!B^OuPeI}*3#|xr{NRuYCIbc68l2A z2cbFpGHuPj(_h4XMo!-2AH0+2T#fs{NqiG=zD2ewE#6u3Z8VvD#{-+1w>>1;69dl@$ z{Bm|fI{RJbPe*oL$edq==gZj&=f5GbK|3aS-ZU5h_lfNf8HzqFuohvyW>Cku9DZ6-U5cwW8mmYV{IPg z9NKTC{ehixVMoZF@;kYAie)dooBj;CiJi@EiA$7eM`vC%^vqFmx1|5ON7C7stK#aA zx&8+H4Kvk!AWVSF)6YtazlA-6o6F6-pH@+<>rTEI^y7SYX=@K?BqwWhrPxR68zSBZ zlD7!HD3}{~D$btVTsx}BeNP?f-;*G}e;my>UhF7&&#>FzSz_DM_v265*-tmA<8++8 zetW*`A=T-ur}V@3IPDpZ=i|%dXFtomFK5u;(xP3tviO^2`r}!?tm`8ndrX^h`yyoC z^y15Z&uSk$iSGt@1HM)Mbnkm8bdi_2@TQ!+SJu_Pm3f@~6`aG~LC$e7f?lKF#w(Y# zn7e*2zO%$~uB6Rh^X*ONp1gsbKH9~5o3lwXWWU|6_cr zyv()yEq`mVQ(!yxaMVYpBDcYdl)^K&hM+)$Fn!ggB|G=khPxqyA95n zb|&3KxjA?_K3v%s>929#;R(LXmG^OP`LFP2J>G+NmDfP*7W@Uf6lY%=jnh9f_{NtO z?@d{k-T02cheKofF0qcDaZYmJukzwt%3g6Nopub7mpS?neTUqk^78&)bTK#S9%9Mw zg@1$l>D2!!y`wsEzIKtfSpGr$qu99z-7mfeWDK$&9?t(Yy%|14{50GZza!@$^_(R3 z9o<1)b6`(s3Um20FMpvkhYrMD`C7~ENM|kW%g(=VI0t78>(RAwo_B~cQ(!-OF}y>s zGmrDEZ=oAI^}Z^WJ)@3xjiJ-F{y6h7-%0Tw#U2U6U_9gwFr}d1#7-~OPWE2Qi~n1R ze1m?{T96t-+%|0azjq<{&C_ah7-4nLSosb^VZU z_4(}O;yvJC$eks9x|jM^C^LvIgEQeZ_^rJ7Tj&YOt(5yGU&eeQ|7v;-UIJ;)K&UJ4 z>(b(#U^jNwZzuKk<;$F_3$JU}Y3jI1Zsyp9d@b3jyEQxglDdC}E_Bvd-myN6rboh3 z7{xwGPB*+qz;{M@@$NW={~^AN=@dHepZe#^SuW>j{?uKLXF|S5Gba)oh#!?3u2Qf@ zyhGY>0K}K~cud~*^zMAS;rx64v-pl?AIYu*+1uOV+h8=ksPMnD*}8aLZX?K?X(+x} z-+s&9j=i6}>3oCWIr?Piul@bR7Qj4t=d*`u^B-crYu~YQ&!x}df1CaravtXV&l)+I zowK$~?lX9>=e@43?fAD;U&g#U?kkpY8AYe~D%;rew-x)$v+okS13rZTu$@@mbwt5jimko-Dp#Gp8CS*q<(wd% z@5i^*SIMrb4e5`3gOOTb^3^SF^NI4d7Qg^Y_ zU*aDG-|EBr+4H?q7r2c+jDHgUeo)T0j(r<`fL(_!QU5Y|vtb|h_HYF~3ukW{1)sBj z$JsYB2k)eF1}&fufFB_J{1pGC`1L~Z?z5hq^>Q2g17(-t%#E!3Y8CwAGmP(^_&fgC zZNwUOv0u=8(r4gZ@C|UkZ=0AI7hk0|ov~-Ye@S_VMcbBz4la@PAI< zM)!ml=q>Oh{(VHdq=5E@Sd6_ZWnSCN%A=XRI1ip#vO6UMX zE8N*|)PS6fy5x1eL_)nc#XabnHzLiTX{KKokS1>afFX8fslSnQb% z*qPUFdT#1(A@(X??wZNTd6RkZpqw}GyLdW&4d&A;lsmV=d*GMhD*m1@2&VEs4SC)^ zkamxd)3{KaPi@t`h_7k6INuj^_N!N+E~I?3%Ho_op3eB>9x#?KzpG_`Xan`sIT*&s z+1~ukU1PA^sc;x<;?Mh4;@<3YiVq5s!w9_jI@# za_`LCx?g_w)9iZgIpeOPbB<(A^urndIgoL> z8`|>M#`p8>2@li1KyUsYcn5qmbQk-uqIgHox%wWx2mdfR$7|Q4IP+&Wv9V(J(ml0d z8~PQfO3#6tWe!pAseHLNreF4=^R9WX zOX-xK1zB6|`G?~E_-^H{!XL}~NBkXj^ci?5yh6W+v&Rg;*(+w^+#}A!@8ai`drTY7 z!Cl#lwDCLkB+uw9C;Q)Gu_p9P{_XHUb|t+MR~LT}uY*B++1s;5HsBASJAW#{NpI#$x4xGf-Pkfj< z4#gKh+PE`hUL7GP^I|6`7yDBFO#Cpsz?XS87f*$ZOXh0Y{h{)i!|Sy(>!1~X_O;FF z_r!t*#`FiiayXaXh_mOtB$jh)Z~8U9Pub5y#59vQX5kaDGc24*9+G1Mw&6%!%AL%J3S#{FwnDK6>ra;=DB-_9Su8*oeUYzv^nc%6}%z#8~*?}4u+^V?=ehH_QCt< zd-?OXmj~$F{ifkgc$4_vo|pMLUp(i07koLM0ekUh&1E0_oPRN1&Hf0+voBz$PmaM` z%l*im?>Bo>J@r1O{$BE~qz}QFM|I?^rL$+{x6S;fnsf0QdI4YN%|SSO#4+@}+V&^T zT<*;G2kwTm{x7f4W;h3Sm6P9zUdLHWOU(a#@26kp@HJD2_HXI%+S-@QXmRBix$ zVWD{bZqD~{ss4p3{JY`@;c5CzJX3!5>)ai4mTxIP?K_=)1-{I)Px8Ea^ik@(k3YHZ zv2W*p6raX_IE;YI^V`Mq&hsjYdqy+51N|}1-Q;C>8*&f40cUO9t)ATR9$@D_*9@P4 z-|+mN>fD+A0XyUMBi#XKzx|y)6JCH4cJ_|tVtv>v)q8|G|Hkvwk+svjE5ACk77v3i zd@Y~`d=5{PdMCNttK$dyI=-HC)?VgpH?gQ}{D-RR6gu4M zh<*uXvOk3-a3|C(*n_k^u{?VnN;1>#$>Gj4w?e-K>EwFBQ(F9n$=>!CNw}cb$n&;hw>Bf1N?c<*Kl~l9%6z`RJ&t>e~x3*R8Zn`sHp8Xc24=?9?AHHS( z2)Q$@#i@J$g88NFZ+w@qvp(|g6>|1(WbaEa#qHn&_`mg^J*k1%-F%Ni2hSPGcRPI_ zUJEbLAK{EkXWSas!2Rq$XW-1srOMsGzZpG^K0-T2({=eyft-(9Y0DM-FUJ;Jhr2H? z?#WNE^B&(p+W9ctrp!soEG`tsyc%7mty_p4#di@t59hnCJ^c@T2s{Nd*e~O^@z?6f zJWlyJ_(E7`9)2(O9G!Vlfiq?|<0s`mglofUb0vFoeR?1ahRm7PxJiZmpYDKjU;m5l zMR&v(SzqhQ-Ea7hmD``LhP%PGkbde4neR36-8f@-HT#p_?^|lxbDru31+6JJSljYV^DOm(tA>gU6u`-x9tj z;VX9b=g#H)cu)39@m-Ytg716JZNbhS^NU!CoIEf6+d_Oi{#4Gc_*;2d>-p~33GYxS zuI-G?06P7V`upNx%B+BQ#nPV4x15EK;l+IEkC%;q4fZwcUGY{hlz)x9^>{Xa=FkNt}?r6`&|WnC~p*B_PDIEth*=iUSezTGVS`3{sYg&`}3WE zAHrjmJ%i5P@~m=c^LKoyFZ;)h^mJSYuY^VXFS5VJFTq$keN+vqYR~9W?V%^~PsSth zF>pAYetHl;0i|@tEA#d>W!m8$ki9MU=i#^~|JB-@y=oWsP-x570A~(9B`<5gF?$?j zobva(EAerK;})=Cqw?0c#8a|`M1E!*zfTtCwJ8+*!i2m)?zjE=}^8c zyj$)iOCe*LwcAlVv5Doy^XoI5_q~(zPXJ)3?Hdb0n)Wsu)P9>p`^ zF?dm#+wo>)#rate=U#dQ-&A}Hz7D$4v($63=WmHmrhWNsx(z#b{+r})5AQ+l^ckNCaw>72o%!~t@>j8Qry7GBE0=khas3nyf}1Pc zU&QC*`Y>ME*KqCv8PjU|BEK81g&zv~179L`2A+Ul#JlLr{1%Y)nZI*P!rv;JeJ*GB z)3_o3Uwj{x7suf9X#PF!-4q`q?c zNac=ZXP?ZyJNKU()1_T)BY<}uE_>uCB2@hzY`H07%cX;0R7&fRf^;(h)% z+=)MZUmFT^?&aCXD#V__@4+p~jDWFx_dzGVx^N)m-&JOxJ52mScFG-!_fyxg^j(lK z%DJIP3ZXc!I``HJtwhU)O8`wJUks|K7Fjd>?b+< z=Za@;zYBxuF7eUt(^cdTlRrvs_V^e0NAuSlRw}i9h=iBr-obUT#%8t~=&BW%iH}XF#-k3lCzaoFd zE8rRa%(boLoQQu_=5=*15SyoL?n`UL(!T6%uhT1WkUe2AF2!T;F*tkXTIJ8gBh_~h zJ^_EDzE$`DSO|OYXJ0uAa)!TwU*XUCs9t8i!{KzsYdnAE^n2Q0OWWJgTZ?BNO@RN7 zLq&03kHvRG`fRP(H|nnR4)Y_u$yuxXbo?M>U4DXBz=8BgoOwPA=N*^f+!Y7l z!`WFkeT~@$^=8k$Oy6W4jAN%C7t_CpKSsYvXT0;f!Em|TDw}=pF#c!whH6*#xIJJQ zU+w`Nz0+OvhA!R@9}3GW%uQvpU+x1B@|}e{sWW~0wsOan7x$#Im7mO)-`Jnv%X;}9 z=Xdsj@+XK*<;xsRJ*()9UFKiLcN=#4s0TdH{~Nr;|23%H|x)yJl@={b%p32}e|z6Y}!jH!F9xoauNnz5~9K^E{plWo5qC z@EE?qcyIQzINt(Ue?9m!zjI%2hcjOJEp!9_R^lJ?wS{x|UdB0tvi@GgX>&I@pR?~} z=lpLB53Az{_?hknmqF%XLv^gCcdsbk|Bq4j7WOgPk~880{?77l;7`9!k-s&)9sMOe z8*(PDgF1!cTDym@U#YpMj(o>85WB@Z%e`}|*lzN!$6fIlyd`dfTf()a?i;X5*|XTk zDEkrK!Cm*}lm_{<-w)yk>7N#I?-$Q| z?Tmx;XZD#(_^NqMZTfD$lZYd zkWz|N_q&XYkQK6pBzy1G-h0r}Fd`udt^0l3Av1gLz4_SW_k4Zdet*0kuj66I^o0dBRFd? zuE<3=Lg3*S}oOrTFdGkU2Z8 zsH}Eo?&o~=0Bwobws=#q4{_G*6JqrtV|glnyx7V3KJkoMft|m9$yp_Rm~lT4${}a< z9mJ*-&1wDuey;PEyp6O;a3p*SHx;~d$vsYN5q~249=VyX7vaPk&>!b#pQ*#XnSKs* zcAp3H=Rn3|UBMiqXZ*4zs*9)GLYP9&zV!)vpJM5mnloBQ`YyC%X%9o@$@Bci1>>nL zm-4^o{|;xuF#4CiVV_EWsoWaj7wK2v>3Byx4|ato;GbgYTSY7O0P&{$=&kX)xV88cw5SAK6P@)=Qq-`ESOio-b+V!2U2EQfCKPE$4Rr@$9SF*|YN;e;?1or{KNq ztE<^#A^UCC%V_!~xH+5vKfng#(@ML`3#IeYO!m(7D*9y`+FQ#0T2^ZB&-f^@xsb7V z)cwzv^QD|tw9M6Ma=Ozp5AMYui#<;NRlQ%(@;qt>W7&=HD0~gx%=Mm=lX;*0sUFT= z^QhQ$`~&q#V}1v?i$4J0fKL#=g?%Nv5njq)g|~vN=Q6w;?ot1TIP>RTxg!haB%Ddl zy`NrI8uvQAPiJ@lO0ahepFskmu7Y^o(!rJ>%Mi zJy$H>P21wO{H&P;@S>dRw2{Tq_lvpwtjpB<6|FbafRA8sq4ey_vta>$C-wEgS{vqOzvOBUTrQg^)SGX3=wRfUtY;VHZC(mWS4f(xrcV$ndJ;k5N-a$@x{H1!% zWKUr4g3p5EVB3QE3HK=5g#Vd%u9rPAcIvN8&vWf2{s?$b?g;IzFRz^cC`@Aym$!~x zmAx8go=;(CAKQVy24`-*LSKk4rwzo}i*oK$F!?uw-i~YOU-;nk7 z27fo4^VlHv?T~qs_m;YHdh!=Q=JGeRc5=^D*RlNUeHr5-?NG=VY!NP$_MBV9ZsYI5 z-x_D$jllcyYm}GTa~=CJTK0~H;!ocM-3(tcHoow_oA4u|x? z0eFpb#MbJ`JJ>o}o~J*t$BX4T*bbhj=Pa6g&F=%5kDKFX=r_?b&ixXD{2g%eTFGex z8zEzRHqQEd+x&PIf59Jz^IP)-@yz>A`FXZ3f}4|1+sN*Uv;OYJMf3GF_C)$qu(kH~ zr`5sNidU#FH~ zgujTM{9bah5ADhBE1qY^o{;DNHt;a)Dd%e1WyR8&WC;HUI8N*@TISFocozB>oJr-b z)sBqa40g)bp*LV(gwLbb!*{^#Vw><=;Cyer5m&_x@QeEQAMM=}Zq+a4{Fd~=kp8^} zD$1NYTH_FXL*BGSUGw@yFwII)uy0{yRWM3qAxZM0du-fC7`RBrq>d9En zk<)`dmY+GCYuw;|mzmSA(2nG1Y<7W$<*tLPDz^r=c8xad@91^abA>WvaBHz~$~LA~ z#i!%N^ug@Q#IlBWhP2~tTJHU5=)<3xrVXk=&ZHb)w+kZN$>=8S|{`9og5if1&3-@09yKP8;`D z=YH%L%gjmVt*n`xVX`mGq3wwegJ76Ri!(p`h_$T2}coXqmlz*I`Z_E%=e&)-nvQj_1#ZLXV z7@wnY_Kg>yzj6oQd@uhEU&;T{yLm7-xx3A&xG6gonb7@=Vz=RhO4#hZCa6?^H^_nouu3p z^>$`2WM6^Lma|UoYjQHL7Kpc^UBjM5YbobITn(qb#yD#{b9gR)M{Ucu?CtRf@-lz& zU8(}-+v|BfOJ}Q33)Uq&XRK#^{2hL%N9mhW z?{ek%4P19S+Ohok`X=k{P5La_RAt_Qesb30-Z*RNAn42fVvW9(e{XqdZZyNEE1SL@ zqx_FJYrhBVC2tFyZ=UPqyf3#6dys49K40MEBKTO_0d;VbYdbFHx_op|6A^d^#8ghE#^-y59 zrk{u}ma{XYZ_g83OUrfkq1{Kz9DRvB0v{ljJ-NB|UB}Lu`*r*rbYZ96@3SXXl+L)d z*iR@st!RwI(wBGPM%I6RtI4`Q3G%zhOL9B9#@TXqhxJekvRCGJkZSly{!Bavr(aKD zZ;6|@-!lBK@>##x*9XB_vo|CmgF>?yX7oMt#< zTbtG%9}D@W@H9R1b$4Yq$G75)dpCCaf1|v9@*c!<3#H!`-e_-IVLDzG?iu@oqThp!CmB$bOmiIZEtS{vu-j81sU%)>HI{by^!I}F8GkjuDZYcY6CTh10*3K-hVgJI z|6{SdH}_L-S9}^w6Z?)nNj&H9O8i5iDh!bK7=By)A)Mcf9%JWRc7^<>X|;RlbJzu% zLL+#Pz67>@*t-$lAiodJe*Y;Rj_b=CD1J5M|Hb_s?Gbe!AfEMo3BDemO|OpsDYM3* zBR{|QccJB5?~AncIQMmDxpzhS6!tN&kzKb?Is^CNzsE1@sgKwX()&SG_HbI}Va_gD z%ipu-vIoNf>`AnY%O=|S1bY;HBh00335{uA>YMCaxwmR!EAf211pkh2g(2))Aivp; z((VrnrT4?l_*e3?KYWf)>uJ5=ti4gR%(r{sbAFyF58x(HN4fHH{U;}Te0Q-je6(2R zTgEVRu>~H1ClyQU=1_LdBAEl1iY=l~rR5xR4L+LI5wf1{!~f#Rc!Yag!>(|R&Eauc z=D>T9zrFed*TtDDnOFI5Bc}dd<;Dk}T;Y8MAAz@$m+?OlHih?S^`Ni#P4f50o4Ho@ z%i*q-`Pl(yUwjl+^0O}tf!z0K+Lz*I;56`{LbF-D19EJ?+4I+ zQ_oJg9Y159InfIqanHkOgL_zK_$j!H{svTG_fYP3`JKe)x_<60YvVe+LQcjy{V@s# zu&;)T;05`w%NwhFo(CP+o6xgP&+6%X;<}C5GsSMihs$e4uMdB?&i=IHVaS8p?b*5pwohA}?#8v%0EPl-AM(VlUDj7jHzX$8QOrD&JWfmaVK zKf})Wq@54Yvi85ljqzqs1(xx%7v;Zwm-YX-{Py_53ePi~KFInxO8h*i3g6MLRrenB ze)vdy1$hc%3tx)!0{%-s&d%8dN zHFD2|pJ~U^#^A2_1^fqO{$?LMmOZY*yu?4@6)=MSAuOhC4sSv?*J%M6+w@=7{aid3 zzl|3_*8hB%3aH76HK?~mKD8z{3EWbQvle}mSRpM4-}F!Sd$ZJW=&M?CAH zIer*sd1f9Zp7GD~A?x8E$k_e~8T&!-LxtyPe9yN%@e%wx@kuy)Vt3=dBYetV2Dhkt zXZmqCeOMbm1hw4b_wa;%_=f)y`sN!^ELDNWLlmVU2x{nUoefGerv-XTT%LM@H1WuSJPjI0b_K_iCzj$Lapu58_7a#0jSA*6%vC;fZi6+Ixn50M3q4DF{O#f=(1y}- z_9^n)i7mr*p^8}MbS0S2e@o86cq#nFUJp&h`trAdy`U98{n8CKmg`?RVkIt(?q`9VH`uR=)u-Q1%e!*k{SKA;41b+_evP&kUm*7q+P66KI_Kh?-Nr%o#_Ie_ z;C{K!sc$7Mb8i#a0lLt#uiVa_j5AkT>zng%-c`?hf;!w&pY;ZEqrUso*kPwuBByMI~f{k)HOHFdAzZ$Y0dz80p??{%*yu{*M#$2-GC zW#$JAfC8SOfQ>8s#ZIfvsH#IjEm*zdFF;Dt~Z=E?b@XKC-Q%D;lW zlGfhdaU)(L|5n<;(1d+99L7EcPKTR}Q`Tm0`cK9*bvC7qS}j>_t=6~ zm6mh$o5j*M|Mc%zSSL0HGB3MBeRfBAQ}C_)ZQ(+7|q@ z$R61ZGRIEp;qMd0Tk&h~kI<$MXZ zo3G+|&=k_|$3U*Xb46)g7mMZ|{{gv^#RlTcv)jdQg)hYS#_7v4`cF82cY8T4bEF^t zC1uhtIrC5BKVK+)v!2h+eK!!xIDV^rH{e0=iZTu4Pr--r^L=w@vGjhNJ$pE0%-)l; z5VzwWC-*~W$$u2z3RCDApR;f^c#NGrayENVdFh+LheS zRxagV6#G%`w_*#8=dQF%Xm#Xl*Q4|fHA?J4TKeQ~cnv1W%Ngl+*E&URu6qDI?-8{N zrM`Zjf2g|mhG+0w!JTrqfO+a`OV9Ikm7F}2M<~~x zp7F1X^W2>WN5lEFb+nr7@7UR^bALf6+61wz;aadM+$Em-s1E&LH~o^blU-vcor|m5#d)Ok{_HZ&idrW>`t*+cEu}yHfSk~Z&@U_^M@@`_^2fN76^D+OuvxW3s zX}$S%=r{56JNRY%w)E@NRm6wU2jWFAoYq4;XOCz2eT&u!|7JXvmVW&Xa%SI;mVNkR z{#DSLKLT=o*%8iz!(bl#Pu@|n3+7CjebaL(V?Lj~HLVLf|K@BN{(%3K_MfH9Df}Az z9ob#wzOVhg<&EJV3{|w_MEW0cQuqHoyYV!*OJ0kLQoGJ5+9UXT%FP~hxq8l0_I&ZH zAkU=6_$zg8L;rxEXX8$^rf@6&24!--PtI8WN3f%uj9u1eWwCAW67lE_po;6w=WmPC z#{<}B%9+jn7?(ljL!O5-aQ2_wW7*+#VNfvxD7CmFw=+qWu$LE0=j--3W7q|TvA>7RmCUb^kUeXXYfZ=f@#)5;3HurRGj6NC1%=Yt zGVA3=cFI45v;VxN%tq}Q0@u-6Kqcr4WpId`nK*q}N%{Bi4{)>m>`nKGZ)<*Kj`tPM z`S=U*JoB$El-^r1Z_>wEBU501$b4NwtHItJl0R4eC$#lqdDqT+M&`k8@Q7IUuJlb4 z+!Q|{?-4oKyFX=b51FeE@PEYFTU)T_Y3uFUnDsWgd+D3&c=jztZG!FC!{K;#o^v_p zo~2wb+Fi67@QZuBihpO~IOE#^ufi+jcCIMx$L;uY_~YO_+SdFT+B-{b6Tju$&CgzS zHtk^A-;n)m672?d=654ypJJzv#>1;{F8_HPy?`^`x3PDJtly5fxpMiDJtEZy+ao(*Ix{e+Pcf1(_2YU?uH2=*>Qho;i~BxU;-F zA@yfX9R_X0Gk3bftnyrrzoFUi@~Db~VI#ravLJ58f6If}Rzn?~0$%oAO`7+rzI# z`+zpw$IkrU4{n0m^8dh%V1M~<6^xC%tcfBmW3j!Q^jY?jiXP@Y?!fPja~7B;C+DcH zw9K_nAbVK$w}R0SH;D7u-@IJ-T{+#bd`OPGI{QF{u!sp_ZamF-$-cxRt ze@@TRZ$aDR?1Se(_Px#ESGm36Zh502Yh-U+&pjQ3zvpMZf2m)$DwN(w>fx*0*Nd=K zPjiKz=U2JBdtrgOR*ROob0R(a=2ZGs?8Ra$=&2)Xev~?vO1mgiERma4pgSU43*grh!@!JiPgc)@N2YT zxV<(mkn?l7J`$Tis|y?XgZUr88{&yQK;KKbt#NnvGk`V(>aw%nWKGP*lleXA*RYqV zCw-nVy8|*FztfxJFV&m5o4&dpYRK!Pj)8^JnKoyn{n&4bT?8HYS?iCovtFm;KOy~I zkADk$Ccc9|vq$Os<4R@zqL(bIhz>Eh(2XO(UqsUZ~uIa3s&u`A?L{5aIUvIJNr}i$kbI0+OvoCln2|%`2s$sZ6lU`OWsnkyr+;jrx$pF6_OjDx-IQz1-k+WNKf(?8{qT7>`|c_^`38D0donxw;xp_X)_>amGyhbm z!Ok4aTyM_b67ug#y3jMXKUX$+o#97$!y#vnjP>OOb6Q)^VxKGb6n;JaME)#%63(+M z^EL0YNAmL=?E?$o6FJ%6a}L>ozYh$BqiCDD{%d#_ZCNaSDSeIwycDOU-`S2CL3w$I$_mlnY9h~d$?H-5Yjqtl`t;1cF`AzPN z?2+&jjD?(E))nnbV!iPg*o)mkYyjSYpZRs2yc6)BxRKb8>b;4b^|OHfAuOit#?OC? zbU*y3@;US5+|m;MpiO}#Mg7B1-wnt4JEtRP8H)}4W0cRF-CBKH;uq=9!*lQ!EG^il z%1iHxdET6*%zIFSK7^ie?L!|78TaY@tME1a?EO_?5iRqf8&nZn&;JuwQG588-N#dpE8Mepp8=U~?J)3j6M=ed2H zwhzXi&>nYHmCl-=RX=U0#Be4C$VPS*LJ z&;}OwG{3ZUJWk*2iu=KD%J;=5(+*c|Gj=cbLiz@r{dz}y1icyD!LMfh$L{M|8N*fV zTGs!b_)~uNkL+tT@MQU&@B#3!IxnIhM9cm#nRXJig_p%nrQeGCYv*6)+!gHX`ITWK zt-*hOa=Owor)RPAj69$H%G%O5wTIjKug_w z%E|ip6uyH=#-gp9t?BtUR=42J{8#Z)une;H^L)v=JQQyVmCHSE@D$JUi^a2#Wj(wP z>&3E$^33k1J)PKFKpz+hXTqGKvoo}XyX3E?^4(31LKK7)Y4ktk^efywm&lBH6Jnvgs=dIvfcG~<1G=*Nu{)3yy%YOO{JO?kr z^X_kAnSEc*Uh4f2Z-#FZJ3#(cxD9Pn+6{0mWXztWx4{25F0|vJJ7n*Bj6RcHO-|PA zYIaA+`*}nDN_O_SQ}7>herC6#-^AVu@62BdIaBOME3of|+)vJXzv8pxrTw#EK0EU! z*B#*+E8t6Z_K3!EH!qgHnb*a?%g;FU7Rz|2FMd-tYcS3<$u#`UPt*K0rUpYHIV0IKfD`Ef`bdCv0f!V^P+1-={)}( z`x|9i;Cu^w8Rr?e6VBe;xnO*t8ovd-1I}|MZJdNRDx3W%{WlKp0^6{gz&-3a;z!$a z%lOsdXl2IW-SA$xGjxMV@=k-<1?M81Sl&JMGjHYSFzlh;_zLa{twtMSt}Cqr%edgUHqXT4pC&x7n; z)#(ij+6bSUzpZE)xAFL9d?aoomT!oQjMrHHOUgXO--^9htSfB6t_!{C55vCfgX{-G z7lLs zujK83GY>N_-sE4YOrB>wA-SW(|Dtu^zYW9m!^O%UMxTw36-$0sxliNNeUSUv9cRsU zU|%KoiM6G(%{{c;`JVf?&XB&QyGsWKVc zW^jf4=b=WS^v<`4HX2@$pFZ6iGS7R-$vhc>`}1#vF8s{N^g(C5lK&O#3f-Vep>%d^ zk2BWK(ngjW7uUa@mNk-lTml)d<#-cVF6RThH9RfncYT*{o7w*kgZCioD9`Xo>Pr5- z?Dg*Naa>8PJ9~gK7x3#F|BZ5fg~P=%U$>_>rDtx{fXs!g$?Pk+uYvsWc$|82y+-_< z#BPESkmvdsdj6jBcHEctP*I!tKjO!gTSR+CUgq|Ja-PE{({2@Sj2FrBg1Z!rAv_1qzKaNeIUQTK2;SM&FW zezfbvhtjvicPV=h`*6rJ_D-C&J(t~A{4Hq4&+{i^)LH&S_8sika98=S!p>!-cgDSN zH~Ll39x5R1-=pAJ&E8yH58xMR>5snj^i$4GPne%y;F0tW^6Jpfm3I_8L4TEg63!UD z2Dh`{C^ts*zQ(AQHfL@xg|BH_spDnw8th%fn&R38^NF4|OcU!Xw*kAi`15#$SXVi@ zpVXf{CF^M>F2WpkzW2QEdO5RZe9pli$O`-JdVhrs={!#pK>Zyts(uP6ywMk+v@MPE#-h6w&Q;+zFO|<>{hf+u77Vu=^XPIJ?notegDE){=S zJZs@ccKSExt~?`dE-UHnXu0+v@vGSLamIEBIq&d0L4H?zgqA)`Kdi+CWo}@93q$$8 z!2lQt4=P(n{4Ja|UV%s9>a>5?mVVQEjrJDpCs;wtxwST&!5>w$#^tuc7xQnUAHdF9 zxeH#^_iMzHSLI>nHQI1kFLyGn9?sl&2_9tU`$1RnhWtwG_2s4K;4*$=$UMw-Grwlw zkuX7i_L7Xzhx#n>4KPhxo6%>B595!9qxqW|)AVKb$n4RhU85Jfl6Gd@RFyv#uPoRr z#7FYCWM__oYy~0JsLc3p2#4Yx8*a-UaiBoi#R|o_Ue` z%DHnm{Rn;!*bLUtf0S1axrd)1dq>uK&Mr&jY|g%&{W(4RNZPXnf38?(_6YYq9gl>a z;1u{$?!$8Cu-n3Rh0;6Quk@b$jNNsR`S=#jp0+<^@6I@!1OLEkIHXYe=CgtQA$t{^ zBXTeFeRVc+N&|LmlzIU?e+hC*Rw57GDi{j%JRg zjSq{b@7`v=fNS!vfof%?XL4_P=J5pRK>rSB%`9eTUXH=v;B~Y?>|ODEeq-0`SSE*m zHov-SzGbYs$(e2*WWQNL&wNNfZi@ee^z%x3_SL-SWPRoN|1WL3v|IUI+1!hyt>3KF~d@A9w_<8t*oqnw)K0>(<*h_HQaT?Ctd=zIK za%M~ar;j_!yMmwjnLQ`Zk_PNv@)q$Yy4QyM!R-Cm+l%KcISn3y-f&=9X+1xSPtnHB zl}(xB#qzDOjdD})LO6nbn05OpE{bV~%=&)gd7_*HJ!)Uz;7P7B&6 z%Cu%LP~YooOImY&*5Z+g)AM(gN2=p4e7CZhS9jAthMbX4hMa|dl=D4%nzGAqQ|0eg zXT~JopxfY~axy0~&(ill$$OHX@w+89oC!a=)(iM4cn5MeY7AB6?SZ?gr+RtmowK2O zIs3*Ior=;qk4YHplN7CiF**~!7Lr3w< zrCPLma66pwtV17OFvn=YF8cFZJV-2i(;4i{=Pq)ZsWbae`u;e`K2lT84E8wfd!t;R z@iV`Mu&2UM@4DH~U++=s|9nGR&dX2Fi^(aQBJ=*#FZOSvQX z`ETBI<7dC#gMSiywzjmUewA|uzYp$-$HEqHSkb-G?!|9F>bqU}?0Lu0_caf5?=|RC zAoH_Ep)@w5#j?N5k-H6k1YabU@-6x2v#*nL2X4gg{d9>=F0NN z^4sBC;6BK2_L&1uv9Bq5PC({ezC-2wl6S35<(#d2=J=$7^8C8|JolgHpCso#{t)ro zA^YH+^qli@@0nluR&^~qd-epmnU_^ucO5(Hdkh?)o?NG!O1^?k{%NjpQ%@%)SN zH2!7u4mkTvO~^AgeYphYyH4&q?OV#ve)BgwYwJMzYqabOUqa^o0DAV-=hYg6uw3gh_o`A=%sWAdAs<0sP6j;y_&_%(iA{kD_5=h+`Y-ZAoh zD06Hm%r98aIO}~I<*vpBS`#?VdTNL>FTN1Ve*6~yPJTHo;Af3x{pW86(+}ypllVF7 ztST$5^{TX|`IkUn+GhNW*RA}liDQ&qtn4`Ub+`%r7`PXHbZ;GLnUC40GH;u*k0{fJ z{Ob4aY0qr_NA#1}b?jH!hdR*4xn{(2e6J^ z3ojDO^LH=)Fc{2lul{pzyE6LQ zRc_7UyeCzseb2vC>xjXl?PI%4O{}fXu0Z^t5LaI9~1{u#uks#?Ba=zMqP#80&M( zeREL$N&YSL=CnO&XR!~2Q}xT6xC>M&l)kggPk$jugtq3 zu9kXeZHo42yb^wbtlR03{h=$rvb_9$(4O5ZK6G`@8K)Q6*)Q_0aj1I6$vp-dvag0( z^!akmR(=n8+3z;t#~zF?l{S=}u^50SK^=DX!^Z#V2g*sGTnkNU z%iwc%#xi^G=dQ6C?pV+!+(`U=W%}|Tl9w^cJe@DLLTobLhrcs?41dZwoHi0pg*LR| zkpAmxu1yd>hw~ z+#09_KmFI)4RbQkmq&2Pd=>7{^GsyZ}=1Z4Bi)47N3ciK)yfc zcaF>0yFq??%3hG~m(S_@)U_vl0qu1tFE4%TNPD|Lp68F_fsj7R+`pkv+Q)y8yFdSS z_54iB*pK0#Ah)}FKZT#)MAC+G@zggK7O{sw_NF`!bI!>(!mPE4aF9B(ALJfig<-VM z;0{RHFCb(37@jP*HXOpweAyK52DRB+sx#~18-D8eM&5M(gX|M=_MJm;d&u~8g6Idr zwa{8T>nwF%hksDMJ$oQ~6Ln`TG=*Q?>$|i?;uk?P+7R3op3pbn;!3osa#FrKKWDQ2 z_>0xk72inPi#@hgnbMj`f*Fo-eZ*r1UQ(37^i+~c$A&w9Cvf2q9T zcu%;WRtrzUgK*Fs_ILe1ar!f3n0jt1l-|#BZzrkm|GpKaeGJ8q+?NQvqZ3^@aSN^lJEgc(CZZ5S}Ui zAl$}omR$Gop8SLPz1UUdy{VlK;31H{T8E491^fk<7D{_?g>seD(Ta8}&N%J_tzdij zuDopWGH43p;Cwg}GOqvsUY}%lmV3SSU4@Tz{nS|t zwuQr>aj~>tRbg)dSe&bC%Ad|ZgZ-xV?20QO{kEApvu@wx?**5$?}NkH8L#Ea*2jb43AoF3b1uD+ zy%OGHH-?+(d+^uE&m4Oa<`qltHp|#^AZsqqzUeSttdg~nJu>eqSF#VJ9WE#1oBPPQ za0q{{HeQQg=jT~4Q|uJ}V4OLVXJZ?BYe*lxOZ!%QdBDy-crkl8dnE47zwbY7DD6aO zr|#cq-NiHRJJ9m||8!dB%mMHY`xbf~7`N7#^K<>26EeRJh4fKXcugJE_zmUcJUtF3 z)3cubEwkQn8}Z9vb8UVKza*aV&Aqo}_l3>Woxd;3H<_E{brYNUU;HQWJm=oRSJ9q? zrSKHL9R6gt6wmz49+thKhB}^f?H=qMXa|X9oc__KGWHa98T)SbkL=EJ@5O6i20RZl zwdWU{HFs>mp1|K!nY?rLhUHLGtTk>{Zhhd)$1~t(_9WWB`Y-#>FxZv92<}nOaD2J4 znUj0MK=CtRmDmYlm#|-DukLRBv-6$)MEn8Hf0t-8yq;e<+@th<)nLrsq8*ebtYj=TZmQhMoN|ZE41@ z%ifZmxtujLPnlbLl%D7Lo()_6Jle0Yz2D&7y$SNp-kw0tM8tLzBlng8GW zW%SB&-hs^5D)4`M3_ejmy^T{>#_0~%7{_&41DA6zygF zoD;L|yW=|i(d<7UV^f4DA!n^d;#v3EV{%^4Z&$6f;UKYFY3ty3_ylsUxl`_^_+!`# z&M6op`JcMKo!L9nE`apG2=zTKzooi16MI@-`YC(VwzSFkep(H&y`AH3=I|$ zZ#k#)oAK{Z*Mqp0a__oUA6!n$H`uJ*>}M-r0Y7cco<4^CKXxa4HQd6^zX{8C;FNg; zW~e{=WadKV_~-0{aC`0g(RDtPlYQY1`fR!P<8id^IQ_7<*aDm}98fS9odwPG`KI|6aN3%PMHIC0d04Fbd zd7iCVBYVRHu{!+hdzo`p@Zq#duqg~u=HYVtSdovb(b7*jGi0r1{5P<(-{zSzgMW9BXDlyb=lq`aaZjQ2Z8+_n4yU`;t2k>g zds^-#>v|+U7Ei$WzPd&|C-PsB(^>APxHA7FcINpBFdr7euJn5guCG1k;cCj4x&C~9 zU9rsH%;`HJd(WLkb42Vmobn@G>p1$uwB7hQFE_!<>EU+jJD2t=`$C-k{~mT3WR717 zIlrG>D7}B(%kKi|lSgQoLnE~#`#^1V9mFr=SHanP2h-A)TKsEp>Pmi1{XD zJ{)#r{|#I8G!8gxvzxj%6ieTBa{t*wvL{YfSDsCG$ytquMK3FT*E*553qN~8Be9HE z&IrTlo8wC%-;2ulGhr&f6CPUBN9@f1{2j%~_#fz3R(i&C6wi8C3Rx39@LFy8Tl~ce z-w9}01Iuytur=&CIQM)#-W7IXzfI3`ZYX<}I?lw?ApMYaze4%5@O99kXK8L-jq(4`R9l^d?nLc9KGk?$@%i;TS zb02!hKY+d^q~1JR^Bn!&GcEbK*Np%9@(TP>>KVs%ssAp0rhviH>wXjvm)$Zvx4jA$TUrJ}TdW~|aj=g_;U>mae56*8Ac!2Zw}W)xfl zXAUl9pUTcWoW;(%NPdBxvsCul?V!1SnG7A&d8ziz7h5W?4}8de9x^``$+;IlSty+? zZfED6<9ocEb_|@z-VxH4?2)VCXytC;XFX2fKdHN zJ5wh-irz@xt~l-dlJ*d!eL2^45<3dcaIJ^<+4moWv*8JP)^klrU$x~ggUt0;`FG&P z{CVuOca}QNrgh@~%O8nf=HHB84EHE~zZ$~Mn#|f=4JWbx|FipMGZ|Q&fpK>*TVfE^EH2qbhP+O;*-PlogsV2GvcSxj!|F6DbJ6pa24#!Prr_5 zXU>j?>&>;!^r7sWac4j~@ePnQ{46e~O_%c=Jjp+dp7~jXJTDH0d)N)+?auD1ec9K> z)6$0gW-$RT)80qui(wP~THL~Z^{q2n+H(P|dNf=CRkd|Co=ZCra-VDXzsg;SpK-k^ zco4K?Ut28o-#2)cI+y5!w_P)H;Rxs?C*ysm_DpAIP2UNR^b~`MkhA3+IoYqyt|&db zGA}Y0zs7garm?%h-g5K&o>eT(%csrzZP{6G6X@yhXK+1vc{a4<=bnF4wlP2NT{ZZ* zx2tK7LY}#w;Y#A|*qQs^^IPD&PyAT0y*L{r{&9Kf9MYWrH+z!UYzxc5$t0(KbsaX0le_wtZ`+D&P{O;o0z}4*h z?sBT@&E+4aU2Fb}brEX~FGAMBkFMLgU>xPo;6EX+iu?y@?`iWXxHfGT?LhTSf@aVI zK2zosW%h>b9Yf^aBDXFcUg7Uw%-QVGb>-e9zL~rY_-#3@*w3=7;f3<2;2!FGoLwD` zk+U7`3^~WLKhe&s={NA-;WxnD_pWH$0quANgZiK9{toeW87iIV3 z_brs3?F(rQ)iH-Y6pp8-KMHc1h>gW9VGCN;XuhYe;ODvfmU!x)Cbk6HK{fiT`e8Xe z-vVp$4`ZJMRkd?5E#=a_p*Z!AE$9@9s;x!wDzq=fPQ{PVa&NEmvnQvoGM`g-&Kc>`U*sGiwi9fp zPjUu1TReZi+nctYzdgSkvL4cxy~RE&ch(Ynihp9EG)8OO$9Zs>dpH%}E7lKBhS%h` z$4B%m_3?4+waN{Fv&8g*=-VRrnbE%x|;S#t8D#;y5 zzft`i_+9Wjc+Y})rSA^I*|+izlK1-y@hc1De6rFhu?}_*{9zUH2KBJtKR?#A0dRd!2n7Ozq*BKpQRZSY;k%UqrjN%o&B< z7^)Y{LE1w0E$jx6_GG_IA7u^oW_P3=%|0BSf&JB4i=H-h#d+2~i;pOj=GD_U`}9iM z+uyN=w`#QKP}XAi>fie;`&C@<}=Yw<*w59#whVm;*FmrFZY_i*4L*&gYvO$Mom6cm{q=J@-S_Ue+I&CBIDJh| zyNBtMKWVwA{`6e)Tu7PB#q4F%3(lMPH#wOLyWtjMHQ1@QDI5U#JF&fSonon9hAESE zbC>+ol|K3(dorw*dnBzHZ8QFCyn-L?MwrNtHWJ3c{Gzo7;aU6};STmG?zJ2;K20mk zWA%=~yTTY+O?a$Ode*1jXW98pZ%^^;_gOdVXxSq!SGJ>^8^pH7Rq$8%VzIjH#q56U zDeUJ9+J*Ok{;&^!cF$6s|CE*XlI{3Ai`^&oE^N;pO51^*Gumm;gPrq#b=O|b&R%e$ z{`j_7+OwX;t>t}<_Yr#?pMcZewEJ{+fi?=yr>&>u`Jd}`uK%7?b@_bZr&@p%gI?i^XzZh0GxaMT23qcviNBg zo`>wVkoA5ge=~eHY{~9RKMOA?l%8vI@FDzL#oIw=en;4beGAUm*A&lQvKc?uK7lu;~@X7V?(zh!@pXF(CZlAFCa{W$>gOh~)4r_{k!A^Szn9(~#Mp+7r&&&UdWfU|d` z&VEpz_A$=d+=_m!dT!%Ch<6nGg7%er+7qYmkEiX7>%$^-Wq)`arpfQCj)}CL_}3Qg z)!j?$`vLYd;)CG__Cv4$($-q)%Ur0dzC0%evS+B{L-um@E#{{muY?+Ma=o3@n>lt$ z(X$Ow?iFQz$Tj#mD|F}I#ZLRH;$880Jl?&eOx{EHryazu4Ouhml)2wE>+yfEFZRM` z6iR#hz4$%ooHoe4S!@yR3=`Q))c3h~Kd8aK8}E#_6>r(Ibd3?TZP?e*tJ1RuPi4Oc zHQ4)zHN$&BQ})TYAs&qnfIjf5Iv%7I;56;c{7&DUQ&Eb2FP>{=|2SH_Dn1ReC(ou| z?Ecb+2eY@(=8R3+@&(>iUgrKmPzf@(_wQM{uO|3DcuijVz7jk4QH{MLjCQRN>f4+> z2C}}^!U}eSiqd&y8ox2S3;fK^*jI+^Em^}uA!Uz&A?&B*9lb<{UDrq z+oPg%F3mdKi$8#$dGINFBkVyRNPDQD&HTr3?tLcvW=Q)c!T^{DX>;0@bvTgULixS@5wbGf$s{sq@|w#b^F2o3mY>x($?&$T1_NuIaUQ#XG! ze}ww7H{B#R_c;oxiH*aVLr*|Ce8YpGeD|lf88j?g6`tmEq^b^8Pl2|JPdAmfry` zrsv&rvASl7FM+n&kolBx$XaOwPqJIXT;*p%k=;pN#^-l-Pj*Lmjz0)jSLe(0@fGTK zorXB`?i{h4JD!0f*?sAQ3Z-#-lh%rVHvdMk?(mj+KICuDPCrg!rw`MnTxT%5HO{_L zg}s_y$Mx=HAIHvbW0Q-e^T%hnmAtI`>}kL7v;K3x@5+A*G8gOdbMBd{o{{)Lc^Q{c z-Zv_=C-b5*t+m(8NN{YE9kG{+U`B~(SUz5&UdmYa<ohWp=}&ewCAdBmE-(E&hc#`%h1( z2U*99Y1`ou>h4<57WUV)miUMA(zEaodglH{+HLq!JP0mxu7ana26Tf3ko!FgZiENayOp)v&Dy?9>=9U? zed*8tzYlCDr>@-V#m=SY9;>j=z#qzeQatl?3*4AK4!027mev$MfxD*9;bC^hJ?nnc zGW{mr2BxUzKK?^;Vowy$yJXJacd#eX_Z825rQcS-Q}BLysr-w^ej|GsWIiR{9$%o` zllG^p**nsfi=W7D&VB@Eef*Dh*Pgy%6g+3(7}!pK+>bN2hC^*Q0M3ErOu(6ckE?%Y zA*%{r_sZ@3=4L z{SV-k_D)emq(mw*66*fmMUt7aPls$W4zl7HZK+yQM$LDi>uFt%#>wCu+;u-smeDBdK`R-?LrL$(TzjRk7Yvf2c)io}X(+s9) z--{*IDQ*o-Ap6oi>dHOUh0W|*#=pM%&6%_gUQti(VKfY7U&bB{v*_nsYZQMwI_J$K z_U-DZzRJ0$-i!GUXJ_1(;OwtoE4vMQrq~pEA>J(iA$$w}aWDWHvU}saBc}e0W9Dsd z^^Q=_&#rX>dj_5_=SccZ^-YtPb-pcRKirCsE);)z%-Y`*euS*S{y1xO8|By2>7Uow zFG0rhb9UD5Q(}2;7=+VT!3~hTZE~SFzgytUqwBP7Fn`A49eZZR<~sh$u(L8xu#c15 zpPl(P5cg#dhjHR<;B5Lk{*mH`)7wGXbgtM8`fIVYCFk5r?04xq=-hwGe69@_@@;`@ zp;4i@r@UVxhfd#ChL!NDKFW2|@9V^y8vosle=o5-54_FSN1Z2&r(J8=>Dx~9QvOX4 z9bYqbz2@3u@a3=+Zj@g^>?C=UVHfcx{2PsV*8dL5&gSa@PqSOg9bHm9Ylh;(<>rj) zNN+EeeQpt5Rk_FU0H{xI#h~DGI&b(VLp6_Dmd?>FleumC3j@rH8|8{$Y^w zr3;=06X4mBqJ9_G6zhb0K>8&2dox{^?oSUBKNPluZm#ZP(c|wsI@Q4#vIk zEdHP9#qdvd&gY%vzbE%$zTN25b9s63jGM||fnAlIaX1L>Qf3}pNzYa0FtIi4huL4! zpVHZ9J6ytvo)<7;O9H?#h;*Y<;}I(c7} zGY*bmf2M8OBfHQyxvy39b0x)dH@}Z(&t1)zb(r`%JYIYd{e9=+b3hqB8SXP475VFn zf5XnXK3@Ja?EPUQ`x3|)ZzH!-xi!4nIjK#R#g~f>Vb{=>N7z{}*>`@0cJwRaxpr@; zS!SN$AH{aXt(4glH%TB;0Mn=>LqCjGWMfBySOZP+W-eHb3af31Ga+|HT3CtrKqPhQr4*2@m; z-{mb(<|&xPcLda?M~hV~_nd(LmNNxTgIe%)ne##{`{ps?yYYPrSvzC!`S><<sV)+Kt{D_hn~~eh}uvHvH9a#`aMdNk0Z}Y13wWJzxHfLjJAQmCEkHmuIhu z?3^2?L)!kLSoZ0!)R$|NL!Ljfrg9FAl5?BbE9@QETX0Ku4|)PL5nso5zU%Hn_YzCL zeYv{0556z0c=GpoDwde|T=1}S^EjK41XTd7IvFfO!%&o>g^I-{JzW02D z)5d{tpK_Tex6?cFm*G4QH-%qI?16X<^nlhdy}Y=eW-mWlxntSc^E$A9WFLmR;Rg6v z$aBfea?2k^L1VrYsS1+>YW|<6{e+q4_?= zY3m67ynhvFypylgHi}FNe#NeH+pT>BpPpTw||zoi3Ey8{h`|0X#`vX=_dV z3AE$;TmE@L{ADtifgY0LcAp;~u}j*+-t0*Uh+A6kDO}c>Y`?@36Pv5pac^Ja<-?(+-C6jf2-Z z>toyrddeA&2f)2_BlR2yyRtK<({E{K?z;zUFP3#No<4(ah115Y$;`LGIA`BMVu#Tm z!GGw?or-0}dD;hOJ@(SJW5j2QFJ|X?a2}n#Y~lZO>N!&0fqdCx+Q@GS?fJJtKi67- zFV#0s%6T3#zAxeUyVIvDUkh%dd-MN@r{YT>bNz8Ro^GtJhv=%}oAhldU*3wx-KF zN;^8rYk@z;bzmj`m*TzgaOIxG$BJie9K}8qPlV?@N9@PWJU@<|d#NP%arzp*z1aKE z_u<9x610GIuta>b-0Us$U>0BAzXlepasJdbnLSvn3tYhehca2q3-BnMIanF0TQ~FZ zBFOwdN%`mG{DLds^!dSfqImkP7i9lQ+vgRO6?;|A`%sC_H~Ksa9wPoS^o8nt=kaZj zlfN@quiTGtgV6^`k;vjNila< zzMN}!boSkc&iDWRVr%Jp@hrJHi(9~pa<;+QBTlCm$r&f-Qd|>WfeW?sDZHY@xh1cX z^54?mYy;jpYk`(aJz;#vC-I{Q#b{My=xo(tI%p2iuw z%&oiRcZRpw1-P3p&%?8D_RB@kjlHdQEiNm*`<1bq(%Hw3r3c7)NV`tZj#cz9{suVD z{*&kjqm|Eny-Z)jcQiZqk$o{`FT>fFvmb3w*A*{7N&NEiTh7lV#rKv8?&kq|5AiMH zIbSj+P57Ggjl=2hhw=CPgT;HW&w>f%#Wm0fkA^02cA+>QvX%$4Pr~Wfui!KInEjG^ ze!w59vyC}^4|@UoD99Mzg|kO&q<_Wpp%47UJ|1WO4=ZtB=J~1YtdZ;s>7T6s{B6PB z{J-)IN{lc4(F&g|XBRr>_@DHva6WrW;>!JvGd>NWK6GYRFDcHkp6-1gzO2PA{Qc;w zaAoB#R8L=a2fT_e^R=PtJ&M<{XF&cQDgBgsvoBP{gR~>R2_D72mVGB&O`n6?K<3f~ z_#e;&{w(pG8$VfId^SE3=lWy$vZk(JPowjj;Ft7H^u;ioo%=gVeM2F?4R+wq`H;W2 z=nl)|H-l2~?qd7!U55M0`2kXH0@UEkeztRY@muX*V&nOLht>SUVKLuG@xAEN__HRL zvj1jpr60k&L4HTRLcdO=GY7vF8-o)+x7>b)Ym``v=Jm^B8Nb|bTmIhKR}=5dmwwHB zN}snAe^i|};hY)$`4;Kt^vOGN216T|C{|7R@A3X}^V?^myf4cgUZ%}*vM+p&yTNq2 zF1{I#R)0r%NAoRIz8s&guBMPN$(p~Fehyl(vlnlsPr}Q^vZsB4_fxKh>t2mN;>-L> zzvegIk>XcD7rxUVW1RP|KKf#Wobw>}euDCg#m2!Ie3NlMd+4(+vbh)|1egGfuI$1X_;ZOMP!&7m0u^rv_CCc1QXHPxXv&3w=I%J+6 zAn!K*CG6}IyR$dY@54%V4g3yHU)9#8682Jh0$dbjUc&g$k~J3eG&Ok6*zR z3eGg;E3wa|FM{;{?qbd89&}gS3qIgG2bR+h@xP{hwegKGn{Sg?*8dxHo_TW3YTBB9 zy^H+_`{J_VoY}-z7akYS-xlo+w}~IM+TOzV2K*s@t2+O?c9qN7|BCbCM81ssV|-~> z#=I)M46+C$=3ts$A;%O-}w! z;~89C`R;t(=pE?hxK#Tx*7>(-FF@Ag9QGD^DLzon+_K{M=RP{I-x9l?ei$;g@4(x1 z6+BUyfpq4}9_%;a1La?4*Mget%+)_SI~QROzSKJmdMW#cx=)ic6mm8-*7gx%{h*ZZ zPTXAih4caRBss6*!{z;lo&Y_?+pFiAGSAmynJ+EnZ(?VjJS3+bUp28^+5dlDeJy^W zHto&79e>W2j?j;83m4Km!S!-xvu{#Qo;%W(mGG!ob^JBX+{l{CbH@$rMzD|AL-=f{ zu8y~GIotssYHtaCTK-!wgU;T(xV-qz^Dy5OzFpLr^Xho^F=F`}q#beQ`#tu_zy}ue8J)kGtIwXq&RRW-{z8Jb+(R*SQ)iF6P2Hc^DH$~g zXTJ%P_{QR)c&d6bSJTHou}86g$Jyul;R!t4bKNSK;&EOR?EvatZG;2)G7i}n zviEKWXP%rR(Dp*q!KOaBJ;30J3kdX5S5i%8I{T4dAXTGz= z=ZV)*<^>Fuo9Xj`yeexr*HuM)_E!i3CDc0;Q{1y10W8VV9 z;W=$dd$)(j*wrC@^Paqi>ALv0vf?+#%x{WPWTgKPQ*Fgjnu# zFrBvMn_Uh1Lpt|;9X=R7aP6$!ez3f}_}!s9oiS?0ZjLjThH1wr_G}nMAHbh`U#VTI z@j*~sU4NIGC-_PJs_>%RuW|CTCueRChHmo8U@nY<{CmcI#OD->>nHbg1%IA{PM}BA zkHcQ{H@GGqgzr@DFzx%5{RSK@Kj-58VoyW%+2QyZNIU<;zvE5DBHz54us6HzTX-b& z5j!5||9h3TOohyYtdno$)rZ^QLcSq<9q`SNbLUpPD_mc0ZLz!2WhLe&`*8JbgL4k$ z3^)tFCH7ipbA!G?tR>7Z6yH-C@Z~p-%kj^Ar^>BG=lS;-c{{`hFVpwn`(YTJvCsNH zi9KH3k1F#qeJKAEFq+9w6_)&c(SoTuwXw zS$t1G&dc_E*@ONq_a9~~fm(upk@kQ+HPZMC3+}!uE^Z_^#s*r&is_5gf=SXch4tBdD+SH6qHD)LQ+Yv`Nc4p z-+PUA(;MjVP?_G0o8p0ZKfJs4y@1Q0t^9}Z`tsuQ%t&=+oi2r2`Jcqk;07=Xa!x;? zAEw~!7a5zbxDq}B4ua%fP+ojj*dEt~mrIIu9w~MW{Nz4+<7(-?ZPKP zb$TfL05`HflJlwD2k9PsvtTNn`)q~}*M`;Fa(n8Mw=;ij{yFp`P{OVNnJcs8cEK$R z_F=Jxbk4Bt*e!6{`zjs^vFq`l!PgktvU7iz;>_dhpShQuBkSP@_qYd6oj3lkU-B%F zz2WMz;y6#Ihl!0X6rTZpFqTcH#dU9+x|rU4zc=dZ#*v zA5m@+e8cxH?u9qVc?)MR&-a*&{j=<=R_hLq;XDs@7y;PeH#dkmr{z-TxZt?)Mp;Z&G*3X^r!ZbQgIa z$!pJ^C4LY4Hk|AHCNKMbuK%Plp3irydYb9m_WXw`vpwI1@*C6h zhB6P*srv~2JLo^@X?P7DDV~2*^C|mTc02lQdOLg_?x>F2`D>KgA6%=P?-|Hk+@5c- z_*?Ad>dF3g0-Om;_^PR6E`1;UwY=;l)1V*x%(oNdIlqm(Msyj>EEL~eX3F1}e-M<@ zJ@_-P-+LqTeX^)(f-glVKVEjqK@V#dq!kU-pO% zd~G0m+hCmek@b9y*nj6If3CNdZ@bRM${Lug4cTMbh;@)Z8m^?j<(p2|rf*RG7AWP* z7;NP~2It#E?mulgUOeCUvma-kSLT0`ZtZ$s(*G1civL=^v@z#weq+d4R*9W?(}=#0 zKl3GH`8!;q?4B?feu0eP2%K+8IiDM{yW)HU-3Mo{O51X-O;OhvI?n<5{j3uE%0lrO zcLHC|xuNXIut@&r>>+XnuvbC>#_=tOBk8U96YmtvYA&O&>5d=VNpR_ zw6U)IH`u-D$LW2wBlGNK`D^fN(8~DlYW%ZaKV;tvX?Om8?Pk1(+}8@lb)0rC;BUb9 zrq~ned;(`bOx||5j(As`Z%G5?XMW6u%&EM0KOnZmJ$xf}Fmz&P-%CGa9~oUkhCmDrEOmn*Z9T}Qps#oig@PeT{!b5XU|_a?`^qeb2yNF7(5F(kDi26 zON-wU_LrZ%AZ=gD-yN@qZ~4>42TIHl{w)Rj2Y=RCFZi8ZkG&Ajkhhj^3B3`g{@>ti zr~;=Hif8Ao>dN!Pg)pA)b$F34^QV)0{J}l8-g8~KHK^<$I&Ikoe^lms0`3Hv z)A!=6r;PV;?5w8;;XWuU(Jx}_`2WyHU*Q$(4g9G;<6j%v$bAhip$Cbd4_P9E!-w2eOg()ed)c#9)OeWQR$P%;28e;a+>3H&=5XW&#yRbZdkDH*pun! z^uYu=YpoT$PcJAd_FGeS%4V*#DCj%bmCoF2Ew3ZH3k-p=+LQHvA^#)zES&zzcgoyr z&Y^nrFZ4rnWjgnqIr1O86c5HF>K-fBm%SbPq0-_!=uU5;pA+9-{26v5NE`ouKIM0y z8U<^jj8A_IkUN&0z8op9TeMi#;Z=0zPZc~EKI4BMK7j&%?z6!Ev;Ijt@|<`Z`vN+9 z#{xK%UXB;T?)0HJb+>`sZ}ycncpiWH@M`>_dh$2EU+b?s*!9`J;eE8VE~GE!D1Vmr zFXSI29$(J3oK3ewe*4I{=6m6uuo70Y&ykb&snl~LowGE3To>+CE_?9F{MqkI>9<{D z63+L?bMTqa5k`9M+r3cyJ@0PzKVT~Re%M-8+ynDW+m!v^{TpYFzF%Ivr|h%m^G%nN zcCQKeGQU2dx8fh*3w14F-$&1d+|QAaF&PH=4mhi{_&lHAw|2Gu_qP7CFISa+54;E8 z!e@|o^%nAfqwj~2%H-M;+|R-ISiZL6hiO-L_PefsD&3eq1Yd@y@nsL}gCFA?#5Yd8 z1NnZ3JSXhSmpQPIKWp_Wxxdl__+F5czRJC4F6LSNSiF?~C%zByWPBs;&A$a_%`e1* zAbVRIZLA5+Ap6t9;@9GeIAbspzmE5W)9I4(;`+|mc82C<#b@rp{F!&@tzNT-acQj8=!Ts2o*B8JX_A|<4PL_ywlV1g& zs7)ip*YW4MV+;RG_6pbeu(UXz`zW_W?j2%VVGH|uxu4K^9!h%`${m6q5c`9_lKfU{ zi|?ZU7OM#NtMfCwvApG9?n=? zDRwCy1G%qDV5V!#;BUzHJv8GBAFM66;=9Fi&gUH{XZ_jQTbDkMUMT0If#=h-OpZ4A!Y`!9SD}hw zo>QPNJI|yC&=-h5jlUA_zt%H9o%Nr6vxM(K^S*x}9chR0z za`vQ`(f`6{$!RF36%6NVW&B$i|MB$4>YXc|_Dz8OON-CXIpgvyaSJ=`8x8xj50TS} zPCGOAGABQy$Ks6Bcz6stL)KGYxixU|2ElYXWBMcia`tZ8ko}-FeJp;{HP+MP=;~dH z_jxvZYDw{ox|jcOIf?Hkel)!U-fwNO-9PfThW6?`*EKE|uPZ*Ow0Le!q`ULw-EWfk zUoePWUHLA`WlRpoqwRs&7nZOah_#iMx|gzF#qZ%Y;*Y_jVjFNrzLUfju}{Ry;6u7L z|9_t`)H#?w7ZQ6*nV0CDwe=W09S-2140kG*@%>%SkNoMw3fkUGTPCvGva?RiaqdO5As83LW@XUp}M@o#DTtI(I|*8}8@6{`gg(g(|JMCaM|XnG;t zKyLQDtd|jZdwdZ76IQP&j{Ow+j@XbnI%-Yvd>)CHvFAYc_@C5O5nsu!^uKG*!|V8e z#Oa5u*GgTAYq1XdTCo+d2?n~iYj9KX9q>%?tkFaGZ`9^I6Xabn&k9qZML|DU9|w!y zrp!V*^JX1Pbe$)04dpZbS%c@sr=G|8x3J%3A3@K>>Bl#41AGEp2N{P2c!-?C=ndue z7F-I=VF`b7@@$axv6a1vo%%r@{^V zS$mJrd2U!qXZ&8pKjM0DB7OM(au=648`+iBzXHF?e=x_BkA197*t#+ff;wJoGfZ+wy5AL-Qp zg=HOvS(&L%O0CGKAO%w{vuwH?+M7grq2(e>nXcVPHnzra#F4~U-r!be3j^_ ze4VtjzW5Gni}(2iy^-%lv8>TE+&XQ-l<$MQP{|8zBP3d89TA_GeT`D*G zO=)o?&(OCkbF%w>O>7o!tp1jK)x>k%T=N@t z)?0g=dmG1hp8V*{tyA%-VxPlRVh!Lkb?5n}gs-6NU}(tBUbr_bDHNXpZsS`c|6pUf znVullQfwZ69!Ib3TEjZFpmB}{y&w?--~p_XYkz(Sx=+btHg6g9b723CwoU7x}JHMF@9M53HUerAZP~p z9(CxN;&7C#O$h*@CIN!8#@1q0yLB1~ZXYyCk$xSTn=>@Z3 z59m=|e6GzrIf?zGzPcB`1q+njMVl^z*6PgnmP6zp3-_mua>n4)I~y9yi$Bi}8}Lu^ z%K3V`r?-`z$v0kJ&cWGYo9UEm!p{AlDt9=YJ+lM!cm0vdb%edx_p_JK6Xmwk-n_FO zL$B55vEr2=zm@dmyFl&_kacz||Mq-62ttmot&Den}VvnSUWAt!5o7~NX#+5Ee+bN}i4y8Qpd8@25ey0X4b z+b6Pn9%9YV?V*Ztx0e_9pB>fnvho?vlE&eXf;n75&wB4s?Oc@pfy9&)x6gtj(_S_ottg`?Ydk^6iF8E6j(skBEUpLX$L!ge8~gLGhEl%#9mrh#IR6%$eJ}g;eD<4i4#Ov@b4*$B z8%gHZB>w(#yYjy-KWqI%{_VQhr;Yy$+H(zG`YLu&LMma&fn5rCH8{8xtN_Za$D^fA)Y>e7*1x7 z7u$utt=#V{kU4q;JA2{lIQ!e@cp>`>`5FJr&#c8fe`e1b!Z$$9o_Lzr{AlIQqI12f zax<^aW51_ew<(jq>%9Y?D4yq|R$|ZMCXl)PB7O^J|NT*{3e-|h=JOnS9~ftRG8fv? zJIQN?*ROVN@-3qGQU9m(O=8pV12BO={|>8p(0 zY{<3N@zsatVGz8cE!P!%bE8j%hv)~Pn))7Pr(c@0Z-(Y{Eq##rm$EhCH}yUad0zfY zPTqYFl$Z11PC9cfb8b7xeLgQ|0^Skl9=gIa?04j^z&VC-g z=X=Q5XD#PBAbWe(;uKt2UJLm@@HfQg>5E-)J^nBFw#To@Jr=K(--gb!SFVvhtVItH zYfRrnZ!Ob4xR_lDp5%K=yd7k(x}9%0)Ma0;{$rt3epSBeIC&kQi`+NancGA03_Ju{ z%KJr`pXu~>p8L|?^hs41A=X6sZCCqdK;J0VR?cjwkR1JV6rFQ1`$P82UHI$5biOS( z&st5D>kf70|3glHSf$Qxe0$S7s=E^YCmaqF_3tstZoq#Urww$gLJ`B%mvuc@nU|fh z=g5DTFZcYg{EF;3bk4BTT;o}J`CG%BBagwZ;xq7cob@+aEc@Cp7|osuS1a2V?;vmI zF2(P~6X;El{iZ2o@5&jzUOmt99}4I3Xa0P^-w)DX@xM}DJSRJe?+CxLKa|%%&ck$7 z*GL_i2btq1@Xd$p3Gd+S<&(vh(`WGQ3Wu@ZP$*v1o1KBgON1T8cLOZAmvy{!= z{fT?~0v54rx^C;z;`7%4d<1+9dB(^dd+wUzTD%!IWWNs$>9nh${3qZS zxkh)Kb(%f@clLi^Aw3pn56@XWl>Sbc>_PoY?8h*iKW)97FK6Lw{5Eck7nPb@&`i9S zc7KRlvhNnVo<12r36tsT`8&ZeblQ=AS;<~n&^|fu;LPhGumFB^?d&~o^Jm=CSO20{ z!cXj{*jcwnnNKD1GJcnc<@zJ(Cb&L(53%fj>)8iG)>`iQ8##k;3-Ryh%>U2X*Tc?y z%jJGbryYl|$BL()4~ARl6=IFe({lP|_zZq@oyU~hU+gn^9r?0v4uF$gw?DobvQLi_ zTO#io7*A)7|A8}}IUj$c@8ioH*a$gKaxSI+4uXNOGkYoQN4JMul5YV zPpM}Yyp}(6D}DN$+*|3nIL~q!=VkOha<+wjboS=T{8zB2)AN=4mi~+0in}Y{7go?M zjDN@YXFzQNN8H>p70FFc(sO= z%G8isaNYIVo^xSKsdq4FDZW5#JpBvQg~Qp11h*hk?**;&8m z;GFjv)6|tZF5*w$X8vYBSqKx^HSrX6RFgXb-^qT3ZlzrMbva*m zn8a6#d%tjT$nzN`j0pK|?Dv4`bluC(R<#u;}X|1a!Qk9sC&V z0P_mg1TiQRbJG>5gJ{hT8OR+`r(#G>~JNQ&R zEpW!~HvWo`_tma)&o3)JzxClexwQDMGnL+8PIO_fg`ebo2=$f!ORN`O#hxbi4Z9Be z1ND@%-^1CbHmg6Jb?~5^zVHnF1$2Uw(V*4eMJmi8(w?){k;JMvx2zSBLPrS8R0iM^RW z^XU`zEWAd!C+P2$*_-YO`Tg`O_GPZK19X*_d6f2bEG?cV&2Y+QzFmzUWVeO%#d!Fj zym-xw+qY0d-nugTot)Tz;ObCTD7K>)-*a%BytViUu_j{g)7|-Az>}2Uz<(wG<9yi@ zPQ_=yw|u+e%;^r0`C47uFO>5SKAUIFwO~(R{{~H<542z7+<|eB`S3d5 z0rYP0jDGr*owIrn`xW(OKfRGZ<28=Iz4-geRlxJ1Ku;AL1{3K#GmnKiaGYniqxgSO zF6;k9^_-3W6wBXK4pshg$R4||F?k5rWS7Xv{M;7b0N2x*$Las%X6(;|38nuBolP=G literal 0 HcmV?d00001 diff --git a/reference/fixtures_amalia/tokenizer_corpus.json b/reference/fixtures_amalia/tokenizer_corpus.json new file mode 100644 index 0000000..9441077 --- /dev/null +++ b/reference/fixtures_amalia/tokenizer_corpus.json @@ -0,0 +1,597 @@ +[ + { + "text": "", + "ids": [ + 3 + ] + }, + { + "text": "The capital of France is Paris.", + "ids": [ + 3, + 806, + 5865, + 589, + 4472, + 656, + 5133, + 119735 + ] + }, + { + "text": "Hello, world!", + "ids": [ + 3, + 97849, + 119732, + 4437, + 119906 + ] + }, + { + "text": "don't I'll we've they're it's can't", + "ids": [ + 3, + 2072, + 119792, + 119721, + 606, + 119792, + 1539, + 950, + 119792, + 843, + 1538, + 119792, + 540, + 834, + 119792, + 119723, + 933, + 119792, + 119721 + ] + }, + { + "text": "DON'T SHOUT", + "ids": [ + 3, + 607, + 3419, + 119792, + 119766, + 577, + 21564, + 10722 + ] + }, + { + "text": "spaces here and more", + "ids": [ + 3, + 31078, + 668, + 8696, + 668, + 603, + 2511, + 1763 + ] + }, + { + "text": " leading and trailing ", + "ids": [ + 3, + 534, + 64442, + 603, + 924, + 13243, + 534 + ] + }, + { + "text": "tabs\tand\tmore\ttabs", + "ids": [ + 3, + 4710, + 119723, + 270, + 625, + 270, + 5699, + 270, + 5297, + 119723 + ] + }, + { + "text": "newlines\n\nand\r\nwindows\r\nendings", + "ids": [ + 3, + 2784, + 16002, + 271, + 271, + 625, + 274, + 271, + 14218, + 2252, + 274, + 271, + 664, + 1419 + ] + }, + { + "text": "mixed \n \t whitespace \n\n", + "ids": [ + 3, + 27899, + 119715, + 271, + 534, + 270, + 765, + 538, + 28711, + 119715, + 271, + 271 + ] + }, + { + "text": "1 12 123 1234 100000 3.14159", + "ids": [ + 3, + 119715, + 119749, + 119715, + 119749, + 119759, + 119715, + 119749, + 119759, + 119790, + 119715, + 119749, + 119759, + 119790, + 119799, + 119715, + 119749, + 119752, + 119752, + 119752, + 119752, + 119752, + 119715, + 119790, + 119735, + 119749, + 119799, + 119749, + 119791, + 119772 + ] + }, + { + "text": "snake_case camelCase kebab-case", + "ids": [ + 3, + 117435, + 119839, + 29638, + 4065, + 535, + 82449, + 566, + 885, + 675, + 119754, + 29638 + ] + }, + { + "text": "for (int i = 0; i < n; ++i) { sum += a[i]; }", + "ids": [ + 3, + 667, + 585, + 951, + 629, + 1631, + 119715, + 119752, + 119852, + 629, + 4594, + 544, + 119852, + 2568, + 119994, + 119718, + 119762, + 3812, + 3650, + 86018, + 520, + 119980, + 119718, + 41313, + 5522 + ] + }, + { + "text": "café naïve résumé Zürich", + "ids": [ + 3, + 24823, + 689, + 120354, + 843, + 5738, + 70260, + 39371 + ] + }, + { + "text": "Ünïcödé ßharp", + "ids": [ + 3, + 38291, + 88291, + 5884, + 119756, + 119715, + 120004, + 2901, + 119730 + ] + }, + { + "text": "你好世界,今天天气很好。", + "ids": [ + 3, + 119715, + 121037, + 120491, + 7594, + 500, + 449, + 401, + 43386, + 117046, + 120748, + 120491, + 119867 + ] + }, + { + "text": "こんにちは世界", + "ids": [ + 3, + 119715, + 120107, + 120257, + 119944, + 120522, + 119985, + 7594 + ] + }, + { + "text": "Привет мир", + "ids": [ + 3, + 4860, + 3328, + 22936 + ] + }, + { + "text": "emoji 😀 and 👨‍👩‍👧‍👦 family", + "ids": [ + 3, + 43917, + 1146, + 97129, + 603, + 119715, + 501, + 420, + 406, + 429, + 121125, + 501, + 420, + 406, + 430, + 121125, + 501, + 420, + 406, + 428, + 121125, + 501, + 420, + 406, + 427, + 6610 + ] + }, + { + "text": "math ∑∫√≠≤ symbols", + "ids": [ + 3, + 38076, + 119715, + 127701, + 127526, + 124416, + 125193, + 124006, + 50959 + ] + }, + { + "text": "<|begin_of_text|>hi<|eot_id|>", + "ids": [ + 3, + 4594, + 119920, + 10658, + 119839, + 894, + 119839, + 2309, + 119920, + 120057, + 3358, + 120155, + 119920, + 119716, + 602, + 119839, + 576, + 119920, + 120057 + ] + }, + { + "text": "<|start_header_id|>user<|end_header_id|>\n\nWhat?<|eot_id|>", + "ids": [ + 3, + 4594, + 119920, + 28300, + 119839, + 537, + 4841, + 119839, + 576, + 119920, + 120057, + 13676, + 120155, + 119920, + 664, + 119839, + 537, + 4841, + 119839, + 576, + 119920, + 120057, + 271, + 271, + 14913, + 119882, + 120155, + 119920, + 119716, + 602, + 119839, + 576, + 119920, + 120057 + ] + }, + { + "text": "a<|eot_id|><|eot_id|>b", + "ids": [ + 3, + 520, + 120155, + 119920, + 119716, + 602, + 119839, + 576, + 119920, + 37509, + 119920, + 119716, + 602, + 119839, + 576, + 119920, + 120057, + 119736 + ] + }, + { + "text": "URL: https://example.com/path?q=1&x=2#frag", + "ids": [ + 3, + 52800, + 119782, + 9301, + 3574, + 45298, + 119735, + 1456, + 119858, + 18488, + 119882, + 119764, + 119926, + 119749, + 119945, + 119778, + 119926, + 119759, + 120135, + 41328 + ] + }, + { + "text": "@user #hashtag $100 50% (parens) [brackets] {braces}", + "ids": [ + 3, + 7322, + 13676, + 3285, + 109878, + 2621, + 837, + 119749, + 119752, + 119752, + 119715, + 119791, + 119752, + 119941, + 585, + 1379, + 706, + 119762, + 1964, + 2695, + 1130, + 1849, + 119979, + 3812, + 2695, + 1122, + 119829 + ] + }, + { + "text": "<|im_start|>user\nOlá, como estás?<|im_end|>", + "ids": [ + 3, + 3, + 13676, + 271, + 119802, + 7188, + 119732, + 1227, + 68882, + 119882, + 4 + ] + }, + { + "text": "<|im_start|>system\nÉs a Amália.<|im_end|>\n<|im_start|>user\nOlá<|im_end|>\n<|im_start|>assistant\n", + "ids": [ + 3, + 3, + 21113, + 271, + 120105, + 119723, + 520, + 2098, + 23315, + 119735, + 4, + 271, + 3, + 13676, + 271, + 119802, + 7188, + 4, + 271, + 3, + 788, + 35441, + 271 + ] + }, + { + "text": "a<|im_end|><|im_end|>b", + "ids": [ + 3, + 520, + 4, + 4, + 119736 + ] + }, + { + "text": "<|im_end|> depois de especial com espaço", + "ids": [ + 3, + 4, + 9396, + 543, + 3936, + 643, + 22127 + ] + }, + { + "text": "oi", + "ids": [ + 3, + 1, + 2856, + 2 + ] + }, + { + "text": "não especial", + "ids": [ + 3, + 5, + 61922, + 3936 + ] + }, + { + "text": "português: ação, coração, à noite, pêssego", + "ids": [ + 3, + 31055, + 119782, + 28537, + 119732, + 45352, + 119732, + 898, + 25938, + 119732, + 90718, + 1536, + 1109 + ] + }, + { + "text": "Amália Rodrigues cantava fado.", + "ids": [ + 3, + 2098, + 23315, + 59636, + 933, + 14002, + 548, + 886, + 119735 + ] + } +] \ No newline at end of file diff --git a/reference/fixtures_amalia/v0.npy b/reference/fixtures_amalia/v0.npy new file mode 100644 index 0000000000000000000000000000000000000000..42577cd335ca73592b8b02dad1dab8bd33d7a6c9 GIT binary patch literal 24704 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 literal 0 HcmV?d00001 diff --git a/src/core/config.cpp b/src/core/config.cpp index 34007a9..a5a1004 100644 --- a/src/core/config.cpp +++ b/src/core/config.cpp @@ -203,8 +203,14 @@ ModelConfig ModelConfig::from_json(const nlohmann::json& j_top) { c.quantized = true; c.quant_group_size = it->value("group_size", c.quant_group_size); c.quant_bits = it->value("bits", c.quant_bits); + // mx::quantized_matmul assumes affine quantization; a non-affine checkpoint + // (e.g. mxfp4) would run to silent numerical garbage, so reject it at load. + const std::string mode = it->value("mode", "affine"); + if (mode != "affine") + throw std::runtime_error("config: unsupported quantization mode '" + mode + + "' (only 'affine' is implemented)"); for (const auto& [key, val] : it->items()) { - if (key == "group_size" || key == "bits") continue; // top-level defaults + if (key == "group_size" || key == "bits" || key == "mode") continue; // top-level defaults if (val.is_object() && val.contains("bits")) { QuantParams qp; qp.group_size = val.value("group_size", c.quant_group_size); @@ -213,6 +219,17 @@ ModelConfig ModelConfig::from_json(const nlohmann::json& j_top) { } } } + // Compute dtype. The engine runs fp16 by default (what every committed golden + // gates), but the EuroLLM-9B / AMALIA-9B family overflows fp16 — its residual + // stream exceeds fp16 range from layer 9, making an fp16 forward all-NaN — so + // it must run in bfloat16 (mlx-lm's native behavior for it). The config's + // declared dtype can't drive this (every MLX conversion says "bfloat16", + // including the fp16-proven Llama/Qwen checkpoints), so the family is + // identified by its architecture fingerprint. Gated end-to-end by + // reference/fixtures_amalia/. + c.bf16_compute = (c.vocab == 128000 && c.hidden == 4096 && c.intermediate_size == 12288 && + c.n_layers == 42); + // Multimodal vision tower (VLMs, e.g. Qwen3-VL). The ViT config and the vision // special-token ids live at the top level; M-RoPE parameters nest with the text // rope config (read from `j`). All absent for text-only models, which then keep diff --git a/src/core/config.h b/src/core/config.h index 750d75e..18396a5 100644 --- a/src/core/config.h +++ b/src/core/config.h @@ -126,6 +126,16 @@ struct ModelConfig { bool quantized = false; ///< Any weight is integer-quantized (logging/info). int quant_group_size = 64; ///< Default group size for weight quantization. int quant_bits = 4; ///< Default quantization bit-width (typically 4). + + // ----- Compute dtype ----- + /// True when the forward pass must run in bfloat16 instead of the engine's + /// fp16 default. Some checkpoints have activation magnitudes far beyond + /// fp16's range (65504) — EuroLLM-9B/AMALIA's residual stream blows up from + /// layer 9, so an fp16 forward is all-NaN logits (silent garbage, the exact + /// failure mode this engine exists to prevent). Set by from_json for the + /// known-overflowing family via its config fingerprint; every other + /// checkpoint keeps fp16, whose numerics all committed goldens gate. + bool bf16_compute = false; /// Per-module quant overrides, keyed by weight base (the key without the /// trailing ".weight", e.g. "model.layers.0.mlp.down_proj"). Empty => every /// quantized weight uses the defaults above. diff --git a/src/core/weights.cpp b/src/core/weights.cpp index 87ceb4c..ddb838d 100644 --- a/src/core/weights.cpp +++ b/src/core/weights.cpp @@ -117,21 +117,24 @@ std::string Weights::summary() const { } namespace { -// Merge one shard's tensors into `out`, applying sanitize + fp16 cast. +// Merge one shard's tensors into `out`, applying sanitize + compute-dtype cast. // `keep_vision` retains the ViT tower (VLMs) instead of dropping it. void absorb(std::unordered_map& out, - const std::unordered_map& shard, bool keep_vision) { + const std::unordered_map& shard, bool keep_vision, + mx::Dtype compute_dtype) { for (const auto& [raw, arr] : shard) { auto canon = sanitize_key(raw, keep_vision); if (!canon) continue; // dropped buffer - // Cast only floating tensors to fp16; packed 4-bit weights (uint32) and - // other integer tensors are kept as-is. Exception: Gated-DeltaNet's `A_log` - // (the per-head decay log-rate) is kept in its source fp32 — the recurrence - // exponentiates it twice (exp(-exp(A_log))) and fp16 there visibly drifts the - // decay. Mirrors mlx_lm's cast_predicate, which excludes A_log from the cast. + // Cast only floating tensors to the compute dtype (fp16, or bf16 for + // fp16-overflowing checkpoints — see ModelConfig::bf16_compute); packed + // 4-bit weights (uint32) and other integer tensors are kept as-is. + // Exception: Gated-DeltaNet's `A_log` (the per-head decay log-rate) is kept + // in its source fp32 — the recurrence exponentiates it twice + // (exp(-exp(A_log))) and fp16 there visibly drifts the decay. Mirrors + // mlx_lm's cast_predicate, which excludes A_log from the cast. const bool keep_dtype = ends_with(*canon, ".A_log"); mx::array value = (!keep_dtype && mx::issubdtype(arr.dtype(), mx::floating)) - ? mx::astype(arr, mx::float16) + ? mx::astype(arr, compute_dtype) : arr; out.emplace(*canon, value); } @@ -212,6 +215,9 @@ Weights load_weights(const std::string& model_dir, const ModelConfig& cfg) { // Keep the ViT tower only for vision-language checkpoints; text-only models // drop it so the load stays lean. const bool keep_vision = cfg.has_vision_tower(); + const mx::Dtype cast_dtype = compute_dtype(cfg); + if (cfg.bf16_compute) + log::info("weights: bf16 compute (fp16 overflows for this checkpoint family)"); // Prefer the sharded layout, but only when every shard the index names is // actually present: some mlx-community exports ship a single consolidated @@ -232,7 +238,8 @@ Weights load_weights(const std::string& model_dir, const ModelConfig& cfg) { log::debug("weights: sharded checkpoint, {} files", files.size()); for (const auto& file : files) { log::debug("weights: loading shard {}", file); - absorb(w.tensors, mx::load_safetensors(model_dir + "/" + file).first, keep_vision); + absorb(w.tensors, mx::load_safetensors(model_dir + "/" + file).first, keep_vision, + cast_dtype); } loaded = true; } else { @@ -245,16 +252,17 @@ Weights load_weights(const std::string& model_dir, const ModelConfig& cfg) { throw std::runtime_error("weights: no model.safetensors[.index.json] in '" + model_dir + "'"); } log::debug("weights: single-file checkpoint"); - absorb(w.tensors, mx::load_safetensors(single).first, keep_vision); + absorb(w.tensors, mx::load_safetensors(single).first, keep_vision, cast_dtype); } - std::size_t non_fp16 = 0; + std::size_t non_compute = 0; for (const auto& [_, a] : w.tensors) - if (a.dtype() != mx::float16) ++non_fp16; - log::info("weights: loaded {} tensors from '{}' ({} non-fp16)", w.tensors.size(), model_dir, - non_fp16); - if (non_fp16 > 0) - log::warn("weights: {} tensors are not fp16 (expected for quantized models)", non_fp16); + if (a.dtype() != cast_dtype) ++non_compute; + log::info("weights: loaded {} tensors from '{}' ({} not in the compute dtype)", + w.tensors.size(), model_dir, non_compute); + if (non_compute > 0) + log::warn("weights: {} tensors are not in the compute dtype (expected for quantized models)", + non_compute); normalize_backbone_root_keys(w); // embedding checkpoints: backbone-root -> model.* stack_moe_experts(w, cfg); // raw per-expert MoE tensors -> stacked switch_mlp diff --git a/src/core/weights.h b/src/core/weights.h index 6ecf1c1..047726d 100644 --- a/src/core/weights.h +++ b/src/core/weights.h @@ -56,10 +56,19 @@ struct Weights { std::string summary() const; }; +// The floating dtype the forward pass runs in — and everything that must match +// it: the on-load weight cast, the batched additive mask, and the prefill logit +// placeholders. bfloat16 for fp16-overflowing checkpoints +// (ModelConfig::bf16_compute, e.g. EuroLLM/AMALIA), fp16 for every other model. +inline mlx::core::Dtype compute_dtype(const ModelConfig& cfg) { + return cfg.bf16_compute ? mlx::core::bfloat16 : mlx::core::float16; +} + // Load every weight tensor from a model directory, applying sanitize and casting -// to fp16. `cfg` supplies the quant params (defaults + per-module overrides) used -// to populate Weights::quant for each quantized tensor. Throws if neither an -// index JSON nor model.safetensors is found. +// to the compute dtype (fp16, or bf16 — see compute_dtype). `cfg` supplies the +// quant params (defaults + per-module overrides) used to populate Weights::quant +// for each quantized tensor. Throws if neither an index JSON nor +// model.safetensors is found. Weights load_weights(const std::string& model_dir, const ModelConfig& cfg); } // namespace mlxforge diff --git a/src/model/decoder_model.cpp b/src/model/decoder_model.cpp index aac1de0..81a3aab 100644 --- a/src/model/decoder_model.cpp +++ b/src/model/decoder_model.cpp @@ -307,9 +307,11 @@ mx::array DecoderModel::batch_mask(int prev_idx, int n_query, const mx::array& l mx::reshape(kpos, {1, 1, 1, t_kv})); mx::array keep = mx::logical_and(causal, valid); // -> (B, 1, N, T_kv) - // Additive fp16 mask (avoid boolean masks; #2894). + // Additive mask in the compute dtype (avoid boolean masks, #2894; a dtype + // mismatch with the scores would silently promote the whole SDPA). + const mx::Dtype dt = compute_dtype(cfg_); const float ninf = -std::numeric_limits::infinity(); - return mx::where(keep, mx::array(0.0f, mx::float16), mx::array(ninf, mx::float16)); + return mx::where(keep, mx::array(0.0f, dt), mx::array(ninf, dt)); } mx::array DecoderModel::attention_batched(const mx::array& x, int layer, const mx::array& offset, diff --git a/src/runtime/batching.cpp b/src/runtime/batching.cpp index 4311e37..b2d40ac 100644 --- a/src/runtime/batching.cpp +++ b/src/runtime/batching.cpp @@ -33,7 +33,8 @@ PrefillResult prefill(const DecoderModel& model, const std::vector 0) throw std::runtime_error("KV-cache quantization is not supported for hybrid (Qwen3.5) models"); + // quantized_sdpa's mask/underflow conventions are proven for fp16 compute + // only; bf16-compute checkpoints (AMALIA) have no quantized-KV golden yet. + if (mc.bf16_compute) + throw std::runtime_error( + "KV-cache quantization is not supported for bf16-compute models (AMALIA)"); return {ec.kv_bits, ec.kv_group_size}; } @@ -83,6 +88,10 @@ PrefixCacheConfig validate_prefix_cache(const EngineConfig& ec, const ModelConfi throw std::runtime_error("the prefix cache is not supported for vision-language models"); if (mc.full_attention_interval > 0) throw std::runtime_error("the prefix cache is not supported for hybrid (Qwen3.5) models"); + // The warm==cold exact-token gate and the SSD serializer (fp16 storage codes) + // only cover fp16 compute; bf16-compute checkpoints (AMALIA) are ungated. + if (mc.bf16_compute) + throw std::runtime_error("the prefix cache is not supported for bf16-compute models (AMALIA)"); PrefixCacheConfig pc; pc.enabled = true; pc.block_size = bs; @@ -140,7 +149,7 @@ Engine::Loaded Engine::load_head(const std::string& spec, const std::string& rop out.tokenizer = Tokenizer::from_file( out.dir + "/tokenizer.json", out.config.bos_token_id, - chat_format_from_model_type(out.config.model_type) + chat_format_for_model_dir(out.dir, out.config.model_type) ); } diff --git a/src/tokenizer/spm.cpp b/src/tokenizer/spm.cpp index 6389022..6e335a4 100644 --- a/src/tokenizer/spm.cpp +++ b/src/tokenizer/spm.cpp @@ -66,14 +66,15 @@ void SpmBpeTokenizer::emit_symbol(const std::string& sym, std::vector& out) } } -void SpmBpeTokenizer::encode_plain(const std::string& segment, std::vector& out) const { +void SpmBpeTokenizer::encode_plain(const std::string& segment, bool at_text_start, + std::vector& out) const { if (segment.empty()) return; // Normalize: every space becomes the metaspace marker. (The vestigial space // pre-tokenizer then finds nothing to split, so the whole segment is one BPE // word — matching the HF pipeline for Gemma-style tokenizers.) std::string normalized; - normalized.reserve(segment.size()); + normalized.reserve(segment.size() + 3); for (char ch : segment) { if (ch == ' ') normalized += kMetaspace; @@ -81,6 +82,14 @@ void SpmBpeTokenizer::encode_plain(const std::string& segment, std::vector& normalized.push_back(ch); } + // prepend_scheme "always": a leading ▁ is added, but — settled empirically + // against the HF tokenizer (AMALIA corpus fixture) — only to the segment at + // the very start of the input (never to segments following a special token), + // and never doubled onto a segment that already starts with the marker + // (leading spaces become ▁ via the replace above). + if (prepend_metaspace_ && at_text_start && normalized.compare(0, 3, kMetaspace) != 0) + normalized.insert(0, kMetaspace); + std::vector symbols = utf8_chars(normalized); // Repeatedly merge the lowest-rank adjacent pair (merging all of its @@ -128,7 +137,7 @@ std::vector SpmBpeTokenizer::encode(const std::string& text) const { if (special_first_bytes_.count(static_cast(text[i]))) { for (const auto& [lit, id] : special_tokens_) { // sorted longest-first if (i + lit.size() <= text.size() && text.compare(i, lit.size(), lit) == 0) { - encode_plain(text.substr(run_start, i - run_start), out); + encode_plain(text.substr(run_start, i - run_start), /*at_text_start=*/run_start == 0, out); out.push_back(id); i += lit.size(); run_start = i; @@ -139,7 +148,7 @@ std::vector SpmBpeTokenizer::encode(const std::string& text) const { } if (!matched) ++i; } - encode_plain(text.substr(run_start), out); + encode_plain(text.substr(run_start), /*at_text_start=*/run_start == 0, out); return out; } @@ -171,7 +180,12 @@ std::string SpmBpeTokenizer::decode(const std::vector& ids) const { } } out += pending_bytes; - return out; + // The Strip decoder runs after the per-token pieces are fused into one string: + // drop up to N leading spaces, undoing the Metaspace prepend. + int strip = strip_leading_spaces_; + size_t start = 0; + while (strip-- > 0 && start < out.size() && out[start] == ' ') ++start; + return start == 0 ? out : out.substr(start); } bool SpmBpeTokenizer::is_supported(const std::string& tokenizer_json) { @@ -236,6 +250,31 @@ SpmBpeTokenizer SpmBpeTokenizer::from_blob(const std::string& tokenizer_json) { if (it != t.token_to_id_.end()) t.unk_id_ = it->second; } + // Metaspace pre-tokenizer prepend_scheme: "always" prepends ▁ to every plain + // segment (LlamaTokenizer-style, e.g. AMALIA/EuroLLM); "never"/absent matches + // Gemma. "first" (prepend only to the segment at offset 0) is rejected rather + // than approximated — a wrong prepend is silent id divergence, not a crash. + if (auto pt = j.find("pre_tokenizer"); pt != j.end() && pt->is_object() && + pt->value("type", std::string()) == "Metaspace") { + const std::string scheme = pt->value("prepend_scheme", std::string("never")); + if (scheme == "always") + t.prepend_metaspace_ = true; + else if (scheme != "never") + throw std::runtime_error("spm: Metaspace prepend_scheme '" + scheme + "' not implemented"); + } + + // A Strip entry in the decoder Sequence removes N leading spaces from the + // fused decode output (the inverse of the Metaspace prepend). + if (auto dec = j.find("decoder"); dec != j.end() && dec->is_object()) { + if (auto ds = dec->find("decoders"); ds != dec->end() && ds->is_array()) { + for (const auto& d : *ds) { + if (d.value("type", std::string()) == "Strip" && + d.value("content", std::string()) == " ") + t.strip_leading_spaces_ = d.value("start", 0); + } + } + } + // Added tokens: HF isolates EVERY added token atomically before BPE, whether or // not it is `special`. So segment on all of them; the `special` flag only // governs decode-skipping (special_ids_). diff --git a/src/tokenizer/spm.h b/src/tokenizer/spm.h index 8f70304..8dfda86 100644 --- a/src/tokenizer/spm.h +++ b/src/tokenizer/spm.h @@ -3,9 +3,13 @@ // a tokenizer.json with `model.type == "BPE"` and `byte_fallback == true`: // // special-token segmentation -> Metaspace normalization (every ' ' -> U+2581 -// "▁") -> BPE merges over the whole segment's Unicode characters -> vocab -// lookup, with byte_fallback (a character absent from the vocab is emitted as -// its UTF-8 bytes via the "<0xNN>" byte tokens). +// "▁"; under prepend_scheme "always" a ▁ is also prepended to the segment +// that opens the input, the LlamaTokenizer/EuroLLM/AMALIA convention — +// Gemma's scheme never prepends) -> BPE merges over the whole segment's +// Unicode characters -> vocab lookup, with byte_fallback (a character absent +// from the vocab is emitted as its UTF-8 bytes via the "<0xNN>" byte tokens). +// Decode honors a trailing Strip decoder (drop N leading spaces), undoing the +// prepend. // // This is a distinct family from the byte-level BPE (tokenizer/bpe.h): there is // no GPT-2 byte->unicode remapping and no regex pre-tokenizer; spaces become the @@ -53,9 +57,10 @@ class SpmBpeTokenizer : public EncoderBackend { const std::unordered_set& special_ids() const override { return special_ids_; } private: - // Normalize a special-token-free segment (space -> metaspace), then run the BPE - // merge loop over its Unicode characters and append the ids. - void encode_plain(const std::string& segment, std::vector& out) const; + // Normalize a special-token-free segment (space -> metaspace; under + // prepend_scheme "always" a leading ▁ when the segment opens the input), then + // run the BPE merge loop over its Unicode characters and append the ids. + void encode_plain(const std::string& segment, bool at_text_start, std::vector& out) const; // Map one final BPE symbol to ids: its vocab id, or byte_fallback to "<0xNN>" // byte tokens, or the unk id. void emit_symbol(const std::string& sym, std::vector& out) const; @@ -69,6 +74,14 @@ class SpmBpeTokenizer : public EncoderBackend { std::unordered_map byte_token_value_; // "<0xNN>" id -> byte value (decode) int unk_id_ = -1; + // Metaspace prepend_scheme "always": prepend ▁ to the input-leading plain + // segment before BPE (AMALIA/EuroLLM — the exact HF semantics are pinned by + // the corpus fixture); false for Gemma, whose scheme never prepends. + bool prepend_metaspace_ = false; + // Strip decoder: number of leading spaces removed from the fused decode output + // (undoes the prepended ▁; 0 when the decoder chain has no Strip, e.g. Gemma). + int strip_leading_spaces_ = 0; + // (literal, id) for every added-token, sorted by descending literal length so // longest-match wins during segmentation; first bytes are a cheap pre-filter. std::vector> special_tokens_; diff --git a/src/tokenizer/tokenizer.cpp b/src/tokenizer/tokenizer.cpp index a454384..98ec19b 100644 --- a/src/tokenizer/tokenizer.cpp +++ b/src/tokenizer/tokenizer.cpp @@ -35,6 +35,15 @@ std::string load_file(const std::string& path) { return ss.str(); } +// Read a file that may legitimately be absent; empty string when it is. +std::string read_file_or_empty(const std::string& path) { + std::ifstream f(path, std::ios::binary); + if (!f) return ""; + std::ostringstream ss; + ss << f.rdbuf(); + return ss.str(); +} + // Today's date as "01 Jun 2026" (the format the Llama-3.2 template uses). std::string current_date() { std::time_t t = std::time(nullptr); @@ -122,8 +131,39 @@ std::shared_ptr make_backend(const std::string& path, const std: "' is not a supported tokenizer (only byte-level BPE " "(Llama-3.2/Qwen) and SentencePiece-BPE (Gemma) are implemented)"); } + +// The default system message AMALIA's chat template injects when the +// conversation carries no system turn. Its opening words also serve as the +// template's identifying marker in chat_format_for_model_dir. +constexpr const char* kAmaliaSystemPrompt = + "O teu nome é Amália, e és um modelo avançado de linguagem útil. Responde sempre na língua " + "do utilizador, a menos que sejas instruído em contrário, e lembra-te que a tua língua " + "principal é o português europeu."; } // namespace +ChatFormat chat_format_for_model_dir(const std::string& model_dir, const std::string& model_type) { + // The on-disk chat template: the standalone chat_template.jinja (transformers + // >= 4.51 convention, what AMALIA ships) or the legacy "chat_template" string + // inside tokenizer_config.json. + std::string tmpl = read_file_or_empty(model_dir + "/chat_template.jinja"); + if (tmpl.empty()) { + const std::string cfg_blob = read_file_or_empty(model_dir + "/tokenizer_config.json"); + if (!cfg_blob.empty()) { + nlohmann::json j = nlohmann::json::parse(cfg_blob, /*cb=*/nullptr, /*allow_exceptions=*/false); + if (!j.is_discarded() && j.contains("chat_template") && j["chat_template"].is_string()) + tmpl = j["chat_template"].get(); + } + } + if (tmpl.find("O teu nome é Amália") != std::string::npos) { + log::info("tokenizer: AMALIA chat template detected in '{}'", model_dir); + return ChatFormat::Amalia; + } + // Every family ships some template (Llama-3.2's and Qwen3's are what the + // Llama3/Qwen3 renderers implement), so an unmatched marker is the normal + // case, not an error: defer to the model_type mapping as before. + return chat_format_from_model_type(model_type); +} + Tokenizer Tokenizer::from_file(const std::string& tokenizer_json_path, int bos_id, ChatFormat fmt) { const std::string blob = load_file(tokenizer_json_path); Tokenizer t; @@ -302,6 +342,28 @@ std::string render_qwen3(const std::vector& messages, return os.str(); } +// AMALIA ChatML template, rendered in full (mirrors the checkpoint's +// chat_template.jinja; no tools/thinking handling — the template has none). +// When the conversation has no leading system turn, the default Portuguese +// system message is injected. Unlike Llama-3.2 the leading special token is NOT +// left to the encoder: apply_chat_template encodes this WITHOUT the BOS prepend +// (HF uses add_special_tokens=False), because AMALIA's BOS id 3 IS +// `<|im_start|>` and prepending it would double the opening tag — and the +// tokenizer's ▁-prepend applies only to input-leading text, so the template +// must start with the special token for "system" to tokenize like the +// reference. Gated byte-exact by fixtures_amalia/chat_ids.npy. +std::string render_amalia(const std::vector& messages, + bool add_generation_prompt) { + std::ostringstream os; + const bool have_system = !messages.empty() && messages.front().role == "system"; + if (!have_system) + os << "<|im_start|>system\n" << kAmaliaSystemPrompt << "<|im_end|>\n"; + for (const auto& m : messages) + os << "<|im_start|>" << m.role << "\n" << m.content << "<|im_end|>\n"; + if (add_generation_prompt) os << "<|im_start|>assistant\n"; + return os.str(); +} + } // namespace std::string Tokenizer::render_chat_template(const std::vector& messages, @@ -312,6 +374,7 @@ std::string Tokenizer::render_chat_template(const std::vector& messages if (fmt == ChatFormat::Qwen3 || fmt == ChatFormat::Qwen35) return render_qwen3(messages, add_generation_prompt, enable_thinking, tools, /*open_think=*/fmt == ChatFormat::Qwen35); + if (fmt == ChatFormat::Amalia) return render_amalia(messages, add_generation_prompt); return render_llama3(messages, add_generation_prompt, today_date, tools); } @@ -320,8 +383,13 @@ std::vector Tokenizer::apply_chat_template(const std::vector& mess const std::string& today_date, const std::vector& tools, bool enable_thinking) const { - return encode(render_chat_template(messages, add_generation_prompt, today_date, chat_format_, - tools, enable_thinking)); + const std::string text = render_chat_template(messages, add_generation_prompt, today_date, + chat_format_, tools, enable_thinking); + // AMALIA's template opens with its own `<|im_start|>` — the very token the + // encoder would prepend as BOS (id 3) — so encode it bare, mirroring HF's + // apply_chat_template (add_special_tokens=False). See render_amalia. + if (chat_format_ == ChatFormat::Amalia) return impl_->encode(text); + return encode(text); } std::string StreamingDetokenizer::add(int id) { diff --git a/src/tokenizer/tokenizer.h b/src/tokenizer/tokenizer.h index dab46b5..e3d9629 100644 --- a/src/tokenizer/tokenizer.h +++ b/src/tokenizer/tokenizer.h @@ -20,12 +20,23 @@ namespace mlxforge { // forward pass (shared) and the prompt formatting (per-family) stay decoupled. // Qwen35 is ChatML like Qwen3 but, with thinking enabled, opens the reasoning // block (`\n`) in the generation prompt instead of leaving it to the model. -enum class ChatFormat { Llama3, Qwen3, Qwen35 }; +// Amalia (AMALIA-9B, model_type "llama") is plain ChatML with a default +// European-Portuguese system message — identified from the checkpoint's chat +// template on disk, since model_type cannot distinguish it from Llama. +enum class ChatFormat { Llama3, Qwen3, Qwen35, Amalia }; // Map a config.json model_type to a chat format: "qwen3"/"qwen3_moe"/"qwen2" -> // Qwen3, "qwen3_5" -> Qwen35 (both ChatML), everything else -> Llama3. ChatFormat chat_format_from_model_type(const std::string& model_type); +// Chat format for a resolved model directory: reads chat_template.jinja (or the +// "chat_template" string in tokenizer_config.json) and recognizes known +// templates that model_type alone cannot identify (AMALIA is model_type "llama" +// but ChatML). An unrecognized on-disk template is the normal case (Llama/Qwen +// ship their own, handled by their renderers), so it quietly falls back to +// chat_format_from_model_type. +ChatFormat chat_format_for_model_dir(const std::string& model_dir, const std::string& model_type); + class Tokenizer { public: struct Message { diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 6ff044b..67c12c7 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -40,6 +40,7 @@ add_executable(mlxforge_tests runtime/bucketing_test.cpp scheduler/validation_test.cpp model/qwen3_test.cpp + model/amalia_test.cpp model/rope_scaling_test.cpp model/qwen3_yarn_test.cpp model/qwen3_moe_test.cpp @@ -141,6 +142,15 @@ if(_mlxforge_qwen3_embedding_weights) "${_mlxforge_qwen3_embedding_weight0}" DIRECTORY) endif() +# AMALIA-9B model snapshot for the plain-Llama / SentencePiece-Metaspace / ChatML +# integration tests (empty -> those tests self-skip). The 4bit checkpoint is ~5GB. +file(GLOB _mlxforge_model_snapshots_amalia + "$ENV{HOME}/.cache/huggingface/hub/models--layerx-labs--AMALIA-9B-0626-DPO-MLX-4bit/snapshots/*") +set(MLXFORGE_MODEL_DIR_AMALIA "") +if(_mlxforge_model_snapshots_amalia) + list(GET _mlxforge_model_snapshots_amalia 0 MLXFORGE_MODEL_DIR_AMALIA) +endif() + # Gemma-2 tokenizer dir for the SentencePiece-BPE integration test (empty -> it # self-skips). Only the ungated mirror's tokenizer files are needed (no weights). file(GLOB _mlxforge_model_snapshots_gemma @@ -170,6 +180,7 @@ target_compile_definitions(mlxforge_tests PRIVATE MLXFORGE_REF_FIXTURES_DIR_QWEN3_VL="${CMAKE_SOURCE_DIR}/reference/fixtures_qwen3_vl" MLXFORGE_REF_FIXTURES_DIR_QWEN3_EMBEDDING="${CMAKE_SOURCE_DIR}/reference/fixtures_qwen3_embedding" MLXFORGE_REF_FIXTURES_DIR_GEMMA="${CMAKE_SOURCE_DIR}/reference/fixtures_gemma" + MLXFORGE_REF_FIXTURES_DIR_AMALIA="${CMAKE_SOURCE_DIR}/reference/fixtures_amalia" MLXFORGE_MODEL_DIR="${MLXFORGE_MODEL_DIR}" MLXFORGE_MODEL_DIR_4BIT="${MLXFORGE_MODEL_DIR_4BIT}" MLXFORGE_MODEL_DIR_QWEN3="${MLXFORGE_MODEL_DIR_QWEN3}" @@ -178,6 +189,7 @@ target_compile_definitions(mlxforge_tests PRIVATE MLXFORGE_MODEL_DIR_QWEN3_VL="${MLXFORGE_MODEL_DIR_QWEN3_VL}" MLXFORGE_MODEL_DIR_QWEN3_EMBEDDING="${MLXFORGE_MODEL_DIR_QWEN3_EMBEDDING}" MLXFORGE_MODEL_DIR_GEMMA="${MLXFORGE_MODEL_DIR_GEMMA}" + MLXFORGE_MODEL_DIR_AMALIA="${MLXFORGE_MODEL_DIR_AMALIA}" MLXFORGE_GGUF_MODEL="${MLXFORGE_GGUF_MODEL}") doctest_discover_tests(mlxforge_tests) diff --git a/tests/core/config_test.cpp b/tests/core/config_test.cpp index 66007bc..40704de 100644 --- a/tests/core/config_test.cpp +++ b/tests/core/config_test.cpp @@ -63,6 +63,41 @@ TEST_CASE("ModelConfig ignores unknown/extra keys") { CHECK(c.eos_token_ids.empty()); } +TEST_CASE("ModelConfig selects bf16 compute for the EuroLLM/AMALIA fingerprint only") { + // AMALIA-9B / EuroLLM-9B geometry -> bf16 (fp16 overflows from layer 9). + auto j = nlohmann::json::parse(R"({ + "num_hidden_layers": 42, "hidden_size": 4096, "num_attention_heads": 32, + "num_key_value_heads": 8, "vocab_size": 128000, "intermediate_size": 12288, + "rope_theta": 1000000.0, "rms_norm_eps": 1e-5 + })"); + CHECK(ModelConfig::from_json(j).bf16_compute); + + // Any other geometry (here: the Llama-3.2-1B reference config) stays on the + // engine's fp16 default, which every committed golden gates. + ModelConfig llama = ModelConfig::from_file(fixture("config_llama32_1b.json")); + CHECK_FALSE(llama.bf16_compute); +} + +TEST_CASE("ModelConfig accepts affine quantization mode and rejects others") { + // AMALIA-style block: an explicit "mode": "affine" parses like a bare block. + auto j = nlohmann::json::parse(R"({ + "num_hidden_layers": 2, "hidden_size": 8, "num_attention_heads": 4, + "num_key_value_heads": 2, "vocab_size": 100, "intermediate_size": 16, + "rope_theta": 10000.0, "rms_norm_eps": 1e-6, + "quantization": {"group_size": 64, "bits": 4, "mode": "affine"} + })"); + ModelConfig c = ModelConfig::from_json(j); + CHECK(c.quantized); + CHECK(c.quant_group_size == 64); + CHECK(c.quant_bits == 4); + + // A non-affine mode would run mx::quantized_matmul on the wrong math — reject. + j["quantization"]["mode"] = "mxfp4"; + CHECK_THROWS_WITH_AS(ModelConfig::from_json(j), + "config: unsupported quantization mode 'mxfp4' (only 'affine' is implemented)", + std::runtime_error); +} + TEST_CASE("ModelConfig parses the Qwen3.5 hybrid text_config") { // A representative subset of mlx-community/Qwen3.5-0.8B-4bit's config.json: the // text hyperparameters nest under "text_config", rope_theta lives in a diff --git a/tests/model/amalia_test.cpp b/tests/model/amalia_test.cpp new file mode 100644 index 0000000..c36f67b --- /dev/null +++ b/tests/model/amalia_test.cpp @@ -0,0 +1,185 @@ +// AMALIA-9B golden-reference checks. The forward pass is the plain Llama +// decoder run in **bfloat16** (the family's residual stream overflows fp16 +// from layer 9 — an fp16 forward is all-NaN logits, so bf16_compute is part of +// what these gates prove, at 42 layers / GQA 8 / rope_theta 1e6 through 4-bit +// quantized projections). What AMALIA otherwise uniquely exercises is the +// tokenizer: SentencePiece-BPE with a Metaspace prepend +// (`prepend_scheme: "always"`), a Strip decoder, and ChatML where <|im_start|> +// (id 3) doubles as BOS. All vs the fixtures dumped by +// `reference/dump_ref.py --model amalia`. Self-skips unless both the model +// (MLXFORGE_MODEL_DIR_AMALIA) and the committed fixtures are present. +// Quantized-KV fixtures are dumped for uniformity but not gated here — the +// engine rejects kv-quant for bf16-compute models. +#include + +#include +#include +#include + +#include + +#include "core/config.h" +#include "mlx/ops.h" +#include "support/model_fixture.h" +#include "support/reference.h" +#include "tokenizer/tokenizer.h" + +using namespace mlxforge::test; + +namespace { +bool amalia_fixtures_present() { return std::ifstream(amalia_ref_path("manifest.json")).good(); } +bool amalia_ready() { return amalia_model_available() && amalia_fixtures_present(); } + +std::string read_file(const std::string& path) { + std::ifstream f(path, std::ios::binary); + std::ostringstream ss; + ss << f.rdbuf(); + return ss.str(); +} +} // namespace + +TEST_CASE("AMALIA: plain-Llama attention front-half matches the reference") { + if (!amalia_ready()) { + MESSAGE("AMALIA model/fixtures not present; skipping golden-reference check"); + return; + } + mlxforge::LlamaModel& model = shared_amalia_model(); + + // The factory contract: AMALIA is the stock decoder (no QK-Norm), loaded 4-bit + // with bf16 compute (the fingerprint in ModelConfig::from_json — fp16 would be + // all-NaN from layer 9, and these gates would then fail on nonfinite values). + CHECK(model.config().bf16_compute); + CHECK(model.weights().at("model.layers.0.input_layernorm.weight").dtype() == mx::bfloat16); + CHECK_FALSE(model.weights().has("model.layers.0.self_attn.q_norm.weight")); + mlxforge::QuantParams qp; + CHECK(model.weights().is_quantized("model.layers.0.self_attn.q_proj.weight", qp)); + CHECK(qp.bits == 4); + CHECK(qp.group_size == 64); + + std::vector ids = load_amalia_token_ids("prompt_0_ids.npy"); + mx::array tokens(ids.data(), {1, static_cast(ids.size())}, mx::int32); + + mx::array emb = model.embed(tokens); + assert_close(emb, load_amalia_npy("embeddings.npy")); + + mx::array normed = + model.rms_norm(emb, model.weights().at("model.layers.0.input_layernorm.weight")); + assert_close(normed, load_amalia_npy("attn_norm0.npy")); + + // RoPE'd Q/K and un-roped V through the quantized projections (gates + // rope_theta 1e6 with no scaling, GQA 32/8, head_dim 128). + mlxforge::DecoderModel::QKV qkv = model.attn_qkv(emb, /*layer=*/0); + assert_close(qkv.q, load_amalia_npy("q_rope0.npy")); + assert_close(qkv.k, load_amalia_npy("k_rope0.npy")); + assert_close(qkv.v, load_amalia_npy("v0.npy")); +} + +TEST_CASE("AMALIA: decoder block 0 output matches the reference") { + if (!amalia_ready()) { + MESSAGE("AMALIA model/fixtures not present; skipping golden-reference check"); + return; + } + mlxforge::LlamaModel& model = shared_amalia_model(); + std::vector ids = load_amalia_token_ids("prompt_0_ids.npy"); + mx::array tokens(ids.data(), {1, static_cast(ids.size())}, mx::int32); + mx::array emb = model.embed(tokens); + + assert_close(model.decoder_block(emb, /*layer=*/0), load_amalia_npy("block0.npy")); +} + +TEST_CASE("AMALIA: full forward logits + first-token argmax match the reference") { + if (!amalia_ready()) { + MESSAGE("AMALIA model/fixtures not present; skipping golden-reference check"); + return; + } + mlxforge::LlamaModel& model = shared_amalia_model(); + std::vector ids = load_amalia_token_ids("prompt_0_ids.npy"); + const int T = static_cast(ids.size()); + mx::array tokens(ids.data(), {1, T}, mx::int32); + + mx::array logits = model.forward(tokens); // (1, T, vocab) + const int vocab = logits.shape()[2]; + mx::array last = mx::reshape(mx::slice(logits, {0, T - 1, 0}, {1, T, vocab}), {1, vocab}); + // Deliberately loose: 42 layers of bf16 (8 mantissa bits) over 4-bit + // quantized matmuls, which are fusion-context-sensitive (see the kv-quant + // notes — mlx-lm disagrees with itself across graph contexts), so a tight + // raw-logit bound would assert kernel fusion, not math. This is a + // sanity/finiteness check; the exact argmax below and the exact greedy + // stream in the next case are the correctness gates. + assert_close(last, load_amalia_npy("logits_last.npy"), /*rtol=*/1e-1f, /*atol=*/5e-1f); + + std::vector argmax = load_amalia_token_ids("argmax.npy"); + mx::array got = mx::astype(mx::argmax(last, /*axis=*/-1), mx::int32); + mx::eval(got); + CHECK(got.data()[0] == argmax[0]); +} + +TEST_CASE("AMALIA: greedy continuation reproduces the reference token stream") { + if (!amalia_ready()) { + MESSAGE("AMALIA model/fixtures not present; skipping golden-reference check"); + return; + } + mlxforge::LlamaModel& model = shared_amalia_model(); + std::vector ids = load_amalia_token_ids("prompt_0_ids.npy"); + std::vector expected = load_amalia_token_ids("greedy_tokens.npy"); + + // Full-recompute greedy loop (no cache), mirroring the reference oracle. + std::vector got; + for (size_t i = 0; i < expected.size(); ++i) { + mx::array tokens(ids.data(), {1, static_cast(ids.size())}, mx::int32); + mx::array logits = model.forward(tokens); + const int T = static_cast(ids.size()); + const int vocab = logits.shape()[2]; + mx::array last = mx::reshape(mx::slice(logits, {0, T - 1, 0}, {1, T, vocab}), {1, vocab}); + mx::array nxt = mx::astype(mx::argmax(last, /*axis=*/-1), mx::int32); + mx::eval(nxt); + const int tok = nxt.data()[0]; + got.push_back(tok); + ids.push_back(tok); + } + assert_tokens_equal(got, expected); +} + +TEST_CASE("AMALIA: tokenizer matches the golden ids (Metaspace prepend, Strip, ChatML+BOS)") { + if (!amalia_ready()) { + MESSAGE("AMALIA model/fixtures not present; skipping"); + return; + } + const std::string dir = amalia_model_dir(); + mlxforge::ModelConfig cfg = mlxforge::ModelConfig::from_file(dir + "/config.json"); + + // model_type is "llama"; the ChatML format must come from the on-disk + // chat_template.jinja, not the model_type mapping. + const mlxforge::ChatFormat fmt = mlxforge::chat_format_for_model_dir(dir, cfg.model_type); + CHECK(fmt == mlxforge::ChatFormat::Amalia); + mlxforge::Tokenizer tok = + mlxforge::Tokenizer::from_file(dir + "/tokenizer.json", cfg.bos_token_id, fmt); + + // Corpus byte-match: gates the Metaspace prepend (incl. after special tokens), + // byte_fallback, added-token isolation, and the post-processor BOS (id 3). + nlohmann::json corpus = + nlohmann::json::parse(read_file(amalia_ref_path("tokenizer_corpus.json"))); + REQUIRE(corpus.is_array()); + REQUIRE(corpus.size() > 0); + for (const auto& entry : corpus) { + const std::string text = entry["text"].get(); + const std::vector expected = entry["ids"].get>(); + INFO("input: " << text); + assert_tokens_equal(tok.encode(text), expected); + } + + // The Strip decoder must undo the Metaspace prepend: decode(encode(s)) == s + // for special-free text (mirrors HF decode with skip_special_tokens). + for (const char* s : {"Qual é a capital de Portugal?", "português: ação, coração", + "Amália Rodrigues cantava fado."}) { + CHECK(tok.decode(tok.encode(s)) == s); + } + + // One exact check gates the whole chat path: the Amalia template rendering + // (default PT system prompt), the BOS-completes-<|im_start|> convention (no + // doubled id 3), and the post-special ▁-prepend, vs mlx-lm's + // apply_chat_template on the checkpoint's own jinja. + std::vector messages = { + {"user", "Qual é a capital de Portugal?"}}; + CHECK(tok.apply_chat_template(messages) == load_amalia_token_ids("chat_ids.npy")); +} diff --git a/tests/support/model_fixture.h b/tests/support/model_fixture.h index 5763757..847e731 100644 --- a/tests/support/model_fixture.h +++ b/tests/support/model_fixture.h @@ -111,6 +111,25 @@ inline Qwen35Model& shared_qwen3_5_model() { return model; } +// Same, for AMALIA-9B (plain-Llama forward; what it uniquely exercises is the +// SentencePiece Metaspace-prepend tokenizer and the ChatML-with-BOS template, +// so the model reuses LlamaModel directly). +inline std::string amalia_model_dir() { return MLXFORGE_MODEL_DIR_AMALIA; } + +inline bool amalia_model_available() { + const std::string d = amalia_model_dir(); + return !d.empty() && std::ifstream(d + "/config.json").good(); +} + +inline LlamaModel& shared_amalia_model() { + static LlamaModel model = [] { + ModelConfig cfg = ModelConfig::from_file(amalia_model_dir() + "/config.json"); + Weights w = load_weights(amalia_model_dir(), cfg); + return LlamaModel(std::move(cfg), std::move(w)); + }(); + return model; +} + // Qwen3-VL vision-language model (ViT + multimodal integration tests). The // config and the (keep_vision) Weights are loaded once and shared: the ViT // encoder borrows the Weights, the language model takes a (cheap, handle-only) diff --git a/tests/support/reference.h b/tests/support/reference.h index d225530..33e67aa 100644 --- a/tests/support/reference.h +++ b/tests/support/reference.h @@ -110,6 +110,17 @@ inline std::vector load_qwen3_vl_token_ids(const std::string& name) { return load_token_ids_at(MLXFORGE_REF_FIXTURES_DIR_QWEN3_VL, name); } +// Same accessors against the AMALIA fixture set (reference/fixtures_amalia). +inline std::string amalia_ref_path(const std::string& name) { + return std::string(MLXFORGE_REF_FIXTURES_DIR_AMALIA) + "/" + name; +} +inline mx::array load_amalia_npy(const std::string& name) { + return mx::load(amalia_ref_path(name)); +} +inline std::vector load_amalia_token_ids(const std::string& name) { + return load_token_ids_at(MLXFORGE_REF_FIXTURES_DIR_AMALIA, name); +} + struct CompareResult { bool ok = true; std::string message; @@ -160,6 +171,13 @@ inline CompareResult compare_close(const mx::array& actual, const mx::array& exp for (int64_t i = 0; i < static_cast(a.size()); ++i) { const double av = static_cast(pa[i]); const double bv = static_cast(pb[i]); + // Nonfinite values are always a failure: NaN comparisons are false, so + // without this a NaN-degenerate pair (e.g. an fp16-overflowed forward + // compared against an equally overflowed reference) would pass vacuously. + if (!std::isfinite(av) || !std::isfinite(bv)) { + if (first_bad < 0) first_bad = i; + continue; + } const double diff = std::abs(av - bv); const double tol = atol + static_cast(rtol) * std::abs(bv); if (diff > tol && first_bad < 0) first_bad = i; diff --git a/tests/tokenizer/spm_test.cpp b/tests/tokenizer/spm_test.cpp index 4553d41..47c6d7c 100644 --- a/tests/tokenizer/spm_test.cpp +++ b/tests/tokenizer/spm_test.cpp @@ -26,6 +26,14 @@ bool gemma_available() { return !gemma_dir().empty() && std::ifstream(tokenizer_path()).good(); } +std::string amalia_tokenizer_path() { + return std::string(MLXFORGE_MODEL_DIR_AMALIA) + "/tokenizer.json"; +} +bool amalia_tokenizer_available() { + return !std::string(MLXFORGE_MODEL_DIR_AMALIA).empty() && + std::ifstream(amalia_tokenizer_path()).good(); +} + std::string read_file(const std::string& path) { std::ifstream f(path, std::ios::binary); std::ostringstream ss; @@ -47,6 +55,18 @@ TEST_CASE("SpmBpeTokenizer recognizes the Gemma tokenizer and rejects byte-level CHECK_FALSE(mlxforge::BpeTokenizer::is_supported(blob)); } +TEST_CASE("SpmBpeTokenizer recognizes the AMALIA tokenizer and rejects byte-level BPE") { + if (!amalia_tokenizer_available()) { + MESSAGE("MLXFORGE_MODEL_DIR_AMALIA not present; skipping"); + return; + } + // AMALIA (EuroLLM tokenizer) is SentencePiece-BPE with a Metaspace + // prepend_scheme "always" pre-tokenizer and a Strip decoder -> SPM backend. + const std::string blob = read_file(amalia_tokenizer_path()); + CHECK(mlxforge::SpmBpeTokenizer::is_supported(blob)); + CHECK_FALSE(mlxforge::BpeTokenizer::is_supported(blob)); +} + TEST_CASE("SpmBpeTokenizer matches the Gemma golden ids on a diverse corpus") { if (!gemma_available()) { MESSAGE("MLXFORGE_MODEL_DIR_GEMMA not present; skipping"); diff --git a/tests/tokenizer/tokenizer_test.cpp b/tests/tokenizer/tokenizer_test.cpp index ba46116..eb2116f 100644 --- a/tests/tokenizer/tokenizer_test.cpp +++ b/tests/tokenizer/tokenizer_test.cpp @@ -137,6 +137,34 @@ TEST_CASE("Qwen3 ChatML template renders thinking, tools, and tool turns (no mod std::string::npos); } +TEST_CASE("AMALIA ChatML template injects the default PT system prompt (no model needed)") { + using mlxforge::ChatFormat; + using mlxforge::Tokenizer; + + // No system message: the Portuguese default is injected. The template is + // rendered in full — apply_chat_template encodes it without the BOS prepend + // (AMALIA's BOS id 3 IS <|im_start|>; see render_amalia). + std::string basic = + Tokenizer::render_chat_template({{"user", "Olá"}}, /*add_generation_prompt=*/true, "", + ChatFormat::Amalia); + CHECK(basic.rfind("<|im_start|>system\nO teu nome é Amália", 0) == 0); + CHECK(basic.find("português europeu.<|im_end|>\n<|im_start|>user\nOlá<|im_end|>\n") != + std::string::npos); + CHECK(basic.find("<|im_start|>assistant\n") == basic.size() - 22); + + // An explicit system message replaces the default. + std::string with_sys = Tokenizer::render_chat_template( + {{"system", "sê breve"}, {"user", "Olá"}}, true, "", ChatFormat::Amalia); + CHECK(with_sys.rfind("<|im_start|>system\nsê breve<|im_end|>\n", 0) == 0); + CHECK(with_sys.find("Amália") == std::string::npos); + + // Without a generation prompt the render ends at the last turn. + std::string no_gen = Tokenizer::render_chat_template({{"user", "Olá"}}, false, "", + ChatFormat::Amalia); + CHECK(no_gen.find("assistant") == std::string::npos); + CHECK(no_gen.rfind("<|im_end|>\n") == no_gen.size() - 11); +} + TEST_CASE("streaming detokenizer never emits broken UTF-8") { if (!model_available()) { MESSAGE("MLXFORGE_MODEL_DIR not present; skipping");