From e5f6d25aa340ff386f2d7dce7b15344e6934ea1c Mon Sep 17 00:00:00 2001 From: raffmont Date: Tue, 22 Sep 2026 22:48:22 +0200 Subject: [PATCH 01/12] Align host cartridge RAM checks with the 64 KiB default profile Commit 596bcf9 made CONFIG_PRG32_CART_RAM_EXTENDED (64 KiB) the default firmware profile, but the host tools still assumed 32 KiB, so `cartridge build` and `qemu upload` rejected carts between 32 and 64 KiB. - env_variables: DEFAULT_CART_RAM_KIB = 64 (matches Kconfig PRG32_CART_RAM_KIB); FALLBACK_CART_RAM_SIZE derives from it. - Add --cart-ram-kib (16-128) to `cartridge build` (default 64) and `qemu upload` (default: CONFIG_PRG32_CART_RAM_KIB from the sdkconfig next to --flash, else 64). Use 32 for the classroom profile. - Restore inject_cartridge() in upload_qemu.py and fix stale imports that stopped prg32.qemu.load_cart, start and run_qemu from importing. - Convert the random and sprite-render tests to unittest.TestCase so they run without pytest; add a test that imports every prg32 module. - Document host-side profile matching in docs/usage/profiles.md and link it from cartridges.md, framework_manual.md and tooling.md. Co-Authored-By: Claude Opus 5.5 --- docs/software/cartridges.md | 6 ++ docs/software/framework_manual.md | 2 + docs/usage/profiles.md | 36 +++++++- docs/usage/tooling.md | 18 +++- prg32/cartridge/build_cartridge.py | 36 ++++---- prg32/prg32.py | 9 +- prg32/qemu/load_cart.py | 4 +- prg32/qemu/run_qemu.py | 14 ++-- prg32/qemu/start.py | 4 +- prg32/qemu/upload_qemu.py | 50 ++++++++--- prg32/utilities/env_variables.py | 11 ++- prg32/utilities/runtime_handler.py | 41 +++++++++ tests/test_prg32.py | 128 +++++++++++++++++++++++++++++ tests/test_prg32_random.py | 12 ++- tests/test_prg32_sprite_render.py | 14 +++- 15 files changed, 331 insertions(+), 54 deletions(-) diff --git a/docs/software/cartridges.md b/docs/software/cartridges.md index 9643e39..bf1da33 100644 --- a/docs/software/cartridges.md +++ b/docs/software/cartridges.md @@ -490,6 +490,9 @@ This is intentionally a classroom loader, not a general dynamic linker. - Cartridge package size is 128 KiB. - For details on executable Cartridge RAM limits and expanding the cartridge limits using profiles, see the [PRG32 Profiles](/docs/usage/profiles.md) documentation. +- `cartridge build` and `qemu upload` check executable RAM against the 64 KiB + default profile. Pass `--cart-ram-kib 32` to target the classroom profile; + see [Matching Host Tools to the Profile](/docs/usage/profiles.md#matching-host-tools-to-the-profile). ## Development Guide @@ -507,5 +510,8 @@ This is intentionally a classroom loader, not a general dynamic linker. cartridge instructions from high-speed internal RAM (IRAM). - Keep `PRG32_CART_RAM_SIZE` small enough for classroom examples unless the partition/RAM plan is intentionally revised. +- When changing the default `PRG32_CART_RAM_PROFILE` in Kconfig or the + `sdkconfig.defaults*` files, update `DEFAULT_CART_RAM_KIB` in + `prg32/utilities/env_variables.py` so host-side checks match the firmware. - Keep `partitions_prg32.csv`, `sdkconfig.defaults`, and `sdkconfig.defaults.qemu` in sync when changing cartridge slots. diff --git a/docs/software/framework_manual.md b/docs/software/framework_manual.md index fe27176..09b54d7 100644 --- a/docs/software/framework_manual.md +++ b/docs/software/framework_manual.md @@ -279,6 +279,8 @@ Important constants: cartridges and raises the stored-image limit to 128 KiB. The window remains static because legacy cartridges are linked to the exported `prg32_cart_exec` address; portable cartridges use the ABI table. + Host tools assume the 64 KiB window unless told otherwise with + `--cart-ram-kib`; see [PRG32 Profiles](../usage/profiles.md#matching-host-tools-to-the-profile). - `PRG32_CART_SLOT_COUNT`: number of persistent flash cartridge slots. Important functions: diff --git a/docs/usage/profiles.md b/docs/usage/profiles.md index 67f9da8..08af109 100644 --- a/docs/usage/profiles.md +++ b/docs/usage/profiles.md @@ -24,6 +24,36 @@ idf.py -B build-esp32c6-128k \ idf.py -B build-esp32c6-128k build ``` -Then use that firmware ELF or its `/api/runtime` response when building and -uploading large cartridges. The setup resource screen reports `CART RAM` so -the active profile can be checked on the board. +Then build large cartridges with `--cart-ram-kib 128` (see below). Board +uploads check the limit against the firmware's `/api/runtime` response. The +setup resource screen reports `CART RAM` so the active profile can be checked +on the board. + +## Matching Host Tools to the Profile + +Host tools reject a cartridge whose executable memory (`mem_size`: code, data, +and `.bss`) is larger than the target's cartridge RAM window. Portable +`cartridge build` runs and QEMU staging cannot ask a running firmware for +its window, so they choose the limit as follows: + +| Command | Limit used | +|---|---| +| `python3 -m prg32 cartridge build` | `--cart-ram-kib`, else 64 KiB (the default extended profile) | +| `python3 -m prg32 qemu upload` | `--cart-ram-kib`, else `CONFIG_PRG32_CART_RAM_KIB` from the `sdkconfig` next to `--flash` (normally `build-qemu/sdkconfig`), else 64 KiB | +| `python3 -m prg32 esp32c6 upload` | `cart_ram_size` reported by the board's `/api/runtime` | + +`--cart-ram-kib` accepts 16 to 128, the same range as the Kconfig custom +profile. The value in `prg32/utilities/env_variables.py` +(`DEFAULT_CART_RAM_KIB`) must match the Kconfig `PRG32_CART_RAM_KIB` default. + +To keep a cartridge within the classroom profile, build it with the +32 KiB limit: + +```bash +python3 -m prg32 cartridge build game.S --out build/game.prg32 \ + --name game --entry-prefix game --cart-ram-kib 32 +``` + +For a QEMU firmware built with the classroom profile, `qemu upload` picks up +32 KiB from `build-qemu/sdkconfig`; pass `--cart-ram-kib 32` when staging into +a flash image with no `sdkconfig` next to it. diff --git a/docs/usage/tooling.md b/docs/usage/tooling.md index 495065f..ab8303c 100644 --- a/docs/usage/tooling.md +++ b/docs/usage/tooling.md @@ -45,7 +45,19 @@ These scripts are used to prepare and flashing single-file firmwares. They are u - `build`: build QEMU and generate the flash image. Use the `--skip-target` option to decrease compilation time if the ESP32C3 target was already set (e.g. from a previous build). - `run`: run the QEMU emulator environment - `build-and-run`: build QEMU, generate flash image, and run the emulator. Also supports the `--skip-target` option. -- `upload`: upload a cartridge to QEMU +- `upload`: upload a cartridge to QEMU. `--cart-ram-kib` sets the executable + RAM limit; by default it is read from `build-qemu/sdkconfig`, else 64 KiB + (see [PRG32 Profiles](profiles.md#matching-host-tools-to-the-profile)). + +Two interactive helpers wrap `cartridge build` and QEMU staging for the +graphics versions of the example games in `examples/games/`: + +- `python3 -m prg32.qemu.load_cart |list`: build one game and stage it + into `build-qemu/qemu_flash.bin`. +- `python3 -m prg32.qemu.start`: a menu that builds, stages, and runs a game. + +Both call `inject_cartridge()` in `prg32/qemu/upload_qemu.py`, the same +validation and staging code used by `qemu upload`. Checked-in cartridge preview videos are recorded from real QEMU execution with `python3 tools/capture_cartridge_previews.py`. See @@ -55,7 +67,9 @@ playfield cropping, UART audio capture, and regeneration details. For a complete workflow of making a cartridge run on QEMU, see [docs/qemu.md](qemu.md). ## Cartridge Tasks (`cartridge`) - `build`: build a portable ABI-table `.prg32` cartridge from assembly or C - source code. Firmware-specific build options are rejected. + source code. Firmware-specific build options are rejected. `--cart-ram-kib` + sets the executable RAM limit (default 64; use 32 for the classroom profile, + see [PRG32 Profiles](profiles.md#matching-host-tools-to-the-profile)). - `summary`: print the PRG32 cartridge summary (ABI, feature bits, etc.) For detailed instructions and examples on building cartridges, see [docs/cartridges.md](/docs/software/cartridges.md). diff --git a/prg32/cartridge/build_cartridge.py b/prg32/cartridge/build_cartridge.py index fdcbf2d..e3e6fc9 100644 --- a/prg32/cartridge/build_cartridge.py +++ b/prg32/cartridge/build_cartridge.py @@ -9,7 +9,7 @@ from prg32.utilities.logging import * from prg32.utilities.env_variables import * -from prg32.utilities.runtime_handler import parse_nm, run +from prg32.utilities.runtime_handler import parse_nm, resolve_cart_ram_size, run from prg32.abi.abi_generated import ABI_HASH, ABI_MAJOR, ABI_MINOR, FEATURE_BITS, IMPORT_NAMES def write_linker(path: Path, load_addr: int, init_symbol: str) -> None: path.write_text( @@ -149,27 +149,19 @@ def build_cartridge_core(source: str, audio_block : str | None = None, runtime_url: str | None = None, firmware_elf : str | None = None, - name: str | None = None) -> None: - + name: str | None = None, + cart_ram_size: int = FALLBACK_CART_RAM_SIZE) -> None: + if not portable or legacy_absolute_imports or runtime_url or firmware_elf: raise SystemExit( "firmware-specific cartridge builds are no longer supported; " "build a portable ABI-table cartridge instead" ) - - runtime = { - "cart_load_addr": 0x40800000, - "cart_ram_size": FALLBACK_CART_RAM_SIZE, - } - load_addr = int(runtime["cart_load_addr"]) - if "cart_ram_size" not in runtime: - print( - "warning: runtime did not report cart_ram_size; " - f"using fallback {FALLBACK_CART_RAM_SIZE} bytes", - file=sys.stderr, - ) - ram_size = int(runtime.get("cart_ram_size", FALLBACK_CART_RAM_SIZE)) + # Portable builds have no runtime to query, so the executable RAM limit + # comes from the selected firmware profile (--cart-ram-kib, default 64). + load_addr = FALLBACK_CART_LOAD_ADDR + ram_size = int(cart_ram_size) req_features = feature_mask(required_features) opt_features = feature_mask(optional_features) @@ -285,7 +277,11 @@ def build_cartridge_core(source: str, end = linked_symbols["__cart_end"] mem_size = end - start if mem_size <= 0 or mem_size > ram_size: - raise SystemExit(f"cartridge needs {mem_size} bytes, runtime has {ram_size}") + raise SystemExit( + f"cartridge needs {mem_size} bytes, runtime has {ram_size} " + f"({ram_size // 1024} KiB cartridge RAM profile; " + "see --cart-ram-kib)" + ) if len(code) > mem_size: raise SystemExit("internal error: binary is larger than cartridge memory") @@ -360,6 +356,9 @@ def build_cartridge_cli(args: argparse.Namespace) -> None: if build_dir: env['CPATH'] = f"{build_dir}/config:{build_dir}:{env.get('CPATH','')}" + cart_ram_size, ram_source = resolve_cart_ram_size(getattr(args, "cart_ram_kib", None)) + log_info(f"Cartridge RAM limit: {cart_ram_size} bytes ({ram_source})") + build_cartridge_core(source=args.source, out=args.out, entry_prefix=args.entry_prefix, @@ -374,5 +373,6 @@ def build_cartridge_cli(args: argparse.Namespace) -> None: audio_block=args.audio_block, runtime_url=args.runtime_url, firmware_elf=firmware_elf, - name=args.name + name=args.name, + cart_ram_size=cart_ram_size, ) diff --git a/prg32/prg32.py b/prg32/prg32.py index 1956e79..e2556a7 100755 --- a/prg32/prg32.py +++ b/prg32/prg32.py @@ -6,7 +6,7 @@ import sys from prg32.utilities.env_variables import * from prg32.utilities.environment_check import doctor -from prg32.utilities.runtime_handler import runtime +from prg32.utilities.runtime_handler import parse_cart_ram_kib, runtime from prg32.cartridge.build_cartridge import build_cartridge_cli @@ -143,6 +143,10 @@ def main(argv: list[str]) -> int: p.add_argument("--flash", default=QEMU_IMAGE, help="Path to the QEMU flash image") p.add_argument("--partitions", default=str(DEFAULT_PARTITION_TABLE), help="Path to the partition table CSV") p.add_argument("--slot", default=DEFAULT_CART_SLOT, help="Partition slot to stage into") + p.add_argument("--cart-ram-kib", type=parse_cart_ram_kib, default=None, + help="Executable cartridge RAM of the QEMU firmware in KiB " + "(default: CONFIG_PRG32_CART_RAM_KIB from the sdkconfig next to --flash, " + f"else {DEFAULT_CART_RAM_KIB}; use {CLASSROOM_CART_RAM_KIB} for the classroom profile)") p.set_defaults(func=upload_qemu) @@ -177,6 +181,9 @@ def main(argv: list[str]) -> int: p.add_argument("--march", default="rv32imc_zicsr_zifencei", help="RISC-V architecture string") p.add_argument("--mabi", default="ilp32", help="RISC-V ABI string") p.add_argument("--tool-prefix", default="riscv32-esp-elf-", help="Prefix for the RISC-V GCC toolchain") + p.add_argument("--cart-ram-kib", type=parse_cart_ram_kib, default=None, + help=f"Executable cartridge RAM of the target firmware in KiB (default: {DEFAULT_CART_RAM_KIB}, " + f"the extended profile; use {CLASSROOM_CART_RAM_KIB} for the classroom profile)") arch_group = p.add_mutually_exclusive_group(required=False) arch_group.add_argument("--architecture", choices=["esp32c6", "qemu"], help="Target architecture (esp32c6 or qemu)") arch_group.add_argument("--firmware-elf", help="Deprecated: firmware-specific cartridge builds are unsupported") diff --git a/prg32/qemu/load_cart.py b/prg32/qemu/load_cart.py index a612981..5d629a4 100644 --- a/prg32/qemu/load_cart.py +++ b/prg32/qemu/load_cart.py @@ -5,7 +5,7 @@ from prg32.utilities.logging import * from prg32.utilities.environment_check import check_python, load_idf_env, validate_project_layout, ensure_qemu_flash, ensure_qemu_efuse, ensure_qemu_firmware from prg32.qemu.upload_qemu import inject_cartridge -from prg32.utilities.env_variables import GAMES_DIR, BUILD_DIR +from prg32.utilities.env_variables import GAMES_DIR, QEMU_BUILD_DIR def list_games(): @@ -40,7 +40,7 @@ def main(argv=None): ensure_qemu_firmware() source_file = Path(GAMES_DIR) / arg / "graphics" / "game.S" - cart_file = Path(BUILD_DIR) / f"{arg}.prg32" + cart_file = Path(QEMU_BUILD_DIR) / f"{arg}.prg32" subprocess.check_call([ sys.executable, "-m", "prg32", "cartridge", "build", str(source_file), "--portable", "--entry-prefix", diff --git a/prg32/qemu/run_qemu.py b/prg32/qemu/run_qemu.py index a7bf409..7014606 100644 --- a/prg32/qemu/run_qemu.py +++ b/prg32/qemu/run_qemu.py @@ -3,7 +3,7 @@ import subprocess import os import sys -from prg32.utilities.env_variables import BUILD_DIR, SDKCONFIG, SDKCONFIG_DEFAULTS, QEMU_IMAGE, QEMU_EFUSE +from prg32.utilities.env_variables import QEMU_BUILD_DIR, QEMU_SDKCONFIG, QEMU_SDKCONFIG_DEFAULTS, QEMU_IMAGE, QEMU_EFUSE from prg32.utilities.logging import * @@ -15,7 +15,7 @@ def ensure_idf_env(): def ensure_qemu_flash(): step(f"Ensuring QEMU flash image exists ({QEMU_IMAGE})") - p = Path(BUILD_DIR) + p = Path(QEMU_BUILD_DIR) p.mkdir(parents=True, exist_ok=True) flash = Path(QEMU_IMAGE) if not flash.exists(): @@ -39,17 +39,17 @@ def ensure_qemu_efuse(): def build_qemu_firmware(): step("Configuring QEMU target (esp32c3)") - subprocess.check_call(["idf.py", "-B", BUILD_DIR, "-D", f"SDKCONFIG={SDKCONFIG}", "-D", f"SDKCONFIG_DEFAULTS={SDKCONFIG_DEFAULTS}", "set-target", "esp32c3"]) + subprocess.check_call(["idf.py", "-B", QEMU_BUILD_DIR, "-D", f"SDKCONFIG={QEMU_SDKCONFIG}", "-D", f"SDKCONFIG_DEFAULTS={QEMU_SDKCONFIG_DEFAULTS}", "set-target", "esp32c3"]) step("Building QEMU firmware") - subprocess.check_call(["idf.py", "-B", BUILD_DIR, "-D", f"SDKCONFIG={SDKCONFIG}", "-D", f"SDKCONFIG_DEFAULTS={SDKCONFIG_DEFAULTS}", "build"]) - if not Path(f"{BUILD_DIR}/PRG32.elf").exists(): - die(f"Missing {BUILD_DIR}/PRG32.elf after build.") + subprocess.check_call(["idf.py", "-B", QEMU_BUILD_DIR, "-D", f"SDKCONFIG={QEMU_SDKCONFIG}", "-D", f"SDKCONFIG_DEFAULTS={QEMU_SDKCONFIG_DEFAULTS}", "build"]) + if not Path(f"{QEMU_BUILD_DIR}/PRG32.elf").exists(): + die(f"Missing {QEMU_BUILD_DIR}/PRG32.elf after build.") log_ok("Firmware build ready") def generate_flash_image(): step("Generating QEMU flash image") - cwd = Path(BUILD_DIR) + cwd = Path(QEMU_BUILD_DIR) subprocess.check_call([sys.executable, "-m", "esptool", "--chip=esp32c3", "merge_bin", "--output=qemu_flash.bin", "--fill-flash-size=4MB", "@flash_args"], cwd=str(cwd)) diff --git a/prg32/qemu/start.py b/prg32/qemu/start.py index b2b856f..515e144 100644 --- a/prg32/qemu/start.py +++ b/prg32/qemu/start.py @@ -6,7 +6,7 @@ from prg32.utilities.environment_check import check_python, load_idf_env, validate_project_layout, ensure_qemu_flash, ensure_qemu_efuse, ensure_qemu_firmware from prg32.qemu.launch_qemu import launch_qemu from prg32.qemu.upload_qemu import inject_cartridge -from prg32.utilities.env_variables import GAMES_DIR, BUILD_DIR +from prg32.utilities.env_variables import GAMES_DIR, QEMU_BUILD_DIR def discover_games(): @@ -32,7 +32,7 @@ def print_game_menu(games): def run_game_flow(game_name: str): source_file = Path(GAMES_DIR) / game_name / "graphics" / "game.S" - cart_file = Path(BUILD_DIR) / f"{game_name}.prg32" + cart_file = Path(QEMU_BUILD_DIR) / f"{game_name}.prg32" ensure_qemu_efuse() subprocess.check_call([ sys.executable, "-m", "prg32", "cartridge", "build", diff --git a/prg32/qemu/upload_qemu.py b/prg32/qemu/upload_qemu.py index e4ae5ed..75f1b0f 100644 --- a/prg32/qemu/upload_qemu.py +++ b/prg32/qemu/upload_qemu.py @@ -6,11 +6,20 @@ from prg32.utilities.env_variables import * from prg32.utilities.logging import * from prg32.utilities.partition_handler import read_partition_slot -from prg32.utilities.runtime_handler import validate_cartridge_contract, ensure_cart_max_size +from prg32.utilities.runtime_handler import ( + ensure_cart_max_size, + resolve_cart_ram_size, + validate_cartridge_contract, +) -def upload_qemu(args: argparse.Namespace) -> None: - flash = Path(args.flash) - cart = Path(args.cartridge) +def inject_cartridge(cartridge: str, + flash: str = QEMU_IMAGE, + partitions: str = str(DEFAULT_PARTITION_TABLE), + slot: str = DEFAULT_CART_SLOT, + cart_ram_kib: int | None = None) -> None: + """Validate a .prg32 cartridge and write it into a QEMU flash slot.""" + flash = Path(flash) + cart = Path(cartridge) if not cart.exists(): die(f"Error: File does not exist: {cart}") @@ -18,13 +27,24 @@ def upload_qemu(args: argparse.Namespace) -> None: die(f"Error: Input file must be a .prg32 file (got: {cart})") data = cart.read_bytes() ensure_cart_max_size(data) - validate_cartridge_contract(data, context="QEMU staging") + # QEMU has no /api/runtime during staging. Use --cart-ram-kib, else the + # profile recorded in the sdkconfig next to the flash image, else 64 KiB. + cart_ram_size, ram_source = resolve_cart_ram_size( + cart_ram_kib, + flash.parent / "sdkconfig", + ) + log_info(f"Cartridge RAM limit: {cart_ram_size} bytes ({ram_source})") + validate_cartridge_contract( + data, + runtime={"cart_ram_size": cart_ram_size}, + context="QEMU staging", + ) - partitions = Path(args.partitions) - cart_offset, cart_size = read_partition_slot(partitions, args.slot) + partitions = Path(partitions) + cart_offset, cart_size = read_partition_slot(partitions, slot) if len(data) > cart_size: raise SystemExit( - f"cartridge is larger than {args.slot} ({cart_size} bytes from {partitions})" + f"cartridge is larger than {slot} ({cart_size} bytes from {partitions})" ) if not flash.exists(): raise SystemExit(f"QEMU flash image not found: {flash}") @@ -35,12 +55,22 @@ def upload_qemu(args: argparse.Namespace) -> None: if size < required: raise SystemExit( "QEMU flash image is smaller than " - f"{args.slot} requirements ({required} bytes needed)" + f"{slot} requirements ({required} bytes needed)" ) step(f"Injecting cartridge '{cart.name}' into QEMU flash...") f.seek(cart_offset) f.write(b"\xff" * cart_size) f.seek(cart_offset) f.write(data) - log_ok(f"'{args.cartridge}' susccessfuly staged into {flash} at {args.slot}") + log_ok(f"'{cartridge}' successfully staged into {flash} at {slot}") log_info(f"(offset=0x{cart_offset:06x}, size={cart_size})") + +def upload_qemu(args: argparse.Namespace) -> None: + """CLI entry for `python3 -m prg32 qemu upload`.""" + inject_cartridge( + args.cartridge, + flash=args.flash, + partitions=args.partitions, + slot=args.slot, + cart_ram_kib=getattr(args, "cart_ram_kib", None), + ) diff --git a/prg32/utilities/env_variables.py b/prg32/utilities/env_variables.py index e87e879..188e684 100644 --- a/prg32/utilities/env_variables.py +++ b/prg32/utilities/env_variables.py @@ -52,7 +52,16 @@ AUDIO_BLOCK_MAGIC = b"AUD0" DEFAULT_PARTITION_TABLE = ROOT_DIR / "partitions_prg32.csv" DEFAULT_CART_SLOT = "cart0" -FALLBACK_CART_RAM_SIZE = 32 * 1024 +# Executable cartridge RAM window, mirroring Kconfig PRG32_CART_RAM_KIB. +# The default firmware profile (sdkconfig.defaults and sdkconfig.defaults.qemu) +# is CONFIG_PRG32_CART_RAM_EXTENDED, a 64 KiB window. Host tools use this value +# when no runtime information is available; pass --cart-ram-kib 32 to target +# the classroom profile. +DEFAULT_CART_RAM_KIB = 64 +CLASSROOM_CART_RAM_KIB = 32 +MIN_CART_RAM_KIB = 16 +MAX_CART_RAM_KIB = 128 +FALLBACK_CART_RAM_SIZE = DEFAULT_CART_RAM_KIB * 1024 FALLBACK_CART_LOAD_ADDR = 0x40800000 FLASH_SIZE = 4 * 1024 * 1024 diff --git a/prg32/utilities/runtime_handler.py b/prg32/utilities/runtime_handler.py index 3c17368..d098394 100644 --- a/prg32/utilities/runtime_handler.py +++ b/prg32/utilities/runtime_handler.py @@ -88,6 +88,47 @@ def fetch_runtime(url: str) -> dict: except urllib.error.URLError as exc: raise SystemExit(f"failed to read runtime from {endpoint}: {exc}") from exc +def parse_cart_ram_kib(text: str) -> int: + """argparse type for --cart-ram-kib, using the Kconfig custom-profile range.""" + try: + kib = int(text, 0) + except ValueError as exc: + raise argparse.ArgumentTypeError(f"invalid KiB value: {text!r}") from exc + if kib < MIN_CART_RAM_KIB or kib > MAX_CART_RAM_KIB: + raise argparse.ArgumentTypeError( + f"cartridge RAM must be between {MIN_CART_RAM_KIB} and " + f"{MAX_CART_RAM_KIB} KiB (got {kib})" + ) + return kib + +def cart_ram_kib_from_sdkconfig(path: Path) -> int | None: + """Read CONFIG_PRG32_CART_RAM_KIB from a generated sdkconfig, if present.""" + if not path.is_file(): + return None + for line in path.read_text(encoding="utf-8", errors="replace").splitlines(): + line = line.strip() + if line.startswith("CONFIG_PRG32_CART_RAM_KIB="): + try: + return int(line.split("=", 1)[1], 0) + except ValueError: + return None + return None + +def resolve_cart_ram_size(cart_ram_kib: int | None, + sdkconfig: Path | None = None) -> tuple[int, str]: + """Choose the executable cartridge RAM size in bytes and describe its source. + + Priority: explicit --cart-ram-kib, then CONFIG_PRG32_CART_RAM_KIB from the + given sdkconfig, then the default firmware profile (64 KiB). + """ + if cart_ram_kib is not None: + return cart_ram_kib * 1024, "--cart-ram-kib" + if sdkconfig is not None: + sdk_kib = cart_ram_kib_from_sdkconfig(sdkconfig) + if sdk_kib is not None: + return sdk_kib * 1024, str(sdkconfig) + return FALLBACK_CART_RAM_SIZE, "default firmware profile" + def ensure_cart_max_size(data: bytes) -> None: if len(data) > 64 * 1024: raise SystemExit( diff --git a/tests/test_prg32.py b/tests/test_prg32.py index 2f91fbb..a2c62c0 100644 --- a/tests/test_prg32.py +++ b/tests/test_prg32.py @@ -291,6 +291,134 @@ def test_upload_qemu_stages_cartridge_at_partition_offset(self) -> None: self.assertEqual(erased, b"\xff" * len(erased)) +def portable_header(mem_size: int, code_size: int = 4) -> bytes: + """Pack a minimal portable v2 header that declares mem_size bytes of RAM.""" + return env_variables.CART_HEADER_V2.pack( + env_variables.CART_MAGIC, + env_variables.CART_ABI_MAJOR, + env_variables.CART_ABI_MINOR, + env_variables.CART_HEADER_V2.size, + env_variables.PRG32_CART_FLAG_ABI_TABLE, + env_variables.FALLBACK_CART_LOAD_ADDR, + code_size, mem_size, 0, 0, 0, 0, + b"ram" + b"\0" * 29, + ABI_HASH, + 0, 0, 0, 0, 0, + env_variables.PRG32_IMPORT_MODEL_ABI_TABLE, + ) + + +class CartRamProfileTests(unittest.TestCase): + # A cartridge that fits the 64 KiB extended profile but not the + # 32 KiB classroom profile. + MEM_SIZE_40_KIB = 40 * 1024 + + def test_fallback_matches_default_firmware_profile(self) -> None: + self.assertEqual(env_variables.DEFAULT_CART_RAM_KIB, 64) + self.assertEqual(env_variables.FALLBACK_CART_RAM_SIZE, 64 * 1024) + for defaults in ("sdkconfig.defaults", "sdkconfig.defaults.qemu"): + text = (ROOT / defaults).read_text(encoding="utf-8") + self.assertIn("CONFIG_PRG32_CART_RAM_EXTENDED=y", text, defaults) + + def test_contract_uses_64_kib_without_runtime_info(self) -> None: + data = portable_header(self.MEM_SIZE_40_KIB) + b"\0\0\0\0" + runtime_handler.validate_cartridge_contract(data) + with self.assertRaisesRegex(SystemExit, "executable RAM"): + runtime_handler.validate_cartridge_contract( + data, + runtime={"cart_ram_size": 32 * 1024}, + ) + + def test_parse_cart_ram_kib_uses_kconfig_range(self) -> None: + self.assertEqual(runtime_handler.parse_cart_ram_kib("32"), 32) + self.assertEqual(runtime_handler.parse_cart_ram_kib("128"), 128) + for bad in ("8", "256", "big"): + with self.assertRaises(argparse.ArgumentTypeError): + runtime_handler.parse_cart_ram_kib(bad) + + def test_resolve_prefers_option_then_sdkconfig_then_default(self) -> None: + with tempfile.TemporaryDirectory() as tmp: + sdkconfig = Path(tmp) / "sdkconfig" + self.assertEqual( + runtime_handler.resolve_cart_ram_size(None, sdkconfig)[0], + 64 * 1024, + ) + sdkconfig.write_text( + "CONFIG_PRG32_CART_RAM_CLASSROOM=y\n" + "CONFIG_PRG32_CART_RAM_KIB=32\n", + encoding="utf-8", + ) + self.assertEqual( + runtime_handler.resolve_cart_ram_size(None, sdkconfig), + (32 * 1024, str(sdkconfig)), + ) + self.assertEqual( + runtime_handler.resolve_cart_ram_size(128, sdkconfig)[0], + 128 * 1024, + ) + + def _stage(self, tmp_path: Path, cart_ram_kib: int | None) -> None: + flash = tmp_path / "qemu_flash.bin" + cart = tmp_path / "big.prg32" + partitions = tmp_path / "partitions.csv" + flash.write_bytes(b"\x00" * 512) + cart.write_bytes(portable_header(self.MEM_SIZE_40_KIB) + b"\0\0\0\0") + partitions.write_text("cart0, data, 0x40, 0x10, 256,\n", encoding="utf-8") + upload_qemu.upload_qemu(argparse.Namespace( + flash=str(flash), + cartridge=str(cart), + partitions=str(partitions), + slot="cart0", + cart_ram_kib=cart_ram_kib, + )) + + def test_qemu_upload_accepts_extended_cartridge_by_default(self) -> None: + with tempfile.TemporaryDirectory() as tmp: + self._stage(Path(tmp), None) + + def test_qemu_upload_honours_classroom_option_and_sdkconfig(self) -> None: + with tempfile.TemporaryDirectory() as tmp: + with self.assertRaisesRegex(SystemExit, "executable RAM"): + self._stage(Path(tmp), 32) + with tempfile.TemporaryDirectory() as tmp: + (Path(tmp) / "sdkconfig").write_text( + "CONFIG_PRG32_CART_RAM_KIB=32\n", encoding="utf-8" + ) + with self.assertRaisesRegex(SystemExit, "executable RAM"): + self._stage(Path(tmp), None) + # An explicit option overrides the sdkconfig profile. + self._stage(Path(tmp), 64) + + +class ModuleImportTests(unittest.TestCase): + def test_every_prg32_module_imports(self) -> None: + # Catches stale imports left behind by tooling refactors, such as + # helpers importing names that env_variables no longer defines. + import importlib + import pkgutil + import prg32 + + for module in pkgutil.walk_packages(prg32.__path__, "prg32."): + with self.subTest(module=module.name): + importlib.import_module(module.name) + + def test_inject_cartridge_is_shared_by_qemu_helpers(self) -> None: + with tempfile.TemporaryDirectory() as tmp: + tmp_path = Path(tmp) + flash = tmp_path / "qemu_flash.bin" + cart = tmp_path / "game.prg32" + partitions = tmp_path / "partitions.csv" + flash.write_bytes(b"\x00" * 256) + cart.write_bytes(portable_header(4) + b"\0\0\0\0") + partitions.write_text("cart0, data, 0x40, 0x10, 128,\n", encoding="utf-8") + upload_qemu.inject_cartridge( + str(cart), + flash=str(flash), + partitions=str(partitions), + ) + self.assertEqual(flash.read_bytes()[0x10:0x14], b"PRG2") + + class DoctorTests(unittest.TestCase): def test_host_only_doctor_does_not_require_esp_idf(self) -> None: rc = prg32_main(["doctor", "--host-only", "--partitions", str(ROOT / "partitions_prg32.csv")]) diff --git a/tests/test_prg32_random.py b/tests/test_prg32_random.py index 5d540a2..186d611 100644 --- a/tests/test_prg32_random.py +++ b/tests/test_prg32_random.py @@ -4,17 +4,16 @@ import shutil import subprocess import tempfile - -import pytest +import unittest ROOT = Path(__file__).resolve().parents[1] -def test_random_number_range_and_rejection_sampling() -> None: +def check_random_number_range_and_rejection_sampling() -> None: compiler = shutil.which("cc") if compiler is None: - pytest.skip("host C compiler unavailable") + raise unittest.SkipTest("host C compiler unavailable") with tempfile.TemporaryDirectory() as directory: temporary = Path(directory) @@ -69,3 +68,8 @@ def test_random_number_range_and_rejection_sampling() -> None: check=True, ) subprocess.run([str(executable)], check=True) + + +class RandomNumberTests(unittest.TestCase): + def test_random_number_range_and_rejection_sampling(self) -> None: + check_random_number_range_and_rejection_sampling() diff --git a/tests/test_prg32_sprite_render.py b/tests/test_prg32_sprite_render.py index cb552ce..20f1b8a 100644 --- a/tests/test_prg32_sprite_render.py +++ b/tests/test_prg32_sprite_render.py @@ -3,17 +3,17 @@ import shutil import subprocess from pathlib import Path - -import pytest +import tempfile +import unittest ROOT = Path(__file__).resolve().parents[1] -def test_sprite_rendering_is_pixel_exact(tmp_path: Path) -> None: +def check_sprite_rendering_is_pixel_exact(tmp_path: Path) -> None: compiler = shutil.which("cc") if compiler is None: - pytest.skip("a host C compiler is required") + raise unittest.SkipTest("a host C compiler is required") harness = tmp_path / "sprite_render_test.c" harness.write_text( r''' @@ -102,3 +102,9 @@ def test_sprite_rendering_is_pixel_exact(tmp_path: Path) -> None: check=True, ) subprocess.run([str(executable)], check=True) + + +class SpriteRenderTests(unittest.TestCase): + def test_sprite_rendering_is_pixel_exact(self) -> None: + with tempfile.TemporaryDirectory() as tmp: + check_sprite_rendering_is_pixel_exact(Path(tmp)) From cd7f70573d9fdea46b4a7192278589d301c2dce1 Mon Sep 17 00:00:00 2001 From: raffmont Date: Tue, 22 Sep 2026 22:49:15 +0200 Subject: [PATCH 02/12] Fix synth ID decoding and tracker delta-0 timing - audio_synth.c: decode sample_id with the documented PRG32_AUDIO_SYNTH_ID layout (resonance 11:10, cutoff 9:6, pulse 5:2). The old decoder capped cutoff at index 7 and could produce resonance 4..7, reading past the four-entry damping table. Filter indices are now masked defensively. - audio_tracker.c: only waiting consumes ticks; events with delta 0 run in the same tick so chords are no longer arpeggiated. A per-step cap of 256 events protects against malformed delta-0 JUMP loops. - Add host-compiled C tests for both fixes. - Document the behaviour change and compatibility impact (no ABI change). Co-Authored-By: Claude Opus 5.5 --- components/prg32_audio/audio_synth.c | 17 ++- components/prg32_audio/audio_tracker.c | 22 +++- docs/repository_structure.md | 4 +- docs/software/abi.md | 4 +- docs/software/audio_track_internals.md | 12 +- docs/tools/audio.md | 35 +++++ tests/test_prg32_audio_engine.py | 175 +++++++++++++++++++++++++ 7 files changed, 252 insertions(+), 17 deletions(-) create mode 100644 tests/test_prg32_audio_engine.py diff --git a/components/prg32_audio/audio_synth.c b/components/prg32_audio/audio_synth.c index c72dc6a..637b275 100644 --- a/components/prg32_audio/audio_synth.c +++ b/components/prg32_audio/audio_synth.c @@ -68,10 +68,12 @@ void prg32_audio_synth_start(prg32_audio_voice_t *voice, uint8_t note, uint32_t sample_rate) { prg32_audio_synth_voice_t *synth = &voice->synth_state; uint16_t id = instrument->sample_id; + /* Decode the PRG32_AUDIO_SYNTH_ID layout from prg32_audio.h: + * bits 11:10 resonance, 9:6 cutoff, 5:2 pulse width, 1:0 waveform. */ synth->waveform = id & 0x03u; - synth->resonance = (id >> 4) & 0x07u; - synth->cutoff = (id >> 7) & 0x07u; - uint32_t pulse_position = ((id >> 10) & 0x0fu) + 1u; + synth->resonance = (id >> 10) & 0x03u; + synth->cutoff = (id >> 6) & 0x0fu; + uint32_t pulse_position = ((id >> 2) & 0x0fu) + 1u; synth->pulse_threshold = (uint32_t)(((uint64_t)pulse_position << 32) / 17u); synth->phase_increment = note_phase_increment(note, sample_rate); synth->lfsr = SYNTH_LFSR_SEED; @@ -169,14 +171,17 @@ static int32_t filter_sample(prg32_audio_synth_voice_t *synth, int32_t input) { 3616, 4512, 5536, 6688, 7936, 9280, 10752, 12288, }; static const uint16_t damping_q15[4] = {32767, 24576, 16384, 8192}; + /* Mask the indices so a corrupted voice can never read past a table. */ + uint8_t cutoff = synth->cutoff & 0x0fu; + uint8_t resonance = synth->resonance & 0x03u; int32_t low = synth->filter_low; int32_t band = synth->filter_band; low = clamp_filter((int64_t)low + - (((int64_t)cutoff_q15[synth->cutoff] * band) >> 15)); + (((int64_t)cutoff_q15[cutoff] * band) >> 15)); int32_t high = clamp_filter((int64_t)input - low - - (((int64_t)damping_q15[synth->resonance] * band) >> 15)); + (((int64_t)damping_q15[resonance] * band) >> 15)); band = clamp_filter((int64_t)band + - (((int64_t)cutoff_q15[synth->cutoff] * high) >> 15)); + (((int64_t)cutoff_q15[cutoff] * high) >> 15)); synth->filter_low = low; synth->filter_band = band; if (low > 32767) return 32767; diff --git a/components/prg32_audio/audio_tracker.c b/components/prg32_audio/audio_tracker.c index 049fd26..cd37ab5 100644 --- a/components/prg32_audio/audio_tracker.c +++ b/components/prg32_audio/audio_tracker.c @@ -1,5 +1,8 @@ #include "audio_internal.h" +/* Upper bound on events executed by one tracker step without waiting. */ +#define PRG32_AUDIO_TRACKER_MAX_EVENTS_PER_STEP 256u + static uint32_t tick_ms(void) { uint16_t bpm = g_prg32_audio.tracker.tempo_bpm; if (bpm == 0) { @@ -90,7 +93,6 @@ void prg32_audio_tracker_step(uint32_t elapsed_ms) { } prg32_audio_track_slot_t *track = &g_prg32_audio.tracks[tracker->track_id]; tracker->tick_accum += elapsed_ms; - uint32_t ms_per_tick = tick_ms(); // DEBUG LOG static int log_div = 0; @@ -101,12 +103,26 @@ void prg32_audio_tracker_step(uint32_t elapsed_ms) { (unsigned long)tracker->event_index); } - while (tracker->active && tracker->tick_accum >= ms_per_tick) { - tracker->tick_accum -= ms_per_tick; + /* Only waiting consumes ticks. While next_delta is zero, events are + * fetched and executed in the same tick, so delta-0 NOTE_ONs form a chord. + * The per-step cap stops a malformed track (for example a delta-0 JUMP to + * itself) from spinning forever; remaining events resume on the next step. */ + uint32_t events_this_step = 0; + while (tracker->active) { if (tracker->next_delta > 0) { + /* Recomputed per tick so SET_TEMPO takes effect immediately. */ + uint32_t ms_per_tick = tick_ms(); + if (tracker->tick_accum < ms_per_tick) { + break; + } + tracker->tick_accum -= ms_per_tick; tracker->next_delta--; continue; } + if (events_this_step >= PRG32_AUDIO_TRACKER_MAX_EVENTS_PER_STEP) { + break; + } + events_this_step++; if (tracker->event_index >= track->event_count) { tracker->active = false; printf("TRACKER STOPPED: END OF TRACK\n"); diff --git a/docs/repository_structure.md b/docs/repository_structure.md index 35be96b..d5d0d31 100644 --- a/docs/repository_structure.md +++ b/docs/repository_structure.md @@ -21,7 +21,7 @@ This document outlines the high-level layout of the PRG32 repository. |-- components/ | |-- prg32/ ESP-IDF component implementing the core PRG32 API (indexed/RGB565 graphics, input, network, cartridge loader) | | `-- prg32_random.c Uniform bounded random-number API -| `-- prg32_audio/ ESP-IDF audio component; audio_synth.c holds the private SID-like oscillator, ADSR, noise, and filter core +| `-- prg32_audio/ ESP-IDF audio component; audio_synth.c holds the private SID-like oscillator, ADSR, noise, and filter core; audio_tracker.c runs tracker event timing |-- docs/ Manuals, tutorials, hardware docs, and labs | |-- agents/ Guidelines for autonomous coding agents | |-- cartridge_store/ CartridgeStore API and ScoreServer API documentation @@ -52,7 +52,7 @@ This document outlines the high-level layout of the PRG32 repository. | `-- utilities/ Common utility functions for logging, environment checks, and partitions |-- scripts/ Shell/PowerShell scripts for common CI and local workflows (QEMU, flashing) |-- sdkconfig* Default configuration files for ESP32-C6 hardware and QEMU emulator builds -|-- tests/ Host-side unit tests for Python tooling and documentation validation +|-- tests/ Host-side unit tests for Python tooling, documentation validation, and host-compiled firmware C (random, audio synth/tracker) |-- tools/ Developer scripts, including real QEMU cartridge preview capture and media validation |-- .vscode/ Student-ready VS Code tasks and debug configurations |-- AGENTS.md Rules and guidelines for autonomous coding agents diff --git a/docs/software/abi.md b/docs/software/abi.md index 54423ff..7a55c3b 100644 --- a/docs/software/abi.md +++ b/docs/software/abi.md @@ -212,7 +212,9 @@ SID-like synthesis is ABI-neutral: bit 15 of the existing instrument descriptor layout, tracker event, or AUDIO block version changed. Portable cartridges built before synthesis therefore remain compatible, and ordinary sample IDs retain PCM semantics. The encoding is defined in the -[audio guide](../tools/audio.md#sid-like-procedural-instruments). +[audio guide](../tools/audio.md#sid-like-procedural-instruments). The later +[synth ID decoder fix](../tools/audio.md#synth-id-decoder-fix) and delta-0 +tracker timing fix change runtime behaviour only, not the ABI. ## RGB LED ABI Calls diff --git a/docs/software/audio_track_internals.md b/docs/software/audio_track_internals.md index 08c7570..afc5eb3 100644 --- a/docs/software/audio_track_internals.md +++ b/docs/software/audio_track_internals.md @@ -33,16 +33,18 @@ This is where the actual track data is interpreted. Inside `audio_tracker.c`, `p 1. It adds `elapsed_ms` to `tracker->tick_accum`. 2. It enters a `while` loop that runs as long as the track is active. -3. Inside the loop, it calculates `ms_per_tick` based on the tracker's current tempo (BPM). If `tick_accum < ms_per_tick`, it breaks out of the loop. Calculating this inside the loop ensures dynamic tempo changes take effect instantly. Inside this `while` loop, the tracker handles timing and event execution: -- **If it's waiting:** If `tracker->next_delta > 0`, it subtracts `ms_per_tick` from `tick_accum`, decrements `next_delta`, and loops. (This is how it waits between notes). -- **If it's time to play:** If `tracker->next_delta == 0`, it fetches the next `prg32_audio_event_t` from the track data. +- **If it's waiting:** If `tracker->next_delta > 0`, it calculates `ms_per_tick` from the current tempo (BPM). If `tick_accum < ms_per_tick`, it breaks out of the loop and waits for the next call. Otherwise it subtracts `ms_per_tick` from `tick_accum`, decrements `next_delta`, and loops. Calculating `ms_per_tick` for every tick ensures `SET_TEMPO` takes effect instantly. Waiting is the **only** thing that consumes ticks. +- **If it's time to play:** If `tracker->next_delta == 0`, it fetches the next `prg32_audio_event_t` from the track data without consuming any time. - It sets `tracker->next_delta = event.delta_ticks`. This establishes the wait time *after* the current event. -- It calls `execute_event(&event)` to actually perform the action. +- It calls `execute_event(&event)` to actually perform the action (or handles `JUMP`/`END` itself). > [!NOTE] -> Because it evaluates `next_delta == 0` first without consuming a tick, multiple events with `delta_ticks = 0` (like a chord) are processed instantly in the exact same real-time tick. +> Because fetching an event consumes no time, multiple events with `delta_ticks = 0` (like a chord) are processed in the exact same tick. The first events of a track run on the very first `prg32_audio_tracker_step` call after `prg32_audio_play_track`. + +> [!IMPORTANT] +> One step executes at most `PRG32_AUDIO_TRACKER_MAX_EVENTS_PER_STEP` (256) events. This protects the audio task from malformed tracks, such as a delta-0 `JUMP` to itself, that would otherwise never wait. Any remaining events resume on the next step. ## 4. Executing Events (`execute_event`) diff --git a/docs/tools/audio.md b/docs/tools/audio.md index e1d3ef4..8b2b0a8 100644 --- a/docs/tools/audio.md +++ b/docs/tools/audio.md @@ -329,6 +329,29 @@ saving rather than zero-cost audio. Pulse width, cutoff, and pan are fixed for the life of a note. Automatic LFOs, ring modulation, and oscillator sync are not currently implemented. +### Synth ID Decoder Fix + +Earlier firmware decoded the synth ID with a layout that did not match the +table above: resonance from bits 6:4, cutoff from bits 9:7, and pulse width +from bits 13:10. Cutoff could never exceed index 7 (about 300 Hz at 22050 Hz), +so every synth voice sounded muffled, and a resonance of 4..7 read past the +four-entry damping table. `PRG32_AUDIO_SYNTH_PULSE(8, 15, 0)`, for example, +decoded as resonance 6. + +The firmware now decodes exactly the documented layout, and the filter masks +its table indices defensively. Instruments built with the +`PRG32_AUDIO_SYNTH_*` macros, `tools/prg32_audio_model.py`, or an equivalent +encoder (such as `cartridges/bachdemo`) now sound as designed. Cartridges +whose `sample_id` values were hand-tuned for the old decoder (for example the +SpaceBeltMadness `audio/sbm_audio.json` generated by its +`tools/compose_soundtrack.py`) will sound different and should re-encode their +instruments with the documented layout. + +This is a behaviour fix, not an ABI change: no function index, prototype, +descriptor, event, or AUDIO block layout changed, so the ABI hash, version, +and feature bits stay the same (see +[ABI compatibility rules](../agents/cartridge_abi_compatibility.md)). + ## Tracker Events Event records are four bytes: @@ -337,6 +360,18 @@ Event records are four bytes: delta_ticks, command, arg0, arg1 ``` +`delta_ticks` is the wait *after* an event, in tracker ticks (one tick is a +16th note: `60000 / (bpm * 4)` ms). Events separated by `delta_ticks = 0` +run in the same tick, so consecutive delta-0 `NOTE_ON` events form a chord. +Only waiting consumes time; see +[How `prg32_audio_play_track` Works](../software/audio_track_internals.md) +for the step algorithm. + +Earlier firmware charged one tick for every event, even with +`delta_ticks = 0`, which turned chords into arpeggios and stretched every +track by one tick per event. Tracks that compensated for that (for example by +using delta 0 for "next 16th note") now play faster and should be re-timed. + Initial commands: | Command | Meaning | diff --git a/tests/test_prg32_audio_engine.py b/tests/test_prg32_audio_engine.py new file mode 100644 index 0000000..ccbb662 --- /dev/null +++ b/tests/test_prg32_audio_engine.py @@ -0,0 +1,175 @@ +"""Host tests of the firmware synth decoder and tracker timing. + +The real ``audio_synth.c`` and ``audio_tracker.c`` are compiled with a host C +compiler. Small stub headers replace ESP-IDF and FreeRTOS, and the test file +records the mixer calls that the tracker makes. +""" + +from pathlib import Path +import shutil +import subprocess +import tempfile + +import pytest + + +ROOT = Path(__file__).resolve().parents[1] +AUDIO = ROOT / "components" / "prg32_audio" + +STUB_HEADERS = { + "sdkconfig.h": "", + "freertos/FreeRTOS.h": "#include \n", + "freertos/semphr.h": "typedef void *SemaphoreHandle_t;\n", + "freertos/task.h": "typedef void *TaskHandle_t;\n", +} + +TEST_SOURCE = r""" +#include +#include +#include "audio_internal.h" + +prg32_audio_state_t g_prg32_audio; + +/* Mixer stubs: record NOTE_ON order and the tick it happened on. */ +static int note_count; +static uint8_t note_channels[64]; +static uint32_t note_ticks[64]; +static uint32_t current_tick; + +void prg32_audio_lock(void) {} +void prg32_audio_unlock(void) {} +void prg32_audio_note_on(uint8_t channel, uint8_t instrument, uint8_t note, + uint8_t volume) { + (void)instrument; (void)note; (void)volume; + if (note_count < 64) { + note_channels[note_count] = channel; + note_ticks[note_count] = current_tick; + } + note_count++; +} +void prg32_audio_note_off(uint8_t channel) { (void)channel; } +void prg32_audio_set_channel_volume(uint8_t channel, uint8_t volume) { + (void)channel; (void)volume; +} +void prg32_audio_set_channel_pan(uint8_t channel, int8_t pan) { + (void)channel; (void)pan; +} +int prg32_audio_play_sample(uint16_t sample_id, uint8_t volume, + uint16_t pitch) { + (void)sample_id; (void)volume; (void)pitch; + return 0; +} + +static void load_track(const prg32_audio_event_t *events, uint32_t count) { + memset(&g_prg32_audio, 0, sizeof(g_prg32_audio)); + g_prg32_audio.tracker.tempo_bpm = 125; /* 60000 / (125 * 4) = 120 ms */ + g_prg32_audio.tracks[0].events = events; + g_prg32_audio.tracks[0].event_count = count; + g_prg32_audio.tracks[0].present = true; + note_count = 0; + current_tick = 0; + prg32_audio_play_track(0); +} + +static void test_synth_decoding(void) { + for (unsigned wave = 0; wave < 4; wave++) { + for (unsigned pulse = 0; pulse < 16; pulse++) { + for (unsigned cutoff = 0; cutoff < 16; cutoff++) { + for (unsigned res = 0; res < 4; res++) { + prg32_instrument_desc_t desc = {0}; + prg32_audio_voice_t voice = {0}; + desc.sample_id = PRG32_AUDIO_SYNTH_ID(wave, pulse, + cutoff, res); + prg32_audio_synth_start(&voice, &desc, 60, 22050); + assert(voice.synth_state.waveform == wave); + assert(voice.synth_state.cutoff == cutoff); + assert(voice.synth_state.resonance == res); + assert(voice.synth_state.pulse_threshold == + (uint32_t)(((uint64_t)(pulse + 1u) << 32) / 17u)); + } + } + } + } + /* The example from the bug report used to decode resonance 6. */ + prg32_instrument_desc_t desc = {0}; + prg32_audio_voice_t voice = {0}; + desc.sample_id = PRG32_AUDIO_SYNTH_PULSE(8, 15, 0); + prg32_audio_synth_start(&voice, &desc, 60, 22050); + assert(voice.synth_state.cutoff == 15); + assert(voice.synth_state.resonance == 0); +} + +static void test_delta_zero_events_share_a_tick(void) { + /* A three-note chord, a four-tick wait, then one more note. */ + static const prg32_audio_event_t events[] = { + {0, PRG32_AUDIO_CMD_NOTE_ON, 0, 60}, + {0, PRG32_AUDIO_CMD_NOTE_ON, 1, 64}, + {4, PRG32_AUDIO_CMD_NOTE_ON, 2, 67}, + {0, PRG32_AUDIO_CMD_NOTE_ON, 3, 72}, + {0, PRG32_AUDIO_CMD_END, 0, 0}, + }; + load_track(events, 5); + + /* The first step plays the whole chord without waiting for a tick. */ + prg32_audio_tracker_step(1); + assert(note_count == 3); + for (int i = 0; i < 3; i++) { + assert(note_channels[i] == i); + assert(note_ticks[i] == 0); + } + + /* The next note arrives only after exactly four 120 ms ticks. */ + for (current_tick = 1; current_tick <= 4; current_tick++) { + assert(note_count == 3); + prg32_audio_tracker_step(120); + } + assert(note_count == 4); + assert(note_channels[3] == 3); + assert(note_ticks[3] == 4); + assert(!g_prg32_audio.tracker.active); +} + +static void test_delta_zero_jump_loop_is_capped(void) { + static const prg32_audio_event_t events[] = { + {0, PRG32_AUDIO_CMD_NOTE_ON, 0, 60}, + {0, PRG32_AUDIO_CMD_JUMP, 0, 0}, + }; + load_track(events, 2); + prg32_audio_tracker_step(1); /* must return instead of spinning */ + assert(note_count == 128); /* 256 events: NOTE_ON, JUMP, NOTE_ON, ... */ + assert(g_prg32_audio.tracker.active); +} + +int main(void) { + test_synth_decoding(); + test_delta_zero_events_share_a_tick(); + test_delta_zero_jump_loop_is_capped(); + return 0; +} +""" + + +def test_audio_synth_decoder_and_tracker_timing() -> None: + compiler = shutil.which("cc") + if compiler is None: + pytest.skip("host C compiler unavailable") + + with tempfile.TemporaryDirectory() as directory: + temporary = Path(directory) + for name, text in STUB_HEADERS.items(): + header = temporary / name + header.parent.mkdir(parents=True, exist_ok=True) + header.write_text(text, encoding="utf-8") + (temporary / "test.c").write_text(TEST_SOURCE, encoding="utf-8") + executable = temporary / "audio-engine-test" + subprocess.run( + [compiler, "-std=c99", "-Wall", "-Wextra", "-Werror", + "-I", str(temporary), + "-I", str(AUDIO), + "-I", str(AUDIO / "include"), + str(AUDIO / "audio_synth.c"), + str(AUDIO / "audio_tracker.c"), + str(temporary / "test.c"), "-o", str(executable)], + check=True, + ) + subprocess.run([str(executable)], check=True, stdout=subprocess.DEVNULL) From adc24e09ba3021ff6b6a0aa1f13c428e7801a288 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Mon, 14 Sep 2026 10:44:20 +0200 Subject: [PATCH 03/12] chore(configs): moved all sdkconfig files to a new "/profiles/" folder. Small changes to AGENTS.md and README. --- .vscode/tasks.json | 20 ++++----- AGENTS.md | 19 +++++--- CONTRIBUTING.md | 8 ++-- README.md | 45 ++----------------- docs/agents/vscode_setup.md | 2 +- docs/cartridge_store/cartridge_store.md | 8 ++-- docs/hardware/ili9341.md | 2 +- docs/learn/labs/lab_03_graphics.md | 2 +- docs/learn/tutorial.md | 2 +- docs/learn/tutorial_c_game.md | 10 ++--- docs/learn/tutorial_graphic_game.md | 2 +- docs/measurement/metrics_api.md | 6 +-- .../scientific_measurement_tutorial.md | 12 ++--- docs/repository_structure.md | 2 +- docs/software/framework_manual.md | 4 +- docs/tools/audio.md | 2 +- docs/usage/configuration.md | 10 ++--- docs/usage/profiles.md | 2 +- docs/usage/qemu.md | 2 +- examples/features/README.md | 10 ++--- examples/features/audio_mono_beep/README.md | 4 +- examples/features/audio_mono_sample/README.md | 4 +- .../features/audio_mono_tracker/README.md | 4 +- .../features/audio_stereo_music/README.md | 4 +- .../features/audio_stereo_pan_test/README.md | 4 +- examples/features/splash_screen/README.md | 4 +- examples/games/README.md | 24 +++++----- platformio.ini | 2 +- prg32/esp32c6/prepare_firmware.py | 2 +- prg32/qemu/run_qemu_demo.py | 2 +- prg32/qemu/smoke_test.py | 2 +- prg32/utilities/env_variables.py | 6 +-- .../sdkconfig.defaults | 0 .../sdkconfig.defaults.esp32c6_128k | 2 +- .../sdkconfig.defaults.metrics | 4 +- .../sdkconfig.defaults.qemu | 2 +- scripts/qemu/build_qemu.ps1 | 4 +- scripts/qemu/build_qemu.sh | 4 +- scripts/qemu/run_qemu.sh | 2 +- scripts/qemu/run_qemu_demo.sh | 2 +- scripts/qemu/smoke_test.sh | 4 +- scripts/utilities/env_variables.sh | 2 +- 42 files changed, 115 insertions(+), 143 deletions(-) rename sdkconfig.defaults => profiles/sdkconfig.defaults (100%) rename sdkconfig.defaults.esp32c6_128k => profiles/sdkconfig.defaults.esp32c6_128k (62%) rename sdkconfig.defaults.metrics => profiles/sdkconfig.defaults.metrics (57%) rename sdkconfig.defaults.qemu => profiles/sdkconfig.defaults.qemu (84%) diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 696143f..9a8a703 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -11,7 +11,7 @@ "-D", "SDKCONFIG=build-esp32c6/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults", "set-target", "esp32c6" ], @@ -27,7 +27,7 @@ "-D", "SDKCONFIG=build-esp32c6/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults", "-D", "IDF_TARGET=esp32c6", "menuconfig" @@ -44,7 +44,7 @@ "-D", "SDKCONFIG=build-esp32c6/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults", "-D", "IDF_TARGET=esp32c6", "build" @@ -62,7 +62,7 @@ "-D", "SDKCONFIG=build-esp32c6/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults", "-D", "IDF_TARGET=esp32c6", "flash", @@ -80,7 +80,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", "set-target", "esp32c3" ], @@ -96,7 +96,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "build" @@ -114,7 +114,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "qemu", @@ -133,7 +133,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "qemu", @@ -153,7 +153,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "gdb" @@ -170,7 +170,7 @@ "-D", "SDKCONFIG=build-esp32c6/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults", "-D", "IDF_TARGET=esp32c6", "fullclean" diff --git a/AGENTS.md b/AGENTS.md index 8b717c1..71a0c26 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -20,10 +20,19 @@ Before writing or modifying any code, you MUST complete these steps: ## [PHASE 2: VALIDATION RUNS] 1. At the start of every session you must ask the user a question: -"Would you like to validate my edits by building the prg32 framework or do you prefer to run the builds on your own?" +"Would you like to validate my edits by allowing me to build the PRG32 framework or do you prefer to run the builds on your own?" +The possible answers should be: +- "Yes, please validate the edits by building the PRG32 framework.". +- "No, I prefer to run the builds on my own.". +- "Other (write your answer).". -2. If the answer to the builds is yes, you should then ask: +2. IF AND ONLY IF the answer is yes, you should then ask: "For what architecture are you building for? ESP32C6 or QEMU?" +The possible answers should be: +- ESP32C6. +- QEMU. +- Both. +- Other (write your answer). ## [PHASE 3: EXECUTION & DOCUMENTATION] When modifying code, you are bound by these rules: @@ -60,6 +69,6 @@ If you are working on QEMU, Build the QEMU firmware: python3 -m prg32 qemu build ``` -[PHASE 5: DOCUMENTATION EDITING] -After being done with editing, you should modify all relevant documentation in docs/ and the repository structure. -NEVER edit the README unless explicitly specified. +## [PHASE 5: DOCUMENTATION EDITING] +After being done with editing, you should modify all relevant documentation in docs/ and the [repository structure](docs/repository_structure.md). +NEVER edit the [README](/README.md) unless explicitly specified. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1322d9e..832c910 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -65,9 +65,9 @@ idf.py flash monitor QEMU commands: ```bash -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu build -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu build +idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` PlatformIO users can open the repository root and use the `prg32-esp32c6` @@ -90,7 +90,7 @@ When ESP-IDF is available, also run: ```bash idf.py build -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu build +idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu build ``` For end-to-end QEMU cartridge testing: diff --git a/README.md b/README.md index ff29574..340d3cf 100644 --- a/README.md +++ b/README.md @@ -15,43 +15,7 @@ The platform is designed around the **Espressif ESP32-C6** microcontroller and u - **Audio**: One or two MAX98357A I2S amplifiers for mono or stereo sound. - **Input**: A simple digital joystick and action buttons wired directly to GPIO pins. -Please refer to the [Hardware & Pinouts](docs/hardware/hardware.md) guide for further information about the full bill of materials, breadboard wiring diagrams, and PCB references. -## Cartridge Builds - -New `.prg32` cartridges use the portable ABI table and do not depend on a -particular firmware ELF. Build an example after loading the ESP-IDF environment: - -```bash -python3 -m prg32 cartridge build \ - examples/games/asteroids/graphics/game.S \ - --portable \ - --entry-prefix asteroids_graphics \ - --name asteroids \ - --out build-esp32c6/asteroids.prg32 -``` - -The builder rejects firmware-specific absolute-import builds. Existing -cartridges of that kind remain loadable only with matching resident firmware. -See the [cartridge guide](docs/software/cartridges.md) for hardware and QEMU -upload instructions and the [ABI guide](docs/software/abi.md) for compatibility. - -## Indexed Framebuffer - -On ESP32-C6 hardware, the 320x200 game surface is a 64,000-byte, 8-bit indexed -framebuffer backed by a deterministic 256-entry RGB565 palette. The ILI9341 -remains in native 16-bit RGB565 mode: dirty indexed rows are expanded into the -existing small RGB565 SPI strip only during presentation. Compared with the -previous 128,000-byte framebuffer, this reclaims 63,488 bytes (about 62 KiB) -without allocating a second full-size RGB565 surface. Existing RGB565 drawing -calls remain source- and ABI-compatible through deterministic system-palette -quantization; indexed-native primitives and palette cycling are available for -cartridges that need exact palette control. See [ILI9341 Hardware and Driver -Notes](docs/hardware/ili9341.md) and the [Framework Manual](docs/software/framework_manual.md). - -The reference Performance Test compares matched RGB565-compatible and full -indexed-native workloads. Poing is an application example that renders its -procedural scene with 8-bit indices and can publish a 300-frame gameplay result -through the same public performance API by pressing SELECT. +Please refer to the [Hardware & Pinouts](docs/hardware/hardware.md) guide for further information about breadboard wiring diagrams, PCB references and the full bill of materials. ## Academic Profile @@ -72,8 +36,8 @@ through the same public performance API by pressing SELECT. 3. Select an ESP-IDF 5.4 or newer release. 4. Include support for `esp32c3` and `esp32c6`. 5. (Optional) Check the QEMU RISC-V emulator box during installation if you want to use the QEMU desktop emulator. -6. Open the "ESP-IDF PowerShell" shortcut created by the installer. -7. Clone the project and verify your setup from that shell (the ESP-IDF environment is already active, so `pip` will install into it): +6. Open the "ESP-IDF PowerShell" shortcut created by the installer. This will activate the ESP-IDF environment, so `pip` will install into it. +7. Clone the project and verify your setup from that shell ```powershell cd $HOME\Documents @@ -209,8 +173,7 @@ The ESP32-C6 build keeps UART0 as the primary ESP-IDF console and enables native USB Serial/JTAG as a secondary output for PlatformIO Monitor. A healthy boot logs the configured `prg32_lcd` ILI9341 pins before drawing the splash. -The PlatformIO environment is for the physical ESP32-C6 classroom board. Keep -using the `idf.py` commands in `docs/qemu.md` for QEMU screen builds. +The PlatformIO environment is for the physical ESP32-C6 classroom board. Keep using the commands in the [QEMU documentation](docs/usage/qemu.md) for QEMU screen builds. > [!TIP] diff --git a/docs/agents/vscode_setup.md b/docs/agents/vscode_setup.md index f002675..14cd8b1 100644 --- a/docs/agents/vscode_setup.md +++ b/docs/agents/vscode_setup.md @@ -14,7 +14,7 @@ Tasks should remain simple wrappers around: - `idf.py menuconfig` - `idf.py build` - `idf.py flash monitor` -- `idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor` +- `idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor` - `idf.py -B build-qemu gdb` - `tools/qemu.sh` and `tools/qemu.ps1` - `python3 -m prg32 cartridge build ...` diff --git a/docs/cartridge_store/cartridge_store.md b/docs/cartridge_store/cartridge_store.md index b773fdb..0db0ca8 100644 --- a/docs/cartridge_store/cartridge_store.md +++ b/docs/cartridge_store/cartridge_store.md @@ -164,7 +164,7 @@ The store advertises `_prg32store._tcp` on port `5080`. Bare IPv4 addresses are expanded to `http://
:5080`. #### Hardcoding the Store URL -For fixed classroom deployments, you can bake the store URL directly into the firmware. Set `CONFIG_PRG32_STORE_URL` in `menuconfig` or append it to the relevant `sdkconfig.defaults` file before building: +For fixed classroom deployments, you can bake the store URL directly into the firmware. Set `CONFIG_PRG32_STORE_URL` in `menuconfig` or append it to the relevant `profiles/sdkconfig.defaults` file before building: ```text CONFIG_PRG32_STORE_URL="http://192.168.1.42:5080" @@ -408,7 +408,7 @@ Firmware clients uses compact REST calls: | `TOO LARGE` during download | Cartridge exceeds slot partition | Re-flash with a larger partition, or use a smaller cartridge | | `401` from `prg32_game.py publish` | Missing or invalid API token | Add `--token` or set `store_token` in `~/.prg32/config.json` | | Published game is not visible | Upload is pending editor review | Ask an editor to verify the submission in Cartridge Store | -| QEMU build shows `NOT FOUND` for mDNS | Expected: mDNS is unavailable in QEMU | Set `CONFIG_PRG32_STORE_URL` in `sdkconfig.defaults.qemu` | +| QEMU build shows `NOT FOUND` for mDNS | Expected: mDNS is unavailable in QEMU | Set `CONFIG_PRG32_STORE_URL` in `profiles/sdkconfig.defaults.qemu` | ### Common Missing Tool Fixes @@ -417,8 +417,8 @@ Firmware clients uses compact REST calls: | `idf.py: command not found` | ESP-IDF shell not exported | Run `. $HOME/esp-idf/export.sh` or use ESP-IDF PowerShell | | `missing tool: riscv32-esp-elf-gcc` | ESP-IDF toolchain missing or not on `PATH` | Run `./install.sh esp32c3,esp32c6`, then export ESP-IDF | | `ninja: command not found` | Host build tool missing | Install Ninja with the platform package manager | -| QEMU build cannot find virtual RGB component | Wrong target or defaults | Use `esp32c3` and `sdkconfig.defaults.qemu` | -| Physical display is black | QEMU build flashed to board or wrong pins | Rebuild `build-esp32c6` with `sdkconfig.defaults`; check `main/prg32_config.h` | +| QEMU build cannot find virtual RGB component | Wrong target or defaults | Use `esp32c3` and `profiles/sdkconfig.defaults.qemu` | +| Physical display is black | QEMU build flashed to board or wrong pins | Rebuild `build-esp32c6` with `profiles/sdkconfig.defaults`; check `main/prg32_config.h` | | Upload cannot reach board | Host is not on PRG32 Wi-Fi or wrong URL | Connect to `PRG32` AP and use `http://192.168.4.1` | | Store publish returns `401` | Missing or invalid token | Ask for the classroom token or omit auth only on open stores | | Store publish returns `400` | Bad manifest or zip layout | Check `manifest.json` and `unzip -l` output | diff --git a/docs/hardware/ili9341.md b/docs/hardware/ili9341.md index 0de8af1..0fed03f 100644 --- a/docs/hardware/ili9341.md +++ b/docs/hardware/ili9341.md @@ -87,7 +87,7 @@ If the real display is black: or custom text in the physical top/bottom bands without changing the 320x200 game coordinate system. - Physical builds default to `CONFIG_PRG32_DISPLAY_ILI9341`. -- QEMU builds use `sdkconfig.defaults.qemu` and `CONFIG_PRG32_DISPLAY_QEMU_RGB`. +- QEMU builds use `profiles/sdkconfig.defaults.qemu` and `CONFIG_PRG32_DISPLAY_QEMU_RGB`. - `main/prg32_config.h` disables physical pins, buzzer, and real Wi-Fi multiplayer transport when the QEMU display backend is selected. - `components/prg32/idf_component.yml` and CMake only pull diff --git a/docs/learn/labs/lab_03_graphics.md b/docs/learn/labs/lab_03_graphics.md index 1d46f93..6d78fff 100644 --- a/docs/learn/labs/lab_03_graphics.md +++ b/docs/learn/labs/lab_03_graphics.md @@ -39,7 +39,7 @@ virtual screen. For QEMU: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` Optional extension: build your rectangle game as a `.prg32` cartridge and diff --git a/docs/learn/tutorial.md b/docs/learn/tutorial.md index d6ec020..5fa1c80 100644 --- a/docs/learn/tutorial.md +++ b/docs/learn/tutorial.md @@ -15,7 +15,7 @@ thing, and explain what changed. Run the VS Code task `PRG32: set target esp32c6`, then run `PRG32: build`. These tasks use the dedicated `build-esp32c6` directory and -`sdkconfig.defaults`, so they keep the real ILI9341 board build separate from +`profiles/sdkconfig.defaults`, so they keep the real ILI9341 board build separate from QEMU. Flash with `PRG32: flash monitor`. On the physical ESP32-C6 board, the monitor diff --git a/docs/learn/tutorial_c_game.md b/docs/learn/tutorial_c_game.md index 88edb94..bb574aa 100644 --- a/docs/learn/tutorial_c_game.md +++ b/docs/learn/tutorial_c_game.md @@ -101,17 +101,17 @@ void app_main(void) { Build for hardware: ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults flash monitor ``` Or build for QEMU: On Windows: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` On Linux or MacOS: diff --git a/docs/learn/tutorial_graphic_game.md b/docs/learn/tutorial_graphic_game.md index 5571067..c769441 100644 --- a/docs/learn/tutorial_graphic_game.md +++ b/docs/learn/tutorial_graphic_game.md @@ -183,7 +183,7 @@ For a desktop graphics test, run: On Windows: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` On Linux or MacOS: diff --git a/docs/measurement/metrics_api.md b/docs/measurement/metrics_api.md index 68ee0db..a0ae111 100644 --- a/docs/measurement/metrics_api.md +++ b/docs/measurement/metrics_api.md @@ -180,11 +180,11 @@ with the normal board defaults: ```bash idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ set-target esp32c6 idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ build ``` @@ -323,7 +323,7 @@ plots when `matplotlib` is installed. - For reproducible scientific measurements, use - `sdkconfig.defaults;sdkconfig.defaults.metrics` as described in + `profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics` as described in [Scientific Measurement Tutorial](scientific_measurement_tutorial.md). ## Development Guide diff --git a/docs/measurement/scientific_measurement_tutorial.md b/docs/measurement/scientific_measurement_tutorial.md index 009d8cf..7264156 100644 --- a/docs/measurement/scientific_measurement_tutorial.md +++ b/docs/measurement/scientific_measurement_tutorial.md @@ -79,16 +79,16 @@ Use the normal ESP32-C6 defaults plus the metrics profile: ```bash idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ set-target esp32c6 idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ build ``` -Set these values in `sdkconfig.defaults.metrics` or through `menuconfig`: +Set these values in `profiles/sdkconfig.defaults.metrics` or through `menuconfig`: ```text CONFIG_PRG32_METRICS_ENABLE=y @@ -110,7 +110,7 @@ For ESP32-C6 hardware: ```bash idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ flash monitor ``` @@ -120,7 +120,7 @@ On Windows: ```bash idf.py -B build-qemu \ -D SDKCONFIG=build-qemu/sdkconfig \ - -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu \ + -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu \ qemu --graphics monitor ``` @@ -373,7 +373,7 @@ For results, include: Attach or archive: - repository commit hash -- `sdkconfig` or `sdkconfig.defaults.metrics` +- `sdkconfig` or `profiles/sdkconfig.defaults.metrics` - cartridge source and `.prg32` image - metrics database or exported CSV files - screenshot BMP/PNG files diff --git a/docs/repository_structure.md b/docs/repository_structure.md index d5d0d31..8855a2e 100644 --- a/docs/repository_structure.md +++ b/docs/repository_structure.md @@ -51,7 +51,7 @@ This document outlines the high-level layout of the PRG32 repository. | |-- store/ CartridgeStore integration (publishing, formatting, metadata) | `-- utilities/ Common utility functions for logging, environment checks, and partitions |-- scripts/ Shell/PowerShell scripts for common CI and local workflows (QEMU, flashing) -|-- sdkconfig* Default configuration files for ESP32-C6 hardware and QEMU emulator builds +|-- profiles/ Default configuration files for ESP32-C6 hardware and QEMU emulator builds |-- tests/ Host-side unit tests for Python tooling, documentation validation, and host-compiled firmware C (random, audio synth/tracker) |-- tools/ Developer scripts, including real QEMU cartridge preview capture and media validation |-- .vscode/ Student-ready VS Code tasks and debug configurations diff --git a/docs/software/framework_manual.md b/docs/software/framework_manual.md index 09b54d7..c068f25 100644 --- a/docs/software/framework_manual.md +++ b/docs/software/framework_manual.md @@ -123,7 +123,7 @@ Display backend selection: Use the QEMU defaults file when running on a desktop: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` When the QEMU backend is selected, `main/prg32_config.h` disables physical GPIO @@ -275,7 +275,7 @@ Important constants: configured by `CONFIG_PRG32_CART_RAM_PROFILE`. Physical ESP32-C6 and QEMU builds default to the 64 KiB extended profile. The optional `PRG32_CART_RAM_LARGE_128` profile reserves 128 KiB on ESP32-C6 when built - with `sdkconfig.defaults.esp32c6_128k`; it requires matching rebuilt + with `profiles/sdkconfig.defaults.esp32c6_128k`; it requires matching rebuilt cartridges and raises the stored-image limit to 128 KiB. The window remains static because legacy cartridges are linked to the exported `prg32_cart_exec` address; portable cartridges use the ABI table. diff --git a/docs/tools/audio.md b/docs/tools/audio.md index 8b2b0a8..0d499b9 100644 --- a/docs/tools/audio.md +++ b/docs/tools/audio.md @@ -404,7 +404,7 @@ No sound: because the firmware failed to start I2S - confirm speaker wires are on speaker outputs - confirm audio is enabled in Kconfig -- confirm the build uses `sdkconfig.defaults`, not `sdkconfig.defaults.qemu` +- confirm the build uses `profiles/sdkconfig.defaults`, not `profiles/sdkconfig.defaults.qemu` - confirm the selected GPIOs do not conflict with display or joystick wiring Only one stereo speaker works: diff --git a/docs/usage/configuration.md b/docs/usage/configuration.md index 42e57bb..b8cd523 100644 --- a/docs/usage/configuration.md +++ b/docs/usage/configuration.md @@ -10,12 +10,12 @@ idf.py menuconfig When you save changes in `menuconfig`, they are stored in the `sdkconfig` file located at the root of the project. - **`sdkconfig`**: Contains your local configuration. This file is dynamically generated and represents your current build state. It is usually ignored by version control. -- **`sdkconfig.defaults`**: Contains the permanent default configurations for the repository. These defaults act as a baseline whenever a new `sdkconfig` file is generated (for example, after a fresh Git clone, or if you delete your local `sdkconfig` and run a build). Your local `sdkconfig` will override the repository defaults. - - If you want a change (e.g., changing the fallback default audio mode) to be applied universally to all new builds, you must manually copy the relevant setting from your local `sdkconfig` into `sdkconfig.defaults`. -- **`sdkconfig.defaults.qemu`**: Contains the default configuration overrides specifically for QEMU emulator builds. +- **`profiles/sdkconfig.defaults`**: Contains the permanent default configurations for the repository. These defaults act as a baseline whenever a new `sdkconfig` file is generated (for example, after a fresh Git clone, or if you delete your local `sdkconfig` and run a build). Your local `sdkconfig` will override the repository defaults. + - If you want a change (e.g., changing the fallback default audio mode) to be applied universally to all new builds, you must manually copy the relevant setting from your local `sdkconfig` into `profiles/sdkconfig.defaults`. +- **`profiles/sdkconfig.defaults.qemu`**: Contains the default configuration overrides specifically for QEMU emulator builds. ## Runtime Configuration (NVS) -While `menuconfig` and `sdkconfig.defaults` provide the baseline compile-time configuration, the PRG32 framework also allows certain system settings (such as master volume or audio output modes) to be configured dynamically by the user via the on-device Setup Menu. +While `menuconfig` and `profiles/sdkconfig.defaults` provide the baseline compile-time configuration, the PRG32 framework also allows certain system settings (such as master volume or audio output modes) to be configured dynamically by the user via the on-device Setup Menu. -These user preferences are stored in the ESP32-C6's Non-Volatile Storage (NVS) under the `prg32` namespace. At boot time, any valid setting found in NVS will take precedence and dynamically override the compile-time default. If you wipe the NVS flash or if a setting is unconfigured, the system automatically falls back to your `sdkconfig.defaults` values. +These user preferences are stored in the ESP32-C6's Non-Volatile Storage (NVS) under the `prg32` namespace. At boot time, any valid setting found in NVS will take precedence and dynamically override the compile-time default. If you wipe the NVS flash or if a setting is unconfigured, the system automatically falls back to your `profiles/sdkconfig.defaults` values. diff --git a/docs/usage/profiles.md b/docs/usage/profiles.md index 08af109..6fb753c 100644 --- a/docs/usage/profiles.md +++ b/docs/usage/profiles.md @@ -19,7 +19,7 @@ during LCD transfer. This keeps the game coordinate system unchanged. Full ```bash idf.py -B build-esp32c6-128k \ - -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.esp32c6_128k" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6_128k" \ set-target esp32c6 idf.py -B build-esp32c6-128k build ``` diff --git a/docs/usage/qemu.md b/docs/usage/qemu.md index ca5339d..9a5b760 100644 --- a/docs/usage/qemu.md +++ b/docs/usage/qemu.md @@ -6,7 +6,7 @@ PRG32 can run on a desktop with Espressif QEMU and show the 320x240 PRG32 screen While the physical PRG32 board uses an ESP32-C6 target with an ILI9341 SPI display, the QEMU emulator targets the **ESP32-C3** using a virtual RGB display backend (`CONFIG_PRG32_DISPLAY_QEMU_RGB`). This is because Espressif's maintained RISC-V QEMU graphics path requires the ESP32-C3. -- **Separate Build Environment**: QEMU uses a separate build directory (`build-qemu`) and defaults file (`sdkconfig.defaults.qemu`) to ensure physical board configurations remain untouched. +- **Separate Build Environment**: QEMU uses a separate build directory (`build-qemu`) and defaults file (`profiles/sdkconfig.defaults.qemu`) to ensure physical board configurations remain untouched. - **Unified ABI**: Both physical and QEMU targets share the same 32-bit RISC-V calling convention and PRG32 ABI. Only the display backend changes. - **Screen Resolution**: Framework screens use the full 320x240 resolution, while game code draws into a centered 320x200 viewport. diff --git a/examples/features/README.md b/examples/features/README.md index 08f0855..e4bb18d 100644 --- a/examples/features/README.md +++ b/examples/features/README.md @@ -90,16 +90,16 @@ Use either the assembly symbols or the C symbols in `app_main`, not both. Build for hardware: ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults flash monitor ``` Or build for QEMU: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` Restore the default `main/CMakeLists.txt` and `main/main.c` before committing. diff --git a/examples/features/audio_mono_beep/README.md b/examples/features/audio_mono_beep/README.md index d3a1aad..79feffe 100644 --- a/examples/features/audio_mono_beep/README.md +++ b/examples/features/audio_mono_beep/README.md @@ -11,8 +11,8 @@ square-wave sample. No cartridge audio assets are required. 3. Build and flash: ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build flash monitor ``` Checkpoint: one speaker plays a short beep, then the display keeps refreshing. diff --git a/examples/features/audio_mono_sample/README.md b/examples/features/audio_mono_sample/README.md index f4abfea..ada1a54 100644 --- a/examples/features/audio_mono_sample/README.md +++ b/examples/features/audio_mono_sample/README.md @@ -16,8 +16,8 @@ cartridge AUDIO block. ## Run Embedded In Firmware ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build flash monitor ``` Checkpoint: the mono speaker repeats a short click. If there is no sound, run diff --git a/examples/features/audio_mono_tracker/README.md b/examples/features/audio_mono_tracker/README.md index 73214a0..cad62e8 100644 --- a/examples/features/audio_mono_tracker/README.md +++ b/examples/features/audio_mono_tracker/README.md @@ -12,8 +12,8 @@ as instrument 0, and a short event list plays a repeating three-note melody. ## Run ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build flash monitor ``` Checkpoint: the melody loops while the main task keeps refreshing the display. diff --git a/examples/features/audio_stereo_music/README.md b/examples/features/audio_stereo_music/README.md index 44e0f52..1411fd5 100644 --- a/examples/features/audio_stereo_music/README.md +++ b/examples/features/audio_stereo_music/README.md @@ -6,8 +6,8 @@ effects alternate between left and right. ## Run ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build flash monitor ``` Checkpoint: the melody appears in the center image and short effects jump diff --git a/examples/features/audio_stereo_pan_test/README.md b/examples/features/audio_stereo_pan_test/README.md index 9ccd056..6d94d8d 100644 --- a/examples/features/audio_stereo_pan_test/README.md +++ b/examples/features/audio_stereo_pan_test/README.md @@ -14,8 +14,8 @@ Wire both MAX98357A boards to the same BCLK, LRCLK, and DATA lines. Configure one board for left-channel output and the other for right-channel output. ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build flash monitor ``` Checkpoint: the serial monitor labels match the speaker that plays. If left and diff --git a/examples/features/splash_screen/README.md b/examples/features/splash_screen/README.md index a678c38..ee60383 100644 --- a/examples/features/splash_screen/README.md +++ b/examples/features/splash_screen/README.md @@ -43,8 +43,8 @@ For the C version, use `../examples/features/splash_screen/c/demo.c` and the Build: ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build flash monitor ``` Checkpoint: the first splash pauses briefly, then the draw helper keeps a diff --git a/examples/games/README.md b/examples/games/README.md index c46e9a3..0783e64 100644 --- a/examples/games/README.md +++ b/examples/games/README.md @@ -144,16 +144,16 @@ and add `../examples/games/platformer/graphics/game.S` to `SRCS`. ### 3. Build for the Physical ESP32-C6 Board ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults flash monitor ``` ### 4. Or Build for QEMU Graphics Testing ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` QEMU shows the graphics viewport in a desktop window. Use the monitor terminal @@ -182,9 +182,9 @@ once. ### 1. Build and Flash the Resident Firmware ```bash -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults set-target esp32c6 -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults build -idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults flash monitor +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults set-target esp32c6 +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults build +idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults flash monitor ``` The board starts the `PRG32` Wi-Fi access point by default for cartridge uploads. @@ -244,14 +244,14 @@ cartridge directly into the emulator flash image. ### 1. Build QEMU Firmware ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu build +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu build ``` ### 2. Run QEMU Once to Create the Flash Image ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` Stop QEMU after the first successful launch. This creates @@ -288,7 +288,7 @@ python3 -m prg32 qemu upload \ ### 5. Run QEMU Again ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor ``` The resident firmware loads the staged cartridge from the QEMU flash image. diff --git a/platformio.ini b/platformio.ini index 5831db3..fa3dc44 100644 --- a/platformio.ini +++ b/platformio.ini @@ -16,7 +16,7 @@ board_build.f_cpu = 160000000L board_upload.flash_size = 4MB board_build.partitions = partitions_prg32.csv board_build.cmake_extra_args = - -DSDKCONFIG_DEFAULTS=sdkconfig.defaults + -DSDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults monitor_speed = 115200 monitor_dtr = 0 monitor_rts = 0 diff --git a/prg32/esp32c6/prepare_firmware.py b/prg32/esp32c6/prepare_firmware.py index d5f169c..ce77432 100644 --- a/prg32/esp32c6/prepare_firmware.py +++ b/prg32/esp32c6/prepare_firmware.py @@ -18,7 +18,7 @@ def prepare_firmware_esp32c6(args: argparse.Namespace) -> None: "-D", f"SDKCONFIG={args.build_dir}/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=sdkconfig.defaults", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults", "build", ], cwd=ROOT_DIR) if not flasher_args.exists(): diff --git a/prg32/qemu/run_qemu_demo.py b/prg32/qemu/run_qemu_demo.py index 40ed5ee..aa41f47 100644 --- a/prg32/qemu/run_qemu_demo.py +++ b/prg32/qemu/run_qemu_demo.py @@ -7,7 +7,7 @@ def main(): QEMU_BUILD_DIR = "build-qemu" QEMU_SDKCONFIG = f"{QEMU_BUILD_DIR}/sdkconfig" - QEMU_DEFAULTS = "sdkconfig.defaults.qemu" + QEMU_DEFAULTS = "profiles/sdkconfig.defaults.qemu" DEMO_SOURCE = "examples/games/asteroids/graphics/game.S" DEMO_PREFIX = "asteroids_graphics" DEMO_CART = f"{QEMU_BUILD_DIR}/asteroids.prg32" diff --git a/prg32/qemu/smoke_test.py b/prg32/qemu/smoke_test.py index 691aada..22809bc 100644 --- a/prg32/qemu/smoke_test.py +++ b/prg32/qemu/smoke_test.py @@ -22,7 +22,7 @@ def main(): ROOT = Path(__file__).resolve().parents[2] QEMU_BUILD_DIR = "build-qemu" QEMU_SDKCONFIG = f"{QEMU_BUILD_DIR}/sdkconfig" - QEMU_DEFAULTS = "sdkconfig.defaults.qemu" + QEMU_DEFAULTS = "profiles/sdkconfig.defaults.qemu" require_cmd("python3", "Install Python 3 and retry.") require_cmd("idf.py", "Run: . $HOME/esp-idf/export.sh") # riscv toolchain optional diff --git a/prg32/utilities/env_variables.py b/prg32/utilities/env_variables.py index 188e684..5c58558 100644 --- a/prg32/utilities/env_variables.py +++ b/prg32/utilities/env_variables.py @@ -13,7 +13,7 @@ ESP32C6_IMAGE = f"{ESP32C6_BUILD_DIR}/PRG32.bin" ESP32C6_ELF = f"{ESP32C6_BUILD_DIR}/PRG32.elf" ESP32C6_SDKCONFIG = f"{ESP32C6_BUILD_DIR}/sdkconfig" -ESP32C6_SDKCONFIG_DEFAULTS = "sdkconfig.defaults" +ESP32C6_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults" # QEMU environment variables QEMU_BUILD_DIR = "build-qemu" @@ -21,10 +21,10 @@ QEMU_EFUSE = f"{QEMU_BUILD_DIR}/qemu_efuse.bin" QEMU_ELF = f"{QEMU_BUILD_DIR}/PRG32.elf" QEMU_SDKCONFIG= f"{QEMU_BUILD_DIR}/sdkconfig" -QEMU_SDKCONFIG_DEFAULTS = "sdkconfig.defaults.qemu" +QEMU_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults.qemu" # Metrics variables -METRICS_SDKCONFIG_DEFAULTS = "sdkconfig.defaults.metrics" +METRICS_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults.metrics" # Target Defaults TARGET_DEFAULTS = { diff --git a/sdkconfig.defaults b/profiles/sdkconfig.defaults similarity index 100% rename from sdkconfig.defaults rename to profiles/sdkconfig.defaults diff --git a/sdkconfig.defaults.esp32c6_128k b/profiles/sdkconfig.defaults.esp32c6_128k similarity index 62% rename from sdkconfig.defaults.esp32c6_128k rename to profiles/sdkconfig.defaults.esp32c6_128k index f5d23b8..14f443c 100644 --- a/sdkconfig.defaults.esp32c6_128k +++ b/profiles/sdkconfig.defaults.esp32c6_128k @@ -1,4 +1,4 @@ -# ESP32-C6 large-cartridge profile. Combine this after sdkconfig.defaults. +# ESP32-C6 large-cartridge profile. Combine this after profiles/sdkconfig.defaults. # Rebuild both the resident firmware and every cartridge after selecting it. CONFIG_PRG32_CART_RAM_LARGE_128=y CONFIG_PRG32_CART_MAX_KIB=128 diff --git a/sdkconfig.defaults.metrics b/profiles/sdkconfig.defaults.metrics similarity index 57% rename from sdkconfig.defaults.metrics rename to profiles/sdkconfig.defaults.metrics index f7252cf..030e85e 100644 --- a/sdkconfig.defaults.metrics +++ b/profiles/sdkconfig.defaults.metrics @@ -1,5 +1,5 @@ -# Optional profiling/lab profile. Use together with sdkconfig.defaults: -# idf.py -D SDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.defaults.metrics" build +# Optional profiling/lab profile. Use together with profiles/sdkconfig.defaults: +# idf.py -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" build CONFIG_PRG32_METRICS_ENABLE=y CONFIG_PRG32_METRICS_SERVER_URL="http://192.168.4.2:8080" CONFIG_PRG32_METRICS_BOARD_ID="prg32-board" diff --git a/sdkconfig.defaults.qemu b/profiles/sdkconfig.defaults.qemu similarity index 84% rename from sdkconfig.defaults.qemu rename to profiles/sdkconfig.defaults.qemu index e136e09..01a560d 100644 --- a/sdkconfig.defaults.qemu +++ b/profiles/sdkconfig.defaults.qemu @@ -1,4 +1,4 @@ -# Use with: idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 +# Use with: idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 CONFIG_PARTITION_TABLE_CUSTOM=y CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_prg32.csv" CONFIG_PRG32_DISPLAY_QEMU_RGB=y diff --git a/scripts/qemu/build_qemu.ps1 b/scripts/qemu/build_qemu.ps1 index 860b69a..ad5263f 100644 --- a/scripts/qemu/build_qemu.ps1 +++ b/scripts/qemu/build_qemu.ps1 @@ -1,5 +1,5 @@ $ErrorActionPreference = "Stop" -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 Write-Host "QEMU input: focus this terminal; arrows or W/A/S/D = joystick 1, Enter/Space = SELECT, J/Z = A, K/X = B" -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor diff --git a/scripts/qemu/build_qemu.sh b/scripts/qemu/build_qemu.sh index 2e8790f..a5ab59c 100755 --- a/scripts/qemu/build_qemu.sh +++ b/scripts/qemu/build_qemu.sh @@ -12,10 +12,10 @@ ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" build_qemu() { step "Configuring QEMU target (esp32c3)" - idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu set-target esp32c3 + idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 step "Building QEMU firmware and flash_image" - idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu qemu --graphics monitor + idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor [[ -f "$BUILD_DIR/PRG32.elf" ]] || die "Missing $BUILD_DIR/PRG32.elf after build." log_info "Firmware build ready" diff --git a/scripts/qemu/run_qemu.sh b/scripts/qemu/run_qemu.sh index 3ef77f4..8deee2e 100755 --- a/scripts/qemu/run_qemu.sh +++ b/scripts/qemu/run_qemu.sh @@ -5,7 +5,7 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" BUILD_DIR="build-qemu" SDKCONFIG="$BUILD_DIR/sdkconfig" -SDKCONFIG_DEFAULTS="sdkconfig.defaults.qemu" +SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults.qemu" FLASH_IMAGE="$BUILD_DIR/qemu_flash.bin" QEMU_EFUSE="$BUILD_DIR/qemu_efuse.bin" FLASH_SIZE=$((4 * 1024 * 1024)) diff --git a/scripts/qemu/run_qemu_demo.sh b/scripts/qemu/run_qemu_demo.sh index 10e7c62..b71dba9 100755 --- a/scripts/qemu/run_qemu_demo.sh +++ b/scripts/qemu/run_qemu_demo.sh @@ -4,7 +4,7 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" QEMU_BUILD_DIR="build-qemu" QEMU_SDKCONFIG="$QEMU_BUILD_DIR/sdkconfig" -QEMU_DEFAULTS="sdkconfig.defaults.qemu" +QEMU_DEFAULTS="profiles/sdkconfig.defaults.qemu" DEMO_SOURCE="examples/games/asteroids/graphics/game.S" DEMO_PREFIX="asteroids_graphics" DEMO_CART="$QEMU_BUILD_DIR/asteroids.prg32" diff --git a/scripts/qemu/smoke_test.sh b/scripts/qemu/smoke_test.sh index b861400..844c991 100755 --- a/scripts/qemu/smoke_test.sh +++ b/scripts/qemu/smoke_test.sh @@ -4,7 +4,7 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" QEMU_BUILD_DIR="build-qemu" QEMU_SDKCONFIG="$QEMU_BUILD_DIR/sdkconfig" -QEMU_DEFAULTS="sdkconfig.defaults.qemu" +QEMU_DEFAULTS="profiles/sdkconfig.defaults.qemu" cd "$ROOT_DIR" ok() { @@ -77,7 +77,7 @@ cmd = [ "idf.py", "-B", "build-qemu", "-D", "SDKCONFIG=build-qemu/sdkconfig", - "-D", "SDKCONFIG_DEFAULTS=sdkconfig.defaults.qemu", + "-D", "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", "qemu", "--graphics", "monitor", diff --git a/scripts/utilities/env_variables.sh b/scripts/utilities/env_variables.sh index 6a542ae..687d4dc 100644 --- a/scripts/utilities/env_variables.sh +++ b/scripts/utilities/env_variables.sh @@ -16,5 +16,5 @@ export QEMU_IMAGE="$BUILD_DIR/qemu_flash.bin" export QEMU_EFUSE="$BUILD_DIR/qemu_efuse.bin" export QEMU_ELF="$BUILD_DIR/PRG32.elf" export SDKCONFIG="$BUILD_DIR/sdkconfig" -export SDKCONFIG_DEFAULTS="sdkconfig.defaults.qemu" +export SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults.qemu" export FLASH_SIZE=$((4 * 1024 * 1024)) \ No newline at end of file From a03b80bd93d8817e3bb8950a408865d95bd616f6 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Mon, 14 Sep 2026 10:47:57 +0200 Subject: [PATCH 04/12] chore(profiles): moved partitions_prg32.csv and all references to profiles folder --- docs/repository_structure.md | 5 ++++- docs/software/cartridges.md | 4 ++-- docs/usage/setup_verification.md | 2 +- docs/usage/troubleshooting.md | 2 +- platformio.ini | 2 +- prg32/utilities/env_variables.py | 2 +- partitions_prg32.csv => profiles/partitions_prg32.csv | 0 profiles/sdkconfig.defaults | 2 +- profiles/sdkconfig.defaults.qemu | 2 +- sdkconfig | 4 ++-- tests/test_prg32.py | 4 ++-- 11 files changed, 16 insertions(+), 13 deletions(-) rename partitions_prg32.csv => profiles/partitions_prg32.csv (100%) diff --git a/docs/repository_structure.md b/docs/repository_structure.md index 8855a2e..e525de0 100644 --- a/docs/repository_structure.md +++ b/docs/repository_structure.md @@ -53,12 +53,15 @@ This document outlines the high-level layout of the PRG32 repository. |-- scripts/ Shell/PowerShell scripts for common CI and local workflows (QEMU, flashing) |-- profiles/ Default configuration files for ESP32-C6 hardware and QEMU emulator builds |-- tests/ Host-side unit tests for Python tooling, documentation validation, and host-compiled firmware C (random, audio synth/tracker) +|-- profiles/ Default configuration files and partition tables +| |-- partitions_prg32.csv Partition table defining resident firmware layout and cartridge slots +| `-- sdkconfig.defaults* Default configuration files for ESP32-C6 hardware and QEMU emulator builds +|-- tests/ Host-side unit tests for Python tooling and documentation validation |-- tools/ Developer scripts, including real QEMU cartridge preview capture and media validation |-- .vscode/ Student-ready VS Code tasks and debug configurations |-- AGENTS.md Rules and guidelines for autonomous coding agents |-- CMakeLists.txt Top-level CMake project definition |-- CONTRIBUTING.md Guidelines for human contributors |-- CONTRIBUTORS.md Academic contributor metadata -|-- partitions_prg32.csv Partition table defining resident firmware layout and cartridge slots `-- PRG32.code-workspace VS Code workspace configuration ``` diff --git a/docs/software/cartridges.md b/docs/software/cartridges.md index bf1da33..e6ac508 100644 --- a/docs/software/cartridges.md +++ b/docs/software/cartridges.md @@ -41,7 +41,7 @@ icon without making the cartridge itself more expensive to start. ### Flash Layout & Slots -`partitions_prg32.csv` is used by both hardware and QEMU builds: +`profiles/partitions_prg32.csv` is used by both hardware and QEMU builds: ```text factory: resident PRG32 firmware @@ -513,5 +513,5 @@ This is intentionally a classroom loader, not a general dynamic linker. - When changing the default `PRG32_CART_RAM_PROFILE` in Kconfig or the `sdkconfig.defaults*` files, update `DEFAULT_CART_RAM_KIB` in `prg32/utilities/env_variables.py` so host-side checks match the firmware. -- Keep `partitions_prg32.csv`, `sdkconfig.defaults`, and `sdkconfig.defaults.qemu` +- Keep `profiles/partitions_prg32.csv`, `sdkconfig.defaults`, and `sdkconfig.defaults.qemu` in sync when changing cartridge slots. diff --git a/docs/usage/setup_verification.md b/docs/usage/setup_verification.md index 04e63c5..c30ebe2 100644 --- a/docs/usage/setup_verification.md +++ b/docs/usage/setup_verification.md @@ -15,7 +15,7 @@ python3 -m prg32 doctor The `doctor` tool verifies: - Whether the **ESP-IDF** toolchain is properly loaded (e.g., `idf.py` is in your `PATH`). - Whether the **RISC-V compiler** (`riscv32-esp-elf-gcc`) is available. -- Whether the **partitions file** (`partitions_prg32.csv`) exists and can be parsed correctly for cartridge slots. +- Whether the **partitions file** (`profiles/partitions_prg32.csv`) exists and can be parsed correctly for cartridge slots. If any of these checks fail, ensure you have sourced the ESP-IDF export script (e.g., `. ~/esp-idf/export.sh`) before attempting to build the project. diff --git a/docs/usage/troubleshooting.md b/docs/usage/troubleshooting.md index ca3316a..3089198 100644 --- a/docs/usage/troubleshooting.md +++ b/docs/usage/troubleshooting.md @@ -34,7 +34,7 @@ Here are common issues and solutions when working with the PRG32 framework. ## Cartridge and Partition Issues - **Cartridge upload fails**: The emulator flash image might be missing, or the cartridge is too large. Run QEMU once to generate `build-qemu/qemu_flash.bin`, then rerun your upload command. -- **Partition mismatch errors**: Run `python3 -m prg32 doctor` and verify `partitions_prg32.csv` plus the selected cartridge slot. +- **Partition mismatch errors**: Run `python3 -m prg32 doctor` and verify `profiles/partitions_prg32.csv` plus the selected cartridge slot. - **A staged cartridge opens setup instead of starting**: Check that `PRG32_BOOT_SETUP_MODE` is `0` in `main/prg32_config.h`, rebuild the firmware, and inspect the serial line `prg32_init: cartridge autoload failed`. A diff --git a/platformio.ini b/platformio.ini index fa3dc44..1101e1c 100644 --- a/platformio.ini +++ b/platformio.ini @@ -14,7 +14,7 @@ board = esp32-c6-devkitc-1 board_build.mcu = esp32c6 board_build.f_cpu = 160000000L board_upload.flash_size = 4MB -board_build.partitions = partitions_prg32.csv +board_build.partitions = profiles/partitions_prg32.csv board_build.cmake_extra_args = -DSDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults monitor_speed = 115200 diff --git a/prg32/utilities/env_variables.py b/prg32/utilities/env_variables.py index 5c58558..25311e5 100644 --- a/prg32/utilities/env_variables.py +++ b/prg32/utilities/env_variables.py @@ -50,7 +50,7 @@ PRG32_IMPORT_MODEL_LEGACY_ABSOLUTE = 0 PRG32_IMPORT_MODEL_ABI_TABLE = 1 AUDIO_BLOCK_MAGIC = b"AUD0" -DEFAULT_PARTITION_TABLE = ROOT_DIR / "partitions_prg32.csv" +DEFAULT_PARTITION_TABLE = ROOT_DIR / "profiles/partitions_prg32.csv" DEFAULT_CART_SLOT = "cart0" # Executable cartridge RAM window, mirroring Kconfig PRG32_CART_RAM_KIB. # The default firmware profile (sdkconfig.defaults and sdkconfig.defaults.qemu) diff --git a/partitions_prg32.csv b/profiles/partitions_prg32.csv similarity index 100% rename from partitions_prg32.csv rename to profiles/partitions_prg32.csv diff --git a/profiles/sdkconfig.defaults b/profiles/sdkconfig.defaults index 79e4520..730e82e 100644 --- a/profiles/sdkconfig.defaults +++ b/profiles/sdkconfig.defaults @@ -1,5 +1,5 @@ CONFIG_PARTITION_TABLE_CUSTOM=y -CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_prg32.csv" +CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="profiles/partitions_prg32.csv" CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y CONFIG_ESPTOOLPY_FLASHSIZE="4MB" CONFIG_ESP_CONSOLE_UART_DEFAULT=y diff --git a/profiles/sdkconfig.defaults.qemu b/profiles/sdkconfig.defaults.qemu index 01a560d..10677ad 100644 --- a/profiles/sdkconfig.defaults.qemu +++ b/profiles/sdkconfig.defaults.qemu @@ -1,6 +1,6 @@ # Use with: idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 CONFIG_PARTITION_TABLE_CUSTOM=y -CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_prg32.csv" +CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="profiles/partitions_prg32.csv" CONFIG_PRG32_DISPLAY_QEMU_RGB=y CONFIG_PRG32_QEMU_FAIL_ON_REAL_HW=y CONFIG_PRG32_QEMU_UART_INPUT=y diff --git a/sdkconfig b/sdkconfig index 57982a2..67c26f2 100644 --- a/sdkconfig +++ b/sdkconfig @@ -573,8 +573,8 @@ CONFIG_ESPTOOLPY_MONITOR_BAUD=115200 # CONFIG_PARTITION_TABLE_TWO_OTA is not set # CONFIG_PARTITION_TABLE_TWO_OTA_LARGE is not set CONFIG_PARTITION_TABLE_CUSTOM=y -CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_prg32.csv" -CONFIG_PARTITION_TABLE_FILENAME="partitions_prg32.csv" +CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="profiles/partitions_prg32.csv" +CONFIG_PARTITION_TABLE_FILENAME="profiles/partitions_prg32.csv" CONFIG_PARTITION_TABLE_OFFSET=0x8000 CONFIG_PARTITION_TABLE_MD5=y # end of Partition Table diff --git a/tests/test_prg32.py b/tests/test_prg32.py index a2c62c0..a4096bc 100644 --- a/tests/test_prg32.py +++ b/tests/test_prg32.py @@ -45,7 +45,7 @@ def test_parse_partition_size_units(self) -> None: def test_read_partition_slot(self) -> None: offset, size = partition_handler.read_partition_slot( - ROOT / "partitions_prg32.csv", + ROOT / "profiles/partitions_prg32.csv", "cart0", ) self.assertEqual(offset, 0x210000) @@ -421,7 +421,7 @@ def test_inject_cartridge_is_shared_by_qemu_helpers(self) -> None: class DoctorTests(unittest.TestCase): def test_host_only_doctor_does_not_require_esp_idf(self) -> None: - rc = prg32_main(["doctor", "--host-only", "--partitions", str(ROOT / "partitions_prg32.csv")]) + rc = prg32_main(["doctor", "--host-only", "--partitions", str(ROOT / "profiles/partitions_prg32.csv")]) self.assertEqual(rc, 0) From bbfe0da0de29128ffabfd1e53675ec037e56454b Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Mon, 14 Sep 2026 11:06:13 +0200 Subject: [PATCH 05/12] chore(repository): removed old .sh and .ps1 scripts. Changed all references in the documentation. Added .pytest_cache to gitignore. Small changes to README. --- .gitignore | 1 + AGENTS.md | 6 +- CONTRIBUTING.md | 2 +- docs/learn/teaching_with_prg32.md | 6 +- docs/learn/tutorial_c_game.md | 8 +- docs/learn/tutorial_graphic_game.md | 2 +- .../scientific_measurement_tutorial.md | 6 +- docs/performance_test.md | 1 - docs/repository_structure.md | 3 - scripts/cartridge/build_cartridge.sh | 62 ------- scripts/esp32c6/ci_smoke_test.sh | 23 --- scripts/esp32c6/flash.sh | 5 - scripts/qemu/build_qemu.ps1 | 5 - scripts/qemu/build_qemu.sh | 33 ---- scripts/qemu/launch_qemu.sh | 36 ---- scripts/qemu/load_cart.sh | 79 --------- scripts/qemu/qemu_inject_cartridge.sh | 52 ------ scripts/qemu/run_qemu.sh | 134 --------------- scripts/qemu/run_qemu_demo.sh | 65 ------- scripts/qemu/smoke_test.sh | 118 ------------- scripts/qemu/start.sh | 118 ------------- scripts/utilities/env_variables.sh | 20 --- scripts/utilities/environment_check.sh | 160 ------------------ scripts/utilities/logging.sh | 50 ------ 24 files changed, 15 insertions(+), 980 deletions(-) delete mode 100755 scripts/cartridge/build_cartridge.sh delete mode 100755 scripts/esp32c6/ci_smoke_test.sh delete mode 100755 scripts/esp32c6/flash.sh delete mode 100644 scripts/qemu/build_qemu.ps1 delete mode 100755 scripts/qemu/build_qemu.sh delete mode 100755 scripts/qemu/launch_qemu.sh delete mode 100755 scripts/qemu/load_cart.sh delete mode 100755 scripts/qemu/qemu_inject_cartridge.sh delete mode 100755 scripts/qemu/run_qemu.sh delete mode 100755 scripts/qemu/run_qemu_demo.sh delete mode 100755 scripts/qemu/smoke_test.sh delete mode 100755 scripts/qemu/start.sh delete mode 100644 scripts/utilities/env_variables.sh delete mode 100644 scripts/utilities/environment_check.sh delete mode 100644 scripts/utilities/logging.sh diff --git a/.gitignore b/.gitignore index 5404029..fb93fc3 100644 --- a/.gitignore +++ b/.gitignore @@ -71,6 +71,7 @@ vcpkg_installed/ # test output & cache Testing/ .cache/ +.pytest_cache/ *.prg32 # Local environment configuration diff --git a/AGENTS.md b/AGENTS.md index 71a0c26..3cf702e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -21,18 +21,16 @@ Before writing or modifying any code, you MUST complete these steps: ## [PHASE 2: VALIDATION RUNS] 1. At the start of every session you must ask the user a question: "Would you like to validate my edits by allowing me to build the PRG32 framework or do you prefer to run the builds on your own?" -The possible answers should be: +The possible answers should include: - "Yes, please validate the edits by building the PRG32 framework.". - "No, I prefer to run the builds on my own.". -- "Other (write your answer).". 2. IF AND ONLY IF the answer is yes, you should then ask: "For what architecture are you building for? ESP32C6 or QEMU?" -The possible answers should be: +The possible answers should include: - ESP32C6. - QEMU. - Both. -- Other (write your answer). ## [PHASE 3: EXECUTION & DOCUMENTATION] When modifying code, you are bound by these rules: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 832c910..7533286 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -96,7 +96,7 @@ idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu buil For end-to-end QEMU cartridge testing: ```bash -./scripts/smoke_test.sh +python3 prg32/qemu/smoke_test.py ``` Changes under `cartridges/blackjack` or `cartridges/devicedemo` must also pass diff --git a/docs/learn/teaching_with_prg32.md b/docs/learn/teaching_with_prg32.md index 9d8098a..27c312b 100644 --- a/docs/learn/teaching_with_prg32.md +++ b/docs/learn/teaching_with_prg32.md @@ -114,9 +114,9 @@ On Windows, build a portable cartridge with `--portable`, then stage it with On Linux or MacOS: ```bash -./scripts/qemu/build_qemu.sh -./scripts/qemu/qemu_inject_cartridge.sh -./scripts/qemu/launch_qemu.sh +python3 -m prg32 qemu build +python3 -m prg32 qemu upload +python3 -m prg32 qemu run ``` ## Comparing Assembly And C diff --git a/docs/learn/tutorial_c_game.md b/docs/learn/tutorial_c_game.md index bb574aa..797bff8 100644 --- a/docs/learn/tutorial_c_game.md +++ b/docs/learn/tutorial_c_game.md @@ -116,7 +116,7 @@ idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=pro On Linux or MacOS: ```bash -./scripts/qemu/build_qemu.sh +python3 -m prg32 qemu build ``` Restore the default `main/CMakeLists.txt` and `main/main.c` after the lab. @@ -147,9 +147,9 @@ On Windows, build a portable cartridge with `--portable` and stage it with On Linux or MacOS: ```bash -./scripts/qemu/build_qemu.sh -./scripts/qemu/qemu_inject_cartridge.sh -./scripts/qemu/launch_qemu.sh +python3 -m prg32 qemu build +python3 -m prg32 qemu upload +python3 -m prg32 qemu run ``` ## 6. Move to Tiles and Platform Games diff --git a/docs/learn/tutorial_graphic_game.md b/docs/learn/tutorial_graphic_game.md index c769441..d9d9b10 100644 --- a/docs/learn/tutorial_graphic_game.md +++ b/docs/learn/tutorial_graphic_game.md @@ -188,7 +188,7 @@ idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=pro On Linux or MacOS: ```bash -./scripts/qemu/build_qemu.sh +python3 -m prg32 qemu build ``` QEMU is best for: diff --git a/docs/measurement/scientific_measurement_tutorial.md b/docs/measurement/scientific_measurement_tutorial.md index 7264156..1a59f26 100644 --- a/docs/measurement/scientific_measurement_tutorial.md +++ b/docs/measurement/scientific_measurement_tutorial.md @@ -126,7 +126,7 @@ idf.py -B build-qemu \ On Linux or MacOS: ```bash -./scripts/qemu/build_qemu.sh +python3 -m prg32 qemu build ``` Wait until the runtime splash and setup screen are visible. Note the IP address @@ -169,8 +169,8 @@ python3 -m prg32 qemu upload \ On Linux or MacOS: ```bash -./scripts/qemu/qemu_inject_cartridge.sh -./scripts/qemu/launch_qemu.sh +python3 -m prg32 qemu upload +python3 -m prg32 qemu run ``` ## 7. Run The Measurement diff --git a/docs/performance_test.md b/docs/performance_test.md index 06d3f9c..d3398bb 100644 --- a/docs/performance_test.md +++ b/docs/performance_test.md @@ -518,7 +518,6 @@ cartridges/myperformancetest/ |-- README.md |-- src/ | `-- myperformancetest.c -|-- scripts/ | `-- build.sh `-- dist/ generated packages ``` diff --git a/docs/repository_structure.md b/docs/repository_structure.md index e525de0..ceb7453 100644 --- a/docs/repository_structure.md +++ b/docs/repository_structure.md @@ -50,9 +50,6 @@ This document outlines the high-level layout of the PRG32 repository. | |-- qemu/ Emulator launch, staging, and automated smoke testing | |-- store/ CartridgeStore integration (publishing, formatting, metadata) | `-- utilities/ Common utility functions for logging, environment checks, and partitions -|-- scripts/ Shell/PowerShell scripts for common CI and local workflows (QEMU, flashing) -|-- profiles/ Default configuration files for ESP32-C6 hardware and QEMU emulator builds -|-- tests/ Host-side unit tests for Python tooling, documentation validation, and host-compiled firmware C (random, audio synth/tracker) |-- profiles/ Default configuration files and partition tables | |-- partitions_prg32.csv Partition table defining resident firmware layout and cartridge slots | `-- sdkconfig.defaults* Default configuration files for ESP32-C6 hardware and QEMU emulator builds diff --git a/scripts/cartridge/build_cartridge.sh b/scripts/cartridge/build_cartridge.sh deleted file mode 100755 index d8a83fb..0000000 --- a/scripts/cartridge/build_cartridge.sh +++ /dev/null @@ -1,62 +0,0 @@ -#!/usr/bin/env bash - -# Script that builds an assembly file into a .prg32 cartridge binary - -# If BUILDCARTRIDGE_SH_INCLUDED is already set, stop reading this file -if [ -n "${BUILDCARTRIDGE_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly BUILDCARTRIDGE_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" -. "$ROOT_DIR/scripts/utilities/logging.sh" - -build_cartridge() { - local source_path="$1" - local out_path="$2" - local entry_prefix="${3:-$(basename "$(dirname "$(dirname "$source_path")")")_graphics}" - - # Validation - [[ -f "$source_path" ]] || die "Missing game source: $source_path" - - # Extract game name dynamically from the output file (e.g., "pong.prg32" -> "pong") - local filename - filename=$(basename "$out_path") - local game_name="${filename%.*}" - - log_info "Building cartridge: $game_name" - - # 3. Execute the compilation - CPATH="$BUILD_DIR/config:$BUILD_DIR:${CPATH:+:$CPATH}" \ - python3 -m prg32 cartridge build \ - "$source_path" \ - --portable \ - --entry-prefix "$entry_prefix" \ - --name "$game_name" \ - --out "$out_path" - - [[ -s "$out_path" ]] || die "Cartridge build failed: $out_path was not created or is empty" - log_ok "Cartridge created: $out_path" -} - -print_usage() { - echo "Usage: $0 [entry_prefix]" -} - -main() { - set -e - - # Expecting exactly 2 arguments now - if [ "$#" -lt 2 ] || [ "$#" -gt 3 ]; then - print_usage - exit 1 - fi - - build_cartridge "$@" -} - -# Only run main if the script is being executed directly, not sourced -if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then - main "$@" -fi diff --git a/scripts/esp32c6/ci_smoke_test.sh b/scripts/esp32c6/ci_smoke_test.sh deleted file mode 100755 index 762f17b..0000000 --- a/scripts/esp32c6/ci_smoke_test.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -cd "$ROOT_DIR" - -export PYTHONPYCACHEPREFIX="${PYTHONPYCACHEPREFIX:-/tmp/prg32-pycache}" - -echo "[CI] Checking whitespace" -git diff --check - -echo "[CI] Compiling Python tools" -python3 -m py_compile \ - python3 -m prg32 \ - tools/prg32_metrics_paper.py - -echo "[CI] Running unit tests" -python3 -m unittest discover -s tests - -echo "[CI] Running host-only cartridge doctor" -python3 -m prg32 doctor --host-only - -echo "[CI] Host smoke test passed" diff --git a/scripts/esp32c6/flash.sh b/scripts/esp32c6/flash.sh deleted file mode 100755 index 4eed708..0000000 --- a/scripts/esp32c6/flash.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env bash -set -e -idf.py set-target esp32c6 -idf.py build -idf.py flash monitor diff --git a/scripts/qemu/build_qemu.ps1 b/scripts/qemu/build_qemu.ps1 deleted file mode 100644 index ad5263f..0000000 --- a/scripts/qemu/build_qemu.ps1 +++ /dev/null @@ -1,5 +0,0 @@ -$ErrorActionPreference = "Stop" - -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -Write-Host "QEMU input: focus this terminal; arrows or W/A/S/D = joystick 1, Enter/Space = SELECT, J/Z = A, K/X = B" -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor diff --git a/scripts/qemu/build_qemu.sh b/scripts/qemu/build_qemu.sh deleted file mode 100755 index a5ab59c..0000000 --- a/scripts/qemu/build_qemu.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash - -# If BUILDQEMU_SH_INCLUDED is already set, stop reading this file -if [ -n "${BUILDQEMU_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly BUILDQEMU_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" -. "$ROOT_DIR/scripts/utilities/logging.sh" - -build_qemu() { - step "Configuring QEMU target (esp32c3)" - idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 - - step "Building QEMU firmware and flash_image" - idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor - - [[ -f "$BUILD_DIR/PRG32.elf" ]] || die "Missing $BUILD_DIR/PRG32.elf after build." - log_info "Firmware build ready" - step "Running QEMU" -} - -main() { - set -e - build_qemu -} - -# Only run main if the script is being executed directly, not sourced -if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then - main "$@" -fi \ No newline at end of file diff --git a/scripts/qemu/launch_qemu.sh b/scripts/qemu/launch_qemu.sh deleted file mode 100755 index 42638db..0000000 --- a/scripts/qemu/launch_qemu.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env bash - -# If LAUNCHQEMU_SH_INCLUDED is already set, stop reading this file -if [ -n "${LAUNCHQEMU_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly LAUNCHQEMU_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" -. "$ROOT_DIR/scripts/utilities/logging.sh" - -launch_qemu() { - log_info "Launching QEMU" - log_info "Press Ctrl + ] to exit" - exec qemu-system-riscv32 \ - -M esp32c3 \ - -m 4M \ - -drive "file=$QEMU_IMAGE,if=mtd,format=raw" \ - -drive "file=$QEMU_EFUSE,if=none,format=raw,id=efuse" \ - -global "driver=nvram.esp32c3.efuse,property=drive,value=efuse" \ - -global "driver=timer.esp32c3.timg,property=wdt_disable,value=true" \ - -nic user,model=open_eth \ - -display sdl \ - -serial mon:stdio -} - -main() { - set -e - launch_qemu -} - -# Only run main if the script is being executed directly, not sourced -if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then - main "$@" -fi \ No newline at end of file diff --git a/scripts/qemu/load_cart.sh b/scripts/qemu/load_cart.sh deleted file mode 100755 index 40c2d12..0000000 --- a/scripts/qemu/load_cart.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" -. "$ROOT_DIR/scripts/utilities/logging.sh" -. "$ROOT_DIR/scripts/utilities/environment_check.sh" -. "$ROOT_DIR/scripts/qemu/build_qemu.sh" -. "$ROOT_DIR/scripts/cartridge/build_cartridge.sh" - -require_cmd() { - local cmd="$1" - local hint="$2" - if ! command -v "$cmd" >/dev/null 2>&1; then - fail "$cmd not found. $hint" - fi -} - -list_games() { - step "Listing available games" - local found=0 - local d - for d in "$GAMES_DIR"/*; do - if [[ -d "$d" && -f "$d/graphics/game.S" ]]; then - basename "$d" - found=1 - fi - done - - if [[ "$found" -eq 0 ]]; then - fail "No games found under $GAMES_DIR" - fi -} - -usage() { - cat <<'USAGE' -Usage: - ./scripts/load_cart.sh - ./scripts/load_cart.sh list - -Examples: - ./scripts/load_cart.sh pong - ./scripts/load_cart.sh list -USAGE -} - -main() { - cd "$ROOT_DIR" - - if [[ "$#" -ne 1 ]]; then - usage - exit 1 - fi - - local arg="$1" - if [[ "$arg" == "list" ]]; then - list_games - exit 0 - fi - - check_python - load_idf_env - validate_project_layout - ensure_qemu_flash - ensure_qemu_efuse - ensure_qemu_firmware - - # 1. Explicitly construct the source and destination paths - local source_file="$GAMES_DIR/$arg/graphics/game.S" - local cart_file="$BUILD_DIR/${arg}.prg32" - - # 2. Invoke the updated build_cartridge with both arguments - build_cartridge "$source_file" "$cart_file" - - # 3. Inject the compiled cartridge binary - inject_cartridge "$cart_file" -} - -main "$@" \ No newline at end of file diff --git a/scripts/qemu/qemu_inject_cartridge.sh b/scripts/qemu/qemu_inject_cartridge.sh deleted file mode 100755 index 765f2ce..0000000 --- a/scripts/qemu/qemu_inject_cartridge.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env bash - -# If INJECTQEMU_SH_INCLUDED is already set, stop reading this file -if [ -n "${INJECTQEMU_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly INJECTQEMU_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" -. "$ROOT_DIR/scripts/utilities/logging.sh" - -inject_cartridge() { -local cart_path="$1" - - # Ensure the file exists and has the correct extension - if [[ ! -f "$cart_path" ]]; then - die "Error: File does not exist: $cart_path" - fi - - if [[ "$cart_path" != *.prg32 ]]; then - die "Error: Input file must be a .prg32 file (got: $cart_path)" - fi - - # Extract the file name for cleaner logging output - local file_name - file_name=$(basename "$cart_path") - - # Perform the injection - log_info "Injecting cartridge '$file_name' into QEMU flash..." - python3 -m prg32 qemu upload "$cart_path" --flash "$QEMU_IMAGE" - - log_ok "Cartridge '$file_name' successfully staged in QEMU flash" -} - -print_usage() { - echo "Usage: $0 " -} - -main() { -if [ "$#" -ne 1 ]; then - print_usage - exit 1 - fi - - inject_cartridge "$1" -} - -# Only run main if the script is being executed directly, not sourced -if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then - main "$@" -fi diff --git a/scripts/qemu/run_qemu.sh b/scripts/qemu/run_qemu.sh deleted file mode 100755 index 8deee2e..0000000 --- a/scripts/qemu/run_qemu.sh +++ /dev/null @@ -1,134 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -BUILD_DIR="build-qemu" -SDKCONFIG="$BUILD_DIR/sdkconfig" -SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults.qemu" -FLASH_IMAGE="$BUILD_DIR/qemu_flash.bin" -QEMU_EFUSE="$BUILD_DIR/qemu_efuse.bin" -FLASH_SIZE=$((4 * 1024 * 1024)) - -step() { - echo "[STEP] $1" -} - -info() { - echo "[INFO] $1" -} - -fail() { - echo "[FAIL] $1" >&2 - exit 1 -} - -require_cmd() { - local cmd="$1" - local hint="$2" - if ! command -v "$cmd" >/dev/null 2>&1; then - fail "$cmd not found. $hint" - fi -} - -ensure_idf_env() { - step "Checking ESP-IDF environment" - if [[ -z "${IDF_PATH:-}" ]]; then - fail "IDF_PATH is not set. Source ESP-IDF first (for example: . \$HOME/esp-idf/export.sh)." - fi - - require_cmd idf.py "Source ESP-IDF first (for example: . \$HOME/esp-idf/export.sh)." -} - -ensure_qemu_flash() { - step "Ensuring QEMU flash image exists ($FLASH_IMAGE)" - - if [[ ! -f "$FLASH_IMAGE" ]]; then - info "Creating 4MB QEMU flash image" - mkdir -p "$BUILD_DIR" - dd if=/dev/zero of="$FLASH_IMAGE" bs=1048576 count=4 >/dev/null 2>&1 || \ - fail "Failed to create $FLASH_IMAGE" - fi - - local size - size="$(wc -c < "$FLASH_IMAGE" | tr -d '[:space:]')" - if [[ "$size" != "$FLASH_SIZE" ]]; then - fail "$FLASH_IMAGE has size $size bytes, expected $FLASH_SIZE bytes (4MB)." - fi - - info "QEMU flash image ready (4MB)" -} - -ensure_qemu_efuse() { - step "Ensuring QEMU efuse image exists ($QEMU_EFUSE)" - - if [[ ! -f "$QEMU_EFUSE" ]]; then - python3 - "$QEMU_EFUSE" <<'PY' || fail "Failed to create $QEMU_EFUSE" -from pathlib import Path -import importlib.util -import os -import sys - -out_path = Path(sys.argv[1]) -qemu_ext_path = Path(os.environ["IDF_PATH"]) / "tools" / "idf_py_actions" / "qemu_ext.py" -spec = importlib.util.spec_from_file_location("qemu_ext", qemu_ext_path) -module = importlib.util.module_from_spec(spec) -assert spec and spec.loader -spec.loader.exec_module(module) -out_path.write_bytes(module.QEMU_TARGETS["esp32c3"].default_efuse) -PY - fi - - info "QEMU efuse image ready" -} - -build_qemu_firmware() { - step "Configuring QEMU target (esp32c3)" - idf.py -B "$BUILD_DIR" -D "SDKCONFIG=$SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$SDKCONFIG_DEFAULTS" set-target esp32c3 - - step "Building QEMU firmware" - idf.py -B "$BUILD_DIR" -D "SDKCONFIG=$SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$SDKCONFIG_DEFAULTS" build - - [[ -f "$BUILD_DIR/PRG32.elf" ]] || fail "Missing $BUILD_DIR/PRG32.elf after build." - info "Firmware build ready" -} - -generate_flash_image() { - step "Generating QEMU flash image" - ( - cd "$BUILD_DIR" - python3 -m esptool --chip=esp32c3 merge_bin --output=qemu_flash.bin --fill-flash-size=4MB @flash_args - ) || fail "Failed to generate $FLASH_IMAGE" -} - -run_qemu() { - step "Starting QEMU" - echo - echo "Focus this terminal for input:" - echo " arrows or W/A/S/D = joystick 1, Enter/Space = SELECT" - echo " J/Z = A button, K/X = B button" - echo "Press Ctrl + ] to exit QEMU monitor." - echo - exec qemu-system-riscv32 \ - -M esp32c3 \ - -m 4M \ - -drive "file=$FLASH_IMAGE,if=mtd,format=raw" \ - -drive "file=$QEMU_EFUSE,if=none,format=raw,id=efuse" \ - -global "driver=nvram.esp32c3.efuse,property=drive,value=efuse" \ - -global "driver=timer.esp32c3.timg,property=wdt_disable,value=true" \ - -nic user,model=open_eth \ - -display sdl \ - -serial mon:stdio -} - -main() { - cd "$ROOT_DIR" - ensure_idf_env - build_qemu_firmware - ensure_qemu_flash - ensure_qemu_efuse - generate_flash_image - run_qemu -} - -main "$@" diff --git a/scripts/qemu/run_qemu_demo.sh b/scripts/qemu/run_qemu_demo.sh deleted file mode 100755 index b71dba9..0000000 --- a/scripts/qemu/run_qemu_demo.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -QEMU_BUILD_DIR="build-qemu" -QEMU_SDKCONFIG="$QEMU_BUILD_DIR/sdkconfig" -QEMU_DEFAULTS="profiles/sdkconfig.defaults.qemu" -DEMO_SOURCE="examples/games/asteroids/graphics/game.S" -DEMO_PREFIX="asteroids_graphics" -DEMO_CART="$QEMU_BUILD_DIR/asteroids.prg32" -DEMO_FLASH="$QEMU_BUILD_DIR/qemu_flash.bin" - -fail() { - echo "[FAIL] $1" >&2 - exit 1 -} - -info() { - echo "[INFO] $1" -} - -require_cmd() { - if ! command -v "$1" >/dev/null 2>&1; then - fail "$1 not found. $2" - fi -} - -require_cmd idf.py "Run: . \$HOME/esp-idf/export.sh" -require_cmd python3 "Install Python 3 and retry." -require_cmd riscv32-esp-elf-gcc "Run: . \$HOME/esp-idf/export.sh" - -if [[ -z "${IDF_PATH:-}" ]]; then - fail "ESP-IDF is not sourced (IDF_PATH is empty). Run: . \$HOME/esp-idf/export.sh" -fi - -cd "$ROOT_DIR" - -info "Configuring QEMU target (esp32c3)" -idf.py -B "$QEMU_BUILD_DIR" -D "SDKCONFIG=$QEMU_SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$QEMU_DEFAULTS" set-target esp32c3 - -info "Building QEMU firmware" -idf.py -B "$QEMU_BUILD_DIR" -D "SDKCONFIG=$QEMU_SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$QEMU_DEFAULTS" build - -if [[ ! -f "$QEMU_BUILD_DIR/PRG32.elf" ]]; then - fail "Missing $QEMU_BUILD_DIR/PRG32.elf after build" -fi - -info "Building demo cartridge" -python3 -m prg32 cartridge build \ - "$DEMO_SOURCE" \ - --portable \ - --entry-prefix "$DEMO_PREFIX" \ - --name asteroids \ - --out "$DEMO_CART" - -if [[ ! -f "$DEMO_FLASH" ]]; then - fail "Missing $DEMO_FLASH. Run QEMU once first with tools/qemu.sh." -fi - -info "Staging demo cartridge into QEMU flash" -python3 -m prg32 qemu upload "$DEMO_CART" --flash "$DEMO_FLASH" - -info "Starting QEMU screen" -info "Input: arrows or W/A/S/D = joystick 1, Enter/Space = SELECT, J/Z = A, K/X = B" -exec idf.py -B "$QEMU_BUILD_DIR" -D "SDKCONFIG=$QEMU_SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$QEMU_DEFAULTS" qemu --graphics monitor diff --git a/scripts/qemu/smoke_test.sh b/scripts/qemu/smoke_test.sh deleted file mode 100755 index 844c991..0000000 --- a/scripts/qemu/smoke_test.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -QEMU_BUILD_DIR="build-qemu" -QEMU_SDKCONFIG="$QEMU_BUILD_DIR/sdkconfig" -QEMU_DEFAULTS="profiles/sdkconfig.defaults.qemu" -cd "$ROOT_DIR" - -ok() { - echo "[OK] $1" -} - -fail() { - echo "[FAIL] $1" - exit 1 -} - -warn() { - echo "[WARN] $1" -} - -if ! command -v python3 >/dev/null 2>&1; then - fail "python3 not found (install Python 3 and retry)" -fi - -if ! command -v idf.py >/dev/null 2>&1; then - fail "idf.py not found (run: source ESP-IDF export.sh)" -fi - -if ! command -v riscv32-esp-elf-gcc >/dev/null 2>&1; then - warn "riscv32-esp-elf-gcc not found (run: source ESP-IDF export.sh)" -fi - -run_step() { - local name="$1" - shift - if "$@"; then - ok "$name" - else - fail "$name" - fi -} - -run_step "doctor" python3 -m prg32 doctor - -run_step "set-target-esp32c3" \ - idf.py -B "$QEMU_BUILD_DIR" -D "SDKCONFIG=$QEMU_SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$QEMU_DEFAULTS" set-target esp32c3 - -run_step "build-firmware" \ - idf.py -B "$QEMU_BUILD_DIR" -D "SDKCONFIG=$QEMU_SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$QEMU_DEFAULTS" build - -if [[ ! -f "$QEMU_BUILD_DIR/PRG32.elf" ]]; then - fail "build-firmware (missing $QEMU_BUILD_DIR/PRG32.elf)" -fi -ok "firmware-artifact" - -run_step "build-demo-cartridge" \ - python3 -m prg32 cartridge build \ - examples/games/pong/graphics/game.S \ - --portable \ - --entry-prefix pong_graphics \ - --name pong \ - --out "$QEMU_BUILD_DIR/pong.prg32" - -if [[ ! -f "$QEMU_BUILD_DIR/pong.prg32" ]]; then - fail "build-demo-cartridge (missing $QEMU_BUILD_DIR/pong.prg32)" -fi -ok "cartridge-artifact" - -if python3 - <<'PY' -import subprocess -import time -import sys - -cmd = [ - "idf.py", - "-B", "build-qemu", - "-D", "SDKCONFIG=build-qemu/sdkconfig", - "-D", "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", - "qemu", - "--graphics", - "monitor", -] - -p = subprocess.Popen(cmd) -try: - time.sleep(8) - if p.poll() is not None: - raise SystemExit(f"qemu exited early with code {p.returncode}") -finally: - if p.poll() is None: - p.terminate() - try: - p.wait(timeout=5) - except subprocess.TimeoutExpired: - p.kill() - p.wait(timeout=5) -PY -then - ok "qemu-launch-check" -else - warn "qemu-launch-check failed (non-blocking)" -fi - -if [[ ! -f "$QEMU_BUILD_DIR/qemu_flash.bin" ]]; then - fail "qemu-flash-image missing (run QEMU once with build-qemu/sdkconfig)" -fi -ok "qemu-flash-image" - -run_step "stage-cartridge-qemu" \ - python3 -m prg32 qemu upload \ - "$QEMU_BUILD_DIR/pong.prg32" \ - --flash "$QEMU_BUILD_DIR/qemu_flash.bin" - -ok "smoke-test-complete" -echo "=== SMOKE TEST PASSED ===" -echo "Firmware build, cartridge build, and QEMU staging are functional." diff --git a/scripts/qemu/start.sh b/scripts/qemu/start.sh deleted file mode 100755 index aafb94f..0000000 --- a/scripts/qemu/start.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -# Get the PRG32 Directory -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" -. "$ROOT_DIR/scripts/utilities/environment_check.sh" -. "$ROOT_DIR/scripts/utilities/logging.sh" -. "$ROOT_DIR/scripts/qemu/launch_qemu.sh" -. "$ROOT_DIR/scripts/qemu/qemu_inject_cartridge.sh" -. "$ROOT_DIR/scripts/cartridge/build_cartridge.sh" - - -discover_games() { - GAMES=() - - local d - for d in "$GAMES_DIR"/*; do - if [[ -d "$d" ]]; then - GAMES+=("$(basename "$d")") - fi - done - - if [[ "${#GAMES[@]}" -eq 0 ]]; then - die "No games found in $GAMES_DIR" - fi -} - -print_game_menu() { - local i - - echo - echo "Available games:" - for i in "${!GAMES[@]}"; do - printf "[%d] %s\n" "$((i + 1))" "${GAMES[$i]}" - done - echo - echo "Type a number to run a game" - echo "Type r to rerun last game" - echo "Type q to quit" -} - -run_game_flow() { - local game_name="$1" -# 1. Construct the explicit paths for source and destination - local source_file="$GAMES_DIR/$game_name/graphics/game.S" - local cart_file="$BUILD_DIR/${game_name}.prg32" - - ensure_qemu_efuse - - # 2. Invoke the fixed build_cartridge with both arguments - build_cartridge "$source_file" "$cart_file" - - # 3. Inject the compiled cartridge binary - inject_cartridge "$cart_file" - - launch_qemu -} - -main_loop() { - local last_game="" - local input="" - local idx="" - - while true; do - discover_games - print_game_menu - - if [[ -n "$last_game" ]]; then - printf "Selection (last: %s): " "$last_game" - else - printf "Selection: " - fi - - IFS= read -r input - - case "$input" in - q|Q) - log_info "Goodbye" - exit 0 - ;; - r|R) - if [[ -z "$last_game" ]]; then - log_error "No previously run game. Select a game number first." - continue - fi - run_game_flow "$last_game" - ;; - ''|*[!0-9]*) - log_error "Invalid input: $input" - ;; - *) - idx="$((input - 1))" - if (( idx < 0 || idx >= ${#GAMES[@]} )); then - log_error "Invalid selection number: $input" - continue - fi - last_game="${GAMES[$idx]}" - run_game_flow "$last_game" - ;; - esac - done -} - -main() { - cd "$ROOT_DIR" - log_info "PRG32 QEMU launcher starting" - - check_python - load_idf_env - validate_project_layout - ensure_qemu_flash - ensure_qemu_efuse - ensure_qemu_firmware - main_loop -} - -main "$@" diff --git a/scripts/utilities/env_variables.sh b/scripts/utilities/env_variables.sh deleted file mode 100644 index 687d4dc..0000000 --- a/scripts/utilities/env_variables.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash - -# Script that sets environment variables needed by other scripts. - -# If ENVVARS_SH_INCLUDED is already set, stop reading this file -if [ -n "${ENVVARS_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly ENVVARS_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -export BUILD_DIR="build-qemu" -export GAMES_DIR="examples/games" -export GAME_TOOL="python3 -m prg32" -export QEMU_IMAGE="$BUILD_DIR/qemu_flash.bin" -export QEMU_EFUSE="$BUILD_DIR/qemu_efuse.bin" -export QEMU_ELF="$BUILD_DIR/PRG32.elf" -export SDKCONFIG="$BUILD_DIR/sdkconfig" -export SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults.qemu" -export FLASH_SIZE=$((4 * 1024 * 1024)) \ No newline at end of file diff --git a/scripts/utilities/environment_check.sh b/scripts/utilities/environment_check.sh deleted file mode 100644 index 2efbb10..0000000 --- a/scripts/utilities/environment_check.sh +++ /dev/null @@ -1,160 +0,0 @@ -#!/usr/bin/env bash - -# Various utilities to check or create files when needed for other scripts. - -# If ENVCHECK_SH_INCLUDED is already set, stop reading this file -if [ -n "${ENVCHECK_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly ENVCHECK_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -. "$ROOT_DIR/scripts/utilities/env_variables.sh" - -find_idf_root() { - step "Checking ESP-IDF path" - local candidate - - if [[ -n "${IDF_PATH:-}" && -f "$IDF_PATH/export.sh" ]]; then - printf '%s\n' "$IDF_PATH" - return 0 - fi - - for candidate in "$HOME/esp-idf" "$HOME/Desktop/esp-idf"; do - if [[ -f "$candidate/export.sh" ]]; then - printf '%s\n' "$candidate" - return 0 - fi - done - - # Error - return 1 -} - -check_qemu_runtime_deps() { - local qemu_output - if ! qemu_output="$(qemu-system-riscv32 -machine help 2>&1)"; then - if [[ "$qemu_output" == *"libslirp"* ]]; then - log_error "qemu-system-riscv32 failed due to missing libslirp." - cat <<'EOF_FIX' -Run: -brew install libslirp -EOF_FIX - exit 1 - fi - die "qemu-system-riscv32 failed to start: $qemu_output" - fi - log_ok "qemu-system-riscv32 runtime check passed" -} - -validate_project_layout() { - [[ -f "$GAME_TOOL" ]] || die "Missing $GAME_TOOL. Run this script from the PRG32 repository root." - [[ -d "$GAMES_DIR" ]] || die "Missing $GAMES_DIR. Run this script from the PRG32 repository root." - - if [[ ! -d "$BUILD_DIR" ]]; then - log_info "$BUILD_DIR is missing; creating it" - mkdir -p "$BUILD_DIR" - fi - - log_ok "Project layout looks valid" -} - -load_idf_env() { - # Helper function to prevent repeating the validation checks - _has_idf_tools() { - command -v idf.py >/dev/null 2>&1 && command -v riscv32-esp-elf-gcc >/dev/null 2>&1 - } - - if _has_idf_tools; then - log_ok "ESP-IDF already loaded" - return 0 - fi - - local idf_root - if ! idf_root="$(find_idf_root)"; then - fail "ESP-IDF not loaded and no local checkout was found." - cat <<'EOF_FIX' -Run one of these commands after installing ESP-IDF: -. ~/esp-idf/export.sh -. ~/Desktop/esp-idf/export.sh -EOF_FIX - exit 1 - fi - - log_info "Loading ESP-IDF from $idf_root" - # shellcheck disable=SC1090 - source "$idf_root/export.sh" - - # Re-use the helper function after sourcing - if ! _has_idf_tools; then - die "ESP-IDF export loaded from $idf_root, but essential tools (idf.py or riscv32-esp-elf-gcc) are still unavailable." - fi - - log_ok "ESP-IDF environment loaded" - - check_qemu_runtime_deps -} - -check_python() { - if ! command -v python3 >/dev/null 2>&1; then - die "python3 not found. Install Python 3 first (for example: brew install python)." - fi - log_ok "python3 detected" -} - -# If the flash image doesn't exist, an empty flash image is generated -ensure_qemu_flash() { - step "Ensuring QEMU flash image exists ($QEMU_IMAGE)" - - if [[ ! -f "$QEMU_IMAGE" ]]; then - log_info "Creating 4MB QEMU flash image" - mkdir -p "$BUILD_DIR" - dd if=/dev/zero of="$QEMU_IMAGE" bs=1048576 count=4 >/dev/null 2>&1 || \ - fail "Failed to create $QEMU_IMAGE" - fi - - local size - size="$(wc -c < "$QEMU_IMAGE" | tr -d '[:space:]')" - if [[ "$size" != "$FLASH_SIZE" ]]; then - fail "$QEMU_IMAGE has size $size bytes, expected $FLASH_SIZE bytes (4MB)." - fi - - log_info "QEMU flash image ready (4MB)" -} - -ensure_qemu_efuse() { - step "Ensuring QEMU efuse image exists ($QEMU_EFUSE)" - - if [[ ! -f "$QEMU_EFUSE" ]]; then - python3 - "$QEMU_EFUSE" <<'PY' || fail "Failed to create $QEMU_EFUSE" -from pathlib import Path -import importlib.util -import os -import sys - -out_path = Path(sys.argv[1]) -qemu_ext_path = Path(os.environ["IDF_PATH"]) / "tools" / "idf_py_actions" / "qemu_ext.py" -spec = importlib.util.spec_from_file_location("qemu_ext", qemu_ext_path) -module = importlib.util.module_from_spec(spec) -assert spec and spec.loader -spec.loader.exec_module(module) -out_path.write_bytes(module.QEMU_TARGETS["esp32c3"].default_efuse) -PY - fi - - log_info "QEMU efuse image ready" -} - -ensure_qemu_firmware() { - if [[ -f "$QEMU_ELF" ]]; then - log_ok "QEMU firmware already built ($QEMU_ELF)" - return - fi - - log_info "QEMU firmware missing; running initial build" - idf.py -B "$BUILD_DIR" -D "SDKCONFIG=$SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$SDKCONFIG_DEFAULTS" set-target esp32c3 - idf.py -B "$BUILD_DIR" -D "SDKCONFIG=$SDKCONFIG" -D "SDKCONFIG_DEFAULTS=$SDKCONFIG_DEFAULTS" build - - [[ -f "$QEMU_ELF" ]] || die "Build finished but $QEMU_ELF is still missing." - log_ok "QEMU firmware build complete" -} \ No newline at end of file diff --git a/scripts/utilities/logging.sh b/scripts/utilities/logging.sh deleted file mode 100644 index 482be40..0000000 --- a/scripts/utilities/logging.sh +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/env bash - -# Logging utilities for other scripts. - -# If LOGGING_SH_INCLUDED is already set, stop reading this file -if [ -n "${LOGGING_SH_INCLUDED:-}" ]; then - return 0 2>/dev/null || exit 0 -fi -readonly LOGGING_SH_INCLUDED=1 - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" -COLOR_RESET="" -COLOR_RED="" -COLOR_GREEN="" -COLOR_YELLOW="" - -# Only outputs color if not writing to file and colors are supported by the terminal -if [[ -t 1 ]] && command -v tput >/dev/null 2>&1; then - if [[ "$(tput colors 2>/dev/null || echo 0)" -ge 8 ]]; then - COLOR_RESET="$(tput sgr0)" - COLOR_RED="$(tput setaf 1)" - COLOR_GREEN="$(tput setaf 2)" - COLOR_YELLOW="$(tput setaf 3)" - fi -fi - -log_info() { - echo "${COLOR_YELLOW}[INFO]${COLOR_RESET} $1" -} - -log_ok() { - echo "${COLOR_GREEN}[OK]${COLOR_RESET} $1" -} - -log_error() { - echo "${COLOR_RED}[ERROR]${COLOR_RESET} $1" >&2 -} - -step() { - echo "${COLOR_YELLOW}[INFO]${COLOR_RESET} $1" -} - -fail() { - echo "[FAIL] $1" >&2 -} - -die() { - log_error "$1" - exit 1 -} \ No newline at end of file From bf390c0fc85adc29b5d5b663b7f27fe284b75618 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Mon, 14 Sep 2026 11:07:21 +0200 Subject: [PATCH 06/12] chore(deploy): added hardcoded paths from PlatformIO to gitignore --- .gitignore | 2 + .vscode/c_cpp_properties.json | 368 ---------------------------------- .vscode/launch.json | 53 ----- 3 files changed, 2 insertions(+), 421 deletions(-) delete mode 100644 .vscode/c_cpp_properties.json delete mode 100644 .vscode/launch.json diff --git a/.gitignore b/.gitignore index fb93fc3..2aecb9f 100644 --- a/.gitignore +++ b/.gitignore @@ -76,6 +76,8 @@ Testing/ # Local environment configuration prg32_env.h +.vscode/c_cpp_properties.json +.vscode/launch.json # Local Python tooling .venv/ diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json deleted file mode 100644 index fa53470..0000000 --- a/.vscode/c_cpp_properties.json +++ /dev/null @@ -1,368 +0,0 @@ -// -// !!! WARNING !!! AUTO-GENERATED FILE! -// PLEASE DO NOT MODIFY IT AND USE "platformio.ini": -// https://docs.platformio.org/page/projectconf/section_env_build.html#build-flags -// -{ - "configurations": [ - { - "name": "PlatformIO", - "includePath": [ - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/riscv/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/.pio/build/prg32-esp32c6/config", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/newlib/platform_include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/config/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/config/include/freertos", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/config/riscv/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/FreeRTOS-Kernel/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/FreeRTOS-Kernel/portable/riscv/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/FreeRTOS-Kernel/portable/riscv/include/freertos", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/esp_additions/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/include/soc", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/include/soc/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/dma/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/ldo/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/debug_probe/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/port/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/port/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/port/esp32c6/private_include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/heap/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/heap/tlsf", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/log/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/esp32c6/register", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/hal/platform_port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/hal/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/hal/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/esp32c6/include/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_common/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/port/soc", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/port/include/riscv", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/port/include/private", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/include/apps", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/include/apps/sntp", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/lwip/src/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/freertos/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/esp32xx/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/esp32xx/include/arch", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/esp32xx/include/sys", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_gpio/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_timer/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_pm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/library", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/esp_crt_bundle/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/3rdparty/everest/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/3rdparty/p256-m", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/3rdparty/p256-m/p256-m", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_app_format/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_bootloader_format/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/app_update/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/bootloader_support/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/bootloader_support/bootloader_flash/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_partition/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/efuse/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/efuse/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_mm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/spi_flash/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_security/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/pthread/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_gptimer/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_ringbuf/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_uart/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/vfs/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/app_trace/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_event/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/nvs_flash/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_pcnt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_spi/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_mcpwm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_ana_cmpr/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_i2s/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/sdmmc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdmmc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdspi/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdio/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_dac/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_rmt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_tsens/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_i2c/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_ledc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_parlio/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_usb_serial_jtag/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/deprecated", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/i2c/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/touch_sensor/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/twai/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_phy/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_phy/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_vfs_console/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_netif/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wpa_supplicant/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wpa_supplicant/port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wpa_supplicant/esp_supplicant/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_coex/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/include/local", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/wifi_apps/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/wifi_apps/nan_app/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/unity/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/unity/unity/src", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/cmock/CMock/src", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/console", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/http_parser", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp-tls", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp-tls/esp-tls-crypto", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/interface", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/deprecated/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_isp/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_cam/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_cam/interface", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_jpeg/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_ppa/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_eth/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_gdbstub/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hid/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/tcp_transport/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_http_client/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_http_server/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_https_ota/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_https_server/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_psram/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_lcd/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_lcd/interface", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protobuf-c/protobuf-c", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/common", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/security", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/transports", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/crypto/srp6a", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/proto-c", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_local_ctrl/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/espcoredump/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/espcoredump/include/port/riscv", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wear_levelling/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/fatfs/diskio", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/fatfs/src", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/fatfs/vfs", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/idf_test/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/idf_test/include/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/ieee802154/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/json/cJSON", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mqtt/esp-mqtt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/nvs_sec_provider/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/rt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/spiffs/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wifi_provisioning/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/components/prg32_audio/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/managed_components/espressif__esp_websocket_client/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/managed_components/espressif__mdns/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/components/prg32/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/main", - "" - ], - "browse": { - "limitSymbolsToIncludedHeaders": true, - "path": [ - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/riscv/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/.pio/build/prg32-esp32c6/config", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/newlib/platform_include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/config/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/config/include/freertos", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/config/riscv/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/FreeRTOS-Kernel/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/FreeRTOS-Kernel/portable/riscv/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/FreeRTOS-Kernel/portable/riscv/include/freertos", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/freertos/esp_additions/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/include/soc", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/include/soc/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/dma/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/ldo/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/debug_probe/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/port/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/port/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hw_support/port/esp32c6/private_include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/heap/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/heap/tlsf", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/log/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/soc/esp32c6/register", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/hal/platform_port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/hal/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/hal/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/esp32c6/include/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_rom/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_common/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/port/soc", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/port/include/riscv", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_system/port/include/private", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/include/apps", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/include/apps/sntp", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/lwip/src/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/freertos/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/esp32xx/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/esp32xx/include/arch", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/lwip/port/esp32xx/include/sys", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_gpio/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_timer/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_pm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/library", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/esp_crt_bundle/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/3rdparty/everest/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/3rdparty/p256-m", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mbedtls/mbedtls/3rdparty/p256-m/p256-m", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_app_format/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_bootloader_format/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/app_update/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/bootloader_support/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/bootloader_support/bootloader_flash/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_partition/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/efuse/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/efuse/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_mm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/spi_flash/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_security/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/pthread/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_gptimer/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_ringbuf/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_uart/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/vfs/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/app_trace/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_event/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/nvs_flash/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_pcnt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_spi/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_mcpwm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_ana_cmpr/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_i2s/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/sdmmc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdmmc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdspi/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdio/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_dac/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_rmt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_tsens/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_sdm/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_i2c/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_ledc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_parlio/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_usb_serial_jtag/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/deprecated", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/i2c/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/touch_sensor/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/driver/twai/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_phy/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_phy/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_vfs_console/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_netif/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wpa_supplicant/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wpa_supplicant/port/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wpa_supplicant/esp_supplicant/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_coex/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/include/local", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/wifi_apps/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_wifi/wifi_apps/nan_app/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/unity/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/unity/unity/src", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/cmock/CMock/src", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/console", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/http_parser", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp-tls", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp-tls/esp-tls-crypto", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/interface", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/esp32c6/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_adc/deprecated/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_isp/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_cam/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_cam/interface", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_jpeg/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_driver_ppa/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_eth/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_gdbstub/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_hid/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/tcp_transport/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_http_client/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_http_server/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_https_ota/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_https_server/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_psram/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_lcd/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_lcd/interface", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protobuf-c/protobuf-c", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/common", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/security", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/transports", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/include/crypto/srp6a", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/protocomm/proto-c", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/esp_local_ctrl/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/espcoredump/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/espcoredump/include/port/riscv", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wear_levelling/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/fatfs/diskio", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/fatfs/src", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/fatfs/vfs", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/idf_test/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/idf_test/include/esp32c6", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/ieee802154/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/json/cJSON", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/mqtt/esp-mqtt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/nvs_sec_provider/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/rt/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/spiffs/include", - "/Users/raffaelemontella/.platformio/packages/framework-espidf/components/wifi_provisioning/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/components/prg32_audio/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/managed_components/espressif__esp_websocket_client/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/managed_components/espressif__mdns/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/components/prg32/include", - "/Users/raffaelemontella/PlatformioIOProjects/PRG32/main", - "" - ] - }, - "defines": [ - "_POSIX_READER_WRITER_LOCKS", - "_GNU_SOURCE", - "_GLIBCXX_USE_POSIX_SEMAPHORE", - "_GLIBCXX_HAVE_POSIX_SEMAPHORE", - "SOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ", - "SOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE", - "PRG32_FIRMWARE_VERSION=\"ab088fd-dirty\"", - "IDF_VER=\"5.4.1\"", - "ESP_PLATFORM", - "PLATFORMIO=60119", - "" - ], - "cStandard": "gnu17", - "cppStandard": "gnu++23", - "compilerPath": "/Users/raffaelemontella/.platformio/packages/toolchain-riscv32-esp/bin/riscv32-esp-elf-gcc", - "compilerArgs": [ - "-march=rv32imac_zicsr_zifencei", - "" - ] - } - ], - "version": 4 -} diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index 7526738..0000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,53 +0,0 @@ -// AUTOMATICALLY GENERATED FILE. PLEASE DO NOT MODIFY IT MANUALLY -// -// PlatformIO Debugging Solution -// -// Documentation: https://docs.platformio.org/en/latest/plus/debugging.html -// Configuration: https://docs.platformio.org/en/latest/projectconf/sections/env/options/debug/index.html - -{ - "version": "0.2.0", - "configurations": [ - { - "name": "PRG32: ESP-IDF debug", - "type": "espidf", - "request": "launch", - "initGdbCommands": [ - "set disassemble-next-line on", - "set print pretty on" - ] - }, - { - "type": "platformio-debug", - "request": "launch", - "name": "PIO Debug", - "executable": "/Users/raffaelemontella/PlatformioIOProjects/PRG32/.pio/build/prg32-esp32c6/firmware.elf", - "projectEnvName": "prg32-esp32c6", - "toolchainBinDir": "/Users/raffaelemontella/.platformio/packages/toolchain-riscv32-esp/bin", - "internalConsoleOptions": "openOnSessionStart", - "preLaunchTask": { - "type": "PlatformIO", - "task": "Pre-Debug" - } - }, - { - "type": "platformio-debug", - "request": "launch", - "name": "PIO Debug (skip Pre-Debug)", - "executable": "/Users/raffaelemontella/PlatformioIOProjects/PRG32/.pio/build/prg32-esp32c6/firmware.elf", - "projectEnvName": "prg32-esp32c6", - "toolchainBinDir": "/Users/raffaelemontella/.platformio/packages/toolchain-riscv32-esp/bin", - "internalConsoleOptions": "openOnSessionStart" - }, - { - "type": "platformio-debug", - "request": "launch", - "name": "PIO Debug (without uploading)", - "executable": "/Users/raffaelemontella/PlatformioIOProjects/PRG32/.pio/build/prg32-esp32c6/firmware.elf", - "projectEnvName": "prg32-esp32c6", - "toolchainBinDir": "/Users/raffaelemontella/.platformio/packages/toolchain-riscv32-esp/bin", - "internalConsoleOptions": "openOnSessionStart", - "loadMode": "manual" - } - ] -} From 660d54ff040d435caf51f34caac6489124a3e608 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Mon, 14 Sep 2026 12:07:40 +0200 Subject: [PATCH 07/12] feat(profiles): exposed PRG32_WIFI_BOOT_MODE, PRG32_WIFI_BOOT_MODE_AP, PRG32_WIFI_BOOT_MODE_STA, PRG32_WIFI_SSID and PRG32_WIFI_PASSWORD in KConfig. These can be modified with the python tooling with new "prg32 wifi" and "prg32 store" commands. The sdkconfig.defaults has now been separated from sdkconfig.defaults.esp32c6 to allow base defaults to apply to all configurations. The commands use a local "sdkconfig.local" file that is untracked to store the wifi and store settings for future local builds. CMakeLists was updated for this new build process. --- .vscode/tasks.json | 12 ++-- CMakeLists.txt | 19 +++++++ components/prg32/Kconfig | 36 ++++++++++++ docs/agents/vscode_setup.md | 2 +- docs/cartridge_store/cartridge_store.md | 10 ++++ docs/learn/labs/lab_03_graphics.md | 2 +- docs/learn/tutorial_c_game.md | 4 +- docs/learn/tutorial_graphic_game.md | 2 +- docs/measurement/metrics_api.md | 6 +- .../scientific_measurement_tutorial.md | 8 +-- docs/software/framework_manual.md | 2 +- docs/usage/getting_started.md | 6 +- docs/usage/network.md | 26 ++++----- docs/usage/profiles.md | 14 +++-- examples/features/README.md | 4 +- examples/games/README.md | 12 ++-- main/prg32_config.h | 18 ++---- main/prg32_env_example.h | 14 ----- prg32/prg32.py | 27 +++++++++ prg32/store/config_cli.py | 22 +++++++ prg32/utilities/env_variables.py | 4 +- prg32/utilities/local_config.py | 57 +++++++++++++++++++ prg32/wifi/__init__.py | 1 + prg32/wifi/wifi_cli.py | 43 ++++++++++++++ profiles/sdkconfig.defaults | 8 +-- profiles/sdkconfig.defaults.esp32c6 | 9 +++ profiles/sdkconfig.defaults.qemu | 7 +-- 27 files changed, 291 insertions(+), 84 deletions(-) delete mode 100644 main/prg32_env_example.h create mode 100644 prg32/store/config_cli.py create mode 100644 prg32/utilities/local_config.py create mode 100644 prg32/wifi/__init__.py create mode 100644 prg32/wifi/wifi_cli.py create mode 100644 profiles/sdkconfig.defaults.esp32c6 diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 9a8a703..d47a398 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -80,7 +80,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu", "set-target", "esp32c3" ], @@ -96,7 +96,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "build" @@ -114,7 +114,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "qemu", @@ -133,7 +133,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "qemu", @@ -153,7 +153,7 @@ "-D", "SDKCONFIG=build-qemu/sdkconfig", "-D", - "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu", + "SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu", "-D", "IDF_TARGET=esp32c3", "gdb" @@ -278,4 +278,4 @@ "default": "http://192.168.4.1" } ] -} +} \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 6db6c01..9c81afd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,6 +16,25 @@ if(NOT PRG32_FIRMWARE_VERSION) endif() set(PROJECT_VER "${PRG32_FIRMWARE_VERSION}") +set(EXTRA_CONFIGS "") +if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/profiles/sdkconfig.defaults.local") + set(EXTRA_CONFIGS "${CMAKE_CURRENT_LIST_DIR}/profiles/sdkconfig.defaults.local") +endif() + +if(EXTRA_CONFIGS) + if(DEFINED ENV{SDKCONFIG_DEFAULTS}) + set(SDKCONFIG_DEFAULTS "$ENV{SDKCONFIG_DEFAULTS};${EXTRA_CONFIGS}") + elseif(DEFINED SDKCONFIG_DEFAULTS) + set(SDKCONFIG_DEFAULTS "${SDKCONFIG_DEFAULTS};${EXTRA_CONFIGS}") + else() + if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/sdkconfig.defaults") + set(SDKCONFIG_DEFAULTS "sdkconfig.defaults;${EXTRA_CONFIGS}") + else() + set(SDKCONFIG_DEFAULTS "${EXTRA_CONFIGS}") + endif() + endif() +endif() + include($ENV{IDF_PATH}/tools/cmake/project.cmake) project(PRG32) diff --git a/components/prg32/Kconfig b/components/prg32/Kconfig index db9170f..9bb2002 100644 --- a/components/prg32/Kconfig +++ b/components/prg32/Kconfig @@ -195,6 +195,42 @@ config PRG32_STORE_URL Example: http://192.168.1.42:5080 In QEMU builds, mDNS is unavailable; set this to reach a LAN server. +menu "Wi-Fi Configuration" + +choice PRG32_WIFI_BOOT_MODE + prompt "Wi-Fi Boot Mode" + default PRG32_WIFI_BOOT_MODE_AP + help + Select the initial Wi-Fi mode at boot. + Access Point (AP) mode hosts its own network. + Infrastructure (STA) mode connects to an existing network. + +config PRG32_WIFI_BOOT_MODE_AP + bool "Access Point (AP)" + help + The board creates its own network (e.g. SSID "PRG32"). + +config PRG32_WIFI_BOOT_MODE_STA + bool "Infrastructure (STA)" + help + The board connects to an existing local network. + +endchoice + +config PRG32_WIFI_SSID + string "Wi-Fi SSID" + default "PRG32" + help + The SSID of the network. If in AP mode, this is the network name + broadcasted by the device. If in STA mode, this is the network + to connect to. + +config PRG32_WIFI_PASSWORD + string "Wi-Fi Password" + default "prg32game" + help + The password of the network. Must be at least 8 characters for WPA2. + endmenu endmenu diff --git a/docs/agents/vscode_setup.md b/docs/agents/vscode_setup.md index 14cd8b1..1ead54b 100644 --- a/docs/agents/vscode_setup.md +++ b/docs/agents/vscode_setup.md @@ -14,7 +14,7 @@ Tasks should remain simple wrappers around: - `idf.py menuconfig` - `idf.py build` - `idf.py flash monitor` -- `idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor` +- `idf.py -B build-qemu -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor` - `idf.py -B build-qemu gdb` - `tools/qemu.sh` and `tools/qemu.ps1` - `python3 -m prg32 cartridge build ...` diff --git a/docs/cartridge_store/cartridge_store.md b/docs/cartridge_store/cartridge_store.md index 0db0ca8..f2a9909 100644 --- a/docs/cartridge_store/cartridge_store.md +++ b/docs/cartridge_store/cartridge_store.md @@ -170,6 +170,16 @@ For fixed classroom deployments, you can bake the store URL directly into the fi CONFIG_PRG32_STORE_URL="http://192.168.1.42:5080" ``` +You can also set or clear the Cartridge Store URL locally using the Python CLI, which updates your `profiles/sdkconfig.defaults.local` file without modifying tracked files: + +```bash +# Set the Cartridge Store URL +python3 -m prg32 store set-url "http://192.168.1.42:5080" + +# Clear the local URL override +python3 -m prg32 store clear-url +``` + ### Host Tools Configuration (Python) When using the host-side Python tooling (e.g., publishing or downloading from your PC), you can pass the configuration as CLI flags (`--store-url` and `--token`) or save them in a JSON config file to avoid typing them every time. CLI flags override the JSON config. diff --git a/docs/learn/labs/lab_03_graphics.md b/docs/learn/labs/lab_03_graphics.md index 6d78fff..23f2584 100644 --- a/docs/learn/labs/lab_03_graphics.md +++ b/docs/learn/labs/lab_03_graphics.md @@ -39,7 +39,7 @@ virtual screen. For QEMU: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` Optional extension: build your rectangle game as a `.prg32` cartridge and diff --git a/docs/learn/tutorial_c_game.md b/docs/learn/tutorial_c_game.md index 797bff8..a5fb0b5 100644 --- a/docs/learn/tutorial_c_game.md +++ b/docs/learn/tutorial_c_game.md @@ -110,8 +110,8 @@ Or build for QEMU: On Windows: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` On Linux or MacOS: diff --git a/docs/learn/tutorial_graphic_game.md b/docs/learn/tutorial_graphic_game.md index d9d9b10..d1dccbb 100644 --- a/docs/learn/tutorial_graphic_game.md +++ b/docs/learn/tutorial_graphic_game.md @@ -183,7 +183,7 @@ For a desktop graphics test, run: On Windows: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` On Linux or MacOS: diff --git a/docs/measurement/metrics_api.md b/docs/measurement/metrics_api.md index a0ae111..3e1bcc1 100644 --- a/docs/measurement/metrics_api.md +++ b/docs/measurement/metrics_api.md @@ -180,11 +180,11 @@ with the normal board defaults: ```bash idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.metrics" \ set-target esp32c6 idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.metrics" \ build ``` @@ -323,7 +323,7 @@ plots when `matplotlib` is installed. - For reproducible scientific measurements, use - `profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics` as described in + `profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.metrics` as described in [Scientific Measurement Tutorial](scientific_measurement_tutorial.md). ## Development Guide diff --git a/docs/measurement/scientific_measurement_tutorial.md b/docs/measurement/scientific_measurement_tutorial.md index 1a59f26..6fd693d 100644 --- a/docs/measurement/scientific_measurement_tutorial.md +++ b/docs/measurement/scientific_measurement_tutorial.md @@ -79,12 +79,12 @@ Use the normal ESP32-C6 defaults plus the metrics profile: ```bash idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.metrics" \ set-target esp32c6 idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.metrics" \ build ``` @@ -110,7 +110,7 @@ For ESP32-C6 hardware: ```bash idf.py -B build-esp32c6-metrics \ -D SDKCONFIG=build-esp32c6-metrics/sdkconfig \ - -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.metrics" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.metrics" \ flash monitor ``` @@ -120,7 +120,7 @@ On Windows: ```bash idf.py -B build-qemu \ -D SDKCONFIG=build-qemu/sdkconfig \ - -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" \ qemu --graphics monitor ``` diff --git a/docs/software/framework_manual.md b/docs/software/framework_manual.md index c068f25..4b4f444 100644 --- a/docs/software/framework_manual.md +++ b/docs/software/framework_manual.md @@ -123,7 +123,7 @@ Display backend selection: Use the QEMU defaults file when running on a desktop: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` When the QEMU backend is selected, `main/prg32_config.h` disables physical GPIO diff --git a/docs/usage/getting_started.md b/docs/usage/getting_started.md index e8d94ba..74d1c73 100644 --- a/docs/usage/getting_started.md +++ b/docs/usage/getting_started.md @@ -184,8 +184,12 @@ python3 -m prg32 cartridge build \ --out ../work/hello_world/hello_world.prg32 ``` -Boot up the ESP32C6 to the setup menu and make sure that your computer and the board are connected to the **same WiFi**. To do this, you can set up an Access Point on the ESP32C6, or you can connect to a local WiFi network. See the [Network](network.md) documentation file for more information. +Boot up the ESP32C6 to the setup menu and make sure that your computer and the board are connected to the **same WiFi**. +> [!TIP] +> You can pre-configure your board's Wi-Fi connection *before* building the firmware by running: +> `python3 -m prg32 wifi set --ssid "YourSSID" --password "YourPwd" --mode sta` +> This avoids having to configure it on the physical board's screen. Upload the cartridge to the board. ``` python3 -m prg32 esp32c6 upload ../work/hello_world/hello_world.prg32 diff --git a/docs/usage/network.md b/docs/usage/network.md index 1ab3e50..0c93d42 100644 --- a/docs/usage/network.md +++ b/docs/usage/network.md @@ -33,27 +33,27 @@ In Station mode (`PRG32_WIFI_MODE_STA`), the IP address will be assigned by the QEMU builds keep physical Wi-Fi disabled by default (`CONFIG_PRG32_DISPLAY_QEMU_RGB`), but games can still compile against the same API and exercise setup screens. However, mDNS, CartridgeStore downloads, and multiplayer capabilities generally require specific forwarding or bridging on the virtual QEMU network to function, or they rely on local configuration overrides. -## Advanced: Hardcoding Wi-Fi Credentials +## Advanced: Pre-configuring Wi-Fi Credentials For advanced users or developers who frequently flash the firmware, it can be tedious to manually configure the network via the setup menu on every full wipe. -You can automatically provide your infrastructure Wi-Fi credentials at compile time by using the environment header: +You can use the PRG32 Python tooling to set your Wi-Fi credentials *before* building. These credentials will be securely merged into your local build environment without touching tracked source files. -1. Copy `main/prg32_env_example.h` and rename the copy to `main/prg32_env.h`. -2. Edit `main/prg32_env.h` and replace the placeholder values with your actual network credentials: +To set your Wi-Fi configuration, run the following command in the PRG32 root: -```c -#ifndef PRG32_ENV_H -#define PRG32_ENV_H - -#define PRG32_WIFI_SSID "YOUR_WIFI_SSID" -#define PRG32_WIFI_PASSWORD "YOUR_WIFI_PASSWORD" - -#endif +```bash +python3 -m prg32 wifi set --ssid "YOUR_WIFI_SSID" --password "YOUR_WIFI_PASSWORD" --mode sta ``` -This ensures your board automatically connects to the designated Wi-Fi when running in `PRG32_WIFI_MODE_STA` or `PRG32_WIFI_MODE_APSTA`, keeping your development process streamlined. +- `--mode`: Can be `sta` (connect to an existing network) or `ap` (create your own access point). +- The tooling saves this to `profiles/sdkconfig.defaults.local`, which is ignored by Git, ensuring you don't accidentally commit your network password. +- You only need to run this command once. It will be remembered for all future builds. +To clear the credentials and return to the default behavior: + +```bash +python3 -m prg32 wifi clear +``` ## Development Guide > [!IMPORTANT] diff --git a/docs/usage/profiles.md b/docs/usage/profiles.md index 6fb753c..c0bbac4 100644 --- a/docs/usage/profiles.md +++ b/docs/usage/profiles.md @@ -1,15 +1,21 @@ # PRG32 Profiles -PRG32 uses different RAM profiles to adjust how much internal executable RAM the resident firmware reserves for uploadable cartridges. The active profile dictates the cartridge size limits and the available drawing features. +PRG32 uses different SDK configuration profiles to adjust how the resident firmware is built. While some profiles adjust the available RAM for uploadable cartridges, others configure the framework for different hardware targets (like the QEMU emulator) or enable runtime features like metrics streaming. The active profile dictates the cartridge size limits, available drawing features, and the target platform. -## Default Profiles +## Base Profiles - **Classroom Profile (32 KiB)**: An optional smaller window for builds that prioritize resident-runtime heap. - **Extended Profile (64 KiB)**: The default for physical ESP32-C6 and QEMU builds. The default stored package limit is also 64 KiB. +- **QEMU Emulator Profile**: The default used by QEMU emulator builds (`profiles/sdkconfig.defaults.qemu`). It configures the system for the emulator (using `esp32c3` as the target, enabling the RGB display, UART input, and failure on real hardware) and extends cartridge RAM to 64 KiB. Use with: + ```bash + idf.py -B build-qemu -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" set-target esp32c3 + ``` -## 128 KiB ESP32-C6 Profile +## Optional Profiles + +### 128 KiB ESP32-C6 Profile (`sdkconfig.defaults.esp32c6_128k`) The optional physical-board profile reserves 128 KiB of executable cartridge RAM and uses the ILI9341 low-memory renderer: the persistent framebuffer is @@ -19,7 +25,7 @@ during LCD transfer. This keeps the game coordinate system unchanged. Full ```bash idf.py -B build-esp32c6-128k \ - -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6_128k" \ + -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6;profiles/sdkconfig.defaults.esp32c6_128k" \ set-target esp32c6 idf.py -B build-esp32c6-128k build ``` diff --git a/examples/features/README.md b/examples/features/README.md index e4bb18d..1623b10 100644 --- a/examples/features/README.md +++ b/examples/features/README.md @@ -98,8 +98,8 @@ idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAUL Or build for QEMU: ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` Restore the default `main/CMakeLists.txt` and `main/main.c` before committing. diff --git a/examples/games/README.md b/examples/games/README.md index 0783e64..993806d 100644 --- a/examples/games/README.md +++ b/examples/games/README.md @@ -152,8 +152,8 @@ idf.py -B build-esp32c6 -D SDKCONFIG=build-esp32c6/sdkconfig -D SDKCONFIG_DEFAUL ### 4. Or Build for QEMU Graphics Testing ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` QEMU shows the graphics viewport in a desktop window. Use the monitor terminal @@ -244,14 +244,14 @@ cartridge directly into the emulator flash image. ### 1. Build QEMU Firmware ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu build +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" set-target esp32c3 +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" build ``` ### 2. Run QEMU Once to Create the Flash Image ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` Stop QEMU after the first successful launch. This creates @@ -288,7 +288,7 @@ python3 -m prg32 qemu upload \ ### 5. Run QEMU Again ```bash -idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor +idf.py -B build-qemu -D SDKCONFIG=build-qemu/sdkconfig -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" qemu --graphics monitor ``` The resident firmware loads the staged cartridge from the QEMU flash image. diff --git a/main/prg32_config.h b/main/prg32_config.h index 75b552a..3b811d4 100644 --- a/main/prg32_config.h +++ b/main/prg32_config.h @@ -152,16 +152,8 @@ /* Optional Wi-Fi score REST API. Fill credentials before flashing. */ #define PRG32_WIFI_SCORES_ENABLE 0 -#if __has_include("prg32_env.h") -#include "prg32_env.h" -#endif - -#ifndef PRG32_WIFI_SSID -#define PRG32_WIFI_SSID "YOUR_WIFI_SSID" -#endif -#ifndef PRG32_WIFI_PASSWORD -#define PRG32_WIFI_PASSWORD "YOUR_WIFI_PASSWORD" -#endif +#define PRG32_WIFI_SSID CONFIG_PRG32_WIFI_SSID +#define PRG32_WIFI_PASSWORD CONFIG_PRG32_WIFI_PASSWORD #define PRG32_SCORE_MAX 16 #define PRG32_IDLE_HEARTBEAT_MS 5000 @@ -178,8 +170,8 @@ #endif #define PRG32_WIFI_STA_ENABLE \ - (PRG32_WIFI_SCORES_ENABLE || PRG32_MULTIPLAYER_TRANSPORT_ENABLE) -#define PRG32_WIFI_AP_ENABLE PRG32_GAME_UPLOAD_ENABLE + (PRG32_WIFI_SCORES_ENABLE || PRG32_MULTIPLAYER_TRANSPORT_ENABLE || CONFIG_PRG32_WIFI_BOOT_MODE_STA) +#define PRG32_WIFI_AP_ENABLE (PRG32_GAME_UPLOAD_ENABLE || CONFIG_PRG32_WIFI_BOOT_MODE_AP) #define PRG32_WIFI_ENABLE (PRG32_WIFI_STA_ENABLE || PRG32_WIFI_AP_ENABLE) /* Autoload the sole/default cartridge. Hold A+B at boot to enter setup; * setup also opens when no unambiguous cartridge can boot. Classroom images @@ -194,7 +186,7 @@ /* CartridgeStore integration constants. */ #define PRG32_STORE_URL_MAX_LEN 128 -#define PRG32_STORE_SERVER_URL "http://193.205.230.7:5080/" +#define PRG32_STORE_SERVER_URL CONFIG_PRG32_STORE_URL #define PRG32_STORE_MDNS_SERVICE "_prg32store" #define PRG32_STORE_MDNS_PROTO "_tcp" #define PRG32_STORE_MDNS_TIMEOUT_MS 3000 diff --git a/main/prg32_env_example.h b/main/prg32_env_example.h deleted file mode 100644 index 86a723e..0000000 --- a/main/prg32_env_example.h +++ /dev/null @@ -1,14 +0,0 @@ -/* -Rename this file "prg32_env.h" and replace the dummy values with your own. -This file is used to store environment variables that are not required for the -system to build or run, but are used to automatically proivde WiFi credentials -for convenience. -*/ - -#ifndef PRG32_ENV_H -#define PRG32_ENV_H - -#define PRG32_WIFI_SSID "YOUR_WIFI_SSID" -#define PRG32_WIFI_PASSWORD "YOUR_WIFI_PASSWORD" - -#endif \ No newline at end of file diff --git a/prg32/prg32.py b/prg32/prg32.py index e2556a7..d7888d0 100755 --- a/prg32/prg32.py +++ b/prg32/prg32.py @@ -7,6 +7,7 @@ from prg32.utilities.env_variables import * from prg32.utilities.environment_check import doctor from prg32.utilities.runtime_handler import parse_cart_ram_kib, runtime +from prg32.utilities.tests_runner import run_tests from prg32.cartridge.build_cartridge import build_cartridge_cli @@ -26,8 +27,10 @@ from prg32.store.store_api import store_discover, store_list, store_download from prg32.store.publish import publish, pack_bundle, publish_bundle from prg32.store.utils import ARCHITECTURE_PROFILES +from prg32.store.config_cli import store_set_url, store_clear_url from prg32.abi.abi_gen import abi_gen_cmd, abi_check_cmd +from prg32.wifi.wifi_cli import wifi_set, wifi_clear def main(argv: list[str]) -> int: parser = argparse.ArgumentParser(description=__doc__) @@ -283,6 +286,27 @@ def main(argv: list[str]) -> int: p.add_argument("--token", help="Authentication token for the store") p.set_defaults(func=publish_bundle) + p = store_sub.add_parser("set-url", help="Set the local CartridgeStore URL for the next build", usage="%(prog)s URL") + p.add_argument("url", help="URL of the CartridgeStore") + p.set_defaults(func=store_set_url) + + p = store_sub.add_parser("clear-url", help="Clear the local CartridgeStore URL") + p.set_defaults(func=store_clear_url) + + # ========================================== + # 'wifi' Subcommand Menu + # ========================================== + wifi_p = sub.add_parser("wifi", help="Manage local WiFi configuration") + wifi_sub = wifi_p.add_subparsers(dest="sub_cmd", required=True) + + p = wifi_sub.add_parser("set", help="Set local WiFi credentials for the next build") + p.add_argument("--ssid", required=True, help="Network SSID") + p.add_argument("--password", default="", help="Network password (min 8 chars for WPA2)") + p.add_argument("--mode", choices=["ap", "sta"], default="ap", help="WiFi boot mode (default: ap)") + p.set_defaults(func=wifi_set) + + p = wifi_sub.add_parser("clear", help="Clear local WiFi credentials") + p.set_defaults(func=wifi_clear) p = sub.add_parser("doctor", help="check local toolchain prerequisites", usage="%(prog)s [options]") p.add_argument("--partitions", default=str(DEFAULT_PARTITION_TABLE), help="Path to the partition table CSV") @@ -301,6 +325,9 @@ def main(argv: list[str]) -> int: p.add_argument("--tool-prefix", default="riscv32-esp-elf-", help="Prefix for the toolchain") p.set_defaults(func=runtime) + p = sub.add_parser("test", help="run unit tests and smoke tests", usage="%(prog)s [options]") + p.set_defaults(func=run_tests) + args = parser.parse_args(argv) args.func(args) return 0 diff --git a/prg32/store/config_cli.py b/prg32/store/config_cli.py new file mode 100644 index 0000000..aeb4ec8 --- /dev/null +++ b/prg32/store/config_cli.py @@ -0,0 +1,22 @@ +import argparse +from prg32.utilities.logging import step, log_ok, log_info +from prg32.utilities.local_config import set_local_config, remove_local_config, LOCAL_CONFIG_FILE + +def store_set_url(args: argparse.Namespace): + url = args.url + + step("Setting local CartridgeStore URL...") + + updates = { + "CONFIG_PRG32_STORE_URL": f'"{url}"' + } + + set_local_config(updates) + + log_ok(f"Saved CartridgeStore URL to {LOCAL_CONFIG_FILE}") + log_info("This setting will be automatically applied on your next build.") + +def store_clear_url(args: argparse.Namespace): + step("Clearing local CartridgeStore URL...") + remove_local_config(["CONFIG_PRG32_STORE_URL"]) + log_ok("Cleared CartridgeStore URL from local configuration.") diff --git a/prg32/utilities/env_variables.py b/prg32/utilities/env_variables.py index 25311e5..3010f14 100644 --- a/prg32/utilities/env_variables.py +++ b/prg32/utilities/env_variables.py @@ -13,7 +13,7 @@ ESP32C6_IMAGE = f"{ESP32C6_BUILD_DIR}/PRG32.bin" ESP32C6_ELF = f"{ESP32C6_BUILD_DIR}/PRG32.elf" ESP32C6_SDKCONFIG = f"{ESP32C6_BUILD_DIR}/sdkconfig" -ESP32C6_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults" +ESP32C6_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.esp32c6" # QEMU environment variables QEMU_BUILD_DIR = "build-qemu" @@ -21,7 +21,7 @@ QEMU_EFUSE = f"{QEMU_BUILD_DIR}/qemu_efuse.bin" QEMU_ELF = f"{QEMU_BUILD_DIR}/PRG32.elf" QEMU_SDKCONFIG= f"{QEMU_BUILD_DIR}/sdkconfig" -QEMU_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults.qemu" +QEMU_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" # Metrics variables METRICS_SDKCONFIG_DEFAULTS = "profiles/sdkconfig.defaults.metrics" diff --git a/prg32/utilities/local_config.py b/prg32/utilities/local_config.py new file mode 100644 index 0000000..676be04 --- /dev/null +++ b/prg32/utilities/local_config.py @@ -0,0 +1,57 @@ +import os +from prg32.utilities.env_variables import ROOT_DIR + +LOCAL_CONFIG_FILE = ROOT_DIR / "profiles" / "sdkconfig.defaults.local" + +def set_local_config(updates: dict): + lines = [] + if LOCAL_CONFIG_FILE.exists(): + with open(LOCAL_CONFIG_FILE, "r") as f: + lines = f.readlines() + + new_lines = [] + for line in lines: + line = line.strip() + if not line or line.startswith("#"): + new_lines.append(line) + continue + + key = line.split("=")[0] + if key in updates: + val = updates.pop(key) + if val is not None: + new_lines.append(f"{key}={val}") + else: + new_lines.append(line) + + for key, val in updates.items(): + if val is not None: + new_lines.append(f"{key}={val}") + + with open(LOCAL_CONFIG_FILE, "w") as f: + for line in new_lines: + if line: + f.write(line + "\n") + +def remove_local_config(keys: list): + if not LOCAL_CONFIG_FILE.exists(): + return + + with open(LOCAL_CONFIG_FILE, "r") as f: + lines = f.readlines() + + new_lines = [] + for line in lines: + line = line.strip() + if not line or line.startswith("#"): + new_lines.append(line) + continue + + key = line.split("=")[0] + if key not in keys: + new_lines.append(line) + + with open(LOCAL_CONFIG_FILE, "w") as f: + for line in new_lines: + if line: + f.write(line + "\n") diff --git a/prg32/wifi/__init__.py b/prg32/wifi/__init__.py new file mode 100644 index 0000000..8c46bf6 --- /dev/null +++ b/prg32/wifi/__init__.py @@ -0,0 +1 @@ +"""WiFi helper scripts package.""" diff --git a/prg32/wifi/wifi_cli.py b/prg32/wifi/wifi_cli.py new file mode 100644 index 0000000..95cf541 --- /dev/null +++ b/prg32/wifi/wifi_cli.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 + +import argparse +import os +from prg32.utilities.logging import step, log_ok, log_info, die +from prg32.utilities.env_variables import ROOT_DIR +from prg32.utilities.local_config import set_local_config, remove_local_config, LOCAL_CONFIG_FILE + +def wifi_set(args: argparse.Namespace): + ssid = args.ssid + password = args.password + mode = args.mode + + if len(password) > 0 and len(password) < 8: + die("WPA2 requires a password of at least 8 characters.") + + step("Setting local WiFi configuration...") + + updates = {} + if mode == "ap": + updates["CONFIG_PRG32_WIFI_BOOT_MODE_AP"] = "y" + updates["CONFIG_PRG32_WIFI_BOOT_MODE_STA"] = "n" + elif mode == "sta": + updates["CONFIG_PRG32_WIFI_BOOT_MODE_AP"] = "n" + updates["CONFIG_PRG32_WIFI_BOOT_MODE_STA"] = "y" + + updates["CONFIG_PRG32_WIFI_SSID"] = f'"{ssid}"' + updates["CONFIG_PRG32_WIFI_PASSWORD"] = f'"{password}"' + + set_local_config(updates) + + log_ok(f"Saved WiFi configuration to {LOCAL_CONFIG_FILE}") + log_info("These settings will be automatically applied on your next build.") + +def wifi_clear(args: argparse.Namespace): + step("Clearing local WiFi configuration...") + remove_local_config([ + "CONFIG_PRG32_WIFI_BOOT_MODE_AP", + "CONFIG_PRG32_WIFI_BOOT_MODE_STA", + "CONFIG_PRG32_WIFI_SSID", + "CONFIG_PRG32_WIFI_PASSWORD" + ]) + log_ok("Cleared WiFi settings from local configuration.") diff --git a/profiles/sdkconfig.defaults b/profiles/sdkconfig.defaults index 730e82e..9c3c4f4 100644 --- a/profiles/sdkconfig.defaults +++ b/profiles/sdkconfig.defaults @@ -13,12 +13,12 @@ CONFIG_PRG32_AUDIO_ENABLED=y CONFIG_PRG32_AUDIO_SAMPLE_RATE=22050 CONFIG_PRG32_AUDIO_MODE_MONO=y CONFIG_PRG32_AUDIO_MAX_VOICES=8 -CONFIG_PRG32_AUDIO_I2S_BCLK_GPIO=4 -CONFIG_PRG32_AUDIO_I2S_LRCLK_GPIO=11 -CONFIG_PRG32_AUDIO_I2S_DATA_GPIO=23 -CONFIG_PRG32_AUDIO_I2S_SD_GPIO=-1 CONFIG_PRG32_SPLASH_ENABLED=y CONFIG_PRG32_SPLASH_DURATION_MS=1000 CONFIG_PRG32_SPLASH_SOUND_ENABLED=y CONFIG_ESP_SYSTEM_MEMPROT_FEATURE=n CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT=n +CONFIG_PRG32_WIFI_BOOT_MODE_AP=y +CONFIG_PRG32_WIFI_SSID="PRG32" +CONFIG_PRG32_WIFI_PASSWORD="prg32game" +CONFIG_PRG32_STORE_URL="http://193.205.230.7:5080/" diff --git a/profiles/sdkconfig.defaults.esp32c6 b/profiles/sdkconfig.defaults.esp32c6 new file mode 100644 index 0000000..2093c96 --- /dev/null +++ b/profiles/sdkconfig.defaults.esp32c6 @@ -0,0 +1,9 @@ +CONFIG_ESP_CONSOLE_UART_DEFAULT=y +# CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG is not set +CONFIG_ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG=y +# CONFIG_ESP_CONSOLE_SECONDARY_NONE is not set +CONFIG_PRG32_DISPLAY_ILI9341=y +CONFIG_PRG32_AUDIO_I2S_BCLK_GPIO=4 +CONFIG_PRG32_AUDIO_I2S_LRCLK_GPIO=11 +CONFIG_PRG32_AUDIO_I2S_DATA_GPIO=23 +CONFIG_PRG32_AUDIO_I2S_SD_GPIO=-1 diff --git a/profiles/sdkconfig.defaults.qemu b/profiles/sdkconfig.defaults.qemu index 10677ad..decf7ab 100644 --- a/profiles/sdkconfig.defaults.qemu +++ b/profiles/sdkconfig.defaults.qemu @@ -1,6 +1,4 @@ -# Use with: idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -CONFIG_PARTITION_TABLE_CUSTOM=y -CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="profiles/partitions_prg32.csv" +# Use with: idf.py -B build-qemu -D SDKCONFIG_DEFAULTS="profiles/sdkconfig.defaults;profiles/sdkconfig.defaults.qemu" set-target esp32c3 CONFIG_PRG32_DISPLAY_QEMU_RGB=y CONFIG_PRG32_QEMU_FAIL_ON_REAL_HW=y CONFIG_PRG32_QEMU_UART_INPUT=y @@ -13,6 +11,3 @@ CONFIG_PRG32_AUDIO_MODE_MONO=y CONFIG_PRG32_AUDIO_MAX_VOICES=8 CONFIG_PRG32_SPLASH_ENABLED=y CONFIG_PRG32_SPLASH_DURATION_MS=900 -CONFIG_PRG32_SPLASH_SOUND_ENABLED=y -CONFIG_ESP_SYSTEM_MEMPROT_FEATURE=n -CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT=n From 2e0b4c372e1ce9f43b77d00fd3f332598d22fdcb Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Mon, 14 Sep 2026 12:08:55 +0200 Subject: [PATCH 08/12] feat(builds): added new test runner command to prg32 module that is used for validation by agents and humans. Edits to CONTRIBUTING andd moved some docs to more relevant places. --- .gitignore | 3 +- AGENTS.md | 3 +- CONTRIBUTING.md | 73 ++++----------------------------- cartridges/blackjack/AGENTS.md | 12 ++++++ cartridges/devicedemo/AGENTS.md | 9 ++++ prg32/utilities/tests_runner.py | 37 +++++++++++++++++ 6 files changed, 69 insertions(+), 68 deletions(-) create mode 100644 cartridges/blackjack/AGENTS.md create mode 100644 prg32/utilities/tests_runner.py diff --git a/.gitignore b/.gitignore index 2aecb9f..a86d6e7 100644 --- a/.gitignore +++ b/.gitignore @@ -75,7 +75,8 @@ Testing/ *.prg32 # Local environment configuration -prg32_env.h +sdkconfig +profiles/sdkconfig.defaults.local .vscode/c_cpp_properties.json .vscode/launch.json diff --git a/AGENTS.md b/AGENTS.md index 3cf702e..ca4922f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -51,8 +51,9 @@ Run these exact commands to validate your work: git diff --check # 2. Run Python linting/tooling +python3 -m compileall prg32 tests tools python3 -m prg32 doctor -python3 -m py_compile python3 -m prg32 +python3 -m prg32 test ``` If the user explicitly asked for you to do the builds after the edits, you should run one of these commands or both based on the architecture you are building on. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7533286..d717640 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -44,80 +44,23 @@ Reflection: - What would you improve next? ``` -## Local Setup - -Recommended setup: - -1. Open `PRG32.code-workspace` in VS Code. -2. Install the recommended extensions. -3. Install and source ESP-IDF for ESP32-C3 and ESP32-C6. -4. Use QEMU for early graphics/debugging work. -5. Use the ESP32-C6 board for final hardware validation. - -ESP-IDF commands: - -```bash -idf.py set-target esp32c6 -idf.py build -idf.py flash monitor -``` - -QEMU commands: - -```bash -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu set-target esp32c3 -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu build -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu qemu --graphics monitor -``` - -PlatformIO users can open the repository root and use the `prg32-esp32c6` -environment for physical board builds. - ## Validation Checklist Run these checks before opening a pull request: ```bash -git diff --check -PYTHONPYCACHEPREFIX=/tmp/prg32-pycache python3 -m py_compile \ - python3 -m prg32 \ - tools/prg32_metrics_paper.py -PYTHONPYCACHEPREFIX=/tmp/prg32-pycache python3 -m unittest discover -s tests -python3 -m prg32 doctor --host-only -``` - -When ESP-IDF is available, also run: - -```bash -idf.py build -idf.py -B build-qemu -D SDKCONFIG_DEFAULTS=profiles/sdkconfig.defaults.qemu build -``` - -For end-to-end QEMU cartridge testing: - -```bash -python3 prg32/qemu/smoke_test.py +python3 -m compileall prg32 tests tools +python3 -m prg32 doctor +python3 -m prg32 test ``` -Changes under `cartridges/blackjack` or `cartridges/devicedemo` must also pass -their local checks and package scripts. GitHub Actions repeats these commands -and uploads both architecture variants plus each Cartridge Store bundle: +Then verify that the project is building correctly: ```bash -cc -std=c11 -Wall -Wextra -Werror \ - cartridges/blackjack/tests/test_rules.c \ - cartridges/blackjack/blackjack_rules.c \ - -o /tmp/prg32-blackjack-rules -/tmp/prg32-blackjack-rules -cartridges/devicedemo/tests/check_source.sh -cartridges/blackjack/build.sh -PRG32_REPO="$PWD" PRG32_ARCHITECTURE=esp32c6 cartridges/devicedemo/scripts/build.sh -PRG32_REPO="$PWD" PRG32_ARCHITECTURE=qemu cartridges/devicedemo/scripts/build.sh -PRG32_REPO="$PWD" cartridges/devicedemo/scripts/pack-store-bundle.sh +python3 -m prg32 qemu build-and-run +python3 -m prg32 esp32c6 build-and-flash ``` -If a tool is missing, write that clearly in the pull request. Do not claim a -firmware or QEMU build passed unless it actually ran. ## Coding Guidelines @@ -128,9 +71,7 @@ firmware or QEMU build passed unless it actually ran. changes the default firmware behavior. - Keep example games in `examples/games`; do not move them into the default app. - Keep focused rendering demonstrations in `examples/features`. -- Do not reintroduce legacy `urg32` paths or symbols. -- Keep generated files, local databases, build outputs, and `.prg32` cartridges - out of commits. +- Keep generated files, local databases, build outputs, and `.prg32` cartridges out of commits. - Keep docs in sync when commands, paths, APIs, examples, or lab flows change. ## Assembly Guidelines diff --git a/cartridges/blackjack/AGENTS.md b/cartridges/blackjack/AGENTS.md new file mode 100644 index 0000000..3051de5 --- /dev/null +++ b/cartridges/blackjack/AGENTS.md @@ -0,0 +1,12 @@ +# AGENTS.md + +When making changes to this cartridge, run the following local checks and package scripts from the repository root: + +```bash +cc -std=c11 -Wall -Wextra -Werror \ + cartridges/blackjack/tests/test_rules.c \ + cartridges/blackjack/blackjack_rules.c \ + -o /tmp/prg32-blackjack-rules +/tmp/prg32-blackjack-rules +cartridges/blackjack/build.sh +``` diff --git a/cartridges/devicedemo/AGENTS.md b/cartridges/devicedemo/AGENTS.md index a972a17..ba6cce7 100644 --- a/cartridges/devicedemo/AGENTS.md +++ b/cartridges/devicedemo/AGENTS.md @@ -1,3 +1,12 @@ # AGENTS.md This cartridge tracks the PRG32 `main` branch. Before changing APIs, read the corresponding PRG32 documentation and public headers. Keep code and documentation in sync. Prefer compact indexed assets over RGB565 arrays when appropriate. Preserve the portable ABI-table build. Do not introduce firmware-private calls. Before completion run `git diff --check` when in a git tree, `python3 -m prg32 doctor` when the CLI is available, and build at least one of ESP32-C6 or QEMU. Keep DeviceDemo safe: diagnostic pages must not reconfigure WiFi, erase cartridges, or publish network state automatically. + +When making changes to this cartridge, run the following local checks and package scripts from the repository root: + +```bash +cartridges/devicedemo/tests/check_source.sh +PRG32_REPO="$PWD" PRG32_ARCHITECTURE=esp32c6 cartridges/devicedemo/scripts/build.sh +PRG32_REPO="$PWD" PRG32_ARCHITECTURE=qemu cartridges/devicedemo/scripts/build.sh +PRG32_REPO="$PWD" cartridges/devicedemo/scripts/pack-store-bundle.sh +``` diff --git a/prg32/utilities/tests_runner.py b/prg32/utilities/tests_runner.py new file mode 100644 index 0000000..d322afc --- /dev/null +++ b/prg32/utilities/tests_runner.py @@ -0,0 +1,37 @@ +import subprocess +import sys +from pathlib import Path +from prg32.utilities.logging import log_info, log_error, log_ok, step, die + +def run_tests(args) -> None: + step("Running Python unit tests") + + env = {} + import os + env.update(os.environ) + env["PYTHONPYCACHEPREFIX"] = "/tmp/prg32-pycache" + + try: + subprocess.check_call( + [sys.executable, "-m", "unittest", "discover", "-s", "tests"], + env=env + ) + log_ok("Unit tests passed") + except subprocess.CalledProcessError: + log_error("Unit tests failed") + sys.exit(1) + + step("Running QEMU smoke test") + smoke_test_path = Path("prg32/qemu/smoke_test.py") + if smoke_test_path.exists(): + try: + subprocess.check_call([sys.executable, str(smoke_test_path)]) + log_ok("Smoke test passed") + except subprocess.CalledProcessError: + log_error("Smoke test failed") + sys.exit(1) + else: + log_error(f"Smoke test script not found at {smoke_test_path}") + sys.exit(1) + + log_ok("All tests passed successfully.") From c6366ce5ae516dedcd9f0d19ec962d62b8c0c5e3 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Tue, 15 Sep 2026 10:05:17 +0200 Subject: [PATCH 09/12] feat(sdkconfig): created new sdkconfig.local for WiFi and CartridgeStore settings, now configurable via python tooling with prg32 wifi and prg32 store. Moved many default options between Kconfig and sdkconfig default profiles; many settings can now be edited with menuconfig. Small changes to AGENTS.md. --- CMakeLists.txt | 4 + components/prg32/Kconfig | 204 +- components/prg32_audio/Kconfig | 20 - dependencies.lock | 4 +- docs/agents/assembly_guidelines.md | 3 - docs/agents/hardware_guidelines.md | 2 +- docs/cartridge_store/cartridge_store.md | 2 +- docs/cartridge_store/score_api.md | 10 +- docs/hardware/AGENTS.md | 2 +- docs/hardware/hardware.md | 4 +- docs/hardware/ili9341.md | 4 +- .../labs/lab_05_scores_and_multiplayer.md | 4 +- docs/repository_structure.md | 5 +- docs/software/api.md | 11 +- docs/software/framework_manual.md | 10 +- docs/usage/network.md | 4 +- docs/usage/troubleshooting.md | 2 +- main/prg32_config.h | 136 +- prg32/prg32.py | 14 +- prg32/wifi/wifi_cli.py | 2 +- profiles/sdkconfig.defaults | 4 + sdkconfig | 2302 ----------------- 22 files changed, 313 insertions(+), 2440 deletions(-) delete mode 100644 sdkconfig diff --git a/CMakeLists.txt b/CMakeLists.txt index 9c81afd..0c7943f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,6 +21,10 @@ if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/profiles/sdkconfig.defaults.local") set(EXTRA_CONFIGS "${CMAKE_CURRENT_LIST_DIR}/profiles/sdkconfig.defaults.local") endif() +if(DEFINED SDKCONFIG_DEFAULTS AND SDKCONFIG_DEFAULTS STREQUAL "sdkconfig.defaults" AND NOT EXISTS "${CMAKE_CURRENT_LIST_DIR}/sdkconfig.defaults") + set(SDKCONFIG_DEFAULTS "profiles/sdkconfig.defaults") +endif() + if(EXTRA_CONFIGS) if(DEFINED ENV{SDKCONFIG_DEFAULTS}) set(SDKCONFIG_DEFAULTS "$ENV{SDKCONFIG_DEFAULTS};${EXTRA_CONFIGS}") diff --git a/components/prg32/Kconfig b/components/prg32/Kconfig index 9bb2002..abb119e 100644 --- a/components/prg32/Kconfig +++ b/components/prg32/Kconfig @@ -1,4 +1,4 @@ -menu "PRG32 framework" +menu "PRG32 Framework" choice PRG32_DISPLAY_BACKEND prompt "Display backend" @@ -233,4 +233,206 @@ config PRG32_WIFI_PASSWORD endmenu +menu "PRG32 Board Configuration" + +config PRG32_PIN_LCD_MOSI + int "LCD MOSI GPIO" + default 7 + +config PRG32_PIN_LCD_MISO + int "LCD MISO GPIO" + default 2 + +config PRG32_PIN_LCD_SCLK + int "LCD SCLK GPIO" + default 6 + +config PRG32_PIN_LCD_CS + int "LCD CS GPIO" + default 10 + +config PRG32_PIN_LCD_DC + int "LCD DC GPIO" + default 1 + +config PRG32_PIN_LCD_RST + int "LCD RST GPIO" + default 0 + +config PRG32_PIN_LCD_BL + int "LCD Backlight GPIO" + default 5 + +config PRG32_PIN_BTN_UP + int "Joystick UP GPIO" + default 3 + +config PRG32_PIN_BTN_DOWN + int "Joystick DOWN GPIO" + default 13 + +config PRG32_PIN_BTN_LEFT + int "Joystick LEFT GPIO" + default 18 + +config PRG32_PIN_BTN_RIGHT + int "Joystick RIGHT GPIO" + default 19 + +config PRG32_PIN_BTN_START + int "START Button GPIO" + default 20 + +config PRG32_PIN_BTN_A + int "A Button GPIO" + default 21 + +config PRG32_PIN_BTN_B + int "B Button GPIO" + default 22 + +config PRG32_ENABLE_SEPARATE_SELECT_PIN + bool "Enable separate SELECT button pin" + default n + +config PRG32_PIN_BTN_SELECT + int "SELECT Button GPIO" + depends on PRG32_ENABLE_SEPARATE_SELECT_PIN + default 20 + +config PRG32_PIN_SETUP + int "Dedicated SETUP Button GPIO" + default -1 + +config PRG32_PIN_BUZZER + int "Buzzer GPIO" + default -1 + +config PRG32_AUDIO_I2S_BCLK_GPIO + int "I2S BCLK GPIO" + depends on PRG32_AUDIO_ENABLED + default 4 + +config PRG32_AUDIO_I2S_LRCLK_GPIO + int "I2S LRCLK/WS GPIO" + depends on PRG32_AUDIO_ENABLED + default 11 + +config PRG32_AUDIO_I2S_DATA_GPIO + int "I2S DATA/DIN GPIO" + depends on PRG32_AUDIO_ENABLED + default 23 + +config PRG32_AUDIO_I2S_SD_GPIO + int "I2S SD/shutdown GPIO" + depends on PRG32_AUDIO_ENABLED + default -1 + help + Optional amplifier shutdown/control GPIO. Set to -1 when not wired. + +config PRG32_PIN_RGB_LED + int "RGB LED GPIO" + default 8 + +config PRG32_QEMU_UART_1_TX + int "QEMU UART 1 TX (Python Listener)" + default 4 + +config PRG32_QEMU_UART_1_RX + int "QEMU UART 1 RX (Python Listener)" + default 5 + +config PRG32_LCD_SPI_CLOCK_HZ + int "LCD SPI Clock (Hz)" + default 27000000 + +config PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL + int "LCD Backlight Active Level" + default 1 + +config PRG32_LCD_BOOT_TEST_MS + int "LCD Boot Test Delay (ms)" + default 0 + +config PRG32_LCD_SOFT_SPI + int "LCD Soft SPI Mode" + default 0 + +config PRG32_BOOT_SIGNAL_ENABLE + int "Enable Boot Signal" + default 0 + +config PRG32_BOOT_DIAGNOSTIC_DELAY_MS + int "Boot Diagnostic Delay (ms)" + default 0 + +endmenu + +menu "PRG32 Firmware Features" + +choice PRG32_DEFAULT_CONSOLE_MODE + prompt "Default Console Mode" + default PRG32_DEFAULT_MODE_UART_LCD_MIRROR + +config PRG32_DEFAULT_MODE_UART_ONLY + bool "UART Only" + +config PRG32_DEFAULT_MODE_LCD_ONLY + bool "LCD Only" + +config PRG32_DEFAULT_MODE_UART_LCD_MIRROR + bool "UART + LCD Mirror" + +endchoice + +config PRG32_DEBUG + int "PRG32 Debug Level" + default 0 + +config PRG32_GAME_UPLOAD_ENABLE + bool "Enable Game Upload (SoftAP + HTTP)" + default n if PRG32_DISPLAY_QEMU_RGB + default y + +config PRG32_WIFI_SCORES_ENABLE + bool "Enable Wi-Fi Scores API" + default n + +config PRG32_AUDIO_DEFAULT_VOLUME_PCT + int "Default Audio Volume (%)" + default 70 + range 0 100 + +config PRG32_MULTIPLAYER_ENABLE + bool "Enable Multiplayer Service" + default y + +config PRG32_MULTIPLAYER_SERVER_URL + string "Multiplayer Server URL" + depends on PRG32_MULTIPLAYER_ENABLE + default "ws://192.168.4.2:8081" + +config PRG32_BOOT_SETUP_MODE + int "Boot Setup Mode" + default 0 + +config PRG32_WIFI_AP_CHANNEL + int "Wi-Fi AP Channel" + default 6 + +config PRG32_WIFI_AP_MAX_CONN + int "Wi-Fi AP Max Connections" + default 4 + +config PRG32_WIFI_COUNTRY_CODE + string "Wi-Fi Country Code" + default "IT" + +config PRG32_WIFI_STA_LEGACY_PROTOCOLS + int "Wi-Fi STA Legacy Protocols Enabled" + default 1 + +endmenu + +endmenu endmenu diff --git a/components/prg32_audio/Kconfig b/components/prg32_audio/Kconfig index 8db2dff..f29d0fd 100644 --- a/components/prg32_audio/Kconfig +++ b/components/prg32_audio/Kconfig @@ -42,26 +42,6 @@ config PRG32_AUDIO_MAX_VOICES help Number of simultaneous sample/synth voices. Mono defaults to 8. -config PRG32_AUDIO_I2S_BCLK_GPIO - int "I2S BCLK GPIO" - depends on PRG32_AUDIO_ENABLED - default 4 - -config PRG32_AUDIO_I2S_LRCLK_GPIO - int "I2S LRCLK/WS GPIO" - depends on PRG32_AUDIO_ENABLED - default 11 -config PRG32_AUDIO_I2S_DATA_GPIO - int "I2S DATA/DIN GPIO" - depends on PRG32_AUDIO_ENABLED - default 23 - -config PRG32_AUDIO_I2S_SD_GPIO - int "I2S SD/shutdown GPIO" - depends on PRG32_AUDIO_ENABLED - default -1 - help - Optional amplifier shutdown/control GPIO. Set to -1 when not wired. endmenu diff --git a/dependencies.lock b/dependencies.lock index 41ff581..07ecf54 100644 --- a/dependencies.lock +++ b/dependencies.lock @@ -10,7 +10,7 @@ dependencies: type: service version: 1.8.0 espressif/mdns: - component_hash: 3ba256ac95e07c274be53cbd73f06cb846c403b61e8fbdf1be57bdb79db7a63e + component_hash: 459eef3d6fc4a224c7fdac2943233daa67e2c6588459177cb2414af586fb8700 dependencies: - name: idf require: private @@ -18,7 +18,7 @@ dependencies: source: registry_url: https://components.espressif.com/ type: service - version: 1.12.0 + version: 1.13.0 idf: source: type: idf diff --git a/docs/agents/assembly_guidelines.md b/docs/agents/assembly_guidelines.md index e88b47a..fdabe25 100644 --- a/docs/agents/assembly_guidelines.md +++ b/docs/agents/assembly_guidelines.md @@ -20,9 +20,6 @@ When adding a game: 3. Add a local `README.md` with controls and learning goals. 4. Update `examples/games/README.md`. 5. Update the example list in `README.md`. -6. Add `PRG32_GAME__ASCII` and `PRG32_GAME__GRAPHICS` identifiers in - `main/prg32_config.h` if the examples list uses selection constants. -7. Add `PRG32_GAME__C` when a C version is provided. Assembly conventions: diff --git a/docs/agents/hardware_guidelines.md b/docs/agents/hardware_guidelines.md index b3f238b..0971c72 100644 --- a/docs/agents/hardware_guidelines.md +++ b/docs/agents/hardware_guidelines.md @@ -6,7 +6,7 @@ ESP32-C6 is the main RISC-V teaching MCU. Do not document it as a general USB HI host for arbitrary gamepads. Multiplayer uses the ESP32-C6 native Wi-Fi radio. - When hardware or wiring configurations change, always update `docs/hardware/hardware.md` - to match the new canonical configuration in `main/prg32_config.h`. `docs/hardware/hardware.md` + to match the new canonical configuration in `idf.py menuconfig` (or `Kconfig`). `docs/hardware/hardware.md` must remain the single authoritative documentation for pinouts and wiring. - Automatically update the [bill of materials and buying guide](../hardware/where_to_buy.md) in the same change, following the [hardware maintenance rules](../hardware/AGENTS.md), diff --git a/docs/cartridge_store/cartridge_store.md b/docs/cartridge_store/cartridge_store.md index f2a9909..ba3d80c 100644 --- a/docs/cartridge_store/cartridge_store.md +++ b/docs/cartridge_store/cartridge_store.md @@ -428,7 +428,7 @@ Firmware clients uses compact REST calls: | `missing tool: riscv32-esp-elf-gcc` | ESP-IDF toolchain missing or not on `PATH` | Run `./install.sh esp32c3,esp32c6`, then export ESP-IDF | | `ninja: command not found` | Host build tool missing | Install Ninja with the platform package manager | | QEMU build cannot find virtual RGB component | Wrong target or defaults | Use `esp32c3` and `profiles/sdkconfig.defaults.qemu` | -| Physical display is black | QEMU build flashed to board or wrong pins | Rebuild `build-esp32c6` with `profiles/sdkconfig.defaults`; check `main/prg32_config.h` | +| Physical display is black | QEMU build flashed to board or wrong pins | Rebuild `build-esp32c6` with `profiles/sdkconfig.defaults`; check `idf.py menuconfig` | | Upload cannot reach board | Host is not on PRG32 Wi-Fi or wrong URL | Connect to `PRG32` AP and use `http://192.168.4.1` | | Store publish returns `401` | Missing or invalid token | Ask for the classroom token or omit auth only on open stores | | Store publish returns `400` | Bad manifest or zip layout | Check `manifest.json` and `unzip -l` output | diff --git a/docs/cartridge_store/score_api.md b/docs/cartridge_store/score_api.md index 4bf2128..280796f 100644 --- a/docs/cartridge_store/score_api.md +++ b/docs/cartridge_store/score_api.md @@ -14,13 +14,9 @@ Local scoreboard records persist in the dedicated `scores` NVS partition and are not erased when a cartridge slot is replaced. ## Enable Wi-Fi -Edit `main/prg32_config.h`: - -```c -#define PRG32_WIFI_SCORES_ENABLE 1 -#define PRG32_WIFI_SSID "your-network" -#define PRG32_WIFI_PASSWORD "your-password" -``` +Enable Wi-Fi scores and set your SSID/Password through `idf.py menuconfig` -> `PRG32 Framework`: +- `PRG32 Firmware Features -> Enable Wi-Fi Scores API` +- `Wi-Fi Configuration -> Wi-Fi SSID / Password` Then build and flash normally with ESP-IDF. diff --git a/docs/hardware/AGENTS.md b/docs/hardware/AGENTS.md index 9e206e7..e43bd29 100644 --- a/docs/hardware/AGENTS.md +++ b/docs/hardware/AGENTS.md @@ -13,7 +13,7 @@ hardware documentation; update affected entries in the same change. - Cross-check the bill of materials with [hardware.md](hardware.md), [the PCB reference](../pcb/README.md), [audio documentation](../tools/audio.md), and the canonical firmware configuration in - [main/prg32_config.h](../../main/prg32_config.h) and + [components/prg32/Kconfig](../../components/prg32/Kconfig) and [audio Kconfig](../../components/prg32_audio/Kconfig). - Keep baseline mono quantities, total stereo quantities and optional items explicit. Check electrical compatibility and mechanical fit separately. diff --git a/docs/hardware/hardware.md b/docs/hardware/hardware.md index e66dce3..61e86b8 100644 --- a/docs/hardware/hardware.md +++ b/docs/hardware/hardware.md @@ -128,7 +128,7 @@ See the [bill of materials](where_to_buy.md) for the resistor and footprint. ## Software Configuration -These pins match `main/prg32_config.h` for the ESP32-C6 physical ILI9341 build. +These pins match the default `idf.py menuconfig` settings for the ESP32-C6 physical ILI9341 build. The firmware enables the internal pull-up on every button input, so a pressed button connects its GPIO to GND. START and SELECT are names for the same @@ -141,7 +141,7 @@ buzzer is wired or initialized. Audio uses the I2S amplifier described below. The LCD backlight defaults to active-high. If a specific breakout uses an active-low backlight transistor, set `PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL` to `0` -in `main/prg32_config.h`. +in `idf.py menuconfig`. ### Onboard RGB LED diff --git a/docs/hardware/ili9341.md b/docs/hardware/ili9341.md index 0fed03f..cab5095 100644 --- a/docs/hardware/ili9341.md +++ b/docs/hardware/ili9341.md @@ -49,7 +49,7 @@ If the real display is black: 4. Confirm `CONFIG_PRG32_DISPLAY_ILI9341=y` in `build-esp32c6/config/sdkconfig.h`. 5. If the backlight is off, try setting - `PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL` to `0` in `main/prg32_config.h`. + `PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL` to `0` in `idf.py menuconfig`. 6. If the backlight is on but pixels are unstable, try lowering `PRG32_LCD_SPI_CLOCK_HZ`. The available clock frequencies are obtained by dividing the theoretical maximum of 80 MHz by small integers. If you are working on a breadboard with unstable wiring, you can try lowering the clock frequency from 40MHz (`40000000`) down to 27MHz (`27000000`) or 20MHz (`20000000`). @@ -88,7 +88,7 @@ If the real display is black: game coordinate system. - Physical builds default to `CONFIG_PRG32_DISPLAY_ILI9341`. - QEMU builds use `profiles/sdkconfig.defaults.qemu` and `CONFIG_PRG32_DISPLAY_QEMU_RGB`. -- `main/prg32_config.h` disables physical pins, buzzer, and real Wi-Fi +- `main/prg32_config.h` overrides Kconfig defaults to disable physical pins and real Wi-Fi multiplayer transport when the QEMU display backend is selected. - `components/prg32/idf_component.yml` and CMake only pull `esp_lcd_qemu_rgb` for the ESP32-C3 emulator target. diff --git a/docs/learn/labs/lab_05_scores_and_multiplayer.md b/docs/learn/labs/lab_05_scores_and_multiplayer.md index f5636ec..bddb544 100644 --- a/docs/learn/labs/lab_05_scores_and_multiplayer.md +++ b/docs/learn/labs/lab_05_scores_and_multiplayer.md @@ -25,7 +25,7 @@ curl -X POST http://localhost:5000/api/scores \ -d '{"game":"pong","player":"Ada","score":42}' ``` -3. Enable Wi-Fi scores in `main/prg32_config.h` if using board networking. +3. Enable Wi-Fi scores in `idf.py menuconfig` (`PRG32 Firmware Features -> Enable Wi-Fi Scores API`) if using board networking. 4. Submit a local score with `prg32_score_submit`. 5. Start the multiplayer relay in another terminal: @@ -36,7 +36,7 @@ npm install npm start ``` -6. Configure `PRG32_MULTIPLAYER_SERVER_URL` in `main/prg32_config.h` to point at +6. Configure `PRG32_MULTIPLAYER_SERVER_URL` in `idf.py menuconfig` (`PRG32 Firmware Features -> Multiplayer Server URL`) to point at the server host. 7. In a small C cartridge, call: diff --git a/docs/repository_structure.md b/docs/repository_structure.md index ceb7453..c4ac783 100644 --- a/docs/repository_structure.md +++ b/docs/repository_structure.md @@ -20,8 +20,9 @@ This document outlines the high-level layout of the PRG32 repository. | `-- assets/ Screenshots and 30-second audiovisual previews |-- components/ | |-- prg32/ ESP-IDF component implementing the core PRG32 API (indexed/RGB565 graphics, input, network, cartridge loader) -| | `-- prg32_random.c Uniform bounded random-number API -| `-- prg32_audio/ ESP-IDF audio component; audio_synth.c holds the private SID-like oscillator, ADSR, noise, and filter core; audio_tracker.c runs tracker event timing +| | |-- prg32_random.c Uniform bounded random-number API +| | `-- Kconfig Firmware configuration options (menuconfig) +| `-- prg32_audio/ ESP-IDF audio component; audio_synth.c holds the private SID-like oscillator, ADSR, noise, and filter core; ; audio_tracker.c runs tracker event timing |-- docs/ Manuals, tutorials, hardware docs, and labs | |-- agents/ Guidelines for autonomous coding agents | |-- cartridge_store/ CartridgeStore API and ScoreServer API documentation diff --git a/docs/software/api.md b/docs/software/api.md index 3e647ee..99ba123 100644 --- a/docs/software/api.md +++ b/docs/software/api.md @@ -34,14 +34,11 @@ bodies compact because they run on constrained hardware. The board API is served by the PRG32 firmware when Wi-Fi support is enabled. It is used by host tools, labs, and setup workflows. -Enable Wi-Fi in `main/prg32_config.h` or through project configuration: +Enable Wi-Fi features through project configuration (`idf.py menuconfig -> PRG32 framework -> PRG32 Firmware Features`): -```c -#define PRG32_WIFI_ENABLE 1 -#define PRG32_WIFI_SCORES_ENABLE 1 -#define PRG32_WIFI_SSID "your-network" -#define PRG32_WIFI_PASSWORD "your-password" -``` +- **Enable Game Upload (SoftAP + HTTP)** +- **Enable Wi-Fi Scores API** +- **Wi-Fi SSID / Password** (under Wi-Fi Configuration) The board can also run as an access point. In that mode the usual URL is: diff --git a/docs/software/framework_manual.md b/docs/software/framework_manual.md index 4b4f444..9f42dbe 100644 --- a/docs/software/framework_manual.md +++ b/docs/software/framework_manual.md @@ -334,8 +334,8 @@ status bands, and small classroom sketches through the same cartridge ABI used by student games. Normal images autoload their only stored cartridge, or the saved default when -multiple cartridges are present. `PRG32_BOOT_SETUP_MODE` in -`main/prg32_config.h` can force setup on every boot for custom classroom +multiple cartridges are present. `PRG32_BOOT_SETUP_MODE` in `idf.py menuconfig` +(`PRG32 Firmware Features -> Boot Setup Mode`) can force setup on every boot for custom classroom images. If `PRG32_PIN_SETUP` is wired, holding it low during boot also forces setup mode. @@ -388,7 +388,7 @@ npm install npm start ``` -Configure the board-side endpoint in `main/prg32_config.h` with +Configure the board-side endpoint in `idf.py menuconfig` (`PRG32 Firmware Features -> Multiplayer Server URL`) with `PRG32_MULTIPLAYER_SERVER_URL`. QEMU exposes the same API with an offline local stub: `prg32_multiplayer_available()` returns true, `join` succeeds for a non-empty signature, and peer snapshots are empty by default. @@ -595,7 +595,7 @@ PRG32 exposes a small addressable RGB LED API: The reference ILI9341 wiring uses GPIO8 for LCD D/C. Many ESP32-C6 development boards also use GPIO8 for the onboard RGB LED, so `PRG32_PIN_RGB_LED` defaults -to `-1` in `main/prg32_config.h`. Set it only when the LED pin is free on the +to `-1` in `idf.py menuconfig`. Set it only when the LED pin is free on the chosen board wiring. ## Development Guide @@ -613,7 +613,7 @@ When editing framework code: - Keep dependencies in `components/prg32/CMakeLists.txt`. - Keep `REQUIRES` and `PRIV_REQUIRES` independent of `CONFIG_*` choices; ESP-IDF expands component requirements before configuration-dependent source choices. -- Keep app-specific pin and feature config in `main/prg32_config.h`. +- Configure app-specific pins and features using `idf.py menuconfig` (under PRG32 framework). - Preserve `prg32_init()` as the one-call framework initializer. - Do not expose ESP-IDF-only types in the public ABI unless absolutely needed. - Return simple `int` status codes for APIs called from assembly. diff --git a/docs/usage/network.md b/docs/usage/network.md index 0c93d42..fbe6500 100644 --- a/docs/usage/network.md +++ b/docs/usage/network.md @@ -21,7 +21,7 @@ The chosen network settings are stored persistently in non-volatile storage (NVS ## Technical Details -When running in Access Point mode (`PRG32_WIFI_MODE_AP` or `PRG32_WIFI_MODE_APSTA`), the default classroom values configured in `main/prg32_config.h` are: +When running in Access Point mode (`PRG32_WIFI_MODE_AP` or `PRG32_WIFI_MODE_APSTA`), the default classroom values configured in `idf.py menuconfig` are: - **SSID:** `PRG32` - **Password:** `prg32game` @@ -45,7 +45,7 @@ To set your Wi-Fi configuration, run the following command in the PRG32 root: python3 -m prg32 wifi set --ssid "YOUR_WIFI_SSID" --password "YOUR_WIFI_PASSWORD" --mode sta ``` -- `--mode`: Can be `sta` (connect to an existing network) or `ap` (create your own access point). +- `--mode`: Can be `sta` / `infrastructure` (connect to an existing network) or `ap` (create your own access point). - The tooling saves this to `profiles/sdkconfig.defaults.local`, which is ignored by Git, ensuring you don't accidentally commit your network password. - You only need to run this command once. It will be remembered for all future builds. diff --git a/docs/usage/troubleshooting.md b/docs/usage/troubleshooting.md index 3089198..befab2e 100644 --- a/docs/usage/troubleshooting.md +++ b/docs/usage/troubleshooting.md @@ -36,7 +36,7 @@ Here are common issues and solutions when working with the PRG32 framework. - **Cartridge upload fails**: The emulator flash image might be missing, or the cartridge is too large. Run QEMU once to generate `build-qemu/qemu_flash.bin`, then rerun your upload command. - **Partition mismatch errors**: Run `python3 -m prg32 doctor` and verify `profiles/partitions_prg32.csv` plus the selected cartridge slot. - **A staged cartridge opens setup instead of starting**: Check that - `PRG32_BOOT_SETUP_MODE` is `0` in `main/prg32_config.h`, rebuild the firmware, + `PRG32_BOOT_SETUP_MODE` is `0` in `idf.py menuconfig` (under PRG32 Firmware Features), rebuild the firmware, and inspect the serial line `prg32_init: cartridge autoload failed`. A Store-ready package should load without copying its metadata or artwork into temporary RAM; an out-of-memory error here indicates an older firmware build. diff --git a/main/prg32_config.h b/main/prg32_config.h index 3b811d4..e67093f 100644 --- a/main/prg32_config.h +++ b/main/prg32_config.h @@ -3,50 +3,21 @@ #include "sdkconfig.h" -/* Example game identifiers used by lab builds that opt into examples/games. */ -#define PRG32_GAME_PONG_ASCII 1 -#define PRG32_GAME_PONG_GRAPHICS 2 -#define PRG32_GAME_BREAKOUT_ASCII 3 -#define PRG32_GAME_BREAKOUT_GRAPHICS 4 -#define PRG32_GAME_INVADERS_ASCII 5 -#define PRG32_GAME_INVADERS_GRAPHICS 6 -#define PRG32_GAME_PACMAN_ASCII 7 -#define PRG32_GAME_PACMAN_GRAPHICS 8 -#define PRG32_GAME_ASTEROIDS_ASCII 9 -#define PRG32_GAME_ASTEROIDS_GRAPHICS 10 -#define PRG32_GAME_TETRIS_ASCII 11 -#define PRG32_GAME_TETRIS_GRAPHICS 12 -#define PRG32_GAME_TETRIS_C 13 -#define PRG32_GAME_PLATFORMER_ASCII 14 -#define PRG32_GAME_PLATFORMER_GRAPHICS 15 -#define PRG32_GAME_PLATFORMER_C 16 -#define PRG32_GAME_PONG_C 17 -#define PRG32_GAME_BREAKOUT_C 18 -#define PRG32_GAME_INVADERS_C 19 -#define PRG32_GAME_PACMAN_C 20 -#define PRG32_GAME_ASTEROIDS_C 21 -#define PRG32_GAME_RAYCASTER_ASCII 22 -#define PRG32_GAME_RAYCASTER_GRAPHICS 23 -#define PRG32_GAME_RAYCASTER_C 24 -#define PRG32_GAME_WING_ASCII 25 -#define PRG32_GAME_WING_GRAPHICS 26 -#define PRG32_GAME_WING_C 27 -#define PRG32_GAME_FROGGER_ASCII 28 -#define PRG32_GAME_FROGGER_GRAPHICS 29 -#define PRG32_GAME_FROGGER_C 30 -#define PRG32_GAME_PRG32_BOUNCE_ASCII 31 -#define PRG32_GAME_PRG32_BOUNCE_GRAPHICS 32 -#define PRG32_GAME_PRG32_BOUNCE_C 33 - /* Runtime console mode. */ #define PRG32_MODE_UART_ONLY 0 #define PRG32_MODE_LCD_ONLY 1 #define PRG32_MODE_UART_LCD_MIRROR 2 +#ifdef CONFIG_PRG32_DEFAULT_MODE_UART_ONLY +#define PRG32_DEFAULT_MODE PRG32_MODE_UART_ONLY +#elif defined(CONFIG_PRG32_DEFAULT_MODE_LCD_ONLY) +#define PRG32_DEFAULT_MODE PRG32_MODE_LCD_ONLY +#else #define PRG32_DEFAULT_MODE PRG32_MODE_UART_LCD_MIRROR +#endif #ifndef PRG32_DEBUG -#define PRG32_DEBUG 0 +#define PRG32_DEBUG CONFIG_PRG32_DEBUG #endif #if CONFIG_PRG32_DISPLAY_QEMU_RGB @@ -87,41 +58,41 @@ #else /* Physical ESP32-C6 build. */ // Display ILI9341 -#define PRG32_PIN_LCD_MOSI 7 -#define PRG32_PIN_LCD_MISO 2 -#define PRG32_PIN_LCD_SCLK 6 -#define PRG32_PIN_LCD_CS 10 -#define PRG32_PIN_LCD_DC 1 -#define PRG32_PIN_LCD_RST 0 -#define PRG32_PIN_LCD_BL 5 - -#define PRG32_LCD_SPI_CLOCK_HZ 27000000 -#define PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL 1 -#define PRG32_LCD_BOOT_TEST_MS 0 -#define PRG32_LCD_SOFT_SPI 0 -#define PRG32_BOOT_SIGNAL_ENABLE 0 -#define PRG32_BOOT_DIAGNOSTIC_DELAY_MS 0 +#define PRG32_PIN_LCD_MOSI CONFIG_PRG32_PIN_LCD_MOSI +#define PRG32_PIN_LCD_MISO CONFIG_PRG32_PIN_LCD_MISO +#define PRG32_PIN_LCD_SCLK CONFIG_PRG32_PIN_LCD_SCLK +#define PRG32_PIN_LCD_CS CONFIG_PRG32_PIN_LCD_CS +#define PRG32_PIN_LCD_DC CONFIG_PRG32_PIN_LCD_DC +#define PRG32_PIN_LCD_RST CONFIG_PRG32_PIN_LCD_RST +#define PRG32_PIN_LCD_BL CONFIG_PRG32_PIN_LCD_BL + +#define PRG32_LCD_SPI_CLOCK_HZ CONFIG_PRG32_LCD_SPI_CLOCK_HZ +#define PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL CONFIG_PRG32_LCD_BACKLIGHT_ACTIVE_LEVEL +#define PRG32_LCD_BOOT_TEST_MS CONFIG_PRG32_LCD_BOOT_TEST_MS +#define PRG32_LCD_SOFT_SPI CONFIG_PRG32_LCD_SOFT_SPI +#define PRG32_BOOT_SIGNAL_ENABLE CONFIG_PRG32_BOOT_SIGNAL_ENABLE +#define PRG32_BOOT_DIAGNOSTIC_DELAY_MS CONFIG_PRG32_BOOT_DIAGNOSTIC_DELAY_MS // Joystick -#define PRG32_PIN_BTN_UP 3 -#define PRG32_PIN_BTN_DOWN 13 -#define PRG32_PIN_BTN_LEFT 18 -#define PRG32_PIN_BTN_RIGHT 19 -#define PRG32_PIN_BTN_START 20 -#define PRG32_PIN_BTN_A 21 -#define PRG32_PIN_BTN_B 22 +#define PRG32_PIN_BTN_UP CONFIG_PRG32_PIN_BTN_UP +#define PRG32_PIN_BTN_DOWN CONFIG_PRG32_PIN_BTN_DOWN +#define PRG32_PIN_BTN_LEFT CONFIG_PRG32_PIN_BTN_LEFT +#define PRG32_PIN_BTN_RIGHT CONFIG_PRG32_PIN_BTN_RIGHT +#define PRG32_PIN_BTN_START CONFIG_PRG32_PIN_BTN_START +#define PRG32_PIN_BTN_A CONFIG_PRG32_PIN_BTN_A +#define PRG32_PIN_BTN_B CONFIG_PRG32_PIN_BTN_B /* Enter setup by holding A+B during boot; no dedicated setup GPIO is wired. */ -#define PRG32_PIN_SETUP -1 +#define PRG32_PIN_SETUP CONFIG_PRG32_PIN_SETUP // Buzzer is deactivated -#define PRG32_PIN_BUZZER -1 +#define PRG32_PIN_BUZZER CONFIG_PRG32_PIN_BUZZER /* * Many ESP32-C6 boards route the onboard addressable RGB LED to GPIO8. The * reference PRG32 ILI9341 harness uses GPIO1 for LCD D/C, leaving GPIO8 free. */ -#define PRG32_PIN_RGB_LED 8 +#define PRG32_PIN_RGB_LED CONFIG_PRG32_PIN_RGB_LED /* * Uploadable game cartridges. @@ -131,7 +102,11 @@ * QEMU builds keep Wi-Fi disabled and use python3 -m prg32 to patch the * emulator flash image. */ +#ifdef CONFIG_PRG32_GAME_UPLOAD_ENABLE #define PRG32_GAME_UPLOAD_ENABLE 1 +#else +#define PRG32_GAME_UPLOAD_ENABLE 0 +#endif #endif @@ -142,15 +117,21 @@ #define PRG32_PIN_AUDIO_SD CONFIG_PRG32_AUDIO_I2S_SD_GPIO #define PRG32_AUDIO_SAMPLE_RATE CONFIG_PRG32_AUDIO_SAMPLE_RATE #define PRG32_AUDIO_MAX_VOICES CONFIG_PRG32_AUDIO_MAX_VOICES -#define PRG32_AUDIO_DEFAULT_VOLUME_PCT 70 +#define PRG32_AUDIO_DEFAULT_VOLUME_PCT CONFIG_PRG32_AUDIO_DEFAULT_VOLUME_PCT /* QEMU uses UART 1 to direct audio to python listener */ -#define PRG32_QEMU_UART_1_TX 4 -#define PRG32_QEMU_UART_1_RX 5 +#define PRG32_QEMU_UART_1_TX CONFIG_PRG32_QEMU_UART_1_TX +#define PRG32_QEMU_UART_1_RX CONFIG_PRG32_QEMU_UART_1_RX /* Wifi Configuration */ /* Optional Wi-Fi score REST API. Fill credentials before flashing. */ +#ifndef PRG32_WIFI_SCORES_ENABLE +#ifdef CONFIG_PRG32_WIFI_SCORES_ENABLE +#define PRG32_WIFI_SCORES_ENABLE 1 +#else #define PRG32_WIFI_SCORES_ENABLE 0 +#endif +#endif #define PRG32_WIFI_SSID CONFIG_PRG32_WIFI_SSID #define PRG32_WIFI_PASSWORD CONFIG_PRG32_WIFI_PASSWORD @@ -158,8 +139,12 @@ #define PRG32_IDLE_HEARTBEAT_MS 5000 /* Optional cartridge multiplayer service over Wi-Fi STA + WebSocket. */ +#ifdef CONFIG_PRG32_MULTIPLAYER_ENABLE #define PRG32_MULTIPLAYER_ENABLE 1 -#define PRG32_MULTIPLAYER_SERVER_URL "ws://192.168.4.2:8081" +#else +#define PRG32_MULTIPLAYER_ENABLE 0 +#endif +#define PRG32_MULTIPLAYER_SERVER_URL CONFIG_PRG32_MULTIPLAYER_SERVER_URL #define PRG32_MULTIPLAYER_SEND_PERIOD_MS 50 #define PRG32_MULTIPLAYER_PEER_TIMEOUT_MS 3000 @@ -172,17 +157,22 @@ #define PRG32_WIFI_STA_ENABLE \ (PRG32_WIFI_SCORES_ENABLE || PRG32_MULTIPLAYER_TRANSPORT_ENABLE || CONFIG_PRG32_WIFI_BOOT_MODE_STA) #define PRG32_WIFI_AP_ENABLE (PRG32_GAME_UPLOAD_ENABLE || CONFIG_PRG32_WIFI_BOOT_MODE_AP) + +#if CONFIG_PRG32_DISPLAY_QEMU_RGB +#define PRG32_WIFI_ENABLE 0 +#else #define PRG32_WIFI_ENABLE (PRG32_WIFI_STA_ENABLE || PRG32_WIFI_AP_ENABLE) +#endif /* Autoload the sole/default cartridge. Hold A+B at boot to enter setup; * setup also opens when no unambiguous cartridge can boot. Classroom images * may set this to 1 to force setup on every boot. */ -#define PRG32_BOOT_SETUP_MODE 0 -#define PRG32_WIFI_AP_SSID "PRG32" -#define PRG32_WIFI_AP_PASSWORD "prg32game" -#define PRG32_WIFI_AP_CHANNEL 6 -#define PRG32_WIFI_AP_MAX_CONN 4 -#define PRG32_WIFI_COUNTRY_CODE "IT" -#define PRG32_WIFI_STA_LEGACY_PROTOCOLS 1 +#define PRG32_BOOT_SETUP_MODE CONFIG_PRG32_BOOT_SETUP_MODE +#define PRG32_WIFI_AP_SSID CONFIG_PRG32_WIFI_SSID +#define PRG32_WIFI_AP_PASSWORD CONFIG_PRG32_WIFI_PASSWORD +#define PRG32_WIFI_AP_CHANNEL CONFIG_PRG32_WIFI_AP_CHANNEL +#define PRG32_WIFI_AP_MAX_CONN CONFIG_PRG32_WIFI_AP_MAX_CONN +#define PRG32_WIFI_COUNTRY_CODE CONFIG_PRG32_WIFI_COUNTRY_CODE +#define PRG32_WIFI_STA_LEGACY_PROTOCOLS CONFIG_PRG32_WIFI_STA_LEGACY_PROTOCOLS /* CartridgeStore integration constants. */ #define PRG32_STORE_URL_MAX_LEN 128 @@ -201,8 +191,12 @@ * optional harness provides a distinct SELECT input on GPIO20. */ #ifndef PRG32_ENABLE_SEPARATE_SELECT_PIN +#ifdef CONFIG_PRG32_ENABLE_SEPARATE_SELECT_PIN +#define PRG32_ENABLE_SEPARATE_SELECT_PIN 1 +#else #define PRG32_ENABLE_SEPARATE_SELECT_PIN 0 #endif +#endif #if CONFIG_PRG32_DISPLAY_QEMU_RGB #define PRG32_PIN_BTN_SELECT PRG32_PIN_BTN_START diff --git a/prg32/prg32.py b/prg32/prg32.py index d7888d0..444c482 100755 --- a/prg32/prg32.py +++ b/prg32/prg32.py @@ -286,7 +286,7 @@ def main(argv: list[str]) -> int: p.add_argument("--token", help="Authentication token for the store") p.set_defaults(func=publish_bundle) - p = store_sub.add_parser("set-url", help="Set the local CartridgeStore URL for the next build", usage="%(prog)s URL") + p = store_sub.add_parser("set-url", help="Set the local CartridgeStore URL for local builds", usage="%(prog)s URL") p.add_argument("url", help="URL of the CartridgeStore") p.set_defaults(func=store_set_url) @@ -296,16 +296,16 @@ def main(argv: list[str]) -> int: # ========================================== # 'wifi' Subcommand Menu # ========================================== - wifi_p = sub.add_parser("wifi", help="Manage local WiFi configuration") + wifi_p = sub.add_parser("wifi", help="Manage local WiFi configuration", description="Manage local WiFi credentials and mode (AP or INFRASTRUCTURE) for the next firmware build.") wifi_sub = wifi_p.add_subparsers(dest="sub_cmd", required=True) - p = wifi_sub.add_parser("set", help="Set local WiFi credentials for the next build") - p.add_argument("--ssid", required=True, help="Network SSID") - p.add_argument("--password", default="", help="Network password (min 8 chars for WPA2)") - p.add_argument("--mode", choices=["ap", "sta"], default="ap", help="WiFi boot mode (default: ap)") + p = wifi_sub.add_parser("set", help="Set local WiFi credentials and mode", description="Configure the local WiFi SSID, password, and operating mode (Access Point or Infrastructure).") + p.add_argument("--ssid", required=True, help="Network SSID (name of the network)") + p.add_argument("--password", default="", help="Network password (minimum 8 characters for WPA2, leave empty for open networks)") + p.add_argument("--mode", type=str.lower, choices=["ap", "sta", "infrastructure"], default="ap", help="WiFi boot mode: 'ap' (create an Access Point) or 'infrastructure' / 'sta' (connect to an existing network). Default: ap") p.set_defaults(func=wifi_set) - p = wifi_sub.add_parser("clear", help="Clear local WiFi credentials") + p = wifi_sub.add_parser("clear", help="Clear local WiFi credentials", description="Remove any local WiFi overrides so the firmware uses its default behavior.") p.set_defaults(func=wifi_clear) p = sub.add_parser("doctor", help="check local toolchain prerequisites", usage="%(prog)s [options]") diff --git a/prg32/wifi/wifi_cli.py b/prg32/wifi/wifi_cli.py index 95cf541..c44c9bf 100644 --- a/prg32/wifi/wifi_cli.py +++ b/prg32/wifi/wifi_cli.py @@ -20,7 +20,7 @@ def wifi_set(args: argparse.Namespace): if mode == "ap": updates["CONFIG_PRG32_WIFI_BOOT_MODE_AP"] = "y" updates["CONFIG_PRG32_WIFI_BOOT_MODE_STA"] = "n" - elif mode == "sta": + elif mode in ["sta", "infrastructure"]: updates["CONFIG_PRG32_WIFI_BOOT_MODE_AP"] = "n" updates["CONFIG_PRG32_WIFI_BOOT_MODE_STA"] = "y" diff --git a/profiles/sdkconfig.defaults b/profiles/sdkconfig.defaults index 9c3c4f4..6351b5c 100644 --- a/profiles/sdkconfig.defaults +++ b/profiles/sdkconfig.defaults @@ -22,3 +22,7 @@ CONFIG_PRG32_WIFI_BOOT_MODE_AP=y CONFIG_PRG32_WIFI_SSID="PRG32" CONFIG_PRG32_WIFI_PASSWORD="prg32game" CONFIG_PRG32_STORE_URL="http://193.205.230.7:5080/" +CONFIG_PRG32_CART_RAM_KIB=64 +CONFIG_PRG32_CART_MAX_KIB=64 +# CONFIG_PRG32_CART_RAM_CLASSROOM is not set +CONFIG_PRG32_CART_RAM_EXTENDED=y \ No newline at end of file diff --git a/sdkconfig b/sdkconfig deleted file mode 100644 index 67c26f2..0000000 --- a/sdkconfig +++ /dev/null @@ -1,2302 +0,0 @@ -# -# Automatically generated file. DO NOT EDIT. -# Espressif IoT Development Framework (ESP-IDF) 5.4.1 Project Configuration -# -CONFIG_SOC_ADC_SUPPORTED=y -CONFIG_SOC_DEDICATED_GPIO_SUPPORTED=y -CONFIG_SOC_UART_SUPPORTED=y -CONFIG_SOC_GDMA_SUPPORTED=y -CONFIG_SOC_AHB_GDMA_SUPPORTED=y -CONFIG_SOC_GPTIMER_SUPPORTED=y -CONFIG_SOC_PCNT_SUPPORTED=y -CONFIG_SOC_MCPWM_SUPPORTED=y -CONFIG_SOC_TWAI_SUPPORTED=y -CONFIG_SOC_ETM_SUPPORTED=y -CONFIG_SOC_PARLIO_SUPPORTED=y -CONFIG_SOC_BT_SUPPORTED=y -CONFIG_SOC_IEEE802154_SUPPORTED=y -CONFIG_SOC_ASYNC_MEMCPY_SUPPORTED=y -CONFIG_SOC_USB_SERIAL_JTAG_SUPPORTED=y -CONFIG_SOC_TEMP_SENSOR_SUPPORTED=y -CONFIG_SOC_PHY_SUPPORTED=y -CONFIG_SOC_WIFI_SUPPORTED=y -CONFIG_SOC_SUPPORTS_SECURE_DL_MODE=y -CONFIG_SOC_ULP_SUPPORTED=y -CONFIG_SOC_LP_CORE_SUPPORTED=y -CONFIG_SOC_EFUSE_KEY_PURPOSE_FIELD=y -CONFIG_SOC_EFUSE_SUPPORTED=y -CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y -CONFIG_SOC_RTC_MEM_SUPPORTED=y -CONFIG_SOC_I2S_SUPPORTED=y -CONFIG_SOC_RMT_SUPPORTED=y -CONFIG_SOC_SDM_SUPPORTED=y -CONFIG_SOC_GPSPI_SUPPORTED=y -CONFIG_SOC_LEDC_SUPPORTED=y -CONFIG_SOC_I2C_SUPPORTED=y -CONFIG_SOC_SYSTIMER_SUPPORTED=y -CONFIG_SOC_SUPPORT_COEXISTENCE=y -CONFIG_SOC_AES_SUPPORTED=y -CONFIG_SOC_MPI_SUPPORTED=y -CONFIG_SOC_SHA_SUPPORTED=y -CONFIG_SOC_HMAC_SUPPORTED=y -CONFIG_SOC_DIG_SIGN_SUPPORTED=y -CONFIG_SOC_ECC_SUPPORTED=y -CONFIG_SOC_FLASH_ENC_SUPPORTED=y -CONFIG_SOC_SECURE_BOOT_SUPPORTED=y -CONFIG_SOC_SDIO_SLAVE_SUPPORTED=y -CONFIG_SOC_BOD_SUPPORTED=y -CONFIG_SOC_APM_SUPPORTED=y -CONFIG_SOC_PMU_SUPPORTED=y -CONFIG_SOC_PAU_SUPPORTED=y -CONFIG_SOC_LP_TIMER_SUPPORTED=y -CONFIG_SOC_LP_AON_SUPPORTED=y -CONFIG_SOC_LP_PERIPHERALS_SUPPORTED=y -CONFIG_SOC_LP_I2C_SUPPORTED=y -CONFIG_SOC_ULP_LP_UART_SUPPORTED=y -CONFIG_SOC_CLK_TREE_SUPPORTED=y -CONFIG_SOC_ASSIST_DEBUG_SUPPORTED=y -CONFIG_SOC_WDT_SUPPORTED=y -CONFIG_SOC_SPI_FLASH_SUPPORTED=y -CONFIG_SOC_RNG_SUPPORTED=y -CONFIG_SOC_LIGHT_SLEEP_SUPPORTED=y -CONFIG_SOC_DEEP_SLEEP_SUPPORTED=y -CONFIG_SOC_MODEM_CLOCK_SUPPORTED=y -CONFIG_SOC_PM_SUPPORTED=y -CONFIG_SOC_XTAL_SUPPORT_40M=y -CONFIG_SOC_AES_SUPPORT_DMA=y -CONFIG_SOC_AES_GDMA=y -CONFIG_SOC_AES_SUPPORT_AES_128=y -CONFIG_SOC_AES_SUPPORT_AES_256=y -CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y -CONFIG_SOC_ADC_DIG_IIR_FILTER_SUPPORTED=y -CONFIG_SOC_ADC_MONITOR_SUPPORTED=y -CONFIG_SOC_ADC_DMA_SUPPORTED=y -CONFIG_SOC_ADC_PERIPH_NUM=1 -CONFIG_SOC_ADC_MAX_CHANNEL_NUM=7 -CONFIG_SOC_ADC_ATTEN_NUM=4 -CONFIG_SOC_ADC_DIGI_CONTROLLER_NUM=1 -CONFIG_SOC_ADC_PATT_LEN_MAX=8 -CONFIG_SOC_ADC_DIGI_MAX_BITWIDTH=12 -CONFIG_SOC_ADC_DIGI_MIN_BITWIDTH=12 -CONFIG_SOC_ADC_DIGI_IIR_FILTER_NUM=2 -CONFIG_SOC_ADC_DIGI_MONITOR_NUM=2 -CONFIG_SOC_ADC_DIGI_RESULT_BYTES=4 -CONFIG_SOC_ADC_DIGI_DATA_BYTES_PER_CONV=4 -CONFIG_SOC_ADC_SAMPLE_FREQ_THRES_HIGH=83333 -CONFIG_SOC_ADC_SAMPLE_FREQ_THRES_LOW=611 -CONFIG_SOC_ADC_RTC_MIN_BITWIDTH=12 -CONFIG_SOC_ADC_RTC_MAX_BITWIDTH=12 -CONFIG_SOC_ADC_CALIBRATION_V1_SUPPORTED=y -CONFIG_SOC_ADC_SELF_HW_CALI_SUPPORTED=y -CONFIG_SOC_ADC_CALIB_CHAN_COMPENS_SUPPORTED=y -CONFIG_SOC_ADC_TEMPERATURE_SHARE_INTR=y -CONFIG_SOC_ADC_SHARED_POWER=y -CONFIG_SOC_BROWNOUT_RESET_SUPPORTED=y -CONFIG_SOC_SHARED_IDCACHE_SUPPORTED=y -CONFIG_SOC_CACHE_FREEZE_SUPPORTED=y -CONFIG_SOC_CPU_CORES_NUM=1 -CONFIG_SOC_CPU_INTR_NUM=32 -CONFIG_SOC_CPU_HAS_FLEXIBLE_INTC=y -CONFIG_SOC_INT_PLIC_SUPPORTED=y -CONFIG_SOC_CPU_HAS_CSR_PC=y -CONFIG_SOC_CPU_BREAKPOINTS_NUM=4 -CONFIG_SOC_CPU_WATCHPOINTS_NUM=4 -CONFIG_SOC_CPU_WATCHPOINT_MAX_REGION_SIZE=0x80000000 -CONFIG_SOC_CPU_HAS_PMA=y -CONFIG_SOC_CPU_IDRAM_SPLIT_USING_PMP=y -CONFIG_SOC_CPU_PMP_REGION_GRANULARITY=4 -CONFIG_SOC_DS_SIGNATURE_MAX_BIT_LEN=3072 -CONFIG_SOC_DS_KEY_PARAM_MD_IV_LENGTH=16 -CONFIG_SOC_DS_KEY_CHECK_MAX_WAIT_US=1100 -CONFIG_SOC_AHB_GDMA_VERSION=1 -CONFIG_SOC_GDMA_NUM_GROUPS_MAX=1 -CONFIG_SOC_GDMA_PAIRS_PER_GROUP_MAX=3 -CONFIG_SOC_GDMA_SUPPORT_ETM=y -CONFIG_SOC_GDMA_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_ETM_GROUPS=1 -CONFIG_SOC_ETM_CHANNELS_PER_GROUP=50 -CONFIG_SOC_ETM_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_GPIO_PORT=1 -CONFIG_SOC_GPIO_PIN_COUNT=31 -CONFIG_SOC_GPIO_SUPPORT_PIN_GLITCH_FILTER=y -CONFIG_SOC_GPIO_FLEX_GLITCH_FILTER_NUM=8 -CONFIG_SOC_GPIO_SUPPORT_ETM=y -CONFIG_SOC_GPIO_SUPPORT_RTC_INDEPENDENT=y -CONFIG_SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP=y -CONFIG_SOC_LP_IO_CLOCK_IS_INDEPENDENT=y -CONFIG_SOC_GPIO_IN_RANGE_MAX=30 -CONFIG_SOC_GPIO_OUT_RANGE_MAX=30 -CONFIG_SOC_GPIO_DEEP_SLEEP_WAKE_VALID_GPIO_MASK=0 -CONFIG_SOC_GPIO_DEEP_SLEEP_WAKE_SUPPORTED_PIN_CNT=8 -CONFIG_SOC_GPIO_VALID_DIGITAL_IO_PAD_MASK=0x000000007FFFFF00 -CONFIG_SOC_GPIO_SUPPORT_FORCE_HOLD=y -CONFIG_SOC_GPIO_SUPPORT_HOLD_IO_IN_DSLP=y -CONFIG_SOC_GPIO_SUPPORT_HOLD_SINGLE_IO_IN_DSLP=y -CONFIG_SOC_GPIO_CLOCKOUT_BY_GPIO_MATRIX=y -CONFIG_SOC_CLOCKOUT_HAS_SOURCE_GATE=y -CONFIG_SOC_GPIO_CLOCKOUT_CHANNEL_NUM=3 -CONFIG_SOC_RTCIO_PIN_COUNT=8 -CONFIG_SOC_RTCIO_INPUT_OUTPUT_SUPPORTED=y -CONFIG_SOC_RTCIO_HOLD_SUPPORTED=y -CONFIG_SOC_RTCIO_WAKE_SUPPORTED=y -CONFIG_SOC_DEDIC_GPIO_OUT_CHANNELS_NUM=8 -CONFIG_SOC_DEDIC_GPIO_IN_CHANNELS_NUM=8 -CONFIG_SOC_DEDIC_PERIPH_ALWAYS_ENABLE=y -CONFIG_SOC_I2C_NUM=2 -CONFIG_SOC_HP_I2C_NUM=1 -CONFIG_SOC_I2C_FIFO_LEN=32 -CONFIG_SOC_I2C_CMD_REG_NUM=8 -CONFIG_SOC_I2C_SUPPORT_SLAVE=y -CONFIG_SOC_I2C_SUPPORT_HW_FSM_RST=y -CONFIG_SOC_I2C_SUPPORT_HW_CLR_BUS=y -CONFIG_SOC_I2C_SUPPORT_XTAL=y -CONFIG_SOC_I2C_SUPPORT_RTC=y -CONFIG_SOC_I2C_SUPPORT_10BIT_ADDR=y -CONFIG_SOC_I2C_SLAVE_SUPPORT_BROADCAST=y -CONFIG_SOC_I2C_SLAVE_CAN_GET_STRETCH_CAUSE=y -CONFIG_SOC_I2C_SLAVE_SUPPORT_I2CRAM_ACCESS=y -CONFIG_SOC_I2C_SLAVE_SUPPORT_SLAVE_UNMATCH=y -CONFIG_SOC_I2C_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_LP_I2C_NUM=1 -CONFIG_SOC_LP_I2C_FIFO_LEN=16 -CONFIG_SOC_I2S_NUM=1 -CONFIG_SOC_I2S_HW_VERSION_2=y -CONFIG_SOC_I2S_SUPPORTS_ETM=y -CONFIG_SOC_I2S_SUPPORTS_XTAL=y -CONFIG_SOC_I2S_SUPPORTS_PLL_F160M=y -CONFIG_SOC_I2S_SUPPORTS_PCM=y -CONFIG_SOC_I2S_SUPPORTS_PDM=y -CONFIG_SOC_I2S_SUPPORTS_PDM_TX=y -CONFIG_SOC_I2S_PDM_MAX_TX_LINES=2 -CONFIG_SOC_I2S_SUPPORTS_TDM=y -CONFIG_SOC_I2S_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_LEDC_SUPPORT_PLL_DIV_CLOCK=y -CONFIG_SOC_LEDC_SUPPORT_XTAL_CLOCK=y -CONFIG_SOC_LEDC_TIMER_NUM=4 -CONFIG_SOC_LEDC_CHANNEL_NUM=6 -CONFIG_SOC_LEDC_TIMER_BIT_WIDTH=20 -CONFIG_SOC_LEDC_SUPPORT_FADE_STOP=y -CONFIG_SOC_LEDC_GAMMA_CURVE_FADE_SUPPORTED=y -CONFIG_SOC_LEDC_GAMMA_CURVE_FADE_RANGE_MAX=16 -CONFIG_SOC_LEDC_FADE_PARAMS_BIT_WIDTH=10 -CONFIG_SOC_LEDC_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_MMU_PAGE_SIZE_CONFIGURABLE=y -CONFIG_SOC_MMU_PAGE_SIZE_8KB_SUPPORTED=y -CONFIG_SOC_MMU_PERIPH_NUM=1 -CONFIG_SOC_MMU_LINEAR_ADDRESS_REGION_NUM=1 -CONFIG_SOC_MMU_DI_VADDR_SHARED=y -CONFIG_SOC_MPU_MIN_REGION_SIZE=0x20000000 -CONFIG_SOC_MPU_REGIONS_MAX_NUM=8 -CONFIG_SOC_PCNT_GROUPS=1 -CONFIG_SOC_PCNT_UNITS_PER_GROUP=4 -CONFIG_SOC_PCNT_CHANNELS_PER_UNIT=2 -CONFIG_SOC_PCNT_THRES_POINT_PER_UNIT=2 -CONFIG_SOC_PCNT_SUPPORT_RUNTIME_THRES_UPDATE=y -CONFIG_SOC_PCNT_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_RMT_GROUPS=1 -CONFIG_SOC_RMT_TX_CANDIDATES_PER_GROUP=2 -CONFIG_SOC_RMT_RX_CANDIDATES_PER_GROUP=2 -CONFIG_SOC_RMT_CHANNELS_PER_GROUP=4 -CONFIG_SOC_RMT_MEM_WORDS_PER_CHANNEL=48 -CONFIG_SOC_RMT_SUPPORT_RX_PINGPONG=y -CONFIG_SOC_RMT_SUPPORT_RX_DEMODULATION=y -CONFIG_SOC_RMT_SUPPORT_TX_ASYNC_STOP=y -CONFIG_SOC_RMT_SUPPORT_TX_LOOP_COUNT=y -CONFIG_SOC_RMT_SUPPORT_TX_LOOP_AUTO_STOP=y -CONFIG_SOC_RMT_SUPPORT_TX_SYNCHRO=y -CONFIG_SOC_RMT_SUPPORT_TX_CARRIER_DATA_ONLY=y -CONFIG_SOC_RMT_SUPPORT_XTAL=y -CONFIG_SOC_RMT_SUPPORT_RC_FAST=y -CONFIG_SOC_RMT_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_MCPWM_GROUPS=1 -CONFIG_SOC_MCPWM_TIMERS_PER_GROUP=3 -CONFIG_SOC_MCPWM_OPERATORS_PER_GROUP=3 -CONFIG_SOC_MCPWM_COMPARATORS_PER_OPERATOR=2 -CONFIG_SOC_MCPWM_GENERATORS_PER_OPERATOR=2 -CONFIG_SOC_MCPWM_TRIGGERS_PER_OPERATOR=2 -CONFIG_SOC_MCPWM_GPIO_FAULTS_PER_GROUP=3 -CONFIG_SOC_MCPWM_CAPTURE_TIMERS_PER_GROUP=y -CONFIG_SOC_MCPWM_CAPTURE_CHANNELS_PER_TIMER=3 -CONFIG_SOC_MCPWM_GPIO_SYNCHROS_PER_GROUP=3 -CONFIG_SOC_MCPWM_SWSYNC_CAN_PROPAGATE=y -CONFIG_SOC_MCPWM_SUPPORT_ETM=y -CONFIG_SOC_MCPWM_CAPTURE_CLK_FROM_GROUP=y -CONFIG_SOC_MCPWM_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_PARLIO_GROUPS=1 -CONFIG_SOC_PARLIO_TX_UNITS_PER_GROUP=1 -CONFIG_SOC_PARLIO_RX_UNITS_PER_GROUP=1 -CONFIG_SOC_PARLIO_TX_UNIT_MAX_DATA_WIDTH=16 -CONFIG_SOC_PARLIO_RX_UNIT_MAX_DATA_WIDTH=16 -CONFIG_SOC_PARLIO_TX_RX_SHARE_INTERRUPT=y -CONFIG_SOC_PARLIO_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_MPI_MEM_BLOCKS_NUM=4 -CONFIG_SOC_MPI_OPERATIONS_NUM=3 -CONFIG_SOC_RSA_MAX_BIT_LEN=3072 -CONFIG_SOC_SHA_DMA_MAX_BUFFER_SIZE=3968 -CONFIG_SOC_SHA_SUPPORT_DMA=y -CONFIG_SOC_SHA_SUPPORT_RESUME=y -CONFIG_SOC_SHA_GDMA=y -CONFIG_SOC_SHA_SUPPORT_SHA1=y -CONFIG_SOC_SHA_SUPPORT_SHA224=y -CONFIG_SOC_SHA_SUPPORT_SHA256=y -CONFIG_SOC_SDM_GROUPS=1 -CONFIG_SOC_SDM_CHANNELS_PER_GROUP=4 -CONFIG_SOC_SDM_CLK_SUPPORT_PLL_F80M=y -CONFIG_SOC_SDM_CLK_SUPPORT_XTAL=y -CONFIG_SOC_SPI_PERIPH_NUM=2 -CONFIG_SOC_SPI_MAX_CS_NUM=6 -CONFIG_SOC_SPI_MAXIMUM_BUFFER_SIZE=64 -CONFIG_SOC_SPI_SUPPORT_DDRCLK=y -CONFIG_SOC_SPI_SLAVE_SUPPORT_SEG_TRANS=y -CONFIG_SOC_SPI_SUPPORT_CD_SIG=y -CONFIG_SOC_SPI_SUPPORT_CONTINUOUS_TRANS=y -CONFIG_SOC_SPI_SUPPORT_SLAVE_HD_VER2=y -CONFIG_SOC_SPI_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_SPI_SUPPORT_CLK_XTAL=y -CONFIG_SOC_SPI_SUPPORT_CLK_PLL_F80M=y -CONFIG_SOC_SPI_SUPPORT_CLK_RC_FAST=y -CONFIG_SOC_SPI_SCT_SUPPORTED=y -CONFIG_SOC_SPI_SCT_REG_NUM=14 -CONFIG_SOC_SPI_SCT_BUFFER_NUM_MAX=y -CONFIG_SOC_SPI_SCT_CONF_BITLEN_MAX=0x3FFFA -CONFIG_SOC_MEMSPI_IS_INDEPENDENT=y -CONFIG_SOC_SPI_MAX_PRE_DIVIDER=16 -CONFIG_SOC_SPI_MEM_SUPPORT_AUTO_WAIT_IDLE=y -CONFIG_SOC_SPI_MEM_SUPPORT_AUTO_SUSPEND=y -CONFIG_SOC_SPI_MEM_SUPPORT_AUTO_RESUME=y -CONFIG_SOC_SPI_MEM_SUPPORT_IDLE_INTR=y -CONFIG_SOC_SPI_MEM_SUPPORT_SW_SUSPEND=y -CONFIG_SOC_SPI_MEM_SUPPORT_CHECK_SUS=y -CONFIG_SOC_SPI_MEM_SUPPORT_WRAP=y -CONFIG_SOC_MEMSPI_SRC_FREQ_80M_SUPPORTED=y -CONFIG_SOC_MEMSPI_SRC_FREQ_40M_SUPPORTED=y -CONFIG_SOC_MEMSPI_SRC_FREQ_20M_SUPPORTED=y -CONFIG_SOC_SYSTIMER_COUNTER_NUM=2 -CONFIG_SOC_SYSTIMER_ALARM_NUM=3 -CONFIG_SOC_SYSTIMER_BIT_WIDTH_LO=32 -CONFIG_SOC_SYSTIMER_BIT_WIDTH_HI=20 -CONFIG_SOC_SYSTIMER_FIXED_DIVIDER=y -CONFIG_SOC_SYSTIMER_SUPPORT_RC_FAST=y -CONFIG_SOC_SYSTIMER_INT_LEVEL=y -CONFIG_SOC_SYSTIMER_ALARM_MISS_COMPENSATE=y -CONFIG_SOC_SYSTIMER_SUPPORT_ETM=y -CONFIG_SOC_LP_TIMER_BIT_WIDTH_LO=32 -CONFIG_SOC_LP_TIMER_BIT_WIDTH_HI=16 -CONFIG_SOC_TIMER_GROUPS=2 -CONFIG_SOC_TIMER_GROUP_TIMERS_PER_GROUP=1 -CONFIG_SOC_TIMER_GROUP_COUNTER_BIT_WIDTH=54 -CONFIG_SOC_TIMER_GROUP_SUPPORT_XTAL=y -CONFIG_SOC_TIMER_GROUP_SUPPORT_RC_FAST=y -CONFIG_SOC_TIMER_GROUP_TOTAL_TIMERS=2 -CONFIG_SOC_TIMER_SUPPORT_ETM=y -CONFIG_SOC_TIMER_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_MWDT_SUPPORT_XTAL=y -CONFIG_SOC_MWDT_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_TWAI_CONTROLLER_NUM=2 -CONFIG_SOC_TWAI_CLK_SUPPORT_XTAL=y -CONFIG_SOC_TWAI_BRP_MIN=2 -CONFIG_SOC_TWAI_BRP_MAX=32768 -CONFIG_SOC_TWAI_SUPPORTS_RX_STATUS=y -CONFIG_SOC_TWAI_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_EFUSE_DIS_DOWNLOAD_ICACHE=y -CONFIG_SOC_EFUSE_DIS_PAD_JTAG=y -CONFIG_SOC_EFUSE_DIS_USB_JTAG=y -CONFIG_SOC_EFUSE_DIS_DIRECT_BOOT=y -CONFIG_SOC_EFUSE_SOFT_DIS_JTAG=y -CONFIG_SOC_EFUSE_DIS_ICACHE=y -CONFIG_SOC_EFUSE_BLOCK9_KEY_PURPOSE_QUIRK=y -CONFIG_SOC_SECURE_BOOT_V2_RSA=y -CONFIG_SOC_SECURE_BOOT_V2_ECC=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=3 -CONFIG_SOC_EFUSE_REVOKE_BOOT_KEY_DIGESTS=y -CONFIG_SOC_SUPPORT_SECURE_BOOT_REVOKE_KEY=y -CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=64 -CONFIG_SOC_FLASH_ENCRYPTION_XTS_AES=y -CONFIG_SOC_FLASH_ENCRYPTION_XTS_AES_128=y -CONFIG_SOC_APM_CTRL_FILTER_SUPPORTED=y -CONFIG_SOC_APM_LP_APM0_SUPPORTED=y -CONFIG_SOC_CRYPTO_DPA_PROTECTION_SUPPORTED=y -CONFIG_SOC_UART_NUM=3 -CONFIG_SOC_UART_HP_NUM=2 -CONFIG_SOC_UART_LP_NUM=1 -CONFIG_SOC_UART_FIFO_LEN=128 -CONFIG_SOC_LP_UART_FIFO_LEN=16 -CONFIG_SOC_UART_BITRATE_MAX=5000000 -CONFIG_SOC_UART_SUPPORT_PLL_F80M_CLK=y -CONFIG_SOC_UART_SUPPORT_RTC_CLK=y -CONFIG_SOC_UART_SUPPORT_XTAL_CLK=y -CONFIG_SOC_UART_SUPPORT_WAKEUP_INT=y -CONFIG_SOC_UART_HAS_LP_UART=y -CONFIG_SOC_UART_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_UART_SUPPORT_FSM_TX_WAIT_SEND=y -CONFIG_SOC_COEX_HW_PTI=y -CONFIG_SOC_EXTERNAL_COEX_ADVANCE=y -CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 -CONFIG_SOC_WIFI_LIGHT_SLEEP_CLK_WIDTH=12 -CONFIG_SOC_PM_SUPPORT_WIFI_WAKEUP=y -CONFIG_SOC_PM_SUPPORT_BEACON_WAKEUP=y -CONFIG_SOC_PM_SUPPORT_BT_WAKEUP=y -CONFIG_SOC_PM_SUPPORT_EXT1_WAKEUP=y -CONFIG_SOC_PM_SUPPORT_EXT1_WAKEUP_MODE_PER_PIN=y -CONFIG_SOC_PM_SUPPORT_CPU_PD=y -CONFIG_SOC_PM_SUPPORT_MODEM_PD=y -CONFIG_SOC_PM_SUPPORT_XTAL32K_PD=y -CONFIG_SOC_PM_SUPPORT_RC32K_PD=y -CONFIG_SOC_PM_SUPPORT_RC_FAST_PD=y -CONFIG_SOC_PM_SUPPORT_VDDSDIO_PD=y -CONFIG_SOC_PM_SUPPORT_TOP_PD=y -CONFIG_SOC_PM_SUPPORT_HP_AON_PD=y -CONFIG_SOC_PM_SUPPORT_MAC_BB_PD=y -CONFIG_SOC_PM_SUPPORT_RTC_PERIPH_PD=y -CONFIG_SOC_PM_SUPPORT_PMU_MODEM_STATE=y -CONFIG_SOC_PM_SUPPORT_DEEPSLEEP_CHECK_STUB_ONLY=y -CONFIG_SOC_PM_CPU_RETENTION_BY_SW=y -CONFIG_SOC_PM_MODEM_RETENTION_BY_REGDMA=y -CONFIG_SOC_PM_RETENTION_HAS_CLOCK_BUG=y -CONFIG_SOC_EXT_MEM_CACHE_TAG_IN_CPU_DOMAIN=y -CONFIG_SOC_PM_PAU_LINK_NUM=4 -CONFIG_SOC_PM_PAU_REGDMA_LINK_MULTI_ADDR=y -CONFIG_SOC_PM_PAU_REGDMA_LINK_WIFIMAC=y -CONFIG_SOC_PM_PAU_REGDMA_UPDATE_CACHE_BEFORE_WAIT_COMPARE=y -CONFIG_SOC_PM_RETENTION_MODULE_NUM=32 -CONFIG_SOC_CLK_RC_FAST_SUPPORT_CALIBRATION=y -CONFIG_SOC_MODEM_CLOCK_IS_INDEPENDENT=y -CONFIG_SOC_CLK_XTAL32K_SUPPORTED=y -CONFIG_SOC_CLK_OSC_SLOW_SUPPORTED=y -CONFIG_SOC_CLK_RC32K_SUPPORTED=y -CONFIG_SOC_RCC_IS_INDEPENDENT=y -CONFIG_SOC_TEMPERATURE_SENSOR_SUPPORT_FAST_RC=y -CONFIG_SOC_TEMPERATURE_SENSOR_SUPPORT_XTAL=y -CONFIG_SOC_TEMPERATURE_SENSOR_INTR_SUPPORT=y -CONFIG_SOC_TEMPERATURE_SENSOR_SUPPORT_ETM=y -CONFIG_SOC_TEMPERATURE_SENSOR_SUPPORT_SLEEP_RETENTION=y -CONFIG_SOC_TEMPERATURE_SENSOR_UNDER_PD_TOP_DOMAIN=y -CONFIG_SOC_RNG_CLOCK_IS_INDEPENDENT=y -CONFIG_SOC_WIFI_HW_TSF=y -CONFIG_SOC_WIFI_FTM_SUPPORT=y -CONFIG_SOC_WIFI_GCMP_SUPPORT=y -CONFIG_SOC_WIFI_WAPI_SUPPORT=y -CONFIG_SOC_WIFI_CSI_SUPPORT=y -CONFIG_SOC_WIFI_MESH_SUPPORT=y -CONFIG_SOC_WIFI_HE_SUPPORT=y -CONFIG_SOC_WIFI_MAC_VERSION_NUM=2 -CONFIG_SOC_BLE_SUPPORTED=y -CONFIG_SOC_BLE_MESH_SUPPORTED=y -CONFIG_SOC_ESP_NIMBLE_CONTROLLER=y -CONFIG_SOC_BLE_50_SUPPORTED=y -CONFIG_SOC_BLE_DEVICE_PRIVACY_SUPPORTED=y -CONFIG_SOC_BLE_POWER_CONTROL_SUPPORTED=y -CONFIG_SOC_BLE_PERIODIC_ADV_ENH_SUPPORTED=y -CONFIG_SOC_BLUFI_SUPPORTED=y -CONFIG_SOC_BLE_MULTI_CONN_OPTIMIZATION=y -CONFIG_SOC_BLE_USE_WIFI_PWR_CLK_WORKAROUND=y -CONFIG_SOC_PHY_COMBO_MODULE=y -CONFIG_SOC_CAPS_NO_RESET_BY_ANA_BOD=y -CONFIG_SOC_LP_CORE_SINGLE_INTERRUPT_VECTOR=y -CONFIG_SOC_LP_CORE_SUPPORT_ETM=y -CONFIG_SOC_DEBUG_HAVE_OCD_STUB_BINS=y -CONFIG_IDF_CMAKE=y -CONFIG_IDF_TOOLCHAIN="gcc" -CONFIG_IDF_TOOLCHAIN_GCC=y -CONFIG_IDF_TARGET_ARCH_RISCV=y -CONFIG_IDF_TARGET_ARCH="riscv" -CONFIG_IDF_TARGET="esp32c6" -CONFIG_IDF_INIT_VERSION="5.3.0" -CONFIG_IDF_TARGET_ESP32C6=y -CONFIG_IDF_FIRMWARE_CHIP_ID=0x000D - -# -# Build type -# -CONFIG_APP_BUILD_TYPE_APP_2NDBOOT=y -# CONFIG_APP_BUILD_TYPE_RAM is not set -CONFIG_APP_BUILD_GENERATE_BINARIES=y -CONFIG_APP_BUILD_BOOTLOADER=y -CONFIG_APP_BUILD_USE_FLASH_SECTIONS=y -# CONFIG_APP_REPRODUCIBLE_BUILD is not set -# CONFIG_APP_NO_BLOBS is not set -# end of Build type - -# -# Bootloader config -# - -# -# Bootloader manager -# -CONFIG_BOOTLOADER_COMPILE_TIME_DATE=y -CONFIG_BOOTLOADER_PROJECT_VER=1 -# end of Bootloader manager - -CONFIG_BOOTLOADER_OFFSET_IN_FLASH=0x0 -CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y -# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG is not set -# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF is not set - -# -# Log -# -# CONFIG_BOOTLOADER_LOG_LEVEL_NONE is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_ERROR is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_WARN is not set -CONFIG_BOOTLOADER_LOG_LEVEL_INFO=y -# CONFIG_BOOTLOADER_LOG_LEVEL_DEBUG is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE is not set -CONFIG_BOOTLOADER_LOG_LEVEL=3 - -# -# Format -# -# CONFIG_BOOTLOADER_LOG_COLORS is not set -CONFIG_BOOTLOADER_LOG_TIMESTAMP_SOURCE_CPU_TICKS=y -# end of Format -# end of Log - -# -# Serial Flash Configurations -# -# CONFIG_BOOTLOADER_FLASH_DC_AWARE is not set -CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y -# end of Serial Flash Configurations - -# CONFIG_BOOTLOADER_FACTORY_RESET is not set -# CONFIG_BOOTLOADER_APP_TEST is not set -CONFIG_BOOTLOADER_REGION_PROTECTION_ENABLE=y -CONFIG_BOOTLOADER_WDT_ENABLE=y -# CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE is not set -CONFIG_BOOTLOADER_WDT_TIME_MS=9000 -# CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE is not set -# CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP is not set -# CONFIG_BOOTLOADER_SKIP_VALIDATE_ON_POWER_ON is not set -# CONFIG_BOOTLOADER_SKIP_VALIDATE_ALWAYS is not set -CONFIG_BOOTLOADER_RESERVE_RTC_SIZE=0 -# CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC is not set -# end of Bootloader config - -# -# Security features -# -CONFIG_SECURE_BOOT_V2_RSA_SUPPORTED=y -CONFIG_SECURE_BOOT_V2_ECC_SUPPORTED=y -CONFIG_SECURE_BOOT_V2_PREFERRED=y -# CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set -# CONFIG_SECURE_BOOT is not set -# CONFIG_SECURE_FLASH_ENC_ENABLED is not set -CONFIG_SECURE_ROM_DL_MODE_ENABLED=y -# end of Security features - -# -# Application manager -# -CONFIG_APP_COMPILE_TIME_DATE=y -# CONFIG_APP_EXCLUDE_PROJECT_VER_VAR is not set -# CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR is not set -# CONFIG_APP_PROJECT_VER_FROM_CONFIG is not set -CONFIG_APP_RETRIEVE_LEN_ELF_SHA=9 -# end of Application manager - -CONFIG_ESP_ROM_HAS_CRC_LE=y -CONFIG_ESP_ROM_HAS_CRC_BE=y -CONFIG_ESP_ROM_HAS_JPEG_DECODE=y -CONFIG_ESP_ROM_UART_CLK_IS_XTAL=y -CONFIG_ESP_ROM_USB_SERIAL_DEVICE_NUM=3 -CONFIG_ESP_ROM_HAS_RETARGETABLE_LOCKING=y -CONFIG_ESP_ROM_GET_CLK_FREQ=y -CONFIG_ESP_ROM_HAS_RVFPLIB=y -CONFIG_ESP_ROM_HAS_HAL_WDT=y -CONFIG_ESP_ROM_HAS_HAL_SYSTIMER=y -CONFIG_ESP_ROM_HAS_HEAP_TLSF=y -CONFIG_ESP_ROM_TLSF_CHECK_PATCH=y -CONFIG_ESP_ROM_MULTI_HEAP_WALK_PATCH=y -CONFIG_ESP_ROM_HAS_LAYOUT_TABLE=y -CONFIG_ESP_ROM_HAS_SPI_FLASH=y -CONFIG_ESP_ROM_HAS_REGI2C_BUG=y -CONFIG_ESP_ROM_HAS_NEWLIB=y -CONFIG_ESP_ROM_HAS_NEWLIB_NORMAL_FORMAT=y -CONFIG_ESP_ROM_REV0_HAS_NO_ECDSA_INTERFACE=y -CONFIG_ESP_ROM_WDT_INIT_PATCH=y -CONFIG_ESP_ROM_NEEDS_SET_CACHE_MMU_SIZE=y -CONFIG_ESP_ROM_RAM_APP_NEEDS_MMU_INIT=y -CONFIG_ESP_ROM_HAS_SW_FLOAT=y -CONFIG_ESP_ROM_USB_OTG_NUM=-1 -CONFIG_ESP_ROM_HAS_VERSION=y -CONFIG_ESP_ROM_SUPPORT_DEEP_SLEEP_WAKEUP_STUB=y -CONFIG_ESP_ROM_HAS_OUTPUT_PUTC_FUNC=y - -# -# Boot ROM Behavior -# -CONFIG_BOOT_ROM_LOG_ALWAYS_ON=y -# CONFIG_BOOT_ROM_LOG_ALWAYS_OFF is not set -# CONFIG_BOOT_ROM_LOG_ON_GPIO_HIGH is not set -# CONFIG_BOOT_ROM_LOG_ON_GPIO_LOW is not set -# end of Boot ROM Behavior - -# -# Serial flasher config -# -# CONFIG_ESPTOOLPY_NO_STUB is not set -# CONFIG_ESPTOOLPY_FLASHMODE_QIO is not set -# CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set -CONFIG_ESPTOOLPY_FLASHMODE_DIO=y -# CONFIG_ESPTOOLPY_FLASHMODE_DOUT is not set -CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_STR=y -CONFIG_ESPTOOLPY_FLASHMODE="dio" -CONFIG_ESPTOOLPY_FLASHFREQ_80M=y -# CONFIG_ESPTOOLPY_FLASHFREQ_40M is not set -# CONFIG_ESPTOOLPY_FLASHFREQ_20M is not set -CONFIG_ESPTOOLPY_FLASHFREQ="80m" -# CONFIG_ESPTOOLPY_FLASHSIZE_1MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_2MB is not set -CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y -# CONFIG_ESPTOOLPY_FLASHSIZE_8MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_16MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_32MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_64MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_128MB is not set -CONFIG_ESPTOOLPY_FLASHSIZE="4MB" -# CONFIG_ESPTOOLPY_HEADER_FLASHSIZE_UPDATE is not set -CONFIG_ESPTOOLPY_BEFORE_RESET=y -# CONFIG_ESPTOOLPY_BEFORE_NORESET is not set -CONFIG_ESPTOOLPY_BEFORE="default_reset" -CONFIG_ESPTOOLPY_AFTER_RESET=y -# CONFIG_ESPTOOLPY_AFTER_NORESET is not set -CONFIG_ESPTOOLPY_AFTER="hard_reset" -CONFIG_ESPTOOLPY_MONITOR_BAUD=115200 -# end of Serial flasher config - -# -# Partition Table -# -# CONFIG_PARTITION_TABLE_SINGLE_APP is not set -# CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE is not set -# CONFIG_PARTITION_TABLE_TWO_OTA is not set -# CONFIG_PARTITION_TABLE_TWO_OTA_LARGE is not set -CONFIG_PARTITION_TABLE_CUSTOM=y -CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="profiles/partitions_prg32.csv" -CONFIG_PARTITION_TABLE_FILENAME="profiles/partitions_prg32.csv" -CONFIG_PARTITION_TABLE_OFFSET=0x8000 -CONFIG_PARTITION_TABLE_MD5=y -# end of Partition Table - -# -# Compiler options -# -CONFIG_COMPILER_OPTIMIZATION_DEBUG=y -# CONFIG_COMPILER_OPTIMIZATION_SIZE is not set -# CONFIG_COMPILER_OPTIMIZATION_PERF is not set -# CONFIG_COMPILER_OPTIMIZATION_NONE is not set -CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y -# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT is not set -# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is not set -CONFIG_COMPILER_ASSERT_NDEBUG_EVALUATE=y -# CONFIG_COMPILER_FLOAT_LIB_FROM_GCCLIB is not set -CONFIG_COMPILER_FLOAT_LIB_FROM_RVFPLIB=y -CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL=2 -# CONFIG_COMPILER_OPTIMIZATION_CHECKS_SILENT is not set -CONFIG_COMPILER_HIDE_PATHS_MACROS=y -# CONFIG_COMPILER_CXX_EXCEPTIONS is not set -# CONFIG_COMPILER_CXX_RTTI is not set -CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y -# CONFIG_COMPILER_STACK_CHECK_MODE_NORM is not set -# CONFIG_COMPILER_STACK_CHECK_MODE_STRONG is not set -# CONFIG_COMPILER_STACK_CHECK_MODE_ALL is not set -# CONFIG_COMPILER_NO_MERGE_CONSTANTS is not set -# CONFIG_COMPILER_WARN_WRITE_STRINGS is not set -# CONFIG_COMPILER_SAVE_RESTORE_LIBCALLS is not set -CONFIG_COMPILER_DISABLE_DEFAULT_ERRORS=y -# CONFIG_COMPILER_DISABLE_GCC12_WARNINGS is not set -# CONFIG_COMPILER_DISABLE_GCC13_WARNINGS is not set -# CONFIG_COMPILER_DISABLE_GCC14_WARNINGS is not set -# CONFIG_COMPILER_DUMP_RTL_FILES is not set -CONFIG_COMPILER_RT_LIB_GCCLIB=y -CONFIG_COMPILER_RT_LIB_NAME="gcc" -# CONFIG_COMPILER_ORPHAN_SECTIONS_WARNING is not set -CONFIG_COMPILER_ORPHAN_SECTIONS_PLACE=y -# CONFIG_COMPILER_STATIC_ANALYZER is not set -# end of Compiler options - -# -# Component config -# - -# -# Application Level Tracing -# -# CONFIG_APPTRACE_DEST_JTAG is not set -CONFIG_APPTRACE_DEST_NONE=y -# CONFIG_APPTRACE_DEST_UART1 is not set -# CONFIG_APPTRACE_DEST_UART2 is not set -CONFIG_APPTRACE_DEST_UART_NONE=y -CONFIG_APPTRACE_UART_TASK_PRIO=1 -CONFIG_APPTRACE_LOCK_ENABLE=y -# end of Application Level Tracing - -# -# Bluetooth -# -# CONFIG_BT_ENABLED is not set -CONFIG_BT_ALARM_MAX_NUM=50 -# end of Bluetooth - -# -# Console Library -# -# CONFIG_CONSOLE_SORTED_HELP is not set -# end of Console Library - -# -# Driver Configurations -# - -# -# TWAI Configuration -# -# CONFIG_TWAI_ISR_IN_IRAM is not set -# end of TWAI Configuration - -# -# Legacy ADC Driver Configuration -# -# CONFIG_ADC_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_ADC_SKIP_LEGACY_CONFLICT_CHECK is not set - -# -# Legacy ADC Calibration Configuration -# -# CONFIG_ADC_CALI_SUPPRESS_DEPRECATE_WARN is not set -# end of Legacy ADC Calibration Configuration -# end of Legacy ADC Driver Configuration - -# -# Legacy MCPWM Driver Configurations -# -# CONFIG_MCPWM_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_MCPWM_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy MCPWM Driver Configurations - -# -# Legacy Timer Group Driver Configurations -# -# CONFIG_GPTIMER_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_GPTIMER_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy Timer Group Driver Configurations - -# -# Legacy RMT Driver Configurations -# -# CONFIG_RMT_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_RMT_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy RMT Driver Configurations - -# -# Legacy I2S Driver Configurations -# -# CONFIG_I2S_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_I2S_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy I2S Driver Configurations - -# -# Legacy PCNT Driver Configurations -# -# CONFIG_PCNT_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_PCNT_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy PCNT Driver Configurations - -# -# Legacy SDM Driver Configurations -# -# CONFIG_SDM_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_SDM_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy SDM Driver Configurations - -# -# Legacy Temperature Sensor Driver Configurations -# -# CONFIG_TEMP_SENSOR_SUPPRESS_DEPRECATE_WARN is not set -# CONFIG_TEMP_SENSOR_SKIP_LEGACY_CONFLICT_CHECK is not set -# end of Legacy Temperature Sensor Driver Configurations -# end of Driver Configurations - -# -# eFuse Bit Manager -# -# CONFIG_EFUSE_CUSTOM_TABLE is not set -# CONFIG_EFUSE_VIRTUAL is not set -CONFIG_EFUSE_MAX_BLK_LEN=256 -# end of eFuse Bit Manager - -# -# ESP-TLS -# -CONFIG_ESP_TLS_USING_MBEDTLS=y -CONFIG_ESP_TLS_USE_DS_PERIPHERAL=y -# CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set -# CONFIG_ESP_TLS_SERVER_SESSION_TICKETS is not set -# CONFIG_ESP_TLS_SERVER_CERT_SELECT_HOOK is not set -# CONFIG_ESP_TLS_SERVER_MIN_AUTH_MODE_OPTIONAL is not set -# CONFIG_ESP_TLS_PSK_VERIFICATION is not set -# CONFIG_ESP_TLS_INSECURE is not set -# end of ESP-TLS - -# -# ADC and ADC Calibration -# -# CONFIG_ADC_ONESHOT_CTRL_FUNC_IN_IRAM is not set -# CONFIG_ADC_CONTINUOUS_ISR_IRAM_SAFE is not set -# CONFIG_ADC_ENABLE_DEBUG_LOG is not set -# end of ADC and ADC Calibration - -# -# Wireless Coexistence -# -CONFIG_ESP_COEX_ENABLED=y -CONFIG_ESP_COEX_SW_COEXIST_ENABLE=y -# CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE is not set -# CONFIG_ESP_COEX_POWER_MANAGEMENT is not set -# CONFIG_ESP_COEX_GPIO_DEBUG is not set -# end of Wireless Coexistence - -# -# Common ESP-related -# -CONFIG_ESP_ERR_TO_NAME_LOOKUP=y -# end of Common ESP-related - -# -# ESP-Driver:GPIO Configurations -# -# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set -# end of ESP-Driver:GPIO Configurations - -# -# ESP-Driver:GPTimer Configurations -# -CONFIG_GPTIMER_ISR_HANDLER_IN_IRAM=y -# CONFIG_GPTIMER_CTRL_FUNC_IN_IRAM is not set -# CONFIG_GPTIMER_ISR_IRAM_SAFE is not set -# CONFIG_GPTIMER_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:GPTimer Configurations - -# -# ESP-Driver:I2C Configurations -# -# CONFIG_I2C_ISR_IRAM_SAFE is not set -# CONFIG_I2C_ENABLE_DEBUG_LOG is not set -# CONFIG_I2C_ENABLE_SLAVE_DRIVER_VERSION_2 is not set -# end of ESP-Driver:I2C Configurations - -# -# ESP-Driver:I2S Configurations -# -# CONFIG_I2S_ISR_IRAM_SAFE is not set -# CONFIG_I2S_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:I2S Configurations - -# -# ESP-Driver:LEDC Configurations -# -# CONFIG_LEDC_CTRL_FUNC_IN_IRAM is not set -# end of ESP-Driver:LEDC Configurations - -# -# ESP-Driver:MCPWM Configurations -# -# CONFIG_MCPWM_ISR_IRAM_SAFE is not set -# CONFIG_MCPWM_CTRL_FUNC_IN_IRAM is not set -# CONFIG_MCPWM_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:MCPWM Configurations - -# -# ESP-Driver:Parallel IO Configurations -# -# CONFIG_PARLIO_ENABLE_DEBUG_LOG is not set -# CONFIG_PARLIO_ISR_IRAM_SAFE is not set -# end of ESP-Driver:Parallel IO Configurations - -# -# ESP-Driver:PCNT Configurations -# -# CONFIG_PCNT_CTRL_FUNC_IN_IRAM is not set -# CONFIG_PCNT_ISR_IRAM_SAFE is not set -# CONFIG_PCNT_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:PCNT Configurations - -# -# ESP-Driver:RMT Configurations -# -# CONFIG_RMT_ISR_IRAM_SAFE is not set -# CONFIG_RMT_RECV_FUNC_IN_IRAM is not set -# CONFIG_RMT_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:RMT Configurations - -# -# ESP-Driver:Sigma Delta Modulator Configurations -# -# CONFIG_SDM_CTRL_FUNC_IN_IRAM is not set -# CONFIG_SDM_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:Sigma Delta Modulator Configurations - -# -# ESP-Driver:SPI Configurations -# -# CONFIG_SPI_MASTER_IN_IRAM is not set -CONFIG_SPI_MASTER_ISR_IN_IRAM=y -# CONFIG_SPI_SLAVE_IN_IRAM is not set -CONFIG_SPI_SLAVE_ISR_IN_IRAM=y -# end of ESP-Driver:SPI Configurations - -# -# ESP-Driver:Temperature Sensor Configurations -# -# CONFIG_TEMP_SENSOR_ENABLE_DEBUG_LOG is not set -# CONFIG_TEMP_SENSOR_ISR_IRAM_SAFE is not set -# end of ESP-Driver:Temperature Sensor Configurations - -# -# ESP-Driver:UART Configurations -# -# CONFIG_UART_ISR_IN_IRAM is not set -# end of ESP-Driver:UART Configurations - -# -# ESP-Driver:USB Serial/JTAG Configuration -# -CONFIG_USJ_ENABLE_USB_SERIAL_JTAG=y -# end of ESP-Driver:USB Serial/JTAG Configuration - -# -# Ethernet -# -CONFIG_ETH_ENABLED=y -CONFIG_ETH_USE_SPI_ETHERNET=y -# CONFIG_ETH_SPI_ETHERNET_DM9051 is not set -# CONFIG_ETH_SPI_ETHERNET_W5500 is not set -# CONFIG_ETH_SPI_ETHERNET_KSZ8851SNL is not set -# CONFIG_ETH_USE_OPENETH is not set -# CONFIG_ETH_TRANSMIT_MUTEX is not set -# end of Ethernet - -# -# Event Loop Library -# -# CONFIG_ESP_EVENT_LOOP_PROFILING is not set -CONFIG_ESP_EVENT_POST_FROM_ISR=y -CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y -# end of Event Loop Library - -# -# GDB Stub -# -CONFIG_ESP_GDBSTUB_ENABLED=y -# CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME is not set -CONFIG_ESP_GDBSTUB_SUPPORT_TASKS=y -CONFIG_ESP_GDBSTUB_MAX_TASKS=32 -# end of GDB Stub - -# -# ESP HID -# -CONFIG_ESPHID_TASK_SIZE_BT=2048 -CONFIG_ESPHID_TASK_SIZE_BLE=4096 -# end of ESP HID - -# -# ESP HTTP client -# -CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y -# CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set -# CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH is not set -# CONFIG_ESP_HTTP_CLIENT_ENABLE_CUSTOM_TRANSPORT is not set -CONFIG_ESP_HTTP_CLIENT_EVENT_POST_TIMEOUT=2000 -# end of ESP HTTP client - -# -# HTTP Server -# -CONFIG_HTTPD_MAX_REQ_HDR_LEN=512 -CONFIG_HTTPD_MAX_URI_LEN=512 -CONFIG_HTTPD_ERR_RESP_NO_DELAY=y -CONFIG_HTTPD_PURGE_BUF_LEN=32 -# CONFIG_HTTPD_LOG_PURGE_DATA is not set -# CONFIG_HTTPD_WS_SUPPORT is not set -# CONFIG_HTTPD_QUEUE_WORK_BLOCKING is not set -CONFIG_HTTPD_SERVER_EVENT_POST_TIMEOUT=2000 -# end of HTTP Server - -# -# ESP HTTPS OTA -# -# CONFIG_ESP_HTTPS_OTA_DECRYPT_CB is not set -# CONFIG_ESP_HTTPS_OTA_ALLOW_HTTP is not set -CONFIG_ESP_HTTPS_OTA_EVENT_POST_TIMEOUT=2000 -# end of ESP HTTPS OTA - -# -# ESP HTTPS server -# -# CONFIG_ESP_HTTPS_SERVER_ENABLE is not set -CONFIG_ESP_HTTPS_SERVER_EVENT_POST_TIMEOUT=2000 -# end of ESP HTTPS server - -# -# Hardware Settings -# - -# -# Chip revision -# -CONFIG_ESP32C6_REV_MIN_0=y -# CONFIG_ESP32C6_REV_MIN_1 is not set -CONFIG_ESP32C6_REV_MIN_FULL=0 -CONFIG_ESP_REV_MIN_FULL=0 - -# -# Maximum Supported ESP32-C6 Revision (Rev v0.99) -# -CONFIG_ESP32C6_REV_MAX_FULL=99 -CONFIG_ESP_REV_MAX_FULL=99 -CONFIG_ESP_EFUSE_BLOCK_REV_MIN_FULL=0 -CONFIG_ESP_EFUSE_BLOCK_REV_MAX_FULL=99 - -# -# Maximum Supported ESP32-C6 eFuse Block Revision (eFuse Block Rev v0.99) -# -# end of Chip revision - -# -# MAC Config -# -CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_STA=y -CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_AP=y -CONFIG_ESP_MAC_ADDR_UNIVERSE_BT=y -CONFIG_ESP_MAC_ADDR_UNIVERSE_ETH=y -CONFIG_ESP_MAC_ADDR_UNIVERSE_IEEE802154=y -CONFIG_ESP_MAC_UNIVERSAL_MAC_ADDRESSES_FOUR=y -CONFIG_ESP_MAC_UNIVERSAL_MAC_ADDRESSES=4 -# CONFIG_ESP32C6_UNIVERSAL_MAC_ADDRESSES_TWO is not set -CONFIG_ESP32C6_UNIVERSAL_MAC_ADDRESSES_FOUR=y -CONFIG_ESP32C6_UNIVERSAL_MAC_ADDRESSES=4 -# CONFIG_ESP_MAC_USE_CUSTOM_MAC_AS_BASE_MAC is not set -# end of MAC Config - -# -# Sleep Config -# -# CONFIG_ESP_SLEEP_POWER_DOWN_FLASH is not set -CONFIG_ESP_SLEEP_FLASH_LEAKAGE_WORKAROUND=y -# CONFIG_ESP_SLEEP_MSPI_NEED_ALL_IO_PU is not set -CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND=y -CONFIG_ESP_SLEEP_WAIT_FLASH_READY_EXTRA_DELAY=0 -# CONFIG_ESP_SLEEP_CACHE_SAFE_ASSERTION is not set -# CONFIG_ESP_SLEEP_DEBUG is not set -CONFIG_ESP_SLEEP_GPIO_ENABLE_INTERNAL_RESISTORS=y -# end of Sleep Config - -# -# RTC Clock Config -# -CONFIG_RTC_CLK_SRC_INT_RC=y -# CONFIG_RTC_CLK_SRC_EXT_CRYS is not set -# CONFIG_RTC_CLK_SRC_EXT_OSC is not set -# CONFIG_RTC_CLK_SRC_USE_DANGEROUS_RC32K_ALLOWED is not set -CONFIG_RTC_CLK_CAL_CYCLES=1024 -# end of RTC Clock Config - -# -# Peripheral Control -# -CONFIG_PERIPH_CTRL_FUNC_IN_IRAM=y -# end of Peripheral Control - -# -# ETM Configuration -# -# CONFIG_ETM_ENABLE_DEBUG_LOG is not set -# end of ETM Configuration - -# -# GDMA Configurations -# -CONFIG_GDMA_CTRL_FUNC_IN_IRAM=y -# CONFIG_GDMA_ISR_IRAM_SAFE is not set -# CONFIG_GDMA_ENABLE_DEBUG_LOG is not set -# end of GDMA Configurations - -# -# Main XTAL Config -# -CONFIG_XTAL_FREQ_40=y -CONFIG_XTAL_FREQ=40 -# end of Main XTAL Config - -CONFIG_ESP_SPI_BUS_LOCK_ISR_FUNCS_IN_IRAM=y -# end of Hardware Settings - -# -# ESP-Driver:LCD Controller Configurations -# -# CONFIG_LCD_ENABLE_DEBUG_LOG is not set -# end of ESP-Driver:LCD Controller Configurations - -# -# ESP-MM: Memory Management Configurations -# -# end of ESP-MM: Memory Management Configurations - -# -# ESP NETIF Adapter -# -CONFIG_ESP_NETIF_IP_LOST_TIMER_INTERVAL=120 -# CONFIG_ESP_NETIF_PROVIDE_CUSTOM_IMPLEMENTATION is not set -CONFIG_ESP_NETIF_TCPIP_LWIP=y -# CONFIG_ESP_NETIF_LOOPBACK is not set -CONFIG_ESP_NETIF_USES_TCPIP_WITH_BSD_API=y -CONFIG_ESP_NETIF_REPORT_DATA_TRAFFIC=y -# CONFIG_ESP_NETIF_RECEIVE_REPORT_ERRORS is not set -# CONFIG_ESP_NETIF_L2_TAP is not set -# CONFIG_ESP_NETIF_BRIDGE_EN is not set -# CONFIG_ESP_NETIF_SET_DNS_PER_DEFAULT_NETIF is not set -# end of ESP NETIF Adapter - -# -# Partition API Configuration -# -# end of Partition API Configuration - -# -# PHY -# -CONFIG_ESP_PHY_ENABLED=y -CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE=y -# CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is not set -CONFIG_ESP_PHY_MAX_WIFI_TX_POWER=20 -CONFIG_ESP_PHY_MAX_TX_POWER=20 -# CONFIG_ESP_PHY_REDUCE_TX_POWER is not set -# CONFIG_ESP_PHY_ENABLE_CERT_TEST is not set -CONFIG_ESP_PHY_RF_CAL_PARTIAL=y -# CONFIG_ESP_PHY_RF_CAL_NONE is not set -# CONFIG_ESP_PHY_RF_CAL_FULL is not set -CONFIG_ESP_PHY_CALIBRATION_MODE=0 -# CONFIG_ESP_PHY_PLL_TRACK_DEBUG is not set -# CONFIG_ESP_PHY_RECORD_USED_TIME is not set -# end of PHY - -# -# Power Management -# -# CONFIG_PM_ENABLE is not set -# CONFIG_PM_SLP_IRAM_OPT is not set -CONFIG_PM_SLP_DEFAULT_PARAMS_OPT=y -CONFIG_PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP=y -# CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP is not set -# end of Power Management - -# -# ESP PSRAM -# - -# -# ESP Ringbuf -# -# CONFIG_RINGBUF_PLACE_FUNCTIONS_INTO_FLASH is not set -# end of ESP Ringbuf - -# -# ESP Security Specific -# - -# -# Crypto DPA Protection -# -CONFIG_ESP_CRYPTO_DPA_PROTECTION_AT_STARTUP=y -CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL_LOW=y -# CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL_MEDIUM is not set -# CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL_HIGH is not set -CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL=1 -# end of Crypto DPA Protection -# end of ESP Security Specific - -# -# ESP System Settings -# -# CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_80 is not set -# CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_120 is not set -CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_160=y -CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ=160 -# CONFIG_ESP_SYSTEM_PANIC_PRINT_HALT is not set -CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT=y -# CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT is not set -# CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is not set -CONFIG_ESP_SYSTEM_PANIC_REBOOT_DELAY_SECONDS=0 -CONFIG_ESP_SYSTEM_SINGLE_CORE_MODE=y -CONFIG_ESP_SYSTEM_RTC_FAST_MEM_AS_HEAP_DEPCHECK=y -CONFIG_ESP_SYSTEM_ALLOW_RTC_FAST_MEM_AS_HEAP=y -# CONFIG_ESP_SYSTEM_USE_EH_FRAME is not set - -# -# Memory protection -# -CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT=y -# CONFIG_ESP_SYSTEM_PMP_LP_CORE_RESERVE_MEM_EXECUTABLE is not set -# end of Memory protection - -CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE=32 -CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=2304 -CONFIG_ESP_MAIN_TASK_STACK_SIZE=3584 -CONFIG_ESP_MAIN_TASK_AFFINITY_CPU0=y -# CONFIG_ESP_MAIN_TASK_AFFINITY_NO_AFFINITY is not set -CONFIG_ESP_MAIN_TASK_AFFINITY=0x0 -CONFIG_ESP_MINIMAL_SHARED_STACK_SIZE=2048 -CONFIG_ESP_CONSOLE_UART_DEFAULT=y -# CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG is not set -# CONFIG_ESP_CONSOLE_UART_CUSTOM is not set -# CONFIG_ESP_CONSOLE_NONE is not set -# CONFIG_ESP_CONSOLE_SECONDARY_NONE is not set -CONFIG_ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG=y -CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED=y -CONFIG_ESP_CONSOLE_UART=y -CONFIG_ESP_CONSOLE_UART_NUM=0 -CONFIG_ESP_CONSOLE_ROM_SERIAL_PORT_NUM=0 -CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200 -CONFIG_ESP_INT_WDT=y -CONFIG_ESP_INT_WDT_TIMEOUT_MS=300 -CONFIG_ESP_TASK_WDT_EN=y -CONFIG_ESP_TASK_WDT_INIT=y -# CONFIG_ESP_TASK_WDT_PANIC is not set -CONFIG_ESP_TASK_WDT_TIMEOUT_S=5 -CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=y -# CONFIG_ESP_PANIC_HANDLER_IRAM is not set -# CONFIG_ESP_DEBUG_STUBS_ENABLE is not set -# CONFIG_ESP_DEBUG_INCLUDE_OCD_STUB_BINS is not set -CONFIG_ESP_DEBUG_OCDAWARE=y -CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL_4=y - -# -# Brownout Detector -# -CONFIG_ESP_BROWNOUT_DET=y -CONFIG_ESP_BROWNOUT_DET_LVL_SEL_7=y -# CONFIG_ESP_BROWNOUT_DET_LVL_SEL_6 is not set -# CONFIG_ESP_BROWNOUT_DET_LVL_SEL_5 is not set -# CONFIG_ESP_BROWNOUT_DET_LVL_SEL_4 is not set -# CONFIG_ESP_BROWNOUT_DET_LVL_SEL_3 is not set -# CONFIG_ESP_BROWNOUT_DET_LVL_SEL_2 is not set -CONFIG_ESP_BROWNOUT_DET_LVL=7 -# end of Brownout Detector - -CONFIG_ESP_SYSTEM_BROWNOUT_INTR=y -CONFIG_ESP_SYSTEM_HW_STACK_GUARD=y -CONFIG_ESP_SYSTEM_BBPLL_RECALIB=y -CONFIG_ESP_SYSTEM_HW_PC_RECORD=y -# end of ESP System Settings - -# -# IPC (Inter-Processor Call) -# -CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 -# end of IPC (Inter-Processor Call) - -# -# ESP Timer (High Resolution Timer) -# -# CONFIG_ESP_TIMER_PROFILING is not set -CONFIG_ESP_TIME_FUNCS_USE_RTC_TIMER=y -CONFIG_ESP_TIME_FUNCS_USE_ESP_TIMER=y -CONFIG_ESP_TIMER_TASK_STACK_SIZE=3584 -CONFIG_ESP_TIMER_INTERRUPT_LEVEL=1 -# CONFIG_ESP_TIMER_SHOW_EXPERIMENTAL is not set -CONFIG_ESP_TIMER_TASK_AFFINITY=0x0 -CONFIG_ESP_TIMER_TASK_AFFINITY_CPU0=y -CONFIG_ESP_TIMER_ISR_AFFINITY_CPU0=y -# CONFIG_ESP_TIMER_SUPPORTS_ISR_DISPATCH_METHOD is not set -CONFIG_ESP_TIMER_IMPL_SYSTIMER=y -# end of ESP Timer (High Resolution Timer) - -# -# Wi-Fi -# -CONFIG_ESP_WIFI_ENABLED=y -CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=10 -CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM=32 -# CONFIG_ESP_WIFI_STATIC_TX_BUFFER is not set -CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER=y -CONFIG_ESP_WIFI_TX_BUFFER_TYPE=1 -CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER_NUM=32 -CONFIG_ESP_WIFI_STATIC_RX_MGMT_BUFFER=y -# CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUFFER is not set -CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUF=0 -CONFIG_ESP_WIFI_RX_MGMT_BUF_NUM_DEF=5 -# CONFIG_ESP_WIFI_CSI_ENABLED is not set -CONFIG_ESP_WIFI_AMPDU_TX_ENABLED=y -CONFIG_ESP_WIFI_TX_BA_WIN=6 -CONFIG_ESP_WIFI_AMPDU_RX_ENABLED=y -CONFIG_ESP_WIFI_RX_BA_WIN=6 -CONFIG_ESP_WIFI_NVS_ENABLED=y -CONFIG_ESP_WIFI_SOFTAP_BEACON_MAX_LEN=752 -CONFIG_ESP_WIFI_MGMT_SBUF_NUM=32 -CONFIG_ESP_WIFI_IRAM_OPT=y -CONFIG_ESP_WIFI_EXTRA_IRAM_OPT=y -CONFIG_ESP_WIFI_RX_IRAM_OPT=y -CONFIG_ESP_WIFI_ENABLE_WPA3_SAE=y -CONFIG_ESP_WIFI_ENABLE_SAE_PK=y -CONFIG_ESP_WIFI_SOFTAP_SAE_SUPPORT=y -CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_STA=y -CONFIG_ESP_WIFI_SLP_IRAM_OPT=y -CONFIG_ESP_WIFI_SLP_DEFAULT_MIN_ACTIVE_TIME=50 -CONFIG_ESP_WIFI_SLP_DEFAULT_MAX_ACTIVE_TIME=10 -CONFIG_ESP_WIFI_SLP_DEFAULT_WAIT_BROADCAST_DATA_TIME=15 -# CONFIG_ESP_WIFI_FTM_ENABLE is not set -CONFIG_ESP_WIFI_STA_DISCONNECTED_PM_ENABLE=y -# CONFIG_ESP_WIFI_GCMP_SUPPORT is not set -CONFIG_ESP_WIFI_GMAC_SUPPORT=y -CONFIG_ESP_WIFI_SOFTAP_SUPPORT=y -# CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is not set -CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM=7 -CONFIG_ESP_WIFI_MBEDTLS_CRYPTO=y -CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT=y -# CONFIG_ESP_WIFI_WAPI_PSK is not set -# CONFIG_ESP_WIFI_SUITE_B_192 is not set -# CONFIG_ESP_WIFI_11KV_SUPPORT is not set -# CONFIG_ESP_WIFI_MBO_SUPPORT is not set -# CONFIG_ESP_WIFI_DPP_SUPPORT is not set -# CONFIG_ESP_WIFI_11R_SUPPORT is not set -# CONFIG_ESP_WIFI_WPS_SOFTAP_REGISTRAR is not set -# CONFIG_ESP_WIFI_ENABLE_WIFI_TX_STATS is not set -# CONFIG_ESP_WIFI_ENABLE_WIFI_RX_STATS is not set -CONFIG_ESP_WIFI_TX_HETB_QUEUE_NUM=3 - -# -# WPS Configuration Options -# -# CONFIG_ESP_WIFI_WPS_STRICT is not set -# CONFIG_ESP_WIFI_WPS_PASSPHRASE is not set -# end of WPS Configuration Options - -# CONFIG_ESP_WIFI_DEBUG_PRINT is not set -# CONFIG_ESP_WIFI_TESTING_OPTIONS is not set -CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT=y -# CONFIG_ESP_WIFI_ENT_FREE_DYNAMIC_BUFFER is not set -# end of Wi-Fi - -# -# Core dump -# -# CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH is not set -# CONFIG_ESP_COREDUMP_ENABLE_TO_UART is not set -CONFIG_ESP_COREDUMP_ENABLE_TO_NONE=y -# end of Core dump - -# -# FAT Filesystem support -# -CONFIG_FATFS_VOLUME_COUNT=2 -CONFIG_FATFS_LFN_NONE=y -# CONFIG_FATFS_LFN_HEAP is not set -# CONFIG_FATFS_LFN_STACK is not set -# CONFIG_FATFS_SECTOR_512 is not set -CONFIG_FATFS_SECTOR_4096=y -# CONFIG_FATFS_CODEPAGE_DYNAMIC is not set -CONFIG_FATFS_CODEPAGE_437=y -# CONFIG_FATFS_CODEPAGE_720 is not set -# CONFIG_FATFS_CODEPAGE_737 is not set -# CONFIG_FATFS_CODEPAGE_771 is not set -# CONFIG_FATFS_CODEPAGE_775 is not set -# CONFIG_FATFS_CODEPAGE_850 is not set -# CONFIG_FATFS_CODEPAGE_852 is not set -# CONFIG_FATFS_CODEPAGE_855 is not set -# CONFIG_FATFS_CODEPAGE_857 is not set -# CONFIG_FATFS_CODEPAGE_860 is not set -# CONFIG_FATFS_CODEPAGE_861 is not set -# CONFIG_FATFS_CODEPAGE_862 is not set -# CONFIG_FATFS_CODEPAGE_863 is not set -# CONFIG_FATFS_CODEPAGE_864 is not set -# CONFIG_FATFS_CODEPAGE_865 is not set -# CONFIG_FATFS_CODEPAGE_866 is not set -# CONFIG_FATFS_CODEPAGE_869 is not set -# CONFIG_FATFS_CODEPAGE_932 is not set -# CONFIG_FATFS_CODEPAGE_936 is not set -# CONFIG_FATFS_CODEPAGE_949 is not set -# CONFIG_FATFS_CODEPAGE_950 is not set -CONFIG_FATFS_CODEPAGE=437 -CONFIG_FATFS_FS_LOCK=0 -CONFIG_FATFS_TIMEOUT_MS=10000 -CONFIG_FATFS_PER_FILE_CACHE=y -# CONFIG_FATFS_USE_FASTSEEK is not set -CONFIG_FATFS_USE_STRFUNC_NONE=y -# CONFIG_FATFS_USE_STRFUNC_WITHOUT_CRLF_CONV is not set -# CONFIG_FATFS_USE_STRFUNC_WITH_CRLF_CONV is not set -CONFIG_FATFS_VFS_FSTAT_BLKSIZE=0 -# CONFIG_FATFS_IMMEDIATE_FSYNC is not set -# CONFIG_FATFS_USE_LABEL is not set -CONFIG_FATFS_LINK_LOCK=y -# end of FAT Filesystem support - -# -# FreeRTOS -# - -# -# Kernel -# -# CONFIG_FREERTOS_SMP is not set -CONFIG_FREERTOS_UNICORE=y -CONFIG_FREERTOS_HZ=100 -CONFIG_FREERTOS_OPTIMIZED_SCHEDULER=y -# CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE is not set -# CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL is not set -CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY=y -CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS=1 -CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1536 -# CONFIG_FREERTOS_USE_IDLE_HOOK is not set -# CONFIG_FREERTOS_USE_TICK_HOOK is not set -CONFIG_FREERTOS_MAX_TASK_NAME_LEN=16 -# CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY is not set -CONFIG_FREERTOS_USE_TIMERS=y -CONFIG_FREERTOS_TIMER_SERVICE_TASK_NAME="Tmr Svc" -# CONFIG_FREERTOS_TIMER_TASK_AFFINITY_CPU0 is not set -CONFIG_FREERTOS_TIMER_TASK_NO_AFFINITY=y -CONFIG_FREERTOS_TIMER_SERVICE_TASK_CORE_AFFINITY=0x7FFFFFFF -CONFIG_FREERTOS_TIMER_TASK_PRIORITY=1 -CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=2048 -CONFIG_FREERTOS_TIMER_QUEUE_LENGTH=10 -CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0 -CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES=1 -# CONFIG_FREERTOS_USE_TRACE_FACILITY is not set -# CONFIG_FREERTOS_USE_LIST_DATA_INTEGRITY_CHECK_BYTES is not set -# CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS is not set -# CONFIG_FREERTOS_USE_APPLICATION_TASK_TAG is not set -# end of Kernel - -# -# Port -# -CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=y -# CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK is not set -CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS=y -# CONFIG_FREERTOS_TASK_PRE_DELETION_HOOK is not set -# CONFIG_FREERTOS_ENABLE_STATIC_TASK_CLEAN_UP is not set -CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER=y -CONFIG_FREERTOS_ISR_STACKSIZE=1536 -CONFIG_FREERTOS_INTERRUPT_BACKTRACE=y -CONFIG_FREERTOS_TICK_SUPPORT_SYSTIMER=y -CONFIG_FREERTOS_CORETIMER_SYSTIMER_LVL1=y -# CONFIG_FREERTOS_CORETIMER_SYSTIMER_LVL3 is not set -CONFIG_FREERTOS_SYSTICK_USES_SYSTIMER=y -# CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH is not set -# CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE is not set -# end of Port - -# -# Extra -# -# end of Extra - -CONFIG_FREERTOS_PORT=y -CONFIG_FREERTOS_NO_AFFINITY=0x7FFFFFFF -CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION=y -CONFIG_FREERTOS_DEBUG_OCDAWARE=y -CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT=y -CONFIG_FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH=y -CONFIG_FREERTOS_NUMBER_OF_CORES=1 -# end of FreeRTOS - -# -# Hardware Abstraction Layer (HAL) and Low Level (LL) -# -CONFIG_HAL_ASSERTION_EQUALS_SYSTEM=y -# CONFIG_HAL_ASSERTION_DISABLE is not set -# CONFIG_HAL_ASSERTION_SILENT is not set -# CONFIG_HAL_ASSERTION_ENABLE is not set -CONFIG_HAL_DEFAULT_ASSERTION_LEVEL=2 -CONFIG_HAL_SYSTIMER_USE_ROM_IMPL=y -CONFIG_HAL_WDT_USE_ROM_IMPL=y -CONFIG_HAL_SPI_MASTER_FUNC_IN_IRAM=y -CONFIG_HAL_SPI_SLAVE_FUNC_IN_IRAM=y -# end of Hardware Abstraction Layer (HAL) and Low Level (LL) - -# -# Heap memory debugging -# -CONFIG_HEAP_POISONING_DISABLED=y -# CONFIG_HEAP_POISONING_LIGHT is not set -# CONFIG_HEAP_POISONING_COMPREHENSIVE is not set -CONFIG_HEAP_TRACING_OFF=y -# CONFIG_HEAP_TRACING_STANDALONE is not set -# CONFIG_HEAP_TRACING_TOHOST is not set -# CONFIG_HEAP_USE_HOOKS is not set -# CONFIG_HEAP_TASK_TRACKING is not set -# CONFIG_HEAP_ABORT_WHEN_ALLOCATION_FAILS is not set -CONFIG_HEAP_TLSF_USE_ROM_IMPL=y -# end of Heap memory debugging - -# -# IEEE 802.15.4 -# -CONFIG_IEEE802154_ENABLED=y -CONFIG_IEEE802154_RX_BUFFER_SIZE=20 -# CONFIG_IEEE802154_CCA_CARRIER is not set -CONFIG_IEEE802154_CCA_ED=y -# CONFIG_IEEE802154_CCA_CARRIER_OR_ED is not set -# CONFIG_IEEE802154_CCA_CARRIER_AND_ED is not set -CONFIG_IEEE802154_CCA_MODE=1 -CONFIG_IEEE802154_CCA_THRESHOLD=-60 -CONFIG_IEEE802154_PENDING_TABLE_SIZE=20 -# CONFIG_IEEE802154_MULTI_PAN_ENABLE is not set -# CONFIG_IEEE802154_TIMING_OPTIMIZATION is not set -# CONFIG_IEEE802154_DEBUG is not set -# end of IEEE 802.15.4 - -# -# Log -# - -# -# Log Level -# -# CONFIG_LOG_DEFAULT_LEVEL_NONE is not set -# CONFIG_LOG_DEFAULT_LEVEL_ERROR is not set -# CONFIG_LOG_DEFAULT_LEVEL_WARN is not set -CONFIG_LOG_DEFAULT_LEVEL_INFO=y -# CONFIG_LOG_DEFAULT_LEVEL_DEBUG is not set -# CONFIG_LOG_DEFAULT_LEVEL_VERBOSE is not set -CONFIG_LOG_DEFAULT_LEVEL=3 -CONFIG_LOG_MAXIMUM_EQUALS_DEFAULT=y -# CONFIG_LOG_MAXIMUM_LEVEL_DEBUG is not set -# CONFIG_LOG_MAXIMUM_LEVEL_VERBOSE is not set -CONFIG_LOG_MAXIMUM_LEVEL=3 - -# -# Level Settings -# -# CONFIG_LOG_MASTER_LEVEL is not set -CONFIG_LOG_DYNAMIC_LEVEL_CONTROL=y -# CONFIG_LOG_TAG_LEVEL_IMPL_NONE is not set -# CONFIG_LOG_TAG_LEVEL_IMPL_LINKED_LIST is not set -CONFIG_LOG_TAG_LEVEL_IMPL_CACHE_AND_LINKED_LIST=y -# CONFIG_LOG_TAG_LEVEL_CACHE_ARRAY is not set -CONFIG_LOG_TAG_LEVEL_CACHE_BINARY_MIN_HEAP=y -CONFIG_LOG_TAG_LEVEL_IMPL_CACHE_SIZE=31 -# end of Level Settings -# end of Log Level - -# -# Format -# -CONFIG_LOG_COLORS=y -CONFIG_LOG_TIMESTAMP_SOURCE_RTOS=y -# CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM is not set -# end of Format -# end of Log - -# -# LWIP -# -CONFIG_LWIP_ENABLE=y -CONFIG_LWIP_LOCAL_HOSTNAME="espressif" -# CONFIG_LWIP_NETIF_API is not set -CONFIG_LWIP_TCPIP_TASK_PRIO=18 -# CONFIG_LWIP_TCPIP_CORE_LOCKING is not set -# CONFIG_LWIP_CHECK_THREAD_SAFETY is not set -CONFIG_LWIP_DNS_SUPPORT_MDNS_QUERIES=y -# CONFIG_LWIP_L2_TO_L3_COPY is not set -# CONFIG_LWIP_IRAM_OPTIMIZATION is not set -# CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION is not set -CONFIG_LWIP_TIMERS_ONDEMAND=y -CONFIG_LWIP_ND6=y -# CONFIG_LWIP_FORCE_ROUTER_FORWARDING is not set -CONFIG_LWIP_MAX_SOCKETS=10 -# CONFIG_LWIP_USE_ONLY_LWIP_SELECT is not set -# CONFIG_LWIP_SO_LINGER is not set -CONFIG_LWIP_SO_REUSE=y -CONFIG_LWIP_SO_REUSE_RXTOALL=y -# CONFIG_LWIP_SO_RCVBUF is not set -# CONFIG_LWIP_NETBUF_RECVINFO is not set -CONFIG_LWIP_IP_DEFAULT_TTL=64 -CONFIG_LWIP_IP4_FRAG=y -CONFIG_LWIP_IP6_FRAG=y -# CONFIG_LWIP_IP4_REASSEMBLY is not set -# CONFIG_LWIP_IP6_REASSEMBLY is not set -CONFIG_LWIP_IP_REASS_MAX_PBUFS=10 -# CONFIG_LWIP_IP_FORWARD is not set -# CONFIG_LWIP_STATS is not set -CONFIG_LWIP_ESP_GRATUITOUS_ARP=y -CONFIG_LWIP_GARP_TMR_INTERVAL=60 -CONFIG_LWIP_ESP_MLDV6_REPORT=y -CONFIG_LWIP_MLDV6_TMR_INTERVAL=40 -CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=32 -CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y -# CONFIG_LWIP_DHCP_DOES_ACD_CHECK is not set -# CONFIG_LWIP_DHCP_DOES_NOT_CHECK_OFFERED_IP is not set -# CONFIG_LWIP_DHCP_DISABLE_CLIENT_ID is not set -CONFIG_LWIP_DHCP_DISABLE_VENDOR_CLASS_ID=y -# CONFIG_LWIP_DHCP_RESTORE_LAST_IP is not set -CONFIG_LWIP_DHCP_OPTIONS_LEN=68 -CONFIG_LWIP_NUM_NETIF_CLIENT_DATA=0 -CONFIG_LWIP_DHCP_COARSE_TIMER_SECS=1 - -# -# DHCP server -# -CONFIG_LWIP_DHCPS=y -CONFIG_LWIP_DHCPS_LEASE_UNIT=60 -CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8 -CONFIG_LWIP_DHCPS_STATIC_ENTRIES=y -CONFIG_LWIP_DHCPS_ADD_DNS=y -# end of DHCP server - -# CONFIG_LWIP_AUTOIP is not set -CONFIG_LWIP_IPV4=y -CONFIG_LWIP_IPV6=y -# CONFIG_LWIP_IPV6_AUTOCONFIG is not set -CONFIG_LWIP_IPV6_NUM_ADDRESSES=3 -# CONFIG_LWIP_IPV6_FORWARD is not set -# CONFIG_LWIP_NETIF_STATUS_CALLBACK is not set -CONFIG_LWIP_NETIF_LOOPBACK=y -CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8 - -# -# TCP -# -CONFIG_LWIP_MAX_ACTIVE_TCP=16 -CONFIG_LWIP_MAX_LISTENING_TCP=16 -CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION=y -CONFIG_LWIP_TCP_MAXRTX=12 -CONFIG_LWIP_TCP_SYNMAXRTX=12 -CONFIG_LWIP_TCP_MSS=1440 -CONFIG_LWIP_TCP_TMR_INTERVAL=250 -CONFIG_LWIP_TCP_MSL=60000 -CONFIG_LWIP_TCP_FIN_WAIT_TIMEOUT=20000 -CONFIG_LWIP_TCP_SND_BUF_DEFAULT=5760 -CONFIG_LWIP_TCP_WND_DEFAULT=5760 -CONFIG_LWIP_TCP_RECVMBOX_SIZE=6 -CONFIG_LWIP_TCP_ACCEPTMBOX_SIZE=6 -CONFIG_LWIP_TCP_QUEUE_OOSEQ=y -CONFIG_LWIP_TCP_OOSEQ_TIMEOUT=6 -CONFIG_LWIP_TCP_OOSEQ_MAX_PBUFS=4 -# CONFIG_LWIP_TCP_SACK_OUT is not set -CONFIG_LWIP_TCP_OVERSIZE_MSS=y -# CONFIG_LWIP_TCP_OVERSIZE_QUARTER_MSS is not set -# CONFIG_LWIP_TCP_OVERSIZE_DISABLE is not set -CONFIG_LWIP_TCP_RTO_TIME=1500 -# end of TCP - -# -# UDP -# -CONFIG_LWIP_MAX_UDP_PCBS=16 -CONFIG_LWIP_UDP_RECVMBOX_SIZE=6 -# end of UDP - -# -# Checksums -# -# CONFIG_LWIP_CHECKSUM_CHECK_IP is not set -# CONFIG_LWIP_CHECKSUM_CHECK_UDP is not set -CONFIG_LWIP_CHECKSUM_CHECK_ICMP=y -# end of Checksums - -CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=3072 -CONFIG_LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY=y -# CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0 is not set -CONFIG_LWIP_TCPIP_TASK_AFFINITY=0x7FFFFFFF -CONFIG_LWIP_IPV6_MEMP_NUM_ND6_QUEUE=3 -CONFIG_LWIP_IPV6_ND6_NUM_NEIGHBORS=5 -CONFIG_LWIP_IPV6_ND6_NUM_PREFIXES=5 -CONFIG_LWIP_IPV6_ND6_NUM_ROUTERS=3 -CONFIG_LWIP_IPV6_ND6_NUM_DESTINATIONS=10 -# CONFIG_LWIP_PPP_SUPPORT is not set -# CONFIG_LWIP_SLIP_SUPPORT is not set - -# -# ICMP -# -CONFIG_LWIP_ICMP=y -# CONFIG_LWIP_MULTICAST_PING is not set -# CONFIG_LWIP_BROADCAST_PING is not set -# end of ICMP - -# -# LWIP RAW API -# -CONFIG_LWIP_MAX_RAW_PCBS=16 -# end of LWIP RAW API - -# -# SNTP -# -CONFIG_LWIP_SNTP_MAX_SERVERS=1 -# CONFIG_LWIP_DHCP_GET_NTP_SRV is not set -CONFIG_LWIP_SNTP_UPDATE_DELAY=3600000 -CONFIG_LWIP_SNTP_STARTUP_DELAY=y -CONFIG_LWIP_SNTP_MAXIMUM_STARTUP_DELAY=5000 -# end of SNTP - -# -# DNS -# -CONFIG_LWIP_DNS_MAX_HOST_IP=1 -CONFIG_LWIP_DNS_MAX_SERVERS=3 -# CONFIG_LWIP_FALLBACK_DNS_SERVER_SUPPORT is not set -# CONFIG_LWIP_DNS_SETSERVER_WITH_NETIF is not set -# end of DNS - -CONFIG_LWIP_BRIDGEIF_MAX_PORTS=7 -CONFIG_LWIP_ESP_LWIP_ASSERT=y - -# -# Hooks -# -# CONFIG_LWIP_HOOK_TCP_ISN_NONE is not set -CONFIG_LWIP_HOOK_TCP_ISN_DEFAULT=y -# CONFIG_LWIP_HOOK_TCP_ISN_CUSTOM is not set -CONFIG_LWIP_HOOK_IP6_ROUTE_NONE=y -# CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT is not set -# CONFIG_LWIP_HOOK_IP6_ROUTE_CUSTOM is not set -CONFIG_LWIP_HOOK_ND6_GET_GW_NONE=y -# CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT is not set -# CONFIG_LWIP_HOOK_ND6_GET_GW_CUSTOM is not set -CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_NONE=y -# CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_DEFAULT is not set -# CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_CUSTOM is not set -CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE=y -# CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_DEFAULT is not set -# CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_CUSTOM is not set -CONFIG_LWIP_HOOK_DNS_EXT_RESOLVE_NONE=y -# CONFIG_LWIP_HOOK_DNS_EXT_RESOLVE_CUSTOM is not set -CONFIG_LWIP_HOOK_IP6_INPUT_NONE=y -# CONFIG_LWIP_HOOK_IP6_INPUT_DEFAULT is not set -# CONFIG_LWIP_HOOK_IP6_INPUT_CUSTOM is not set -# end of Hooks - -# CONFIG_LWIP_DEBUG is not set -# end of LWIP - -# -# mbedTLS -# -CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y -# CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set -# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set -CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y -CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384 -CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096 -# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set -# CONFIG_MBEDTLS_DEBUG is not set - -# -# mbedTLS v3.x related -# -# CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is not set -# CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH is not set -# CONFIG_MBEDTLS_X509_TRUSTED_CERT_CALLBACK is not set -# CONFIG_MBEDTLS_SSL_CONTEXT_SERIALIZATION is not set -CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE=y -CONFIG_MBEDTLS_PKCS7_C=y -# end of mbedTLS v3.x related - -# -# Certificate Bundle -# -CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=y -CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y -# CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set -# CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set -# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set -# CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEPRECATED_LIST is not set -CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 -# end of Certificate Bundle - -# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set -CONFIG_MBEDTLS_CMAC_C=y -CONFIG_MBEDTLS_HARDWARE_AES=y -CONFIG_MBEDTLS_AES_USE_INTERRUPT=y -CONFIG_MBEDTLS_AES_INTERRUPT_LEVEL=0 -CONFIG_MBEDTLS_GCM_SUPPORT_NON_AES_CIPHER=y -CONFIG_MBEDTLS_HARDWARE_MPI=y -CONFIG_MBEDTLS_LARGE_KEY_SOFTWARE_MPI=y -CONFIG_MBEDTLS_MPI_USE_INTERRUPT=y -CONFIG_MBEDTLS_MPI_INTERRUPT_LEVEL=0 -CONFIG_MBEDTLS_HARDWARE_SHA=y -CONFIG_MBEDTLS_HARDWARE_ECC=y -CONFIG_MBEDTLS_ECC_OTHER_CURVES_SOFT_FALLBACK=y -CONFIG_MBEDTLS_ROM_MD5=y -# CONFIG_MBEDTLS_ATCA_HW_ECDSA_SIGN is not set -# CONFIG_MBEDTLS_ATCA_HW_ECDSA_VERIFY is not set -CONFIG_MBEDTLS_HAVE_TIME=y -# CONFIG_MBEDTLS_PLATFORM_TIME_ALT is not set -# CONFIG_MBEDTLS_HAVE_TIME_DATE is not set -CONFIG_MBEDTLS_ECDSA_DETERMINISTIC=y -CONFIG_MBEDTLS_SHA512_C=y -# CONFIG_MBEDTLS_SHA3_C is not set -CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT=y -# CONFIG_MBEDTLS_TLS_SERVER_ONLY is not set -# CONFIG_MBEDTLS_TLS_CLIENT_ONLY is not set -# CONFIG_MBEDTLS_TLS_DISABLED is not set -CONFIG_MBEDTLS_TLS_SERVER=y -CONFIG_MBEDTLS_TLS_CLIENT=y -CONFIG_MBEDTLS_TLS_ENABLED=y - -# -# TLS Key Exchange Methods -# -# CONFIG_MBEDTLS_PSK_MODES is not set -CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y -CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE=y -CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA=y -CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA=y -CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA=y -CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA=y -# end of TLS Key Exchange Methods - -CONFIG_MBEDTLS_SSL_RENEGOTIATION=y -CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y -# CONFIG_MBEDTLS_SSL_PROTO_GMTSSL1_1 is not set -# CONFIG_MBEDTLS_SSL_PROTO_DTLS is not set -CONFIG_MBEDTLS_SSL_ALPN=y -CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS=y -CONFIG_MBEDTLS_SERVER_SSL_SESSION_TICKETS=y - -# -# Symmetric Ciphers -# -CONFIG_MBEDTLS_AES_C=y -# CONFIG_MBEDTLS_CAMELLIA_C is not set -# CONFIG_MBEDTLS_DES_C is not set -# CONFIG_MBEDTLS_BLOWFISH_C is not set -# CONFIG_MBEDTLS_XTEA_C is not set -CONFIG_MBEDTLS_CCM_C=y -CONFIG_MBEDTLS_GCM_C=y -# CONFIG_MBEDTLS_NIST_KW_C is not set -# end of Symmetric Ciphers - -# CONFIG_MBEDTLS_RIPEMD160_C is not set - -# -# Certificates -# -CONFIG_MBEDTLS_PEM_PARSE_C=y -CONFIG_MBEDTLS_PEM_WRITE_C=y -CONFIG_MBEDTLS_X509_CRL_PARSE_C=y -CONFIG_MBEDTLS_X509_CSR_PARSE_C=y -# end of Certificates - -CONFIG_MBEDTLS_ECP_C=y -CONFIG_MBEDTLS_PK_PARSE_EC_EXTENDED=y -CONFIG_MBEDTLS_PK_PARSE_EC_COMPRESSED=y -# CONFIG_MBEDTLS_DHM_C is not set -CONFIG_MBEDTLS_ECDH_C=y -CONFIG_MBEDTLS_ECDSA_C=y -# CONFIG_MBEDTLS_ECJPAKE_C is not set -CONFIG_MBEDTLS_ECP_DP_SECP192R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP224R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP521R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP192K1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP224K1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_SECP256K1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_BP256R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_BP384R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED=y -CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED=y -CONFIG_MBEDTLS_ECP_NIST_OPTIM=y -CONFIG_MBEDTLS_ECP_FIXED_POINT_OPTIM=y -# CONFIG_MBEDTLS_POLY1305_C is not set -# CONFIG_MBEDTLS_CHACHA20_C is not set -# CONFIG_MBEDTLS_HKDF_C is not set -# CONFIG_MBEDTLS_THREADING_C is not set -CONFIG_MBEDTLS_ERROR_STRINGS=y -CONFIG_MBEDTLS_FS_IO=y -# end of mbedTLS - -# -# ESP-MQTT Configurations -# -CONFIG_MQTT_PROTOCOL_311=y -# CONFIG_MQTT_PROTOCOL_5 is not set -CONFIG_MQTT_TRANSPORT_SSL=y -CONFIG_MQTT_TRANSPORT_WEBSOCKET=y -CONFIG_MQTT_TRANSPORT_WEBSOCKET_SECURE=y -# CONFIG_MQTT_MSG_ID_INCREMENTAL is not set -# CONFIG_MQTT_SKIP_PUBLISH_IF_DISCONNECTED is not set -# CONFIG_MQTT_REPORT_DELETED_MESSAGES is not set -# CONFIG_MQTT_USE_CUSTOM_CONFIG is not set -# CONFIG_MQTT_TASK_CORE_SELECTION_ENABLED is not set -# CONFIG_MQTT_CUSTOM_OUTBOX is not set -# end of ESP-MQTT Configurations - -# -# Newlib -# -CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF=y -# CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF is not set -# CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR is not set -# CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF is not set -# CONFIG_NEWLIB_STDIN_LINE_ENDING_LF is not set -CONFIG_NEWLIB_STDIN_LINE_ENDING_CR=y -# CONFIG_NEWLIB_NANO_FORMAT is not set -CONFIG_NEWLIB_TIME_SYSCALL_USE_RTC_HRT=y -# CONFIG_NEWLIB_TIME_SYSCALL_USE_RTC is not set -# CONFIG_NEWLIB_TIME_SYSCALL_USE_HRT is not set -# CONFIG_NEWLIB_TIME_SYSCALL_USE_NONE is not set -# end of Newlib - -# -# NVS -# -# CONFIG_NVS_ENCRYPTION is not set -# CONFIG_NVS_ASSERT_ERROR_CHECK is not set -# CONFIG_NVS_LEGACY_DUP_KEYS_COMPATIBILITY is not set -# end of NVS - -# -# OpenThread -# -# CONFIG_OPENTHREAD_ENABLED is not set - -# -# OpenThread Spinel -# -# CONFIG_OPENTHREAD_SPINEL_ONLY is not set -# end of OpenThread Spinel -# end of OpenThread - -# -# Protocomm -# -CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_0=y -CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_1=y -CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_2=y -CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_PATCH_VERSION=y -# end of Protocomm - -# -# PThreads -# -CONFIG_PTHREAD_TASK_PRIO_DEFAULT=5 -CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 -CONFIG_PTHREAD_STACK_MIN=768 -CONFIG_PTHREAD_TASK_CORE_DEFAULT=-1 -CONFIG_PTHREAD_TASK_NAME_DEFAULT="pthread" -# end of PThreads - -# -# MMU Config -# -CONFIG_MMU_PAGE_SIZE_64KB=y -CONFIG_MMU_PAGE_MODE="64KB" -CONFIG_MMU_PAGE_SIZE=0x10000 -# end of MMU Config - -# -# Main Flash configuration -# - -# -# SPI Flash behavior when brownout -# -CONFIG_SPI_FLASH_BROWNOUT_RESET_XMC=y -CONFIG_SPI_FLASH_BROWNOUT_RESET=y -# end of SPI Flash behavior when brownout - -# -# Optional and Experimental Features (READ DOCS FIRST) -# - -# -# Features here require specific hardware (READ DOCS FIRST!) -# -# CONFIG_SPI_FLASH_AUTO_SUSPEND is not set -CONFIG_SPI_FLASH_SUSPEND_TSUS_VAL_US=50 -# CONFIG_SPI_FLASH_FORCE_ENABLE_XMC_C_SUSPEND is not set -# end of Optional and Experimental Features (READ DOCS FIRST) -# end of Main Flash configuration - -# -# SPI Flash driver -# -# CONFIG_SPI_FLASH_VERIFY_WRITE is not set -# CONFIG_SPI_FLASH_ENABLE_COUNTERS is not set -CONFIG_SPI_FLASH_ROM_DRIVER_PATCH=y -# CONFIG_SPI_FLASH_ROM_IMPL is not set -CONFIG_SPI_FLASH_DANGEROUS_WRITE_ABORTS=y -# CONFIG_SPI_FLASH_DANGEROUS_WRITE_FAILS is not set -# CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED is not set -# CONFIG_SPI_FLASH_BYPASS_BLOCK_ERASE is not set -CONFIG_SPI_FLASH_YIELD_DURING_ERASE=y -CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=20 -CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=1 -CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=8192 -# CONFIG_SPI_FLASH_SIZE_OVERRIDE is not set -# CONFIG_SPI_FLASH_CHECK_ERASE_TIMEOUT_DISABLED is not set -# CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is not set - -# -# Auto-detect flash chips -# -CONFIG_SPI_FLASH_VENDOR_XMC_SUPPORTED=y -# CONFIG_SPI_FLASH_SUPPORT_ISSI_CHIP is not set -# CONFIG_SPI_FLASH_SUPPORT_MXIC_CHIP is not set -# CONFIG_SPI_FLASH_SUPPORT_GD_CHIP is not set -# CONFIG_SPI_FLASH_SUPPORT_WINBOND_CHIP is not set -# CONFIG_SPI_FLASH_SUPPORT_BOYA_CHIP is not set -# CONFIG_SPI_FLASH_SUPPORT_TH_CHIP is not set -# end of Auto-detect flash chips - -CONFIG_SPI_FLASH_ENABLE_ENCRYPTED_READ_WRITE=y -# end of SPI Flash driver - -# -# SPIFFS Configuration -# -CONFIG_SPIFFS_MAX_PARTITIONS=3 - -# -# SPIFFS Cache Configuration -# -CONFIG_SPIFFS_CACHE=y -CONFIG_SPIFFS_CACHE_WR=y -# CONFIG_SPIFFS_CACHE_STATS is not set -# end of SPIFFS Cache Configuration - -CONFIG_SPIFFS_PAGE_CHECK=y -CONFIG_SPIFFS_GC_MAX_RUNS=10 -# CONFIG_SPIFFS_GC_STATS is not set -CONFIG_SPIFFS_PAGE_SIZE=256 -CONFIG_SPIFFS_OBJ_NAME_LEN=32 -# CONFIG_SPIFFS_FOLLOW_SYMLINKS is not set -CONFIG_SPIFFS_USE_MAGIC=y -CONFIG_SPIFFS_USE_MAGIC_LENGTH=y -CONFIG_SPIFFS_META_LENGTH=4 -CONFIG_SPIFFS_USE_MTIME=y - -# -# Debug Configuration -# -# CONFIG_SPIFFS_DBG is not set -# CONFIG_SPIFFS_API_DBG is not set -# CONFIG_SPIFFS_GC_DBG is not set -# CONFIG_SPIFFS_CACHE_DBG is not set -# CONFIG_SPIFFS_CHECK_DBG is not set -# CONFIG_SPIFFS_TEST_VISUALISATION is not set -# end of Debug Configuration -# end of SPIFFS Configuration - -# -# TCP Transport -# - -# -# Websocket -# -CONFIG_WS_TRANSPORT=y -CONFIG_WS_BUFFER_SIZE=1024 -# CONFIG_WS_DYNAMIC_BUFFER is not set -# end of Websocket -# end of TCP Transport - -# -# Ultra Low Power (ULP) Co-processor -# -# CONFIG_ULP_COPROC_ENABLED is not set - -# -# ULP Debugging Options -# -# end of ULP Debugging Options -# end of Ultra Low Power (ULP) Co-processor - -# -# Unity unit testing library -# -CONFIG_UNITY_ENABLE_FLOAT=y -CONFIG_UNITY_ENABLE_DOUBLE=y -# CONFIG_UNITY_ENABLE_64BIT is not set -# CONFIG_UNITY_ENABLE_COLOR is not set -CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y -# CONFIG_UNITY_ENABLE_FIXTURE is not set -# CONFIG_UNITY_ENABLE_BACKTRACE_ON_FAIL is not set -# end of Unity unit testing library - -# -# Virtual file system -# -CONFIG_VFS_SUPPORT_IO=y -CONFIG_VFS_SUPPORT_DIR=y -CONFIG_VFS_SUPPORT_SELECT=y -CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT=y -# CONFIG_VFS_SELECT_IN_RAM is not set -CONFIG_VFS_SUPPORT_TERMIOS=y -CONFIG_VFS_MAX_COUNT=8 - -# -# Host File System I/O (Semihosting) -# -CONFIG_VFS_SEMIHOSTFS_MAX_MOUNT_POINTS=1 -# end of Host File System I/O (Semihosting) - -CONFIG_VFS_INITIALIZE_DEV_NULL=y -# end of Virtual file system - -# -# Wear Levelling -# -# CONFIG_WL_SECTOR_SIZE_512 is not set -CONFIG_WL_SECTOR_SIZE_4096=y -CONFIG_WL_SECTOR_SIZE=4096 -# end of Wear Levelling - -# -# Wi-Fi Provisioning Manager -# -CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 -CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 -CONFIG_WIFI_PROV_STA_ALL_CHANNEL_SCAN=y -# CONFIG_WIFI_PROV_STA_FAST_SCAN is not set -# end of Wi-Fi Provisioning Manager - -# -# PRG32 framework -# -CONFIG_PRG32_DISPLAY_ILI9341=y -CONFIG_PRG32_SPLASH_ENABLED=y -CONFIG_PRG32_SPLASH_DURATION_MS=900 -CONFIG_PRG32_SPLASH_SOUND_ENABLED=y -# CONFIG_PRG32_CART_RAM_CLASSROOM is not set -CONFIG_PRG32_CART_RAM_EXTENDED=y -# CONFIG_PRG32_CART_RAM_LARGE_128 is not set -# CONFIG_PRG32_CART_RAM_CUSTOM is not set -CONFIG_PRG32_CART_RAM_KIB=64 -CONFIG_PRG32_CART_MAX_KIB=64 - -# -# Performance metrics -# -# CONFIG_PRG32_METRICS_ENABLE is not set -# end of Performance metrics - -# -# CartridgeStore integration -# -CONFIG_PRG32_STORE_URL="" -# end of CartridgeStore integration -# end of PRG32 framework - -# -# PRG32 Audio -# -CONFIG_PRG32_AUDIO_ENABLED=y -CONFIG_PRG32_AUDIO_SAMPLE_RATE=22050 -CONFIG_PRG32_AUDIO_MODE_MONO=y -# CONFIG_PRG32_AUDIO_MODE_STEREO is not set -CONFIG_PRG32_AUDIO_MAX_VOICES=6 -CONFIG_PRG32_AUDIO_I2S_BCLK_GPIO=4 -CONFIG_PRG32_AUDIO_I2S_LRCLK_GPIO=11 -CONFIG_PRG32_AUDIO_I2S_DATA_GPIO=23 -CONFIG_PRG32_AUDIO_I2S_SD_GPIO=-1 -# end of PRG32 Audio - -# -# ESP WebSocket client -# -# CONFIG_ESP_WS_CLIENT_ENABLE_DYNAMIC_BUFFER is not set -# CONFIG_ESP_WS_CLIENT_SEPARATE_TX_LOCK is not set -# end of ESP WebSocket client - -# -# mDNS -# -CONFIG_MDNS_MAX_INTERFACES=3 -CONFIG_MDNS_MAX_SERVICES=10 -CONFIG_MDNS_TASK_PRIORITY=1 -CONFIG_MDNS_ACTION_QUEUE_LEN=16 -CONFIG_MDNS_TASK_STACK_SIZE=4096 -# CONFIG_MDNS_TASK_AFFINITY_NO_AFFINITY is not set -CONFIG_MDNS_TASK_AFFINITY_CPU0=y -CONFIG_MDNS_TASK_AFFINITY=0x0 - -# -# MDNS Memory Configuration -# -CONFIG_MDNS_TASK_CREATE_FROM_INTERNAL=y -CONFIG_MDNS_MEMORY_ALLOC_INTERNAL=y -# CONFIG_MDNS_MEMORY_CUSTOM_IMPL is not set -# end of MDNS Memory Configuration - -CONFIG_MDNS_SERVICE_ADD_TIMEOUT_MS=2000 -CONFIG_MDNS_TIMER_PERIOD_MS=100 -# CONFIG_MDNS_NETWORKING_SOCKET is not set -# CONFIG_MDNS_SKIP_SUPPRESSING_OWN_QUERIES is not set -# CONFIG_MDNS_ENABLE_DEBUG_PRINTS is not set -CONFIG_MDNS_ENABLE_CONSOLE_CLI=y -# CONFIG_MDNS_RESPOND_REVERSE_QUERIES is not set -CONFIG_MDNS_MULTIPLE_INSTANCE=y - -# -# MDNS Predefined interfaces -# -CONFIG_MDNS_PREDEF_NETIF_STA=y -CONFIG_MDNS_PREDEF_NETIF_AP=y -CONFIG_MDNS_PREDEF_NETIF_ETH=y -# end of MDNS Predefined interfaces -# end of mDNS -# end of Component config - -# CONFIG_IDF_EXPERIMENTAL_FEATURES is not set - -# Deprecated options for backward compatibility -# CONFIG_APP_BUILD_TYPE_ELF_RAM is not set -# CONFIG_NO_BLOBS is not set -# CONFIG_LOG_BOOTLOADER_LEVEL_NONE is not set -# CONFIG_LOG_BOOTLOADER_LEVEL_ERROR is not set -# CONFIG_LOG_BOOTLOADER_LEVEL_WARN is not set -CONFIG_LOG_BOOTLOADER_LEVEL_INFO=y -# CONFIG_LOG_BOOTLOADER_LEVEL_DEBUG is not set -# CONFIG_LOG_BOOTLOADER_LEVEL_VERBOSE is not set -CONFIG_LOG_BOOTLOADER_LEVEL=3 -# CONFIG_APP_ROLLBACK_ENABLE is not set -# CONFIG_FLASH_ENCRYPTION_ENABLED is not set -# CONFIG_FLASHMODE_QIO is not set -# CONFIG_FLASHMODE_QOUT is not set -CONFIG_FLASHMODE_DIO=y -# CONFIG_FLASHMODE_DOUT is not set -CONFIG_MONITOR_BAUD=115200 -CONFIG_OPTIMIZATION_LEVEL_DEBUG=y -CONFIG_COMPILER_OPTIMIZATION_LEVEL_DEBUG=y -CONFIG_COMPILER_OPTIMIZATION_DEFAULT=y -# CONFIG_OPTIMIZATION_LEVEL_RELEASE is not set -# CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE is not set -CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED=y -# CONFIG_OPTIMIZATION_ASSERTIONS_SILENT is not set -# CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED is not set -CONFIG_OPTIMIZATION_ASSERTION_LEVEL=2 -# CONFIG_CXX_EXCEPTIONS is not set -CONFIG_STACK_CHECK_NONE=y -# CONFIG_STACK_CHECK_NORM is not set -# CONFIG_STACK_CHECK_STRONG is not set -# CONFIG_STACK_CHECK_ALL is not set -# CONFIG_WARN_WRITE_STRINGS is not set -# CONFIG_ESP32_APPTRACE_DEST_TRAX is not set -CONFIG_ESP32_APPTRACE_DEST_NONE=y -CONFIG_ESP32_APPTRACE_LOCK_ENABLE=y -CONFIG_SW_COEXIST_ENABLE=y -CONFIG_ESP32_WIFI_SW_COEXIST_ENABLE=y -CONFIG_ESP_WIFI_SW_COEXIST_ENABLE=y -# CONFIG_EXTERNAL_COEX_ENABLE is not set -# CONFIG_ESP_WIFI_EXTERNAL_COEXIST_ENABLE is not set -# CONFIG_MCPWM_ISR_IN_IRAM is not set -# CONFIG_EVENT_LOOP_PROFILING is not set -CONFIG_POST_EVENTS_FROM_ISR=y -CONFIG_POST_EVENTS_FROM_IRAM_ISR=y -CONFIG_GDBSTUB_SUPPORT_TASKS=y -CONFIG_GDBSTUB_MAX_TASKS=32 -# CONFIG_OTA_ALLOW_HTTP is not set -# CONFIG_ESP_SYSTEM_PD_FLASH is not set -CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y -# CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION is not set -CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20 -CONFIG_ESP32_PHY_MAX_TX_POWER=20 -# CONFIG_REDUCE_PHY_TX_POWER is not set -# CONFIG_ESP32_REDUCE_PHY_TX_POWER is not set -CONFIG_ESP_SYSTEM_PM_POWER_DOWN_CPU=y -CONFIG_SYSTEM_EVENT_QUEUE_SIZE=32 -CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE=2304 -CONFIG_MAIN_TASK_STACK_SIZE=3584 -CONFIG_CONSOLE_UART_DEFAULT=y -# CONFIG_CONSOLE_UART_CUSTOM is not set -# CONFIG_CONSOLE_UART_NONE is not set -# CONFIG_ESP_CONSOLE_UART_NONE is not set -CONFIG_CONSOLE_UART=y -CONFIG_CONSOLE_UART_NUM=0 -CONFIG_CONSOLE_UART_BAUDRATE=115200 -CONFIG_INT_WDT=y -CONFIG_INT_WDT_TIMEOUT_MS=300 -CONFIG_TASK_WDT=y -CONFIG_ESP_TASK_WDT=y -# CONFIG_TASK_WDT_PANIC is not set -CONFIG_TASK_WDT_TIMEOUT_S=5 -CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=y -# CONFIG_ESP32_DEBUG_STUBS_ENABLE is not set -CONFIG_BROWNOUT_DET=y -CONFIG_BROWNOUT_DET_LVL_SEL_7=y -# CONFIG_BROWNOUT_DET_LVL_SEL_6 is not set -# CONFIG_BROWNOUT_DET_LVL_SEL_5 is not set -# CONFIG_BROWNOUT_DET_LVL_SEL_4 is not set -# CONFIG_BROWNOUT_DET_LVL_SEL_3 is not set -# CONFIG_BROWNOUT_DET_LVL_SEL_2 is not set -CONFIG_BROWNOUT_DET_LVL=7 -CONFIG_IPC_TASK_STACK_SIZE=1024 -CONFIG_TIMER_TASK_STACK_SIZE=3584 -CONFIG_ESP32_WIFI_ENABLED=y -CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10 -CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32 -# CONFIG_ESP32_WIFI_STATIC_TX_BUFFER is not set -CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y -CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1 -CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32 -# CONFIG_ESP32_WIFI_CSI_ENABLED is not set -CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y -CONFIG_ESP32_WIFI_TX_BA_WIN=6 -CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y -CONFIG_ESP32_WIFI_RX_BA_WIN=6 -CONFIG_ESP32_WIFI_NVS_ENABLED=y -CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752 -CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32 -CONFIG_ESP32_WIFI_IRAM_OPT=y -CONFIG_ESP32_WIFI_RX_IRAM_OPT=y -CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE=y -CONFIG_ESP32_WIFI_ENABLE_WPA3_OWE_STA=y -CONFIG_WPA_MBEDTLS_CRYPTO=y -CONFIG_WPA_MBEDTLS_TLS_CLIENT=y -# CONFIG_WPA_WAPI_PSK is not set -# CONFIG_WPA_SUITE_B_192 is not set -# CONFIG_WPA_11KV_SUPPORT is not set -# CONFIG_WPA_MBO_SUPPORT is not set -# CONFIG_WPA_DPP_SUPPORT is not set -# CONFIG_WPA_11R_SUPPORT is not set -# CONFIG_WPA_WPS_SOFTAP_REGISTRAR is not set -# CONFIG_WPA_WPS_STRICT is not set -# CONFIG_WPA_DEBUG_PRINT is not set -# CONFIG_WPA_TESTING_OPTIONS is not set -# CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH is not set -# CONFIG_ESP32_ENABLE_COREDUMP_TO_UART is not set -CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y -CONFIG_TIMER_TASK_PRIORITY=1 -CONFIG_TIMER_TASK_STACK_DEPTH=2048 -CONFIG_TIMER_QUEUE_LENGTH=10 -# CONFIG_ENABLE_STATIC_TASK_CLEAN_UP_HOOK is not set -# CONFIG_HAL_ASSERTION_SILIENT is not set -# CONFIG_L2_TO_L3_COPY is not set -CONFIG_ESP_GRATUITOUS_ARP=y -CONFIG_GARP_TMR_INTERVAL=60 -CONFIG_TCPIP_RECVMBOX_SIZE=32 -CONFIG_TCP_MAXRTX=12 -CONFIG_TCP_SYNMAXRTX=12 -CONFIG_TCP_MSS=1440 -CONFIG_TCP_MSL=60000 -CONFIG_TCP_SND_BUF_DEFAULT=5760 -CONFIG_TCP_WND_DEFAULT=5760 -CONFIG_TCP_RECVMBOX_SIZE=6 -CONFIG_TCP_QUEUE_OOSEQ=y -CONFIG_TCP_OVERSIZE_MSS=y -# CONFIG_TCP_OVERSIZE_QUARTER_MSS is not set -# CONFIG_TCP_OVERSIZE_DISABLE is not set -CONFIG_UDP_RECVMBOX_SIZE=6 -CONFIG_TCPIP_TASK_STACK_SIZE=3072 -CONFIG_TCPIP_TASK_AFFINITY_NO_AFFINITY=y -# CONFIG_TCPIP_TASK_AFFINITY_CPU0 is not set -CONFIG_TCPIP_TASK_AFFINITY=0x7FFFFFFF -# CONFIG_PPP_SUPPORT is not set -CONFIG_ESP32_PTHREAD_TASK_PRIO_DEFAULT=5 -CONFIG_ESP32_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 -CONFIG_ESP32_PTHREAD_STACK_MIN=768 -CONFIG_ESP32_PTHREAD_TASK_CORE_DEFAULT=-1 -CONFIG_ESP32_PTHREAD_TASK_NAME_DEFAULT="pthread" -CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS=y -# CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS is not set -# CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED is not set -CONFIG_SUPPRESS_SELECT_DEBUG_OUTPUT=y -CONFIG_SUPPORT_TERMIOS=y -CONFIG_SEMIHOSTFS_MAX_MOUNT_POINTS=1 -# End of deprecated options From 57f501e9327227fd622b22dcd6dddbc31ec93b2b Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Fri, 25 Sep 2026 11:38:28 +0200 Subject: [PATCH 10/12] feat(store): Changed default store to "https://store.prg32.uniparthenope.it/". Added certificate bundle for TLS handshake. Fixed the store setup menu which was not accepting input. --- AGENTS.md | 2 +- components/prg32/prg32_setup_store.c | 6 ++++-- components/prg32/prg32_store.c | 2 ++ dependencies.lock | 4 ++-- profiles/sdkconfig.defaults | 4 ++-- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index ca4922f..c2c527f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -56,7 +56,7 @@ python3 -m prg32 doctor python3 -m prg32 test ``` -If the user explicitly asked for you to do the builds after the edits, you should run one of these commands or both based on the architecture you are building on. +If the user explicitly asked for you to do the builds after the edits, you should run one of these commands or both based on the architecture the edits are targeting. If you are working on ESP32c6, Build the physical firmware: ```bash diff --git a/components/prg32/prg32_setup_store.c b/components/prg32/prg32_setup_store.c index 27f638f..e9983a1 100644 --- a/components/prg32/prg32_setup_store.c +++ b/components/prg32/prg32_setup_store.c @@ -10,6 +10,7 @@ #include #include #include +#include "esp_crt_bundle.h" #if CONFIG_PRG32_DISPLAY_QEMU_RGB #define STORE_MAX_GAMES 40 @@ -210,6 +211,7 @@ static int fetch_catalog(const char *base_url, const char *query, char *status, .method = HTTP_METHOD_GET, .timeout_ms = PRG32_STORE_HTTP_TIMEOUT_MS, .keep_alive_enable = false, + .crt_bundle_attach = esp_crt_bundle_attach, }; esp_http_client_handle_t client = esp_http_client_init(&config); if (!client) { @@ -474,6 +476,7 @@ static int stream_download(const char *base_url, const store_game_t *game, .url = url, .method = HTTP_METHOD_GET, .timeout_ms = PRG32_STORE_HTTP_TIMEOUT_MS, + .crt_bundle_attach = esp_crt_bundle_attach, }; esp_http_client_handle_t client = esp_http_client_init(&config); if (!client) { @@ -695,8 +698,7 @@ void prg32_setup_store_run(void) { prg32_input_wait_released(MENU_CANCEL); return; } - if (((input & PRG32_BTN_SELECT) && !(last & PRG32_BTN_SELECT)) || - ((input & PRG32_BTN_B) && !(last & PRG32_BTN_B))) { + if ((input & MENU_ACCEPT) && !(last & MENU_ACCEPT)) { prg32_input_wait_released(MENU_ACCEPT); if (choice == 0) { char found[PRG32_STORE_URL_MAX_LEN]; diff --git a/components/prg32/prg32_store.c b/components/prg32/prg32_store.c index faf6bc7..f1e0f62 100644 --- a/components/prg32/prg32_store.c +++ b/components/prg32/prg32_store.c @@ -7,6 +7,7 @@ #include #include #include +#include "esp_crt_bundle.h" #if !CONFIG_PRG32_DISPLAY_QEMU_RGB #include "mdns.h" @@ -222,6 +223,7 @@ int prg32_store_ping(const char *base_url, char *out_name, size_t name_len) { .timeout_ms = PRG32_STORE_HTTP_TIMEOUT_MS, .event_handler = capture_http, .user_data = &capture, + .crt_bundle_attach = esp_crt_bundle_attach, }; esp_http_client_handle_t client = esp_http_client_init(&config); if (!client) { diff --git a/dependencies.lock b/dependencies.lock index 07ecf54..0243a43 100644 --- a/dependencies.lock +++ b/dependencies.lock @@ -10,7 +10,7 @@ dependencies: type: service version: 1.8.0 espressif/mdns: - component_hash: 459eef3d6fc4a224c7fdac2943233daa67e2c6588459177cb2414af586fb8700 + component_hash: b679eafd0acae2066e2645bd91d073e33ca5be515e2545cd3c4e55a3e3bce3cb dependencies: - name: idf require: private @@ -18,7 +18,7 @@ dependencies: source: registry_url: https://components.espressif.com/ type: service - version: 1.13.0 + version: 1.13.1 idf: source: type: idf diff --git a/profiles/sdkconfig.defaults b/profiles/sdkconfig.defaults index 6351b5c..43c045c 100644 --- a/profiles/sdkconfig.defaults +++ b/profiles/sdkconfig.defaults @@ -21,8 +21,8 @@ CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT=n CONFIG_PRG32_WIFI_BOOT_MODE_AP=y CONFIG_PRG32_WIFI_SSID="PRG32" CONFIG_PRG32_WIFI_PASSWORD="prg32game" -CONFIG_PRG32_STORE_URL="http://193.205.230.7:5080/" +CONFIG_PRG32_STORE_URL="https://store.prg32.uniparthenope.it/" CONFIG_PRG32_CART_RAM_KIB=64 CONFIG_PRG32_CART_MAX_KIB=64 # CONFIG_PRG32_CART_RAM_CLASSROOM is not set -CONFIG_PRG32_CART_RAM_EXTENDED=y \ No newline at end of file +CONFIG_PRG32_CART_RAM_EXTENDED=y From 4fb86a771ddddf7611a9a2b8bbae61557763de32 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Fri, 25 Sep 2026 15:03:42 +0200 Subject: [PATCH 11/12] feat(assets): created and implemented new refined logo and title of prg32. --- assets/prg32_logo.png | Bin 716962 -> 25352 bytes components/prg32/assets/prg32_splash_logo.c | 2684 +++++++++---------- components/prg32/assets/prg32_title.png | Bin 0 -> 12156 bytes 3 files changed, 1342 insertions(+), 1342 deletions(-) create mode 100644 components/prg32/assets/prg32_title.png diff --git a/assets/prg32_logo.png b/assets/prg32_logo.png index f4c3d2b0e7a3f8af56abf1500b83b0f8f35666cc..ab0c5394f942e7a7cc172a44678c0a2bf8afdd13 100644 GIT binary patch literal 25352 zcmc$^WmsHI(=IwQxJz&kF2UVBxNC5C3xm76OK{iV1a}Ao*AUzxSn%M!C(rZB_nz_1#s~y=HZ!vZ53UA^{=*06>wEmQV!%fFh9VVR#Va8^@yd2>^gq zvsTx3(N>V>Gj+6QGB$HGF=z6ycY@#mfPk=vld-9-xeJ+zxuvy(Ao*EG4>_5&nIO3q zrvi(DleoE+wX~PBxtf=vx~Z3~DX$s1un?kv2OmU%y}64qnTNfd1DMZ4ko+&be30uu zx0%Vw{t|Jq6(rYIP$m<1bT%jBWa4CEAs0d<6L2=O;8T@&|Bud)mLR#6i;EKEL4Q!RP>{_@m-)9TMhXQ)g=@7i&icvOhYF zO&nca1j)%EIN3jxo00-Cvr`OqtE?%jg`rqC-fd4@k zggE9u2t=IaKg6A^99~{~J4hkpCtQq5FTf;9>0aKM5-+ z{J)Fa+yBQfz%G(*5aRwZ3I8#Ke;NR*dpemjtD1uyU7bzMCEXzGQT#>RA71#x9qk;Q z)gYl{E=bP$@7v1O9_Du164nr|!H`K3Bxh%1`G24v{tL>+@;CY~+Wyw7;AjR>%l=o# ze?v0j;>ymB7S?tU46G_8MkXUE&c({h#l^_R^tTItnBB zmN0gK_{zq@#>L3O%gDy5&dR~Z$->9V%fQ0M_m83fCGTivZQ=R>wonB ztMyL>0?hxRT>#>nf&!nkHQ2?`+4H{`R5Snhp9cTRzdsrHN8Z@<50irAPR@>IuBPT@ zf06lDe*QthjutNN#?I!VmXLrFBp0=?u!eB%Nyg5^4k;G@p~&6J9HQo*^sz$dTP`#~l98PW+W$|63;hM*n{?@we!IGV$L7=^sw~J-7dy z9RcS5Hh+H${Ff>UVes#Jkm?L6^UVLM^N_~BRtj?m$nxL}SqDVhbMzqVO`tU-6aQNV z0syp$u8A8A!76w|!YjkI)=@~?Cf0iP1hT8N$?qAfGuT$`YM+%?I=jw_cQxBIQd%#L zf_egUcXjB}14Pmf1-*~dtq|{3MKovj8CZqb(DY~70ZU^&C z;gEUpNY?Y~ik2WNk8+j6t>{UEap$eb8W&bG^3KsP3*wNGchHy}um3K3n6ShKy=@JY zlU?t<#)s&WuivN}g)3AT9~hPfsw1I0bHu>VI*$1t3lH2?hjsZLq+Z5- zBNeN$oTCFeXFwKo1SjbaU;qH=&7VIYATt{e03ZX%NQkO?WFL3=y6DY$GCvX8%6T;l zDo!eY+`#`;jJa_5g|-bz<%_0#vimn`>o>u(CgNwi40O$OxMulAZ<6p9(8Up&Pzn;a zz7L-_2cG&k#&wMAdErmCxU#7eAjp-`V z1%einw!T&le)37cZarx(-$==|VMBXw624EFQv+_Vm`Y3_WL^oGRqJ`(Wv8~U349X_ z3zz%W#f;5p^sw*lG=OsP`aUb}+!)2G4j%glJawYq&Lgk0g^NMCTtDA;?NJ{9jn zYY1KT!8=iv)Tyr6WLs~VzmF!l(`V?+b=hpr1=fJ8MB|DW4V+#>e~@ivi2YHDC=$5? zYX%5_#hV@`9&M9sanvFWAo#)&AOhQ5Ub?r_l9GL5a}e)eL#fz`$36f{k?i7y$_NK0uZhcGT5L@V?5l~NS@n03^(Xn;sqR^<(@ z!fzxgJXh&YyEPR0A)hJ;XyCAjGLja}Tl{KKvZXoTJz!^uSn2L7sI>^aKLlie#oO93 zow218uw%-+`!2}qyxrd&#GEosQJ=SQ+ghA3eP}N}GbBLW$`FB!gaG3co@qf<1_znd zc`VTVZXqSOjTy})N6XwNE&!TNMA7?~^(IuIXfHdG@O%0SL0Ge@K2TLgG_p~1@rJ(p zMy**4=f}Gj-Sy`ZN3{Lr>|7OwcU6JOQLw-%^x`Jdx6>q*q@4f`)e$WA*LD@=0CtCN zwA+o}r_3342ih>?eOWZ<3`wk!&xzYcUF=F9Afut~6UwTfkc3jM0z9>=)PBR~-ncy_ zUXV+Yt#q>7%#0dL$Vp!qm2*rX*v*CZO48O}ogv$ywRo<8b3!a6!q<46b_8e->6_3f zp6MqZUwtQ}DoJrQSrR7a`H|e&8N`^kZRNC?A$ia?qetg9AJffaEsY0|?oDx*?P&(@72{#JU*5&V2Va&k_IMBg-`*)==Yk9F_KU|E=&Ch0~M7zJ{-P9 zCAQzecN}kuD%-EPgcyLEhFXkylSVJ)x7Koru#q@|Dz2-JkY@&Os0vM0X^F0ZUGMU| zSRO(2I>xr~sZbuTjx{Wr`M6-SG+Yt(aNS9I9>9a`GH-F3e+PW zCcWHa^`Om!&U+sKEs(&&L>Xl_Xj2|^uGcNvB}Bk?jw}ib0^i5tVtK#1-bdf0;N{`n zs?Xkq2$c>DgxnmLEpV`^{1#vpDu@rwvv^9!+z|?VRymu!newaN9NBs){a6%Fx8<*x z(wU!jfk14(ahXX?-MAl#P$UQgWEh_pA=C8fWwDY0$mqEX0XU!lBx|uRcDz&gct6F& z-!xmHpO1?o3hPB0rH+hhn*h);MZUC2dfUW3+gZ;H{m9lC zj2#f5$>{0{*3l^ycO2qO=bfnD$<3Tytq^2h!fZaCuy&v$X1Lv+bz;d<=h&uEBHA!5 zM;c;toFL0DR|dh$veTwhkv9pcCWm|Gu~`WOD)~G51HYZtqV(%Gpi#f{e|vTMO}fm4em{P2C;BWt7ycrhBNsJQ*PMv z=naPk!m`(Wr`Fhj=NCwXy|&wUO5*x4*K;WxE5oC}gtq=14?x+1O&}ia7N%%KqV227 zXc|30hGy8f+m~|3PEa}&IT8}RFz7jiko^Ep)NC<+x2K$cX87>Qusu7z$7+RQ!<*&7 zb;}Y*GrKncQNoH9ql`(d-G%~V%V%}!%lt$&o`&)#% z>E;}e+++f(7WK#RN7*{fj&L~qPV{_oaPtfz~H747;5qhE?bq1i)mB zlmLrOrdoxiV1j0fW`nBl2`>6rMw^)Fr>>vt=LyG6R%5*1QODe9%P*cpUJUcz%o-48 zeiqYN>)u+XylQW5jprqYDTkzXPbY_j&tr@UQ^#64LQi0^6Vgr{!6)<^Yl4=y&_FuIe&$DnYF8 z={UV_jz2RLLyeDvyy0N&)P%kkCik&ap$e3>nX7;1t)BnA%J&QMe|KuBy4sXv%G#b- zL!hk0^@oEuXD2VGXYB@f(T`z?>-k1w8n-FVE4x?|bvbW#SvH8;qA4WoKo$WM5FoFr zE%D&Hd3!~nFIkq=4nRh1!uVw>pphatrKp#C@ zdEGKoey=~iTD(j6NNGJ}Y1)euA&=FDuaOl}+Y z3}5_vQq=o_E1qsN7^2`I8a|onI2t#3xA58C=4~O=LQcIp#3v^diH{XRn4%7ez#Eu7 z__69pec?sy<@$HUF`WYwfb(Nv;b=_FT7#yOGt$~BDH^A5<_rb(XLDWR!h}KRZ*Irr zD(}u~Z3ws{W_26uZNxv4KTvgl*bS->Tbi_^zfo$lgM*Q444_r8_U1e;x7Gr5cH96_e_W9 zBOA6(pkh~>y&BJ@0whqTszyqL1X@?=c$S>3y*0@{I%c|Y-7LpofKO@mGlEL0rqm6s zDBsNbN5?PTr)?j{>bDQ1gfjIS?!yi;ZmZS{2Rq|^C_TqM zExz=$pVkfyzW?0h>f)j<`&+<~i&LDmZHMsHXcZ>DH#FXyiA`j68mXlYS4 zOf#7i+yY-NWd^04z!w=Gf3;=g5XUOhi=5093L1@+}G`7sN z<-Y+i_HIkcMI6kpIQZuED8L8GcZ~ZW>(spJ9!c(P{r)*r43YoBj?(EtIx3q3ckugeKu)z@-6S?>Nvq$Dq* zZXO#N{x{>pA#f9sqf&AJEcLF<*aM}4cuyI+`*iO8*9S&`;RkQ?D~X9B=TFL~Du81W zdj*czZuhGWZr}YdxEFGP{XoLzaVoYFOu+TJN{r2|eoINyoLW@Gpr^~)j(Z5rM$az? zCRAaM4ga34PyRle>tkz)+ftUZ@1EC}U0+>Z1^wmI^=Z9i=-LkEs`PN@H{nOsR2A5- zKZ-vhqyq{12sxeTG3!9Zu0OfNxyDM;-syXdsHU7>qqzIre_{52wsl_x55amKZ@=s#_RPd+|9RvNzR`cQJn%`fQm>cii6F-jBIct6? zNsTs8O%f^v_?!`U%Vig z{FT0Ve2Hzm&tERq2vNY zaLRsG@^LDDE8DJ3`|uXPy|d!JesRKows;+^Z~3&qPSSn0RpQ_IBlj}c(odO=g_4IW=i1{@YdiD@WJrN(dj`V`mvY`v@mXEH?aY3I)S;6c@xri0L2Oboyd#FJCEQv$_M6xm()%b2&02YLt z#-P$1SriofFWmj{PfiOe&q$cP+;-Zf79`QudVKU{(x|DckR~W&tU(FA&@@*e9!}5S zkGM}k=bH~DC8l3vs4}UMW6qdrw9{A+VSU8w6MhF%UO`2m(}yRuX#&1qe!mGRXbBfG z!X-t`u7K7<0~S`>{e7QHE=0+^Ouz`YKI zm0Gac;*5vPn3fDIF1`~K8dImjror6VQ83-{IJY$n6Sc0gHnGz*0V$LoJDE&0WM$f% z8^#85!%8O{wR`(D(&%Y;v`1vy=^q?=9zsUzgHmLcCY1u9EDlN%b7MLn5@6A82vtKw z0mYGxT4w=8V#^^Li&QHaGd6q+CM-n5=Sxy?@eB}j#1oOo9JE{)AlKVs;&-ip!9;*p z%e87l19%}$j|pyqbAD|;Ab=7fFdX%Hv)$9bDhqS)QppYkNKcx_YbvXx=>D1=5ZHI8 z;>ck|hjC9t$`DI>9iVNdp>{8?hT+dCG+%7=fz1NgFv?jtaaZ+$@<90%cLtOw1dWs1 zf(}w0rjkob$k$k?skn}??M3rK&^gkcE{GcaVpx(&8dIX8*%KTEI=Nf{l6djQ-;Iux zVL={0=`!oDl1c{g2vaZ0v|a&UVepB}t^8#iB1T<4%sVBi*N5csA7l2(@bTt|+wmS7 zrRoEN@>p-zF`7B_ShH=sqKTsXtJ6++sww@{y8Puie7#?VOIL{GO5A>`)ZIiwW9vzp z*yP!}d~=F6H`M#&yJG%xw4^N5j4Y+7fc5T%%;!4{fX-?JH|^?KZiB88j~kvRC^PCK zg23o!^!ixvn!`9&^_`k)ZWkuN*qczG@XmArb@! zYyPSxRAumxU|xv_4a+KF}yP5XK0HwV_COt^5^6IYm)1ky?I#pBRA3+=a^W(Ow)lSZE}j+L7)k0<+#3c}Q4 zvGbgv?XJgnoYc7b5vzUF@kM~2ynx4E4|{U2$D~iQX1|gc+!A)M;@YRfIEVBlT3!3A z>pmRHkc;M6y3bE9acEzjlHM?OxO^Dubdh|P@)iSN!>Xs`lxV`=)~d>edjq7i?5gZq zU9YD|qQPHi#I1Mv{a{LxlJLC^myuY=@2{}r-=7xv6lf3cUp@;T)@q$|7VD0&;QD!C z;4U#fkjuEy9^vQ%a*+6@Ua#)?U#%^f42NF^43AcYIeL;KVAt{Ls#?K*WyC&@Pi}6! z!r7J+Who^ODHKLueh_lM>j9tVY~0uOKy3=6z6=fV3mIIB72#`OR()yXQ6QT^1eT;v z6X2=a{G`8Qc(BHe2-|zpD_c2zDk~#f#=niwZ;U-Aldd~m6rrWk?A#4&>xPa7sVa^NR?69#1=U_JG4rj-*z}5WJd+(PGs5-;r(ecqerbr6ZOL{$QtYJCU}jD z-gp&%#yWUs{UD<%8D?xD8B}3AD$uk;r@8o?-2F6l8S!2SDFL3A`Hs_hN$@8;+})iK8P@}vziNa8-N(-Y-tPy+Q5kAe%hVXC z9m1j7<`%E4FpT1fknyLS=uKx>k6k^Vb<699Q8M0dCk5%YZZ^-3mW9p(Pm+7*TbP85@DH+NIQm{1ECB>;(e z9Xau>=(}tyLN2Ew`L0B69!kQf8dRM9Sn~o7>DB0IQmJcYcoy)DNb`6vXK*=WVwG;T zO8DBBd0=wFycad|ELje<<5i{ob5u@NK9SL8D^QMjan^r7IRX3@7k3ca@N^>!wi5o) z*#P-;HJth1numW`<90#oW<8*^Uiwbu>+J?kY&!rQ_}2@c@Iad_^Y_{uOy_$K>zA_I zT1mp0izLW^5_VVH97vCRCX9X3ohmS$Rt>I6U-yN5Fdkl?q+*kwL!hC0dzIA~Y{RnB z3g@7wrc{{&_H#dUJTb)gzvq;QR1T<+<_=J5Ht*uClY1;V7kjZrstOv$;cLmm@a315 zDjuyMlPql*Dbprxj*gmpOFOB9Z|w2j2{$4dZN_0tYu>w>14?>IZXazIZUgTfA*37+ ze`J%OgZ~+RspWSqyOZ$@cXRuy>n}y!Ptc|}If`3z#0IF2pairWI9wuzzJAff6bDEG zq{Z966=Z%`B4vXtctk@(Q%@cxKlQMEzZsdj8X0dOnabYWYecP90WD^+Dv>neu4~J` zV%UuFk!eZXnOTKhV}DCnCubmhFEjZM; zoE&GKAL9iJCp#Ig=lPyaPw44N7`taby(b~{y2mdg12*hg&(BAE#S{P9VuXRuL|}R> zCRGiH>HS@M?DKGzCORD|cNTPAJWt;WRAhVp)kPJeFeB;-NoqWwMS3(m z4(~0TVoVZS<`}FC!*%E$`x1~P1Ww%8&Mjr9DU#r9O7 z!&c*#YV4E2dei1=YMQ~tU2=z-%<HLW$ zO8dU~j{?1oX)-9^{x+RkwZrUJ^vx8C&D*@xQsa&5uUl2I9qm?2zUbCaP9szoGrMWR zig7zQ`b9u;rx=#f=WVBR{5bYTyrF8HAQPz_vH%#qsnc;(bAF-u#0glHa6YTm*WLJ{ zcGqF#B3bWPV8lqpl;nw-`3Eo2GVC)t8AxCkhA=Q0%q$rs$ha-@>9rskg@V{S`eDeI zFN=iuUqbg?Pdw}Wx%c(AzeWcmi+~Y-#1kx^g~xk+q{lqJXvdK?nyC6f*DULV$9aD| zsr$*_6)xsFROk8~nkYxO^D|VoFwX=@6?UdEKVr%{K^=i3%uY3wD0K14cYS^Rr94X@ zIYyhiioTK~W(wnqTTy3k6xqC9&!i&ND9Lg!rGxolpcWit7nb2tYH9!%u*Q6oMKp-Z^nzWnQ#YY<@tBx^mh)zna6_RqwNH7aHr$rOld^W(L48)W)Jc*)r z^5phU!rWHe)+JORyehE;&{gy&g#YfQCsEb0vW%N?;tS4{6(gfw^!ibd;fvY+JiU`b zZ4^ylrWZxz(ERx}hDM{ARq$uY)Y*ETd}Q;&N{7G2Gs*IxdwVKB_p)r<}J`r zGLOmRZFaKQ;}Z|^R8l@NUuoyOD$meHw+#WRBGU#JJMLVJ4x|6wm;O z!9N=##|mj^S(FD$kYg|mlXwMl0-TYU02V|~7pMDfdiCB)x6|j%hm*$yfZyK=I^%y}JYg;}-c~hhWkPp3XHI1Z@ zFprB>`SCX#vuclstbDxTT`&|g+E27yh+{XkZo%QdIZ?Ebk{NKQwS2UL`3T5eP+YS8 z`lioMW!G9Gr{%-_bHU(yH1gOF&nVrqcCYfE&Oa4DW4}4SVU7dL15Mqb4L;Es9PmLG_kSOFi7Qv)bZHK`800E$R(5&I zv%i;-(N?!Jy^Hdn@w?Kh+^qG4}lFbjGR49`@nHXS30%FXfkR8mevOe0Zx!F!LRZ%m%D1otD27 zv(=wQ;XPEGBkjNS8)xk>=0zf)1 z08t2QuV%@XK1rwl9{$jW!=CUR?PhP(3yteaKf%zEGRmyr@z{Q4U3)^3v$uzUE!P=l zBpE7jeTvAUF1eT?PjE+zJq*@w!l<%k*HQQRTz7hqOEO%w}W9xhjQ2*wru!NxQp)NV6?&Eb8>%A(z@kxY-5#gtW|;kdXMYD zaB^dAYwfp)LwedFhp1~C!$I&d^(o%D=2PMA%S5eYe`6=hINdxv??^`0TVhaHy zZ*RWYby2c;yA!3|C>D6xLhBTUZ~1N#ejh54kGnW!S#6O!Sy>{Rs*bXmbOUN^%8!rc zL>)y9^^EmG9Z$*$jMI6`fpxk+1JmLi`Q*xGi7)w|>g!QZ5w04izn~C`fFz>TLlH*E zGu=o>b`~%ilH-;rR>{M^k@~_H@0aj@&uHbW`4zczjtw1OXhCa*2WR6?M_7tOX;cpj z);OC(*Y+^Lg5X=umVZbuBO17BbRjmnzlgO*sEOk0?XAr*g zE9Zs0$R$0^Y$@M+OYQ}J&9WHJ_K3;&Wzogzm~>caDK{m9FH>FbDJ4Ko9(bskfZpi4 z;`YdWFQ|EY4RjpENnv<31JxdT&pO^juu2K+z;rDNGk2eS8&a;Hjee3G;M%i$qEHeY+=t8Gs%y4ddf?|aeakIVUC0V6jp`gC zEe4R>MWO^rgTx-F*Ufr$GE_ng$oXlm-pC6=#-p@Cv4x8b?QY%KW?^KlbyDau$TIhLjHUd(?jSp?V+K|DM5+5kRR18J_~S$b>s6+^$M{vZ?ZFTQ#o)#n ze#3LbMNGjnY;8ucDXh0t-4wro#j+uL|l$5^rH<{$G8j#GQk?`OF>~u?K@5SeTxaK{dz?`dyjN#gH?_IZ zmB>1K{mEL`3N;S@n7whz8$9mPZQjW$UW@;-|T^gNP3t~-rG%y;e)lRzBo+|G!V8c%XZe)jmenf`H|4Q?m~JiW=t&Sp`! zK}5nn$v=oU>pDGcO93}DzI%qZ&j@kKg@hw~Xgq6B;3#9A^)kiMVCh!&n^N=M9;d~) z$B4qZhEhgl9^0k&1V4p^L44Z-%#Ix!#o(h$y!9FDhOm{;g6-rXr!WaCu06NqZ6=24 z-gUaCAcTgW)a)kXOI>@Xd6^WsX{W3UokloU1g7IT%;`4aRnE99?<-!gms}nNAtD1?){mZ z1$@NEG#@^VSC>o+y(Jd#e-x1M${WD{tlqd-;y#cJE_wK&$xB2jmr81FBu$aBlms7S z`}K>E@y9%;uZWTk9gKJqv=5$XHrgXxSkhwrzG=DsyMmTsXH#45XqJjo1KpG(M+i>ug!|aFe+tCh>zR;skrtiD@*y+U_dzM?jf!1sE zFXVL?A#q(7FJhEHV{~$f(|DTZBy{lIFX*@JGul>ghXpY`Z~9bt*iuKaE>?Y9 z2P=WD2r1%W96ZJ162RtWU%ZytKu!XcZCeFjz(bx)I8cOu&_FLK5Z4^ z%v|;pB3t6rL7$Y#+oU&y^9A(_T=GVx{YFZK{2>H(Y?705KSYow;DQ}IYT|`CU z6-~6H&npU|IUXaX3_9ctQl}4fGA})#QI-@&W^p;EX_d$HlhKb;Z`r$Bptp+Ddem?o zzh_PndrGTDP`OqM>v6o+Ape~-5Qo_t&AX!U>o35JtGfL*X?!Dr2YjJFckhGd;l? zw;K&CNX@LevfuKjD=2|hw6NxbM(QyqTiM6K6>Omq9bBtp9}D*@Twfon3K%w+_JIAp zF?sde^XgVMJdqL%{)=XRdso}7!6YRksaCa}njSrGNt|r?R5(M?#+Qt!5cRDnIVuGC zSuT=Qk)>rlUOyOG>_b#Q-AT8d&U7y*d^quQLsiYr6w(|;%!Zx3jydcmDB55n&pC0+ zr!8AsJr7Y@(FWOIwd;BYT*N5syWwZkKmEkPW|@fk0}faz`EghWxQGsQlJLXQ5Z-PPb@rjJ5O z?p3>C6wI3-pb{L zoXfpD$-E3hG{10GB#9<-^h{&pt$O_isXtvSvB*o>sPXK|&mg^CYsEk!eya~SKpR(M ze+iYn>gL?=F3Nahq|t+d^f-c<;;&0lE7@=32IQD*9A;Rs0py?L zzRkR^%B6;vfy=yDM$GOg@{#>U{9(nfw4d4_Bt*Y9ds^n}czfb6^z%j=0vmLeFMzd$ zTA!aY#A-h+r9$3MUH%r!y{_2)HOF_75Y=gttJkxI43KcS=VY+x0dD-p%6;RnSd5L- z=AA3sI39;k?mCFxok)?(d!iBg(~Ki~%c=*uS5m^R=H*+}G=o_IapY1Yyi#0z@o9f; zu$Khh=4iO06;4$CI-HlLfgA73O718eNe9OAkp7jn37HVTq;ke#8Xg((x@+7i1O56{Qf>6bZ$IF*zL zV#ZwRZrUh1Ss_CZLP*AEulv`58q5i==>~!4gI0BmipE@hE4! zk|RftAG%YLqNTT#u_P&aP@I8j(O08 z+PSzS3NtuNCMbcpHVb^rJrk}HdeO$p7;Rc*9q+8p<_*pwECs-WK;%#iaMRsSaKDFx zQXg#Vjoo45#5r-|&%B3C%HD1wf-b&2u1Yo$t!c zENU;BVwEsd=KbQs+H<^s%kGb&`zB}v`cB;i4)Yt*P2Sd?Nz{GqzM-QaV>M$HH1Yeh;#H4zPqDp z&<4(+5bpI2Xgu1+G?WJLVW%&}WDHaW0JI|TG=gd<5`IN^O0{{NV_zAn0}yFA{WgDQ z$U+C?b5(Z*m;0$38={k;2WDSgygT!Gaw?`s-pvo@2@0VXIqW^d7OaTenoOs&4TJZ1 z%p-Cknw}xx3e1J`YIi(V>?HANsil@$R{^5a#+qAJ?vqs1|I))Mo^dru!)Hgr&BpG^nZ@7-M@1PHiYiq>)Q1_JXN~`Ywpi3n>Z&1#- zDIQeeM=*)DzutEP%E|H70EY4*kS4G)kjCr;mK3SQeEnO6w_>o!+5CE{e>dC5v0@5OPWuEZah(^lWc}Ioi(ezNc!fe-g2ubwas& zdkSuOI8ncAsnGH^6W$W%n@_+w`<4d|j;Y)N8M-f2#HRKQR~ia{cW@0eSWyLn9g20h z((&GSyL?d+Mour!F43RC!eGahH3BFpu91sH+AOBGC(v*lUemx3||6xe{c04OeuUQ=xx^lKZ>#mp@5fuMQ})AbV2` z$a8bTjFdO~Ub$S^Nt1>DV^S8@AfAgIR6sL}Jd+hWQDodPE+kCA&RR%o`MgFzQwSeISI(~pe0IB4U}-fIn14?))a#t(W0Fjo!&cs`|?(@8gqmO zeE5oxr78OHWT&7p{JVm$s)w&O9ax`a;WzO^OE7EI_R%#R(_;_Rx9NF$zel`%@C;>! zE->oA!bzo|HJyHuZm-n=8tu$iH}sSoASFpogMwIn=&ZIpLrcDN?t9KH9S%7^a(h~5 zZ&=;gWe3f-b_Wm_;$!BI^#XDMOfV8YJM@5F(_Zrc*j#8P*!=UD0dq3g%y_kZWGG?= zyBE%J^iPaK_ZpNoh?%*$d4WvlxSy(*ot8NsnbnxzO@(})v8GjRqzpkV*9r0RFjH?I zufN4XT3!Fp>b09{i`j%AEss$R2C?XJaHp6MhGNz=m^E#$4sD|5| zUu_>xs3atUzOsF#Joivs6QsQ0J8uUCSdv#cYR$Q+ZhN{ko307eaI6VY05|Iom<}6U zI-Ze#mhJWh!!b^zX?37}@t00Wo*eH+3HV84+jK5r_Q(prL>34fn-X^*BgxR~rgxTs zIUS_DvD6jcS=Eoag~koD4fm`A$QI*bU>+qK%$)(8th5b^kUcvm?We2wG&c|Yj~h>*&iCU+7(hcUw41Q-H%8iT&S z6O|>?`?Q4n=voZValfN3u>{81pFNnm-VHy(ImjH*9?i(2wJET3=hyWrkF77 zHnJ@vj08ter#EI3{M;=_1hTZdVq8otkKd#>ENx1vV?O-?Q4RalWz_$|i}(zA-DSW7 zhwC#p1#Qscr*@b9l)2Th+43rY2cSC!{!YzE#a3D*ylBPu$YG6$0$}@5)GSyFSHb+8 zQu83ZqjY#J*7JOxtSGg0hXYIuv*o|##L~7wY?6f$aZ(-*E4IMq{weDudPlC2VA?yG zG?d0T>ay?bTvKHaL?~al6!4snb8_!fN+uJYon6Ka`hG&M9A;nOiSVW7&WDAhD|D;wKV47ojHOxpsD&Xyo0CaUz7NY4esU{TT>3=ogR{2;8LS33$YFLOF-619(Uq=N3m( zh4m?ckOHQ3kno*S2TT!hp}a-3pa`DO>(D28ow$v+a=x1*`{B0YAqzB>IrU+e0e3e- zfIgbWLg(cJ-+FrjqlC1Ap?*@Wf?PxZO+3YhlwDY3m>1xWRSJm#%rZovlmYThzfg{0 zM7lgkTJcFsWab`uZ!PKbRPYssE5XU9Z;)34-{B~U7>dyjm zty3*KfsT^*6h#!2@A;VL;S1M%%u^@i2M@{fKido+c1&9p;~SBm2@!RA>XPrm(|*_v zD4z6!^VCBP&#BhRB$bYqzBfQpcxj``Mp=p=@>G;1$)@ZhrC#$d%oN+!rFQZvK&KNb zQ!Dv)+1nVR8%6J+0yQ42Mv;qB=mhmWi#F$pop^!9ie`Jw>8uXyhA%hv7KDxP0KJsr zi^pe}2I{= zARl^bdPe<&2OIZ%&aIv0$~MERx!XdgBviQKX%YiX4wSHK>@QLuFDDQ8<_ZG`&$y`N zgCZq0t!{Y$Jyhz^H^*<%ilRktFhPfuxqfEP30XOrB?o*MFy_(&{*Re%)*YhAH_wHb zI!(BV&IuUWVAKGf>o9$A#c{hlEEN`oeq&2$*0uA-eGoIVB5yMja%Fyy3;p5K)y8c* z)AZTxE{is_x!|JK8t@$!qN>pEu0s`Oz=XS?+gmDNT@H`5v`GE?*d$yKWkmLmom(NA zaCRRuDbZFd?V%7KR5~hJt^F3-m2A#0nZ*1btXjX~3QD6xwN1S{6mA6X7ujlPH$m-Q zKo@uvbg5xJ(dK_nw%lIK+F(Dpx%Igq%TcT(;csJr%W(ni8M{#78s6KXjL@jB)4n6u z5UgR7frDWhHG31~miSfCoI=tGa{fd1aYK4{5Qe*h2w6pR#XJKRUn(C%?2kv9p855PO?d0=j_B8lQ>d z;C(O=dD0|i*kiQb(xx!VPu75g-^;1%nRm^wVVC-H#8n?>=V0A{08dfti5fMENaGPn zx!jd&JuC1eE3TcSu>vs&@Wptu5!V0LYB$soT=-*|D1m(urRRD>qY>9mJYCGNsyv1K7)?YgCXp|s{9lI-#xBZU;@+n^b5P; zmCXdL^3^C;P^u7KCciD}?MHRdouD+R8V#ko7Nbt5Tu|N9GW)x=`I{P`D(oeJi3DK~ zM+8|`{mzVr>yXYHkkKbGY6mf1_BO9YF_6u5^=T$bM|>KL0;$B+=(?7fY(;Y&8Ek%k zid8xJ_e|i=Fr?6|4lVl#I$xy|57~*e7?)9k40f5(ft4v}=k*;!ZMWU_|5evn2DRZt z?LI++Yj7=Eq_`G$FU5;B1p@q$gyK$cTHM`AaCdhoP~4qDf#Omq4(0ORx%cDyX+P}F z*_q#*b9QFu*=H%aw^S0WduSz?l(@u}C(k5EwBdx$$3=m!Xz-fxc2J^(7KfGTPB1#DhicfydBbsn{ktG@hyyGej;R+>F20;yGxw66|xc^d|Eh6@9FLF z3e zQsmWL3iLxy{kZ-hbs6Vg+7RsQt~cPogoQTfNG#GW6Mc6YA}cRWEaRR=`J=g3_Qw<{ z7pZ-X=3zuvC5n1i3z|&8w3{g*vH^OF_IO~TQu<_5*wW*zgaZWt(vF~r9MLRalm)kh z?x2q)+jxUrzby@Q^YqMvz=FkS@hOBxk5~>~Ug16oDe$?jx8hIVDv|y9*eQ%3q38e< zw%xvRy`Mmjp;!(QtN`!r?e<&+yNG9;oGU)C1kB=$@{=lvg9G5jZX1^ZSi*2u z=3>B28r4-g#$QO#pqkok;C>MQpiD{*%*zXGV0JdjoienY@rqVwbNPkCi~34%UIP_B zcn<>>7nsM%WQSC+O&lwT(`AeFe(#SV-~2-Ym}Ozqh8JzrTVfQr_3xG8Q~zV{uJcaK z%C*G$y#=>sONF@_vC$KUDCfr|VV(clzvewt;%)%;lY}XA~IWC%ibbx+||8f@{{YvmNN{HIsP_%?*=rt*}wm&6dVRA*~ z;{zX&8Yh+>^7m_YTNTFqc*%fz@dleuZcMu(y#cO%gXh;k$Z~4RYslxe@~jd7fGhYm z&NSX7%H>Pa1VqxHif4(%=eWL%PM>xFyXuBC_f;Qn|OJ1GYC-9!sQ<8Jp{z5s_#4Egdv2?dqTFAq*KFmYe4X`VWr^lT0s z59pfYQY|+<_6c0O@a_Ht4V%M=e4!XW|0Vv#iS;3`lHhLIgenZ2EFmk-<;1K8lSV+Kty&2E{wn(04ruJ(J_H7_tBW+I4qR_qh)2oWR3* znFk?rz`mMeC-rTAgMZgPx!FRiH5Kw2>$a{I<@Q)GoP-kq*%jjS$ZZmGmICD2Cg;`2 zxB4uh^QNto1^t8GzNfo%P12_nETh;gH@raFGqx&*4Qn~~VfBt^?Ryv@?B@CW4j1IVT|7E)9-)b%U+9}ykG zq}7C9-*+icgUJoXaohkfaFYkUB8XhJ$tI5lS4Qgl|np6oP(WQqkBpIqWeI zp}8sA2og=1&rOCOo?sv9_tFW8T`5)FOeV!mZ8Bru^}b$$YhDgw4UVvEYUVz_R`_&I zuCGpq^Rdpj1B9judOC2IRa1Q0^at$Ux_(+F_qv&M*K2b6#!z!xA2}U$Y>BuU-;s?2 zta&lWV2?;+0*Ln+gw8LJ?|U=el7rV!Lu1@o!+~))J5MnT2reXsY#XHtsb|_uZW3{+ ztGHP~BjfiPq@>e^%uqSDfdmc0alsK45fnY(Np!f^D?qy03=AX<4g<*Gb6PP{CL{;& z7|$>ORKjKn7UH}_t5K=yN_4b6O|pe}41;??DhckYvN$t=h&=m*Xg{u6c-?(g8Y%ZE z86kiQxz$vRd3n0AxJ}SaiSP^fRx7zcPLTj@g;Ex5>@U3%l632w{tk=&UHBrt*HG$w zxM%RQ?oZOp z;kV@CY%WdtyuFQ_Qu;~Cae?<|cw49jd+ zTF)yIn+5HULI5kXA0aH{KOQ(OeuBw~rhjVj_W_L}BFsxZfP?09i&12`ACuOsMV>Cj zoac%KF-lZSss_6f2EfVDYxnB{&2ZY~8OJB5Pg(LZg?uBz84}u!M3VW3>_a!&d3U;H z9FwY$Wkq!>9sZW4w(|FeG|@(_oGwp(la5OenKl%_&iJ~C`+BF#`tgsqDB39Y=)jo- zZB9=0A#?{KTpsTtkeE9+Q)HFzT$4gdR&I{me^s9GT2xwf_!4(thoBZE9_6nyOq!F1 zuw)06%~n6qc96w9iEEm+{2H5I{5XC2q_NvZ2dGf8F`2bWZFnoK>$&wAKJJ!WK3Zk& zv9K%BULhv*6MC}8bjws5w$P(-0@pkFduQdu9!gU!g$iwM|f$D5tHV+PM*WMWtpXQlqLiA|6OqE$yK1vFxqcZWdlRx>OjQ6&mdz z_kK*yP|KE^Ep6CX!P+V$okC=+q^gzbaBE`wKH(tT<@9LG_V+}j`SGQEM0)F9md`}% zUhCe8*d$5U2}C-I_`x3ubXUJei!*bLU?Z zo&^tMfn2?25D(pRKV2*f3R4b|2!>KCz57tAynt6R0UO#v(Gad|7W`ptLmOpV+IBr!d@xxAeZaT)TW z0k1^E>i9Ww<=xJli5OsYjM*!)JAUvJQTp-gQP0B|txYhB{;KnaN+1CToTW$h6Z9ba zrca0`&VLj;ea@+D1JwJUm2DM0?Uoa7%G&oUJM+z%fSfMRUDy7-9RH!~qF;JXVP&ek zlNak8a)U48KoXzoruoahY2DSM4=8xM=ZZ)B@C>2d#sigDA>*LPzZ9>|n_+sKfcY^c z`ww4{x=-`Z-9>(s?~kg*;qm1{a5F#s5SO5`maDHMts&y63q|8FPzqnW)CSU96c!TDy<%4cgv@ zSUdIJC85QuBp{BzN(Kk#ced}F*NU$lRlf=&r+6e?Blwh|>x5S|AV|YBk83LM&FRd% zlE0P}D0KY04(O4pa&Y`!P{VCa$eGwY0DJ2hHdiuV6rSovXMl^W6Y=`3Z9&%(T@t+b z$Z}Dzs<3R|S*E$bBh-tKktMbBblev_vMPW$vttHsgv@zWIUAfH3Rfgm<#Wag`5}K< z**jcx^=Wg2{7?edB_$IKMgiETj3l7g2RUL%i~N`~UNr{^~zlQ0w zL4V6g^q;GYgZv2JL~WmbCD~U6=g@8jCg{ttYf2kd@v#vjh}f$u(lLb|{Z$l+TbFQx z^{`<&5rIy0j%**IE8Q6Wlh^a&rx*CL3n4J< zsDphbP3}y{11h_~NYpdM+7bMqrLPOJy=Ol_wYz6YZ zOyq9AU86&T)CEYLW{N}cCt@0!baTRUZa^N=VF! zNC}98ISpW3+u+tuT~@e znin6vG^*?ILFq8h%>2771v;?z%u_lkhGq0AmTSjZ)Qzi&wYx1x*I$&LKXU_tJAuL? zJu2GPlN!giDB;AIMd1?zEkuw`LHZjhv>&(wljexK{PaIv>)gs7&?SeVo7~Ldvw^Qd zSxY`qMPVd9CSCBB*ozk2syS%82sY1 z^KfdkcW+~S)kx!f_y-6h1xgWc;6f=XE2MVXjr< z;X*I)R_7OFWLOiH6M-_HX#(-tuC-W=y<`Z0l2^}q2-g5s*fxWmfAHBV8`3;gD_oHTZqxyHIYX8b~P%EaX(4}c;Hi%s$ z^3$ka+p+RX6S}DJ#3>wJb-89XZ#Y*lc1i-mNZQQ~91Rdy4B9Z}+22Q|O3lh9KT9X@ zT=O21$6_^w@b%DvcV@G}e3^PMNLy%`fNX2LdwbrUStY4J5NH1h>no_}YdcE4l1WDK zCak@FGYiLq6Ch#S28E=P|J-2&)52O6?$o^uvcEhTp4^D^pc$Hdq8x~qZ}p0!uM@9}_&G65 zDbsZ_lBNtZR2L%x#8IcMaO#XJGit*clIbX9iUP{U|KmlB4M&ZsX1ZEQIbgf^Gbr;~ zo^DL%5B#|A z2OREewkEv;kVHV_N^?sqv8&_xde~VNFAj(2vkh}DTshZ;OS&=`@Zm0T53$M7*a<(S z54+D_5>?|9hd%R-`%dxi-Tp?N<9{~1?Nv=0glO^G;qnEwvdn1-CbEFc7|J(>ClP^M zYV-nVvPG7{O!52+c3&tRut~Hm#jHK1d!1@R^f3~6Gj$#-)PPmLihYfG3DySwk%mhV z7kK_!5ChyzFWX4@h{Y9oE5RVxY{acZz{fuLP4+>+&Hi{l^7#0kn~`F}1#^g<|La+* z7M&VRK({OZx4;KeP(k`Vpw+qMbgl3572CV97A+dS|6`zXl9UZ z3$OPz=Eq0K$y>f2e6}x1>gsU~IBX}}>gw3aIa1EvyT@HSn}sGg3TWY)uM8J6aPQ91 zR49&<=53&(G=Lwbbni|cZckAVM}>vvX{v|GUT@lp6tEQf_Q6#J;8MH2xH;x4%^6TX z;DmMw?{}n#6wB@a?;*In%`J&G?CAMI#m=|X^=Q;0uosG{6~OuAn!8fRS-nBp#y%-p(oQ?7mo#{`|*%q-d}T*rpmFP z)T4r+7FsJARw9yy4m*(>>`B;!16A8Oj;t}v-9Fdl>NEL9A3Bpp6~jj%^4j_PZMQ^^ zEaaUXej}m$UvWum?SiWD$7x&dCWPaY{419}k(ol=$LR=Zcnv6x6yx8sTcGF3f3bXl z{cAc8Gw)MWctB}$^Nu`&<)IwIE1)mC0tJSEXr;y zA!X73dyU~l`yuAq)`RQBZhH5|3S`|NMV;(g@O@@o_?V6*)F!+Z4oqF6_eMPE2fR;s zl}F*Yw%JzRf@uq{j|^TZi%H_2OmL654k&(rlDS&#r~5$u+4h0nrj)RXi76+lCA_xgh>(H9-zBTm@N5Og=kJX}&5?&ZWhiGmS#eZPETVvvnSK8>?@x;Avd9*X3@=63d}HwQqXG{4a+^lC zF(XhEN``?|LsD{xpo{!yh9djcjj=v_165}$`2l_{k&FeXvZf)*0wiQ4zr97w5RlFIMlx9{u;7pryCa+8%W_DSJbcBH9@q zMU8e>g=hvc$)j1U>dZH;k_%*KWaSL6F(!R&Qe=-wfoXjbw;R{d#AeclN%teoRc%x& zI<*VZ%3Dd@8#P%%y^{anGBMVgV!V8GY+{3P@*jwm4mK76|1SE85FZ40Ra({4UZwxj zY64lCvrrKJ&g@)ET!0G~1}@B$FOLl*Z*f4_hE#F`_vpw7Vr=(I1fSC-h7&X*5WR40Se}#u~*jO%q zcf(oa=32e&#zqSSiQ$Y2r#M=18a2c<%Af(u^lV#$pwy9MReSOtMEpWHV$>cSZn$PZ zl$MnKy3j!h*lLT}9}!IAkX5kT$1@Mv7Bkr{VzsUL#n<*svH&M0;_=vY>CR&+(EgC6SiyMX1sZ0y5j$E46sM@zogL5U0D@89Ro6ow7; zBp;PG2yz>(o|tU5tui7Q5NM@+Z&oOlxkuGU15Lfe^imym9IiwcVjHO)9ScY^CKzSB zs8cx8v0fsQtuLgz;oU^k^x^@THP%Wu1Cp6bkR0H(QU=+>p^E6ijbo`PvZyp=vY^1~RP$6&^pWQ;I71bv|OQ zmNa}b&IN@44|76^)z--YQmqJ*vu|)r*c+J)*~dY25WW>7KZMkMiX*Inwjy zxWH@XIA4-r4X|t`@rR;`x@DANWebZs`17u=@4wgnE|hxE{MKuR*&dN5%b)IKJ-ZbF ztgmO>)9n>JC~)7D&Wb&5hyft;8Y7=Nt~DPwEN}ZyJWp!qM-$_cQDDAb+ByC60f;Gk zj>{$vHYj*E*hS@U+r4Vfy1tv!-YK?Jw}UthE$grm%Vw~P=wJSXx95M**E+%6p$u-e zy@L8bw2Y!8PhTHEZ)k|o&dXy}=nNCU#9v-<|MROwC~SWA)!$4GQril4aYDA5j~5^i z#&7=&j|_5Lr8^5lcfIvJcf&xEwmn|8WRWo(b6)zR6-r7i3Yc3h1 zh_iU{(lu_*R7U@&dU!3jhxOwaK;KN!;h|4oSap*c=Uy$mD`vP17|)L0b&kRZW4(n zQd-}d_Ah0e-I)?C2>7a|f#bME$%$DDl1H)9P;pkQdq{v4v{^uZ>cE+rc{?Q$I1#lg z+lBX{IkaL=A~3vK(obeX3{`u3p9gq~ZIh#u#svCyt zj`T;^*@PW^B-e&{j)K_Lg%x@jF6qr%my_4v_%Z&sdi;E#yqwI79v|&aGCZiaS(%ge z)QOWA;S7Vgus2=o>>VfEgXPGCa2-`y)q*e&%;kDU#+uM&a>*IaY1^@JE1=p5X~w{Odq zEeCb4X&P_YvNLNJR2J&dNM0ww=s*`D~1pk?G$bKYrPMUkZgf^4GUrm&>jl?!0liZ2!w- zjypPkebYVU&2dxz+Utw2hqv4p6A}J^kNRd*efh7_BU88T2ghcb$NuFo$$Z+9{&ndU z*G`>xuEsnni_tXCBd-p;`g-ixmx9w;?WGzr&>eu}AI(fV2Q zMIq$uan+snaqj_n0owp`w#t9ixLXX{L@Wua()Jh9Zpe^zfqGLK^FB``3z ze=h#S;P5xk)|=Zzp1(f)RQ5aX*%7AMgdMl53>Y+UvsbYtn>`XZqoE zgSk;S9qrC*4?{BU1`^%kBlKW&#vCk%r9p-_6fb%Fpj+}qE>^oTWDF+ZM7JuRq>T%$ zNXw4*nyFZ?&9)f8Snl3dNd|$$m5{K>v^7=JBo{02Ci2osTmPEZLicKNa&WIKFD8bX z_^jBrrJyGQ59d#+ku$Kzn5s!S|E0F$ zY2!~(M?IH?ESNF|VnldgGNLJ*N601fwZ=dG(f^Edr$2~>pZaspe|>4oR-M1 z-z0`3+#pa4;mqy-yjXu0LJ?e%|M=J@uPmj26&v9c7T9FTJ{~?f|KrQa;7!(fWycbI z@XkZAA%?3S%`!aj`%BHjtTBihARm;U1362t!9) zRgnoF4lf)2dwGmg(970L>$QzVvYqTBqn7)AErPFud!H@uWN^zTTDj?*4>EfQ%4iLZ z?1t<^Y_d)KH2$jBaSaN+Ec~w=bW6i#ozqwLpiy=B`Uj4m8y^~moR%>RvD>&xJ zWR@|4cRg(k5wdRNri^o`8A6OM>5a>z7~`z_-R2<-17ZWt6@o@4*G>1q_2(K}-KL?q z*y6CJem6H|mNBE&uOV%oAq~5F|qOTCF zM_^8}F$=-)TGp$qL@I$LSo7N0@L;clBM{a^hKmy6OsuW-n)LYhQ8#ZW>1-*Lsq9N6 zxv?bUAng&6c(}X$q>)=ZT{@iTCQh@=wWXAo*lsK;_=CS9&Qz|PE?k^mN*-F9h1&4h z=h)igdJJ;v7N-@dmN+>!_(nMBECdoU37HN4^vJu^qPAGqT38`}KO`TVKh`W1ERO(( zOx7ky?{gDCwo3l|Nxn@^jy zg0=ptZ~Dx~nf~NoFZxac><8uNArhN>7r~=Xeth27q=P5;|CPKOM7MfnFLe;4SpdYb z18&O<8QF1@Tq2JUb5}EVZct->hJt+TZG}s!Bavr30WwQ$Y+olL8AbP^w}+2h%|nMT0!o5=^F1K?T2T6qd(JB|tjX0r zRng#cv(@bQ0XI6x%jHrC-bk=K)+!*~%a$&t4am--@NgA@K#*eRn92||_*}aIj4p!| zgU>4>%mWlJeAx^+R5y@A=&JHRj?O;?=&#e4M?Xhh;rQ3{b(spz*A(ke_rJchWd}dF zV#ERWO~UDC2oQ`K{F-BvWBGm0>($5i|BJM>fl{U1bBLOPmhwFem-TpTsm%a9&@vf1 z#Z+ct8v#PcRj;lHU=}U;*6T=T0hFVb;Y1ciPbK16*t!v&A-K}buJVD7w-*+ZRv`dH z^cdr#GkSs6Of*oI1Od zHUYR=v3Gsr9F~w9bekdb)5NEp4OA;Qp%CDF!(u1Xy8%DnUp_Q{b`}QnwhGjnMNuHQ z;Am7M&Xr}%AtPvySwebvCo$6+NTWmLHBuaCa1MqlsK2PGuOkREl%~fpbHbV8@_dp6 znurazoHl?8?&eJZOc8Jy>m&o5)LI?MbJ;pjk0ua|ol#^UP^bkrdc?C6wwOTi%4ryE z9&U$|f>^tGgYySZN@f8VN zm0~jBpffEJcbRs)5`thz{lM`rM-38mZ= z7yDTQ4`)e-7t5x?`-pY*w#qU>PJz}q{?zVyJFtsG{ufZe|K8f2J3ITSj#yYt^+{rN zuWUiNPqlzUKgKED-t99~p$O`udA9}Z3T@1i;Z|JxTyW1xzx!XrD0cook+elVaFLCo^ zNrvP5CC0zc#5R&Z5(O9y$ojJ0Y=zIVG*uFCod(;MrhYic*I>iX%|H;m7?6!8SB#cd z1Uk|bV?m~Hv4U2982x-$`+ouS{`V?|WAV%HmJpQ&xSm4)K-U}rUPIWjwMu&-9^|5p z0#!B+MVBV1n}VlEl~iPj;UQ}b0 zQJLPNaPT`d6c7>&m9CW(@ojbi>*H-Vx$Lk4_xkl-dc z7J*=mc{q}j$6lg?(~LL|XR(Z$y4>F3<_s#VZCVz+A5sGe4WzTxZW{^$Q<(u!$Q8Cw zS5Kl_w)FSAxdV2jE?0Si*sUlKypcs6RW{H{qrrqvT}llalE(S3T;Z}SNcvN4Mu){W zNk?b^w6Ru)4K!p+;NUH!EmVYTY)}Vq_2JA$PSk4NbD3=q&5P1UaaZ(`q#(;X; zHRwp(`S+HI00l0Z?%21<5=sEJhpzA3Ecq&I2s00|_Z-<|35@~i{x3Jhlzi3a^xMM> z_v#{(BVScxt&^~}E03?lSnly`0NG!r2mF^nJJE=#Mph~gPksSOv%M|`P>sduF&RM& zbu4(4G)jc4Febjw2th}9Cb2X8p&B{F;9jCe1D+Qb99q0oryR>pTjg(Ym6*hi&a^~; z6-n&DaB^>6*x{%805IkzZm-*m5@buGM{uqypGC!uf} zrSYS&fgIR3hE~yA<8MKdD>h0LThQAT_&A_J#%`Y4=%i20mDmAt?qUaYSPd>jn>TNdD>+rTr7fCQ!f$NNeP71(6*) zHraqMu**EPxFDMxYLyLnN^t1)p+lQo)Ed;1T|Bxoo75sdH;NIT#~N2JZ*oyjP)q8- zL_Tc)*YEQ2+39zED;$>3+^KzD^a5>{!^(_uImgNT`xi$^LSU%OBEUT~{=elOoe$lD3z8pGasRvo zrl7n-T0Xn7YOu|vhC^P4Q(AEMds(+R2)oYXaX=EYy4O~5$5w^8h>p5-HmJFA2J2}J z)KNE}`2h|xG!N>13Y^E@cIKm)c5bW&z-ekQqN&(*Bg`{_*(`UKbX;KH>P$6`QD&=L zm;Z0iLI1OI;*&eDs5ypeEpQHSc`Jhu9C(0{f`Ic2c-n?us!qT1aUNg-)zTg#wHC~W zBMq&vz2)cHBS<74pgsV_dR7wDDiQX8884Tc1`_#yY1%-*9ois*VID+xUd-a48MB?5 zHbaF7HsPB&c?@%i#;o98Tiyw8bL2JZFG7HgU;si>@mNdZTIzl-WPW}HY zW@z+nU#YWNu^BQ(0DEPjTd}$u&T>~tM&=APP-m7zQ@W7?xwv-Og_GYKKP;)u0K0`` z%m*a9dH&EyaNq?28m}9%1aoaU!x!sFz79#81X~~ot<|jyPDvWT)fE|>1-3Hm;G-DQ zTIX1Vy<<`Y?w41PF0=!xgrdM3fJw8gN96{T0Rn0rUqIEClhvgD-AexdEdQnYciz~& z%o-tKM_@xJMZMq#S}Ul-$e_^MAfnir86ZXA*Sv<3kT7@N$qm}Ip#{Y*KO_R!v~IR$ zZcws~@&qRZoR*nf9NL>d72DX_43@lKL1OaMKxA#7;C_*QORF@JQlT?EdT$7 zPje=i^2FcJmCOj%BgxW0mCK6XP=rQJ_yS>W-gZq5R7D6v3=Z^u5VUzuQBeExf|3IY z;?4%dz}>?w{#RvgA}Je=1BhA|M%<_(fO@&=ISwZ-SBK)=q)KfEK$-VTMy1YdRB-E^ z%ncb27z!Og2gd-d8x)d2+>UR-Jwy&yD7tJ=KTx#O&02u*<7r2vwYoiCz;1}(toY?t zknNIqgcxUDZASDtw1GNf>IkN@p| zE@=1SP!y?qWfzK4eQv`B8$(ldy}e)W-l`z;c&<-iw6TkJmq-F;7cv>?$lUOS!6^Wh zFt8WKWKw`}0M;YWfi(bE5z0lt)jhoem0gJPIL1VO96~_`fvRS_mmN~;Ssg}jD|C6+^ zFSWdVK-uSlur`ETK$6;#62XAm()`5{6#}757PD%eLaCb#0~;=bvie8B06B3(Guj}v z#PNt{(=glB3S{LfP%eeU;LFMEG~f{gWVPs@`-!c&27umMLK1>D9; zY+w($n!O=wKp4PEUj zosp+G~G3!OPs}1WmDKY{pm7q(00}-XyDOX z2w9#rY2^tWZR6NWm$TuMM!@J^X=?)Hz)EE9= zwy4YCR@wVENAxWIRHOqy$#R%{`dd9&*1mnj!>jF@ytMHt+r5YMLx(lX^Un277uovi zge`v!PV^~%$e7}lxpya_VyC#wr}KO@)^7K%j~tSnv{Mx?4OAW4a!`SKR%d!y5W?1x znZLs&y6AN)5c48tc`e06=*51AlA>JIh9Bmgu}DE#9bSbwF|>N@*ZhLl0+j7H&%cUo zaWWcs7UXO2C&}&H(Zc4rdHa~zZ&3Y9?A&$EzcU>>ujz4@w5zaileW6eBmvloOxbK6 z<0s3P@fA+y<#@YtO%Hh)h5@3=p|4NlDnu>jUG%i^DSwo^X~o~CgrTIYxE*lG7`pYn z5TB;mGWjR2i#cN1bKmgq)r86l#T{Qr+_}Z)c_D|88XDWH9%_U zTASehx$JSyRQclgCDLJ3>D-oKDYAEg+O667l7^QDey5F}bvu@sg{MaL}vD0F;_HFi2R%n6qw6hNGU+CCM{{74Mp3U?mjHyqy^re>FSYo^&) zRH0i(KhCspL3*pabXu;tQGmQ{npol8>Eetm*M8D8{^ zkhCm~1hH_G&cK7Ku201!NFRbB@#OvXYgPA@@d3W> z`}Mzm`%nYW4gcUr*&1 z<<5iEzVwURSt*5B`a|QWI+xe?kS98Eg%$@Z`@Y0c%K1?5|5Hu?Vr@BMaz!H!l7htn zp&axY!sn|MR|=?fOG;nA+plg$h75dYi7Pk;j}L35SaZhwAd|`Ci3)-9vg~CamABS1 z#2V#5Kl+lxIaP@75~~AOQBz}MZ57e$Cq~Y_;Usp5CFUy=_p&oEBO`WC=Zt?owMXZ3 zNLD%F2t2JvBktrer>i+l2Xl?1Y1e$?%j%zCGxG@AuLgCC9@&JKj(*o}InBkNp$i@A zF%iC@ZakVH&CXjh%L`D$xs+ZsXX}_e66Nl(FBr&%I;I%n7q?a8AFYJ5y1H&W475(S zOWUDs3BCK_y6lL4-T{|*9jW=D%op9Us_19NzMdD%awm9~ifYIvmi$c_Y-A3)ShH%YouA%$g11LHQ`#P=36LXDH3} z3^P=QRh{W+mDeMcMIX+mQY3;qy+I^t6g59z_V|4N(gKq}icCof zWYNdQG`(eHE)_m|d%e5dE$jvPTVsdD+Tk5@g5lpwBq0!Ma=CJ?)=j<+=`0J`*+FC; z-tsvbXlRhW4OX#$or^&g?H4*icFg&N+i`bFlg zCFOq`?G2?#w%G@Lo=in9Kmy6-sNzp+)2+qLG4oE$nVF107L5HW>%MIgD>|$FJi!*r z>${+C+kVM}LSM4ruF$3LvcUuH{QzMCbyr2zo%!mRkPx$tp5R;OVC(iy!g{(M!g`8o zN+ukLI@up5btg@+JZDQoS&k0$HVj*NXPUy@W|@cC-feR<;i|Soo5Frks0CYZZ}g=# zpM0NvY|G5R!*bClMj=)OaxbM9#4=*^jfIW(6a2PGkKH=^psR2w?3%5^KC2Tkau=XR z4(Td<(}^*$S+7N$-K(W#b)YIdOa--+YyL4mv%3YI3Lqq9(Ki-sNTR{%AV_?eTVfpT zr;|6~ERG(vnFKQY#SE27xI zv0QNIL2+!wjla=sTUGfO?x?5)rE22|2{hRgFCJHPOg27a{H_Yb*P9u+-mgyASzi^Z z^P`2^+<~NG>~klkr4V%wiu)^+mm*=~y`bk1s%6UDs2+6UOp`#^VOd#B=W#3A|V{TNpX64)E z!b0No{d5cPx%|UIjyzpr7{WFw`R+@VSKUi2434%o2P`@K>|gB2To~)hcsrELA%nH= zLy>ha3_os_RLGqPKAI~&y2rwu<2Qf1T)yF=v~oZEm2}?=zmr`mZMj$XCQ^Q@#o1oJ zyLY3{Tnc2$1}=?_^=ooxH2X29Egy&de!8b+d93}Pav5`{5UcDkdqrzYXD%LI}1u;9(L6X};)v<5QX zjn|%g)`a=+@Jfc2^^22&`978$IPvkw}H#>%(Y`7P>(S=}i= zV?H1#q??eZTW{{0&2wDubF1guGK{_nDVE)tFCPaCk65E?&GF@&d}hip!_3UJ!d<$s zrJ^2FsIh87$v~FTrDh4y8(8^%SG@yfhVJ4$52$JhVfOjM{qfz$BPJ(jy|Eab^CR%H zLJ}S3c1QTeX?e>!7blv|*SYG{P$F!cyJMf%w6MQ;FH#=+WOWfn-;|@Z@7C7kUN8f| zYKkIcVdCf$ChztuCvz^nGN&28ug!!6Bc&Woh+hR@`c5 z+6zGs)xBuiRni9oDc&Q$U8^TDdrQ{y^7J^r{SrlF=LThbp&1IW&p_X2hJb)6?n#am= zT`{Go^oW+L33wN&#aoOW^7%QYp{L^#YRs??9HVUzFl2Gk!xvh1bvGo1qxA_=E*(!x z{U2T@+`QA2cF`>Qtf-;|M;p{KGvP8!O2?af#|LDlK07{e`1ZDL@BEUAbm(=5s$7;- z#&s9@aWneWJkv6C0C_%0Pc*EXbk;uKYy4-;_Zu3eARpNX({npk}g-aXf!pUGh__FpBxW z77{?a=Xcoi9daIX^P^AsJoXDvxprcUVV{`2-+>40MczV^67SXUU!^zb?}!T_(Z zT&+{Guac6hsbt{qP$uwTn@UZc6JC(N!BP#5mC!0at+&k=Hg*I&!VOb7QPbu1k zhV^^>#XYwAy`BuM-tHPn7f(`wCdQfTRBg?h)mIoP{~T+6Pa;XtIyHGJ=8gMtotTiK zH!&e2Mg_>i8LR8^4y zegRn$iw${;VuqKb6=DizcTiUyij6hg9mm{bms76cwc3(RwY8#|;ckF!w`%#HI$3-4 z0c0Kvv&mX>Z$10~F00bDz%JAHQ5sSTxqAIxBJaI9)H9eUMV5wrH5(doQ{nLVHUGep z=F*Q@j#bKV4?R&oi`n|BS5-~=thJn(z5YJUabbi?k;5LbiTH+@MzXos$oS#5;=^W3 zNt!oZVrAHC_>7mhfp4b1hn>gYnxm`^*px3%d)~fad@yhjKdoC-)+&4nKOCoiG4ev& zq-)t3>e5B$zbym~W-j_NR%PRYn3qld6YTU)E_4YamtE7fTxeLC%YnK?6$Z)n07;@B1_ z<41%vFQJ3HU2f3diRdE(2<`Li10R0(BTMf&YlvB!O%E_91RpYvVzy+=bB+)jM5IntxADO1!TYnkEmr z4onxwvG9&da_}p0c`?f&ei1kqO|RNJ8NwkZADrV1+or9DGnD%X#__x4k||Q_?^B;e z;_*(@phM7TDcWsHuR&V||0m3dBt7q3#MfNbFW^obi(zx=CBZp65)YFFhk}FV6 zvYbt!-^XI;ywhQet~UDiF*xS_z%^Lld{}?v?mTK?giz#!Sl;@NKn8U^aeWSFer7DD zFSQZX0S;b~z@qA{hazg}5Xwxm&&BzNs{~P1=d=lBxx{FRg7m&ei}td%&u>XM6!F%X z_6a8*JgrQK5Q%Ogh?C?DXHG|31-%HMw}&Q@l-9acsz%R@C{4h%x%N4R)Gtf1{0gmA zEF8HGo|r0%3bO6*i1ya#K0*YC#KXaOl+sc))-1pW5K zeBSIpvKLcv0c-AbPoFhPfSgVKgJPI%Eps6+RnAcm2@~1&&FtkD__*JjblPL&#k^kg>c5w0%;lG5Gk>TJa$YV(P%)i}-LS2c*q%B-*UyjfL7>i2J9 z+=#in$~~IoAVtbb+L-dG=!X0{vDU#3Yw;dE^0cR^>Oe+)lj5vjUV$l1_Bz_QF;Yl9 z{xZ20MGVL&|7IhIE(k1PkPQRr#fxG4MdfovFoJ`}od&;O88E)t)!QxD>_?k)J|nU% z^Upat0+RfVE&G3KqZN=R{WQYe^N`Kp=4v3y?^P$+)pW}a6R{A!RfVrcaYc0D}bnI5A z%2|X*f%ERh;>GFSdL35Rvnm0EwO~X7R{oi*YEq4v@3}W`+vMeCot@L(+T{)HJ^cvo z1;a99o`<(n zoN{i^O&J~F@XFOxp&9QZn;!HW;}L4XiqC)Gv#zVWp15jdHH8-o{Ndnt!CF=aKc7=} zneagwdaGTp;Hz?ql@)sB#zXtJW4B~gv9H7!vqE7<1b6>Y)RIBDQp0_C-*1gjXdC%X z)EdnJ5kKPl;U-3P`;eZw|9 zU13!ZdK5f{lJ_gI8+q(8Y4L{gKRWc&jb)21uw#dzG2POtW<^o?$9YuO522oV$lV}= zncN@PJ60H_lwrLBE?`SPl0TIeral^rnsQYGb3ttB1?7&Pr^bh5&C&(!@>h*im9ve# zL{Fa*BzV<}>c*yhSxFr8Dn14T8L1K1*} z&^E;?`Fd{*`7wQhezoH=dFQ#sxJwVM^JPl;wPYQ;3*Ib8>F0%(*{!1gf%uWYQ)Rei z@cfEv&9jd*Lc_FcoszPE1G$MgN_RNdEf~a$nk42&_F@coHw}0#OwEupbPU@|cs`&Df-YvY_2l@GG<>2p8Gn_6>iS0^!A?9~$ zwz=6VGZ*6^Zg34VhfyciOh>$(hboMQp4jVc!& zBHLdYEjiI>jVl?Elp}3V_j^>B!P}COlH!zMlAP=8sjji-p;uyVaB}t-{`*C!Vdj)p z8{ff#54qlqW1NM&eSyr3KsF~5cKr3l+Rqk^9R`Mh>_X&nB91*NB%rRQ1W{E=bUOZJ zu|tjRzdlKZ>Q#`-wgX+QjPE zeK~=eDxXD`E&av%D2^_>-n32&G;TS~ikg=UG-iDpa!lN_y7kY#-k8ihbd2&FbQQLB zs3Vr8aC8hh@A&tIY5UYb_F5{lIhENK$W$nl=|D|4;3o|WCtbR?kC8Li2b+R8J>Uza_!07Rj;*Q;Ueew8+=5bVpCWc8{%e z9**_T)2p#j;3u>;CW=!~7SkC6mZlawd{+?%M_$)Ea@4uWSM?qmap!aO%DETiUW&iU zNb)cf4azhLj!%$#&}@lX^D2Y)$b#v$5YEXy)pRb$r_QoO_5t6rc&Uhv!FYv-l|S_7 zE!)#x6DZ5YM$SBe8T+epPn!o^6IOk30U(J$^EKL3=-8ceiDoe`MI_fuBfn%aM8~C! zMdJv{`3+aAF<9&a*koZxVc}$lpgO+k@rQ)hIPf|u1t<3g$Ntf67~J9p0b|6+D=W83J-ruPdsj+q2be}kJc4*0BviIDp*_e{LID_br`;Z^vCl~#xmQFq87)m z%Qo;kRsa2Isx=jnQ@SLE!53r1@;(J9S)_o8n}cT@PiyM?%gEeqjLQf=C-OB~TWi0@ zRULsFqEPbGiJ81SDYKHqjOa7U1eIwZ|GS303`vcZ{}d+j(jrG@{9RP*{epOVBW{7i zm$CJZGS=DqPEPko?R$qzm~J&=SZWOk3LW-vVYfr?Ehp0C4fShByiFE7EmRF-y(m0j zDhlsoDwe0D=4A`dDMZbxOsnP&Hj{Xw#(XHsG{4@${bumxVhi#6r9;FZ+ZFL}=0us7 z2~AY*LR{o)dunC+fpPT1 zdg`(Wj`U6^y?Z$a`aXC0c*-SM+1O6CLG5)&4SrcWZ|UASU!jKcW3?p~H(}_5w^ffb z$5L7M5v56{da6A)g+9Kxq@*wP(O69@dbih(=fkfr5Pqd~jM>`OeR?E#K+;B6xAMlF z16uTE|IAA3F@7;}LzU9Xfq9pce1T8W%PhJ- zAS);Nfk#Wwmz*P}Sua?A{0|uP?jzUbllMdD6H1o7Xe(KPchmh|54p=n@A<`Yov&^h zx;_J!cSUI`z`eT1icY=LJ8^{YXfb}M342&~VPEnDVRqlsprLuk?ApbWsGH67N|Re$ zJPPj&Y!arL=ZZdMi>L4#n=UxIbZ1`^KGB6%46jx&5Dn45tRY>Fb!iLIHS1Z09a?mw zM<&8fc_U<}`x>6QaZ7wtWg0EQ5l}V#tB88qE%W31<-7fa(Q@%psx{`d6PI!_QFYl? zPPE`8r`8{_-)jJb!%r&vgC}YJvbRJl7grrM=z~oRFq563^1Jmv5jvXjl z{QBU8_k&{3)GrqNx1`O_jpMDlD)PSYA6(oW+u|QFonZCknr`&THQZIRXuWrDOqB1w}HviNWb7C-?d+=FXqI>Z1~MSJA`Wu zLMB5^tS9uDPq?0OPT4sltzs+vHP2jqe)-65tdOK=SAKrN8&TKuxX=s9t}yXzGydpt zsBwj_c%r+>&xnf{s`=9?|5fv_wXTpx!cZZkWidlFO5LesKvmzevrItdhP#~ex>zu& z^8w@1Tbm<2ervOTjntgQtr=s7Oe^tkT|&%N`@f>nx$IVRQC%uh3i*U_FGy8~oycIb zSJOrF(J7a%@JyB9>tvI6!GABQ@eWJg=o3AdYC!wg>J&9M`QElL`;JD1((r@USW1ioQ`5{p^kcH+Z0fbsRy!|h0Hiy`cUvu=EKs! zFZVPK$-i0~d~g(X0R8%Y4f5J(-5Q+RV9hvh__OHQF&Ee^uC9l15Xg#Qfa$#`B}GO; zU727+M^^b+L2$TfhONG4{jr&ek#(OR#usELc77Ol^!1I@_oN?p(n%e zslphhvU^=wy@jlSLS3wE70u6Df2XKnkT;jmyg9Ev^KMl(RP8G6Mpb=qOmztMO!~oA zx7_mXl9u6pVMB%5QcY{Kp^;7}ixNs*xz4+cCeJF2c6G{$tU$b6z1;YVR956*7TaHH zex5`7m^#4(dp$d*jAL&!(~K&H9bKv)ig7tPrEp5*VT)*;!B?~67L2rXU#rtI)ajo% zkw0mDwo+_h*Pvu=8^bX!P73_D_C(%!Z$mL&cGnp3thHW=x^V39jndK6-dm1yup9aU z7sS?^3~7F-ard;@a3NJhW)mK{5TpJ!QtPbqzI5EVT*E8_R}ota|KLNv!}=Hkj(qvz z56Ry^8}nBkEnI7><3xG#S+XyxBr$m6lHdt$bz&(mCC!2pUL}u7<%?KJI>jb)9x66w+P&c$c0lG8!eg-{AqEu#@`+n%0Q5seJg1lD` zXV^r3I`daqNO6@r*50p@3&mIG$rn9z4n|qAJQiX+uNjj|&N7m+JMTW|r=?J1H02We zRBdM!Ye}LrO)glbIYFiwbwF1i6P5GzXi=f12myV~J@Z3^mk?PuuI*IT3Ej6Hfi&I@ zTU@Wf`2i=*PyFg?1nuk&+n zzG_K@#vr$OXkx$<^TLOFuUUM?&Z>9kDau9aH5D|DAkJGFJ=HL&u9-V|#$7pFBj|2K zwkXSDDb3gecWB~*q@zTOfoV0D1QGegHScNSwQ3%r3|+>VcW7ZH*0C+tJgJ=_l`ao| zmhZ7(f5|889?7|aP4fplrw zsbzlWa-RR&LSkxrI^onlZ3#)~EnPm%v6L!duPIZQSCU}rHKn`p2ttM_`n!?MMa0XV znzu3mYZC+ljZhq!;;{aM;GPAm3RtAj6bfyyB_d;p^$X&A4*k}{RwE7pdRt-ZKcDA@ zO288dGv=erIS80bqi&3+VYNRsfG%{yA4Sqyci4`!rghnB+LSK zRT11t3ri=&C1Xc%rziQB#afHW4HPER=|i31t30t=vD7zTcNY`7tO~zh<8*Nd^-y|a zWuX16`Ef-+Q@z@@>=#k6myaf9x=d<6Ty-t%WLkSvIu%Kl#@U#r?M>sbQ{{YEo}+T;2SzLyV`-K~m$ ze+cs-+F>Oc^pp3sy$!BI<^>CQ6}#0d_Pz+cf^k#-a`h4y&+t#D^y+J=VXF?}>c>7! zn>w5IVKjJ>DZ}Mtf$M~ek~uv{)fR*)InwSPe|hSz+Q031pNb4lM{VuDZ!DsI-1dN2 z-)Yr}^l&ZnuqKk&vy4v)yoF7RK0SGCvH`ruy^|gPcFH<$+C1%0Y0HYVr(1j@xV4Sh z#=VwcEU$Tp8n{{6tRhYZ+*<<7EzW>}mj)9_qJq$`+tBD$D*d|WmNgShH!BM4<~4L1 z{e1lDpBX|2(Raj~gUyE1G?(Yit=>&gK-2lJoXnh{4vAH2c zdTkU;aj%U-rz(dtq>rS>8u1Ks8h6eKN|K()?v;PpZ75w{?s5$1DtggyuPKis<)I6* ze)5GB_px1QDa`NTg(uXr;8+v;(=eosjJ<4dQXf<1QT+HQCRvfgB%vlJ-S|=lmwTMs zeO$svDHO0!E%zj|&*V1cU*|G2oj5HR-aq>^zxkdw2AWj0 zLo=Yi?x9YE_lxM*_PxWQLFT0LJ@-!4=6(O=z*ufglb~ZwbS;GSY!WVa;rR=eOQl`% zhTI&?>a?b~bl24O{&oD`YIvd&^f(MH!>M~FMmn1-_(Jsw>Bj4u7U(Eu9`d z)D<*;4%qavFHo;zEP2nP*nz*pUpp)9dk~h{@Ns)2) zqEpniwJ18++YT?f^M!~tpJqQY!rXcztA)-!Ky`}N2%Xr_D_q$VuDPbiWNiX+R$7@e z_Ua~&Y>~7@Xc_}275caK@n30A?HuSxReQe`{cFZp@X(Vtn&^P0Hb*mgbZ*i1eV44E zfdhR?t0P~0uA|e9)eqvrjpI+Pq{+t1EA<>M6Mcn$|IYEITx`M-_mOhi~E< zwpZml>@+Y)%9(E8^qVmA;bsq=xoo15|74DTNt5UWtE9Q8*RnWfk^HW5jP`cdq?V^( zy4|HA*k(%)U!=<`^GdyUV;}hnl2pW8PJQS19ujjhQ@?+4^gx<{hv-bUubQVBO^7w6 zLwU;K=+qG0YpyA%iRn@~(VsBzg;at))7GuAHCs3K#*HmkF&bCLkJIM6K5Ie)V=c7* z+;QPC??xZ))xE#RX2j1Nx`-Y+n`~~9f7W*$TG3gr8z*jOLZe)pkVD8suA!#B!=z|DJkjh zZjcyas589p`aejYQZk{?w9D*({lX1Dwiw}hX#cu$|yjG z&qt38;A#+)Y@D%YrV?-zR~IF?r9eT{FlpD6mMHRp>%^LFmVfnhYVx$02AO8d>3dRV z9Hx}tEysvc6$f9Evb(UbA4KEA`Y=k3l+aPKh$-tivjkPjyUn5UKiu9K6tOpGD4UP) zkKlDnnRlq}$0^O3rKW0uV9utwHU2c}q({v%8^e~NB%RqfE3XKm2vEIOn7_R#*eWlUJCGst|s^`ry*SVUfPiD%}yl>lV zj{Fk{SsN(jWJT_DCsnATV;Q#&?O(_NPUEASJYtBOS8g7%#3gzVAd7(?1N=R=u)J!zUT&%+8 z;F~ohiNpxSij0>MuuaX{k!xOP$iQ9Gjg)Z}C~Lnv3Kau9-qjd^3Qs-j_ahpYT*d`E zriK0;0=)@ZM#7;Lx@4(XKHUQqL0U|KQ;;kjzCWGQPT$9h|0ro$Ysj5)XLeo9^h5nV z_xvQBIIXqQtXazP52-|441biwPjiY57Z zkX^L0R!Ro5!^*)H{iTEO5GHBHSEq=GOSlaDSmyK+6Ly*v$h9?YYA&sYXv*v^>twBZ zDK_1W$&hsKn;)4L_x(;*I=u1-D-2qr+hUiDhSCIO?#oN3Q>ij44io|pGvtb}%|9#8 z6sgBoxN3i}Kf>xh3l*4jFo-G>iA_fSMK;gMc;x$LTw!F zkQq&V$m|p^R(DvQA#(%(FkKfYZVeLgHF-i^|6A=$)9uG42qQ7Zhz-)H!gSDMA#y! zWBa0Vkv?$Pda?!e#z7ee(CT6PBz+iaaqHi1CSf3ja(`~A|ET>bg2ctwy;5sa+@KW% z@Ba{x4)}u}M|5z@@cg#8z*;vJI*1t6t^yFEPWgK@ zw=07oWL4D!G}-Jhe}gf;mfB?rL1=xm_1MTDf55}jf>NphJ)RT(=T~CV?ld1W``Okc zHRq7D$z`l8o0z7F7-|Y`=i*WQt(WwTgK6Pgiol76gGdxlO(rpr=8;Sb|a|@PfPm z{ripzZVf|ZNgVSQP2)>@UWWUb!=_=N=1r}>P5m%3n)hL;yw1v6v>^-hq9~4CV9TwT^Py;fw>_G;2ToKW(N+-v1_;c8AN7TRJjqPjD!Nx0b0Z%4wD{M;^t} z8*CtkwgFotjnj{q9VgrS4IOb)2M!&34^Aotxa|#GA>iM~icoAuRa3>hJown**!_bQ z6o8b|S_Kfi2F7$sc>8QAKwN&OFsMpNy6a9jl#1*AfX^*ghbAiU3Ts=mmahK?%Be`N z89CfkK3DPlxV~_sW*qklm?7=b{~TNYAG$Kg|NX>DxxY0H!4=0Ct-G~iXB<;Gjf<0& zOHz}E5xoBHInExvnFjPrm}C7822Sxf(5<^>60H@eckN&!7+%o7@@O5woioRVi$nf( zJtgMet2UMLv^cKxvPKvA%W4ana!F%rj;#8f9Z9R9OP{#v*0q9p{SDD5L14>mQ_0Fu zh9nTx#iSg@$A8YTT^L%do{wXq{QH@TVogvfO3S$_aCK3;&56I4ADiZI1CbrIE6o<_ zBi9n7IdK!&HXZwBX+z0S{m?+$YVg zuVi7C%!aH@zk6*AO|{j!j*gIJ(><1LE2KlxaW#f=d92X>8|rQNL-Wx}JW<6zy4OZ8 z73MT6SdlmGdzj50vASF;U;S7(jeV>*q;*D)ipahL5Us-el~Ya=dR7yxssHb+xV~l^ z(|RHyT6JwQ=f1kn3D@oGj9lWgn|WJ~omMS@q>3|%fMr03rZ9@Q`fV1|0b)ytOJC^@ z-mSNFPvsLO zDNE~3{*>()d-W;$+9XiQliI`CGgHGh)DsM4c|swQP%r!RA^$7cIc{4E$~uHz-CkW|^u5J1{u*kBmr=@EuiX!9e+U~J7}O(#;J}`X=3V=1 zQAphuJ~s{>@=~K4b@@N>cU|!V-X@X~sWOQ2hn3BsRf*#cQPyE1+cI);rXTzIfDl@j zspqX4!78nimv{QiFNVcYb5QS4*OQLC?4Xtn2dN+cAYiOn6+s%49({jc{dezj*0y?; z$_v=)FzM)T=jbGC_i_F2=D^616Gvz7kkxU%hyfb>d~c5dqtCUKyjfmFIQDPTB&rh# zk!G(J;z42~6Co;I@P(N(I~jCSzT6%aL3$2WnLXA9s?v`mJZ@_zm_QLIdI%l>BT&*cA;m1w#$NP%_Rel$fhT`@i^`o$ukU zQFOv-{Ml}&&z%&p+$B1J!#;(5(j_hHXX{96UoV5OCIkt%%~!Hj8A|iBxEw7t3o*e{ z3tgf59cN5I=x(hZVCu|bA zAE=Dmn_{~%#hQeLqdZHm7mSn?dfPCZ6e1A+NfI~Wa25YKO!GQkPQnFkHK6aX>tGVR&#UsbILR{%gwJqNQi% z6Y)nSnx%eTs$n&(l8zIL9)p@mEy|9yna&`Mt>QX$biz3LVkUZ6cQ_O^S@LPpQUMe+ z7ho{tE?1dwS0bVgjrAR`0PiMo>5YFLRYite8Eck#9xNljG+eWEpizWA_MY=SN@#2N z_aE+@7a;wg=s~v`kNa7=Ef~A!8nzYTA!U8}5U77G_#1Ir^QNaz*RzCTIn@vq4E8HT%JDvPE5DM)S%AMDVQM6UO?py`YKeoR)b=S?sLT&Eyx zD`^PiVDfG#nReLI+P@@n3%V_gO$I1Eg-#5Ppxc4w zS{}+P9Lt}Bnm=nE-94?p_<2vaWeDHzB(rqhZ7tSWl^r|29D%BCh$S=bQ?3^L;YalR zrRzZo;=__NP)o?MoUc9C^TZ|kr&*OXv#VmcND2QfbPHQSgP&Lvc5V%gUz*E}=sL@d zqCpmvhpOrIQ|76Su&S5hEOY-%7boms`y(-K_2s(k^hJ5RL6@Jz_HWZ@B-2}?uJRXM zFp0-2U(Jj2RemF{GhQg)eB~}}X`S23YQ6vb8simh8x19XG6<)vOJ(!MJT62Sp=0{3 zPjgt=`6mBX5r`6He3Ay%i|8{Rxzj{4Aj>YI?ebi|YrZ5*U1AqrC`cI`Bnv2~HTFNh z^;d@K9f{TJJPy~8wCR<y1-!yEwC@_nTZA{$#jM| z4V*OR(c0QF=duHH5)Q~E?)68WLFZ+&T0a@4FXOJiN2?JJhnLd?Cq6RIGjh&ph-S_& zyV&5n`ewIJKCTrP-K_el+3v5wtk-OY6I#9gU?Tfb1&T0f*>-StYJmPM!57MB;J-cF z@Zn-o@@+2`&is#@LrMtq^yh4(>NGqo&I=+Y@?tXE2sRD##LMf&R72o|M~_~&jdkOh55E{n0rXK*q?1JIaVz)%>t|NdT)TKOW|%%~}ioI7k%% zO`17#lEgI3N)Nlm#98+C?6P+tW^|#E&76v|Vg_~#LZNxh2ppOJT3f=!$@lpSb-{X4qo`J$M!AF)Q#1ilr^_ij$|0cTa3NbcFct zZT-EypWRbkWDha^akV|YM(M6E(*H7DC(wchPNI2rxOHkS6A=5NFdPC2p<08--xcYB z_qolFY@?UwU#TyNX5}rX_2O-Fq}~+*ep__%>BkC_C>{nG$|ZUFn^iTZ zeS9^0Y4#WF3E(*pfX2dr*H|bVcKt8AWi41lq3JuI13@hFCQ!r(ng_@bF!+SNB4BI> z!RMLx%T(zQFj1b?#HuYjlz$i*vi0NB31}CB>~34V3`iS4ZcWGMLPa#cLW|qY^aO>y z&qV@whp`RYnt;*~uXdwYZQvq!w{AbT-N4vS(5S;(01`g`V#f9Y>EF0S5XUB4X4{~J zK9ut7L-9IFp#39(J$&q*|MRdJHT(8`1enA-Rl1UxpK&(Q1L(%Ap#Up{ zuJcCjb{6ZTbKCJpI|;{(f5iH8`QQ6G3lJGJ5sJR@4f3SnrlO~#f4M`>xUIDzhKuw^ zCrx=L&Aju5F3zv8c5m$)l3eI4!ea1(zQMR`J=OSCsJZnMhI06dw)K~wG`T+yL@+bI zCWM>8<2HWAx*cEH1QjYnZ=$ITat}ViIlYzPgACXFZEm@@CaE&RkJmid&3W6Rp*uS- zEiE10FJ|{#B#<=*1zM)f;`#GwN)}bh32&7UrAXi*Z!eduw{4QFdOs{pR_{7L=_r@Q z?FZmUSooC1!hV$?korQ{c%0YsiBThqX|K*xo8z5NlbYg}qFa3p(YUhPKGua;jXAG~&G~k!HIdHmPI0 zrv1`7{Y329Y}uu)t?dFTnNehJk)!86Bjbz_w=B#PN6yD9W`CYrZ2U=s#=p$yp{~H0 zs7t~Q;^{4CNZM~KGq2^E;#Kx_a@EtP%Y5z1tm zdM*HJwx&|eb`rJvdT@3SmscsJ%O7HBC->idV4kN191kBa?wb5{<>(|9hFth|HVZ&v zcR!5#J2wd2D@gsk0w)@c)J^~ykMEuR1og&$0vC0%($T>!6Vi|7oC132aazG3;O2#h zf4VdPPbxq>9zMEmGJ1NFn@kws#_soM`!orqzDUywXUF&l`~{LJRnZh%Z7;g|dRHJ? zCHJ_N(K^lrFK)DqqQh$k_w;+UD=04?=z$MglTKhrif$u`2BAD4j#qdg^cO_u!%+Mv zRMLYY<)N52Xv5|UCBMBAs5ee{ykB{yeh&`HZ~3eK2Q4T_joB6G8Gv?72Iq2ObY!D^ zPT=vw=}ha)=HkuRk$13juFw0(Xg!G8_@>3+qOze{mDM}V?Dk4^qw}4$xxvDfs~o+P z@ync*0C~BrdQ(D_Sl84Y8F{7@p#{=1P3^E@znJN?LcX#OwM_G%#YerxqI$J$9g0(D zKH^yE;N(qU^5ishDeYo|p@?~K3G}5|t5l#4d-O|3u}4ReV`|g{zq7g|@1}Xn@C$=+ zL!{^uvaO)k)n(Rn-R{M#ZM_0Zvmi-KE{2kj7W%FkS2jy3W9iiI-j*buCBlZKAg~mI zx$gctwBu#ldM(ZVf4%<>6S41_B|Uc0WVG{45CQb_4Ry+iT95~2=n=P;RlR;Yz28GD zWZ8REG4{Ivr-i3rRTW-~JW+*wbM%saPL?T3x@F32xeE|`nr$f9+(sborIN%(uB7Vf z+@H#COqNKxLmCVaKiw-mJ8G_RBS_8Cv#^4w93+sWT6}Vvtt_XhYqIqt|ImOc#wetf zxTq4ZUggfhpq$7@hba0{OJ2sU)`$cnEM2eaXTP%^ux4hjNDr8Q)2c3|S5*hyJdPWv zk_yg^(;7+Mw9?k2XqfYHNIj8>jGNq$5$7tOi~lXUzT}I`5ntvpUQyXl* zt98K#_nVYAFp>Rkoh%gwP_m#_3qaw(s-q{B4YAhb9oVi=|el z+$g6ie@5X{-iW?_C}9N#RQ!>nL;Z}>Q+|)ClqQh=v31X|HJNCwlGsvnt-sS=?$a=0 z>BpA-`BU%I<{F}=+fQ>IERtFj!>gckmZ99*5_8XUr+ZVqi6cZb-BzU3t%-PsZI#tT z**uqc+Uk@`6~UY%Hfnn4uB`y6Qm3cuqx^_8S$tfTRdoMX$gDNg{=egMwXLjeCGCU< z(sgZxC#V42=G>w$7l<0*ywG~QhLiN zVlZ;lA6R$v$gs$=XGmfdQW+-3fQhkvM%dbXF2|h&l~%1kg^$6>L)Y3$owrUo{uhk2 zxiM8~gVWMg@Stg+G?`)C^UUK3OSW)kyPoeAPsLG*5iHQkBxMEvDE5<_^QiQ3(VU<4 zOT4Xaq_y2Vu;y#(9e!nly+p&JEvw?Ulslc=@rJQPY-V7n8h*0y)4_DW`9*Grzra0Y zE31BU#On@h?%)0ldGx)vebyTyq}KTwEjdR6w&UbUYv{@B8w__@pF%B4Fh=3J+-kiEcSlvaJ= zXtQyq=)3b;O}XBhmiaAod!a=U4mgdf3tsKC@YAGNOE@7cx7%xVJmjHLrB2t~j7#Of zSR?hcS1Y7hc7Lh>5&dcvTR)Z;{H7-Or9gC&mhp5l|DuAFe2TotWonOD^E^0)nK8X= zEFJ7Ma&nhNYU+I4bxj~@tzA#J?u@Ao~z`y>u)Q&XMfI4{wNrO zKu0T=c-|NLA9USYTOsD>GYYd`$2|tJhlbx15MbR$N1R+e4V+U*6Lo2MPkrCnyiHMG z$p=&%i>IgPOzNl;mCWfGUJZ7!`Hd~h;!T$QdZ=?GgYLoyw^_PR;DtIKwHL@mV3fx1 z+Y%WQC;AR7LNv){^IwAD;E{Y&saP?|jEg1-A$&3>3EkvDqOis)u;XH)_oq(ko~5AN zm^$Mw6QE#|F%FS^pqsMae%<)i@zwl~Cv>_3@hmQ`oMmeT=MmXh+5j$#+zNZUKmCxp zhNyjW4-Q4`ytfIo`(J&CGHH^fA5I4A6muOwBkK{z2I^K8_1@2ldvkFP0Ld}K2E&}J zHZF&p)2XX*77O+|x*zMq`)x}Vo#US8+K0@jiW`&+-;rbx=%A%9mR1TDU!NMORx1VC zgT}NT9`Iv(^yQ7)xfI??OfbKH`GZeMLfA%OqKuWu8{E6LfPLw_7CXZUd6lN|S@*2&a@_7yJnbByqIds_3# zMhr=2q*_x*g_Pk~hB!ZRoP4de<=IjXj&m_lOSJFC{rNtFSamdzc9XavUgfabrN-Gt zU1|-k6#1BD*p5V$-z#hhwglB|D^1HLgk2#G9=^AN&Dy23tb!Ur5`&_BA?l-XpoegQx4k_10?S=xdyXrj%oiysIcgQriUBQ6(VEglV{+c zCSAyGKC*Dg8Yf{9wz9o`U{%d<%&~V~sxOYB6~IF?Ic8La<9w0o_)}`t5ZBWh98WG@RXR%)ci< z8sh7W>E&vN-4wcv?Yf*6dk1jzYQ2_XY7}1mtg?x;aVRo*10*3`s$OnVqwlroT7th5 zvw$7p8SbjCxHD=O5%cl4Yul);xOX4Xx=H)0B%mBtns(@(_KT5g>`n{fY$T8?&c+^Ft@r`JrNQfbwx6J~(@Y=~Bq1iBZ~( zwqn7?7jUH>kTJB%#1K`$B!9*VKMOPaNlNMazQScCYQ`nvejnhcP^HI6(3d9jKL(Gx z#aYik7?(6h68osVN2g~}PcGZGTYQ8^v>6_l`nfEGJjJsJTa(uSI$i9QTUs+sa0uHm z2Q4EIN_Tvm3k6$enrV?}0WF3Zg||(mM^lrV_S*4-x`ztEs)>Z_Xw|ax*-N?9HV5i7 ze1&GJOD3Fb*^Z9?%^mBx02%0ECkl4eD636p<3k_HzKIB^m$&T~xNY0N>%B)w37o+8SmE^$ zN8QYK9v1z{85DGhm`cX`409%`f6dHs67J}y{cb5zoP^V@Tu%k|BCq!Hr%rh~#`L{_ zVF$tK=iQK;WG*F3ysPYGyRO!Xwi z1KvJ0G>7a{v-^@kRD=c?(8 zAdg2RBlfna3cG$)U_vq_@5!d#sN}K6-45c&5siXxkQdgx&3lRBac2luN%Q|Dow>LaTSC1Ue<8 zUbgEt1~R&e@LZ>h)0Qh~?c|aWh0utoApejpHYPCsv1fnO=`n9H@rSDPCsp$Ar`Uo%s%Z+#?BdPd(Wl$ z6SWgSBwElSYNMC2_Uwq$9O@Lb`6p2y2tn&1nfRtg&OXDfHY0e`89zS_*$>7B=qv7* zDHxt{6qTVHZZ~AOpvM2|#osqOGMQTapL`Vc`ZlzgHu52&u&*f|72AuGihKiLXEx$t z2O!*XjLJSRKom%q@b|PIIqmLjTUtf;pvcK?n;aU-kfW0JO86A1gTCX@l&e9pQU2~$ z=J36NqfNvo&wwx{5_^`J;2r%(6hr~vJ)j?5JYH_hR_x?ag$}larvAu+71=}uPGXU>7qJqme%W1DvUECK zhZur6Pw#)3mS@_KbZwuX?udSGdXIFaR`v_0n*8(rK+~F5*V8jem+YzUy7wKG)9j8IWWokq_p5+=Rd0>V{uP|QkVM_3 zx=Q0m5mdo{N(9YRk@2b;ZB61{xBnH9#_3^Hh8uToFv+^39r`tMurjgDQStBu-IVxN z>|nrY{7TkXf15)4R#k@`FfZYwmfKcM_+cion16lLiB6*h8>oCXlmF1>;rC|w9rhV4 zlj<9a9hg7F{6Bi&PwH1fCC=g0Jy3rw!t=TI^v(u($zjr)?bPwc&Gh@jYR;unesV{W zp{t-^e#il|neufwvMg763ZV2-jYgvu3yi<->|GOyo3Tjl9{5a4>PIWxT`Iskc-GD+ zK-|TS-Tl~W>-$@0`D5BWrHf(tEz$8rN-D3`T7~r`cvb&p=tz+yBo>HvRd4-edpt%s zY=x3ArYy4&u(LOqyfIL)_ z8c~9rE9RGz$+xsfTD1bflKUKrZCmgA8aqtY?mTW*j2?@^2Lf9f8<*)#7yN&m#tS?& zUM?jcU>yJ=Y(rx2>D%_kFG;5;kAlG)h<GN47cM{yPGA?&bKr`mWG4ZcSc>5l3X*IsJHkMaYMX$)p z%3rP#`A%woyYjiA1{_+7qdfcVf(ymqb*<^K!=8m*5F1;#5jwV4=xbwAHDQ7g|9=}3 zZCV&wQr)*Pe^9rFuo$CH?+JA%H=b4|1IFcZ}P?tjr$~_AC#5pAaGkW4QIZg}nBR_$BoEtu&2}FXG=ONfuY< zq#c9k>nLJrO0vWK7GMv?aicHG-{1T6V!8LrYxK)0iO~PB}V?61*TYdAVCG(L&*-~)_J72+fw4@`3Mb+={i#m9Weew zOq}`7=zN(yj^(Fjc1^Su1dYK3u%ce+R1hMYkq%d%$H&pAWo++$clmixajOPMa)G#i z%wI#ub(l!P-bDlTViPe`s{ism*=)2$r5LSq46)u&ns69_4T?O zuf+kAgYnk}vZ@gdertP{^kwr90h)gP34uve&R2UC6`Y})9`7-(-&%eQ-2l z!h7>k2fy_re`oyynT)&LnBktC=h^}w72RoUJbHJ|w{( zSvnKm+g~t*PcjdL-+sH(PI~ZWSL~eJi{?xk=n~B1>mVRdZ0SOzLlo_35uPuDDgwcX zCi+yD#qZ%^S~-)P8u*p2h4f~}-owOUl6l!ymm|pR z{(V6ar`rd@{YTzZp`lv|_nV4QSliA2|edRlWFC7}Wb33#O;8 z&*ygTca(cP9GxGJOD>;+UJAhNC6^yk#n-QHW~a5EYkxFVt#(2lAa1(g>jt06$IfR1 z_ZQ!lA8x~EQDRm0!GBrOX z?RZ%G1uuT;JW!EB;NXesf75m6U0=c72smsvvs~!WpQ}~)$l#k#mKFp$H7P{nEtfVd3pm-Zac9Sz>AOXqSp5Gx_ z)2e{QQU}X)Iuk3%p3Yy=@5!Evbq<*vB|QamUG>?F=r&}D07?aMaS~`>wlcZbAI6{* zgD0KSmHi-KiMue?Tg;n))br9j7@;Aa=F8Zb2}f}Sxz#r=(5aT`3_Ci5jpi(5&^F|# zUAw_?vFz~=`_oR>OD;$l@&(qq%(7JKN11B}cLgc)4I@eEPB-VfI0Er*waB1=QJd|) zq7U35g^1_y^&q^L*#LETKC(y?4LjAOX8FEvR1!o1NvUwLIyQ7a7`RfUYVuo=<`@JF z)j-CW%x)UErv3gLFwB@(ai|RBmYU_x4c#TbC^?tJ9aD>8 zeECO!zzhf(+2drF0A%Dm!+1yUe!4_2r7U)ZZ^hJCG(oXZLz3^U3p;?ncHQWqEf%Wg zF9`$Ap@xV*B;cV72f?@)3O)E>5vmwuUBLI6k`DJ@tSOlvT?x`%Dh3dHE6^QxZ#|dS zvtBlgA5WBpG!PUOIO2bDG1RxCP}ueq{hqXalF5skn!xbQj0i%F{-atnjwjr#x1u#g z*B-ATtc4T`D}(5c?^>>ir~mXxB)w{8!H=%D$g$B!Z^p>{Ss>Yeh{5ltZ?voU@!M9} zPe(%6u~CzM4x7omX=Lk{bFMj-4Od)Gj`!0FavANWYur3<8%Ac5imZ*Ln6RlJ7%=UB_9^G$LFM2*sf|Ji`vTTZie-bl4SQFqZbQ7C#X=fJ*C~r z0=@s&spmvh(TzT)TfnNIj{*O$ni60P8WYyeO12tlPsr{JFcuE5a$IY1yHetl(_nYS zwME79e?!FbHwW)4G8Sed^9lm;foVCivf=_oL!^TSKHBlG8JHb1Ox&sU$(~dFIB(C+ zyT9PBXP5fqPjhgseLQceC?epT-mIi)y4SSxu8!x}){r&KR~mM?e|Gn*!3w%7Nn%Th z!X#yIj`+I)DY`Ld({qG2)9pJlhqw(J^6vzA1tKcH;{(k##mUZrD;_JkA zLnMsq@@}J<@f2xB9A>@5CaftA8RIP`Sz@V5Syh(cM57C*BT5Vxv%PX^UGOPR5E8A$ zPH&2#+vAh{OEM9+N7a{WGbQ{1Hy|LL^qtW?)m(iUnXUXthrJIt5ttP zHflMUCE%!Vrkr6#9nF+_lf^#pw7PJPDdjB1WX&%x`|J+Zi2=c)m8Qu=TcWHKGEXU3 z8&xsbA6Zv2E}b}@m#3d@E7yGkUeM+jS2>#f6l(H`*(0?%L(qodb z3F)!gUf6E`90bmciR~e7iET=%)HNj3o<MB;Ul z$3;@B1u@>z5Nhb1$pjyIX^%R6GD1!?xif>I)>thA9!=Nomwe4_CCVFx0hFz|wc~*O z<+i$jaip0k`f0yktBnfP+?`-fymVlH8nuV!7B8>kHyoC1DH-J$V?vTl5BHZlV8Fu@ zxJ>TzH1n|ykN+`n5Cr5Mu(S5cqx?z9A^v^zulXo@hN{*3WQOl?sm+I`$eBR1=ZlNt zaK|%6U$%z=pqxTYh+W<1$u)W0t#98Ygd0nwa~w=~{!=Yx1^Zgcb=J<0Jfis&j<>B+RUNu4d%O)& z4a1ifs^z|QAta@SpT|{LM1w@+D>RJLg!;nutL9+E&1Le)_~zc8oUJG&4|@(LI^#=& z0IMAGT^vSrVzIV6oRiNb^S_ToZb)>0fY@31AlbxkPzk>V8(KE~PlU2BNO{H})2J7+&G0|KmZ zk^Y`N<5)viDiGZ5{FfKjHYLX%CWh_@hb@buss2FOcLqU2ros3$ENnq$N@9_@7$6D> zO(muZ$A!RG!CLtJl(>AwpXdc3qUQKvkhW}c)Su`Z+Ald)McQ0a?HQP%8W1PmG)Eeg zmzlhGeadZdl9&s!FnV5u14fs9FTS%E->J?{<8rH#swNDb;}ksiYMBfs-PK0xkg0hP z`SyrNrM62-v%l(&nTBXK z=?t-{FSX-TkhlKc|2p+sKzyW}?YpOFX68@5j4d90vb;yl7VDfE4LNJk$Mrl`i;5i` zn3*^0q867&>Bv+U1N^dCOj$Ngd>tH*B>yULvof#Wv{a>d#lPP)K2ZWf-=JPw|0AL!=ne@#Zh?60qKNmmLoG8zwsA z8JyV!@}S)6pks)OTCx33*|B78o{9Bnjk5FPH5TKI4+VFXK(QsdK;3~{i)oaYF z@#UFY_-?feY@=|8SQSZE1SH(`?6I+K-Vh8KU>!CM*F(f8erFQ&?jtQ=J;Bv1LVWMV!jAwmi^v=5pQ#a2E| zV6cg}1SbBK@z$)GVpm4dq|2oZB@Z5ltz2T|O#x!tYnu~Bz90S^sK%}oxVN_xt#k=$ z&sFlLhTQX7baONwD|QFmCRWj61(?hmjJ~lW3P#kULS#_C6Wx$%ManLBL2I=4=?ox2 zVYF=Q`dY?=17co?EgvngUI|UWZQ~Un`ONqok^N3VF%8Q@C&(y8HK*pcr(*Ll0)j;t z$}CmX+d`2onbzc&=!kc~3k3xs#wxKYv=Ihq zW8=H$Sg&NR>#58zol=~x?Z{2P>oYHU&tLejOzBI2jUN%uB0elm^k4jaM?GPRk7BVi zQS^Zh;b9rNa+Pi1Xl0Od2k7G}yZk#I=*U-wEZQ%`@G_-0O1Vb-=9Uh@WHsm~oD^B0 zVFL07VP9Y)tbjNW4@BthnL7WI1IPZ>cz*q!NHw!~eLPc|AQL^aK!x1l^9@B)K?dR! z@N%0WYL(UgEn<2jlEJ=_(yUlH5AL0u3fmDHa}RO%xtS@9Fzodk7vQ+akTk*1&&azd zm#B~r*7Ycapbjb}&8&FK`)5whAEX<1y|-?d;IDg3ZoV=yxOl`^r`Yeps4_;?aX8w! z2zp#fhNuAh9kqS0+h!1z{Vuc30!f3?*#FyBS6@&jj$ z#M7e!`CJ2_F)NfwbKoC%UU+Ucr1oVI7EN@zIh+Z_mtaDWt2Tr2KqasHR}*Gqna4mw z=W5*A00%-)83X5;9tcO91QGQdKTQVv6V_YB9u?kXzRX6)f-fub6xg(V5z-NHXTgJV zh2#vB!?81&(zsU$jW0EBrg4Z7?mvg923n8|)JtgTr! zDq$Hz9}++Fck$wSl8|_HtPs5P+a~+78x#+o?L=$dyRMI6vUbO$s%SQXu$yFJ@%c{1 zkLL8b?|x>`<+_v90}!x7B!l*n_6JZ+rqgsC)9h$nd+8j@Y-@}pFW`pJKzO+=3@IUc z_kYWHmM_e-$YblHelxPIDXJmwOn*&(FqcAmISoapx1cx1h~F^3VNX4!<$ZS zY040;Eu_M_303IaV2Z#E!qcUfVjfjnGcwzu0FePy42soY@_|a0B-}L#g)Ep+m$$x2 z+~iG;ZC^VN{`&n}0~?FLzP-437s9>rf5ofu)b2Wyy~XT(E$90WP(2Uti_y}!1FV0_ z&mmM8U1!0_v%qK+In|>#j5;~+)gB-7Wj-nV?Mn{dAbTd+0{~SJt>t3Q`!P^|*l?xyjM zA~G{1u{q2;qsd@d$GV}CCKsOO%r@aR&@*q+_l#D3^mZDxpv1B5z@I3wIIeB&LmdD3ZVp;Y1p zY3fOM3H5Ws)HpE|kM`9Zl}!>=MqsANGiQr`+-rLVpsK6+ge~-9lKp1s7AjVCYM#b0^0`gpkBuMIhb-YQeF<%eG1gF& z)j*$7J1D-hg@KIF)f-uYB`2=m$X$l~YQ}Gxt!dhpB#UvHuWHEMix(DZ4_FbB;>?Rp zsy7$ILe`XO*4MSa$$gh#Xz2-_qG?6F-7QqSZ9TdJFz>r&ddu1dEr{nvmmZpMQGl>X znQT_F&JOehLL0542tRN&9UZuPvJcQY2abP`V>e`A%2P4>#Tx5^{tL0zjW)8jL4g=I zRHb1x{-^?ybf_DLo-yuzI-@oge6({^1EE3Qb^4C#6Ogik>lJd$rx&6Yi;v_t|?8(_&@eYP;gD`8tg)89BCV31Xi z2s;;hQ7Mof0U|HM%Y+%`ou1Fu9V@$L{cD+o?hg(I!zEoLLgWI2r6Nh{uu1m(PxOm0 zs(p!$q_Jy5Mnup=5Ptvsm5hjw)c8gaMhCuUB+#*}npQGK7v3PsS~suv<3p2mq4V{i zmtlETOV!I$SMhRJWB_`Au*~t+LD!=s#H*hcPa3xxbAzHiQ(^#2L)Kok{-lSed^zP- zX?)vt6Pw#~x|-;xkZ;r{&nSmo8f=LqNAt!XA5oxu37_LfFyT8x*I=ZCBRH&&6tuPt zJ%X|vld;?bsR%3Btyr_>+KM+I$+D~&F|Ngr`@$!p9tA^fb^7zJo-8P9u80lWe^9d# z_uj&-qs|}W$|z#eg;BSL!DHj%H?30BVf2OH;Yq@Jslp6?WMaW6!+asNy+7t&d-C|} z_!%iJ5^{Cj({+E{TO>a7o-GZ@UM5K-ulSa~sq_Ba{}kFG++-sh8XXxrNdsdrIh6uQ z)QdwtW)eh@*3-Q;5o;#ox|a+X2=+--;F>z#MgT1?JZbqJSL7VKX+ECxu$--RA(%f2 z(+Y#9+;a*pdLpJ;n+M-zm>o_i+G`P8U6bA+r&yR9|B|59O}$L3E+bA^BhbE>wAJxDzEEqKCCOSw9P^M0qWV#6kj)K&U*iPA*AaD(&?DZe)hG>|7%7pH3a zZJUl4NMsf|*rr5>pm(q4ONJ%c}W*3sW4YnpJvNkH8FiiMOXRX!j za`7;GNx8c0K>$ zhF-Mwd;PAf|HIQ;1;yDmU86XI1R31j-QC^Y-3buf-Q6WP!QDN$3=-Te5C$hmg1c<; zKi|7g?y7sH=3uI>?yGzCTC2xDX-l1M^=S2a3Vre+^cByvvsz>4h7`sl*mcUeDbN--NYbO_c==i+c3+wAj1U@`h z6P40T_gaQ{gXcP!3rH_3Ca!g%!i51^De|=XmsvxaAvekS-VQc)dF#IP_UjMZ6r9tR zN7MFl+Km?S?;XF#YP|!cX(yJ@H8whPbz)%Ud*V>79AZLd`$9( z=`UD4S$UM{-x~Q`ekC-#CcJw6`q{tCF0^2t-nPnallmN`L_C^;1Grz^&8!&L;~he= zgh8BLu|PI;HkdM0i)39GDg(?zWJ8HGN0DLs>M$ni7Yo*CQt^dUze+}>=vYukZ6PK` zD?oKNf}vm1c1^?I3ne3XTM$jequ5KhDMx4%%??<@(d83`#Vjrg*cA1TCDis23C`>- zpY{~8bOz-KmoBt?VZ%0-rA?HzfB)EQRp^-nW+Q+8uSU_Kh4hSR?{|6%#JM}Tzr8Fz zcs}_(`S&!)ZzyWTIXGHaD3=QoDqW#HnyfEXBElo5@OTo)I;)4ybu@G* z6bt55IpInl%)V(fdY=`r$SMc8J?)~bxXalbZKG-^}I?RJGkRN|m zy1S&K`1XV>FFN+MmcA)Hi%u5SD}%t_>x6W4F0!)DndXYoc(IdHKs5Rsu0*jOM@ytbW+`y}kTZAGs?hh^dozg%MVrCNF^$TS5pp81Y_ zeW9Z$ANgs7L9s`Uh)$SXdK$PGoqsys@3voUy$)6G$gyVHyync8#Z`?a5jEHUSh}~= z-$AkPeDZyg3OvT>#fop(!h$2+P@xx1e*lUmfWF9p%0;XCMQg-$LJYbbxf8;)q|c0O zSe*Y5Z6V$5UO6&r!b5+#)iKSJFWzijR?F^d3nK7JI29kc^iGtYoHh+;`@#= zTtZ96L7f=!gr?yDA4DxpOx|4NXm^S4Ru;{Icg}l20sH$?r~YU7pckh?RdS;G8gV~- z3z%a9Yu-@s;QshNPO$#oNJ!Ppf@$i{5y*SW-+XSrm{Ist$!?uXdsICioI7Px-y9T{ zq}!HOxWv%=Vu4~hZ|U?0C+*$e_HUQpOF@e^{jEb4ao>6pXRNN;8VdT}2BO%>vl`Gi zzH->3k}Ha(YkO_TzV6QpZ^wG#xY7HcgE72l^y*fNhM^qpZMw&tKW&1NN2XdXDbckk zrJ*oz>G%J(nm@IcfMVo5-rpaLpLF`YE#BK4QZTC813Nv1{ci{aoN|Vx2E;{A0VCuG ziM!|+-4h5jl3R*YH}U&Mlu9l>6c3INO`YiUtz?IqyUz!9y)8UUrm8Lz4q4$()4c{E z{c$3sxPr5nUtQX!7Ltg!400plgb0$7?u{?)$a|tMXpWQCa(K=K8TOCHee8E;)%rgE z*-PK$KN93NPtenZiT0b+&tBWdk9b{Pq?w(h51N0w$>^{Bc>SPB>YW>F7O+%r3G*3h zzZG7(=%o^#;Qf!JrDFgkiblQ~$_^{o_=*xLI{8zfQQW13z(?=>#-{(_TEs88p`=PU zhvd(1BEj79K>Z~!_292gh zsVrVx7n#^91V^^dKt(dJ5qL!2Gc1=i95-f*TbJlShxZyCt7J)5eT*y6?a%l{LgGe-mKvTa zrmf^C(0M;9`zo`b-_#~&fWp}r_CW-dn2E&yo+UAf*ydDX*9K@U)qxcW!AqVcLHm=c$2}KT<_a&~_Y3Q!A zzfvTt_j3A2x+o|G<{8GuH?ZWDf8Y{c7yXCKS>~P~Y!KY8iWnTxU>F{mhP8+5^w#=k z3(9j0$w;(P$z$2k_dD>g%H(6OXTdX;yhwTEj;(kMY!62IbQ`_5&{_b)M)w~T=uj}H za=1-edjcEbKqh4%hJTV?L@eSJwhZN+x983!bO&_x)FAUW!i9BqmLHGhA0wH}QVX5= zPZS|(QYr9Q6k%orgyeZZP|<>19gS5l(yK0Qtukgc5XQ55iw$27F0r^aznVIg(O4Cu zR?n4dS1W|apzAlskp{t2mq{Yx9MGV=D)Rn|e7#8i#(pb^CwOP&U>t(Vg z(_xPg3)oYA$rL$KFkt|i%6UdK@&??+4=KDb`S#MwU$peB$Ma{)E`1#G)D5uZcw8qd z`UNQ8CCH2BLNtJdrgIR6uv?!m=)f~W0x*!sWgBX|Bh68yWxqHLD<;{st%GiGuEYLL z2VI4oEH05XBR9#eBJSmr;^O$>3is5fnyfZd3H*Kj!ArLPg)~jBcnykeUL^!M{fll_-l{)KYyUSMzv?C8XZYA_xIdOMx-8c5lV;J-zy>U!6=iNIt zWFw+JV`&PGjih@ePO-Y-u`p*!4Zs_wQMpfGyz87t-d^%qw}dsIZLs7rgRIdZ`lYP_ zzCKkc%BpxrJ8IOxOo+)ywv}9MgX~aES4;9b@?|&^4df6hmAzb;O22d0)xJOZ+r7*M zpQ_?n)+v(nzjlHl{iA<2EOL&j{{MM0SgFCdyyH&ZcRNx^JrYPt9NF>43ZWg+mkXc& z9@-D3Oe8vLjI5{55oYPE0Z_+df>L5u=Qxx8B;)}BDMg*40kjI^%t0EyAuhE_y?@*{ zsT`4!WfSB8UIyb#O;)hV5Qzw`zqzR9Sr@rksKo?|;;a5_^$JWZG%~Y)L8LDm^AMtk zWU_nZWzgH?IfC+_gU$jUhz>JWXs;Jgyc!L}Fo2bW7CmysU;dAT*xq*SrcyI#CGz>p~nhs0pv zyECz9UKh|^Fp(1;XD6Uls8Fp^AJfs$M$N|Fd~a8#NY+4z-?0T&7=I}L#`nh5D6ms- z#&*TVdnMts#fQ!9H&*TpddE(I5nP%YF{K9+l0_)XQ0Z7?*1Fwz;7>S35B>zyg3%cu zOi(H=bP*rF25d~@b87jgF*6nA+8yJCK4bX~OS^%;>sBzgky|FG+3F?wk}$ezvF74p zkmfu4ML*|HYSV2;cA2FuI@%mhC^RTX`0*2Pm-1E>jAzu(25>*)s+AM}@@+*Vqudi> zx!kx`lJ6Q)%^oSP z`;9@H@=9Sos1x$doV%bYhtOouC8>w!oO<4 zXUP%8&jlQl%gRjIf;_5pm)4HEClXF+D+8eSX;6@1AWoP#sYrGeXnFBD>FIS*=}`H- zgq4rhJiWW}uNEy_N}In|9VzE>f1w8xTSoH3Cnp9tA~2mYs$HS6G|5!jre|*9QOx6ZFM0D&iB>dxjaF|ge5e!MgQh)xG=EOpo5i$=3+*OEhuv#hkF1w$fKi9s ziSyH&v<&`3$_Lv1tYv}5;c?5X#!~GYDIP23jC3SbO-SUKdsSh@TOAYUk+>;OGDUp30O8dNtfQ?@om=ozkT0$n*S&_+-e>3gry7-vc zkej(gk!@y9IJ7t6%sL+qZ`OC+h4u%+2(?M+dI?dAVSD|{mR8KGfsj{j+tERj6M!mT zG784|PQn_Cvy{X;hNP8En`13c6SuLDWC$kj=yAvHATo~L$x-y z!w)xSYFBc%EQ~C6HK`P2h5B`jXRR#sjb?|OylDRDIVwS=OqR5TQHfolV0^?4s;{>L zEwaPvCFz=hi8jVHB> zxmQyeODmM67(-~h9Fw8GD4$Zw*nz+@z~%lsj|M?+dKNM&n&=_1)P>MWXM-(^g$6COeWwpwmU7+3YSle!WUzFu6?+{Yd0 zhe&EA?_swWv2{2q_RQ$BYZg>+1-CIOjvo5J^ppjgj>XChW5p|$q#EZH%MkxrU-}_N ziyFuAjp<^@t*dYTliwAht^a@>+TwL^7>{-U6CMb8J<{V9lf5>Y!&S zh=Hj~wdlyq&tp0!ZG|Cw@mO7q=1FbHQkq6~cS+oGh_Kn#UzQ_ARUkWDfJ4M7>5xHj zPnRe#6-4IftIMWJQY+y26=ZjuNQ3cX2G8uXLmy)W^W{bpN1h1KSDw13mbM6=562Vp z1dbl{7n-%|Cftuu;oe-RBjEW$IH#S?+4q{^)&HtX!>)gj;DQvtChvcD_y^s!80IBM zNx2eAlQjGW4Bwk2Jw8*Z@zs12NNsnu){Th3 zWH69YNvdfT;|JdZK{;y82__pHFtZYh1|)XqlB7V_LSVF_;1+2ax&-$lV1>NOxENY~ zPs3U>=EO}JCsm(dNfu;K&QfH~`!yJe4`i|C%`Re6hZdl*Q(Hm%Ql-aG zAt$GRDWlNnb}6vaWyh}g7wD@m$LOE;=AdApu#=(_Ko{{NWKd*|`M6w3^m-{t$Lns` zW;oyh{k+KHLzU@-vy|&jqVZiysq0X~%MMa~0zfUcxeTXxbOXyzG{ipr$7#+c;B zETlyH0Xg#PoLN2i*4MB|WY*WCf;g!EpbT1(A)C^kHh%);B6o>{1Y9Kua$!+WeqsT* z1h08NpMLcS_l!DK+Tixqq!RJ1jeZ3B+0mGvAHX=M+qH_g-Ge3YclSgqz$)ona<;#l z>$Q9ACN}Em5vs`DI)D@cvZxi75z7?w55dl6k3YJS?=$j}`6t5Kmh;E2GI27jM60B} z(&!tB`)Ym-!NQLaG(c`gmtYYrxSBpu&(AKdNNY1-QUCq_^52JgflB^^(a|SqhN|?R z{PdrsvL2?9SBykd6Jl)%)&`JsgcE3hS*0*A4$%hNJcj|{xT;nf@?Bi0kTzr&HX3gZ z5*Ao|qh>X5g3VGO>i6RDHOtYtf?5(v#y@jNeSqD)HbV1rTGkX`a;OQKzIYRY7ai+^ zE!aFIPcn=nh=c}|MAVOf{9U+7E<*^z`zy9?vn$efz_TPc*LgKY;KLS@OdIqWrkWOw zS0hEil2`DlLXegOalk%d(L~P#D zQV!`B1ieMLgz(#+DG!j{sV$-En$~9k1N7tC+^re3%dE<}v{(^o=rl{bW|B+*6m{5m z+HjO0I=gNPDd`c=a%5J4@?pHO*+?z71>ux6fh$1H%@=W+cNFON;}wOeFfG5pisDypEfLq@B$^~t_NyRQNEZO z#^6uc6$!m%mY+|h##qiqT%q|&U&(Q+7|Tuh{vviJ?9r|50w};=CHctVmD8~ZS85jt zn;!C0k7zf(I_tmQ)kysLuYYDXf;tO#XK9_)zqWeS*!a-pz6KmTUx}Pv8+v}9Jejpx zcGH_(N>psJw1w>=(l^kNm#Y|V0{16;G zPu+n9Lh8^aZ8(0$(eF@@&M-z;6=@H?l3T$wg~B)3rCBe(ywsGzNU}F_Pi0AqZ4djA ziyVO-Est`k-?qg$Wm9#lJVann))D z;wTyvAAwJ^7G@p>{CHOLF9ewQ1of%E+1cR3Wp__#)3T$9tSp5O!?@^#+lc;vl1gax zOl`eXid2YcRc$-!9{ujJCVi|FUo(Z1@Itsv2~$8OaxEh-()Zn;S3tYd{@{`TsvHLE zE9u+PZE7`etQuyx?s}8#OyXEa`B7T`K#OmCHHb?@^>R$=G60JS@6mpSQ)9;$4n2*| z<~);rVr25Pgs!gW+;k4a`Va^TkdNk;Ze(vuGEp}#W2J1wK*m%PJ-zyJBby#rn9FsK zff(td%^BVl&1e>`GDnSH=M8f@pb2$Z>;M%MPW;J?HC#uvQ*|UD((Q{Ui<8Zp`>Nz= zD{l6oM|AY#Rmo4e&8)2ngs<@Qh_}0a9q>vndDW?JB#{DGOX;9|j|wS*^bzE`g1nkP zLNxDk;RKkze#k}5B@`zKYu;nna#is;olTB5+47hZtS7o!Q3?7hGizu)?i0u(L{>z6 ztmb7JD>=OZ;(vK34^kfu(J`grC4KY=1b>h_5RUAcM1)}J#<73u~^?Pq5OQ}Q$3f>!ceou+2IbIh6;pXhRgv=bHz+O^nIgp zJgfLs8a)czGTQCea={SvnHLyV)w@D{@P22Lqbr_tv^w-abnc%=BIM1K_@*b=cP%Wa zFSdEIp`aR@vzo?uOXyZdf93wWi=knDZLmm){WU#jHJIR z8}MH|YGNm4NtpiH@QS(^6+cbSuo7yAvX!1)c9-)~9{%vF6A)nZnn!p%DJ;&_B%sL3=Jgnx^uSzPke zfVtQj{(ul*Pl!FD7*Q~)`|S6KbA3j9)&u9Y-UN?mX}({I^J{1p{+Eyt^jH+|+(rlC zaJ4hvkGTNGMa*-|{zzvKUF4E+Xhu*67Wa_b;a1WFPa%nE1DDX^MWjgI6>b2e0^-GH zU9gDwg)~ltPcD*#Q=c)CtXD}6@DjOAg$K$Cx#y2bEg4l-(`Mel$1u!F2t4FLE~REd z+R?=FI$|r9LwjJm=5fM8MZkWho`2cX0RuGhyD@FIyyDS!zL*Um{~&2 zlK09Sz$FW)LMjl)!x6wzB|M*qwm?{d^mw}%bdSmE6U32(Uf;|ohFN}5F6axS+J4$F&+5MG`jE}`($rDL7jSL zjpQTNQ?61VWgrIbJUrQI4P`8wfAmJL3lo?KY#*exyO|lSVvZ!GNnJZcDy$3rNn6V! zQjMS*k6_~mea3~I=n15~YWiS-{Ltil8TMiq@Cl)f1t%ZVmUj2|?iDZcPxdl#_w1sNB7Prxs~5|NkP8+FTMH*jiFgE z$mryMZ58_vFKsQl*Vups#RQD!?Jaqcjo`i}=bY(aI+W0>k}i zhM{V@w1P5Ew>N6>6I&wyHO_yEJo+@aPR_ti6%7oRg#EA%(HGYN&v;K2Tc1n@Jd3C^ zcWE&L&C*kZI0oCoH?HPp+hrfF7R#BwjB?B&yF(Zy$-&0EEC()IN~QyXg{ebLFYPyz zs^NI@u2_rJpk#rTqX5q?ET~=ntG&;n!#tJ@Bi)qyQS{D4u}KiRc;30dYw8$qOnfsr z1|FIhIccc8S#$))2G7S*FC=6aPGUtDfAVCMFKB-pto_L9i6+%6qy-t;rKCk7T+lde zFqpz_yd4Ylo}%JI0^J7_(!Gq7ydtct8zY;r;a8F(3)R>JLrC<9_d>FlI!%EgZKzt~p}-_^NhLUAU{CsUMB5I< zZkcp)gKdedp9(Ou%iU9Q=1`FCsqEXOs8Q~0f&cG-?^keAYzpJ>YR9J1;%pNOgX^@_ z#zX05chFU2qtxPftb6mAsUwd46r{WSm-MFLR-GQ41k<~Az}hfgvy+BJ{U{GY7|%}+ za)L7zE%WY&(x2e0cX6Y$M^E+=AoT2PYS7r+MISijIEQso@7O|zZ=yTkoS0ouLK6ru zX$EK=!sFOYD*eg)=>^FhBMrJnnZgCG!Z+Q`6Rf^cR%LtjX$t-yiK)jF0U0!g zL>yf7_#cGvVkZlsOC{obox8P z6rUuk4O%n0eJ;8=ScNuiVt5Y$7BIVz9@@DT5%paT;t&gj5#Q2!he#e!SST87c*E-q z*nM2n0_&tZpmnhl6b3?#cPT}1!|+o(lL&+0Ck|UtTZ_Ixmkz~Bmy`$N$+e^Tp?U;k z!GFbX&s9bpQF@gC5EotFTk>T@_&0!--4t%I1 zwrM_0BgUO6zLbY~i`~Fv+b|PpHMtZQk3dnfi(80RK)hVILCHw!ZuGEL)@Qx4U0p9k z;mdrpiyFuBw!owgn|ASUsby=6Sp-s-MG!-X!kys8!Yl%9k>qaR;F(rl>0ZOz&^_>q zVm1Zd-a78L1JfFr6k4#Mi8qSWeQAb+;nn?CiuXm9FH5ib4$qaG4{|cBG@oJfYnNz2 zMY7!0YV3LmY)0e{u~iP0CU|xX0Eu2!+%*C=IF6f*jg(9o{#^L*t&uT!M44nFwnKxyxd!$+u&1)p&I}4OhDKJdV@eM) zH2aO&zw2B_@!#zp`|07L^FO4wlN}-0`62t~4xzHFO)mfa?O7R)>#y4u)Qo@vX7rtT z>c)6lSy^v1HXqV81>+iuLRogLRY$r!)u%=z>g54HLulYBmJD(ITJ^DHgq-vBonQl7 z?!1{Sr2(7G?>kF_sTWwSaky$(9YgEq9nRY)3f% z^(_q&|H4#1s|X6k?sJ8Rwifnkm?eKE9Xb=QrF!`q4j9QP}2fgZr6jDfn5s2 zJYW1qm}VRk$V#@k2AkBZAz50zdD(#wrXpvyIb5wkP5vAeCSeqGNibZD2y-0yow!T- z$-}&W$z<=GU;&rbCbmFfHK9D9=<}|ZHNT?2u>W=54@XUsz?|0ymWkV*DYcHK{6=?Z ze&XZAV6J&Pbehx+CHnW7v%~)DQJ%iK2H3F?`$ezP)=nKXwP-tlB&^EGBX2~h--tig z;*ZKtnNm3nj2Q!=W%DH}6Jy@-LfYpc_QG7(ZD=HA8ahjq0#E*xCzj*2j`5wE!QWHR zQwPme@+(I^^%0kNjq>ctTaC$N@mVQH|C;8)>OcJJO%)P6QR|8@5jTuQp2~g`Kcbc< zGIdnb49fj|=_}W1d|CZAmwp693^LcMcc)NZj&CLSjql#p3nl5P%JbB2GSH{o{YJ1 zAuXR|nRdiJKKwS1+|Xgqg^^PmwBpyzC}IF@RYs7xxc92gHLlp*ahVD%Dp8aJ@hx{( z!@Rq8Yt|;OUT6(~gsb_!l0UV+jM8@>VSn>omtU3c){FdWVI$Mz_(EjtNySKw$=ab% z?3lTWSMwt2ThH^ad|Q4x#E!a^F6prRI@2dYEmF4%-)Y`5;tl~B z#~%NCd&hWth~m$qpYtt5T7I@#3^~&x?4fd~D;50Io zbt$X6pQ|ssgGUTJVtk=inL)ROEW@R6&UC;ma zzMk{E$hkQsZl~!9+A}D^4e7D|T5QP{kfYBVEMyAhM+JetU{!1M65O(&a&Ld-& zf_@kw2j0EVToUG{O>3VqR|=`oX3s@n*)vZ&Us@)%wXugbdcigZTqz%8Pp`Q4vu9VB zo7(EKi-+k&Agwf3dX1Y8qO)tP^>NegPTH9VaCBVEQ51Pu`nG+Dk}uPL<3{n^Qqs00 z1-+{r20e^1Xel*~E}$!}mo5+&X(nO>k zeOFQ9GK6ZyD8~_8SP$qs{bAa$ZQM4V?f16azdao!W($R=i6|5EFcwJu9;QX& z58;urpXeR(kKe+UH$El&O)}TY&^1ye_(~07YKo`}h(PH?RtSpzEfeJxArU+?K-`bS z68cSIi3lVPvk6V14!q@D^V`c8FnPBoB{K$~7@)i09HB>(+X5Dgcb`~2WiXsN1ZRj( zZF_4s@*oBp@f4CNF2;MqhvW)7(lBQiW^fRH8LQJo zxl&m`2?G>@-gAK&xy6!SjEj!1HcsEVP2R6H{k%16sl%hEFJ;JQlvW}2aYlSa)+Q-< zV#4x`W(9I;9&*&Zs@fEsRVrJ+$Pvh71zDaCK&n)fQJJbsZR!D+L9s54bBo{VzFCN5 zytS5KY>+~%46m+W18bJ<+B3el#3@vlYD`=6p4MgTs zm*X0&!L&iz3i00FFq6?E+yEGdJiE^5pQ=*23vwXslKgcUZXHnc70r}Gk0x_FH7u8tE?i?-#-S}xVY&=G3?OWU zc-u<6v7P);w_W(<=AvA$zB0i`z5lbN!=VewOnm4(?jOw6IpL!- z))qRde%&--sSyddz4=kpFdT4esQviiThhAq@%Ug?e)u5tHHZYv{?t)1d7P~7Zz#xQ zdT-ueyf@6xi^&*3_;X1o9rw`GFv0@Imn`qTkP%FV;GAKrGRFyhNOR zgp7J(<>BT`leplwwn=xm1*S>C9kb(KyFFRz_S1cbdU;f30&=$x*t<^{6>{d4YzW+F9H02qrU z$&yGaesOPMp?%ssA{YEqluTC=g&3!EW~m_A zU9M7?wY^SyRf5zi`3@<*KBAq7iGF}o(08kP)$7P(>rt*_{O&qg*|smXQkA%3xs4cGZ+z&w|C1AGb8Se&gV4GF};(!LVA))hlE(g%0?PsExl2ubd$dG zi2T4k!rw3fxgEmJP*{jTZ|@ONPpJz7G;(IkF(3gs22mDzQvxdBMtx7I9Wj&|*$z3b zQ28R1fZsUP(zrl5f3MirIhiE!#BZ`>3;9IOAtE}ALXZGeyb-lP-|3M#2@xi%OxEWN)U~Pd%#BaT^<(RIe?QLS-;h zc}T}686;-GmNRaff;!j*mkW{!WKrcCmK~*&g1AxKM@nSAmbg;Ks)1q=EjBJ_$czKX z^qsGpI8_~_BLY9u3tcU?gG`cgDSh~&Ou{A2sF@W1jF<)LN-5_Z`G|^Ucg-+_s_bn5 z8hUq)qc0DZy^NVnR_^;QyH4&*G`j<4M>?H)msV%{t_&D_l&wu(XTMvWmi-IeR|A4x z&{WNzcd66A3_}q4fWAeUPFWX!sJC;L-p5NH^LLWIPz) z^y5hL*Zp3>1e;&EcuwKl<;RALhG#^PinoR*DgdAWzi2F3hm70&9`My9mgT8@sZl+N}ifYwloS=){;4*d&8_d7Wh_B+SMnf-u#S(bcc^ zr2Sd5>mKzYZx1_O?~MT$99m3TZGmX8=&gu==|7q+W}l`>C#WiZyA$dewwjR@3zqOY zN|r$81IUCsp|U6r!^2{s#}j+MXbL!26rGY5c>58P8L`@;%g{}c9>&wWDd4M3q7@*Y zCy$OuFcw%CiFX6+0#n0{QocCkO>aapy#@y@BLT~Sq~|Jpx!Oe;s`N>8174u$P8=>Hx%FMd z&k5UpGG)c@Fz$Ac<^pnge_&VJ|G4g*aa{m3lG-$uAM*%7P!%*|$Epz<}LgCq)2^Th{pYe2L*KU_bi$nPukdKbQ?Jqv+4fT$x zJq+o%TB%1G*y;`?Y2JwAQ3u155}U3=giW=Cgc8O$AfT_n0%jHi`3BIAFrwGU;6duL5*U;lH{Mle-BuB z(;L?2N|#h|Y}8&3G-7v!m&FWOBI=aFE$x7oM=+{&xXi$NDpr3op7-u~L$I1)RIB@M_)6_23q;J`QMI^3Y&$Bg?4#Q^f2Si;8n-K#Mo3Yl zE?w=dP7i8OEf-|=oI(ySO7K=CyU1#hVEv6K!NNdD2sAW2F+B=$QdyK8Kb$!n3NqmX zE3c`Ckb??#Dk&eq%R$(Zoj$pjDN+cwlHZfOoV1L^NoYL6zS#&RJ#@-ImsZ+U2rd6n?p$Yb;iNar zBPj&=v^;Od1>HK7EKDy_>jqm38a^=CvK7IV-x}7GsvfG@e7wQCViy^IKTAD0zB89f zOgg7Vub0vC2XGqoVLwjk6M4$MiHS0rS}laCXto%6L!z)YHYE&!2Qw4=iDa~K8?v1w zj+`$fDTnl%T#AvQ&uF3Cl2CHFs%}+xxi0fPYI}aB$#2IkglZ@cUvnKGMY|EU>=!tV zfyL@ldf+s^IpvtEh&xfB&S7dgmn0Gd^0)LR$d=GT4II}iG9sjSka?{_Ui0T`YQ(0y zakf2HuNZJ1Zev2nVS?MX9NTwJR(M!o?jVvqn(;&LFi^yo+D0FvYOcdf|i%-^lC_51|K z!KDkDgYgjXA_wQv4?@n+1GQ8*`-pZoStdckI zN?cMG+sZycJGC4-4aQQ#aZJc(ae5@r1G`y*kjiI>9>g{1>_sa!8Ae zSlIL}9P5TED;1qL0AOvhVYdAY`#ufM1 zztf(C3l9h0L(gpt+5C6(XTqTmwG3GNwd(^9vu%XmA7@LloXz*zufj4fb}voIsI<5C z7RnSFdafprSb9WTXhW{euD1y;T&@qNMc%JPY{0B&U}&-m+UE1~a{(`>;WBt7qZ=rv zo_c4=xAo0U!6$rw@?4TW@&2@msYE~naD^>Qlv~Vz&@Z6MNS0CxCPmfZAT$)UnZ0l9 zQe};h%-y@Y~$de^I?w+WSWWt_METkYgmne+z~6Z*-)?28U8& zO1Al9tN+Ak*b{6zKaCrsU>~nn<7~U)A)agPmCmhlUhR@>H^8;)*Jxl4+0&R>mraBquQbRw=deyZ8jgu5u5~GDn##y+?R7)=*z0eSQ zYaP_?2Q(`ZyI$K5pWQL`vok5&$#w|t#Q8#7ZA+ma$jJ|Wm)1vMjSEoWwMlZc%=<({dLrV z$5UM1l#7WeVmEE1b+sdzZtjZXcjC|sa`nB`Z~dMEpINgnFU9zCQpcHZ0rnG{m^BsD1IBYcVJMZ`*tYc!F9SCI{oA%aF>B8M$w#zf6Lu-pl$-9U^ zsRwriMZ2pt6vnUV=u_v9-4)lx_IQVL(iSifm;EU3_W z^q)AUF8#8rddXihZ6;s+)gY&ttOXz(At-DMof%?vhHh?_cJq{^{9J_?ASXNqaQ zx8EoK%l5du7tSuG5W>XukGPe1ysXY(2{44yzW?`P3I^()%8^`yOblhNW$!yt07^ayvh!7$)q zZz<7du|S3f!|y{qs-IG_9(_4GBX=PnO|#z;pgcoxd^#kh;-XKow*~r zS;jJEkGHy-#nDFPO0D!rlg>eOjgF>Fya>5g4FvjAI<6n1PbkPk-m*^6Vt;jUwj?tn z8Z7(7Kwiz+DZ|)f$4P#M=<3tElTf}`IwE2>1^+}CR5N6NycEpnp#4zf?a{iF^j4-< zf{;{-!b%R1I3ZTG(YzJ184^9-jMj2y{%o{8f=cfDzSh#;9?K+Ej!nJGf*vXD< z+qUh=#I|kQwmC5;oSE3x#I|kc%bauG`u^aMQZRbA`BweEF4RMOPw^&GGyfSvXC z^`U#}3f&>D2^S`6_+&oX!`xNQP58RY^YKz;6r-^NFH;`L^_~3_3VK639Q+IX`qZfaxp7m==cF7cK>qJS@0zRwaDBrs0i{i<%dF zHQ@Tg*a$83e~!-xKliI_iY@pc?<0oFsTx{WP1r!g`kNr}QQyED`kQJI-K!zIOclbm zv6Sd)y`aZz2)Iw|q`;v5slr2wiwQu8G$ICX@*jz8I|g97R2>D1#kTju@i4A!KG<%y zw6?mFAfpf~$_$zxN@IHDpYgB>0Pho5J)t^0u1UxPh$t8RbV`bP$;obo=1}T_TYZPUYl8OUk7Xy9&~UDYYpb*Qb8{Vs z|8r}!m7>D{DrWBUx+^eQ0-0ZnP%x}%0!0leHhqf#Jr*e;G+-;qLsqQ3OszN|;7atI z0tE=lMtVJPD!R|4 zP$VK}SFo+1OYAY%lAqa-coIi%hoWuE#(@g~&f{12cltE@_9avg0j!<*hMKpNH7!_* zNi{&tC~t@FA~DdA`e>%xwzd2)V&5!OZxDE3D*LIE%A@YEwM7~&Q>t##tOT5c2Z4K# zV?JpyXr$NIisS-!X7S%vc_x%v3_v-yz~tWaM2ROB;4xtiW`Dz)Huwn1jq(14n14R_+0*qT z7^*1eese#U{XK@}C=I+1pxdh^?aiEVB_+H{c6vgd#USl%{maMmaxnTl`&hW`bX<5S zWItqbqscnW=i0oU0(&GalF3Is61l259YTu*kVZlYu3f2Y&I&?1`yB~z*o)|ZG~L3j%->>?UnrF z<*U-PzD6#V9NjmgJiX_q`sZoWK-`cf%r>e$Gwuo)o;8G24Ig1Oaw%yap>~4CaG{=u^t&UoD63#ioab?`3z0DF5vsoGJcH|y(mMC=jRp|X4>Bv!j^T78{vIx|I-sjRiO$)(&KX2<9)b5o_?kBy2Jx^0;#tj(rq}+h ztdInufDcmBkqRJ;`xfSFznr1`@xB_>@+Lm1bwlOxDpV_~Mg*;i7x~^qfQO@eL~`<# zhWfnj$9nSN;F2T4h}=G_C5uNkHgLGzEKjs< zXnc%yakbhLhueHV>ewv+J49)wJ4r0m7>HQq2nu35GF=Qp5P(Ikmvsmu!+2&-@d`%+ ziQ$jpbC-clvKFg!z^#Ygqw<1v*(Cz6K|6&K%frke$yHd~jYW|AnDOqWgdyOrR|JgK zC$YPZ`^}7SLOGGNI>EjFB+H_lcr=wLm=x!s)P9JP}0JgyI(ffbsojE=8A9i zqaOCEeV#P$8LM-0v{L-NH^BKJ3x!?)%8kN|6d>tN-OeZTlfo%y z-R3eEchTKVd0S(LIte8hc?%;D*N0o)A=otd+mS8zUq#8q6WOV-Q#Jvka#VOdi(;`I z>!6i<6kN_b&c4XsVSfx1;dN}#jScaTy-1310-J}TYP&h88`?dI5i*Q-XJes(i^jNpXt#J~C6Y<9 zEwrQq~ESNGTO$o(oyEp<}JCB*OZ}dN{7XdUx`f1;IQb&%M(SkJClG}2sYFc z(4bsN{K%&neHHpHICj|0<&STX{-1T7c$9YA5d29a;iMqP)`BHE*T&W5?^bc`z9<0L zEQC^e-xPqbiA4B1j+IfTQhW+`Pg!iyR~PH-a24$ZweOf*85P&Hs=N?kuHZ***DF1$ zbmbKY6+}KR#R=~;G$h6n8M0XZ1>5AffEq}gPPhWpv@+VFQRA|-5 zR>u%Mr5;QCK5A{XmA~3MY8I1t)k)pg<#XkOqPE}0T@Lzt*^k?%d&RNV@R|?J>*wkf z&4K(|JAbt<^JaqYGoJ#hmsK-})4|GYO3-S0ILzD)QX%wv=Q;fj(@#Rb_3nc@qw>^z z3P|<#4{y0QK91r#k3t8pPhmiGME>B0`$ydAoG4?huDl+fzRz(hXip{VhVD&O=Duc~ zD}v>yVtDF(a|!u79H3Dk@lCuXn5<8Oke1ym_0;Tho*? zBYYWh*3TmtPa5s-kCGGoR*+cOco2!)d1b)m6b^C*!XMs2cZp;$r2+Ny?m<$kA8$^b zQqdMEHU(k<7L8Z3_U+0FeCFE)l)(5^>E?5c=d@P61-;)@E!OSQK(9j4=mM<8{qjl9 zViti6-P)VwF~-mL&)e|Hu1=bUa_Ps|CS04#?M z6i$Qhm6L4hT+6#S6?Eczjn?>-Cq8#^zdpswj(CZKi^8Z>z8$;FalsbemR)3Eq&E8g zs&3n(?Pj*XbQ#zh$%3tgqTPxh&%%83Q+$U{Gj?Gzh zb@(M*+%NjzytY2^`RGr`yS}EWnB07jImLHR`l;P|eHXj3I>=3X^7xS(hcuoMwDr_b znGUVJO@(V~;yT(i>>8fSJ!|O(eP_Rb7a%z7l;UrLUF$uR;a9QJ3zgB>EvZeG!OM8lxGf&J=7k!BxyqGHv zL)+bbTl6Gv>U$Eg6)qAK_w%BUEYOjl$-`h>+b(LL}o77bpi@!Y5gk6J7 zm)nYCJg97uF?jbUCXMPe9$I1ve#jDdBzty85vkeobbS=E^tGdz3iI>{o)K{%T{|Ev_UEUCHPY&t;AK4Jyw0+ zVK&McI`03>dVO~B!IRij)xO1i3}q>)g9D+Oe2ssENCqf~&^t2hRrJft9y52)VAnUF zZn89*Z?8Lf{2C%;4=erDo1Ir)%6|B(y_VS?Rv+olPioFIR=%t4S3NaWeprsFH+NaJ zSFL>AuY9Q*Ra~8<;ZaZhdVQ{Ys4^_<<{z|xMC7x$Yy8(+bC$`xy&}Pf+naxdWB+%=I zRUGdIMVJ#S0Kg`KxhW64x~bV!o;_5obfr%gfow@I*m^$p%7IFTfmCs~a16LC_}z=; zSXd#%zK=2$7~*|b+|gn7x?WBbq&#Z=*P-wpP$J9(fyNCyes76kO7A%_We!&Cc`(ZT zioCSP9U^XW6GaVk%CLE)d`m?dU=FH_=bUB8CTzbxvF80eXN-Q=*4Xn9pH20+RboqB zpk*2v77-`yMHt%I8IsUejAi8eg5n3jW(Yy7KigF84z3;Y^_`Ks!PAVt{hu&33#E*N z?Ld5q%~1k^-vC749bsNk3`MUXm}7D9GZIYPjaqJMaCUJ}oCci5%qd>d4(x{P4^5I;()QC!?_vbz_FvukeV za@xNt_nUX!6yORT-ubC~SzwE^Yw?H3c@DQzdNdKNZAa{voZW&3LSxZzx;!$8@*rJ& z(ap*4n$dGlJrjlGal6vSx+(h(H-~qx27c@GRBft$D0f^JxN|%g6|Bk`^FZhb9=W~L zHj=b8*&@7IF~QGVhV{ic&i3V?F}`o!b4h%6%99-?7lIs7%OQUWSDjSZNL?c62)hi; zJgOk9gJ;$b+ePUpA>v;i+)Z2 zwc;_5T`_oUjzk-4>nBZlA7CM7Jf}P7sIgEj+LzAjG=&2b`k|zX{J`!*;xOAn0Z9+y z8SqU$!yLfZJVnq?TmPr|_?szyi{>-c^q(Tkm{#INp2wAaN&z%IBF;L|96&4n* z@uI4O`;w}OcEI8Un@t(Qb{VAR;_#AJ0)9o*+$3W)iO;22iZ>q!Hmk?RF07wL7EIij8TY8n)^X$D$Z=TDEO5G(`{hS` z+p98)c_*N73M!cw$hwTh$l2l6uXIy=@lds|$D_>yCl>>-0D4-cgk@3^VeUy4onyeF zlPb?DJQ9}{f<*YyQ~8b3^f^2UKl2yN=aRtcyVnv?ETrs)IHy=JJm`&QosT+jQ#JgDT5t+SUYHFs&{`I)sfuwAN)DS8aZ z?|Q+C5R?#ZoPAzne)9*3*o%#!ObIDW_CfPkWJsw^fX4Iq<%UT2;2-6UaL4*{>vbuK zHB9Mq*%okR{BCYsFD0U<2Qlb%OQXlcN*cwAKg=3V#XUrNu<_+OurDzBk5qF1Nu_*h zOX%~TR35nuHY;8@X%i5G<^s~>+}6To)7c9YrC%X zqA4VEUu8C4Qy_nZGURz4WahtAj$5!ElGek{t}Qz#ag{FeI2Y=lUs* zswHINAKArWLK0tYcAq=1d`%<#SD^0`>Z>m+Yr>E8nziHppuZA2mwoc&cf5{{P15}9zDSsX+=LW!f z*bbUM@<{bgT=&PL9w(=xw_udl(9+aA3AcvCTkPDI09L2XcirfZD2Nf|m6J$zC?21D z#s;p-MBA}qxZWtPLtob6n^F zTYY}Z2O^Bmjg8~L8ZT)4?925gqZyEwJ%)xr!XS#D6<6T7B!1SZEn-xV_W{p5#T>K} zjgU`)%J8j9@$4mT@}z7-=k+Iz7k~5Dylyg$e8|@<+70$%Yd!zMOiStwKDh?mR9_7d z=h1D}KDt>`y4rQEHy6|jW3UkKm3C30AV0!y_zmTO4D;J zB?hF&>MnWKLEn^5U(a+Je}ov^MC>|Bc7-K}|H-pTL9@KQj`#P;gvBov2wfuW{CGKy zw-(c8Rphz@p)i)Vimi`w8hSp|w!esdSiHj20wH->st)k7v9;B`Z4JTO&ch<8WT6qN zP&ai%2Mc6swSl9DTeUmYBZ5zBz=-4%bOY0vN@J!Kr;&xEX3fI9i**V+U0cZ}q{BQL zC%I9id3@m4^px_3qDc;l47D_qwV+~%Y2=Flmr9v@K@JRzB9-vLA%UnTh7D$B6`zx#9Eh|7#id_gdX0Zr&u};5r#?}DZcn_rw^1^`orXnGblmZ032b%>gDKOBS z*Td^rb(5ukNo>UMU?b$Nd4u(@nEZqROh@-=#~hM|g+>D%qT8YgJWk3lIJ51TAS#O}yz4w7 zs&bhWk7Y6wuv*Kve#KHdreh&9pe=B!M*yo;7`A>3@D!0L7RO#I1Sg^4giBb*jzTkv zPQth2%%SWMpdhl-KRiL(C*}`+oNx;5f$a)=29s0k=+MnC zQGjwIBnjE61fr?1{4PhE4IeqlM!cayg9(Q3MV{2T1;sv6015gLEEog}J=AvxO_{UB zi}8?fXK{tB7AE7RMA|DLWc1ZBk06rdR?g|(IeW@SvgP_)o1S-1QF&5W-Sd3z`?~D4 z3!5%dq$KN&J*Kz+&B3R~uhq?1x5u9YHD)b`-?-!a&`V1}-EO9{clz3an9LCINk`Yy z;qlWxDQ7D4RPiWyydS(ll5q@O@&1O3ujQ_Fuv{$Jxy~HC@$5GkPX?MQ!^*GQM^Yp6 zvV^a_n4LmwYO^z_Z6ALH-~S4}6bt@dJTguZy$-bO10s^m_7l#k3f$*#KBG3#4Qegi zhd5B>x*ImkZ2uUN*N}>uD4JN__G~KO7lio3)ra1rSIw2QUC$}nQERI1(KbfT!XQbq z?nLRG5n9VXsOY~};@_hi&GJX}?3{m)fm{3C*mhsV=9|FlNP0`-FFl6|abzt$Fr0+K&@#X5RQ zvfr+Ey90F>08|JIc|xEFDn>A|r^$!e$CxXC^J;h6kKzvnn0UY*N0UNBb3xbT)OEhl zuw`&A_D#kgPKD&%+Lf3;`QmrHKdgeogdGZDbqnEbcb~7eR+t?I1@>WJ1u3JvAsPQ- z-=~qxkifSt1+TlXeg@0$U42~|qsC8s;fOzc?R`uI8B6$p3{-|N+oDEQ&ozMm8?CC8 zf6wfwg6)a1qZ8Du+$_#irYQyx#t}l}@=f>w#R4k=paLrg7|Np&&h{Zg*?}_$Xyl%? zajk^L`UHDtm&l9w&|Tf9$3;~RB!z19a*2u+&C*?sU=>2-diWvShe`nlTWD|uhA=gb z3q0fTOxoofzzB1r<5Y(9c|0s*1_fBq>4_E!sECELA<+aNK;YEUfqMb*?>Q~y3L zkjeY2rzvqn@Yr~;RIbVdZYdO!Soe+zk-P2Zc4l3@nsXH@srz5Vvs_KJ(iKo{rF}xc z;X6^dSM?r@9Cy|1JzIYx^r>*6Qp?ntmG^_e%k}{n;Ctnkwhx^kJ?5zC3RM+sf6@w* zo5^^^A}PD&jR*`K<NR(qvay&3vsAzs}ikb>S)b@5Vg`^ z1w?KtWB10j+d{dCq91MI+WkqxZ+mN6Tc|)|xM-s+7dqES=U3CXLjgy`#OML;UuX7o z+1S`9fjIuS%*uL5k^8sJF{n_pZz$p-4O)#EkP*vy*yosPcZlq#etgiFcl^jfr#;%~ zFMa7u(NsR{$5qq#9^yTK4cSR*Qet3YrjvW2e$2<;hV!zjcLM&SX|#vUM-Eqx#V9gm zl$>r(tOhg~DmN(j*NStTHdBo4lUM)@M|5@^O6_j+4JD%I9QQ zJp9f0%5+6c5u|bpoUNY}(QE=anc+>Vzd4(0Lts!aH@n47L6_}BR4x!0JDqF^lOnQ) zoS9m{7|el&f8YUeUyMNp`Hp?s8DL8*2f_xvjocN5g|6uX#txSO%SHsr+`O}2xP~yY zg%2t~<`OBV8k$%ZfDwKK?GclJ?j1c47;-zjZ*$xXAUs;PG5w~pE9Ky{VmXblQbfLt zR_;5JAA~z>1tP8&9uIC1y%O11+Dl8O?DBSe;FVY!s(yY8!!LL7vX9?I#SkAPP9}}1 ztllHM4Yu2tGlT%ALle>E5|josuqz7`!ybF_l>5>&LS(cZ+SBUmOw+7wy_PML<|%RW8nqFUPzDbs92I z>5I_6fbMKFu~(PEeu+%#Th$NQmO$QPf`-=Y^Y!zmAFm-QIlC zp5f4<(mLx@S`FDij;I!$P4eaeuBkWIc78pB8Z0#Tw~}wc%E?h+T?xE!?M+?(`JDK<#u!qn}{~D4$UN%W0NDEO=s1JY(5wXE-=>$0t z7FJn8Xo+I#2P-y&{e#p~leA=$H0GT+j0y--_&I1LQM`!tkTAsPuWLDI4-Xu}fC&C8 z3_B*DF^u8H1SsrCnZd_G!$h-ia6&p!E*8}$hZfSGJ_i=8Esm?Z!OxGIuG4$Sh6p9P zz=aGdsitFCu@vRD@vIcZ4=SxKp(e-Z9Sbq&NGbAz2v8nUNmcN9qB%n7_<%#O_$TN# zFEyVz2S(l)e@8-TB|o3_B}d0Q3Txy<%0lQ?0*dyTavG5$@vmAgBC^M*7V@@OJrEY@ zZb?&^+SuqUAGG)&IwC+>8@QuWLzH!w--Rk8`pgAtU%lUX&!9+|Hou%0(KK7eFFeCZ1?^LqE4L%W1FrAv% zq)x;>LVhS$J*EY6JMsW4DVC-W9Co}5H14}_R77|afC4y9LMpuGm`gVRuU6DX>70ig zgK|r3Z0k4_XBUH!P8hx@@KhB|upbm$N~6^NGHo3vJdu>#Z8k6vQ;4b!7EhE?nhEv| zYfZ`rLpTEg`6U^Gpq}QYe#}ATc#(IxXX0StL6aKHH50CX_S}TJ1@QM&;l`6O@reC^$I)!D@aN zk;iUnJHpbKJST zx<&rN+gZf_}tNrwrK?hrPkho>!KtqozBDru;0+@OIk=F7IEu zXB_b1KfW1A5MhNSA7XgJR044?Pha{~TQ&RrX6T$^&aNkwEV;KOgX<~sP{}n_%`;TQ zj44&Ywfha4hJR2QW=Wz3#g`Wt$qDvB;&1EeRv;5niN*-Ma5rdIgy4C#GA(+y2#FjQ zio`RipvGaSqWFLlbr-YQ3qiIA7wL$){yH|8Jp6&#pACzr;;Ol9sumn5V0A`MY!E;T zEk$ctL(v(dNQH?h_oM13If0xqXrQi7vD>>8w9M|=)a=npQwHzI(GE$SGh|#>0?!~( z=;eTu>6WfTi;;c15PeBC<`#kMw}aEtZVf4}z_3djfkQfHN=?Qc$AB9@d`4BE+#qtQ zSf9cBE*i)O2&K4_qQlWkcf!bt)hw((nW6#%3M-}u1R+@ftC$Wokq8FcWTO#Xc&k8V$p(l4U^n!ah>uLW1w#G4$CE9l;CHAB3TP&X?}5z!7Kr)t)OdNx zusi4$zkNmw)0)FCL;*HVs$Ox-I$+$b2WQYEY+jq;H*~pEd!I4FGz3rrSggA37%{nI zr6muvQV*RL&6P?PGvoFG)JU1LGk*C!P50`PuThS zmyWpUU)8T|)p)B0|5ScdK75(HYVUb!&lQ33jVB%!=Km(nK(Mm?0C8BLyyve&VmLCx zeXEUg1)HcxKR9ijPM=IpKU(8k3_Ja6!gh$j91&W2ZQ)$W_WLNS&GqZiNTtBPz{=}1 z`_trBf0&mpD5*&zG>n4)1*@cRshgz6SXD)Z8Y%zt6?R%CJ}D&KzldLa;?9}3iP?=8 z2wM{%+{K~1-6J8;o0Lbuk`_2UWxy?x`eT^|#IC!ji07c@nzZCK*iGI>=FQm1o0t%J z_UwT29kC#$Uczx;o5~bX7|O{~`Hz^ZDF(7%jD>X!dqQl6xEKU)x`d3%NMTdS_^64d z*X2*TsRZh5&Gs)X~=M$m>$!4N>WN*yfjoqA;cS$m&22=BFlFt<2M-D z$g{3qkI{m!pJ`1pr}dQu5Yap=iDaeDnV@`#gv&{V_>JG6BpkxIp+qh@axkz`e?;3j z7=Dhp)>{p)i#+uQPfoDIuSVx0UWsvrJtrE_;UV#--&cfF<4LKMR%033MHwu@6GUim zD7RVGvn|e1W?#Nr219oIdsCPp#sa@^(l1jjSbB((1Vu#9jg0tXP&z!$T7HG+7^L4q z@fI}&^r+u9RFk7o1+^d@zaK2yVAExr=Nu3Bkiv$sQ>AuWtxv|gZRtdyjXJ~Bu%Ur= z=fqUN(H^+fbCT{Ly0FSiM28lxB0xyXak?{i>~YJCvyG%Jy?Nrj>V6W$M(2@g^ndqG zsO+44wY=hg@rqzzMqe?_!i)w3z}Lq$T{d%sqAEeygoK-9ncMR?F9f&|T0ljb!y>x* zwo?C~=nX=zH84|agd^k3wD^f%2fLHw@e`y{4{NwypNSp$q{kL^jP5D4=A`6QSL->H zFh$jKleiyMh8*D12u4Ejmxzj*7a}2EsM$vlP$<{OLlr23KN=Kdi|;zm#??&ZV-Zbu{$RQ(M1e+pMFUfS3gbfwC|1mHb3TPo)J+(;WhL?a%lvB(Fa zd}rTi?WWDG>5E;1Pyksny#0E^|H<9|(Y-vA=uJsvPU7O{9U&nEV8UGBHk0tRfe@?) zK)#J~ABpdLy(9ibd$v$Q@5J}g^FNOBFT4fwKnjFo8erOYt@U45^gr+QAFmMP6X_~A z{NL_y5pO*t4^vv%9LRbYP~Ji^!QBGC@$3&DVIiyb9d5?fG&(YPEA%~wO)U5=KY?!> zSPYYSfb@G)V3UYSSc|tVb8Bm6m~FGgzO_f?UMZAhC4rZO#@)h2!pdMp6EQg?ZaOvy z*IFv1l5zb_L5>EtCG;TKmpPgVLB6Y`sxv~1a6t(fFtfv-6!N-){WTv~zjM{>F`cQf zzZNGs#sdcop!@Y#0F4ab86%2eDlswSGt@#(#jwF_y$6%JR%1CS@(68oB04^w1^umz zN$sLX%x+%30{{5vjTj<jbL50W$6z)(HpaMQ4G2+q&_qmF3|@LQJakSe=~jV`FI)Y7pPH2m5M;1CGkbZ9T|kfduYZAow+($9UsmptWev z|44cAKT@8zhQC7akCgLsPj^A7o_hGr%R_$}fCv$E-N|;{>2BWZ_CtZJ9LXyXw8ItR ztbzQ15wi<`yqI^doF^73pTZ@Z2M#C;5e2tEaB9UmlEL-@-!3jc7+k5K?hCXOJrxD9 ze?Kkfzb_NM&k%-kCL(LZ)s^-7U*}o0i^GWfMD^12Ki4Yk1y|((l z=6^otkE{|;XMK5{U`^mlq~s=N^QhVatG#OY!l~!bgGpsLeBe(8Ith{|bxFt9rHwz% z`)p$Ev)d9Z4BADSwt_&iy=-Wh_(jxRj_z zwX%8%$&q5=G=e(>&%HLyFwjMI;MGr=38lf{U4F>5b4riz&8REKe8cAu>&%r%W#zrH zlWshmy(gJ`h$gBt{|m=0#{_#x#hVhFy~_(8a&>_Cry=5ZlU(|?fF0p=V&I7Mbehkz z#3zA>*b%czZ1A_3FrRO{NeliYI{qKMf2Y)}F?swuT$5poDN7Wep&&HM`37{00$i>5 zSc^W0C+FO)!thcGP(I8!7a-T>5>|OzyM-GazX6-RzRs})n)~TU=*4;;b`qBt*;F45 z{5Ck!NDg#})Jy>T*wG8niLFK%P?*l4TPwcaT5E3@6CN&&6J!dnM^g2b-*~~Mf;*6` zW@u8d0C>&@K&mt9t^9I+?3Tm-3l{0Zm|h+@6ExFdX0%@&nEaY7#s7CsvELVaHBrOX ztn%{FVx9oSa+I4&7}Is+uJz6~k9vgA&RDK&*%K!>lf5*CJ8d*>1fUY2aKp9a9>tNZ zYi~xyP*}mnvOu2Rd%S=B66%4#CrTrFn)t0;+}2zMB^Mah3A=UOoI=o);&Lg89bC&QsH?7_TwVXB-DR$6%Gpj zXt=Y{+4R{zJzb`QJ+MDMHDG33T7w2=rt_gO)K@{pbkByU+JWP@)s^z^*Tj}e2_Zof zv?v*^@Jk_o>*;?yaS;*4c&REOeYW|9zkMe?k^s`VbWfM*dePF7lz)i}r3dXtRyfn+PK zCPL^ohIA%UN@IytCUnu&yOB`Gn(VONufg|%KT#Mf+kvJ|FzrBMUwg5m1fpiH+WyeU zH)k2NZIYm9Uhx547|U$?&J54t4De>CJLm*Cvg%3_5_s3M6JMbOrpHI9hI^?jwLu{; z38l1A$iD^OQxX*-+i284JOOIoeUY_-P@#oCK}Vk#qJIdWi?fvC;{a!H0{}WX1_cm= ztx>;8&_ocV4MV5qpUpt~nUE?yG3B(2o;l7*=o*KkVKcM1)DpZVE%3?VDQg&Z&hLr3 zpNxk8LDbD79V&`Vl)Cf^aE-fc)4a3bq$0(_NPupZ80=a z;$p@X6H|-IXTr7~%9JDvn`sUC@Lgopp4xHD?6t4e?Sn^qx_`3z=ML(7HeROpol;S% zd0b1-!WL<+$*bX;UPf+>u;x}UyrB&>IF4J6T$ts2yJaAm!xA$`mwd1Aw$~tjO<{Zl zA@;x>a&I>U5Oz?tZ$Pq=jc^2uQDBg0ygpiOrZF~0laFReI;*38qsoDN4LNq87rDRG zl~Hcy&f*plSTh;rco@6%eauUxu5e$xe4pa1Wp@C?aQIL4{dzEk>8=R(78EYL0oo;R zwYGs$0_W`!7fyW-uUISb(T2(69YW^+$T;OcGS2slw~7BB8Ry&y*zop5=auaY{iEimZh|BZUTAehTZ?OkI6I)f&#g+WqppJs^DR zAzW*71cMIdfj;-Y<@6UNO%Nu9zA^wlZ1|x)q)2@1Fn;VT`kgNxWsMe~3vmeEi3;9< z30{Gvk*(tBCbXr$JPf|ZDfN03Mv-nIULlAM3YM#p6|$sDnb3XO45q2}lFMe)h(2@w zP&@ycsoq6kY)snGSnzJhWRY661+Y3koQtmeEHMZX-=vP5HK-A!Im93tky~IqyCXU% z;Ib6*uVS$nU;QG>+sfxqz!JEUWYPM-mLYB7@GC$;e}X)QcLmU zb^F^aTHhlqi1(WZ7#lTWaOCBg3B+w5I5UM@_}=(;0KyI_LeTYeU|1*%^n|Ld3-@eF z#Di!&>|FqReCXdM0wJjkL*}5@3q`jchq=2v<&*56nICf;_TD8|^{0Jmv^!MHp%410 zLTHp?J165q+-z7B;?X+c+DV`1~?29wS4=KAq= z+J;PQ5H(I26y2~oyO&L|EaNy<#K9Xq$|n~R?vN{ARC|{m=9!k2^7fbzm8ia5oUu=< zk)kV9ZUqwKj`;9i1Ywiy1~PqcK=m7|hT9d@AOZ4i(FJCe*oC!D0Va4trr$hqao=Uy zgOnu6I=Z1EE>CjW+)P#1N;@N;{@cv|W%;)MW%&g7^pN=fMKrDm@ah@czYzsv`54J7 zfo(xXyA=3L3CNf93XaK_A#<;^QzpJkViQx6|*2|NK5G~w#Ci&LlK-b z_$O9S>g_6t*b|CLuvk1@A2e`J({N2p7rY7B0k&Mbm8MqYvE~u7vX9Fqf)w<7&w5Ve zVZ+n)JF?rYT6hGFSfzZ?mZ0BeE8i!+IM-+vM@|ea8u1EX*xWay3(o<`me*N$j=B z?|#pU)+8~6}+(cbE>mV_xLo0tT%qQyNZ1=8cY-d<5B z=9tRh{FXU4klk9_<*|Eu$>nbU^vmd)W)D_OYF<(&d1(VZGFeh8QV2;GVGYa~HGTpf zPc|K5L#xUvnSOPS_c;fe?Rv$uNuA^h-}s~`{w2wnzv!kQAJh~S31n7@;_pqukW6fv zrX!d#1PIn#eHz)F)3+iB6kIvlBaO(3{PUTMzq>=ItKkINcCP%xxH$2!uT_%e;kHWd zmOlh~sb_ak5KZGn=;ZQ_F&?No7+XSRn}`arL;5J(s?jn$hzekX*6|9&(gU;%2E}v8 zm6YUugb)`6lGoE!((cI0HittL=gPv-VK1ZzXEm9beD*E?D2=-opLCK!WkK4^1CTyi zww3$w?c)M;CBPL&{}3^P>0Im?{*vlwwzrHx9oPvO?jE~7i}r$rmc-ir16emwK;byi z2bzEx(j*VQZ5hLVA(7`tC`ZGa^9jX>NdDja9~bLCzbdoA$-?3vPCyzAgxd7-^c8HN z4lw~gn3#|!GZz8@f~QamfhdJ?H3)cN%r&Juj0iVI>}+9vk$#{F2p5gKbYarqo#0?FuMm+Gfr1c})dF%D880GZ^!FCWmm>U)4{U1B zRbELg(!>V(RUbyOgu?#36*qym;vW-9L%^6Ms9x5aXwMn+XCtDrmc72Rt7>mCzwY2* zWPVqnBE!5r2arwRQ#z3k^>kqWEc7#g5goJ=C`(4(2SbaJQ9K|3)QtI5dH~De@lM~I0Nhp>qin^LpWW%g7diRL?uH{(&~{>{q;2(mgY#A$y?*?9C%+8wef zRRNN};!DlD4BZ{{KnOT|+xXSg>o%%bc-ble-LZSb6>b z@)ldFA>c+|Z(h~_B&1Q|g3x(NKjQf!M164;o>pFVm-orTAE1eEhr8NnZc0+#)dzTPeeu?VaGAK`&9H;ZOJygW_dSQx<2l>K{uwOp#&iKprL} zsMv6tX~R5~G*-8vWm&vS-t#d*hl9>opH0inGsCX&N~f?+Q6t1#--#jWKJfby1t@0= z*i820rzJ+b3|6g_AhatmIAC7u*^geHp(#hh!(m#?&WTBISK+y4W)os} z2yHHy&|hf$2J*(h^4N{OtPiSgA@TaX_~WSZ6r<6X@=}Cxkl*U)NtJUAc4p7wXH)q} z(3KQ^Z4_~m{GjppU!*r_7@oMCHAf#OrZAcnBa5YbefVD+&1jjXZ_-2MYPS zD9BWO=+w{%R>UF|pEcd(bIMm8aocv4*_zL{S6i8@y{rB6s=lAsS(&5rSB-u}8MI!$ z@(N#^`YYQo_2pL0Uuve-75Tfq4(XqNU*!4SyQpbGk^oT;FaUMotd@r&cd^~y`;dY$ z00A-e9HTV65`mH20*q2OpeIywkt@PXXvL#!L0qMYSxe>;c04S@9avBovba0)_OEq# zr}H5MnNDLS@eM<#mn-l-c<_mKwfN%nR6qrjh&FQFY)J*D*+hWfZ@J-sV>F04k+wcY zs`7|5K)fR-AddzbAK^17Tk!6?B^AD3b~8Togr!v&NdG)n?Q!d&-u;<=fvceZ z*(oQu@j9xW8|Ijjo+YE$Nwc05f8>fz?)VKlwi3q7A;m>27#t!2q30@=xRGO+DY8CV z!iJHXWFy$)BzY@LK8?z*g3K`k^M!O-4y85|Q#u7@_!rSg(sspx zlS`qTz`nZopWCMBhlA&pP=wBuTF-e?&P^Q?ZK#V0n_!KWQ{mYkjRS>2(HH!9d0O0Z z&=k$u^G?2A84Fp+P9FOh{V98@Opn9n5oQDsUxk#;J26SJ9}8OFO{FvKzAMP^VdG?y zH@@3zaw#5+xhG#cofkE_Pjh8n?h70c>PA(Ig2A6@|F*=I+r*}fbN|8buz)$?rG|&5 zxh-d48X}rKU6EWHN$V%Ysa_RqsfrI=HuM^?eXR1@j#)F3rb>3v>WF-eKMUaJ-6+q0 zS@3_lRDXQ`N<=UF?Wq3euL8UI3w5HjVY{f579cgHy0f+=uLw6ZFcJcz1No z9PmRS2eQ~#hhKyiPoHa-&X+|??vRTLOD%iqe4jJQz364BK-Pv2q0FR$@1}i|E^RrTe%SHJH)sm=yN!e+PLvD}C7{qxL~4n6(iQm4Q?}22ay^O{Uj(ECiQsBP$CJ z8#Z_>s2i z&1Hf-i9c0v!8?cBr`I9Ud^mEy9Q$f~I}lQ3ye|q0Gj+LZNW10SxdcM+CKyYciND%q zl#QNdF0{4fb`^qZnpA)wNYL1LYP4w;nA^~nfKe-$)JiY zO%%oa9;Ll}@cPJ`{Vr$n;i4$hka*|J)8F?Um2F>^UrJ}=Ek97Ccn>OEpUT=GLu7mV z`SkmpiMTz-m=B+`_a(fkZ(3kI5s*E&_ZPhuD`RUJ93cs8Yv_kQ@>`=dUAFw_erYgj z=u#;%jJ*-b(ym<%qRM2!IfeeU9{!)C)MN};6@gIuv4(Iu>E%%V=iA}GBKD1J zPs@Wef}1V=Y(DZSzFYXZx%{_1%1F2|dIQ*p*i208lZ5iVY)<=!y}~?quQ)yi+n>9{ zilKfsYa&0()vb|=g9!Is3T?xf{ht*5}sIhhLqkn zG(1AfY|_A5@}z~Y$s@)`@Ui0)I25N!Y6T(k*V_9Hjf#mztk0cmv%1jfuc0i6*9lup z%uypKeh|!JG%69?B?+Xk(O08k^2lmw>e=%5J+i*s+@FXSC)B#N&;lR@Fq145)aXwf z3vP^ji=(|j4RfP_2%M2n2tERd$>=ly`6Dl?6N(?*O4fS(&k_PUSXn|AD!(&vUsIzK zQlhX{&-Ws>Wf?Pc>zh<3(yrC-;0-o)U2EP{Vsi<9{1!yV66n-iSS z&pZC-@--5pHCv)Fp zKmb$FMWx!_swS;q=8^XXg=`A=B($yvAUy8O`)I9PPv4*+%mpZl;DRk499ukEF=b-X zieg8zXrBN5fk78W6@X8@g&@>u9JghUMI?XrfQQcgv1WtLwLSYJ)qTY9a4ldxU4-t& zGLH1xBE(q}vWfZgU4FV@$o~!v8*$oS)SnY^2LxXK12N&b!M6``Q4s*&($Mt}-|&C# z@P8unUm-zUsmUMEhDp6sp>l%AH0A=+Ezcby(M_c|{)LJHj;->P|2n!hV|s^Z`hMs% zjyoYRX0y9O0CW^Y&-y(#{k^CD8}uobM<>AL_qF2x8&7_g4}k6gUfO-a9h=Z5&g3$U zNQ{2y6A^-k!dt7`<)+Vi?l8W+s!wE`Yzy9+(BRn}^7)JB5ZMB4S|o^%yNzO|Dk{F^ z?)-l5H9PCu+hrk${rD2RmDG_v@-WM6esba>S?PLSkU$9Grzm(rkfCTE=aP+>(!ru! z6b((|JqVESvylVvn=~j)Mc;1TSTT-PoP(vp)wAF895f?-8sU?%7>|UaZ3E;6XI>HT;FNZ#zTUAc5l&Lx=~^RuIR02k0)WOzBi zdIOe>gsBih$#o%qdA4yg(fMls@({!=-JYsL7uR}Cwh2pAr_FjA@uHT4FVkLdOC)XZ zGqmyoP~noQ^({tsgWHiPxmJiOmuqDW1ySCF#Od7F>uWu7A52ois6@X|>N{m?rVVeq zqx<*$=T>^|)dojE>Jb2+1jH9nFmmyVJr*Ofv}8E;L@i8$sxA(}m?bG25Nbf8=8Q{( zI(iynL}Wkx9MXKcBeYw_x2r&<$=d=Q%PmOLH`Z7(8YLP}Q1M*S`Nc*|w`vsHs>Lo- zCQ#{jN`yUYb~k3zE@ve2Ej!MuTBA5dNx|18)c1(}I(8W~rLE zK>FINV~)#{OpMti1QMgyTPV|o)h{D>#gJ;5&Kc-(;wB;u5uV7;L_k-=6QN>hMhty- zLP%MpXw*wDtp9)L%O9uzjFpx$u}|?hZXp~Ema?l@N};P&tS&exdEhx<#F$IlPaqcPn2osrNRwM^*s=g?9lRaEFGQ z>pm!-aS`aj-euqj4JMoHuf(c8oIj-w#kh+nd@r0d`qx#P%C0^%hgXy}fO74Pe#AK$YZOSYGd`hOic_R3giET z<6mF{E1Evb`F^+XGro#5p3_gWbrXn9xPFt`c2gGz?D?rPN~ttBGWctoZIsC( z>8;={Bs7GJ$T$c4+}@pU*iHh#gWE~Imq5gVNra*H?!I-yCaSLs_7(CAQ3X1$b$X)n{V$bMc44~PIzU%A!e1Wv*x4~~y^o3H)y}kK7rEqfW z048=NBh(`g4hP~?TVLsmyKdSycgJdgI~Ikip1?L;H0B>~zacmy^Col+5}IL7>AH#5 zfrH-K_T;Am;6b>WfXSQtgUKayt~dE#BdPnFlU^9Qtk8mh-w=eL2f8 zH^!9b;Fng=Sz;Ltk+83HhwTtvg;=M{84`OE$p)UVyp1n)<{Vi%##!)J zo?+y$bwLQs^gl|Lgtib(ughQd>~?>G6b#OgZLPb;KP<#ISys?$Cn(p^+v_0y$KmeC zUto6-MI?xk(E0%41;H3cPUTE(?)vX@lJiHLa=G0aiAVdXwx>Vlkb!TSX&}B7ivuhp z?kcerL(7hS+D-SzME>{67e#0Edgw{Hw`$PpnyO)*=+i&VnPc{C9XJE4vULP>%VTbZ8PPKeP{p zykSX!v^%VAUZZdaim3F-FpKUImjgB&?&3422K|mBrY>Z3_uP%PEi`jXGZHHZN_dk# z@dmI!yT9XD<)82OYChI3?hV{TL}ImwHJ$}g43B=hz^Q23+xVu@`yMxLXW0+g>^YZx zj%aqw^s(ddnQ&&=Sk=%LyXJ1`59BxBgGZlRj07s<=q}{_NP#yecJ*w-g_O5Q8~rtq zamDtJMTL)WffyTg0VKXX?6qtH3A+)TObpOIHs&8bpXKzt+b|qN0HZdff#l5;L2+?P zu=7g~(qDS58)!NiNP+3%ec5gej17HD`ZUFy4BOf02#B26tVR3L|mlpg<|xCtKr zKW=OfcT7a?oKt3+w<#{We7|6k&e#wKDO{k}r2ndQm zR2wqiN~N`K#>B#-Tw3IJBUR;Q5rTmZwBqK&vQ zsoOTc%EfTQkj4Y-EfN0>k>U`I0m~X|VWm8)#`AMkc@ngZDXhlIA+NK=Bv1` zL`!-#$|C$H4+T#$+ZDy)qIMnrX3s&$RLUXnc!^ezY!+<}6}^~ZgZs+3QjRl|^Mzo@ zM!Yg&K)bif&KN3^00M7NB>ep*=l6N~x6}2T0i4+D&XgmDWXd{Ja)3cigG#}C@i7T5LoS2$?ZNvW(qjCf& zANwKRpyd40O%&bV>>Y}oC^E%0FjW1H9;yI72Pg|3o-9Hr_QIiK&S!OV_e#ysDCtZu zJ20_up2)25GHh2E%UOoHMeqeg%(w^onX4yHG@uhz+)8T18J^gfRXbw`5@_Nv(#Ghx zEI4}6gF%w89da*oaRx@1e4)6M)hW9C%S`vkqNpDy7g3)>5JWVx^D|15;Y(KGR6D-> zp@ora&|UR=w0)Ll>s20Gj&<{bY2f+$kW1U0-ypJgmyeH+*4(_Q54n%~QJz7OCRh!b zEbnQOpZWzUON<8goYLUz)Al%DbK@9a?Ot=Xxc!QPXh)Z!Q@fC-tlM^P@jxrNjBC*QxW;nZpWU#ma!f9lFVl;y--H*x0T0)Hn{aWxy4=3Om_;k_^Yo=E#)G(J$|i4TbXWjc~&deDDr^ci9LtIQK2I3H&oSS8vR^ zs-+I$-)=;f`#y#Kfd$zjnm~%diL~Q(I4+q+2CvVbjhKo+Eyp7oC0L`xfeZuU(+AT4 zhMd>a{?oo`27rp9JmZe`?HvPRM38E+esj|{K-zZ>p92ui8**LWv-^G-*#?gx`vKvjf73#7P( zN&DS!Q!Sd#<%nzO4m}A8HWJ4Xt;o<2Sojg4JD9`UHcW3y&s9Lg!lp7KBD<6U3J^aH zFs$Y93oX4S{7C1B=tr5UGGclo?R60X5(~=xwqX~kMC?Gt1fP<{^03wI#Aj;_GAg(} zfbgFWWR(IQ0?DLRJChC)vnz_#emh%tLngcyrwP!P(;Avn7u{(RQz3TK)M;Xw15(wh zq?T)udbILaMog3i2*~j9%*7aTQcvG?S@6LuPM0Rf{cBLcw`2GbL769y+!a_`0!3&m zXrkRe&%_UiX6swfVE6rcFfUC_8qG%}O-R^pFNW`Pos{@z92b^}s$|x*bOMN_OWjPM zf0iv;5b+}}ORs>GqnF$P@o=E^Vdg;&FoNW-JL7kTG9W@OwefYfCo>W$z_(FIxy8fnP|5;Z4_iOC+0r>EcATuT~I_x?g0}#DL4hnl5)~xv5 z3HOTXoNyODC7544)XJRS9O+J+D-cjATEu50JD_{gAUKvb6W-CmO$lydHj{G0BYF(qg6vKrRu)r=2YVv8&Wq*uz4d!I>uC zd~M%^8c-Ei0ri_)N^~IZh0Jx6KoQ>jiFJN^c{|Df86xKkR7bJy5{YlO@cepOIh*=7 z)gX@o6yyk1Q4J+P^a=xRFw=qH4i_u;#a8$5hjf5a{~;89(KgbJV^=jYd0s6~6jNr# z+4-_B0v&;j@O66ZW_koe zlj``}0Xqv4N@?kUG>#1aaVZ%s7g&@L9T0SjED5hiQh-1nCoIDcg%rja&R8i)!hWRoO5}7+hR_9*`h7YCM+=7b7cYzLW!1l@idvT zjrdnLMKOk-76b!pKQRJh0I&D7KUklm6e;4{m)#ZJrA8CMy->X}G2)3y4F$r+QwlKd zi%hr{eZMafc+y?!5vS9Z0_ufAXVoQ&tlb+BtRpiu@jQSS*y)S_{{m?NDDn4U8NuDe zW-}Eb8GR|0Q5?o`!zKc|Aj?xm$cxpG^ zczx(ap)g-8WuY(;NR)>XAdD7xmg}Q5dfzkYx}N8CM=IIr1JED6d%u9_dASh-2YKmG zf6$_Lx@RRPUZ|-I)#=}h*QY10`{8yvICGs3}U>Zx9i&Cy9U>Vzjsd)#Uy zJELfq8IzP-^m5UcTA5?r2JNzY!U5tCi9t8f2A>u^ctp7^w*UVWmj?=m1BUr|I=Qkf zcA=!{UD|EkO>Ms8e`xcF*ZTV}a_o5ld< zZ-7FC5CeiA1*D=MQes5PryvR>B~lYY>ZJiTHa*78Gfdua(=!ck zkLpsDy8Vam46o{rm#%7Ex%DRV0&n-mQrisg?;B>8_r>q8>+IWhXr?V&PBdaW6#@=l zchJ9~bVs||&-azTe6qd^`@X6sep9}EernM6L6J^g_y+C3AZ7RbALc)o-yb)#knA6x z`g}J&C)|JcuzLkdo$g4Gn6rV0|5;-YK>~bdxvUi+8f@Rixp#kE*~{OtAS+bR1;(JN zC%{+?VM#L-0Wm1zGVKB5zxMs7)#aE)Wg^QWEhvw&e=oCl5`pL@n}hccR5ExUBIg`K zy{#|;vFd)9;of=3dnuVR!gy3$(DDCzN)c1%zbEE*+VOoc1f>`FN7V{6Zuls)=euj6 zg%PU%RH^R!dlznADHp>TjyNbLT6)}mBR2SE)SQTs)|l;5VB#W z+1CI!;D<6goMjj-izRIM3|Y#c*f^7ahRqd%SQ;9QoA3@ahJtC}I%uY^YVhzT4Hb>`LzU@#45%s*r|uFAdracMDaG@c%v|#2umfAcO5qlf3(X&qIa@r7>BH3 z(R9){+hg289>uK|ftEnBIH{V-moU_R3@E=Nfc4nIBS08okmH#>b$9Py$f|{iA~u`K zFjYq(Dp2n#xoHO^wIO_Zp`M2c>3k*3IBc~!^R_5kE=W1{n)Xi38dutnwRdRl(*~BN0mw(!6WFN)MZ({b*igson^l znJ;-Od^f#L4b1NQ*RLJYTswd206W7@u?hgc389pO!VPxxP5e%`uWfC+4pLeD4_X_e zTUZ_$XmQfCV(Ph!c4ssXRZ63yf!=o+qlV1RGbVZPcbVgJ0B%!^XO6yd)-HPd5dgzi zqa;EvG^cCfwRAspCEz>sa$VgPu5qMz0i++Q^bo@w6nPMM2>GFp?U&x4=bdkC6SGqF zv9GvI1RuanfyJ>S!2FyhuA!_nAeA6fr}S+l;6@a~@LQLH(KRN7>M=14KqXP5A}A?U z8+z1)bp+$u9?e7!YS~Yh9!dWStG^h0sSJ=hGKoDbd^1)^$b}hYiyD6I*aLhNCrM!) zg*sVycfQ{Ofto?aYf1wh2sZoL^+ym-9Hn#X0U8jy?Nh(BtE`gD$El)8!%U$`Dlp&N z2!mT56c~qSTn~~WaPY_k;7$gx%7hl=h`f*2F+-#rH6{}$Z@^tLp*kMMyP|4CW07wn zh2dsQKbj$S6EMl72RX>!n!W-ksY%Hw4OCeUibdY$#lIBHm+Xa#tKv(cd>X2#f@m7r zMafYRX)3!VPhCb-kfN87#-y`u5VFQd?vUsO1A{0&s;+F|TIIlpXuTZFOq075MWU>n z3L0Iz^`5~+?Z(hJ*qE)_D4ZvQYd;B^mgoG3<5XW|S-~Lip+uPc#vNzm7WNg@ol$_0 z#@Pa?J|j_jk05w#x|#1Z!L2TWOVOnZoXk9sM}@8$OjOo?S~s(vv~U)$W>eH_zvDoO z_dag_?Quufuk)d-(|e+!ViIV_#dF}7%!#6I=ICvX9gr1596^fa3|3>=klN!-vofso z=>VsX;wm}0)g^Sx7yf=h3h`*exzetb>awLL5< zll#KNn4;#wJ@An)Up`o3duRc3f=*FkJeaxWe_fh;a-oDbTlMjw%fVL5EIFjH>UIbH zoW_5TeM6h*z(57<+=j8YQ??RifXd9C&6ki9C90wU@J)YwW>rGjk~0LbQ2+vh52^Rw zqau-!l4#K3gRm!)6x&bK< zLq(=KqPWum-X>AP4pT?42enn>iljKf3u^oR<7$8#q`<l*Im9KkEVQjHaw$7`fTLMhG;ol;{DW zE|Ao!ZgS9`PAU!4^G6m&uP~(Cl zSr2S?#L%_`>WL=(PtShODPu#@zyWbYw3V@YWP>{1KN~-Pn)aK{)FZ8IaQAWrrXG%<%h>WE6NM+ZG;iK-+MfpN)!F zU5K`DmkKK`cevUAt3LYb|EdpN?dM_r1k0nrGQcu7yOWbIqcKU%kl}u75xqt#NstcfmL(i2FI3(z;R=)>RfiJ5a6 z;d3)o>ar3lqi2lD9c|9>Uii>*GA%Q6=PDPu&{qtgiu56hw10;7(0f&NdMA~+mU{~b zn9Q#}(K^(DAv$N5p$U(eNHIRK)svxm!5C8$;=EjETlQ7 z86Qf`BOM$DdHRS<1z@BonyU3!HmJ(*Mwl~!@eKSe^(rc$%vlenoZ7AEm27dCO#5Jx z+RATfI1k)~7*ZTA9&b97B6=4gOtVC)ss<&+k-vI$<<}m0yx4K6mP2&u_fqks=4uih z!Ia@}D`n-h%Rxg446k1)qe3_+Bhro(VvR6^1vK(n3561vLq}^eh{t#TH*6g=tqrbU z+pD|G={9wM)ziQ*4r#OlSIwF`Li*P*8B7~&UpZE9jg$?g`DgNY2Vu!ucKv;Xul|NP#2Xuy#S~soYTOl5k)}lt4_q03{~9lalYFY_Jqs zHdAN~I{*mBk^Us1Ry7~aC$OPguO8lK&iaf1;`0!!D{JP%xLTSjQOU)9MX5z&{TEE*dPl1H7SyEWqNDn}AE=8p7DTBr zV5O+rsb$dEAeAW6ljJ!f&IScYFvyZ@;yP}OD!cM}`Rd*#6JWJF?19#f)N1Qcq3F{} zySKT#I=;v}>c}kBk+pa*%!qg#ese^pPeCS$L3fFM97`gsg!3WTI+a5-5eJI9tjxL2 zAUYIfUBK-aX0a+Zkwyx{1LjsP@~;B-03#JlM+Y%^Bu?7sc8AFuXw%L^@woMX*h&Jh z%Q3}L4TGEYw1k8R%4gL{yCd=J7ICF-Y(X} zX=cE4<46&sG_;jg2eBQZc@0J!{>^<<1o8^CqkMl(($O=5IVF^*pAezpoaEdUZy?Qv zK$gT~#0%UfkYmPygFj^?B-w+?)GKk7=7WOAs4(0SIv;Kn<7+Q6+R*lJ zG=UD7@q7ynfDW(QmNIzW4Z;KaZ*2BYp0z=3U2X18THcZ5WWCWTGa~d0lYuy|G3&gTPuZh z-Sl!}B4PAll33&(m#b_dlgs72PVan9|5|-Ur@O-}>EdEiNc8@MOVg?y8=`7WxIymHvmGq$Z4W$ek`Xc~Y z<`x&P6O$}~0ULgZ%n0JLN%uWww$v4UuSu?)6q5|8!C}!;e05>o6~=fod3KpgNVLajC#|77k_1ExV@JUl-&pIk}&i>b^^Xg|{w)`$PC{KXjxFxoaw>+^OFQj$;O^CF*8sDth~7mHV4$ z;=N=7kr}1J!E@m4q1B4cj>9$Y9^@B?UtAM2Y`Y?i8M%>*&Ar`u7ua9?@0`vheS=n; zFV~Cv4*U;Cj`!EN)@N$dbMX;Z85cT@tFgWg9;|vg>sIoHP4yG|L=c0#Y|oiN{yh_9 zenkFNB_O8*A#%jY-w>;MTjJxtCs-N(mFT1>@NWX{(LZEo&SNYOM2p`=l7`)L+7v|x z{>Ja6OP9>)VVd1K7c$M67l6i=Ti-~@oJgJK%IFac&^*K=jmo4Dy%?Q?yYJkH4Lw~7 zCnr##53owp2ZfTU`BnB6eW+vKpl+!reem&6?`oizWjspN-V7d$qvetR=j7+}b`TyJ z2ARp3*F;!GhEpU$mMUp%A6jB|rtbT^?$`^B=_lC#7Cy%#iYD_WNyO$;; zF94=Y9}0LLVDG%Huk@y^NM5mR{ekNj=YLm>gU@-fo!@4=j+RWM>Q7P~Mi9Wx8UbgK zMaESN3bwBzf+VP-c&WKlB5X=i%Fg_3f~m53K$@td3}%x#*!(1l!zJEuC7B*pJ6TmK z@zkT+0sjk-JS-W;36{A9uu}hO8OAv92U1*YQPJkcswI?AyCiawX0&0i3@2v7>SQ!x zkH>9;DjOVel47PGpsEAF<`Yf(PrI&>woHh|FoG=9{lq8WpG;~Z5=lz7wkPD4KSd~V z{6Zsy=PCk6SnJbb)&`hSY)5;*bUQe#TFHvsSlU|XNFn{|q_+w^`x`GcHjoJ2hIfzw z9q51Q`9RQzrHzC96=hBZ#2TqOyaY!9HolVbbOlxY*?6+*agiqOIb9AzlBA(qE8P6b zf!zOX>{AA*eq-Qs&Qz7#WPJnGD`~Pp>jgON(7?OzyDw$y#Z#fnsx{Lm{|y;)A_-r@ zUSeRpHzG}+%y8-pSU5>1u4ld;`8OfyYkD_#SG-a~gWqsH_@PE<|LUBqY)5)N>QrMm zncLoSY=AUL(i4|OkyYDw&4RvPwE6APgEb3$6Et7K>Q=g7S0^5&3MpPf`FBfy;5v)l z^S_o^3jjNXi?1#~J}sJKy$kgZU?DfrJ}6tgs=mSg@7MCu(kfT~l%58}X!sl5Xm}TD zuFLq$Nz)iu7GUu>EYk;@rk&PIlmj>f53VPylv(EXU2Dd9ra&?Y>~~K!LjAMsGk``S zT8y6;RBxNgI?TfB1k9=_21#i~^Efi;N?6$uBR&sG#~g4T`9M(gBJd7KW~9jhWPtfl zF9z#GDhaKT&n`8i!`L|h7U)cYC}hDR3#$>)43=f24MUFj`MzqyJ}_yj5K`m5|6Ra2 zolLdWx&pnF15$7#IGDyK;7^PXozA3s{zo-vJrc1MJa}M6!|3G>(rDI$Mok}3^D{xk zAcky;n%U_ZhSTCNUvgl_=zw zf=M*BaS`$Tx>hRMAnQ7+e#DwqRzQ7D<+(Z~GHO_x2{lNq1;M{z8DcRmK9f`=L{z>^ zlm+o&fwCps^Tw~Th;muK2{lAbLPHL#Pc?tWpD1cjR!NF^k5*<4a6g4Y4e;nR?erznx*4mCi$zOf*<)SylXz;q4>}F@l*T+|HD^-pJn}`d4t!wq2U8x;+IaXn36iN zGa!#9)m*o(s>=RiZK+{kL~iSORLd__pM6$SL;JWmK99W?`Zz>BiNoh_ zUdOG0V?Q6%Yg;m{jmOO*~BgG)YiO4E6_;1P})s4J>B76`b<#FYIF{ zjD85>iGohzc$nYqF8$NeqEfJ*u`8yow~- zaHN)1?}M4u+nh}>Du@$1ExGB{#co01$pmI1pr+uLBbRd{i(bC}ZrUnW4&NszBnZ4e4O`-qW$A<&yuKMUT_K5*bVn*S-{Dxi1CB zl{unbZyqHf22B>0h8QHwW06gh#NcH_7%p8r9I8H1S8H9{b=)wDNBlSF6gw8q^R+Pw z+`+`bs@O2oD)O94F$%V4Q%lTVrbxX@z$0i^r!tnYF5!zN+wyMFZ6+vk5`O?83g$7` zP=|j=wcL$$z{c+Rd}DY{27H#Lza1#n--tRD3%hy$&R#YwjvU~RuXF&@cE;rIpxc>n zjFobT4Y$Cso0e-UCd^Cj_m~h>XiYAuGqXAs?Kg)hR`ca~WU_KO7Y|D=JzC$JPE=pl z>e^V-@vmIIYJleTyo&rN-+0n0-|?iv``gcy4lj7oGObu6E?Zm%N;8?fKH*RR{GR)4 z;CY5)2xhLoP+hZxhJVk1)e*gA9J{V4i?Nbl%lgV9O+JK4w?+GA%{^;u@fV77vF0x& zd6L6u=;-)ZOYfjscvLJt3)dnNyKrqx zC&lSFMKE=k``;bn81CG~ASBoraPutBL`DSgt2#@v1&3A(tcQVtu19^yWUYwa=cG6U zMv^yoJqoX7dC5AuT%nG+UMpu~hd+)MpD5s_-t~N%d~Qzz_q%)Hc|2`r2AA&+bN24y z({8r?q6`hxo7b!n zfQ+NkxFcY)y33rFmYQK`vg=C)4%exRm?kimc zTBT#c`4p^bl&U5E;P@D(OVk8o0C4?o2pgCUa|AMU&Sr;q$k#BCMlc(+gUEAb9%$@WToeQp~jXIS<;o3{(EP~-0)}>*bFIO2mmJpZ>CWO&PH!1W| zfle?6-SqjuNQ|DMU=2Qu2w=W0C(E(koaT#FHVIxV ztlI(d1qNPkCe5)jQx-C$fx^x99oJa|!i~Xp>yf3Ez+&ZeIt~nps`5@6j>b)uN5(0R z20NH6S&)o5u;j#4`eoOm+(WK-zShU4yIYu(*VjE35^EdE%2tvejVe^KX(Jc|%-{Lw zB#Y_#OwzI3N!?Kw-QWC#%Pw5G1Q?1!aIUbDF&tTiP*R3qVGrqA9}b7D3Se^FnwIRE zdqB8qLgg+L+zp-VoQpdU@c!8S?W$k2vEfMdFy_HnF2ktqux?Be3GPFC&Te$i}quw2*RM}2#=$k}Oy$u*xYniizJ+bE&5Su(7Ebnx;r)N%tZmy~ zRV0!)d*i{k)W1UdOIyi2pzvV3yUa$sdf%0{|oJ%ENkj|q@voZ*+PRF zXhW$Cu#EH&NgzkL_vBTPe3*;~Q^q9~b8g5NsN4dRElon8cwm9a#KPJ5QjUYcPh(`J zpGK%!g!SXiKoT+3Mw+ae4r<9Slnn|NtrU!@Xu1|+H(rKpvKqT8%y26W9p>tqx@WFf zyW(Zr72N`iUWA>s4nChFV06FKJv3EanK@9p3)Bni$1EA_ju1g6)@sz$N>&6JS3>18 z(A!}Zm&`c}X}3;0Qhz@5g<$jaoUkD}8M3Fku!A%|a1*e|`CfWPlJFoyT(YD~pB1@vT{e-NW=A1>;e zlEOjA$fUZKqFR5GDrcl#&?Kj7bwnd-lu*alQ@NwZhYx(A>{%~t`6BzVMrCY$Mxa{M z%I_Y}+q?R55nsN&vN?U$6lacN)jkRCZe=o4hlgmQvBGRrxbkB5bI*7kZ5r4y@*D1{ zW)u|1%fjoHujy*+a)t@<2B;1-spbhkK(PMQ?^3CZMT1a*lGRgpq)U2k3}48_MhtTe zXxtN=F8I_cV=zqZ4T=w9(PzV^Dv2=gy*T9=(@6m{;^p`$W5b2{?%=)?TQ^hNPISO~%_$cWRGNMg-Y#P=DyCFGS{I^s8KJ6SWf59;i$ETBSR%ciqdMpFM z21zHVDj{W!oYJ2Hd38W!X4J^XLO(NHG@hRo`} z24dYezBk6-4aHN1(;dl7)JP7ge-Edu z>w46%x2&as7qvCg4lpN3P^nQx13%TU)}2g9Uj*AZh!mLsorH=Nsd`D=bz!+2mGm?S ztIEB%jtlLaP5)iGY-D6J**~+X+1fjXmqR04@_XQtBs|ZHx2BOqni;7}Y2GE4grBL|XgdK|=h!BWHa6NWQh7fE$-8i8lVLR?iXWbSmp0)uZM7 zhe9qu#Jt_M9ZYml6Pl&Vo-GW2K2IDo=^)>Jeq458-TR0CkpkYbrpW>{HCZ9Y3P+lQ z=6y`eoN*BR()hMUreI?O_X{4n%=2Bh7j;cw7Z(t3tzLxNJPu+oL6(FY+UxzZ6sYZKQv;V zr^=NINBHsoVHMOe|6vuV%ZAR5Cs^$`EPb^GA`SBQ+Rd4072m&n=LY+>Lu?2AgXHEF zo!ujw|J91$^fsCpPH@OUu=GF_f;F1oJ-PpVnzkM0$i#d5L*m6?t2;GG7TV4-Ede_$ zHM-_LwwiYXwy#_r`}9T;j0z{@Q(3lMV_87rl!;WLh9-nev7r-Duevda!o+Wq;4NVB zA`~d;eEQptT1QU5`d9|G-G=?~>DqQq*U3~~U=&A{oLv$GM)J?S{{?Bk8)(q#|jG0E51Liw7f$9{Mlvq(*Mn_Y-RB39X zGZ0OZ*4l>@mf_UcB>6JF=bp@L%XUUSZ!6adXO~~;jxoK(e@BDOjK7|&DEC9i@&U*dS13d?C3rF$syTt50so?WD^;!VFQLQ#aS=x~W8MFE zlIZ_n|2;i)c)Loi&dTFvirLx0bsPwe_v-$0y;Djr!&BAspLl2I>)QPwOzcXGU?o5* z7IPi>Bw#P(y;T35)THSZK`-8$%kNR#9|aj02^lBJ_Sg9?krAufWyeLpY_l?PMOfGW z=jO*(GEUT|{mrd~C7JSyd*^KiXOGgh6)3Q?u@h=F9rAGYb87Z>1)y=MX_33?m3bdm zxW9P5fyKDvx%Q^};P$?L`*ai#B6rZ-Yis9wYnJa;p=QC(i3V0I?k1wG$ehWaW_zq( z%WoJ`tYOA#;Ar(Axcgu^)!kR?UWyTT1=784$&CEo|vsk zk_XUGhs+I-(sYxVWnU}}%UMSJfx7-v8N1)tlDOTe{o=}s_sXWrU^}PZ`&8sYzK4xz zzob%h?0ciG7WuNASMYIEyp@MaU$xfp>wg_P!+LjOsc-Yn@#uL==l&N;W`He;%v;b` z)^@5-uP*c$p1d&_#NqTxX|c(kOpfP&QvUtO<#-UK;V)e@G?Ji?@9ULhUZaUoI zDi^++a?ho4(NQ?fMm5VadU-0ur1~npv*?O!=JvLS zFoVUHPrFs`-u^c?cL5SusNRu=W}G5apWytjg0)akjCiZDsD9{ebswE|4+5AYV34v{ zqMUG~X9{aNQTK`QK8L?2iYtgyN#u868}MIq@R&JPBGr%ptmnN{asd7UZuuO57_*?f z6xIb!j!y1WlV5=X*V_fU+h98nygSB@%C$X8JXOLl674`^n*HN7DtbR1`5zrJm0Zv> zm5k$XIP#sb?*^8R9+T58?!GG*_B|C_cc=Bw=(T>g^W*7!Kc~g;qhwtTFPYK;!a*Km z9$YNm7Y+2PTty{o>ke{O<<}tVdqQ1qAJVnn8`^*OmXE^Oz|6_Fn#5~+@A}2HE>8G9 zZ-e1u4rKoAs&D`;C_Htw2SX2P{@#aGsR)&RYPQH6ER`-iwImo5Foq?}@3T^)_l8iU z>rz&rr2uL0OgqErmw@fdkc}#=oWp&2PFLwaHE#5pE!tPt+T-**S8h8T82f+s%lq0D zF6GcTYz<$na|LT;^Q+|CzcYi~pE9r*|v5vtKPk>@O!WKG12!5a#Pl+k2bN{LRi4J$2=_6&2rzVQ8&28@9uA zGJW3`lbM5AC81eHwlEU{d(!OoJ+t%1-TR)D0GW%SO8mztz|(O3&xD#-fh4CfclmAx zaUV$Iy`X@Zo#>!>VX0k?>Gt1q)w<5#a2eA=`F<1A9xIvStQbh?q-K-)eIK3x_E`kv*{m*A1}XJ)>G71A+xk~|2mQiqydiw;o8 zxoX7*&x>+;`Jgd+9ZYCUXvLrnDmfnHlMOq;GMI$nIJv~M8kNbRL`f5Nq4(m4`WDE9v`_cP>{W9#H{Xew+={@0Jm{DEYuZN1u6Hz5md)0h3 z5XZl)+<#K7TcWw&W_w3;I`m5lV|nzl8dPSPK}ruAflDrs^_@FaH<+JuIQA{IUendP zea(x@XN+d=W(821zQc*lww~F=tQ`|~ZANc#w|=TgAoqt?ajXx9SI{N{(qs^wY_5|w zF8^zq$cf3gl6Q`N5lk8$?o&hLD0f*Jf(r=tY+d7&uD&N`fIu`~INT45)ah5Z&JYPh zAeGSSwEtj1RIYitzQHBN!l^cdm5=EiGev!*UKBH)uwWh+-IRA$e zj}0tahnD(^3|*%9#@cpc4L^?1fm)P9@jfNhz&jzKl`ils;nVV;fSPZh<{#IMy24CL zl0kCW%69_S-h^h$`Xhv;)lE53g52IZ4T_gxY=B0Xzc_^Zk8}N(()sz*l$rX(;7C1$ zY*R55<}X3x2aX9twBc*L)hMH*879?5Did?ly<>L2eNX}O&w_-Fql7wicY=}go?(}L z>DjIVv}na5gFx9iO@<6p7`Tct@c&2CIR@6%wcR>S<21I_*ly6IQFm8F71nB{gBfrEDg)^6~zUS z220@U<@40bRn^A{Pga!JxMr0uV=*me)+N~xhx&T|7AoPK6@$ykf}!=p#NFcLTyiI? z8sD;};HhX3~1wTJBd{0fCEL8c=kG?uu_eKtq;5_?DARqi;q?YrGUsD zk2R*f8Vx?{Et{y*RssBHdGu;dH`nKUF@A~QY zGVMxto|KYf6&|M3f{Rb;H)AtEM}|qzl4~!O@)NY5?w{QG)EZ?A{}kTO{wY|l4O`fy zXm*w)i*WML~USS*s=K~%TBgy=04EK{- zHWP5VXb^R6H>T`xbTp$VE9ic=lsoU(=^uryVsJdz@wnkQNZ3^QxUdV{GTVYdBS>*E zSG36x|6i(Bd&HFt86=KO0>RLYsM=U^|CU1#mLj?0+~rc@xWg*jn54-YQ# zvz`(hCO4^9!vFI`_q|+HL5@T+Eji_{&-FEjX8g7?tR#vSCzJ2f7uG?nIFV#A z477uPi1GVS^xKzeSh#rz5j3zGXfGF}mcG@EarwE^$Rys1!4)%9M~(DTd@n*nV#sxL z7F;Cpb(2AbnDO7^;+-*Vj_er}4KKZ7n|Q|}#WGng*sv&5%7ay}Hvzh496bTo1&6I+ zJD{jlgT01dLNKDT3Yr}9_?H%TKWLdr#Fa5=kCjR?)R z@Fzo>0o3khh*@TC%s|#t=$v8Dz?NYv)Sk>NE*nvOUn-+< z2507qDWOb{QBbbk&c{#@Gn}C_z`z9y(+flyBxa2>V!nx_vEg13v#QTg#ZvhCa;Fz& zj%Esd47E|yX~7~I$=d>!qLggJNo>!tF&8MX3s1u7e@rEzK$4X~sFbUqAX%n?g?L~= zN+GW(!Q2i`PM17P5no|k9=orq0$UxXePd*ZgcDbeAp-S8kxGV*s}!5i2G4o&;KzW> zHA$pXb?;e>vZWv*$3w-u zX#4i~L03!fy67GxqpEY5Vozc?V=Fjdz3YthjqN!8lW}Br(I=XhkLvL%bvB;`#{2gt z4$Oed>H*ts*Gt=x(g@WSKzm>F=aSWI?smS))?_i;_l(iRjuZZF-hM^%p%Vz{E9#ye z_SR`#{B)U)BG(oP6OO~U-Qrcg@wb+RTPJN@BriE0(|L~YN#T38@W~2~Y|A%#casK7 ztdAUri85ELZ1wwz9X14CIRVfs8kh}QNP~>ShZ+yANz>PSxfahb|_o)6e5 zkmaZ)79Gl<2`taJBYUn|Y(;)|Sh0y05dKcnjld0njI#(PwSY*aOPT{jm$^dNFqaJs zg2_o;J(Xie9wtj5WA#uFpWj)jRM3(j$WZshV2Z8ICxQyX;wiH8!zv(X)8OO5#wq@m z%Uc*i4&>_{N@m2NQb#XX2E6P6IvRBz3;K-nB;J-XceW$tzhhQle%o)7a{w-O2gr}8 zh0I$@b5c+@_~dhbIr%a)vKvgR8X+WdR^KM44HJu8SVL>%8#;Q*pn?zQ0V_t2Gawdd z6v#xuQot0jpao7=kVos>B41__nzb+bz<8qs;9MtQPl?dX&+3Q(4j=qoa8*sN{<5GR zBv`j!vyLmiN~p?n^iOyPN$&somXHg6x9si;our}vXZZ|d*JB*L(gO)!tlr&Lo=wTz zVgk(Zyt|QtJ=CY4ADf?i0f$RZ$SLDJ9;@KQnFGrW#X64-)miMpqruoJQS{kvJFzNl z*AGoyz~B>o-}VJf!FIPlg$X7RxNK~aa@riXtCVZ?-y1EXLRdw41(W*5O-VB5FZpY3#3PxLqVMQuEU#v^|et82fMk;Oc1jTLo(vL)bq zqU6k?J$Qi(w;ZN<6p|$ABs_$6RdI8dY!1cCb`@c_Qiclnsur9t=@adD{WdceoF1pU zlU^qqo}G7Qbv0Lev)SJrmV);a3->Lv1?ueYo+5*h33Y#)uYMCaLXp|w)SHmTldi(B z2|K@RqDZZ3LIY#1Q&5s>K5tx|NfAb0vEsb!`t+$RUojXXnQ{@Dk-)>}g@6(HNxM^) zM~5)gN)YDzZx1yr>ocPe?&NNSZ5a-uA{+;^bk)e$@z7BHKKS`W?1+bV4wL(P+i&I{ z$wun?Y_yP|?o%(e&vUXbuB;7oXPj&ME+GwzEQ9v}TlVu@u|PjcTzQhx9%*m(GMpIb z5AEtElL)%fL`dpHZ@zYHIud};&J@q_$}S!Q%y0#JahNfDDt6>?wI^{umHc2uzl}c^ zf8J&9po9uJ>-B*)ww|HmE#zWB0+!&WLlhH!f68%k^cHa36?5Z!;UCBJXp1eBC19?tH2m-TUjXDKtSc`IzmjD94M|2A*Q(5_efHp6}qz6g0XafI`E zO#e;%*6QnRb>F1Q2zlkq&5*9o#P7Kj@Z;ymTy^B;z&rX=2<`mcT4J_E5#Q6wrV)Sf zq8ycve%-e~;pX|Z=jvrV32WKICSK`PwV+erKKZXjE!X*LLsh$*N#)p>EyUkFs=;KOpio2a^frtS5BBadX}gDuJ-RZuBwg(?aJAWlv+`J6T# z)Iu1+wST@}nl34I_z8|rq4;e}!Ic^{qEq#qcqDIJSL@?9z9;EgH__3VV6q{Pb=q#TEH^vF^J0Uj2FBb)cBD z?b>mwZ8IZHc;I*~?t3TR^%UL}LTx~fi_|4zfe&8bty~2N!r)I&ahz(#Qz;Z<6(o#U znOExv`@PiW2PmVHR)70W{(_-bQamaZzcKu2>P1kW0%krN(ap< z2h^;D2ebG%kWhX{q>_A&u%E|D2vhwY2S(8i!yR6nH*P;Hzc}2TMOe-@z@aK&D^WHk z6;l*wF@b8bI~b4NWOapy#bc!k$GNH#(cO<1<(1t(;O}BR18-Z{Pi)_SiBXuGNGz=4 z_hU?Z$21*gATT((HD<_dDmNs4to%}h_+`p? zI%`zz%Zb!6+EN&Pyh)qfzJG6^ zEPrnuUr?P8sH&R@E!ky`-80?T(HgLh&=%Z&n9%pYr88z+`QOb0fVY&YCWyYz@B2Uf z2nLB8p=K<@pvnK3eu>M{SPa;l?VLMW6d8%R25v>`vZB{sqkh_?w%l<2!*hFkkl6hx z6gHdNIqxB`CY)>;6;RaGe7K=fSJ!-Y>zoM=6VHj?y~ZnDq;7D|$5#;o$3ysIqW0-? zm^%9|kbj&lWv619H|YnfJ8g)MXAurDEpDMK|FvjZ$i$gjKb=l26#<@vLlJqvekzq& ztrP+{B?QBdZ(vJcrQK319YP~uy5Lx2w#Y&24|%0@??_yh*>81|UJq=KBx(V05h(S^jp(Q9J>%}tz4Z9-6Cp69h3w*Wr8H3EUi|m0k=35d)h8zcnY!h%$8T4vkzzSRI?vT?T&q z{I&dz2O`w)&zDw(B*viWOS5j?~=*H zi<6P?U>>@nMf^v}w97$6S7AddLnNd7_2ELaYU{oirQ2{4EUAVzYO`3#os(bct3VMZ zYw*8=^cMVF_e8}$JcbYB&A(aJ(!tw0*NgvB^fziw)2d#7BEvq|a(%ARN4D!|>f{PG?ucvgfO-YR6s@K9ToZY~5i7efJ$6%2(PQ-dK;>7p+F&>ZX=<0y;jx z#0(P{=VY57yaSdGIE1?b0s*NsAY;gX2gR+YbpasmP!C9p=j_bzXNS zS21oyxPEHi02qIgjZnI2dNH63DSs(cQM@jI5T_4F@Kgf7E1MUH@5I+tD)$kz>l%Hk z9;Q)z?|eTFstG$hQptzSznuqyd_NrV!!^~SW2W#v*_DSMZ>N=X2 za2J9ZUVrt`&S97gY+wTk(KlC4s$6k z!4$$(NcB;U{N7^AGQ6Qk8#^=P9w&}eQec+iSa(dt9i*(MWQ;m{Djih>9T31uCq8Ic0w-OIxch!V&4ETJo%3vVIGhn1|M1}ffR=bRuDlu;P%^bhbOi;_jt z4k2RIlJ24OAUvM4pv2ij&M> zmR1=Qg7O@o+J)tK=(lrK%kFuv{`*d1N(r^qLDMK!;z#3CMkof2+G7 z=O;XwDY|le>c`t}r#bX0&@^i2&RXIi4V=5*Me`g)q}lU|!9c#v5M8zLg#}v^J#wc+qnk-_iY-ko-422wZGgv32l;Dw?J{ z;6>^E$I9P^qsk3pTSPJZ0DIlD6qN9AFRLkzLh(j1Y^u2S1WeOimG9SVy4UvZ(ZMZF z|Bf7Xv3Mzb0*ngsj;4r`0X*51PL3zMYST#J*!<`?<^NXZpBHte;D})E@7ov!`>Vv*Y#z zfGzUe0K~thlPRsK3WxPf7W{%Gct31r_VzRt{F2x3uaw{gDn%Xb!L7t-XcFxm#4;+T zVy2vQ86jE2*|tN1NzO%#uZJ&J^&}+g-tw}!!O-kAv`BTY{kGyA!iodd02gFme7|ba zv!i3poA`R|^zA-wcy3;8I1gRy%pBO|uD5I>Rr?NRx^|W|sc4?^1?ac8H}^i)@{MNA%{9aF+b0=Z`ydjE%4Sf9&!WHP*s4%rN&998Q&7zV?)-qqmhQqbzFz}>9 z<;!OzL(R|=H({W5(A)XA6%QOwPRvHi@wZ5mquX$-6d01+dj`~4npwM6zcNaO zyD0)8myYSYpHh90Nx4gjd`1u4lvM-Bbe9-FP%=r6%N(fo4_1q`f*8-aW6 z2g!Xzkz*yh?qahkLfJg5^D^eV<#?$c)IZ^k7kVKXk2t(56E2d*T>Ee7pTqN8rTN6y zv-rch>SQu%DgvZhs=+aIHV(HH8DR&nQf)fi%Nj4eQOhcL{tGfYBDHg~+b#15w7Wmf zTYaRiah(bc1>CeK?D52)F_K=>dr!=)(!bHiB9HiDWn-6ZsNWDPO$6Me_J1mDAID3W zlu)VdyzyI(teUyNF5t1Z0p&Z|{_a6e=aL62(^@{q7_tt?#4*A2U!|Q!Yk9AiOOO7I z8-2RwcnM06iV8vwNTFw97`2cY2v$k*eQf$XynLUq&Hb%j5j>jXdob7J1;mfuv_rr2 z?>{h^U+*^#r<|y)9$@!~PhCIPd|@VPqMkxVg^p@NurX;!H8#SIYUmz&n1T@(vnntJ z4vN05d8{$^Xpl#XUF$M$19srdEvoV|riwF@0>b!B9;}qg{ID@7EH?Pl4l;0HQboje zAA(=p_L+f2TvgBP$tv$l9|`sh3#0T2gctEE8m2v2=YJ7dkfViwE}z?}ip9}{xBBhJ z{<_$+3zpUl4mTx`^7OIl$6DSc>aR1@MAV15`3sgM zX6__f+4joul1`8GtP5!<0i6Z~={HcfWg&SPG4GsCFEz0gv_|y(_1>ok_{^LFU_ambNG!Q3|`CJQA{7ByH$4>rwMcm?PIdybI%+8tVE zRMl!_J0EuWvvIDjf~4pXCoXiGky)?X}NMADge6H-xgt z3k0c(ZRXF)zHhI-*N()?X7hsqA%0h{+ zR-tYCWjghB^R<@O)Xfq{bOt6Tx-t+Rvs~&=6g4;yIlkptBJ8jC1)H>=xbXAM! z*K|uQ5ERI>`EqXmwl}G|VCzA5+W~H0u=?N}s-~$Y{KZ?&9eJcHui6j8vZigULw~ON zo{ReYV8E!ZZ3j^?>I#Y4hrou>MT`L(JyQH!-m+%Hs*=6>Jk#6CJa>9k?Yyr=C?i@t z2oj&NIt*L#+-bB*d~hBSiO)5V0m<@uU5iV;V&UVmh#mxRt)_$UllOoIOS0+`cc-c?jW#u1A=;#vw(;n zKLtUe+4If5d=`B$C8Zu zD?kPbb2E+ng*UiJ3X3~W#&fxBZ(FZ+8o^ekZCYF11=Z@XFSNK~g1g<}Y%H|_l(y2!Vi$!PQ|UmrrqRmY6WsxjF5zOMRS z!TQFS4j%tV5W5YcKKI_ZRWF$7J z6Cfbese1Qq@_9|~{5YLlSGJv>(CV=B^uD(w{%8<{UHSHFgW$L0%mq$b`{6~K^Yw~GbY44;$0@$7pm$@FIx^O>J9h`m%vOaT zg1NowETgE$@l8pGLDJu)E7UEvDyUhz7LPx>kj$0^%7};EbyGrx*2d^r0|{Rn?vqQH zW!>-~t>?~foJf`e-LdkFs!w(p31_*!Gp}}jXSVMoh*wcBowDX;Y+b5PgZ30GV=$o zoA~TI%rs~TnFmtIFnhFtvLG5VACUe0W%2VxSCyk2ZlBO~Z9D(F2bJzp^Zu=mb^CoF z&%&5&a79-IZ>m^u%7h330}2;s(EUXbA1nUod&A4fPQ$uP`FdHV+ufS&+sfs~Gqqq{ ztwYMdK)&-uglE@V_luZso!}WgqrlTufK3SZGkaG6@0ogT&c#8_g6pLI`s4f;K9do5 zXY6;;$*~c^Y>%!4WHj!&nTdKR5^Hnb;WA9A{Sf8)zd{XGJ819Q+@U|e{;5qZj(eU5sL@?gU;ZVnLc1}HlAX`qLcEvm_k&VR}n zN|2S3DbF%bykYx`%VI@f5_|Mi5vUur`SFx7%KoV-#;Cc)K#A;y)o}!K7!IAUN1WuS zXq|)X?u|TyNHmFelpd@{OmtJ9YAyul9rkxBBz+64sVQuio4C%%s3SBkuza;_C?@jt zxF2JwZr8cAvVEJ|*&7>YQolf~y14&ZUwOJjU`x-=7eCFDH9Gxtr>tu2bXv^E;L}5$ zl%z6|LG<~IExYbG`OQ-OZsW%yV@fMs=hxZoFZJjy>IHnb*gu5zy zPPcUDE=F5JR3Yl)X7PF+>@)ec63sVDAbFv5)eU99Giu?y35q4uunPQU)C5018 z8aQ!V@sY$d%BUM(^Nvqp-Q{;p%2cUyds~wK1!)2L9PQoA{Ag-BB8gpUX07;s{WQ$v z^}z&M+Y36{2*SZOIF616t4!Y0W7hQUJ#Aa^Ws(m@6RB^iQFm~<@{QW$tGNV^_Q7P2 zK8x2>!bsizM7A1JJi_QxPQ$ zC`Y9DZJ^jOYsF;RZ1D@apkAXdjFY)u;ueXh>@VxkRS3A&f`=O_J639~KTANjV~-6x zvitWN$z1jpZoNPlUqIj0k3s_GT3Q|?J3xsNv%vOubs|dVV|ql)0{4!jNxW{bEJmH4 z0?PED5()H#{*$V<3y;m$jbeJLHCQZlFbsKfopu>ajuU%+Ej?^!mDXkBBNAIiX{5hL znk?R{5OS^YUKzEYFw}Q03oc)J@2}13T5wH1h#e-WTyT4xEd=h@7LyDa42L2y0EKNG znUAfns*?Ehr82JzJf6snw7TE(2oQG=Ut_gAvJw|~pROC#j}ee9%jCCT zB1r^Nol#N>+5{mR629kan zAq*yjg~wkc5pRUbwBr(uh-7KmrC3-+NLP`>nF;sKkf9BwgI^_+lY4F2Uw@&z2Y+4> zk7=V2@_NlHtD?XP6fg-~bqAn)cj{sgu5A2ClRv(FV9?>R`^%=~y;1dn3x6<5$1+mF zv*#;~eU|?{q(Dhk6$%!1loJ**hi1M#IcHm+Y)GRaTQM`~-%rI}WjhFEho-Al^Y8m5 z5H7Z?;?=M8`lzx|#|8ZXDLBU>Nu zV4FQ{yJqFawJ-R0sUQ^0k_znuS>_`8yjeu=;l5V8p5w^>oaXKe|ICm4bY42^T98Z* zNGS&vxh+Z%o|@^i6@A6e;3gcYu)kP2$Gj=WCn*>jP5&_Sq<8^#^wr%z>I7fwx?ak= zT06H998Il(TuU##y>Vnf`!(1e7^|k0fNecv^XEaIJ6LyK11ut)=vK(f{0$GB?EUZs zb^_I8C%l^Up#5PQco38&s9@Ap_n|ghrA?Eh)wO=Pswpq8lXU_!Osg!!z3o_O_0wpjuz8GDWQtA$hHc^b;Z?zlYg1Z!3w!shdA zjsS0!vjAO_@)3fs|3L`rOsx{KlB>UhkR{Nl)}QkDFA0z!&wbbli)2C}q&g(#<*O=K zO%Kdp7zfDf3VTYwNaFmV6!2h#>NRkvr1D{yF8_bXtIuZ;_@Y$g0)_e$VqS-Ip0(kmiXQN6{B#T6?h*BWZ1K7epx^0%z5f z+@KNl<+=0nRRH;GVYB?lKiRS|G?$uR<@LtBDi-6(_ha&N8f((LU2J6gTN+RmD4%dWl}j1ILS#SJJIbBcjr&Why#9MY3OZQ8LUp z_#S$=Yj}QItU#hg;mytKSFK{1q@-C*r>4;vlER2UVB;XNsT1&%_hTKRLM#2oi%e?Z z2xFaL z-@pH6a&)4yfE~V(FahJAzaQ_+Ar7TvS9lP!=cO6TP{0dC&(#Yiac?O2U}*ljo#FK* zpHY$p;KQ73REVniHKSjnSlg`^*7)2?siUE=aEyF%m0r83Ze9tE@|R?6^EbzJ%7P2F z{v~0^;)x7Bzf1w_y9Mt#>c|hfhS?JU=W0Z_BR@Vc$az1h1~I78$M<&Zg%*6M-K&{n zslK8+*tFc}1eQaD4q8Qs-PA?zs4RiDmQGQXLLXY%QKF;A5@Vk(j(!_l-Nl76**1#P z!gGLS#-c&+4Jh~qA}ia2I4}6jNlG|P=7#uJU`U@Y)t?^J{WzTT*1Od2U+-dg0k`Xh=yQIDWGXw5?M3fv8KFkOhR8lOZb55F8UYvf&w()P=ViV#G+ zunFF>*?O+7Vz6vMXAvS^OV)h79Nj}BqobrCk=gp^9H1ANv5>Cni-A_07pP=`uzUr1 zQuh-wIFP5RdW@zvjkc_pF7tAxhrb?EIv2FP4a;V@&C@M*?pN9h)H*pBp6|`d3O>d0 zbzNY(uKk@$&8S!Hk3VpUSm_?mYaDP|?`5Cs+K3D&+}{PxjuJo5iVHlLntHq+DgI_M zX2(Sdvgb0FNNGbHN!MT9TW{nqhdF}1xy-LoOQny+d&cW5>F-Ql#xytULQZBos)Zguz>SF89U#!iKH?Pi@yh#0yEaO8o_1 zZ)&O2uwHv?G!9`j70u0^B&l+fP z2+|oPP%(V8$kQ`18OsqQ&cw@y_ajK7@amoYgCVgBQH|t0%?UVRxTm*F`(O=zltRdt z*XX<6R?#S@&;nSpeHldU5_4LN04kztN%|@1v(tmmC)Am8z{B-|Fd2oi$xYZ>z8EB~#boH7Xs7m;Js>@B~z1LYvfU)^dZ%9isB1`H5!@T!%>d?~E zi0tbmGdQalbq%UNZ;Lr@BmNrFr}W{C-W0GOup_&$DQi;4krw8H=bIYl7YKdcd2`hdLWq*$V@d;+o!d^zu9ikdxC=+bL!4VlLUDp%_VDxwU=84*Q1RpMM02JA(sI>d3d0%5Ek5w*;FNe^ zcz&JCcs)e09xA2unQ@cQ-18756cYe%W`nmxi11=?fBQ`u${hJHm2)V+dU_6N9RulkBU9y9o(#h;1o9L*)E$n%+Y$nlgPV#k1@;EhJ@Lb2)Z~lG=9vbHcbEJy0Bj0 zvb^VJ?sr_NXcMGbW6ZyCi=wv4WBeQ;$5U{ZYAER{)VXpJ%5nVmyAcUTT`3kSA%9z= zIN(Y=o=_E2RmBhED7RM@vbHE5vw|c`SuU0&)Q{hYnWTpq8U+wt&4P9Ld7niE%Ua*g zch-Ma)coWW=5&2mN7LY{ve5bTOWC%cAG)M(Xi)C*$QV2okJP+#*4&*FJzB^02x62< z6RE9|vyv=fjt?QclC5~reKlxzT+%yXQH|*&a{%qL4QS@n-XQT+dO(Zc$(K{dK1t=3*rCXIFTI)I^?d)w3$Z83Z!z zWYx}ON=E-DE`q=$6l|g+)_a9d#(ajlm&w0q$e~6SUFIkK`{c=^`gvycQ%d15kI%n9 z3u7Tndq9z{Y+D?*`YdZ#w_bM&i#;)-p~8lF+sD;VsbWRcUu!RK>DlY48&Z?>;SQ#X z6IM*4y%2rg%>E@d;=wsK12V3y6q`w{FxeXtkvb$%?MW);$P}ZoH0VJnD`c(ORSE?_ zc7sWKd(FZbV+FlSGAEapxQ^FNsbl#1PvTfr)y2sy4%zPt=^2EeTrGZ4mH^LT^fR?D z>@+|%y`ga5!?NarDs;c_y5u`f;ysgdu&~^6tK^j#+Uc-*$bt^dSI&Wlv+pZz-KB4V z&fO{i|FeYpWI*_A4w*e>OevwdhJnepDCXE)@%iCilDGYKSvCt-sur5cth2d%B7l3h zW4?!35Op>v$$|C<@{^rSFJQi5`UB0u3E@B*m>r1a;eDeD4`- zKKl&Dww44HH*hG=RLI2^@zTOVo+ zF)u+$jtxYH&?kfU?>EOU{|a7Oo2OkvpJzZhAkAuMr3fd9(o()vwa12bmbY0uXt?Zq z=is&QFpxU;5(W1_-&lnkRb9%(M>ojXihfyUC@XM%WVAF}COr8PxpK0SBj7c%Qta{y z%I+I)m+|Sk%ri9XrxOdLYHpOicAHS9s^Z#e=FV8mzlDKEB+eoF1K;GF79E?SYolb z4;I(`2I^^zBYJi>1+-YnQ#GDRc%Rtiq}(odSbCmCZ!@!WA9V;=drlJft*tCAt8@LMCK)T#I%_m z$ndP=y3Wx_6Rg}|Si~ziWo2{lhmW$lFWpAF7qbY0c85@}mbLcSaK;WEB77iuYy6|2 z$vf&pZwr75>tDZSa9b1YI~NS%*)chKsmXdhjJ+HRzCLY>xGoU3FX01vm(HB9m*S%A zA`_W94?wKaF}uoD9e#&B-k=moOM)ZbWi2fWdpq_tk*50>y+v~_&}fpOgUS?ear9{Y3y9ZB9;IzP(1o0vHhuWSA;(AO`&H6hZPzxEth*vszr>Z ziLVzP6m%_r#77G>IyhNBA8n7XJdL7c2-q9U?21|pxJi^cR1PNnxrq85t%x)7>1NHM z@(BL~VR%RWTk+s5w(kgouyPhj14q48tn2oC1BBUtDWGH!P2T@;Do*UZw{~);-nDOm69Gd&gJ}p~^e)gN1Ha1Myv_Y-u5|F} z@ubqD%{s(F8VY;(Y8drD3|$t} zzs=!fa?#;ED0iAH3u(g7b6jd72nV1>DZq3zhME7oZTd)ZL>6pf z^DbIHE|y&eTyLoo`Am9l+=6ay`G`Or+w-I8@@9T+VVrc(+IsUXyz2=83!*J9&<&Bs zk@{Oz!M zkoN6En5}b{uQOo1iVvrQ)?oaEgsTn>la8fkTU{7Ho;msx+GNUqwgU6Ae4gxlqTn;f zKUWrc2QhS6Ca@A(fJQT~s2}VqY7ipY!0_d7CNt9549%4~k$; zd2#?k;l3vOJ|_!;Z1!~f!hWhTpS_hLLrY0g_Plm9B^V+`Z-frEE&EtlMW8xyxf0&f zLd{9!M%Q)c#jYppPY9rzmy=I7EQE9!L`DkWM7V*j(BcAT105g$!g=_D^ay~;p1r5N za#FpXY*o_7+T?o%1*|k{`)(9p=O+lJ`_EVqO)OZ&tL_h!t39j2StX!0u%oQ)Nh(*h zn*y|`qmDBoPck0IAWte*64;@lD6M~&j#@NdvEV#f6nyO$S6Kwy94 z-Fgs#5nN-;L~h_fMEqGu92~>5D!=7<3q4IdGs!Qx!e|!SZS$3#N{jDZ``=k@UI_(L zKg5kq-tJB3b>}NDuBxIocl)k)2ctdRhy?B5o?r!Cu0uWAHgymdR!s4>O>o#(Eloe} zb#*^ZWqngCnW317es1?{4W6Vd_zkB+Y@L&{t37(KS!K1NP0b zInhL?g}0^?zBhvJ#XumDPBRPX4<7QF;a)%4aIaB=$*#~@7#`uF33F3^1KoO&h#9(M+qZe$_heWmfv`)MZ8SOF#l=-Y zx8s?@#j10ZSNwE7b_?#1rS}apoA%w%$Az~f)zw`oev}1xsMX{K9Gg2dp6TVy^>Rm& zqNgfUb|^~;&Zw7svpK6eZ9!7GysM;sFFq<$FK9hw|7Y~XiF%u?&9?SpUaV~jtbsjq z5~%QSGVQe5K4nw4W=Lte{jZ^&RKu+$dZ9F!m!Zqb@LCN?WcG#jrpn!KGe*a&9>Xyu z+J*Y6#~H4_6o>?_exvC1yPcF4$AA^VTfwKqa1$mK3nf7K7t*(N%ozuWPxX01v_WQJ zf5|A;61>Yr(N_VU{E>u~52z-CCdLQ%!ODK>qbB(&4pt*Q)jqQ)wG-Q60W$!4{p~Kc zXx9EEoL+meJ9A`N+G2WIbD{NvG!coF?n-67rOpxu=6ZRL2YufLeXp^7uaAqfgT8Rr z`v*ps$jo#+gXsdoKCkb$U?r@H zZ$wCYvg{Og3Qp`y4||u-VQqC<#bB@7&cUBuDz)EPw8%1GSI3=_a3cG4bIb4B@hCg&KiBKCwXhL12({5E|?=ejt(E_zs zJh;cRJS0u{na=erJO{DRD8Wf?I{8ts&W2O_z}pZYrbI=unp}<7&a6FutQ!`$AHYCCy$rX?C#z*A6Z4cFs`BD#Jpe(h(du8~QFps?d`HyA)c^mzU08V{;= z>$yx3A=|gp?aWp1{H~=){$;*qXfI!D6h+LCpU;d4h8znMs=W^)j{Ss?eI_(?nq=J| z38RQFinqKTliDW-LZ48EEIJJ!&q~3%qC;EAb&S2R7dgO=R(y8}FjO((Q)16orO8N1 z{+6e(3j^O@fQqmf@$=w;0`9FaG|cMSfas$qS>BRB^DhJ#X|<}#!p@rd&61SRfKkqGww&(r+(ZLiKaAgkZt&j-?3#Z-aZ9>R(PZbu zPM;bK^lrzO-DB12{Rn1yz){hQ_6U6eFTdl11Vc`2=8P#bk8S+=&^;&sA*_-6fV>pY zjHTW_!zjJNe)CsYTknVHHMm6)%`Mrt)flp?lyEteIkxuy(R7Ugk$_t}+qUf{+qNd#wr$&Pvu$j)-Bz28 zZJV&ww(Zy6d%vH}-`<&X&O;t^b%sr#iECMz+%^}PqJ}xK3Tr8Eeo~fBoBegGt(rW* zaTX_zfjM>Ps9Ot8Td5PNi+hk$LWZtjUk20k9~oE_77jC+y4H&80i(+ zGT)*|>fOQ5mF-YFe!ob%E_OZw754qW;=O-Nd0=^tD(Th(Y)kK8@+=#q0nYf}SFG}% zS6t)6c=Y*-y)bfC+aH0Rg-4WR<2#sfu_2Y!W;Tmh=XIDyL^_<^j^3*Md9g$uN8Av6 zZQ+)9v&;@eG`ut~Ostl5h_lRJjSpiK9Kf@pnNrs%Nhmr%muRh>@H0JoMJczGoX%uF z@LDs4s7r+Fs=`MVvYUj0U0krW5BIupdke(Pm4~Qn3pnz|)Y4$_=)-#Vb==>j39Rqm ztP0EYSLReW-fz^@C*2szU!1#>4Fa0|w-ytjZ8(3lO;aPS+U)+`d)TLJtzi-bICIYN zUt53Dv!5o_Bzo};=ZT-D+tgL>G$2)^aEo0l@csR>kyuuABkJ{_8_2K~E^jH$MQwO7RMFKUfY;ieRp1OnR1^HF z{0l^$V_K2$5vfSfWCtbyQI7;q3n@ zD7^ICp@MMR6p=esOXa+RU}_~sViUtq&!Qnb43U@>Lt6Pmls8y*8KKBW+oG@*APWbi6$B6!UC5k<{)r~w&S`gq)Y)xCaYr3BfjA^9BZ@Y{H52>* z6X>1l_Q{z$|CWDaV#^i=^QN(=?`{o+c6wvX)*5+tGYsfHUr5wDJRFfzgjBtt2vCeeHv(w|^VUgHFGt3-;Bv->YXGf5 zJ1#XhpO=4&r=s|JZ5wQbm_2Xg{;S zTWzja2$*ww^btjb&2_2EdR^V;)E}(MRu)8)D~?l@+((r<)iN3i(tgZa-gjjJ}?vu|~vEN$6-db<-0l zgTPe!8k#q|I!^{mhQ^|M9g5b(u1HbWRRLKspVevx!EE2eU`CgP>PhCH0}>0w&(XCs z=K)A+`AYQ?#cR}dSolr&T*ZhO<@t|S_-N&*^g=2wQ4ba;fBFw2?xf$}mgG*~DmQDj0+Wq`s# zhD-23l08N0_@@4K;X)M0_jVp)RC&?~2dQ`m%@lcvOehBUT@Cnxyu;(@K#IQ2_a^yZ zt@lf{4z61;`xCd)w68I)~4n_kFh4veKYW|d>Annbylm> z6c`ZlyUVV5=&zMu#$G#2au@-^6Y1cLrGiRP$9u=gB5zO5@3Yxo-=Q;{M}$UT!|33d+%_Su16&I_!xlUW~-_?hBQ-iOr_@*dVDRp?3Za ziN!@?76;WAU&3K9y5mTRwv$jdGFDSW1hg1A)nuqAz)B*2ZA`h;+70QZnTC4Gcg}a1 z0*l5Bj(L$=7wpjA{p84OnccM;W+9mKzL3E#wN6=M%P^^r%r8Ol6URfQvfALzvGv6^u|EIbu|@M%?~30 z_#gm|-z&0>%;e;xhR8?cVJu)o*082*S^MpQ3!S!kEyxAot578Oy2=kg>)wvo1)b$+Ccb8%hK=Bt;9^^c;y=a&Pfyj?WAstA zR*v3(UKxW2dro1RT8f9@33w*tdiTv`R5|8RE1wXIWrP9l$4aq;iW>9nbIYVB^-2;U z37i-bDAN+Khj_>CeyW(~=O1>NBpfkoWn|WmWKC z2|t+DSfX!p%7dxl5NQWmg`mjHi-1cQjb``g8o`Mw>Wi@kKfl3J_XD#!m^n$rDoG$1X8ZX^mAbRyBpf+>6)apfBf1aK z31^h48w8aTB5>=BG8ZVIBMWediQ(fr`qds);)_>H+vsuy!guY1W-hW_`|SP};rs#c z*MT%P8Ua4|e*i(s^FP%lRH2*xbI^n7q1)lSA>%;dSk1|d*}R|e4Az*!b$7t)rpjo@ z6pCZMof>~w{saefWX?MYO0A#8kxb~Ns%ws!-TiZqe9XiCW$sD|BU3p9htbLZ^Vy?> zT*suzk_3ztwpaKnC2<(*Ej*H$$q-9@ovtD*hYrj!2(=Fz(9IeIM4I`gn0zU%38g7+ zQ)Sfc2|Q)|D_(%^Rh5zg#&2eQD`>ne_hfba88u8Sb6>IPwc6gZCmc>1&)fU}pJ+o$ zzHJpxy_<`e{Hdv8KjSB~=H}OL4h;r7B-7Q-(IG)GeX2psS7uQoW&t$xcW@%(H}seInu{1FH~x;~wKAx;p?(m8 z0sPImn-wh=A}c{&sXZXzNO=$cNzy``5 zRK(N)Efc|zbbc1)c@SNRYF!VRNs)1o{e5=+oAqVHEp-geT9cAzk6>(^`Di2o0xk7p zne-1j4TjB1!yBA3-X2m=%DTr$W>rB8gg=rpgJp>6N63`O-v^Pu3wQ4*0awR{GM;yLG8c3_fBpk$c8_P0zHKBg%}f1 z6n8t-t&U_xG_b?j=ZF^tf4t%v1$^1R<3HodM7Lz}^IO*zt?P1`pX<*1tC0LN9#+7D z4H>frHvK4(urEA_Dm>HW!0fu%DEG@NHU)5Ycv#q`e^_VE$M1MzUWPQl<@`OIQ2)FS zcG>Sd;Frsq$wQe+LjJJ!;Ij%wCcI`;vOmQ} zoDFrTJcJbdPkKCTgr{t5M0>)F?~4JSaWfx}Rci6f1aG-CWc8;yh=DJoq-TO_h`21x zpCymiobiI$rlGKsxDnM0DW}KeRpyNyJZjzKeVrRL_23HhE?-~9S=|gMXi&2p1IS4e zqq12CgHC5o7lS{(*#JZ-p-DL4SV*@7tu1AP6y+J`-xYhh@6Km~hI$;Z1JVB_9^xo(xr}xSjZ@h-k;3o@UObmA~#})u1k7zoQ_4Bma}QOcTv3p0a^=+p~3b{NPRj z@k(0sC;Gg|Upf2F?p14mbMPY1y=I9DI)Dt&XW_ zv)#S<&%<0P0c|8}BsPOA(a(MY^lD$dN#;9GH@)6}wa#0!dsi7V~%7O9V zVR+Oi^hWgH@4mq@3Q46~yAahQtYrfHiJ#J9dz3a|in=FrTJaB+8TXJ2D^Qm5!>IUN z(yCnVCgVDB#xN1oF9Bz{);>=|p^QvX{rUY*3h}Dn)w@AWg>`U9wG}zPU|$lQ%@F48 z4u!u6slyi^pk?GhQ#<=I(Gd7fHhbq_lOZbY_52>)oav~RjSn-Fhj?8Lr-G@XAx<&C zr%m7|3UB{}SB%7xA2Qw~j_eyAap&RHvkZGlU9Wi095x)jDaB$erzAwPD9 zT}++a(RKqUXp#g066p^UY?QnO6)a-KX0(Z`&1(KPsnNwBOM|)!)QVAlqHLb=LSkV$ z=i$}+Hc=hTQRhJKH38oK`;qv2s`xFYir6BvmFDnbeI@Y*wmQZz1M3Ddm670OMde4@ zL3#EEZXBHeyzxdlf8!L0LHQhqW=%Gm;bFuwX-#@7K?*0xLn_budlli=k7!cA_h6q* z|MVOcl=HstB;@1p4Npgm`+qjN{+>4PXO^wmbxTSIG)>X4>kp$D#UYWyH%$)qaTHZK zHh%nr(>|{~C=8uOp@I^VNcB%#S(G{yn<|7m;Tmd|kju2W6TGw&iIW))KT(0@L~Yw= z<_PwezXvN8D?)1}L)~KISGt9fWG(8K?(`C|%hF|s)Zxg8ib^Jw8r(o+DI#Vx>U<>9 z4xRei!*FVfI$l|!=PmQ*VGMLA%Y?f5Aw?kr+@MHHHDXr-u;KxX&jb}H(mmZ3)eY2l z8vsE93|;K}8)kJO{&SokW5P1{rpU{1@UPV3k1bRqKcU$H_}{f^xa>jA`Y@ZBdIwfb zJpp77Cs0Z#ixIuY$_A`9?c>QI@@ir5mNVHBZTr-Y9pi`NhZ*w)c#SOEv~{w{O<`ld zMLV*ZBD-NHp+35M@=>Gk0(&%aCpzS2|B!Nv7Dyq~Q9G+no}{c=e;&t#;}&M5jSYf%Rd4Khz%xW^dDpbX+?s zt3Z<`Cgi7+Vl}Z0anBoK?gX2lGAAJfZz!{+IoZTOf!b6VZ)A%JtI3nS?_DGI|WRS$K63s<8Vr(P$<7zepJB z2-Q1eXX!yPnD^&2%N!|{OJi?R08#*NmH{l(ZlobZl~i|qx-x(mOQMHH(Bycp3>#E{ zC@)qvdYETIO>8yGuh5#zI#pZ!+?_cJa_Lkra8`)GnQGNhSQm^kTmjSyJX*cZ?^y%R z{PLlyS%RHb6IT@XJd~0YJzEx4^h_ven?N@^OdND}442H?l&vcI@oUyI1p|_;k>O&| zN>T3qX8&-~ly+U`n*xE=J~N~;s9;M7lOpRrGLEmate2Hr(*x~$2)yYDu95-OA;t(A z)E2(Tjy&L>KzN4plk{QjG&f8D*-r};vB@KG3ZiZp)XHpG4A)#Jf>oHN!ABoK2WaMp zAJTJ3`@a|Jj>TL)ZUo-->L!AwO%uikzkyyY&+A*LlCQ{Nu!4TB_=Ue{$O)t0p}sPw z6>Ff!zl#tvX>5#zc`%NF3@rbLHtWMNtZXv6(GJ2f%7G2xp_#Ida!#z{W+OrOKU z&jh&3ifq+{B|mbW^`3;4O5X#U>5I?&j^%+N@LZ&sPq`j;l3t}si+zcES?@Zp^)OTV z)>ATqQ&yR992cV6K{FLepOtQP#~NX2Oxt5?9uJZztOndmmdZRBd8LrSwHi|M1i#@g z2T7v@9N9Vb0;y*DA*5lnBSAysU;f|8Q<))1WlsIB*1oN{K1@(4?8pIUd0V(s@rtVh zb*~hBFkthc`5jI+u8t6uIQejt;Sx=#@R(z$k6PO0^Oe}s6JUfq2mR$^*_HO3+_hq#gOwCS#YOF( zhnz3UB5CauWO-jU*?5-JiR&z*V9@Z~OaN}OyA)6xcxVY1J~=yq!jN zP?&EADTj#%juiAMM{uNJCHFC5fPy)FNDFo~J9M~+#&WFpl&OcKp@xlCtU)AM-Mop+ zY^$Pf%W6- z#adO$h&rJ+?BSN+yeA?aF9O$8V-AH*!FBmm0V0d9@3)f~yrDH}j+VKWR*4m&N(^hs z@FV!>rtnl+dh&u+MZp8bSg1v`lomf10ip@a1yQfE-FW}e(dF*hr$)Q3Crl}3o^(E+MGi^>%iRD7LkY+H8!~O-OrIesXESgY)*Q;P{nLVRWn86J6jlztQ0 z!({1vV`zL=z}M%C0u6fWFaqGkyIrrTeOK#3WH z?{j0AwyJNNq$8Oy?cCTsP{F$bMrx56l?4H=t|#y~d`RDQMPCMqO>&{pNJU~Rg+;4I zMAQ%ojv5#TDRU;DOY!y?p`8aqm;ynn-k!wRlpwAw3&jZoBlvTBgpcUz8p(gVQHq~4 z03A+}y6th95Q1p3UaE?gWjNpW&j~UC0Kwu|Vdg5QCiM(WziX`S4B7NOOJ1uM*twEo zeh&US14*fj=MoqNrQNqK#W+M#3Mma+WwssXWO_93#bKD5|4XVjBU@p=FkzmQg2enK zg|`0cspZCOY>ezY&2$gV9@ZPL3_fbcA~6vwoSt?9M0tRbPp?AbfFp;;p*W?un8WSH z1nC>r68;MhQjFz}1^*rb9c4@Gc-n{?166h#y;I;ZbpVH&fe9Pqjw^}boy-jBeCCd` z!UjH{tcOAD-U6d6G2^7La7>u#FgmRqT}0O*C6;e+&e7a3`wqNDQ4(!F(1sd>+}6c0p*fj`Yll!Myncy0KIEM5oPGXSp->2A;MtN8CinxzsmLIj zb+lSt@zZR*)7sI>Hq{?NF%ezEh!q3Hus^8CK{w89m&nKR zXD+O_qT(RLgl+6Ac_*B!1sc4`c8*w%y%2Y!YyeW>hR4*I(lPE)q%iE)m(ZQ+9@7Kp zTV!SS@Ls5up_n)cST7hRM#b$S(wO;B+KDd2H^l>o28vvg9HWyUm}SNLtbqH>!ws65 z^v$~Q;kY{AMsD-Cr3alx+xmhysaXPKqWRqoJvt|PJQWKLl+;2WShqd+cQHJSWvF8m zaHV_D6ofOga&*zyi|7q!Hsh3}6Smy6QA;lTo@R6ouKy&+=zr^tDnsbZPc??TE3tpK zbQLwYrqLr6XAqE=XM0H5YxPzl%yjoqu6M+aP$oTj6=Eo812ZTGkJjTnvqN}~n zo}KI#DB%j7kQO>|M9P+}V@N@+y631B=^R-+FlAoIsiU`Hc~l|767~QzY)`Osmsw^+ zzB$g4(2_byM+msAb*d~a7UgL&MMnTgsQ&q295J6zKzZ+mwDQ8UF?!N%)p4zBp<}Ut zZ#L?jaI=@roiKmrx=<+#%9qZ#ckCoIXv$l-zvMf--Gfbz+f=;v!|63!-ym%+=hWE9 zknD<6WPr{nbuNd_@w7{GFtyECO??f9qA-!?thRuN31)n^bBR!1vKQ#jT-~AS@jBbU zT39U8Kw^K)h%B0Bo6X_QZe}0M2gKXxxf(m0t_56 zLUYCx77xBOWdiV>#LU_H(Hr{1`R76U2}D$%a*hTwo8H_-g9%h{Ac7w-f#?Wz1d5iG z(g_nV97f+pii2A9T?aOlS&S&A=!lto+&-wG$mfV_;$j#g^i^|LXpCuLXV@8{4V+be zB!Y~if>)jhUg?xxG1nr38TUtAvI%;O5w=FtBY}`~(T@;`w@69mvT8&(_Rr=S%aB!j zJhKB>laTK)gs6k!ME?1YhRH&LNA?q)N@wt4Au)`W{3J>RR!es6c?G9)K?`{r=g}x6 zr#Jb6VgY7Mg7PsCQBr2A{1Dnb|3#AubRZsNu(!g-rZ_O1F%nU9hpEEu9?-f3osNkpgkVe zOZOz3NowVrMvEOnTFAwu5m1#V0mAZ6kzzo~XGZ$K5;;8qR&@rHWVYgvDG~yhu4g!y z5QGU{Z3GA0>#qfG;rpGzKRfEH4YBIsVyIfE{;+GG8_N1;q2m52nrhB6>arlk*43x# zQIw;@Ggsh}*vr}A7%Q7_bPuh{B{VRP`~d-D4lZR4HSsFk&MQ?Z3)_pY#i zXh_&GiK_IB_fU=p zM@U6usik=t)@_^sMq>7u4zTqfwfNjB2n8 zl8a*4P{na%byH8kPQ~DIVpMe7{be}Y&Fp1@a!uW2bcrI;mbHbUc$3Wy1+RCGNtMSp zG;ur4fqcorSpQJH{nENH-Xr0cys2*F;rr!VFIlQ` z;PK(&Uhi>d8us)acQTt+Q358D8E3lbVqLjA{rDxo2pPbyJOj5dJ;}ZQ{9+*Hipz1v z7q;Nw=txg!z)W0Wa!Ew=SRC|b8&yFt`@(g&+_orOHwvb%w}b=Brd_tD7v`=qdjK8g zPCdsYcRr;kb9s4PvI6>+P1#&hGwoV${|tkC*dqz}cPfj<3$k z7j-CQ6(uS#ECCrfPv)Z7A^QDm@7E_=?#)YsTjN4Du}IvwaA&KwnkRfXmkCJim=MKl zm*#^ka&V%6kOU1uPBOEzV=w`SzJVlYLe3RMtZibDglP_X78#QEPk7}48upNnkNDz4 zUh4_Ib@p>v%%e|u>q$&l@X;@v^L}Gn-*;lsY0%qo_nP#?$m2)o!u6)H-w%J|r`IgC zU;cl-JoncW6jxog*Kgo6!}hf4J6@W71H9E8v8oFj%HkJWc6>6zwU654tj7=S z7a7aOS}2wtK{^Lj)QhX7?oFq_xA99OZG+|i(lJBR)I%9@{GM*_$Lt~>_kY#URa53f zrs8WO%%ZoWJEIZ)LBQw#GJJ;EgNCrfP@;|C2;W)KV5@K@B3#YY_-~}r+2uvvC}v}G zd@*DGKMR1&Jx}EAMB|eZ{@cGlp7@XKP2Mz@l9l&o}9N!n{}@oR2!;Enkd z0=Qe<1auOaX{NG2I+wQE1uZ5}*kJx#onBTQ;UHxOD|Ls>2Pe;xq7s?K!T+~SK;n{_YwY7iY?CGTTuhU;Q<}xD$jc6_-mNUA*OApPRWhagl zx-$j(y|rqO6an&hI_*2kPA1Y`gDrX44fhq=S{KFkbpBufGK+_uHneAcVLO$ z3Qyn#PGUpGC3Ts42V=kmj``44+Z0v}yN#$LS&-=NCsj*DxY!*5>h z-+;HpgCCKEJWad2{TtWP4I6n5;M503{WLhJBMzyT*dBhV z+mp|0yg+eUrfs2@&P6#+dWR^Hug7bZynUydl)H1m!I`FK@mz^^X9i;ftW?UaS*EC+ z7u2~Q&tLe|KM_mlEA*50k}59-6|r%l+Zb(T#WC8F=zUfObiYptLN4`F1 zhWK7vO~?rOhJUM~xdSaT#`@gY2X>X3d8xaTvl5qO|4QOXqUszU@wb3|{=UJ(h#F|K zJ+@Qs+t8)ck#(?ZR;g=5M+2U6n7ht3gg?M@(gc-RVt!!ID`RD19*$#VMNEZSp~2Bv z+B^*17X4VEsQOvYJ8E*lX{XHbsHaR|b>sYyM+DMCwAU`3Jtq6{TaAfOkIfvd2G(C% zl&I>S?rW}x|A26x&h{#JR2#_9$`uiTqSFRVcrIzkna?yA0 z18D>3Y-$15`;`95@qV1sOEc;DRWZXnc!&vIl&_Ee4 zwq5Z>^Fz@nESk*WAc2(Q#O;R$#%+j{yX%{ z_~l}o86CM=&Hv*2T2wCOmW}GQBmYy93uS=uBg-*1=R@>%P0A!kh49TnvpE1@H)#d%-*CvYl?F8km;w99j(5|Wa1mx@MW$o!L7R?s>`7gq3 zAw@N#m)g(~%gPa~SFW$P)jCWeFViMT6*GuQwYVWMdr>WkaeDSeg9|%FNBa%~E%^e7 z6`TfIJmk?IPad((!%3xAi)lys)d}wO@3{@M>16>8!S{g}OI<5p19m|{N})1g%|WX90i7t+Dm8V+r-U$~WO0IaX zBb&2r$rF2>t7Q9*G}X@vy9$@8AJur1D^Z7X*%l@_iM-G-&!8EPks z!S8-JBB2yaORcAsJh}kWxB2ULS?JwM{!SsG4_w?kdqG43j@>Y`hLNs zT4jjL!(%Uu+M<8bLYIB&khF5oxLym4u8Xm%S-6Ph#SCHmn6j36>g5*20C_;|6*{=2 z1R)&9*i?#}O%tXY7mBf~I0Q~<>6a^XO-&@cfWq4Kfo8Rbk&foQJ9Byb1S0VsR~^OV zn9AdO(SR(aDS;&Kd!b6ws|?b+Jx2})X47s!h-Y0q@wC^^boxrINp8z*P>H^tk43CL zr@rLpo}3%XCx(9jZP5yCqcA{@zsg(b!Om}E_B+;U?aDMKI~LKX#gDiCc)qm&xCDjU zBr@VB?-Q>VzN)u1IrWW6hgY3vq{pvoV=FP=XRw|+j!r7-gz<-cH!;t z%%p#Ce^CCNS|d9FeeNSC!h%8xz;tKvVoN>+H#w<%^f5NJ_Vd)FRUZSoC%R>Ptc=ox zT_pd)r?#O|BO#XI4%sX8qI)Dc`3DVZL?W+2huJFzTSs*F=zR#O&VzqMPuSoMD1rTm zQ{Pi0Ln#kA$p+V*?3@U-K+x{Ro~vrY8a9Z}SBan_i%^!R#R^gzQ?UFbdi~vO7S41B z$+UJ#v*y2}kT(0%?!wzs&oKAzVf{#lQvK3S17H$+!g;#>G=%0FO3RDrl`e*sG4QgG zID8Yml&o2QV*88;nXZyUyhX!C#(_jhdAj0ys7B7W_tOyRoIxZcHI*w7EWdxnv7 zT(Lpd=A8a6R(IRA`TbKh`sb``aBxp|6q;9oIw#or&u(O)jNZJbfk^w|MX|*rL)hWp zZ+5W)=2ba*fP~80MJqfA@h+^fahlZ#-89z3R*L){|1EhdK{&BG1lBb57}?Q_Z@b$_ zLuTrVh9_V$%|2)53gRGB3GUZ)9|Qt?DIf`_aRi+ndQh6+ngc}fyJBE;5miVGbcxL^ z%`m*p$hQRQNbOB|h)LNYrR#omDVd})ZSA;wGh9+PpGo#HpijA}J^pB`AU9>!vV!k` zT~xnP6<2Ld%T&czc~MRYPj|s)A1jvepWtE2k`_t11@U8dQhRJZh^D9b=<*Xe;aWC; znz-ZevBilzDIe6h!)h@Qpx80Rl^+lJSJdc$MHqC&!dI!JTQh`IRqV0MXS2o0>+mTV zy#CcDkzebZK`vZH-3~#Q4(%iX7XeMdZHax7-4$kE!nd&KVZtnOtkScLt0*kS6=O5O z^tqm+>C;C>)G#{dB@rTf%9ATqoX1kCY50!Y=col)a7JO z+ZJ9LaeSq>C59-&4x6EMT;Hv8gN8uqhUgNva}k23*Utlh~Etp!XnB=5X7mO_>UUPCp0r_QQf9Z|3- zdPkUfgtZx)cMb7XPTiWzamtxK33$4n;+0(LIqovfEdOcR$9pYUd zL`Mnpf~IJg+}5fVCk|LGR4lMxl zI-scIovW00eA)%;cHCT%{N}~w#S@Na)78dg;I1`FWzvTo@ZHVfnu>%gZ@9;O=lzk$ z%lWI@Wh5sd2JQ(PPBsG0YeE9=bW0VIU;2FxhtsJnYkOdsz79z3(AC)3!RuBa2`jMc3R5 zx38~d`6p2_wlgn3l{zE2;Xwc08S75|@Z|Z+Bng_X9&8T#O4XKHk1X_fOL$(LMnmI_g+|{4gR#K^@`u&x*e2w(+MY zoEoj)vs08dA{n0t-i}1J30QlhJpVQ6!=7kmF4$vfxLk$rK@au>=qe!W;x6jARpogv#Or!pKeYMQyJw5#$ zOPj_Ti%rw_&Sz4fdmJ`Y=4gaX;m&_w#jFD!k|)E2sD8@zEPiWoxM@gX|F>9L(%^lQ z@xc3A;!s0V7f;^&bNr&=@aE{#gp=b<4`l4+SX3sbY}o;*Bk;MaxeiiVN<#*7<-%!&Fb)q{Cu0*d38xz`gghG3lCp@$`dYWjfI3^r6^UD%hPw(| z)uninqK6@-f~U4sbIA*MFItJEh-0(p)Mh2Q+%P~98$FU3kqqa7#j$$1c}AH`HAWS0 zI&&XkUhZ!)7#LHr3p#{v$|6c?LZx|^Mp;3ugA6;r^ib+RJq#jMk;W6} zpNL3iunv2BUKt<<|ln?r|2tHLwXSPV9j zS*PF4o#W91g7~f$NDSRGahuGke-&M_LBmma;ys&>7_D@BoFA8@QR?;hG7)GNF0$-HYtUG%f!ymJ6 z=_hwwftNd$mz`#-wnNG=On}S;fWx=WT+7Vb;TyQf{pD<2NiPxayllY6D_<=HtyevT1*0|e zwoK%k^R%8jbxvHp_IN)VU55TS$7CS%y!_83bsRzx7Zyb|J@TQ2QLe=H(~rU1kNM!&!J^-L?&k}I zrjxU?o6&Q8=64sgO-m@c15JhIvom6v*W|Dkr&SFxqvIoxPPsKHDt)@w#LwRZMpvyU ziIOW;*)<-1&r)p|*ssjmq9Nb2x$l^BX2d)N6Oa|ltkuv_gDt|hB_m924(VcEr}oKsA&HF+yQEA+r0fj>=XR+(`*uO zaMZ&j|Bdr)3i8hHYVyO7q{}aQLC=4dlCzV?)}h?^^~(D1;$09%b}sTB$$bu}uz!J` zN4y|}Q4-I4!pzNr6?xF|-HJ=k3_s2+T8Cf+4l|(lku>34$&5d;26I= zomQavJno{84Yogg2k_=CdZihc(Q%!4^kDR$Aw8&=Q$-!Eb(wLmD{cMhx_K_bDFnP# zK{p8sD=Va77s^98+rzU}WX;!3LC+^JG7#JYL?yU1BlSC~$1gFSh=pP)$gZR1<935z zM{+=wn-q{|u@_NC3<>AGYOmDsan6q(%g3(_GCI6K0=jCVb%52ZP|H1E3Yw&+7aGK_ zTb6=Q{p*v}VDZw*=qThO?83QVjftKBLXjjZwiHPn8f>vVBf6WNT;92lv-D5n7|XKp zb!biXJBS}})U%ego$sLy##oO;jq46(;!y!AT((9{I@a|WJ_wZqhUJ3{k~gx7OZ;28 zD;5Zu>nz+Sc&xFKM2C2$FcXaO<*{h2NFy?ATD^QuL`E2~w~~cG$LT4H$2-9(Ep9<%4|)^U;ldnWN}c*Y+|^m?-;vN|)&z8{ zrE(dh3Q?BO8oyr2Q%eYO=f81&pKyNvjL;x5-u(NL{PzXX_$7>CEM7{-u@o(Q5u2Li z3H^MJZ#=MNtwyw+SxUXO-IbX}Y66tj=z5N#*Io=;q5%q7S-;5JyT_gU&knq@K z4GF~+2>c#0zk5S>-gV%)_V?#uG5!FLo;x5;xXP_!PX!7Uhm%}IP{WUQAfgKT1)YBp ztcz^GA(>H?af}QGbu;i>1#w>HC1nN=1h!xt)~R zFzMailt=<_FDCXPOM3v#Mu-fV~Q#md%D2KfdLO(a(2rIfnmxL2n=l zjGfcxYHGQ+?bO)9b`#LY*9&34MPZVr`@kob&km(&Ka>k%5+BElIcJ0b)&lSmhfg1-gZg051SXW&nMVGQf36XPEHJ z^)aVg_9w?Ut19y`8K46##~XEq$`TcS-qEK$c}lgg^qWx`Y$oGq$6PU$OH5#euYV@L zRYwR|fxgt)w$KH;0r_}*y1Ds%Ynydfnj9}aD$Hp2z}F~f*lT$q2M^TA8jeT(loC0y zqUBTrKJ6Tvns2-l(XhJiq6sP*yD>wIc)Q;a%M)g+m)grk#tu0A1tpq3fd5RuS*f1@ zjL)ox<@%=w^Op*QdvCm!{S2=tD=h4vyTZGGbIN2v@%w+p7EOa6Z%@~o9Wk}S+`&I~ z`8?f8#DzgUr{WR)WlF7IN9V9Tu{6UfMwG^Qc`ZQ zN`1<@lswrqxidJ|SAT{LACpPkax>87&t0D{K$oUU>y!Vse#dPx>?=~-(kFK5bh=XP z4X^)JU(rKY##bfQ)`8D0Fz_ShNfoVmoq#oppMcg;jTC(K%j&wC8cp5Va`>eTUELw1 zQlT(3ohNp?BjdR=B~>yK{df+z?#U%D9@$wf%k?+DcFet2A5}%_x>?l5F$&XgY%5;g z$?GxK=NR?U*@TLWStL^TC_??tIWqOVUh25siq4#t+dO~C)iW}`y293%>I72!t=Tm8 zJ!W53>EiL$aUjt^?Jkae7Yw?-JO_tNEuYJ!EX%QV%LKkupIaXI+&4u zib-@_wAn!G7#ckJlsyZ&@vW6j7+;&e-G(f%fl(`GO)^y%IHvrOHG{wd6wb@-V zQ-z4WI*`mg%o;P-=jtL$nPS7fP}L-g3+b#~!ui&WW-JWi=saNnxBLbh>bUK?Gki9c z>mtl_?lQe?+-YWFACn((EerCh>*(CL`ab~cKor03AK;${&S22TE6z!Snw+}DGMgCG zCSa$Vjz(;a@i1p2d@7X#UYpEdcu(X^8UX1at~8Sggh?+}ZvxBTEThw-eJjD&4n2GJ zERsPcK$sHAKm;kNwTRNZ;QB}@H5%LaHDFz=xjqJWehd6sCa#2af08D+@&z7t8-6;l znTNCp;w0${v8YHlLEKInK&a6K_mK92rsEAXeMANXu3Ch$B!yTUp=+k}A{;ajERN>6 z(iU?X+JxW6cpP`5es_3~MM0i64|+XJ^ux)(8#FL`axM-=kVrfzb$1IUetMbCl^&AW zElJ6Q93m`pyYxxm)MkEqVgfU^4=F+qS_X9Ii}(mtwvQvBRJlq5Zz%~Z|22I}HL+?; zC4ou;_fi5VG&YshqhCHzfY9yOGN8*^Vt-myPbpBG3|Cg0?B+lXx_I#-C#s;kJn+B+ zXpr|U?w!%r<}WY?NU!<~ZHnM?=$WEelTbrF33fjmi;6|-)*I_V#OC5jh}so8=+L56 zp=YM7SXB8Fmtelj8E0I+&Y@>_uU)(1)YdjP&gHJ`RF)b=GWu8eT0v^h#vPWwbYP_?=H&2L@C{7ic2Z#c#0#t}T;wthp%%It0=V3k5a7GNwea64iI!UHQwPBn&e)6Y{w$sGNeK0gPZZuOdnvQNI`Oa3C} zok5J?mlVZ(vjn<2sM(Y)42uZ||3%IT(#%@rVf99tVp<1j7Ih8_d6KL1bdZ zmLhBH&Q^z4iE~wmi2-9?;IY*(APi8NOwx%mf5C0Gh!rm)Q8cIc;Ac{m%zbJ^gN z*6%)}jut?p8K)V>gmZIa&gsL$7QM5*-ip)y z{*CMPIuSJZEGr%#G#XQcBLQ7sYnO(YWHTq{G`mk3Y{hmBxN4Zy)mJ(!n zvlL#oP>0}B{IUkpGfVNyfMvZ_^sp!^dlGn=frFLK(&A<9(&ZCHlwr%Z%5AY!ncQZ^ z#HE!l0or=!o-q>UAbKmW$g;!$UIs2T&@4qh23Tgm(ju}_o$Y|&<+^g^ih3C+S4fX$ zGMzGR)tLf_O;8|TR<-Sjxqh+mvVsVZSDqIcOxVDBNbUA514yM@*{ku&E3bg2GXNRj zWx_10>liq3k685b^?$kn1ZIfPk^6YVb?O%azk#6q0K-R|qyuJ1f_&tL#R|YVx}J~cAw*M`045l_-5RbRnA=Ip3X?rdk|3h)TRfvG3N+#x?+bd1AxQLo)-kH?3xIUnA*b71!3)fH9^ z&a7qP_c8sJU_nAdfF!QVJ=$i-)!#}2l>~nHB(PlT`r&Iw#c?HpN&;_?1XO(y9qLGZ znPzk zpTP-NO zJ#hF0i25zN#O1r1b+ttsWivTn4@ZN;t86o`H9X?q;~rvGgT{v+JxujfKD^0J5EScX zlfw?>JRP)oPDbf$>@-5Z-e_~4F46kIPvQ~MHgQsjWk<9=4l$?`8Lrt_Z#K80WF$5Y z3DhU+4KOi`)Yu-L4X2%1-lr##{WH%z^H2ZuPp}7NBt{Wxq0<=&+ydlQ6M2)wgv29y zAIA_3UbInrVJ3&8MVf`5gp=Fiz$6Lv9kOWuoPq(LvMw?ShVlF0SRXcO!LTkM7intD zg=O&N3uF3m5&0O%s)i4Qxs)1hS_(%3OW}0QQg|5<87_T3hW#N~1K!hqjtq($ebYfOGva_q2EmCJD0e00S(8$r z1^M#j*Lm7rYm#SPmBC*kZ#nqf>;XhpbRu1e^uT8tL>fS#3}c)#_1I&Nk*CL{cC-0~ zsyTBC3P9M($WE3?KIt9~Z(KdZ1j0`RUK4DFgy!LHn#DvRp%R(oli69YIt)OdF4&-( zgp`@CrC*HIgOLLRuD1mMOmM_7GaSMLw_DM2emL53=ZSK9rpUqe(|%z9;b=beXrd;95w14jN^P%c;9>8|IkAZ4F)}9iee<0 zu;28HGvQF4uYdg?_Yd;!fQYA*#peV5$V{mYym1mhSK|{pS9CZ&f}tLv@t_+KhYzO67ZVWBP_1wYL0bY1J@VSM zYXHj@PWPx~qV|~teg4i}xlLjYLUAYJ?LkBmP6}`**%+e+PR)F1^t}LOvDNU?Z0uws zH{cT}3mbGqF-aJnMPEc6=aZQDi^wt+JrnX#e5)9Sc^Jr>EfGa-e z64ee>lSeplthL&%-#)w3ZnZ;H*$6$-BGCm<;HDHu55^F~P7Z0H zIFHD4-C;nzQr#>`<+lK456b^SS2cM05&Co=CNPrf)&N1UYB9I83+)+t-~dOzr_)u9 zo?~Y2ww#3%J(0GXTSk^jv zdntYy5b-X3L>rgF%lM>gmg1Me%jlQEku&tQ7xb#tnN^KsRUlR@Wqg*&r;N`sco}`m zkFsa4MV>A24l+cGSXxTuv-pTNh8LEX1+O5BN~pbZ*8w#8}2gU_@UoV`dgb#Ozk^6 z-@dW?UAC)Gly-^R0Dosq@X`o;&Z^?*Dq2SqFfA~H?(W^dUjcM%PfTKnf;?BZzWjZp zAjNg+LjuTwL=m+_K#@EZfq<-dsrfPGmOO%`AP{iKtcA?6;;u04kN0kH2ueQcV{8)B z30qzU2YJSR7k*v6#P#ANlV4#HbdWH`adi;0g~UFU_Z>Klk!S+H+WZPPTe1fd9Dc!- zVdagXrMyuDI6&-iLNFun_VibqM>avk_NnHlS4ZaFR;x+#nfr00+&kRu9rV}Nwz#`~ zaIIO}#P-o@ZeRj>_ml4%Uc>DXN)jT7pWV#G^^uc?M=$^2`_W{Gw+P3jVXZkP+(EMLcDfii_yC|$2N4n{-1wh>{@<#Ur4dG4549v+9bu=PZaZV_e8WTcIJ zUF;3}L@cd^?MXD^FhX=_Y5|K@m;_f-C6xt?t|j<}igO56pvi%QmI>c{-a-pxe~HZ2 zZkQ6aBX)y&hoEmU+j3k9c_&^TtTbF$MGq9UTiD^sS%}7U8ATf9l^FVy(LU_aVtEMR zLZU{!o6FeSX0xSh7#%7!2kl?J9L`ojI&634ilg5ZG7>UlmB(mliQYTApZoHM8`pKMfJAC9=S(%nXaEjGr<(W$?1`z(8HB z6bLg7O<);J9?39Dp$sy4hAz~!<7CNg;2;1&8Zb;j6+39;DWbLO6@1WC+De?fy|v6} zL-Yy|IwYI1c`DN4Fu+qrtNGF36ekmPVRqiF-ol%r*;;O!nPbfIlQ!9J;<4x-9>(pa zgA?80FgxRS>b2J4mG0&P7sIG|cyQ3fC&LL34}0+@rq{;J>s@w~T)lCvv+hJ=oFK*o zswT7qfleh>rfemVLCOC?<`ETX${scmUQZ%t)MY9oEXZ1?O@^=>Tv>V(A$7!QBW9wb zfzUw0WN0;xkmU82=JSYNAgSEAGT}pn-%avNQ%wH!BmE9CjfDsqis#v2k~wRQtx1&K zygukOck2Gx?%qM?{8_v~ynJ)LeZk{b!XNbpyN^D0@!IZCOauHDx7YfEK0jy7Y>100 z=sRdq-6WQCxE_4)K_IY7Ex?I3%`hW8Ic4DlxQ;7$RvR%>D46};A!tmh&{0-t2(91| zRR9E^sh%b<$I|NIkgp?hh7Jv!@LMIjQ}TK%><;&OY47~G?LjYTH2uTw{+aD_SFc{* z>^}$t5=$Jb2cIGMiKt=a$~HP@pMUXNqcp)%GZ>Gsa&X}7)^=yGJ7gzNJ*d;@IAc=` z1?5L%_CunxsQL8=I-5OA_Lht3|63r(->iy%Jhi)jYG05!Qg1ds=h(aL?P>9UT6Av9 z@EpRb{jw_lTy>{@TPC+v`7FafErwS%e4JLr6`e`~l?2{;5@6zE&eH2iT30r~l}(^0 zp?QCC%(o_qjmJOn*FXb96_nEeb90q1OXzRJ#bc)lk@P^3wef5h@s!!YfKPdnMI^&z5uOEUn2R%snlGvs9SF)LUg>>7$i^Wps1}3n>sR z4w)icpW5nZf+l))mX%-=7NMB2?NZ{liaB{w1X9I<3wbfD*y1)r_bp%wpo||DV@vTZ zKXXr6=FLI$)-tg4=_0V~l$=FOg|OPB3M5QMB}0pN<8CLVCG=KhbqR?A2x@SG*fqn8 z%e^=TA`1?BtZdcw1O+QAWGaSqIF=+!Er==DGAw%*9IF9vk_L9Xo8~({wjP( z2>n>(Fa5!V@#ba;ewMC3iPBMo3CLrA3sFt@s^A29><6t-BHf5lD(B1>?EgHIQQ9Y} zmL%Fo+u>^YG-YtAOC^Cy0zcdms0<%J-2GQ^UrFH2CIOTlv=+R(~%3Qu7VQ8Q^s`;T7n}1>fK_5kz;?o@a+tKgMZe(qUl*jyl<|kq5 zA|lpLRW9)?*xK5-(VH&hW;*AwZ52`?PbxFD>S9lnOWd>NAV!{xKZnP~xciE&K^ZX_ zW3)Q9hC6sjSEBN&va5y+h)^9}uVaG@s;4G6WnlmU(%_RdNk@o&)4qe+@3IIVC;6Dk z@`F~OvcoX_Lej6A+7Q~J$<%c;o^`CA?udnlm0AR2E8){Y$KzXqnxWUg*L?92-A%(a zAv(=i%*84|P~aRXy8=-Ji&oC3jP?a0r7vN`c8E+>~7*Cng z=p)*wgBkgdM_kM^N{2iUl^A(|S0NMmZf!dGC zvvLI?1%jZ&$p8Td1f>ati~>1Lm^-3^BVNv8=lB_H7sT>5;jYpwAG==W)sj}b#fJnA zaZe`FOw9cBN#-TkxcDI^;Y{iW9F0yiS$QZ{wJh)7>~6W692>(iXt+t@EQNW7dd+w< z{b;&XI(NlxwW6ppl>{mYy!j4#W5t)-P*>$BFu?*uU34t)GXLOq`ypcGkSOT7aIX; zB|5!+(qx6k=V(4xveQHfQ=7`1E11MM06|n&;{vU&7O2H#T$J@=8U7u>Szy2hJm}(< zkcV^)?XsjS|Av{VR22x0W>ESq{z)=rO*T6E5(1|shcY^>Qi`=&w7HDErPbPSTZ%_> z5c`M>-K}N8QOw!xbYZDwkD*YcHb;ay$f$J#f`&cmQ$doAeu3H$ zc?3|!&J0j4|J(4Obo45yypEB01NdGuiEvm5{n{E9fGe+G3PPvuXZttyN0W?rLha41 z{(d)H!#zQ4#0h&6>wYcpH@7!-F7EWBYZ6jwa_CbcEh19SGJ}p8}ltN+vfhYn(q?8U1NVV5E#nt7E zFlKtTegsXgKfscc)|(sSQ7=h{>|gA$r6pv?3O0u6oTj}dR`Z!L+OkZ&G)7sHr}CN} zCD8PSM`WZ&X9J9k@HUB+Rr-_!4y@X-p%SoVkwd!bM%tpbl9|D#kM8mho*MS!x%M4uZqe$Y9gPahk{$%M)?*^!7Im2w z0#8*-wkv_VbnK>fds@+g=ED>(Y#)H@& zm(e-CUZr2WmKz$1SV#G?emTOpHCM(D=8Ibqr*~!akq@FkGI|A@QOb+MTeFl-QNnXP zaBCsO{8Bn)K$dPXg}X2cfeBYkS_WJ9h6<{)?>$ z(iX>6o!Q>mYM(#2&dKN_m#`mBvc9p_9pBs}O6E4fERe37w6M=6|M!3WKRAS!U5Y`_ z0DR``=8G?X|K|SnMhkh0Nbw<(SYG%!Xz~v<0)|9vLkp~Jt7 zAl?p}bjW?@yI&83_NDZS9OF)`Dz=FFF4A>;@%yMZYHhFS28~|Szp(Ximb&a0h;}yTN?=tsi8UfM8Wj}c zy5)vXX<|gdBx4YbQG|7fK{XeHY04bI?mYJkzwiq`^;18EzKdp$YRgAI+Vz#Me1#Q` zaAXqNCyz+z+)*?_Cq|X$7UkY(rSeS=75~nexQmkX6d!5f1kT}^qlG^AxzCYdnNg%_ z+fruuC?eloex{w@O2sm8D|l*3m;>IyEq$b=%z&R-G=Ruxnf0S)^r{OX5a#gp_810= zL`-oRB#T6#UqVFWGe<;kOYoP2S>`Q&Q2el8z$hD^W$k6C7fK&x%bKMN;3K?QZakJv zF4WF|-*pPbQ<{$ zza^_7-ybvm4Zg`Jv(Fh_mYuXJCGqBQjJQ**+gIT-KvM~9pX&IXEE z#Vm#cHzS606GwsEWfzUko_f_eZMx@i<~T4bIx_(BHyj7_cE*Nb-nI>)qSI@?~5BZ;>3v)84)K= zoO6QPXPBeN(+b;20pejY>L>r}@BPn%ZZsG~2y23X+gOUhxHn3=jyGvE9h0kjWeu2` zbX5afM=An>I`~upLd*?h)9K^{c~Ih&Ugq|6q#m@CIg?j@mf#GYG?pTy=z>J}ZSbiV z^%OZp@R3irp&4ZzJoP57C(Bl1Rf?`tn*ju~Kuh*BhuX>sF0)%xgD?j^Y5zdo+=hs^HwOrzcTt zQ8dRZQV;kz*m~I_(q1T`ERPW~NDiGo#r%%425dAe-2}c6h86hk~0YOICE%8$P96E8gd@$O#QY&3iQoo3q_KKK4F z{KH?4lAY#q5G9%GHM899EU!7Mm_~5Li9P726EhtpeJl?hxur#BA#1A2hfffs9>Jt^ zN=Nq35~efobTQCrN)%4?&TobdKV;Fr3MfEhi9;gh8H5*lo+JYih;!x26`p+M3EfEC z+}wQr`R6Hx?1PDs>5<~}H3AVb0DLqsxUy@d?d*Fy7ryze?r;}*H+CSyRGAe$#<}@35K!!d=z(HIf%at_=GbcCZ z@QSZfWZKlF0qWvFBZWrMB5~Ovo<*2lm4se&6oG?)Ni-+bY@pY)Vvuw#V;Gx##5&wl zY!!~lKO#bIdns)ChP&jqCzP0WT^b!LK2?%)^JGi=4m?$Nk zX$R`KS}Qe{^|PixO@Vg{1!}>^yQL@VcGMJjFj-W(002M$Nkl{58 zohk5XV(=p8TQE(+H%Ux!jTORLz2a^$#7qN~RtBazs06>uh7HbGxZX5HpBkPR?wR~FpA02AH9Y zgvfCPAJZYAI;es}U9<7os&zwVQ{E^p+qt7*5u8Qoi|}CscoaA(NCf7lqdx(u>1F-< zguIL_cAm$r_bBj17#__zo5JALRqKw{Pf~!U(}@r$!YhICg?kI|Cr%=h07dkmn+1EH zaSd5NDMBPQ(jppInVk;H;a=>nG*N|Uwz!cx8YjbzbIX3q%lEs>EA8H}n0V!G_a>$m zUL#2J)Ut|9-6?Lfp_V|`^J_;`?T9b|Qx_stn2|nLX-6YWcVNY4TL)TA+eu+!p$Cy% zFbDEV5AtNTL{bbv_)0;hO`gn+5c%0>pCtqENdXja$VQ|r8e^m(fed`4He5sF*%oqI zRv2`)a2l$-TBF=TZN3o+K!E7tvXH4>(9a5aDgqjT2%$1}WrqfDdBk)>g zI7IM)tOhTrCC*vMfm16yg2ZE5n#IWoiAr2XMw~{esPHrf+?6{Vj`Jk9057r_4OC%fj*IqN4Sx|nCsprB(fPP=j+_6a=QHQmQ!3tqW&{3y2u zTuu^2*`zVPxP5bI+8_M*KN}5VuIfv>e|huf&0>;xuANS}ARsYaaR_2e{OxXGca|S{ z-%pul*k1Jq!>q8Db5A^Rpj2X)IDCT(6OV5ke&sN_JT2Z!n_K%PDHjruGcp8o)FXt$ zErjEwFF`=8Y08P;%v}!0@t=sk0~IfMK8W~dfnZTS!QGzD~$PxrisDgSl`x(d4G6l$i z@;kc=5GaK!7EWE*XAMLc^Sij?gJhLB7f#oE^*s^hvMMa?*s-ZP8EtRRNJssk%l-4mxVuUwj{rhm1RbQ;?xY zXYupED+JF&80uFocsly&0P@i<$Lklh^*suNlnUp&zA|s!^?vZOsDIfv9%Q-eFJs}Z z_d73gWX&5JW}Z-q-7@>N4%mCm4^cMbS?zhd2wQ|MR|5Yup& z$}52SGgGR-RC6_S$2ftJ#Ykk-=xsG0+1IP@^XbNKZCcaae{>V5PKOGIuG6>jGz`3r zq8W_rF!tBIbA!Dd@rJqOZMO%*e4N>nFgWWDT$2pJvv{G7`a{Pav)RUXsYn_pev#qS zqls$|`MGc_xjiuL9o!_P#*9E}=BHG$1D_YTU*fQMA5_=ZpMY&V-awt9FX zm(jmZJu202QdBYt^ZOm*%=& zRnk&9+nWTT>^9ReA_H;x24e*4pW$Y|AyZSK_zKOI!wq90?)vi?;v@CGO$ki6;&${P z$g2c-=MRm7P4vRm_HqNh7Wbv!{PO47RCAJ8h)uClLl$p&rqgI~=0_W0WJStgVDQYY zG8Py1#|d&Ah^tj9fLKNmc%IEUmucanlXKxP6c2cEfR?kBG(FoMaWaN>FjhI7Dav7) zh_SfFMAbQ;hdT~BcXqbA6f|K;gQez`r`|FXXWK@g_g&v31A#>SoQ)8#!>OVGdmHdk zJtk+@s!v4}#jmKsQ;!GzJk+PvD_gTF|7?UkJR&f?x7R`?Y9Y+#spD@21*)!j6Tm5} zyZa5xl1=BVo+{zajQWNUbcU)%jkboyr)JP9QTV_%Bpby=isT$OnF!{Y>auYj+gW?5 zJ!v5Tz$GRk7&k?9%&p{l@=;jeE<(%)Rlw5+f@dAr@gEz@Y0)`<5Nr_`1^n8v`2!Pv z?Tn@jR}~`SR(HWNu`44NmPjP;1gvB94OyT2+~;0@{dKOILY;xp0TA+NB0vxzkU{{U zj`IW*c<5JqB6>PXEP^!3LHN?`b@^)JH`Ea872=FR0!~ALPbnP$NG%x6ATX7Rl+g@{ z00#k{k>kXU5ogHw#g7V_83wWi$8v*)YdFL1U}tBqyW2BUGb%<%6A;{Q8Nmmhdf$(% zKemFsr(xU}_r^xywsBHxG!T3gatuHZjggU9Mu0mH$4v65uu{Yr-|5}(Zhi0devb=n zEGMvXq!Hy38axvdMH zfA8wL6IdVbf>*!P6sRfiwosrJe7r4Wt}Cf2@SdSS#dH$UaRdPt%X9nRNp z-|Ax60SkqUgC{(b*yIWyW+U=I-2){E_QkMJd?m=a>5R4iX``iXscP($FBaBHU0+Mn zz!s(xy#~*1be1>w_DA_(Pmad%T@OPAJE*uq8xe)mAQ9yQ+i7_C`!E;I&#FdbE5ez< zd8((xqtUP#G*Bnu3=aO+bvOu%@aZ-jjW}-QbSuT61o@HewL42otqupSj>mB$ETR+V zDLgEi4kA2JY_V#Quy+y>0nPm5)_ZgZ{IRBhegcOG3^DQ`x>Z8z@|5o2k@^e6o!g*-Z4N2*u0Npl+lNG1WYRd5(t{8TFV zb4%5UZ-N3bTkb)sKNhCNP4`@G9v1yw2vo|M=1BMuV|$G&3`G zT6X7r$1VK~?EuSPX|1lcHunp2#aZUJHHlGM;5UeE9a9|hF;6TmkO%W~6?YFZ!>XWW zLmdUn6WjXolV&KzZlY&Grbk{OiAWZ3yQ-|2^b84>c=W&}iXJiuI}i?13a1q-D=XlH zctQiwWP~PYF$f%)|78Lvg{RI#95}?ukmVV5u`X|IZ86G_X%dizFsOBL>ViTbMsZ3p zU895rSVm_x@cE>AQs@QnVbksxW>P3JVljlO1nMFvnXtyVezdor7CAL62c2ba18G#> ziUYH`8ZJFzw;xZOR%Y%OZr*TW%R&Fd@x&#oi}E9Fp$4FZz?{TcBv-ol=5p#@k8dWU z9+IuVa1o=luo6qtRs%(owA1#w9S4uL$|Teo4loL`LObw1BS#*>y|$AW(Z5=wpbyG2 zR+292;zjASyACx4Y6_fc3M^!-Pc_yxay12N3Y_^coSh9Cq}oszrMb? zy4p$N$)Eq*KmYyT|AX`A&!Yix{pLm3DLh}odu?xTudlEF)^GjRr$7B^HrkHM)h04Q zagYQn3Tve~xf5x(X8w+X0{^3l_ec>YZ_4RO^dK&LA%TLRjVJni0=GTM(AG5?Md=l# zU8KUXQ54%01BNsyOzuy#1IG;}n0Wgw?(kF8yGP}RKEaA1OUOCb%Hn7^?4nh}@#Z+{ zqapp`i~oR1IUH&hV+?JrZk&Dghn{ObDVU&nj9(3OsRIti2%>jWxT4GpDfA68+9$~I zD5H^sV-}bykOGB>vTL0tDM<=(L?Jx+3c1Lp*=YUbl}{R4{d}t_a9mPr2MuhKv?Plj z)Eg>NKvf2W3RQ%+stO&^&qW#^Y{$sJmXCt`Y_Q|t7ll?72i+R-DS6H|@NSge%&55= z!rSpS+ZV+3>zk-p7o4TWp%gyNrXbQLkit`c(vde;byaUw#d5IX8sRvNdTB4Y{dlXu-{>>0vEoBuct3R6`;$k-J$&QP8j_!?Z{2y3a(*SbQdO z)o?R2yfWPAUAqJ+Ls%BsyL(*ltwT+LngS0I1!}>^L)2L{sx<{30tyKCsa)Jkgn;6LX`VT| zh1aHimX$od15NO(gutTB;aq-^j_qQ|A{X$W{a(L&5P5MF*%Q@!~ zE+4o61p!*7{>%+_ExzAyHJRgQ;Ie@{_X)LfSf< zJ_>Nngce%yq))j>m9uDijlrvt)g4!LAD?vkp-A;RIn+dCcI;@_-LVs6TgaI`>14=4(a92XFo%P={WR1)s7qW2nBay1s%io1%S;kh7W`h!CpG_ZgY3ks`VZ5{t|j zYhx1am_##h`TbPBiGV5ajnA6fnRAOBA#Zf3X>?tX1F!`1c8Zh!D6fAfD}P-0-2 zG1cY};Wdkn%!cB`fmulGAK2j|^*A<`iyOlwwIBM>hoW)JZ=0n9(FS?B{i@sB)@{+# zBWD9&{pwe>NJ6JGC`e>naB(Ti`o65`6cW$$GN+p%0lKc;mtTDe zC)-LjvdoeRPOvnQkMvt5?5H9~veXGR1!@YMRtnUDkJH*SHC{CZ9zqJhDBvU$UJ;HK z9#Ql@gagI|BfEV0>Pz3afI-6xFMRlifA~kg_{A@>@rO0t+ux(1!_g3jY6uQ4T(|%e z22(!5Q~Z$&=U&qr{>j$h;(Xi}8f zPyW=;KmEQNNjk7B|=3O zqdQ{^d$)IPzit>K{KIilj$lD7Uy#P6*tx^2`SGX`4faR<-KFL^Jj~`Le7wkEKm)c9 z-V#@Ka_q^A7_|%AkMWGipN<){{DMN7;LwK@n0R<};-E@j>qIgTmtIzxd9A`R>#VcC zc?v-DxrOPYx#|6WpDts=L*J1>cNuX`p{pV~qMsUmRZA6761O=uP%U`?$T(tqrsX3% z*}crk{mvy-jXi?Ge7aQ)Ka&5QNznLI&nj|UY;-}WL8R*O*;fG0(n=|OOf^3AC;FOj z+RkYQkg3DY%VO^~5@qro-0c@T&wf)v$R zWRV+c31H5u4OUpe@JXDr+TOr0(_Gz!gBw%?ABM4Hhnrq&xpVHn{jdL<Rz?m0qNkoZ|N5ox z;@z9o$+x+y*hz8wA^k3-lOTOPe=O_o^|PixO@W7n0=3}dVd<$F&zb@c0|kUXkiF}n zz-}7B2P_f0-RI^qw9E3TU%R$ErSce%orBxV;}pN_5dPE4ftDc;Cx=r z!J;T_gyLxJI6-*Ud13wrZ(h!OrNJ)}$e|;Guu6dE6UJES660!AETy@o#<0zx8H6kC zrS;ZQ6FEeZiy|=shejhT3ybRo9WR7Sv>ne!!@9)wT=*}=b=?CE5lqNue4?hKAVlrA z3>qfKS!e`vbqj_9d4YzrJ1I2VX=0kqjj_fg*}iq95w^n4n$-vj!)0rU-HSspIrAhO zKvpkG>qEuv`$2E&yqbN7HZ%&>9Il!;94t>VsJQHZz?oN_nWqjqgN9Q-PZb3?6Q(!$ z4by|{j_7W7S^W4p5Y~8B{i|Q;(Ah}!s<&iEo2GqyPz5;w#Wsw<>(QL=&6J9Ohnla+ zekk!+uZtkx4-nm1`bqvnucTDy5h1AAQX)Dhk^8A-ZXO`$bPcT^_mRI3<53t`jdl|U zM_f>gLx*UXwq3*?K{3f1Wt2o2&X2Zl?cj+@iX-coDlIY-^3Jr*b2`WB1oZ@C$^PJh zUo|2FB+!6jYSiiyG=asD6x}G|Oy(E9eF5>uXpB(X;8GYqK|SJ(M1&n$%%R(k2m|2= zBa4BF4hXMWJV9NW!U#TCa~VyfYdEBfEI_0ia+MNAbk$mP!gVkRhSXr!^w8l}4BU*f?y2V6}0%S=ou}w;Har42I!YzDrAkB{p)=}hDxIA^x zFBv9OI^y=U6?8+!MQ9Fjtj^Mgxm@0*(-B{d#u-kvT4Au<$%@>hjr<4@u82jA_!6-L zFB~L0x<&FEn1<q%+!N)t_2Q>yY1>Q{*fR7b6N2_}X zCnUzhjllf9-~IiI7cb&Kj!Q#c`qoS9s~9KuFhYiz(?%|<>;zCZYbKVWZ+ zCG%sCJ@)j|PoFun<$4ypp+0mvZRCQ_(?K=-Fm`Z?7`#}%%gwDj-EAa1&8F8VT&z&w z!_nU*?Co>Sp@Y~5*KfJFH4x1R#1O(QzCplI2&|Z}e4JHoZMJb6=W%aL+{=xggB)R! zVsZ^X=UDi}cghS6nt1#6rQY8D1@~)F(SGd7_dWeXA70tSHUW_Y2Y;~JSl>{q0;`^2 z$U7gf&v^rM?*2?m2o=+);m|a=YWQ{eM6KdiWaNg_?3(CGx|QA} z!Y+$mBU1Iy0sA$)>k${9uk|u2UX_0#%PZ2#_}{JKNF3 zb)Xax{j5^n5Y*8OG(p3uKDC|ph>NK0GP4UaFr20n`eAE=yud7yayTB^u03G`Ju$dx z#1rSH3WDh0aZxyvssw>HeNOLpQPZI4!cBkHRef(Z!Z;$Z_f}&^qz_=ikKFS;#uO12 z5q*<7%OyDxf+zumiEILiiOvkFC~L@9yk01Qh}OR#9V->!=)fl;)WugIQ-rT1l1&dQ zhM1Og=t>!V$T4}cBI}!9APf-5&J8JcYI9t{a!*;P0p=QcX%7}O4tj!kHkWk>DK~Yn zNTESvSzc7eqdZ+&UteBY@0mk1ID+*J!)v01gW5@yPjc6##;8nDNNl!(l*?RD^f>sP zsEdWU{MIcTrvwdg%HiXU#lox>sjZ51i^#anK%KipYfY9SIyqpZ<%kpvB8 z-r^Q_i)B~4qQdDIutboOA^&nFIs2n~^sp>mb*L#&Q{bVaz=;Vym^Y8r_>;=d)ODJSSZ6-g<(^lWMGQ>3HI>tiG_jGKT-b&y}6V=F$j zNP)btbbtD%e~LmcKsb^@3-{%hUpCDxpotE$+;BH1%=Sw~Dr_?%#Lj-tGn-f3}r}Glfv#<)G5`kA-=D}ZjUd!`CkQqm?R`6;8 z8qB=HbR!_b9tG#}t#&6t(H52qU2E)~)!C!M{{T@=&m7LZ6OOp(0W7I~$G(2?;#XdL z(Koh>9B+Mnjt|w<1Q{kSY09AeBnB88zYhr>5bNg72&KXr{(A_5{!F4y2Z)A4Iw>@YUVyD<7oj+FIpC!q3G@*u;6{W* z;uKU!3P=s40wqcF!W(9oSLhU_Ey7_Z3^+0f)y#7g&Pk={HqL`~Fb3y+JDLXO zM-xd|1b;#HxiBPg5u8Qo8W3M~2GHXdULmOy)kkS&m99(O&vQ|~97@-aP)WfGqKP*1_(5rQ+Q@w)2-t?u{*YH+qP}nwr$(CZM&0nY#SYQxbuGhwa?Z%U#sS< zQTG@nh9$BrORYqyeSf{l?J~Zx0TBeTWwn54AuK4%n?e*>KsKp7FAX$Kt%jL?WG)11 z{*lfQCsD2l1_1*a6~qBN$Q6b<#Uw;I7jTdYJeqvq)m2Q#3z;MvFW#q=V?)3kcSmA{ z_`=iI-12iFqv=3}TGUhNCpr?JLSPI=$B7^ZAcK%U(Xd!LDBQ5}l*lORjl^87S%%ET z@_2omj}JAY7_YF~m5njS$M(N8tvW>2_?TG3;8$D|T*ZrTS!6drte0xa1VygU)ch){ zigaC?I&=xSD-Kk^??qm+^Wcll%_i!J-~j7zdVkhpUSsbv42Tk6b=CndW2?5#8h2aN8?5P;YYQdeb^JisKrpP0%n`@Rv#e`@<8 z0$%96bza|2z3elZ^>?jan_Y8HUbSVz4~O_EwQyfv9F(5=RvhGH?(WrywTA2es}qEU z0l!~6nsxaHyrw7`Py&nxf`YG)u^ZqKn6@vQqRDPL6XLrs7vQ+Tte#b^(zCS7Cd+uZt}2U2^OeO z&^TJg+85~;Pt2zWVkN3pppc;95y2jF)K$ZGfjI$#i$OnulgIP);vLR_Y!v@o(v3(^ ze}{lK^^$x9`0H)3KwD&QwrwJ!ga}!X-bubd+|@^Pzum(N#8BWN1nj-8UwV@c6!YDY z8TP{3XNgNP1BYJ*H^D|skV&yn3XgCkR8$di2Dh;71DhU)s_>qEA(qIlO7I^&l zYoY>zo4~eNh=9f&!sL%k78Ik%9VFUq0)++9OhSP$?SP4+S#Wr<&|an3ChZFXBpl;_ z5)PdeG1J6C6XlAKZK3HHVF=higL^Wy)yXXT&~5c!m}GQkXtEyLroTEYBOA&B(SL2u zL}HccV+e-mQaCXAQx1fusSLhl6w+pvSL6<=6BORXm{}vIm1Q%88$2Zy7BP!GjXyXX zEb2T2HCUp`Ar>Vca-+Nr(Z9?hXOq6#8%Q1Ge3s@zGjF~e zDggD$bWb-n4`qD{!4YK3&RM30fyD%<8N#%=lcoP8@>qh)p{uk;xuiMyCh;>vo^XK? zEy7aMPUfMCm}oxO1=j=w@l%aqJ0TZ647xb7XF4ZCqiy!dM=v6PN;C~D5(ma4p?8ry z9YE`nA_F7?<5)EA5jrZg4O^ez)^F6DjDqq*S7?g|AU9dTE zha=sc3lkV<&kT#MR<5WBFB>?>u@4gpCG=J^lQ`kwb~Xu~IoX;~pQG8u(D|!VL!9tY zgpy3iSYn`(=Liml9`eFhb+B{TP{%Cia{U{{z>%lLxJ4@D=$~=7KPt$ zAO;X7iIJw^MTHp{sYniI&T{|s_LRNmNAxAY8Z4spde8i8BJvLe72d&U^U4Xe zw}Kd3eghmKzc7A!nUCmu2&Moiu=67Cq_H!}4V#i_3ne=kHQab$a=Zo_G-viUk(vmJgwBaNhx6DN;A1xS-|T_idjZ?<~k z`eB}E37%$syk_#Lj1TpbLW>AR(Vqd_&X6?>(ctYbIOiaPX`DD-JD=U%eviwOx?8q% zhIGM(gZ9|SRZBW;Y$!a{0-zHv7L@bkk3y`{NaBzV6tlD&?nu{~|JWd9@j$IR$BV8K zv5K+*VHsdW^MKX`!!Wdf+N4jmd=4tYTu`*6svJmC_%Ew3v3}Yp{G;B#>Zdug{->MU zjBDh*`74PRPd7R*?`kX6^5_VJK-LnbLj+pMGsvybiCqN>fop<}flf(a&1F`Hlzf-B z&{VcrMUv3^_sPiSn2$V8k!^~vV`SKi- zsKKrY?xUv79+p&S=Ia0`FwwZ%J&tnJB?G)W&j=BL>@u1)NsGP@VCt38$}_m1L0%MrP>0b4_#b4};I9?!;*<_otlRtVQn#tSt%*|Fd6a8yY4m2OA97xyP++R- zFk+$%D`nF;X(Ig2jjxzaf?8^{F`&e<6i6@M+~xORmq-t&q?Wg^EG6KO&IE>s>O6qhyh$#sYyN@F->{bcjk5A|Ven zUMG$Y5q>5_)ZUt~3paEL9>#P;*LX@s&|W0O#qwR%L}XAt=#{Jr$#!{A+}Y_*?S;$^ z=Z8Y`m4%)dl8c;0ur)Fs`wB;OQ+SgMdGtn%mA`6Y;f=VH5(LBl2_Q9I5`{(#kS7{o zoe9tPxD|k5F?1C_JLL`-kxAWC0MD(_H*exmXc<@s^)@~cEWv}~Hb*qYir>^P>=qa+0McBPzyjwnfb$Pz7>*Rl;9wgxQ^J1$jV%ZziUbxj$MJ5tNx~OqhNjNT@ONEYg7O)X z)OFUEBN3h(z-hb(Yoi3EQVr;UK!7?Ro+i{$lElf;i1dqpKp`EA&___lz@$caY73m9 zMll(#eQD~dS!}p_L)LD$$qm`L)J6mDHqv=QA-2pU-T#z*X_{YPyEu2xYnXKl!iiW$ z?|}w?+?cEAu(r@=kcjlPIl}u-Nhn$L=9&eXcYD|S=H{7S1o5w$BdJ6^48E>}ADy_6 z6r_rhPELm2rbWEh#rkjJ-0!hJW1e-n=DML?eTRH+6Nhb22n4m2f=eCcd8gW4G#6bL z=Km=t_Wzp~X^X63+5GpK1;PLqB`h){C=z47Po44#+MGW5acRl=F8Ys(Db#f!2#3gS zH0w;_DGKzrFy|9>PjrJLh(Fa6$J)-^>=#6&YN>k&K~}v=&B0?K3tvbhYGnA;-vqh= zzUYH+rB(%33nA5@u+FC@epDDMD5o^K-vm_!q8eht8kT@Mkr2*d0_?DaVk*flQ2i9U zGk~O^aR#2^iR401ZdFHNDpN`lGhM9~&C0Cku^=*a1{agBu0s4x4P<2@YY=AA^vYCSHSSJSDWK^{y!N3;#&{@t{B2eP;{>=_#y4xKqrm?4ue4*L;(&`y9xy2qAyr9QuCA%yT>Tt3ENc%_t8>K;o1t@HyH(A7TAi?)c zh^aJBvWx}ZI?b?FTTtoH@xfNvaZcp5gVELPj+W<<%}Cdw79pNAJNBk5@ioRjyDgeS zs1kX&x-CaqpJ0L=hZtWHaVP2bkv18e5O&_;L#)18XbwEtXYxfq%$FFOfyE)P{w>R_ zfaqjL$7r;6E;|T6O{}o3(q9gf_s6UCx7#?5`ycDIa0$1uUbV-hN6H4Vc#))KLLRtM zi5&Yc!YCzvfBs`k78HLN6CM{`HDVp*Jr-pF{LLL&y9}@Kn&+J?{pES@R&YFN|3Cho z(E4ojGeXPby8ANS+l8*HXyf?|x*dV*%2<-1rapP7?~rh>7_v7S6BZ$?CFkY^4m?qt#4S0k{x2WbB?Qj>r+y zRhI(12fX5!U^e%(IW$##)U(M{NK#xmSdwOf=4z!s49u%zy5WjqIx1FVX4XmQ!-$}>CRUwl){Y`STERwuwB(jjGFz)NN_jr1L7C4~%k7`d}p!U!aRYUo6B0QElL>_s>f2}Mqm z4CV?+$VFoC6oP`)58z0PXP7Rl3u8HEL`UUK!k9Fkt`rT_K>gen0 zLG={$E;}S7unJ|39mvuXoFZ`RC4Bl zNJYB8`-qY%c>p-@hzPLg2rU(z8=ZTQ*!$eOFa~!bSw)=kqZfeEp^1X{Y5|)WARR)B zDStLBW}PPGvr^B4PN?8prZJaNQP%eN4Q18f9I_ht~5L zuT1C(^u}>UC5rG7vjyd~oIru4l=rn&Ydr+2tOidcN;hWl_VEirYcbax)W$_?)J9k^IYLTGPkGB zuTMq)ZuTA{SaH!SQcJBP<8ldMR9+psGPIoNArxiwl9r#a);JXM*n90P*6ld!aEhOS zeVl^vqus*8o|eu$f|#Gk<~@P*-jEjs0>%V)suw^3q(6rJukk|Y<^LVQ%-}!LkK%0D z%X&bv)=nJEX@>`$)f^GW5AazV)(^-ReWf2dE%}YU-wgP2{7WC?taSb#75XLmsGrgY zm~-501$#r}TN|GdrryfRcg|&$%U8E^6fRa?!Tce$vhCz z!J*m>XLoPH)f;!#GH7h>;2GH3nGu6wvS5;0Ga4Zc4I9gHG}(B~(&P_tJMrR&Yf{P( z#-SyZN~Z1Q5d#)S#+0;WS`~rQK)Ie1?3Nm}Jp=id$41;Z`LQv~)z$JZ$$-Ok^f;ZS z*XG{!Ks8rN1X4#dX`Oa$Gd#O4At=C$m7T&rUeHjo$!4LIl`?+|w1SEPjWA|K^X-*N zW}Gj-R~SGn>voyTf}9G#{XMAUfthzNj%t^ivR z)pZ3ozWLoLoDM?Lzuc?CfZq}yZl;(TcK>QsSJX&OZ&J{{h2!WriOE7L4@F(b1lTTo z7E#LRh+}BJf*DQ^y2X(XC#%afP!3tEMlFgXU2q9jjyrC`OpRYef}3aqf(hAQvdcDm z)ehY7 z!_@nCMHtDk&sMaTt4`Xz$8im(P%*1fUUvE1wWi-&EyIZ0Tz++>{3oYe7_Nfz_Wu-^ z3|Hfb5vEx)wKC>4C=#|Cxy2vJA=opdN-B~@5;N=+qYfgVi#-NJX=yy^dA^4_|61qG zqbAqb*T6oj&+~f0Cqm9rcH)8qM=aiiWOsXWZ&OS)jAlBdCS7mRPD=>YGh^H=n(C+# zvqeiNy+&yxxBA^rt(AzXND+YK8Ci4EvwR4cCwr+DaEOj2zTV$|B<#*}OnC(x<```f zt*YO;x+^LcD$dk(5EvTjYTA#t*C|p;bGc@-tr`7K4WMcd)X#)R}>$1zF0gElRv~HiK{_xoN~4 zcN2bS0FQ(L&wDPaeb=AY9&@%eHg8qSQc#z?K`U2`dovrA_;1Yn5k)KyF*HrN`SzTG zHX~yXl468v2mF^PEIC`(--&-|<%^o*Rl#)G+5U=eTQekdRqp={CB{ShDZU+-(0_Pz zH{A9e(SP#LKjjJke^1(PL|wE)&RFX0>`)-L?Vt&8A#Gw*VvhO;*q$eFH&lV^{tSlILwiC31|SMlrhV=^dy&$K>$?R* z!jiFpotj16wx&sS)(J1FF&vCJ$qT3d9i&Y5;|o|c;fYe*0b&Ofv9KBxuJ1>Hi9oI$ z3(3)kdKtAT6NP4CXbw)2c=eHu(Q65dyg|AxIq1H+t}B{oj);Z?JYaXsHs?B!+O)}T zhJv<9s=MR-rpQoLRcwu|BvJ;u;AaKD5d`*owt?|%LNhU8Jm~NannkXUVfyW=$;*Xt z8$l*HxbkC`gvBTFlG!efdQ+ASd@mPxN?sCumFVfPhxVSiL2 zGE(rnkT^>8-;>aa5fV`V*Wjg_fUtSUU*`hFfdByab4tJh&mo858y`K z#sw+V#e<_radPOSV(XfE*|Ty3LDpnl9K)km!bdtAI>Fh=X+t%gt0HOEp4ewlpO%@N zDgY}I!=OAi;&e7?9nKJ#ib4SE;yx)=YRTv(kRXLn&d3^v9ly>dq&fE_qLvzGz!fKA z!tb!xjrw+*gCB0qlL7d=youFXTi9cwY&IpZyyN+wKAI!&re-A*&Hl_abhOwux7}V{ zi3*cbL)?rsN;#I;WOD1dZA;gq{{zJ08iy2(*D~$WCohJK!UmFJoR6w>3Dl&DAQqnw zFiO_1@2LzpcOH~8G>~lU?93W1K4LzH(cVDK@oE6vY4i-A!`nMp-K&lY)yyvPl~e>) z3;!o=%Kj&9R&|$))%{5B1p#L9WjaA(P_l54ev7EFYVaKrAA<;f4T&`Ihs(BL8MhmO z+8U#f>Z^*5p^+cx-v|A}Q|O?+ai0bSU&sF6{5?+lD@oldaMZI#yD&p$pl$WdTY9>> z$4-1p(1Ebi;N_#vJb7L*`O=8cPKcrIU2fbT8>@X!KMY&=9oeu$}`)=Q>`!_wB;@yum_VY>q+qDj9*$T;dpI!=eFkA_Wj3}nbsTvrY1zRK% zSQ7GL+3bF$-go~e+TJn+!Vf5WVwBQ|W!4fMlcst_%lkQ)KW7xDQr5sQo%{0LH-xo- zp6)VrPuKvd7#CGtPTaF~?@?j5Ad%Axzl@)fSud3VLKH*sM(jk$3~9;$U>s^b&)?Yk zWHCqDc5{f0on2cRXUg4CEw0Wfd5@MfuYo+UevdE)zw>s-ctzB-e17W)U2qe)7pzYS z`ZIUJ#uH=g_u-|hy2eLRdIUQCx8*$F*k6R&P3a;Q(9r99$tyS6Uhxl6GrS$}RS7ENQXdiU$O{rgJ#n|w8>Ll6{+MLNa=Z62{>SY*kTN^e2vY>3Xm9eB1d z1`l=O9Ro`O1p|EIEOQ>oO{dERYJG6E@4409?{7ANCW)T8C1=!lO3@DfzeW77*6#~- zBxj3Ah-h@LpaBx*X!@U}X?&C#?28t{*Foft1b<5+{4VMWm4x^=GB=f*Iw&yV&KT2> z#E}E=+ZYg;5WAU+fa5H}Yy==6BZOmr)?$ImA7uy#m;}3ts%02fuWRUrrAV&EKnnjV z1Z2h`iT5^fORmE0VwK0*Aam@%%>6l>#*Sax_v~KTkqrOdwQhI+zP^;sYwqMZXhX~K zc?>T+etzz*?|G(T9@8^EI7&u5#v1Qa6-yuER*%&)G0}#1zvuXr^xVd{-jJL;AiJQa zF|7%D3$K4fOl+zE`YWK$js={_;k4Epo8kt!KC!Ve2AS_|SK4WKoO8_5Tm;MgHNE>e zCcW#AbV$iLKtNzQ6eQmDP6uI0XLvdCpG$Mc@jr~yy$8k$%nF*v2Nm&IG1qZ`Z9wiH z9~qug<<9z-xV_zNCg0{!%j42>*59=y{&SWn61?x^`45&;N-605l*)Vl&$;g;K*(?V z4#$~B#IGG6B5iH#pN>R+*w}Fl+Bp9muEt}omXvgVu z%vGrZ;RLx9GOmH6lZZ5mI1gRFKf**LU*~h9{u7H_-RJ7|MUnXA@)PomfRFXY!e;=a z5?fUSD@c*)0*66t2-R>;8RK88HF`xm26@?%fU4NJ<6Yz4419O`Y_mM?yD&Y0)Z`xK zQjv(@hVW6~f?zIn=!ila#Hf%B zmB*nPe?1Zn@BIifzDHVA&UVFhCmj6ILPj9UvJMT}JKS-E>;iG|o!zM^-l%^>Eg`YuS(@o?eYLkd(gQzsHKiv$ zW{Jl6@4W0X_*v^aq#v|%RD!T%)L?9z%Ito7_^UvT2+j=Hs2x%y13$la>ZM>*c5(Ia zS4DS!_>hrBXapMro91_->q-BPTt5b^&C+VRO{cLB*m2zw&iYUT+QJ-t;gl@Mm*Si4!e&2V$y?IWu zO?Nm*a>$2H6M~h?HdeZ|7K98_=JHAfrvZa|8ixBl5LthMls)S%{h9tvRF01UF7K zXKSb1-y0+&l4br*bRD)sq4>c~a;N2$oU`KoNJro4k!7NEa%fN}>nL|^_R`pk52 ziUUz}_R^gjD=zL<&LAeaNIS+|nT{oS5gFXb5*6m{UF@tKuXqPpum5#2P0#(B-W;|S z0QD{6=<1SESL4F>H}m^--2dZnf_pB9Q&@D?3~1@k(4b$WijZ+p!*8BWBW^8Pm&4Rm z#>H~nI57#1b=m))1rS`?mcyyv?}r&TODnRD=LV;T@(T`3g5)f?l047D$kQ`Ygw22_ z9+Smah0uetC+I?%fK$?_oP48Y0>;2&Rx)hWv!BuKb&*1z2lCpOBHR+ehf42owu1t@ zu5lSU3ywt}LXm1rz2so2i-5N)Qrl^LO-=rnv*ct9%*5{9 z-u2@%7{{1bq)AGMXj_LPQ;jV)z>>9w--3o@^KVNQ#@I}gitxMqLxa+rK=zzQhG-nC z`vGGe}pb{{nam<_=wT6&?;u;Mk6d=Nis8I%k033ia(YRu5@4#PEW3~IoI^7YIV4Cz5%7QBn)00g*y$8^g;+h=z$FP_4fKVB9_U_>9}bWBighiv zc;EsCgvd*W#0`UIgq8$O ztoYU`B*J*1?%L!2zEtaezV_&r$S5aaACM%6=pIZz1rtsNH3yvwqXq5U9cOJ;j1yi%hqFb|}~_Rbd^WV&}6=Bu1}WpBE{MbSE?3F5|{C5oxI`;V*2ZZ91gzsGpr~wvkOk0Jq~xD z2T$TV*wG%6|JzW`R2`a&$c3N+EFLV2j)m=Y5rq=}P6EgT&cAhaD(o0NGDsIL7eTqO zb*#w*wmZHYqT!`YiaR2D)A>{IDXCRDminP8=TG$ORhrv!-qj$gGR{M88 zG`f%JBiTuENJ%+wit;=kK#K)?y891b=P0laWUPXMZB#I5SYT<^ji+g1S4mr!evNXP z+Eto;Y1UwX&kTROYBv9n99#g{K(&BJ2Kw2cYPas*q+;+ZV;*@IYD9B`Oo?a>CC%3a zuY&ab45C4EMM0~$2arCAh|8#enI;&Gtjco%lIhX*xy6A8U?u_q0wD#o{bX$(--ezC z6Sz@^aKJ=z>;_UC5VY3=NiLv_B=EMjEluN+FmP9=%hp>F>v)TZ+WLq@HM%?2t%MZ) zR0f$uwuZGSD=ltxrKQ)gUww?@2Je(ob|$%HL^;j+O(&XL64ZnPz$XGESWfb)CGV_w zZ%`}b4C*TV%TSXz)BGs^%k?28ubd=h55EaDtZVG(1gqLkvCc$^eXaGmfLZZWh7myoaGq zZ(l66aVz?|+|%2P0tUg(J|O4VHIfOVGZkyST1g8F@>;chjXRgVSM9@MKdRE{Flt$~ zT%TuUUgt2pg>gayd+dXe1{0leoqNrJ$i-=rA-+h$86_K-4i%h_R^bqP#5nXm#&)SoU@UifBh_U*!kVUhETMDs|=XvSZ z__0%;jxKDB_gmW`+m>WGQiu0D?-K0K>ZXP}@3S0=Tb#IKHcqW#`VX;9TNkomI*LW*953HaH>ye%X=++Z2kKQ9>I7(Jx7XhJ?~Z73)SRukYTxb#mRkzK0jB(?o-A4aCk1uL_`|Br(f@Dxt=~ zmeQRn5cVrLbP;+%kt(975G(v47*cVBV2#`VR)v&VLDK}GeFCgiJmJNKk&&Vu$O1D! zn`Jd~S9E&>ltI<7ByvQkT$g&59@Kjo@F>|y1wEGTUXVw!`1s@|$%haSM_5xOc4Gf9 zz#-zpHGNUo?|oG7r{oT_4Oe?_TISUnQKvXt-)hIg3Py3wCI)|E+0Nn}sSZ41 z8Pk6^-tEJn8Dnl@KEDC<&HQDuI06de%l9sSRG%MHveAFdjq(;JtJTks1O?ubJGwn_ z)=a?0`YQ?pz-%C%HM^ql$doiR_6M9*y=~{;gp;D8YmCXfoh?Ruo;TRn?bs9VJ!T;Y z87_lN)_gGc=-}qp7hO`cS~pxcB%~N!33N^{t?R~Jvb!;(FEKW3=E0qaHeQ|d2xF;0 zm^!gs0Syi;rGwK|U&O$QZl~9=yZ?*(_eK5JMZ5odJO9&C{)q9V&TBMsqU(Z_h6v{$ zVRa$R)`(ArD2Ad(LUHc|3nK&l;90h;Aw{fcdz851JsMFK5bx0I=8E}_;KjSvTYutd z$F%m=&Zi^i=OquL-fF7=A-+fU6lwptMdz(2Q0ay+4<}9-vbE8WX?I0;u_yG6A3w;@ zA7z%HYeY_|v}{Q;2S&qo^h`Mr$~)1a&^U~3f{O-nHlI%mL`6Jc_~UYbguiU}6Gyf5JJuCVsLj;snXosoA_UM;%~extR`$`gaRs{h(7i~ z5Jf&!23I4Dc)TKG5;`xeswP`5bQ`|zKG6vz7PwHTiy%^Y1W+a zI6##_HY*A%fU^S+M)Q?HYfB~A#s(36l06|tIWZ<4+ej5YbYav)fa5+bwGq;WX|(j7 z59qMkl3cUNQT8^Grq_3|j`OuP-kdCRoGOm7%`Z@5(LeJ^(MnM{oC4cLEQ|4iLV>V= zXkw*>2FI9|mLgP7RN#N$(4;wY700mWs37Qn6#5F=HL;43UM5q{9`=rcA)L$t%Ta4A zke5|@B4~m=P)DJrDb`?4KKx3o&+WL1{%6nU0Ye>F-LAQMfFG05bJxQgT9a(GM#B9y z$WK@KYfw|=)^VSH>RWA?ztW91$a!O<6_B4S#ZSpabMZ2I_w+F^nCc`=b)9J^N-^XH zJ_byxjgcZg$NR8S?{^$|>K7JF_WaK;TGoToj-u)ANqteS_1Sy-zqG6gvQ3ZgWc-iZ z-GBJ{eRsd#^VW5=E(X>t%`JD|{(xgpZsiq%f-Due%c?+aT)Qb_psfExd4&Iv!y&h< zJ0)xEkQ=FisMX_fF;d4FPaJO3H$fpq+8a!fv=;?N{!8mA_f;MmTWU-dDI@ab>sRqkuKtSj~pv6RO%NWn*vp`zVvE`nU; z!J-dUF1V5mzl#SSq6N*z;D87{ykSijml^K}*B-hmcAy)DO)DN1rh4_!7Y&g<4o~{suYFd4&;xtt55$`z(M`|_ zJ_3*4C@Mtu-f_YX2G**Cfu7u}%b)tT6>N_Ahe zXll6xfYD?SSpZnULS5MEL`{Z@pP$6O$N5XNevRRmi;jg zkANa$i6S}z1{Tom^TA|6R13h~Z(Y^vcD?-N835&@i?e4!25-cZXj!*cQoi1`y?xoD zZ85mDv%PPnK@_3*{NDSin7#xoM{KhyY=V%}OU^|<)}Dsatm?4ZAVIpIGRean`HaZ2 z6(?S%O9p}dC(i3q&Z@>Ga?EnT*CcQIw|cN*vs}T6;@iCWuyVf}D&5Jn$#`ud9F4)Kol!84H1peV%Zr%V9tD`1#~! z4pC9bY`oV5GE{c)tZ<)Z=!2xui&0ZglNBE60oN~8|J^YNk8hlkk^lC;Il4LDK zi0vEy?zq+sVeATD*}%0DUnLwlGZs%YtM11@waQXHSFc?5>C~c;TSNhL{!3BFKPV=v zXNB4u?`pcm7N(o5>x6Wp>?;5rM%3z-5Yb$Mrd@DDVO@PX!e2A!>WjoKWq8Td8OM zmq)^P*IH*CLckGdk2GqR)g= zyk{A5r~+#f#zq}>P>*oo#)y+FzIpSx)Fy0&Xy;W6mq;^(Y99|+ zo6+zsfdheWrP6ZVH<0kM{6ENck%F3`x+%#an}vi|uJ>D@o+*!oj&-H*!-jD#NlKG~ zgdlhtpg}Df(SX@dU(&KQmPx!LPj%h+B2(NhI;RH&vFz|55-6MkL#kva4*%g(Z^V8$bCviz6Q9v$bCzq+m$>&26Ln`x=HPieM*X={pt?&gz|k0~5M)byGZe z&(H1l9vTv-I9rR1(RhSZvBWb5}4>JT#RK?+4^j1l7YiYMQ4j@&hn8{PHHp zTUaHp~nB{)9x#K&$e?iiiZEa^vfv zK+S;LI^DITdG9bu9DqPdR!2m4yBnh%3Icn3dUM$43d3#~*6-Qe|LfH6d1>O&Znv+u zt1GB);O2{V8M~RtOzO5~FR|r)s=dFs1g*$+Fr+x0>T~%of;=uEXz}6C#PF1wGDT=7 zaDBS9nw?3d$VR0Ic1yoh((C-f`uk+}<8t2bnSNo~qV4W8@Yc#Q)8<}vH|e)sdqOIK znSzt3jZoqV(Ax9xKR!MMIYH}S9G*(7QVA7YQB^V8)(9Svib4~XJxMmDfwX~wF=(-h zs%5LLqG?t5Xr?JgR3=BBrN3A@JIKN!yHX-lAp>|*FjWKJ?~5y9mUO9RDAO`Z4LXt< z3XSBnYt;r?!gxJF#35%++1yeDXXi38w3`Sz_35LaI7tM47%ytE3#~m&@gF_^D)B!f zXPwQLdi^HgT4PB?R1B!MAXZnMw&|&BE%Uam3S|HO*9A>@A^H>i9&nM^Xw}{6XuW=g z9x zo||F+*$-eg8xQ*Sq#hOga9BHGLf#bR^-vn~-1k7?w_#;xo4eYXOXtSk$_z@qspx5H z?+u@C^wIDtEvtvXln!LGdKNyKrh2R|H4%8>-&ZnHz(F%*S-OCrTxvKxIuh z3*cIv<>1(pRaV*AovQWvP++s3?VgCM(d7k+{%1MsY$5 z!=dq^Ng{J&pU1K`cv$&FToyzUGBqSoUaOWoMY9G92428CF$gTEZCWmx zUMB~LA=PWL{^9M6nhK(t%X(!R5Fqbv_J?AKa3&|!Tjip5OVD9!i|ADqgDe=(k_{zy zblmV|{J2%g&wxV!f~^8ALJ@ad62`|`sMiQQ7STi`?DczL!bevY_)f`L%_3$OKpg*G zy0{y)L^}^<9kI!VkUrdxEW@fyCR%T&T%ofP9^{m5K+!e3lR@4yzevW>rVdZ%MM#RKq;UXa7m0j*F@`5a|$#XlhYB}Yx7FC|S7g zxNNory)WfS)fsi84v(VDWyS*AnX(}APE4z~i058^tJ^-~!mtt9>9abJj=c(h(oxIX zaKcydx8VxBP$o!>Quq95V<1Y<83wGDpJ+|N> z+^pmYax3zpE`Tg_kBtL<<|F)XpA$O>7-CXDgOA}}ObgbI!P+<_E13f#Y!v??3r|eTuYgCA$rFS#QKn41mW)Lk5=G+@G1OTKq$2}jPM|CS z_C@Jy*VQfN=LPpI=HiEw*@~|93W%z}$FAe^{r&0t!yhp^KHoWqK1Ivn4uCkfm)h4& zds?Ljj*U-~MNqR!<1&(fe8=!_&>ikb6$SRDHa*)4Nhnc^8HpB^Rsn$+$IY4>7I7n? zROv`_L>4|?qbu>sz*9&JwNSjoROF~}e`wcH33QVXZultPl(KndLN*aic7ceM>DT*w z-}4VDd&2M3X#I9JBNr=(L)_$nXp=omBcWqcmy;Q1&BBwuX)r);0xcyx1X(Dw@*~3; zAQA$Q2O|mXIC9;xyG^hRo2cou;I$ZZfOi9?iO!be25c~Nby7|(+4`|zZ5Zx`3=D=} zJq){yKqnwT=_w#g#A~-W3lT&!Cp8gGFwJOEVuEqWlTo2d1{y4*mIdrQu5yZ9mTlb; z8IHgBZx|X0I2fQISW~ga#Zk`k{OEn}?sgp3`ad_S*@JrTImFsjFn|$*6vU!xGzun9 z_jF!U9}^fR*eD_q0F_))y5sb3COSSOG%Z<9=ogw%6%+&qp)Y|xE!Q4#*M_usL<+AA z0D}V5pFM@kC6$sDa;n7%QbGFLQy_!J9H?;3HW;Ey1M2jXV#u+OXcbRuTo;ElF4d)Y zgvz)_MU6KIYy_Ola%Ccs5Y{$9J4|xxk#XUmN4#Rg%{%voJYy}J>n2W07)x6j8ZJo_ zSkhke&g90NTkngxVo#$^F5L8E-w}+`EB6)QQfTuTi>iq782Bzo#mTxgy>xzJK>9Ox zL8B^g`a#t<)ZJ@(xXS+z=|C30;ccm$MGPfJIF0tD#2Waj2}_SliD!@N~*L?0$ev6>m%MH`hDsYeY79a!`)HWVN+0Gx7^VCPtt zfTw_!YIrMy(O?qE?XVcnR*aP_W{I7MtcSzBt2o6k*Igm)GK@ssXi`;CeI%A67r%tamo+T?ZD3=Q_wiB81{Pae>8;6sC-{3kRe+sE7p}xA8X^ z*kIsA#=wU0@gn!m2DS|bUQi4`gb96Bid}k4W6Cj(GEi!mA@aV$)!=9h8IZhW`)@h1 z7n*6D9UN?DrSCNS0aiSid!RqKXwKlK6^_%&z-w|)22X^mRiSHSvkling=|tz z(QNurPJ(cY8&nA^N?!J^fTR*U+fziZBwm??NJ?8-ibzk)9CTU*q!8KK$xGrfwkC4E z==X5tEm0^IOyDkzRg~6?ajj{;m5+%CTx;am3A>V?Nc&-GXUI=#A z1e3~og6P|DajzU_LRG>LF>IJm(2bHl=B{7FQ4jz&^HINda`Z5s43e_n^pLNXYXZ5` z54-gU{ZhA58egdJ1rF+d#Mc20>0+1|{iuB*zUPkdQ}taP3I45c&&8r1q;o^|+M& zV?QpAiYiKOabkvU>+1E z0#)PV^!Vqkc8DL0MibybkP&GqvS2-w#4uv`h)4|kfVWs0Mco8z;_Tje6x|wSTNIzf zI;AcgpOT5BDDfANGp|#ADOvj@(*ag|(wE#zuOQbxB?A=<3t`ZR{)plhDHFvc;Bh+> z<6g3M@YS;fs+5(P@+a(FIe=Zbb&Coz-)*CQ5j3|THw zb;($_9Mc_{P0l$Cr|pN6z;c?6GV~rie1O7{%jNZ!dz8ms;q@|9P3^$6uk2i-PbblI zl20dwAcDMltd+h|GG{zQ5k|Ll=#VnLy(-z(b>Y|P{iN_Nzq^Ct7QjjT3 zCRtkLcjGn~*kIsOfPoF;<5SQ{8xS`bc+oHbeV_zHF_0c&1}wwQn9wVzws2i71VAE( zKAhN;oO?~vY>FZF!Emyl><>r1ay;md4`M~2uf&zf(mA#XCMREaL-8eTwe><;+&HcRB?(ZmS3R)wN$bYOwdzgf&5dxdXVf& ztU}ly$n(Pf;E#Y1ph8_;&e185h_E`88WE;Vad@29iN!mNcZfDPqP!SWfELVCjN>^T zHu5k@f)p}$`%RI`7FiIXFX7ST*!IKNJ_hO_H)+Drh z5R;wgX`;n}P1CRa#a~!l{b2?NJ6Co)JDqOWY_uHLoJQCK@yNxP*G|e^aLhJ~yw~at zm#`4-cDKnIUyK#XZwlK8HVM^>*algV+psX7A{Fx|><^LYkTU{l5FC3TAt@XZ1R0?Y zxQX5|yisYf-WkONQH|6A1*}-pEPpUQY5OhS^t0$j_eR&WTd~!3gJ|eZ;t3blK79Ca zFdf70hGPL+>ed@KKlnv65o2~h5#y=e3tR+r(> z-1!iiVSXh-H<23*Y%uV`U_d6~mB8rv>*A}r^mXwUOL)F9b#Sg*OIziz**i=TDNUl;yQ8lH9GUpM`_?KRD6g+Esn8yNkJ3Ae=;4zdIYkRnUUHFjvf zG>!l1kN(?+``=%?b`8Ut=C{2xGJSUo%Vv*zXRp8ZS>w^`m~V%^aol_`xbu~t`@;Ty zcobtLAB_=_!#(T|zx<2atphnSvixFV+~@2I?OP6c#7ZZ80k-)$=P`|Bj5=~2CHb%a zTfg~V8voU`R@xg5V&jA>T@lem48`|dL`#4cV|B<3b4b2X6e*jWAPqS9ojTeHP~uo-G0BFV4wv`!fAE9%nqJWG zL(k%5joTViPP`sH`tZU1_qh_W(>!KKLxV!&;yA@b*O{0;C{xwW`q^YBpw8M5H(uqI z##Qy1m?&kJkf>x93Q=fP)sxgk95>FWjIza$NAWq}Tj8qmb;(uvSm0;#3?9Dy?Qe^u zv~m=VGy$a$Pt)*8PYEPAI5@zv=AZxhpL0?Qb&ewkn}@TrvkC?Ri{TZ}(2|;UlPXrG z2aJ{Ra*VvnX#g(1k%P}wt_~iWwko*+(pJWUD;-~9VDXV~UHnpMU=@(GlO4|7VKAUd zd2%Fuq+MOTXV_@_)K1TtOJDjD zHYSMC<``n@esOWrV0JeTbk%0=$w(lLBxuH_RN| zhF?fJoV|CneM85ZRrRzN4Rl(SNP z+&{XPfAm`G%3-LiEPUPcD+_r_WL^1nS?bb1FZk=quY+gZdh5#hq~q)0T({o3a@NIL zUHZE6>)@;_XZ5OCSIQ=SgMkeOHW+vc1{Nk7C=;QNSut}r{rWe)j-W4QBC^sBtvzhj zUpu%3iBvpdD-ZEB^aEowIl6MNljm3CB!i?t^dV^5XXC^EVB2k@>l-^(;kj+N9sr;T z4%9Z-xw0!C^!pA3VLOD|a&|QQZ~pmz@lXEAf1D3T&8BR?noX?4rK1sKJuD2=i6!^R zNe{9b=~nLeYjm1WsL?n^i&wQyPq0vBvj*`jR_VowuU-p@yyWE46rt6H3ZivnRtDfz zW7M{vds3hkGr6mUa>QO8oCM(zMe(FciELKD!50 zP6a6tsND9pY%LH8Mx2Ao7cqY~9OZ5@$OjnaD~kjwnL8W%XFbTi67B8ej8cUlRc_W= z;HcU7%|N*H52fldm5(=b3W1j{r9L68V2lARg39ax2tXFoc5+aY&Zn!?Vd!J3h7Q&o z0m7QHCoc&!RQNiuScuME`D_KN@M1tZbd>`StD9&d|v>GJCsH;ZsC7FfslsOy)yajrM^ zizVwYt+*ITOdTGIeDzkSt{jm8o4ZA9=n_{5X= zGEHG7k(BCw5V*%=ROJ+R?%sLu;L$g~@oi8?J!05G8M67O|H*&$)vtaPoTJ+bkLWYE z-`LsRJ~@00#4#UeKgcrhAme3+yvEUbs=7!Ezgn`}Cz)dEym4gfgC z3iW)5>VWpi!dsPn=IO_}eg`LH1UVWl`1&i>oTxg?h-?gUi=vD|byD+aB-f)bU~qiP z8Vs`Yr~#;a9r*3v{Ov{!M!AzH9mApGKm(g!pbJSxn-#x=kiaYmYoclP+w|T3 z0d~QLm=P)Ma(8z}^=83^X3@#nM<3q(-gn=j7r2v*Dhel}EhHd}10J9P3DrT4j$iZ@ zS4KxHufmJTHsK8hHW>J{U|==X@@av71Lp<<8w|Wq7(n_!>AbS}wmFfBF{;VYm7Le4 zHu}K`u%gc^H_$Cy8z+ctKp&3108?>Zf%SUynXwIDqM8w-olzR7G^ZA) zORi`*YbOMtkRs4nMG*MV^Jy~hF>7!2|G{tl>c9Vg|Jq0IfAEdJ{@(rjj~fk3n7db4H9Grh_zA5;!;AGAIMfXZuiyO zZ|AuiHn+m|PP=*aY&>hE@I)wAU=yeW8mUPnCPao>Vui&Z=;s&uG%c|s3+0$hriO$1 zbde*pQDg|aSXPv$s7q6Zkm*vKa;gvsNx{#_QB>ump>s#^Qk`ndV!gU`b(K>Tue7fN z;8`aoQj_Kc=v__F6UJ4gQ4x<&x;QBB>JhBUg%%%|uOhwZ52eXb4&;)yQ%KI%E}9!&9`~4ddfQ>yZsS8w`AkF~H6nNOnj?{ipxzKe~VS-hcN${K5bFKmRWd zmdWgNI36Jt!cBEp8pZnj@BYp|{*{0GSFh|Hz

pTc7{J+mr@9rJN=yA#lVl>AXKM zb_R{ZBNV3`KS6dX((TDXkdQ=NXal7L9WAU4F*CQ--MjJ1ZQmW0<(2;M`$Fbovkk^i zhS0AoG9qFzE`Y1EzyH$b-}mbVBS4&&P|%bp^*~21)b{a%Af$4N zfSf%+=u4rB@Fo746_8D*(ShobwzJ;=YyvnPAmviBs(igaAtkv$7x6k=ZTJ^!A&kgO zm3J{fuEobHT+6VS!(XM;fjUM&)xf3nbrKDA>1TLeDn*@mUx<^4s$F^{RO3O%FGccL zS8tV(GS7uq*1C{psS38)D|6JiSEMjf(}<)mvBoV%rx>t1CzM*AfzV ztV>^4K6Nc+(T@y!s=(o{Ty#Ws;GRfUD9!1%So&J|kS$ZO_Pdsn^WN z{OQ@6h5&Hos{B=qZYht|tE%l)%wm9TGuU7@1vB7QDOCDw(Q!!

2U#XwPL2Uvf)0 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 z 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%0Aj6aw9UCHT& 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

p42P2#7BVpBL2+kuB`NX9miHijtU_PW6_( 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 M0_1jqym{dN0xedH5C8xG diff --git a/components/prg32/assets/prg32_splash_logo.c b/components/prg32/assets/prg32_splash_logo.c index 5807372..e30ede5 100644 --- a/components/prg32/assets/prg32_splash_logo.c +++ b/components/prg32/assets/prg32_splash_logo.c @@ -1311,7 +1311,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x10a2, 0x1082, - 0x18a2, 0x3186, 0x39e7, 0x39e7, 0x4208, 0x0000, 0x0841, 0x39e7, + 0x18a2, 0x18a2, 0x39e7, 0x39e7, 0x4208, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x4208, 0x4208, 0x39e7, 0x9472, 0x94b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1351,7 +1351,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x18c3, 0x39e7, 0x39e7, 0x4208, 0x0000, 0x0841, 0x39e7, + 0x0000, 0x0000, 0x0841, 0x39e7, 0x4208, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x4208, 0x4208, 0x4208, 0x8c72, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1385,13 +1385,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb597, 0xb558, 0x4207, 0x4208, 0x4207, 0x4208, 0x4207, 0x4207, 0x4208, 0x0861, 0x0000, 0x7bcf, 0x7bef, 0x39e7, 0x0841, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0841, 0x3186, 0x39c7, 0x39e7, 0x0000, 0x0841, 0x39e7, + 0x0841, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x1081, 0x0000, 0x0841, 0x39c7, 0x39e7, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x4207, 0x4208, 0x4208, 0x8c72, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1424,19 +1424,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbd97, 0xb558, 0x4208, 0x4208, 0x41e7, 0x4208, 0x4207, 0x4207, - 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bcf, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bcf, 0x4a49, 0x0000, 0x0841, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x1081, 0x0000, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x4207, 0x4208, 0x4208, 0x4208, 0x8c72, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6065, + 0x6065, 0x6065, 0x6065, 0x6065, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1464,19 +1464,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbd97, 0xb557, 0x4207, 0x4208, 0x4207, 0x4208, 0x4207, 0x4208, - 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bcf, 0x4208, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4a49, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bcf, 0x4208, 0x0000, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x0020, 0x4a49, 0x4228, 0x0000, 0x0841, 0x39e7, 0x41e7, 0x39e7, 0x41e7, 0x4208, 0x4208, 0x4208, 0x8c52, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf892, 0xf8b0, - 0xf0b0, 0xf0b0, 0xf0b0, 0xf0d0, 0xf151, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf0d0, 0xf8b0, + 0xf0b0, 0xf0b0, 0xf0b0, 0xf0d0, 0xf0d0, 0x6065, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1504,19 +1504,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbd97, 0xb557, 0x4207, 0x4207, 0x4207, 0x4208, 0x4208, 0x4208, - 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bce, 0x4208, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4a49, 0x4228, 0x0000, 0x0020, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bce, 0x4208, 0x0000, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x0020, 0x4a49, 0x4228, 0x0000, 0x0020, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x41e7, 0x4208, 0x4208, 0x8c52, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf912, 0xf0d0, - 0xf0d0, 0xf0d0, 0xf0d0, 0xf111, 0xf151, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x6065, 0xf0d0, 0xf912, 0xf0d0, + 0xf0d0, 0xf0d0, 0xf0d0, 0xf111, 0xf151, 0xf0d0, 0x6065, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1544,19 +1544,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbd97, 0xb557, 0x41e7, 0x41e7, 0x4207, 0x41e7, 0x4207, 0x4208, - 0x4208, 0x0861, 0x0000, 0x7bcf, 0x7bce, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x4a29, 0x4228, 0x0000, 0x0020, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bcf, 0x7bce, 0x4228, 0x0000, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, + 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3412, 0x3412, 0x0000, 0x4a29, 0x4228, 0x0000, 0x0020, 0x39e7, 0x41e7, 0x41e7, 0x41e7, 0x4207, 0x4208, 0x4207, 0x8c72, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0800, 0x6065, 0xf86f, 0xf890, 0xf8b0, - 0xf8f0, 0xf0f0, 0xf0f0, 0xf911, 0xf911, 0xf06d, 0xf86d, 0x0800, + 0x0000, 0x0000, 0x0000, 0x6065, 0xf0d0, 0xf86f, 0xf890, 0xf8b0, + 0xf8f0, 0xf0f0, 0xf0f0, 0xf911, 0xf911, 0xf06d, 0xf86d, 0x6065, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1584,14 +1584,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb597, 0xb557, 0x41e7, 0x4207, 0x41e7, 0x41e7, 0x4207, 0x4207, - 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bcf, 0x4a48, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x4a28, 0x4a49, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bcf, 0x4a48, 0x0000, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3432, 0x3432, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, + 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3412, 0x3412, 0x3412, 0x3412, 0x33f2, 0x33f2, 0x33f2, 0x33f2, + 0x33f2, 0x3bf2, 0x0000, 0x4a28, 0x4a49, 0x0000, 0x0841, 0x39e7, 0x41e7, 0x39e7, 0x41e7, 0x4207, 0x4207, 0x4208, 0x8c72, 0x94b2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1624,18 +1624,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb597, 0xb577, 0x41e7, 0x41e7, 0x39e7, 0x4207, 0x41e7, 0x41e8, - 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bae, 0x4a28, 0x0000, 0x0000, - 0x0000, 0x0041, 0x06fd, 0x071f, 0x073f, 0x075f, 0x077f, 0x073f, - 0x0413, 0x0000, 0x0000, 0x01c8, 0x06df, 0x071f, 0x075f, 0x075f, - 0x075f, 0x075f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x073f, - 0x073f, 0x073f, 0x06df, 0x06de, 0x06df, 0x077f, 0x0000, 0x0000, - 0x0000, 0xf8f3, 0xf953, 0xf954, 0xf973, 0xf955, 0x0000, 0x0000, - 0x0000, 0x0000, 0xf913, 0xf914, 0xf934, 0xf973, 0xf935, 0x0000, - 0x0000, 0x0000, 0x0000, 0x4a48, 0x4a69, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bef, 0x7bae, 0x4a28, 0x0000, 0x3412, + 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, 0x3412, + 0x3412, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, 0xef5d, + 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, + 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, 0x3bf2, + 0x3bf2, 0x3bf2, 0x0000, 0x4a48, 0x4a69, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x4207, 0x4208, 0x4207, 0x8c72, 0x94b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0800, 0xf0f0, 0xf111, 0xfc98, 0xffff, 0xffdf, + 0x0000, 0x0000, 0x6065, 0xf0f0, 0xf111, 0xfc98, 0xffff, 0xffdf, 0xffbf, 0xfbb8, 0xf2b5, 0xf8f1, 0xf8f1, 0xf8f1, 0xf911, 0xb0a9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1664,20 +1664,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbdb7, 0xb578, 0x41e7, 0x39e7, 0x39e7, 0x4207, 0x4208, 0x41e7, - 0x4208, 0x0861, 0x0000, 0x7bcf, 0x73ae, 0x4a28, 0x0000, 0x0000, - 0x0000, 0x0041, 0x067d, 0x069e, 0x069f, 0x06bf, 0x06bf, 0x069e, - 0x067f, 0x0000, 0x0000, 0x01a8, 0x067e, 0x067e, 0x069e, 0x06bf, - 0x06bf, 0x067e, 0x0454, 0x036f, 0x0000, 0x0020, 0x0000, 0x067f, - 0x067e, 0x067e, 0x067e, 0x067f, 0x065e, 0x06de, 0x0000, 0x0000, - 0xe110, 0xf8d2, 0xf932, 0xf132, 0xf8f2, 0xf8d2, 0x70c7, 0x0000, - 0x0000, 0x7087, 0xf0d1, 0xf112, 0xf132, 0xf8d1, 0xf8f2, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4a49, 0x4a69, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x7bcf, 0x73ae, 0x4a28, 0x0000, 0x33b1, + 0x3bf2, 0x33b1, 0x3bf2, 0x33b1, 0x3bf2, 0x33b1, 0x3bf2, 0x33b1, + 0x3bf2, 0x33b1, 0x3bf2, 0x33b1, 0x3bf2, 0x33b1, 0x3bf2, 0x33b1, + 0x3bf2, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0xef5d, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0x3bd2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, 0x3391, + 0x3bd2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, 0x3391, + 0x3bd2, 0x3391, 0x0020, 0x4a49, 0x4a69, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x4208, 0x4207, 0x9472, 0x94b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x2021, 0xf930, 0xf152, 0xffdf, 0xffff, 0xffff, + 0x0000, 0x0000, 0x6065, 0xf930, 0xf152, 0xffdf, 0xffff, 0xffff, 0xffbf, 0xf8b0, 0xf0f1, 0xf911, 0xf8f1, 0xf911, 0xf911, 0x8867, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x6065, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1704,14 +1704,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbdb7, 0xbd98, 0x4208, 0x39e7, 0x41e7, 0x41e7, 0x41e7, 0x41e7, - 0x4207, 0x0861, 0x0000, 0x7bcf, 0x73ae, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0041, 0x0e9e, 0x06bf, 0x030e, 0x0000, 0x0000, 0x071f, - 0x065e, 0x073f, 0x0020, 0x01a8, 0x069f, 0x06ff, 0x0000, 0x0000, - 0x0000, 0x063d, 0x067e, 0x06de, 0x0020, 0x0041, 0x069f, 0x069f, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x98ca, 0xf8f2, 0xf112, 0x0800, - 0x0800, 0xe950, 0xf952, 0x0000, 0x0000, 0xf952, 0xf912, 0xf133, - 0x0821, 0x0000, 0x0000, 0x4a28, 0x4a49, 0x0000, 0x0841, 0x39e7, + 0x4207, 0x0861, 0x0000, 0x7bcf, 0x73ae, 0x4a49, 0x0000, 0x3bf2, + 0x33b1, 0x3bf2, 0x33b1, 0x3bf2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, + 0x3391, 0x3bd2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, 0x3391, 0x3bd2, + 0x3391, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, + 0xef5d, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, 0x43d1, + 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, 0x43b1, 0x3b70, 0x43b1, + 0x3b70, 0x43b1, 0x0000, 0x4a28, 0x4a49, 0x0000, 0x0841, 0x39e7, 0x41e7, 0x41e7, 0x41e7, 0x4207, 0x4208, 0x4208, 0x9473, 0x9cb3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1744,14 +1744,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbdb7, 0xb578, 0x4208, 0x41e7, 0x41e7, 0x4207, 0x41e7, 0x41e7, - 0x4208, 0x0861, 0x0000, 0x7bcf, 0x73ae, 0x4a28, 0x0000, 0x0000, - 0x0000, 0x0041, 0x0e9e, 0x0e9f, 0x0350, 0x0000, 0x0000, 0x077f, - 0x067f, 0x075f, 0x0021, 0x01c8, 0x067f, 0x069e, 0x0020, 0x0000, - 0x0000, 0x063e, 0x069f, 0x071f, 0x0020, 0x0041, 0x069f, 0x0ebf, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x98ca, 0xf932, 0xf152, 0x0820, - 0x0020, 0x2803, 0x3004, 0x0000, 0x0000, 0xf932, 0xf932, 0xf132, - 0x0800, 0x0000, 0x0000, 0x4a28, 0x4a49, 0x0000, 0x0841, 0x41e7, + 0x4208, 0x0861, 0x0000, 0x7bcf, 0x73ae, 0x4a28, 0x0000, 0x3b91, + 0x43d2, 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, + 0x43d1, 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, 0x43d1, 0x3b90, + 0x43d1, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, + 0xef5d, 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, + 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, + 0x43b1, 0x3b70, 0x0000, 0x4a28, 0x4a49, 0x0000, 0x0841, 0x41e7, 0x41e7, 0x39e7, 0x41e7, 0x4207, 0x4208, 0x4208, 0x9473, 0x9cb3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1784,14 +1784,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc5d8, 0xb558, 0x39e7, 0x41e7, 0x41e7, 0x41e8, 0x4207, 0x4208, - 0x4208, 0x0861, 0x0000, 0x7bce, 0x738e, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0041, 0x069e, 0x067e, 0x02ee, 0x0041, 0x0041, 0x079f, - 0x069f, 0x077f, 0x0021, 0x01c8, 0x069f, 0x065d, 0x0082, 0x0021, - 0x0041, 0x0e5e, 0x069f, 0x06ff, 0x0020, 0x0041, 0x065e, 0x067e, - 0x0020, 0x0000, 0x0021, 0x0021, 0x0020, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0xa0cb, 0xf8f1, 0xe971, 0x0821, - 0x0020, 0x0000, 0x0020, 0x0000, 0x1001, 0xf8f2, 0xf912, 0xf112, - 0x0000, 0x0000, 0x0000, 0x4a49, 0x4a49, 0x0000, 0x0841, 0x41e7, + 0x4208, 0x0861, 0x0000, 0x7bce, 0x738e, 0x4228, 0x0000, 0x43b1, + 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, + 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, 0x3b70, 0x43b1, + 0x3b70, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, 0xef5d, + 0x4350, 0x4b91, 0x4350, 0x4b91, 0x4350, 0x4b91, 0x4350, 0x4b91, + 0x4350, 0x4b91, 0x4350, 0x4b91, 0x4350, 0x4b91, 0x4350, 0x4b91, + 0x4350, 0x4b91, 0x0000, 0x4a49, 0x4a49, 0x0000, 0x0841, 0x41e7, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x41e7, 0x39e7, 0x9473, 0x9cd4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1824,14 +1824,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbdb8, 0xbd78, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x4208, - 0x4207, 0x0861, 0x0000, 0x73ae, 0x738e, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0041, 0x069e, 0x067e, 0x06bf, 0x073f, 0x075f, 0x067f, - 0x067f, 0x075f, 0x0021, 0x0188, 0x065e, 0x067e, 0x06fe, 0x06de, - 0x06df, 0x067f, 0x0f1f, 0x073f, 0x0020, 0x0061, 0x063d, 0x063d, - 0x0020, 0x0000, 0x063e, 0x05bd, 0x0d9e, 0x063e, 0x0020, 0x0000, - 0x0000, 0xf0f1, 0xf0b1, 0xf8d1, 0xf8f1, 0xf953, 0x0800, 0x0000, - 0x0000, 0x0000, 0x0000, 0xe9d2, 0xf973, 0xf8d2, 0xf912, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4228, 0x4a49, 0x0000, 0x0821, 0x39e7, + 0x4207, 0x0861, 0x0000, 0x73ae, 0x738e, 0x4a49, 0x0000, 0x3b70, + 0x3b70, 0x3b70, 0x4370, 0x4370, 0x4370, 0x4350, 0x4350, 0x4350, + 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, + 0x4350, 0xef5d, 0xef5d, 0x3432, 0x4350, 0xef5d, 0xef5d, 0x3432, + 0x3432, 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, 0xef5d, + 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, + 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4330, 0x4330, + 0x4330, 0x4330, 0x0020, 0x4228, 0x4a49, 0x0000, 0x0821, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x39e7, 0x39e7, 0x9473, 0x9cb4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1859,19 +1859,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a49, - 0x5289, 0x52aa, 0x528a, 0x5acb, 0x5acb, 0x39c7, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x632d, 0x83d1, 0x2965, 0x2945, 0x2945, 0x39e7, 0x39e7, 0x39e7, - 0x39e7, 0x0861, 0x0000, 0x7bae, 0x738d, 0x4a28, 0x0000, 0x0000, - 0x0000, 0x0041, 0x069e, 0x06bf, 0x069f, 0x069f, 0x065e, 0x063e, - 0x063d, 0x0477, 0x0020, 0x01c9, 0x067f, 0x067e, 0x065e, 0x065e, - 0x065e, 0x063e, 0x0000, 0x0020, 0x0020, 0x0062, 0x065f, 0x065e, - 0x0020, 0x0020, 0x061f, 0x059e, 0x057f, 0x05ff, 0x0000, 0x0000, - 0x0000, 0xf8f2, 0xf111, 0xf152, 0xf932, 0xf952, 0x7087, 0x0000, - 0x0000, 0x0000, 0x4024, 0xf152, 0xf953, 0xf112, 0xb0ac, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4208, 0x4228, 0x0000, 0x0021, 0x39e7, + 0x39e7, 0x0861, 0x0000, 0x7bae, 0x738d, 0x4a28, 0x0000, 0x4350, + 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, + 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, 0x4350, + 0x4350, 0xef5d, 0xef5d, 0x3432, 0x3432, 0xef5d, 0xef5d, 0x4350, + 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, 0x3432, 0xef5d, + 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, + 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, + 0x4b30, 0x4b30, 0x0020, 0x4208, 0x4228, 0x0000, 0x0021, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x3186, 0x3186, 0x3186, 0x736f, 0x73af, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1899,19 +1899,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0xffff, - 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xb5b6, 0x0861, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, + 0x0000, 0xffdf, 0xffff, 0xffff, 0xffff, 0xb5b6, 0x0861, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39e7, 0x39e7, 0x39e7, - 0x39e7, 0x0861, 0x0000, 0x73ae, 0x6b6d, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0061, 0x0e9e, 0x06bf, 0x06ff, 0x069f, 0x065e, 0x061d, - 0x0000, 0x0000, 0x0000, 0x01c9, 0x069f, 0x06bf, 0x05bc, 0x059b, - 0x055b, 0x05bd, 0x0396, 0x0354, 0x0020, 0x0061, 0x067f, 0x0e7f, - 0x0041, 0x0820, 0x0000, 0x041b, 0x053e, 0x059e, 0x0000, 0x0000, - 0x0000, 0x0801, 0x0800, 0x1001, 0x98ca, 0xf912, 0xf0d1, 0x0000, - 0x0000, 0x1001, 0xf0f2, 0xf932, 0xf952, 0x2003, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0x4228, 0x4228, 0x0000, 0x0821, 0x39e7, + 0x39e7, 0x0861, 0x0000, 0x73ae, 0x6b6d, 0x4228, 0x0000, 0x4330, + 0x4330, 0x4330, 0x4330, 0x4330, 0x4330, 0x4b30, 0x4b30, 0x4b30, + 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, 0x4b30, + 0x4b30, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x4350, 0xef5d, 0xef5d, + 0x3432, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, 0x3432, 0xef5d, + 0x4b2f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, + 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, + 0x4b0f, 0x4b0f, 0x0841, 0x4228, 0x4228, 0x0000, 0x0821, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x0000, 0x0841, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1939,19 +1939,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0040, 0xffff, 0xffdf, 0xffdf, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xf7be, 0xf79e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa514, 0x9493, 0x738e, 0x4208, 0x4208, 0x4208, 0x41e7, 0x39e7, - 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0041, 0x063d, 0x0e3e, 0x0371, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x01a8, 0x065f, 0x0e9f, 0x0021, 0x0000, - 0x0000, 0x0dbe, 0x059e, 0x05de, 0x0020, 0x0021, 0x061e, 0x061e, - 0x0020, 0x0000, 0x0000, 0x041a, 0x051f, 0x057e, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0800, 0x90ca, 0xf0d1, 0xf0b1, 0x0000, - 0x0000, 0xf0b1, 0xf0b1, 0xf8f1, 0x0800, 0x0800, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0x4228, 0x4a28, 0x0000, 0x0841, 0x39e7, + 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4a49, 0x0000, 0x4b30, + 0x4b30, 0x4b30, 0x4b30, 0x4b2f, 0x4b2f, 0x4b2f, 0x4b0f, 0x4b0f, + 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, 0x4b0f, + 0x4b0f, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0xef5d, 0x4350, 0x3432, 0xef5d, 0xef5d, 0x3432, 0x3432, 0xef5d, + 0x4b0f, 0x4b0f, 0x4b0f, 0x530f, 0x530f, 0x530f, 0x530f, 0x530f, + 0x530f, 0x530f, 0x530f, 0x530f, 0x530f, 0x530f, 0x530f, 0x52ef, + 0x52ef, 0x52ef, 0x0841, 0x4228, 0x4a28, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x39a6, 0x8c12, 0x9452, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -1979,19 +1979,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffdf, 0xf79e, 0xffdf, 0xffdf, 0xf7bf, 0xffff, 0xf7be, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffdf, 0x0000, 0x0020, 0x0861, 0xffff, 0xffff, 0xf7be, + 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa4f4, 0x9c93, 0x736d, 0x41e8, 0x4208, 0x4208, 0x39e7, 0x3a07, - 0x4208, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0021, 0x05fd, 0x05fe, 0x0351, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x01a8, 0x061e, 0x067e, 0x0021, 0x0000, - 0x0000, 0x057e, 0x059e, 0x05de, 0x0020, 0x0021, 0x059e, 0x05df, - 0x01c8, 0x0187, 0x0168, 0x043b, 0x0cff, 0x057f, 0x0000, 0x0000, - 0x3023, 0x3824, 0x4045, 0x3844, 0xa0ac, 0xf8d2, 0xf0f1, 0x0800, - 0x0800, 0xf0d1, 0xf0d1, 0xf932, 0x2022, 0x3844, 0x4065, 0x3803, - 0x0000, 0x0000, 0x0861, 0x4a28, 0x4a28, 0x0000, 0x0841, 0x41e7, + 0x4208, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4a49, 0x0000, 0x42ce, + 0x4b0f, 0x42ce, 0x4b0f, 0x4ace, 0x4b0f, 0x4ace, 0x4b0f, 0x4ace, + 0x530f, 0x4ace, 0x530f, 0x4ace, 0x530f, 0x4ace, 0x530f, 0x4ace, + 0x530f, 0xef5d, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0xef5d, + 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, + 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, + 0x52ef, 0x4aae, 0x0861, 0x5a8a, 0x4a28, 0x0000, 0x0841, 0x41e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x39c7, 0x8c12, 0x9493, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2018,20 +2018,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, - 0x0841, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffdf, - 0xffff, 0x2124, 0x0020, 0x0000, 0x0020, 0x1082, 0xa514, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, + 0x0841, 0x0000, 0x0000, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffdf, + 0xef9d, 0x0021, 0x0000, 0x0000, 0x0000, 0x0861, 0xffff, 0xffff, 0xffdf, 0xffff, 0xf7be, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9cb3, 0x94b3, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, - 0x3a07, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4a28, 0x0000, 0x0000, - 0x0000, 0x0041, 0x05de, 0x05de, 0x0331, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x01c9, 0x061f, 0x063e, 0x0021, 0x0000, - 0x0000, 0x053e, 0x059f, 0x061f, 0x0020, 0x0020, 0x00a7, 0x0cdf, - 0x04bf, 0x049e, 0x049e, 0x04bf, 0x04df, 0x057f, 0x0021, 0x0000, - 0xf111, 0xf0f1, 0xf0d1, 0xf0d2, 0xf0f1, 0xf912, 0x9029, 0x0820, - 0x0801, 0xf131, 0xf911, 0xf8f1, 0xf0d1, 0xf0f2, 0xf112, 0xf112, - 0x0800, 0x0020, 0x1082, 0x4a49, 0x4a49, 0x0000, 0x0841, 0x39e7, + 0x3a07, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4a28, 0x0000, 0x52ef, + 0x4ace, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, + 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, + 0x4aae, 0xef5d, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0x4350, + 0x3432, 0xef5d, 0xef5d, 0x3432, 0x3432, 0x3432, 0xef5d, 0xef5d, + 0x4aae, 0x52ef, 0x52ae, 0x52cf, 0x52ae, 0x52cf, 0x52ae, 0x5acf, + 0x52ae, 0x5acf, 0x528e, 0x5acf, 0x528e, 0x5acf, 0x528e, 0x5acf, + 0x528e, 0x5acf, 0x1082, 0x52aa, 0x4a49, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x39c7, 0x39e7, 0x9473, 0x9c93, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2058,20 +2058,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7be, 0xffdf, - 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x0861, 0x0000, 0x0000, 0x18c3, 0xdeda, 0xffbf, - 0xffdf, 0xffff, 0xffff, 0xffdf, 0xf7be, 0xf7be, 0x0020, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, + 0xf7be, 0x738d, 0x0000, 0x0000, 0x0020, 0x7bef, 0xffff, 0xffbf, + 0xffdf, 0xffff, 0xffff, 0xffdf, 0xf7be, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0841, 0x0000, 0x39c7, 0x39e7, 0x39e7, - 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0041, 0x061f, 0x053e, 0x02d0, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x01ea, 0x063f, 0x063e, 0x0020, 0x0000, - 0x0000, 0x053e, 0x053f, 0x057f, 0x0020, 0x0000, 0x0020, 0x04df, - 0x04df, 0x04be, 0x049e, 0x049f, 0x04bf, 0x053f, 0x0000, 0x0000, - 0x3002, 0xf952, 0xf132, 0xe932, 0xf132, 0xc0ac, 0x0000, 0x0000, - 0x0800, 0xf131, 0xf932, 0xf932, 0xf131, 0xe952, 0xf152, 0xf953, - 0x0000, 0x0000, 0x0841, 0x4228, 0x4a49, 0x0000, 0x0841, 0x39e7, + 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4228, 0x0000, 0x4aae, + 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x4aae, 0x52ef, 0x52ae, + 0x52cf, 0x52ae, 0x52cf, 0x52ae, 0x5acf, 0x52ae, 0x5acf, 0x528e, + 0x5acf, 0x5acf, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, + 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x5acf, + 0x5acf, 0x528e, 0x5acf, 0x528e, 0x5acf, 0x528e, 0x5acf, 0x528e, + 0x5acf, 0x528e, 0x5acf, 0x528e, 0x5acf, 0x528e, 0x5acf, 0x528e, + 0x5aaf, 0x528e, 0x0841, 0x52aa, 0x4a49, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x0000, 0x0861, 0x0820, 0x0841, 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2098,20 +2098,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x1061, 0x1082, 0x1081, 0xffdf, 0xffff, - 0xffff, 0xffff, 0xf79e, 0xa534, 0x94b2, 0x7bce, 0xffdf, 0xffff, - 0xffff, 0xffdf, 0x8410, 0x9492, 0x94d2, 0xf7de, 0xffdf, 0xffff, + 0x0000, 0x0000, 0x0000, 0x1061, 0x1082, 0x0000, 0x0000, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0x4a69, 0x4a69, 0x4a69, 0xffff, 0xffff, 0xffff, 0xf7be, 0xf79e, 0xffff, 0xffff, 0xffdf, 0xffff, 0x4a69, 0x39e7, 0x1082, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4228, 0x4a49, 0x3186, 0x2104, 0x18e3, 0x39e7, 0x39e7, 0x39e7, - 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0021, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4208, 0x4a49, 0x0000, 0x0841, 0x39e7, + 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4228, 0x0000, 0x528e, + 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, + 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, + 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, + 0x528e, 0x528e, 0x528e, 0x528e, 0x528e, 0x526e, 0x526e, 0x526e, + 0x526e, 0x526e, 0x526e, 0x526e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, + 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6d, 0x5a6d, 0x5a6d, + 0x5a6d, 0x5a6d, 0x0020, 0x4208, 0x4a49, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x2965, 0x31a6, 0x3185, 0x52aa, 0x5acb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2138,20 +2138,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0021, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffdf, - 0xffdf, 0xf79e, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0x4228, - 0x0020, 0x0040, 0xce59, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffdf, + 0x0000, 0x0000, 0x0021, 0x0000, 0x0000, 0xffdf, 0xffff, 0xffdf, + 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0x6b2c, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9cf4, 0x9cd4, 0x6b4d, 0x4a29, 0x4a49, 0x4208, 0x4208, 0x41e7, - 0x4208, 0x0861, 0x0000, 0x738e, 0x6b4c, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4208, 0x4a49, 0x0000, 0x0841, 0x4207, + 0x4208, 0x0861, 0x0000, 0x738e, 0x6b4c, 0x4228, 0x0000, 0x528e, + 0x528e, 0x528e, 0x526e, 0x526e, 0x526e, 0x526e, 0x526e, 0x526e, + 0x526e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, 0x5a6e, + 0x5a6e, 0x5a6e, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, + 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, + 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, + 0x5a6d, 0x5a6d, 0x5a6d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, + 0x5a4d, 0x5a4d, 0x0020, 0x4208, 0x4a49, 0x0000, 0x0841, 0x4207, 0x39e7, 0x41e7, 0x4208, 0x4208, 0x41e7, 0x4207, 0x8c72, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2178,20 +2178,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0820, 0xffdf, 0xffff, 0xffdf, 0xffff, 0xffff, - 0xffff, 0xf7be, 0x1082, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, - 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffde, 0xbdf7, 0x0020, - 0x0000, 0x0000, 0x0861, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffdf, 0xffff, 0xffdf, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf79e, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9cf4, 0xa4f4, 0x41e7, 0x41e8, 0x4208, 0x39e7, 0x41e7, 0x41e7, - 0x4208, 0x0861, 0x0000, 0x738e, 0x6b2c, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x738e, 0x6b2c, 0x4a49, 0x0000, 0x5a6d, + 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, + 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, 0x5a6d, + 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, + 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, + 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, 0x5a4d, + 0x624d, 0x624d, 0x624d, 0x624d, 0x624d, 0x624d, 0x624d, 0x624d, + 0x624d, 0x624d, 0x0020, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e8, 0x4208, 0x39e7, 0x39c7, 0x8411, 0x8c51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2218,20 +2218,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0xffff, 0xf79d, 0x0000, 0xd61c, 0xf71f, 0xffff, 0xffff, - 0xffff, 0xffff, 0xf79e, 0x528a, 0x4a69, 0x5aaa, 0xffdf, 0xffff, - 0xffff, 0xf7be, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xdefb, - 0x0000, 0x0000, 0x4228, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, - 0xffdf, 0xffdf, 0x410f, 0x30eb, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0x73af, 0x73af, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf7be, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, + 0xffdf, 0xffdf, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x1061, 0x0861, 0x39c7, 0x39e7, 0x39e7, - 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xffdf, 0xf7be, 0xf7df, 0xffdf, 0xffdf, - 0x0020, 0x0020, 0x0020, 0xef5d, 0xef7d, 0xf7be, 0x0020, 0x0000, - 0x2124, 0xf7be, 0xf79e, 0xef7d, 0xf7be, 0xffdf, 0x0020, 0x0020, - 0x0020, 0xce79, 0xffff, 0xffdf, 0xf7be, 0xef7d, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xfea0, 0x49a0, - 0x0000, 0x0000, 0x0000, 0x0840, 0xf620, 0x5a20, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x39e7, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x4a49, 0x0000, 0x5a4d, + 0x5a4d, 0x5a4d, 0x628e, 0x6aef, 0x730f, 0x730f, 0x730f, 0x6acf, + 0x628e, 0x626e, 0x628e, 0x6acf, 0x72ef, 0x6acf, 0x628e, 0x626e, + 0x6a8e, 0x6acf, 0x72ef, 0x72ef, 0x72ef, 0x6acf, 0x628e, 0x626e, + 0x6a8e, 0x6acf, 0x72ef, 0x72ef, 0x72ef, 0x6aaf, 0x6a6e, 0x624d, + 0x624d, 0x624d, 0x624d, 0x624d, 0x624d, 0x6a6c, 0x6a6c, 0x6a6c, + 0x624d, 0x622d, 0x622d, 0x622d, 0x6a4c, 0x6a6c, 0x6a4c, 0x622d, + 0x622d, 0x622d, 0x0841, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x18e3, 0x18c3, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2258,20 +2258,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xf7be, 0x0000, 0x8bf4, 0x9bd8, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, + 0x0841, 0xffdf, 0xb556, 0x0000, 0x73af, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0x0000, 0x0020, 0x0861, 0xffff, 0xffff, 0xffff, 0xffff, - 0xbdf7, 0xb596, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xff9f, - 0xff9f, 0xffdf, 0x4910, 0x410c, 0x0000, 0x0000, 0x0000, 0x0020, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xff9f, + 0xff9f, 0xffdf, 0x73af, 0x73af, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0020, 0x0020, 0x0000, 0x0000, 0x39c7, 0x39e7, 0x39e7, - 0x4207, 0x0861, 0x0000, 0x6b6d, 0x6b4d, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xf7be, 0xffdf, 0xffdf, 0xffff, 0xffff, - 0x10a2, 0x0020, 0x0021, 0xffff, 0xffdf, 0xffff, 0x0841, 0x0020, - 0x3165, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0x0020, 0x0020, - 0x18c3, 0xdedb, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xfea0, 0x51e0, - 0x0020, 0x0000, 0x0000, 0x0820, 0xfe60, 0x6240, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0x4228, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4207, 0x0861, 0x0000, 0x6b6d, 0x6b4d, 0x4a49, 0x0000, 0x59ec, + 0x624d, 0x59ec, 0x72cf, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, + 0x72ef, 0x626d, 0x72ae, 0xef5d, 0xef5d, 0xef5d, 0x72ae, 0x624d, + 0x72ef, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x72ae, 0x624d, + 0x72cf, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x6a8e, 0x620c, + 0x6a4d, 0x620c, 0x6a4d, 0x620c, 0x6a4d, 0x6a4b, 0xee20, 0x6a4b, + 0x6a4c, 0x61ec, 0x6a2d, 0x61eb, 0x728b, 0xee20, 0x726c, 0x61cc, + 0x6a0d, 0x61cc, 0x0841, 0x4228, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x10a2, 0x10c2, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2298,20 +2298,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0xffdf, 0x7331, 0x6270, 0x0841, 0x0000, - 0xdefb, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xef9d, + 0x0841, 0xffdf, 0xffff, 0xffdf, 0xffff, 0x73af, 0x0841, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xf79e, 0x0021, 0x0000, 0x0000, 0x0000, 0x0861, 0xffff, 0xffff, 0xffff, - 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffde, 0x0821, - 0x4230, 0x4af4, 0x5316, 0x5314, 0x0020, 0x0000, 0x0000, 0x0000, + 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffde, 0x7bd0, + 0x0821, 0x0821, 0x5316, 0x5314, 0x0020, 0x0000, 0x0000, 0x0000, 0x9cf3, 0x9cd4, 0x4a29, 0x39c7, 0x39e7, 0x41e7, 0x4208, 0x4208, - 0x4208, 0x0861, 0x0000, 0x736d, 0x6b4d, 0x4a69, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xf7be, 0x6b4d, 0x0020, 0x0020, 0x0000, - 0xffbe, 0x0000, 0x0020, 0x0000, 0xffdf, 0x0841, 0x0020, 0x6b2d, - 0xffdf, 0x0041, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0020, - 0xf79e, 0xc638, 0x0020, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0820, 0xfea0, 0x51e0, - 0x0020, 0x0000, 0x0000, 0x0840, 0xf620, 0x5a40, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x736d, 0x6b4d, 0x4a69, 0x0000, 0x622d, + 0x59ec, 0x622d, 0x72ae, 0xef5d, 0x8bb1, 0x8bb2, 0x8371, 0x8bb1, + 0xef5d, 0x72cf, 0x6a6d, 0x8330, 0xef5d, 0x8330, 0x6a4d, 0x728e, + 0xef5d, 0x8351, 0x8350, 0x8b91, 0x8330, 0x7aef, 0x6a4d, 0x7aaf, + 0xef5d, 0x8310, 0x72ae, 0x7acf, 0x728e, 0x728e, 0x6a2d, 0x724e, + 0x6a4d, 0x7aaf, 0x726e, 0x728e, 0x6a2c, 0x7a6b, 0xee20, 0x7aab, + 0x6a0b, 0x6a0c, 0x61cb, 0x724c, 0x7a6a, 0xee20, 0x722a, 0x6a0c, + 0x61cb, 0x6a0c, 0x0841, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x39e7, 0x39e7, 0x4207, 0x8410, 0x8c51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2338,20 +2338,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xf7be, 0x0000, 0x20e4, - 0x0861, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xf7be, - 0x736d, 0x0000, 0x0000, 0x0020, 0x7bef, 0xffff, 0xffff, 0xffdf, - 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffbf, 0x5231, 0x20a6, 0x0000, - 0x296a, 0x4af4, 0x52f5, 0x5314, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xf7be, 0xb556, 0x20e4, + 0x0861, 0xb556, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xf7be, + 0x7b8d, 0x0000, 0x0000, 0x0020, 0x8410, 0xffff, 0xffff, 0xffdf, + 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffbf, 0x7bd0, 0x20a6, 0x0000, + 0x5b15, 0x4af4, 0x52f5, 0x5314, 0x0020, 0x0000, 0x0000, 0x0000, 0x9cf4, 0x9cd4, 0x4228, 0x39e7, 0x4208, 0x4208, 0x4208, 0x4208, - 0x4208, 0x0861, 0x0000, 0x738d, 0x6b6d, 0x4a69, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xf7bf, - 0xffff, 0x0000, 0x0000, 0x0000, 0xffdf, 0x0841, 0x0000, 0x0820, - 0x62ec, 0xffdf, 0xffde, 0xf7be, 0xf79d, 0x0000, 0x0000, 0x0020, - 0xf7be, 0xce79, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, - 0xf7be, 0xf7be, 0xf77e, 0xef5d, 0x0000, 0x0000, 0x0000, 0xff00, - 0xff22, 0x0840, 0x0000, 0xf640, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0820, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x738d, 0x6b6d, 0x4a69, 0x0000, 0x61cc, + 0x6a0d, 0x61cc, 0x7aef, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, + 0xef5d, 0x728e, 0x726e, 0x72ae, 0xef5d, 0x7aae, 0x724e, 0x6a0c, + 0x7aaf, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x7aae, 0x7a8e, 0x7a8e, + 0xef5d, 0x7aae, 0x726e, 0x69ec, 0x722d, 0x69ec, 0x722d, 0x6a0d, + 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x7a6d, 0x720b, 0x828b, 0xee20, + 0x7a6b, 0x69eb, 0x722c, 0x722a, 0xee20, 0x7a6a, 0x7a2c, 0x61ab, + 0x71ec, 0x69ab, 0x0820, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x39e7, 0x41e7, 0x8431, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2379,19 +2379,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7df, 0xffbf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffdf, 0x0020, 0x0020, 0x0000, 0xf7be, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffdf, 0x73cf, 0x0020, 0x7bd0, 0xffdf, 0xffff, 0xffff, 0xffff, + 0xffff, 0x4a89, 0x4a89, 0x4a89, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xf7bf, 0x0021, 0x0821, 0x0000, 0x4ad4, 0x52f5, 0x52f4, 0x52f4, 0x52f5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0841, 0x0861, 0x4228, 0x4208, 0x4207, - 0x4207, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4a69, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xf7be, 0x6b4d, 0x1082, 0x10a2, 0xf79e, - 0x0000, 0x0000, 0x0000, 0x0000, 0xffdf, 0x0861, 0x0000, 0x0000, - 0x0040, 0x0841, 0x0841, 0x0020, 0x0861, 0xef5d, 0x0000, 0x0020, - 0xf79e, 0xc618, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x7280, - 0xee21, 0x0820, 0x1060, 0xf6a2, 0x1060, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0x4228, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4207, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4a69, 0x0000, 0x6a0c, + 0x61ab, 0x6a0c, 0x7a8e, 0xef5d, 0x830f, 0x82ef, 0x82ef, 0xef5d, + 0x830f, 0x7a8e, 0x722d, 0x82cf, 0xef5d, 0x82cf, 0x6a0c, 0x722d, + 0x722d, 0x82af, 0x7aae, 0x82ef, 0x82cf, 0xef5d, 0x7a6e, 0x82cf, + 0xef5d, 0x82cf, 0x720c, 0x722d, 0x69cc, 0x720d, 0x69cc, 0x722d, + 0x722d, 0x828e, 0x7a4d, 0x7a6e, 0x71ec, 0x720c, 0x7a2a, 0xee20, + 0x7a49, 0x7a4b, 0x720a, 0x828a, 0xee20, 0x824b, 0x69cb, 0x71cc, + 0x698b, 0x71cc, 0x0841, 0x4228, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x31a6, 0x2124, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2418,26 +2418,25 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffdf, - 0xffdf, 0xf79e, 0xe6dc, 0xc4da, 0x18e3, 0x734e, 0xffdf, 0xffff, + 0x0841, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffdf, 0xffdf, 0xb556, 0x18e3, 0xb556, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffbf, - 0xc57f, 0xa45a, 0x0804, 0x4271, 0x4a70, 0x5315, 0x4ab4, 0x4ad4, + 0xffff, 0x7bd0, 0x0804, 0x4271, 0x4a70, 0x5315, 0x4ab4, 0x4ad4, 0x4ad3, 0x52f4, 0x5315, 0x5335, 0x0000, 0x0000, 0x0000, 0x0000, 0x9cd3, 0xad55, 0x62eb, 0x5269, 0x4a49, 0x4208, 0x4208, 0x4208, - 0x4208, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4a49, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xf7be, 0x6b4d, 0x0020, 0x0000, 0x18e3, - 0xc618, 0x0000, 0x0841, 0xce39, 0xffff, 0xe75c, 0x0020, 0x2124, - 0xbe17, 0xc638, 0xce59, 0xce79, 0xd6db, 0x7bcf, 0x0000, 0x0000, - 0x6b4d, 0xe71c, 0xd6ba, 0xdedb, 0xd69a, 0xce79, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1060, - 0x3940, 0xbca0, 0xee20, 0x49a0, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0861, 0x4228, 0x4228, 0x0000, 0x0841, 0x39e7, + 0x4208, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4a49, 0x0000, 0x69ab, + 0x69ab, 0x69ab, 0x7a6d, 0xef5d, 0x7a8e, 0x722d, 0x722d, 0x7a8e, + 0xef5d, 0x7a4d, 0x722d, 0x82af, 0xef5d, 0x82ae, 0x720d, 0x71ec, + 0x7a2d, 0x7a6e, 0x828e, 0x82ae, 0x82cf, 0xef5d, 0x7a4d, 0x7a4d, + 0xef5d, 0x82ae, 0x7a6e, 0x7a6d, 0x7a4d, 0x7a0d, 0x71cc, 0x69ab, + 0x71ab, 0x71cc, 0x71ac, 0x71ab, 0x698b, 0x698b, 0x71ca, 0x7a29, + 0xee20, 0x8249, 0x8249, 0xee20, 0x7a29, 0x71ca, 0x718b, 0x698b, + 0x698b, 0x698b, 0x0861, 0x52aa, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x41e7, 0x4228, 0x4228, 0x83d1, 0x8c32, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a69, - 0xf77e, 0x5aaa, 0x31a6, 0x1065, 0x0000, 0x72b3, 0x7af2, 0x8bd3, - 0x8af6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xf77e, 0x5aaa, 0x31a6, 0x1065, 0x0000, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2458,28 +2457,26 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0xffdf, 0xf79e, 0xf79e, 0xf7be, 0xffff, - 0xffff, 0xffff, 0xffdf, 0xf71f, 0x0020, 0x4189, 0x9c18, 0xffff, - 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0x0821, 0x0841, 0x0842, 0x52f5, 0x5314, 0x52f4, 0x4ab3, 0x0000, - 0x10a6, 0x4ab3, 0x5315, 0x5335, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0x0861, 0xb556, 0xffff, + 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x73af, + 0x0821, 0x0841, 0x5b15, 0x5315, 0x5b55, 0x5b55, 0x52f4, 0x52f4, + 0x4ab3, 0x52d4, 0x5315, 0x5335, 0x0000, 0x0000, 0x0000, 0x0000, 0xad76, 0xbdd7, 0x5acb, 0x4228, 0x4228, 0x3a08, 0x4207, 0x4208, - 0x4228, 0x1082, 0x0000, 0x736d, 0x6b2c, 0x4a28, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0821, 0xe71c, 0x4a89, 0x0000, 0x0000, 0x0000, - 0xe71b, 0x0000, 0x0841, 0xe73c, 0xef5d, 0xef7d, 0x0020, 0x3186, - 0xdefb, 0xdefb, 0xdefb, 0xdefb, 0xe6fb, 0x0020, 0x0000, 0x0000, - 0x0020, 0xdedb, 0xef5d, 0xef7d, 0xe73c, 0xe71b, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xdd60, 0xe640, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x1082, 0x4228, 0x4208, 0x0000, 0x0841, 0x39e7, + 0x4228, 0x1082, 0x0000, 0x736d, 0x6b2c, 0x4a28, 0x0000, 0x698b, + 0x698b, 0x698b, 0x7a0d, 0xef5d, 0x7a2d, 0x71cc, 0x71cc, 0x7a2d, + 0xef5d, 0x7a2d, 0x7a2d, 0xef5d, 0xef5d, 0xef5d, 0x7a0d, 0x7a0c, + 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x824d, 0x79ec, 0x79ec, + 0x824d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0xef5d, 0x79cc, 0x718b, + 0x718b, 0x718b, 0x718b, 0x716b, 0x716b, 0x718b, 0x718a, 0x79ca, + 0x8209, 0xee20, 0xee20, 0x8209, 0x79aa, 0x718a, 0x716b, 0x716b, + 0x716b, 0x716b, 0x1082, 0x52aa, 0x4208, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x4208, 0x4208, 0x83f2, 0x9453, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x0000, 0x4a69, - 0xef7e, 0x52aa, 0x3186, 0x1044, 0x0000, 0x7b52, 0x7351, 0x5acb, - 0x93b7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xef7e, 0x52aa, 0x3186, 0x1044, 0x0000, 0x2124, 0x2124, 0x2124, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2498,26 +2495,29 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0xffff, 0x2945, 0x0020, 0x0861, 0xe73c, - 0xffff, 0xffff, 0xffff, 0xffff, 0xf7be, 0xce59, 0x0020, 0x0861, - 0x73af, 0xffdf, 0xffff, 0xffff, 0xf79e, 0x10a2, 0x0020, 0x0843, - 0x52f5, 0x4ab4, 0x4ad4, 0x52f4, 0x52f4, 0x5b35, 0x0020, 0x0000, - 0x0000, 0x0843, 0x4ad5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0x1021, 0x0020, 0x0861, 0x0841, 0x39e7, 0x4208, 0x4208, - 0x4228, 0x1082, 0x0000, 0x6b6d, 0x630c, 0x4228, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0861, 0x41e7, 0x4208, 0x0000, 0x0841, 0x39e7, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0x0861, + 0x7bd0, 0xffdf, 0xffff, 0xffff, 0x7bd0, 0x10a2, 0x0020, 0x5316, + 0x5316, 0x4ad5, 0x4af5, 0x5314, 0x5b15, 0x4a91, 0x0000, 0x0000, + 0x4a91, 0x52d4, 0x4ad5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x1021, 0x0020, 0x0861, 0x0841, 0x39e7, 0x4208, 0x4208, + 0x4228, 0x1082, 0x0000, 0x6b6d, 0x630c, 0x4228, 0x0000, 0x794a, + 0x718b, 0x716b, 0x71ac, 0x79cc, 0x71ac, 0x718b, 0x718b, 0x71ab, + 0x79cc, 0x79cc, 0x79cc, 0x7a0d, 0x824d, 0x7a0d, 0x79cc, 0x79cc, + 0x7a0c, 0x822d, 0x824d, 0x822d, 0x7a0d, 0x79cc, 0x718b, 0x718b, + 0x79cc, 0x7a0d, 0x822d, 0x822d, 0x822d, 0x79ec, 0x79ab, 0x716b, + 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716a, + 0x79aa, 0x81c9, 0x81c9, 0x79aa, 0x796a, 0x716a, 0x714a, 0x714a, + 0x714a, 0x714a, 0x0861, 0x5aca, 0x4208, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39c7, 0x0861, 0x1082, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x0000, 0x0000, 0x0000, 0x8315, 0x8353, 0x8393, 0x0000, 0x4a29, + 0x0000, 0x0000, 0x0000, 0x0841, 0x0841, 0x2124, 0x0000, 0x4a29, 0xef7e, 0x528a, 0x3166, 0x1865, 0x0000, 0x2925, 0x2124, 0x2945, - 0x2945, 0x2123, 0x9395, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, + 0x2945, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2538,26 +2538,26 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0xffdf, 0x0000, 0x0000, 0x0000, 0x0020, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, - 0xad35, 0x0000, 0x18c3, 0x1082, 0x0000, 0x5b17, 0x5af7, 0x52f5, - 0x5315, 0x52f4, 0x52d4, 0x52d4, 0x4ad4, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0842, 0x52f5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, + 0xb556, 0x0000, 0x18c3, 0x1082, 0x0000, 0x5b38, 0x5b18, 0x5316, + 0x5336, 0x5315, 0x52f5, 0x52f4, 0x52f5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x52f4, 0x52f5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, 0xa534, 0xad56, 0x5aeb, 0x4228, 0x4207, 0x39e7, 0x4208, 0x4208, - 0x4228, 0x1082, 0x0000, 0x6b4d, 0x632c, 0x4a69, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x1082, 0x4208, 0x4228, 0x0000, 0x0861, 0x39e7, + 0x4228, 0x1082, 0x0000, 0x6b4d, 0x632c, 0x4a69, 0x0020, 0x0861, + 0x794a, 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, + 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716b, 0x716a, 0x714a, + 0x714a, 0x714a, 0x714a, 0x714a, 0x714a, 0x714a, 0x714a, 0x714a, + 0x714a, 0x714a, 0x714a, 0x714a, 0x794a, 0x794a, 0x794a, 0x794a, + 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, + 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, + 0x794a, 0x794a, 0x1082, 0x4208, 0x4228, 0x0000, 0x0861, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x4208, 0x4228, 0x4a49, 0x94b2, 0x9cd3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x624e, 0xa3f8, - 0xadb6, 0xacb7, 0xb438, 0x2985, 0x2124, 0x18e3, 0x0000, 0x4208, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x0841, + 0x0841, 0x0841, 0x0841, 0x2985, 0x2124, 0x18e3, 0x0000, 0x4208, 0xf77e, 0x526a, 0x2946, 0x1886, 0x0020, 0x2925, 0x2104, 0x2124, - 0x2124, 0x2124, 0x2123, 0x6b0e, 0x9bb6, 0xab7a, 0x0000, 0x0000, + 0x2124, 0x2124, 0x2123, 0x0000, 0x0000, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2578,26 +2578,26 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffdf, 0xf7be, 0x0000, 0x0000, 0x0000, 0x0020, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0x9cd3, 0x0841, 0x0000, 0x0000, 0x0821, 0x52d6, 0x52b6, 0x4ad5, - 0x2989, 0x52f5, 0x52f4, 0x52f4, 0x52f4, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0863, 0x5b36, 0x5334, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0x0000, 0x0000, 0x5316, 0x5b56, 0x5b76, 0x5315, + 0x5315, 0x4ad4, 0x52f5, 0x5314, 0x52f5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x4ad4, 0x5b36, 0x5334, 0x0000, 0x0000, 0x0000, 0x0000, 0x9492, 0x9cd4, 0x6b4d, 0x4208, 0x4207, 0x41e7, 0x4208, 0x4208, 0x4208, 0x0861, 0x0000, 0x6b6d, 0x6b4d, 0x528a, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x18a2, 0x4228, 0x4a49, 0x0000, 0x0841, 0x39e7, + 0x0861, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, + 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, + 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, + 0x794a, 0x794a, 0x794a, 0x794a, 0x794a, 0x792a, 0x792a, 0x792a, + 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, + 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, 0x792a, + 0x794a, 0x0000, 0x18a2, 0x4228, 0x4a49, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x4208, 0x8431, 0x8c51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0821, 0x0821, 0x0841, 0x6a30, 0xa379, - 0x9cb4, 0x5a8b, 0x3969, 0x3186, 0x2945, 0x2104, 0x0000, 0x4229, + 0x0000, 0x0000, 0x0000, 0x0821, 0x0821, 0x0841, 0x0841, 0x0841, + 0x0841, 0x5a8b, 0x3969, 0x3186, 0x2945, 0x2104, 0x0000, 0x4229, 0xef7e, 0x5269, 0x2945, 0x1885, 0x0000, 0x0000, 0x0000, 0x2124, - 0x2124, 0x2124, 0x2944, 0x4a49, 0x520b, 0xab9a, 0x0821, 0x0000, + 0x2124, 0x2124, 0x2944, 0x4a49, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2618,11 +2618,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0xffdf, 0x31a6, 0x0020, 0x0841, 0x0841, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffdf, 0xf79e, 0x1082, 0x39ad, 0xa39e, 0x52d6, 0x52d5, 0x0000, - 0x0000, 0x5b35, 0x52f4, 0x52f4, 0x5314, 0x2108, 0x0000, 0x0000, - 0x296c, 0x52f5, 0x5b36, 0x5b55, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffdf, 0xf79e, 0x1082, 0x39ae, 0x5316, 0x5b16, 0x4ab2, 0x0000, + 0x0000, 0x4a91, 0x52f5, 0x5314, 0x52f5, 0x4a91, 0x0000, 0x0021, + 0x4a91, 0x4ad4, 0x5b36, 0x5b55, 0x0000, 0x0000, 0x0000, 0x0000, 0x8c31, 0x9472, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x0861, 0x0000, 0x738e, 0x6b6d, 0x4208, 0x8410, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2634,10 +2634,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x3186, 0x7bcf, 0x4208, 0x4228, 0x0000, 0x0841, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x39e7, 0x39c7, 0x39e7, 0x8410, 0x8431, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xb37b, 0xa378, 0x9414, 0x9454, 0x41e9, 0x3186, + 0x0000, 0x0000, 0x0841, 0x0841, 0x0841, 0x0841, 0x41e9, 0x3186, 0x2965, 0x3186, 0x31a6, 0x31a6, 0x18c3, 0x0020, 0x0020, 0x4a49, 0xef7d, 0x5269, 0x2945, 0x1063, 0x0000, 0x0000, 0x0000, 0x0000, - 0x2945, 0x2945, 0x2945, 0x2945, 0x2965, 0x2965, 0x8353, 0x8315, + 0x2945, 0x2945, 0x2945, 0x2945, 0x2965, 0x0000, 0x0000, 0x0000, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2658,11 +2658,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0021, 0xf7df, 0xffff, 0xffff, 0xffdf, 0xe73c, 0xdedb, 0xe73c, + 0x0021, 0xf7df, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x314c, 0x82db, 0x6b9a, 0x0000, 0x0000, - 0x0000, 0x0000, 0x52d3, 0x52f4, 0x52f4, 0x52f4, 0x4290, 0x4a91, - 0x52f4, 0x52f4, 0x5315, 0x5334, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xf79e, 0x1082, 0x314c, 0x5316, 0x5316, 0x0000, 0x0000, + 0x0000, 0x0000, 0x5315, 0x5314, 0x52f5, 0x4ad3, 0x52d4, 0x5b56, + 0x4af4, 0x4ad4, 0x5315, 0x5334, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0841, 0x10a2, 0x18c3, 0x4228, 0x4208, 0x4208, 0x4208, 0x0861, 0x0000, 0x738e, 0x6b4d, 0x39e7, 0x41e7, 0x52aa, 0x738d, 0x73ae, 0x73ae, 0x73ae, 0x73ae, 0x73ae, 0x73ae, 0x738e, @@ -2673,12 +2673,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x738d, 0x738e, 0x73ae, 0x738e, 0x6b6d, 0x6b4c, 0x6b4c, 0x6b6d, 0x7bce, 0x738e, 0x4228, 0x4207, 0x4208, 0x0000, 0x0841, 0x39e7, 0x41e8, 0x4208, 0x4208, 0x2925, 0x18c3, 0x0000, 0x0000, 0x0820, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9b75, - 0x93d4, 0x9434, 0x41c8, 0x41c9, 0x39c8, 0x3167, 0x3186, 0x3186, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, + 0x0841, 0x0841, 0x0000, 0x0000, 0x39c8, 0x3167, 0x3186, 0x3186, 0x3165, 0x1082, 0x0020, 0x0020, 0x2965, 0x528a, 0x0000, 0x3187, 0xcd9b, 0x5269, 0x2945, 0x0001, 0x0000, 0x2925, 0x3166, 0x0000, - 0x0020, 0x0020, 0x2945, 0x2945, 0x2944, 0x2124, 0x18a3, 0x20e4, - 0x6a70, 0x6a51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0x0020, 0x2945, 0x2945, 0x2944, 0x2124, 0x18a3, 0x0000, + 0x0000, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2698,10 +2698,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0821, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x312b, 0x7ada, 0x635a, 0x0820, 0x0000, - 0x0000, 0x0000, 0x4ad3, 0x52d4, 0x52f4, 0x52f4, 0x5314, 0x5315, + 0x0821, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xe6fc, + 0x0000, 0x0000, 0xe6fc, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x312b, 0x5316, 0x5316, 0x0000, 0x0000, + 0x0000, 0x0000, 0x4af5, 0x52f4, 0x52f5, 0x52f4, 0x5314, 0x5315, 0x52f5, 0x52f5, 0x52f5, 0x5313, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0841, 0x0820, 0x4228, 0x4208, 0x4208, 0x4208, 0x0862, 0x0000, 0x6b6d, 0x630c, 0x39e7, 0x39e7, 0x5b0b, @@ -2713,12 +2713,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x8c51, 0x8c51, 0x8c50, 0x8c50, 0x8c30, 0x8c50, 0x8c51, 0x8c51, 0x8c71, 0x738e, 0x4208, 0x4208, 0x4228, 0x0000, 0x0861, 0x4208, 0x41e7, 0x41e7, 0x4208, 0x2104, 0x18c3, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xbb7b, - 0xbbf9, 0xa477, 0x39c6, 0x3186, 0x3186, 0x3186, 0x31a6, 0x31a6, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0841, + 0x0841, 0x0841, 0x39c6, 0x3186, 0x3186, 0x3186, 0x31a6, 0x31a6, 0x31a6, 0x0841, 0x0000, 0x0000, 0x2124, 0x5269, 0x0000, 0x2907, 0xbc7d, 0x528a, 0x2965, 0x0021, 0x0000, 0x2945, 0x39c7, 0x0000, 0x0820, 0x0020, 0x2945, 0x2124, 0x2124, 0x2124, 0x1082, 0x10a2, - 0x9357, 0x8b18, 0x0021, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x0000, 0x0021, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2738,11 +2738,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffde, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x312c, 0x82ba, 0x6317, 0x0000, 0x0000, - 0x0020, 0x3a0d, 0x52f4, 0x52f4, 0x52d4, 0x52f4, 0x52f4, 0x5315, - 0x5315, 0x5315, 0x5315, 0x5313, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xffde, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x312c, 0x5316, 0x5316, 0x4ab2, 0x0000, + 0x0021, 0x4a91, 0x4ad4, 0x52f4, 0x52f5, 0x5b55, 0x52f4, 0x52f4, + 0x4ab3, 0x52d4, 0x5315, 0x5313, 0x0000, 0x0000, 0x0000, 0x0000, 0xad55, 0xa515, 0x632c, 0x4a49, 0x4a49, 0x4228, 0x4208, 0x4208, 0x4228, 0x1082, 0x0000, 0x6b6d, 0x632c, 0x39e7, 0x39e7, 0x4208, 0x39e7, 0x41e7, 0x41e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, @@ -2753,12 +2753,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x4208, 0x4208, 0x4208, 0x39e7, 0x39e7, 0x4208, 0x4228, 0x0020, 0x0861, 0x4208, 0x41e8, 0x4208, 0x4208, 0x4228, 0x4208, 0x4207, 0x8c31, 0x9472, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xcbde, 0x2984, - 0x39e7, 0x39c7, 0x39a6, 0x3186, 0x3186, 0x3186, 0x3186, 0x31a6, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x0000, + 0x0000, 0x1904, 0x39a6, 0x3186, 0x3186, 0x3186, 0x3186, 0x31a6, 0x10a2, 0x3186, 0x4a29, 0x0000, 0x39c7, 0x5aaa, 0x4a49, 0x39c7, 0x0020, 0x0020, 0x0020, 0x0000, 0x0000, 0x39e7, 0x39e7, 0x0020, 0x20e5, 0x20e5, 0x0000, 0x2144, 0x2104, 0x0000, 0x0000, 0x0000, - 0x0801, 0x0821, 0x0021, 0x9b1a, 0x30a8, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0841, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2778,11 +2778,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffdf, 0xfffe, 0x0001, 0x0000, 0x8235, 0xffbf, - 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xf7be, 0x1082, 0x318c, 0x8b1a, 0x52d4, 0x52f4, 0x0000, - 0x0000, 0x52d4, 0x52f4, 0x52f4, 0x52f4, 0x52d3, 0x0842, 0x0000, - 0x0021, 0x52d5, 0x5b36, 0x5355, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf7be, 0x1082, 0x318c, 0x5316, 0x5316, 0x4af4, 0x52f5, + 0x5b77, 0x4b15, 0x4ad4, 0x52f4, 0x52f5, 0x4a91, 0x0000, 0x0000, + 0x4a91, 0x52d4, 0x5b36, 0x5355, 0x0000, 0x0000, 0x0000, 0x0000, 0xa515, 0xa515, 0x4a49, 0x4a49, 0x4228, 0x4208, 0x4208, 0x4208, 0x4228, 0x0861, 0x0000, 0x6b6d, 0x6b2c, 0x41e7, 0x39e7, 0x4208, 0x4207, 0x41e7, 0x41e7, 0x39e7, 0x39e7, 0x4207, 0x4207, 0x4207, @@ -2793,12 +2793,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x41e8, 0x4208, 0x4208, 0x4207, 0x41e8, 0x4207, 0x3a07, 0x41e7, 0x39e7, 0x41e7, 0x41e7, 0x4208, 0x4a49, 0x0000, 0x0841, 0x41e7, 0x41e7, 0x41e7, 0x4208, 0x4208, 0x4208, 0x4228, 0x9472, 0x94b3, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6a11, 0x7b10, - 0x83f2, 0x3186, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x3186, 0x3186, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x1904, + 0x1904, 0x0000, 0x0841, 0x31a6, 0x31a6, 0x31a6, 0x3186, 0x3186, 0x0841, 0x5acb, 0x83d0, 0x0000, 0x18c3, 0xa534, 0x7bcf, 0x8c30, 0x8c30, 0x4228, 0x39c7, 0x3165, 0x3165, 0x0020, 0x18a2, 0x0820, 0x39e9, 0x39a8, 0x0000, 0x1062, 0x6045, 0xd04c, 0xf08f, 0xf0cf, - 0xf930, 0xf930, 0xd8ed, 0x1064, 0x49cc, 0x6290, 0x0000, 0x0000, + 0xf930, 0xf930, 0xd8ed, 0x1064, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2818,11 +2818,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0x2946, 0x0020, 0x0000, 0x0000, 0x0000, - 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x316c, 0x8b1a, 0x5315, 0x52f4, 0x4ad3, - 0x52d3, 0x52f4, 0x52f4, 0x52f4, 0x5314, 0x0000, 0x0000, 0x0000, - 0x0000, 0x1063, 0x5b36, 0x5b35, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xe6fc, + 0x0000, 0x0000, 0xe6fc, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x316c, 0x5316, 0x5316, 0x5315, 0x4af4, + 0x52f4, 0x5314, 0x52f4, 0x52f4, 0x52f5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x52f4, 0x5b36, 0x5b35, 0x0020, 0x0000, 0x0000, 0x0000, 0xa535, 0xad35, 0x4228, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4228, 0x0862, 0x0000, 0x6b6d, 0x632c, 0x39e7, 0x39e7, 0x41e7, 0x41e7, 0x4207, 0x41e7, 0x41e7, 0x4207, 0x41e7, 0x4207, 0x41e8, @@ -2833,12 +2833,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x4207, 0x41e7, 0x41e7, 0x39e7, 0x41e7, 0x4207, 0x4208, 0x4228, 0x0000, 0x0841, 0x4207, 0x4207, 0x4208, 0x4208, 0x4208, 0x4208, 0x4228, 0x9472, 0x9cd3, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x412b, 0xd41d, - 0x8b13, 0x31c5, 0x31a6, 0x31a6, 0x31a6, 0x3186, 0x3186, 0x31a6, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x18e3, + 0x18e3, 0x18e3, 0x0000, 0x0841, 0x31a6, 0x3186, 0x3186, 0x31a6, 0x1082, 0x6b4e, 0x8c12, 0x0020, 0x0020, 0x0020, 0xffdf, 0xd69a, 0x9cb3, 0x62eb, 0x5acb, 0x4208, 0x39e7, 0x0000, 0x0820, 0x0020, 0x39c8, 0x41e9, 0x0000, 0x0000, 0xffbf, 0xe86e, 0xf8ce, 0xf8ee, - 0xf8cf, 0xf8cf, 0xf0ce, 0x0000, 0x41ca, 0x93b7, 0x0000, 0x0000, + 0xf8cf, 0xf8cf, 0xf0ce, 0x0000, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2858,11 +2858,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0x2966, 0x0000, 0x0000, 0x0000, 0x0000, - 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x296b, 0x82db, 0x5335, 0x5315, 0x52f4, - 0x52f4, 0x52d4, 0x52f4, 0x52f4, 0x5314, 0x0000, 0x0000, 0x0000, - 0x0000, 0x1885, 0x52f5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x296b, 0x5316, 0x5316, 0x5336, 0x5315, + 0x5314, 0x52d4, 0x52f4, 0x52f4, 0x52f5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x4ad4, 0x52f5, 0x5314, 0x0000, 0x0000, 0x0000, 0x0000, 0xad35, 0xa535, 0x4208, 0x41e7, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x0861, 0x0000, 0x6b4d, 0x630c, 0x41e7, 0x41e7, 0x4207, 0x4208, 0x4208, 0x4208, 0x4207, 0x4207, 0x4207, 0x4207, 0x4207, @@ -2873,12 +2873,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x4208, 0x4208, 0x4208, 0x4207, 0x4208, 0x4207, 0x4207, 0x41e7, 0x4207, 0x4208, 0x4208, 0x4208, 0x4228, 0x0000, 0x0841, 0x4207, 0x4208, 0x4208, 0x4207, 0x4208, 0x4208, 0x4208, 0x8c52, 0x94b2, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x38cb, 0x0841, - 0x1082, 0xbc5b, 0x524c, 0x39c6, 0x31a6, 0x3186, 0x3186, 0x31a6, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x18e3, + 0x18e3, 0x18e3, 0x1904, 0x0000, 0x0841, 0x3186, 0x3186, 0x31a6, 0x39c7, 0x0840, 0xa4f6, 0x83f1, 0x5acc, 0x31a6, 0x0020, 0x0841, 0x0020, 0x0020, 0x0020, 0x0000, 0x0020, 0x0800, 0x0020, 0x3186, 0x39a7, 0x0000, 0x0000, 0x0000, 0xf0d0, 0xff3d, 0xf86d, 0xf0ce, - 0xf8ce, 0xf0ae, 0xf951, 0x0000, 0x0000, 0x3186, 0x626f, 0x9b58, + 0xf8ce, 0xf0ae, 0xf951, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2898,11 +2898,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0xd5de, 0xe6df, 0xc618, 0x2104, 0x0000, 0x10a2, 0x0000, - 0xffdf, 0xffdf, 0xffdf, 0x41e9, 0x0020, 0x0020, 0x6213, 0xffdf, - 0xffff, 0xf79e, 0x1082, 0x318b, 0x8b1b, 0x5b35, 0x5b55, 0x1907, - 0x1906, 0x4ab3, 0x52d4, 0x52d4, 0x52d4, 0x0000, 0x0000, 0x0000, - 0x18e8, 0x4231, 0x52f5, 0x52f3, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x318b, 0x5316, 0x5316, 0x5b75, 0x5314, + 0x52f4, 0x4ab3, 0x52d4, 0x52d4, 0x52f5, 0x52f5, 0x0000, 0x0021, + 0x4a91, 0x4ad4, 0x52f5, 0x52f3, 0x0000, 0x0000, 0x0000, 0x0000, 0xad35, 0xa515, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x0861, 0x0000, 0x6b2c, 0x630c, 0x4208, 0x4207, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x4207, 0x4208, 0x41e7, 0x41e7, @@ -2913,13 +2913,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x4208, 0x4207, 0x39e7, 0x4208, 0x0000, 0x0841, 0x39e7, 0x4207, 0x4207, 0x4208, 0x4208, 0x4208, 0x4207, 0x8c31, 0x8c72, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x38cb, 0x18e3, - 0x2104, 0x3127, 0x72f3, 0xbcdb, 0x2965, 0x3186, 0x31a6, 0x3186, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x18e3, + 0x2104, 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0841, 0x31a6, 0x3186, 0x3186, 0x31a6, 0x0841, 0x5aac, 0x8bf2, 0xbd77, 0x62cf, 0x732f, 0x420a, 0x2125, 0x2125, 0x20e4, 0x20e3, 0x6b6e, 0x632d, 0x4209, 0x0841, 0x0020, 0x0841, 0x0800, 0x4843, 0xe88b, 0xda0e, 0xd12b, - 0x8826, 0x8026, 0x3803, 0x0000, 0x0040, 0x2945, 0x31c6, 0x2144, - 0x59cd, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8826, 0x8026, 0x3803, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2938,11 +2938,11 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0021, 0xbc3e, 0xabfe, 0xf79e, 0x1082, 0x0020, 0xdebb, 0xffdf, - 0xffff, 0xffff, 0xffdf, 0x0000, 0x0000, 0x0000, 0x0001, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x316b, 0x831a, 0x5af5, 0x5314, 0x0000, - 0x0000, 0x294a, 0x52d4, 0x52d4, 0x52f4, 0x52f4, 0x0000, 0x0020, - 0x4272, 0x5b56, 0x5336, 0x52f3, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0021, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x316b, 0x5315, 0x5315, 0x4a91, 0x0000, + 0x0000, 0x4a91, 0x52d4, 0x52d4, 0x4ad3, 0x52f5, 0x52d4, 0x5b56, + 0x4af4, 0x4ad4, 0x5336, 0x52f3, 0x0000, 0x0000, 0x0000, 0x0000, 0xa535, 0xa515, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x0861, 0x0000, 0x6b2c, 0x630c, 0x4207, 0x4207, 0x4207, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, @@ -2953,13 +2953,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x39e7, 0x39e7, 0x39e7, 0x39e7, 0x0000, 0x0841, 0x41e7, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x8c51, 0x9492, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x38ec, 0x20e3, - 0x2104, 0x2925, 0x0000, 0x9b96, 0x9394, 0x39e7, 0x39a7, 0x3186, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x18e3, + 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0841, 0x3186, 0x3165, 0x3186, 0x10a2, 0x10a2, 0x5a8c, 0xe67e, 0x8bd5, 0x9434, 0x83d3, 0x7350, 0x734f, 0x6b4d, 0x630c, 0x5acc, 0x630d, 0x0000, 0x0020, 0x0020, 0x41e7, 0x0020, 0x0800, 0xd88a, 0xc849, 0xc049, - 0x8805, 0x9006, 0x0000, 0x0020, 0x0841, 0x2945, 0x9434, 0x93d3, - 0x69d0, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8805, 0x9006, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -2978,9 +2977,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0821, 0x0000, 0xa39d, 0xef5f, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffdf, 0x0000, 0x0020, 0x0020, 0x0000, 0xffff, - 0xffdf, 0xef7d, 0x0861, 0x292a, 0x7ada, 0x5b58, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffdf, 0xef7d, 0x0861, 0x292a, 0x5315, 0x52f5, 0x0000, 0x0000, 0x0000, 0x0000, 0x52f4, 0x52f4, 0x52f4, 0x5314, 0x52d4, 0x4ad3, 0x4af4, 0x5335, 0x3970, 0x30ac, 0x0000, 0x0000, 0x0000, 0x0000, 0xa535, 0xa515, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, @@ -2993,13 +2993,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x41e7, 0x41e7, 0x3a07, 0x39e7, 0x39e7, 0x4208, 0x0020, 0x0841, 0x4208, 0x39e7, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x8c51, 0x9492, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x40ec, 0x2124, - 0x2104, 0x18e3, 0x18c3, 0x0841, 0x0862, 0xbcdb, 0xac36, 0x9c74, - 0x31a6, 0x31a6, 0x3186, 0x3186, 0x18c3, 0x0841, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x2124, + 0x18e3, 0x18e3, 0x18c3, 0x18e3, 0x18e3, 0x1904, 0x0000, 0x0000, + 0x18e3, 0x31a6, 0x3186, 0x3186, 0x18c3, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39c7, 0x39c6, 0x31a6, 0x20e4, 0x10a2, 0x0800, 0x0800, 0x0800, - 0x0800, 0x0800, 0x0841, 0x94b3, 0x83f2, 0x8393, 0x0000, 0x0000, - 0x388b, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0800, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3018,9 +3018,9 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xa3bc, 0xde7e, 0xddff, 0xf75f, 0xffdf, - 0xffff, 0xffff, 0xffdf, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7be, - 0xffdf, 0xef7d, 0x0862, 0x292b, 0x82fa, 0x6359, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffdf, 0xef7d, 0x0862, 0x292b, 0x52f5, 0x52f5, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ad4, 0x52f4, 0x52f4, 0x52f4, 0x5314, 0x4af4, 0x4ab3, 0x3a32, 0x0001, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0xa535, 0xa515, 0x41e7, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, @@ -3033,13 +3033,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x4228, 0x4228, 0x4228, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4208, 0x4228, 0x4228, 0x4228, 0x4a49, 0x0020, 0x0841, 0x4208, 0x39e7, 0x4207, 0x4208, 0x4208, 0x4208, 0x4207, 0x8c51, 0x9492, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x40ed, 0x2124, - 0x20e4, 0x20e3, 0x18e3, 0x0841, 0x0041, 0x7b34, 0xc4da, 0xacb6, - 0x31a6, 0x3186, 0x3185, 0x3186, 0x2965, 0x2944, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x2124, + 0x20e4, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0841, + 0x0000, 0x18e3, 0x3185, 0x3186, 0x2965, 0x2944, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2945, 0x2124, 0x31a6, - 0x31c7, 0x39c7, 0x31a6, 0x31a6, 0x39c7, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0000, 0x9c75, 0xacd6, 0x93f4, 0x628e, 0x0000, 0x0000, - 0x388b, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x31c7, 0x39c7, 0x31a6, 0x31a6, 0x39c7, 0x18e3, 0x18e3, 0x0000, + 0x0000, 0x0000, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3058,10 +3058,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x412c, 0x7a79, 0xbcde, 0xbcbc, - 0xffff, 0xffff, 0xffff, 0xf7be, 0x0000, 0x0840, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x396c, 0x831a, 0x52f5, 0x4ad3, 0x0000, - 0x0021, 0x42b3, 0x4ad4, 0x52f4, 0x52f4, 0x5315, 0x5335, 0x212d, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x396c, 0x52f5, 0x52f5, 0x4a91, 0x0000, + 0x0021, 0x4a91, 0x4ad4, 0x52f4, 0x52f4, 0x5315, 0x5335, 0x212d, 0x2089, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa515, 0xa515, 0x4207, 0x4208, 0x4208, 0x4208, 0x4208, 0x39e7, 0x0000, 0x0000, 0x0000, 0x18a3, 0x18c3, 0x10a2, 0x1082, 0x1082, @@ -3074,12 +3074,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x18a3, 0x18a2, 0x10a2, 0x1061, 0x0861, 0x0000, 0x0000, 0x0000, 0x4208, 0x4208, 0x4208, 0x4228, 0x4208, 0x39e7, 0x8c11, 0x9492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x20c5, - 0x18e3, 0x18e3, 0x20e3, 0x18e3, 0x18e3, 0x2104, 0x0841, 0x0001, - 0x93d5, 0x4208, 0x3186, 0x3186, 0x31a6, 0x39c7, 0x39a6, 0x31a6, + 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, + 0x0841, 0x0000, 0x18e3, 0x3186, 0x31a6, 0x39c7, 0x39a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, - 0x31a6, 0x3186, 0x31a6, 0x39c7, 0x39c7, 0x8c11, 0x8c12, 0x8bf2, - 0x9335, 0x92f4, 0x38ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x388b, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x31a6, 0x3186, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x18e3, + 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3098,9 +3098,9 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x931b, 0xc51e, 0xbcdc, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xf79e, 0x1082, 0x398c, 0x7afa, 0x4ad3, 0x4ad3, 0x52d4, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xf79e, 0x1082, 0x398c, 0x52f5, 0x52f5, 0x4ad3, 0x52d4, 0x5b56, 0x4af4, 0x4ad4, 0x4ad3, 0x5314, 0x1006, 0x0003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xad55, 0xad36, 0x4208, 0x4208, 0x4208, 0x4208, 0x39c7, 0x39e7, @@ -3114,12 +3114,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x4228, 0x4208, 0x4208, 0x4208, 0x4208, 0x4207, 0x8c13, 0x9c94, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x2104, 0x2104, 0x18e3, - 0x0000, 0x7b51, 0xabf9, 0x7bcf, 0x6b4d, 0x39c7, 0x31a6, 0x31a6, + 0x0000, 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x2104, 0x18e3, 0x18e3, + 0x18e3, 0x0841, 0x0000, 0x18e3, 0x31a6, 0x39c7, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x31a6, 0x3186, 0x31a6, 0x31a6, 0x39c6, - 0x31a6, 0x2945, 0x9492, 0x9cd3, 0xad54, 0x61cf, 0x0000, 0x0000, + 0x31a6, 0x0000, 0x0000, 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x18e3, + 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x386b, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3138,9 +3139,8 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x931b, 0xb4bd, 0xbcde, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffdf, - 0xffff, 0xf7de, 0x0881, 0x398c, 0x831a, 0x5314, 0x52d4, 0x4ad3, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffdf, + 0xffff, 0xf7de, 0x0881, 0x398c, 0x52f5, 0x52f5, 0x52d4, 0x4ad3, 0x4ad4, 0x4af4, 0x4b15, 0x31d0, 0x31b0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xb576, 0xb577, 0x41e7, 0x39e7, 0x4208, 0x4228, 0x39c7, 0x4208, @@ -3151,15 +3151,15 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0001, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39e7, 0x39e7, 0x4208, 0x4208, 0x4228, 0x4a28, 0xa417, 0xa477, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x20e4, 0x20e4, 0x1904, 0x2104, 0x18e3, 0x18e3, - 0x0000, 0x72ee, 0xac19, 0xbd17, 0x6b6f, 0x31a6, 0x31a6, 0x31a6, - 0x31a6, 0x39a6, 0x31a6, 0x31a6, 0x3186, 0x2965, 0x3185, 0x3186, - 0x41c9, 0x3146, 0x9493, 0x9492, 0x9cd3, 0x38aa, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, - 0x386c, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x18e3, 0x18e3, 0x0841, 0x0000, 0x18e3, 0x31a6, 0x31a6, 0x31a6, + 0x31a6, 0x39a6, 0x31a6, 0x31a6, 0x3186, 0x2965, 0x18e3, 0x0000, + 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, + 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3179,27 +3179,27 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x2087, 0x9b3e, 0xd53f, 0xd5bf, 0xf6df, 0xffdf, - 0xffff, 0xde3e, 0x0861, 0x218a, 0x5b15, 0x52f4, 0x52f4, 0x4ad4, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, + 0xffff, 0xffff, 0x0861, 0x218a, 0x5b15, 0x52f4, 0x52f4, 0x4ad4, 0x4ad4, 0x4212, 0x20ac, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x1864, 0x18a3, 0x18c3, 0x18c3, 0x18c3, 0x18c3, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa301, 0x0000, 0x0000, - 0x9b01, 0x0000, 0x0000, 0xab61, 0x3100, 0x0000, 0xab20, 0x51c1, - 0x0000, 0x8260, 0x7a60, 0x0000, 0x7200, 0x5160, 0x0020, 0x30c0, - 0x1880, 0x0000, 0x8a60, 0x9281, 0x0000, 0xb341, 0xb342, 0x0000, - 0x7aa1, 0x9ae0, 0x0820, 0x0820, 0x9ae0, 0x0000, 0x0000, 0x92a0, - 0x0000, 0x0000, 0x38e0, 0x0000, 0x0000, 0x7200, 0x7240, 0x0020, - 0x0000, 0x8a60, 0x0000, 0x4120, 0x7a20, 0x0000, 0x0000, 0x8200, - 0x0000, 0x0000, 0xa2e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x18c3, 0x18c3, 0x10a3, 0x18c3, 0x18e4, 0x2104, 0x0001, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xab20, 0x51c1, 0x0000, + 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, + 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, + 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, + 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, + 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, + 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, + 0xab20, 0x51c1, 0x0000, 0xab20, 0x51c1, 0x0000, 0x0000, 0x0000, + 0x0000, 0x18c3, 0x10a3, 0x18c3, 0x18e4, 0x2104, 0x0001, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x20c5, 0x20e4, 0x20e4, 0x18e3, 0x18e3, - 0x18e3, 0x2103, 0x2124, 0x0841, 0x72d2, 0xb419, 0x2123, 0x31a6, - 0x39a6, 0x39a6, 0x31a6, 0x3186, 0x31a6, 0xad36, 0x9473, 0x9453, - 0xa3f7, 0xb41a, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x18e3, 0x2103, 0x18e3, 0x18e3, 0x0000, 0x18e3, 0x18e3, 0x31a6, + 0x39a6, 0x31a6, 0x31a6, 0x18e3, 0x0000, 0x0000, 0x0000, 0x18e3, + 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x382c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3219,25 +3219,25 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x20c8, 0x8339, 0xbcde, 0xbcde, - 0xb47e, 0xb47e, 0x0841, 0x218b, 0x4a93, 0x52f4, 0x4ab4, 0x28ec, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0x0841, 0x218b, 0x4a93, 0x52f4, 0x4ab4, 0x28ec, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0841, 0x18c3, - 0x2945, 0x2965, 0x2945, 0x0020, 0x0000, 0xfe21, 0x0000, 0x0000, - 0xfe82, 0x0000, 0x0000, 0xfea2, 0x3920, 0x0000, 0xf5c0, 0x82e1, - 0x0840, 0xf620, 0xff42, 0x0860, 0xffe1, 0xe661, 0x0840, 0xf681, - 0xd4e1, 0x0820, 0xeec2, 0xeee3, 0x0840, 0xf5a0, 0xff01, 0x0820, - 0xfe82, 0xfea2, 0x0000, 0x0000, 0xfe61, 0x0000, 0x0000, 0xee02, - 0x0820, 0x0000, 0xf601, 0x0020, 0x0000, 0xfe61, 0xc4c1, 0x0020, - 0x1060, 0xed60, 0x0000, 0x6220, 0xf642, 0x0000, 0x0000, 0xfec4, - 0x0000, 0x0000, 0xfe20, 0x0000, 0x0000, 0x18e3, 0x18e3, 0x2124, - 0x1082, 0x1082, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2945, 0x2965, 0x2945, 0x0020, 0x0000, 0xf5c0, 0x82e1, 0x0000, + 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, + 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, + 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, + 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, + 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, + 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, + 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0x0000, 0x0000, + 0x0000, 0x1082, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0800, 0x0000, 0x18e4, 0x18e3, 0x18e3, - 0x2104, 0x2104, 0x2124, 0x2945, 0x18e3, 0x0000, 0xce5b, 0xbdb7, - 0xb5b6, 0xad55, 0xad35, 0xad35, 0xacf6, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2104, 0x2104, 0x2124, 0x18e3, 0x18e3, 0x0000, 0x18e3, 0x31a6, + 0x31a6, 0x18e3, 0x0000, 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x18e3, + 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x386c, 0x386c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3259,25 +3259,25 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x20a8, 0x82fa, 0xb47f, 0xbcbe, - 0xac5e, 0xac3e, 0x0841, 0x21ac, 0x4ab4, 0x3a11, 0x294e, 0x28ac, + 0x0000, 0x0000, 0x0000, 0x0000, 0x20a8, 0x0000, 0xffff, 0xffff, + 0xffff, 0xffff, 0x0841, 0x21ac, 0x4ab4, 0x3a11, 0x294e, 0x28ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0840, 0x0020, 0x0000, 0x0020, 0x10a2, - 0x2945, 0x2945, 0x2925, 0x0020, 0x0000, 0xf5c0, 0x0000, 0x0000, - 0xfe41, 0x0000, 0x0000, 0xfe41, 0x4160, 0x0000, 0xf5c0, 0x72a0, - 0x0840, 0xf600, 0xfee2, 0x0860, 0xffc2, 0xe600, 0x0840, 0xee01, - 0xd501, 0x0840, 0xee41, 0xeec1, 0x0840, 0xe580, 0xfec0, 0x0840, - 0xfe81, 0xf621, 0x0000, 0x0000, 0xf600, 0x0000, 0x0000, 0xeda2, - 0x0840, 0x0000, 0xf602, 0x0840, 0x0000, 0xf641, 0x9bc1, 0x0000, - 0x0840, 0xed60, 0x0000, 0x6220, 0xf622, 0x0000, 0x0000, 0xf662, - 0x0000, 0x0000, 0xf5e0, 0x0000, 0x0000, 0x18e3, 0x2124, 0x2924, - 0x0861, 0x0840, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2945, 0x2945, 0x2925, 0x0020, 0x0000, 0xf5c0, 0x82e1, 0x0000, + 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, + 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, + 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, + 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, + 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, + 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, + 0xf5c0, 0x82e1, 0x0000, 0xf5c0, 0x82e1, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0840, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18e4, 0x18e3, 0x20e4, - 0x2104, 0x2104, 0x2104, 0x2104, 0x2124, 0x0000, 0xc5b9, 0xad36, - 0xad35, 0x9cd4, 0x9cb4, 0xa4b5, 0xa456, 0x0000, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2104, 0x2104, 0x2104, 0x2104, 0x2124, 0x18e3, 0x0000, 0x0841, + 0x0000, 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, + 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x2047, 0x2848, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3299,24 +3299,24 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xa27c, 0xa27c, 0xa27c, 0xa27c, 0xa25c, 0x9a5c, 0x9a3c, 0x9a5c, 0x9a5c, 0x9a5c, 0xa25c, 0xa27c, 0xa27c, 0xa27c, 0x9a7c, 0x9a7c, 0xa27c, 0x9a7c, 0x9a7c, 0x9a5b, 0x925b, 0x923a, 0x81d8, 0x81f7, - 0x6974, 0x6133, 0x58f1, 0x0000, 0x0000, 0x0000, 0x0020, 0x6a79, - 0x6236, 0x7b19, 0x1087, 0x18ea, 0x20cb, 0x0001, 0x0000, 0x0000, + 0x6974, 0x6133, 0x58f1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1807, 0x300b, 0x300b, 0x300a, 0x404d, 0x404d, 0x484e, 0x484e, 0x484e, 0x484e, 0x486e, 0x486e, 0x486d, 0x382c, 0x2829, 0x2809, 0x300b, 0x1806, 0x1005, 0x0000, 0x1062, 0x1082, - 0x2945, 0x2945, 0x2945, 0x0020, 0x0000, 0xf5e1, 0x0000, 0x0000, - 0xfe41, 0x0000, 0x0000, 0xf620, 0x4160, 0x0000, 0xf5e1, 0x8320, - 0x1060, 0xf621, 0xfe81, 0x0840, 0xff81, 0xd580, 0x0840, 0xede0, - 0xcd01, 0x0840, 0xee61, 0xf701, 0x0840, 0xe580, 0xfec0, 0x0820, - 0xe5c1, 0xf5e0, 0x0000, 0x0000, 0xf620, 0x0820, 0x0000, 0xe5c4, - 0x0840, 0x0000, 0xf600, 0x0020, 0x0000, 0xf600, 0x9bc0, 0x0000, - 0x1060, 0xed80, 0x0000, 0x6240, 0xf621, 0x0000, 0x0000, 0xee21, - 0x0000, 0x0000, 0xfe40, 0x0000, 0x0020, 0x2124, 0x2124, 0x2124, - 0x0020, 0x0020, 0x0000, 0x0002, 0x1005, 0x302a, 0x2829, 0x2809, + 0x2945, 0x2945, 0x2945, 0x0020, 0x0000, 0xf5e1, 0x8320, 0x0000, + 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, + 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, + 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, + 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, + 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, + 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, + 0xf5e1, 0x8320, 0x0000, 0xf5e1, 0x8320, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x0000, 0x0002, 0x1005, 0x302a, 0x2829, 0x2809, 0x302a, 0x404d, 0x404d, 0x402c, 0x382c, 0x382c, 0x382c, 0x382c, 0x384c, 0x2829, 0x2829, 0x0000, 0x0000, 0x0000, 0x0000, 0x18a5, - 0x2104, 0x2104, 0x1903, 0x18e3, 0x18e3, 0x18c3, 0x0000, 0x9c36, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2104, 0x2104, 0x1903, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0000, + 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x384c, 0x406d, 0x408e, 0x6954, 0x6113, 0x89d9, 0x9a3b, 0x9a7c, 0x9a7c, 0x9a5c, 0x9a5c, 0x9a5c, 0x9a5c, @@ -3340,23 +3340,23 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x48ce, 0x48ce, 0x48ce, 0x48ef, 0x48ce, 0x48ef, 0x48ef, 0x48ef, 0x490f, 0x48ee, 0x48ce, 0x40cd, 0x40cd, 0x40ad, 0x388b, 0x38ab, 0x38ab, 0x308a, 0x2868, 0x0000, 0x0000, 0x0000, 0x0020, 0x1846, - 0x1844, 0x1865, 0x0000, 0x0000, 0x0801, 0x0020, 0x0000, 0x0000, + 0x1844, 0x1865, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0803, 0x2006, 0x1805, 0x1004, 0x1806, 0x2007, 0x2007, 0x2007, 0x2007, 0x2007, 0x2028, 0x2028, 0x2007, 0x1806, 0x1805, 0x1806, 0x1806, 0x0803, 0x0803, 0x0000, 0x0020, 0x0020, - 0x0861, 0x1082, 0x10a2, 0x0020, 0x0000, 0x8300, 0x0020, 0x0000, - 0x7aa0, 0x0000, 0x0000, 0x7ae0, 0x1880, 0x0000, 0x9320, 0x5a20, - 0x0820, 0x8b00, 0x9b80, 0x0020, 0x9b80, 0x6a60, 0x0020, 0x6a60, - 0x6220, 0x0020, 0x9b40, 0x9b60, 0x0020, 0x8320, 0x9340, 0x0000, - 0x6280, 0x7260, 0x0000, 0x0000, 0x8b20, 0x0840, 0x0020, 0x82c0, - 0x0020, 0x0000, 0x7aa0, 0x0000, 0x0000, 0x6200, 0x4180, 0x0000, - 0x0820, 0x7aa0, 0x0000, 0x18a0, 0x72a0, 0x0000, 0x0000, 0x9b60, - 0x0020, 0x0000, 0x8b60, 0x0000, 0x0000, 0x1082, 0x1082, 0x1082, + 0x0861, 0x1082, 0x10a2, 0x0020, 0x0000, 0x9320, 0x5a20, 0x0000, + 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, + 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, + 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, + 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, + 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, + 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, + 0x9320, 0x5a20, 0x0000, 0x9320, 0x5a20, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0803, 0x1005, 0x1004, 0x1004, 0x1004, 0x1806, 0x2006, 0x2006, 0x1806, 0x1805, 0x1806, 0x1806, 0x1806, 0x1005, 0x1805, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, - 0x0841, 0x18c3, 0x18c3, 0x10c2, 0x10a2, 0x18a2, 0x0000, 0x524b, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0x18c3, 0x18c3, 0x10c2, 0x10a2, 0x18a2, 0x18e3, 0x18e3, + 0x0000, 0x18e3, 0x18e3, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2007, 0x2027, 0x1847, 0x386c, 0x3069, 0x38ac, 0x490e, 0x490f, 0x48ef, 0x48ef, 0x48ef, 0x48ef, 0x48ce, @@ -3395,8 +3395,8 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0841, 0x0861, 0x1082, 0x10a2, 0x18c3, 0x0861, 0x4a09, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0841, 0x0861, 0x1082, 0x10a2, 0x18c3, 0x0861, 0x18e3, + 0x0000, 0x18e3, 0x18e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3539,14 +3539,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7de, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xffdf, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9472, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xf79e, 0x0841, 0x0820, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0021, 0xa4f4, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0021, 0xa4f4, 0xa4f4, 0xa4f4, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, @@ -3573,7 +3573,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa27c, 0x30a7, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xffdf, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9492, 0xffdf, 0xffbf, 0xffdf, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, @@ -3584,9 +3584,9 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, - 0xffdf, 0xffde, 0xf7ff, 0xffff, 0xffff, 0x0020, 0x0000, 0x0000, + 0xffdf, 0xffde, 0xf7ff, 0x31a6, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, - 0xffff, 0xffff, 0xf7be, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xf7be, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, @@ -3596,7 +3596,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xf8f2, 0xf891, 0xf851, 0xf851, 0xf871, 0xf8d1, 0xf8f2, 0xf8b1, 0xf8b2, 0xf912, 0xf933, 0xf933, 0xf8f2, 0xf892, 0xf891, 0xf871, 0xf8b2, 0xf892, 0xf8b3, 0xf8f3, 0xf913, 0xf913, 0xf933, 0xf933, - 0xf8d2, 0xfe7d, 0xf8d3, 0xf132, 0xffff, 0xffff, 0x0000, 0x0000, + 0xf8d2, 0xf933, 0xf8d3, 0xf132, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xffff, 0xf0f2, 0xe891, 0xf071, 0xf091, 0xf0f2, 0xf912, 0xf932, 0xf8f2, 0xf892, 0xf872, 0xf872, 0xf8d2, 0xf912, 0xf932, 0xf912, 0xf8b2, @@ -3614,17 +3614,17 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa25c, 0x30a8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xffff, - 0xffff, 0x3eff, 0x775f, 0x6f3f, 0x673f, 0x7f5f, 0x977f, 0x977f, + 0x069f, 0x3eff, 0x775f, 0x6f3f, 0x673f, 0x7f5f, 0x977f, 0x977f, 0x877f, 0x977f, 0x7f5f, 0x7f5f, 0x6f5f, 0x6f5f, 0x6f5f, 0x775f, 0x573f, 0x4f1f, 0x573f, 0x3eff, 0x6f3f, 0x36df, 0x4f3f, 0x6f5f, 0x1edf, 0x16df, 0x7f5f, 0x5f5f, 0x5f3f, 0x4f1f, 0x7f7f, 0x8f5f, 0x1eff, 0xa79f, 0x373f, 0x369e, 0xb79f, 0xffff, 0x10c3, 0x2945, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7be, 0xffff, 0xa79f, + 0x0000, 0x0000, 0x0000, 0x0000, 0x9472, 0xf7be, 0xffff, 0xa79f, 0x9f7f, 0x875f, 0x775f, 0x6f1f, 0x9f7f, 0x6f3f, 0x675f, 0xb79f, 0x9f7f, 0x9f7f, 0xa79f, 0x675f, 0x7f5f, 0xa79f, 0x6f5f, 0x6f5f, 0x775f, 0x8f9f, 0x777f, 0x7f7f, 0x877f, 0x877f, 0x977f, 0x6f5f, 0x7f7f, 0x877f, 0x6f3f, 0x775f, 0x6f7f, 0x6f5f, 0x773f, 0x773f, - 0x4eff, 0x4f1f, 0x2eff, 0xffff, 0xffff, 0x0820, 0x0000, 0x0000, + 0x4eff, 0x4f1f, 0x2eff, 0xffff, 0x31a6, 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x1061, 0x0842, 0xffdf, 0xffff, 0xdfdf, 0x6f3f, 0x875f, 0x8f7f, 0xaf7f, 0x7f7f, 0x677f, 0x8f7f, 0x7f5f, 0x875f, 0x7f9f, 0x877f, 0x8f7f, 0x877f, @@ -3659,12 +3659,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x673f, 0xffff, 0x0ebf, 0xefff, 0x0e9e, 0xe7df, 0x9f5f, 0x0e1d, 0xefff, 0xffff, 0x0ebf, 0xf7ff, 0xa79f, 0xf7ff, 0x0ebf, 0x069f, 0xdfdf, 0x063d, 0x067e, 0xe7df, 0x269f, 0x0ebf, 0xf7df, 0xffff, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7be, 0xffff, 0x9fdf, + 0x0000, 0x0000, 0x0000, 0x0000, 0x9472, 0xf7be, 0xffff, 0x9fdf, 0xa79f, 0xe7df, 0xb7bf, 0xcfbf, 0x16be, 0xefdf, 0xf7ff, 0x16ff, 0xefff, 0x6f1f, 0xd7df, 0xe7df, 0xd7df, 0x067d, 0xefdf, 0x1eff, 0x8f5f, 0x673f, 0xe7df, 0xe7df, 0x067f, 0xe7bf, 0x36ff, 0xe7bf, 0x067f, 0x065e, 0xefdf, 0x36df, 0x26ff, 0xdfdf, 0x067f, 0x0e7e, - 0xd7df, 0x2edf, 0xf7df, 0x0e9f, 0x065f, 0xef9e, 0x0000, 0x0000, + 0xd7df, 0x2edf, 0xf7df, 0x0e9f, 0x065f, 0xef9e, 0x31a6, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7be, 0xe7df, 0xefdf, 0x0e7f, 0x2edf, 0xefdf, 0x169f, 0xe7df, 0x169e, 0xf7ff, 0xc79f, 0x0e9e, 0xdfdf, 0xcfbf, 0x069e, 0xe7df, 0x0ebf, 0xcfbf, @@ -3674,14 +3674,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xafbf, 0xce79, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x738e, 0xffdf, 0xf071, 0xf2f5, 0xfb15, 0xf933, 0xff1d, 0xf8f2, 0xfb17, 0xf891, 0xff7f, 0xf1d2, 0xf912, 0xfd5b, 0xfa13, 0xf993, 0xfe1d, - 0xfa74, 0xf973, 0xf993, 0xf8f2, 0xf8f2, 0xf953, 0xf871, 0xff7f, + 0xfa74, 0xf973, 0xff7f, 0xf8f2, 0xf8f2, 0xff7f, 0xf871, 0xff7f, 0xf973, 0xfc38, 0xff9e, 0xf0d2, 0xfb37, 0xf953, 0xffff, 0xfc17, 0xf913, 0xffff, 0xfe7c, 0xf911, 0xff7e, 0xf0f1, 0xeb75, 0xf79e, 0x0821, 0x0840, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7be, 0xffbf, - 0xf132, 0xf973, 0xfc79, 0xf953, 0xf8f2, 0xf912, 0xf8f2, 0xf8d2, - 0xf0b1, 0xf912, 0xf0d1, 0xf932, 0xf932, 0xf932, 0xf932, 0xf933, - 0xf913, 0xf913, 0xf913, 0xf933, 0xf933, 0xf933, 0xf953, 0xf973, - 0xf953, 0xf953, 0xf933, 0xf8f2, 0xf8b2, 0xf8f2, 0xf8b2, 0xf810, + 0xf132, 0xf973, 0xff7f, 0xf953, 0xff7f, 0xf912, 0xff7f, 0xf9b4, + 0xf0b1, 0xff7f, 0xf0d1, 0xf932, 0xff7f, 0xf932, 0xff7f, 0xf933, + 0xf9b4, 0xf913, 0xf913, 0xff7f, 0xf9b4, 0xf933, 0xff7f, 0xf9b4, + 0xf953, 0xf9b4, 0xff7f, 0xf8f2, 0xff7f, 0xf8f2, 0xff7f, 0xf810, 0xfe7b, 0xf953, 0xf173, 0xfe3d, 0xffbf, 0x0841, 0x0000, 0x0000, 0x0000, 0x302a, 0x488f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3693,7 +3693,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x81b9, 0x1864, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7df, 0xa77f, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9492, 0xf7df, 0x069f, 0x067f, 0x069f, 0x069f, 0x06bf, 0x067f, 0x06bf, 0x06bf, 0x0e9f, 0x067f, 0x067f, 0x067e, 0x069f, 0x06bf, 0x0ebf, 0x06bf, 0x069f, 0x069f, 0x069f, 0x0ebf, 0x069f, 0x069f, 0x065e, 0x065e, 0x067e, @@ -3704,7 +3704,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x06bf, 0x065e, 0x065e, 0x065e, 0x067e, 0x06bf, 0x06bf, 0x0edf, 0x0edf, 0x0ebf, 0x06bf, 0x069f, 0x067f, 0x063e, 0x067e, 0x069f, 0x06bf, 0x06bf, 0x06bf, 0x0edf, 0x0ebf, 0x069f, 0x067e, 0x065e, - 0x069f, 0x06bf, 0x06df, 0x06bf, 0x067f, 0x05ff, 0x95fa, 0xcdbe, + 0x069f, 0x06bf, 0x06df, 0x06bf, 0x067f, 0x05ff, 0x95fa, 0x0020, 0x0020, 0x0020, 0x0000, 0x0020, 0x7c0f, 0xf77d, 0x36bf, 0x0e5f, 0x063e, 0x0e9f, 0x0e9f, 0x067f, 0x067e, 0x067e, 0x069f, 0x069f, 0x0e9f, 0x06df, 0x069f, 0x065e, 0x069f, 0x069f, 0x0ebf, 0x06bf, @@ -3733,7 +3733,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa31f, 0x92bd, 0x1885, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xbfbf, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9492, 0xffff, 0x069f, 0x065e, 0x16bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x067e, 0x067f, 0x069f, 0x069f, 0x06bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, @@ -3744,7 +3744,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x069f, 0x067e, 0x067e, 0x067f, 0x069f, 0x06bf, 0x0ebf, 0x06bf, 0x0ebf, 0x069f, 0x069f, 0x06bf, 0x069f, 0x067f, 0x067e, 0x069f, 0x06bf, 0x06bf, 0x06bf, 0x069f, 0x067f, 0x067f, 0x067f, 0x069f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x067f, 0xad7d, 0xad7f, + 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x067f, 0xad7d, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x7c11, 0xffff, 0x4f1f, 0xe7de, 0x065e, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x069f, 0x06bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, @@ -3773,19 +3773,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2046, 0xa2bd, 0x0821, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x1082, 0xf7ff, 0x2e7e, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9492, 0xf7ff, 0x2e7e, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069e, 0x067e, 0x069f, 0x06bf, 0x06bf, 0x067e, 0x067e, 0x069f, 0x06bf, 0x06bf, 0x069f, 0x069f, 0x069f, 0x06bf, 0x06df, 0x06bf, 0x06bf, 0x069f, 0x067e, 0x065e, 0x067f, 0x069f, 0x067f, 0x069f, 0x069f, 0x06bf, 0x06bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, - 0xa55f, 0x0020, 0x0000, 0x0020, 0xf7bf, 0x977f, 0x065e, 0x067f, + 0xa55f, 0x0020, 0x0000, 0x9472, 0xf7bf, 0x977f, 0x065e, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067e, 0x067f, 0x06bf, 0x0ebf, 0x0ebf, 0x0ebf, 0x06bf, 0x067e, 0x067e, 0x067e, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, - 0x069f, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, 0x143f, 0x853f, - 0x0000, 0x0000, 0x0020, 0xf7be, 0xffdf, 0x0e5d, 0x067e, 0x069f, + 0x069f, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, 0x143f, 0x0020, + 0x0000, 0x0000, 0x0020, 0x7c11, 0xffdf, 0x0e5d, 0x067e, 0x069f, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, 0x06bf, 0x069f, 0x067f, 0x069f, 0x069f, 0x06bf, 0x06bf, 0x06bf, 0x067e, 0x067e, 0x067e, 0x069e, 0x06bf, 0x06bf, 0x06bf, 0x069f, 0x069f, 0x06bf, 0x06bf, @@ -3813,18 +3813,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2866, 0xaafd, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffdf, 0xe7df, 0x06bf, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x067f, 0x06bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x06bf, 0xf7ff, 0xf7ff, 0xf7df, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7df, 0xf7df, 0xffdf, 0xe7bf, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x065f, - 0x52d7, 0x0000, 0x0000, 0x4208, 0xf7df, 0x3e7e, 0x065e, 0x067f, + 0x52d7, 0x0000, 0x0000, 0x9472, 0xf7df, 0x3e7e, 0x065e, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x36bf, 0xe7bf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xf7df, 0xf7df, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0x06bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x5d5f, 0x8c3c, + 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x5d5f, 0x0020, 0x0000, 0x0020, 0x0000, 0xffff, 0x5eff, 0x06bf, 0x06bf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067e, 0x0e9f, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, @@ -3853,18 +3853,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2887, 0xa2dd, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0840, 0xffff, 0xd7df, 0x0e9f, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0840, 0xffff, 0x067f, 0x0e9f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x06bf, 0x0ebf, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xf7df, 0x06bf, 0x067e, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x065e, 0x061f, - 0x841c, 0x0000, 0x0000, 0x736e, 0xf7be, 0x4edf, 0x067e, 0x067f, + 0x841c, 0x0000, 0x0000, 0x9472, 0xf7be, 0x4edf, 0x067e, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067e, 0x46df, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xf7df, 0x065e, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x84be, 0x841a, + 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x84be, 0x0020, 0x0000, 0x0020, 0x0000, 0xf7df, 0x5ede, 0x069f, 0x06bf, 0x069f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x06bf, 0x069f, 0x16df, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, @@ -3881,7 +3881,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x8b5c, 0x937c, 0x937c, 0x937d, 0x939d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x937d, 0x935d, 0x935d, 0x8b3d, 0x935d, 0x939d, - 0x9b7c, 0xf913, 0xf913, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, + 0x9b7c, 0xff7e, 0xf913, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf953, 0xc2fa, 0xa45e, 0x0021, 0x0000, 0x0000, 0x0000, 0xa27c, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3893,7 +3893,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2887, 0xa2bd, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xffff, 0xf7ff, 0x0e9f, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xffff, 0x067f, 0x0e9f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0e9f, 0xf7df, 0x6b4c, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, @@ -3901,13 +3901,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x05fd, 0x66df, 0x0000, 0x0000, 0x0841, 0xef9e, 0x065e, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0e7e, - 0xe7df, 0xffbe, 0x0000, 0x0020, 0x0020, 0x0020, 0x0000, 0x0000, + 0x069f, 0xffbe, 0x0000, 0x0020, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0020, 0x0000, 0x0020, 0x0020, 0x0000, 0xefbf, 0x063e, 0x069f, 0x069f, 0x069f, 0x069f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x9c7f, 0x1085, + 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x9c7f, 0x0020, 0x0000, 0x0000, 0x0021, 0xf7df, 0x4edf, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067e, - 0xffff, 0xffdf, 0x0020, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, + 0x069f, 0xffdf, 0x0020, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3920,7 +3920,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2146, 0xffff, 0xf953, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf932, 0xf933, 0xf953, 0xc0f2, 0xa39c, 0x93fa, 0x0020, 0x0000, 0x0000, 0x0000, 0xa25c, 0x0821, 0x0000, 0x0000, 0x0000, @@ -3933,7 +3933,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2888, 0xa29d, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0861, 0xf7df, 0xbfdf, 0x065d, + 0x0000, 0x0000, 0x0000, 0x0000, 0x9492, 0xf7df, 0x067f, 0x065d, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0e7e, 0xefdf, 0x41e7, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3941,13 +3941,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0e3e, 0xbf1f, 0x0000, 0x0000, 0x0000, 0xf7bf, 0x067e, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x0e9e, - 0xffff, 0xe73c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0x732d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xefbf, 0x063d, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x069f, 0x067f, 0x063e, 0x8c1e, 0x0862, 0x0000, 0x0020, 0x1082, 0xf7df, 0x16bf, 0x065e, 0x069f, 0x069f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067e, 0x3efe, - 0xbe39, 0x6b8d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067e, 0x069f, + 0x069f, 0xffbf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3955,7 +3955,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0xce9a, 0xff1e, 0xf0d2, 0xf0f2, 0xf912, 0xf912, 0xf912, + 0x0020, 0xce9a, 0xff1e, 0xf933, 0xf933, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf932, 0xe932, 0xc8b0, 0x9bbd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3981,13 +3981,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x067f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x06bf, 0x0e5f, 0xff3f, 0x0000, 0x0000, 0x0000, 0xf7df, 0x067f, 0x069f, 0x069f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0e7e, - 0xffbf, 0x94d6, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffbf, 0x732d, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x0841, 0x732d, 0xefdf, 0x065e, 0x069f, 0x069f, 0x069f, 0x069f, + 0x0841, 0xffdf, 0x065f, 0x065e, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x051e, 0x941d, 0x0000, 0x0020, 0x0820, 0x52aa, 0xf7df, 0x065f, 0x065e, 0x067e, 0x069f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0xefbf, - 0xdebb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x069f, + 0xdebb, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -3995,12 +3995,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x1082, 0xf79e, 0xea35, 0xf0d1, 0xf8f2, 0xf912, 0xf912, 0xf8f2, + 0x1082, 0xf79e, 0xea35, 0xf933, 0xf8f2, 0xf912, 0xf912, 0xf8f2, 0xf912, 0xf912, 0xf912, 0xf912, 0xf933, 0xc8d0, 0xb8af, 0x937d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a69, 0xf77e, 0xe80e, 0xf112, 0xf912, 0xf912, 0xf912, 0xf912, 0xf932, 0xf932, 0xf932, 0xf912, 0xf132, 0xd0b0, 0xa3fd, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa7d, 0x1043, 0x0000, 0x0000, 0x0000, @@ -4013,20 +4013,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2887, 0xa29c, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0xef7d, 0xf7df, 0x067f, 0x069f, + 0x0000, 0x0000, 0x0000, 0x0020, 0x9492, 0xf7df, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x069f, 0x069f, 0x05ff, 0x0e1f, 0xd63f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9cb3, 0xf7be, 0xffdf, 0x0e7f, 0x067f, 0x067f, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x069f, 0xbdbf, 0xb53d, - 0x0820, 0x0020, 0x0841, 0xffff, 0x065e, 0x067f, 0x067f, 0x069f, + 0x0820, 0x0020, 0x9472, 0xffff, 0x065e, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0dfd, - 0xff1f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xffdf, - 0xf7be, 0xffdf, 0x0e3d, 0x065f, 0x067f, 0x067f, 0x067f, 0x069f, + 0xffbf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x0000, + 0xffdf, 0x065f, 0x0e3d, 0x065f, 0x067f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x0ebf, 0x04ff, 0xac7d, 0x0000, 0x0000, 0x0020, 0xf79e, 0x0e9f, 0x069f, 0x069f, 0x067f, 0x067f, - 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0x7d5e, + 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x06bf, 0xffbf, 0x7356, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4035,7 +4035,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, - 0xffdf, 0xebd7, 0xf112, 0xf0f2, 0xf8f2, 0xf8f2, 0xf912, 0xf8f2, + 0xffdf, 0xebd7, 0xf933, 0xf933, 0xf8f2, 0xf8f2, 0xf912, 0xf8f2, 0xf912, 0xf912, 0xf912, 0xf912, 0xf8f2, 0xa0af, 0xa8ae, 0x9b9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4053,20 +4053,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002, 0x308b, 0xa2dd, 0x0001, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0xf7be, 0xffff, 0x069f, 0x069f, + 0x0000, 0x0000, 0x0000, 0x0000, 0x9492, 0xffff, 0x069f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x05df, 0x0d9f, 0xffbf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0xbdf9, 0xf7ff, 0xffff, 0x0e9f, 0x069f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x067f, 0xc59f, 0xb4fe, - 0x0020, 0x0000, 0x0020, 0xffff, 0x063e, 0x065f, 0x067f, 0x069f, + 0x0020, 0x0000, 0x9472, 0xffff, 0x063e, 0x065f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, 0x0ddd, - 0xdeff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, - 0xffff, 0xffff, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, + 0xffbf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffdf, + 0x065f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x069f, 0x0e9f, 0x151f, 0xbd7e, 0x0000, 0x0000, 0x0000, 0xf79e, 0x06bf, 0x069f, 0x067f, 0x067f, 0x067f, - 0x067f, 0x067f, 0x067f, 0x067f, 0x069f, 0x069f, 0x065e, 0x7cfe, + 0x067f, 0x067f, 0x067f, 0x067f, 0x069f, 0x069f, 0x065e, 0xffbf, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4075,7 +4075,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, - 0xffdf, 0xf357, 0xf112, 0xf912, 0xf8f2, 0xf8f2, 0xf912, 0xf912, + 0xffdf, 0xf357, 0xf933, 0xf912, 0xf8f2, 0xf8f2, 0xf912, 0xf912, 0xf912, 0xf912, 0xf8f2, 0xf912, 0xf912, 0xa8b0, 0xb0af, 0xac5f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4093,19 +4093,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa29d, 0x410b, 0xaa7e, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0841, 0xffff, 0xffff, 0x069f, 0x069f, + 0x0000, 0x0000, 0x0000, 0x9492, 0xffff, 0x069f, 0x069f, 0x069f, 0x067f, 0x067f, 0x065f, 0x065f, 0x065f, 0x067f, 0x069f, 0x06bf, 0x0e9f, 0x5efe, 0xb47c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x31a6, 0xffdf, 0xf7ff, 0xdfdf, 0x065e, 0x069f, 0x069f, 0x067f, 0x067f, 0x067f, 0x069f, 0x069f, 0x067f, 0x067f, 0x067f, 0x065e, 0xb4bf, 0x9bdd, - 0x0000, 0x0000, 0x0020, 0xffff, 0x065f, 0x067f, 0x067f, 0x067f, - 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x067f, 0x065f, 0x3eff, - 0xdefe, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffdf, 0xf7df, 0xffdf, + 0x0000, 0x0000, 0x9472, 0xffff, 0x065f, 0x067f, 0x067f, 0x067f, + 0x067f, 0x067f, 0x069f, 0x069f, 0x069f, 0x067f, 0x065f, 0xffbf, + 0x732d, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x732d, 0xffdf, 0x065f, 0x065e, 0x065f, 0x067f, 0x067f, 0x067f, 0x065f, 0x067f, 0x069f, 0x067f, 0x067f, 0x065f, 0x067e, 0x065f, 0x9cdd, 0x0000, 0x0020, - 0x0840, 0xffdf, 0xf7df, 0x069f, 0x067f, 0x067f, 0x067f, 0x067f, + 0x0840, 0x7c11, 0xf7df, 0x069f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x067f, 0x065f, 0x067f, 0xf75e, 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffdf, 0xf7be, 0xf7df, 0xf7df, 0xf7df, 0xf7df, @@ -4115,10 +4115,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x2965, 0xf7be, 0xffbf, 0xffbf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffbf, 0xffbf, 0xffdf, 0xffbf, - 0xffdf, 0xf0d2, 0xf112, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, + 0xffdf, 0xf933, 0xf933, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf8f2, 0xf8f2, 0xf912, 0xb45f, 0xbcdf, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffde, 0xffbf, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9cb3, 0xffde, 0xffbf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffbf, 0xf57a, 0xf932, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf932, 0xf932, @@ -4133,32 +4133,32 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a1b, 0x5972, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xffff, 0x4efe, 0x067e, 0x063f, 0x05ff, - 0x05ff, 0x05ff, 0x059f, 0x05ff, 0x051f, 0x05bf, 0x051f, 0x063f, + 0x0000, 0x0000, 0x0020, 0x9492, 0xffff, 0x039f, 0x069f, 0x039f, + 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x7e5f, 0xf7bf, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39c7, 0xffff, 0xf7ff, 0x063f, - 0x063f, 0x061f, 0x061f, 0x063f, 0x061f, 0x065f, 0x061f, 0x067f, - 0x04df, 0x069f, 0x04ff, 0x065e, 0x03bd, 0x037d, 0x9c3f, 0x0000, - 0x0020, 0x9cd3, 0xffff, 0x063f, 0x061f, 0x05df, 0x05df, 0x053e, - 0x05bf, 0x05df, 0x053f, 0x057f, 0x05df, 0x057f, 0x051e, 0xf7be, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xffff, 0xffdf, 0x05fe, 0x05fe, 0x05de, - 0x061f, 0x061f, 0x061f, 0x05ff, 0x061f, 0x063f, 0x04df, 0x04df, - 0x067f, 0x05bf, 0x05ff, 0x043d, 0x0d1f, 0x9c7e, 0x0000, 0x0820, - 0x0840, 0xffff, 0xffdf, 0x063f, 0x063f, 0x063f, 0x05bf, 0x05df, - 0x05bf, 0x063f, 0x065f, 0x05ff, 0x049e, 0x047d, 0xffff, 0x10a2, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffff, 0xf7df, 0x05fe, 0x065f, 0x065f, 0x065f, 0x063e, - 0x061e, 0x063e, 0x065e, 0x065f, 0x065f, 0x065f, 0x069f, 0x069f, - 0x067f, 0x063e, 0x065f, 0x065f, 0x065f, 0x061e, 0x05ff, 0xf7de, + 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, + 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x9c3f, 0x0000, + 0x0020, 0x9cd3, 0xffff, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, + 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0xf7be, + 0x732d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x732d, 0xf7df, 0x041e, 0x041e, + 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, + 0x041e, 0x041e, 0x041e, 0x041e, 0x0d1f, 0x9c7e, 0x0000, 0x0820, + 0x0840, 0x7c11, 0xffdf, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, + 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0xffff, 0x6354, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffff, 0xf7df, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, + 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, + 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0x069f, 0x039f, 0xf7de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xffff, 0xf8b3, 0xf913, 0xf933, 0xf913, 0xf8b3, 0xf893, 0xf872, 0xf872, - 0xf8b2, 0xf8d3, 0xf8f3, 0xf8f3, 0xf913, 0xf913, 0xf8d2, 0xf873, - 0xf8b2, 0xf112, 0xf912, 0xf112, 0xf912, 0xf912, 0xf912, 0xf913, + 0xf8b2, 0xf8d3, 0xf8f3, 0xf8f3, 0xf913, 0xf913, 0xf933, 0xf933, + 0xf933, 0xf933, 0xf933, 0xf933, 0xf912, 0xf912, 0xf912, 0xf913, 0xf932, 0xf913, 0xf913, 0xf8d1, 0xa35d, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0020, 0xffff, 0xffff, 0xf872, 0xf873, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xf872, 0xf873, 0xf892, 0xf8b2, 0xf8d2, 0xf8b2, 0xf8b2, 0xf8b2, 0xf8d3, 0xf8d3, 0xf8d2, 0xf8d2, 0xf8d2, 0xf8f3, 0xf8b2, 0xf872, 0xf872, 0xf8f3, 0xf933, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, @@ -4173,32 +4173,32 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a1b, 0x5951, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0xffff, 0x46de, 0x067f, 0x04be, 0x051f, - 0x053f, 0x04df, 0x051f, 0x059f, 0x04df, 0x057f, 0x04bf, 0x055f, + 0x0000, 0x0000, 0x0841, 0x9492, 0xffff, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x55ff, 0xef9e, 0x0861, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0841, 0x3186, 0xefdf, 0xe7df, 0x063f, - 0x05bf, 0x055e, 0x057e, 0x057f, 0x057f, 0x057f, 0x057f, 0x063f, - 0x047f, 0x0e7f, 0x04ff, 0x061e, 0x03dd, 0x039d, 0x93fe, 0x0000, - 0x0020, 0x9472, 0xffff, 0x069f, 0x059e, 0x053f, 0x051f, 0x04bf, - 0x051f, 0x04ff, 0x04df, 0x04df, 0x053f, 0x053e, 0x04ff, 0xf79e, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0020, 0x0861, 0xffff, 0xf7ff, 0x367e, 0x05df, 0x05bf, - 0x05bf, 0x05bf, 0x047f, 0x04df, 0x059f, 0x059f, 0x047f, 0x045f, - 0x067f, 0x059f, 0x04df, 0x045d, 0x051f, 0x9c3e, 0x0000, 0x0000, - 0x0820, 0xffff, 0xffdf, 0x063f, 0x057f, 0x057f, 0x04ff, 0x051f, - 0x051f, 0x055f, 0x059f, 0x057f, 0x049f, 0x047f, 0xf7df, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xf7ff, 0x05ff, 0x063f, 0x061f, 0x05ff, 0x05de, - 0x05df, 0x05ff, 0x05ff, 0x063f, 0x065f, 0x065f, 0x065f, 0x065f, - 0x065f, 0x061f, 0x061f, 0x05ff, 0x05ff, 0x05de, 0x05be, 0xffde, + 0x0000, 0x0000, 0x0000, 0x0841, 0x3186, 0xefdf, 0xe7df, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x03dd, 0x039d, 0x93fe, 0x0000, + 0x0020, 0x9472, 0xffff, 0x069f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0xf79e, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0x0020, 0x0861, 0x732d, 0xf7ff, 0x041e, 0x041e, 0x041e, + 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, + 0x041e, 0x041e, 0x041e, 0x041e, 0x051f, 0x9c3e, 0x0000, 0x0000, + 0x0820, 0xef9f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0xf7df, 0x6354, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0841, 0xffdf, 0xf7ff, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0xffde, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffdf, 0xffff, 0xf133, 0xf133, 0xf933, 0xf933, 0xf933, 0xf913, 0xf913, 0xf913, - 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf913, 0xf0f2, - 0xf112, 0xf912, 0xf0f2, 0xf8f2, 0xf912, 0xf912, 0xf912, 0xf912, + 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, + 0xf933, 0xf933, 0xf933, 0xf933, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf914, 0xf933, 0xd8f0, 0x9bde, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0841, 0xffdf, 0xffff, 0xf933, 0xf913, + 0x0000, 0x0000, 0x0000, 0xffff, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf912, 0xf913, 0xf913, 0xf933, 0xf913, 0xf913, 0xf913, 0xf913, 0xf933, 0xf933, 0xf913, 0xf8f3, 0xf913, 0xf913, 0xf913, 0xf912, 0xf912, 0xf912, 0xf932, 0xf912, 0xf912, @@ -4213,32 +4213,32 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa25b, 0x6171, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0841, 0xffff, 0x2ebf, 0x0edf, 0x063f, 0x063e, - 0x063f, 0x065f, 0x067f, 0x069f, 0x067f, 0x067f, 0x069f, 0x069f, + 0x0000, 0x0000, 0x0841, 0xffff, 0x2ebf, 0x0edf, 0x041e, 0x063e, + 0x063f, 0x065f, 0x041e, 0x069f, 0x067f, 0x067f, 0x041e, 0x069f, 0x7edf, 0xf79e, 0x1082, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, - 0x0020, 0x0020, 0x0841, 0xffff, 0xf7df, 0x057e, 0x065f, 0x067f, - 0x069f, 0x067f, 0x063f, 0x069f, 0x067f, 0x063f, 0x067f, 0x067f, - 0x067f, 0x069f, 0x067f, 0x067f, 0x051e, 0x2c1e, 0x0000, 0x0000, - 0x0841, 0xffff, 0xffff, 0x061e, 0x065f, 0x067f, 0x067f, 0x067f, - 0x065f, 0x063e, 0x063f, 0x065f, 0x067f, 0x069f, 0x061f, 0xf79e, + 0x0020, 0x0020, 0x0841, 0xffff, 0xf7df, 0x057e, 0x065f, 0x041e, + 0x069f, 0x067f, 0x063f, 0x041e, 0x067f, 0x063f, 0x067f, 0x041e, + 0x067f, 0x069f, 0x041e, 0x067f, 0x051e, 0x2c1e, 0x0000, 0x0000, + 0x0841, 0x9472, 0xffff, 0x061e, 0x041e, 0x067f, 0x067f, 0x067f, + 0x065f, 0x041e, 0x063f, 0x065f, 0x067f, 0x041e, 0x061f, 0xf79e, 0x0000, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0000, 0x0000, - 0x0841, 0x18e3, 0xefbf, 0xf7df, 0x169f, 0x0e3f, 0x065f, 0x063f, - 0x063f, 0x063f, 0x067f, 0x067f, 0x065f, 0x065f, 0x065f, 0x065f, - 0x067f, 0x067f, 0x065f, 0x065f, 0x15ff, 0xc55f, 0x0000, 0x0020, - 0x0020, 0xffff, 0xffff, 0x067f, 0x063f, 0x063f, 0x063f, 0x061f, - 0x061e, 0x061e, 0x065f, 0x065f, 0x069f, 0x065f, 0xf7bf, 0x0000, + 0x0841, 0x732d, 0x732d, 0xf7df, 0x041e, 0x0e3f, 0x065f, 0x041e, + 0x063f, 0x063f, 0x067f, 0x041e, 0x065f, 0x065f, 0x065f, 0x041e, + 0x067f, 0x041e, 0x065f, 0x065f, 0x041e, 0xc55f, 0x0000, 0x0020, + 0x0020, 0xef9f, 0x063f, 0x067f, 0x063f, 0x063f, 0x063f, 0x061f, + 0x061e, 0x061e, 0x065f, 0x065f, 0x069f, 0x065f, 0xf7bf, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffff, 0xffff, 0x0e5f, 0x065f, 0x065f, 0x063f, 0x065f, - 0x06bf, 0x063f, 0x065f, 0x065f, 0x067f, 0x067f, 0x065f, 0x065f, - 0x063f, 0x065f, 0x061f, 0x061e, 0x061f, 0x065f, 0x0e1f, 0xffff, + 0x0841, 0xffff, 0xffff, 0x0e5f, 0x065f, 0x039f, 0x063f, 0x065f, + 0x039f, 0x063f, 0x065f, 0x039f, 0x067f, 0x067f, 0x039f, 0x065f, + 0x063f, 0x039f, 0x061f, 0x061e, 0x039f, 0x065f, 0x0e1f, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffdf, 0xffbf, 0xf933, 0xf933, 0xf913, 0xf913, 0xf913, 0xf913, 0xf933, 0xf913, - 0xf933, 0xf933, 0xf913, 0xf913, 0xf913, 0xf8f2, 0xf8f2, 0xf912, - 0xf912, 0xf912, 0xf112, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, + 0xf933, 0xf933, 0xf913, 0xf913, 0xf913, 0xf8f2, 0xf8f2, 0xf933, + 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf912, 0xf8f3, 0xaa17, 0xa9f5, 0xa41d, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0xa514, 0xff7e, 0xf150, 0xf953, 0xf932, 0xf932, + 0x0000, 0x0000, 0xffff, 0xf913, 0xf913, 0xf913, 0xf932, 0xf932, 0xf112, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf913, 0xf913, 0xf933, 0xf933, 0xf912, 0xf912, 0xf913, 0xf912, 0xf912, 0xf912, 0xf912, 0xf933, 0xf933, @@ -4253,32 +4253,32 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa25c, 0x5950, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xffdf, 0x04dc, 0x057e, 0x05df, 0x045f, - 0x04bf, 0x055f, 0x0cff, 0x045f, 0x063f, 0x041e, 0x041e, 0x043f, + 0x0000, 0x0000, 0x0020, 0xffff, 0x04dc, 0x041e, 0x041e, 0x041e, + 0x041e, 0x041e, 0x041e, 0x045f, 0x041e, 0x041e, 0x041e, 0x043f, 0x9e7f, 0xffff, 0xe71c, 0xdefb, 0xdefb, 0xe73c, 0xef5d, 0xe75c, - 0xe73c, 0xe71c, 0xef3c, 0xa73e, 0x2e3f, 0x059e, 0x053f, 0x04ff, - 0x049f, 0x041f, 0x067f, 0x045f, 0x047f, 0x067f, 0x03fe, 0x041e, - 0x05fe, 0x045e, 0x047f, 0x043f, 0x2d3e, 0xa4fd, 0x0000, 0x0000, - 0x0841, 0xffff, 0xffff, 0x05ff, 0x059f, 0x051f, 0x041f, 0x05df, - 0x049e, 0x05fe, 0x041e, 0x053f, 0x065f, 0x041f, 0x03de, 0xffdf, + 0xe73c, 0xe71c, 0xef3c, 0xa73e, 0x2e3f, 0x041e, 0x041e, 0x041e, + 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, 0x041e, + 0x041e, 0x041e, 0x047f, 0x043f, 0x2d3e, 0xa4fd, 0x0000, 0x0000, + 0x0841, 0x9472, 0xffff, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0xffdf, 0xdefb, 0xe71c, 0xe71c, 0xdefb, 0xdefb, 0xdefb, 0xe71b, 0xdf1b, - 0xdefb, 0xe71c, 0x1ddf, 0x1d9f, 0x0d1f, 0x045f, 0x045f, 0x041e, - 0x053e, 0x059f, 0x041f, 0x05ff, 0x055f, 0x05bf, 0x03fe, 0x03de, - 0x039e, 0x04df, 0x061f, 0x035f, 0x5cfe, 0xabde, 0x0000, 0x0020, - 0x0820, 0xffff, 0xffff, 0x0e7f, 0x051f, 0x043e, 0x05de, 0x055e, - 0x039e, 0x047e, 0x04ff, 0x0c1f, 0x04bf, 0x043e, 0xf7bf, 0x0000, + 0xdefb, 0xe71c, 0xf7df, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x061f, 0x035f, 0x5cfe, 0xabde, 0x0000, 0x0020, + 0x0820, 0xef9f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0xf7bf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x10a2, 0xffff, 0x359e, 0x04ff, 0x045e, 0x03fc, 0x03dc, 0x041d, - 0x051f, 0x043f, 0x045f, 0x061f, 0x045f, 0x04ff, 0x051f, 0x04de, - 0x043d, 0x03fd, 0x045d, 0x045d, 0x047f, 0x0dbf, 0x7f1f, 0x9cf3, + 0x10a2, 0xffff, 0x359e, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, + 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x7f1f, 0xef5c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffdf, 0xf438, 0xf112, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf933, 0xf933, 0xf913, 0xf913, 0xf912, 0xf8f2, 0xf8f2, 0xf912, - 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf0f2, 0xf912, + 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf912, 0xf933, 0xf912, 0xf173, 0xcdde, 0x620f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xbdd6, 0xd679, 0xee7b, 0xf9d2, 0xf953, 0xf932, 0xf912, 0xf912, + 0x0000, 0xd679, 0xf913, 0xf913, 0xf913, 0xf913, 0xf912, 0xf912, 0xf913, 0xf912, 0xf912, 0xf913, 0xf913, 0xf912, 0xf8f2, 0xf912, 0xf913, 0xf913, 0xf913, 0xf913, 0xf913, 0xf933, 0xf933, 0xf913, 0xf913, 0xf912, 0xf912, 0xf912, 0xf912, 0xf913, 0xf933, 0xf973, @@ -4293,32 +4293,32 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa25c, 0x594f, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xf7df, 0x05fe, 0x067f, 0x06ff, 0x0c5f, + 0x0000, 0x0000, 0x9492, 0xffff, 0x05fe, 0x041e, 0x06ff, 0x0c5f, 0x0d7f, 0x0e5f, 0x0cbf, 0x041f, 0x05fe, 0x04fe, 0x05bd, 0x041e, 0x865e, 0xdf9f, 0xe79f, 0xdf9f, 0xdf9f, 0xefbf, 0xefbf, 0xe77f, - 0xdf7f, 0xdf7f, 0xe79f, 0x6ebf, 0x05ff, 0x03bd, 0x04be, 0x051f, + 0xdf7f, 0xdf7f, 0xe79f, 0x6ebf, 0x05ff, 0x03bd, 0x04be, 0x041e, 0x043f, 0x041f, 0x0f1f, 0x0bdf, 0x0c5f, 0x06bf, 0x03de, 0x03de, 0x063e, 0x041e, 0x051f, 0x0cbf, 0x34df, 0xbd7d, 0x0000, 0x0020, - 0x0840, 0xffff, 0xffff, 0x063f, 0x05bf, 0x055f, 0x041f, 0x05de, + 0x0840, 0xf7ff, 0x03df, 0x063f, 0x05bf, 0x055f, 0x041f, 0x05de, 0x045f, 0x06bf, 0x03ff, 0x055f, 0x063f, 0x047f, 0x047f, 0xe7bf, 0xdf9f, 0xd77f, 0xdf7f, 0xe79f, 0xe79f, 0xdf7f, 0xe79f, 0xefbf, 0xe7bf, 0xcf7f, 0x053e, 0x04ff, 0x04ff, 0x053f, 0x051f, 0x0d7f, 0x065f, 0x065f, 0x03ff, 0x06df, 0x057f, 0x065f, 0x03be, 0x039e, - 0x039f, 0x057f, 0x171f, 0x039f, 0x543d, 0x941a, 0x0000, 0x0000, - 0x0020, 0xffdf, 0xffff, 0x0edf, 0x0d9f, 0x03df, 0x05ff, 0x059f, - 0x041f, 0x063f, 0x0e3f, 0x059f, 0x059f, 0x053f, 0xf7bf, 0x0000, + 0x039f, 0x057f, 0x039f, 0x039f, 0x039f, 0x941a, 0x0000, 0x0000, + 0x0020, 0xef9f, 0x039f, 0x039f, 0x0d9f, 0x03df, 0x05ff, 0x039f, + 0x041f, 0x063f, 0x0e3f, 0x039f, 0x059f, 0x039f, 0xf7bf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7df, 0x055e, 0x063f, 0x061f, 0x067f, 0x061f, 0x063f, 0x053f, 0x0e9f, 0x0e5f, 0x0e7f, 0x04df, 0x055e, 0x05be, 0x063e, - 0x053e, 0x03ff, 0x05df, 0x051f, 0x05df, 0x059f, 0x869e, 0xb5b6, + 0x053e, 0x03ff, 0x05df, 0x051f, 0x05df, 0x059f, 0x869e, 0xef5c, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffdf, 0xf133, 0xf932, 0xf8f2, 0xf8f3, 0xf933, 0xf953, 0xf933, 0xf8f2, 0xf8f2, - 0xf8f3, 0xf913, 0xf0f3, 0xf0d2, 0xf8d3, 0xf8f3, 0xf933, 0xf933, - 0xf933, 0xf912, 0xf0f2, 0xf0f2, 0xf0f2, 0xf913, 0xf8f3, 0xf0f3, + 0xf8f3, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, + 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xd954, 0xeebf, 0x93b5, 0x18c3, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0861, - 0xd6bb, 0xff9f, 0xfc18, 0xf0b2, 0xf113, 0xf112, 0xf0f2, 0xf112, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, + 0xd6bb, 0xf913, 0xf913, 0xf913, 0xf913, 0xf112, 0xf0f2, 0xf112, 0xf0f2, 0xf913, 0xf8f3, 0xf0f3, 0xf0f3, 0xf8f2, 0xf0f3, 0xf913, 0xf0f2, 0xf8f3, 0xf113, 0xf913, 0xf913, 0xf133, 0xf933, 0xf933, 0xf912, 0xf8d2, 0xf8d2, 0xf8d2, 0xf913, 0xf933, 0xf933, 0xf1b4, @@ -4333,32 +4333,32 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa27c, 0x6150, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0xce79, 0xf7df, 0x039d, 0x03ff, 0x041f, 0x041f, + 0x0000, 0x0020, 0x9492, 0xffff, 0x039d, 0x03ff, 0x041f, 0x041f, 0x03ff, 0x03df, 0x03bf, 0x039f, 0x037e, 0x039e, 0x03be, 0x03ff, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x03ff, 0x03df, 0x03df, 0x03bf, 0x03be, 0x03be, 0x039f, 0x039f, 0x037f, 0x037f, 0x037e, 0x039f, 0x03bf, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x03ff, 0x03bf, 0x03de, 0x03de, 0x03de, 0x03ff, 0x0bfe, 0xb51e, 0x0841, 0x0020, 0x0020, - 0x0841, 0xffff, 0xffff, 0x039e, 0x039f, 0x03bf, 0x039f, 0x03df, + 0x0841, 0xf7ff, 0x03df, 0x039e, 0x039f, 0x03bf, 0x039f, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x039f, 0x03bf, 0x03ff, 0x041f, 0x03df, 0x03bf, 0x039e, 0x03be, 0x03bf, 0x03bf, 0x03be, 0x03bf, 0x03df, 0x039f, 0x037f, 0x037f, 0x037f, 0x039e, 0x039e, 0x03df, 0x03ff, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x039f, 0x037e, 0x035e, - 0x03de, 0x03be, 0x0b9e, 0xbd5d, 0x0000, 0x0020, 0x0000, 0x0000, - 0x0000, 0xef9f, 0x0cfe, 0x039f, 0x039f, 0x039f, 0x039f, 0x03bf, + 0x03de, 0x03be, 0x0b9e, 0x03be, 0xbd3e, 0x0020, 0x0000, 0x0000, + 0x7c11, 0xef9f, 0x039f, 0x039f, 0x039f, 0x039f, 0x039f, 0x03bf, 0x03df, 0x03ff, 0x03ff, 0x03de, 0x039e, 0x02de, 0xef9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xf79e, 0xefff, 0x03fd, 0x041e, 0x041f, 0x041f, 0x041f, 0x03ff, 0x03ff, 0x03df, 0x03bf, 0x03bf, 0x039f, 0x039e, 0x037e, 0x039e, - 0x03bf, 0x03ff, 0x041f, 0x041f, 0x03ff, 0x055f, 0xffff, 0x0841, + 0x03bf, 0x03ff, 0x041f, 0x041f, 0x03ff, 0x055f, 0xffff, 0x6354, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0xffff, 0xd0f3, 0xd0d2, 0xd8b2, 0xd0b2, 0xd8d3, 0xd8b3, 0xd8d3, 0xd8b2, 0xd0b2, 0xd0d2, 0xd0d2, 0xd0d2, 0xd0d3, 0xd8b2, 0xd0d3, 0xd0b3, 0xd0b3, 0xd0b3, 0xd0b3, 0xd8b2, 0xc8d2, 0xc8b2, 0xd0d2, 0xc8d2, 0xc8d2, 0xc8f2, 0xe914, 0xe317, 0xffff, 0x0861, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0820, 0x0861, 0xf7be, - 0xff9f, 0xf071, 0xf0b2, 0xe8d2, 0xe8d2, 0xe8d2, 0xd8d3, 0xe0f3, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0xf7be, + 0xf913, 0xf913, 0xf913, 0xf913, 0xe8d2, 0xe8d2, 0xd8d3, 0xe0f3, 0xd8d3, 0xe0b3, 0xe0b3, 0xd8b2, 0xd0b2, 0xd8b2, 0xd0b2, 0xd0b3, 0xd0b2, 0xc8b2, 0xd0b2, 0xd8b3, 0xd8d3, 0xe0d3, 0xd8b3, 0xd8b3, 0xd8b2, 0xd092, 0xd8b2, 0xd092, 0xd893, 0xe093, 0xb936, 0x93bd, @@ -4373,35 +4373,35 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa27d, 0x6150, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0xc638, 0xf7df, 0x041f, 0x16df, 0x0c5f, 0x067f, + 0x0000, 0x0020, 0x9492, 0xffff, 0x041f, 0x16df, 0x0c5f, 0x067f, 0x077f, 0x049e, 0x057e, 0x061f, 0x063f, 0x041f, 0x041f, 0x06bf, 0x161f, 0x16df, 0x049f, 0x069f, 0x075f, 0x03df, 0x043f, 0x06bf, 0x045f, 0x05ff, 0x043e, 0x049f, 0x03ff, 0x0f7f, 0x0edf, 0x041f, 0x069f, 0x063e, 0x03ff, 0x067f, 0x0ebf, 0x0c3f, 0x1f9f, 0x1f9f, 0x03ff, 0x03df, 0x039e, 0xbcfd, 0x9c77, 0x0020, 0x0000, 0x0020, - 0x0841, 0xffdf, 0xf7ff, 0x03fe, 0x069e, 0x059f, 0x03ff, 0x06bf, + 0x9472, 0xf7ff, 0x03df, 0x03fe, 0x069e, 0x059f, 0x03ff, 0x06bf, 0x05ff, 0x03bf, 0x071f, 0x057f, 0x03ff, 0x06df, 0x16df, 0x03ff, 0x06ff, 0x059e, 0x06de, 0x039e, 0x047f, 0x0eff, 0x0e5f, 0x03bf, 0x04df, 0x06bf, 0x03bf, 0x03ff, 0x06df, 0x03fe, 0x067f, 0x047f, 0x0f7f, 0x0f5f, 0x041f, 0x05df, 0x175f, 0x03bf, 0x3f9f, 0x2f5f, - 0x03ff, 0x03be, 0x7b7d, 0xac5d, 0x0000, 0x0000, 0x0020, 0x0020, - 0x0020, 0xe79f, 0x057e, 0x069e, 0x05de, 0x061f, 0x043f, 0x0bdf, - 0x0f1f, 0x03df, 0x045f, 0x069e, 0x031d, 0x02be, 0xef7e, 0x0000, + 0x03ff, 0x065f, 0x065f, 0xac5d, 0x0000, 0x0000, 0x0020, 0x0020, + 0x7c11, 0xe79f, 0x057e, 0x069e, 0x039f, 0x061f, 0x043f, 0x0bdf, + 0x039f, 0x03df, 0x045f, 0x039f, 0x031d, 0x02be, 0xef7e, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7be, 0xf7df, 0x0bdd, 0x03de, 0x03df, 0x03ff, 0x0bff, 0x0bdf, 0x03be, 0x03be, 0x03fe, 0x063f, 0x055f, 0x051f, 0x071f, 0x039e, - 0x047f, 0x0edf, 0x0cbf, 0x0e5f, 0x05bf, 0x059f, 0xffbe, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x3986, 0xff9e, 0xd092, - 0xd892, 0xe893, 0xe092, 0xe092, 0xe0b3, 0xe0b2, 0xe0b3, 0xd8b2, - 0xd8b2, 0xd8b2, 0xe0b3, 0xe0b3, 0xe093, 0xd8b3, 0xf0b2, 0xf0f3, - 0xf0d2, 0xf0b2, 0xf0b2, 0xf8d2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0d2, - 0xf0f2, 0xf0f2, 0xf0f2, 0xe0b0, 0xde7d, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xf77d, 0xffbf, - 0xf8d2, 0xf112, 0xf0f2, 0xf0f2, 0xf0d2, 0xf0d2, 0xf0d2, 0xf0f3, - 0xf0d3, 0xf0f3, 0xf0f3, 0xe072, 0xd892, 0xd892, 0xd892, 0xd092, + 0x047f, 0x0edf, 0x0cbf, 0x0e5f, 0x05bf, 0x059f, 0xffbe, 0x6354, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x3986, 0xff9e, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xde7d, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xf913, + 0xf8d2, 0xf913, 0xf913, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, + 0xf933, 0xf933, 0xf0f3, 0xe072, 0xd892, 0xd892, 0xd892, 0xd092, 0xe0b2, 0xd892, 0xe0b3, 0xe093, 0xe0b3, 0xe8b3, 0xd892, 0xe092, - 0xe892, 0xe092, 0xe092, 0xd892, 0xd871, 0xb39d, 0xac3d, 0x93d9, + 0xe892, 0xe092, 0xe092, 0xd892, 0xf933, 0xb39d, 0xac3d, 0x93d9, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8218, 0xaa9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4413,33 +4413,33 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x0000, 0xa29e, 0x5950, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0xf7be, 0xffff, 0x03df, 0x03ff, 0x03ff, 0x03df, + 0x0000, 0x0020, 0x9492, 0xffff, 0x03df, 0x03ff, 0x03ff, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x03df, 0x03ff, 0x03df, 0x03de, 0x03de, 0x03df, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x041f, 0x03ff, 0x03df, 0x03df, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x041f, 0x043f, 0x041f, 0x0c1f, 0xbd7e, 0xacdd, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffff, 0xd77f, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03df, + 0x9472, 0xf7ff, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03be, 0x03be, 0x03df, 0x03ff, 0x03ff, 0x03df, 0x03bf, 0x039f, 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03be, 0x039e, 0x03df, 0x03ff, 0x0bff, - 0xb4fd, 0x20c6, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0040, + 0x03be, 0x03be, 0xbd3e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0040, 0xef7e, 0x04bd, 0x049f, 0x03bf, 0x03bf, 0x039f, 0x03df, 0x03df, - 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x043e, 0x2c9f, 0x3873, 0x0001, + 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x043e, 0xffbf, 0x6354, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0xd61f, 0xcdde, 0xc5de, 0xc59e, 0xbd5e, 0xbd7e, 0xcdde, 0xcdde, 0xc57f, 0xcd5f, 0x039d, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03df, - 0x03df, 0x03ff, 0x03df, 0x03df, 0x03df, 0x03bf, 0xffbe, 0x0000, + 0x03df, 0x03ff, 0x03df, 0x03df, 0x03df, 0x03bf, 0xffbe, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x92fc, 0x933d, 0x935d, 0x937d, 0x9bbd, 0x9b9d, 0x937d, 0x935d, 0x937d, 0x9b9d, 0x9b7d, 0x937c, 0x935c, 0x937d, 0x9bbd, 0x9c1d, 0xa3fd, 0x929b, 0xd0b1, 0xc8b2, 0xc8b2, 0xc8d2, 0xc8b2, 0xd0b2, 0xd0b2, 0xd092, 0xc892, 0xc8d2, 0xc8b1, 0xc8d1, 0xc0d3, 0x9c1f, 0x0021, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x7bef, 0xf77e, 0xf872, 0xf913, - 0xf0f2, 0xf0f2, 0xf0f2, 0xe0d2, 0xe8f3, 0xf0d2, 0xe8d2, 0xe8d3, - 0xf0d3, 0xc8b0, 0xba38, 0xa3be, 0xa3fd, 0xa41d, 0x9bdd, 0x9bbd, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf77e, 0xf913, 0xf933, + 0xf913, 0xf913, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, + 0xf933, 0xc8b0, 0xba38, 0xa3be, 0xa3fd, 0xa41d, 0x9bdd, 0x9bbd, 0x9bbd, 0xa3dd, 0xa3dd, 0xa3bd, 0xa3bd, 0xa3bd, 0x9bbd, 0x9b9d, 0x9b7d, 0x9b9d, 0x9bdd, 0x9b9c, 0x935c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4453,20 +4453,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xab5f, 0x7215, 0x79f6, 0x38ea, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0820, 0xf7df, 0xffff, 0x03ff, 0x03df, 0x03df, 0x03bf, + 0x0000, 0x0820, 0x9492, 0xffff, 0x03ff, 0x03df, 0x03df, 0x03bf, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x03ff, 0x03ff, 0x03de, 0x03de, 0x2bdf, 0x2bff, 0x445f, 0x6a6e, 0x49ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0861, 0xffff, 0xf7bf, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03df, + 0x9472, 0xf7ff, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x039f, 0x0b5f, 0x03bf, 0x03df, 0x03bf, 0x037e, 0x237f, 0x33ff, 0x4c1f, - 0x49ee, 0x1083, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, + 0xbd3e, 0xbd3e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xef9e, 0x047f, 0x049f, 0x03df, 0x03bf, 0x03ff, 0x039f, 0x039f, - 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x24de, 0x6d7e, 0x0804, 0x0000, + 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x24de, 0xffbf, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1888, 0x2907, 0x2927, 0x2906, 0x20c5, 0x18c5, 0x20e5, 0x3147, 0xf79f, 0xe71f, 0x039d, 0x039f, 0x03bf, 0x137f, 0x0b9f, 0x03df, @@ -4477,7 +4477,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x1024, 0x1024, 0x1003, 0x1003, 0x1023, 0x1844, 0x20c6, 0xc51c, 0xd9f4, 0xc8b1, 0xd0b2, 0xd0b2, 0xd0b2, 0xd8b2, 0xd0b2, 0xd092, 0xd0b2, 0xc8b2, 0xd0d2, 0xd8d3, 0xc0f3, 0x9c1f, 0x0021, 0x0000, - 0x0000, 0x0000, 0x0020, 0x7bef, 0xbd76, 0xf478, 0xe871, 0xe8b2, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xf913, 0xf913, 0xf913, 0xd8f2, 0xe8d2, 0xe8f2, 0xf0d2, 0xe0f2, 0xe8d2, 0xe0b2, 0xe8d3, 0xe0d3, 0xb299, 0x79af, 0x28a7, 0x20a6, 0x2066, 0x2065, 0x2065, 0x2086, 0x2086, 0x2065, 0x1865, 0x1845, 0x1844, 0x1844, 0x1844, @@ -4493,31 +4493,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa2bf, 0xa27d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xffbe, 0xffdf, 0x0bdf, 0x03df, 0x03bf, 0x03bf, + 0x0000, 0x0000, 0x9492, 0xffff, 0x0bdf, 0x03df, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03df, 0x03df, 0x03be, 0x03be, 0x03de, 0x03df, 0x03ff, 0x03ff, 0x03de, 0x03de, 0x03de, 0x03df, 0x03ff, 0x03df, 0x03df, 0x03de, 0x03de, 0x03df, 0x03ff, 0x03ff, 0x03df, 0x03be, 0x03bd, 0x03de, 0xb4be, 0xacde, 0xb4fe, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1082, 0xffdf, 0xe79f, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, + 0x9472, 0xf7ff, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03be, 0x039d, 0x03be, 0x03df, 0x03df, 0x03df, 0x03bf, 0x039e, 0x039f, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x039f, 0x03bf, 0x03bf, 0x03df, 0x03bf, 0x02ff, 0xacdf, 0xb4ff, 0xbd3e, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0xf7bf, 0x03ff, 0x03ff, 0x03bf, 0x03df, 0x03bf, 0x039f, 0x039f, - 0x039f, 0x039f, 0x03bf, 0x03df, 0x4cde, 0xf7df, 0x0041, 0x0000, + 0x039f, 0x039f, 0x03bf, 0x03df, 0x4cde, 0xf7df, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0041, 0xf7be, 0xffdf, 0x0b9e, 0x039f, 0x03bf, 0x039f, 0x03bf, 0x03bf, - 0x03bf, 0x03bf, 0x03bf, 0x03be, 0x03be, 0x839e, 0xffff, 0x0841, + 0x03bf, 0x03bf, 0x03bf, 0x03be, 0x03be, 0x839e, 0xef5c, 0x0841, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0xf77e, - 0xe2b6, 0xe0b3, 0xf0f3, 0xd0b3, 0xd0b3, 0xd892, 0xc0b1, 0xc8d2, - 0xf0b2, 0xd8d3, 0xd8f3, 0xe133, 0xb8f2, 0x9c1f, 0x0021, 0x0000, - 0x0000, 0x0000, 0x0000, 0xffff, 0xffdf, 0xe8d1, 0xe0d1, 0xe0d2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, + 0xf0b2, 0xd8d3, 0xf0b2, 0xe133, 0xb8f2, 0x9c1f, 0x0021, 0x0000, + 0x0000, 0x0000, 0x4a69, 0xffff, 0xf913, 0xf913, 0xf913, 0xe0d2, 0xc8d2, 0xd0d2, 0xc8d3, 0xe8f3, 0xe0f3, 0xc8d2, 0xd0d3, 0xd0d3, 0xd0b3, 0xac3f, 0x3149, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4533,7 +4533,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa2de, 0xa29d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0xf7be, 0xffdf, 0x0c1d, 0x03df, 0x03df, 0x03df, 0x03df, + 0x0020, 0x9492, 0xffff, 0x0c1d, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x035e, 0xb4ff, 0xb4fe, 0xbd1e, 0xbd3e, 0xbd1e, 0xbcfe, 0xb4fe, 0xb4fe, 0xb4fe, 0xb4de, 0xb4de, 0xb4de, 0xb4de, 0xb4fe, 0xb4fe, 0xb4fe, @@ -4543,22 +4543,22 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x03df, 0x03df, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0xb53f, 0xb4de, 0xbd1e, 0xc57e, 0xbd7f, 0xbd1e, 0xbcfe, 0x035e, 0x039f, 0x039f, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, - 0x03bf, 0x03bf, 0x039f, 0xe73e, 0xf79f, 0x1062, 0x0841, 0x0841, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8410, + 0x03bf, 0x03bf, 0x039f, 0xbd3e, 0xbd3e, 0x1062, 0x0841, 0x0841, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0bdf, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x0bbf, 0x551e, 0xffff, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0xffdf, 0x035f, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, - 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03de, 0xde9f, 0xde9f, 0x0020, + 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x03de, 0xef5c, 0x6354, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xd67a, 0xffff, 0xf153, 0xf153, 0xf133, 0xf133, 0xf112, 0xf912, 0xf912, 0xf912, - 0xf913, 0xf133, 0xf113, 0xc891, 0xac1e, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xf79e, 0xf071, 0xf133, 0xf112, 0xf0f2, 0xf0f2, - 0xf0f2, 0xf0f2, 0xf0f2, 0xf0f2, 0xf913, 0xf933, 0xf113, 0xf913, + 0xf0b2, 0xf0b2, 0xf0b2, 0xc891, 0xac1e, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xf79e, 0xf071, 0xf133, 0xf112, 0xf933, 0xf933, + 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xf933, 0xa35d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4573,7 +4573,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa2de, 0xa2dc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0xffff, 0xffdf, 0x199f, 0x199f, 0x19bf, 0x197f, 0x195f, + 0x0020, 0x9492, 0xffff, 0x199f, 0x199f, 0x19bf, 0x197f, 0x195f, 0x193f, 0x09ff, 0x099f, 0x197f, 0x0a1f, 0x119f, 0x115f, 0x847f, 0x51ed, 0x522c, 0x520b, 0x520c, 0x520c, 0x49cb, 0x49cb, 0x51ec, 0x49cb, 0x49cb, 0x49ec, 0x49cb, 0x49cb, 0x51ec, 0x49cc, 0x49ab, @@ -4584,20 +4584,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x5a4c, 0x5a2c, 0x520c, 0x520b, 0x49eb, 0x543e, 0x027f, 0x197e, 0x197e, 0x197e, 0x117f, 0x119f, 0x197f, 0x199f, 0x197f, 0x199f, 0x199f, 0x117f, 0x115e, 0x63dd, 0xb5be, 0xa514, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbdd7, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffbf, 0x113f, 0x197e, 0x191f, 0x10fe, 0x191f, 0x193f, 0x193f, - 0x195f, 0x199f, 0x197f, 0x195f, 0x639e, 0xffff, 0x0841, 0x0000, + 0x195f, 0x199f, 0x197f, 0x195f, 0x639e, 0xffff, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0xffdf, 0x00fe, 0x197e, 0x197f, 0x195f, 0x193f, 0x193f, 0x213f, - 0x211f, 0x211f, 0x295f, 0x315e, 0x29ff, 0xb49e, 0xbd5f, 0x0000, + 0x211f, 0x211f, 0x295f, 0x315e, 0x29ff, 0xef5c, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0821, 0xdefb, 0xffff, 0xd0b2, 0xc8b1, 0xc8d1, 0xd0d1, 0xd0d2, 0xd8b2, 0xd8b2, 0xd8b2, 0xd0d1, 0xc8b1, 0xc0b1, 0xb8b1, 0xac3e, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0000, 0xf79e, 0xb80f, 0xc8b1, 0xd0b2, 0xd8b2, 0xd8b2, + 0x0020, 0x4a69, 0xf79e, 0xb80f, 0xc8b1, 0xd0b2, 0xd8b2, 0xd8b2, 0xd0d2, 0xd0d1, 0xd0b1, 0xd0d2, 0xd8b2, 0xd8f2, 0xd8d2, 0xd090, 0x9b3e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -4613,31 +4613,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa2bd, 0xaadd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xf7be, 0xef9f, 0x383e, 0x303f, 0x301f, 0x301e, 0x301d, + 0x0000, 0x9492, 0xffff, 0x383e, 0x303f, 0x301f, 0x301e, 0x301d, 0x301e, 0x287f, 0x283e, 0x281d, 0x283e, 0x301f, 0x303f, 0xc59f, 0x1042, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9472, 0xf7bf, 0x201e, 0x307f, 0x301d, 0x301f, 0x301e, 0x301e, 0x305e, 0x303f, 0x301e, 0x301e, 0x305e, 0x28bf, 0xb4de, 0x6b13, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc55f, 0x119f, 0x287d, 0x285d, 0x301d, 0x301e, 0x301e, 0x301e, 0x301e, 0x301e, 0x301e, - 0x301e, 0x303e, 0x301d, 0x309f, 0x9d1f, 0xffff, 0x0841, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xce59, + 0x301e, 0x303e, 0x301d, 0x309f, 0x9d1f, 0xbd3e, 0x0841, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7bf, 0x283e, 0x303d, 0x281d, 0x281d, 0x301e, 0x301e, 0x301e, 0x301e, 0x301e, 0x301d, 0x301d, 0x6a9d, 0xf7df, 0x0861, 0x0000, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0841, 0x0000, 0xffdf, 0x181e, 0x301e, 0x301e, 0x301e, 0x301e, 0x301e, 0x381e, - 0x381e, 0x381e, 0x381f, 0x385f, 0x407f, 0xa3de, 0x93be, 0x0000, + 0x381e, 0x381e, 0x381f, 0x385f, 0x407f, 0xef5c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0861, 0xd69a, 0xffff, 0xb8b1, 0xb891, 0xc092, 0xc892, 0xc092, 0xc092, 0xc072, 0xc092, 0xc091, 0xc091, 0xb891, 0xb870, 0xac5e, 0x0000, 0x0020, 0x0020, - 0x0000, 0x0000, 0xff9e, 0xb00e, 0xc091, 0xc872, 0xc892, 0xc892, + 0x0000, 0x4a69, 0xff9e, 0xb00e, 0xc091, 0xc872, 0xc892, 0xc892, 0xc892, 0xc092, 0xc072, 0xc892, 0xc892, 0xc092, 0xc092, 0xb070, 0x9bff, 0x0842, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, @@ -4653,31 +4653,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa2de, 0xaafd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0840, 0xf7bf, 0xffff, 0x0b9f, 0x037f, 0x037f, 0x039f, 0x039f, + 0x0840, 0x9492, 0xffff, 0x0b9f, 0x037f, 0x037f, 0x039f, 0x039f, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03bf, 0x03df, 0x031f, 0xb4de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x1061, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9472, 0xf7bf, 0x03bf, 0x0bff, 0x0bbf, 0x03bf, 0x039f, 0x037f, 0x039f, 0x03bf, 0x03bf, 0x03df, 0x03df, 0x039e, 0xb49e, 0x5a70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0xef5f, 0x8d1e, 0x035f, 0x037f, 0x037f, 0x037f, 0x037f, 0x037f, 0x037f, 0x039f, - 0x037f, 0x037f, 0x039f, 0x0bbf, 0x0b9f, 0x029f, 0xf79e, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7df, - 0xf7bf, 0x039e, 0x037f, 0x039f, 0x0bbf, 0x039f, 0x039f, 0x039f, + 0x037f, 0x037f, 0x039f, 0x0bbf, 0x0b9f, 0x029f, 0xbd3e, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xbd3f, 0x039e, 0x037f, 0x039f, 0x0bbf, 0x039f, 0x039f, 0x039f, 0x039f, 0x037f, 0x037f, 0x039f, 0x037f, 0x0b3f, 0xffdf, 0xffdf, 0xf7be, 0xf7be, 0xf7bf, 0xf7bf, 0xf7be, 0xf7be, 0xf7be, 0xf7bf, 0xffdf, 0xf7df, 0xf7be, 0xf7be, 0xf7df, 0xffdf, 0xf7bf, 0xf79e, 0xd65f, 0x03bf, 0x03df, 0x037f, 0x039f, 0x037f, 0x037f, 0x037f, - 0x039f, 0x039f, 0x0b9f, 0x0b7f, 0xeeff, 0xa476, 0x0020, 0x0000, + 0x039f, 0x039f, 0x0b9f, 0x0b7f, 0xeeff, 0x6354, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x1082, 0xffff, 0xffbe, 0xffdf, 0xffdf, 0xf7be, 0xffbf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffde, 0xffdf, 0xffdf, 0xf7be, 0xffbe, 0xffdf, 0xffdf, 0xffdf, - 0xffdf, 0xffdf, 0xf7de, 0xf7be, 0xffdf, 0xffbf, 0xd991, 0xd891, - 0xc8b1, 0xe8f2, 0xf913, 0xf133, 0xf133, 0xe8d3, 0xf0f3, 0xf113, - 0xe0b3, 0xf154, 0xc892, 0xd071, 0xabfe, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0861, 0xf79e, 0xf0d4, 0xf0f3, 0xf113, 0xf133, 0xf133, + 0xffdf, 0xffdf, 0xf7de, 0xf7be, 0xffdf, 0xffbf, 0xd991, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xabfe, 0x0000, 0x0000, 0x0000, + 0x0000, 0x9cb3, 0xf79e, 0xf0d4, 0xf0f3, 0xf113, 0xf133, 0xf133, 0xf132, 0xf933, 0xf953, 0xf953, 0xe0f2, 0xc8b2, 0xf8f3, 0xf0d3, 0xf7df, 0xffdf, 0xffff, 0xffdf, 0xf7be, 0xf7be, 0xffbe, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, @@ -4693,31 +4693,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaade, 0xaadd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xffdf, 0xffff, 0x037f, 0x035f, 0x035f, 0x039f, 0x03df, + 0x0841, 0x9492, 0xffff, 0x037f, 0x035f, 0x035f, 0x039f, 0x03df, 0x03df, 0x03ff, 0x03ff, 0x03df, 0x03ff, 0x03df, 0x02bf, 0xac7e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x2925, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9472, 0xffff, 0x0c1f, 0x0c3f, 0x03df, 0x039f, 0x039f, 0x039f, 0x03ff, 0x041f, 0x041f, 0x03ff, 0x03df, 0x03be, 0xb49e, 0x5a90, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffbf, 0xc5bf, 0x02bf, 0x037f, 0x037f, 0x037f, 0x037f, 0x03bf, 0x03df, 0x037f, - 0x037f, 0x039f, 0x03bf, 0x03bf, 0x037f, 0x01fe, 0xf7bf, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, - 0xffff, 0x0bdf, 0x0bdf, 0x03bf, 0x03bf, 0x039f, 0x037f, 0x039f, + 0x037f, 0x039f, 0x03bf, 0x03bf, 0x037f, 0x01fe, 0xbd3e, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, + 0xbd3f, 0x0bdf, 0x0bdf, 0x03bf, 0x03bf, 0x039f, 0x037f, 0x039f, 0x039f, 0x039f, 0x03bf, 0x03df, 0x03df, 0x0abf, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xf7bf, 0xffff, 0xffff, 0xffff, 0xdedf, 0x03ff, 0x041f, 0x03df, 0x03bf, 0x03bf, 0x03bf, 0x03bf, - 0x03bf, 0x03bf, 0x03bf, 0x035f, 0xff9f, 0xa4b6, 0x0020, 0x0000, + 0x03bf, 0x03bf, 0x03bf, 0x035f, 0xff9f, 0x6354, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x2124, 0xffff, 0xffff, 0xffff, 0xffbf, 0xffbf, 0xffbf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, - 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xd172, 0xd892, - 0xd8b2, 0xf133, 0xf934, 0xf114, 0xf0d3, 0xe0b3, 0xf113, 0xf133, - 0xe0b3, 0xf114, 0xc891, 0xc86f, 0xa39e, 0x0000, 0x0000, 0x0000, - 0x0000, 0x10a2, 0xffbf, 0xf0f4, 0xf113, 0xf0d3, 0xf0d2, 0xf0b2, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xd172, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, + 0xf0b2, 0xf0b2, 0xf0b2, 0xf0b2, 0xa39e, 0x0000, 0x0000, 0x0000, + 0x0000, 0x9cb3, 0xffbf, 0xf0f4, 0xf113, 0xf0d3, 0xf0d2, 0xf0b2, 0xf0f2, 0xf933, 0xf133, 0xf113, 0xd8b2, 0xc8b2, 0xf934, 0xe133, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffbf, 0xffdf, 0xffdf, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, @@ -4733,31 +4733,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaabf, 0xa29d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0841, 0xf7be, 0xffdf, 0x303b, 0x301c, 0x301d, 0x301d, 0x301d, + 0x0841, 0x9492, 0xffff, 0x303b, 0x301c, 0x301d, 0x301d, 0x301d, 0x301d, 0x301e, 0x283e, 0x303e, 0x301d, 0x281e, 0x081b, 0xacbd, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xe6fc, - 0xffdf, 0x303d, 0x301d, 0x281c, 0x301d, 0x301d, 0x301e, 0x301e, + 0x531d, 0x303d, 0x301d, 0x281c, 0x301d, 0x301d, 0x301e, 0x301e, 0x283e, 0x283d, 0x303d, 0x283c, 0x287d, 0xb49e, 0x49ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xacb5, 0xef9f, 0x387a, 0x301c, 0x301c, 0x301d, 0x281e, 0x281d, 0x301d, - 0x301d, 0x301d, 0x281e, 0x281d, 0x301c, 0x281b, 0x381e, 0xe71e, - 0x0841, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xef3d, - 0x181b, 0x283e, 0x285d, 0x285d, 0x303d, 0x301d, 0x301d, 0x301d, + 0x301d, 0x301d, 0x281e, 0x281d, 0x301c, 0x281b, 0x381e, 0xbd3e, + 0x0841, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x0000, + 0xbd3f, 0x283e, 0x285d, 0x285d, 0x303d, 0x301d, 0x301d, 0x301d, 0x301e, 0x303d, 0x305d, 0x305d, 0x303d, 0x303d, 0x301c, 0x303d, 0x303d, 0x383d, 0x303d, 0x301c, 0x303d, 0x301c, 0x303d, 0x303d, 0x381d, 0x381d, 0x303e, 0x303d, 0x303d, 0x303d, 0x303e, 0x303e, 0x303d, 0x303d, 0x305d, 0x303e, 0x303e, 0x303d, 0x303e, 0x303d, - 0x303d, 0x303d, 0x283e, 0x203d, 0xb47f, 0x8374, 0x0020, 0x0000, + 0x303d, 0x303d, 0x283e, 0x203d, 0xb47f, 0x6354, 0x0020, 0x0000, 0x0000, 0x0000, 0x0020, 0xf7be, 0xee5c, 0xc092, 0xb871, 0xb871, 0xb891, 0xb891, 0xb892, 0xb891, 0xb892, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb091, 0xb091, 0xb091, 0xb091, 0xb892, 0xb892, 0xb892, 0xb871, 0xb891, 0xb892, 0xb892, 0xb892, 0xb892, 0xb8b1, 0xb891, 0xb8b2, 0xc0b2, 0xc092, 0xb8b2, 0xb0b2, 0xaa15, 0x9b5e, 0x0000, 0x0020, 0x0020, - 0x0020, 0xffdf, 0xf79e, 0xb872, 0xb891, 0xb871, 0xb891, 0xb891, + 0x0020, 0xffdf, 0xb872, 0xb872, 0xb891, 0xb871, 0xb891, 0xb891, 0xb892, 0xb892, 0xb892, 0xb892, 0xb891, 0xb892, 0xb892, 0xb892, 0xb892, 0xb091, 0xb091, 0xb091, 0xb891, 0xb892, 0xb892, 0xb891, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, @@ -4784,20 +4784,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x5193, 0xd6ff, 0x303d, 0x301d, 0x301d, 0x11ff, 0x127f, 0x301e, 0x20df, 0x301e, 0x0b9f, 0x205f, 0x283e, 0x11ff, 0x205f, 0x40db, - 0xf77e, 0x6b4d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, - 0x5a1f, 0x311e, 0x28fe, 0x0bff, 0x123f, 0x11bf, 0x301e, 0x281e, + 0xbd3e, 0x6b4d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8b9b, 0x311e, 0x28fe, 0x0bff, 0x123f, 0x11bf, 0x301e, 0x281e, 0x039f, 0x303f, 0x28be, 0x211f, 0x285e, 0x2bff, 0x303d, 0x1c9f, 0x2b1f, 0x301c, 0x287e, 0x287d, 0x1c1f, 0x301d, 0x225f, 0x14bf, 0x303d, 0x213f, 0x12ff, 0x207f, 0x209f, 0x137f, 0x303e, 0x283e, 0x037f, 0x301e, 0x209e, 0x03ff, 0x383f, 0x213f, 0x035f, 0x303f, - 0x213f, 0x201f, 0x219f, 0x205f, 0xbcdf, 0x8354, 0x0000, 0x0000, + 0x213f, 0x201f, 0x219f, 0x205f, 0xbcdf, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf79e, 0xf65c, 0xb091, 0xc071, 0xc071, 0xb891, 0xb891, 0xb891, 0xb892, 0xb892, 0xb892, 0xb891, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb871, 0xb871, 0xc091, 0xb891, 0xb091, 0xb891, 0xb892, 0xb892, 0xb892, 0xb891, 0xb891, 0xb892, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb892, 0xb892, 0xb8b2, 0xb8b2, 0xa8b2, 0xa236, 0x9b7d, 0x0000, 0x0000, 0x0000, - 0x0000, 0xffdf, 0xd86f, 0xb891, 0xb891, 0xb871, 0xb871, 0xb891, + 0x0000, 0xffdf, 0xb872, 0xb891, 0xb891, 0xb871, 0xb871, 0xb891, 0xb892, 0xb891, 0xb892, 0xb892, 0xb891, 0xb891, 0xb892, 0xb892, 0xb891, 0xb091, 0xb091, 0xb891, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, @@ -4813,31 +4813,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8a3a, 0xa2fd, 0x8217, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0xbdb7, 0xdf9f, 0x4b9f, 0x301f, 0x303e, 0x303e, 0x301d, 0x287e, + 0xbdb7, 0xffff, 0x4b9f, 0x301f, 0x303e, 0x303e, 0x301d, 0x287e, 0x195f, 0x301e, 0x11ff, 0x099f, 0x301e, 0x49fd, 0x625d, 0x6293, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x736e, 0xffff, - 0xb5fe, 0x281d, 0x303d, 0x11bf, 0x303f, 0x283e, 0x113f, 0x303e, + 0x303d, 0x281d, 0x303d, 0x11bf, 0x303f, 0x283e, 0x113f, 0x303e, 0x283f, 0x025f, 0x301e, 0x313e, 0x529e, 0x82d4, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b91, 0xc5bd, 0x513c, 0x389c, 0x301d, 0x197f, 0x11bf, 0x301e, 0x20ff, 0x303e, 0x0a9f, 0x283f, 0x303f, 0x02bf, 0x285d, 0x383c, - 0xd69f, 0x734f, 0x18c3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, - 0x6a7e, 0x735c, 0x285f, 0x11ff, 0x20df, 0x303e, 0x301e, 0x301e, + 0xd69f, 0x734f, 0x18c3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8b9b, 0x301d, 0x285f, 0x11ff, 0x20df, 0x303e, 0x301e, 0x301e, 0x0a1f, 0x303f, 0x303e, 0x11bf, 0x285e, 0x1a3f, 0x301d, 0x1adf, 0x223f, 0x303d, 0x287e, 0x289d, 0x12ff, 0x303d, 0x321f, 0x1bbf, 0x303d, 0x289e, 0x11ff, 0x283f, 0x285e, 0x0a9f, 0x303e, 0x301f, 0x0a3f, 0x301e, 0x285e, 0x123f, 0x301f, 0x287f, 0x11ff, 0x301f, - 0x28de, 0x301e, 0x207e, 0x493c, 0xc51f, 0x5a6f, 0x0000, 0x0000, + 0x28de, 0x301e, 0x207e, 0x493c, 0xc51f, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffdf, 0xf67d, 0xb871, 0xc071, 0xc071, 0xc071, 0xc071, 0xb871, 0xb871, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb871, 0xb871, 0xb871, 0xc091, 0xb891, 0xb891, 0xb891, 0xb891, 0xb892, 0xb892, 0xb891, 0xb872, 0xb892, 0xb892, 0xb892, 0xb892, 0xb892, 0xb892, 0xb892, 0xb892, 0xb892, 0xc092, 0x99b5, 0x7974, 0x6213, 0x0000, 0x0000, 0x0000, - 0x5acc, 0xffff, 0xd0b1, 0xc092, 0xc092, 0xb871, 0xb871, 0xb871, + 0x0000, 0xffff, 0xb872, 0xc092, 0xc092, 0xb871, 0xb871, 0xb871, 0xb891, 0xb891, 0xb871, 0xb891, 0xb891, 0xb892, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb871, 0xb892, 0xb891, 0xb871, 0xb871, 0xb871, 0xb871, 0xb891, @@ -4853,19 +4853,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a1b, 0x92db, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0xf7bf, 0x38bd, 0x303e, 0x303e, 0x303e, 0x301d, 0x301d, 0x303d, + 0xffff, 0x38bd, 0x303e, 0x303e, 0x303e, 0x301d, 0x301d, 0x303d, 0x303e, 0x301e, 0x303e, 0x303d, 0x301d, 0xbd3f, 0xb51e, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xffff, - 0x305d, 0x303d, 0x303d, 0x303e, 0x303e, 0x303e, 0x303e, 0x303e, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9472, 0xffff, + 0x303d, 0x303d, 0x303d, 0x303e, 0x303e, 0x303e, 0x303e, 0x303e, 0x303e, 0x303d, 0x301c, 0x627e, 0xbd5e, 0x0862, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbd7f, 0x945f, 0x303c, 0x301c, 0x303d, 0x303d, 0x303e, 0x303e, 0x303e, 0x303d, 0x303e, 0x303e, 0x303d, 0x303d, - 0x307d, 0xa4fe, 0xffff, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, - 0xac9b, 0x8b9b, 0x201d, 0x303e, 0x303e, 0x303d, 0x303e, 0x303e, + 0x307d, 0xa4fe, 0xbd3e, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x8b9b, 0x201d, 0x303e, 0x303e, 0x303d, 0x303e, 0x303e, 0x303e, 0x303e, 0x303e, 0x305e, 0x303e, 0x303d, 0x303d, 0x305e, 0x305e, 0x303d, 0x303d, 0x305d, 0x305d, 0x303d, 0x305d, 0x303d, 0x303d, 0x303d, 0x305e, 0x303e, 0x303e, 0x305e, 0x303e, 0x303e, @@ -4877,7 +4877,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xb891, 0xb091, 0xb891, 0xb891, 0xb891, 0xb891, 0xb891, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb892, 0xb892, 0xb891, 0xb091, 0xc051, 0xac3e, 0x1003, 0x0020, 0x0000, 0x0000, 0x0000, - 0xffff, 0xffff, 0xc092, 0xc092, 0xc092, 0xb872, 0xb892, 0xb871, + 0x0000, 0xffff, 0xc092, 0xc092, 0xc092, 0xb872, 0xb892, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb891, 0xb892, 0xb892, 0xb892, 0xb892, 0xb891, 0xb892, 0xb892, 0xb891, 0xb891, 0xb891, 0xb891, 0xb892, 0xb891, 0xb892, 0xb871, 0xb891, 0xb871, 0xb871, 0xb891, @@ -4893,19 +4893,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a1b, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xf7bf, 0x183e, 0x303d, 0x301d, 0x301e, 0x301d, 0x301d, 0x301d, + 0xffff, 0x183e, 0x303d, 0x301d, 0x301e, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0xbd1e, 0xacbe, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x9472, 0xffff, 0x303d, 0x303d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x303d, 0x383d, 0x303d, 0x301c, 0x625d, 0xb4de, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc57e, 0xcdff, 0x303c, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x381d, 0x381d, 0x383d, 0x303d, 0x381e, 0x303e, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0xa4bd, 0x69fd, 0x383e, 0x383e, 0x383e, 0x381e, + 0x0000, 0x0020, 0xa4bd, 0x301d, 0x383e, 0x383e, 0x383e, 0x381e, 0x381d, 0x381d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, 0x383d, @@ -4917,7 +4917,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xb891, 0xb891, 0xb891, 0xb871, 0xb871, 0xb871, 0xb891, 0xb891, 0xb872, 0xb871, 0xb871, 0xb872, 0xb872, 0xb871, 0xb091, 0xb091, 0xbc1e, 0x51af, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xffff, 0xffdf, 0xb871, 0xb891, 0xc072, 0xc072, 0xb872, 0xb871, + 0x0000, 0xffdf, 0xb871, 0xb891, 0xc072, 0xc072, 0xb872, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb891, 0xb891, 0xb891, 0xb871, 0xb891, 0xb891, 0xb891, 0xb871, 0xb871, 0xb871, 0xb871, 0xb891, 0xb891, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb891, @@ -4933,31 +4933,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a5c, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xf79e, 0x181d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, + 0xffff, 0x181d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301f, 0xc57e, 0xb4de, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7bf, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x9472, 0xffff, 0x303e, 0x303d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x303d, 0x301e, 0x625d, 0xb4be, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1083, 0x394b, 0xc57f, 0x281e, 0x303d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x381d, 0x301e, - 0x301d, 0x303d, 0x38dd, 0xe73c, 0xf79e, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x1083, 0xcdff, 0xbd3f, 0x495c, 0x301e, 0x301d, + 0x301d, 0x303d, 0x38dd, 0xbd3e, 0x734f, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x1083, 0x8b9b, 0x301d, 0x495c, 0x301e, 0x301d, 0x301d, 0x381d, 0x381d, 0x381d, 0x381d, 0x303d, 0x301d, 0x303d, 0x303d, 0x301d, 0x301d, 0x381d, 0x303d, 0x301d, 0x303d, 0x303d, 0x381d, 0x383d, 0x301d, 0x301d, 0x383d, 0x301d, 0x301d, 0x301d, 0x303d, 0x383d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, 0x301d, - 0x301d, 0x301e, 0x303e, 0xc57f, 0xc55f, 0x0000, 0x0000, 0x0000, + 0x301d, 0x301e, 0x303e, 0xc57f, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7bf, 0x98ae, 0xb851, 0xb871, 0xc072, 0xc072, 0xc072, 0xb872, 0xb871, 0xb872, 0xb871, 0xb872, 0xb872, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb871, 0xb872, 0xb872, 0xb871, 0xb871, 0xb872, 0xb872, 0xb872, 0xb871, 0xb871, 0xb872, 0xb872, 0xb891, 0xa3bd, 0xa35b, 0x41ad, 0x18a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xf79e, 0xf71e, 0xc072, 0xc072, 0xc072, 0xc072, 0xb872, 0xb872, + 0x0000, 0xf71e, 0xc072, 0xc072, 0xc072, 0xc072, 0xb872, 0xb872, 0xb871, 0xb871, 0xb871, 0xb871, 0xb872, 0xb871, 0xb871, 0xb872, 0xb872, 0xb872, 0xb872, 0xb871, 0xb871, 0xb871, 0xb871, 0xb872, 0xb871, 0xb871, 0xb872, 0xb872, 0xb872, 0xb871, 0xb871, 0xb871, @@ -4973,31 +4973,31 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa29c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0xef7e, 0x413d, 0x48dc, 0x48bd, 0x48dd, 0x48dd, 0x48dd, 0x48dd, + 0xffff, 0x413d, 0x48dc, 0x48bd, 0x48dd, 0x48dd, 0x48dd, 0x48dd, 0x48fd, 0x48fd, 0x48dc, 0x491d, 0x599d, 0xc57f, 0xb51f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7bf, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0xf7bf, 0x389c, 0x389c, 0x40be, 0x48bd, 0x409d, 0x40bc, 0x40bd, 0x40bd, 0x40bd, 0x409c, 0x40dd, 0x513d, 0x6abc, 0xb4de, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1062, 0xacbc, 0x48dd, 0x40bc, 0x40bd, 0x40bc, 0x40bd, 0x40bd, 0x48bd, 0x40bd, 0x40bd, 0x40bc, 0x40bc, - 0x40bc, 0x40bc, 0x40dd, 0xde7e, 0xf79f, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xbd1c, 0xa45b, 0x6a3c, 0x40db, 0x40bc, + 0x40bc, 0x40bc, 0x40dd, 0xde7e, 0xbd3e, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa45b, 0x6a3c, 0x301d, 0x40bc, 0x40dd, 0x48dd, 0x48fd, 0x48fd, 0x48fd, 0x48fd, 0x48dd, 0x40dd, 0x40dd, 0x48dd, 0x48fd, 0x491d, 0x491d, 0x491d, 0x491d, 0x48fd, 0x48fd, 0x48fd, 0x48dd, 0x48fd, 0x48fd, 0x491d, 0x491d, 0x491d, 0x491d, 0x48fd, 0x48fd, 0x48fd, 0x48fd, 0x48fd, 0x48fd, 0x48fd, - 0x48fd, 0x48fd, 0x491c, 0xac9e, 0xb51f, 0x0000, 0x0000, 0x0000, + 0x48fd, 0x48fd, 0x491c, 0xac9e, 0x6354, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xef7e, 0x9010, 0xa8d2, 0xb0f2, 0xb113, 0xb0f3, 0xb112, 0xb112, 0xb112, 0xb0f2, 0xb0f2, 0xb0f2, 0xb112, 0xb112, 0xb0f2, 0xb0f2, 0xb0f2, 0xb0f2, 0xa8f2, 0xa8f2, 0xa912, 0xb112, 0xb112, 0xa912, 0xa932, 0xa932, 0xa912, 0xa912, 0xa8f2, 0xb112, 0xb112, 0xa8f1, 0xa8f2, 0xb112, 0xb133, 0xa0d1, 0x8b7b, 0x7b5a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xf79f, 0xf6dd, 0xb8f2, 0xb0f2, 0xb112, 0xb0f2, 0xa8d2, 0xb0f2, + 0x0000, 0xf6dd, 0xb8f2, 0xb0f2, 0xb112, 0xb0f2, 0xa8d2, 0xb0f2, 0xb0f2, 0xb0f2, 0xb112, 0xb112, 0xb0f2, 0xb0f2, 0xb0f1, 0xa8f2, 0xb112, 0xb112, 0xa912, 0xa912, 0xa912, 0xa8f2, 0xa912, 0xa912, 0xa912, 0xa912, 0xa912, 0xa932, 0xa932, 0xa912, 0xa912, 0xa911, @@ -5025,7 +5025,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xac3d, 0xa41e, 0xa41e, 0xac5e, 0xac3e, 0xac3e, 0xac3e, 0xa43e, 0xa43e, 0xac3e, 0xac5e, 0xac1e, 0xa3fe, 0xac1f, 0xac5e, 0xb49f, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x6270, 0xa3fe, 0xa41e, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8b9b, 0x8b9b, 0xa41e, 0xac5e, 0xac9e, 0xac9e, 0xac7e, 0xac7e, 0xac7e, 0xac7e, 0xac5e, 0xac7f, 0xac7f, 0xac7f, 0xac7f, 0xac7e, 0xac7e, 0xa45e, 0xac5e, 0xac5e, 0xac5e, 0xa43e, 0xac3e, 0xa43e, 0xac3e, 0xac3e, 0xac5e, @@ -5037,7 +5037,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0xa3fe, 0xa3fe, 0xa3fe, 0x9bfe, 0x9bfe, 0x9bfe, 0x9bde, 0x9bdd, 0x9bdd, 0x93bd, 0x93bd, 0x9bdd, 0x9bfd, 0x520f, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xbcbe, 0xabfe, 0x9bbe, 0x9b9e, 0x9b9e, 0x939e, 0x9bbe, 0x9bbe, + 0x0000, 0x0000, 0x9bbe, 0x9b9e, 0x9b9e, 0x939e, 0x9bbe, 0x9bbe, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bde, 0x9bbe, 0x9bde, 0x9bde, 0x9bde, 0x9bbd, 0x9bbe, 0x9bde, 0x9bfe, 0xa3fe, 0xa3fe, 0x9bfe, 0xa3fe, 0xa3fe, @@ -5299,7 +5299,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x2085, 0xba1b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0821, 0x0821, 0x0000, 0xc1dd, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0821, 0x0821, 0x0000, 0xc1dd, 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0xc198, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5316,10 +5316,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0000, 0xc999, 0x0020, 0x0821, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0001, 0x0821, 0xc9db, 0x0000, 0x0020, + 0x0000, 0x0000, 0x0000, 0x810c, 0xc159, 0x0801, 0x0000, 0x0020, 0x0821, 0x0801, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0821, 0x0000, 0xb23c, 0x0821, 0x0801, 0x0000, 0x0000, + 0x0000, 0x0821, 0x810c, 0xb23c, 0x0821, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x70b4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0801, 0x0001, 0x0000, 0x0000, 0x0000, @@ -5334,12 +5334,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x50ee, 0x588e, 0x2005, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x993a, 0x2005, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x8933, 0x78f2, 0x58ac, 0x0000, 0x0020, 0x0000, + 0x0000, 0x0000, 0x0801, 0x78f2, 0x0801, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xa9d3, 0xb974, 0x2825, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xb974, 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x790c, 0x50ca, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5356,12 +5356,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc976, 0x48e7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x70ed, 0x9192, 0x0801, + 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xc159, 0x0802, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x2826, 0x30a9, 0x8171, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x810c, 0xc159, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x382a, 0x408b, 0x58f2, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3068, 0x7054, 0x3068, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5374,12 +5374,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x8056, 0x402b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x993a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x0000, 0x0821, 0xc13c, 0xa158, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0821, 0xe1db, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xc918, 0xb956, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xc918, 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc8f5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5393,16 +5393,16 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0xe239, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd197, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x68ab, 0x68ab, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd99a, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xd99a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x2825, 0xc159, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8096, 0x7054, + 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xc159, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3068, 0x3068, 0x7054, + 0x3068, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5419,29 +5419,29 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x2045, 0xd9db, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xc136, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xc136, 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0xe1f7, 0x4046, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xe1f7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0820, 0x2023, 0x894f, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0820, 0x2023, 0xd175, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x78ce, 0xa171, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xea38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0800, 0xe279, 0x710b, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0800, 0xe279, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd9d8, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc196, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xc196, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd1fa, 0x9112, - 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xd1fa, 0x0000, + 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3068, 0x8075, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5453,18 +5453,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x38aa, 0x8115, 0x2826, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x993a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xca18, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0xd1b8, 0x3867, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x5088, - 0x68ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x790b, 0xc953, 0x1842, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xc953, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x78cb, 0x78ec, 0x40a7, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xd175, 0x40a7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb0f3, 0xa970, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5476,13 +5476,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x60ca, 0x810c, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4888, - 0x710d, 0x9151, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, + 0xc196, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xc95a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2846, 0x3827, - 0x9996, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x1804, 0x68f3, 0x408a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x1804, 0x68f3, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5493,36 +5493,36 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x3067, 0x608e, 0x8937, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x3067, 0x993a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x588a, 0xd9ba, - 0xc1d8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x0801, 0xd9ba, + 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0xe1db, 0xf1de, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x0000, 0xf1de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xd957, 0x992f, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xd957, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xd175, 0xca14, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xca14, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0xe195, 0x2802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd955, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x1001, 0xb912, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x1001, 0xd9b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc994, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xc9b7, 0xd1b8, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x810c, 0xc196, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, - 0xc199, 0x0000, 0x1823, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, + 0xc95a, 0x0000, 0x1823, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x586f, 0x584e, 0x3068, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x584e, 0x3068, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5533,36 +5533,36 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0xc1bf, 0x3047, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x993a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe1dd, 0xb9d7, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe1dd, 0x0801, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd99a, 0xe9db, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd99a, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xe978, 0xa130, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xe978, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xd956, 0xc234, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xd956, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0xd9b5, 0x4045, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd954, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xd934, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xd9b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe176, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xda39, 0xf1da, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x810c, 0xc196, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x0801, 0xc959, 0x688f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0801, 0xc959, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x1824, 0xa8bb, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x1824, 0x586f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5573,9 +5573,9 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x993a, 0x993a, 0x0001, 0x0020, 0x0000, 0x0000, + 0x0000, 0x0000, 0x480f, 0x993a, 0x0001, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0801, 0x694e, 0xe17d, 0x0001, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0801, 0x0801, 0xe17d, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc937, 0x0000, 0x0000, @@ -5584,25 +5584,25 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0xe196, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xd997, 0xb1b3, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xd997, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0xd954, 0x4024, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0801, 0xd9d5, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xd134, 0xd9b5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xd134, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd1b6, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xd996, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x810c, 0xc196, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x1022, 0xc95b, 0xd15b, 0x0821, 0x0000, 0x0000, 0x0000, + 0x0000, 0x1022, 0xc95b, 0x0802, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0001, 0xa95b, 0xb15d, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0001, 0x586f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5613,15 +5613,15 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x80b6, 0x913a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x993a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0820, 0xe1ff, 0xd9fe, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0820, 0x0801, 0xd9fe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0000, 0xe1b7, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0020, 0x0000, 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xf1d7, 0xb952, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xf1d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0xd1b5, 0x0801, 0x0020, 0x0000, 0x0000, @@ -5631,18 +5631,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0xe216, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0xd974, 0xe1b5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0020, 0x0000, 0xe1b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd9d6, 0x2823, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0801, 0xea78, 0x1001, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x810c, 0xe1d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xc199, 0xc9fb, 0x0000, 0x0020, 0x0000, + 0x0000, 0x0000, 0x0000, 0xc199, 0x0802, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0802, 0x0001, 0xa17c, 0x60d1, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0802, 0x586f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5653,15 +5653,15 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1003, - 0x3009, 0x9939, 0x0001, 0x0000, 0x0001, 0x0000, 0x0801, 0x1003, + 0x3009, 0x993a, 0x0001, 0x0000, 0x0001, 0x0000, 0x0801, 0x1003, 0x1002, 0x0802, 0x0801, 0x0801, 0x0801, 0x1002, 0x1002, 0x1002, - 0x0802, 0x0000, 0x2043, 0xb977, 0xc979, 0x0001, 0x0000, 0x0001, + 0x0802, 0x0000, 0x2043, 0xe1db, 0x0801, 0x0001, 0x0000, 0x0001, 0x0801, 0x0801, 0x0802, 0x0801, 0x0802, 0x1803, 0x1002, 0x1002, 0x1002, 0x1002, 0x1002, 0x1802, 0x1803, 0x1803, 0x1002, 0x1001, - 0x1002, 0x1002, 0x1822, 0x2003, 0xe1f7, 0x1022, 0x1001, 0x0801, + 0x1002, 0x1002, 0x1822, 0xc937, 0x0000, 0x1022, 0x1001, 0x0801, 0x0801, 0x0801, 0x1002, 0x1802, 0x1803, 0x1802, 0x1802, 0x1802, 0x1002, 0x1001, 0x1001, 0x1002, 0x1802, 0x1803, 0x2003, 0x1802, - 0x1001, 0xe997, 0xa130, 0x1001, 0x1022, 0x1802, 0x1802, 0x1002, + 0x1001, 0xe997, 0x0000, 0x1001, 0x1022, 0x1802, 0x1802, 0x1002, 0x1002, 0x1002, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1002, 0x1002, 0x1002, 0x1802, 0x1802, 0x2003, 0x2023, 0xd1d6, 0x0800, 0x1002, 0x1001, 0x1002, @@ -5671,18 +5671,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1002, 0x1001, 0xd1b5, 0x0000, 0x1022, 0x1002, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1002, - 0x1802, 0x2003, 0x2803, 0xc974, 0xd9b5, 0x1802, 0x1001, 0x1802, + 0x1802, 0x2003, 0x2803, 0x0000, 0xd9b5, 0x1802, 0x1001, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1002, 0x1802, 0x2003, 0x2003, 0x1802, 0xd9d6, 0x2824, 0x1001, 0x1001, 0x1002, 0x2003, 0x2003, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1802, 0x1002, 0x1002, 0x1002, - 0x1001, 0x1002, 0x0800, 0xe1d7, 0x2803, 0x0801, 0x1001, 0x1002, + 0x1001, 0x1002, 0x0800, 0x0000, 0x810c, 0xe1d7, 0x1001, 0x1002, 0x2003, 0x2003, 0x2003, 0x1802, 0x1001, 0x1001, 0x1001, 0x1002, 0x1002, 0x1002, 0x1002, 0x1002, 0x0801, 0x0801, 0x0801, 0x0801, - 0x0801, 0x0802, 0x0801, 0xa978, 0x9934, 0x0000, 0x0801, 0x0801, + 0x0801, 0x0802, 0x0801, 0x0801, 0x9934, 0x0000, 0x0801, 0x0801, 0x0802, 0x1002, 0x1003, 0x1002, 0x0801, 0x0801, 0x0801, 0x0801, - 0x1002, 0x0802, 0x0802, 0x0000, 0x0000, 0x0000, 0x88f7, 0x586f, + 0x1002, 0x0802, 0x0802, 0x0000, 0x0000, 0x0000, 0x586f, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5692,16 +5692,16 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x480f, - 0x78b6, 0x0821, 0x0802, 0x0801, 0x2006, 0x1805, 0x1806, 0x3828, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x0000, + 0x993a, 0x0821, 0x0802, 0x0801, 0x2006, 0x1805, 0x1806, 0x3828, 0x3829, 0x3829, 0x3829, 0x3008, 0x3008, 0x4029, 0x482a, 0x502b, - 0x502b, 0x3808, 0xe1db, 0x0000, 0x0000, 0x1003, 0x1003, 0x2807, - 0x3007, 0x3007, 0x3828, 0x3028, 0x3828, 0x606b, 0x586b, 0x504a, + 0x502b, 0x3808, 0xe1db, 0x606b, 0x606b, 0x606b, 0x606b, 0x606b, + 0x606b, 0x606b, 0x606b, 0x606b, 0x606b, 0x606b, 0x586b, 0x504a, 0x688b, 0x606b, 0x606a, 0x606b, 0x708c, 0x708c, 0x78ad, 0x708c, - 0x688b, 0x688b, 0x688b, 0xd9d7, 0x9930, 0x502a, 0x586b, 0x584a, + 0x688b, 0x688b, 0xc937, 0x586b, 0x9930, 0x502a, 0x586b, 0x584a, 0x688b, 0x608b, 0x688b, 0x688c, 0x708d, 0x788d, 0x78ad, 0x80ce, 0x78ad, 0x80ad, 0x80cd, 0x88ce, 0x90ce, 0x90ce, 0x90ce, 0x888d, - 0xd195, 0xe197, 0xb973, 0x608a, 0x708c, 0x88ce, 0x88ce, 0x80ad, + 0xd195, 0x90ef, 0x90ef, 0x608a, 0x708c, 0x88ce, 0x88ce, 0x80ad, 0x70ac, 0x70ac, 0x78ac, 0x80ad, 0x88ce, 0x98ef, 0x90ef, 0x90ef, 0x90ce, 0x90ee, 0x90cf, 0x90ce, 0x88ce, 0x80ad, 0x80ad, 0x80ad, 0x88ce, 0x90cf, 0xd216, 0xd1d5, 0x808e, 0x88ee, 0x88ee, 0x88ef, @@ -5709,21 +5709,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x90ef, 0x90ef, 0x90ef, 0x88ce, 0x88cd, 0x80cd, 0x80cd, 0xe1d6, 0xb972, 0x98ef, 0x90ee, 0x88ce, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ee, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x88ce, 0x88ce, - 0xa931, 0x914f, 0xa110, 0x9910, 0x990f, 0x990f, 0x98ef, 0x90ef, + 0xd9b5, 0x914f, 0xa110, 0x9910, 0x990f, 0x990f, 0x98ef, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ee, 0x90ee, 0x88ce, - 0x88ce, 0x88ee, 0x90ee, 0x98f0, 0xa952, 0xb993, 0x88cf, 0x90ef, + 0x88ce, 0x88ee, 0x90ee, 0x98f0, 0xa952, 0xd9b5, 0x88cf, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ee, 0x90ee, 0x90ee, 0x90ee, 0x88ee, 0x88ee, 0x90ee, 0x90ee, 0x90ef, 0x88ce, 0x80ad, 0x78cc, 0x708c, - 0x78ac, 0x708c, 0xd1d5, 0xc174, 0xb993, 0x88ce, 0x90ef, 0x90ef, + 0x78ac, 0x708c, 0x708c, 0xc174, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x90ef, 0x88ee, 0x80ce, 0x80ed, 0x80ee, 0x80cd, 0x88ce, 0x88ce, 0x80ce, 0x80cd, 0x80cd, 0x78cd, 0x78cd, 0x70cc, 0x78cd, 0x80ce, - 0x686b, 0x688c, 0x606b, 0xda37, 0xd9f6, 0x78cd, 0x80ed, 0x80ee, + 0x686b, 0x688c, 0x606b, 0x688c, 0x688c, 0x810c, 0xe1d7, 0x80ee, 0x88ef, 0x90ef, 0x88ce, 0x80ce, 0x80cd, 0x70ac, 0x68ab, 0x70cc, 0x584b, 0x606c, 0x606c, 0x608b, 0x4049, 0x4849, 0x4849, 0x484a, 0x2807, 0x2005, 0x1805, 0x0803, 0x1802, 0xd97a, 0x4049, 0x586c, 0x604c, 0x606c, 0x584b, 0x506a, 0x3829, 0x4029, 0x3809, 0x382a, - 0x380a, 0x3008, 0x2808, 0x1806, 0x1003, 0x0000, 0x0001, 0x0000, - 0x300b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x380a, 0x3008, 0x2808, 0x1806, 0x1003, 0x0000, 0x0001, 0x586f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5732,13 +5731,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2809, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x3009, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x710e, 0xf21d, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0801, 0xf21d, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x0800, 0x0000, 0xd196, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0800, 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0xd9d6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5749,21 +5749,21 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x68eb, 0x3829, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x60ea, 0xb1b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xd9b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x2043, 0xb973, 0x0000, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x2043, 0xd9b5, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x912f, 0xc994, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xc994, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc9d5, 0x0000, 0x0800, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x810c, 0xe1d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0xe1fa, 0x814f, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0xe1fa, 0x0802, + 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x2008, 0x2829, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x586f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5772,13 +5772,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2007, 0x0001, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2007, 0x3009, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1823, - 0x90d1, 0xb997, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xe1db, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x2023, 0xc934, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xc937, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1001, 0xc174, 0x0801, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5789,21 +5789,22 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x704b, 0x2806, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x592a, 0xb933, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xb1b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x1022, 0xb973, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x1022, 0xd9b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x70ec, 0xc913, 0x1822, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0020, 0x0000, 0xc913, 0x1822, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0xc114, 0x1803, 0x1001, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x0801, 0x0000, 0x810c, + 0xe1d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0802, 0xc95a, + 0x0802, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb175, 0x60ac, - 0x1022, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x586f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x2007, 0x2008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5812,13 +5813,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x1807, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0001, 0xd15d, - 0x3867, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0801, 0xc976, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc937, + 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd196, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5829,7 +5829,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc995, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xda18, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xb1b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc174, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5837,13 +5837,13 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc174, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb976, 0x58eb, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x0801, 0x0000, + 0x810c, 0xe1d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xc95a, 0x0802, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xc95a, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x2809, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5854,34 +5854,25 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x8935, 0xa159, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0801, 0xa159, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x4069, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1002, 0x504b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x586d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x484b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x500b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x70ae, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x484a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2045, 0x3027, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x6831, 0x6872, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5890,39 +5881,29 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0001, 0x0001, 0x0001, 0x0802, 0x0802, 0x0802, 0x0001, 0x0001, - 0x0801, 0x0802, 0x0001, 0x0001, 0x1806, 0x406c, 0x488d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1804, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2004, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0801, 0x1002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0801, 0x0001, 0x0001, 0x1806, 0x406c, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0822, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1803, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x2006, 0x3029, 0x1805, 0x0802, 0x0000, 0x0001, 0x0802, - 0x0802, 0x0802, 0x0802, 0x0803, 0x0802, 0x0802, 0x0801, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5933,8 +5914,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1003, 0x1004, 0x1004, 0x1004, 0x1004, 0x1004, 0x0803, 0x0803, - 0x1004, 0x1805, 0x1005, 0x1806, 0x300b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5958,11 +5937,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xaa7b, 0xaabd, 0xaadc, 0xa2bc, 0xaa9c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x380c, 0x1805, 0x0803, 0x1004, 0x1004, - 0x1004, 0x1004, 0x1004, 0x1004, 0x1004, 0x1004, 0x1004, 0x1005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5973,8 +5951,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x1003, 0x0803, 0x0803, 0x0803, 0x0803, 0x0803, 0x0803, - 0x0803, 0x0803, 0x5030, 0x1806, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -5982,6 +5958,7 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xaa9d, 0xa2dc, 0xaadd, 0xa2dc, 0xaabc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6000,9 +5977,8 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xa23c, 0xa29c, 0xaadc, 0xaadc, 0xb27e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0802, 0x2808, 0x0802, 0x0803, - 0x0803, 0x0803, 0x0803, 0x0803, 0x0803, 0x0803, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6014,35 +5990,15 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1004, 0x282a, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x028b, 0x0a09, 0x0229, 0x028a, 0x02ab, 0x034f, - 0x0000, 0x0000, 0x0020, 0x026a, 0x01e8, 0x01e8, 0x0229, 0x028b, - 0x034d, 0x0000, 0x0020, 0x0269, 0x022a, 0x024a, 0x028b, 0x02ab, - 0x028b, 0x0020, 0x0020, 0x0aec, 0x024a, 0x024a, 0x024a, 0x0229, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x028b, 0x026b, 0x02ac, - 0x02ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0229, 0x0229, 0x024a, 0x026b, 0x0020, - 0x0000, 0x0000, 0x0020, 0x026a, 0x026a, 0x024a, 0x024a, 0x0000, - 0x0000, 0x0020, 0x02ed, 0x030c, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0186, 0x026b, 0x0041, 0x0000, 0x0147, 0x0229, 0x0229, 0x0209, - 0x0000, 0x0020, 0x032d, 0x02ab, 0x0020, 0x0000, 0x0187, 0x0209, - 0x0000, 0x0000, 0x0000, 0x0209, 0x02ab, 0x026a, 0x028b, 0x028a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0124, 0x0167, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0208, 0x01e8, 0x01e8, 0x0229, - 0x0000, 0x0000, 0x0000, 0x0020, 0x02aa, 0x026b, 0x01e8, 0x00e5, - 0x0000, 0x0000, 0x0000, 0x0a49, 0x0a29, 0x0249, 0x026a, 0x0105, - 0x0020, 0x0000, 0x0000, 0x0269, 0x0208, 0x01e9, 0x0082, 0x0000, - 0x0020, 0x026a, 0x0000, 0x0000, 0x0000, 0x01a7, 0x0000, 0x0000, - 0x0000, 0x0000, 0x026a, 0x0229, 0x024a, 0x026b, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x280b, 0x2008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xa25d, 0xaafc, 0xaafd, 0xaabc, 0xaa7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6054,35 +6010,14 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1004, 0x300b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x071d, 0x06be, 0x069d, 0x06de, 0x16de, 0x07bf, - 0x0041, 0x0000, 0x0000, 0x06fe, 0x06de, 0x067d, 0x067d, 0x06de, - 0x07df, 0x0021, 0x0041, 0x06fd, 0x06de, 0x06de, 0x06bf, 0x069d, - 0x06bd, 0x0041, 0x0020, 0x0fff, 0x0edf, 0x06de, 0x069d, 0x067c, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x06fe, 0x06dd, 0x06fe, - 0x075f, 0x0041, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x065b, 0x06dd, 0x069c, 0x071e, 0x071f, 0x0020, - 0x0000, 0x0000, 0x0061, 0x071f, 0x06de, 0x06de, 0x071f, 0x0020, - 0x0000, 0x0021, 0x071f, 0x073f, 0x0000, 0x0000, 0x0000, 0x0020, - 0x030d, 0x0ebe, 0x0061, 0x0000, 0x0475, 0x069e, 0x06bf, 0x065d, - 0x0021, 0x0000, 0x073f, 0x06df, 0x0041, 0x0020, 0x0cd6, 0x06be, - 0x0021, 0x0000, 0x0000, 0x065a, 0x16fe, 0x06fe, 0x06bd, 0x06bd, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x06dd, 0x075f, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0020, 0x071e, 0x069c, 0x069c, 0x073e, - 0x0040, 0x0000, 0x0020, 0x0041, 0x073f, 0x06fe, 0x06dd, 0x061c, - 0x0000, 0x0000, 0x0020, 0x06bd, 0x069d, 0x06de, 0x06fe, 0x0433, - 0x0841, 0x0020, 0x0061, 0x06de, 0x06de, 0x069e, 0x01a7, 0x0020, - 0x0000, 0x0edd, 0x0000, 0x0000, 0x0000, 0x06bd, 0x0000, 0x0000, - 0x0020, 0x0000, 0x0ede, 0x06fe, 0x069d, 0x06bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0800, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x280b, 0x2007, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1023, 0xaa9c, + 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa7c, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6093,36 +6028,8 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x280a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0xe9d4, 0xf173, 0xf153, 0xf153, - 0xf193, 0xf1d4, 0xf1b4, 0xf153, 0xe932, 0xf173, 0xf133, 0xe912, - 0xe952, 0xe973, 0xf173, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x0f3e, 0x077f, 0x0021, 0x0041, 0x0061, 0x075f, - 0x069f, 0x0021, 0x0000, 0x06bd, 0x0000, 0x0020, 0x0021, 0x0020, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0062, 0x075f, 0x079f, 0x0041, - 0x0020, 0x0000, 0x0020, 0x0fff, 0x075f, 0x0061, 0x0041, 0x0020, - 0x06be, 0x069c, 0x0020, 0x0000, 0x06de, 0x0020, 0x0020, 0x0041, - 0x061d, 0x06be, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0041, 0x0598, 0x073f, 0x0061, 0x0041, 0x0041, 0x0041, 0x0000, - 0x0000, 0x0000, 0x0e9d, 0x0000, 0x0041, 0x0061, 0x028c, 0x06bd, - 0x0020, 0x0021, 0x06be, 0x06be, 0x06be, 0x00e3, 0x0041, 0x053a, - 0x06be, 0x06be, 0x0020, 0x0000, 0x0041, 0x02ce, 0x075f, 0x0020, - 0x0000, 0x0000, 0x06fe, 0x06fe, 0x075f, 0x00c3, 0x0d37, 0x069e, - 0x0020, 0x0000, 0x06be, 0x073f, 0x0062, 0x0021, 0x0020, 0x0020, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0041, 0x16dc, - 0x0000, 0x0370, 0x173f, 0x0041, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x00c3, 0x16bd, 0x0082, 0x0020, 0x0041, 0x0041, - 0x0125, 0x0020, 0x0000, 0x06de, 0x0000, 0x0021, 0x0000, 0x06bd, - 0x077f, 0x0041, 0x0020, 0x06bd, 0x0209, 0x0041, 0x0021, 0x075f, - 0x06de, 0x0041, 0x0000, 0x0082, 0x16bd, 0x0022, 0x0000, 0x0000, - 0x0000, 0x06de, 0x069d, 0x03f3, 0x0020, 0x06fe, 0x0020, 0x0021, - 0x06df, 0x06de, 0x0020, 0x0041, 0x0041, 0x0021, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0xf154, 0xf173, 0xf193, - 0xf1d4, 0xf1b4, 0xf153, 0xf133, 0xf173, 0xf1d4, 0xf1f4, 0xf1b4, - 0xf173, 0xf153, 0xf173, 0xf1b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1807, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6131,38 +6038,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0800, 0xa27d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xa27c, 0x1023, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2009, 0x0801, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0800, 0x5846, 0x5066, 0x5046, 0x5046, - 0x5046, 0x5847, 0x6047, 0x5846, 0x4825, 0xf173, 0xe932, 0x5046, - 0x4845, 0x4825, 0x4826, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x075f, 0x077f, 0x0cf7, 0x0d18, 0x1559, 0x06fe, - 0x01c9, 0x0000, 0x0000, 0x06fe, 0x05b8, 0x0579, 0x0538, 0x0041, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x073e, 0x07bf, 0x0000, - 0x0000, 0x0000, 0x0020, 0x07df, 0x06fe, 0x0c54, 0x0cf8, 0x1559, - 0x06df, 0x024a, 0x0020, 0x0000, 0x069d, 0x0000, 0x0000, 0x0020, - 0x061b, 0x069d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0041, 0x0578, 0x071f, 0x0041, 0x0000, 0x0d17, 0x0538, 0x0146, - 0x0000, 0x0000, 0x06dd, 0x032d, 0x0391, 0x0c54, 0x0d17, 0x06be, - 0x0020, 0x0021, 0x06df, 0x073f, 0x0944, 0x06de, 0x0599, 0x04f9, - 0x024a, 0x065c, 0x0020, 0x0000, 0x0020, 0x026c, 0x0f5f, 0x0000, - 0x0000, 0x0000, 0x073f, 0x06ff, 0x0390, 0x0517, 0x05fa, 0x065d, - 0x0020, 0x0000, 0x073f, 0x077f, 0x0041, 0x028e, 0x0414, 0x04d7, - 0x0209, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x01e8, - 0x069c, 0x067e, 0x0041, 0x0041, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x00a3, 0x06de, 0x0041, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x06bd, 0x0000, 0x0000, 0x0000, 0x06bd, - 0x07bf, 0x0041, 0x0041, 0x0ede, 0x0209, 0x0000, 0x0000, 0x075f, - 0x06de, 0x0041, 0x0000, 0x0062, 0x16dd, 0x0001, 0x0000, 0x0000, - 0x0000, 0x0ede, 0x0143, 0x0ebe, 0x0c95, 0x06ff, 0x0000, 0x0020, - 0x073f, 0x0f1f, 0x0020, 0x0000, 0x0c96, 0x04f8, 0x0538, 0x0020, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4025, 0x5065, 0x5066, - 0x5086, 0xf9d4, 0xf9b5, 0x4845, 0x4845, 0x5046, 0x5046, 0x4845, - 0x4045, 0x4845, 0x5046, 0x4025, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x2027, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6173,36 +6054,17 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x2007, 0x2027, 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x6087, 0xc92f, 0xd170, 0xd9b1, 0xd991, 0xc94f, 0xc94f, 0xc94f, - 0xc970, 0xc970, 0x4024, 0x0000, 0x0000, 0x3825, 0x4026, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x06fd, 0x071f, 0x07bf, 0x077f, 0x06be, 0x0599, - 0x0000, 0x0000, 0x0000, 0x0ede, 0x01e7, 0x01e8, 0x0269, 0x0021, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x073f, 0x07ff, 0x0020, - 0x0000, 0x0000, 0x0020, 0x07bf, 0x06de, 0x065c, 0x063d, 0x0f1f, - 0x0083, 0x0820, 0x0020, 0x0000, 0x06bd, 0x0000, 0x0000, 0x0000, - 0x061b, 0x069e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0041, 0x0598, 0x0f1f, 0x0020, 0x0000, 0x0b0d, 0x06ff, 0x022a, - 0x0020, 0x0000, 0x06fe, 0x06df, 0x06ff, 0x06bd, 0x06de, 0x069d, - 0x0020, 0x0021, 0x073f, 0x07df, 0x0041, 0x0146, 0x06bd, 0x00a3, - 0x00a3, 0x067c, 0x0041, 0x0000, 0x0020, 0x022b, 0x0f1f, 0x0000, - 0x0020, 0x0000, 0x073f, 0x06be, 0x0020, 0x02ac, 0x067d, 0x069d, - 0x0021, 0x0020, 0x075f, 0x075f, 0x0041, 0x00a3, 0x0209, 0x069e, - 0x02ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x06de, - 0x030d, 0x073f, 0x05ba, 0x05bb, 0x00c4, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x00a3, 0x0ede, 0x0041, 0x0000, 0x0000, 0x0020, - 0x0020, 0x0000, 0x0000, 0x069d, 0x0000, 0x0000, 0x0000, 0x06be, - 0x0fff, 0x0041, 0x0021, 0x0edd, 0x01a7, 0x0000, 0x0000, 0x073f, - 0x071f, 0x0041, 0x0000, 0x0041, 0x0ebd, 0x0000, 0x0020, 0x0020, - 0x0000, 0x06de, 0x0000, 0x0187, 0x069e, 0x069d, 0x0000, 0x0020, - 0x071f, 0x0f1f, 0x0000, 0x0000, 0x02ac, 0x075f, 0x079f, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1023, 0xa29c, + 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0xa29c, 0xab5e, 0xab1f, + 0xab1f, 0xab3f, 0xab1f, 0xab3f, 0xab3e, 0xab1e, 0xab3e, 0xb33f, + 0xb35f, 0xb33f, 0xb35f, 0xb35f, 0xb33e, 0xab3e, 0xab3e, 0xb35f, + 0xb35f, 0xb35f, 0xb35f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, + 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33e, 0xab3e, + 0xab1e, 0xab1e, 0xab3e, 0xb33f, 0xab3f, 0xab1e, 0xab1e, 0xab1e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x786a, 0x80ab, 0x0000, 0x0000, 0x0000, 0xd0ef, 0xc92e, - 0xd150, 0xd990, 0xd170, 0xc14f, 0xb94e, 0xc16f, 0xc970, 0x78ca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0802, 0x1806, 0x2008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6211,38 +6073,19 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xab1f, 0xb33f, 0xb31e, 0xab3f, 0xb35f, 0xab3e, 0xab1e, 0xab3e, + 0xb33f, 0xb33f, 0xab1e, 0xab1e, 0xab1e, 0xaafe, 0xaafe, 0xab1e, + 0xb33e, 0xb35f, 0xb35f, 0xb33e, 0xb33e, 0xab3e, 0xab3e, 0xb33e, + 0xab1e, 0xab3e, 0xb33f, 0xb35f, 0xb35f, 0xb33f, 0xb33e, 0xb31e, + 0xb33f, 0xab3e, 0xab3e, 0xab1e, 0xab3e, 0xab3e, 0xa2fd, 0xa2fd, + 0xa33e, 0xa31b, 0xa2bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xa25c, 0x1023, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x280a, 0x280b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x788a, 0xf1d4, 0xf1f4, 0xf1f3, 0xf1b3, 0xf193, 0xf193, 0xf1d3, - 0xf1b3, 0xe993, 0x3803, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x071e, 0x071f, 0x0000, 0x0041, 0x061d, 0x06fd, - 0x0020, 0x0000, 0x0000, 0x06dd, 0x0000, 0x0041, 0x0041, 0x0061, - 0x0041, 0x0000, 0x0000, 0x0000, 0x0021, 0x075f, 0x07ff, 0x0020, - 0x0000, 0x0000, 0x0020, 0x07bf, 0x071f, 0x0020, 0x0041, 0x073f, - 0x067d, 0x0020, 0x0000, 0x0000, 0x069d, 0x0000, 0x0000, 0x0000, - 0x05fc, 0x0e5d, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0558, 0x06be, 0x0020, 0x0000, 0x0021, 0x06ff, 0x01e8, - 0x0020, 0x0000, 0x0edd, 0x0000, 0x0020, 0x0061, 0x020a, 0x069d, - 0x0020, 0x0021, 0x075f, 0x07ff, 0x0021, 0x0083, 0x0579, 0x0000, - 0x00a3, 0x069d, 0x0041, 0x0000, 0x0021, 0x02ad, 0x071f, 0x0040, - 0x0000, 0x0000, 0x071e, 0x06de, 0x0020, 0x0000, 0x06df, 0x06be, - 0x0021, 0x0000, 0x06bd, 0x06ff, 0x0041, 0x0000, 0x0061, 0x167d, - 0x02cc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x067e, - 0x0061, 0x0209, 0x067e, 0x03b1, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x00c4, 0x169d, 0x0061, 0x0000, 0x0000, 0x00e3, - 0x022a, 0x0020, 0x0000, 0x067d, 0x0000, 0x0000, 0x0000, 0x06be, - 0x0f9f, 0x0021, 0x0020, 0x06bd, 0x01a7, 0x0020, 0x0020, 0x075f, - 0x0efe, 0x0021, 0x0000, 0x0020, 0x0e9d, 0x0000, 0x0020, 0x0020, - 0x0000, 0x067d, 0x0000, 0x0021, 0x06fe, 0x06de, 0x0000, 0x0020, - 0x063c, 0x065c, 0x0000, 0x0020, 0x0000, 0x073f, 0x075e, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe932, 0xf194, - 0xf1d4, 0xf1f4, 0xf1d3, 0xf193, 0xf1b3, 0xf1f4, 0xf1d4, 0x88cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x280a, 0x280b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6253,36 +6096,161 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0001, 0x2008, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0823, 0x9a1c, + 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a3c, 0xaabe, 0xb31e, + 0xaadd, 0xaabd, 0xb2bd, 0xb2dd, 0xaadd, 0xb2dd, 0xb2dd, 0xb2dd, + 0xb2dd, 0xb2dd, 0xb2fd, 0xb2dd, 0xb2fd, 0xb2dd, 0xb2dd, 0xb2fd, + 0xb2fd, 0xb2fd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, + 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xaadd, 0xb2bd, 0xb2bd, + 0xaabd, 0xaabd, 0xb2bd, 0xb2dd, 0xb2dd, 0xaadd, 0xaabc, 0xaabd, + 0xab1e, 0xab1e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xab1e, 0xab1e, + 0xaabe, 0xb2dd, 0xb2fd, 0xb2dd, 0xb2dd, 0xaabd, 0xb2dd, 0xb2bd, + 0xaabd, 0xb2dd, 0xaabd, 0xaabd, 0xaabc, 0xaabd, 0xaabd, 0xaadd, + 0xaadd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xaadd, 0xaadd, 0xaadd, + 0xaadd, 0xb2dd, 0xaabd, 0xb2dd, 0xb2dd, 0xb2dd, 0xaabd, 0xaabd, + 0xb2bd, 0xaabd, 0xaadd, 0xaabd, 0xaabd, 0xaabc, 0xaabc, 0xaadc, + 0xaadd, 0xaabc, 0x9a5c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x9a1b, 0x0822, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0823, 0x9a5b, + 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a1c, 0x0000, 0x0001, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8218, 0x9a1b, 0x1003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x9a1c, 0x81d7, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x9a5b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, + 0x9a5b, 0x0822, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1825, + 0xaafc, 0xa2fd, 0x9adb, 0x9adb, 0xaafd, 0x0001, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x1844, 0xa2fc, 0x9adc, 0x9adb, 0x9adb, 0x9afc, 0x9adb, + 0x92db, 0x92db, 0x92db, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x8258, 0x8258, 0x8278, 0x8a7a, 0x8a99, 0x8a99, 0x92ba, 0x9adb, + 0x9adb, 0x92da, 0x92da, 0x9afb, 0x929b, 0x929b, 0x0802, 0x0801, + 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x1023, 0xaafd, 0x9afc, 0x92ba, 0x9abb, 0x9add, + 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xb2fe, 0xab1e, 0xaafd, 0xaafd, 0xbadf, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0801, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xb2fe, 0xaafe, 0xaadd, 0xaadd, 0xaabe, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x06de, 0x06fe, 0x0000, 0x0000, 0x0000, 0x06fe, - 0x07df, 0x0020, 0x0000, 0x06fe, 0x0efe, 0x0ebe, 0x06de, 0x06bd, - 0x075f, 0x0021, 0x0000, 0x0000, 0x0041, 0x071f, 0x075f, 0x0000, - 0x0000, 0x0000, 0x0020, 0x07bf, 0x06ff, 0x0020, 0x0000, 0x0000, - 0x067c, 0x063b, 0x0000, 0x0000, 0x0020, 0x0ede, 0x06be, 0x06bd, - 0x05bb, 0x0041, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x030f, 0x069d, 0x065c, 0x069d, 0x073f, 0x0021, - 0x0000, 0x0000, 0x0edd, 0x0000, 0x0000, 0x0020, 0x0209, 0x06ff, - 0x0061, 0x0021, 0x0eff, 0x077f, 0x0000, 0x0000, 0x0000, 0x0000, - 0x00c4, 0x0ebd, 0x0061, 0x0000, 0x0494, 0x06be, 0x06de, 0x065c, - 0x0020, 0x0000, 0x06fd, 0x06fe, 0x0020, 0x0020, 0x0559, 0x069d, - 0x0020, 0x0000, 0x0020, 0x06fe, 0x06de, 0x0ede, 0x0ede, 0x0146, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0063, - 0x069d, 0x067d, 0x0000, 0x069d, 0x032e, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0000, 0x06fe, 0x06de, 0x069d, 0x073d, - 0x0020, 0x0000, 0x0000, 0x0000, 0x06bd, 0x06bd, 0x06bd, 0x065e, - 0x0000, 0x0000, 0x0020, 0x069c, 0x06bd, 0x06de, 0x06be, 0x03f1, - 0x0020, 0x0000, 0x0041, 0x06be, 0x06fe, 0x06be, 0x0168, 0x0020, - 0x0000, 0x06bd, 0x0000, 0x0020, 0x0062, 0x0efd, 0x0041, 0x0000, - 0x0020, 0x0000, 0x0ebd, 0x06de, 0x06be, 0x06de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x2008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6293,23 +6261,18 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x1806, 0x1005, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6322,7 +6285,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x1004, 0x1026, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6333,7 +6295,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x2008, 0x1004, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6362,7 +6323,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1005, 0x2009, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6373,7 +6333,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1806, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6402,7 +6361,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6413,7 +6371,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6427,8 +6384,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6442,7 +6397,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6467,9 +6421,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x5a20, 0x0000, 0x0000, 0x0000, 0x5a40, 0x0000, 0x0020, 0x5201, - 0x6240, 0x0000, 0x0000, 0x5a40, 0x0020, 0x0000, 0x0000, 0x72c0, - 0x0860, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6507,9 +6458,26 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xfe20, 0x0820, 0x0020, 0x1040, 0xfec0, 0x0820, 0x0820, 0xe581, - 0xed81, 0x0000, 0x0000, 0xf6c1, 0x1080, 0x0020, 0x0820, 0xfec1, - 0x1880, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x071d, 0x06be, 0x069d, 0x06de, 0x16de, 0x07bf, + 0x0041, 0x0000, 0x0000, 0x06fe, 0x06de, 0x067d, 0x067d, 0x06de, + 0x07df, 0x0021, 0x0041, 0x06fd, 0x06de, 0x06de, 0x06bf, 0x069d, + 0x06bd, 0x0041, 0x0020, 0x0fff, 0x0edf, 0x06de, 0x069d, 0x067c, + 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, 0x06fe, 0x06dd, 0x06fe, + 0x075f, 0x0041, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x065b, 0x06dd, 0x069c, 0x071e, 0x071f, 0x0020, + 0x0000, 0x0000, 0x0061, 0x071f, 0x06de, 0x06de, 0x071f, 0x0020, + 0x0000, 0x0021, 0x071f, 0x073f, 0x0000, 0x0000, 0x0000, 0x0020, + 0x030d, 0x0ebe, 0x0061, 0x0000, 0x0475, 0x069e, 0x06bf, 0x065d, + 0x0021, 0x0000, 0x073f, 0x06df, 0x0041, 0x0020, 0x0cd6, 0x06be, + 0x0021, 0x0000, 0x0000, 0x065a, 0x16fe, 0x06fe, 0x06bd, 0x06bd, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, + 0x06dd, 0x075f, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0020, 0x0020, 0x071e, 0x069c, 0x069c, 0x073e, + 0x0209, 0x0000, 0x0020, 0x0041, 0x073f, 0x06fe, 0x06dd, 0x061c, + 0x0000, 0x0000, 0x0020, 0x06bd, 0x069d, 0x06de, 0x06fe, 0x0433, + 0x0841, 0x0020, 0x0061, 0x06de, 0x06de, 0x069e, 0x01a7, 0x0020, + 0x0000, 0x0edd, 0x0000, 0x0000, 0x0000, 0x06bd, 0x0000, 0x0000, + 0x0020, 0x0000, 0x0ede, 0x06fe, 0x069d, 0x06bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6530,6 +6498,26 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x0f3e, 0x077f, 0x0021, 0x0041, 0x0061, 0x075f, + 0x069f, 0x0021, 0x0000, 0x06bd, 0x0000, 0x0020, 0x0021, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0020, 0x0062, 0x075f, 0x079f, 0x0041, + 0x0020, 0x0000, 0x0020, 0x0fff, 0x075f, 0x0061, 0x0041, 0x0020, + 0x06be, 0x069c, 0x0020, 0x0000, 0x06de, 0x0209, 0x0020, 0x0041, + 0x0000, 0x06be, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0041, 0x0598, 0x073f, 0x0061, 0x0041, 0x0041, 0x0041, 0x0000, + 0x0000, 0x0000, 0x0e9d, 0x020a, 0x0041, 0x0061, 0x0061, 0x06bd, + 0x0020, 0x0021, 0x06be, 0x0391, 0x06be, 0x00e3, 0x0041, 0x053a, + 0x06be, 0x06be, 0x0020, 0x0000, 0x0041, 0x02ce, 0x075f, 0x0020, + 0x0000, 0x0000, 0x06fe, 0x06fe, 0x075f, 0x00c3, 0x0d37, 0x069e, + 0x0020, 0x0000, 0x06be, 0x073f, 0x0062, 0x0021, 0x0020, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0041, 0x16dc, + 0x0000, 0x0370, 0x173f, 0x0041, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x00c3, 0x16bd, 0x0082, 0x0082, 0x0041, 0x0041, + 0x0000, 0x0020, 0x0000, 0x06de, 0x0209, 0x0021, 0x0000, 0x0000, + 0x077f, 0x0041, 0x0020, 0x06bd, 0x0209, 0x0041, 0x0021, 0x075f, + 0x06de, 0x0041, 0x0000, 0x0082, 0x16bd, 0x0022, 0x0000, 0x0000, + 0x0000, 0x06de, 0x069d, 0x03f3, 0x0020, 0x06fe, 0x0020, 0x0021, + 0x06df, 0x06de, 0x0020, 0x0041, 0x0041, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6547,12 +6535,29 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xfe41, 0x0840, 0x0020, 0x1880, 0xfec1, 0x0820, 0x0820, 0xf6a1, - 0xdd21, 0x0000, 0x0820, 0xff22, 0x1880, 0x0820, 0x0840, 0xfec2, - 0x1080, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x075f, 0x077f, 0x020a, 0x020a, 0x020a, 0x06fe, + 0x01c9, 0x0000, 0x0000, 0x06fe, 0x05b8, 0x0579, 0x0538, 0x0041, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x073e, 0x07bf, 0x0000, + 0x0000, 0x0000, 0x0020, 0x07df, 0x06fe, 0x020a, 0x020a, 0x020a, + 0x06df, 0x024a, 0x0020, 0x0000, 0x069d, 0x0209, 0x0000, 0x0020, + 0x0000, 0x069d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0041, 0x0578, 0x071f, 0x0041, 0x0000, 0x0d17, 0x0538, 0x0146, + 0x0000, 0x0000, 0x06dd, 0x020a, 0x0061, 0x0061, 0x0061, 0x06be, + 0x0020, 0x0021, 0x06df, 0x0391, 0x0944, 0x06de, 0x0599, 0x04f9, + 0x024a, 0x065c, 0x0020, 0x0000, 0x0020, 0x026c, 0x0f5f, 0x0000, + 0x0000, 0x0000, 0x073f, 0x06ff, 0x0390, 0x0517, 0x05fa, 0x065d, + 0x0020, 0x0000, 0x073f, 0x077f, 0x0041, 0x028e, 0x0414, 0x04d7, + 0x0209, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x01e8, + 0x069c, 0x067e, 0x0041, 0x0041, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x00a3, 0x06de, 0x0082, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x06bd, 0x0209, 0x0000, 0x0000, 0x0000, + 0x07bf, 0x0041, 0x0041, 0x0ede, 0x0209, 0x0000, 0x0000, 0x0209, + 0x06de, 0x0041, 0x0000, 0x0062, 0x16dd, 0x0001, 0x0000, 0x0000, + 0x0000, 0x0ede, 0x0143, 0x0ebe, 0x0c95, 0x06ff, 0x0000, 0x0020, + 0x073f, 0x0f1f, 0x0020, 0x0000, 0x0c96, 0x04f8, 0x0538, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6573,11 +6578,73 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x06fd, 0x071f, 0x07bf, 0x077f, 0x06be, 0x0599, + 0x0000, 0x0000, 0x0000, 0x0ede, 0x01e7, 0x01e8, 0x0269, 0x0021, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0021, 0x073f, 0x07ff, 0x0020, + 0x0000, 0x0000, 0x0020, 0x07bf, 0x06de, 0x065c, 0x063d, 0x0f1f, + 0x0083, 0x0820, 0x0020, 0x0000, 0x06bd, 0x0209, 0x0000, 0x0000, + 0x0000, 0x069e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0041, 0x0598, 0x0f1f, 0x0020, 0x0000, 0x0b0d, 0x06ff, 0x022a, + 0x0020, 0x0000, 0x06fe, 0x06df, 0x06ff, 0x06bd, 0x06de, 0x069d, + 0x0020, 0x0021, 0x073f, 0x0391, 0x0041, 0x0146, 0x06bd, 0x00a3, + 0x00a3, 0x067c, 0x0041, 0x0000, 0x0020, 0x022b, 0x0f1f, 0x0000, + 0x0020, 0x0000, 0x073f, 0x06be, 0x0020, 0x02ac, 0x067d, 0x069d, + 0x0021, 0x0020, 0x075f, 0x075f, 0x0041, 0x00a3, 0x0209, 0x069e, + 0x02ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x06de, + 0x030d, 0x073f, 0x05ba, 0x05bb, 0x00c4, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x00a3, 0x0ede, 0x0082, 0x0000, 0x0000, 0x0020, + 0x0020, 0x0000, 0x0000, 0x069d, 0x0209, 0x0000, 0x0000, 0x0000, + 0x0fff, 0x0041, 0x0021, 0x0edd, 0x01a7, 0x0000, 0x0000, 0x0209, + 0x071f, 0x0041, 0x0000, 0x0041, 0x0ebd, 0x0000, 0x0020, 0x0020, + 0x0000, 0x06de, 0x0000, 0x0187, 0x069e, 0x069d, 0x0000, 0x0020, + 0x071f, 0x0f1f, 0x0000, 0x0000, 0x02ac, 0x075f, 0x079f, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x071e, 0x071f, 0x0000, 0x0041, 0x061d, 0x06fd, + 0x0020, 0x0000, 0x0000, 0x06dd, 0x0000, 0x0041, 0x0041, 0x0061, + 0x0041, 0x0000, 0x0000, 0x0000, 0x0021, 0x075f, 0x07ff, 0x0020, + 0x0000, 0x0000, 0x0020, 0x07bf, 0x071f, 0x0020, 0x0041, 0x073f, + 0x067d, 0x0020, 0x0000, 0x0000, 0x069d, 0x0209, 0x0000, 0x0000, + 0x0000, 0x0e5d, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0x0558, 0x06be, 0x0020, 0x0000, 0x0021, 0x06ff, 0x01e8, + 0x0020, 0x0000, 0x0edd, 0x020a, 0x0020, 0x0061, 0x020a, 0x069d, + 0x0020, 0x0021, 0x075f, 0x0391, 0x0021, 0x0083, 0x0579, 0x0000, + 0x00a3, 0x069d, 0x0041, 0x0000, 0x0021, 0x02ad, 0x071f, 0x0040, + 0x0000, 0x0000, 0x071e, 0x06de, 0x0020, 0x0000, 0x06df, 0x06be, + 0x0021, 0x0000, 0x06bd, 0x06ff, 0x0041, 0x0000, 0x0061, 0x167d, + 0x02cc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x067e, + 0x0061, 0x0209, 0x067e, 0x03b1, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x00c4, 0x169d, 0x0082, 0x0082, 0x0000, 0x0000, + 0x0000, 0x0020, 0x0000, 0x067d, 0x0209, 0x0000, 0x0000, 0x0000, + 0x0f9f, 0x0021, 0x0020, 0x06bd, 0x01a7, 0x0020, 0x0020, 0x075f, + 0x0efe, 0x0021, 0x0000, 0x0020, 0x0e9d, 0x0000, 0x0020, 0x0020, + 0x0000, 0x067d, 0x0000, 0x0021, 0x06fe, 0x06de, 0x0000, 0x0020, + 0x063c, 0x065c, 0x0000, 0x0020, 0x0000, 0x073f, 0x075e, 0x0020, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xaa7b, 0xaabd, 0xaadc, 0xa2bc, 0xaa9c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6587,9 +6654,61 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x06de, 0x06fe, 0x0000, 0x0000, 0x0000, 0x06fe, + 0x07df, 0x0020, 0x0000, 0x06fe, 0x0efe, 0x0ebe, 0x06de, 0x06bd, + 0x075f, 0x0021, 0x0000, 0x0000, 0x0041, 0x071f, 0x075f, 0x0000, + 0x0000, 0x0000, 0x0020, 0x07bf, 0x06ff, 0x0020, 0x0000, 0x0000, + 0x067c, 0x063b, 0x0000, 0x0000, 0x0020, 0x0ede, 0x06be, 0x06bd, + 0x05bb, 0x0041, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x030f, 0x069d, 0x065c, 0x069d, 0x073f, 0x0021, + 0x0000, 0x0000, 0x0edd, 0x020a, 0x0000, 0x0020, 0x0209, 0x06ff, + 0x0061, 0x0021, 0x0eff, 0x0391, 0x0000, 0x0000, 0x0000, 0x0000, + 0x00c4, 0x0ebd, 0x0061, 0x0000, 0x0494, 0x06be, 0x06de, 0x065c, + 0x0020, 0x0000, 0x06fd, 0x06fe, 0x0020, 0x0020, 0x0559, 0x069d, + 0x0020, 0x0000, 0x0020, 0x06fe, 0x06de, 0x0ede, 0x0ede, 0x0146, + 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0063, + 0x069d, 0x067d, 0x0000, 0x069d, 0x032e, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0020, 0x0000, 0x06fe, 0x06de, 0x069d, 0x073d, + 0x0209, 0x0000, 0x0000, 0x0000, 0x06bd, 0x06bd, 0x06bd, 0x065e, + 0x0000, 0x0000, 0x0020, 0x069c, 0x06bd, 0x06de, 0x06be, 0x03f1, + 0x0020, 0x0000, 0x0041, 0x06be, 0x06fe, 0x06be, 0x0168, 0x0020, + 0x0000, 0x06bd, 0x0000, 0x0020, 0x0062, 0x0efd, 0x0041, 0x0000, + 0x0020, 0x0000, 0x0ebd, 0x06de, 0x06be, 0x06de, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0840, - 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6598,7 +6717,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xaa9d, 0xa2dc, 0xaadd, 0xa2dc, 0xaabc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6617,7 +6735,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xa23c, 0xa29c, 0xaadc, 0xaadc, 0xb27e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6626,10 +6743,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xedc0, 0xe5a0, - 0xe580, 0xe5a0, 0xede0, 0xede0, 0xe5c0, 0xe5a0, 0xedc0, 0xee00, - 0xf600, 0xf600, 0xedc0, 0xe580, 0xdd60, 0xe580, 0xf600, 0xf600, - 0xede0, 0xe580, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6638,7 +6751,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xa25d, 0xaafc, 0xaafd, 0xaabc, 0xaa7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6656,8 +6768,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1023, 0xaa9c, - 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa7c, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6666,10 +6776,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfec2, 0x0020, 0x0000, - 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0020, - 0x0000, 0x0000, 0xdd40, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6678,8 +6784,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0800, 0xa27d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xa27c, 0x1023, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6696,30 +6800,12 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1023, 0xa29c, - 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0xa29c, 0xab5e, 0xab1f, - 0xab1f, 0xab3f, 0xab1f, 0xab3f, 0xab3e, 0xab1e, 0xab3e, 0xb33f, - 0xb35f, 0xb33f, 0xb35f, 0xb35f, 0xb33e, 0xab3e, 0xab3e, 0xb35f, - 0xb35f, 0xb35f, 0xb35f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, - 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33f, 0xb33e, 0xab3e, - 0xab1e, 0xab1e, 0xab3e, 0xb33f, 0xab3f, 0xab1e, 0xab1e, 0xa2fe, - 0xa29e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xff02, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xdd60, 0x0000, 0x0820, 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbb5f, - 0xab1f, 0xb33f, 0xb31e, 0xab3f, 0xb35f, 0xab3e, 0xab1e, 0xab3e, - 0xb33f, 0xb33f, 0xab1e, 0xab1e, 0xab1e, 0xaafe, 0xaafe, 0xab1e, - 0xb33e, 0xb35f, 0xb35f, 0xb33e, 0xb33e, 0xab3e, 0xab3e, 0xb33e, - 0xab1e, 0xab3e, 0xb33f, 0xb35f, 0xb35f, 0xb33f, 0xb33e, 0xb31e, - 0xb33f, 0xab3e, 0xab3e, 0xab1e, 0xab3e, 0xab3e, 0xa2fd, 0xa2fd, - 0xa33e, 0xa31b, 0xa2bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xa25c, 0x1023, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6736,36 +6822,17 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0823, 0x9a1c, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a3c, 0xaabe, 0xb31e, - 0xaadd, 0xaabd, 0xb2bd, 0xb2dd, 0xaadd, 0xb2dd, 0xb2dd, 0xb2dd, - 0xb2dd, 0xb2dd, 0xb2fd, 0xb2dd, 0xb2fd, 0xb2dd, 0xb2dd, 0xb2fd, - 0xb2fd, 0xb2fd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, - 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xaadd, 0xb2bd, 0xb2bd, - 0xaabd, 0xaabd, 0xb2bd, 0xb2dd, 0xb2dd, 0xaadd, 0xaabc, 0xaabd, - 0xa27d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x8380, 0xeda0, 0xfdc0, 0x0000, 0xfea0, 0x0820, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0820, 0x0820, 0x0020, 0x0000, - 0x0000, 0x0000, 0x0840, 0x0840, 0x0820, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xe5c0, 0x0000, 0xf640, 0xede0, 0xfe20, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb27e, - 0xaabe, 0xb2dd, 0xb2fd, 0xb2dd, 0xb2dd, 0xaabd, 0xb2dd, 0xb2bd, - 0xaabd, 0xb2dd, 0xaabd, 0xaabd, 0xaabc, 0xaabd, 0xaabd, 0xaadd, - 0xaadd, 0xb2dd, 0xb2dd, 0xb2dd, 0xb2dd, 0xaadd, 0xaadd, 0xaadd, - 0xaadd, 0xb2dd, 0xaabd, 0xb2dd, 0xb2dd, 0xb2dd, 0xaabd, 0xaabd, - 0xb2bd, 0xaabd, 0xaadd, 0xaabd, 0xaabd, 0xaabc, 0xaabc, 0xaadc, - 0xaadd, 0xaabc, 0x9a5c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x9a1b, 0x0822, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6776,30 +6843,20 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0823, 0x9a5b, - 0x0821, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a1c, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x8218, 0x9a1b, 0x1003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0xfe80, 0x0820, 0x0000, - 0x0000, 0x0000, 0x0020, 0x1060, 0xf601, 0xf620, 0xedc0, 0xeda0, - 0xf600, 0xfe20, 0xfe41, 0xf622, 0x3980, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xe5c1, 0x0000, 0x0020, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x9a1c, 0x81d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x9a5b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, - 0x9a5b, 0x0822, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6815,31 +6872,17 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1825, - 0xaafc, 0xa2fd, 0x9adb, 0x9adb, 0xaafd, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x1844, 0xa2fc, 0x9adc, 0x9adb, 0x9adb, 0x9afc, 0x9adb, - 0x92db, 0x92db, 0x92db, 0x92ba, 0x8a9a, 0x8279, 0x829a, 0x829a, - 0x7a99, 0x7258, 0x7258, 0x7258, 0x6a36, 0x61f5, 0x5152, 0x5174, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0xfe81, 0x0820, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x2901, 0xf5e0, - 0xfe20, 0xfe20, 0xfe20, 0xfe41, 0xfe61, 0x2900, 0x0000, 0x0000, - 0x0000, 0x0000, 0xede1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x5971, 0x5150, 0x5972, 0x59b4, 0x7216, 0x7237, 0x7237, 0x7216, - 0x8258, 0x8258, 0x8278, 0x8a7a, 0x8a99, 0x8a99, 0x92ba, 0x9adb, - 0x9adb, 0x92da, 0x92da, 0x9afb, 0x9afb, 0x92da, 0x0802, 0x0801, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x1023, 0xaafd, 0x9afc, 0x92ba, 0x9abb, 0x9add, - 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6856,32 +6899,24 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x9a9c, 0x9a7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0xb2fe, 0xab1e, 0xaafd, 0xaafd, 0xbadf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0801, 0xaafd, 0xa2dd, 0xa2dc, 0xa2dd, 0xa2dd, 0xa2bd, - 0x9abd, 0xa2bd, 0x9abd, 0x929b, 0x929b, 0x8a7b, 0x929b, 0x8a7b, - 0x827a, 0x7a59, 0x8259, 0x7a79, 0x7258, 0x69d6, 0x5131, 0x5974, - 0x0000, 0x3120, 0x4180, 0x51a0, 0x0000, 0xfec2, 0x0820, 0x0000, - 0x0000, 0x0000, 0x5160, 0x4180, 0x6200, 0x0000, 0x0000, 0x0840, - 0xf622, 0xfe40, 0xfe20, 0xfe20, 0xfe40, 0x2920, 0x0000, 0x0000, - 0x0000, 0x0020, 0xf641, 0x0000, 0x49a0, 0x5180, 0x51e0, 0x0000, - 0x6994, 0x5952, 0x6173, 0x61b4, 0x7216, 0x7217, 0x7a38, 0x7a18, - 0x8259, 0x8259, 0x8a5a, 0x927c, 0x929b, 0x929b, 0x9abc, 0xa2dd, - 0xa2dd, 0xa2dd, 0x9a9c, 0xa2bc, 0xa2dd, 0xaabd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0xb2fe, 0xaafe, 0xaadd, 0xaadd, 0xaabe, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x1844, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a5b, 0x9a7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6904,19 +6939,24 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xaabe, 0xa2bc, 0x9a7c, 0xa27d, 0xa2bd, 0xaafd, + 0xa2dd, 0xa29d, 0xa27c, 0xa27c, 0xa29d, 0xa29d, 0xa29d, 0xa27d, + 0xa29d, 0xa29d, 0xa29d, 0xa27d, 0xa27d, 0xa27d, 0xa27d, 0xa27c, + 0xa27c, 0xa25c, 0x9a5c, 0x9a5c, 0x9a5c, 0x9a5c, 0x9a5c, 0x9a5c, + 0x9a3c, 0x9a5b, 0x9a7c, 0x9a9b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x9c20, 0xede0, 0xfe20, 0x0000, 0xfee2, 0x0820, 0x0000, - 0x0000, 0x0840, 0xee60, 0xf620, 0xfe40, 0xf621, 0x0040, 0x0840, - 0xf622, 0xfe40, 0xfe20, 0xfe20, 0xfe20, 0x20e0, 0x0000, 0x0000, - 0x0020, 0x0020, 0xf661, 0x0000, 0xbd00, 0xc4e0, 0xd540, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x9a1d, 0x9a5c, + 0xa27c, 0xa27c, 0xa27c, 0xa25c, 0xa25c, 0xa27c, 0xa27c, 0xa27c, + 0xa27c, 0xa27d, 0xa27d, 0xa27d, 0xa27d, 0xa27c, 0xa27d, 0xa27d, + 0xa27d, 0xa27d, 0xa27d, 0xa27c, 0xa27c, 0xa27c, 0xa27c, 0xa27c, + 0xa27c, 0xa29c, 0xa2bc, 0xa29b, 0xa27c, 0xa29c, 0xa2bc, 0xa29d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6939,6 +6979,24 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x28a9, 0xa2dc, 0x9a9b, 0x30e9, 0x30c8, 0x30a8, + 0x2887, 0x2087, 0x2086, 0x2087, 0x2087, 0x2887, 0x2066, 0x2066, + 0x2066, 0x2887, 0x2887, 0x2087, 0x2067, 0x2066, 0x2066, 0x2066, + 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, + 0x2066, 0x2066, 0x2086, 0x28c8, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, + 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x929b, 0x0000, 0x1865, + 0x1865, 0x1866, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, + 0x2066, 0x2087, 0x2087, 0x2087, 0x2066, 0x2066, 0x2087, 0x2887, + 0x2087, 0x2086, 0x2066, 0x2067, 0x2887, 0x2887, 0x2887, 0x2887, + 0x2087, 0x2087, 0x2066, 0x2066, 0x28a7, 0x9a7b, 0x9abc, 0x40ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6946,10 +7004,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0xfec1, 0x0820, 0x0000, - 0x0000, 0x0840, 0xf660, 0xede0, 0xfe20, 0xfe40, 0x0840, 0x6220, - 0xfe41, 0xfe41, 0xfe41, 0xfe41, 0x51e0, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xee21, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -6965,38 +7019,72 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x1805, 0x1806, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x1003, 0x0803, 0x0802, 0x0802, + 0x0802, 0x0802, 0x0802, 0x0802, 0x0802, 0x0802, 0x0802, 0x0801, + 0x0001, 0x0801, 0x0802, 0x0801, 0x0802, 0x0802, 0x0802, 0x0801, + 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0802, 0x0801, 0x0802, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0802, 0x0802, 0x0802, 0x0801, 0x0802, 0x0802, 0x0801, 0x0801, + 0x0801, 0x0802, 0x0802, 0x0803, 0x1003, 0x1003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1004, 0x1004, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x9a9c, 0x9a7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0xfe80, 0x0820, 0x0000, - 0x0000, 0x0000, 0x1880, 0x18c0, 0x49e0, 0x0000, 0x1040, 0xf600, - 0xfe40, 0xfe41, 0xfe41, 0xfe20, 0x0020, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xe5e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9a5b, 0x9a7c, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7018,26 +7106,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaabe, - 0xa2bc, 0x9a7c, 0xa27d, 0xa2bd, 0xaafd, 0xa2dd, 0xa29d, 0xa27c, - 0xa27c, 0xa29d, 0xa29d, 0xa29d, 0xa27d, 0xa29d, 0xa29d, 0xa29d, - 0xa27d, 0xa27d, 0xa27d, 0xa27d, 0xa27c, 0xa27c, 0xa25c, 0x9a5c, - 0x9a5c, 0x9a5c, 0x9a5c, 0x9a5c, 0x9a5c, 0x9a3c, 0x9a5b, 0x9a7c, - 0x9a9b, 0x9a3b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xa420, 0xf5e0, 0xfdc0, 0x0000, 0xfe80, 0x0820, 0x0000, - 0x0000, 0x0840, 0xf723, 0xee02, 0x0820, 0x8b61, 0xfe00, 0xfe20, - 0xfe40, 0xfe40, 0xfe20, 0x0020, 0x0820, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xee01, 0x0000, 0xe620, 0xfe20, 0xfea1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0001, 0x9a1d, 0x9a1d, - 0x9a5c, 0xa27c, 0xa27c, 0xa27c, 0xa25c, 0xa25c, 0xa27c, 0xa27c, - 0xa27c, 0xa27c, 0xa27d, 0xa27d, 0xa27d, 0xa27d, 0xa27c, 0xa27d, - 0xa27d, 0xa27d, 0xa27d, 0xa27d, 0xa27c, 0xa27c, 0xa27c, 0xa27c, - 0xa27c, 0xa27c, 0xa29c, 0xa2bc, 0xa29b, 0xa27c, 0xa29c, 0xa2bc, - 0xa29d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7058,26 +7130,10 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x28a9, - 0xa2dc, 0x9a9b, 0x30e9, 0x30c8, 0x30a8, 0x2887, 0x2087, 0x2086, - 0x2087, 0x2087, 0x2887, 0x2066, 0x2066, 0x2066, 0x2887, 0x2887, - 0x2087, 0x2067, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, - 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, 0x2086, - 0x28c8, 0x9a5b, 0x8a17, 0x0802, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0820, 0x0840, 0x0820, 0x0000, 0xfe80, 0x0820, 0x0000, - 0x0000, 0x0820, 0xff02, 0xfea1, 0x0820, 0x0000, 0xa3e1, 0xfe20, - 0xfe40, 0xf620, 0x0820, 0x0000, 0x7ac0, 0xe600, 0x0020, 0x0000, - 0x0000, 0x0000, 0xf641, 0x0000, 0x0840, 0x0840, 0x0840, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0020, 0x1844, 0x81f7, 0x9a5c, 0x28c8, - 0x1865, 0x1865, 0x1866, 0x2066, 0x2066, 0x2066, 0x2066, 0x2066, - 0x2066, 0x2066, 0x2087, 0x2087, 0x2087, 0x2066, 0x2066, 0x2087, - 0x2887, 0x2087, 0x2086, 0x2066, 0x2067, 0x2887, 0x2887, 0x2887, - 0x2887, 0x2087, 0x2087, 0x2066, 0x2066, 0x28a7, 0x9a7b, 0x9abc, - 0x40ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7099,24 +7155,16 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x1805, 0x1806, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0xaa9e, 0xa27d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe80, 0x0820, 0x0000, - 0x0000, 0x0820, 0xfec1, 0xfe41, 0xfe80, 0x0000, 0x0000, 0xfea0, - 0xfe61, 0x18a0, 0x0000, 0x0000, 0xfe61, 0xff20, 0x0020, 0x0000, - 0x0000, 0x0000, 0xee01, 0x0000, 0x0000, 0x0000, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0801, 0x9a3c, 0xb2df, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1004, 0x1004, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7143,16 +7191,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0821, 0x1863, 0xa27c, 0xa29c, 0xa2bb, 0xa29b, 0x9a5b, - 0x9a5b, 0x923a, 0x925b, 0x925a, 0x8a39, 0x8a39, 0x8219, 0x8219, - 0x79b8, 0x7197, 0x7197, 0x79b7, 0x71b6, 0x6975, 0x5913, 0x6114, - 0x0000, 0x8bc0, 0xe5a0, 0xeda0, 0x0000, 0xfea1, 0x0820, 0x0000, - 0x0000, 0x0820, 0xf680, 0xfe20, 0xf620, 0xbc42, 0x0020, 0x20c0, - 0xf642, 0x0840, 0x0840, 0xede1, 0xfe20, 0xfea0, 0x0020, 0x0000, - 0x0000, 0x0000, 0xf641, 0x0000, 0xe640, 0xf620, 0xfe80, 0x0820, - 0x60f3, 0x50f1, 0x50f2, 0x6975, 0x7196, 0x6995, 0x6975, 0x7176, - 0x81f8, 0x8a19, 0x81f8, 0x8a19, 0x89fa, 0x923a, 0x9a5b, 0x9a3b, - 0x9a5b, 0x9a7b, 0x9a5b, 0x9a5a, 0x9a1b, 0x0802, 0x0001, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7183,16 +7221,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x1003, 0x0803, 0x0802, 0x0802, 0x0802, - 0x0802, 0x0802, 0x0802, 0x0802, 0x0802, 0x0802, 0x0801, 0x0001, - 0x0801, 0x0802, 0x0801, 0x0802, 0x0802, 0x0802, 0x0801, 0x0001, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfea2, 0x0840, 0x0000, - 0x0000, 0x0000, 0x51c0, 0xfe00, 0xfe40, 0xfe40, 0xac40, 0x0020, - 0x1080, 0xa3a0, 0xfe80, 0xfe40, 0xf620, 0x0000, 0x0000, 0x0000, - 0x0020, 0x0001, 0xf640, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0802, 0x0801, 0x0802, 0x0001, 0x0001, 0x0001, 0x0001, 0x0802, - 0x0802, 0x0802, 0x0801, 0x0802, 0x0802, 0x0801, 0x0801, 0x0801, - 0x0802, 0x0802, 0x0803, 0x1003, 0x1003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7226,10 +7254,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0020, 0x0820, 0x0840, 0x0000, 0xfea1, 0x0820, 0x0000, - 0x0000, 0x0000, 0x49a0, 0xfe20, 0xfe81, 0xfe60, 0xac00, 0x0020, - 0x0000, 0x8300, 0xfe80, 0xfe80, 0xfe61, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0000, 0xf620, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7266,10 +7290,8 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x9c00, 0xedc1, 0xfe40, 0x0000, 0xfe60, 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xdda0, 0x0000, 0xfe41, 0xede1, 0xff02, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7306,10 +7328,8 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0840, 0x20a0, 0x18a0, 0x0000, 0xf640, 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0xdd80, 0x0000, 0x2900, 0x2900, 0x28e0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7346,10 +7366,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfea1, 0x0860, 0x0840, - 0x0840, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0840, - 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, 0x0020, - 0x0840, 0x0840, 0xe5a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7386,10 +7402,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0840, 0xe5c2, 0xf5c0, - 0xeda0, 0xe580, 0xeda0, 0xf5c0, 0xf5e0, 0xf5e0, 0xf5c0, 0xedc0, - 0xf5c0, 0xeda0, 0xf5e0, 0xf5e0, 0xf5e0, 0xeda0, 0xe580, 0xedc0, - 0xf600, 0xedc1, 0x0840, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7426,10 +7438,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0840, 0x0820, - 0x0000, 0x0000, 0x0020, 0x0840, 0x0860, 0x0840, 0x0000, 0x0000, - 0x0000, 0x0020, 0x1040, 0x1060, 0x0860, 0x0020, 0x0000, 0x0000, - 0x0000, 0x0840, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7466,10 +7474,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18a0, - 0xfe60, 0x0020, 0x0020, 0x1060, 0xfe40, 0x0020, 0x0020, 0xf6a0, - 0xe581, 0x0020, 0x0820, 0xfec1, 0x18a0, 0x0020, 0x0000, 0xfe20, - 0x18a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7506,10 +7510,6 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x20c0, - 0xfe81, 0x0840, 0x0020, 0x0840, 0xee00, 0x0820, 0x0020, 0xfee1, - 0xfe00, 0x0000, 0x0000, 0xf660, 0x1060, 0x0000, 0x0020, 0xfea0, - 0x20a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -7547,9 +7547,9 @@ const uint16_t prg32_splash_logo[] PRG32_FLASH_RODATA = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1080, - 0xdd60, 0x0000, 0x0000, 0x0840, 0xb460, 0x0020, 0x0000, 0xd560, - 0xb3e0, 0x0000, 0x0000, 0xc501, 0x0840, 0x0000, 0x0000, 0xe581, - 0x1880, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, diff --git a/components/prg32/assets/prg32_title.png b/components/prg32/assets/prg32_title.png new file mode 100644 index 0000000000000000000000000000000000000000..22533e08ac5dccfa4b01fcbeab1c0caa9f8a2773 GIT binary patch literal 12156 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 literal 0 HcmV?d00001 From 015118cd91d04d01c43b702c2ecda599cd9b3c24 Mon Sep 17 00:00:00 2001 From: Simone Boscaglia Date: Fri, 25 Sep 2026 15:12:31 +0200 Subject: [PATCH 12/12] fix(CI/CD): fixed failing CI/CD tests and added them to agents.md verification phase --- AGENTS.md | 10 ++++++++++ CMakeLists.txt | 16 ++++++++-------- tests/test_prg32.py | 2 +- 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index c2c527f..1084d00 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -54,6 +54,16 @@ git diff --check python3 -m compileall prg32 tests tools python3 -m prg32 doctor python3 -m prg32 test + +# 3. Run CI Tests (from GitHub Actions) +python3 -m prg32.esp32c6.ci_smoke_test +python3 -m prg32 abi check +cartridges/devicedemo/tests/check_source.sh +cartridges/bachdemo/scripts/test.sh +cartridges/poing/tests/run.sh +cc -std=c11 -Wall -Wextra -Werror cartridges/blackjack/tests/test_rules.c cartridges/blackjack/blackjack_rules.c -o /tmp/prg32-blackjack-rules +/tmp/prg32-blackjack-rules +sha256sum --check cartridges/blackjack/SHA256SUMS ``` If the user explicitly asked for you to do the builds after the edits, you should run one of these commands or both based on the architecture the edits are targeting. diff --git a/CMakeLists.txt b/CMakeLists.txt index 0c7943f..263f3f3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,21 +21,21 @@ if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/profiles/sdkconfig.defaults.local") set(EXTRA_CONFIGS "${CMAKE_CURRENT_LIST_DIR}/profiles/sdkconfig.defaults.local") endif() -if(DEFINED SDKCONFIG_DEFAULTS AND SDKCONFIG_DEFAULTS STREQUAL "sdkconfig.defaults" AND NOT EXISTS "${CMAKE_CURRENT_LIST_DIR}/sdkconfig.defaults") +if(NOT DEFINED SDKCONFIG_DEFAULTS AND NOT DEFINED ENV{SDKCONFIG_DEFAULTS}) + if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/sdkconfig.defaults") + set(SDKCONFIG_DEFAULTS "sdkconfig.defaults") + else() + set(SDKCONFIG_DEFAULTS "profiles/sdkconfig.defaults") + endif() +elseif(DEFINED SDKCONFIG_DEFAULTS AND SDKCONFIG_DEFAULTS STREQUAL "sdkconfig.defaults" AND NOT EXISTS "${CMAKE_CURRENT_LIST_DIR}/sdkconfig.defaults") set(SDKCONFIG_DEFAULTS "profiles/sdkconfig.defaults") endif() if(EXTRA_CONFIGS) if(DEFINED ENV{SDKCONFIG_DEFAULTS}) set(SDKCONFIG_DEFAULTS "$ENV{SDKCONFIG_DEFAULTS};${EXTRA_CONFIGS}") - elseif(DEFINED SDKCONFIG_DEFAULTS) - set(SDKCONFIG_DEFAULTS "${SDKCONFIG_DEFAULTS};${EXTRA_CONFIGS}") else() - if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/sdkconfig.defaults") - set(SDKCONFIG_DEFAULTS "sdkconfig.defaults;${EXTRA_CONFIGS}") - else() - set(SDKCONFIG_DEFAULTS "${EXTRA_CONFIGS}") - endif() + set(SDKCONFIG_DEFAULTS "${SDKCONFIG_DEFAULTS};${EXTRA_CONFIGS}") endif() endif() diff --git a/tests/test_prg32.py b/tests/test_prg32.py index a4096bc..7316f32 100644 --- a/tests/test_prg32.py +++ b/tests/test_prg32.py @@ -316,7 +316,7 @@ class CartRamProfileTests(unittest.TestCase): def test_fallback_matches_default_firmware_profile(self) -> None: self.assertEqual(env_variables.DEFAULT_CART_RAM_KIB, 64) self.assertEqual(env_variables.FALLBACK_CART_RAM_SIZE, 64 * 1024) - for defaults in ("sdkconfig.defaults", "sdkconfig.defaults.qemu"): + for defaults in ("profiles/sdkconfig.defaults", "profiles/sdkconfig.defaults.qemu"): text = (ROOT / defaults).read_text(encoding="utf-8") self.assertIn("CONFIG_PRG32_CART_RAM_EXTENDED=y", text, defaults)