From 3e35e2957f8426d7a7a257b9cf0ea78ca7ba8296 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 10 Apr 2026 03:48:20 +0000 Subject: [PATCH 1/7] Add 23 new Minecraft-style textures to terrain.png atlas Generate pixel art textures for new block types and place them in unused tile positions in the terrain atlas: Row 8: Spruce planks, birch planks, granite, polished granite, diorite, polished diorite, andesite, polished andesite, hay bale side/top Row 10: Redstone block, lever, redstone torches (on/off), repeater, note block, dispenser front, emerald ore Row 11: Stone button, stone/wood pressure plates, spruce log side, birch log side Include the generation script (generate_textures.py) for reproducibility and future texture additions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- generate_textures.py | 586 ++++++++++++++++++++++++++++++ web-build/data/images/terrain.png | Bin 101708 -> 104122 bytes 2 files changed, 586 insertions(+) create mode 100644 generate_textures.py diff --git a/generate_textures.py b/generate_textures.py new file mode 100644 index 00000000..4a1352bb --- /dev/null +++ b/generate_textures.py @@ -0,0 +1,586 @@ +#!/usr/bin/env python3 +"""Generate Minecraft-style pixel art textures for the MCPE-WASM terrain atlas.""" + +import math +import random +from PIL import Image + +random.seed(42) + +TERRAIN_PATH = "web-build/data/images/terrain.png" +TILE = 16 + + +def noise_color(base, variation=15): + """Return a color with random noise applied to each channel.""" + return tuple(max(0, min(255, c + random.randint(-variation, variation))) for c in base) + + +def blend(c1, c2, t): + """Blend two RGB tuples by factor t (0=c1, 1=c2).""" + return tuple(int(a + (b - a) * t) for a, b in zip(c1, c2)) + + +def make_stone_texture(colors, variation=12): + """Create a speckled stone-like texture from a palette of colors.""" + img = Image.new("RGBA", (TILE, TILE)) + for y in range(TILE): + for x in range(TILE): + base = random.choice(colors) + c = noise_color(base, variation) + img.putpixel((x, y), c + (255,)) + return img + + +def make_polished_texture(colors, variation=6): + """Create a smoother polished stone texture with larger patches.""" + img = Image.new("RGBA", (TILE, TILE)) + # Create 4x4 patches for smoother look + for py in range(0, TILE, 4): + for px in range(0, TILE, 4): + base = random.choice(colors) + for dy in range(4): + for dx in range(4): + x, y = px + dx, py + dy + if x < TILE and y < TILE: + c = noise_color(base, variation) + img.putpixel((x, y), c + (255,)) + # Add subtle grid lines + line_color = blend(colors[0], (80, 80, 80), 0.3) + for i in range(0, TILE, 4): + for j in range(TILE): + if random.random() < 0.4: + c = noise_color(line_color, 5) + img.putpixel((i, j), c + (255,)) + img.putpixel((j, i), c + (255,)) + return img + + +def make_planks(base_color, dark_color, light_color): + """Create wooden planks texture with horizontal grain lines.""" + img = Image.new("RGBA", (TILE, TILE)) + # Fill base + for y in range(TILE): + for x in range(TILE): + img.putpixel((x, y), noise_color(base_color, 8) + (255,)) + + # Plank divisions (horizontal lines at y=0,4,8,12) + for plank_y in [0, 4, 8, 12]: + for x in range(TILE): + img.putpixel((x, plank_y), noise_color(dark_color, 5) + (255,)) + + # Wood grain - subtle horizontal streaks + for y in range(TILE): + for x in range(TILE): + if random.random() < 0.15: + c = noise_color(dark_color, 6) + img.putpixel((x, y), c + (255,)) + elif random.random() < 0.1: + c = noise_color(light_color, 6) + img.putpixel((x, y), c + (255,)) + + # Vertical joint offsets per plank row + joints = [8, 5, 11, 3] + for i, plank_y in enumerate([0, 4, 8, 12]): + jx = joints[i] + for dy in range(4): + yy = plank_y + dy + if yy < TILE: + img.putpixel((jx, yy), noise_color(dark_color, 5) + (255,)) + return img + + +def make_hay_side(): + """Create hay bale side texture - golden with horizontal bands.""" + img = Image.new("RGBA", (TILE, TILE)) + hay_colors = [(218, 176, 56), (196, 158, 44), (230, 190, 70)] + band_color = (170, 130, 30) + rope_color = (140, 100, 20) + + for y in range(TILE): + for x in range(TILE): + base = random.choice(hay_colors) + img.putpixel((x, y), noise_color(base, 10) + (255,)) + + # Horizontal rope bands at y=3,4 and y=11,12 + for band_y in [3, 4, 11, 12]: + for x in range(TILE): + c = noise_color(rope_color, 5) + img.putpixel((x, band_y), c + (255,)) + + # Vertical hay streaks + for x in range(TILE): + for y in range(TILE): + if random.random() < 0.12: + c = noise_color(band_color, 8) + img.putpixel((x, y), c + (255,)) + return img + + +def make_hay_top(): + """Create hay bale top texture - circular hay pattern.""" + img = Image.new("RGBA", (TILE, TILE)) + hay_light = (230, 190, 70) + hay_dark = (180, 140, 40) + hay_mid = (210, 170, 55) + center = 7.5 + + for y in range(TILE): + for x in range(TILE): + dx = x - center + dy = y - center + dist = (dx * dx + dy * dy) ** 0.5 + if dist < 3: + base = hay_dark + elif dist < 6: + base = hay_mid + else: + base = hay_light + img.putpixel((x, y), noise_color(base, 12) + (255,)) + + # Radial streaks + for y in range(TILE): + for x in range(TILE): + angle = math.atan2(y - center, x - center) + if abs(math.sin(angle * 8)) < 0.2: + px = img.getpixel((x, y)) + darker = tuple(max(0, c - 15) for c in px[:3]) + (255,) + img.putpixel((x, y), darker) + return img + + +def make_redstone_block(): + """Create redstone block - bright red metallic with cross pattern.""" + img = Image.new("RGBA", (TILE, TILE)) + base = (170, 25, 25) + bright = (210, 45, 35) + dark = (130, 15, 15) + + for y in range(TILE): + for x in range(TILE): + img.putpixel((x, y), noise_color(base, 10) + (255,)) + + # Border + for i in range(TILE): + for pos in [0, 15]: + img.putpixel((i, pos), noise_color(dark, 5) + (255,)) + img.putpixel((pos, i), noise_color(dark, 5) + (255,)) + + # Cross/grid pattern + for i in range(2, 14): + for offset in [7, 8]: + img.putpixel((i, offset), noise_color(bright, 5) + (255,)) + img.putpixel((offset, i), noise_color(bright, 5) + (255,)) + + # Corner highlights + for dx in range(2, 5): + for dy in range(2, 5): + img.putpixel((dx, dy), noise_color(bright, 8) + (255,)) + img.putpixel((TILE - 1 - dx, dy), noise_color(bright, 8) + (255,)) + img.putpixel((dx, TILE - 1 - dy), noise_color(bright, 8) + (255,)) + img.putpixel((TILE - 1 - dx, TILE - 1 - dy), noise_color(bright, 8) + (255,)) + return img + + +def make_lever_base(): + """Create lever base texture - small cobblestone base.""" + img = Image.new("RGBA", (TILE, TILE), (0, 0, 0, 0)) + stone_colors = [(120, 120, 120), (100, 100, 100), (140, 140, 140)] + + # Small base in center bottom + for y in range(10, 16): + for x in range(4, 12): + base = random.choice(stone_colors) + img.putpixel((x, y), noise_color(base, 8) + (255,)) + + # Lever stick + for y in range(2, 11): + for x in [7, 8]: + img.putpixel((x, y), noise_color((90, 70, 50), 8) + (255,)) + + # Border on base + for x in range(4, 12): + img.putpixel((x, 10), noise_color((80, 80, 80), 5) + (255,)) + return img + + +def make_redstone_torch(on=True): + """Create redstone torch texture.""" + img = Image.new("RGBA", (TILE, TILE), (0, 0, 0, 0)) + + if on: + tip_color = (255, 50, 30) + body_color = (180, 40, 30) + else: + tip_color = (100, 30, 25) + body_color = (80, 25, 20) + + stick_color = (90, 70, 50) + + # Stick + for y in range(6, 15): + for x in [7, 8]: + img.putpixel((x, y), noise_color(stick_color, 6) + (255,)) + + # Torch head + for y in range(3, 7): + for x in range(6, 10): + img.putpixel((x, y), noise_color(body_color, 6) + (255,)) + + # Flame tip + for x in [7, 8]: + img.putpixel((x, 2), noise_color(tip_color, 8) + (255,)) + img.putpixel((x, 3), noise_color(tip_color, 8) + (255,)) + + if on: + # Glow + for x in [6, 9]: + img.putpixel((x, 3), noise_color((200, 60, 30), 10) + (200,)) + return img + + +def make_repeater_top(): + """Create repeater top texture - stone base with redstone line.""" + img = Image.new("RGBA", (TILE, TILE)) + stone = (150, 150, 150) + stone_dark = (120, 120, 120) + + # Stone base + for y in range(TILE): + for x in range(TILE): + img.putpixel((x, y), noise_color(stone, 8) + (255,)) + + # Border + for i in range(TILE): + for pos in [0, 15]: + img.putpixel((i, pos), noise_color(stone_dark, 5) + (255,)) + img.putpixel((pos, i), noise_color(stone_dark, 5) + (255,)) + + # Redstone line through middle + red = (180, 30, 20) + for x in range(2, 14): + for y in [7, 8]: + img.putpixel((x, y), noise_color(red, 8) + (255,)) + + # Two torch positions + for tx, ty in [(5, 5), (10, 5)]: + for dx in range(-1, 2): + for dy in range(-1, 2): + img.putpixel((tx + dx, ty + dy), noise_color((200, 40, 30), 8) + (255,)) + return img + + +def make_note_block(): + """Create note block - wooden block with dark center note imprint.""" + img = make_planks((100, 75, 50), (70, 50, 30), (120, 90, 60)) + + # Dark center area with note symbol impression + for y in range(5, 12): + for x in range(5, 12): + px = img.getpixel((x, y)) + darker = tuple(max(0, c - 40) for c in px[:3]) + (255,) + img.putpixel((x, y), darker) + + # Simple note symbol (a circle with a stem) + note_color = (50, 35, 20, 255) + # Note head + for dx, dy in [(7, 9), (8, 9), (7, 10), (8, 10), (9, 9)]: + img.putpixel((dx, dy), note_color) + # Note stem + for y in range(6, 10): + img.putpixel((9, y), note_color) + # Flag + img.putpixel((10, 6), note_color) + img.putpixel((10, 7), note_color) + return img + + +def make_dispenser_front(terrain): + """Create dispenser front - cobblestone with dark mouth.""" + # Get cobblestone from index 16 (col=0, row=1) + cobble = terrain.crop((0, 16, 16, 32)).copy() + + # Dark mouth in center + mouth_color = (40, 40, 40, 255) + for y in range(5, 12): + for x in range(5, 12): + cobble.putpixel((x, y), mouth_color) + + # Slightly lighter inner edge + edge = (60, 60, 60, 255) + for i in range(5, 12): + cobble.putpixel((i, 5), edge) + cobble.putpixel((i, 11), edge) + cobble.putpixel((5, i), edge) + cobble.putpixel((11, i), edge) + + # Darker bottom to give depth + for x in range(6, 11): + cobble.putpixel((x, 10), (30, 30, 30, 255)) + return cobble + + +def make_emerald_ore(terrain): + """Create emerald ore - stone base with green spots.""" + # Get stone from index 1 (col=1, row=0) + stone = terrain.crop((16, 0, 32, 16)).copy() + + # Add emerald green spots + green_colors = [(55, 175, 75), (40, 150, 60), (70, 200, 90)] + spots = [ + (3, 3), (4, 3), (3, 4), + (10, 2), (11, 2), (11, 3), + (6, 7), (7, 7), (7, 8), + (2, 11), (3, 11), (3, 12), + (12, 10), (13, 10), (12, 11), + (8, 13), (9, 13), (9, 14), + ] + for x, y in spots: + c = noise_color(random.choice(green_colors), 10) + stone.putpixel((x, y), c + (255,)) + + # Brighter highlights on some spots + highlights = [(4, 3), (11, 2), (7, 7), (3, 11), (13, 10), (9, 13)] + for x, y in highlights: + c = noise_color((100, 220, 120), 10) + stone.putpixel((x, y), c + (255,)) + return stone + + +def make_stone_button(): + """Create stone button texture - small raised stone piece.""" + img = Image.new("RGBA", (TILE, TILE), (0, 0, 0, 0)) + stone_top = (160, 160, 160) + stone_side = (120, 120, 120) + stone_dark = (90, 90, 90) + + # Button face (small rectangle in center) + for y in range(6, 11): + for x in range(5, 11): + img.putpixel((x, y), noise_color(stone_top, 8) + (255,)) + + # Bottom/right shadow + for x in range(5, 12): + img.putpixel((x, 11), noise_color(stone_dark, 5) + (255,)) + for y in range(6, 12): + img.putpixel((11, y), noise_color(stone_dark, 5) + (255,)) + + # Top/left highlight + for x in range(5, 11): + img.putpixel((x, 5), noise_color((180, 180, 180), 5) + (255,)) + for y in range(5, 11): + img.putpixel((4, y), noise_color((180, 180, 180), 5) + (255,)) + return img + + +def make_pressure_plate(is_wood=False): + """Create pressure plate texture - flat plate.""" + img = Image.new("RGBA", (TILE, TILE), (0, 0, 0, 0)) + + if is_wood: + base = (160, 120, 75) + dark = (120, 85, 50) + light = (185, 145, 95) + else: + base = (140, 140, 140) + dark = (100, 100, 100) + light = (170, 170, 170) + + # Plate surface + for y in range(6, 10): + for x in range(2, 14): + img.putpixel((x, y), noise_color(base, 8) + (255,)) + + # Top edge highlight + for x in range(2, 14): + img.putpixel((x, 6), noise_color(light, 5) + (255,)) + + # Bottom edge shadow + for x in range(2, 14): + img.putpixel((x, 9), noise_color(dark, 5) + (255,)) + + # Side edges + for y in range(6, 10): + img.putpixel((2, y), noise_color(light, 5) + (255,)) + img.putpixel((13, y), noise_color(dark, 5) + (255,)) + + if is_wood: + # Wood grain + for x in range(3, 13): + if random.random() < 0.2: + img.putpixel((x, 7), noise_color(dark, 5) + (255,)) + img.putpixel((x, 8), noise_color(dark, 5) + (255,)) + return img + + +def make_log_side(bark_base, bark_dark, bark_light, has_spots=False): + """Create log side texture with bark pattern.""" + img = Image.new("RGBA", (TILE, TILE)) + + # Fill with bark base + for y in range(TILE): + for x in range(TILE): + img.putpixel((x, y), noise_color(bark_base, 8) + (255,)) + + # Vertical bark lines + for x in range(TILE): + if random.random() < 0.3: + for y in range(TILE): + if random.random() < 0.7: + img.putpixel((x, y), noise_color(bark_dark, 6) + (255,)) + + # Horizontal segments for bark texture + y = 0 + while y < TILE: + for x in range(TILE): + if random.random() < 0.25: + img.putpixel((x, y), noise_color(bark_dark, 5) + (255,)) + y += random.randint(3, 5) + + # Light highlights + for y in range(TILE): + for x in range(TILE): + if random.random() < 0.08: + img.putpixel((x, y), noise_color(bark_light, 8) + (255,)) + + if has_spots: + # Birch-style dark spots/dashes + spot_color = (80, 80, 70) + for _ in range(12): + sx = random.randint(0, 14) + sy = random.randint(0, 15) + length = random.randint(1, 3) + for dx in range(length): + if sx + dx < TILE: + img.putpixel((sx + dx, sy), noise_color(spot_color, 8) + (255,)) + return img + + +def main(): + terrain = Image.open(TERRAIN_PATH) + + # --- Row 8 textures --- + + # Index 131: Spruce planks + spruce = make_planks((75, 55, 37), (50, 35, 20), (95, 72, 50)) + terrain.paste(spruce, (3 * TILE, 8 * TILE)) + + # Index 132: Birch planks + birch = make_planks((199, 181, 128), (170, 150, 100), (220, 205, 155)) + terrain.paste(birch, (4 * TILE, 8 * TILE)) + + # Index 133: Granite + granite_colors = [(158, 107, 90), (123, 79, 66), (196, 140, 123), (140, 95, 78)] + granite = make_stone_texture(granite_colors, 12) + terrain.paste(granite, (5 * TILE, 8 * TILE)) + + # Index 134: Polished granite + polished_granite = make_polished_texture(granite_colors, 6) + terrain.paste(polished_granite, (6 * TILE, 8 * TILE)) + + # Index 135: Diorite + diorite_colors = [(200, 200, 200), (139, 139, 139), (230, 230, 230), (170, 170, 170)] + diorite = make_stone_texture(diorite_colors, 10) + terrain.paste(diorite, (7 * TILE, 8 * TILE)) + + # Index 139: Polished diorite + polished_diorite = make_polished_texture(diorite_colors, 5) + terrain.paste(polished_diorite, (11 * TILE, 8 * TILE)) + + # Index 140: Andesite + andesite_colors = [(123, 123, 123), (142, 142, 142), (105, 105, 105), (130, 135, 128)] + andesite = make_stone_texture(andesite_colors, 10) + terrain.paste(andesite, (12 * TILE, 8 * TILE)) + + # Index 141: Polished andesite + polished_andesite = make_polished_texture(andesite_colors, 5) + terrain.paste(polished_andesite, (13 * TILE, 8 * TILE)) + + # Index 142: Hay bale side + hay_side = make_hay_side() + terrain.paste(hay_side, (14 * TILE, 8 * TILE)) + + # Index 143: Hay bale top + hay_top = make_hay_top() + terrain.paste(hay_top, (15 * TILE, 8 * TILE)) + + # --- Row 10 textures --- + + # Index 166: Redstone block + redstone_block = make_redstone_block() + terrain.paste(redstone_block, (6 * TILE, 10 * TILE)) + + # Index 167: Lever base (clear first for transparency) + lever = make_lever_base() + clear = Image.new("RGBA", (TILE, TILE), (0, 0, 0, 0)) + terrain.paste(clear, (7 * TILE, 10 * TILE)) + terrain.paste(lever, (7 * TILE, 10 * TILE), lever) + + # Index 168: Redstone torch on (clear first) + rs_torch_on = make_redstone_torch(on=True) + terrain.paste(clear, (8 * TILE, 10 * TILE)) + terrain.paste(rs_torch_on, (8 * TILE, 10 * TILE), rs_torch_on) + + # Index 169: Redstone torch off (clear first) + rs_torch_off = make_redstone_torch(on=False) + terrain.paste(clear, (9 * TILE, 10 * TILE)) + terrain.paste(rs_torch_off, (9 * TILE, 10 * TILE), rs_torch_off) + + # Index 170: Repeater top + repeater = make_repeater_top() + terrain.paste(repeater, (10 * TILE, 10 * TILE)) + + # Index 171: Note block + note = make_note_block() + terrain.paste(note, (11 * TILE, 10 * TILE)) + + # Index 172: Dispenser front + dispenser = make_dispenser_front(terrain) + terrain.paste(dispenser, (12 * TILE, 10 * TILE)) + + # Index 173: Emerald ore + emerald = make_emerald_ore(terrain) + terrain.paste(emerald, (13 * TILE, 10 * TILE)) + + # --- Row 11 textures --- + + # Index 176: Stone button (clear first for transparency) + stone_btn = make_stone_button() + clear = Image.new("RGBA", (TILE, TILE), (0, 0, 0, 0)) + terrain.paste(clear, (0 * TILE, 11 * TILE)) + terrain.paste(stone_btn, (0 * TILE, 11 * TILE), stone_btn) + + # Index 177: Stone pressure plate (clear first) + stone_plate = make_pressure_plate(is_wood=False) + terrain.paste(clear, (1 * TILE, 11 * TILE)) + terrain.paste(stone_plate, (1 * TILE, 11 * TILE), stone_plate) + + # Index 178: Wood pressure plate (clear first) + wood_plate = make_pressure_plate(is_wood=True) + terrain.paste(clear, (2 * TILE, 11 * TILE)) + terrain.paste(wood_plate, (2 * TILE, 11 * TILE), wood_plate) + + # Index 179: Spruce log side + spruce_log = make_log_side( + bark_base=(60, 45, 30), + bark_dark=(40, 28, 15), + bark_light=(80, 60, 42) + ) + terrain.paste(spruce_log, (3 * TILE, 11 * TILE)) + + # Index 180: Birch log side + birch_log = make_log_side( + bark_base=(210, 205, 195), + bark_dark=(180, 175, 165), + bark_light=(235, 230, 220), + has_spots=True + ) + terrain.paste(birch_log, (4 * TILE, 11 * TILE)) + + terrain.save(TERRAIN_PATH) + print(f"Saved updated terrain atlas to {TERRAIN_PATH}") + print(f"Generated 23 new textures across rows 8, 10, and 11") + + +if __name__ == "__main__": + main() diff --git a/web-build/data/images/terrain.png b/web-build/data/images/terrain.png index e5ede6c3e596399d0a57316483105e9e02f97e48..196bb8394d830ef5df8b1de4b8aa1d4b0491d34c 100644 GIT binary patch literal 104122 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

{90M7hK##>2?OSPG%`lF_ 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 z ztP773URB7obyu)%Zps!Q$bIt$oF0LFU^W>Yn0ZtvizmL|Bfh@>}T17)>>j(Mf z-7K0Q>7YxyJRBb%djHkTAdup-)8_`MJRmIEY8}xS*CS@dS%P z(Sc8paHA&GvvgXVNle{wK2x@YD3)quHGA>|Mi7r zf9~bn+~feFR3UfQ{`{GrAxD2}@`x2U$`1<{pTH;Nr&FbfCW0Z(Q1DlVuA!P-1iH-*bFf~z)8G^o3$zEb1aYk+n~PckxS)* zaj$Yk()U$7+amwd$TGaM8CC#;h+JW{(BczgQ#LejO=nSi<~jrWt@)u~8KNcU-MUpc zC4u3V1yTw*O&zE8Ptp%x$R>0TzFg<-K)5_W0qTFOPcS_X!Lnj=RTlHbOIEH(B9u2- zam*fr7k0!{xL%H-2mh7d)DYwgzlYAHRCT?~TWZCl+hJ?Eq&uLo&aK})uBxNd^ar*` zbKQQ)5FU5d`c!_Gk{dtiX8MxR0}BgjP*nq(#ZTWwqL;9wWDB^-f+_e@(r8cDdSkB; zSqo%YM9NfkhvJoE?hZ0^=?x_qIt-Jhmrr??2gi~T33-~JdNmIYC+xl?a9H_e^|4;v zea^cbGiKrG!qi4&G97)}^awdC8kAE=_gt!~J<#6l$amtFFDf~deYm<+8S!|MXWYH5 zK;()OZKUC<_orHQM`30&xj8I)NcujKq6xNb!S|`S-cfYdKJ}|&)Idmm><`}u5x{h zHU^La%frxg>VL*Fe-vxzF%(4{y#J_l4I=##MGp8)S|u$l$#h-qNxblYiW{LczSQ}81gFT54)D@c@Q{G{#|ps4*!ynII4rcgUr&7age+d}r$a@2mqV*D$H}hP>6fi!|68bIx;HOD5+9|XG z!y;Wp_QeqC#2KqY(5Go;tbaNH#E0t_FN565DD+}1n<7>E1ZhZtp8fnn^2p6jPhzR1 zV(lV6;VDHF`DatbZ^Qx%4p25K!D?L#?zH!bL?;Vzv^5#@7TG={A_0YkWRz690*HV{ z1yJ7r}Hz5v31zMF5{X9ykXO_;Ri-`iQx& zKc89NDXJv$=`XP9L=}9!?6{NWN@DtG(eelODL214d#*kNGXg|PGHmISkmprJVk3vK zVZC0)N^K(2EF%3<4jP@grYIT_fwS+la&!o^H|!>|*T$P4ZegglBW@xr-eFwcZdrh9 zSz&0g3Z=xN5KVt>?@ecl8G+nPzR0q`!2~PbGZU|SPX?pURrcv>CxI~hzz}NleOm?F z+Z%s%ttuW7fr)F$(Dn7VSczCC?v4KZj!V~TH>5TM!v(7){NphdSD!uuL-sI)8#j_4 z<}f_DcG@%kzP!^4JKhFF>#eh!l4L~T@Tq1LD99YMp^~uRXQVHmdX?f%i7jZ~kSKzS z+G-cJkpRfLb;Y#}GrlMR`e4gev=e=)B4Kv><^S`*ZE#HY9EUhpsD z3sA0DG<@*AfKvxlUj=GaKyEM8L-S){`zjtD{-F!(_kDYydbQn5^A7*lAnLlWmq%dRXD2EdpK=8u?VTr^JRCHDX?64KQrSPW zq_*+;`4XQjxbe33cB$PqHas)hj_CD=t&?bkL)d&>C+_c^HqV@u@O)U0zY65+u{b-X zAR+tmPX;-#k0~~8z#T~ltDy-CQ=5%{c;@3^bDLh!=|z0AwUfc1>NCXZ>vS=M;Z%vf zW_w^>-g5cZqaNRvdx(=K$o0L#FS+i6$k`R$^&7mPwzHPiw(T$i)g)vOh7-W_hKk@4 zc%CNOQ4$-H>fAA2*ds|65R;4{Y{B1F?`;M%og$B;eBoMd_8wV^-f;4^F)R~)A-Ubf z%>ELM$%>_Pbvq+0ZFho2#3LpQl8Z{a__;>eiK^c}sLw5I@pQV*EyJNb#AXZd4P&(W zp0xD?y?*BeUEAJ%8Oc;LI~@!~MT0udQ~&tx_LBLoN11O97|3+joU*Giw#_M|D zE8}GIzh~#<#_hf>{e5QU_)nqEX`k-%5dDcz&^sEFFCgULf)g0s}Vk_-cxM)yE5#tRSy0Q9IWW zmL2*09$wg747bCOi)W=y#7|R(t$fiVzfT_vTLe8FbIZ|-_eb0;VEYG>UO(o&l4hYN ztFaXt-f7@*$L==;&qAy9M$SSbVj>ndBOSft_1iG8Uy;Xy`5)IIw~R?%GCCeMyaA-- z#9tSq_c1d6@qf>-ZQQrCA_R;diyXj?fU=H=QcNC_08{Ky@_67rIv)Y zWncF>5U!^F<$v^gmK35jwQ z*$Te;+kP3{*58Po4(`3}KoLrp+L`aHU4Xc0N!m4^VNT>8s0t&zyysE89I{EyY`=Nkf!pXG@X7rTR89%fsu8xg4`hm&{VVlxY?bOGAkmC#PGVxX z&rIBL!B>U@ccj^kIubm>Snco@xQxc{U=?~MiZ6kP^B|zRbNCPH^r<%A(9tpR8PgwE zf3>KQ%N~OepKAycaRgnOWeBts)0d=S8Hr1iQe;H?1%_WdxC8;WyF9T%-p|62J#Y5V z%@_HPIC)GVF^4OpCmHy}aI3yUNBEfej57+_kh)xr*26DWl_yv$E>TlnDyOfg%p8;w z8O1mM3?F93#5Nng2wh_(wDnC6pVn$cb10s0-V0qfYmzNKdH$xj3DUAVV#%6ZUfPc- zc=qc?rNW-LMTG`JwljUsXrTdaVyTIhTT+nT7uz!4RJC<}h|POn^{T+1{mtISeKgz$ zw{o$OPtE7_z+W)+_`V!9mFv1d7LuTaS;Jsw8KQ-fiAZHNv%HC}S}uMAWvG3FZK(V= zy(vSJ<2G4+LMbAX75m5|$J*0kquoD2RQGjGv9aJBQP zwPC~N|2Q_0z%zMGA}zYv$gvAi(Wb-T_j~JSjU3x* zUev7{)ck_Ei0<&@gK3pftr(=Zc^j`2E~tx_BK;zzc<%%CO5_1jF{!a@8JLw?4J>81 z2obc_PpmPI?tFrNB>cfw2l8t#vF-i={F`^IYcFG)|JGbmFFYp{++#p}m?|UE<}h)@ zz4{s`vtBMgwE{Xn&#{`IFOxN!4W){Pdm0^cX)#ca%1x%0x7#|=pgt3C0^3qJuTJVNUQ43H%g7#Pl#DcKhcd^=iW2ti9Rn~*A0 zI-Ma88MvNrQ%cU8L<^(8%6$y?aX9?OrmL)fuT(fdZ2>Q@$h#nB5p>HzP>8@rMQ#&n z(o!;3<`i-!-3RA(5p4~f#;5Adrs%HF7n+JQRVrH3Q7AhRr7##8e0J$(tRN&TBCMM{ ztG_8M$$3_L1D54U)^63SC~p*CCRH<}Z*kK`zUFU8yk5hB8ssgnPAmVBcD066-(F6c zORsEES5ckzhre~+NxCE^Zik8#JSmggJ$N;J%Rs3`L! z*s(L}omZJ?&5cZDun>(*Pv3ca-0O|G)aJ*Yre?YoPh55Xo-X?(XqEh4hR^A~Buyvj zz%KlI6r4s1@AG>^aK@F<4|z!|pj6z%ZCHN*Y{j6rOrB0tke!sO3?m-GK=)~wuO!t| zj!M1|ugv6I369>fk%^?>clx2aN9blW?`1Kq&#{p>Vx+dxR*R*6ErDtCQn4-JQPb^! zU~eFi(C@2S^?6=^{_FnZSJ8lA@DQ`=JSJ0=5w0NYWJ{Xea5($F_!J{c!*3h0!^4|y zRdHL^vV@&jSUCfi`G?GFA^4iCOqsA*CW| zU@fIhx`5#W6ZS;|VeTfW9AoDYLmf9l710oW^tWMO=$HqlG?sM{24y^E=!sg_kobk# zB(706gGuVj3W6fQAHGs(YH|l#4v|JLSp8DunSS@>WaTGlZTqF-D>ox&sQEd}4JPrE zW({M~pJSr4V;z*i1BIZ6h(oltr`CkM`XHMTOMNn)rf z#@`hCGmKmGUPxwPv&x@i5#_b)qBnHKZ(}5m5>2zVo%6N9^pTzUQh2cC4y>|t{jdW} zUp|4mg3psC%--fPy%$zIIAu2)^-l(3YlY}T7tbLs6m!h9S9%!+sCnt0!CUTd=*kVVz?R6^Q%TyZAc=q$T=O+Jv#WhzqLvV|_Y$0OYU%8OoJo<3&bbQN}1=9_KXo*iZ)mdHZWkIu| zB%tA3#d$u<8wS1@9rIite-WtxJFobP*^0{?W{K=M5Qf`OZo)*-6eoxohOAZ^Wx*$sHb0~`I3q5XH%l>_i@M{fjW?c?d2{xLPlbPVZ%uhAt z((x4-o-K>LIJFbE_kk7Cq7JtC*Ve&>VU*h0q zUAm14+2lpR#$Ttfy%2)fW5^t@vhR-5qVlDh2`^@~XsAp%_N&OS@RN_t-V_~=T%Zql!ZnVC4G0LIqpv$1?xb4CX6`=!L>sl=p6 zx-R^&rP^Xv#PW>+p90mXkaXFmL^vC{>|Sl%!r9l`KjwmllatdqM!$ba;O;+Fjom4q zp7%jaOpiz@p1;=6%Ie3PRji3vGR>cjomGackWN8Z{BzMo(BE1}%%V+W^3Z_m)Lknr z-K{&TYyX?GsmUemy=TG^YB&@z-XP=ig7a=ntgZxFSlf4^DqYiN?*qM%5HoJlOLAqc zz!WthbU^4%t8U`$7jxVtIbmOKuQ171mFgqHX!Q7*fGo0KkaLI{FNP`V6ZU)xo@Z{} zj-Hk?gCD!Wh-}NS{#uai@^9=8=76#phD&)Y|Ld8L$!)LP{z9_zmmOS3fDL8#t|~6Ld0hYkveVtXpy*N|kI@m3!`KdhFo=a7IzlcRl>n8@ z_E9DZro)R+*J>4qL=wnbdUvKRR`V3Sa+E3x@+WoQ!)KEzx|WjU@Axjxq_wkVZ1LE6eA7@vHLM>nsv1kA)f>Yt z+aoZBovg?dqEFZ>2EVsw`P@84n3AvKQ^aU$C^Y_8+^E1Rj7G5b#UU8qJZ{5q(aOaVK=X2CFcB@=-^Qz|2f6`MmdewNq zQFHbiblmK8kYkraW(fJaX#=g}S^m&0ta9TJTukN{e&ii}?rXTq*pW4+enXUf<|xyUx!xe9Y9@ zQM(N{nC1=5gx&nU9(sT!3al)4RYi-S3RSy_2gdtY zmkmKAQB^G0>y7p6J(JX)pyoK#1gX|=CT+)7=!2fizFoo<{`&v!J$%onc2$@@FNQ5k zCq4k0AGVGSwrpCr`jDZ5FL~m{kUC`|-+0BgmYAy{^HeC2z*v8r$35&)RsTr9)7y~| zw-u}G-vDs>B>v)hLg6XM)f$`Ti)?H{jNPu8Hd0A6+o0E44ObOC}egku0;Gr z9wHx7^vwt3&-IInN~bW;emTBYOSq#rf3hMfN8`<5K{U=0YQ~1^*8E^U5H{nNO1M$T z>a^V*3eCk!3X(burgaSoEsV^0>SEV#!hIG!>6uGytve+Ft>?YCYL+%@fx9o)1GQlG zii}J>Yh+!z^SVl?3)6zGifEcnKFLB03PDL3x_16Zl2z4u#plN_d8$)4i z$gl=%Irm7gDA4}z2ZcLCV(9&|-N2rYmB@f9Akp0Gt^-pF(0g6Ga z;By`JgjA_r&B`IDFf{6SNZYKCU}PMMV_@#O)SAitB;WjFAWw~vp#3^^kECXO6vqv3 z?g~!^weC)g#+dpKO{@?e@;CfH{JW{%5Wd(Vywq8Z`LcK+v@co)%K?nih@DyZ;W6PNY^$lxTF|z&c4Qy zP4ck8B+amCrX8H2CL4Jm=r0(3g^>PHfI&KT`RN$}S+p2^bxfGauM-ftJYrs~Lbc|F zIZSe|SMbfe?FyV<2CULB-zVk2s}YDl2hjF@!sB-|jov)i4OlG3hYuihaf&uno|UUx z0`-ti8%K6pkn;`Z#G~KH^hoNDX)M$-0~gp%NcEwa;i-WzIR&+zmh0wyg`@q~lT(U) zZDzsD>~VJevdMx?n{K8|cZPuEJSc;>kpT1=nlp|VR)g##P2$TN?|?R!3xYkYwqlFM zueK-{Q@_MLH}kQK>PJrcV;#6tyL}Ni`iK7{+_0WR(2FCU;r0W+tgQKR+l{KzvL$fN z`QwO(*Y6d8-p-IZS#518(wX%4j>4}kxC~20j%`&ioEqs5>a{or)S?>(uSp!ZFRI4` zxifhfHE%n>6|CxkIA$7ACv;P#$kfsYTl_qhm{2r3dAK6IGLj1vS+Kd{i*gwDoxFMN ziQ26caRT%3YOy5Ii|uGK#K@;=qeO#GJgya8d)1<8k-)>#CP>3|G9b2G{c!^3Y^_X+ zx$$>uMwbpG?o8rdPdb>II&cLSf11f78Jm6fZ8Gi1Kn9!@G4RwXdjUsh^Gj%~>djt% zE(U?aNSo2$%2|Zx)C-UG1ze0PW`*6~n_4+E<5|Hv_I=X#x?UpPybc--yAi-mf2WB% z(SjGpAzSq|&&HmGQlQ+2h!wf#GVC1nnE`@5$Huu9@h2c)*6M{R$d@wx(nITP{F^4_ ztBl^TM4v)3r<;eGXycGl-J|-)^yud#VvixJcrY59+66zCT$z_}4kmLpUWJ)l8J&iP zxMZ@Hf07K*i07nNo%qO3JOUQvV9#m!(C={G)%vlERsI_M3Si#8;eY%Tq|0_fw2o~y10$AmxncR?9Fo8WAfOo^wS3Ga?k}OV@dfe<>eVp;JHeor$t!9|2Q|Yol`E|urHszsab!ey7MRx@HqvJtS_Mxu6z87W|0d*L==oY33})y&2uVAuR) z{*s$i+<=?QY2tSY__jOv_V$_dcRqfyPfb_1Ed_w>BcQPtw_puw@|_Ko6rEzp$}2Fm z!u{6$y_LYPidJHg2?_!$oCsQ5H5TL42Y)+uFxt{TUxAsp<<1Y3?B?Va@m4k;(NEdu zfUi}HQXEOb*6&T7!)NCg>nvHfBhX6AG<66v(HsrDzPDfQsg{?MSUTUja^k7hJvkqou{1gD{+yZ;jLnN7 z_@*Vt6f#z#GKJxTu7+WL$tb>AU#N+!qiZ150%cPhWGM%NL)~$Wxu_!$mt-5}aVJ+R z;V!~>XnJb-+dKKZSNq0Uq36Q!%P;rSPEp{+f!_)=OV~VDsPD)skYic4a^z)u1?%fE zv)hDC>R3dzvF|5=>(TfLQ9z5diiJc*Nl+018*sTIPd2x4=ZgtlNqhcr)rPfdjS(L0 zA4+uWk%#+nzjchVQ6QrRck~CJZCqvuc&8VK|3?<~Ov$4)PUOvebhG_kobZ7Lp@8;y zM8D5sJ#Py*vh8ms5=3e51)N@O)XU!0AZnN0fMG=t(zi;}@PNX4^)e(PJ1`*?gOkWX zMT=loa*I-Mv^TJ{ED_uc0P`srLL`sZ_eiXm1wEsG7S=NfP3u003O}sG9}6iwkf^kj z__Inm6_z?lX43qJZa97HNH8wuc&}?#IrT1FuRbA`aAXdGx}w0i(DT>pFnqce_3aiv z>~jz1EW@Ju+VD{L``AC2^{zvDB=wV_ahChyYNNplt3&qP;2o3Ps+og(!t(UuOqSvw zAq(zlr1xXGLYa7R!^eCQq^CD{V!y~Al$nxO7R>>rcN5^ti(Ij(!5!05%}}6Nh@58N zoM)Z`f0^TH?fynCWx>Av>j1Z3t0@UqrIwN6wESU&kp*l+=xmi|H^{s=8?B*4$-qzDx_ESmCH_I=n|3ODDQ;equ`9?YN!pJTqEIUpvR=`~>p%rlR zuP>)ls^r+k5ucqdMQYN_*5qn5aHd|(6Qb$L)p2l+Ul1%P)v-a}p?{I%@tA{An;@@+ z=zBBY;F4O}6|k`)Nh#-4Ys;ZhU$;!h+SSxHEBwBV-%iUG#fZ-XW*5N6wrOtKF|zCL z;1J*cl9E!xsHk2yB}o6}3vura>*QY&p~F<~rk` zg)mykU(o+x@)4DgI!6fu3S0~hq-|#IkLTRkOzptIMYwI!`&`^h`IAH~{62j#8Dyax zSTYyvig^XZ9z`eQbBkiqz25wUP{)u}sNWQ7d|^rCRV>2-4)lg3jQQevHWKBE#5Oe} zj)#Ho>{lq6VJ0%TFKbsmVYCQ$LK*!J{8-*UGGQMiw z260+Qf^Pm!ZI#3#_rdj85m?RcDhJ-VV&j}_u#}>QfyY@QD%w6ik(hcsE~N$z5u&x-PPctu;U?8 zAT1I!bBAmr(g8kn&x1YLk{26>kbCrWcoDT?ka5HBV z0T8UcS8NfgGmJvOhm|uJa}Ork>;${xNfM|ZxZaurC&$xbrRb9%xgu%B9otS9d*bc) z_UTpeRo@4s`#@&;WAtuhVnVeyA7~pXB0ALPcV&L!EuQf)kgzRtIF(Y`tSkI5<`VJt zZv2Y=xykZ@L!Z)Ubtg^o4(mD{1d2$etcdw$u6G#E?6IW)^MXHPOPo41JA!BB1NNv} z8yddf?3z^mz)}E-)R-M7~(p=R1LNV&-OB)G&D5K_0~q~(Qy|>6?@i; zfaI3^G^=fR8UXS3IAG)9*oQ3wLZyz!utMJxKp8%8v@9Fr(75wNH;hR4{a}tv0scaVauIhWEq)Ns! zK0h&#^!*{r%m8;iZ95V+wjnHj52A){S0=sQABsGfPfb#0fD!*r!LJV z2G5)O@h?#VB86^n^+f@MeA=IYYf#h35H00SkayI#dnakbInel?$q|PD016hc3(@~_ zR?jZz4jtiG#6KJv{|u8aZC;+QEdsV}?Mpvj7O8Mrj$CV5p={JvwOVb*W)t!V znfXVtTJy&$Y~c^`vNgU9@zVY|vodZ@aC_V!GA4I;QK)hlb>s{g8-=Mlc2+`V6n4dw zfTTEBANx!J^h`Q;0~#c8cLS@Y#$Uzr)wFb!%)9DnC8 zCa-|n(5Z4Yy3*?+F-VYel0TVSa0$<7W{v9Nj7+)^#i!nxAWu3meoi1)%vpJ~5u25~ zZNmnZIZp^` zi@NkYQ67&Y92iV_>GdF^MdGncCu99;Y#mY=)6(wN5~)xguZA%Dz}f^8e`t(5(%Eqj z8u;Q>60GZ*Y*5Orz9ZRn#=LHa+yv}v?{0Ws|7PiJ*-n3x_~3I#-WXmZ5qPo9zb`o0 z7~oCV`62~v{ko1b?mwVb{&y<|ecc4M;2$X0g}U`_(~4~_)Ax)3LIIR@;%7{XfCGcR zq01y(x%}4gw+YXAcIZcUY)_l`LRHDxBlIjm`dd&G!G_>(eMWeFfSFBX)SSeGril}! zr)eI5W^(e2{vmAno8BK54`4}9p*wgjZ%Bh%Sd5jK)Aw_i_QG1v_iBUMriJy^5pNzo762IkE`oNnVz?OlE}_JfrekN< zsVmG{{&0rnA>bhfkB6k67^;`y?Qs{Ro(q%0&=3*Vum!f6ez6BFeAbxFnBH0mE~<* zD^WuL8Kg7s1{wYnrpOoQxd7Ll2n0JaJ)_(lsgtnf9~O(3sio_`-ex(xT#tmKz!9)e zxm;Hs{86-_V`^?rP<`yeE`XZ69mr*QL#hfQi)YsXQphmGS(dTBM~oABq5Eti&tCQt z`kHIUB4=`M+=|9-uaY$b(O^KjA>4pyQjQi8K80+0?G4`~^nG#diTp9xU`$_RpkeMP z+wP2;Ag7;4r~YGml=HXKI;wGreih00SrblD>?e1I7bTzP2OMuLY`5?at2Fkz8?dZOi=upt3gj(?D)|LfmFa z$Gg4T8I3|#(7bGkd|`l2-cKJ|2~2!lkbLeU+3$`|ze{D>!uUN0n?c2o&bMt)R? zjQw{&eT|26GMjfpdjpEh$X(8EKoQl@42D#jG~YH?H>BjfDl@ zIFyb=5_!ffkfZuC{be)Y-&n^Xn8vN8qQS)PM!nqxO6>4vOw_&2Lf z*QW=-VAYsddg^FaRFMhf|{cLXe5r2cxVg)YUrJ?MSe zDJwfL`uueAUVYz{etN|Cn76t)vD$gG#gC%~1e`H^^ylnu$>Q}MPVbJE07S-&K3582 zv}%{ZzkEhPQ#!uVj6o|Mh(ozYURmqTbmjbg(#!fcux}m+Pzz{^#QP{kVh#q|n9K`#5Epw`Wi1mK796 z#%6B!upS=)ZU--`xC9;1Y4->|)YRde)FX#PeV&P9Zl<@htcREdj%XU%aCtCNMW|R2 zUdL3w$d8`A{CP!CBI2e{LvGMC|B0R#p21C%+SU}}SC8e-<8o9o*QrBP3zf^g@h6ce zFG0iklT5R&41aW*d<)<2_P0H@-h0~efN1tdhd zIyb{~>&038Q`s-k35~8^vRKpHeiy>@j6*!%4*fcgYT}j9Y!|l_w8`ij7u<-`@)`9M zt{uSnkJaOMvYquj518_$WoD**2={`5x-7x&OHuzcfd8rT-O0>-S;Dp?e@WoYmrR;;J4OYf2 zWH4h>sBf~d!O`UTP9i~Zqug>K@RY~>1VSOU#~@g{{LS-Hj;>~~Gy9}MMWz+1C445I zChnwYqaO$|tuZ>Cx|3={2zfzaU7j1(*-{?mr9GtF7M0pYc)thM zk1wf3?RG!xFx79Ll2cO(2G@r<4b(D`6}+hj?2kH9Hs8QG^=%y%!4mJ&?0#}b+~d{l z_N7?%D6v`GiPr}}m+%CjdIA$rZ&{39`B!gt$C+R^{UP3@1cG+fX08;bXBu4n0u0Vs zz~4bK040&D=%L>%c07lJf69Dm8H$QwZ&;HG-!6Ws=DxD@Re}lMMSh9<35*)v27rm~ zsnh3`)jNsEQ5|MNL1eg7hu*wft2OC&^&dw%mZ()Xbc0wK*ks2piJ-_p5iHh=IlxHq zi2Ja+FS-F{=7+O_#2T<-=W^ho4%GQl>1=p4@Ut9z?=6oq|8E4rF;cAPxOi= z>yiL##0_5_e((_F%U3JlpQvl9RsI)EGyR2d*IQ+8sUw#y5ov2;KiqgS^vH;{J&Yjs z8Y0Zdue<`D{^n;dD`Rd`9?R}$FY4P5>Xqi5-B^2;F=GM_T(eLxGnZfT5M=I!E9;SO zHNEG;P4w05fP|Wxnkfw2%4rvZluoqb7FYF3&1_apM@MzSNb62A^Q$KWa_Wqt8nw4F)lTJjG2o< z5W`h7Bgm)n$Ej6b0*2xU%&YM)}JBfcc?(^zxhaP}R?}Tu z0x-E%n-SXB)HcF1pmEato+seBX|A(j`$H9Jq<$KPlN0)cOQ|;b&KLDj%L1^R4b{pA zE@e9Bcb5DNsWbN{;Aw#v$JDkbw~B zYFzw{ghe8$7QQ)7MJx9hEbR+&wAwK|2YDf#H=2ZCj5fH6g5=ZXUnv7M9Gdr^ zRwk2bQ1fCown1v#Mbc1|6?Ir}+6lVeTcYXwvR*TKl z-?MB^Hc|U|VW+A-Ock|E9g340Q42RQ<}RSVEtW?+Nr0z@C{#8gkN+d(=ZaQKY+TP< zvq$07*Q_V_27uYfC2J7cE4ibSLulu?u;7oe%H|v<_LZ<8NIFzrvK0M51O3}aaGwoQX%nn5@Q`fF!nWV@WytJWp?fh|pt^xIZv4f$+`4b*+=2Iw z8o7%0$jyq)C*kkUqvV;HwFU*jz2yj75%Jt;e)qFD9l51XrC`S4RN zct8P)ZY^whUn13>e-ScyHKEH4ulNrJC)VVECR}n)E>WhqGi)P&H)aJ)<4P;p+O~1) z89w;wA);1Ms=DpZsG2WzY|zt&y88ptXl%LT_Vy|p9j4^hL?e35m!>cdV*dn11_FGCrQJuP!x47y7(W+g7dN&$vsWk}=ucl>X?X&H~1Y zQEUWg81>&imfIO8 z1#i<>TrPD;zOL?ww!F7TUxsfCPyP^aCq_*tBL8X3EfIV_n#GGNd&z;l{&#D#owA$L zc31FuX(#wh(mNs0x5j04UQc!wcSIuYigPTM26=M?J9?r3tmTBJ@6*PHn$BSM76Fsk zM(5@d8abX69^a=BXw;K*)ioHNI!Zobe~YVn;K`XPkWr$L)e_2$%s;5c!lE=ntF1hJ zZaNy?nUj;9DNG&I!LA_qOMfOQ28~xF9!R@nuRjav3_Bm~z0F3;*J$K{Y|C7$4O<-f z1yxPN#pSR9Yfa@ZE~~hx`8Lr|keoq>jir7NVt8v-YkdFu2+4~3@u<+BeL1w@7mR@X z_pmw#_#TuynW#8j4l6M6V|Qv9wclXHJv+B~%A$2sX1r6R-_Q{(ak{#l(qNhA^LZeh zG`u?>Fn>-fO)h7g^q77QVpeFrDA!e**~iQ~Mk|CO&&5@|k9u0RS!g}_Q^1FR;LQ7< zO#yS<_M?~;1|Tt`=lgr(6l~v18hYQK5EAG78{K_V<_$q6T&wjg4mj3`ednn^u01Ij zJo~9O`Iy!UE){NEq``?8#*g!JCJRR2?gG;CzcV#e(3Noz`iutW0T2UocLjFgV&I~* zZ0tUX>E)WdgdVOPjE5P2dlcCmbnZl4iXk$s?E)~A8LZ+imQA@_@TJ#ZWxP|7WTQXb0 ziw7Z-#b*)GBqf|EevwZQiOglKB>EIf?p9)KZyJqFTILC#@>a#= z(?%O!=S-IWd??nLn+&zkZQJHT4m6;6)nBQ(SUs^yY(87>(=4Be7BMO`yumZBwJ2Wi z`&#Z2NlnGx|v2rr|JzGGB4I4sLefoMyR zIgT|-nm=C1uc~v^Z;H!kOyvHdc#PjtG25T393T8FMZj6#;WeJIrYsSWluNCh76M5! zCP$VsjeVZpD-Jo^^BB*s|FweJGTt{uU{8C&02U0H8(-YOMVE3@__{7N<$(^MQ=oM^ z_$m{sT^gRR6nEj>t67`Fl2U+kuCbRx4Feg7?UnwBWFkv1pCbqO{Q(?)};f zjH8qVabHQO4&6K*cyvW6D490uz`gkWDjwULLsP0q>HH2BWG$#vq_X!{1i0wE-7l}0 z6l}#w@vok?Q<@0;JVe+HQm#UsJYy1~b9|qc=P2=5EUSZ=xbIyhsnt%Kyz(1%HMAx} zljp8z-E~K@HGOocUc;NeU$+$nQ=X6F=%TVvxHZGwN`6}w@oa!m`UK!L@4+=NTY@a1A4_SJT+Q@oefq7LvBltHq zOVlJ;m~}q(N#zQI{SS+b9o68F1$bG?SymsEJ)ajJti6q4 zZ=nb)GwrTBox6l#mJj=>hJS!#zlCbX5t{45WMqh`nskz?JGmJ*%l#wN)RfKOxcM+- z(W*|1|HIvrVL&Zjq|$#pmlvwe!2y~L_7f)Iu1@P!uej~pZr^t7zIIDz{n|O*ERs^! zD4!r3xUp0l=opcg%vw``m`5nCEUJPiOa9KDRajW++_`1V(Rs2>{%dR);;%8JH8*E# zP$k{NfRo-ko5$BRiL4jRIwA4iSY1Zr8YQPDRZ8S&Zy+LAekWK-O0T(bql8*Fcq~wi+Wnp^#5l z?T@c8Q`P;UDB&%~gbos8H#dd~C1eU&?2*yYv&%~m3NWVc^CcN(mDSzB}OI6i; zbEZC1V-(*J}?NlA9}~Se-hK21-Tf z0cY%2rLuK*muilmyBe4bD%{exZiOUC41!(Yd@X!P|DDmrzoR*M8wmLt&6lY$%=iXK zzTyHNAyQ+92DM!JrVm2{yV@bZ7Rr`t0ISETlhCPx*05hfhKLB80E)hAH&&sFh79$j zEY-2tvgvw>7A;NyB_jJeg1`zcz)KLMK4WXR*fHU6Z$1*L5~`T@uY!um$h?Foi@NSV zl~F-b)ggD8`L?l(BXs&~>+rLA-OCP#(HJm?2FT+rc7QB$-NJ=zzZpVzaBe~E>jRgR zO;Mt0)Pa_(y0&J(L^w*rBu5w)Lr2DIYYUE&4Oid~)si!9t6z~S0CtENSl4~klq`A$_nAM9z?Y=jz zxH!ccqdxG+!I5d6!1%j6xI3@pnHiLb$e$-VMg=>)f*Nl7N1T{!BD>AbE-xDF0i zAAd>wP%@CM(Z2?waK{s>7GI;7|&8l(#A(vbGFcm z8o4<+CjnJW>GHuc3KeuZjv4voCu99?nzQ0slJYMO<*L6&Tx`(?K4&m=@ob3`tI5pU zGJu^z|DkzU@3+Rmi?X|Ae7*u(H%C0nY00q^&1-IGu+b3PZIXdEQaAhWhRb~F?b(MM z*}RSk1#4DAR1H}JFz&%%8u}6B&afAHPw&pkJ-W@Dv*Hl_F>S2Xp%`elt;`gqit!2d zpTS_Gkjw51$#3XD=(>1TTFiSFE!W#zEjh7P*&1bM`$ zH*s-^3Y55n!WQwnM#Kr!hm;ubDCWg2zqQEGfkj3x!=vCbRBA2hzTSEcJ}6;@7UTb* z^k;Mh1heQ(8!Oud>@Njwn>uI)hY#95??@gzcXeVYWm{U?a-DukC1INpQ+Kix4hvrH=w^iaQE6Tw*TAJB_l z-3;^sy#Vl}m+CgV?Yz*;8Cg7aojl*e z^KdX^WdZHuMO5zs;P1488l%6hor&cqmxDuKgQu!RCAoi-Uw0E!-6v>>^3fTyY-MNT z3g5jLzF7sppOO%od%35Aw9KBHz$^)_iE(jfBYN?y6!7BW+HronQbrm2iaas49FxLE zU7QpXi|+dR%i<}vr?F8T${(D%{86k*<3NZrI&4rr(M?w=pK!?1?eLDZEE!$8BNcg~Ys=YzsLyVrp!6m=46aqj>c+ z97L*LK83W8H^>{kysdu4s{NJ_BtE{M%t)EG^!|Ls$;!{SJW&!7%$>H>Z8Qy!67jgi zMTyJ)O?i!8(J;gDv1`@Oh(|pal`QY z3Cvd+>KmS;%ghsyA?6-RJQNrA_Et>5zbmYd6VA2fFT{Q~WM+L>iv_)qCcm_lF_S5% znomSe90E9zVG0<(M%?z&=)y}9l;%8odU>@EP{D+hS*vY#gJ%*2GA)J#GBpPomhR-^ z+Ez9RjYH2u6k;arHeRI!*HyMho9Of=&MLyA6E|LlpkD8Z{e%k=_UBa(?s$X0_s7zq zq9D)D%>~UKn(Qsn2@(s{Xr7_H`OonHnKYU2A~8DO+Bwno!kd=9UXm>?g;_USJp?&^ zOf}hV+dlWTCP<9Iax}+;>rFs_Q;tW>sw>m81yg#v@cWhH^s0=ZA=Hs3Ws(=jn=;6I z%duxy?J7f}l1@?yIubc~zQ|CQ!@=N#_=k}toI7)Ua*djb)8s(tC)4Ywh5n)h*s4oy z%x$vvuLpS_=i0L>^frQDABZh2Ve24o0|MX#4e`2sys*{vcn~$}5C)07gid$gPgH~G zFI?6wVnDzM^~uu{ORE=giidZ!zJO~gLKKWBh0K>UhM&`Rqmy$q2vNRaRtc;njoi4kCQw-{AJt|VBZ;Y4rox!r3kFN> zs(3o-%9n|8cs-YQLe!@~YSYY7e9IG>tQ z5_to1*iD+b;!Fi@9O0k^03$~7^t3&>hH*}$0kwKq&L2pgdrjI@Y~1KOK527_#Wa;$ z$8Q?NrXuOufvHr1Gk-v1v@|x!cmMiNr-euG3oU^Lgrj1eJyB;+uWm$QI-X2*xz&M@Gc84*cJy{pKX~!; zZp)2@6pkDO1yEqzx&iWLP%$_xV#$o%fc#$TI^E_7KVfC+6wCD{3wI9>(C>kK0Y#QV zBS^ga&X7rCm{Af4fMXNCBDy05IZvoMBW06Y-tgZpenl`x3KQl5i>jH?^Ggc@!GBfp zuN~)H4-rPc9@^2~TxC*fzV!sMF+P4+2V?Kd6wk9Wl(rNN{0S-m0dswT!d z+L8jBo70xxs;UlLJLWj!ijvSNWs7_3;#FvemSPPN&OEvr3x0dvK_~y+N^=K^99WrI zsRxDh?}h+(NNX%q^QbE;)p<9HLN8}fvUo<`+CCWypY5^cIdKwpof7t#k)g!7YDT(T zWA85dPr!b;g19oL}x%qA)rVP6#5{vLkL5OlIAHLK4>~+{5+5# zVd;4!2eH{PT&&g~p3a*|l&DI~4{UqxN~)`8_Vxz+2QWF2CZwRG^q;ym27U$b3kcl3 z`-4CWD7IWDYr_T=HD8>06-d#(FB;G0dn$HQ>aO>^J1FG~g0C`4GTZ4g=n=@E5RVc# zQsLo+t1yf;o#E>D1@zbuuMwi?Gt)2; zH8}Lbryb-h#PtSi+|Cz5g0@DToB>$*A11aQf1*v@geU2qcVDPcM32Y`1xTtWAl*Vm7&Pqa%D*)RZd#firgzcu=$uE1j9^Id zqJTdME^`ODkaZq1kPq(OuG zl*9=O+uMqQ`K)(f|B2Y>ePdOp>simV5%+ZrEdCZkW*8J`s%PTU;NcDbbH3gA3#>V_ z9mS#dB%+`F&mZgdx$-3sM$zn%?Nn6Xh%Lxb)0<6hjw#Prn$j=gH;!Y%Jg{_?MM0Aw z+79|2dOk-S@`8hjLNV0j+@87{h0)|7!uHTSW8a;0e#fo6qvp8@1`VthV z2W#7QCjJ932NBB1X=emzU+pU;-w48gH#bgfP@YAm8)LWY+>oVI;~hXey%Cb=nMC1G zud!xgfkQ!UOrax>e9TR41lpXZ%OC;Wb>M2R7Et`$WURX@R0Uq*M2k*t1i0o>f|}L| zp*zNoC{o0L>|I(h3A2=NQOHQ$n4|NT#<#(2UAZkh`yRo!=* z3vckud^<>x6IdPB;l*lCJs#cnzU_^wPCRLos99r$5fq53P1uwD-8N1F;$tkoAZs(95}hSKy;h| z!td)jI?eygEXN!#Rz$#!cY6UZ3mLru@%!4Lw$jU9paClFb*T6VDbt{@c{rBW4U zg}bzk2dBLE!vTFasn3)jIAq{?*?Ow2t+?9~TKDD)(Y_9;Qn7#=X@iz)}%do8iFGX;gu?}h3YC~XT@w=Vih z_h8noF<{^ST1E~qa_rbW<(vp?hB(s-DURHbAG=cUIvh3Y3S#3#-T%@3^T*QFLfT|r zi^vM6g;8DIC;V{9T_o68;IDD!9b1p>^x=~k*7lSHhWP>qW(>51YGKzq26e9neWox} zMTS*PV)&J3To&J0-`5@2^W0jzd?^ zbIZ%apg3oK(T!?W_?;2-jkH$)lApXhhapE`@=XpV6f*Ac%q2sCzsg;v9D6$kdd6~%!Mt`?$R7b-{ zx!7ig@FOJ-^trv^qcb+Z^qkq+ep(bSmo2~B@3TIuZcWwbSOyye+xe-l*&~ZB57=i|*3{vem~@yiYg7b>SuMJ#d$biFC@5z|6;v@eX03XB^Q+R-DMdZ4SZ$kejFX_U z%d)m1eE-rE5`~%Bzg9d2$GN=qmS>$J{>b;&64=HuZ&NPC0H;6gj~h3Ikkq7y&2DZ3 zWd@6_Yq=aho3tliF4w4X_#!JEzjjmQ?7(B7715$}B{lvI{Hjc>dPru%%$g}57ofD% zyO?8VH;d6L46HfFS39$T`0G(#p`=DX&ZyrIOCi0>m_RL4R&H%$5GP5SG(JtrupF-) zGaR8dw%2e*-_Tb>geUi1uuh&Z225+*;Q%o^Y`C1G3#>gffK#!I7KgTqycpfIMGsvf z*i>|0JQTu9Vy(dhGD;%4x~?<(?G0up;GLlR%&!5DcQ#z+8p-R8dKa3o-UM=#!JsGE=oYx<~vhN%4A)cOW| z;Mmy>Fu|ZGO>(Lm=oN}Nu@RKS2Dj(RCyRW+J8vpVyh!z`nefv_D<^!rjRV7T&}&f>6UxRx zN-vLJmJAajweh28ac<3v<;tNNH-WIIRA~i!LgSOjH4F1hjW|Y;2URW`x~yhh=Tb=nIn|FaXwwNOxa;c-8C^WLE8?Xm0-`_u zMX5VKfh-am09I-2+5Vqw*X`r4Hc2eb7Rn^Z550Pbsi~>gx?ic!&&3D@JYqq3tstUJ z(CTY+8bb`%gY_Frh=HY+Kjsz80kj_4@0BpFmhz z%;+EqPb*mQMoh#I!^OWeR%)1AWXT*QtQ^BKjFLa*VroB-_y-UZ%ai|!aXhL;zgZju ziK8XiDVqN+J)#TAnX&DGu zx$FJgIn?kyV`1CL9-EZmrmdnMM_}m_{nON$$v9RKR}q77?JAmpzKR+y=0hSH16?pX zI`HhFmW7lwE(;~vf9Ogk`wc@~U2~eUmxKgOI4^%b{fGY}cFM<}%$nrS6x)2C`I%BZ zgDkExx<_OrcJv_TT8R-Gn*8wxH9Cf)5oO!z#->fH{W5d8H4SH*+O?!fH-!ZawP-nd z{J~g8Zl4@MKp)N^>5mZGa z#c_XM(%NAt(ooS^T80lArY1vxh_e5^RiV;<;$mDRVK|esA@;j4F{3$FQ7Lg8R0y-= zA|lFb-!=q6cxwMAZxFJYs8xlSuP*^;hl`1dCNuio{xzW-pD0%(P&8rXbVrCBlvP*f zz`$7iM@}i5zIclrlV+9wie*@j>P&8>#>pKn8;_d(ZD(~}(d4#0A7yKK=6=#rF*rm( z0+gCY=Tdm9wcU>daxyzRHLtij#iZjgIe&=EYC(18GK(3Z*g!yVBuv9)_;Z&Yk75o4 z60RV1tAd}}JS5^Vp{;ZMKtFZuoWtkxC;3GOEs8mwK-aFPPe{sl;ZmR09x*X}>2=(t zJLd*}SB`F2W91M*~^TCS}8Tuz38${Ir3Y9<`nv;u@RF@H? z)M~WY@GpM6c}j~`a~oUs{3S^Am?_3jXE*(;*`2K=9OwZ*6cAd?V1S*eSgvI?>6+cC zP$E^d$qc@eZjxE%4Z-?y+IY=!hP#LjrYJ%BD)yeH)Y0}{aq^4)Qm9SExHB#Ko?9GH#446McL{-15G2LF zcJ)0VnhL)xA>WRaCR%Oi@a|rOI1s-=5=`ma z?E{O=qa>RR!yzP`qoSY?`Y_(tEcXTY+7(nC%Vv!U={tn~2rbHF6C%LVx9(59^ z$pgifc>{K8__ophfhXs~f@L_@vhnMyZ@v%Reyd$|yVWk^Wsu}kWxMm|h0Qoz>uB7o z)d0b+T>@gr?LJkgJ|%GPa~i+@R)R1{u^M}xr*4%6cNB(#jekJY?PD1T>~$U4S zYw0+N34GXa`P_9v(q9MwtFX%YATV&f3T$ObK{Z)@nckp(*ONkGN;uYMOwZlc} zu*XBS9mEte6J1}%LG&;suc&RsxD11%7y zmy}%)on`?DL$puIQct`GT5LJxZjVW_5!1~{{%j3df%aO9ZIWQP;P+QeCHp^t(}k)D~S5B)l>hKrc$ft z!{&APw?~DY_%Y^hMp=munOEp<`p;dC1G^h}D)oGLCz;FIA8pYfB=>sLz1IVl#9pJj z&wjxf$kPQKYjg!EB3W#_SV~-i=)LxxneE8>qo|+Kx&W=rOPtUeU`Ma@2aXF(vSo#n zpj?#=7i#%IcV}M#Y`s^0S(4Nn&uHT@(WMT)*|=Ab*($ufHx)?KxoyHEMfEJvC6nIc z@8EvsTtTmue_=jNv)aBnt<~fBIQ$1H-%qg6@GY?14R@3U(}>~K?#}9+B(?)5bQdII zeiA=qq5iC_w|6Wz-pOvna;cbtUKazOgroBHxy2~P6CGfaW3$nGO$Ae5pxh1S77ww- zd^}hYzyFp%W5Nv&5#_72qgW9dfe(L2fDsLd6Xysk4s`sSpNBukddG%19;v0UjVEIQ~CdoX#n$;z8?lv+ONj7T*!6JWv8BN zVW~X-#o#aY?;CR~rE4YLz*ORmYc&}4V(_&R{zCCoR8?|1lULFM%u4+ajroTs;`C0A zv5MvNjYnzhYJ%es2n2MM-5O=hQ+nSDm)mJ#I>JF-7(T}Egp+;O$N0njx{ZIZQ;(Dl zMq-5Og1r9B03G2VF?SsAqYA#T9%=A}gKX++0xoesfQ!F%zh9a|#XRR+gDNG{xtMP* z$yAF!mjmlufB#b8w{PFh_U+r%8vL9Ny$ivgX^}c#{Ohm3UODw#jQyc8zCoK-En@JQ z7{9)A5Whdj=*TF;6B>nXg$Gk>0eF>uHmzF3rfK;0wQrJ2CAp$yF>Bqc*ko;H@Tc$b zsT(v-a_cJ%~>i&MdKE0anZrRO@HA*6p;QD=?{6qad>bbQ20L~f)oR1X$ z;SYbPZr{G0%Fxez@aOU>*J43eLoWnhD_uWoc;ov=317J|Ukv`k3Uo8Ht8h{~rE@lz97)RFG@D~y` zs+2Gnf}dmFdE?J8@59EQ(f3g6vnc;&Rrs?x-!2wktJ+@(ehw4hg6Z%7{_nMKeB&EJ z?fb(IKdgQ8o8LU`d+qyzat^?&`}=8c(w%heO#!ZYHN;><_tMugFX&;v(OYG{*uRXq z@SvLkt9}=xy(cgy{^$*pTw@%#RQ&`rO%u-c+O}<*cCI;Rdu`aT;r|!-Gu@~2#T)Z# z=U)uI@>(kK+qP}f&UC&D#h>XqF9g4B+qQE_|MLn9KJv&T8o-Z#{Np*_&outXBadi5 zxPPj}`Uz_t0PFahNy$oKkVV2^;hA#Q)z!wOMf&ia%SN z{Cv(=iJvQKU|eJE?@{X;IUoESj=YP)e;CO?Pd)XNcF#Tc2v0x#wDy&+d_{Qbsi(BB zeB~?V_ottJx@x@kxN)A!IDSVs$UUD~Lnx$c0h?AWV$-Tc?A|cR_kw%r8;{~!{W&v^ zZ{!hdTD6FQFNk!6gEaofMYJ~sczN}Ji3j+ucQ@Y)?!~wIbL8{oqPyFf&D1NusiJC-zLMsF|463-&*wq85U1IhupbpXT-ZW97v5mXT63<_*K)r2O0#gj`1$$(^7;I{ z@IU&qTdVByZ4G<)uJtDVi?|b;&B5x9(a6_4PBTQq6yyS*PDT@E_?Yz(;I3jh)L8HedX?d@!|P z&NJZW)FNta^Yg)1j$bUkVv#tT06JS(5PTZdo$4zKDMBmXU zf8G2^zNNi^>*q0sf%i|1AH@?huo^yl=tMGFzMi+`dQysts;#Gi}Fkmg6Gwio*+qQXWun%onr$zrA ztbWl0WXP{oOpPG4T2J&b^7f55zESLR`MAU|&^tLmXhLs#+Su5{@au5`m+N^1lGRG+ zf5f=?Gi!L?t)JJx4;A(9SeLRNz(?8y_}4;bs;E2Pc}7?h&b+YIhCYqs=c`dvhU#E; zp_vO`IX++frLG42!Tp;xBTrwlT1g}lEZPy!w`<1-&DG3Qp!xqI|VezRhb&mHPu zcp}dGH^j|6g7#;eM7Ah|pOnlBK+qSG(OYFRkHF)0v-RKYtlG!#jP?8m)6P-VHy`{* zS_AmkLg%ZE%%^g$Ho3>3xg_#j__Ku?=fcmW)yx-vDe1w~+SwR>IF4`i=eTb)z;AAt zW%9MJH<}^7;fXkb1DeTgU!Pu0-=QerXE+>Z+A>pB0ca!#ZRjuKKZr9JsctI=zyE#! Z{~IC-IT3vk1}gvn002ovPDHLkV1lppAA|q^ literal 101708 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�^ zh!9@Dy; zylWYZxG>IGf&=sEdlXG7IHO{Q5F+-Ued0x`ScSDo;+@L+oT7bobOlT#sf}?x>FMr= zB3S1C1;Q!`iAO1`Cn;@YPtEj$KpYG-IgtOmHE|KV0ff>a;K(g4`UU%v|QO!reBk2HJFQH{arZph^n8q^If3`SdS@ zixTeUIj5sW6PB6T2N+lGD=Zj5$yu0z}{l5ii$x)X|*YBpMn^k>C zBvTVl_8%#*YZ3|2y$7*hZ!BvRx`+Y`Mt6B~^MM1;sp_N(3d54QS+;d%saoo|UkYj} zkWzoa894wN00T@s1#`z#5+H`EvG8`XUef#TOd-{pBAzSneH1XC62szrG@#V zbN!%mx%e*=|A`S0*>BzACw~gdygR&r$W?yt-b0lm$k|$}{;opc2EOe8P3<%($2(vy zQF89R`v*Jw$1Qu7RgfBtC~Y_hOS+sEqMYk-G}M15X9>4&-Jamh0GhQk^5_dLLf759 z$*|vUIOQTQG<|Kf(4KJ|Rko-_2tA(T(9j4pDSQSrDScEJlZbyYv+_Ae6fBCE`vJ}> zbW}`FlQNFnabZ%A2q`l(8fu7tiWq%;z6aIsGaZ@gu3xD|X`S!IEX+BkMttKPy9-K$Cj$(JGcSg2UkNE>AbJ1J5>(gQb>LbE_48F%RnYjLQ#vE_FIjAtuFMFtr1AT8W$Om51!fjDZ}@;EdD49 zjnL)$>>DHJ^H)JOl9p~RK5n*&`G>nKGIKRR>`M)OQiuL=fwbd29yuQ@Cr|=1O;3!E zYgU$ezE3s&yDM5L0{EatENNv6*o6FE7ptgN&*ll5Uy@(SDQ8lKILeXk?e^@P8XJQJ zI&Wq!F5k%^QrM`Op6}-so%W(R9rs62fRfgOCqLx<=50#z^?!HV^YxBPaW}-dtn2%l zUAGTDGZph;`(>LI{+wTH84)p@3r|=k(0Q(t!js(*7tr#LSDFum4;&GLHb%h?ihx&n zk-9KQ63Vy04iGj>>SYHy-chl{DVC&h4N=0uPyu}`20O-U86C#+%r4m%+KVj&*pf51 zOHr(ev~!jNN$r~=!wlw&j?eRE{7vvjApQB2nbw)k>3U(^Z-iTz^>AnMT=yo4pMi-a zw_7KcY&a)6L(zHLL*Xi;A20@KVqoE*K6`>)2m&{PD{NidE)excW^+#JYKzT)ROu0u z!H|?EMjmTuA+&Z@nL#hh*u=d?H`-j*U)vQoNmZ(q;9;xP1xqlj5Qkcd*q>KQB^my$gv3+nACR^5Q!BmxB{g)bYer~ z0un;Odu0a4D&trlqDD-dn751j=;MsY0PLBA8Okk++32|D{ zRaf!5`t=%4S7~6JwZ}Irgz<;hQV!$~%un2kwVLh)a{qK5hEXX;Z)kYJS~ z1r2JUL)xC=y^7iz{)hgb1t*vNb`Q^tovkgy#tX0AR}8cN#nQ(%4?Gbu$V0=~yBUsy z4QI(a&J@Sq8$GB@7&i>B{8YW*^FWA0ms_Ek+$Knw-sWUh+3FsJuy<^x2!l z+Osmgq*fRe3A8X*0xUs%X^mJgDcONqq*`GJG=z+Vxhcvv8qtk>Uxs-e;IA(HE*7iM+bs%2+F$w60<~y)`C!ujPyeFMGd`sO8?rs?x!lmi;=)sv7QV z4?(nw7Lo#rpPfCq;0uPnh4r7}W#*ar^k%nTcdHRRQ6X7MSZ~iAeJt^?;e<(%}DC*x!ON`URkGbr6YD*Vuni?G}Ac-54h97hKk?n zf@yCKYoL?ZY>JI)CM%maEiVDZ z-j6@3D)8G)YqrK$o1GNQa|7H!u2<=T1B4ie1bkEps0Jc%3R71);iSiWf|HVsAz|?O z-%*iwW#DYU8W3ky{J$Fo7ogx|jFAWdpjA_NY@0B;NFl5!2zO| zD@zXoW%Q;HThlSpWm#sq z1kBf!wVrYxyoc;ZsHK4evbiG(++LSBmUlfCQ8Z%7R~C5z&-X~)UqevX@0`^^PSZs@UjqXW8W8pVz+`Wk2LyUxVKh&({|$lU)~x5WW~CKQ81TdA_dXz|WPoVUT9+nRu#@ zj%-B9=QQ%g#*s-yATUU-Ym)|2asGVQK-46OsvX4+VG8xM`7Q=s7k*8w?_6sG$7rsi z`Cu+BYR56XEksCL>@VX&4~caW3nEU?zh5&?A=^80NT6jyn2FVWh5Ks^Wv}oiq{FyA z2t#e`BX=F|N5q-DigC9kTvkq@E)0+@{3EBEydr~?g6EDXklo);geLlf>Kq6RZ$gBl z9h*FV{L2{^Jj&(oUUW>$GG4ZE2i7J!|#=5J3{FO;7|p1kY?<8dEqHm$%eyptWd?p8?6E*DrJC5 zy$2&J$~hn+VhROaBMF0-fd(@6aO+S{Eas!Pk;j`R^ocjnN~!w#=H=Oqqxft*;#s3IVnE6_-xQ(ZdE+ICXIiM`^4lRPB(;hjVy(wq?y$f! zrKU42_J$}ncSDFl&IxaSOThp58_v$Lb8`}s1d((N(m~W`sjl}y)KN6S$<96)0RC+N zc#cg#eBbv7IiEJYs+TngI*bT!EmLBzAAcX@|!8a z;acP2#Sz*{3}a(sv1kL`dC`J~IcYLbF8Av^K+yARPa&Ht00=Jm4|2kP0DZx|&j_4BprQkY=;+{})aI#cUF!|pT*f~^S zNl3#XppB8G=qzf24ZG%g>fqyH!h^+w_xr42rrkCA%m%HLlZa_$32=gJ@H|7wBW;Y= z8z-f+d;aNk&}vupMjG6e^}h@P{!M9k0V2beMHl}+3!tY2!yn-h8FCwz7NU|Q_e?fd@F;A53f}x3H#g1w^jS zEAj9mA~OVorf!;2#2V@P;#9)>}R`^kk*DjY}A-9%JyXL zLG*0DQ#OBrgdWMlXE^Z>Qra9K(pSb;}GRG~r#-V9Zm??p-Iu#kX- zumwlviFJg@lVXxTr$iEno!{HqBrtm_D=Yg4%=PwZZVt7+zCJbUZY}qj*SYBBqP-e& zTM;q4uugTSp0F*Qu;qdNeW3I+bZqX<`}Knp73F5Oo2%bUz$eUG@pB9xL`b!IS1jXp zR{@$BzPiuhSKO2)1`Q{3l2?XI6{cEbT1ODG3rmyu%m~_ZtxiMcPbs*J#wM=dh-~3P z)B>>Z%=6>PFe)Z=Pa6?^G*yuT&tO(_y~8$|wEUuT!<}*afGKy<=_zZHsN@Jg_bY{FyptE`yi zEkWA2zk7&Qsue0x#ZCUQ0Mg{=W(a7xws+K->8B5uF+ue<3{1@QtSl2xPaeqAlG4)F z)4%0&R_49}YH6E**V2FVNmJ8{7=KwuV+`Et+cPmbmc$&3nc5m zZ?6jUxe`sFM$jp=W9V2s29Ykap>T>%S+mFgd}Vq?z;>}*6Mh1N4Bqu}ihJ3LKPoXyDBgWD%2 zNX|PUVSjlwHBIW_`1;)r;cns6J9)rSXTg(gI|Jd{eeB(=*C%RZ!Ecz=9d%JsCxSchjJlI=+NMpnBLZyB7{n{uN5jq|Exi+Hc<_SR#1O&gpmIZh>R@I#;3kyI0 zE?DBAkadz}pZ#@}<~>m^)8k9sOkGdGt9O7j?0FxIgaA5%lCjnOYyeZP#I5uDg}zLN zOw`xc%R!^sp&W6f$jTK^RG&~8{ju{q=&4b@#ptPp>L=v^wbsm2ma{6 z^0LRQWenl@i5_Qsx3E>BLvO@h?`-3;*wf7f1xYX2Bux)y3K!vn+Kr6@6`HfdmGqQ} zA|ZNpDGZTdsX+`+a(;=m&KfVwgIaFD+~5-DSSh9vi`C6w3roW;W3FH734(hB@pyl4 ze`V(#g*=%0dAQ@^31ac-xjWEZ0;1l+;j$uh?%wTMA-5f5+S?RP2i5&O%8Yhd6HxIz{k3|cnI zpo{apo!6UJQYY`8Cq_U`U#aY?AQMEhJB7}V(!S4 z{k+22wD?@l!uwm_mISZ=>MLR=)$fZNY`R}%95r1xv;t`?fJySfKBVvGox2`ml?~My z9YJQiUZ_S}h0I43#S-L$$~*bKmr*a$yftmzuibxn_3uZA5WejzVkLH2&XPsW~p;?f7`3dZ<4m%`tuD0OM!-y;Pb3kUqfHU$PKXr#Yz_Jfm6$f-amy!R zt1TUIB|8h4alj*j#GA$oygL|mW|)N7hWTxi$@|~(7W+eZir`54+~&^XKD%Y)B z?=M)b)4$TNM(b?2rf*hSaF|%PjDB^AqxUY>(ghGYIx$b;{`)1oTYGQTSsoq*;*RlU-FN(`cbadiy4x6S#hU@)<;RqWHk%TxbV(^(K6>W| z`1@}~!oJDYimcd+Bk(7mM8UQvi~l)~AyuQdUR-7Pnsd<;5p~klXv2 z5RH0rxzXQc+9b!46cP8VM|VztdQDD=!~zk`1og#&dLk7}e~saNdJr~|7K8|2 z3D?NRCev{?6ekDQt87uDS^X`pq6qIffx2g0hff*0)%N!Yn)v}qQ3!d@9E!_DAt@X! z1ip+t!pjK7xoeF`S))jB*vKQsNLbpDO$f3Uq6##QuaMA0EV7hH{t4qg3<=C!foY?? zD&hjEMFoSyMh@;DRh*U;czS&zEqU~e(MmLENa3R8Hc}BRE>@?Mmvj$ra-zWSn@K6^ zQI{hoi9jgPFcz?=yi4{tv1eXaBM+4MqbUam!<2fbaFoS0i7m4GUPloQ1hZuT1M*KN znJP@FYS6hoQ;I50^Cln%{X!8+pRC=x?@AHM%=Pc5cQr_lTKOP=2LLF3Q86)fb#;BW zw=BGFm-``@dSPyJkI?O8K5`}6kgjpIrTGp$u;V zdlAC$0(7~tKSMvSIlBa1K`M*oxh`Qp=O_x~g3b}8{hs&`sxiA4LT<*A3M-v4r~DC$ zUxYoI_~b2KCEimcXaWwT)+-9?_DPeadIh&4?eRk9DL~k1h*RiCTn0NX79IU-#G`;> zdWC?lum-Bz^3WJ<#~?^E;BBx$-_p<$wPDK4#Uf-v!qp#n3Mz-)-x%NTpr?bhE%O7U z5Hi2?_~cRq8qQRNL>2`Slt0C=Ri_`SucJtF_FpB)EOhNUpDuT%Ol1fR*#4Wtq6(rcjOj07G+%AuJ z>e10V(9yMIU6=;q{$X+PJt)W;3>+wvGU-B6NlMH4LM~<&i#TE`i4J$>)!!vOV}!&) zD-*HXvNY};YfAY=_-BH#2r{)yJ*x(n{rep09k~bD)iJTp9fbPh>wnV7@>~?jvb~|1 z#j!mC2~WY7w8nd96bMbS3{TXei>~+9(fvuwthF^A!R9je!IH~{ixah^?dEVvJt}vr z7r%fJQh(1Y^fo7fmxK-nB$pe`xbmML@hMu7AW_0)X$HxYm?Mwq^XS`K@B3@+OndfE zejk)z)5ed-6SSVwxi1S#Of$S;>~(LM6Zk#|4KiZUU~0ADx~)=ToRb#6*OkI1VCtrD zoT>3gOngFJ`Q=M6z#WwhX5#bh=tR*^8!mIt>VP^LtVYT}9i*~J8Qse=wzMr>kPxan zbG_aBPh&Rc=$S~S_|Z z@e|Mv9f<3N)E!VdcLcENfC`4fkY3nb2C+5dc^7hIP!)p)VU$Q08O?rkA(*jA3RYTX zCXBNY8HiBiAk+ltXtn~M*bs^VR9Jcv5qu=%S=cU@Qz{BDi;Uo*flb|>v0c6+ooMw) z$t=byI-(*m)Zgi>cbG6>@>u3k__YmKSI8)+4UP^$&9lk zVpbM&Ar_$)-iDM~I&Adva>#Pu{;L#Nyx`8s*QK=gE*^V>Lbh6^tC_nZ=4GKo-VL+$GsbnxyFGSDV(aJbecq9GPZNcplX7k=$#4)vt&(huYM zUY2ScBu5f_dIBX9p0wM})*h?`);=vlRHm>b1YJar>>>Q2+Ckqgia3X1L4D=u3BsE^ z#KFKwM)+uY4^ou`^ZdH?fr6nxj}lCbJx&afr24G)o!+{xi70{$0pCD6ppdSJ$=vW} z!EEXV?P_^^kX4pVB)4M^`2|+i5+~rBNTLJ23E7|DpcHKTI+%$tC^_P+@W>=0IMK$Y zpg~RODJaKGWGoqlUwccn#rx?}aV~Ux`3^JYr0%zW?%t0Tb%$S$#_<*fbYl>pNl4y7 zio)&N@d{FQsjFk^dcSi>U=@wsHc~1&)#8wdkEG1v#bXwbOBK)P_3Q=`!5d@WjUb_b z{YqW+d?v^e+zYaP>TTwINw}(-?@65M48~7W3hu@vGMJ;azu6TBknK3pK%zP{JX~v& z84?om*fT|^uJ6Mh85v3K<8EOQepg?Aed*?OdY5~Y;i?snIx0cwAIaFdlXN)Va;er9 zQQLN%!}%p-O&WrS8j$QTztqUnEK*XbYrxH{u*gPm)plmKYd)03{W#zR0xyqfbi@*c zWSw7NtaG@GHa*+i{;m74nUEAbnA^HLM&J25h%fquWGLKgsXqga(_}vn0|(X>K@gUD zTFBKNVWK=0ya*NDbI%ZC;d?F>lSw-rooq=bSSM+E1MEy$u*og+u0HRkkVZldKO~)D zy<>-%M)Zi?c-}4SMuc0uJm(Pcils~Pkn@@N0|-#Bor8{nX6)pzu7eOe``^N+Io+~- zL}qbo4q@Qf2w6af*F+ih+8LST2vZJ7iF2FZWMo!T!j3INRYZx?!l(NfelHq=MgyjS`|2UU|Z9q5~tXUckow3hvrt{28b?~^FPGY%GRa$8z?8RO z?O#n5EKV^lPNPmQ93)%!@U=aW-#fF_MeSK};njMXz_yL9iQi=i@j&@;1S;)r2b zW}zm+0tq)BBO4g~$VJ0Rc|zbg!;eA1;v9`RIs)HVhLh?ifmc8vZ`>yCN)nW;u2E%V zVF(jUG=IcYX9oStLz&;-SVUM`b!QM*b*|uh84cnJPkI91_deP-XuGdk+=+K->?ch& zz8QjX<&j*%j2BD`9?$1&&a~Ef;xVZ16Ju=*S-pXP;pwh|Bfq2AOXkT8Vsw;bHL>EI z`0=%llS2j!*^Bf*e$A-xXrJ2sT8&2ysyB_4JVrax41vTwT?>KS^Gl#b^Lz z)CKsJL<0EcY`M4AxokqI_ML~!g){1Hb9x~-`$6 z{#vlGeQBM(KKbC>S-|z)zq8_}8@1J^`xTEJ`BS&R&N>*d1Ra!d&Uv@QuGTR<=)?0d zCWW`bCoAKusjn4nQXAtp(JD1Z=%TI4Rs5V^y=?Lb4@vZ*hIjp;OSc!Yl#uHl(c@I3 zoBNWyasO1M43sSq)*y;3gt~Z3-kVNQ8WugjX+5N&uIG+6{0M>i*)8EZBmQ<{Yxgu@ zpif>g(=pSB309893CVuMZ#gLuv9G6qWN=XaTMCC>U+#Y)RXVLmSNLu+xJp&F_zy!e zEBiWZym(U7WWUlvC>djhasvabM*6QmC+QbHRquYhR8NJ^L*RIQIEU2EM*I zR1qqhzzwsqvU1N28zLejCDZo;@xv3?Lf$J!@Y)0rjPm3*3tHa$#&!p+xdH={pJW{8 zNbB{n^aqf(Z%Daj9c5* zJ#W@Xe2Q5>K)PxgKrlM_9$LR|xVY7u@@+zw|N3r~_eCP>`As!9WcPvY=aw7;<_}*d z%kcbi#Q88ND%TfyjNP@3K*M~84Xu}H3==pEW#psxFeqKGd{)H+DG z_}>SGG@-(`zUohax>wTJi2GVj@~DKskEvHpoO%5ugC!*w ztMQS|8O?$Jma8X0Q={8!{_En7zS+BuJMu3kNpci^D1tIFWw%-!_yZ_|doH-XhiR?Y5~vEGc|Xbh{NwR{GyKxrPH@oJ?fjzj zh}+F;@wsK({GS!hHLKtqYcE78{AJ};JN2|J&N27To1LUM_hl8S)!dXQvC9hTe%70ECR1skXR0n%*Zft^{6Jl)gauaKwZq*f5QQ0#evs zI(^mw52$;sCf%RcPuD%UZDQ~u=#~~)iHY1Hm43!Q>G-I7ZW0puh2?Je4&z|vZ46L= z_4}4GwO+rGg)2&snI<6QiW@r5}8prT;e6o68IfvF3yvtp}cBL?O z5fj;g>XUsgnA&cv_MxYxrERGi2WW@DOt7IhUygy(?Y{KqJf+~Mo!>6nAJC+6Q(!)a z+v9eBJjd_-*#V#q{;;o{HLn3O?92DwPd$uOb?j-+_jmfG>w}}|c$SS{`FU0yPK~`-!TbK>o2#Q(0-l~+p9j81&%~$B zw~KQ>(RiefOHuFhjjiD`zYD7qZe?_3n&icTWXE&><6T`yL`nR$y`3T92c`;!SK-5( zV)EoeLmSy~blP4ffuIL%^f6{dQFWxKfWI9&s;-Q1ie+qXlgfHDrGumVO0aN19`OPG zXNPi#@HJI}Pq?#o>iJE=^O%6}a9}B?)UN1vax3bmWnyHx8S|11L`Hh4Vo7`eWNpnh zA^w|T+qY7xYTNz_1*awU8}OLeSSNrFi_YYAyv=*ET07#U=ab+q5IfItuEHt?OVx4% z5@~|xOl+KAL}VE&bTVcV52j@ZUvTeCokX54pxvvIaB~AcHs_vGG8>V$ex5K%opDiB zr~Pz*+?TKO7p;jFE;}O>ygecdY#r|B-()VMbZr=}g|1lFrWtOyo#K?mRjHTha_D=? zNm>2z`URZ&3uL#%Ge@7=>$)Rg5Fk3VtAA}2#?5lW=D;x>4wJ$DVL{#L^dB`4ZMR;w zadiR~DjI)H-si78ko5WN{gFOTt8aU*J{jQP;LI!M?|%ROt*NDDWNuD{FQ8n#^y4P# z=H^Cq^yqJS)$Zh5mYrbsU7NZ zzAR2r4{DaG?x33~A~1e(g6+GL0#?1%7_^wuJnOb_R#y2=0LT>ooia0*v~f);Zqx+{ ze(FoQKiDTymYVHK<*60wFzC;f`f>Nh0wvp84YJJ1lAjR~Ri!^m#>PklJr;PmF{fBD ztCZkysf`_qn8sMma(6Sr&;EG21ghb8H#ojD)LlSuY`V6xcNpUi=eWn@R|cJUr|Mzb z9r{ixBJkgXwTW^5tRMUD>o3f$o2Ls#&KSIRB{Z?n3N$ncnv2NsggCeF$-l6Ef7;{-^&`QMi0W_l#$a>_NaB5(*!=ZD-&d*?R@>Z9;J|(NV12yjjO~nhy$11XZ|Jy8)0{S5yjy1D z>zOpJ-kWCh=I3{_4GI9yvM*&ggGgB8wUa$P19~h`(b2Vl*A*h6K-5{=y3aKKgp0G^ z=k7Pbk@dmIeaF_X+!jux#50B~Z$Y!lA6`GNGK*47G!tw_Z$s(Cbae^;e-_}X$+~7m zWEl??Z`WiO6wIxqCwLtWJXpv!6h0lM6)o(WeIGfoKNzt;v%z(swe;r3>eA-YX;r5} z_QwQa>8bNiH(4la+o`+z`30A$>bADmj;kx5?yIMdt|Ap`xq0{{puwy6ajFie_JOfZ zT-)yK))h^Kn5f`vZ@{e!fUE%T@X6KH5n#fURx)Yu&qUjgP)n?Y6~)Z;&w!3*sWQ{< z0Gy)3LZdbledbOTx;w!~*L1H%q-EvQR1QwFPE+z<+Zl)1#wfmPf|yvwS|u2|U9+t> z96OI`nyu{0dYi)OCB(%rF%sew`!$>9#)Y#?9@JtLYV@b&Za+Z);cMvX zilL0Ic{`4kGW+YDL}X8P;GWK#6KfR}tq?C0%TV{~m-ky=+Vl&&Z>90t1Fr~W9vjDL z$&Pk0k0sBTI3}dZ@Nh2ISkswX&B3ay6pTe*8gt?(6F+{<$K}ckz9qZ++7Qk)awCqR z)KZFH7GF3S)ZL_IiL4mLOcD_t<1xozo2X8*5?R3C9fMYald?d%Uhlzy2X9qz;h%w7 z-K4bhE5LEhrM9j84S>d%AY*+QTd z$Tax2ZYI$GTi|te24-S%YHn$3`fAgS5NI~<;R2i@>(z#E&rXF-J)}SFJ4ek}2w;GJ(e%ZTU~GJpS}K&oyB;zvNxb=Ih= zuUg|naWu`6rpr5-xB!jW2cou#Uy4M~@1m=>03w+w=~tUnovrF-0c|qW!bH2(SCKeVEMMWgHi%pqM zy`yxeqZ*scEx&0mkv+fLc*&N_MeY7v!H3z{&@(eLvy=04F?4Y~mw9= zTh|oU=ph_&Wni$$COK1t-uyj%B9%)(dshd$3VW)qyfCqWhRDqI_W1|tL@MRW#Rle{ z2f-PKErbGl+=QT*$NhZN)TGmwC?yvY!)=UqXv;5iaP@oXvQE40Nc|6j(qYNvwok%i z-wm_lu3Lp|W$!IY99;#-3|`;*y=v^s;k{nEaR4?7c*a>;!fK|7_SlVS_Vnc+|BR2n zHpd2E#DXuN!igvdU|`k7GOo<5ws>Fa^59H90U20pvEuyJ?Gt8VhS}(JvD98AJ3VAu zk~)-bdjh`f`hgg_WJ7+X;Pg65nt#Jd8W>Wa=xmE4VtaWGOjdTktyDtK;;3LiaP}|7 zUTh2MI58}vOhI{q1f?Q0iGy^GN#j*r`|g-qI zg`jJ?T3x_k2U)j&yV!a8QK}Gf2Ktz4q_fX>Ju?Df$~;)^s?)bHN|U*Sq|(4&HA!#q zNQ;*d;^%pbj_axua`SQUr_1l-rF%DY8U1Uz%Ph_9)nnLhy>~;j^rYiKbOIOW%I||{ zVNY+Xaaxz{cd>O z=XgYPpbNO9F^IAx2#S~$WeQ6GQQ)UAg?OXlc{!;Bx3QA zgCzPM*1T%>Mwcre9|!7)P{k^MW6=jM0}_+JM2Zj}L1}YyDhfaJUR`aTc-Rk&G%2QD__ps&*kCciwguu&D4|>d)?-XHcCPdh&*~ne*=MRz^?7_QAH zJ4Z?h)%y@Qx4g z5ll=hZ$H=aLb3GC4y#tW1?QE1bNH**8IOAG{=95kh*Yq0dEjY<Kt}EO<|N5MGPVizkTb^W-R1ic)N`I&$|P9&lo#MMIls z`2U5Sn9|&jWH^H&U2YnGE((7`-EW)}qK&n)ofWi8ueK-xtTe99&-d?7=AE6Lw>@&Y z8yfz>JFH#%tC8C3Zf$JPv*8bqu@$_0Bv;W@{M@snN8%u?hJXd2qG*5x4K9cEc7jCi zP;G18?7^HYV{vtN?zG=yeaA4?U9y#{E8{F_9ei*i#cSX$}7UtvEY_LjSwMgBv7{@XV0e$ET1y4|VK*2rxmaul}RRVcRIV<`1G|d*~AO_NK_dU|Jn4h^*?EFOjdOn4GE_h~+2{ zs3n{2myhY-4^X&0?h29U{SwfUSj7Uj!;>|RD6+5s@aM@3$$&y35(qG>MjTY}uJ?Tg zZ$nKa15eMGYC$LL^i4dw4Yguh$hip=O_Gv`iBx$qWum`QVkV#)x8c-awGx@ee{2h> zNmew7u9n<;t)Svo;&duMp2~e82vnq>we4hs_MFckhCu ztLOvSq}kPfkaR;OrQp0NADVXNDVk}bDp3>hAqo`z+$Vs?=@MXBY}11R7W9) z??k_>hzmXZy-&GkMz#h^eeqqLppv>5ur~tan#Fq6^VCUz)sm^ZJ1H;=?B<^*_)K)= z_x1MjGVQ0J?o~blj*EJRE;o zZF3|7;-S%*6d^|LA0%kTR)%q&Ke13+yLIpW464@nPOvYe&p0AETd>=aKehzJ*i`K3 zGxFhIA(DdC`}S9F@onblf}l_~VIR1T6U?`po_m*r!oL1Njc2)ye+->%kX7DmKIc9G zg)y4;-Mz%?a(2Ns+IeOi)IpN=QcYonrdwDop8)OVHIy;VhPzP zk9tF6#0=*!{^Hf2g&~9?=STAi1Uo_T+$B%)JFNKnmJ;r((#P0WfTq{~usiO>VC_Ae z2(G$qSRF;G#~@SlqMG67t zh3=dZB0iiVh7Ka1|1n@VJ9cAc#1psg_rn+zR#qbZY%SidRtCa$F--CuqNo51_R>oj zc{ec^8aSU0eLPw8#2>p`ZRU?V@yRD*!dRd#QA?>lXBPl6hLSpwU_g93p;v zh^b~*aWVTNeL%`oj@-YO=iYVdXbq2EW-NE`y+HQ+?@XwDA9fl7f>?xrq`K{Ak*^8c zBbio_6wW{r6)*=uK}Wv{4}QdlgM-V?&!^6s1n>?(6UdXdKWC8?$uRuSs7t#Xt!_Qs z`U6H0pYZ5OyGIiPM}O%z8=sdd%)c74u8xIYiTr)6|8mK?kvey9#nZ-nRQsBrU>Cy> zh`wFYBqy7%VL|_){*0FBaVw?%2jf$?k7z8|?ihc){HS;fJ4zwp^FM$cwRQ3E=$(%Gwe@d;@avZsAwbdaa!)o^S+Ehu#u71A30OFi z_3e8gVDTVo#4&F@GTz*zL5=8O#Bg^)-?SF}St|o&-I{85(TA)QfnkOhL&!aLG*P87 zk53Rq9@1=(lzg%bBnB?qk}by5}EowrA*=sx6`{7H#kL^AQ;qc`C7x;__V z-B%P99OW$t+ulQD)hpZ|D7~zvh-YH^JJ3u#+V>dDA)tezQKSvhfWTbO3=Try`F#bj z8!e4!lp%x~FsQHRnD_CU`=(hSBWOmTMdcc7E3x6(e-*1hm}qOkCs43`y$0DB;+5_F zp6jq^3Pt+zuecG#=XS36a$R3`gLl>K3OCf<$ZX56cKGtiF}=s!r@pj78odZ{ulx1a z0tO20w)6YG+aFJxIk_9i`!yq$k=Bc@>^K_E2z9yqQBPAAEW?&G+Y)qru#SW@7T8S- zd+lyQ%F0rH_%5tzIy~pI90KDqi8>-8B${f>zA~;KH|txBlvIIlu|)Z4qo?8*P4%*R z|MAp*7GAJ1XS?q9Z3lAAQ|;-lfzVZalDl2hnKH%&#OftU_}OTg7v&^3)Sm4K97Tz_ za}zJLK@P3_C878%5RwaNJAbn;hhi$+Y_Zh{`82$X(qMq^r4+SaW!aVM$VG^Hcr(p| z5(q$G^a-z*(UsLeV6nrGhn>s2JSDLZKwrvwc$qk4?`=H1z7E~h&=J;d^!=-|a9}>a z;I!O~wS~-pkXV6Zi0s_r_4u z4hWsJ?z>Ie__sfzAYLB}N`}Db9g71jy2|X%o~*!v6>g4qK;*4D%$5BL$*3 z|6qA;?v0}IUfx{2)_$s^a%K*#P@LnF}#EWkg~zfok$t z=*$zd4$@e;kF?#o-g34a)x4m>E8Mg&FxHzW& z{+0aw;jPEqcRDx)@BFL9f~(I}bn?Tc13h^v z(I(S4MY=tCTrHMAEi zH!7rciK@)3QKe_bGgr-bpxo_1AyOOQl$(n3^0@AC79`++HT!sqB1WXsT*M9^u?lAV$Y z{AjZLgcK#Eh6dcyXheDjfmj;+M^5b0^A&p;7`7!Ko5K99&T}36%wXhfGe@cR=bcXd zqtB#DFUO`y$B8q0J4cQPQGs)i^Fe=I-9r6IR9*e#Q{3b+v>0%JwVfr4EfZ%f{YF{b z+zcMDF7gmib~Q^ppJArzfNmVm8DVUag8Qa#$a;t9a(hZI`z?!))5My(eO*kmZfTXP zJ8`-_Fa%;mJC`$&^1&DVZV&~zBdWgwZ1LPT5k9MY{V-3w`LI}L#;Mw4Y~$(*1i&-k z#Zz4OY5xJTT3n6rwX}4~(Uiwl3QujSg`~Z^$>8zP(Z!+r%&*&oy>Fygj`na2y{9?0 z*!;U4ghMh|di~))0fLxinLmB&rQOXWKlE59w3IE?sBtqeiIY;Ds1zx$Vj`%4HsR#a zEYAfSTh0zEjQr~MyVZ_s>@-nnx}wWYnF=K<2Ul4!JtgpgXBIqy`!Z&w@)hl4s4@|y zT(gfjDX2yx#H1R3>pe+^+}}DhA^5o}d9820HW~%klCe$fB0-lXk3JTTHN_2FPs?9} zIeOX}SoSYIZ#u9;vsYG#OHOUXHBzDN> z(+?A?;Ic?Bn+E`2VO|KTZ49mS&9~?J_p&8NQi&1eo3Q&Iieh4j);t7988Q@&zK{-Q zU;WY&gf`vhUykB?LkOFl{b9&as;&2eiXt`7{@baQfZyZHHW_nYX8ROI0RPzJ5=^q_ zC0WDh4T+r=j5tn=9bx9asUB^814h!fe*8ve80C0!B+}09G&w0%+=P?&J5j0_B&WJW zaydB#EcrNdh&%cCxB?P2rUsd8I+rDPvWC}R-+);evOZ*GT!y}*qH#(i+ei-yvr||S zJ-p+IO1aej_-7_+3oIBT@mI@(m{2p{e(tkExhrUil+nLLF9y%O=ZYm#Jx*x~Bd$hC zQXHXbybtHzebeo|cPyf$5M6!7RJlqiN~G4@Si)Eic9F5EQ-Zi!bylJfX`VHC9dGop zq=dQE)o?3c%kQ?dv=v9EUs7ieD>YGgOj^E%zCpchq5oMrFiq@U3=W7i4ymAdL3V{Q zj$^tUdH*M)z(hZOTt5RxX|4Lpep0l7`oq_};>pib*EQ+#)EY|DQyg4#WFk7Xiv)y6 zCZ4_e4DQw*VMOn5qOcdrg|bTm7$e%UR6D*rVdNADTPxgPHE|4TDK#^@fK;}(+2Gyk z=?_ZCiAs1KcJ6bC_ou6r;T!Bv>WtAU%uW6VbnaI1$N7J}lgUf$^TkflCIM1EGif!61hSQ1}3k-dPf^&gZ|SyUKZSUk0r^J{+E^BbxAsKGKLU7->GlN)&mReOd0!lazaN(d0Lsb3DXCA5 zL9W>rW1}f7lSA&XCHlmW)+((8F$eM6%PUu5m|5Jb05UzSM#C%*T1140-Vka!OsPmY z50WtQZ2?@NS@Cpe$<}F_fLST^Uoj7ju@^p2N;bB_fo(hYPY=Uv?^6+SDlRd(^+r zxGydr!6sY9Qpu`NAZ__#6&zA3B9%~^XX7_VxV-QwqYd|?Kd;$}ma zUR=`@DajLuCj$so0im8JQ6ET%WVLXBTh+noDyNc)_G9V&JCC2%-k7Lwvc@+&lN5SN zfL=#%m;Ae?8oIYo3c~@VbaY19pP$=3xoE^_;3JY@&snRG`_6z>I0SXnCf?y_HX@2F z^NbLUk|Z7;jRG%v#f`$>%sOl}62NKUd@fVIb)0mP>?!*G_jEfK-|ct5KgBu)o*$gI z{o`T3)q+kcJdx0yXlIKA#?+amigR;$kKq8`QeCZpO=)fOY#As$r@eZ+FpUH``39UE zh8*VopGU%`x~i-P^0G=E6cSb0vJG;YlammTlFIbl5@N8&Bwg_S>>E)42Xkp5;KAV5 z@#W(A<-0uuBaUE`?rmP_B0K}R6;KcV4Z;QhuS;Jmoer;5|*_6q3E0dhdV zU5$zG1>x$Qk;9}!x)w2Hz=JtJ4KypA4of^KlS~~T1lE(%NX@Q@q<@eriK8A9$7uTU zK};&vg9?eVmu%pEYRg7`#D0z(JI821beR=~bk!0>N=j5mIY~+MR3cXrV&;3~8NK~R z@2Xs44JH^ofsCkGhIVvEc14kj9gZLt;0GSyd8&w#rB5DQ^N^Ix;^NbpI>5qhP2S#l z6`io|$Eh^wN~8k#F!ibu7Fmj6{oGtlbWRnLofKsj%x2P#KO<2zJfEw1SWSIL4qyvH z5J$=Wac*c|kZnYEr|MgQm8ofRodNIF#sx7oo=#3)9s9@Zz)0N?I2{LHPx?|}w{x}r z{${26KVJCQ?y{KDh-+<)XN)?|{w%=bnsI3vWV|e6?sB1NYm~TBYBZ5(Cm-d>HMbe4j(PoOMU*lsrm zhXY{gx@aeE@5)6u!lmpaaF2P=cTFxVd||h+fFaG!+*FTKzR_d>|6i2={jW^)?PnT% zCVYn%eGm_JsO@M*<_uJ$Cs&AeNIl9qFkm1m#BvoU^o~OLMt&Ay=D>siEOiN`Z zC*Shp@oP=2kUlz+Q>7Q{Ftpkmk+-&{yAn!yd;4ShN4$LWWso_Q-gWIy-ox=wQi!QK zBSfAWyVd{_d(xvW5F(<1JOHNLV|$@lL}8C#P}jc|-7CJkf;H=+r3 z=6gt$*wu6}i|R95EUyjpAGEHei5tByb+Mt(k_d?Wd_`~l)c-gi+%sF4lShe%ye#~0 za6(4p)NG9#EWQVHm-y=3h7hVOWH4uEXY+V-1hqUu*!XY`d==z`zB%G|f2ddOC)cCJ z-_S&HlxDh(DI@Ut z-@IWkAUS3K_^}^28CHN#3ln6r!gh-f&rYgb8xku;4HjCI!vT|xfmw<}Xw3vA!UyQd z5y<6{!ssa;SleDW>4`@4)HK=BFMQV&uN+drQU&AAw!>m*EmJr5HwxG@3)7t zv7wilIa&!pUT?dHql_C(`$TH);)31j0$EyF?dS@HbB3LM;ybT zpBHNOhA6l&<|KC|aWd97OP4u(rH^Fo4KwMB?0<8bODYw-@WX90v?;h*rk_Lk%+_J{ zv~Op)?$AIEUrI^}9!x{@{*rZ7k1BnOG~CUNc+elN^JU0dqZtg4A5}+9WbnfIw)d46 zn)e#tMDV{LIRYRn9@yL6Koa}DjviZH1<7S`peQ-h3R*7QJPPEe|NnCVen?Sf4!R3_ zY)EBN3vHGgbGitV$)k+o8;lYc*ibMrP}9U}6%I7Tn@Mf?^Hhi=Vjat9V-Y+_4avuh z+rfYPW_MH}`$?vpsSeoIKTlKTon^twT1^f~DV$b3x6;QdOx-S>N; zz4UYJG@mxq?2>$$H(XbiR{y=DQ%4DmJdQ5o8bKyLbU^(fwi*owVvarA^hb7Q)n$_N z&Ne|M*f2&hLAbd!hRfumn_*;&bhKqXV!3%M0b=~X^Hak*_~co9h73lJdk+eE+yHdH zPAa+P$O~WUG+@aR>a&_0(dFGR!SG|46Nm9H4`WH}oZrVsr|~&?{Gtq;J0dx4=qj~j zfvlJFb7MoDt#QCZsurvLtOrlN(Pw*vlU@Prw|4j1TTAm0ZWxq-O)$Iv*qph=qkRH} z6oxn)D`m(^^k)qXCE*Qajic96EnIIx*EO^pdoQ7D(Okwv<^ z5+V~1F|SgP44B9v`K5VZKKFASceUUgZ_!>nVOTUsSNlj_Kh8Bk-nL@2p13-v46P9>Y zp{$BwU~|=i6idu8ua75b3Hcu@p~0kM$TfgtSpqpDy&az3S$|t5;ocX5qU)WUt#ey# zC;)i(3{<}YAqWWQ)0D)ac-jMBUuI!Hd(%>2izbowuNj(b9e(rWF6m475QP4Tyb_~f z5QL*uUP`sbmqtknq0h2MNK819TT%Hi#!5cHk!Z2aXS#-#qx9voreyr6Zo3nPP|PT$ zW_5;X^c@opGV>3RvhVfoOt_U+8tw6=lfOhfkR{jokHa)aCGfb?ff4ei)l%9`hE3g*jM42M@k=;8za))o0 z1WD6V``}?(NHnV^>d=N3A2JLo@ZHAWR4&zzutWA8b)Po^NYAqPzMj2 zJQg%`GZylJ%A%vSf=c!YZ$cj;0$LfB(hOwqaE-{%IEbWIOYKKrAKB2y?1BQPqIYk# zZ!<410rZ^9%&U{v>YE2Hidi z9Y+jGhqM3Wj>g{AD#476VZ=&-t#E^jmyS<(RdawGu78jpD*5JoLQ)?jZ zu;;9shpMkiVOT0i$9o8bT_6ve+nTdSQhIVt54Q-B7q!jIC?%gAnV%d4f#-J~4+|+s zXH{9*Tp&gbG8oddqc=G53!04FJPv?Whkm&>HlP1L0-LvmF}?*KHsKu9^uO^^rB!o? zT&2*;lja1{0%_r)*q`~8G!FkdI$N5b)0aO{c4|~`5}pcFs7Y$=rYCTaCo_GeGRdG{ z3O9WDxq;uH!aXySBG2R)5VG9emjNFFmF0kDcbpcP^+$_adAA8)rP;!Qm%AtKVr}|k zlsUuPIzB8EI@GWQ|v(0Wj>Fe2l&n+}KbL)6=w@GtYkk8Rjx-E(0_WVfhW#+nRQ_s;7oOxOn4K6+{gclNbGD9hLVi&W-|rDzAreb(E2oYV z0IwE@nc$2v7`!Q&jy0^Y7E8ls?KM%R+H|Z?<8YdEeRSiS_yuk}m=<#iUx^NO&6({s-0V9x+fl< z!jHrV3q`q92};bd8_i2CyUrQ)-msJ3nl{w-QBEa3o>!SK;-Jh zksi7~c?g;dtFBgS!DFA3qaICZ8e3at%d{Di?}Qq1^bJ%q5yKe9fYE)#jd;2WL2vva zCEuX-3n)=|Ys*}dA)(kDL1y8$+9({y%wd&WW>x}%zdXFkFbVgkXgNP&fWhL_dGe_W zG+{a6Op3(`AnS7MkJ@0KwzK9AwyU^i{%_yD01Ckh!?>D>)gSW&! zwl&~>bWo0kl&?B83M}+Wo3tB+_(PM8SvLby)I+o;`iZXTXk!GYi)8_IVi*di|Qh?GKe0 zFCsfLmC_&+D}$?`D3Ewm%2KxslPooEy`ZErQzHFZv}c<~t+7GR0X*(JivYoc<>k;D z8%6|C(e?PTQaCgDB9dH$<=<@Jt6Ih;cB#f0Jv^N$NwWawHAyv;nF3b=qRA%LT{v1g zcSHAS6_tFxwJ0C|0>lSYD!f=J4j}l<_Ah;$3|DT21GCv0(7Cig!|V10RW;*$JR&~n zKFOml$`A}7T7hiAmRXz?nRYm&%2muUjmY>I?5E5IuOy9>P$>VF&y z5n7M)Dhxwh$RAD(D=8(siR$gIhC=%eXVo{lJIa6Q`js3tok;VywGo-Ak#m0H=LmPN zj_IQ;{d!x{24JkA^@%D)E?MQ9?`t93j<0tyHa!|QiGn z$`Dly|GB%wi!uf&dR9x7nu6=#P$eTpDikR0heLCkL#6UO854;}6R#wLP)ypnJ53T!9dT^b0`%Ynh+V zDXCb~{3(7Uz^%1c-{p0)mj=&(XR-KKgqm$5&WMa$3cEv`aUeL~vzbqDB~PF5TqBfMGOF zymV)0rweg(Y%F3_RMf-Sr{1Lhurblcb`mL3Z$ckVDTJ>BzkW?SHY|aUb30!D3msZn z(Ot2h2S0fjnMgxF0ey7|{q_&&UbdamB6`+T%55J{9O(-68jN^ZOpGet2#S&>geF~Z z={Z-w5V~Zc7zTC81Pel#M2{cdY+Z>=baEMefejSp#1w7WJZDkoWCjl09?pk?BZy&Fz%{!nq`C2U)l=S0X?KH)5XAX~rRHB8CGC2cM>-yteLk;`Q&$KV;20 z7&Rj(D1%0Zz+yf2dVNA27yaWNwXX2fzJ3KaUiKA%)^?xG?ca+Z3eut(q89>OFR|8*5wZ z=n^KW<9LpU!e!OJyv(Q!5k_X2sjv9+Z zl_sD8`c%hQG9Ku#;=(QZHi2!};!6e1ion>$bOrFnO6b`E_zCBl1`f`je$Snm1-EjE z5hp%WQh?(hA4A>urW)JD6D_~*3_qh#>8J3avp<%5s`FfnEsXzV3l0pw-(QmMOqpp#4^Olo3A?A1X^(`X~cl35MyN0*pb`_9!!7`cyG*p23-Tb>>WF8JqAt z;XKVb&6KMSfu&K)q8l?10*~jIwTnC*#gpOuwHX&X2vWEE%q<0F*@14v*7!qLB2yZm zz)n~)gTx)-141Q=f#^UfN_j5j-4Xo4kvrxnIDdvLWyTCx2ZLhmylqG4uIT!Dt|Xyr zaGQ~hn|T=E78Rj*QPHoKu?w_{j`$!8pqi)kPj3Yt6zO22}2J>6^!kei#eq1(UZL-1y2YD0cx<VwwuNhhf`j3o=! zNHeOX+Gs1Pi}-CIWolT%54n;sW<}jZS;K|OV_fF>p*wIuz~79tnA9jjl73IS>?f|0 zvSKL#Ofc+s5fVN)nn-$EC^j(+)m9Mp#sK7o3761B!{r;cD z{f$71V7;9C=_!B3A->P7;Cpu8%NqLDGwG^KmaQ^xGBqZ^mxteaOjf4D0B0BS98Z4+ zn5t5Gmh-XAfzKKAH|XuEp=3^_(D1Vj-PQ+IM8V8>$dXSp(_f2Q-V_r1A8)yG;Z_Nk z+oPV8VVq@<06ybgUQ{2jg62)SpXa64D`<>jTiV z;!?H4o;)T1T#NZ!>5iNM%2pbSnsOCEL0zJd1A{tLE-Q{4aVlvRJ8fsU6B?{xve+aP z&nxU14Y~vrkkgxhjK}0<2cK<4;1L)Xuk`^gzdnb8n+%|Iq?>JcV$kQHJcNh~`0Lpg zmtQa~0zcUC@oA6$q7IYeAHt|>dYdG#?H`1#e_UHa@BL)P5F;Sa1&;}Ca%2fvQ)R2x zQXIxUz6qFZd3}3-3+1i-X_IHxV8(5?eTW!tqd@E2`!5%x2pN$jA^8ti0>+fV37^+L z;@vBf^(7tTwb1vwly8#B=m_Fs3tTZ$Ej+514_{^gt_0cJRN&OCR>v{-{r0nJ)gmyw z*zF`$hdE}$`B|n8Ro(OP2IppB_U1NJO@-w)nT5E&aciVWsEZAac)nP}clmDggPiP2 zFxMDrme=>=fA>v|jbfgAc?16bPH?-9(1M-qoE*U@#d;`e{Se`p7%6kg%)?!xpsh%$ zPzM<^*LA5GxnU;kU``VRfoX$s;@NNOfAVO0k>p;y4cWR9#m%ZB=)>usdtT>qbyRUy}}!I{PEa3$fVVe&d#OM!GEpb$8Oa|`c>mcq1$XQ(m2OU zezpXCsm!NjERUV|KuN+_!kGFumTH_*dtmgtP}ygT+)D?NAx=5_4^mo|Zq{Kf`4kl+ zgDN%JC|h5hSN6SaaO!`rlVE)UsQ{6eg*CN*VG;gLpU1i7Mqj{FG}{aQICqnbETi|S zk0*~g%AhprIjPiw_9WuQno6n3jNhK^y|CbNv)0qbl)~)Mw#Cp3yVquA;<+H%$a~hep-feIH z`C+>Bm|Wo3f74vxyAxlBt+nmEn-5Az00l!9>ErgBhuW04uT|ep6B{?Ahmh52{&sU~>)SB7xg9M!CH& z>Gl1Ze?~c@gG1HdaKGq&gI~SyX%!(yIrN;2n!TA}5{pBO%~@Cjp;gobsRqH;%ClxNSTNbULXr zv_qN>uX(t!+q~K=K*ie&Wkqd^nrB`BCuB*#-UJhAG|llOa1$BAOCm?Tv5KVvk+UMA z%AXe42s~lHb<X>cU0UgB|n(!=JOJcXI-DJ ztdI}}ah3%G3r68O#+9HoFP4VTg0i2d8g9Ql3`^XXK zyeS~DfNyMRiExG$0x74kD^;@k#l(TI5aL3d z!;2=!9|sx@q>Fez*jT>M_nwC%5k)!!O2`4 zNrYA7-$?F#i&#@$`?nc8ezIT2Oy%V_wG*{|=v7L*esxnoRWHPc`J6eBdzhs_Yw)D* zNb}vk{X&Qh&ILI4Sy#Imgo1sz#-_X4+9C?{A71gxp-(z->yhUIkvHAhm6NLG3yUi! zZ{Qtj!b)g!#X5PnH}@VwVu!t4YDQjM06Q@fJ`#A6HVg_M}oY`y!05 zkI%kv_NkWE7)WAKA5dutU}370kmL&pN8*GgdVtwW8u@J0>2>AQ*tvR_8~ygtdU_iI zWu1&6cHQsBC;OH=l-*Gj+{d|L$-^H}u&y+b=??%(NWqEO@?@o5?!>W;Ztb@w;qV{p z;zH#qle22AS#tDW$KUfh@6posdjAHA;tEC|pCbx>=j{6aT`;djJk?5CQBH*%-l1Q7 zg}k5V_&06#CG>p{o1t<4!Br1B`nKBu+!{Ijswpwe7v>2pBqlxmGrQLBu3m1Z#|1M+ z9p_|AS_>PTOcR+VZ0!X$g~#=OHI@vF4!vg{3oiI&$IUwg6sO(Gmc&cka`&%sFc~64 z2sDVq5;ijA>!T_=zK5N~(;mU^N0N z;IiIe{cB+`G4c=mEHzW46?n^wPS_e`m?ItzeG8a7ZT-v+qpRO0$k3M0QJ)tD;1eI3 zddS9rL~CMZv{Y(}$>PkVSyMeCg7AwSUb_qy+|5nK@&MU@&HDA+reg3}ZM(8nqjH<3 z6ItVp$@6x-a3XyyF5Z_MiEh zKr^v)swCezM=B2VPhA<*wdIsDjAlaFg}Ox82ElvLY$R8^ehm28NeO%3?z3V}CHJp0#vuY#9WjH`U=Z2X1DhXVIvY zEi)d~b9WQvnsmvr`eSUkCpKjgr&tQ*wPRChI5zCcOguKo^>=uQZ#!9utHi^FvKJBr`qvqrix-PNu6aT} zDxKenjFsJq+8ndyLU4XjYOBMb?WxY5(`*)g?jW(XHqhZD?Wi;3)c&e40XRO*x;%_0 zS^V{MSfj+6G|h!e(->=F4wuyFX`>jgWye~L_I{w$ zEAE@4%BRFQAY*<&SungcROV-;isXer3%%UJZqxPC;FZpQ{`hs)B2q#qVRGn`2}UP7 zi0rGgj&U&N$2(dD`erMWfXzq~gRfLLiC*K+fEpROgBzpN;LjMyEpX_^58Wu)E!*Xq zte)OtUWVEk`0P-#&*JM{TG&%gst!!uMe6*%dT=IO)f|1=sEN*z_}yoo0Kb#XQH>ni z83svlz~;9rTp{Aoyq_b+a3aAb2a$Mdkrhue4%=kd3HT1w&_Wi13;W%PYLv!s0ZMw9 z+Y#$Sq(0_wgq$<=;QCKSU2-X~$K;@1`|&Zl+MMu+o%cv!`R)5t+~L^%hJruM{(iVl zPh`fDZ%HwN{&$7C-Wj_$=-n>oem4mmh~kg*SgF+E5;Lze0@(#6RwX~|@EuGx(!AUp zYG#`8TTAx8JdZmZaRf4WTGZmjhD^U&CV_I}04e*SKQOZW6j&f_A_5GQh-n0{MyuCI zAMjI?wLXYrer7$^Y(dH~gd20IWL<9DsLOj*hN@v=`h&sMy^XKIhMD)XE|xcpW#>0q zrd3OATEd+Aj#vCCZ_QCAFG?K@{!!+IF$&{8H%iY3`qr^7IS1cY4=)3kz_m7461s8! zcIR)_OqLqOXd+_%%?RrYvwy$oFgCMQR%%sw)U#gk^Eq5c_jA*4zx}#a9 z)s_koNsS+XPR#xGQBsSNHJ=d_*%_@1e&o{f&%xZL6*gd?0(KK;15HM^OK@S781W+r z&dBWU)@ah{$MV*yI~@APboqC+!MW5+$exR&k$b&-_51w`c|gWiVQ~J$Vd1yR6Y4a1 z$~uDAtWDSOwP_d^SHX1kR7>WyBLxj#g&$@;XLwNf&4FtsSPyFo#;G`#BNQn=y$pky z$QzA%)tEdZkPY;B`mXEp(6^$Y&Nwze~Pt?3$Pf#Ib+mlHiDs79N zEdB62-B=5yQ1MvxyS`AF$5w^8t++c?DQKOI^gsE;q|UzSnH+!FUweW=xgX;>bH0xl zh1(errYGW2nU+u*@S9)~!CJtourN<&IXHnGPL3f+k(0LinK@$0F*Mi-F}NBDX+I|p zXon4A*gB7YBEf?1 zv^NOnyPXBEqv0Bj2;NYu5hLKGj)}-mYqsQgJ&PA(O=VyXf;F58x-EqQA-I6E4GnE- z^WeAqhOv@6*Cjm_Y0{~ymc*9UlgBoosgijo;I9HE1?6m>cz(qg*^0eCO!o_0|(z(hx*uoCmpu<;1W+v|7uaw z{KBj-V*J6(TMG5sj!Aee0G{EqeV^ReSJOmp`+{l zdJYqp?U-4CUumZof-%;)Jr=o0c2O?~R*Re)_s zPO1zI&GcBVEh-MHhNWBW&-twW7Zg{f+Nmp!XEoUKM^Z1S_&_bhA6Kl%t$2x60S_|` zTG5>pn>Fi5TC;r=^zv@_3_3Ujk&2G36tD4Kfx7>4B4Y@-e7YV4&3^;8!)ZTg|87=F z5ufzbjC{f7WPHyyB;bBOpuAt zB-dx2YTb$%jl&+|KC+uO3n+st=+2~P{vc5v=P~HE9as;tzT=8KpCPfHp+WC&U@NVS zmZJRJpW&6i3eifV7IdScVYyG3B1-wC)X;VUXwnDUlno&=sS*Pw;ut@G|BR^>l6Re8 z^0K{n$ivo_%M$uDae;*5vfD=6Vw}ev{nkrR^C)1gAf+@u#ac%$1OB+R{zR>yZ{B0M zL%>S)s&|0D+~`5X&J5P}VY=`1-_$Pb_;r2#r>DL67&=OirjKW0rG98U^_O3f+0JRO z+t!vr<1JLN_;@ z9PyMy@Q8(H60Rn}Rw8iC)iEpbQ5r|h+U0@=fJ5#gx$V3%90SAY5fN*)CoVew5c$j* zE{@N>o66YpCx*{iPe_YPskYO?=|z#Q6TRQmpX{vgY+=O>W558MpZm^XiN|E6E<~g4CLWuK9u+OB&Mq95qaF))eA$T{w{I=}} z1%{L2{?KK0Tbu7$e;=+=&WTVr<4$(u!VCMjU5t(YDEfBYXK~~SmKUduE7oarBoR;V z6k>Fy-I9r09x9j-ekO5R!F}p|hB_rAwCrsDV&B14gJ!NNg@Vkd+<3R_VJ3}0U}!&$ zHDR1{XNAnp=;+qUHnwo#waRu_{oc55we~M6V6mFUqfSBOV%i29mPG#U7yIK2alOWf zr&MmM7V$l(!gz3w+kD&1aIM^%JiIpUvldaE-9jl^i6H87i*5543^ZxgLCVKRg~^Qs z_GR8g!YlfLu2FCDDC()^SiL5>e>Ab&7R(K-3(ohY)K+CNQg>nZ?}+!&1ifAey9EZ(#N*Sem0lJU8L@J##~) zSyIS)XAot^h^Nu7RY$p0saC^&S0SFF1tc=8s#;lGG$9oBn48y!UO_gIY$VSgFC!J_ z?U>})h_J4`WSi~Z;9eoUlP1jgg3P|O8Hknr8wNebyH%gwF6w95^b89wbO{2w`yII- zJV=P-(J08b1iXs2>UX!nKy$CXTLZk2%Pix^m61 z=bn+ZzOdNrN7(|F=Y}+nA){6FX_15+lKX*lNXHwgIh$5Dr+?)BetCxCk<8bWfxyL9 z=r~HOPt>+{JPR71nw>9Lrlv(DO*X};=ZiJZwx^EaS9+cW@bC&K^7(L716an$GgQop z&`PK=kjIY6dgH7|N`4rNeFlt|aZ(up%fpXI%Jp4N2#_oK-nIjb4=5J)q-+L>jHiFv zku5gL*de#M;?zC2Cho>V4)gqL>>-gE|3$HljL?tRg~yJM!U%R)I_V*Awa#JbZ+C|~ zwl}@iYTN9!g;9W0&a1XFk2~&4$jMuGyvLecNa%c=+i-MjF(ZGi_KJ0Q*3CCxMuN^Z zO^1)gUqh;+#4n$AxlgnP8KHii8MK~9|7rKxSl&!}42-XmW?si;*!kIAldh_+;d}VH!Y1Gain6v+K(F-+1KcDt{V(K<+7(4Jw z02Hof)E5T(U|2sdqe>2Q+@xMD7F@qb@2tx(;M-(1b6ayegQ9%=Peuxe;9W9*P9wFN}5 z#dAm_cZ6Z&7zsY5tI7)pgNsP;qr%dexUnM=BtsEVPR+WNX$>FJ?FqM&#d;Tu3>U&) zQ8)JXrexR#fw~(rkn?yGgBhBtS7GM#f~PKJD#ZCSM-hJlr6r`l5usj@i%!G1TL@{h zw_)ursOsS*nucx9rtdU!(lahYI`__MRK{7%-mc8QIbY<4yyFkdaH$&eqyz@|;GodL zsoL7aK!H9|=Q@ux8IlDZkHDvG`TtLZ9$;^>+!1P$&G zT!K5n-JReBcMB5S9RfjuySuwP8{C4+LU5PG-Ffr~Ua({mN2` z957tC$;(}mZ}v%AC7w1COP-E6?`BK3DrD~c^#D3tWUl$r{E=|%#mHFrc0F~t6rNDKB%5q^PWQ%fLa6LXl$E| z>CJ(X%hh2(I9Ov}3L!^SWW`w)O6YI01N!Qu@>Fi>Li4Kz9*hZ9@#>YLWTvVRMp41g zVjouEb%GtoGfs|`FVsEO>*JkmmAX*_hnu6DHjod%5A~UM9)dqzY`wgnjbz>iqU>(r@*nnL1K3sozfd@Unv-R*1_WCy&!!@~4k`=v&Zw}S&x9QV~0 zaJJWO)m{$&fM+vK#})J9~k=~8Fh*5x-93?Zkt zW}N%EO|McIUhosr(j_Yk_tdhb>==%3EaM3iX4tLhivASRfcUf(*tn9ORu%4A9SOdjQE zU4$Tog#kCsoQj>Q)xL8~3_kC4#}+#pT1@lmXN&uH_&0K!E0i52q?YWO>9zL#@f&-m zt{vzWY*K9P^ukzuG3@*>P z@%=xdd56+^mnpSPVfId&Bhaqn=J%RARaI4XOaopH(6_kV2L3?UdR`dUYFtI2z5Mq+ z2!z!RHYr-}=h{-g{h8;SJyONnSB{sD*=plX4vSS;>ymG>ag$KoMT94Gl4R%#mOwiv_|w3g7c z5ie5lale=tQaHIm`;=ZcM@Njf;4MrNK9_3sBj2e%GOhyRGvAibjj00O0jr`Gs(+W} z=pWMYyZr@c8jqfCkNLkuL5SDV^UXg!0B(@FWs$#kcz^br9Ea7jQ!K-ZC5?<>6?}Fv zY43|hkkqQ;2tEx;=%H?9s%7pd;o>eJU+b4?5dWQ+TG0jb5S20TeQpa|h;l4CAkfeN z=56u0yU(<4d+p9YD%mS4-C;PG4WbZBMoSYVsTtaN-j(d#-P;OsW$l)6_#Ch;x9&S! zy?bE!5IdZ^uLLIDyo``D71A+G>l(2ZoHPr#4*gSrZXj~}q}9GQ_8d@+$A9PpQ}G!A z>5S2>)9w5X!ivQ6K?MBe&e)Vk70-w|}@0|gM?`KpDQ-o~7 z*lwuRQs;rYYj@Zp=V;MzeWn|+ghWg!rp2emqRw&s8~fs0(RFZx9dc9-8^Cg6JV#- z!1P7WXb{)nM6A*QO2L|bGwZz+-K+4BKL`DiOBjc z{-GkzBdpkGM|^LQQGx#|f+bNxAj`&)50#!Gw+aD%uzNoxy^-}!nhccRZ1?!ErGQMAIs?=F` z&7J~zOLoxZFRSO65yLm2qpAFceEB!H)8WUK4kdf7!Ogl*t6ACtRC=@|Wq3o7En`}- zpc-co&MiY%Q?kxYGj)W3qpX~6q!lnvSUO5$%zn5}?P_@%r^BawcQuFRM|SIJ z^@mCo7>=3^fq~@qwkVnF6xVgk49p)uNm53T3$oqNz^r&6=tHX}=rD3QN^_*8L}Mj< z&tQrCZ2ZsO4T+LdN#%3CS%TKY3e;0lLc?Dy4@ z@85TsFRn$DmpHdT?>Ewa-~XUix6E7VLKVVRo1XaGt&bw_BkO1K4_}%oV?#!rC#q{L z9tIML^_X1R_Dw#to|EJQl?S-Gm(fQVo0S&miQYMj26}l0^>3#iJRai<5p1(Kv zL%rnfj_*ghW;A8B^Fha%s?fP!<#|&(pQ&>ERHL5 z0s>Rz4ab)v8BXoQjBW2mN}VhfNi+TJAg*uSLu;EpYmDJ*V{qCD5FN*{@ug%zH9<)G zTTEzjuC%-ZaIx+it&oFgQn#bnvFkIVeRV^@c!e5Rc+qJ= zCy`DvpDl-t>CA^JEadsZ_h?`zLrbhGdw-Ju1E+i*ywqYZ04a7Ea6h5$IiRyCK_702 zqhuFvw-3*!Q=<#cAR%Y>=W-rLjg2P#++|<-3$@IoD5#sR5KJ-TVyuUlPvCt16_zVF z?AS?^VaQQn~aCXb|C?m7Leww$M=J^U!u>!2I8Bc97J zS1EfE{)-?otOH8^JOd~wcFGLB_b$W;syCw3{(MrPEK@7fz%6SB8SA|%0)h!ig2~$- zkMAAFx5GX;&4`0DK$j5@#oWUe#{~@k&1@)k-NkQkY7Y0uNfQtJc z9D@`-tzG&5-N=T%*n2$*0=@Qb_|CqDfF8|dR7b{_TQ!A1@3nef68WfbWS__ve=LKH zyu9qdZiM75&WC81}^lQ(*yTc zGX?JPufuL?tyUf23uahxge08wR(O}QvE#r=4YGJwH&KfqtK9E?^g(ZL>_JTUO)&16 zCOVObKaV)Vz_RYD-))~(OefD9qg1FxL#S+$K2#!=NAegz{R;JOYUbnBN0PkFsCX@7 z2!m)N^Oxy0*d~d5JzFgncw~$7ZaUF9*BNHSQN!c9?`@K%M98b_1}kZX23w1Z9!kY( zyVqW|cj7nzIc@;{7%C2E*4ID`Giu!`uQWrRb9rGz_@xU?F3xCUpoc|6|6z9?MpxXB zhCaU%2Gf$mcL8%WGi771%2nhQc(r5R_bdz@zB>v=oA>XB=;ivJIiQ|%0y5v>?0E<( z>GPdL*R{bpl3Ez(p{CXGWogcL-z*m=W5E*Y%>oUj?X)eh_T+zfID|(ItPJ-*^vr<( zzlsm@L16U_5Al$duv9q-HiT(+6JYZ(hT{Q7zl(axA4!!#6a?-m)DLMRX+WpsF(7mNm>$(5ydHCiB~PuE>TV zoHjGQwP8uuk^?4<9F})ujDbEBt){FDPu%!kd#DCWXgIsh7Qz&h1wyb2)Le@xw)^TT9$C#3Tjv#v6!Lw#7~5c2Vx0A7s{w+3-Tjd zpPl<$Y;T*XSrrdSu4X-NS-m-xxgrV1jVH6k<8aVl5;gU!BlD!=wk4)Ju{+xWF(N4} z!W>EP$DQgGvD>*~bXCO<4WRNsh<4NNdSj=&UBLZaduI9d@nP@J8mUmV}J3=_vV~zB_n1`<@|NAe+xW(fe9ktk0~johySO zm=Kq71S2-U&Z$5C87Lbu>lasVH42}ud1C*J3H3G8xvybMG*MC zGd%c!f{Byc4BIf$(M$}(kzJpW{5h>;BhkpDCVnH>sMggO(K!hU0E&AtO&h7dx}Rs8 z?EJ5Jj{pAUd$|@Onkt$?FEbJxOvV4!zQ5_e{*V8zI^uiSvk$v#bZL)I@Bp$^8*sfM zpR>DvrK}d8*Z&E{2LYL&Ww1|Oy$|?C0rn0pdj4dO_xEmkZ;}oS;YX}Jjy?UE*0e9K zK8SA{lIQRvCycJoch2|!?H?eJMB>%++t*5-NX|@}_`0#0Y_QY!r%v-PKA#RZfHPV< z1x#Xqa{22jQp1>kfG>&x6It8B0Z|P$Tc4QucF?trt16BtGp)PRkfed9n&O1iNM4Bu zl%PJ?fie%_&bH0wJ1j{_uHfcv_JM(UKylJo2R@SAl#o9dV5cHI49AhGdZLhHus5N? zYP`yYhy4a$p*p+}dP4C#8nD;SR|KG+NBm1X%3${HYtI4uoPk8Kis@mt{giQNh;lqE z$_jO91us!zRYw~PEP0NF08XkNwx@w|FY|bT(O0(j1F#;Vop#z4TVO7cwHk;1 zA}2yXp4?nRL@3T(cgW zFOTQ`7=b&(Is579xIc)*RCyowAtj|vmGD{z7EQS-f3)1$C$K!c*l(Y z|6TwR#4J7iyiC+XAEbB))sN0?<*ckj<9oMXuxnXRxdb;M@SQh4F00tC@Y51Fv zB|q6;VzsQJaD1pK4kS~}3NvAs<|z(YHez@R>P!ErA~(Ushv6LL0i^iZI|=_p7(Lkl@+gsK~G=)P?WeO0{~U!0HHC2bKlbQxDO@ZSpbCi z$0OG}<-qbAL5Kf5$v^hrCVCI@!h*b#x1!6p$xTE!u>a8=z@854zbd@;EgGT8*vP*? zsl8LImu%O4@EKY*K{mirpgulC>@2`|Q`Z}-n~5ctGL?uHizu(ICpb`^3D453_MRFvKXCdgv0w3E&FVdx`#A6A8> zo;O9{2C~h_7Oa*(Azvd21rChPt>A}?m{{ULJ5?K@s8w%m3omR_;IOLCxbS>Dg=HEQI;f`Ox3vUqIte9kuUSr{X*^od!FYvQ^fnD!A6Tt7q;nvEIOk=o9e~4sl3B`c)HoKw| zXi)xiH;SFB@>&S0zR4y3L1JVtpF65+I8h`zLS})FLNDjy{!j%Og;^Q%_y1P6` zkzHsXUMb##uWNzziGJYrmg0jShDF}&`-Hl)1ozzv z{5>tR(bv6Tlvm%CC?gQp4H*~RJ;kIGwnHezf4+e^)A>&J+{k#4Xc53dlHrb$Rqt> zDK&F+fz9W01mg_Dc85mQ>ptZ1i?I-{iKsP$RE-k!?q$T|r|v263}JJ$ZFByc|DX{^ z_O&hGV)RQ@smaBfTbHW81nI9GU`G0edLP5gU3o z9l3noPuLaRH-&hOd))Yo(xvvN%4r%_sRDT(HPYCX(TKkBuM{ z@+){SV(*&7TAE3!NvQbG zAputb1$0Ogme{H|a@1G@rtB%-z5xPEt{f3SJNDEhR)pk8k&t7pHUprI@O}#RSK53Z zUb&k8W*~ClkU?4y1C^d*&KAglrE1Mh6o~KqQxBDobHbV)e9szik~E0QLoDrx^I50Q zi8+VwO%P1do?+S?zAZaa{<)R7J-Ju4wq$4H?bZlWGm|#QJE6Il|M~vh4A4pv@6{s~ ze!CPoxc5K52c{np0E@(Ls+xeKDIDNb0|@klJoo_4OLylR!y_Z^SP`(%VfYokJ473s z)ee4)6%~2k4Yd=dYPUP$M(u9ce6L1Jmx#E^l(W~{^1B7%Y`r3r`B#Q&3motGDBJC2 zwXiFf$&D&zGw<-?Xmk8>0t7v?5<&iQZD);UHH*_a0+x+8=nB1Gnjx{?YYOjF8<)Rt zU-ff4pN=%QH1AKGC%Do&0;0P`R-#yqayOIZ;Zp4a`` zsX-aUG=8$$vj(yFR%=E8KU0T*wvP;l(odeQSTM$s_~pxIQ+7azDMI@M^qcZsu7#B? zc|j}kqVTrjLT%Vy!K_D)SrK|cWE zaFH5tc@KCXsnS&e)MMIjp*~T=g9)QkZZ3#7?UQ8 z^R8xk==N_zV|v7%xd+WH<78g=7dhN;cJynbKlYxhauHT}(e$0XKK-dvWJtyn?$NkL4#OlcYooD&cos{V?{!S4H42{`>tXR8FnjP_a?ET1zYe z&TbgyA43?}4-r4b~W6JzuHCgZX%;w-drxz~W zU!+F*e0@|38b8(za&8~X&o^WU6;xXLjHM=fMqJ9_mt(%TQXAH=CW4%QAgH@6vLDV+N(Wu&u=WQ?JwemuB7Qu#$MWQdQ05 zlCWS~IRQgbxYu&1E{tk|qg`gX!W<`&QrH~d z+s=y7L56M3)^t8h7N1ML#9hnEk3EsM9kKP-GY=p3r(%U7weOSJog*hz9U(e+`J>j?Ouq( zpA(A2(%3juls$EwZCK1{2PwTY)Lct?t!A9=$fZ0HcV48Su57Y})|Ho91Z;T{5AEjc z4W|nrOyta`p=klEMx{9dQbJ0s2sWoT!3oQ2kRswHV?bQa96vtods?`Hi&wlI=csqT z*$FetV>z<{(RoAMai9_^EpONA!~f3-}C zFkWMp!L8dUR{nXrsR2cA6qsaJO{$an1kgBshJD_jsEf8EGxPD(!F(>3!NX($zc(JD zV~tn1i`C)*LGx*A&bIeAhx(S5p%8T8r4N^c|Jh8$iFlk51L*0C6%DWN!$`{2vR#U) zQ=!xMTMqjH4-#HUizh*6@4&GpgeDTg^^dJhHE+gKC>%5RAr zC>-{cCjBi#Pdz-NTsmLmHb=VcYwmn>k-UsDDSJvMP~YuJu?*$B_)5dXLb)W&*fJ2e zeMNFlI?tk_8A6z!%4bs4^mKK^940muXcGT2GpR5n%a+cGef9EoPg!3#Ot|D#|MF#E z=kkx{i^&gAGT}+!fQaGU>agDt=lgoYQ|rmvRDB|mfo8x01`Qv%H0_vaxnERjo+c;j*r4>5QVi2m3x zS)3G(B}8jp)>F{}ESkI5A{46wCWc89}dS0*6WByiemIG%bU>Vmr zGcI}a?h6vQ>~!hde1>0BCrih>dzpf6)iXTOMBI(azKZWfyhcxsaESeKO(ykZguMp! zPk64x+OF;2D)Q=@+N^+p*)3Y$8Pe!D>Uf_k3CcK9T_78!?zdw`TqK`*|LRptc>QJv zvS4!9O``(1GoX>NfNsES2A$M46y4WARoPbsk=VqcVsR6ZC~V%pf6;6+$!v$6(L&Dv>2NMePnA+0&j zG}Cm{7-_xP-ut21-ewwROu9KKVh=kl@pZs_Q;R3Y#!u_uRQh}z4Nm!-p0QuY+pJiw zQ8Ht_*#U@}Jmu~>>)f5KjRT7=yrM#*68Efa2f&GRfB-Xy3Xu|Y#R&SzR0(9yAOL3M z(_u{sLzpwbhCa+4HR`qC|I7#h^g^FJw(IV-~N7S!!N zh7RJ{_|5J|N(GYSSc%fAg&!k>3SDq}LO|f->lQs<>;B;~y8A-L^l>?Nv?H>L?Z0rw z2M{b>s z&nhDbY~J?JPPykG?#-$6y#mKmZziAamfi`*u5(Jg>8_e2TwpeAb_W=+0no{^E6HCL ztf;V%$nc<$A1mulDjq5syNQ+C_obO z?PU!8J!twDi+-ptGqPD)s}7KyCQacGS+Ms4!* z2uqFHkVW^P&6ITFblFAM;-({}C5PN`ORv?+zbDk2SoKQR6hAyxN%8Zn#qG zfaIzz6FVgm;L> zQ1H5U-);WbSI-tm6#3Jd$vf}1`JMAvdPg;5!jR|v6DxJwOYC^x1uJT2H_vG1Zt2;z zX@HUcluv^s@Dd~Y0#=`ALS$4m0rgCS3xQ6YYUX{ksw=C1+t;17Rb3~HpznHroBrun z7W`hp<)~=*t4k!*yodxdTa9oW+GrIaU5IjXJ7dS4uBR=ksi~nU75{lLQp%>8(661i z#lA6N3S=$xdf#DRyt=0MeEEUv&+}O>)E10x|C-^?WyKGr+W81+u-0}1RS~Y}9d;Pm z0Y{V=N|kKWpjZut!TFo=)R(Rrhv;8rdM_f13dnd#`|_yz;nIbNO3||8%s)V_!JEy{ ziIN`;=IZS;H6-_Yhe2QKjRC3Sm*1_{xKT_@OnDU)F{DDlpGWmOI74fQP*72wfgN1W zZT0ix0PR~081!}vD0G1m6>0c)=Z-kH9Dk~nj{tgJ#cF(U2!L*`!zEy?mqzrXE&le_ z?Pia@4~9y`fVSO*7+8K5UeH{``^yK)j;Bj(qjr@L708$Woc4Iggaff+FqDVsmAub7 zRpQI>xik!~k+C7lj&epl{yT+qIYF8YhUr`fnaZ?_&13{1VAhLT_ZX1*qw`Bv?R8@;~NlG!6 zM4%U4=d)Y^PbM`nnmSXmEH&1NwFUG(K7PcY>2JG@w*&*{p43z4u{Bbxu3AG6mjdx1 z!j7zgdkp^uO{qB9d-B7azETW=ev1ZNcqk?$_;m9GLZae^VP#=SPQn7iYI0c$eLX7^ z%V7m7^2P5gZjQ?!T=>gp7u&-eB#9?M;22EZ@hxPi}4JaqJ zhD%f3+?adrr(2C!`jmrh1@Bj#j&J!L0-jeM{~!qe0gC3YdiL|0FnH;5!PjEEa+{2x zqG42a&S=}=F#6QWp9s=zoKBJYoUoySzru8p#d#;61{uan1;37MM-ZlWBQ@q`VmI*o zZl?{f)jE7`7ruYo$ij33^^(}6N*@z)&G_qS!NQJVC`R`3@ zR$?lNw>l_xX zb*m1XTVPY5=LE&ycEs#hw|08|fO#Nf8limI%?Y`Mx!6#inxu?0EQ~Mv%)UlB0~pVu zBHv=kzvbVQ2?(VRrme+b7}|+g~A0p6vok`{1xuNryg!g!#>)ZL7t0HBE0M{ z8s3RszMYF(VXY_H5}B@Pep0Y=lY8W#8)^9EAN8zIKfp)SH63bJ4`S1svrFe|ml!ev zCr<@*Y{LF}M=3# zu&Md5yJYcoYZGcMMIES~4?d@Eox6<&Ip@G@s`SC!R0}xL-ZGA@^ zjv+BK-L|uR|7iIB#Df(z_=$*UXGVr>Yb3t%afqkqzxPzc3OgP2f{!&Xg8KRqmT(muoqk00l6`Ev z`1n7rt7=T}F~()x^nyONkX8PJR^`!b<=OI{mL*rtbF&=9eIuX8FeD*7;ZJ)&MZ>+7 zPrPROT<(qk_)virFn&86KqF(JWp>pgXagFH0aI`3B~S3(3v7+}+4DV(w;iqeq-VXN zs~U1EMNv0~ZD~WlgKBIC#7$7f`&#Vrjy26y2kMx_BgfRb@#bNE>LqO)>9F25c}$U- z>+JXKeg;gpw(=DGwW` z)qhAGOI(xIN~$B;A=_MpVpU?~3_+64L2<4gShLx#9dq}MB42Y8&%Peaegqh%imz_j zEa6@;o1v5jC%bvCUy9b(@7OU5fm<~4Wnppb=fQ1_o{g@sFIKt{lBR(v7Rk8! zS5NJemZ~3o^8<6kM<)-Hh1)nrENXM9xskm_tyIq2&`vkY3anYWA*GH|SAOXA1VQ82 z{pI;CYAKTV?6ctGgY!4f?ljrYyzPYw+OPVdX^bFWEA|LU@lSXc#GWN)*8BF=Rbb?jd3mNQ(U)^O= z@%4^B#X?d{6XWx@R5c31Y686({g#0@(V7WiMI8fiLC=am(V)Nt{oQq+jQVRuH|kl?N+yypi#{_2Zt#fX*s z_$&AZ-4hXZNV~HoB{C8SDDrvtJ%wKDkNm)P8*dnD>S9kpiAbzjn}tNrX5Id+eh1_FT^M+AXpuo`G-(5&$k3@;ZRw&? zi3~J-gUK-nZP*9Q#B5n*gqdmHLi{4t90+ylpZ;Rg<$ep(JXY~xkdg*0A*%EV`mz*s z5Mw|arT#m*JNqix;H5H}>i!;*=rz`tpdQ4tSXzb;(ePBJ^>p0`rfiXUYM5uSrc7UE z#||Y2UT>MCc=hI(o%d0Cn!;Z{Tx9&+CZ&!gk(X20D=vMbtWPT-nDlVX14DGww1$?J z2=IM;W+1moIJo(ml}D!#Dy%4ziK$^@Hahl@!Qx_hHXF)yHlz&SBkYHR1dHuQ#vkhu z(MahByLYLcDg?0zgU0jX`r4A>#ioLvn8{*837T=)&rTAVSi4ncU}SuR z7_C@;=L?&#+!<#D8GAk;v7}}KBDqe_r)qu!^=7$s-nSDtxXTg4*uFP2GF66tUuY78 ztU1G$?Y8b~N&E8f0+BsKC=_*3qmYn{FFw!ge(}75L|Io${YJmrK@F?>bUVf{y+{_J z|3XHS1m!p$@GS~TN+4>WSfoBrt^CN}Cu?!IsBLDc7(?QqkLguTcuR%A0sp&vp1Bex zhUmd`{Fnz>@-}C=;QK+2AfqzgBsj70JVueZEB$n3A5IkqGZd(mtFkGJ!WI+sWo8Gt`6w;FlG>qk}s;Dh5n4?}`9U1msHDn;> z-t)aqXIVE~nEaB#ocJ`EB64Sj|9-1|A6$cw_q3%7;tq8XKGF9|U#l~bD9F!;hSC|? zvmMJ#m(S17H_;VtRC0S+`Jrs5$NHhE>1!8l-5l57k!}7xZ9gSkH(Q3e$@{kMrBnBe zDcLg#?w<0)#_wK*qim{E@0;fN*&0(Ip&j18neSrIz7lGsyve~w&B=;3to)N8ZHc(}PM_Qy(xd=gg_?Kc*l-WS0dPECtaq5aaaD+>3l8aLj) zZK;0Zq5VS$&1;;wM`}!u5gpL$+RKAA6Sg0J70!b-dn@7AHjM?^}|2XmWeC(ZQ9z}oB ze<*TO-0d3|PrmXi-Te}fs*#@+nab>LW>z?M0jtgR$W#&$MqXjl+x`_HeuDV z)OpOD(iwI1@0g0U>R`l~m8YYs$pL5SE$CHQ1|(x_T#25NY)aPbg_WUDetOE#xNy&r2N#XVFcE#6QT2*Mt%PF3q_C&aywAX> z>=vrW*6eZ_(SaM1#y>f+a6PhXg=9Q&bB`bF!Jo~WJt+yF%axakERvj%!Mrg$n?S!i z*DO`(mAv+c zUmf)}L(Ti`fiGZvF-WVBf&)ul9b?LFT^v}Aq$Cx4>Grg31)nU<&3`JDGCUe=(Ie?B z-9nWp!AuTEo^OCewp{t;lwSY-%B8Q!8Xfy#&Ei|)*1hQI^{%_Ej(e^DP?-)79QV@> zmgf5Frk%b4zI%hwDdU{E@v!>t=g?@?hr5fG0(;b2K-iM$dWcb&SmSLBDin|#uAD(% zJf7;_#Ih1Vr=e6wVx8veJ-4@`W_OEk>pM^O}-=B(&9f zd&!1bP06Ux3%`YxRK+P-$;ikUNPkjn1)#Pc>qEJJ=`!#U{=T_vsh?9PJJ{G@m3A1` zylC8~BX7*lb0*&AYU*D634)>g10?;dTbGJ!1TC2LLd!l@Y>*RPuNYH z*T}zzJz*G-qa-rX@olk2^y3o=XV?OAuxA7DU`f*(rM zwM@d%T9t*5mpO8nFLID43zusnrH@Y&A)t~*sOx$x7tAa>!>GBVqWXGvt712<$8=M+ z^zW1O4+9!G3dc*n+`h+;?N{{j;%O#`Z1y+*d6-;#4o+ra8lwheB7Z$^1XjE(IBz_6p}_MF~Rg)5mUR;VK@vYs4l()VmFzcB^aMubHz^p)7+e zN{D+Osu3VYd>&5;t>DgODFi>XZJf4!gVE2BZwzWz*z35bG zK#fHfov+7n#Qw44n0ctYpIhJIu@C|=HR)75?f2XIV@%l&C#Ea!>F@9690?|T5= Date: Fri, 10 Apr 2026 03:54:40 +0000 Subject: [PATCH 2/7] Add StoneVariantTile for granite, diorite, andesite and polished variants Implements a new tile class (block ID 19) supporting 6 stone variant subtypes via data values: granite (0), polished granite (1), diorite (2), polished diorite (3), andesite (4), and polished andesite (5). Each variant maps to its own texture index on the atlas row 8. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- .../src/world/level/tile/StoneVariantTile.h | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 web-build/src/world/level/tile/StoneVariantTile.h diff --git a/web-build/src/world/level/tile/StoneVariantTile.h b/web-build/src/world/level/tile/StoneVariantTile.h new file mode 100644 index 00000000..a88f4962 --- /dev/null +++ b/web-build/src/world/level/tile/StoneVariantTile.h @@ -0,0 +1,62 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__StoneVariantTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__StoneVariantTile_H__ + +//package net.minecraft.world.level.tile; + +#include "../material/Material.h" + +#include "Tile.h" + +class StoneVariantTile: public Tile +{ + typedef Tile super; +public: + // Data values + static const int DATA_GRANITE = 0; + static const int DATA_POLISHED_GRANITE = 1; + static const int DATA_DIORITE = 2; + static const int DATA_POLISHED_DIORITE = 3; + static const int DATA_ANDESITE = 4; + static const int DATA_POLISHED_ANDESITE = 5; + static const int DATA_COUNT = 6; + + // Texture indices (col + row * 16) + static const int TEX_GRANITE = 5 + 8 * 16; // 133 + static const int TEX_POLISHED_GRANITE = 6 + 8 * 16; // 134 + static const int TEX_DIORITE = 7 + 8 * 16; // 135 + static const int TEX_POLISHED_DIORITE = 11 + 8 * 16; // 139 + static const int TEX_ANDESITE = 12 + 8 * 16; // 140 + static const int TEX_POLISHED_ANDESITE = 13 + 8 * 16; // 141 + + StoneVariantTile(int id) + : super(id, TEX_GRANITE, Material::stone) + { + } + + virtual int getTexture(int face, int data) { + switch (data) { + case DATA_GRANITE: return TEX_GRANITE; + case DATA_POLISHED_GRANITE: return TEX_POLISHED_GRANITE; + case DATA_DIORITE: return TEX_DIORITE; + case DATA_POLISHED_DIORITE: return TEX_POLISHED_DIORITE; + case DATA_ANDESITE: return TEX_ANDESITE; + case DATA_POLISHED_ANDESITE: return TEX_POLISHED_ANDESITE; + default: return TEX_GRANITE; + } + } + + static int getTileDataForItemAuxValue(int auxValue) { + return (auxValue & 0xf); + } + +protected: + int getSpawnResourcesAuxValue(int data) { + return data; + } + + static int getItemAuxValueForTileData(int data) { + return data; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__StoneVariantTile_H__*/ From 1e371a5ba72bf0d2ff7bfab97896564ccc2ae437 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 10 Apr 2026 04:01:48 +0000 Subject: [PATCH 3/7] Add new tile header files: StoneVariantTile, WoodPlanks, HayBlockTile, LeverTile, ButtonTile, PressurePlateTile, NoteBlockTile, DispenserTile, DiodeTile, RedstoneTorchTile Agent-Logs-Url: https://github.com/sriail/MCPE-WASM/sessions/2a40c645-cad8-4827-b4f7-86e7eed5d684 Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- web-build/src/world/level/tile/ButtonTile.h | 147 ++++++++++++++++++ web-build/src/world/level/tile/DiodeTile.h | 135 ++++++++++++++++ .../src/world/level/tile/DispenserTile.h | 50 ++++++ web-build/src/world/level/tile/HayBlockTile.h | 34 ++++ web-build/src/world/level/tile/LeverTile.h | 132 ++++++++++++++++ .../src/world/level/tile/NoteBlockTile.h | 51 ++++++ .../src/world/level/tile/PressurePlateTile.h | 111 +++++++++++++ .../src/world/level/tile/RedstoneTorchTile.h | 76 +++++++++ web-build/src/world/level/tile/WoodPlanks.h | 49 ++++++ 9 files changed, 785 insertions(+) create mode 100644 web-build/src/world/level/tile/ButtonTile.h create mode 100644 web-build/src/world/level/tile/DiodeTile.h create mode 100644 web-build/src/world/level/tile/DispenserTile.h create mode 100644 web-build/src/world/level/tile/HayBlockTile.h create mode 100644 web-build/src/world/level/tile/LeverTile.h create mode 100644 web-build/src/world/level/tile/NoteBlockTile.h create mode 100644 web-build/src/world/level/tile/PressurePlateTile.h create mode 100644 web-build/src/world/level/tile/RedstoneTorchTile.h create mode 100644 web-build/src/world/level/tile/WoodPlanks.h diff --git a/web-build/src/world/level/tile/ButtonTile.h b/web-build/src/world/level/tile/ButtonTile.h new file mode 100644 index 00000000..271232d1 --- /dev/null +++ b/web-build/src/world/level/tile/ButtonTile.h @@ -0,0 +1,147 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__ButtonTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__ButtonTile_H__ + +//package net.minecraft.world.level.tile; + +#include "Tile.h" +#include "LevelEvent.h" +#include "../Level.h" +#include "../material/Material.h" +#include "../../entity/player/Player.h" +#include "../../phys/AABB.h" + +class ButtonTile: public Tile +{ + typedef Tile super; + + static const int DIRECTION_MASK = 7; + static const int PRESSED_BIT = 8; + +public: + ButtonTile(int id, int tex) + : super(id, tex, Material::decoration) + { + setTicking(true); + } + + bool isSolidRender() { return false; } + bool isCubeShaped() { return false; } + + int getRenderShape() { + return Tile::SHAPE_BLOCK; // Renders as a small cube + } + + AABB* getAABB(Level* level, int x, int y, int z) { + return NULL; // no collision + } + + bool mayPlace(Level* level, int x, int y, int z) { + return level->isSolidBlockingTile(x - 1, y, z) + || level->isSolidBlockingTile(x + 1, y, z) + || level->isSolidBlockingTile(x, y, z - 1) + || level->isSolidBlockingTile(x, y, z + 1); + } + + int getPlacedOnFaceDataValue(Level* level, int x, int y, int z, int face, float clickX, float clickY, float clickZ, int itemValue) { + int data = 0; + switch (face) { + case 2: data = 4; break; + case 3: data = 3; break; + case 4: data = 2; break; + case 5: data = 1; break; + default: data = 1; break; + } + return data; + } + + void updateShape(LevelSource* level, int x, int y, int z) { + int data = level->getData(x, y, z); + int dir = data & DIRECTION_MASK; + bool pressed = (data & PRESSED_BIT) != 0; + float depth = pressed ? 1.0f / 16.0f : 2.0f / 16.0f; + + if (dir == 1) setShape(0, 5.0f/16, 6.0f/16, depth, 11.0f/16, 10.0f/16); + else if (dir == 2) setShape(1.0f-depth, 5.0f/16, 6.0f/16, 1, 11.0f/16, 10.0f/16); + else if (dir == 3) setShape(6.0f/16, 5.0f/16, 0, 10.0f/16, 11.0f/16, depth); + else if (dir == 4) setShape(6.0f/16, 5.0f/16, 1.0f-depth, 10.0f/16, 11.0f/16, 1); + } + + void neighborChanged(Level* level, int x, int y, int z, int type) { + int data = level->getData(x, y, z); + int dir = data & DIRECTION_MASK; + bool canStay = false; + + if (dir == 1 && level->isSolidBlockingTile(x - 1, y, z)) canStay = true; + if (dir == 2 && level->isSolidBlockingTile(x + 1, y, z)) canStay = true; + if (dir == 3 && level->isSolidBlockingTile(x, y, z - 1)) canStay = true; + if (dir == 4 && level->isSolidBlockingTile(x, y, z + 1)) canStay = true; + + if (!canStay) { + spawnResources(level, x, y, z, data); + level->setTile(x, y, z, 0); + } + } + + bool use(Level* level, int x, int y, int z, Player* player) { + int data = level->getData(x, y, z); + int dir = data & DIRECTION_MASK; + level->setData(x, y, z, dir | PRESSED_BIT); + + level->levelEvent(player, LevelEvent::SOUND_CLICK, x, y, z, 0); + + level->updateNeighborsAt(x, y, z, id); + if (dir == 1) level->updateNeighborsAt(x - 1, y, z, id); + if (dir == 2) level->updateNeighborsAt(x + 1, y, z, id); + if (dir == 3) level->updateNeighborsAt(x, y, z - 1, id); + if (dir == 4) level->updateNeighborsAt(x, y, z + 1, id); + + level->addToTickNextTick(x, y, z, id, 20); // 1 second + + return true; + } + + void tick(Level* level, int x, int y, int z, Random* random) { + int data = level->getData(x, y, z); + if ((data & PRESSED_BIT) == 0) return; + + int dir = data & DIRECTION_MASK; + level->setData(x, y, z, dir); // un-press + + level->updateNeighborsAt(x, y, z, id); + if (dir == 1) level->updateNeighborsAt(x - 1, y, z, id); + if (dir == 2) level->updateNeighborsAt(x + 1, y, z, id); + if (dir == 3) level->updateNeighborsAt(x, y, z - 1, id); + if (dir == 4) level->updateNeighborsAt(x, y, z + 1, id); + + level->levelEvent(NULL, LevelEvent::SOUND_CLICK, x, y, z, 0); + } + + bool isSignalSource() { + return true; + } + + bool getSignal(LevelSource* level, int x, int y, int z) { + return (level->getData(x, y, z) & PRESSED_BIT) != 0; + } + + bool getSignal(LevelSource* level, int x, int y, int z, int dir) { + return (level->getData(x, y, z) & PRESSED_BIT) != 0; + } + + bool getDirectSignal(Level* level, int x, int y, int z, int dir) { + int data = level->getData(x, y, z); + if ((data & PRESSED_BIT) == 0) return false; + int facing = data & DIRECTION_MASK; + if (facing == 1 && dir == 4) return true; + if (facing == 2 && dir == 5) return true; + if (facing == 3 && dir == 2) return true; + if (facing == 4 && dir == 3) return true; + return false; + } + + int getResource(int data, Random* random) { + return id; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__ButtonTile_H__*/ diff --git a/web-build/src/world/level/tile/DiodeTile.h b/web-build/src/world/level/tile/DiodeTile.h new file mode 100644 index 00000000..cdc7b4bd --- /dev/null +++ b/web-build/src/world/level/tile/DiodeTile.h @@ -0,0 +1,135 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__DiodeTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__DiodeTile_H__ + +//package net.minecraft.world.level.tile; + +#include "Tile.h" +#include "LevelEvent.h" +#include "../Level.h" +#include "../material/Material.h" +#include "../../entity/Mob.h" +#include "../../entity/player/Player.h" +#include "../../../util/Mth.h" + +class DiodeTile: public Tile +{ + typedef Tile super; + + static const int DIRECTION_MASK = 3; + static const int DELAY_MASK = 12; + + bool lit; + +public: + // Texture indices + static const int TEX_TOP = 10 + 10 * 16; // 170 + + DiodeTile(int id, bool lit) + : super(id, TEX_TOP, Material::decoration), + lit(lit) + { + setShape(0, 0, 0, 1, 2.0f / 16.0f, 1); + if (lit) setTicking(true); + } + + bool isSolidRender() { return false; } + bool isCubeShaped() { return false; } + + int getRenderShape() { + return Tile::SHAPE_DIODE; + } + + bool mayPlace(Level* level, int x, int y, int z) { + return level->isSolidBlockingTile(x, y - 1, z); + } + + AABB* getAABB(Level* level, int x, int y, int z) { + tmpBB.set((float)x, (float)y, (float)z, (float)(x + 1), (float)y + 2.0f / 16.0f, (float)(z + 1)); + return &tmpBB; + } + + void setPlacedBy(Level* level, int x, int y, int z, Mob* by) { + int dir = (Mth::floor(by->yRot * 4 / 360 + 0.5f)) & 3; + level->setData(x, y, z, dir); + } + + bool use(Level* level, int x, int y, int z, Player* player) { + int data = level->getData(x, y, z); + int delay = (data & DELAY_MASK) >> 2; + delay = (delay + 1) % 4; + level->setData(x, y, z, (data & DIRECTION_MASK) | (delay << 2)); + return true; + } + + void neighborChanged(Level* level, int x, int y, int z, int type) { + if (!level->isSolidBlockingTile(x, y - 1, z)) { + spawnResources(level, x, y, z, level->getData(x, y, z)); + level->setTile(x, y, z, 0); + return; + } + + // Check for input signal change + bool powered = hasInputSignal(level, x, y, z); + if (lit && !powered) { + level->addToTickNextTick(x, y, z, id, getTickDelay()); + } else if (!lit && powered) { + level->addToTickNextTick(x, y, z, id, getTickDelay()); + } + } + + int getTickDelay() { + return 2; // base delay, multiplied by delay setting + } + + void tick(Level* level, int x, int y, int z, Random* random) { + int data = level->getData(x, y, z); + bool powered = hasInputSignal(level, x, y, z); + + if (lit && !powered) { + // Turn off + level->setTileAndData(x, y, z, Tile::diode_off->id, data); + } else if (!lit) { + // Turn on + level->setTileAndData(x, y, z, Tile::diode_on->id, data); + if (!powered) { + int delay = (data & DELAY_MASK) >> 2; + level->addToTickNextTick(x, y, z, Tile::diode_on->id, (delay + 1) * 2); + } + } + } + + bool hasInputSignal(Level* level, int x, int y, int z) { + int data = level->getData(x, y, z); + int dir = data & DIRECTION_MASK; + // Check the block behind the repeater + switch (dir) { + case 0: return level->getSignal(x, y, z + 1, 3); + case 1: return level->getSignal(x - 1, y, z, 4); + case 2: return level->getSignal(x, y, z - 1, 2); + case 3: return level->getSignal(x + 1, y, z, 5); + } + return false; + } + + bool isSignalSource() { + return true; + } + + bool getSignal(LevelSource* level, int x, int y, int z, int dir) { + return lit; + } + + bool getSignal(LevelSource* level, int x, int y, int z) { + return lit; + } + + int getResource(int data, Random* random) { + return Item::diode->id; + } + + int getResourceCount(Random* random) { + return 1; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__DiodeTile_H__*/ diff --git a/web-build/src/world/level/tile/DispenserTile.h b/web-build/src/world/level/tile/DispenserTile.h new file mode 100644 index 00000000..4e56bf20 --- /dev/null +++ b/web-build/src/world/level/tile/DispenserTile.h @@ -0,0 +1,50 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__DispenserTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__DispenserTile_H__ + +//package net.minecraft.world.level.tile; + +#include "Tile.h" +#include "../Level.h" +#include "../material/Material.h" +#include "../../entity/Mob.h" +#include "../../../util/Mth.h" + +class DispenserTile: public Tile +{ + typedef Tile super; +public: + // Texture indices + static const int TEX_FRONT = 12 + 10 * 16; // 172 + static const int TEX_SIDE = 16; // cobblestone + static const int TEX_TOP = 1 + 6 * 16; // furnace top + + DispenserTile(int id) + : super(id, TEX_SIDE, Material::stone) + { + } + + int getTexture(int face, int data) { + // data = 2,3,4,5 for facing directions (N/S/W/E) + if (face == 1) return TEX_TOP; // top + if (face == 0) return TEX_TOP; // bottom + if (face == data) return TEX_FRONT; // front face + return TEX_SIDE; + } + + int getTexture(int face) { + if (face == 1 || face == 0) return TEX_TOP; + if (face == 3) return TEX_FRONT; // default front is south + return TEX_SIDE; + } + + void setPlacedBy(Level* level, int x, int y, int z, Mob* by) { + int dir = (Mth::floor(by->yRot * 4 / 360 + 0.5f)) & 3; + // Convert rotation to facing data + if (dir == 0) level->setData(x, y, z, 2); // north + if (dir == 1) level->setData(x, y, z, 5); // east + if (dir == 2) level->setData(x, y, z, 3); // south + if (dir == 3) level->setData(x, y, z, 4); // west + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__DispenserTile_H__*/ diff --git a/web-build/src/world/level/tile/HayBlockTile.h b/web-build/src/world/level/tile/HayBlockTile.h new file mode 100644 index 00000000..07a08d78 --- /dev/null +++ b/web-build/src/world/level/tile/HayBlockTile.h @@ -0,0 +1,34 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__HayBlockTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__HayBlockTile_H__ + +//package net.minecraft.world.level.tile; + +#include "../material/Material.h" + +#include "Tile.h" + +// Hay bale block - similar to TreeTile in that it has different top/side textures +class HayBlockTile: public Tile +{ + typedef Tile super; +public: + // Texture indices + static const int TEX_SIDE = 14 + 8 * 16; // 142 + static const int TEX_TOP = 15 + 8 * 16; // 143 + + HayBlockTile(int id) + : super(id, TEX_SIDE, Material::grass) + { + } + + int getTexture(int face) { + if (face == 0 || face == 1) return TEX_TOP; // top and bottom + return TEX_SIDE; + } + + int getTexture(int face, int data) { + return getTexture(face); + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__HayBlockTile_H__*/ diff --git a/web-build/src/world/level/tile/LeverTile.h b/web-build/src/world/level/tile/LeverTile.h new file mode 100644 index 00000000..b0cac0cd --- /dev/null +++ b/web-build/src/world/level/tile/LeverTile.h @@ -0,0 +1,132 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__LeverTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__LeverTile_H__ + +//package net.minecraft.world.level.tile; + +#include "Tile.h" +#include "LevelEvent.h" +#include "../Level.h" +#include "../material/Material.h" +#include "../../entity/Mob.h" +#include "../../entity/player/Player.h" +#include "../../phys/AABB.h" +#include "../../../util/Mth.h" + +class LeverTile: public Tile +{ + typedef Tile super; + + // Data: bits 0-2 = direction, bit 3 = on/off + static const int DIRECTION_MASK = 7; + static const int POWERED_BIT = 8; + +public: + LeverTile(int id, int tex) + : super(id, tex, Material::decoration) + { + } + + bool isSolidRender() { return false; } + bool isCubeShaped() { return false; } + + int getRenderShape() { + return Tile::SHAPE_LEVER; + } + + AABB* getAABB(Level* level, int x, int y, int z) { + return NULL; // no collision + } + + bool mayPlace(Level* level, int x, int y, int z) { + // can place on any solid surface + return level->isSolidBlockingTile(x - 1, y, z) + || level->isSolidBlockingTile(x + 1, y, z) + || level->isSolidBlockingTile(x, y, z - 1) + || level->isSolidBlockingTile(x, y, z + 1) + || level->isSolidBlockingTile(x, y - 1, z); + } + + int getPlacedOnFaceDataValue(Level* level, int x, int y, int z, int face, float clickX, float clickY, float clickZ, int itemValue) { + int data = 0; + // face: 0=bottom, 1=top, 2=north, 3=south, 4=west, 5=east + switch (face) { + case 1: data = 5; break; // placed on top face - upright + case 2: data = 4; break; // placed on north face + case 3: data = 3; break; // placed on south face + case 4: data = 2; break; // placed on west face + case 5: data = 1; break; // placed on east face + default: data = 5; break; + } + return data; + } + + void neighborChanged(Level* level, int x, int y, int z, int type) { + int data = level->getData(x, y, z); + int dir = data & DIRECTION_MASK; + bool canStay = false; + + if (dir == 1 && level->isSolidBlockingTile(x - 1, y, z)) canStay = true; + if (dir == 2 && level->isSolidBlockingTile(x + 1, y, z)) canStay = true; + if (dir == 3 && level->isSolidBlockingTile(x, y, z - 1)) canStay = true; + if (dir == 4 && level->isSolidBlockingTile(x, y, z + 1)) canStay = true; + if (dir == 5 && level->isSolidBlockingTile(x, y - 1, z)) canStay = true; + if (dir == 6 && level->isSolidBlockingTile(x, y - 1, z)) canStay = true; + + if (!canStay) { + spawnResources(level, x, y, z, data); + level->setTile(x, y, z, 0); + } + } + + bool use(Level* level, int x, int y, int z, Player* player) { + int data = level->getData(x, y, z); + int dir = data & DIRECTION_MASK; + data ^= POWERED_BIT; // toggle power bit + level->setData(x, y, z, data); + + // Play click sound + level->levelEvent(player, LevelEvent::SOUND_CLICK, x, y, z, 0); + + // Update neighbors + level->updateNeighborsAt(x, y, z, id); + // Also update the block the lever is attached to + if (dir == 1) level->updateNeighborsAt(x - 1, y, z, id); + if (dir == 2) level->updateNeighborsAt(x + 1, y, z, id); + if (dir == 3) level->updateNeighborsAt(x, y, z - 1, id); + if (dir == 4) level->updateNeighborsAt(x, y, z + 1, id); + if (dir == 5 || dir == 6) level->updateNeighborsAt(x, y - 1, z, id); + + return true; + } + + bool isSignalSource() { + return true; + } + + bool getSignal(LevelSource* level, int x, int y, int z) { + return (level->getData(x, y, z) & POWERED_BIT) != 0; + } + + bool getSignal(LevelSource* level, int x, int y, int z, int dir) { + return (level->getData(x, y, z) & POWERED_BIT) != 0; + } + + bool getDirectSignal(Level* level, int x, int y, int z, int dir) { + int data = level->getData(x, y, z); + if ((data & POWERED_BIT) == 0) return false; + // Power the block it's attached to + int facing = data & DIRECTION_MASK; + if (facing == 1 && dir == 4) return true; + if (facing == 2 && dir == 5) return true; + if (facing == 3 && dir == 2) return true; + if (facing == 4 && dir == 3) return true; + if ((facing == 5 || facing == 6) && dir == 0) return true; + return false; + } + + int getResource(int data, Random* random) { + return id; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__LeverTile_H__*/ diff --git a/web-build/src/world/level/tile/NoteBlockTile.h b/web-build/src/world/level/tile/NoteBlockTile.h new file mode 100644 index 00000000..905dac3f --- /dev/null +++ b/web-build/src/world/level/tile/NoteBlockTile.h @@ -0,0 +1,51 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__NoteBlockTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__NoteBlockTile_H__ + +//package net.minecraft.world.level.tile; + +#include "Tile.h" +#include "LevelEvent.h" +#include "../Level.h" +#include "../material/Material.h" +#include "../../entity/player/Player.h" + +class NoteBlockTile: public Tile +{ + typedef Tile super; +public: + // Texture indices + static const int TEX_SIDE = 11 + 10 * 16; // 171 + static const int TEX_TOP = 4; // reuse oak plank texture for top/bottom + + NoteBlockTile(int id) + : super(id, TEX_SIDE, Material::wood) + { + } + + int getTexture(int face) { + if (face == 0 || face == 1) return TEX_TOP; + return TEX_SIDE; + } + + int getTexture(int face, int data) { + return getTexture(face); + } + + bool use(Level* level, int x, int y, int z, Player* player) { + if (level->isClientSide) return true; + int data = level->getData(x, y, z); + data = (data + 1) % 25; // 25 notes + level->setData(x, y, z, data); + // Play note sound + level->levelEvent(player, LevelEvent::SOUND_CLICK, x, y, z, 0); + return true; + } + + void attack(Level* level, int x, int y, int z, Player* player) { + if (level->isClientSide) return; + // Play the note + level->levelEvent(player, LevelEvent::SOUND_CLICK, x, y, z, 0); + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__NoteBlockTile_H__*/ diff --git a/web-build/src/world/level/tile/PressurePlateTile.h b/web-build/src/world/level/tile/PressurePlateTile.h new file mode 100644 index 00000000..f3f45acc --- /dev/null +++ b/web-build/src/world/level/tile/PressurePlateTile.h @@ -0,0 +1,111 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__PressurePlateTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__PressurePlateTile_H__ + +//package net.minecraft.world.level.tile; + +#include "Tile.h" +#include "../Level.h" +#include "../../phys/AABB.h" +#include "../../entity/Entity.h" + +class PressurePlateTile: public Tile +{ + typedef Tile super; + + static const int PRESSED_BIT = 1; + int plateTex; + +public: + PressurePlateTile(int id, int tex, const Material* material) + : super(id, tex, material), + plateTex(tex) + { + setTicking(true); + setShape(1.0f/16, 0, 1.0f/16, 15.0f/16, 1.0f/16, 15.0f/16); + } + + bool isSolidRender() { return false; } + bool isCubeShaped() { return false; } + + int getRenderShape() { + return Tile::SHAPE_BLOCK; + } + + AABB* getAABB(Level* level, int x, int y, int z) { + return NULL; // no collision box + } + + void updateShape(LevelSource* level, int x, int y, int z) { + int data = level->getData(x, y, z); + bool pressed = (data & PRESSED_BIT) != 0; + if (pressed) { + setShape(1.0f/16, 0, 1.0f/16, 15.0f/16, 0.5f/16, 15.0f/16); + } else { + setShape(1.0f/16, 0, 1.0f/16, 15.0f/16, 1.0f/16, 15.0f/16); + } + } + + int getTickDelay() { + return 20; + } + + bool mayPlace(Level* level, int x, int y, int z) { + return level->isSolidBlockingTile(x, y - 1, z); + } + + void neighborChanged(Level* level, int x, int y, int z, int type) { + if (!level->isSolidBlockingTile(x, y - 1, z)) { + spawnResources(level, x, y, z, level->getData(x, y, z)); + level->setTile(x, y, z, 0); + } + } + + void tick(Level* level, int x, int y, int z, Random* random) { + int data = level->getData(x, y, z); + if ((data & PRESSED_BIT) == 0) return; + + // Check if any entities are still on the plate + AABB checkBox(x + 1.0f/16, y, z + 1.0f/16, x + 15.0f/16, y + 0.25f, z + 15.0f/16); + EntityList& entities = level->getEntities(NULL, checkBox); + if (entities.empty()) { + level->setData(x, y, z, 0); // unpress + level->updateNeighborsAt(x, y, z, id); + level->updateNeighborsAt(x, y - 1, z, id); + } else { + level->addToTickNextTick(x, y, z, id, getTickDelay()); + } + } + + void entityInside(Level* level, int x, int y, int z, Entity* entity) { + int data = level->getData(x, y, z); + if ((data & PRESSED_BIT) == 0) { + level->setData(x, y, z, PRESSED_BIT); + level->updateNeighborsAt(x, y, z, id); + level->updateNeighborsAt(x, y - 1, z, id); + level->addToTickNextTick(x, y, z, id, getTickDelay()); + } + } + + bool isSignalSource() { + return true; + } + + bool getSignal(LevelSource* level, int x, int y, int z) { + return (level->getData(x, y, z) & PRESSED_BIT) != 0; + } + + bool getSignal(LevelSource* level, int x, int y, int z, int dir) { + return (level->getData(x, y, z) & PRESSED_BIT) != 0; + } + + bool getDirectSignal(Level* level, int x, int y, int z, int dir) { + if ((level->getData(x, y, z) & PRESSED_BIT) == 0) return false; + return dir == 0; // power downward + } + + int getResource(int data, Random* random) { + return id; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__PressurePlateTile_H__*/ diff --git a/web-build/src/world/level/tile/RedstoneTorchTile.h b/web-build/src/world/level/tile/RedstoneTorchTile.h new file mode 100644 index 00000000..070ea9b4 --- /dev/null +++ b/web-build/src/world/level/tile/RedstoneTorchTile.h @@ -0,0 +1,76 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__RedstoneTorchTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__RedstoneTorchTile_H__ + +//package net.minecraft.world.level.tile; + +#include "TorchTile.h" + +class RedstoneTorchTile: public TorchTile +{ + typedef TorchTile super; + bool lit; +public: + RedstoneTorchTile(int id, int tex, bool lit) + : super(id, tex), + lit(lit) + { + if (lit) { + setTicking(true); + } + } + + int getTickDelay() { + return 2; + } + + void tick(Level* level, int x, int y, int z, Random* random) { + // Redstone torch toggle logic + // For now, just a basic implementation + } + + bool isSignalSource() { + return lit; + } + + bool getSignal(LevelSource* level, int x, int y, int z) { + return lit; + } + + bool getSignal(LevelSource* level, int x, int y, int z, int dir) { + if (!lit) return false; + // Don't power the block the torch is attached to + int data = level->getData(x, y, z); + if (dir == 0 && data == 5) return false; + if (dir == 1 && data == 0) return false; // default (on ground) - power upward not downward + if (dir == 2 && data == 4) return false; + if (dir == 3 && data == 3) return false; + if (dir == 4 && data == 2) return false; + if (dir == 5 && data == 1) return false; + return true; + } + + bool getDirectSignal(Level* level, int x, int y, int z, int dir) { + // direct power downward when on ceiling isn't applicable + // but power the block below when placed on ground + if (dir == 0) return lit; + return false; + } + + int getResource(int data, Random* random) { + // Always drop the "on" version + return Tile::notGate_on->id; + } + + void onRemove(Level* level, int x, int y, int z) { + // Notify neighbors when removed + level->updateNeighborsAt(x, y, z, id); + level->updateNeighborsAt(x, y - 1, z, id); + level->updateNeighborsAt(x, y + 1, z, id); + level->updateNeighborsAt(x - 1, y, z, id); + level->updateNeighborsAt(x + 1, y, z, id); + level->updateNeighborsAt(x, y, z - 1, id); + level->updateNeighborsAt(x, y, z + 1, id); + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__RedstoneTorchTile_H__*/ diff --git a/web-build/src/world/level/tile/WoodPlanks.h b/web-build/src/world/level/tile/WoodPlanks.h new file mode 100644 index 00000000..cb672086 --- /dev/null +++ b/web-build/src/world/level/tile/WoodPlanks.h @@ -0,0 +1,49 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__WoodPlanks_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__WoodPlanks_H__ + +//package net.minecraft.world.level.tile; + +#include "../material/Material.h" + +#include "Tile.h" + +class WoodPlanks: public Tile +{ + typedef Tile super; +public: + // Data values + static const int DATA_OAK = 0; + static const int DATA_SPRUCE = 1; + static const int DATA_BIRCH = 2; + static const int DATA_COUNT = 3; + + // Texture indices (col + row * 16) + static const int TEX_OAK = 4; // existing oak planks texture + static const int TEX_SPRUCE = 3 + 8 * 16; // 131 + static const int TEX_BIRCH = 4 + 8 * 16; // 132 + + WoodPlanks(int id) + : super(id, TEX_OAK, Material::wood) + { + } + + int getTexture(int face, int data) { + switch (data) { + case DATA_OAK: return TEX_OAK; + case DATA_SPRUCE: return TEX_SPRUCE; + case DATA_BIRCH: return TEX_BIRCH; + default: return TEX_OAK; + } + } + + int getTexture(int face) { + return TEX_OAK; + } + +protected: + int getSpawnResourcesAuxValue(int data) { + return data; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__WoodPlanks_H__*/ From 386ee4341ad025b4075a51ad9f31044da0480f58 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 10 Apr 2026 04:07:20 +0000 Subject: [PATCH 4/7] Add block initializations, crafting recipes, ore generation for stone variants, redstone components, wood variants Agent-Logs-Url: https://github.com/sriail/MCPE-WASM/sessions/2a40c645-cad8-4827-b4f7-86e7eed5d684 Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- web-build/src/world/item/crafting/Recipes.cpp | 218 ++++++++++++++++++ .../level/levelgen/RandomLevelSource.cpp | 29 +++ .../levelgen/feature/OreFeatureWithData.h | 80 +++++++ web-build/src/world/level/tile/DiodeTile.h | 2 +- web-build/src/world/level/tile/LeverTile.h | 2 +- .../world/level/tile/StoneVariantStubTile.h | 30 +++ web-build/src/world/level/tile/Tile.cpp | 91 +++++++- web-build/src/world/level/tile/Tile.h | 24 ++ web-build/src/world/level/tile/TileInclude.h | 10 + 9 files changed, 483 insertions(+), 3 deletions(-) create mode 100644 web-build/src/world/level/levelgen/feature/OreFeatureWithData.h create mode 100644 web-build/src/world/level/tile/StoneVariantStubTile.h diff --git a/web-build/src/world/item/crafting/Recipes.cpp b/web-build/src/world/item/crafting/Recipes.cpp index a97af3bf..6a668cbb 100644 --- a/web-build/src/world/item/crafting/Recipes.cpp +++ b/web-build/src/world/item/crafting/Recipes.cpp @@ -12,6 +12,9 @@ #include "OreRecipes.h" #include "../CoalItem.h" #include "../../level/tile/StoneSlabTile.h" +#include "../../level/tile/StoneVariantTile.h" +#include "../../level/tile/TreeTile.h" +#include "../../level/tile/WoodPlanks.h" /*static*/ Recipes* Recipes::instance = NULL; @@ -467,6 +470,221 @@ Recipes::Recipes() definition('#', Item::emerald, 'X', Item::ironIngot)); + // ========================================== + // NEW BLOCKS & RECIPES + // ========================================== + + // Spruce planks (from spruce logs) + addShapedRecipe(ItemInstance(Tile::wood, 4, 1), // data=1 = spruce planks + "#", // + + definition('#', ItemInstance(Tile::treeTrunk, 1, TreeTile::DARK_TRUNK))); + + // Birch planks (from birch logs) + addShapedRecipe(ItemInstance(Tile::wood, 4, 2), // data=2 = birch planks + "#", // + + definition('#', ItemInstance(Tile::treeTrunk, 1, TreeTile::BIRCH_TRUNK))); + + // Spruce fence + addShapedRecipe(ItemInstance(Tile::fence_spruce, 3), // + "#S#", // + "#S#", // + + definition('#', ItemInstance(Tile::wood, 1, 1), 'S', Item::stick)); // spruce planks + + // Birch fence + addShapedRecipe(ItemInstance(Tile::fence_birch, 3), // + "#S#", // + "#S#", // + + definition('#', ItemInstance(Tile::wood, 1, 2), 'S', Item::stick)); // birch planks + + // Spruce fence gate + addShapedRecipe(ItemInstance(Tile::fenceGate_spruce, 1), // + "#W#", // + "#W#", // + + definition('#', Item::stick, 'W', ItemInstance(Tile::wood, 1, 1))); + + // Birch fence gate + addShapedRecipe(ItemInstance(Tile::fenceGate_birch, 1), // + "#W#", // + "#W#", // + + definition('#', Item::stick, 'W', ItemInstance(Tile::wood, 1, 2))); + + // Spruce stairs + addShapedRecipe(ItemInstance(Tile::stairs_spruce, 4), // + "# ", // + "## ", // + "###", // + + definition('#', ItemInstance(Tile::wood, 1, 1))); + + // Birch stairs + addShapedRecipe(ItemInstance(Tile::stairs_birch, 4), // + "# ", // + "## ", // + "###", // + + definition('#', ItemInstance(Tile::wood, 1, 2))); + + // Spruce slab (using WOOD_SLAB variant since slabs use data differently) + // NOTE: Original wood slab recipe already produces oak slabs + + // Polished stone variants (crafted from 4 of the raw stone variant) + addShapedRecipe(ItemInstance(Tile::stoneVariant, 4, StoneVariantTile::DATA_POLISHED_GRANITE), // + "##", // + "##", // + + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_GRANITE))); + + addShapedRecipe(ItemInstance(Tile::stoneVariant, 4, StoneVariantTile::DATA_POLISHED_DIORITE), // + "##", // + "##", // + + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_DIORITE))); + + addShapedRecipe(ItemInstance(Tile::stoneVariant, 4, StoneVariantTile::DATA_POLISHED_ANDESITE), // + "##", // + "##", // + + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_ANDESITE))); + + // Diorite crafting (cobblestone + nether quartz) + addShapedRecipe(ItemInstance(Tile::stoneVariant, 2, StoneVariantTile::DATA_DIORITE), // + "CQ", // + "QC", // + + definition('C', Tile::stoneBrick, 'Q', Item::netherQuartz)); + + // Andesite crafting (cobblestone + diorite) + addShapelessRecipe(ItemInstance(Tile::stoneVariant, 2, StoneVariantTile::DATA_ANDESITE), // + definition('A', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_DIORITE), + 'B', Tile::stoneBrick)); + + // Granite crafting (diorite + nether quartz) + addShapelessRecipe(ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_GRANITE), // + definition('A', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_DIORITE), + 'B', Item::netherQuartz)); + + // Stone variant stairs + addShapedRecipe(ItemInstance(Tile::stairs_granite, 4), // + "# ", // + "## ", // + "###", // + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_GRANITE))); + + addShapedRecipe(ItemInstance(Tile::stairs_diorite, 4), // + "# ", // + "## ", // + "###", // + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_DIORITE))); + + addShapedRecipe(ItemInstance(Tile::stairs_andesite, 4), // + "# ", // + "## ", // + "###", // + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_ANDESITE))); + + addShapedRecipe(ItemInstance(Tile::stairs_polGranite, 4), // + "# ", // + "## ", // + "###", // + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_POLISHED_GRANITE))); + + addShapedRecipe(ItemInstance(Tile::stairs_polDiorite, 4), // + "# ", // + "## ", // + "###", // + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_POLISHED_DIORITE))); + + addShapedRecipe(ItemInstance(Tile::stairs_polAndesite, 4), // + "# ", // + "## ", // + "###", // + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_POLISHED_ANDESITE))); + + // Redstone components + addShapedRecipe(ItemInstance(Tile::lever, 1), // + "X", // + "#", // + + definition('#', Tile::stoneBrick, 'X', Item::stick)); + + addShapedRecipe(ItemInstance(Tile::notGate_on, 1), // + "X", // + "#", // + + definition('#', Item::stick, 'X', Item::redStone)); + + addShapedRecipe(ItemInstance(Item::diode, 1), // + "#X#", // + "III", // + + definition('#', Tile::notGate_on, 'X', Item::redStone, 'I', Tile::rock)); + + addShapedRecipe(ItemInstance(Tile::button, 1), // + "#", // + "#", // + + definition('#', Tile::rock)); + + addShapedRecipe(ItemInstance(Tile::pressurePlate_stone, 1), // + "##", // + + definition('#', Tile::rock)); + + addShapedRecipe(ItemInstance(Tile::pressurePlate_wood, 1), // + "##", // + + definition('#', Tile::wood)); + + // Note block + addShapedRecipe(ItemInstance(Tile::musicBlock, 1), // + "###", // + "#X#", // + "###", // + + definition('#', Tile::wood, 'X', Item::redStone)); + + // Dispenser + addShapedRecipe(ItemInstance(Tile::dispenser, 1), // + "###", // + "#X#", // + "#R#", // + + definition('#', Tile::stoneBrick, 'X', Item::bow, 'R', Item::redStone)); + + // Redstone block + addShapedRecipe(ItemInstance(Tile::redstoneBlock, 1), // + "###", // + "###", // + "###", // + + definition('#', Item::redStone)); + + // Redstone from block (uncompacting) + addShapedRecipe(ItemInstance(Item::redStone, 9), // + "#", // + + definition('#', Tile::redstoneBlock)); + + // Hay bale + addShapedRecipe(ItemInstance(Tile::hayBlock, 1), // + "###", // + "###", // + "###", // + + definition('#', Item::wheat)); + + // Wheat from hay bale + addShapedRecipe(ItemInstance(Item::wheat, 9), // + "#", // + + definition('#', Tile::hayBlock)); + LOGI("%d recipes\n", (int)recipes.size()); } diff --git a/web-build/src/world/level/levelgen/RandomLevelSource.cpp b/web-build/src/world/level/levelgen/RandomLevelSource.cpp index aa260cc7..fd15779a 100644 --- a/web-build/src/world/level/levelgen/RandomLevelSource.cpp +++ b/web-build/src/world/level/levelgen/RandomLevelSource.cpp @@ -1,6 +1,7 @@ #include "RandomLevelSource.h" #include "feature/FeatureInclude.h" +#include "feature/OreFeatureWithData.h" #include "../Level.h" #include "../ChunkPos.h" #include "../MobSpawner.h" @@ -10,6 +11,7 @@ #include "../material/Material.h" #include "../tile/Tile.h" #include "../tile/HeavyTile.h" +#include "../tile/StoneVariantTile.h" #include "../../../util/Random.h" const float RandomLevelSource::SNOW_CUTOFF = 0.5f; @@ -287,6 +289,33 @@ void RandomLevelSource::postProcess(ChunkSource* parent, int xt, int zt) { feature.place(level, &random, x, y, z); } + // Granite generation (underground clusters) + for (int i = 0; i < 10; i++) { + int x = xo + random.nextInt(16); + int y = random.nextInt(80); + int z = zo + random.nextInt(16); + OreFeatureWithData feature(Tile::stoneVariant->id, StoneVariantTile::DATA_GRANITE, 32); + feature.place(level, &random, x, y, z); + } + + // Diorite generation (underground clusters) + for (int i = 0; i < 10; i++) { + int x = xo + random.nextInt(16); + int y = random.nextInt(80); + int z = zo + random.nextInt(16); + OreFeatureWithData feature(Tile::stoneVariant->id, StoneVariantTile::DATA_DIORITE, 32); + feature.place(level, &random, x, y, z); + } + + // Andesite generation (underground clusters) + for (int i = 0; i < 10; i++) { + int x = xo + random.nextInt(16); + int y = random.nextInt(80); + int z = zo + random.nextInt(16); + OreFeatureWithData feature(Tile::stoneVariant->id, StoneVariantTile::DATA_ANDESITE, 32); + feature.place(level, &random, x, y, z); + } + for (int i = 0; i < 20; i++) { int x = xo + random.nextInt(16); int y = random.nextInt(128); diff --git a/web-build/src/world/level/levelgen/feature/OreFeatureWithData.h b/web-build/src/world/level/levelgen/feature/OreFeatureWithData.h new file mode 100644 index 00000000..8cd7b273 --- /dev/null +++ b/web-build/src/world/level/levelgen/feature/OreFeatureWithData.h @@ -0,0 +1,80 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_LEVELGEN_FEATURE__OreFeatureWithData_H__ +#define NET_MINECRAFT_WORLD_LEVEL_LEVELGEN_FEATURE__OreFeatureWithData_H__ + +// Like OreFeature but also sets data value (for stone variants) + +#include "Feature.h" +#include "../../Level.h" +#include "../../tile/Tile.h" +#include "../../../../util/Mth.h" +#include "../../../../util/Random.h" + +class OreFeatureWithData: public Feature { + int tile; + int data; + int count; + +public: + OreFeatureWithData(int tile, int data, int count) { + this->tile = tile; + this->data = data; + this->count = count; + } + + bool place(Level* level, Random* random, int x, int y, int z) { + + float dir = random->nextFloat() * Mth::PI; + + float x0 = x + 8 + Mth::sin(dir) * count / 8; + float x1 = x + 8 - Mth::sin(dir) * count / 8; + float z0 = z + 8 + Mth::cos(dir) * count / 8; + float z1 = z + 8 - Mth::cos(dir) * count / 8; + + float y0 = (float)(y + random->nextInt(3) + 2); + float y1 = (float)(y + random->nextInt(3) + 2); + + + for (int D = 0; D <= count; D++) { + float d = (float) D; + float xx = x0 + (x1 - x0) * d / count; + float yy = y0 + (y1 - y0) * d / count; + float zz = z0 + (z1 - z0) * d / count; + + float ss = random->nextFloat() * count / 16; + float r = (Mth::sin(d * Mth::PI / count) + 1) * ss + 1; + float hr = (Mth::sin(d * Mth::PI / count) + 1) * ss + 1; + + int xt0 = (int) (xx - r / 2); + int yt0 = (int) (yy - hr / 2); + int zt0 = (int) (zz - r / 2); + + int xt1 = (int) (xx + r / 2); + int yt1 = (int) (yy + hr / 2); + int zt1 = (int) (zz + r / 2); + + for (int x2 = xt0; x2 <= xt1; x2++) { + float xd = ((x2 + 0.5f) - xx) / (r / 2); + if (xd * xd < 1) { + for (int y2 = yt0; y2 <= yt1; y2++) { + float yd = ((y2 + 0.5f) - yy) / (hr / 2); + if (xd * xd + yd * yd < 1) { + for (int z2 = zt0; z2 <= zt1; z2++) { + float zd = ((z2 + 0.5f) - zz) / (r / 2); + if (xd * xd + yd * yd + zd * zd < 1) { + if (level->getTile(x2, y2, z2) == Tile::rock->id) { + level->setTileAndDataNoUpdate(x2, y2, z2, tile, data); + } + } + } + } + } + } + } + } + + + return true; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_LEVELGEN_FEATURE__OreFeatureWithData_H__*/ diff --git a/web-build/src/world/level/tile/DiodeTile.h b/web-build/src/world/level/tile/DiodeTile.h index cdc7b4bd..98fa070b 100644 --- a/web-build/src/world/level/tile/DiodeTile.h +++ b/web-build/src/world/level/tile/DiodeTile.h @@ -36,7 +36,7 @@ class DiodeTile: public Tile bool isCubeShaped() { return false; } int getRenderShape() { - return Tile::SHAPE_DIODE; + return Tile::SHAPE_BLOCK; // Flat slab-like render for now } bool mayPlace(Level* level, int x, int y, int z) { diff --git a/web-build/src/world/level/tile/LeverTile.h b/web-build/src/world/level/tile/LeverTile.h index b0cac0cd..37a54802 100644 --- a/web-build/src/world/level/tile/LeverTile.h +++ b/web-build/src/world/level/tile/LeverTile.h @@ -30,7 +30,7 @@ class LeverTile: public Tile bool isCubeShaped() { return false; } int getRenderShape() { - return Tile::SHAPE_LEVER; + return Tile::SHAPE_TORCH; // Render like a torch for now } AABB* getAABB(Level* level, int x, int y, int z) { diff --git a/web-build/src/world/level/tile/StoneVariantStubTile.h b/web-build/src/world/level/tile/StoneVariantStubTile.h new file mode 100644 index 00000000..346e140b --- /dev/null +++ b/web-build/src/world/level/tile/StoneVariantStubTile.h @@ -0,0 +1,30 @@ +#ifndef NET_MINECRAFT_WORLD_LEVEL_TILE__StoneVariantStubTile_H__ +#define NET_MINECRAFT_WORLD_LEVEL_TILE__StoneVariantStubTile_H__ + +// Stub tiles that wrap a single texture from StoneVariantTile, so that +// StairTile/SlabTile can use them as a base. + +#include "Tile.h" +#include "../material/Material.h" + +class StoneVariantStubTile: public Tile +{ +public: + int texIdx; + + StoneVariantStubTile(int id, int texIdx) + : Tile(id, texIdx, Material::stone), + texIdx(texIdx) + { + } + + int getTexture(int face) { + return texIdx; + } + + int getTexture(int face, int data) { + return texIdx; + } +}; + +#endif /*NET_MINECRAFT_WORLD_LEVEL_TILE__StoneVariantStubTile_H__*/ diff --git a/web-build/src/world/level/tile/Tile.cpp b/web-build/src/world/level/tile/Tile.cpp index 8b1cc08c..f5b706c3 100644 --- a/web-build/src/world/level/tile/Tile.cpp +++ b/web-build/src/world/level/tile/Tile.cpp @@ -156,13 +156,49 @@ Tile* Tile::stairs_sandStone = NULL; Tile* Tile::quartzBlock = NULL; Tile* Tile::stairs_quartz = NULL; +// New blocks +Tile* Tile::stoneVariant = NULL; +Tile* Tile::woodPlanks = NULL; +Tile* Tile::hayBlock = NULL; +Tile* Tile::redstoneBlock = NULL; +Tile* Tile::lever = NULL; +Tile* Tile::pressurePlate_stone = NULL; +Tile* Tile::pressurePlate_wood = NULL; +Tile* Tile::notGate_off = NULL; +Tile* Tile::notGate_on = NULL; +Tile* Tile::button = NULL; +Tile* Tile::dispenser = NULL; +Tile* Tile::musicBlock = NULL; +Tile* Tile::redStoneDust = NULL; +Tile* Tile::diode_off = NULL; +Tile* Tile::diode_on = NULL; +Tile* Tile::pumpkin = NULL; +Tile* Tile::litPumpkin = NULL; +Tile* Tile::sponge = NULL; +Tile* Tile::rail = NULL; +Tile* Tile::recordPlayer = NULL; +Tile* Tile::cake = NULL; +Tile* Tile::stairs_spruce = NULL; +Tile* Tile::stairs_birch = NULL; +Tile* Tile::fence_spruce = NULL; +Tile* Tile::fence_birch = NULL; +Tile* Tile::fenceGate_spruce = NULL; +Tile* Tile::fenceGate_birch = NULL; +Tile* Tile::stairs_granite = NULL; +Tile* Tile::stairs_diorite = NULL; +Tile* Tile::stairs_andesite = NULL; +Tile* Tile::stairs_polGranite = NULL; +Tile* Tile::stairs_polDiorite = NULL; +Tile* Tile::stairs_polAndesite = NULL; + /*static*/ void Tile::initTiles() { rock = (new StoneTile(1, 1))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Structures)->setDescriptionId("stone"); grass = (GrassTile*) (new GrassTile(2))->init()->setDestroyTime(0.6f)->setSoundType(SOUND_GRASS)->setCategory(ItemCategory::Structures)->setDescriptionId("grass"); dirt = (new DirtTile(3, 2))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_GRAVEL)->setCategory(ItemCategory::Structures)->setDescriptionId("dirt"); stoneBrick = (new Tile(4, 16, Material::stone))->init()->setDestroyTime(2.0f)->setExplodeable(10)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Structures)->setDescriptionId("stonebrick"); - wood = (new Tile(5, 4, Material::wood))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("wood"); + wood = (new WoodPlanks(5))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("wood"); + woodPlanks = wood; // alias for clarity sapling = (new Sapling(6, 15))->init()->setDestroyTime(0.0f)->setSoundType(SOUND_GRASS)->setCategory(ItemCategory::Structures)->setDescriptionId("sapling");//->sendTileData(); unbreakable = (new Tile(7, 17, Material::stone))->init()->setDestroyTime(-1)->setExplodeable(6000000)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Structures)->setDescriptionId("bedrock"); water = (new LiquidTileDynamic(8, Material::water))->init()->setDestroyTime(100.0f)->setLightBlock(3)->setCategory(ItemCategory::Structures)->setDescriptionId("water"); @@ -255,6 +291,59 @@ void Tile::initTiles() { quartzBlock = (new QuartzBlockTile(155))->init()->setSoundType(SOUND_STONE)->setDestroyTime(0.8f)->setCategory(ItemCategory::Structures)->setDescriptionId("quartzBlock"); stairs_quartz = (new StairTile(156, Tile::quartzBlock))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsQuartz");//->sendTileData(); + // Stone variants (granite, diorite, andesite) + stoneVariant = (new StoneVariantTile(19))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Structures)->setDescriptionId("stoneVariant"); + + // Redstone components + lever = (new LeverTile(69, 7 + 10 * 16))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("lever"); + pressurePlate_stone = (new PressurePlateTile(70, 1, Material::stone))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("pressurePlate"); + pressurePlate_wood = (new PressurePlateTile(72, 4, Material::wood))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("pressurePlate"); + notGate_off = (new RedstoneTorchTile(75, 9 + 10 * 16, false))->init()->setDestroyTime(0.0f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("notGate"); + notGate_on = (new RedstoneTorchTile(76, 8 + 10 * 16, true))->init()->setDestroyTime(0.0f)->setLightEmission(7 / 16.0f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("notGate"); + button = (new ButtonTile(77, 1))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("button"); + dispenser = (new DispenserTile(23))->init()->setDestroyTime(3.5f)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("dispenser"); + musicBlock = (new NoteBlockTile(25))->init()->setDestroyTime(0.8f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("musicBlock"); + diode_off = (new DiodeTile(93, false))->init()->setDestroyTime(0.0f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("diode"); + diode_on = (new DiodeTile(94, true))->init()->setDestroyTime(0.0f)->setLightEmission(7 / 16.0f)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("diode"); + + // Redstone block + redstoneBlock = (new MetalTile(152, 6 + 10 * 16))->init()->setDestroyTime(5.0f)->setExplodeable(10)->setSoundType(SOUND_METAL)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("blockRedstone"); + + // Hay bale + hayBlock = (new HayBlockTile(170))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_GRASS)->setCategory(ItemCategory::Structures)->setDescriptionId("hayBlock"); + + // Wood variant fences + fence_spruce = (new FenceTile(188, 3 + 8 * 16))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("spruceFence"); + fence_birch = (new FenceTile(189, 4 + 8 * 16))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("birchFence"); + + // Wood variant fence gates + fenceGate_spruce = (new FenceGateTile(183, 3 + 8 * 16))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("spruceFenceGate"); + fenceGate_birch = (new FenceGateTile(184, 4 + 8 * 16))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("birchFenceGate"); + + // Stone variant stairs - using dedicated base tiles for texture lookup + // These base tiles use IDs that are registered in tiles[] but aren't intended for direct placement + { + Tile* graniteBase = (new Tile(190, 5 + 8 * 16, Material::stone))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE); + Tile* dioriteBase = (new Tile(191, 7 + 8 * 16, Material::stone))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE); + Tile* andesiteBase = (new Tile(192, 12 + 8 * 16, Material::stone))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE); + Tile* polGraniteBase = (new Tile(193, 6 + 8 * 16, Material::stone))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE); + Tile* polDioriteBase = (new Tile(194, 11 + 8 * 16, Material::stone))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE); + Tile* polAndesiteBase = (new Tile(195, 13 + 8 * 16, Material::stone))->init()->setDestroyTime(1.5f)->setExplodeable(10)->setSoundType(SOUND_STONE); + Tile* sprucePlanksBase = (new Tile(196, 3 + 8 * 16, Material::wood))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD); + Tile* birchPlanksBase = (new Tile(197, 4 + 8 * 16, Material::wood))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD); + + stairs_granite = (new StairTile(129, graniteBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsGranite"); + stairs_diorite = (new StairTile(130, dioriteBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsDiorite"); + stairs_andesite = (new StairTile(131, andesiteBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsAndesite"); + stairs_polGranite = (new StairTile(132, polGraniteBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsPolishedGranite"); + stairs_polDiorite = (new StairTile(133, polDioriteBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsPolishedDiorite"); + stairs_polAndesite = (new StairTile(136, polAndesiteBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsPolishedAndesite"); + + // Wood variant stairs + stairs_spruce = (new StairTile(134, sprucePlanksBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsSpruce"); + stairs_birch = (new StairTile(135, birchPlanksBase))->init()->setCategory(ItemCategory::Structures)->setDescriptionId("stairsBirch"); + } + // // Special tiles for Pocket Edition is placed at high IDs // diff --git a/web-build/src/world/level/tile/Tile.h b/web-build/src/world/level/tile/Tile.h index 48a60b70..eabbb93a 100644 --- a/web-build/src/world/level/tile/Tile.h +++ b/web-build/src/world/level/tile/Tile.h @@ -229,6 +229,30 @@ class Tile static Tile* quartzBlock; static Tile* stairs_quartz; + // New blocks + static Tile* stoneVariant; // granite, diorite, andesite and polished variants (ID 19) + static Tile* woodPlanks; // wood planks with variants (oak/spruce/birch data values) + static Tile* hayBlock; // hay bale (ID 170) + static Tile* redstoneBlock; // block of redstone (ID 152) + + // Wood variant stairs + static Tile* stairs_spruce; // spruce stairs (ID 134) + static Tile* stairs_birch; // birch stairs (ID 135) + + // Wood variant fences & gates + static Tile* fence_spruce; // (ID 188) + static Tile* fence_birch; // (ID 189) + static Tile* fenceGate_spruce; // (ID 183) + static Tile* fenceGate_birch; // (ID 184) + + // Stone variant stairs + static Tile* stairs_granite; // (ID 129) + static Tile* stairs_diorite; // (ID 130) + static Tile* stairs_andesite; // (ID 131) + static Tile* stairs_polGranite; // (ID 132) + static Tile* stairs_polDiorite; // (ID 133) + static Tile* stairs_polAndesite; // (ID 136) + // invisible bedrock is used to block off empty chunks (i.e. prevent player movement) static Tile* invisible_bedrock; static Tile* info_updateGame1; diff --git a/web-build/src/world/level/tile/TileInclude.h b/web-build/src/world/level/tile/TileInclude.h index 6ed73906..f03e10f7 100644 --- a/web-build/src/world/level/tile/TileInclude.h +++ b/web-build/src/world/level/tile/TileInclude.h @@ -58,5 +58,15 @@ #include "TntTile.h" #include "WebTile.h" #include "WorkbenchTile.h" +#include "StoneVariantTile.h" +#include "WoodPlanks.h" +#include "HayBlockTile.h" +#include "LeverTile.h" +#include "ButtonTile.h" +#include "PressurePlateTile.h" +#include "RedstoneTorchTile.h" +#include "NoteBlockTile.h" +#include "DispenserTile.h" +#include "DiodeTile.h" #endif /* TILE_INCLUDE_H__ */ From 1487d43fc11efd8eca4f49bb3bb8caad097342ca Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 10 Apr 2026 04:16:27 +0000 Subject: [PATCH 5/7] Add emerald ore/block, biome temperature system, item icons, crafting recipes for emerald blocks Agent-Logs-Url: https://github.com/sriail/MCPE-WASM/sessions/2a40c645-cad8-4827-b4f7-86e7eed5d684 Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- emsdk | 1 + web-build/data/images/gui/items.png | Bin 29755 -> 30956 bytes web-build/data/images/terrain.png | Bin 104122 -> 104078 bytes web-build/src/world/item/Item.cpp | 2 ++ web-build/src/world/item/Item.h | 1 + web-build/src/world/item/crafting/Recipes.cpp | 14 ++++++++ web-build/src/world/level/biome/Biome.cpp | 33 +++++++++++------- web-build/src/world/level/biome/Biome.h | 10 ++++++ .../level/levelgen/RandomLevelSource.cpp | 9 +++++ web-build/src/world/level/tile/HayBlockTile.h | 2 +- web-build/src/world/level/tile/OreTile.h | 1 + web-build/src/world/level/tile/Tile.cpp | 6 ++++ web-build/src/world/level/tile/Tile.h | 4 +++ 13 files changed, 70 insertions(+), 13 deletions(-) create mode 160000 emsdk diff --git a/emsdk b/emsdk new file mode 160000 index 00000000..c9ef2c9d --- /dev/null +++ b/emsdk @@ -0,0 +1 @@ +Subproject commit c9ef2c9d6000341d667a32a807ba47ca489d1e1b diff --git a/web-build/data/images/gui/items.png b/web-build/data/images/gui/items.png index ace2e9a2f8ea31620e077cbb8d2424667fa62172..29f209f7da2c76c18fe1dd0a13325e6b407cce26 100644 GIT binary patch literal 30956 zcmY(q1yoeu7e9K32I&y#PNhUTr4gj18x*9adj_OCB$OCZKvL-vB;_m89TK8+!!W=w z^RB=5{_m}K*W%7O_YQE*K07~q?|3~ObrK?aA^-qLG&NKV0006GApij$_+jZ?`3e96 z8#Ps)8U^Mb76b%RzgQkRetx|8+!IGh3oD8}ihC7^w0%n6&_xhV6vrN!&~2wo9i-n& zbYo6l9>=bcF3816PVl;nC(kY8`J!8}+!{-x(_U%Ig&(}nOn!w8!rQ2v^L4fohIvl3nQ7?sWWbPs6 z@nx}b2?>-KJrpl=>B zhh6APN=s+N#NZ{)H#RqOg@=bXeEu9!P{1_fBGyjNQ)FEIW@mzJ@M3qmUQ08Wcl<0w zJXWpr^MB}et}6<_^lZV%QfEYYUNHR78%NYhkR50UyWP$>tURGrxZw@H*nt4wM@Ml0 zgVOom=a>5e)(;yj0=^wd!Aw|eHdIk>uN zg@%R}8C0$R{Tl<43I_+LsIszhRmb*pbFi|yn!}};zB~Bxi(6U+CjkwzAnuUXw!D)J z0=sLM9*B~rbS(e`uJ7`i6^pKqlYjVV9dT$e=l$n#l}P-DncJYCcl3SY_xc_WC2wz1 zfSgaqcCfmhvhD;@gatE6Wo`?Yd-TrH5dcKCaj-i5c$AcAWnMX4Ot5cOjHVLx?U0u{ z^C=GYgx>{ooQ@aB(5j~}emfsmNNs2kZbaCGp5m${J%F&Cb|IErUnxuTqb1>Nap!dQ z-Ye)ujA;|*)|3VLDLkfr&nffwu!+PoQohUJ?oF3xP`1;M;NZT=$;r(-CMKq0JzhN< z8?tf(LV$pPK={-BIFKKmyic>!201KNw>A92&IOuE)OV%v|WFTm1C&^;jkOujKV^l;LAO(8|B;W=^rKIEyz%u z6Nc{}L&kF#3^xqJYmZYD_CI;$G|F5(`O>Y^<{nK1|006$FglXL8GkJzN%~jj3GLvi z7E~VdUJlYgjysy)9_O}#6bBTmXZz;oY0TY8eg(U7ogc8L0|IxDk2CdEb!u^W47P!* zwIKmdsA(Mr7CytGd3)(qn0l9d+7I?OKd6BRpW*wI|0en#Ef$c%ESE4fWdQUdPk&R; z(mIVX0vzEkWI%a&dEjC5Jm)Hl?ZBF(9i(&B$eifb3B$2yZ6Sgmko5fT${J+Y#A2TO z&&I~ne_Y~0O-@1a^pV&WVf>mNK2EO+Br7W`(jC&$(!$Bg3P2!`%KCbB2L}#wbMy7} zbr`6M78V!3{rGY3&!0csIxz7I{o;y>ip;b$^2%A4sHiBIIGRb?SL1WwsXhA=Yi-Kx?V6pMD`?5IV0S%(YtWl)^#&sI7JB53FefT_*WC|2cH14N=pj$-;Dto+!m`npr}y53`jy&J+g4pv#Hm7zQ0BGw0m)6L5&+1^ z2PC%eVXyizfP};r;7opvZkrH>8{;FFEv35{yg=m*^d`X3t$qfYDS(F>;&`oIGVJEb z_2sQg9E>uU|uYoA3cxcefk?o0q?TOk-oC zCbi=J)!5ir0;mohrawMkkGW2y72*bd6M)iCPC!T~5>z+XL&CGW|LhHcbeB8%*W7i_ zmq~+b_i;_xMMbB}AZbIgi!p1FrHze)`zO&JbykWK5bF7+o;AOtmG*^3r_^-hrMQk) zU4709o}M|#nf?mjE*t0fFB6(w=P7UKh3{huJY1sDV7RW?#TE7jV#33*fS{Y;QmW2i$#jAEXyJL1+}zws z(>5=*s`~m^HJf^1uNWJcQ7$(~&*ahlaF|(+P`V=X#Wibo$x^+oB)q3`m?wV?SG|=P zBI>~?nxu(5WO{_)JKslHo?5WW$ShYbDZT+2oD%x-CD#C>1}J+U^71xzcD}1Y06hzf zM3CP=5&TRVK~}ql-TU!*o~<*s?J|}#Lxdg;L|EXkodN=g^E;Cn>|^XrKVhIvb~#u8 zg*T96c(yQ)S@t*el7+FA@x+kB{cuJ`q}2K_d)1yQ!?-g$mu;b^>^CG2U}ai4Nh#%= z+#kZwh_m{8<8@pV6cmn#gGIH?`l_m@K|$@6aiE3JG&Ri~X|ALa<_U+rCb&2|vp-hV z3SnSiSXf$$B#+$Nb4e`4cCfd{>BOF%o*vm8Ok6}@`CRn$Cj(Q}5YRS!FBNVIM5>@fOVDG5xkXs9aiV7Ib*|gVT1&LdO z5qn3v1wWfk4BfaKRZ0y}IF0;JpQoy1F|1OB^^c zHgpC)qYtA-SN2rX;qr2DOhaU4dU781GLQ#JpNKjBr)R@KagaFs>&))uR8~AES342r zKoGlEGE%ptOe=g1wBB1Q?LHEt+ht>&D)Ossgw+ZQoHyF2s;+lqAErXYa%IU2h(_Tz z4_n}51us!wzRoDRJHo~XG<pN`4(O(-UuNFKPQ+jpL zPLAW_5Y|_^Oi}G-FAZaEGL9z6inuUj#ut{~eAE|CDJbP~=7%ms_i>OVaJdlisi~>n z)mVQ?2tPXf?nYBuK}v+B0?}l<^~3_`oj=}YZK!`3zVbfCqeY&36MCQ%PWi#Im*K(c zYAPTNNMCH{8`ik?6^hbC9&bDef?G-!CW~ANuk8*}jqaC;UI*T8w{zNi2{Z3proTAu z(Pq$ES?O5+*_w+EtwWk^C|u~}?OboNcr&nTGhuB=N2H&}{LgcSz%1e@!;T5m{US&K zf;B?Z4|t=|G75^BndRhe*l{QRgL`kf8xWR)3^b;ZG8oLF6I@kM@t-U8U-sV0@9e)g z#Eg>UGX4hu6AkY>)&a(^=T2DXPJP3|{Cd1k7w2Db?ke0gxxFxGH9SK zp^zKWW2G`RoR>?cn}28$a%`?)H1cqeRW>N$YFHP!-zdsH66&5JNcA_f>{uYcFS%Pr zdKZR`olOAnx@U~_CMeSXFxn5OdMO4HLrj`Cn@%I{`*#hu)ef5d`Ff{w2tYnc%=v_e zm5mL8jZf-G6_GC=X0C^{Z-+ElwDbp{wZ$pEr%g#d-AMd{S9Ctq-Z(Pw7(3pM6J5sX zw!r!vMb(LK8yJ_m7xM(Ko$&x7 zFlZ|8Atz~0){EwyG_p?gP*wsRucGb+h`SGfB!!XDC_r@-?d?ncX_Bo(p|8T4cfZl(&%PHzJ_;x7m82t}JR=X zZ%X3uqlVNr_L>9YC`kZogCmdX2y2fPpc`H(o`4Fr+|& z@z%*f<2X?QJdaL;7bPSh;BNAlrLOxf`|!czo;w7nNFmcp5_xW*aeC~LMmzmQi0xpz z-w*4riqH_aQ!nI+op!G9x0)RY>)R0lo@e&<> z)PoeY7cUO{b+KjYC2ZE&INq}rAtKMCsGM}BuBxh1(MB~L^}PB?Pr!vY>-}a3LWf zP`a9}N-97X6yS`9j#{#KA1m{S*jWOo)%;?uX}_;pz0W<`G3OZt-|<|v#1NUtQ8-_zxT=hB$B zC942prw=uA2ZtEZI^4lm%qIva+rq7>t800H&ijGSI(J5@ z@#CH;=!bvKS2Z}p`q0_)&ey;$VodVGM2o-+RMzG56JM7fimcq|rZ4>B2l%i7%7Q)? z)*jT^J)j6QXx!qK8}oB>^wD=pm(XatoAtff>XCawUA@wfs$xtxSwU21D+dB)9XHH; zkkZR4WQ_Ew@Kb)FBPuVIBN&{FPy-l@kNPua4fQ@%^|ko%h=eTiYUi)A;I~@+n=Thl zDj{t^nP#@OI{l<_YB=?)AmRxS;3n(D87{x{9K+MLHZiV?N4Es&l1wSGtW|b!=V&r3 z*WjrwoK_M;cz z+iv0T24ywJO*dt+#&Zo#=4>!Kj^>KAdH*2-rl-&Y@l*${d||uQCiUDPOf(Gc6@a~V z5H`8tv3jo&zFMK?Z7=@|`VuHK3xbR>`*U-ljkm~qQ9u#6S52og8cPq-M+KFxbY4Qx*GT))Z?Coged;$lRShL(xu#dypN-Bu0V}y6~HYx-mKTZ zyi^kL`AheSK`-AL3u7J5+hJhutDVPXEons(c^V~V25Xm;lCnb~Pu;BGc_a%TYI;qk z?*mOj_k?p0oT*zen7ODs*k>x>QDPz4JfU63ULrWDIC%ug*t$@8djm>GQcN);gKDw7 z@up|GT67Tr>!U|WvKZ94T1f>);3W=L?t2US5e0Bmg7|+wef}HV!~FA4>L4JG>cyn} z;#iVf@pp_Pt8#Iq4|)`D9haN?K&gVU)oI7g*Z0ZBlAw80oJQ5vRf0eFanEDm_Ufgw zVX>mQfB9nYSMuqY>YBnwoZ{p=hwyDm*N&U)p0}*(NK?u%b-SNa zwvU-qR4PH3z_ZB2H!rZg{-q;$dDw2Ht>b;1Z?WSHLoDXq$k5;4^`NB4e_qv5wU*iZ z$mVPQ9r0Y9RfuwTz_;0mpL7~O@mXVLu8|Ve-CW`xD;oEOtdruYcs{s4I>>sQFUcLl z`b9<409EG^{|0EgvVKLh=h4lV-YMX zUQC|XGHek>!Y1=9G_*_gR@7?@!W89(z1CYTD|Sn_*Io(bTz!MtconAR|M&DAI9+Ia!%^&TDdE24h*+6$=ZH5c zm3dBD<&bN9CUZ+5^(Ds)S^ z6N_x1a7cJ)sO*NP#TWdgsI_5XVb}2}!rqO35Hau566(gu4Zy+yI{Xh4XbZa-6pm8V zpFV|n`}pj3tM(*TGZTW|`DY&|T<>ix4LbbZ0*VFZHc_nQx8;|AmiosEWc2+`d)l@a zR~OoSDx7x}PFB1O@=F!7KjO;WM3v}gMo4!GOKx9qFRq5S@TwS2nqVUd+;4xq+rlX+ zDftenn_X^jv(8m(5~DN~hVSj#!}^!-vacV$|E9C_Y+B?ns9Yd0q~EUVt7ByP&hBT= zRwiZZ*NO3~$yhYuX?9Y=R;sw~_-Sq~js#{2$@x+5M(t5;GRz^_P8(M})h9RN_*+>L zSfg^%o}8@F3J)~)INA8o_{@R5&cbQ$WC2TLIVaS&h^wP6Xwo@PL3)CcZjE7l^mi(0 zQ+B-E*}oX^2%9vqP_)a7vP$Z2j9`Dk1my(mlR@O3lEnhq!x%$NR;-L8Hr23zywK~u z68r}n&;gm-=ZQN1kbK#*?;O1R{7Tl=%*6YEx$nOi-&PqjT@}p1!#cFD#cdkuP8iPT z={_52^Ph#`p5eyB7yLW?{6L%xMC79`a|}y>Xn!+Hhm-LA?r@@MCP**D=Oc07_^qJn zx&I@3f6n#${W~00T5qwnaX_#fH03P=P{g7WmpWjC0--=GpgJ25e`#RtVgv*9ek%VK zA%2=_HljV)8C!RUpLXp-}vAtlNq9+3+ z5xC+f7n7ySDb6K{M+rZQmuUbF^nn|0U*BBr3jE=XR2TivU)@8?T@7n-U%otU)Uh=! zlQEMNQxrbfPGGU^gBBOUS|yrP)t}64$KIJ(;I^G32;7zg3-P~E8h+Fk=^W#*K>>|_ zZC)y4cUt8HXixahG{`SZ{5C;ddyssT!GiASJgsGnk3FJGa##x^GARGXRC=>NQ^T5p-+J&12$57Z#1Pqs54)$_ zmqZogr7`kosN^^y32|sv7(L)XYqw3558;eoqnBQR#ARK~sR0r)1_R?<&>c2aJ+$_w zk=xr*MfJ9wORv2>yqqQj)@ce70R->8s+c7cXG?(UEH=8`e!gy7Ag++j>Y-(Z!A5M% z<3xw4PXLJT&rqBc+kG`%AdAaE0n>8x6cfCCAN=1||LIE;CQkUFR&1QeYGb3nf!&+l z=GMQ(W{6&Z-WQU+ezJ_$;PhLYGyI(XOlQtEEWI>$@dcYYPylP*tf2N^tc$CBpcZ=G z0m~Os`2i@-&(I*`T-K+}BP5@mV$-cb0bu7kZdau4WV%@(P{L~1<9r{($Hy0!l%%4l z2unZVv)`nR6hdp6HNV0K%KyGgWcos+)z>Tt4vX`!ZUY*0VE1&9-1Sntpavcp z^0UDL#1+J7cAYyQ$WV9SoKffVY zZgX>n@^QYVpOBcKXp~1&al~E@R$1Z$I6;4sjZjPpj1XUPBh=HUPfy4gB8}2xnECQA zWa|mE2-sBYVmnUmQ>!xx-*Rk9Lwdb6h44UMtr9uwA~xgFT#3}J*jtnj?{`)J{`QA! z;amq7>n)3IM(LD+#Y&|FlA!_np48Fv9cS2J)}${e7O`F1XY?!1C-DY zS_J>8KB9}8;bgNPQ7q#oq|m~%=hOV&6?A^G8n9;ft1C#-|6t(-RC5sRc-5jB|5yQ~O!)=etnnwVs*(-~FA#a0=hwpLy!iN~m{jmHoz6)f~gu7BZ+Sw`W=Q zpnlj$Iq96+>@hzrkn;Ka30_>f^msz&TjEb#@?}i@+1O(V+TXEF$sQS$20r5wu?x+G z;Ww`}5%BPvsu~75y7zf3iU2MgSnMugxwGjF1la^jtffbJ7tR8PhShscnMr zRg~G}mRsoKj7Di5c+p}M>yzu)33-t=LNRCMjES!nv%e^xL^vb9nrAu~A@6Q3OO-vY z$rV3vcrl2l85M{esd=-=$C>`dDIvbna&sz^bi-+MIbEDS{E?wOsB5G31}k)f=hYnR zCwx)P#RlCkR7IN=U~Yj*k^!E?FM1DgvLTLmvyF9frSI0p@PzIA%#l2IHO}OnJ>A=g zmMCTrtLLshm;k2%?FcZ1bHB-^EAX>wNNj(e{`Gews*sMgjJvhr8{6&kXl{gWk5q_O z?hj^JkQ7t(HVPN}^JH({yg?qeu4$u>y3TcKth>#hC>80QLTyY2&{i&=)W%ul#p8(v z;;_D}092EI3CbS3sSwkNv&THLLdfE+_{(&<{}ii4YH4XL9!KtzBf%43?|xhGeIcR{ zWxx{uUQA=uvE%bF>BSQ;sk{cK!1R+T#7|A#Q@efi=I@!%Av)Rjw3X-FNwpC%VkVY= z+T_+uiPgEG_<&TtIuF5iL-JS)_zu7`Gc(IThI&k1b$dPG$O`gXG04tGIYd@6z4^%B zo13F4ng6zNGAcU0J|=UlQkklBqOLXwt*ZL4dKKpbSbzFYDJ|y@*LR58Ne*%Sd9Su+ z)*enwava;$PwS-eAGw5@4#PQ5T3vUSlswr<@sQ7 zaaCw)j=WX^jlz%Yu$RqLk^y@T-_FY!rK7!&VzbUo>;s&4o z@{cZE$G@0>M{1C!EgQQ9QZZD{Cg>pQj?5cz*cc{%c2Fz%^y$AEs&yh8w`4UDo{65= zQ=`jD<~lG}i`MU2Ib5%3k{~**I?>V+S|3*!-}pRijR(|NT(xbWr}AO7@+>NO4}&d7 zr2xh7H<^(ZYqX!RyqNlCz57*xR{Fos&?zwtHwv4KuvFKxHw~X7@3hd@5{>!*O%M4? zK=7$K=LFY8@|~_tqMZ&BgpN*5Pem3@%*_+Fwj4{hD=Q!Ch}@r5mW1Ngl6IYr)aM4y zW2^N+ksCaV=cLTqy?e8bC;em$pWPNs@^3{+*`MgGya_cZUw<-9z{rS&E>IzC(-!=93QQN}adGa%)XbzOka`LiG|4@c|DjFG4xBKo=W(!*JOEaAOe=xL5 z#*3JxynC1Uq>OP)GXDS8Sc3Sg6t;FP8gVVUA!-*<+1;+U=3`DQsDpjB{y%{M7) zydjFXHwQ?*Bqq^})v+#oH!Oqldlv0WvxP%!zps3pJjLi3N zi6*uC0{d$a#;$T@S-REv1uQ}S$rI|JprD1b5h6z#u_6_G+!M~AtJP$;${z3tb0v-m z#o0|;kKQ1W!tg(R(Hsq~IbQYO-~Z@I+X*Loz{D`NEI#~Cl}?=E0Pcr?K_{ln5eF}K zNb#s$9QGMmu8p^Og*P#GTdtM!MJwW5>juQD#btzhBw$N$5SyNIWDWNO-0xTn=y_g0 zCI=t4pj{vS)%ZZ{SS8W>Ap;H~DyT>hcvdc*BtSn0X#ybDK zUp|S@`54dZX*SAa0Ke=$wQDypv*lDK=BT zFI7v;c=YsV-Kh7*p$G?Kl&73bA`Nu;u6R9rhl+=Ez#+AJR645VHZc+2SHI@Na5rX& zj`pg?4n=aw*{Qm1@NvNYI?sew#Li6{=$Hym# zxz43+!=cu`#;hjms24CQDk>TNqdmwyY5=yfUV$iDVJmmvVUK=u4Mx2{KKtSCn z$&5}TrT^^9#$nYtn6NP}9!cW*J)DZ)D=8`O()=MT%3tMijzXcP`}$SywOfe8{Y-N@NV z>UUOK(9IC~Dw!N~j<-?QnL7bp?HFG4TFXFQUxv`5&r{VCjUdSKF!)iOn+gD|%>P}N z!3nP#k7nBGKfI!~K)zMLgB5~tllhJfHvbuOr?goCns<$0^odB*+7Y!cfOr}nNeWZize3q*%-osMQ>*M>VS98k z0UV*AhOm^yfU5j$NlOZajysfjRq`9?$5Le?SrXMU!WSx}$|f?;`aEm}l31|2VoCTn2m= zAtK_wQQl7DKX~#$=3VnVOJeg<_{C0P&0RbdU4cR0z(62<)_N@Ii~qRZYsWfV`mWoh zKl2{vRWLFV+dvKyReMUl{EymuE$pheqy$SnmAQFIo|`*{Q8tkL_3PJxdsP)REmz=Q zzF7JSxuk3V4n0+_K2%RV()2%IPC|9zJqqavGc&Kkrt-EnLfV91XHTMe3IqFXIb^Wj zr}XpV_tNzIxB6=@@6BNSGp){D{VcdI(5!#*syHcWV$#4lTkcrI{9OwWngXT>S zDxhmOSr8@{f8L_jqWY6`XF7n-r!MZUw6PN+rPxXpJ8^jAp+|hsCmX6Mp8$P0G!?=E zbi}V=N>k+{dwP1DeQ(gW$BFViT(K zc;Zu1MKn4^d>dUB*~d{*QcBCrRMrYMGBL?hfdD5zCD!7WsvEy5g^mAgz@J!J!eU@> z;7PNjjQM!4QRT2_HT!Mt)nebq=jHc8+lunknH`EERri#bn9{G7g-k6s1YIyIKI3fS z;>HI8?6R_q%CV$0avr45J?H`3pM_Mg_kX@sov;M1L*8YHJXG4f40dtYBrwIFXw74Q zz{>Jn5IC*_3NACeSO8cN>zHc6fsTtK_{btBmL=zrj4TND;{f#Fh5gK}YN%2*^~d8- z_Gr0ZbX-uU6sn>=l8Y~@mGDz(ydbXRgEt~<)4%s~gknoRkq)fBm-|@xsejtW{jn=q zQx+;deiYGQ*IOtzmEU`{22E9G4#JU=l6oNSmOClJkD4r1Z!AR(96*Y=`U05<_(OdV zJs7mi(broKTN7#j(8YT}A!iGk`T_3Mxa%p~g&{h^0~J>lSlcpK9cwFhKNZ6@9zDfK z3pMg2vnUkGp7de^NwnUx`Dy`Q|nbz{yu(K3SNd02=L5wPbd1 z+eS?lTRp#1WB^#%$B+C=hG(6r@pym%ys*?+cSOOXO9)8I2KcG0B@v4lHX;z%P?4@1qnVa3Unu`=9uQ6eZ=UmLN)tG+n8&Ja$C%Wyyhr>EMWyZLzspZ}$z_V|RP%mG; zJUOw=b`t_&Mc*f-6ni+P__n;)ni%FIz_uBwTPR!gK+J`jPST4NFck<_9?=Dzu!PI~ zd5ix|P|Wb;jQSR{|4o<+Sg-)c;Un~X*Vfg~%jlNs`=_?|>n~iSMwm-)Lw&*~r@m-S zd@bst!~OH~!PGPb$O&rtiq@JOn~&*n4tYh5p$UI{j)p7iM$3dYkKCvU^G5{+mf!&d zOWytAFv7c766}(aT!JEXvh};Ga#gI2jSVCykICF|SvguZZ+JkKwl2N0Lr=7bXJ10G z$;g)Q@1e25x|-2DWx|Vx5?^jdzL|I({c^HB#frHd9vZS=ZgE$;-Szdn_dp4W!3J=u zWjAJ)5)xnYegE-8$=Nxea@OpXP%n*w1QEGX6G>6GU-;bD0>AKQA^V_po4e+l|FTt) z94sKvxtHF?i9N>DP8-{cbo6kUnZNAZ`PypR(gUfaT@ieZ?lLeU6DcRPkdSfb_FGQ7N=#-1HvVR+0($)@Q^m#QlRX%G zJAy^SZCAfS7Q+k<_oscRxoq4y!c)i9{z3~Kt~A5Lb*N89r(ef}&81#68l4Rf43K{{ zygg_nJDD*QA|lG~Ic^-67nb5NS^l&T^eJKV!R{E5RQ-UY-@A`pxZv576RnwrFxnob z4j+EYWt$c*@f=qCT=BntUAjH3j^ICRY!M^B46UulS_m~-$SMbKF84qC?iz4%aY16l zA-jlLB%<2=BqUUPZ|V!6oCk9Zc|r1ZwPdLDTsbXs8hEgTQ?}45_f~WTU-oS|HcY^x zMPu(QXs?RajK?-*T>chtpnoBWH$6aaGys@R8aO{;<+c{N{rx6{bCE$Q7^_JN3qT%2 zm!mLKT3~hi)G)3ur-Ef}c%jOs*P@alzPIQ(D_R zMTWSO@N>&#x&MJ`zkdrP!Wq==MNi!Cb819@QWh&b`%i;)ZG_!quWn)q=%MrpK7;H(rbT=()O8O7HeD-OjA}0$rR;2YN$DND7SaGDGd8B>;fv83TEa`C^?}1fZv<2U}QJ z@c&7K0|Ub&huKdr4nNQk0J9ZBisz^E{~PBB&TZDt8`k|8D3T)Lb~qVVF^I7>`0Pg4 zSxihAp;H^EmO`FwqoK9&spgVYV33skh`RdnADmy-R~&o-f+|nt zr@Nbf$38c<>Nmf|?ALPY=<9gZI`?tnY?xGpGD>Ns8FS}rMG(P>!Vi`Eri1%!WCVBH zosthJ(wm?-N6{I!s*N~}BmV!olzWj#eTKFVG>M;UPF^0rO-daok2 z^AnA6O|^&)%Z$6i*O0A%=b}f1q_NMH<#ehW?dFM5YZ@$}VMJTW5l4X!ixd3tj8M!+ z{(*rd3e1H&v&3Zm-VQgPUX3!7tF%}>dUCrMAFsg27f&D+k;B9^5*bgGUSa%O z?-|j3ZO81_$?-`8#qX#QlBCRFR`nO-O~YjB*3Si&s9}g{2e}POFlDZm=Rew>#6-W% zjl{JyGu6kTr_0wL;07bHLg87@0$U2C>imt1CeLLhD7e%`(}KrPQREMvL099c^ro7O zK7V$vS3N->8U!9rw?^T0q|esNr&!A=fvqy6wcI2d`jgHz)5Uf2sxyTN7_TFn^#mK5 zoz#Q#oV1_~#!X$8&q(>!FfL zOcX08RQ032C%U#YE*jUoXDw5>UwzW)%0Ci(X|-@2YzBU3Af9-zOXlH7!fb!B!J;|% z#QZO|up$79K|eVFGd`sp!rq)s(gj7ut*x=O)yl4ou0;$j9;T5?d#{i`5maNcu>c#ji&aU+I+9vkRQ>*c8bPt?QIllwTbNnD4Bv_F|&11$253OK^ zin`v_7r)#%S%+%UvEySi<<5MY+iVn3PGk8LO(FHgPb1#q6ZS@-oBjOUkStVmBholN zT~ZfzU(PObAVBjAF|RjH*&0IlUh`2SdcoDeKR0}EGe5=aR_1F{7+nN0V!0)BrfxA} zCVYd#a9KQ1GRTz9B~!>>;28)}@-YQvw`;1?E2q zSO8+58Cvfp+_pC9Ch__Zzx(0Wo3D`pbO2`JNYBYSvb$8S3%gI>!Xov<86~F;C7eo# z8@+j8Ib&>O9tv#&drEwA1lc<<04R^V6V64`7A;VBd$Py-@gZLNnTbi8!753|v7^wb zb$y~hT$v5GU?RcFyrd<_5%W)tFnzke77#C0fns6(ej0WodA~_xDTJ5q< zvq@IoO4RX%NcM?qivDG94fZ;jr+YoJDlBAB_i*`PxXYULso^am8)aZjSXin@zSKMX zC$@Giouwt5r+dm%L$;Vvj{fBGt9b>?R3%C z4y*{au*rp~xa?OOtzR5}R75?zxs4s~kE#pktN4$qnI?-@gT{Wq(k z`(t$a3BNZElOl7hG}+2CxwMc(cr{$4Y6!R+()8i0Zo=6~#94k&x#N^^VJ5Xdw!$oq zL1)IDWxY?}uANQZ1l6$=oY)N!92?`lB`q&w?a*auNwA$O_j(GHe07?J{@5i6VVptr(!CoZ)gkSR%^@B3LiDTk3@xax!QKim zXA!1oGn>R{Rj^R{K*V)R@$6@8b&>CzFT7~kX8K|_HaBI~)nS@2`==2*-7|b<1o4ja z8n5qI06}V_pJf~4tv{!9j;LuQ%CXL^YIZ8%Gu_AVcrze>btSPun;^8ru8d4 zuR+YD{IuG_D~zzCiSg#iwGYt}=6J)Athf?34tgp?Wo6_KqICCf^T?Q0Kry-fAeR$c zY^}@uK@1--RWH&Rc}$6h$6hgr;e3#UA!1(vmXrTj*lsvoJC9 z1G$swZz_`_0K;E}WG)N&m;Z{`4W2<=JfDx~nnCLr!;k*tidIVe7k$cwS!6qq>X917m2*ru6A-314uT5|DBrW!!O+txF4Ua5Z zl4>kkbszv(a?QcqtS$4jFoo`f>m@n);XeL=R=AH9Y=#g3{BS^3z}x)-d43XpB=x8U zJC4AQ%MK!V=uwMqUB;d|gAknd&mC+0xn@Z(wBh4LjrT0@UYnu+8ym7om3R5F#v0nI zy#}>2!yRL~W*9qSZVNqzt+I~+*V*f1m^4iH zsQckeC0H-OV(U$4;Nt39ODRta)^5>&kqyQGA9#Z!_?i*uJP(fj+4@1QfRexb0%Nxy zur*M>pO$7GS7GBY_pr$riAMke-klPi$_XcYz6-}mn&}5$3-F2k^zU(Clx|fstT|#D zmY;0p@P~iBTeAuCybKU_f|0#{Kp$u7$CmQ9Icw9tgx0~H#q*n*3EPIxdj+UGu=&2Yj;ufuYB^LWXV6k@EulVGTX(Db+5bie3U8i7c}XO5X>&a=o=8 zi}zn|dDUtd`Nq#AKue$+tj0>6Jg;dFZ|b=>U1?_daAd4s?WrI!Q?JMJ)$ZGmTaLsD z-5O<*5R;IQGiP6+C*sYl3*%IB!IvuUKLYg!vZ|v}5Pnqet_T2I>X7c8;P!4#S>LXB zJJNL3<+W~M;r87qlk0S9+2ohmYBHnTixlO~%MAB6E;RC%{f#5-G%JJLXRtwJib4l$ zmppL-u!obTGhn zdp{aQtH9Yh|I(sqdmO+4vi`gOqY&?nYbAA)?$2s{x5bKA1ptjaO_(XGXba5yN%0*? zjJ@{Z5jNl$`j_aD))aYqhbl7e7^EZ`tNWR}A6rl5r@jr21Ffpz_G}rbiV0nn7ZN&POIpb7>z3 zZAz)}u{MYp|LaoH2X_}!4zxpQNnH22RquEB#{RKdOZe+>evt{|O_s$htdCnxafJ)G zFS3|&wAC)2A}M;)2>#w9zVykMc`=j5;BoFU;jCqv7lIpmmgnnnagah)Uj9r@Pc;J=0@#^=r!CGoBtP4d07k40Bf!L}MR z5(Y@al~DD!>;a{GJ*~v8k~^#K5z)UF+}-t=N&m0r&N?cpFM9Ns?rv$2mXMGV1`t6+ z>6SF;?q=u`0R=&%L%K^qV31Z?q#LBW9BO#S?|Se3{(k?xS!)(Eml-(s+bQ71i6@eyJnzFIF8V9dy>j1U<{mSr$CxOR;9!8X@CT!it1%CN5Ot_-hTYXm9F{ zB;XWT_^?`QDiEOdYnuHKI6t4DuSKG+@8|Xxn}u{gr908(FD!BfE{VHCA3Odnz;f?m zrE1dbZr1eyW&{k$L2Ox}V7tJ2UmNFelR*koPTqS6ED*rBAM}HD&EwO%@kQ}e|HBN{z?js-i>m>7)f?u6 zEn+Z#{unb_N$Q)Hsd1d7cq39U{p;ub{R4K%!O2NJ z(jXqJjikX#Kx9&w9+lTuZJGlABKtpiu-r9;VsFjwJ-zLh-JbC3y-7qD+ z98F=hEPmu8XWlO=V0@%ZcxKrd*gVYD)n6tHc8F3wUni06D*rJ3;aC-w62S~W!5Ar5R|(}LG(LT{~ZrTX2wnIY%; zMyJ5D3hR4}WWjZF`N$&lC-;v z`Y5~}FBS47=IK;;B%K&(+UkF5h{WG{X*R|)y1hPzZ0Y)oZ{Djmlw-&PFj?xm|HSHT zyC6B)qt--k0ebL5v!tRIXeKN_OeGkRu#E*SU!WI>_*XxnzuV-0!lJ5&I1_`{{2}+J zcE+|GvjQwwZ2|W7_htn~n67k7^{V&K_o^rTuf_g5&}gb|F^d&u-G7UrqM}mw90F;z z^Z`p5hL_r9{71nJ&RG%Hb6U*i>Cg>Dw~+sDpl(=%qNv&fvSj5P1wev!PIj@%_*_GB zwpBcfg!D{aejRoBbAFBDIWn0d=Cl_^E*$NcgXQZ%e#S>9cy~NM8@><_-F1pb#>d65 z4Te9qE-&dZ^5dGq!ZN7KS*fh3Q0mffN|#O@j=0^=6yVmK%&V)4h{HtcLcA#605QHm zsAx?85!D*5z95$EkLYNMs#KCCrBnkqktsLE?g*l1Q^Q{9lM2@mviw%*YM^>=;7y)G z8$~w5(EZHkn-+O2b!$!~BRN~+Hi*gi;*;6w95HrAmON{5Aeq@COSh3|K$BD9(o; zgx!eE&d{7=z~frzO%HW*n?}4<9385ib(Mg2aKky7eh)h`egIVsA-MXe(n82%hyS;) ze;n;lRd)YAj}O}5jA|c&^^oaPQ#rTue?AmJw_L2TQt7c-5g5u_NiY5 zg+zK@Z+!Hd?{V-5(#1A)W={0JuOSm}-KV4^maII;+>?FND@BOIn@-a zA`3R9r5Gi8K!u-Qs!BFJ$Q)$W|LBn$fxQD|UpcA3P198A!%-bgJin}lMFTJeOCU+d z8)q?1L~MJ*DFqq()LGFY_DJ`)!FZ{(kzHy@#rFwnM~Yr^tCf}~KkP-f(5&g#Iu+3h z!o_e2&pVq!FQRC-;}GVs2X}x(6P!araef|{=DryU?5PKWg7pJWkQdQsN<_h&H1CD^ z91Zf{M-kz_e+dI2eYOYOPhvn)kx@)*?^KSWy+#7%)o7j{xuamPB>jwm55Gc?qj)x{ zRts9*jS24F-wpgMw(-lwZoS~y^bAt_MLh{hQL$xz6Pe=|smxiaNFd!R`pGUko~nGo zmPdWAlajI!?!;_0$IYOigk|FrZF$8#F1 zNX8<)vE$9D5c`o`Y$;X?bP?w(%c>R?W4S=EhmCnJ9?CzvimHAVk(cI*4(?H{`1_+g z?KFtj<3^K^m5StU7_xCDcG{#=3KlK}InHOX)pJ4S42bdlXDM|5?4P>!*d;lZ8LX-9 zhP?!iWw)Hpz@~R{C5KHT)PdW$pb`>}e1e!K;pv~x^0LtnWrn)uR^@x*PQPPrNNSw# zTDZ==M}~uR6g%Y`LmA>FrO)a?wbO1*9}8r|=~2HD10xa^t!ItJ-~?vClHX`gl%evG zwc@Q2TSXQ3x$({HmXpbb$IQi@Fnq*DO>t)=dRFC_tl-E!elB!u)e(rwEBw*4p|WBd zc@cw`NwNb~Jn%ScpU<4Qt@Hr-FZdbkj%;-fcy4*uguRNDui`ett>ZVtt1Rox7U+o5 z1Z>OjuPzv7%Jsohc|e8<(|Tv8@ymEhQ*;iVyrT>5T`96ppE0II`rRc$z13DilG{bB z{OH-Qn!o5>c+IFhxisIZT0FmpM_l)u(02I!65{t{@&6nVZWMt2i&Ml-Zm5y$5BNiq zvGS15Z3dOnm8tL9D`<=%xVDwZ=T(S{de4hUH?+QYOSXnBU7znQnx{`{9Is?!E4JKr zEeQ}1%hg?}6Yke6QE;i%H3trwP(KV~m#1P&GD;TDUBlSX% z71qBAuD`I}_Y@`!E$=R@Ze1f`Yo9nIjF(LcrzJw3RyNdR%H$417Q38m|xIUi65S3uZ* z^3kX8<%~py?6-BkY&Uxyh`;QNLv%lU0hd!QQ#k6C+4FAQBmPq2+cFTWHjKgb-%iPKZ)ztRimLc`#!OA{P6r1qha4Z7 z6=Oj8Z!A||zkKlJ-JP&jE)5Kbz8DovCg2~}ykv--Rj(s{Xs1-A!O95GqG_wy*3pNTW($vq0<^@aMzg+}e- zl;mn!uO(;e3;f)&)u%$9AXReS7>CTcUZ!{5oUbfS_s*vSf$X z@b-_6XMvR6ME6yFre#$7J7HTgz);?wbiA>!2{LPv>-Rc9Pc*%ntZM zk@vQtgmNnJFVS9*(1xFeaaimVIm$oa|9~3dDhq!>b_b;%c#ON^vBc6%+<3$v-~PDGyz;|$;W<5BZf!Y z|E|gE;Z*VKk}(n{Pfw+SAUO@v^X+GaCu1YGLph0uE?yyRT9I|nERi+f=d(CsZDk^b zFG{^ixC$fhZ!@_9mKe=(p4(zvs(mJgA|{z6j`gYTilZM#_WCx@y!g%7*BBocS6?EX z;M8vWo42$X?iY*>2HbczE_&E&k$|3a^x;v7Nc zUwP!kcGG8O-Ee>LNJl$Y$x{=H4F~FNH;LS3uHNs#gmeA+i{nItI8T($Y1Ok{$WHa^1{+_pve^)ws(`lx^Q(7wDeZBViunEEBBO z-Zn$rb;<1w*FrVwzq50`Q2i5s@Qx3a`_<@_dDDKJk^9mC_jz!KE?EAs)zPiE` zKVI+y5zIsPTy(8cNObPDsgCsX2a2g1g*Z4^4=5$PXNr#EXK`^6MdR(M9Hz;O& z={g!zu)NZWvK^n117kwL1VU+vrk7DR*+eH8jL}WfgA>Yb%Z&nhT4L&xQ;TeiSLI6a z27uCOlDUhC8C;Dj@9pFD4K)CYz=*~zjziANlCk0M)8?w)`{(^#_NTZy=+FzI&Go`0 z=fAH2>Aqzn4SW7y+_LMH398$*LZWlF{9O(L@)G{m z(gK;1!PW5(i4oY%r?1mx+-C0XZmiflJvzRfjuB`a?xv?`&JE`lx*2kTMmSNS)7Cbv z=WhC@zIb<8JCt3K!+$ImS#q5mdk&~3%D;Cp5-Li**DXj87EU-v|2HNzf5s4B352{& z>ti4B0q_QdUP!q(Bjkfkpfb0r(MGZgofric>}F`1Igw9)za7{JCm#U&B>Q+vs-i{GUtpH$kV0Vi6xm*=C(6 zGj!&=kIRzZkU)q&1+&}D*mHPdv-<#?RVT`0qV`9hJNNB-e~7wT@6`YGsM(9Ps;BEE zsmJqHyE_3Vna%Ii*?uwI14&brvmXfHE!X;fu4vAWw$8^3ntle=bJ0Lv7lNv)7dh^GujJ)^9o+P zQq&xh9OrDE%o(-_lqz6FrzKy;qfw@3Xg5HU5|`UfGKU-9nd|Px0{O&P8T2e3PlXWo zi1rT-;tMl<@!cKa<2)Tut?1W`N}6M{YtsKY@bpdW8+9{m@Rir?et#VSPW2tga2fT7 zpsBrgOm90}0>Jy3*5s=R#_R z^L7t)$GxS|e7C>r^8_A%7;3ri)3z{@%22bivQF;ad_4{LG$-vxR`Gf*x9AJx_L6gH zb4&DY@4=1+7t5AHCtLFCCzvAPBICpT+syk(JlcIA8jc15KjjMtW&jp5_1hDJ5TCL# zt7aBn?P`#JUAcuI0@U@C?Z2(od+`NJJ;&(Vix|VJC=Gq#pr^RNhI9KBDXn#_@O|=Q z5=*`+ca5;f5}22m7<^9hC(W-{FuTIkbBGcB!F1tVYmjFzOh9e9C+lMDi!L z42E`+0BrT@O-$^8YxvEafMbxRe50Ua&}f&ER$3NVnIG%P^BXfb02kx%M@+40kXX*< zxu^s(0J0yL6Mw&a2iULw@&HIOv+#m~f(U~SRl`o1ERtJM24%Td(v^szNrKM@M#0~O zb}XqfB@%Ox-hb$dbQ)+M7K;0~V8>+I@i0R-wdXRaos+}yNF?$V0?~1JCc@;Imi)=0 z&H-FWfLx-lCsGV+eoxBGrFo>f3@)L{un@`D1u-W4_{mYB2JE;kLkZy`;>h zfD5y-bSWafLbcA66D9>_ZoEaF)Y=V{q2Db4R)$|46L~M0H{|w~Fjo{Kv;1x8hSKAd zEiI|pLO+FYNd_{bH$Q$+$1HS$alAasceJ^xZqe5#Eo8oqvo_kB^*yP@icS(c<}QvL zPV==(38qVNvYt3@4Tara*1f#X_NAE!^UFF>68-|5XX2zXT!FIt}S+J+7pE!Qib8zh5{&>m=oE;#KBsM+WzDS2xR9uXeXX|~x z*m%Kr0x!J@(Y%^3bhZvM?_E=)#gqlpl*9lASB^!* zilgy$1pSI%1#gBYJwN{+FngB7|X)dywFV)TB_CloeO}5T3Z(Z$|>W=hpp%& z13t8EZKx63*ySC*bPLHB+L0I93L3h-xSs_51D&u_E-#e;E+jFdGUDf^1q9vryug&1 ziplZYS%%dsXnAClB;{Ae(L61U9kn`kcybd+67!Q!$j6_AlH*M-uR8zM$yDPBDPN#T z?bcs5Y(P!Z3o2HFbG9`(FQdClF#@p4+jD~DvA=J|tPUv~mYsGMU`MkJ!=vDxw>#Rm zZvl#`LHK|VaQM^A$R&+;)(JYDhN>Mg6RJnMCUd9^bw=EM4KJW{> zsfQLC3!)%yz1m{_voq(E;9_e3S0mXeqw z^;c-`jed?!_NZz}%c(@${HQ2p<>FF4Zt6d}TH49`o{Gjknox=fHLMM*n4@BoQ8bP1 zMN@yTDi6<&fX=@E;`r*)yIL3B!A5dL?Z#o8o@E1L)7P>r5OZgv0*x^LweLsAu=FI|e z3b;^md(pMr3j|YMnmIOq1&iu4i2lfg9{xEb!3(O=5O&9}3%RR{CV`MB&K(04Uo&id zKdI8b@%Ebp&z)S#sU&$0!ELmRHIW6kAoIEp+-7B{1yDUbQvO050$lWnX}5!nR@`<6 zz!@6>mkZL?FxA5kkky!d=|h?zKZVUDP5@0M!1l)%=iCh5G9U(xjzI<2$IXF!7Jn`X z@#MPw`WgeuZZ5eq?{_LU_U4yI8PUO~Fgh(iE4yuH(VS<;Y@BBPmHPMmF)=lA}`3h;dk2%ZLuUn*4nNoHou=S@TrT$rDjtc|n!Bl_WP3Atm75Y8SMlveHv zF@~q4oMPD!+s9kATq21AwQz2oG1U~$={xqnEpTjLJhmJRr0tDo z>`JYsc&zI0=G=SRxKV3>jKXnob(J$4ZaD5Xvxzi!k{;jOasKv|uCkn8``N|5NbCtN zm@!8$+#XmQ*4`c5*X1`CCmSj@HauSoWcY7vZp@zEC8eiV#U{Fg2_et)Ihj{NNo1`j z-VxsvxSv*;u};z7YnD!`YwUQ|AnwWHo-lm&6nm`EjIy|_O!3hpnZ~a6_2J_zkaX|j zV#yGUK3G)h(A_A#O$mv7(DuXgXP z@pOq3AIG2ZHYElP=+pmDUAA4k9drz;eKn7ZMkrKO zP`42gIR=Xp8U}{ivGN`AV8Zpjh#l-q?W(oF!lfG(W;;y6#L;UozA6zC;(~a-M*eOygzwvPIJ8Zqw(lriw1;Dfc!(@&Y8hoEMW~aikXY^k4@M%uis&2a%Sl4Mj zX*QKRrG0?TE9Es;Vzs1RvOU`fd+)4LLop>p`Xj@e@Iki=W$5h%iDB35&Dbycv9 z#`cjSpfj39%ZRX#9@<`6Bfr2F8QJ*M1k0)VMz|5Q5TR8lntpLuwRVN_+SFjE;P1ku z`7#cRwAIorjf{-LaE}`}xlQDq`)Rof8Mk zqr)Nek^(9!E9;8>z(s|DP5kA8azOSfqJu@f=O#Mt(f;?ieN4yA$QHWg*oEKSSp4PX zN*nGG6aXD|vh|FM^g@a9=zt!=d4WT?Ek@m$B$Ajt)VZvEkfUc3d$ObUwD~}sf-}3h z`OY~p@z-&kM_Tw}XizZILXk~5jRzF`sP}#FFU#-0H8H&6u_dI%;N07z<7@afd#79uQ*t9M7?^T%sG2lY}QA zvy8FLGkn072IjP_u!`aLDOlzs0~!^orfFDCKPObH;5D)Ro860da-NVr9#wl*=iQg@t)-ZA|?9{3APO&hGAEfKFa%+A6eH(bAU*yA}08aU5xA9Q_KIBM(w} zNU7DO9&To$Ng$p~aCM0yi_b2qVt|0l-GKZY)9}GxI!K5-D9}`Pe-noG)QbZmt)NIq zB30~p2yQCw(Ve$p>fL5$X7S{$#2mhir*UV8&dwo`p%l9g_R^dj<`dbKve&1YB((FaSNugB-X% z%>0O?#}2ip9Y|`^>H>3O#}@e1!Gz!Oz&AzZ3=*P-L3-EC_>6P&^P?O^1n#<0bE82a znrA>j7{kChi#EHCPfo_hEOh3S+b-E#nHY(wju^tFhlI$mJ%;(=`vrI#(YY%8Lk_+`pkA}W0_m?hSXLH}X z_j-8Ne=X_dPGo5xSX&jdax|<+u0B#T3>o9-lc0@WNUCcAGH2`iGZVp{GA8dvWIXTHs5%cDJE_Q&Xs}& zRFsYT0J-r|OR@2k1J5R}yHaH`@0%B5P_`x%YmBui_mCldiZqMwym_6IqT| z5=~ano#FXH1;bW8&-7xNbn>~;*I%;`4XShoqOUQUFBRFw9VL!SPOY(pw3?v#o`ufL z7iNN}1(3l@d2u}aCz7ZNK7vbwL(0Bq}OYyi}-`fv>KvuA`@yTU3NgL`0;)n;bIC zczB$J7;1s)Bty7XKfYW|IExa&WQHR@b> zYauR9m^at|I!NRKY4-4V#uNrxF--78x&C?e@Mx6f5zUg8rP-XX;;@I(>44M&{6pek zbJ42OLyB%#QxF?C?YDQuUL0H9Ej9$q&fhBv{bU^x2%>2-UeD`ViVL5MzTuydS_O)_ zx>P4KEdD0R#6f0K_T!}7%8u0R?+*xC1_=?SA?wfrSxH^iQHzXw<}#js!c3~ z?dp{_;df5J&KJ+5YKyHU5J+NJ&Sa00pTdOpi_#GL`ptYte+xQ+{rMVa1kE`Ea&}N0 zE@VGObH|kI4zFtTQhepc&O7#Vw2x=cf5WyHo%e|{y z&p#@Klu+N>Ty*z6Cd?~N^mYU!AtA}~fQJZ&I9b7qV?O^BXC__F`@l3tAZLDQ=b&L(Ga1!`YpE7!dVg2blR$rrYiY#bEHzD0zErSG&~>=VM(LJT&-hRv?}^_E8QM ze3cF+8u3xCmbIN9C%o_K7L0ifjD6R~sQe?a33%HKui8fAjruaBg0~s`kYQfkQ7Rl! zFw6MwU3cq5AJ9c-IjO@^P!SFAD`sy4m#y!HS~|vM5bXxtLQ6_WW^cV2ISE$8+~dqt z0{^Bnp@_ebqaTyREeGk%zPok%4Mt=NBXlRY=FW)>I{XYH2pNT!8NUljCD>_>y$F#C z{_*4KUDM|AEe=^`HD*}xsczmx&Yd5p8eJ$>e#Yxt&sz?I5HyxqloZ?69c(UmL|WqO zE1%VXkJ*XP&2{eOStxLyTwUzVHEEAeu-MiB^+p7Bq{!*rNsv7tL7-KYLr?EU-5R-e zKJ06c4!WWo-;oLbYcx$Dc0T`P1?M%6^Y6L7mwLrIyChY)xw*B+Xm$K(umheQ?P8N4 zzw`R01E-N}`LE8)A@wQk%Zb1sLd5Z210ac~+0&=^Tlcs|n3m_w&$ZNQrwCj`*reev za9NkN+1S~of8)*JAF5t-!ql;#GK2Caf#KD_-cU@a1cmC~KCr*JEB-*($T!<)+!S@+ zoh{PSUs*@il=h*gZ(-07Z*mMk4XJ}2RiQ49qbJxJyw>><^i4P+CJQ8Ac9ab7F3_+= z6{cm6ReeJ^G2;(gkapg@!|8{&Fu^&+={Zt{bG8q%DEGY{f)v)!vk!B9A%!>?kZ7^d zu5>EbHs%^`Hbr%P?c?~sM`S^}B*Nai?pQaAhJRI6RLJh#H1#FIA5Xp4Ht8Xz(;J~& z{0Is_0$4*JMA#PV=H50|MhzYZmhNH8lP5M%)k%wJY*xz^Bgy;wB!Y_9i8m0`9ykig zZ3Y#CjF_JfZ?k8042E}fbBN_Vp^RsCb_D1loe9aVnXfsx*ici<`MGrr_x}#>2%%kG zUL>x6;pBC!Rb%1c2(RDz7j&0Y%IbyB8u$0|nN+_7F$!$US+sQ-TD5&z`iRlQoF~6@ zvn$PL7_0}rGq!e)90$o&=96P8pR#3r`4VgTZ%$Mi$-J^_a?#szWJqW7xOn+ew`Rqt zj0nH(pc#vLvWGfqSFZ^2zM8;I7rswfu^>>y^J<;EOqt0LTpre8tWCw;y}i+~ zIl`$K7QRng%KM{E+&_Lwd&;%}+1uUyl+!zocL?IQ78w{a`aQIcTW#hY=n|4*9VWjq z>!KI$C9~oqv6}M=&U{W!y-9xKwXZVGDx7~+o?Nipvza>B`V;py%pi%1YUw+yH@kmO z$>ceev2I)6)3&>|>W^;a8@-g*lV83zwOIGZ^lr&}svnf0t}gu2}U=6bsFgUy z@Q$hVW_f!L-K&6N2lHzmadv1F>>MX22>K@or<>xGmua@5voqOtlN#fjKQ%x=(xjlR z^FZASjheovNSlk4fnfl@UE~C9ZrA^Es}Pa{_6;sXe&#P>8jvXuT*?04VbfSiS+TH!+sFJ9+n3o0XNKR?QpB=i1X ze20kiNNF)<1V6;X%`FEMh_J9QDJ5l?l8i_O=$Azb^}%kh+3(bcXV`|QO@}>wj3=yS zm*8R)y0m^5i4^~Smdn2FNtx4}f?;%8j?3#w`3>9Q6a)U_Sa@9TK2~^KD1{cqP~H~> zyK^FIt=V@Z&8^b2#Lj;RKPd2LN79tI_xvh<0~R|%CTSDRq!c^{PhsOZ9a_$w=?fAuk{#N1)XP#@A_{d-oLesI_fvMemGH2Fn zJG;-_2y||4KIDF3!KvUivv#dr1~&ns!lLgJ?Q8rVl+0}(V00&T&BYd3g=Yw zpuAzH`DoF{2zD{W3m?cfi#FczNyu{x4DvP=c{vM_v;*SDh+t9UKBA7#J}HRp&MD(p@VC=lkn_TCpP&d@l>M@u^hA;ZiJU!3l#d%Fxf@R~HMnd^Xz|iLFm)4T z?&dS8w|9JIxs;Y>WZXvDD}#e5Pa#1VeewTG*OcaR z&1lo^wxRZ6OdJ3yz;#~VjcaRHrx>Gh`uLX%&(srFz&hO4S$ry~g@xk*1;<&rGs`>g z+9xwnh;zc*f>ip;pUPmnMCgIeb|sy$lL4l@X9?2)G=z``ZA3_!n1()HgZ6dzCF6gB zNu=z<$gJ3Ue#tbk`o4vU=zQN>o1Nj@%n4{WJOgrRFML}ogalgNo?2^Gy>sE=Lf^U0 z<~Z3%fEF0iuS#xNEco_0Y@>cD;`FIFg}yZNjpc@A(Cwr&v%Ip1+d5kfXhAr6BZ(3- zcCc};b*pW^-C>M#zx%H}VHl|}_`tvChYj)>E`2n>-PTZw&s2f{wL(TOd6QneEslW3 z746ZB@$Ov4Cn)R`5)`8whs+bn+~AKD}>`^vb*=Nfr8H zs16eH^X=a!B|ZOlBq=GWia2S6L30dZTggSw%! z)GX3qG&=*)6n>P$Fp?TD4CpO;a1tedNT^Je|3&S{)>O2tB|Ey&CG7893j|mBz`2SD zzCmv0=_jP8zjCj5NUx!^j;&DXWZqplDQ>>jw*UYxUr6E^rsEfV!A zQSYfPL$F9bMcsn7Pn{_rn87AoSXdnQ&U2z>Pa^Yf5{Qb53QWb)wr%9vYcX+rp%w7K zJoPL`2=Vdyv-oWk2G04bvHborBy-U9{f8H8J9UF{ju;7vO=Lo0r=TCF6>z8pKjSIa zD$X9Q!wWiD7koAYSu@|38OGY&FoD0&_wllB{}#C#Z!wZxq4YPI5&m|72;Bp)z|1=o zxRV8*s94lo+b>*W{bgXcCV_59gmlsG;FTF)U}pLsd-$LI7N7chv}bpu2T&*#*r;q4 zJA11k<1S*{nf6iz}Cll#y7%tA1fZ&QBKSYU3l~sDW9!?2_Ou<7G&3hZAC`o-{|}FW_UIj% zckS%Ef11G5-o6A${=&j~uIx#3lfO*=bvXV1;;~Mx#9Ai;x&<8mePd-skjXdu^E|`B zDbB%a?pCj%kwSQTroMEfY1btuw*R~)fNSOh=p~0Gv%%?)qMulJcjqKdhnI?%mlw45 z#1!mljj|V<^$H7cbQHK+EjR~m6W~BoR8+*o!^QoYlXYuZr|%rM)emG#;`l=IeD^4} zht7l&0zM@9)|!OY*~AA|+eZ_#x5I_e^|$K9t-sHe-(_}vw#I@O=*4?%uV~&ebnBFL zn%?V--1A1^(eF3qr9g&twK&BR%KZ zD*;XLLyYw4MKQnm_3A<2;^GbyNOkqs83jRQA9L59~TaIs?M z=8W_6^WhQ5>y7xRC^=0{vY42divIsINGb~pi>`$QCa|9EsyTAAzSaSR=r3P5A7Cc# zy}5eVPzW?F01Q?WuULAcK6jg12(h%awe8}~#k$0C80 zq=lgenE3AReZTL&)_<)T?m71k!#Vrxc+TF>A>RD1K0OUL4FCZ2h6Xy80004-5P*sT zyg2$*x&GJlx761HJ`M41fgNfe1ABh}V5s@;4RNf!#tGh}3@|j+rCflpP&0AGgk|gi zfB;~qbI1DSpIxV5N9(^AL_T)NtnD2pG7jhuQQZm0F@bUUaYu(w_ge;U+-iE3GbvS< zt!dnulQ)_C;?{4eaU;KIN2d8SQx|^Dm`6*~XJ@^6XFltL%5FnkBLgor_%#OK=DDp8 z4xUF8?_YN8A9X-;1MUCkm10_?mS+OK=e>$0g@socFHLIom0oOihKGe2OlM#By5|JD zvyqpXdBwiXPZU58=G`i9N661%>9`J%mH0fU)Um=&j7 zT!cJ!bL*Y=z=*Lc;sw#LFP_)>f6M&bi$>mRxws$l=->V5qlkS?;v+9E$RNWh3x4dh zoI_G2zP?`8f>>T&J~stFT_t&W&Re*L;3^hW*iItdVZ8uq=4oG_-FI8tfG4?taAuK{U)Y9zuw2iEpa zA8uV0xln!T-^iIsCaXG=_<@d5*6*(5#~;amuCdfsKQxKl_|(4lEsC7B-hbon9^Bns z{I=J;L1R;s>Bas`L(eAmy>V{6*MiF9?Or-sTH%G1aMyqikr2kP+dHi1#20>u(SreP zIZoss{i&ttX%7GO!84e)lQq&`TOJ(oL zFb9H0h7Ttj^IT?Et=cZ5weaVRSKf=rhMrovobCNHFzkl_r7>g=?AmiMk&M7!VE*E` zo78{31bYz(2>6Mh$5rFvAWqwIw4&(BW~C2eKhN8ktk6qe18X5zjvID})!x+A9~>~9 zhYtnh$O)rm`r34AbzK)VAIi(nW*E*$vQ%chR0mBWVA1PM(JLz?0Os`cHYa;ue|QDL2;!9_RN(vJ$ejH%#VAZp5x;;1TvX)DtX#;2lmWWfP-Me3l?UAvo z2Y%(sC<4Uw-vx5MD>}TI5xn&D^a&3(K;xhog?&sO5#`i@f4OI=u_SP@WOOA;Q$fKd z8~*H>BxeO)#V068-^M1}P&6$){SIg<($YQ7k2!%i8sRGaeSHG>i<8Wbkq9`kMooE_ za+ZLy*Q3MjE1jYD_PwaSnVn3w4iAkA(Ck-p41Y97TV2W$BCPomB9A^Byd}Bh8K_oz zbjrjS2F63-q@hb$0f$cKgyAIG7`BG6)e3*W411{pqb$Ec1+N9Jn$#0 zvd`(w0)rn81xlDDw~e^s?OL|*GwaUmtl?NtSf`-{?7`#lZ~4#dF`?Vu(^_Stc_NV- z;TI*2@VUiq2samfP+eVeZXO;`@uPqK)cgG9%e$_w2e(Ii z#Yo?&l;|*BxzYogxxHb#8&Uk`Wn@zl6UH{8_EC8`QFTb24khE7__aN*2H?h@qdA(a zc=B~@5Y?OBM&#z0+^np6k?)bkHjv#Q&wMg$20w8BnAmxhH;uH!V&&|LG0E660@JlE zh~S=U^A}U4n2IhYw0sV<`2Y|SPJhWDW!;9}3bqIB{~XAcY;!4Lnwg!QZLAX}kLc>J z1|%gV<>lo|zI@64MF}9jd{LkhtZ!`^AfEFny|k zwhn|iWWGuPz8KgYMXnUEnFhhu-tc@hJyN1XSu(!$a3PW(oqAYTQ}g)t^FKP9&jqoJ zS5;zAD5#5@+poJDhLKCw$CcM`DFp=u5X3K9%n@mn4*$FK2yk?9Nl7BsY~R0smkoOY zDw<0#ffo~;M^wMmPoJ?;!P#o^GAYFOdEedB`{-o)+o}+=>R@EVKtZ?pJF@ss9r7A# zc$hRIf^WnI_2h5D(xJEFNJ62fiX{UF09Fi_Oj*SFEXaRRoB58u5r z_0hp?Ow)7BIfL-K04cu(KO-}^NQEu@UVGc?(@ zGbs0d6@LAe0s$U0r$GTQ3nOZ)gXjOr1YN!2#8{GhtRr)vECdD&Ie;Kmj5G6df5lemf%5^jo|3ez0IP|CrMpE7+n$7u;3GN|%)ueCvGJxM)7;EV8n`fqENP^g zret5++I;tQ%Q|1ZA_pDA9jZH~rpf)2k?HB_rQ?xYTwE@o);M-ShbWf*K_}=)UFVe3 zbr+ms?BS#s_yb!=n>_+l_tx*loY=nxVgCiUzLG^BUq5sfz>o7ILk*JyCC=gQ@+#Q# zVD!nfA|_sItmuB%TL5)cSf860$;8hHByf;W3wLJS+!R6-m;m3LpFDYTt*n)m8dM$a zEhDIdg9CtwjwV&4)i(VdRnpgIaJZVP>DL6oT#J4)b!uyVxKOUhuw%Spg1f3=IKPGD^1^H+K4Pfu^Guau$aZ&YLDg+ zj#T{c89+=sgqcLalF0Z%(hK`9UX*1DVG@}kUo=bkN`83>vzRwV)&2Toh(Kh>fL7nu1-1uyi22UVV0IG z)U>qDSvr@$N4W-z@MQ*5CqmX))1_S_m;n(Vxu3`~U^e9N0A~i?M2TnUt(bNAp{WnKVPK(re*`Fb*Q#sBh>Rd%k zxvJ{3H6|(yzc1uDfShX>HfQOid<5%873WaJnueH65nD1z&4a}$nr^@5!j7{nw~Ik1 zU^H0PV^++>UB@UxjMWG!Y8TSUw7r}ZSow+Ny$H%|5r0%nT#L~3H$*ULeR`mvo{Lmg zi8kzF*ZpbIB!c7@|513WgINW|ycFh39eSE7WKAy)A%1x_{f2c=CSw;S+C0#c40QqcNJpQ&k5}Idm*pEQ#qYXU`falSgRSRNIDj|v+O^b zPZXvM(LkR|?q(s1yz5f8X`T+e*3`)j?$rDItjt9&WQ3P11JzrK{P)b$Gk& zr3BBaTRn2?uifd3!`ZNo^92%?oAVt0mz}lSN4YuQuTaK5z@G8!hH3EQcrpADtyhn= zFsZGifT4&56oT; zG?hz?G{mwn@_W)$@=pS^ zH1ivUXY3%38&JPSJ|^YR?9+02`Y&-{z{uXdFe}SNz9{Ry-i;^z71-s{Du;p= z@AjNd7->pM8F4)WSmVh0yiSaBfih#2e>{4Y+{9fdPK~*8Yg z?J+p#H}X$2ZfsIA@_AzH9zQPioTzL$AA`>|KTo(xyl!~T$uvc~bNhiFTr&uJ{JBR) zzfmsONMQ2=!j7fB486e!3HamTnDYB|Zt*Rx*Ox2F`m-vuHt9>kOfq%$GPDttl$6-> z)5nqc--=YsRzOGwFcU&wy}3k%{^DP&gjU@ugWEV=@z~B6dD5Bx2q3oI!^t7v(3pFG zAiqG-`zL4)GBgnpZUS=Wb>mxu+qj;ymXyV4=EUD;b!x1nCb#PHJ;5;JH!Z7py9sWt zjQwE%WjMCH{d7!(SM>#5<~7p{a&^GbE%aBv>&5lWb7IT$x!0*0md)jXP&*l1fGjB< zKmShZhPGaW@K1d#df>0ou38o;(5D1j+M+>UCfTfQev%w<&3$KQ6)(6-qKt{9J9`CA z_UAAsw7D+bd-~@90mwwB5+C242^O=K`Ms?2O2Dh#Lzo5_S7=*f(AA{Z z6NHe7p=KSp!?{Lu<%_-Sr>F~U%+bFe%#jr(ogtZ1a37<9OHB(wmfyw-Y@25mdD9lI+r(#s$w zT}=spqJ8V_^Ep)}gGkNJ&-s~nAkEsb`xxjuTY@tJn@dRK4b0B=Hk}J{23tIu%jh*z zABo$65myYL)yHu3vXau*IrK=kmKwpFDJtk|{3X+-T3#y#w zZ%7K8x!aq+KUz#^h|5>x)DLp%{v_r5Z^K=S@SpD%YXLskP(|#u*lW^m0eb{Y2Lzk^ zsplV&RsB=(hFH&WFrdiCob^;<#Ckd=wh6p9@RVu9OHUV_V4^m=Q)bNCf=ZpkOf4tNeJ46(`see(+aS%x4>#P$~zvS`D;xvY}8s>w04M zD#u^?myL|f(=2Ut>2$;A97ckr@vM`@(&?J9`Fitx;(DnO55<^L$C~w&incaA4kD z#fwpQUb;0r=g@z1Y*xI!b$fW!zYBd!9GzHvNQ+taEFAmwhUg|Qx zBr~7VfgfPP`HArS@uS$9&2C%`lPkDAU=!GoHlbCbh;)EXn4EkJd#Yf6e%#{|_~jdX z3jRUm!hdG#i5cLdBk@`6?zU6EL?tH{F+yS-MA=dBt*QZp+@KH;nXK?94_;~gT3{WSR!NY zw{BIqKC74B5urV3AT%`8ZfQH|uaq;^Q_{4X?@zFB8@Sc!ax8xa7#@TqB#ds`E4eEbq_yX}zZv}1 z-!Ir1dUh|Ifl&>WQ?j=N-!ae>nnt4yx%|Yzo6Av~gP^!8eD_aE-mPcxmMpR@)HKN##uXuDH4SVw$-4wHzE2B2Wu;t2L-*pS z0_BAwhl2{gmj+)+da(cdc`thZQM~TaH3N;L{?J z$Fxlhruk&Ns;|MM@dx{+pRCkO02LJ#3R%>}zr<^xbLS4k&)+}(x{$1!Xo;>{lLmSF z1pBhl6vW^;_o8+fg1=lHDK|72 z^WJN4{mmWy2*QtpKp->C%l0P4ypi4vA}b>UH#+2ODB&$$mIEdJu>j6}Sn<8C7Awww zV@Sb{uDqNPScCND|Eb6k3Kkr`24%Eh9sGnQ{Ut7QW zq3gtDViRj6^+~L$4Ywx`&#BBZvISjPLB;73 zN=tlseIP@ zm<=)Q;M__!cslnzoujoguPu)ZWVgQbD7H9;$?kYLw$^lKYD=$T`tOJN0~k__v#{(y zJGGnT09FDz%5dlLY6LhdaMNy>EdYa1)e_vZOSs8Vu#?JiBXf704cw@P?A6cz?NVbQ ze@&HNoxjOmhVW9GW2|WDMEZtYnK)Z5*pH9Mvxj0C6Msd>NlHm&i$;QerO~BEaj4uT zo&^FIH@BP>Qn>>CtC@{s#fHr;jS8YVgI+(pEYfMhSDNGrwGWpu;ehrH*b`^rAf(2A zdDZ?*9Asw7O)=s=EOF~LDwVDBoiA5(tQ%c#zsw?K_0-BjA5^XDSX-ZE?s1k$jwVHcu;(?s_RF07 zU{bSi3m2bV&=y1rJLn`s(Kkw{aD^G9veV^4o%hKxLF8})Q|a$08CdMWry{c52JfZB zYtZ5Qdhsts-lNXW+!TAuwIMYm;>?_)UMDwUMyJ1YBM^l}J9K3dTBeI7WiNbn1YV1} zl+~A$sjI7tf_0DHD~(*$I*X~uw>`+Bh@4*#-V2}G8H6*5!xfK)FMSnFM{p+^bREmN zDcd6_;`UVlx}^U%ve;rQ;e?BAK71JqrvBO9y?ggxy#mlsxQa@Ok;EO9FP<;7ld~}ft!h!m-M;MuU-H#T$GoPRQx!d!!|J}!P9)f zV8j~=Uu&R2oR71hmh2%T!56*j`qdOfB~6Z-3VqrN*jbZ^>$6I~u1+Hx$$34JOYx=S z?=wm&D{_xx%*b|+Rza|@sw%9kY(M%Hc;5(PU`;jU*8v0^93;u}HFX&f4tDZFX>`VY zIb>Zd##6T+m!#6Kcbr}MsYCaDYu*c>IvmIs$F{Sgin(y=p{F{jC}x99gX1?h|D@?s z|A+bw%X4pPP*at4>6Jz5m8Fvr^FB))`#j>w-?Y8V%feTDsI26nF&-e?oJJkQc&_sk z^X_)d!zUfTJqFTTq*TNDt`r|Sdr3eH6i6-pi0ITDR61&#cNzZQ9#`DhH9^bYP!k1e z`&J*pF6;{J4aZg{F|(rGk<@YuoEFQ&_Iw+0icT_Wr~#Ru1&q;WWy|x2)S(6Uxwqm@ zjN|Lgv(y6X7H1tGU=OzC`|ih&AA*8{-Qr`$S2?%~FKt5{-T(K&XdC=}Z*`$saK?Xs zNR9&+Qh%j8+-53o2RA8ARL{NtTPH>(BV&MFP!9J56?D2g%TTQC_V?x>d55(WV&dSF z2TJ;K{Lgphf3*c!1|Ec?$#ot8J?mC%vqmIb?guSb{QCOg7vW;+hl|q-2M0LJLAnMe z>Av}O(ey9yb$5O4KYY|)b=R*(R!B(8I-y84=E|c5@I?!Xt>Eaipq_y=8fXL0| zaAv@W(J8o(7*1qBeGj9WvzEI|F6N5}AO)$O69iwF3}D}v$)}6F z*nM$gOG0RW-6nWxP$+_-r03Sjou^3_7bS^}dslw(VOc(7wd#=$J$201l1#tJdrrCh zg)i87uA{FaR+#ZQBLgTEu6*!*%*mr%k)71**B~?zA(yEFkzl~B`egGU>8IK0!81rq zZlJXJIWJy=m9Io)6KJ`URNJbMg+ z_Y9glRD`6P!so#chclvP7dLYwN+AE-N67Hc6%PG@7YePr!&L#z28&%RQRu zYY>7LdxeF?W!i9e3CTaKe#X1kdG-JsDyzeQv(10j>P&dyS^xjI0I7e1olOJTL%s$> zuVd>ry*DDI3~h`^{+q&JuyI2exkH-#BOE7P+v?pEsw@BrY62CtT>{y6gjqKOB9VYw z^%F67413MWQ7p)M4AejVAy#9E#%-O&wXOL`%l&vrB`Z+Xxhh}GtJ33Tq%Y7gq-mr| zV)&e1I?&M_1bd({-ejr&FhF^|-^P>yNQ0Niymzo85iAX-5|Ec;L*?SFFGx|L7sNfFVnF z=#ClxDu3wTY+KBLWF03~t!w=mI51Me%EnU9PC<~cjEotPP$rmlS!=tmXFXvaU4;xe z@mjppOtyUxeE;UfkuYwycIk@7=BqUUd5ME9B4~dU+9V3f5K&iA6JWqTu3i21{3K(+ z&<4x0C)Cc4v(4`>O^ysq+MXVZI~wkpo8u9?`&M>aLL2|LoG|iE`=EzW^C6fX&mj0& zF8LpLK0NSzX%b>G2D`hhYL@u@?^6_5-!*CeX~}b*3#RS9XdN9Kq>~elx5j;s5dmkb zg7+9+Ds6GHlQZ7pV$EzQce&Sh=2?RpluV327>l|q| z6LBjvvZ!$v`~{H zYdasRhoa#7i&%7`d$eY(h4!+_4xioGG0TbZBq>onemc;W*&Zu_UaKAlP}P7O3zJ@e z+?6PPAVD%e&&sw2^T%pciAB85OD^pqu^668O5_JlE}d~n>86sA8* zFm9aXYG}mR{_f;HHC#y`7gvVb5W~k%-}!>($UsDrph+F=;+w@f-?UlG>8#~PAGVNi z?2)_$)0dv}t?B=5*E4J)!w|GVkh?}kkHPAq{(m2WNY9fif%V9P*$={^H(@mV=xeYD2i<^QdYlNJk_=_fsCU!NEK={q5N zlYrr9?bvc|9s1gfJ~-?|ehZvZ9|><8cDG22_*4v)Inh4pU44ntqiwu<~Pyfn0NkUbIM+k)8Wd;CZGq-|3 z(nZ)R`vqnL|6XD=<{7Yg^zGZXxVx3N+Gy*2rXPNKTDe#(7Wkt@kzHp&GZ86!SWti| zvkFbj?Yw3LSf3_F78g_Pf}uwIJgiO}^55c$0uj;(S3LdVQkuAn8wv36zkq`Z3JCcA zmlk;h79CxO-uBZ|nm}Ogp!;*dJrwIWx47}x*?IP1^EtUang^-bcX7h+=NvAI%C#ab z7vb=8CJf0g&v(tAqQ7kfeoWq5i-EbhT)tn&{zb@$KvLm@F+Jivova>14>HJ+oXk)` z%=Ln9;=S4~c+E|K=%LF|@|4+VJ-Yk!=SuCM%^*9~$e=08QWO1U*%{=c)XTPYER^;4=&Q7LC-gN|geK1d4My5CZ zir7O2Y$~66!trr{+R@-GSxOxK)Kk0X#BmLI3M zI40xu!f9}gB@Gm*;crhU^vPOOsbgYWhQp73m1bWfCvFqqMkGv8M5tqf#JLO^u`B%2 zx*slxEh{bkpX)7G87ooZD>U3kuhiq*tXpP^5sWZYVIId=qF){QpqG*;YJl#hob|k5 z)P%D62nh+H(GTskN7{qDfwaP_B?R@?A9Py0UX%S>Ur)%R!RIdB;%vU%4E4s7DkEZJ z+gHxuXHKiX?L&_@AB_>si~%R~z9UATe-s6##mfI0%G}^iS=Q@iNspVF3Ky60?uJ2d zb;zLw(Fy|rFgvz+NBU`|m>C5CvO@d_xM01_CG|L`Hrp8`R`%aH6kWPf3$hQp_NrC{_%9n^Va)~H{SFkTGdAILYPcbqzMMF!g&0=t!LFed)at5Jzf1rCPFK6=vRB?s=gXIcv}^oCSW)-mjh2iwZ(swgrST!_;`DAhQpdY<&wU1hMv(`zJ3Z^{Q$P0CjZab!Nb7YiZ2{AAgny zZ_l0Xm;xn&!m)CcIOpD1jT`(01M`D@@LSW==ID!7`)^CXeE6d~R<7;&UKbeeZTaL# zUGbIg`)EpNQuU|areaUAia3NGp&XnXD}-02Jc+F9Vp~$}VzaETzyFSoPK-FFH<_pR z<6-6@C1Q%HCtN@r^B2d+rxtg)kK~`pjpWzZi|x=3cC?rXZ{G%#9#7WTl(H0eX_B|5 zQEmFRo#o0M23pEdOthqHG#+&`2{l(3_pc1OaFTMo7W{OA*bl52}f4pihnE*Q> z1Z92V?@8S86HdS4%d4uxg;vLeZw6-6%da>dnA3%XtQIq>Q-e_It?^e+7M%RH6(%<) z=UadLLStuD71i?cGKC0=8KH5Q*&WUcfhu5ES61FMIQM3}(~c!UcwlyfHSN2?l$*U4 zYPfM1eP$g+Z(>)>UQ|;c!C%o$#LpN6KEz0+;)>de#Hq#a2+jPKT)4kV_mg<6{PE+Z z4xV=4zPb5S6m$6VG~0QX5|YD&f;68_i&L=v_mW?7Lo==cqOLr0lnr(C61*LL7Hv4o zSU;vIL_$UD%myviK+SneT9I^jcVo9}>*#2{4-91Ow_f4prEBrkuYc(hn(}1F8ztP6 zf+B;LG&W|0!{Jdill;wP2b+>gM3lemImyLYYHDgPNR6dS8Ta!RMHQ=_6$1dw)@`Qw z%d%gH#NlBhdY_*x`I_-5ITpQ93)m7N^dj;no;_cn z9G=gcKbV?&@z`Cn*^C?IJae$MIPUqkkO|Y}b&uDg?|k?VO0Pfrh@T8#I0h$31yhtX zgsZHl#yuo%%5~9fj_c#*pDGBLX2s8*>`XKB@X$7p<&O}NX4?WEZrHA-p1_0?&qxN} zsX6kO&uglyJ58QjflghimZ{^$pBdrj&#~Km5bR}>)WYFmd3SMPVKPV!V!%xdy;UX! zlSZS@m*}YwbtDYMQjxM^4+oA{;Wq;|&2iY(RHk(@6Z`x3xtjua?lp#;`>A12r2pNE z(h!clPH^Ek2zktRlh{D>?Jc7JXrmgjQDi#JZ-pEiwq8pG8DCnKm+0sq%-}7VcoN5# zyU~n`av^s?U2ZxHP{>pGnNI5WpyAPu_;Y(nnt}TQ*OrvwxPkLxBc+%F;fhB(uop(p zr|T$1@Q~YMW(7a>!Zk3}hLNxY9HiOA(eya?(3S=N7x#-*4}Kl~YLvga`omxl4Np|m zp^>}1GUkkN1yPqu&|5-281wI;Fd_pfbrc|tY&h110WsCs``~&HS|dfg)@$95B;h7O zSltlez$fkWxcw|EJKI+o@`JD#IP*175=8VVYilmjVkPrP`eJw^?E|wx?eGxx+$-k0 z`}Y%v%M|QB&oC-0Cp+GS9(;%;s0Q#J^5!r?O3TXFOwYj>Y|KmDH%rOi5q)6#Nh#jL zkOe?R=5X7PTB5TLHM4yT(!l{<(O?EpaN-;TPT?71wkf-gcGKkYVudxyFKo$^h`|$o zoZLCf`-cqJvJ_o~uODx5Y6*8zVIX;bFSS@oRwKYwT-(^te!&hcf16EpCAvZy_kyT4 zR9wtyy@~|aPRN8#;>5eJ_DO=~tZq#F9smD%L=thq9lf8;$46BLfBabLmfMgdNK!s= z4B%jasB3ifv+WG6-SMEQzgm*4gKO;w{0?%dzEu^!ap%T`aYX^-jR& zbHWDyONNHgQP)fFrLKjw^CQToQ5WWJJJ{%cFR9X*Dwwu{Kt{GSmtSU6zMPe=54ey) zNe!clNs2V2pZwQpA3_yVzO;v{;5pC>uIORX4&3=pC6UDO8T~NwDkkB+EG@OXib_6! zj_}cE7RNhACaD@F-sJ@WKy%sHKSe6!5^M zI`6RFYYo|}+k;CczoUUZ|7KPNOkBgo{QsIvCq$nz9h5EA=Kq4i|9&Ftb@lXEBCIlz ziFltI(H(7nc@FilGCX@mQ458J)01xQHJ6Z)Ij2Iz;0~F{G$Z<2-i&S?b{-$jn}j?1 ztYD%akM1_azj0Vb$`5AB&&l`vo}}*^y&i%;4qTEU}de24xU}a?$(9l@?Py+>& z0=HTJV@UpYd*W>y)xXfb|@z*c&CIeFTWnD(vYoNi7It6Ey6Eqfi-5Y@iAvJp#@ zO!3K~S^VN3IMzO7u3mSK4CmB6cJaHKjEagpH$u;1>_sr^Io@%5dV(~Evs)keyB3G$ zO^EQ*Ai?HG&GjrB@a)R2h9zFg{Bms1Sb@lyQh07s3jI-V4T*rwv;d! zY|PRoS+}n)_f(ud-3mQ zO^t)Bw}DyXj-MciwK6j^<2k82Je{@q5)-tF^rGKPSgW!B@EYgl;!XhDd%nEtHF0DF z^+V?9#I>aZSWpK))XACW>s-~GnKcz*Z=pSi3U@Ii;TpX(F#b^+9TfOQo(EUhV2o+C zu@Kkrz4~;ciB*@FFk{y`(rkTj@UKO5aABdp@$=`J$)(;%PrFO9i<1NW@Nh1p&s$Us zwE9-z%0kcfYG`BrI~r5X{9x^Ua%iiUqz6q*&E2239-Ntq+CQ7_85lPWj5PP$4Rl@Z z%wBs%UxwcHs0P2~-YF?M^}PDHvJs>+czPn_oXssQ1gRq~y`D>*YB0>SJ?Gl?xQ||5 zO*AT0$mceG*X~Onn4IGim@Ss>+@|SYvO(P6+fI6GGH%t0t3ncUiw{t1r%$qtaK&6Z z`V}W#q`|p$rJvq*&ln2(KFFk5B8wVjUd4O{)As$@=Do*X=>F+uPjc4)>C>BsZ+1iFz-j zw+AHI^dkTz_}`n~C>ifW-b*C;$j)X{frlk;Yp<&*ljeSDYmF#_2wtHSJURv}& zD#ot=faq*t@kaB-jqUB7cjLB4>g;Ufj6p#zt zLo$8Ssz`H<&1uCVAJ8LVj@MB8D;tzptbrcfBN88r8u&v?KHKl(<44&eTU9+$`mTak zBZ72v;!n&J`$1~sjf?Pal=$c}_Q#f}PE6GcJ*Qw%nz5U#x)FfmTIJa-KR+J@sYwy+ ze%F}>YdBwQa|OFeh%C#;KO|Z5w!$y%#3N+JR+=({GYp~J=VmUAP2@OVO`neN^WzT3{eEMG~K%Qt-6|uUlze5)OT@&T3Q$_YOj-^6lnhS@jiwYKN$tvtYgP% z!NHW;#nNuyu-Tr)2!Dt>a}Y6|oHp-jsEpB6#&{oWbcX8t&u>rm9MQ*5Z=Y9E5;NE& z)B18=-~5(D{K>%|Q<`*E~ zrv6z|x|%Tif>U97kj<=-aRfNqx{CKJ8_r0>3-9D(vFKR3?_G(S0uw`g(dtgVe-mNp z`xdE}dt9+)nz$59*XhXD>4$IIY2&4y7t{AuSLu7t_yR=G*;LhdExVFd(UhD=)@-w{ zSx-n7QQ(${AES+f95T_vv(|TjBoOyGB^EPLQBnHj45)vw-;DJuB8~WuIJaelIkv& zh&$2d4z{TsNwlpw0ql@)O4Og9>|C}i77ymGapBKJFg>#}=s!qGXog?u*c zhu+$vk^P9FZY5>-q;CGeF%H(1s`tc({{F{8%)e2Qeg$BTT{H2?=)S)QiV~TzX@;NF ziMR`SD-)gT%(c$AlRCD5>{c)3|EkEoylSOf2{oepBb>9EPMV)U~>V9KXiae!R=(F$%f#l4w@I;xf#09fKM># z!(XNlOBMhyB4d01*T*;Lhgok#~jYW^rY7;DD zmiE3YWTer(dHHAZuA>XAwUh=IMohh8)~(W%hF7Bj8Sj+0B;Q>2eoZsWY{Y!8e;D?r z2$ADh@|&+udYthix1chiQUm~MD>y&hvWqB2-kIQt;(r)QZCP7eYegO=$5NsVs1R(w z0&$c+x;wxd>DdT>+*8A2M=^Sy&3qTKDRscpP@|G-;A05Z!aHN+3;9|@tscnOj1~A{xk_SIh5WnZW11zZlmqKq>u-=Y&My#%uBC_#WIS?e(Dw=WAn=4lK zVDs7+CikC7Tqd9n%+`y%`LLKiWDrUC^vJ7ks?o|YQsYIRbd7MK4G$E81Pcs#S9f(Q zD1rsP7dk<5?%k&aVl-SC1Y^!Nhps7jPskZ{!+qD7_PS0G5cj)=-SyaCAS9h}aLCkM z#*a+Q)4*ihj<=>c-v1%#Xgrfo7lzP;6>p^jh_4qR(qdy4LfAcf*v)@Zinxn5(dH)} zeT_PQ&$Ef1o2GZ)N^1{BO6bvVZh>qpZQn5df;9TnZE}I)019e5!^mQgY=gK5VNuk7 zM)q=Uxhy(3i5Gj$h5+2z1nxYIGK4=O7eMXR5e9D!`$+Dt;a-7{9{$~WjmssZ&f6D1 zAA{LJsDMwOa_kOn#A!RfuY%uyAax~Nrzaf%VSacCV|z2=PrUKw@wbxdJA452-fK!u z^$JbB|74+3ZLWaf=U?gOYyBW>WQYnGbT27o8DS@p9{LbE@sdtC#E6;tW$R2&|037d zQl8eA2NJkWr-q0rPD2)-I8GxiKIaW&9dWVC>znf7U9Zos($u)t!B~?ytWpGi?bgKJ z7?d7smO?K)_2LZT+!gJ{NZEL_s-;Jby}miy$H;)2%r2ZZd2LYx=*84)mLPLKmR8?< zM^aKC`aJI^90061bAIZr%{f@IH%uy`R+RiTu_G*p%+y(cU zGy(+jJtWM_rJ@Tvg?F#sI2c$Q*VBg35O$EoJ%1R9iNoVELSU-+$#C~%Ug!hkkY*22 z%tBL_%i_=8^a!k~`GZr>v zq`D^7m>$kIz1{&HFU5Y10JPfn*WFDi$dv`^S|LNHQ`a7Lkh!%;7rGKdc_7O+Qls4~kfQRT4(7g)L0L$W9?V zex1tXTr*6wojvr|WweeznU!8hMhT|PjxeSN9w9>^Mb~q#Er9c{-$vUS%e>73#gWZ z|N3+JtsyLcYRo_J(X;2|4h~Tf8eZb!)!!#SXxTZ~gY^LponE}gxUet&%%1}7E%k&b z&Mcp6`%OY=MBt9Q-ykuCG6LT*e*@EE(*!uq&p*Vx0qrUi&6v9V>ND2T+4#znS^R}yR&D%(i^!n+7C&&yBm5!)1=!+rYiiTq?I3#disAl`_6E< zzUbXEj2fNjy#~>V-g_rRNurD16TOX2^dy2HhzQYp4I^rV7)0;UdoP1w?)m*c+>iI( z=RVJQ=FD))UTd$t_B#8#>s`7U7_u@liUQ@52p7$Nk4_m`Ec`2~U}`qR z4f#g`i-fn8#bU|>#-@{9jU|Npi_{YzN!iG149KqA@S`Z!Wdc-c-RXF5W7xfTyY$)Q z1a3XObVmI0I$Wr~L)jG$%=9w6&!^SzH&5|J^W`uDf@t;NKFT4FiufM&Ul(1!T-TS%Cj{te0?r%a znhIvtC69k1Od+-og`%e?Oh)5W22)mwRtl2g9HEd6RK_{hhqKJx2O1?v6$hN84_*0V z_x|Q_eCh(UD#3Di^h4jf#WjmpH5EE~n;8XR&w%Ob!h;~}$L+p7{-0QljZOY3g+{Fh z&r8mHF%{4ckZc75CTNP^lN$dTmDjGk!l&BDiaHo={`D#^a!wjeUmubg(VR(xhGUQT z+4Jz@;X(KmV-+sy>UGQgt>k;nE~d=uH0Rfi$cr-{(D7TFeE->EW%_8A5I@kl7<*+ade+&`Oye1BkiFphudQ9D#ll}Z zySsBN;cZuKt@ll#m{RM@L(6J1kZrp-@=Rte40Vy<#q(|bEp&`BPzI%pyMO|$A8}S7 zpZK^4UyJ`jxz1LudP|f)eS^J{p$~^uH;R1@>mvU3NA-m!UR~G9G&!8Dwu&)^kMEZ! z$GZm+a&lo17C8@Urg1vT4FX|Nsp!kYh~=t{!rJ18A1MiZhUj$op>=+~YOe!1DrD!X zYrDeb<5Yk495aP@1Pxc`Z;3xZsrE^XfJsumgr9e*qMM%kl@6Ib?`Cn4x#X-=_i=bX zMxb!Z%4CAIjqmzzZ7=3b{ftz2oI$SBGM5${s49-Y%(|s4WX7BeP2!(If$T!)y9jDP zg`cMD>s_ivw~>5TRn$U(AX%lalvvy+neWH7P`xOTKOj@-rZbNn@zz6}>P}5G z!tX^3j6DT-z7_c12=XfNHj!5#)s9O5o2B|wa(EV2BH=olQIuW6JBj2AoSR==Q4J%;Wy5gl|< z4eu{VaS@Yj9`uU`v9c>D1_?P#ilrUCO?ux{@{>?GtqAC@}7{jY zw!Mv3GPUqekIF4BN`e>^Ol89dQ0UT90Z#OemVC#$c#D8I!AcGZ67?_Q9v&f&6)0Ct zVg9Er9RGCT)Gu7DYikP=eBt2F_>J=3tYwDf&Z)?J1xG5-o+$8fwuku@s8>Ix2|SXA|PI2UJ#=B(l{`0*8BxE za$3CE*PSU8*-AcKrct|4k8iqzYsWg zhq+LRHef?FgcYP?v34I!o94n|9-V(!s2tlpHA(ksCjtCVI2TzK^|}VI5?~_smuAJP z#*ZI%M5xiFg@=6bCb`TXYcmR7P@r&8)fIA_FXgNCKVPPETT6pXt>uu_FRMgad24F8 zKh>H1CieoHp#?ZV?9cllH`psXrdgbj_PhR4fd74klf908$Z z+8E9Cv;_q?uvWt&(s0R#Uy8MBjBq%FIu&&jTIK5Z$8I>!u= zfdHVAwhuQRyfF2YxFk{pU^bG@fFF+uCaFm88Qf%J39B7YS)!J`$q6*4EY*^7;L@?9O>zUr(=Jo9?Rg5(3Z1D3GDaWORF6aM$e8oISsS{FEcSWgME6dn&30is*U5(>pMb zGmP~gwT7XgA=LV6F4%dEk)4anZoo9I7Nkac-wFfaL^}QZub{wT1ww6V?xIwGD0&em z=im8K3Fm7_ZS8b6j$_T%(WqGh)srM8JwHr2q%GM}0N*oFDur8!4wD4Qi{(Jl#FAc( zvK)Dr%C0|6R&r?QdnU_XjO9M^n#rR#FHFAvLLUnZcu&{ddp%(E0Pc5lMWePF8@PME z<`l6FW1(Mo&SI8Aj`{g5<`h!s$GGqRJlb|Xmp8K<4w+B2C`KB@p3q|P+;MM1n2m?cfJ*D`U&0_i^6lk>4PpM` zfxZ6zkl+A>Ta4q_H(`>Td- z@H)@fI`y^DwS3^X#PBCL&^kvZdi*X<>6ka+p6SOezkm2f*)xYSfD+Y}IMbvX$897- z(a~RvXEbO`B_LsLPNNcj^jX%s<%`+Vn`LQX3dWSC(y|H#&_qgbg&QAcN%>KOyIiHT zM3l(qOIUmJ!v^PMY6*8KVB1sr9}+QXkPD^YPxWnTHW6cZbPh(mrvL4&nmzK$b`%QX ze}nVOJ`qvez)zl+t-mSw`I?ya98++cGDKQE+>gLIW(l${YS~v@Prq`j`-6&RAY3gm z2GwiiUW+}ex`E4pk$V&Jpf2$@;n(opS5LBSU;Qj-y_oWLomc-IHT{tn&#TT>e#;Is z_Dg9EiJpncdi@9O|9ON&4t@9XtBI*dR&ogF>iIhg7K0@mHb)46xYdDAjYl-Y7$B^t@k9B7f%QLaPwO9+ zko`LkE{qO~bPMAY)385kyh0t{m|4UgzM7nL2>sB!jEyO{UfB%WcUzfd$JUAij1R+0 zczYeW4=(=MYId!ePZFej7Sgysc@IPV0R8mHJ4USx3v@=}4V52*f`vJ6o&L1#iYV6y z3r`hi!w1-Uue&p}FHSYPs>&43P&>x?P(16NcPsPKH`7zhvYUcI$a7IZer|5mVV2OG zmhZ7jmBjt&_x&$E(4hK8RO2TdKtVZ>6ekSWcHqcwm-9yoo(-2h`^Cefr0UN1q~o?~ zRs=FTyZc369-P1BC;Nuh&zz&TmQ%HVt1&TAh04Jgu+J}j437`FW?xT7$zPMq|NLIt zM5v1A`#){!8Y#zL&#^*}nRTpPVxiX^DgW(nwUY`v32KQ-I@Ry@N5EORNhMob-|=Gb z(O?tv1!FIJ+`=%WI3nI9a-{`blTlssneBL<2Frj=tJlnrzGwRef%9|QcOHm;7{1!p z?EE`;)Kj3pO$s3Iw`p)E6}~lLh+PoYt)VmKwX$`AY?)=O!MHN70hy1F`1i{cj{fbA}&bX)QoDhMDhpQ=vvfhs!i23uA`=ZtJ0qcmjNff!#!TlPS z58lJB;YTXf(o`!Knh+-rf^W;gRN|Wmex3nd_4=_nzdcvesR~Hzn?Xz$2cT4Tb@sh+ zW5bGdYnw$DGBEs5Y#rA9oU0bW!YUUA-#1}yWD~t5@wR_v%6Mp~< z*7z}o1z|5sHM#|uLPjt&Y#3m9jac73J?!=?_%v>a=}r!sh=CekfX`jUaN zY93c|c*VuQ?R+PFt536|`Q$MkC(HdMyRh&ndS3dh$CZm2$y_Q-RyFqz)Ah@Owy75U|WnP?P$!dPhzezL9rg~DiXlUP@DJat$ zv9XU5a|t~9IYQ{=uO(=0K`X<~4jo8k!jTs5TIBu-^L0Mn-gW|0U$OTW0RIvw=2Y=d z%-(-3H{F~yuQ3<$$Oz0bv8fVJwH^l?;2(1Pm?XSlAi1J73VFhR1_4%@I%KE1vXA== z4V~U;kT5VL1B}E}BUD%B9P#3C6CN) zH(-xq1X;?Q>bbDL?odr?Sm;d7sy}B)%*&J(!;{jEr%|9n9%X2` z>K0TqWa71ubrwOOCzVCVxino7;;X;9k-975G-C((aevXYz80Km*tZW$hYD@6{{mG% zj+yO+x#vWK7OwA`vxHyai)5{uHt-mZ8Anh@_`ZD;cw+PQmBW=Q#(STo)vEcJ4gtaa zOYrmjtvBx<#18&Lqj`G;jRGdx4bCcduS_siSwuC?pBe13*evz5EV+RqWRZHRuxBMg z@y#32uqHRI)pw2o6xEW3y-9&)A;09x+S(m6v`CChViz_zIhwtepJ_pQxV;P!_u~&Ia3&#BH`?Z10x!Qd z(AOtah;ScJUY-=vtPU40UA1a-V8GX>TKk>x{A-HNMlX{{&~x|+s07v=%lUY#O0%f% zB2>0dM_#O(@=h_|F5w&`{ba+m#%ZHRX{OX?PBQxA`jERe!DGR6+f-@jEQs(EKDpVe z4qjmS)$cF+gP!jQRXxBE>4vhq3X3yE8~>|QPWyv%y#F9alAN00%a<=>b3As^H!aI9 zjreLs5OBM=@Fhu5*={fc*#YO;dtH4yy-J=h<281Ylf~e@x_Dl7?$0hU!$fV9$G>zQ zgIiau7;kZyI^w{sH{2E#z;pitX((}pI1=2r$J5B8#st8^ZC%~d3d@{n-uv(S64K<>F`kK2GYM-{bAp~eM}tC& ziXqgz&lDWaFh;sAil+Qh4I+(N~2;GHCei ztG)U;2oZ+N2mD>M+ywnLQ-Fej| zoYu8w@qM-|AdY)|eeiv+ZS6VTP}3d6`e|8XHg~0b6bahdj{{zQ8Gijt)?PR}4|$}M zsOY3`!mjEnO;LGpC}v@=H8oV}c=ct&LGmBhX<7HVh05>nC(JPv~lc+!+~z z*1hBV#ta_WlOz^dd`5$EjM7Ty;V+*!$MSI+;nenz zpg>;|6B<1hS(&&djL!`vrVbBB#t=oVdt$!~Gf(;`E5ja^lNisP!LJK@7+wd9gERin?{OU&hx6(B>3fK-aEh+4Mj}pw4BAgWmJU`%m#I)*O zK?_D-y|UgyJRu$UskC7rw2jUE7vop+rwdCILMpAO``q8>EsnwUlOy z6ZLfQ0nL5Q1B+=e$UAfQ5U@RM4tL6O{0u;%oyOg|_GfcovscXC#`J=mq(FhZF$|%V zuUtDkTI~e^9%k6Dt?C%(x%7rr4zKNXgScHOSz*AFl=1LBQuI1Fu~j`Zg(2*a=)RUz z!uzC+0aP^An#BgxnkH!h*dae;CYD1<=zT^Kz23af93q1YxDB9**PqLrsZitLud;zz9RB?H zXTH1HOSrUH1UM7COSjQIx|=ke3W*2N2zEDn(1yj!%bI05LhFr=6Z--N2hpV^g&9RT zaUL3tn`r6y=asRuZgqSoICn2U57*LaYIrFi{!HN&71A+yK>v-GL&`5eU9wC0~bsSc|%jy z9nNz**Ok2($01jq_ws1VpAwz3laS_Ib-Yo`|Zy^7lm;VE?Fs@0nKMSJLHD3Pn&hEgE@cgt`=JLeA9&~ zlE?zlCs8C66wyPcl%i#G)K>A!*~bhglWck~o?0~#onJ2&tOL`@ZFQFusg zUV5V)Z{E<0h}tQ}H%`c7GK_&)(`ReSlQy#GsLVWhN_wGC{*$vax1v^v+QTJL6sMwr4Xdqd1M;N z8(;tVgS7|b+vVp>I^-Im*FBigjy`z7){%t9**!SXG>3&d29 zVR|K)sR;G&s`@;i$|_fh5@DV5>*Ii$PQEthavr9l^#i4zVO%2NC_zrM#~9GFxV3UP zqrVGAQ@1|tdj&wD_^D!{fx=@-Z&cX$Hr=Y!th9J#s|F0H_ zBw89}kkY!q;8DTT@5~hVg$9oRpx*HhYc8IIC{B}OWQEjwhz>7HdE!qAa&(z5u(UT1 zHTx%Eg-W`U@2n---$CG-{i_Z>_c!2vM)Ef3BiZc&?U5670{FpxUn*FbH_8Cc4?$6o zPegkk=8p@k6{!C`B#(dlHufcdz5CvkFvJ9@|7yTyD6AMUhk~1Rk`Y?Okva*nxvt}H zx3`Vz;`XcYch58?f{>=aT+Hbj$2UdVgUfmkg>vfZj&riJp+MV3(0-fOq_fWYHah{` zRLl?c&t0vj+D@xz1~dxw*u?#wgO>JdfZHzi{@phUw*F+;xz5p^xbR5OpR)3D8{zEH z$w{nawJ0#tqtuuuiB6ozU%*`HK6Kll`pn9LAod}=o-Eu~h}ypwfp1kJYMu2c`t~-0 zMqgoWfe7f$z^l*;`BVWa0I=q|FHbhD^;*TiRgM7^+;qEA!C{TJhNDHd^QgP+_I{1QqY3>K%i%Z^Cn$U_Bf3W*wM;*wlL5=(k0hU-lAO^nt z8u0Q*X=Syy6&whzt-V|RH=1za0gqE*{YeK8%l&bF4YJ}sS>Gy>79=6=IHhu!jv3PP zygxqAwx8;jh$a+YeR<6>AvB+k{`ac%6(?#9aZQ4YoC&hW^r6)6jYrzV|ISjSuU?Kh z>jTG{S%VYlu!9J=H9Y5=a1jGJw`qIpmNo!@{QG}30zhjqDPP<@x6?))WHZl;R2ElD zuTFClcJv}_1!=uZyWd&03Bh#R&$NP%hN{DdeT+4%~jy1&Re-F&^^B{ToKySd4jq zEo-|r-g0;Nyq)$nQyA==``$53)e?0~{;jn&d*0LZr~dF(jwRRi^))}D(7X?`y8OXF z)ejuS887O|#qHhwSW9>8R0Q+m;pi_9Hny2VGN*}wuTQxt`JP8tRq-ERhX@ix{g>+o zk_Gy3-xq6F!rfh=(o2{om6#@Zvi4W-`4-7j9cZbvdW=?;3xI*>4pV>3F;r$(9Rkvq)&Y-RABmIi^}IJ8L_v zqwnDapXx*@{t(i>@%4*5!R%%0wicvi$)rh_(uKuh2K^`2u!AcP63lS3LmvMFyERR# zSTN@g34Wdcg5fMqxvP^Smj&o5t4G)lOjKrZ4tbZe)qK;5tljbM(7GS5e};=kq^RMA zOQ5FA6w~!A=`GXb5H9~mi)cY(T$@r7p2|D?o(62MyoQ{lj$ZnH;>g;+7A>`cq76uGe}~udB;b2rfq*`-5U5UCAFbH zC|la1MI$@H0ML6`KgqEXeSXGFovb!O@$%^f(dVUiV`sR>=6kM=&9-wzKeImCt-C-- zy}h2(%`Bsqhf@jT42(Dxb+e;+uU&t$=N=QPVQQ^o=}BWWPaoKK-g`4uJ+bVY>@O#I z8x1~wOu>VrtH;ZZLwAJQQxu+Kw&>A5b0>(N$}r1&b|S{W398}pHkih99ka!{MYUls|$z5Hv;Z}kVqV+FnZv)OF31Lq80S|M1?n?UfYOC(=GiS=Kogx8J9^zwxRPrbP+QWD1DFN8y zj3+EMI*$V=BTGqzR&Y)XjZG3zMU@86o?Y?Wx$81>1k#J}go*Z!jU_2@vbiM#KpP%4 zz|O-nHv-Hs-am6BwwasdfH^}(YoPb4zzF}(?8L4HeQlVzxghn|sHFZT(siRks7m6m1f0cuyU~NMowYuRn8Z^B;)D183CDDv$;5 z_GSNN{HF?j?0N>~8N3M-jL9KljF2uXykCnXXltc7jAg*%io3LVh{Dz}FI3sx0}un* zmWEl=Br|sfWrmwqV(pCFG{<6;&P*|Gh6JHNeqT*)*3hwSjQsMQL z<~=Q+#_F%7VxK@f0Co6%Ry=D@y5tq3gJAEG4l>2q*ckQ+rj1#{yRkeg5&2M_o16P& z`_m%aMuvu;#o+3(z%fEMlSaQ!-g!{j$+ zL@{-S$YSj_i7Vl$U@^cv76MD0QJfa@np{X)j4^|UW4uU> z1ztq?;63@+1)cTFY-ojT|;&CH7|43z8^U@Cf*AXLF$1F08#1?sZFgTOTP$eS$ zJ*SR(aJ&E3n!2hg8*HGS?_VB%z8H?5)mz!7Vlcm&KQi($?n85HwtG3l0ik$W(zjKI z7u0l@j@u*X2UpkPuhGQX8h+(-@-i|QVq1x$obF14sa&Ju1~^5Q4i)h@2D?llz0?B~tG`{{*#41y=yu200`VImE z`ZJc@@ zX9g3j?b_)4pSU~=$+YQ?{4hI7Yv9yz7ZC^8z<$Y#!j}3i{%w_@+iF;l$_DS zsyZ}}c>)`V(%~Q2Z43<9P9F&UM7(0MjdFEyQ38vExVX5G(9tClCHqQU#gl>qweB^>RA0OHbr{`@JeZ2b5M zEIuJfUGZ##C>g7^wl+RFS=H8-wF%^b1}RQ2-1P$~Tqar& z!<2asA$?BBE`Q82Wp2HBF~awsLsMHeCI;>KW2_VbacWn5w90=*RKrZ6)EA1X8>5vzn2_{$pD; zGz}x2%*Yh7>wgoiqEgi3rj}@&qRruWlIp1!P>B=v2#hag6Oxl-epoJ z)nPt}QKBZmZlbjIzgv=iHrOju$kk13YaI|Ir&dG|_QxR?U4tR?CvW?QIHS;Y#v|wW z9^T|)z3R}^ngbV_Fj+~?2H#BgEAQW+M{wY!ZS92dJ`)BWh5 zu>7JvYJXk*n&qu%kCUL1r?6uA=ztC_11vN%oG-szrB-u< zGzMS>k5pdQH;RYvn@u;iaM}r`bj-%mY%H&K?F)XL_EVyM70di9`ZRTSj8TvtR*N{R zA(e21K5vny9pyQ;r6V_#LLnGk06D>k{6C*Ciw2{s_+1^WJC(rB<>jWc$zk3D^16b#2$m+@=8)%imB_5PAZ<)V~e&AV5uNh4vrY!>j(Jw zK?jaQp!x`CBN}h)--YQ!jT;aS|1kJ5{#1%R=OuW)BSz>)`c833`vHq@s9VV~(MEvD zb_Hoob?e!kdwG>@69nerv|Qf6_A62R>_ShwI3K+!jV`>re(huOt|M5!psmwfOXTL- z^Jp%m>4a+4uc7Y>8C0v%kK+m+gI;p27ChDiB zOUyp4xgyXxXn{d2H6h_sQ8DMVPdxuIz&N-qp;)J?adxU{MvW@Dsyo|AZEFF9Jesq~ z?V61OA8Vc-rc?;BM&ysn0r;;zi^tjawEMc{g){a^Pvbw&f8YGN+YUomIo`Nkv69YFwvFoSf3Sngn39K#Wh6r0?$X@XZA?c)6K! zP6NZju3zak0f(*2%EhakH|OST*4pT;{BUw0E#u<#`WDmAk9^@Ofq@;1oo}8n#|TG{ zIt}L{#b`wwMs(E7vV3ojhqDJs@Rf7>J8pK>z&o!UH2eD~A^wC`WFoD?uHEC^PcaQJ zLHTj{_=4Ekd%ae1fa0fk$^8To%)rJ5+5B@Dg8&@$WPDuhwHN@*H0~LJcU3f*LP(xe zo1M5;Jip*-LclH|29K1BX#kka)xr@3U{f>Gc23ub{`k?gd%1DXv*QMsaYPZzAzw6w zrdqViZD@ry9e`A0)gV8$wf{>OfZ{ia2n6``Clp)B2A7A2BKO$+vNkFdqwC%w2kNG4 zz1Ck+>oS>td<74WXOOlmqWYvnvnxS_f6D%Z%aKEz8O+QTS$K`k&CTfOhZuM;zhQ*r zsjrm3wo^w-zFqXrc>;O#;RT85+8u*c3ATc^9B7z@@0N|WE12=c))+lhz^ROn2@<2E zeU|g+GZFNQ!6OR%7$tBa>HoO)vy+j;*Fm;V1c zL?Xuf63j?u^$w}5s!H*`(shw%Tmph#a6M;fe(1nrujv?~Ewy%<4%cOd5?C8NQOZZ(YM`i34zGRu%(44=~Ax z9o!&twyv+KC|*jVug`G2Q0LpO0|M^@FHo~)13Ak%SIfzrXq-J{SW1db@bQP>_YoA` ziv*z(Z!J(Yk!vl;7X>^VG*saa4(%6`9sA&=#t>kksr}@2YCaSQ`7A?O-IY4;C;s_i zxX*8*$Nj-GEB~$qa!g>MIT3s~Pis6yBt*Q#KX)vFF+8wxa^cwbJ~x*DShy@;fUBbh zmorut2QF8Zfx~{^m>8{3ZK+?+-~(UjYqevEZ+; zzofg9p}xk(TmDeIl|DmB*B?rDr;`-ANLa3Sm#b z+q)5IfXC^tg0;Xv!W!-B{M1#<8JDaBI}Ar~2(`Q9*omd|{|&I}t@l2^x#pDX>dPVH za!-=OVI2*iJxUC?-266;Xg>Mhqiq8ukH>^l_F1o~Y@LI(J^@WtJ(VgY>&X8F?(p_I@0^)4 z^6yShcUM){?W{$LuSKeFzXpb^yK01i=bL5sDbIfozogEldKBbAG+W8owA6)sa52m= zv(APZMt%0NW{Cqje?~ zzdpN2hUVSg1uR~z?*CbC5!dPRS}-hVSwHUi6Vnf-Yh0SDj!IIWMF%22El3?J+str8 z+~!IhL>~BJ@K(%c+U?Z&5yK0|)ZzFgk7V)xsSL?qw9U6G*(>HABA;{R6f_|c_qx*4 z)veTKH3?OqP1@`{uKVch>?~D@{kFu(Ai%WgUhyi9zUfxXM(WOsfzM=qCW)~@1VT|_ zehS^p~FPketn$QVV|&ca*9hz z!a+ht7V6t2Y7?+!V_ZAIRW^A(Np6XRq{E!#_kLh>Dr>^PY z(QSAB*nNNe^mNDyzdMtfOFy5b+J2`%Z~Dxd;zE4d8`f*V4GJ)&D;yFNa~$R4Rf?Ql zL>HD=@OqAQ*<0|`bwC`f3x6$9T8}csXkQQwx-8@}FH@DXjl&O*a0e$>!DDIF+RUt= zGx7l7JMF33y4`kh;0;`{>jhsyFa^5VMru5if9l}J^Lch5f3^*t0^JU zJowGcBakziY9J0Zh}V4ERvTa2P6xD>`1%_3E^9JfDC8j^|E~KE{=PEcjOw)&4fhr< z)aF<2^6kWzy*D)2d{f3IVQi9hm;CDOjzYV78#%aWtMkvOi#J){{VHS3ZOo9r=>%h| z5-hGguQ#|@5PQuBH~eV2w%mj)^WiSD*VNRQ@NaK!QUgzS=jY{Q$2YqA-R_kiE}DRV=B^;8 zAd+-kB(*9HYoJzmz=c52=KGMt+xdk0o3q%t6 zYbz%F_NC(5znMcw(KIP;qA@jJOGEe;HH^MkJ^^kWlPfERHumcM&0p&Fe?;S*EH_16 z?N7tc#$S0*_VXsar7Mh4t0#(uS4SOH-A6{!1j5ZrCxx~$@+5_eQA_xUg;bTuW5*}p zA~o}+NpIrWBZc#4tD`96(cnLGOQV48u{&`|I&E3d$U};oacYCh(G?C+@t$rQe74}` zq5y`!do2ZT>?L$N@=~-;1%pSVk+|DWq(#RTmE862=s41*v-TZd8AU_{q-BQm@JE!-o&3Fz$#s9ib}N{bv^l`N!_92Xb`) zsH1r~4}oAh?n~4pJuZsz;&AKfSu@2vAJ8Qd;?sEMEh#en@$=_I=)%3@6h+b}_*9UP zkOX}%>Em}ix`^&D5qytq%s4VKG9G@{+)fAp7I|_hYdl}~30i^q`1aO`g6G+u=c8jr zh0h5y^MFN^;@v+zLf9FJ1A86SL}z|Hrl~TcbT4Z+@a^8EI`iWU24_wOk+s zLd%vnd4_!O@4-ru%32^IxS?{TWT_u)Bpnrf64}nBo0G$1y=LWh7hQ7>$Drz0{5Pr>8Wa?e z2-e0$rLHdQ40_zg%OTzK$+_6qeZl7+-!~@4^0zp?V|lzo!nv>S1k~X+r`Mn6#$cAp z6wuu<+V~XATjWplh{p(Qg#z2X2oJTZkh;dpxPmd$2C*MZ5;Qt|FzP6ZE8(Wpx$#(A zl4FZwIPdp`VIzwyJwV{v?1XZ(WCOZwly80@6KUf9dWnYyQb{dtIgjSl7_DpWE7CyM zoy2WcKi!YE9*JNi;Ile5GqTc?+2F(GrTaHOCWwx_Uo;+y#$#%Y z+v1<#MS-VjR$rs=rS)HpIV3OG!&5-CP)`lzwXU!^sHT*YRE~a=^3Q3F z?WKT%4i4R2YuZ%Hk~2@zS4L@FbC!Na3F?%T;Uf zy^yV0W9H(3tB(S!+~^|H$Hi|AM$dWIF!n8m-o&+b+3j@`4_Eu+dv0G71w^86I2PdxOBUc z#dOfvY_Dx1`K?BBXm|sr2`iF5O2!r&<&eE}u<@qCAb3vP8Ry^? zIa(-Klda<*UD9n;vT#!fr^#h|#nsRPegh>jguaPah8jL*fAKDo<|(Kc*Bu7;N|8H*L%w+5=>ALvEQtIR1+>)?2C;$!+-!6 z4u=p-n^+_*gH5fGiu4XaTcTy{lQRe02pqVWI`Lj!y9gV*Sbo-5mhOif9%~T@BBdUo zSUDKBuSyHAZbfG1W#5DNjR0*jn?{w6)YTL)Hj-dQMNP^P($gQjk__OIK7uW?Y?eY` zu8fJP2FXUsf<$uEH4NA|@K7o6G4vjPiz1RB{MLihexDssk|`|EU5GXG1*r~IN1au! zYwIu#2~7zTuSC{cFQMis9GgrsL@=(#D{^8ahH5^npvEU(u4EPrk|@)(aCL3)SLpzZ zHCJ>=T4+dn&TuN-;9ZM6wPDg@0)|fCF{Isp zr;I){e1XuZOOuLJhf(~G4!`rTPj>nEm7}cGAUdCj78NmjL7wI#R#8xIgt|<|wox`0 zjdsZTcN*;9T>M}Vz6rHv=)VqIBmO81d=n2X-=?OfwKZ{m7~}gp=5BD@#{9;AH3AA@aQ(Wf_|jO0GJy0Tq0PyK-2Ljs$* zSrSVHhqyYDmcD4_er2br`@xgT{7^DF{XF>{I-H)2mZV`mJnfHn7^&c*Lw|X*WImPB zJv#EZ)^i%^U|K134p@0f6`2$ubmk7lYHS>M*71wR2 zBPyyzNIR`CD6kO_+9{de^-q!_wEm=1#nVC7I*_N)_>Hg;a3G@ONhNcCLaKx-C{_d) zQ;jQ3IZP08{s9CVa!iLXnNfVs=wZGUil%rCFMwXsH33hCFLL%q)C3QFjDdK=A$&!P zOHWU))U7dbDb=mv;o%9XJO1|Vn+K8?qu}RFm|@EXB`VG|MfS<*p@diFeX&I9bqA%J~n)8DffK>gGu(YL^bkG&W*GW8^*U**-oMM2`M}LbfXIV20>78XZ_5KSB zZ3JmC*l#0;gpyigR0<_1c`fq<&wgP0gotcSlv7)xtZqiP@t-%qyV_X(4r6C{8oEz# z{5dN4EP^z-XBVm2{dE1UPDeM7yl}7u@hF*mn$2qroVm5dv5D%Tq@ilTj5@lj{F(|p zR`>EUWk<{12ah$NZq`nOsk!>Vf`=Vzb;;61oEg&4-}t&F$T*eghPX5OPMzonj75~R zrPSJpI*ZoQ^N>=YaQ7aakq<0IAZCgUr-(mML*q;>^f)*aeoEMjAjNCv&)-D!X9g~! z^{m8?HT$RpAvBb#m~JeKHC(+x)VXI5H1&x<2Q~g|k~@`OutVL(by$WM2DYHaHNF&t!ThjMVp_LK=62 zGR^~9@^}1T*Jk*Qoy-0CimLn%^HsrFdz4|7Y|l!6i|EOrc&SiGqXl4ft-k;JaB#pyx_ zb6BH*L?89%kL-gW;qDEw^; zLvLcxfT6m{RtQ`884O)uw?H|o zE*juM20VpX*+QPol6T%IrqnQ(#geH;ZC!dY93$0mRIlkd%O?RS$~BvKsY>T4pSU?> zj~pG@quLgT_`0F}^gfuO;o;`SW{tUo0-kHdTpKD95?I;bo#XLm2BSx#XskL4C?Vfq4D+-d$aV>3?*wSK8IUyD$dMyic`QiMy*T=2;2k>*5 zD3S7~2A8huGn>Mx55hFhj7rAf3JucZAC}&CU-6CnJcfd`Ig6iHreIEPR$#kGG(wTt zYw%c`E4wgor5KCIPH+9h;GXP*;%;25e6D5>9Bt$Uj zpp#+)+3^?e|6>0gd}DA&k@40@gxfXP!)Kwte=APG%Pq#0ZrLC&oL8>Sj13@2WZZF; zSp^04K2aWebSlZmtUVBG`9UMqaq9or3ctQrRq8eLFOSNH1Gs*=gZ%3IivL6*?v2(} z&DQ;BLS^F_l!n#qDiASF@w|GzF>i7gU(glNcOM(I1kB?o&J!_z=OZK^Szh`>5V1VEl7vP{Uj$rqbEN#h z(fB)iNroQY5TiR=W5*&!ZCpCW>=~BYR1ih#JJJ|9~ti)p6UBaKj1QtmXhi!H!JVnKHt z^HbO8j$;49)zyjkH5{Ryjcr* zjJh3o?q9IljaRP8a`_+vGe191F5;7@Sk`Dgs$8Zi^4NC{)KfqrDCSV({An|V9pR3L6VtN&F^|z}L>v>((cfU%{{bY$}9oh%P=)BwX z*?$%l6#=}9&tYLNn$3Z5{c7^ceDpM}=O3$BTTe@rBnlZ5Ezs<;^U#CCQc3$-4PU+2 zYBn>1Zt^r!P-D

tMhq*1}9D+J?leAJW!lk+RZ&fM^FPYJB$je_LFui1Nmx!@oK3 znW)tRvh=$(>ojq{=%RL6vkcs@n(+yxOSDJg|pj2%Ne5c%j9RJ75q z(Q)p+kcB=#H)tzBdr{MjV^##P9D11Fe>2AXibbcv9|~mQqp6vEeO(v*(SOfPf)nypDbD&I z?y|dx={OgUEW!VljR z&BRc}{rpMcx(Rnfs5^ib;BD$AJ1%Vbl-&ywxvp+d%G5PF0yMe zer||oGYRkvX1R#TyxHcr?4de$OlkTe`Id!JTb(sDnM{M>nekBrPJY*nVW?ezkWlrD;fn&2hBA%F`c5`{U?2rww-tNPtzbJTpIN1G{zvN zrkTI1Q>9t6PlZ>DrdarnA2mcy6(Nw zsXY|NzT|9HF-rWUPvnqim~|r4!2*TLwwyI^i>uk{pOBH$d`46>2k;b;%Q!&uaK>SW zhjz}r51%N3=L=_$Iy+&AyzfWIFK%?wIHYCA^zQ+CY{tOLO{yY8z($2Svqzc`r&Bz` zpMvQV|3stSeO<;^kMIC7wKB~PdJqL!$kb?SO45tJ;7uHq<%#~zJD;oAh5bzCtT!7t zO2_8*+d7NQ)Gd`4xGN}hp~p+Z_^-+pv~Qzz+ilW{H=H{M094R2+}FkZ16dqM)n=7x zS}t97yeu%ivtAE4xHv=hdP$5t{dkCqB31V3i7#)gM=gt0g{klmp)v+qAvqQ+Rxjlb zShK6us}LtAm!ahk9gA#ovNf}y?E;RNswvaV&A_-(0if5xRY=U9mS(qAe;vdDXSV$}LhL_{v)5h8Wq^@yWLkQA9+%zaBgo z5udcc%rnLX;dB4C6;bH<_+l*=_D>{n;0AtO(2$#P&u0$II<0=AE@%X~+C_$LVX{3t zm_3npd7m?)OWC)OW|zA{`R>m>H*Xtgm`646fe0g)9)e(Gs({2%N`Le(*Gy@O7Z41h zsy+dzQb3)i2<3vaI@fQXZ~Z7=|A_MCs1Ono<`V|rn%E5WO^pB7w0=g=G8fv=mb~kB z|FR24Z6me7e!8WA-P{$R)t!7LqWUzQPj~DNd-)Ks==6|O^C~dK81Qz+2;t((Nn!y0 zvO`NjWejy{QjLo}oKnK-rQ1Zw+^qr$YbUGil9)4gveJPqEB+Ct1T&8Zg;av&>#JB? z$g66|a5Uq*jiGWp89hf@EU!~_Tq4`8L8%sMf{1Bx&lG;nc{B8vQdd?}n+QY3dd=~H zB{kO*O@+;aDWFELhtE;Y99`5Yr35w!-h1F|(w7v`>-MO;r<*yVE#GuuV_7I%@bR+B zDr&sgc`HT>-{y^Z-04>f_;9QOizric_)yBp`#6Ego|;=YD=%3*75h5suW-*;cs29= znVl6@PVCVlyo`=i4D02RD>Q9T1AGt~+oXdl`L1w~ZvP)hIhxO+l{@M)5A+(h(IGKfDF|G^l99 z`~Lm#>MD6kO3K>R)q{woOLoHs26f(=Vk`r*e?jJJ7{cVbCUR>y>B{@k#^ODd8*qF?)wEjvfQ0e**J%!gu}uB)H*ibBkkBKg_NS8 zw4I8T>wO)38e)z`OS6+B5pXK+ecEa1xe$wpz%wzV z5t|Li{lxD#Y<|_g}lM-McBLYBgl49B5>&sJCR#uT7VEUMq zm$*Xwcl1%KN*jhh9F>P~hOObU?;b-y-K-tdf9Bx4`Pv5rPxez!U6D;=g$8e}NwI(X zRX?MJ{CQX@zR}@`+F=0Brk5lzek)I^eSu$=bKqx(5Ynx3@$d)#GR-ZuvtEKE+v3|0 z&}G2o4-MdT=VreIO_b;cK2xyKd9b{qf@D0?1j6+W0Zwba6I@t_iZqYJu{e6cu+zb8 z^5?er>N_w16N8;s*8}^ID=Sv9^^_dWGG?V6PkC0MU#;bGzj|HFT+Wg~Ca8*keQgO- z5*F$n>~lh^rXodKH18}&+<&n7h;^Y!+<$%Dd;$b^cXs}St{-Ix^utG3q|p0?_kvV} z)vhE%@RaNPqMg2a4!JNt0T@K4z%2nQpib@mM(ZOKVmH6-Jn&ie`i z#5T&3xj1F>zAKf@r8`iNlmBofe|&oKz2Azu2rLLgF3I&<<>sr?Jb_{%ne&^{wksIw zl?UJ^3dj|IF#{%3n5gz4ad^f{yxp+)z*p#eF$r{mCIbXh6RBJG+JNZ^Bf(O+VvQRnNv|MUsm&17XSz(~~Qw}GT+jbKfNS-WI zB_2HF^U0_r=s0;7btuKgdx;M{+) z-jDirvBSkD=jS%Iw(|I~GAJ77154OoD|F7bAU{9DvyDDr!neVuh&cunhTZbVd|IE< zfjW+85wN+u*BlUV#6+|+R+5_s2t1f#$uHa0z16=?xFZ`k#W{+19lCrMa+P@QuU%AR zD1!*RUC*>pygm>8Y`h=Hph}zLe)!#I?AKHDc%MFyM)mr>+b=C59883&GHrP+uo1z8 z_YD=R>%=mX`*Id*tAmDU{bs^8M)uPWtE!`&2g+=!#91%`wRY@`PQ8H(fc?RpaToDP zbg)0tD?XAiSr4Bz4RvT}DBvR2?4*^nD-|k(a`W;^z00Cc8Tat^T9Ute867gSc%E?{ zc?EC4ppQ_3zlrBqTTOEZ2GU?n16jc1?@`$Mv%lXfzH^0(4zY{3Uj!`PDco8!*VaOc zKaOJ4UT&8;y8XK@N!7~+(9g*&E$x|Zt#VcjoeN6i&bEP1BIe$$H zGe+BtS30RxuZ9&3*$Mah`(dD_gQC8^0&euZqa#*$czEWRMp&$aDeUVyDpFG1hOH%X z*&lDC$9yWqkHVyWspo{8G^{a}(tTD&qcVm1sB@UMY#i(+!_M{yYFg+-m2g^O{*B6m zGj=Wc`5eA14L~CFy$8#CiCDr$LQ5+IiNuoSRs~W_(;@JpsE4HT+9(PlA4B$0id_x< zS}>lP2{o7@5l&~Rl2lO4IJ4@bZQ)TO6=|s;N|cyii($Mi??>wdFx5^hVk6qwny?LbH#y+@X#( z`_+s`?{lw_w@rgt!`-@my z{ihUVc}FE|u{`G*B#E8nY2YUJ%g-mrVYTX|^*xSY7dG4Xd087iOuZF2n-)b|{=%I{ zI||Y2xbk|1i~$}CWu%H87TYA8U3XZP3>-&nI)pzlrLtg0Ds)+Dg`l1QuZ{h&I(8sI zc`@^QONS+GRK>xP>2;2X>$Y^;q8Wcq&&f^DZBv2u=g;*He5$#E4K({3HR2mx9$zIb zdZ_w8sn;+1e<}MMgm{at#r}BGePj<4BU9jJu*{DT%-niMfi?BJgculwd2$h!tT8^_ zhRYJ&5!_=H=)Ts`9+FY@`Z|I{J2MCj!T~pNL{}5y*c^UrW;@@{0E0HFe!wpaRk=_E z=LQ}|-e?w!9mG%+Ue$}>jEx(PWA-8E%TIv`4lI*6Zdh>;%aWJ^l=2fGuGGRTrma5C zX*gD>bP;SKC%^dPAq0&*#9Ak(E7BIt*hUyZVhUwR$SxPXW&j6tH74MsC zd>m!}o)1hz@-3^=_v1ImT}_|h`apaJdZ!kMoB0P}P20rzdL4>+&lxQixLMg6rUp%# zQ*IPllC?EdNZ`itI(^`pj23zTnW0d@A~5|0zcc!~qL}~UhWJNs(+1%$LZp0$qB1h(d?18S-mpBjcy}fYDQJ*dJusVojQX=E)jW>KdlTz`zNqgt z%IIoEf~eW~mh2VSIr%}OTMd>JX2_)z<7NDfIs=N4^vx(x-KDyw4sH`VE(D(`sjyQL z6Cbbwn;dPdAGEkgsurp3PkSyd&-3W3#bm9OIM5?#g*x8N9xdm>E^F zA{;f{!QhM1Uvr5+{?*a}c_`~`vj*pk+>+Xc6RV=G*-I#G9v31N+9sFVCVi$IYP12U zMv2%?h$nfBj4k!d;!EfM?YiZ_?<7)EVEIuM0G1n zuY}sg75GbLoFkw*r}Zf9W~qL)`@iSCwTUUufHJM=fLyJU)=}zpUekN0m_L!ae}-!_ zZBYSRLpTG0*;HW!>;poKlK9ypI&1J6h}#;jr-&}?GJO$G^BupSf>SU0yMgBiTs^bC z6mwsqw7rUR^?9~@GIP5Ou9=P#8!d()TjSf@@KZWGxHgX2NhC($K~$85#KJv1c?t?d zvj&AP!L6tuG=X_~{r7^N7C1#ibCzf{?4N)?x=CU1#wolI&yXENLBG(DUWC#3Q+kHL z-k>A6^89`bCoc+>|72K^X*zVN-rJV%uE(`)ZkzqEieOy z-TzIJ+@5c!H7)N(+>vk7sB%wkVbleE#riRd`Lf1IDBSbV3J;sJul7Z7p^XIc7f{W2 z7l+ZWV1w#qkfIOX)C3V~`GP-+ax#$Esf-o;SacCq5n~!HzL_Xv=IO(LhN# ze+kc4TC3WhIqqiA&G%M1ENY9&uhuF^j|@T7%WX{2)tSvJPWCzpc{@n8L1|6RkwpulU3B?1)f4F zL`bAPXGbkxwh0d%GY;@4vhfkYi1apaHH1sf*k|=o1Rpfd^3r^oD$a5Qio;1+=J--* zWI3qoS4uh1Rx3lfNtXE7F*dw2$thu`Xsg=V>-87mnWPsG;9qc-79IJsjJ{xh56~UrBlx%PM4E@flEV|6iCo_fWR|WKO*r2o<<}8z zZp1va8FZ`DW<%OB_&t;Tl2ebUlRpPoV@RTH=#ASZM=5$f!c#Shu@vptqt-W2kMYAX zA~Q9hv9Y(NqmV}_e@a}_i{tUOcoMwSwDeJ!DG2;q3sw?46^dbmykOHcS2DoOS%mr> z?0`_-{TP*T#l4pR(9Bp%@ko2s$9L+e{<4V!SbZR>?|{`_FOOiq_|62raC++0IF- zEXt~e2c3fvS*&$LI`HM1q!rWBnf>{BjMaq06&c&Gj_Gq%kGvx=n;X5@Ah1pVrArG4 zooWaJWe7l$T!gT(R@+ir<4wO;K+WN!dejV}g@WV;7>BiJ zMbhc89fe~4Mja!9S{voBo!7}sy$VqgO3VZtFCCC*rLLXh9*cOZj7e7(8ynAoR~pg( zhdf=6bk)z1=xzfL_rE(kJ^RU|mS6h)dxBo?Wtxfgf7&4l8QD%GnR7okdM_k`i(5#j z!&>oku40tu5aiFGiuRJ}|35IyMpBIrS(9(_P^C6G%`{C}6 z{+ZzDK-D2HokuHqyD{mFW1a_*ZxJViS z;xZAtWo@IWn?8Z@)dv}*(_id;esLa*6VKbYDLWt6KBoDlj9)ZxObZ;n|7DuFSLWi+ z0pnE@Y;jY<+(Q#4N$dwIqD8nj#Va}h6%{iJU-7y>Pba+6EuK#8v_pOyM;rsU|6qOY zjU%Fq=t~U3kX38lh6v!<7mW#HYBBcFTg_gSoi`Y)A=XCTuh5B#^1Kz)q-)>ew;Tim z)8%!#JLlA_2Hszw6DIIxYxIzJJ4=bs9I+XRu%vacvy=tuO9NH=b2? z^%X0Dw~~=rL#~xxDk~`cQ!I0JbiS)#qknD~U01u$E4>slCN)L9PFUZ4inxX69-pQX zwIQV@0<%+?x_soQEXx$<#hBi?_2O@Oe{Wxr8|$zImQ3Ly%WD$$z;$5oy>2G463=I0 zCEA?gLsR;tWx0hqZa@A6Z(W;>b{e z+HAw=JFf2S_aYugS75mO&t%v$S**T$|qNE{quVzHk{$xkR7z{*FVRw?Qi#dTzf5i)mPN`p?^qY zig6;vVv1?PW6t>#-+|{-1ieUV@pNrvv*$wy_Vw4>wh4j0hpB1Xl%?(^oI{YjD~1B#Br74RSmhcr*l9r;;k`#f>%!zpxD2`nd*0_~qWl?#>&HRqRHt+2{= z-s3JV=PIUUWu7o~Pf%Om-)HeJWMDSh%v$;L-?uTfI$ednd_QTO4cdOzgC$$^^w}c# z{>ke>Fs69hmotBHGeWOBa(Qou%(P_1K6(1kWO$mP1fcpisTq;y|AF_P;Vq#{p~m-y z=EkuUqL{B32`S2?snr;if*oM{R>gU*j=OPp^m2T+!^%oqXe?ii-y#=T*maYnrMOd7 z{TtPhm?arN#^JVw%%l?Pj9F(k=AdWQp~d0qA^Qc1#l;@v>A#BR`nAGqS5J71y>EFu z{jTCLz&xJzwE=+XLsVy*9RKTeJ@_H5G`nSU0QSb zlQdku4RSq)cKcjxM_zfKuE?A>l*lExEt+`4YJ{z3^qg3m?1}q8sQ=c!dAq>;nyh^% zk_+|>m=g-~s*O0zM92=cVgANvgsv2;>wt&@=+loNLDKg@M=Xp_9GuG2+@7|{W)GXl z*rs3R=N_`Co_HLUl7BlII`dsY+Qjc^f*>3la?}iFT~9QUCKhh`qb;P$bqsdEa!F8= zw3*6WpZk~C3i9&GO{xO(02ldMT5e6JU5InF-nZFy|1@xy$ni;5tX0q+eRXxCp_we8 zAp*XfBkB&(+AlHI#P+GIj@f4s@!iUIrs{p_?KHjk#OSBxb!;(UUllpOp6U8!S~NA< z{2ZDwo_8I{s-~Oqz_K9hK3d<6S4X>u+B=fkuKk9wYXy>RUzKq6_6HporgD1(3Hb)% zsU9-&6RCM^Z5p&MNf9_OB1;sdsDMRBfkk?`r?V8P(BcDPNWg^h9@^b;kOYuO9cs4EKD~2a1A>DUSTU;4@ZDQq!ftw`c#F&FjkgiD@2x{G&g7@nJMdo1fvi8z@zLEU3m+mW*x3uPLX;06QyYo+O z9>|C6%JxpGqLz)0y2Q_)f`JRTh!OoURVkaBh@mB}0x4yI@l6dg6N$B^U~i!RfWVW` ztbOE17hrhyc!0cHmk-m4%OvyMnTY><;upFgNn)hIErpn* zsAXa>DA2EoFqc?5Pp6Eo%H5}4ddU2ItLx0ZGU|Kk@LX>D4Qb_%@3$cNYX|8A`;?Oh6%z)98{Op z3J&%wiTGo;K;f|xJi*=X8R*=3$oTm4PU0Bn7aZ~xf$WC_m$l`8<634Bzdm+df_U@X zFVo~Wee*WrugkA-qowr*fW7I0-G5i-yK#NTBll5mQac1$GMWE>v z5qJdN($KBpXux(Tl5mo160AsuOl5SESQ|VK8Qt@Ls{X)YFl4GherxlQ0VqMj5Z7QV; zYHjT5kp7a|R#!68zKdfZIKz4Kk+knB_MGXncF?wy_>X~TSJF;N!KO$H`pOl4g~N}a zC^UC>`tZoPxvec4=^_~~#p3c&78}L-Oh)ge0nz18&almU7G6{)CD(_jp~>z z7_&E<=@)>w*n%TT`{4y)CsRydOm_HO{u?B%dh}OM$u7U>+sF%Ntt#WmkCUU;E`XiO zcQk6a@AZ}Ir))>R;d{5mjXNOeZvLBGK?PTV1SrC@N?_04MaMeevI)1NjI;<2n|;bp8Eysc{{ z?-3x87+?F^|H1HUhV0ynoZ$vQjR(5Ay2KO|r}^`w0a$$x(NFC=K>UZ!yZe^!fwdgv3lAzVrH z5NUbI$YwqaUdLiTBY-Z3(}11RVv!>JH;x^=Of!mP$a!_8;+F+}p*yfBsi?`iGp$g@F8G9JuIRiHW0Oy3O%i0U?erAeO^d>v)gF+M zkwJa4Q2U4Q!CQ^pJk-5v+(^~W^*qQmW(qmi>g$nz;&C@m8m%?rvv@3)GW$ z*1m)JACgu2!iw!b&_@-xtdQ^gV&c8F@ZQ)69RM%k-uuDTmeIIj8j2pd(Ke=?s-DMC zWZGgRgtOXiTm0cTaST)LQLW6pSD+fwn~hLyrwAFoYgnsHpoq4mZ($^OW(Tn;EZNg( zise%kk{u&SgW4?vzWOQ6=_@Bw955w)Ptu%gjtHf?mmeK%oI^)PJBoM@0^8y)Ut$O0 z0+p_Q%QCY%#?yO)mkR4oy>CQSsE$U~UapZBCMmhOqQBM~;13Q`0}-dLQJyelS7Im2 z@L7iv$-ZId67n^r&@(Z>M^)#(WF!ta@TMjlUz^bhy%o|6WesPsH$5j){d3%JLf`k+ zbjpyYZ#1EUNzyYn2wd`t2$_U}1-~DzfMGWzW|5~WAlJT2dg41z;ukN9QD;kH7JDxY zZ2X#i1BXiOzc|ER&{o|VK*YPBKE8jA5fEH=?E~Y!Pc#rYg|%KeYoY{qo7bjSW?C)r^ImlF^;Y_Y1&R?*nvbAn@!mv{v#) zc=Vv85SVG|-))3n#=u*Xhqy5`pwhU{9Ow-6Kcws(d|DIA2L-aS|{Es(O&C*Vr2M9jPQ=abmA((}66Ge_Uc@j0V7DXop%m@eOC$-a=$ zx`Lk?TG_g+IQg7?8OhXADzfp2+3{Q_m(<%K{vW~8T8ngpk)xBd_g(SWsG3M7YB1nM zj#5XuvdHRcVp%vDjRxSS`AEUd=L zcWaj|_#YPF^K4mBd!>JZ)7|#e{}6ZG13?U$(jn%B;!(xS+SRlBs6+K15VS#Mc(kCE zn_3pJuAP2p4lBo%wvs0dU%}nRm$%)3@@ube;h}z%$*Cz%DFBAWr3ku*-WRs5*FQ2X zjR2~sHL%BSysT{yc(40bATa9$WS1eMtiJPJy&$4pKRkz~^TlmjpUFu7TAug%vI>f- znwmFk|N0FYTG^Q@)#AgC`PaJh&}*ia^ny&-jA8!1 zeH^3rdC3lw#N40;xf*tw_2F_;07l3AG|@_jORRq74oZQVo%s_oa2r6jpZt7o<9G;l zpjvR)aPeZqVoW#v!A|=Y&b!Z*)h2_}GK}($lNsH(tKeV>>jnLr=JQ^PBM8ocJIa$*vBnsxaK-U5UG#w_ONq8y_+QNe#D*EM$^Mii ze1*FkrZ*Bf3h;ONe$YyYjE>|uI{z1oO&^r@4=i*pgpe|rB&Vuhp~?RT3pjxC&VdPKL(+hJqr)y_ixHi^X6XnCI(SU&AQ+al8!sn^zR zM%QCqpcf1!^zAN5 z$d$0-%-iD0n8{Soc<|s5ffEbQx2}7H$QkI$SACuP#={0R&>4gDP)AB@TGnm+he>km z#2!wb>%KwXVfz`%jG)+oA+}nLMMp4!wQ(6q4d#Q+hseA5F+z&ceBo@ zy2TtH)~cmQPh+&rfnto{$xhjxKNXVfGE1@ea7X@q>*aM6i#y@{iRhgbWBr}ntdPy! zHYJ?!3$C1*r^j~slgvo*Z;KzHCLe-et^KO-AZ9`Pg)H?ISac)~D| z8BbEB#wQ}zs55Hs8^3P(`3;+?*D_O+ANsvs@L>Z&Kh2)lEfT^F%7p7lIFeU?o}z)T zTB*_1&K~^}j77gRP<+@NEQngDuTR6vHwXbyoApu^7N`p1yl*GDAowqgqCsXz->ki~ zKBTUtl=YE~pwGz)$Wut>Ls#j0B!NfR7%*o7`48wbaaQ^$E5GgH%$wl?m6r!j2F7_YBnYQB3n zLOf)i;JastU~AH)H5AZk*^Q0HciRfOcY|03+_!?jh`_{4oFLAfH(ji}_cH zH!2#MdczVVr4&7{zFf{ap(dbt3Brut@cKVPK@^by$xfo+`SyQE4a8!|0e{caL9^E8 z@Snj0wBbuiiAt$`5{J)veOCJ)nkICdJXD-GDQ1$P@0EV7pZa%$Fe{I$Qu!M!gM(F) z=8?J82-3P1LxyZQl82%VW=8BWtfm*;WPRZSZOoNh?vCD{Jfjiiu!?7)r=wJYW#WKi zz-vNT2P@;xa(WQ1y#s2mkhqmGho*}fLGR!mgklc}vA^NcrjC95(EOi~2N~#ITZ9CR%^Nt1dY6eP%`mVqpx&^HQU9Ssw#RZcK zfIQu@F5aFBk%sK;aZ+ z8d8qxZLkBE1wc;6%Ml~%V}G9))Y<}~?uZX98X}nGb#*o2_D))cS>^t0tpj8E7yc0q z#_(}3k;}TmSwzAn)Zl-xe**6&-LB(ci{6%fTlY!`a1T$uk-^nMnmtj-3)nB0e>wT- zPEokOl)26sBYcR-L;Z}dbhUTOup35Oe~wxGmCeihE@7q}`WB*%usvPnS8zCEqGb~h zg06yfni3aa_9hegA?Z^<%_jWsoY+R7P3a(8{MLhFtT$9Rox0(KiwNrbjx=_pctAtp zMQPL>$M+qWS5$uVIHdIcbRZ72?A>znE)(2+A?tjiZxPV0!!%_TGyxIb*dnKQqcJ5< z>1v*Me?tImw|=W^g}%;X5w-rYegC$D75s{(<74z>IlH|chbR!siHBwK-hcC0SIoXM6PD_+M4|Ii)RFvx>@ zjYLCqDFQa0bpJz%u^9QJ@_#^oAE&uKM;kaY+8coS$P$uU-|u|F%_#w$2%%2YyoOp8^1`JohA znoY@1K#^Iefx_$Q_u64h0TQ{2QT-Kg(f95BQS|-L>M9N>co{25gU~^{buK|QpvnxC z4I*MF+h(GM;Sha-NHDC|;+zJkES(=-wwRuwOk!Ty&z39pEH;lcFeuD|oMwL^`YSsd zS19K1$TpC8MSyyXI!*c?qn-Dc$oqFP(f2-sot5RYwha}Q7i{NC^M$`?to{8c)5F+3 zw}}=$-+O_xy`ip~iPFUDlNsv{;s>(+Yg7C^m~QgI-Q~>kHYi-7u4QwxW9Wg~?;W3Y zon3EgHWSm-8hDQ{rm$cs>=BMxzd2a8U{&`uKQJSsBwcR@;q&!zD49HpIO3BIbdI1Q zP)gno9&?w=Xv7~XoeLZ9EvHMKKGqkQSy@Gl-~a%T(Hd3U@)j$ffM@h4DQjwkMlH22JzfvBJgVU^uTYD9%MV^x-__L>vZUfN{Xei^8McO@~{X~`=LR~%^ z*A?4ho$;c=iIZ0@RCgNZNpVCNCVbV?qFe4)G}*$GgZbD^-Nx>zWn*azlE!Ow5b394 zPm=@G8UG<0+osN6+s1yE0K+0ND@sfz&tGT0!p9bUB~hW^g6lZN>ZY)#)cCQeK_u8Z zrssz%Y3A&fk(=?!j;1GFyH6Nu>#1+)S5faDuK=n+dXd8kiM*`+yK`p96$@jbq2t!Z z&z{hshd8icIK1k59C#=Ry4Djsc-eB>#To!aU`+|#WS@S%rJ-=DGEr*>FQIPBT>@r{ zKU%d<_lh*4U5eS?&1?94ed0wsl%eyjyMctL>?$|rOa{*x=k>ULXB3+#Ium-WfUT!h zw~#1x>t>m&!_cF#=Amf_zF2f=O5ZEt%}})bqtWwPJ&CDRQ`cXi5LO}26l>0FQWYR? zK#awSgGWfEX5V=mwf7wZNU)|l$up_rMtT7i(bd*#sSDu6NvL;AQAF!U9Q)r28t3;X z_5VG(899GFSQj14zj*q1{(5`i8r(nPGq7LLBLmuw>B6C&gEolUWUYLt3?ek!7^RQ8 zO~`!E7VE=vU-)H~pD7rc9fRoJG7fMldjt%xGevMrD$;{*+KhWTT@wwR5vLrcZRgdv z#WAaGvm?RXe8wbj7+ZJA%cUHWxY|P53A7xQ$rGm%h~jQdUnn)N!|cMpW;$bka-8`_ zDBgi9B=|%@M%+cH_1U)8|CdAlvLNcR)R* zY9jJZBXZ-e35wkV+|)MboN^Wyp9XIINVp;1W>{)$H0-rHxLBNRDWF>4Qm)V9?CV^2 z_Eql4XgEo{KB5giK(-`r&Ku||e` zMYzDf9h)ozu3IH*)<_`BZ3@g=pRWJ~Yp%SqQj$ zBNzmkF(${m1Et#?c_vnZTYLmPZ+p^sE2c|W$wBB{gCfI0pP$JOBs$8onI7)ZIoMEH z#p0n*TAjWMcKbA1aB0l0?AJ{Rn}E5Mo0i$VzWTTQ86wE-d0?&=x^)jfEyY-c-n!4s ze}i5cxNMt05ve9jS;Y%NGN}{n6wgs&h_a@u#jBB%;4(`Yx1q0Rwpf;Tf25=N%-rr4 z#$zD}-vov-UijGnAn2CB$5zee+DRhDmVG7Yu+4QShS-&N^NNZU(IHwsAFeQ+1l*dA zPut)6*@IRvx3}BWQSt6!QGfm#P6D-@mFZlW89hqU)8ic!Z|E96IdvG2!IGB!Abyp^ znekur0isc(!L9Pt#eYWX9p);(jbX&k*lW7x@nn;Bbu`@q41%hZr z|BK^<-(7FrCV|^m%tyh2=i?lDzsszgyAH@57TV6QG#NI8dGp3xj_{`$#Z9S_31s$y zsvruva9Hu_Grh(<2q~?-7Bun-`V;(!ULQ1^G;PbJD}43n>}z0hJCni?OQV*8?2GLQ z2QZ6`GlT;RAcN1YT%mHUSluC>xbTL#2|UTVO+1WdFMQga#=~(&x5mSPB8v_ZRZX3I zFtbJaalzCM4mRw!h?Y%j%*ewyr&~TKH*uT<-HGW0rom?DbDA>?RN)+j>$((G`|>m; ztie_8`R3m#Y~sxsw#0e2#E*z52_4STvr{# z$j?-jNa+W|ADk+b-|L0+70Mni8S1uIrs}}y%Nt2Fh=G=k=`0E~{BehaHBJJfc!Hdb^OV|Jx8~hfDY6#eTu;{m9>W z9pKm=j;imbhIidr_d~zfm#0L;T6|?Z?KE zO!;%};o?jJYKwywF0($)6Hj-R0npbjTWsOrkM%Zb{!tCM<`fEM{{c_?G^aGB{VTDm zwK^p^6gMKBHcawEwHkdU+S45E%3H8X0gxrjT_kE#oGDOd73IDntxRXMALiBJe}mp< z;klbgT(DHrJGJD`oVqEytX`T~PcH?()-GSsEL@l=g@tT}xzp-EAd}b?5k=SL;ajAv z0REKTMpw@~cd0E8hOspVnFuhoRg4ksQnv|>FQ8D*6GKPDv&&f(DF`~w*xXv&0z_PY zxas+&;p4?Mjc9HqKYaT@ppx+QcPX7AT}oRs9o=mi6>l3p%tKZOacYmqBU<40XE|>e z{1C>F&<*~~Ncss0d1kxIB8j_Dn#y281TC$Z zRyldjuHZm`#3I`0MZ2WEZf8`Z29OfG_5SVD16G(G_g~Y1U$ZvYPlW1ua3e-vcUOLg zcLb4V=?#oPgd6$2m_|Cp@AnD~MIVVs4_yYld9(AS7uHY{24~m9s8b|iL&M5x)VWjD zSW2pC)rNhDASbG`ZDk18V)`dH8_Rj`Me{lR-2Yv}ub{&z$Tafld=jk()b*XInvp4s z)SPmEh7DD*5+$FfH*BSO zTXhA-w+GYt`uBE*qh`?3AIt1$Y3m0upox1zSE`y<`#e}BLbZoSeI&8%6T`D5v5Qe~ zI8$vH1jU_J%FehUI!SXNe<6-El!(K>Eyd|<)VjJ*xkUUX$o`xRi0sYfgyvU6Tb#FX9*>9#A*y+Tk(rjg-SCNmBf;KW|mM+ z{>%|ZOGiFFi+Y54H7>cPs*GFH0c;r35D1R+NoD-t&!mqyuX;N5S4g?Kqi1r_pUiTC@YjyYrj1ziGq##tjdDx5!K+f*F69qhsEpk9L6#3w0lE`#w~YTIqc?>mc3k`Ui8Fy3Gxf)*5>& zF^yM>|Mhsut~NA9oj`#)ld(1ggOb8Eu%MB6ninu{K9P!D0LP9he0(QkG$#J$qP=?P z(dWINd{NfOp*pK%+5zUuw$hHZ;cL7YekdB#@A^`zK$%RF-n!g!18P5WJ22#8r^}1p zX+q&VY@A1Z4T9;M4B1)b=r%8+hp(Ql;#sss(7GPs3%%7fsG>mX`WtI2YZ7c3QJPNO z^%MBv0+|D7Q*9d=ISqG46P0aL0yGv(qgAo;AnyHJh`|p@m!Kg0BEvPg|D)aJ-wQ#! z$^#DFFY=*#s)(=RAxCs>Ox4xiIa-d!7v0IBu?1_r!7c2ST8f=2JvH;77%A(u`zefg zuPsqTXiEa`o6WxKJ;#L5+^$dzOvQ$%MqR+G9qzFIVQ`mtL%8+7lNTyvj9w-qC*|;m zib)<*7IRzyn_PKgK271vg+uw$bV0;D3Y5ZME_kLViR+Ch5Et@G$i6*8>4W| z#CtkYg8&N||0_2e@cEaRhTwvja-}Uj-oQt-K;QH|u~rA?5fGrAoclDnbqXB<(t$br zFn+o*0rM5BiTWh1hb6n6Ju@*~O-t*mJ4t7%I`7(KGk+bOpbV8U#@7onV^ykVb~J(k zpr;SZ)H9C>3rkEv=*=Zz!{61{1^zcL{6lRXqHd>)uHrpa3i zy=X&}{H7M^t3slcbgo5An`e^F)RAiRzg zeQ1;i#`_O#&TC-(k~XpppZ^{nXr2%)Bct4o3z_ds;V|thWK*c~8^&WjJk4Td=l3J2 z(&RGU_ozXEXaH+`l=#k)}H(8V!*J_^k4k-Lx;2gK`<8KW@2r< z5}2@^Dmj({OOwA^*Y2FH$rAdvmC@D`*~3 zU{0C$>i5h+BuTJ`f*NN$GyMJ-inJQ4%=L%J^idxwrpgT_QyK(y+&ZE|uyrE&B}AR7 zHF^Fnf%u=VUK>;C=|+>*g^8JX$kS;N0lZGM_^|kH!XhT zR0E2JVld+Pn*X*}p=$@LJB5S_W`Z^CG7mJ2oj29f7tr^(?0qP-1#SyNaQW^HTdz~0 zD=@k#tW#9we~5tgNhK)nr%o_ye~V0+h733S%q?y^{tmyg5_eQuO4*{FW)UZMFNPNW z1nZ&g%ur3nL7CKh-Hn6?P2vy14Q`^d7j;=}xGxp>exa{1NrG<-wP{;iXdVot;(Tg(FL=V)B zsHY&u(jcy3@+AY`wQm39Qx?wGesM1O5b z<;wXfse(~L_N;DaXwr3k6xaQFihrt>nauT#7IfE|)^Uuv`9_~EYHvWrtR3G_Tc!QV zq`dW=hI?E~2asRGc3TY+Tmt%>bwiGtH#oYWO4IfbM%1*@{k_uJ;+I3rJ_Y{TgQu)^ zUHYlk?G{W7Z2cVReenIWzJ1-$me-j8dPQm>Ivl+ccC5W1BO<-%et~qoXo7w~{eU9e zCex&K7{c4B4vo}H%JBXpS|r5?ie<(33RD=)Nh$KLX46`(A7%JL%V}of>1u7cGvuv` z#fhfc$Oa!*;I4lX(#V>Z3Zf1M<7Gp!^7)3h?5DN@hVmi}v!2wkU+1eSV0Hz{?cJ_9 z2G`}tswx;ayNDa_0rS3gO}?aEo)z|BIOPC5BON)L=GL>2IQ;Y7*s#&e93cAdUqkB+fCZeIJRIx6mQIMJwT5!k8K|U`?=kz;sKMa084}%iHV$35&3Mqx5y|_ z=)H5#cAIRr{JI9FtKXzR-baY+`F*yG^{@{J)EKpjW^`iyvg4&nNsfNnZOidu3S*fi zxv^@LL>BOQKn}tf6ZE9nrbBr;VImHqL6Li`*qb)vBC~; ziwW8`XQT_M^M%%irQm3uVXh#{-xI-Bg(%RF+b(pJE}Lf=mHSl@2VOijafq0J+nSnw z9#v1BzTlwVB{lYPNZL8UFWI@8ZpFE6AP03BO&Injd0J=o3D(Q-a;fA$VY7A~v;}&z zGu)7zkPX+{)z-3@RU%!l2xZgL{aFGoCBMb5L?vtJ=^05peEHsw75=N`Wgc0c86xe# z?%4S(_*quVtHGO4)9rh~4L1AcyMpd4ZR0g1v5^n$f_1g%jJ#|tjMBfWfoHdWv z+z)E{Sbm`C5q=0~Av~mQma^;3EO2S~o)T`NtmUCzv1cxs=1oxLtgP8DaH$N?%#@s) zRK8IC1~$3)8m>QSA1>%AnRIu5u|GhRtKoa&!u?d%GTgeSs-W;lH(d@Za@>(DlL7z$Vj zIcawS84-|$0*6i(jjK1O^+6}6le85gC|RH#j#O+jv&i~lUMAgU=9APxoHS~)7=YEz zh@Jc;^`=4{`%A1&*?t{>Z!h6m2=IQIDkuY5VPN%<<>cMfN>=5gg#Z!*mlp7==hfqT z)m<^)^L?|vQ?s@~>4u^8#W}u3htqWs46*2A11dTRZJyH3vxo%Z!2y|7;7c}oHnZ=( z>>*aR%F!y;^0$e?O!-~~tfETWVl|(I-P>1`?(Hk+edfQL3Ot_rE$VCh4CTuLng1sIW9SHF`iYj`=Wj6ljZSlO^SmDg zp6I1r`)XzE@4;<~5BOv-+k>G7lo3l@t$)X&3(a_w`=e&vJo-);iY`iMW)YPu`nbZf z<%(!EY_$b6e6?h6RVi@Amz~9qs00ij8=E3;Nzyz;B^H`c@Y(11*;43YW79}jH4wR! z0dVml2P&mfKc^bUd02yw;W8cVMQ6cO5t-QiLwRdKGt$sC5B|7kZhR&(@!?$w7>U>L z+u?GjN&t#kbmI4JdmGWHil^fRR)W1q z#`-l0weBWPhgmP9c~XIvdRb*N!=?Qe;9genbqaXk^v%(C95_ELYCO34CF=QuOmwfH z-@p2~x1RoGCuvLS<}{Uh&Q9e15=jOg!Sv4T4b1w6U)_>ya}`za5WvA)U{KFLaY!oi z{rrt<%#(2Ben#Mx;J;`cKajFMh2~flsTICoR;Foicuch(i3+W1d3IFzGHL_*yqEle zcV@&}7F)?MxX2NIoYLpxlA#jt`g~p?p~Y+f>aPRuai$MYY?k@GNb)b(Imu}LNDQ_( zT|aIxO^C{~^n6o;zfD4SKcA2^^xLy0yo0Y$-3rU@gr|U2u|o>~l1~)9W4A?hYk2#D z8S9McpZuJ&0&q)cUFEddQUhtp(9#sOQvGQuAEhFZAJAb%6s*~xklQ(L~Z1PK{1;|6m(xX3DN7!oY;b2ruR+tfH$P$=WC6B?YwU9<-z|LsPC) z&Ywk&Jqg#G>tw}M!jn*=agz!fZe9m3xHS_4D1g<9!mS7ATz{ko3s8#oOCH_&HCYhy zjR>cSir3HDf#(sbQm%;7qMP=mb)}Y-opIovKC-?mdB@`ZN|<#ZYiAwRWX&A6&x?-?I`eVvJN~dFV@41ZxzRrmq9n zXa|af=+Ef4qf9H=mOK&5eovTZ70uYXe>EdOjrHW3wwPN-+L9}@BNWGk99kyvN-4Yc zX=6J7mbc0D_Wem}zpuxnhR z1x39-UA#ZoJidX^**qr`xTZwLbjoe~oCGEffx3vClZpk~%P%BU>%2PFcN1*JKD1Aw{C!r_WyWT~;mF;^z_&`dV9J?w_28l?$&IM&lj1;uAM{;PQ4t+5#XXRKW z@MD~1Vka$Qnlp&5JG7@=;%Jp1Y?m%lI^Yd86in`Yg82}hfc-;>q81hU62&GtG%A}Y z2367tPKby`G;tc|A+7>35782ZcLCNnU-HPwYpPYncRPTkzeB~=ul^Opa!2?rby=va zj_^rSPuSmn55jk>ftw?g`dzlm?Q*2Psb|ERkeF2Cdp zz`?DO9#xZ{QZSzrUr?pnla~#78Qr!fI;|ab_nX!CR#z{#lO%x8*=sou!7rn{q+x3= zqt`;dQy5+a0Vj&A=dEQTAA``9BUIS`eM0Y#tmv)iWZ|8px(DJkw?IpqfkdByq>a&6 zNY1c__@(O*e5UQWI{zK4b$WXx2apOv9gFt^&xyp#+j!x50n1I^&CK*ij z^e`M(`N$rgPNB<>?*|k6Ap+$@rek1nj)5`D*oC<0Zh|VF454VC3`m~pSi>-Ffgm;+ znLz4ozf6zb1%uzq+k$&Cgt={NZvOkyw&S1W#F1CA;;uF%lT=|UxY4BFKj0kw#13lu zZZL!Aq=z7&Bi-zR8u( z@Uk0^TKBoa0+l=?K-8~e*>7C@BctcVAJLA^!E@mrJzvv4sakxP5V;vn$u2bbBA-{E zSwx|NS5R8|4n6IsdI@#z>n_wHL!FR~9+Mwk9vIl+=-Lv%r>%~H@*bHwJ#$CL6nCra z`9EQ$_a1w*r*3 zTAiLDw)}D64kp^;R`t`j6C})m_rXi*t{2yN7#G{V^cFK(0>X{ZVmee*)s!(b&$VzT z-yrEBWd|f0R3bvj?%#h}$E4hM8z`OIgj;m2Icj_wSP3Z!Lkp?&6S0^_>nG?wk9o-y zr!@;&nEC);s=iaSr&2X^7UV4n&pO$6=P99~vvaipsYO+JpuqFLIK9_i4TqteoG;^| zZ!nUd1^-JEM*Ht~NpGx?<=*b&{p<(&A_c%Ud*IssfB$xh>{*=grjB02|7tXr+<|GW z&8&cO>C@S*=dqq)Mc|0%W64v_(kT1;0jgN9$RE<7>+__ytiXHOcSlL}U!45yM#8`g z;L>uPebD{of`DeBr$uz_Zgo?5$>aPb?7ti`K5SP_!p8D#V|>*<7l{o?Ql2)8Hg)2w z+=)`bBl7e8M#yW|uX=+#rVv)iuV%a`+qn3Y**5KD!fR0`Ng8IcS+E=Ax^en;HEtgY zKh}-L2Je~qVQHe#ERdN&C)oC}VHbV`^4aOC~GUuTvn#D4@> zUP1mQB|7Gk*kND3QPmCp(+V+GwKny@nKq93KJXovNwZ`C56Ve(=fTuo{iN|s0lUfz z#>aJv0AB}reZ6bZkVUphH{PBV7jCWHjTm8$OC1+()UBAyYa1lYA1 z24Cjf!`z2KCAgfM(b=(iqP=kD5q@!zKz{hX@+?n__V$KXWJ zMCL2n#;JN4RWMLc@c6bg?bzOVKkjn_G2VOdT0Q*Z1z3~T-@0L#>7Wt>&>irB)ny!lBRk2 zevRRnSec*NFETjTRz>5^=4K^&zr2}AEF}(#ZbWMYW+$2$P&MWpbwL4^nA_S4n2~g! zXP!*`2t83~1X1&qb&cSqVYDPG1eVYAfXAR(V8|r8KrTpC1DV4Oea=mf3+Iq-MIn0_C^#}4d zbxp9aVBy z9)qL3y?ata>HoDV#&v=E4nKk6G3vUf>2BVVUXV6t`TJjD1m(-;S``%6uY3wdPc=Vm zHh2G;=H|WbD0sq^{H)FcS`6(Xm$QvKJYFH;B6L6g|RI) zL?;Yc_p%)ssyC%XVMxy4(voiBA_mf|d(cbOanrS1;)}}V?+!l_@P!<9Gc^cF+i6iH z6H0TU;%*H$=wN0iW+;_dJ=;y@!)wJ2ivIlJqB&j5q)+SakT0x&S*1*y zabSeT&ZEpQUTmhMj7Sv!u_4H;sa2+-M^o@IL5OS$kd$XI(ny*mnNDg5;#tuAiVANZ9XPgk`KH!mAA!+Ly`^jl#97A_;vEvzb~lm>|yLYh-@FCI;k-w5bX1UD)pyM zYR;)@ni)LafBinK)&M&$njiA2N=a+&KL~{9=L^q=e zQI{rX)7^ljX6fb>!89Cd<_{@+Esdh|cQqqPMg?&m2Ut|J!VYa)C^Z(`q#z3P;VH!j Q5ac5-ts+$~Vfy9&02MFtzyJUM delta 29868 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 HAMpPG0pXFG diff --git a/web-build/src/world/item/Item.cpp b/web-build/src/world/item/Item.cpp index 14307438..a5aad6de 100644 --- a/web-build/src/world/item/Item.cpp +++ b/web-build/src/world/item/Item.cpp @@ -150,6 +150,7 @@ Item* Item::chicken_cooked = NULL; Item* Item::netherbrick = NULL; Item* Item::netherQuartz = NULL; +Item* Item::greenEmerald = NULL; //Item* Item::record_01 = NULL; //Item* Item::record_02 = NULL; @@ -282,6 +283,7 @@ void Item::initItems() { Item::netherbrick = (new Item(149))->setIcon(5, 9)->setDescriptionId("netherbrickItem")->setCategory(ItemCategory::Structures); Item::netherQuartz = (new Item(150))->setIcon(5, 10)->setDescriptionId("netherquartz")->setCategory(ItemCategory::Mechanisms); + Item::greenEmerald = (new Item(151))->setIcon(6, 2)->setDescriptionId("greenEmerald")->setCategory(ItemCategory::Decorations); //Item::record_01 = (new RecordingItem(2000, "13"))->setIcon(0, 15)->setCategory(ItemCategory::Decorations)->setDescriptionId("record"); //Item::record_02 = (new RecordingItem(2001, "cat"))->setIcon(1, 15)->setCategory(ItemCategory::Decorations)->setDescriptionId("record"); diff --git a/web-build/src/world/item/Item.h b/web-build/src/world/item/Item.h index 7e09f2eb..a410ec4b 100644 --- a/web-build/src/world/item/Item.h +++ b/web-build/src/world/item/Item.h @@ -200,6 +200,7 @@ class Item static Item* netherbrick; static Item* netherQuartz; + static Item* greenEmerald; // actual green emerald gem static Item* record_01; static Item* record_02; diff --git a/web-build/src/world/item/crafting/Recipes.cpp b/web-build/src/world/item/crafting/Recipes.cpp index 6a668cbb..f616cb63 100644 --- a/web-build/src/world/item/crafting/Recipes.cpp +++ b/web-build/src/world/item/crafting/Recipes.cpp @@ -685,6 +685,20 @@ Recipes::Recipes() definition('#', Tile::hayBlock)); + // Green emerald block + addShapedRecipe(ItemInstance(Tile::greenEmeraldBlock, 1), // + "###", // + "###", // + "###", // + + definition('#', Item::greenEmerald)); + + // Green emerald from block + addShapedRecipe(ItemInstance(Item::greenEmerald, 9), // + "#", // + + definition('#', Tile::greenEmeraldBlock)); + LOGI("%d recipes\n", (int)recipes.size()); } diff --git a/web-build/src/world/level/biome/Biome.cpp b/web-build/src/world/level/biome/Biome.cpp index d0a842a0..1b7dbc25 100644 --- a/web-build/src/world/level/biome/Biome.cpp +++ b/web-build/src/world/level/biome/Biome.cpp @@ -30,7 +30,9 @@ Biome* Biome::map[64*64]; Biome::Biome() : topMaterial(((Tile*)Tile::grass)->id), material(((Tile*)Tile::dirt)->id), - leafColor(0x4EE031) + leafColor(0x4EE031), + temperature(0.5f), + downfall(0.5f) { _friendlies.insert(_friendlies.end(), MobSpawnerData(MobTypes::Sheep, 12, 2, 3)); _friendlies.insert(_friendlies.end(), MobSpawnerData(MobTypes::Pig, 10, 1, 3)); @@ -84,6 +86,13 @@ Biome* Biome::setSnowCovered() return this; } +Biome* Biome::setTemperatureAndDownfall(float temp, float dfall) +{ + temperature = temp; + downfall = dfall; + return this; +} + Biome* Biome::clearMobs( bool friendlies /*= true*/, bool waterFriendlies /*= true*/, bool enemies /*= true*/ ) { if (friendlies) _friendlies.clear(); @@ -108,17 +117,17 @@ void Biome::recalc() /*static*/ void Biome::initBiomes() { - rainForest = (new RainforestBiome())->setColor(0x08FA36)->setName("Rainforest")->setLeafColor(0x1FF458); - swampland = (new SwampBiome())->setColor(0x07F9B2)->setName("Swampland")->setLeafColor(0x8BAF48); - seasonalForest = (new Biome())->setColor(0x9BE023)->setName("Seasonal Forest"); - forest = (new ForestBiome())->setColor(0x056621)->setName("Forest")->setLeafColor(0x4EBA31); - savanna = (new FlatBiome())->setColor(0xD9E023)->setName("Savanna"); - shrubland = (new Biome())->setColor(0xA1AD20)->setName("Shrubland"); - taiga = (new TaigaBiome())->setColor(0x2EB153)->setName("Taiga")->setSnowCovered()->setLeafColor(0x7BB731); - desert = (new FlatBiome())->setColor(0xFA9418)->clearMobs(true, true, false)->setName("Desert"); - plains = (new FlatBiome())->setColor(0xFFD910)->setName("Plains"); - iceDesert = (new FlatBiome())->setColor(0xFFED93)->clearMobs(true, false, false)->setName("Ice Desert")->setSnowCovered()->setLeafColor(0xC4D339); - tundra = (new Biome())->setColor(0x57EBF9)->setName("Tundra")->setSnowCovered()->setLeafColor(0xC4D339); + rainForest = (new RainforestBiome())->setColor(0x08FA36)->setName("Rainforest")->setLeafColor(0x1FF458)->setTemperatureAndDownfall(0.95f, 0.9f); + swampland = (new SwampBiome())->setColor(0x07F9B2)->setName("Swampland")->setLeafColor(0x8BAF48)->setTemperatureAndDownfall(0.8f, 0.9f); + seasonalForest = (new Biome())->setColor(0x9BE023)->setName("Seasonal Forest")->setTemperatureAndDownfall(0.7f, 0.8f); + forest = (new ForestBiome())->setColor(0x056621)->setName("Forest")->setLeafColor(0x4EBA31)->setTemperatureAndDownfall(0.7f, 0.8f); + savanna = (new FlatBiome())->setColor(0xD9E023)->setName("Savanna")->setTemperatureAndDownfall(1.2f, 0.0f); + shrubland = (new Biome())->setColor(0xA1AD20)->setName("Shrubland")->setTemperatureAndDownfall(0.7f, 0.4f); + taiga = (new TaigaBiome())->setColor(0x2EB153)->setName("Taiga")->setSnowCovered()->setLeafColor(0x7BB731)->setTemperatureAndDownfall(0.05f, 0.8f); + desert = (new FlatBiome())->setColor(0xFA9418)->clearMobs(true, true, false)->setName("Desert")->setTemperatureAndDownfall(2.0f, 0.0f); + plains = (new FlatBiome())->setColor(0xFFD910)->setName("Plains")->setTemperatureAndDownfall(0.8f, 0.4f); + iceDesert = (new FlatBiome())->setColor(0xFFED93)->clearMobs(true, false, false)->setName("Ice Desert")->setSnowCovered()->setLeafColor(0xC4D339)->setTemperatureAndDownfall(0.0f, 0.5f); + tundra = (new Biome())->setColor(0x57EBF9)->setName("Tundra")->setSnowCovered()->setLeafColor(0xC4D339)->setTemperatureAndDownfall(0.0f, 0.5f); recalc(); } diff --git a/web-build/src/world/level/biome/Biome.h b/web-build/src/world/level/biome/Biome.h index 48a49d56..51ec8531 100644 --- a/web-build/src/world/level/biome/Biome.h +++ b/web-build/src/world/level/biome/Biome.h @@ -53,6 +53,7 @@ class Biome Biome* setLeafColor(int leafColor); Biome* setColor(int color); Biome* setSnowCovered(); + Biome* setTemperatureAndDownfall(float temp, float dfall); Biome* clearMobs(bool friendlies = true, bool waterFriendlies = true, bool enemies = true); MobList _enemies; @@ -83,11 +84,20 @@ class Biome virtual MobList& getMobs(const MobCategory& category); virtual float getCreatureProbability(); + // Temperature system + virtual bool hasSnow() { return temperature < 0.15f; } + virtual bool hasRain() { return downfall > 0.0f; } + virtual bool isHumid() { return downfall > 0.85f; } + virtual float getTemperature() { return temperature; } + virtual float getDownfall() { return downfall; } + std::string name; int color; char topMaterial; char material; int leafColor; + float temperature; + float downfall; private: static Biome* map[64*64]; }; diff --git a/web-build/src/world/level/levelgen/RandomLevelSource.cpp b/web-build/src/world/level/levelgen/RandomLevelSource.cpp index fd15779a..b2d4979b 100644 --- a/web-build/src/world/level/levelgen/RandomLevelSource.cpp +++ b/web-build/src/world/level/levelgen/RandomLevelSource.cpp @@ -365,6 +365,15 @@ void RandomLevelSource::postProcess(ChunkSource* parent, int xt, int zt) { feature.place(level, &random, x, y, z); } + // Green emerald ore (rare, found below y=32) + if (random.nextInt(3) == 0) { + int x = xo + random.nextInt(16); + int y = random.nextInt(28) + 4; + int z = zo + random.nextInt(16); + OreFeature feature(Tile::greenEmeraldOre->id, 3); + feature.place(level, &random, x, y, z); + } + const float ss = 0.5f; int oFor = (int) ((forestNoise.getValue(xo * ss, zo * ss) / 8 + random.nextFloat() * 4 + 4) / 3); int forests = 0;//1; (java: 0) diff --git a/web-build/src/world/level/tile/HayBlockTile.h b/web-build/src/world/level/tile/HayBlockTile.h index 07a08d78..d16231e9 100644 --- a/web-build/src/world/level/tile/HayBlockTile.h +++ b/web-build/src/world/level/tile/HayBlockTile.h @@ -17,7 +17,7 @@ class HayBlockTile: public Tile static const int TEX_TOP = 15 + 8 * 16; // 143 HayBlockTile(int id) - : super(id, TEX_SIDE, Material::grass) + : super(id, TEX_SIDE, Material::vegetable) { } diff --git a/web-build/src/world/level/tile/OreTile.h b/web-build/src/world/level/tile/OreTile.h index 4e185b54..048fd443 100644 --- a/web-build/src/world/level/tile/OreTile.h +++ b/web-build/src/world/level/tile/OreTile.h @@ -21,6 +21,7 @@ class OreTile: public Tile if (id == Tile::coalOre->id) return Item::coal->id; if (id == Tile::emeraldOre->id) return Item::emerald->id; if (id == Tile::lapisOre->id) return Item::dye_powder->id; + if (Tile::greenEmeraldOre && id == Tile::greenEmeraldOre->id) return Item::greenEmerald->id; return id; } diff --git a/web-build/src/world/level/tile/Tile.cpp b/web-build/src/world/level/tile/Tile.cpp index f5b706c3..2393c592 100644 --- a/web-build/src/world/level/tile/Tile.cpp +++ b/web-build/src/world/level/tile/Tile.cpp @@ -190,6 +190,8 @@ Tile* Tile::stairs_andesite = NULL; Tile* Tile::stairs_polGranite = NULL; Tile* Tile::stairs_polDiorite = NULL; Tile* Tile::stairs_polAndesite = NULL; +Tile* Tile::greenEmeraldOre = NULL; +Tile* Tile::greenEmeraldBlock = NULL; /*static*/ void Tile::initTiles() { @@ -312,6 +314,10 @@ void Tile::initTiles() { // Hay bale hayBlock = (new HayBlockTile(170))->init()->setDestroyTime(0.5f)->setSoundType(SOUND_GRASS)->setCategory(ItemCategory::Structures)->setDescriptionId("hayBlock"); + // Real emerald (green) ore and block + greenEmeraldOre = (new OreTile(137, 13 + 10 * 16))->init()->setDestroyTime(3.0f)->setExplodeable(5)->setSoundType(SOUND_STONE)->setCategory(ItemCategory::Decorations)->setDescriptionId("oreEmerald"); + greenEmeraldBlock = (new MetalTile(138, 5 + 11 * 16))->init()->setDestroyTime(5.0f)->setExplodeable(10)->setSoundType(SOUND_METAL)->setCategory(ItemCategory::Decorations)->setDescriptionId("blockEmerald"); + // Wood variant fences fence_spruce = (new FenceTile(188, 3 + 8 * 16))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("spruceFence"); fence_birch = (new FenceTile(189, 4 + 8 * 16))->init()->setDestroyTime(2.0f)->setExplodeable(5)->setSoundType(SOUND_WOOD)->setCategory(ItemCategory::Structures)->setDescriptionId("birchFence"); diff --git a/web-build/src/world/level/tile/Tile.h b/web-build/src/world/level/tile/Tile.h index eabbb93a..85e20f81 100644 --- a/web-build/src/world/level/tile/Tile.h +++ b/web-build/src/world/level/tile/Tile.h @@ -253,6 +253,10 @@ class Tile static Tile* stairs_polDiorite; // (ID 133) static Tile* stairs_polAndesite; // (ID 136) + // Actual emerald (green) ore and block + static Tile* greenEmeraldOre; // (ID 129 was already used, use 137) + static Tile* greenEmeraldBlock; // (ID 138) + // invisible bedrock is used to block off empty chunks (i.e. prevent player movement) static Tile* invisible_bedrock; static Tile* info_updateGame1; From b067bc661e33b4980fa9cfe0be6d2391bc4afd16 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 10 Apr 2026 04:18:05 +0000 Subject: [PATCH 6/7] Add stone variant slabs, wood slab recipes for spruce/birch, remove accidental emsdk submodule Agent-Logs-Url: https://github.com/sriail/MCPE-WASM/sessions/2a40c645-cad8-4827-b4f7-86e7eed5d684 Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- .gitignore | 1 + emsdk | 1 - web-build/src/world/item/crafting/Recipes.cpp | 28 +++++++++++++++++++ .../src/world/level/tile/StoneSlabTile.cpp | 6 +++- .../src/world/level/tile/StoneSlabTile.h | 2 ++ 5 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 .gitignore delete mode 160000 emsdk diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..63f6ae4e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +emsdk diff --git a/emsdk b/emsdk deleted file mode 160000 index c9ef2c9d..00000000 --- a/emsdk +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c9ef2c9d6000341d667a32a807ba47ca489d1e1b diff --git a/web-build/src/world/item/crafting/Recipes.cpp b/web-build/src/world/item/crafting/Recipes.cpp index f616cb63..a9221d0f 100644 --- a/web-build/src/world/item/crafting/Recipes.cpp +++ b/web-build/src/world/item/crafting/Recipes.cpp @@ -699,6 +699,34 @@ Recipes::Recipes() definition('#', Tile::greenEmeraldBlock)); + // Granite slab + addShapedRecipe(ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::GRANITE_SLAB), // + "###", // + + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_GRANITE))); + + // Diorite slab + addShapedRecipe(ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::DIORITE_SLAB), // + "###", // + + definition('#', ItemInstance(Tile::stoneVariant, 1, StoneVariantTile::DATA_DIORITE))); + + // Andesite slab (reuse cobblestone slab look for now as we ran out of data values, + // or use granite slab texture variant) + // Note: Data values 0-7 are all used - further slab types would need a second slab tile + + // Spruce slab (produces wood slab from spruce planks) + addShapedRecipe(ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::WOOD_SLAB), // + "###", // + + definition('#', ItemInstance(Tile::wood, 1, 1))); // spruce planks + + // Birch slab (produces wood slab from birch planks) + addShapedRecipe(ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::WOOD_SLAB), // + "###", // + + definition('#', ItemInstance(Tile::wood, 1, 2))); // birch planks + LOGI("%d recipes\n", (int)recipes.size()); } diff --git a/web-build/src/world/level/tile/StoneSlabTile.cpp b/web-build/src/world/level/tile/StoneSlabTile.cpp index 938f83d1..57f15e16 100644 --- a/web-build/src/world/level/tile/StoneSlabTile.cpp +++ b/web-build/src/world/level/tile/StoneSlabTile.cpp @@ -5,7 +5,7 @@ #include "../../Facing.h" const std::string StoneSlabTile::SLAB_NAMES[] = { - "stone", "sand", "wood", "cobble", "brick", "smoothStoneBrick" + "stone", "sand", "wood", "cobble", "brick", "smoothStoneBrick", "granite", "diorite" }; const int StoneSlabTile::SLAB_NAMES_COUNT = sizeof(SLAB_NAMES) / sizeof(std::string); @@ -60,6 +60,10 @@ int StoneSlabTile::getTexture(int face, int data) { return Tile::redBrick->tex; } else if (data == SMOOTHBRICK_SLAB) { return Tile::stoneBrickSmooth->tex; + } else if (data == GRANITE_SLAB) { + return 5 + 8 * 16; // granite texture + } else if (data == DIORITE_SLAB) { + return 7 + 8 * 16; // diorite texture } return 6; } diff --git a/web-build/src/world/level/tile/StoneSlabTile.h b/web-build/src/world/level/tile/StoneSlabTile.h index 94c0777e..f70cb534 100644 --- a/web-build/src/world/level/tile/StoneSlabTile.h +++ b/web-build/src/world/level/tile/StoneSlabTile.h @@ -18,6 +18,8 @@ class StoneSlabTile: public Tile static const int COBBLESTONE_SLAB = 3; static const int BRICK_SLAB = 4; static const int SMOOTHBRICK_SLAB = 5; + static const int GRANITE_SLAB = 6; + static const int DIORITE_SLAB = 7; static const int TYPE_MASK = 7; static const int TOP_SLOT_BIT = 8; From 449c99f857ae53190f38e6667181a8a0ec440d85 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 10 Apr 2026 16:49:19 +0000 Subject: [PATCH 7/7] Fix linker errors: enable Item::redStone and Item::diode definitions and initializations Agent-Logs-Url: https://github.com/sriail/MCPE-WASM/sessions/787ec103-b7eb-42c4-86c6-749deeb255ee Co-authored-by: sriail <225764385+sriail@users.noreply.github.com> --- web-build/src/world/item/Item.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/web-build/src/world/item/Item.cpp b/web-build/src/world/item/Item.cpp index a5aad6de..34d92524 100644 --- a/web-build/src/world/item/Item.cpp +++ b/web-build/src/world/item/Item.cpp @@ -108,7 +108,7 @@ Item* Item::door_wood = NULL; //Item* Item::minecart = NULL; //Item* Item::saddle = NULL; Item* Item::door_iron = NULL; -//Item* Item::redStone = NULL; +Item* Item::redStone = NULL; Item* Item::snowBall = NULL; //Item* Item::boat = NULL; @@ -141,7 +141,7 @@ Item* Item::sugar = NULL; Item* Item::bed = NULL; -//Item* Item::diode = NULL; +Item* Item::diode = NULL; ShearsItem* Item::shears = NULL; Item* Item::beef_raw = NULL; Item* Item::beef_cooked = NULL; @@ -247,7 +247,7 @@ void Item::initItems() { //Item::minecart = (new MinecartItem(72, Minecart.RIDEABLE))->setIcon(7, 8)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("minecart"); //Item::saddle = (new SaddleItem(73))->setIcon(8, 6)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("saddle"); Item::door_iron = (new DoorItem(74, Material::metal))->setIcon(12, 2)->setCategory(ItemCategory::Structures)->setDescriptionId("doorIron"); - //Item::redStone = (new RedStoneItem(75))->setIcon(8, 3)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("redstone"); + Item::redStone = (new Item(75))->setIcon(8, 3)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("redstone"); Item::snowBall = (new SnowballItem(76))->setIcon(14, 0)->setCategory(ItemCategory::Decorations)->setDescriptionId("snowball"); //Item::boat = (new BoatItem(77))->setIcon(8, 8)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("boat"); Item::leather = (new Item(78))->setIcon(7, 6)->setCategory(ItemCategory::Tools)->setDescriptionId("leather"); @@ -272,7 +272,7 @@ void Item::initItems() { Item::sugar = (new Item(97))->setIcon(13, 0)->setCategory(ItemCategory::FoodArmor)->setDescriptionId("sugar")->handEquipped(); //Item::cake = (new TilePlanterItem(98, Tile::cake))->setMaxStackSize(1)->setIcon(13, 1)->setCategory(ItemCategory::FoodArmor)->setDescriptionId("cake"); Item::bed = (new BedItem(99))->setMaxStackSize(1)->setIcon(13, 2)->setCategory(ItemCategory::Structures)->setDescriptionId("bed"); - //Item::diode = (new TilePlanterItem(100, Tile::diode_off))->setIcon(6, 5)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("diode"); + Item::diode = (new TilePlanterItem(100, Tile::diode_off))->setIcon(6, 5)->setCategory(ItemCategory::Mechanisms)->setDescriptionId("diode"); Item::shears = (ShearsItem*)(new ShearsItem(103))->setIcon(13, 5)->setCategory(ItemCategory::Tools)->setDescriptionId("shears"); Item::melon = (new FoodItem(104, 2, false))->setIcon(13, 6)->setCategory(ItemCategory::FoodArmor)->setDescriptionId("melon"); Item::seeds_melon = (new SeedItem(106, Tile::melonStem->id, Tile::farmland->id))->setIcon(14, 3)->setCategory(ItemCategory::FoodArmor)->setDescriptionId("seedsMelon");