From 53151fe1f000d00bb819f194dde03d322e54d62c Mon Sep 17 00:00:00 2001 From: Chris Lorenzo Date: Sun, 31 May 2026 22:08:06 -0400 Subject: [PATCH 1/4] feat(text): Canvas bidirectional (RTL) text rendering Render RTL/bidi text on the Canvas backend by leaning on the browser's built-in fillText bidi. When a node is `rtl`, each line is given an RTL base direction so mixed Hebrew/Latin/number runs reorder correctly and the paragraph reads right-to-left. Base direction is forced portably via an RLE/PDF control-char wrap because `ctx.direction` is Chrome 63+ while the runtime floor is Chrome 38; lines are anchored with `textAlign = 'left'` so the Phase 1 alignment flip still right-aligns them. Per-character letterSpacing is incompatible with bidi reordering (and native ctx.letterSpacing is Chrome 99+), so letterSpacing is forced to 0 for RTL text. Scope: Canvas backend, Hebrew + mixed LTR. SDF bidi and Arabic shaping remain out of scope. Full Docker visual comparison passes 171/171 (LTR path is pixel-identical). Co-Authored-By: Claude Opus 4.7 --- examples/tests/rtl-text-canvas.ts | 66 ++++++++++++++++++ src/core/text-rendering/CanvasTextRenderer.ts | 28 +++++++- .../chromium-ci/rtl-text-canvas-1.png | Bin 0 -> 28258 bytes 3 files changed, 92 insertions(+), 2 deletions(-) create mode 100644 examples/tests/rtl-text-canvas.ts create mode 100644 visual-regression/certified-snapshots/chromium-ci/rtl-text-canvas-1.png diff --git a/examples/tests/rtl-text-canvas.ts b/examples/tests/rtl-text-canvas.ts new file mode 100644 index 0000000..5663c29 --- /dev/null +++ b/examples/tests/rtl-text-canvas.ts @@ -0,0 +1,66 @@ +import type { ExampleSettings } from '../common/ExampleSettings.js'; + +export async function automation(settings: ExampleSettings) { + await test(settings); + await settings.snapshot(); +} + +/** + * Canvas bidirectional (RTL) text. + * + * The Canvas renderer leans on the browser's built-in `fillText` bidi: when the + * node is `rtl`, each line is given an RTL base direction (portably, via an + * RLE/PDF wrap) so mixed Hebrew/Latin/number runs reorder correctly and the + * paragraph reads right-to-left, right-aligned. + * + * Left column: `rtl: false` (LTR base) — Hebrew still shapes RTL within its run, + * but the overall order and alignment are left-to-right. + * Right column: `rtl: true` — RTL base direction, right-aligned, correct order. + * + * SDF text is intentionally not covered (deferred); these nodes force the + * 'canvas' renderer. + */ +export default async function test({ renderer, testRoot }: ExampleSettings) { + const samples = [ + 'שלום עולם', // "hello world" + 'שלום world 123', // mixed Hebrew + Latin + digits + '90 דקות', // "90 minutes" — leading number + 'מחיר: $42 לחודש', // "price: $42 per month" + ]; + + const COL_W = 560; + const ROW_H = 70; + + const makeColumn = (x: number, rtl: boolean, title: string) => { + renderer.createTextNode({ + x, + y: 20, + w: COL_W, + fontFamily: 'Ubuntu', + fontSize: 32, + color: 0xffffffff, + forceLoad: true, + text: title, + parent: testRoot, + }); + + for (let i = 0; i < samples.length; i++) { + renderer.createTextNode({ + x, + y: 80 + i * ROW_H, + w: COL_W, + rtl, + fontFamily: 'Ubuntu', + fontSize: 40, + color: 0xffd700ff, + forceLoad: true, + textRendererOverride: 'canvas', + text: samples[i], + parent: testRoot, + }); + } + }; + + makeColumn(20, false, 'LTR base (rtl: false)'); + makeColumn(620, true, 'RTL base (rtl: true)'); +} diff --git a/src/core/text-rendering/CanvasTextRenderer.ts b/src/core/text-rendering/CanvasTextRenderer.ts index b8db141..7b93f51 100644 --- a/src/core/text-rendering/CanvasTextRenderer.ts +++ b/src/core/text-rendering/CanvasTextRenderer.ts @@ -12,6 +12,16 @@ import { mapTextLayout, resolveTextAlign } from './TextLayoutEngine.js'; const MAX_TEXTURE_DIMENSION = 4096; +// Bidi base-direction control characters. `ctx.direction = 'rtl'` is only +// available from Chrome 63+, but the language/runtime floor is Chrome 38, so we +// force the RTL base direction by wrapping the line in a Right-to-Left Embedding +// (RLE) ... Pop Directional Formatting (PDF) pair. The browser's built-in +// fillText bidi then reorders mixed LTR/RTL runs on every supported browser. +// RLE (embedding) keeps the Unicode Bidi Algorithm running inside the run, so +// Latin words and numbers stay left-to-right — unlike RLO (override). +const RLE = '\u202B'; +const PDF = '\u202C'; + const type = 'canvas' as const; const font: FontHandler = CanvasFontHandler; @@ -116,7 +126,12 @@ const renderText = (props: CoreTextNodeProps): TextRenderInfo => { const metrics = CanvasFontHandler.getFontMetrics(fontFamily, fontSize); - const letterSpacing = props.letterSpacing; + const isRtl = props.rtl === true; + // Per-character letterSpacing is drawn glyph-by-glyph left-to-right, which + // defeats the browser's bidi reordering. Native ctx.letterSpacing is Chrome + // 99+ (below our Chrome 38 floor), so letterSpacing is unsupported for RTL + // text: force it to 0 here so the measured layout matches the whole-line draw. + const letterSpacing = isRtl === true ? 0 : props.letterSpacing; const [ lines, @@ -154,6 +169,12 @@ const renderText = (props: CoreTextNodeProps): TextRenderInfo => { context.fillStyle = `rgba(${r},${g},${b},${a / 255})`; context.font = font; context.textBaseline = 'alphabetic'; + // Anchor every line by its left edge at line[3] regardless of direction + // ('start' would flip to the right edge under RTL). Set direction for modern + // browsers; the RLE/PDF wrap below covers the Chrome 38 floor. The context is + // shared across renders, so both are set unconditionally to reset prior state. + context.textAlign = 'left'; + context.direction = isRtl === true ? 'rtl' : 'ltr'; // Performance optimization for large fonts if (fontSize >= 128) { @@ -167,7 +188,10 @@ const renderText = (props: CoreTextNodeProps): TextRenderInfo => { const textLine = line[0]; let currentX = Math.ceil(line[3]); const currentY = Math.ceil(line[4]); - if (letterSpacing === 0) { + if (isRtl === true) { + // Force RTL base direction so the browser's bidi reorders mixed runs. + context.fillText(RLE + textLine + PDF, currentX, currentY); + } else if (letterSpacing === 0) { context.fillText(textLine, currentX, currentY); } else { const textLineLength = textLine.length; diff --git a/visual-regression/certified-snapshots/chromium-ci/rtl-text-canvas-1.png b/visual-regression/certified-snapshots/chromium-ci/rtl-text-canvas-1.png new file mode 100644 index 0000000000000000000000000000000000000000..e9a585802788005ff215ea3a3f0bf00b1574eefb GIT binary patch literal 28258 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 C+!2}p literal 0 HcmV?d00001 From 9284520f75466ee0039f18b1cdc09a85479d2155 Mon Sep 17 00:00:00 2001 From: Chris Lorenzo Date: Sun, 31 May 2026 22:17:57 -0400 Subject: [PATCH 2/4] docs(rtl): add RTL layout & Canvas bidi text guide Document the `rtl` node flag (inheritance, override, the width caveat, and the mirroring formula) and Canvas bidirectional text rendering, including the known limitations (SDF/Arabic/letterSpacing). Includes the LTR/RTL layout diagram. Co-Authored-By: Claude Opus 4.7 --- docs/RTL/index.md | 167 +++++++++++++++++++++++++++++++++++++++++++ docs/RTL/ltr-rtl.png | Bin 0 -> 96535 bytes 2 files changed, 167 insertions(+) create mode 100644 docs/RTL/index.md create mode 100644 docs/RTL/ltr-rtl.png diff --git a/docs/RTL/index.md b/docs/RTL/index.md new file mode 100644 index 0000000..00f7fcd --- /dev/null +++ b/docs/RTL/index.md @@ -0,0 +1,167 @@ +# Right-to-left (RTL) support + +Applications may need to be localised for regions where the language is written +from right to left, such as Hebrew or Arabic. Users expect not only the text to +be correctly rendered, but also the whole layout to be mirrored: rails populate +from right to left, a side navigation on the left appears on the right instead, +and so on. + +By contrast, the default layout and text direction is called "left-to-right" +(LTR). + +RTL support has two independent aspects: + +- **RTL layout** — mirroring the structure of the scene graph, and +- **RTL text** — correctly ordering bidirectional (mixed LTR/RTL) text. + +They can be used separately. Layout mirroring works with any text; bidirectional +text rendering is currently a **Canvas-only** feature (see the +[limitations](#limitations) below). + +## RTL layout + +Every node has an `rtl` property that hints whether the node's **children** +should be laid out mirrored: + +```ts +const container = renderer.createNode({ + x: 20, + y: 20, + w: 700, // a width is required — see the caveat below + h: 200, + rtl: true, + parent: root, +}); + +// Children use the same `x` you'd use for LTR; it is interpreted from the +// right edge automatically. +renderer.createNode({ x: 0, w: 200, h: 200, parent: container }); // rightmost +renderer.createNode({ x: 220, w: 200, h: 200, parent: container }); // middle +renderer.createNode({ x: 440, w: 200, h: 200, parent: container }); // leftmost +``` + +The `rtl` flag is **inherited**: setting it on a node mirrors that node's whole +sub-tree. In practice, setting `rtl` on the application root mirrors the entire +app: + +```ts +renderer.root.rtl = true; +``` + +To opt a sub-tree back out of mirroring, set an explicit `rtl: false` on it: + +```ts +// Inside an RTL app, this branch lays its children out left-to-right again. +renderer.createNode({ rtl: false, parent: someRtlBranch }); +``` + +`rtl` accepts three values: + +| Value | Meaning | +| ------- | ------------------------------------- | +| `true` | Mirror this node's children | +| `false` | Force left-to-right for this sub-tree | +| `null` | Inherit from the parent (the default) | + +A node's own position is governed by its **parent's** resolved direction, while +its own `rtl` value governs how **its children** are placed. So `rtl: false` on +a leaf node has no visible effect — it only matters for nodes that have children. + +### How the mirroring is calculated + +When a parent is RTL, a child's horizontal position is measured from the +parent's right edge instead of its left: + +![LTR vs RTL layout calculations](./ltr-rtl.png) + +- **LTR:** `x = xa + xb` +- **RTL:** `x = xa + wa - xb - wb` + +where `wa` is the parent width, `wb` the child width, and `xb` the child's `x`. +Scale is taken into account (`wb` is the scaled width). + +> **Important caveat:** because the calculation needs `wa`, **the parent must +> have a known width** (`w`). In an LTR-only app it is often possible to omit +> `w` on containers, but for automatic RTL mirroring to work, the width must be +> set. A parent without a width lays its children out left-to-right. + +### Text alignment + +The `rtl` flag also mirrors text alignment: a text node's `textAlign` of `left` +and `right` are automatically reversed when the node resolves to RTL. So +`textAlign: 'left'` (the default) becomes right-aligned, which is what you want +for RTL UIs. `center` is unchanged. + +Note that flipping the alignment alone does **not** reorder the characters of +mixed LTR/RTL text — see [RTL text](#rtl-text) below for that. + +## RTL text + +Correctly rendering RTL text requires _bidirectional_ (bidi) layout: a single +string may combine LTR and RTL runs — numbers and untranslated words stay +left-to-right, while Hebrew/Arabic runs go right-to-left. + +On the **Canvas** text renderer this works automatically by leaning on the +browser's built-in text engine. Force the canvas renderer and mark the node (or +an ancestor) as `rtl`: + +```ts +renderer.createTextNode({ + w: 560, + rtl: true, // or inherit from an rtl ancestor + textRendererOverride: 'canvas', + fontFamily: 'Ubuntu', + fontSize: 40, + text: 'שלום world 123', + parent: root, +}); +``` + +With `rtl` set, the line is given an RTL base direction and the browser reorders +the runs: `שלום world 123` renders as `world 123 שלום`, `90 דקות` renders as +`דקות 90`, each right-aligned within the node. + +The text renderer detects direction from the node's resolved `rtl` flag; there +is no separate tokenizer to configure and no extra dependency to install. + +### Bidirectional concatenation + +When a label is built by concatenating several parts — `{title} {description}` +or `{tag1} {tag2} {tag3}` — the parts can interact: a leading LTR part can flip +how the whole reads, and an LTR number in one part can attach to a neighbouring +part. To keep each part self-contained, wrap it in Unicode _isolate_ characters: + +```ts +const FSI = '\u2068'; // First Strong Isolate (auto-detect each part) +const PDI = '\u2069'; // Pop Directional Isolate + +const label = parts.map((p) => `${FSI}${p}${PDI}`).join(' '); +``` + +This is plain Unicode handled by the browser's bidi engine — no API is required. + +## Input + +This renderer does not handle remote/keyboard input. If your application mirrors +its layout, remember that the _visual_ meaning of Left and Right is reversed, so +your input layer should swap Left/Right key handling for mirrored sub-trees. That +logic lives in the application, not the renderer. + +## Limitations + +- **SDF text is not yet bidi-aware.** Signed-distance-field text renders glyphs + in logical order, so mixed/RTL strings will look incorrect. Use + `textRendererOverride: 'canvas'` for RTL text for now. +- **Arabic shaping** (contextual letter joining) is out of scope. Hebrew and + other non-joining scripts, plus mixed LTR, are supported on Canvas. +- **`letterSpacing` is ignored for RTL text.** Per-character spacing is drawn + glyph-by-glyph, which defeats bidi reordering, so it is forced to `0` for RTL + nodes. +- **Layout mirroring requires known widths** (see the caveat above). + +## Browser support + +RTL text relies on the browser's built-in `fillText` bidi, which is available on +all supported targets. The base direction is forced using Unicode control +characters (RLE/PDF) rather than the `CanvasRenderingContext2D.direction` +property, so it works down to the engine's Chrome 38 floor. diff --git a/docs/RTL/ltr-rtl.png b/docs/RTL/ltr-rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..8a6b323e6b4750b4ba79639962549ea9d6460246 GIT binary patch literal 96535 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 literal 0 HcmV?d00001 From e8c0860f6c66e949414c2bcb4da2dcbb1f3e4fa1 Mon Sep 17 00:00:00 2001 From: Chris Lorenzo Date: Sun, 31 May 2026 22:37:13 -0400 Subject: [PATCH 3/4] test(rtl): bundle Hebrew font for deterministic Canvas bidi snapshot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The rtl-text-canvas snapshot was flaky across environments: CI runs Playwright chromium directly on the GitHub runner (not the VRT Docker image), and the test used 'Ubuntu', which lacks Hebrew glyphs — so Canvas fell back to a system Hebrew font that differs between the snapshot machine and CI. Bundle Noto Sans Hebrew (OFL) and load it via installFonts so the Hebrew runs render from a controlled .ttf (FontFace) instead of an OS fallback, matching how every other deterministic snapshot works. Point the test (and docs example) at NotoSansHebrew and regenerate the certified snapshot. Co-Authored-By: Claude Opus 4.7 --- docs/RTL/index.md | 8 +- examples/common/installFonts.ts | 13 +++ examples/public/fonts/NotoSansHebrew-OFL.txt | 93 ++++++++++++++++++ .../public/fonts/NotoSansHebrew-Regular.ttf | Bin 0 -> 26860 bytes examples/tests/rtl-text-canvas.ts | 2 +- .../chromium-ci/rtl-text-canvas-1.png | Bin 28258 -> 28222 bytes 6 files changed, 114 insertions(+), 2 deletions(-) create mode 100644 examples/public/fonts/NotoSansHebrew-OFL.txt create mode 100644 examples/public/fonts/NotoSansHebrew-Regular.ttf diff --git a/docs/RTL/index.md b/docs/RTL/index.md index 00f7fcd..9b06848 100644 --- a/docs/RTL/index.md +++ b/docs/RTL/index.md @@ -110,7 +110,7 @@ renderer.createTextNode({ w: 560, rtl: true, // or inherit from an rtl ancestor textRendererOverride: 'canvas', - fontFamily: 'Ubuntu', + fontFamily: 'NotoSansHebrew', // a font that actually covers the script fontSize: 40, text: 'שלום world 123', parent: root, @@ -124,6 +124,12 @@ the runs: `שלום world 123` renders as `world 123 שלום`, `90 דקות` re The text renderer detects direction from the node's resolved `rtl` flag; there is no separate tokenizer to configure and no extra dependency to install. +> **Use a font that covers the script.** The Canvas renderer draws with the font +> you load via `stage.loadFont('canvas', …)`. If that font lacks Hebrew (or +> Arabic) glyphs, the browser falls back to a system font, which varies between +> machines. Load a script-covering font (e.g. Noto Sans Hebrew) and reference it +> by `fontFamily` so rendering is consistent everywhere. + ### Bidirectional concatenation When a label is built by concatenating several parts — `{title} {description}` diff --git a/examples/common/installFonts.ts b/examples/common/installFonts.ts index a3c619a..eee83c9 100644 --- a/examples/common/installFonts.ts +++ b/examples/common/installFonts.ts @@ -42,6 +42,19 @@ export async function installFonts(stage: Stage) { metrics: ubuntuModifiedMetrics, }); + // Bundled Hebrew-capable font so RTL/bidi text tests don't depend on a + // non-deterministic system font fallback. Noto Sans Hebrew also covers Latin. + stage.loadFont('canvas', { + fontFamily: 'NotoSansHebrew', + fontUrl: './fonts/NotoSansHebrew-Regular.ttf', + metrics: { + ascender: 1069, + descender: -293, + lineGap: 0, + unitsPerEm: 1000, + }, + }); + // Load SDF fonts for WebGL renderer using the new unified API if (stage.renderer.mode === 'webgl') { stage.loadFont('sdf', { diff --git a/examples/public/fonts/NotoSansHebrew-OFL.txt b/examples/public/fonts/NotoSansHebrew-OFL.txt new file mode 100644 index 0000000..a2ce395 --- /dev/null +++ b/examples/public/fonts/NotoSansHebrew-OFL.txt @@ -0,0 +1,93 @@ +Copyright 2022 The Noto Project Authors (https://github.com/notofonts/hebrew) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/examples/public/fonts/NotoSansHebrew-Regular.ttf b/examples/public/fonts/NotoSansHebrew-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ef33d06cc08ab08a3796de26aa3825fc2529e8c9 GIT binary patch literal 26860 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 literal 28258 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 C+!2}p From 2920e61a74cf77a207f70a73401d4bf2f18d9954 Mon Sep 17 00:00:00 2001 From: Chris Lorenzo Date: Sun, 31 May 2026 23:22:01 -0400 Subject: [PATCH 4/4] test(rtl): cover Canvas RTL wrapping & overflow; doc SDF limit as permanent Add a visual test exercising multi-line word-wrapped RTL paragraphs (right- aligned, reordered, with embedded LTR runs) and maxLines + overflowSuffix truncation, alongside LTR for contrast, using the bundled NotoSansHebrew font. Reword the SDF text limitation in the RTL guide from "not yet bidi-aware" to a permanent design decision: RTL text requires the Canvas renderer. Co-Authored-By: Claude Opus 4.7 --- docs/RTL/index.md | 9 +- examples/tests/rtl-text-canvas-wrap.ts | 89 ++++++++++++++++++ .../chromium-ci/rtl-text-canvas-wrap-1.png | Bin 0 -> 70925 bytes 3 files changed, 95 insertions(+), 3 deletions(-) create mode 100644 examples/tests/rtl-text-canvas-wrap.ts create mode 100644 visual-regression/certified-snapshots/chromium-ci/rtl-text-canvas-wrap-1.png diff --git a/docs/RTL/index.md b/docs/RTL/index.md index 9b06848..6f0a19c 100644 --- a/docs/RTL/index.md +++ b/docs/RTL/index.md @@ -155,9 +155,12 @@ logic lives in the application, not the renderer. ## Limitations -- **SDF text is not yet bidi-aware.** Signed-distance-field text renders glyphs - in logical order, so mixed/RTL strings will look incorrect. Use - `textRendererOverride: 'canvas'` for RTL text for now. +- **RTL text requires the Canvas renderer.** Bidi rendering relies on the + browser's text engine, which the SDF (WebGL) renderer does not use — SDF draws + glyphs in logical order, so mixed/RTL strings render incorrectly. This is a + design decision, not a pending feature: render RTL text nodes with + `textRendererOverride: 'canvas'`. (Layout mirroring and alignment still apply + to SDF nodes; only the character ordering is wrong.) - **Arabic shaping** (contextual letter joining) is out of scope. Hebrew and other non-joining scripts, plus mixed LTR, are supported on Canvas. - **`letterSpacing` is ignored for RTL text.** Per-character spacing is drawn diff --git a/examples/tests/rtl-text-canvas-wrap.ts b/examples/tests/rtl-text-canvas-wrap.ts new file mode 100644 index 0000000..8aa5e87 --- /dev/null +++ b/examples/tests/rtl-text-canvas-wrap.ts @@ -0,0 +1,89 @@ +import type { ExampleSettings } from '../common/ExampleSettings.js'; + +export async function automation(settings: ExampleSettings) { + await test(settings); + await settings.snapshot(); +} + +/** + * Canvas RTL text: word wrapping and overflow. + * + * Verifies that bidirectional Canvas text behaves correctly when wrapped across + * multiple lines and when truncated with an overflow suffix: + * + * - Wrapping happens in logical order, and each visual line is right-aligned and + * reordered (RTL base direction) for an `rtl` node. + * - With `contain: 'width'`, the block hugs the right edge of the `maxWidth` box. + * - `maxLines` + `overflowSuffix` truncates and appends the suffix at the + * logical end of the text. + * + * The left column is `rtl: false` (LTR) for contrast; the right column is + * `rtl: true`. Uses the bundled NotoSansHebrew font so the snapshot is + * deterministic across environments (no system font fallback). + */ +export default async function test({ renderer, testRoot }: ExampleSettings) { + // Long mixed Hebrew + Latin + number paragraph: + // "This is a long paragraph in Hebrew with numbers like 42 and English + // words like world that wraps across several lines in the layout." + const paragraph = + 'זהו פסקה ארוכה בעברית עם מספרים כמו 42 ומילים באנגלית like world ' + + 'שנמשכת על פני כמה שורות בתוך הפריסה הזאת.'; + + const COL_W = 520; + const MAX_W = 480; + + const labeled = ( + x: number, + y: number, + label: string, + rtl: boolean, + extra: Record, + ) => { + renderer.createTextNode({ + x, + y, + w: COL_W, + fontFamily: 'Ubuntu', + fontSize: 24, + color: 0xffffffff, + forceLoad: true, + text: label, + parent: testRoot, + }); + + renderer.createTextNode({ + x, + y: y + 36, + w: MAX_W, + maxWidth: MAX_W, + contain: 'width', + rtl, + fontFamily: 'NotoSansHebrew', + fontSize: 34, + lineHeight: 44, + color: 0xffd700ff, + forceLoad: true, + textRendererOverride: 'canvas', + text: paragraph, + parent: testRoot, + ...extra, + }); + }; + + const lx = 20; + const rx = 620; + + // Row 1: free wrapping across as many lines as needed. + labeled(lx, 20, 'Wrapped - LTR', false, {}); + labeled(rx, 20, 'Wrapped - RTL', true, {}); + + // Row 2: truncated to 2 lines with an ellipsis suffix. + labeled(lx, 360, 'maxLines: 2 + ellipsis - LTR', false, { + maxLines: 2, + overflowSuffix: '…', + }); + labeled(rx, 360, 'maxLines: 2 + ellipsis - RTL', true, { + maxLines: 2, + overflowSuffix: '…', + }); +} diff --git a/visual-regression/certified-snapshots/chromium-ci/rtl-text-canvas-wrap-1.png b/visual-regression/certified-snapshots/chromium-ci/rtl-text-canvas-wrap-1.png new file mode 100644 index 0000000000000000000000000000000000000000..24fd3ce5dcac5463d28fa9bc6a2f5b2023acba60 GIT binary patch literal 70925 zcmc$_1ydYd+qR2CaDoK}O@aiM-~)tU0fM``4({%*3GN!)eQl?WwEDQ`b zjD(1gl56@&2C}E3GN9kaIWF4qybZa|_`EFyO-KX}5f7Qp8qY4zA6`h__G36aVG+Zk zN2S8jR2wAId@1r=LgpQ%gw)7P<@wtH^Gc@2Svw>h;kyk9WX|2>iy@w4x{|2;BP2KN8Qk9F?zVw~Om zxqIh-Z}V*z|KD5dz0Foc(eqKAjGp)W*xE-Tgx%W#psW1P70j_Y?2F>5l;!=gE2%hk?^t$if~wS+!=*Fc@Mll5n9{QOUQ_yc^71hT^SzsS zGrPD}`&mFoyw__LU)BVFT}|kJ9{d4GohnQrA&1j#LZ=CvOsh*(hGfr+XLet&V-sM&)+^k|*_7S4_Fb=QS}63Fh>mEjSS1zCoNXSm-_-A&P73Gpcf}2FTl5=Ijn+r|#}KU5U+% zt?C$8O9=)c;wOd4vKL3Ge2Glqp>PKt$p)ZHdQT*!a|d}v)QE~bg3yW@uc@0cZ9)6G zX6>1}EQ&YE2G(ndUYN^mW8b+fvW2Yy^oxZ~WD(PR`0cXv37h8nq$s&g#l!Muzs;$# zsXYNog%AE57`%Cmy^8bZr=FSP+0QqWjc0x;o|)Fdp`ASR5n`g6%*_KSrzI8gwVsMp zpwB?M{>Md45)w-UOMHJ$-Se^~&yviShwbT1A!|mJGO>{tyFYg?g7oNxj#9E|1N}>U zM~y*kEeDNP*M!}qEU#oF<}t1eiL$1g_FRcQL#QZvfyO^zaC@b5*ppO$fiD+_zj5J+ z|7ZPaNg^ZI8jzt&GIdLlRK_@9hQ*WqP`Kxb2o@VkHV;*%nmyXG(01*TW?Hc?u|91l z?p46{5R$ZZyFQr+52sV+RCsNDhdHr!1ip3jijy==>rVB&iP#F~t#9LaJA-wuT-{yC zo;i~+>!cG0y;g=;%#%-ZEFY6odwHe@)Z@S1IyD#cwF#FI$T&aR`Cu3jk2m-SDW>bT z_8j`*2dQyXq;cf(caT=B+Lp{C{H z{m(5WPr<^b|0=Eh^vTN+$v8CRgUJ@MkMceDJ8{Q0JvnzNbSqyXqP}JmZ}rE1?_f1# zqfKUHkUl9=Q$*~Q#`_V_Y?<^%%IK8Sg!>x*-$bJL$eUb~J9>hvy~rBf+7{m0KW_HA znkPiRiOT#bpH3@|8Vh&~vj&|tZ2$;r=+#NV)TgWPr$3nnmJee=T!&1qhzn|$PeGE# z?{$(3@7r^(6p5n574V?*hATiuP3IOP0TnSlBE!~|Fr_8Hwr`Fu`ab~=9FK{z5$|81 z5mZoGX|&q4^n0=r~SSMraWRpU~5`lWDG6bZ#to3$(dUZ+wGvm(woYA?KbEt?w0onPmaYyAirZDx~dn*M{nld5#3zCD1O`d`B^)6g9 zF$Nc8#Nce{@}`jrg*V6}Om*Vcx4xw2>njHIQAWxr>lhPo3D#?HSuH;=lb#-Z#^ba>lYL^@s<2Iv>KxbY%jQs!>K8lQ!Gs4Uxxs zaw4hH-Po(tM9U)AOUwcGl;L%a7-r}UZ9BBw#RrtQUp}I)4y_+?pXR~+_dAZ3h8^Oq z@Ad>H&LunP6UX?B&mcENxCi}MKDY{}cvlFZESUWkPT9}Kt-wjE5dJO7jZE{4&(gQ$ zT)Nq6r3^+ed%HltE?av`J*9AH$bzk8l{?K{-KI6tam?JAw3(}Cy702!Cx40x`izEF zjfP^jztUe_(&7KR`UgICHW`;(KS<+xEVMp=nkaGhv`r)&ex)6hl9op|`TrR4``qWx zm!Y@wCG{((NEbEALA|-3i(C29fI2O~mCj>MWWG;F zBlW1%^OE*>ZSb<{+_9LE=*{hHmJ_IBO`UXu+TFNj`bNmPK8lzojUFd=(p!a3=lZvV zh77)ZYB6~OS8mN!7F}Q_bjkVbL+qm|Leqo_=_(_6GUvdXYOBx)ohCcCX|Oy_a>B&P zbWn0MyS+ZX{h!?WD!X}`nKk?Sd4<~x0iF^qs-RpXv1YgXCOJ}ma<1wc!E-?^b<09o zMZ!VM?z-s1vFLPqArs>PIdy&F1$%f}WX~5(Licm-Wm_iI!(#@2;|4CFt^!8ZzsyR+ zyYz|S55^ov(v=HWg z^)D5i$ugXj^S>HOgl1U=nH7^)wIu<^X;zWAb|_rxl$uOs*G!7wE7zqT`?a1jR)cZc zxN3QIT#K57Nz*`?k;Jr_*qaiTg#PYT+eG|jl;au;|DRKBmJTH4!>Gq?!^A5Wg(1?J zwRL}Xfjp}i=4K6hOvqV zg`BeDVZYT$%O+7HaphANrRd5<>)qdoJZ|mA~?)k;~Ir z*w)YqrI;v4quiJLpjow>NO0=Ol;=QLC=7j&wzSHhVy*1Y0wFhSS@^g$OMH|Z94*0) zgBu$!8J^$_U{s||m;aDz8N|lZ`$c|qIs;yEX(s$fLkLTuLolvzeUL#oK4E_#H?{gZ zJX*ssa)MA>0s5U{1-eg+1ky573bJWh*HVK;=<*=uCWMuImH`K?G$jt69TjBmA0us6 zHPR}Zth@7%Djd8G4U9(|@wu)oa-a8M!lM9^ z))?}7@3hj&EF)-@zBtWkx;Tg|hp`Tsr!F9q{;=1vn*ckZ3B>Nj`uum|T`gyUtjYI- zcBZU#{7Xj7mXif~L8|dYDLO$?c4>>xS$c{DGY`+Pj&F}Uhtd|T3cvOvE*16eh_1et z{4tgCD2w*kQj#YZ{&=$^+Za;;Y5+j4-)&m}ZXZvQcX9oFOvOcp72DQ{kDg*K-At5` z^=Aui_&A7R=TW(b=8*-hEREUp&=S9bZGN^K&tJ3C;miD}##Qa$-?@Z&BJe_6Mk83r z8ghAyv(s!V>HEa8;&VOnvR}K)c<9pF{`QFhICUCOEd+>k!L(|n2R+BU!(t0Ucl8|0 zrIZCP@4O{Cu3zC+R%se-r0CdSUM${rO>%ilH?Kdxx5erp5nR+_-Fk0t0q4!{BRKwd z!z-Dn%|KxRODk>k9)yct2@xN?tQlg}MLPyoe>J(>Y}`a;UD)CdnH2IFJAP;gQ09^9 zLUW_FStwDQ$X5N`*mv#nbY>V^BMqhZ{+qE5+d6OVcMGZZ70?;zEc0U1A** zFpkaJDGY(ZYV@{JRHHu`U#y_(X;TQUq~YR_qXS=q=M4Hbu)KRSb&%nHy3k6 zE^PXBB^Y=?T}JG0q|5rhS^)bjSnb>1HNLhy?&%0ozTA+S0r`ZNgGa0C)W+StpkOli zL+5a{OI~Nz&6B`^?6qPWha>5*#kJ#1VPW_abS?th>-ePJHOR7kaT`_7@|@V}Isb|N zczc-{!D#Z${O+Ym+*{BmE2l1m??d}Ia;_jL04y|UQ%tluu7>-zP%tx8FYR1T3X;4} zO<|>9U_09(EX>+;Z13A)9*_=JochdOGTA$|z_Cxpufy_-^l|*++|*IqJbgcBtRsu@ zunPy8&w8Em;Nid(L)M_jQ*EsYijyjK5S%4iBGdb?pJEA4Twn8HnY$96#ujN(itU=g z5GzW-AYN(|M7o5>Ex*tHVzi0 z55&1m-D1Vx$(q|Sqpa36dcbXP##_nO85KkTPJ<~~-2sklb-NQqxo(#s@YPNt{nx|uUS%0@`rrXcBhJ1hU4 z+grxiC)&h|320xifn~aDyk^&E%B#wCEewDBm<~!0#l5Q;!gP>K#(!Zw+h0abvTbH* z!G`#WnpC}EKV7510hb{h+-Pgu7nE^E7}9fK{H{mS$r}1h-ZnP$u;7dq4MI_#tR{9( zt3Ze6fHZH@>Y!W=<`bi#Dsk%IXXjkA&a;#1;AfOc3KRdJEneA(Bp5|+)j94skrf?5 zH}_ECsoFMONcEVG^RqF*yuZAeCtLquIo*@n=`3PbiT~yPVYk5L^BF%ddIR%hFn!RU zWxVFS$OLpj2!RE_yAV22DQrWrdF5II0fMU;IZT>}$4%)E8*QMfb7!r?kO7_bOgFT7 zRGRR|fh0$AoT?%0u0#|(4+n8TD$<9GnvugJ`=i$idXHvuccWuw+i%}yYe8L%#0Rx# zIV=TKD7hFH1*gMg=M0Qz$4%s$1HCn70Tn$o*t;ZLGw0-<-P3O?!>O)DDj{D>%CwC7 zbQ%_^Q^Ui)21+oJONAP)~{czsURtMMZ^m8MNeO`7b zcJZ`fEY{Gj^Tc%KSIF_IaavZ=!krbI#=La96Sv$hTORr?SFDF?M<0<8^^~WYoU-C+ zDl_5d<_1?juq0;x_3TVs8lkE!f$5v}{K}M)NO1%2FLr;o>1>`H(U#^+|2L*lp3Nbv z_3FR5q84d8dx#MgN-jLJJ=-kKSI-s9l&inhyf$kQqo=NH2VC*+XrBf7AGX$uU8gHPq*vmtLW+Vd)imzg9WL+8&|zN{3ry^BlEZ2EP#+EHqM72In=}_wJ$w5wd8A8 zn)&kavnmQbo;Bq`IuXafQD#^ONzez$TDbv{AD0^WGC?KW@}PX$OvAe6chF)BgeNzZ zyVxy{Ka(7 z!`KqA=Uz>~9jUBByz$ji>$u1J``_%cu3Jj81C}9-5yli@Tlw=^do4b>R7*kOn|7()#>n{<=qR-dImvQOFeLjDF>e?Sz zB@XU?h01&DBiEgvrzFZ)^VXjHPo}qbz>7IQ2v^~{c{|sF?e!B=`iCp}Xs2VFkfmvo z`40=M7ZHN<`y41U`hw}TV7K^@6jfw_WBLg#yXSoJ_hf8;1Xo^!wTda>EM;V4gvlda zvF8?^wX@ELhz!9~Pr0i6@1H0Q|ahh08D29F)&Eb?BU`0L~E^5aneJ#np}##bFn0$A%$%ippx zT*oeq^j`q!Y_E6b=NK7zyO(P`;LjC*XvDEkH`bW41lJ5NT`pt1osVKUIs7ocWW}_N z$SBm`9Dt5vO=@~wg2zPzuS?lwz1;S`Y>(PtW`@LGB>h1a06w~dkp0(Q9Z&eNX_(K| z^-mW3Rn%E6n$xVhwuH~0Q|!5%t?E5`-;amMIH@m0Kh}ddODD74*0fgWv9_-l5aF3R`{?hlFF0X}L zO)#5Nc6{cI&<(gWy`F1T(0>uG9w|In!oDo9UhwM<&le8!;;@bl-mXQd>dWYudCOn^ z?j4-vvUYclPK9oLzrS7ht={@)#`E}QU+^pOiR9)4>D!21#i#ovV{g_?8Dxn*$Yo3! z_k+Q5N_k+o4fPr<)-CRvC%NiW#B@`DawV3#g)ihRr13RXfy{i6r`Kj#>P06WCBCQ< zci7;!KjBq-MQIh#X4xg!m3b|ls)yV;F>!-5VBEC)Jwr{^8(L%Ft3fDCBhuO_BzWv_ z&l_F95r~r*>i%#RY9r@hC6je?7)B`V&hu~H0{=X_g{%z zx~yneW?p}$Ao&Q!JG;`awqdV5T-{9bZZ0`dS@X?X%i!G!%4bj8R5dV@{oa0aJ)Z6ypmsFXU_-CEnVnqJ_~Yy38Z$zo+l5i9@B6Sj`J(r-((P$`Q5_O-n3?4bES$F!=4heAo(;^nH^@N{ zr2eCq?NuU?6P3*FJ%((?0y9RUJ4FhiTcAui=KiJ7@p(1o5pEzsjV=g}?pRi)-I2wH zn?w`hq~6y!!_~sE@!o1K6eoo1Omeym$IEpGs7AW!FLB>0uT3_D={ZHkO+x(gh36CI9%cxjE@s|45sn7U zdp_N36kLDZG-XXr>V<#%6d%e#T4JmLKat9@dR5!9V9M8hcw)%E762h(vQ+5!rxL@+ zHiSzaFxSvjUN?eQhr6Z6tE;1CR0IntcO#Q;C7Y#BOD<4sl*&yM*L|$mrnnnP9VO!R zY(P#B8-(j{-a4AQ`lE6{vO`TkSqtb+XOhp66XM*`z!)gCvT!Pk7E8b*gEjjz_xMyV z9jBo+l?|#n&|fYIYNq!9wxVOI;KR4N*pX6p$PgZU)9T}vw^q)XLe*zL;z{?(o#!i4 zW*PnTq4+RCzdXu!7OAQyRq6eL+IOJ{zfj{qyyoWg_h_k+4oHKF+D3grPCAH${eLd& zrJ&UgL%B;O7eE3{#nrl8P-bFUh3hK3qMT0_?L7EsYBB)ZVeOYER#v50c4i9!#iRUW zQH0@gC`b+UnOi%3yp!Cqy_Fss5BrU5DGamycrvn>)_>Iq+8~fvyL84a=-IHxh^k2>tRzk@}tE(}oF;7ma3yri`E~Zf& zt|l}{Z`Al4ormUZc!;f0#Rd!O5#V{sIR zSZ&XgkbCO@csT3OhP0!9w58tqTtm3~n(Xf!H(7!DcCC681lTL=0G!wbc+B1sJef!bF4O-VrC?~^lzR=4$jdAi|9)5@n z8oOD(tSh&!AouubTIssvND*n+d9Tum39Uim6hF1U@L8dr$cw;RqdmF(I=|zomcnt; zbvoiXc$m9mr@ojN@L=GKR@ZJtSfR@s*fC71H@feEhGC?=c)JFeCnau4TgG6&Jbkuq zic%$Bj#36!i4uSl8TA+Bd7t5drvgx6F zBr`IXT*Z0s4`+Z~xnB8CH?dSnuH4La!`5m5roogpb1ZwQFu2rr-u-Z<|In%K1QFWI z+46=gQAuYkUUc+X@y=^l|47?6|5V~d@i^_)Mo{0})KETFiWhw!XuQRnqfTV+=9*N8 zMuvX@;p^G^j&C#3inx1Sb|5Rq#6RctZUvUFmikYfz)#;8?LBB2fMZtgh%%iD(wLbi zk7;)q4w@t<`qhr>?>*4nd|itkR;CDfK-1QUEViDxRkE-BqUW=B;E@cuV{szP-KjKl zj77yKy-GOXO%U;9=QC*v5E!%>4MKLuDLCB}-v3vS47QCzta^uh6)cRDCxd^%%=umz zjOFB}pV4?ZsP?A8Mkky-jP1ed+$bdy6{=mtk(=u-dq(FAlZkz`9C?rcdsRoj49`wX zl7DK2u|}-eqk0@tMAQN;8Ei;B$;Bpc`PbY$E^tG$7#3d44b(N;dSp&W>3g`&SW~W`e32CE~5i)JhDQt=ds147AS$Q9dX>&%$?<3ye@^p z4B#>-n{1&$pRTKmTNd_7C93^6MODF{qCdL%wT$;Y_s7uaScPIxy1@$iLJzNQk&U>6 zG0p~HV$xqIv?iGQvqTW1;g@S344^>~g+hh<4L7p-V&3X{2mQ0=S@^eV_-fQBnu8y> zW)9E0=FC{hG1~m#hnPkzrfB*zqD{}c!eucm$hv)*?S}oTns2!ZcvEJ7&ry@N+eXm? zGtl*mV||z+MgJ){Ls?l&x#-f!67zkAh1HbW#b0e&4Nd1O%_($OShC~lorYgo>f6Lf z<3tq}B$IdFN0RP*x5p!2Z=$QR%0!da!&eC&>dg%PRhCaTA5k}Uu8P9NObx!i#s04r z;2Ire`ZMY;#8{HybRksI>iXf(lzi#=>8>nnrCzKYpKOrSFDQ(%gZMqN>!}z5lBy|N z-({3I)2t{3Jrla7m+?X&-I3=HF?dvd?T;mLfoxk}wkhLZz=wTY2i*RJ{9}R#bPTEw%+yiIZ2ER%=Hk;f(Nm zG-oU^;qk}&CAHG?G?Z3*xOODd+{61Sy#AZ(B@mU|$poq2e!iS~2iR0u#pzcJ@H%UB zIdk~|9}u|pIN5W`Qt0ya15M4@cLKmKb}Ov{GjpGI8q*U()652f`L>0(T^jdR&|pDa zd#**jnC;6_Q&q6ind(e**gwL2h3_%FFNa1KGuWYs-E&&R{wm)8>Op zU{L7>Tyv?%G?IwE`X?g5tD!p6!$4?yC-j`co3lWA&zcS{b9i2i(4}qIUmg?2+%S!t&R{q_afFCzZx$F{nTMd}V+JqmS=-7+lF zcXEa;t7HPI%DJ~{A8)af$I6)&bXFrE!`yw!7>YgrxBJHS#l#8o#h>yBb{W2ZMg4Gh zep#9!FOO-f=29p2+s|Y6#>t246k?uoNIq>LVQJcNh%ifC)(zd(4bj^;nj3oO0pN|A zLJP~}htn#+s?nLy9{0j`Ji*zNa;!vbAfZs_o88jLi?5-$SQ!{jj?USM57EWS)6Ql4 zrp!Wn+wFRfhg+5~#Tq>{*PS`h|N2?r^>^{Hi#NI8{S)P$Alnut>8` zT!VRj*HEU()WQg8x+oz0gPOolO80@6v6nJzIwk}H?NxI^T#RFw@Vl&x)Q&HwTPxl!;@$z_Sd$){Q5Uz_e{>*lu5t+fFgjp) zEf?5yb)s+$BG`V4kn3xArlURYuN7cI;Mj_>j1;axWo;bPL;JhTD zj)zOKbIuautSoP_{H7GIWE`oE#t}lbg&Rh{1Z5 z?-uA*zPv8BS4srk4xk}ZCx|-CBb&YNWxA-S=?{cX=OXhuS-NAojbh68NDr28?pvSf ze{W64T~8!9f;@yNJBB7pe&+3JcU)-m`N4_1rc6gYYhn5vKohC66TcgS&)=lNtmd#S zl4ciZHi8{0Qux#_vuoqGhlmlyZ6y}<}oi2orMYlYtBnt*<_tWRG& zUV=Kz&dXbvRr+pRgiBptu(B;!1Xh+~#s#1ixGR~YDEgwYTo|C-2S1r56Q#CVhF>Z0 z1irlaF`sDpf^fn#Cz?zDAu#fvSi(D=@Pm6sA+D!`OCny1?(_Gcy{Td|?5m(Yq)*vt z%agL=vf>+Oj&|pbnBIT;PlWWe{yst-6c$On52r(9BihK19;d8i`vIHgaRIu&tKO-) zG=o*$^JTD6ALx=nW5ldw6Hpc4l#af_($N!g(Sm#(4B(8kHVkW>30)YG#c`gUi(P7-p(!uCzqA^L@SyFUo?Sz$qW)Aaqkq+8ROgq;yg*x*So%{-PVQ!;4Y0I-|D2S^h zTd7m@m`m*E6(3E;ccW`Jo$daBDpbV9F4y~;R z_uBb)!pw1W-!j})gSJY>J2=j!Vo+W* zue_)aADr5k*=(S4?P0w}&*(%@p zmDyd#P{r6rD}v#Pgu=}AbZ^o$K4Yb0jr*PoU;4YpTQ$mmN;G)YkLG%Lz;y_IL@9c} z_uJbg2-G?7vSNSm1E=$@Bz7AGlPJFP(xI#-v3H3uI-5TenE}pmF*HxRr>Ha9DVO9Ov z-h|}t$Vn3lTE?QXw>qEOSTNZ?@<0tu^?>8Ko8_b|HP<#8S_8O+)(lP|ErNJJza38m zaQ3PEQpo2UlR=X_V-Vm>?yRbEYcFMD-r{?<*U@y_no@C4K58Sgte|#*?QR9fuibKG z1U;y8<;4#n9S6MM_1p{cuKXrR`8xEyEM>M!ll^Sr7jVodZlIajE>=C$l7J0g)Xvi! zQi|8P?f>dKYBEAgPn>G392E^vC@ANLRP7xt2@6R%Jo0#q^$dDAi1l1A_iSHm<-`b7 zzj)*ihqn~CF79nme;SNwv8X|%sfD_Rwj0s!mRLCKZ|jOG)p;$B$jA8uOF4H)wrWpb z4<;7aNeaC(mBE7jgh_E9fb|N73A)=OxyaPn zHR5^%-%&We&Rb&-204b*HmR70bQ&(daK??~ofzZ$tntA7j$`j@iy^$5sKD%2rg#Qr zE=sEm?(JAcU5V|t68l^`ss*B8j`St)IKd{EeBue=rIJL%;NkG&rfp%gOqFCrhGj5U z8j?I(#WQK1TrKF7R)L8Tj-E_bpr)YR`N+tm3jPNC#DHs-#jpXIq8A<`$BqUZBwO~` zh`=;(0Ej7xp(q%iY@8KN*erkX@DGz~%Br`+W~=gf*5t^PP@0iyJjiRCqvlSOZ7alQug zWlY!CFmX6db>$K3WufZoxGU4*RmNx+=mY5z#6sDXzG@QAx}_B9hE=gHyaG`VcEXG1 z3XTn_uuzHcNdKn%waMgko0as4=yC=-dY#l%{Zd++%~c&=D}i%@6)9_i3w(l?2gN@G zUk(x6_*^#p&GHfSIrk8ER3u*x2f>{x+Dge=sRNZ~3fr%KHi1zoRRVV}Q55Ju+FQU! zF=HqvF9&ty%J+57h8|@Xt)U&ogOF`)xg|!>`=~R2uvlXb1Qhn~xNph@GsD}M_)q@C zE~^pta(qELrTI6Ok>Ylq4vd$SRIAT9S3z_!f3l_&ofXJB-n<1iLCNA=3`;7GdmZo_ z8#Zvv;_~)5?C(2Poc~ZTj-kgKk&4oJ{19?v0zk2@KZW(jH>X=P^fvr|PVGP90jyi{Q9(`_TUDQHTsQ>3IDgju~Z3 z7g6;84F6xknr*icsuI4ja$ISOmrljVGRT4WeqRuvr51>I9vdk)T+LjM5krAc5z~*u z52G;Wt3IjpwOB92eP&Yx@($|HTs6g`Gi&8 z?SYbx2~Ml8;{$sQvBa#p>iLdez01&3igbEy*d%6b;ZCOiT+)mz7A4Xtt1uu=Ko_D` zuT6zjY%O8Jy{i7@CR{7y?HDKZIh}xmFy)YdQSgt2z}$)FJ`>&2GsC1AJ-+;<;R^$n z3**h6F3mv8{_{eSzh+c3UXH}lJEEuBNsP6^MWy+$T|M{t8 zYL{^7GR7i+KtH{}mQ|T3Rq~a1dQPmlQrNs_+Z~wE`IKt+UZKj= zGN09=#pu~QElU}+QFa!tc5O7_a`tE_u2U|^_omL8CDM{vg)=MR$d#y?7hlQGwg2N4 z8@M}n2bBgzg?bYg16Y)J@9*SGY#;3bF=YE;mF+U-rdrm3c|zB-!OnVkpbOCJ+K~h^ zsPJ;cS9lx!A-&nyDvng=^LBuJd24^a$2W=S-1mjr#g1RyrZ3hsj_)d27g3$a$+9j5 z)G1@)I;-Ud8`IN@kizKdiwY#x#+(1$qEL|u<#pu-dXpX*Sq7IP%;XQ3{-}sNCtt{U zmorOw8l6UE3-B)u2Ex~Zk&2hRzOwb^c5LnG?7a#53AW=rkBYXWaVKKjk#rQV5s z0~F0!Q8mqEGkP_;@gm^sZfi9aHBla{k;nQWiovkk-oaVS@m*~yA{Yp}d^QG8zBhZ{ zC6G1`l2=WdX3KyfNa6%D^W8~W7$YqIfp!>$Ppw0VviNr|8wUU_K41KMgLOnQPPhK8 zhKLb!wI4QQuH^3Mja<_6rNwyRQ^WRi7A|^8+&FtF)~dJnH8GolG}EKOV*v-NS7mc zlG^&YplOxvnXK6D`9iPXj>`P*Y(dvtF@_Lb?+cd8TUFyeY(pgE$gGQkfq~@SzY>^d z3}CDjqLTU&qm_1HD^wmcgb5X=1S#*i7V5$5avV(@-lf}_KPpk#ja(}xN;k*%e>O~6 zxK_=_(dP>ARCnqn#b7-eD%>vxxb+C~vy%JVL6#hR<|opP@@)w^9|e_XAk&K1(x0*I z945V7DhfxZDUU85$mvP$pB|o)#}UY5QYi@<4yrxgRt)ZUkUh>r9eGFaezQXRhb`%g znlW#WgYCaE(sb|EqAIsDzgoKb+?WbKHwa1L&3kye-Z%*pfj$+#*xp-`9H+6%o(!^` zYCl6&dk;4M5+hlk;XqAR%Bj{a-n@$f&Uw^hXRzK;V*uHbZnRzJSdX9sHaVD-!K5SPb(Fi-uGo=~kP?0Cn7-G$LpFVWATfT_II=^C zkIxy7Fp{b|4q4W?i^G>O3s!+BejY>40vUaqnzlbz2|^RXm+ej)0qLnQO8iheqN8$N zrwEjw5?ZTaw?&2b^dEN62g(lO%me`d(Wc1eJY^5VVl;c}yO;H6oNlZYG-oI;hkg9? zkljfClr08&A?1ArM$y}emFo)Lb~u{ ztY1pox(XP_>g&3=^dJ7SXLp=kIef= zi8f;~tGz+JA4gBsTtEIgMIP3t&C7OZ?}ksa#TJEgbvG2Gl`o3I_>lpcmm4fl?IZ(J zxH)ZmYFpZaISxNF_EBc)l$b03;a#aP$gFGNdd-uf+I_mtCblHqk1G0_Q3mP>W|t*P z^wsT8Vdn1A7xLHc)TtYa69=B?Pb;o>wHLG0XNA14>Ou^X#v&h#E;n5m&W1;r2*n3> zH*zmxt9t8(Ly5FiFs>G>S-pm7J36vXuX)EwWQnl2{!%_%W}a^;b%dvd5W+)H!%kjN z?unt*xq!|SP0(xA!NvPf*y{s=fVTI}TNZq!B~Z;$EWm8XZhR^hrLguNn85Amf#Wh} zQ}h*_IC6DlmyQ%m=nJ;i?bog@ZmaR?G&KeTc{)7^b?*In zvkJtj^OP4+-o{o}quX7KCfi$opWMKmI6aAnet3{N;{W<63$IU)a`K^Z+f{Ai^f_E2 z>C;2N-mN=Y!QByf!0VJv2XKQ<<|q-s_fuKR^_L-A1sbzaAu;XQI=T)zkPxWF{Y9=u zXh92o6-~+e>IRA?1wUAMSv(QnGhayZsU>WZI{(H$E9 z9Mf%TO;aHRi$+5@%yqy|auYEvTWi_woZ>oR)yL6=x!=-6meJ~s^#^fk1fX@{1pLr) zQk{98@#U}&AqEzumEy@Lp}iafm4K#Hp{JB-r_^gl9qJse5WT+iX!?l$o?5EslZ0-2 zJ6p!%{Pz4oo4u4P5`OIji#nF=H;)zj{o&x6)jA zeS2BTWolp&yCBlxG;;V&0GJPOCATHM=*75OeVw_p!H|d87T#lt14Cw!C?=Q zHp}Ty*{n0}{%(^>v|cB@T{|+M?kAlRMOyIo;o48HW8{=N${E(2qyg9_@OviF_)ch> zMr(yvWvfLn>(LI>d$omXY7j~MGZ_^ss5j}wyO+s@$q-~>ExU~HPlE#{=G8NziSGkG zPE1r+4CoNudx|M90G9t#_Q#HPSq@aI=zOMQIHds6I(Ow(Rt}io%OZ!$-)SaS}*%kcp=7vW~}JehqJ%p zQPYhDYx47+62dFJHEJKIyqyoRVF-|GUaxKxL0jb73+F*(nIRZq#rT`b(wL!S_X|ej zr%gLh9TJDxpY)w3dF8Ow3*qR=;}^2IoM(L^5PHp}{wya$y7EzH3z z-p^U&$?yhUnX=V947Xdn6Z089+!j^kTA*nlT>5DZq%ivVQYb z)cVZo_TaNO^Tfg9BIFXQhuvR!B$^oyE!9$_J|ei=Fm|!$<)UF!bCGN=(*uRhID29| zMtoJ!Wf==;7YRG0*G5H|#T!Ro(|(6>GN_*qTa>BhJuNnK+6mOvtVu*6Sp3biX=xWT zk3>0`Qh%`Fp+4KiKpI5n?@b%Nxt5Cm#ERQldGho@cY1#N+}F}%F?KkYk-$qTSbzkI zlCgWhNhbWMsTiD|05P{C3I{_0>}NCwAoBWFWJRgMa9$#b8$g3N2}b>PsnhhyyQLOmrDO5Z|8yeyV&pqL*_&pO?Df>UxM8iG;1NYg$_38?#bgt7b$X z2_7=gzizIiLs7;O`K1U1X)?|xH006qT|4aj_3pOj@Pevw4=647F=Na2Z-+wRtLvH2 zy(~{#V`Ip`Zzzi44Sou_$R}eafr(igKe=>O6~DI$WM%p5L9<5dDH(183f=#L13C+P zJo;@--kanYu(0=!Rz9xDBwn1Dz1Nd9cP$$O!OaR6e3uWB2Ks^gv#hVAzqzm?-XNOYwjc(Vn0S`o{we>8I zKXqN&!Nwo9mdWNkt0pl3kdSpk(dbcejZ&olq!-go3#lJ5 zAhK-}_H-(j^^r*rbHS=WP8Vdl+jppKFj+wg!2h1H+xsB=x4SdQE=)@AX|(uVDE;B> z*`~_{wm9-@)DMnAn_6tu6~%6w^hKwjpGuIv6w@k30ly_`9#2@Qn6_Z-=M(D@3_r)M zygu4<7+i>z(V1C%O6dEN*5?>%~?TuZX}wAhQOHa+fN>G<~iK_ zjip(s{@a@RPQcZUq`t!Au%gn4{)xUrWZwSQy zc?gy1G@s)Ty61%gj3GO>(1{_1$?X3GPen(++aBtHGy<(xx*hz||IQME;!5;(S{+^l z;zgkwx&pi!>z(C*(%KU`nayWYs%TKmZ=5P*T`coMBkuQhR4hzn#uCV0Wa>k9D$5$` zdC%RbrZ>MJ{JAhz<0l5JR&Rl;pXu+P(L#^6`ovx^Csxy*1UuP2yT@M>$-H$F&bzJP z=ipxJX1bvoGcTLED|1_S7Z&RH#-T8w=X_HQJ|9i>r9m+rxEW;jkxY-W35hcDJ2$rK zCb{>O(}mpecK&CN$6l&*fKra5wOK>;90qx=<(o<<{DKr+ZE3(TK-&02gg1&CUBsck zR3V;!7ebd}j&1NFa$826=SWm(EH)JyI-286Ndmw zhf}0snyCl$3aTbxNt7iDMLOfDUsX(i@61`wplQ%K{}+nk?t;Olv3$Vr6!%y-QC^Y-LY<;_y2bP-L;N`O}B6|?-A#94mNfo zzplOn1K|!-Bqv$$onW2F3NRG1G^C;qczDLFVDDNRn&aQH0eS1%U!o|&I zf=ye6YAa}8lx2)&nR};q68rs=j+xs`PU^F+fELT!ceqEs>z|$#W3sw3{nu>T+=4Q( zBp>m(H6agSkH~3#3q6p;=rdG^LYmpLT)719Hj1-mecx9xx@!A`=IZv&O#PFC`tQ`& zt}}67fQVYyl}=X03DP&WV4dOQXCxHuYbUV`$TH8Y&+`B4$|ksrW(}A{lLg`>1)Q7U z$0$dhN+CP(zTc?9jQBB%`hdaabJmgg;q!qa(vDPXyt_{A^`@GtQC7)_pJ5u_3`VA} zLc*m)(44$-q;TyS-Iqx~n>xUU+&>#TXg|RaN4pv4pGIok7PjcumNuSjFY zI3E?OzkZ6I*)FO|gzLuG%8rm8XNrceoDu1UeSQP? zeD)0vcY!VCl{UPRV%0BL+iD9 z46$uq)MK;;-cGHB7Mx+Vferj{OO3Tu+r}>wN_xZbyGB+B>#Q=^BuT;#*wtzVg7R;N zg9;YOdg8wPMqsWvtB+GZ#RgkxInONq^rN zaIMED{jf{|e;P-=IqN$7%k$>fYd6N8g$#jl6C9n_VZ4s@C1puElJ;eV?oOwTa(gl3 z^d0jtLZgD3G!UUwp{nUGi=nQLg^D}4Ql$u83APo8$1INowauJEiX{W9bPcI?**J=b zd;3Q63&~ES6mkT*2ur5~>U1uw9$r#^J>Wr^rhn!tsg|a} zp+h$QW;c=?HuEQYtgA7U4SMYM>gWGNH4bTi&7g1l-yYY(wS-=Td?{I%&2+&-b%*L6 z8qX;eDnIht4V_~hSi$GKIqtOshGh$@US^jVGbtVq zGpR55rR5?}MjIJemD(WHswPt$_SGZQ?adj{hU)zrbt;6Z*S#*qXIW-jzvwo(@Fn8f zUduZ*qHA=kUfdDPp5-xLYIDBYz)>$wag^2R!Fb7Yb`hY)pd}9~5!S?KW4)~nt@nx5 z8QU5w7JBjY4f&eq`R9fZRMluM(zovoucIJu7F&?bHOn)6w0^h0FQUmmN~Q2+>wMb` z7cL+=K&Z>}^fpvSGI8vxGPXZoKZfMX4vP#x&JcQ53MWRYdz8KeRO_8@O}Q4M6jmuN~LQcf>Qb^qYb*IBRl28%7`v9RsaOJ4^Fd>n6@zPY0iNq={c=LIxxQuQc%rK*W9d$n(AYvx2yx%Xeytd#bRU2h zEY;bXHG+2}8_u(cvxqMdp{B>jf2_E|`7D}Awab|pEZ$aC3Xt($ibuPF9VT5Al_?H#@YPUTyFZQ^ zYI7m84zs6f=+ksR9K_t$)3nS~Zf)iWW;tEMUFkAwVO zpW!b*UH?`@i_iS|29l6q`RX6pKRD|1Sa`NdsQwzY8>cGS2JEuio%zb#hD8^qx+w2m z*Xh8BtDdHTK&GJrYfr+<_62TT59MNEe8y?zI~H?I9w~ft8{mvVLUQnFN0Rf0i{u-} z(W}PZN_MiA%4WCP?5l!#%}uo--AYHa;J$)&K@d$}8?xS^39eqY_gqH>>87a@J7VVA z`uy&#ak^$D>!dD!8}aIGK8%Z$PH1YP;E;DX8?HoIdsT%j7x+*|#m*=-d@5=Gz4CDm z#F5r2UZp4c^AaHzYxNGlK$2=McVBo!84LZniNl20^0S6NgQ@X;Y;*bp{GF}&1+F7k zpqzzUg@_Kr2LN5?*})Iovk~UoRHQUqNp4`z;#xy1hk0B)mGQ*T5iTS%%me`zMPqI= zQ3Dr7Ea^AweBSA$fbLJ_6%*sPyEvEEi!Vkk34YSv=xx90!?P=)>dE+q)aSyioH0n^ zBDE$8({>o9G{38xebw3=3M6%Pjv3tl@mJfA0IO>4`bS1YbxEELQ#xv=hif%c{O`3} zkjl5s_9iTc6C2eP!u6DJp?!!!Su-0GqQK6#?wSfCs1^{RKeKz?71bANEh==fbSt1a zdSYqj?GTR}%GbqZ)tPsh_TwPg8hoO!@HYN{kTqp{_YxHd3|B=~$B4Qx<=Q0GCJx$! zoDXeAi9F4Jvy$HDXGA^h5zN2FJ9&1s7`gT^_Bm%qTi_Qv@th<^Hzt>ta+FfF{0M6W zGnk0=Foy6VH*#|Sp*D_umpMFxpST5AvJ7p~YGd6qdb-9``IJCVe3D`0@b*uR_EQ`u zM*)SW=Vk(VloW~_-UIDN?$oVI==3>fi)+tEQYqWb5v8~?JYCpKkXb$&_VSh?(&5fgji zZ=`GA`zOYY2hXDh%F8^VUwJP@+c?-~DHt#QMnXUM)+>@=w%#i%2@v{DnBY+Sz>q(i zMN3hrNV_~++_BXi9dRm^@&pqGE-YIiJ(kro8zFnoHGx?-KBF$s2W^hTHgL?-TfA@G zDe6cYHe8FKz9QL=CBx!attU{4rz8jR2?59jd1LA9>n63@<+m+6^XV}Q|h>ZYGPUsajJFRa=q#Cz zQ$k?%`S$m+Rj5X8#K%>jaCQSvU02eoFfcrkuRbbCdH=j_hDYxlkMv==; z9c9+M1<70U3d^%mNu_4FJ7cbcd^-@!Y#u3^eSydkmegILtB?|=rOSz#A`_X2U3T!* zj{Tu&*W?m*_Fa-=f?Cb}#B^}J-@MiRt!6!03ZtGE6q^Rq4h5ftus`NbXkJL2w=4A` z9azOVPA7e2_=4yQ&Ihg^zwPO52{q{HNK$rMYfj5U?zZDZ{E(64Tt>2Mksd>+Rk{gKs^h zlW6t0|HBL!*3`$kPL9G{srbfKnlg-ZwnEV%^~lo|%snFYxm^<_y_)WTrHpUE2@x7t z1_}2%Ei=mflz{pQ6NbubdASkywgswixo68awz*%vp?$mhFRzVsq7_gdNTP5!Ns#kS8d8+-=exF?{Z5t$ zCzytzkfb_7ngsN?zjk>W(0I;olR2k;wwlkIA1gfk?aSOQyO=CkST>wO`OL9ept&cL zOJ@o{Kca2odf9WUn_*=5xI=Ors!w_wAx)3%WT}1-0NJnM?eDH9>9OwyspS_u3i4W`n=HVx@qWz~-LW zz$Du$|1Tai6OEcESvE|ZYg!xp95EVXt2S7K)he)rCbrp%rL$r(pse`!zMpN$`keIJ zlOoj@PsfEDefdOwps471hua!)QDuW~o4^sy!CT}=uAn=;YWZQhw*=y_5%{uuQvGn0 z6)n_oVU?((CK_z3U3nX+A!HX5n7g>Z)Q~x>onuk76Q`pbY)$hGfxw=)?o^CBa1LyVt7mo+$fwVaD-Rb9{N zm=~@U#6Ed)na_+z>YJClymV_cMF7Rnb)7N^z_6tJX63zJqegpGVbL&mxwfdCjQzj8 zU`v_za&Y&+U;UKIoE^Ik9+U14cLln}7)yTuD$gk3Yrz7OSCVj!F@6RM(Q3??xxH`;V z2>l8F!%G@(+!pqEih%XG1L45F3ukR}fqC_hynxRJ^0mLgcRQGTl9G5m=}%c_vBB&e z80o^A$K+J0WK|sRMsU;A^&vL=B@HIIrQU-QqhOCtfxPk`N*bd_-9}?BcI!dH-SfWI zXd{C~)(q4j!{U54ny;@P zHkF{d14dUU+<`A$8|zf8T}-Dz1buu_DXffY{qCFT7$oZhll@*;5;e*(7?1~GUgPRA zD4-jk{2&3Afar<$9VCbJW^oB=b(TL)qQDYyJyYo2u-P%18eK&()uY7Z*HUEfVJ#K6 zlH7%#0c{Ba=yY-yjw4zsUUS^Z=)hoR%L z(j~-6za6vl(41|zgBhX^Z_%}}v;y{s9p5f?g0rLLh*PyN+H8@e`Jwb}7$FB+9;<7% zq=-VI5d-YVkrTgbC;+Wpx;F)fRHH$^qJeoI<> zCR|k#y$EC&%tcg&=(qdt@Z?H%1N6}j9!I*Dhfv{>q<-W2`nWF7J2}-^4dpB?+f7TS zA3Y>XdB(Nx{a(sQ;yck6Gj~NgIJfedYwcye@nh{hYfPM>sx1uSd8@vN6wg};ZFtB; z#G()3f`v=%me7H*gF}XJ-S{D3ETi|*?hQ_j99Si_?6ybHP!CVyogtAX*61@h|O}p#ugBumB4)=d~6?&@(aciemES{ zNB9TpRZ``uxpV7PyrcI%zu1BZDnWVVt%*02}N<8*_d(Ts=DdCo19Xqx>`Z z=Va#>K-GRsx>ne>v5Y)zvmHRk;_T~2RE9lPEcABT?n8NRGn7PyH7%A{F!-9i=I5mS zQO8HMLuQ3QnSn;tG9L6D+Zwprehs?-jA!j_=NEM7x6Q9&zXLiKVF7nqe}e|I+_nd- z0MZ~b@sZ6dCR1mR{vb8ivgEa{xMyFV7120r=}7Jou$cmf7?0WmnUz? zld)e-JAVYLjf)i98;G=+?lA!JFE%4(Ncoc*zYUNxCXCe8_p&6qEE~-a6`4vxusCaZ z4aU}}&!`jXbbX~$k4$6Om~Nv#24>_d^A@sGxLX`isUl#vcVWYjxNQs z-h79Zu5+;#=g4<0k6|9+_dyBervfAVuxX$KlkiE^AyHM?x%xbQIJl1Qz0ip^`)oB5&^$pB2Tjm8nHOm1QmyP7_+afB;z;MQU|IV3bh|6N_cC)}W-y#XF>j zt^`-M=)@`Z`F~UN#8#m|;$P&91S!A&RzG`JT719Y_UjN_U?EVZtFO}K+NtVrL6Or~ zpb}D=T`?Ll$3mxLC~^}}V_{Jh3Pm>(@tAr}ZH{3x8Sk!Yz?3$Y<$P~@+Pd_~YK0*I zIYr%(|aI*K25fsIta{E=Qy(&V; zDlW#a#b@AeWV@>tq6LaEC|%Ehsiq7Ul*lbA9WPbB@M*OyUK6WPrYnP_Un*YWBb59ae#pjsfTXk(J4 z3kQNIM$6Nnc8lq-az6x;#eb7)u*g_Z)hg+%hHD$i_8bWyAoW&T=@uF$a3c6Twi*## zk|sBOBtB*S-BVXfy8=PByAZzdJa$>T8d`6R9FxHgrP&!BA+&0YPDPs;SD;rLR=3 zT$<+6^~H7L_EDzGcC>;y{jJYg+2GO!Br>!=l2Tsn%iKiTKPF>7#D4Ex`DM0x!8%9v zn;#QTZ+g_(+Gr{&p z#dMm?n!(a)f9xLw?({f^m~*PyhEBf_BwL>!cz-Aq9|rv-?Xr{43|nVg6ZpRG-ZMc@27!-6l-aq!}|}k4tt@zB@)pgW{Jf^@%7&8 z)jXd52PVJx*dpC|OeGdfP_(T5|B&pKFLtopt%5Gzqoh%4rkEldH*cb;5+pSTr&p}p zAP=kx2aSzdEvk7L8_#^)8mh99x7{LIhKvw_L@sZcZsKi^!(uwzOE1=5)~*H4gS^hU zfvBc-jCzE!?!Ll73FVF*3ov|oe$WU%Se^ZafJ5XU@DqX1yobT9imn!u_W4uNzmJ;- z35fz9?`kQq{L8TD6INaUJ*8`?K_;U&Cp}Hlbn%Yo7lKsS0tAsn5 zaTrn(pS1siiw9C(l&yEwz93|?=8&x9@7K`#9eEEJQjp*qM`x@^A1-92PKNf}C=^Ib zpBDYT1KQ#~cJJ?$FZUh#j(E67Apx=e>{FMz`L@Hq|62za_5$jIn7kSGKBW`)1vA3& z9G&6DML*vvu7EWQdFG6lDrjzvF2K>Z^P7NWNIfuKcIyv^FOf*{`=^ndLd zSJ1V@*ObY104~w}j*+?-_^H2yc`oxq?EL3r+ihjmTz%bg-~(Fr7=ryaHA;feompi5 z5%O@wx`W7p93~FkK}6x``Rjy50>8+bu9H=}48dM=FR7*;A^h4k1#JhHx{JRgwxMao zG9T#0hH-DW^~d6fqej%xuAX`ZI3?W*wM67ygdGCS9nvJL$Fm~Y{8xN*PD!ED5eG~W zXNvdSTH`U#Qcj}o36M+?Yd0(MA;|^|gq$MSGy3Vc$3&!u_IjolMa@94qZ(E;%8Z5EAdg@ zjaF7_x-0CL$U7{|9DjWSLa!aF&Tc{kTaL+$c$4>=GxzZvb!+D++T^nzs2x#oefe)P zwTd2KL3;!6Ooqan`E&=Q0XE)KW{~9QxDx}OFAV=A?0Xn_gU|COL>N0*))_<_uKb;> z1=4FjR7jla>)hhTg0;iOe%Ip54fkdqY`-I(r^Xna-My&WXjN zKr-8+9~(XV4;#trPT&b+xH(%ybMdDH_QUQ3S34D{NG|_@594>%VaC}pRqRc4{J;4> zRPxrTz29MiA3g=9n!yPtE9h&J=(S7zk_HApr*5hk%6X|m8rYW-MJc82M2OL9dj~@w z`R{(ZCOSxC8%OQ5La{|bx{hgZ4m20Y@iWY@&*zX8tMKAXdzMEhIGEpRCFTF~yg?>D z^p6AZpk4hMRQwDu58W4*Pe4`Cl_B=@d{#cd4_0JuFn*v9cXbe4n!3V{|4c^#k}|`k z7i_-h)-SXY&Tgf2lZqkHDDz(z8ko(UU0ujz{_^b;VzgL@^$S!>^F8j-&=V0~nm3K( zLg`%`bde(-G@f0`jqhA(VQ+Z0FVVbwv#~mRw~QYvzvzdqL$>_5KA;NeorYwc{V$x{ zIfWWf&ADbsu3rsygHd(D%+X@eHyYOIs3~vG_e_*p+|Zhk6rl3l=m(>oVUtfa+A<}o zrv_m3hz=Xl_EhEbl1zmTFdV@ zwD+)Kr2lUgz|TYkdrI~g%l>fF`M`dUivsMEX>T7>)*cC`D%yEV0kJS3>k0-om3*(_ zvega*{XrJ;M*yD%dTUHab0~YURYl;d?hLWV=e;9`%=}?1$>~n*KtGShoraoqf(~+d zyc-XP8(^&$xePfXEdnE>GP+7SSU+B^IC5fTkB&Pp_Eh;-VzsN|AU4W|unO7~ao(P` zuy;_8Cn9v#?u9cHG_A7vRyAEQo;#~Xy_}D85Zp+VMf7cFroa4%q*uBaE9-at5#C(( zHjNc-Jd1{@@&d=cRSyp#s-wQQBz{t!2D;<2fz2OwmYMX$c{0{6?bM}Bsjyl<1?6sD zW^|kdKrtWQkFVzaBijIv;yGtV=t-M7D^>Je!|}`5-Fb;lN~=hq-}YV$&C*EoAIbU_ z((OdW0_RRX>(sWs!pm4 n7Bfx? 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 b&eHvP@LO<2WKj0+Jfo?u`?Tzd^~e7KWz>n_ literal 0 HcmV?d00001