From 5756cc748e5898c1743a0bd8fadb95da04072018 Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Wed, 29 Jul 2026 16:59:59 +0900 Subject: [PATCH 01/10] feat(framework): add Octane as the third first-class framework Octane (React's programming model, compiled) joins Solid and Vue Vapor: universal-driver renderer over the native tree, full 15-component surface, use-prefixed frame hooks, app.octane.tsx variants for all 8 demos, playground in-browser compilation, byte-exact PPSSPP goldens, and a three-framework PPSSPP benchmark (docs/bench/) per the PR #6 methodology. The PSP host gains an arena-pressure GC; framework=octane builds stub octane/profiling to dodge a WeakMap pinning pathology in the pinned QuickJS. Co-Authored-By: Claude Fable 5 --- README.md | 44 +- apps/cards/app.octane.tsx | 114 + apps/cards/main.octane.tsx | 5 + apps/gallery/app.octane.tsx | 158 + apps/gallery/main.octane.tsx | 5 + apps/hero/app.octane.tsx | 91 + apps/hero/main.octane.tsx | 5 + apps/library/app.octane.tsx | 213 + apps/library/main.octane.tsx | 5 + apps/music/app.octane.tsx | 156 + apps/music/main.octane.tsx | 5 + apps/notifications/app.octane.tsx | 160 + apps/notifications/main.octane.tsx | 5 + apps/settings/app.octane.tsx | 264 ++ apps/settings/main.octane.tsx | 5 + apps/stats/app.octane.tsx | 220 + apps/stats/main.octane.tsx | 5 + bun.lock | 25 + contracts/schema/pocket-2.json | 3 +- contracts/spec/pocket-manifest.ts | 4 +- docs/DESIGN.md | 4 +- docs/RUNTIMES.md | 4 +- .../three-frameworks-ppsspp-2026-07-29.json | 3697 +++++++++++++++++ .../three-frameworks-ppsspp-2026-07-29.md | 558 +++ .../three-frameworks-ppsspp-2026-07-29.png | Bin 0 -> 151607 bytes .../three-frameworks-ppsspp-2026-07-29.svg | 192 + framework/compiler/ambient.d.ts | 13 + framework/compiler/jsx-plugin.ts | 109 +- framework/src/components-octane.tsx | 446 ++ framework/src/config.ts | 5 +- framework/src/frame-octane.tsx | 95 + framework/src/index-octane.ts | 265 ++ framework/src/lifecycle-octane.ts | 11 + framework/src/octane-profiling-stub.ts | 53 + framework/src/prelude.ts | 30 +- framework/src/renderer-octane.ts | 307 ++ framework/src/scheduler-polyfill.ts | 33 + hosts/pocketbook/docs/INTEGRATION.md | 13 +- hosts/psp/src/host.rs | 22 + hosts/psp/src/main.rs | 38 +- package.json | 13 +- site/assets/tailwind.css | 6 +- site/build.ts | 48 +- site/content/docs/api.md | 39 +- site/content/docs/app-shell.md | 63 + site/content/docs/architecture.md | 31 +- site/content/docs/build-pipeline.md | 27 +- site/content/docs/components.md | 117 +- site/content/docs/frameworks.md | 152 +- site/content/docs/getting-started.md | 74 +- site/content/docs/overview.md | 55 +- site/content/docs/reactivity.md | 120 +- site/home.html | 25 +- site/playground/compiler-entry.ts | 28 +- site/playground/page.html | 3 +- site/playground/playground.js | 16 +- site/playground/runtime-octane-entry.ts | 57 + skills/pocketjs-psp-benchmark/SKILL.md | 15 +- tests/e2e/ppsspp.ts | 32 +- tests/goldens/psp-octane/PPSSPP-COMMIT.txt | 1 + tests/goldens/psp-octane/cards.detail.png | Bin 0 -> 20180 bytes tests/goldens/psp-octane/cards.focused.png | Bin 0 -> 16155 bytes tests/goldens/psp-octane/cards.layout.png | Bin 0 -> 14582 bytes tests/goldens/psp-octane/cards.opening.png | Bin 0 -> 20115 bytes tests/goldens/psp-octane/hero.boot.png | Bin 0 -> 18263 bytes tests/goldens/psp-octane/hero.focused.png | Bin 0 -> 18121 bytes tests/goldens/psp-octane/hero.pressed.png | Bin 0 -> 17999 bytes tests/goldens/psp-octane/library.detail.png | Bin 0 -> 17416 bytes tests/goldens/psp-octane/library.focused.png | Bin 0 -> 16495 bytes tests/goldens/psp-octane/library.grid.png | Bin 0 -> 15691 bytes tests/goldens/psp-octane/library.loading.png | Bin 0 -> 7690 bytes tests/goldens/psp-octane/music.paused.png | Bin 0 -> 20338 bytes tests/goldens/psp-octane/music.playing.png | Bin 0 -> 20778 bytes tests/goldens/psp-octane/music.skipped.png | Bin 0 -> 20709 bytes .../goldens/psp-octane/notifications.boot.png | Bin 0 -> 11631 bytes .../psp-octane/notifications.dismissing.png | Bin 0 -> 19464 bytes .../psp-octane/notifications.settled.png | Bin 0 -> 19771 bytes tests/goldens/psp-octane/settings.boot.png | Bin 0 -> 19670 bytes tests/goldens/psp-octane/settings.themed.png | Bin 0 -> 20339 bytes tests/goldens/psp-octane/settings.toggled.png | Bin 0 -> 19957 bytes tests/goldens/psp-octane/stats.midcount.png | Bin 0 -> 20390 bytes tests/goldens/psp-octane/stats.overview.png | Bin 0 -> 21003 bytes tests/goldens/psp-octane/stats.systems.png | Bin 0 -> 23684 bytes tests/goldens/psp-vue-vapor/PPSSPP-COMMIT.txt | 1 + tests/goldens/psp-vue-vapor/cards.detail.png | Bin 0 -> 20180 bytes tests/goldens/psp-vue-vapor/cards.focused.png | Bin 0 -> 16155 bytes tests/goldens/psp-vue-vapor/cards.layout.png | Bin 0 -> 14582 bytes tests/goldens/psp-vue-vapor/cards.opening.png | Bin 0 -> 20115 bytes tests/goldens/psp-vue-vapor/hero.boot.png | Bin 0 -> 18608 bytes tests/goldens/psp-vue-vapor/hero.focused.png | Bin 0 -> 18469 bytes tests/goldens/psp-vue-vapor/hero.pressed.png | Bin 0 -> 18348 bytes .../goldens/psp-vue-vapor/library.detail.png | Bin 0 -> 17416 bytes .../goldens/psp-vue-vapor/library.focused.png | Bin 0 -> 16495 bytes tests/goldens/psp-vue-vapor/library.grid.png | Bin 0 -> 15691 bytes .../goldens/psp-vue-vapor/library.loading.png | Bin 0 -> 7690 bytes tests/goldens/psp-vue-vapor/music.paused.png | Bin 0 -> 20315 bytes tests/goldens/psp-vue-vapor/music.playing.png | Bin 0 -> 20679 bytes tests/goldens/psp-vue-vapor/music.skipped.png | Bin 0 -> 20735 bytes .../psp-vue-vapor/notifications.boot.png | Bin 0 -> 11631 bytes .../notifications.dismissing.png | Bin 0 -> 19464 bytes .../psp-vue-vapor/notifications.settled.png | Bin 0 -> 19529 bytes tests/goldens/psp-vue-vapor/settings.boot.png | Bin 0 -> 19670 bytes .../goldens/psp-vue-vapor/settings.themed.png | Bin 0 -> 20339 bytes .../psp-vue-vapor/settings.toggled.png | Bin 0 -> 19933 bytes .../goldens/psp-vue-vapor/stats.midcount.png | Bin 0 -> 20390 bytes .../goldens/psp-vue-vapor/stats.overview.png | Bin 0 -> 21003 bytes tests/goldens/psp-vue-vapor/stats.systems.png | Bin 0 -> 23684 bytes tests/goldens/psp/hero.boot.png | Bin 18503 -> 18502 bytes tests/octane-smoke.test.ts | 35 + tools/bench-chart.ts | 132 + tools/bench-ppsspp.ts | 250 +- tools/build.ts | 4 +- tools/play.ts | 5 +- tsconfig.json | 8 +- 114 files changed, 8549 insertions(+), 195 deletions(-) create mode 100644 apps/cards/app.octane.tsx create mode 100644 apps/cards/main.octane.tsx create mode 100644 apps/gallery/app.octane.tsx create mode 100644 apps/gallery/main.octane.tsx create mode 100644 apps/hero/app.octane.tsx create mode 100644 apps/hero/main.octane.tsx create mode 100644 apps/library/app.octane.tsx create mode 100644 apps/library/main.octane.tsx create mode 100644 apps/music/app.octane.tsx create mode 100644 apps/music/main.octane.tsx create mode 100644 apps/notifications/app.octane.tsx create mode 100644 apps/notifications/main.octane.tsx create mode 100644 apps/settings/app.octane.tsx create mode 100644 apps/settings/main.octane.tsx create mode 100644 apps/stats/app.octane.tsx create mode 100644 apps/stats/main.octane.tsx create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-29.json create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-29.md create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-29.png create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-29.svg create mode 100644 framework/src/components-octane.tsx create mode 100644 framework/src/frame-octane.tsx create mode 100644 framework/src/index-octane.ts create mode 100644 framework/src/lifecycle-octane.ts create mode 100644 framework/src/octane-profiling-stub.ts create mode 100644 framework/src/renderer-octane.ts create mode 100644 framework/src/scheduler-polyfill.ts create mode 100644 site/playground/runtime-octane-entry.ts create mode 100644 tests/goldens/psp-octane/PPSSPP-COMMIT.txt create mode 100644 tests/goldens/psp-octane/cards.detail.png create mode 100644 tests/goldens/psp-octane/cards.focused.png create mode 100644 tests/goldens/psp-octane/cards.layout.png create mode 100644 tests/goldens/psp-octane/cards.opening.png create mode 100644 tests/goldens/psp-octane/hero.boot.png create mode 100644 tests/goldens/psp-octane/hero.focused.png create mode 100644 tests/goldens/psp-octane/hero.pressed.png create mode 100644 tests/goldens/psp-octane/library.detail.png create mode 100644 tests/goldens/psp-octane/library.focused.png create mode 100644 tests/goldens/psp-octane/library.grid.png create mode 100644 tests/goldens/psp-octane/library.loading.png create mode 100644 tests/goldens/psp-octane/music.paused.png create mode 100644 tests/goldens/psp-octane/music.playing.png create mode 100644 tests/goldens/psp-octane/music.skipped.png create mode 100644 tests/goldens/psp-octane/notifications.boot.png create mode 100644 tests/goldens/psp-octane/notifications.dismissing.png create mode 100644 tests/goldens/psp-octane/notifications.settled.png create mode 100644 tests/goldens/psp-octane/settings.boot.png create mode 100644 tests/goldens/psp-octane/settings.themed.png create mode 100644 tests/goldens/psp-octane/settings.toggled.png create mode 100644 tests/goldens/psp-octane/stats.midcount.png create mode 100644 tests/goldens/psp-octane/stats.overview.png create mode 100644 tests/goldens/psp-octane/stats.systems.png create mode 100644 tests/goldens/psp-vue-vapor/PPSSPP-COMMIT.txt create mode 100644 tests/goldens/psp-vue-vapor/cards.detail.png create mode 100644 tests/goldens/psp-vue-vapor/cards.focused.png create mode 100644 tests/goldens/psp-vue-vapor/cards.layout.png create mode 100644 tests/goldens/psp-vue-vapor/cards.opening.png create mode 100644 tests/goldens/psp-vue-vapor/hero.boot.png create mode 100644 tests/goldens/psp-vue-vapor/hero.focused.png create mode 100644 tests/goldens/psp-vue-vapor/hero.pressed.png create mode 100644 tests/goldens/psp-vue-vapor/library.detail.png create mode 100644 tests/goldens/psp-vue-vapor/library.focused.png create mode 100644 tests/goldens/psp-vue-vapor/library.grid.png create mode 100644 tests/goldens/psp-vue-vapor/library.loading.png create mode 100644 tests/goldens/psp-vue-vapor/music.paused.png create mode 100644 tests/goldens/psp-vue-vapor/music.playing.png create mode 100644 tests/goldens/psp-vue-vapor/music.skipped.png create mode 100644 tests/goldens/psp-vue-vapor/notifications.boot.png create mode 100644 tests/goldens/psp-vue-vapor/notifications.dismissing.png create mode 100644 tests/goldens/psp-vue-vapor/notifications.settled.png create mode 100644 tests/goldens/psp-vue-vapor/settings.boot.png create mode 100644 tests/goldens/psp-vue-vapor/settings.themed.png create mode 100644 tests/goldens/psp-vue-vapor/settings.toggled.png create mode 100644 tests/goldens/psp-vue-vapor/stats.midcount.png create mode 100644 tests/goldens/psp-vue-vapor/stats.overview.png create mode 100644 tests/goldens/psp-vue-vapor/stats.systems.png create mode 100644 tests/octane-smoke.test.ts create mode 100644 tools/bench-chart.ts diff --git a/README.md b/README.md index 65867c7b2..25d243ef8 100644 --- a/README.md +++ b/README.md @@ -6,10 +6,11 @@ [![Discord](https://img.shields.io/badge/Discord-Join-5865F2?logo=discord&logoColor=white)](https://discord.gg/cTce4eXzSK) High-performance component UI outside the browser, with native rendering, -standard Vue Vapor and Solid support, a Tailwind design system, and 60 FPS -animation under an 8 MB memory budget. Write Solid JSX, Vue Vapor JSX, or Vue -single-file components, run them on QuickJS, and let PocketJS move layout, -styling, text and animation into a tiny `no_std` Rust core. +standard Solid, Vue Vapor and Octane support, a Tailwind design system, and +60 FPS animation under an 8 MB memory budget. Write Solid JSX, Vue Vapor JSX, +Octane JSX, or Vue single-file components, run them on QuickJS, and let +PocketJS move layout, styling, text and animation into a tiny `no_std` Rust +core. It runs on real PSP and PS Vita hardware, PPSSPP, Vita3K, the browser (WASM), native macOS windows (wgpu) and headless Bun. Full design + contracts: @@ -45,6 +46,7 @@ bun pocket build --target psp -- --release bun tools/build.ts hero # -> dist/hero.js + dist/hero.pak bun tools/build.ts hero-vue-vapor-main --framework=vue-vapor bun tools/build.ts hero-vue-sfc-main --framework=vue-vapor +bun tools/build.ts hero-main --framework=octane # -> dist/hero-main.octane.js ``` Or drive everything through the [`pocket` CLI](https://www.npmjs.com/package/@pocketjs/cli): @@ -102,11 +104,11 @@ dynamic styling is ternaries of full literals, `style={{...}}`, or `animate()`. `rounded-full` requires `w-N h-N` in the same literal. Framework selection is explicit: product builds set `app.framework` to -`"solid"` or `"vue-vapor"` in `pocket.json`. Low-level framework/compiler/host work can +`"solid"`, `"vue-vapor"` or `"octane"` in `pocket.json`. Low-level framework/compiler/host work can still use `pocket.config.ts` or pass `--framework=...` to the individual scripts. App state and component lifecycle come from the native framework -package (`solid-js` or `vue`); PocketJS supplies host components, input, -animation, assets and native runtime wiring. +package (`solid-js`, `vue` or `octane`); PocketJS supplies host components, +input, animation, assets and native runtime wiring. ### Vue single-file components @@ -130,6 +132,32 @@ Options-API-only components are not supported. Hero demos. See [`apps/vue-sfc-lab`](./apps/vue-sfc-lab) for `v-model`, conditionals, lists, props, events, and slots. +### Octane + +Set `"framework": "octane"` in `pocket.json` (or pass `--framework=octane`) +for [Octane](https://github.com/octanejs/octane) — React's programming model, +compiled: hooks and JSX, no VDOM. Hooks import from `octane` (`useState`, +`useEffect`, …; dependency arrays may be omitted — the compiler infers them; +hooks are tracked by call site, so `if` is fine but hooks in loops are not). +PocketJS APIs come from +`@pocketjs/framework/octane/{components,animation,lifecycle,input}`. The +Octane compiler lowers JSX to static host plans plus dynamic slots executed +against the native `ui.*` tree — no DOM shim, unlike Vue Vapor. Entries pass +the component itself to `mount`; JSX in a call-argument arrow +(`mount(() => )`) is a compile error. + +```tsx +import { mount } from "@pocketjs/framework/octane"; +import App from "./app.tsx"; + +mount(App); +``` + +Sibling variants (`app.octane.tsx` next to `app.tsx`) let one demo ship every +framework; octane builds emit `dist/.octane.js`. +[`apps/hero/app.octane.tsx`](./apps/hero/app.octane.tsx) renders the same +screen as the Solid and Vue Vapor Hero demos. + `@pocketjs/framework/components` also exposes small app-shell primitives: `Screen`, `Focusable`, `FocusScope`, `ActionHandler`, `FocusGrid`, `Portal`, `Modal`, and `ActionBar`. `FocusGrid` gives a subtree explicit row/column d-pad @@ -153,7 +181,7 @@ bun pocket compile --target psp # typecheck and compile, for custom native bun pocket build --target psp # typecheck, compile, and package the target pocket build --target vita -- --release pocket play vita hero # build, install and launch in Vita3K -bun tools/build.ts [--framework=solid|vue-vapor] [--extra-chars=…] +bun tools/build.ts [--framework=solid|vue-vapor|octane] [--extra-chars=…] bun run psp # low-level PSP demo build bun run vita # low-level Vita demo build bun run dev [app] # browser dev host diff --git a/apps/cards/app.octane.tsx b/apps/cards/app.octane.tsx new file mode 100644 index 000000000..975f81591 --- /dev/null +++ b/apps/cards/app.octane.tsx @@ -0,0 +1,114 @@ +import { useLayoutEffect, useRef, useState } from "octane"; +import { Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { animate, spring } from "@pocketjs/framework/octane/animation"; + +interface Card { + title: string; + caption: string; + detail: string; + cls: string; + strip: string; + bar: string; +} + +const CARDS: Card[] = [ + { + title: "Layout", + caption: "Flexbox via Taffy", + detail: "Rows, columns, gaps and insets - solved natively in Rust.", + cls: "flex-col gap-1 p-3 w-[136] rounded-xl shadow-md overflow-hidden bg-white border-slate-200 translate-y-1 focus:bg-blue-50 focus:border-blue-500 focus:translate-y-0 transition-all duration-150 ease-out", + strip: "h-1 w-full rounded-sm bg-gradient-to-r from-blue-500 to-blue-600", + bar: "w-1 h-7 bg-blue-500", + }, + { + title: "Motion", + caption: "Springs and tweens", + detail: "Fixed-dt springs and tweens tick natively at 60 FPS.", + cls: "flex-col gap-1 p-3 w-[136] rounded-xl shadow-md overflow-hidden bg-white border-slate-200 translate-y-1 focus:bg-emerald-50 focus:border-emerald-500 focus:translate-y-0 transition-all duration-150 ease-out", + strip: "h-1 w-full rounded-sm bg-gradient-to-r from-emerald-500 to-emerald-600", + bar: "w-1 h-7 bg-emerald-500", + }, + { + title: "Input", + caption: "D-pad and focus", + detail: "Native focus variants respond before JS even wakes up.", + cls: "flex-col gap-1 p-3 w-[136] rounded-xl shadow-md overflow-hidden bg-white border-slate-200 translate-y-1 focus:bg-amber-50 focus:border-amber-500 focus:translate-y-0 transition-all duration-150 ease-out", + strip: "h-1 w-full rounded-sm bg-gradient-to-r from-amber-500 to-amber-600", + bar: "w-1 h-7 bg-amber-500", + }, +]; + +const Detail = (props: { card: Card; key?: string | number }) => { + const el = useRef(null); + useLayoutEffect(() => { + if (el.current) spring(el.current, "translateY", 0); + }, []); + return ( + + + + {props.card.title} + {props.card.detail} + + + ); +}; + +export default function Cards() { + const [open, setOpen] = useState(-1); + const streakA = useRef(null); + const streakB = useRef(null); + + useLayoutEffect(() => { + if (streakA.current) animate(streakA.current, "translateX", 300, { dur: 20000, easing: "linear" }); + if (streakB.current) animate(streakB.current, "translateX", -260, { dur: 26000, easing: "linear" }); + }, []); + + return ( + + + + + + + POCKETJS SHOWCASE + Feature Cards + + 3 MODULES + + + + {CARDS.map((card, i) => ( + { + setOpen(open === i ? -1 : i); + }} + > + + {card.title} + {card.caption} + + ))} + + + {open >= 0 ? : null} + + LEFT / RIGHT move focus - CIRCLE toggle details + + ); +} diff --git a/apps/cards/main.octane.tsx b/apps/cards/main.octane.tsx new file mode 100644 index 000000000..fa4303414 --- /dev/null +++ b/apps/cards/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Feature Cards +import Cards from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Cards); diff --git a/apps/gallery/app.octane.tsx b/apps/gallery/app.octane.tsx new file mode 100644 index 000000000..8259758e8 --- /dev/null +++ b/apps/gallery/app.octane.tsx @@ -0,0 +1,158 @@ +import { useEffect, useRef, useState } from "octane"; +import { + ActionBar, + FocusScope, + Gallery, + Grid, + Image, + Lazy, + Screen, + Sprite, + Text, + View, + type NodeMirror, +} from "@pocketjs/framework/octane/components"; +import { useSpriteAnimation, useButtonPress } from "@pocketjs/framework/octane/lifecycle"; +import { BTN, focusNode } from "@pocketjs/framework/octane/input"; +import { GALLERY_PAGES, TILES_PER_PAGE, TILE_SRCS } from "./tiles.ts"; + +const SPINNER_FRAMES = [ + "spinner-00.svg", + "spinner-01.svg", + "spinner-02.svg", + "spinner-03.svg", + "spinner-04.svg", + "spinner-05.svg", + "spinner-06.svg", + "spinner-07.svg", +]; + +const REVEAL_FRAMES = 16; +const PAGE_TITLE = ["SYNTHWAVE", "GOLDEN HOUR", "EVERGREEN", "NEBULA"]; +const PAGE_SUB = ["neon coast drive", "warm analog haze", "deep forest floor", "far outer dark"]; +const PAGE_COUNT_LABEL = ["01 / 04", "02 / 04", "03 / 04", "04 / 04"]; +const PAGE_BG = [ + "relative flex-col w-full h-full items-center bg-gradient-to-b from-blue-900 to-slate-950", + "relative flex-col w-full h-full items-center bg-gradient-to-b from-orange-900 to-slate-950", + "relative flex-col w-full h-full items-center bg-gradient-to-b from-emerald-900 to-slate-950", + "relative flex-col w-full h-full items-center bg-gradient-to-b from-violet-900 to-slate-950", +]; + +const TILE_LABEL = [ + "OUTRUN", "NEON", "MIRAGE", "PULSE", "CHROME", "MIDNIGHT", + "EMBER", "DUSK", "AMBER", "SANDS", "COPPER", "FLARE", + "FERN", "MOSS", "PINE", "JADE", "TIDE", "GROVE", + "QUASAR", "COMET", "ORBIT", "VIOLET", "NOVA", "DRIFT", +]; + +const TILE_FRAME = + "w-[68] h-[68] rounded-lg items-center justify-center bg-slate-900 border-slate-700 focus:scale-110 focus:border-white transition-transform duration-150 ease-out"; + +function Loading(props: { title: string }) { + const frame = useSpriteAnimation(SPINNER_FRAMES, { frameStep: 3 }); + return ( + + + {`LOADING ${props.title}`} + + ); +} + +function TileGrid(props: { + page: number; + current: number; + onSelect: (label: string) => void; +}) { + const start = props.page * TILES_PER_PAGE; + const srcs = TILE_SRCS.slice(start, start + TILES_PER_PAGE); + const refs = useRef<(NodeMirror | undefined)[]>([]); + + useEffect(() => { + if (props.current === props.page) focusNode(refs.current[0] ?? null); + }, [props.current, props.page]); + + return ( + + {srcs.map((src, k) => ( + + { + refs.current[k] = node ?? undefined; + }} + class={TILE_FRAME} + focusable + onPress={() => props.onSelect(TILE_LABEL[start + k])} + > + + + {TILE_LABEL[start + k]} + + ))} + + ); +} + +function Page(props: { + index: number; + current: number; + onSelect: (label: string) => void; +}) { + const isCurrent = props.current === props.index; + return ( + + + + {PAGE_SUB[props.index]} + {PAGE_TITLE[props.index]} + + {PAGE_COUNT_LABEL[props.index]} + + + }> + + + + + + ); +} + +export default function GalleryDemo() { + const [page, setPage] = useState(0); + const [viewing, setViewing] = useState(null); + + useButtonPress(BTN.RTRIGGER, () => { + (globalThis as any).__dbgR = ((globalThis as any).__dbgR ?? 0) + 1; + }); + useButtonPress(BTN.LTRIGGER, () => { + (globalThis as any).__dbgL = ((globalThis as any).__dbgL ?? 0) + 1; + }); + + return ( + + { + (globalThis as any).__dbgPC = ((globalThis as any).__dbgPC ?? []).concat(next); + setPage(next); + setViewing(null); + }} + duration={300} + easing="out" + renderPage={(i) => setViewing(label)} />} + /> + + + + {Array.from({ length: GALLERY_PAGES }).map((_, i) => ( + + ))} + + + {viewing ? "VIEWING " + viewing : "L / R FLIP D-PAD MOVE CIRCLE VIEW"} + + + + ); +} diff --git a/apps/gallery/main.octane.tsx b/apps/gallery/main.octane.tsx new file mode 100644 index 000000000..1a1510a97 --- /dev/null +++ b/apps/gallery/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Gallery (L / R paging) +import GalleryDemo from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(GalleryDemo); diff --git a/apps/hero/app.octane.tsx b/apps/hero/app.octane.tsx new file mode 100644 index 000000000..3e9cbc692 --- /dev/null +++ b/apps/hero/app.octane.tsx @@ -0,0 +1,91 @@ +import { useLayoutEffect, useRef, useState } from "octane"; +import { Image, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { animate } from "@pocketjs/framework/octane/animation"; +import { useSpriteAnimation } from "@pocketjs/framework/octane/lifecycle"; +import { frameworkName } from "@pocketjs/framework/octane"; + +const SPINNER_FRAME_STEP = 3; +const SPINNER_FRAMES = [ + "spinner-00.svg", + "spinner-01.svg", + "spinner-02.svg", + "spinner-03.svg", + "spinner-04.svg", + "spinner-05.svg", + "spinner-06.svg", + "spinner-07.svg", +]; + +const Stat = (props: { label: string; value: string; cls: string }) => { + return ( + + {props.value} + {props.label} + + ); +}; + +export default function Hero() { + const [count, setCount] = useState(0); + const spinnerSrc = useSpriteAnimation(SPINNER_FRAMES, { frameStep: SPINNER_FRAME_STEP }); + const underline = useRef(null); + + useLayoutEffect(() => { + if (underline.current) { + animate(underline.current, "width", 210, { dur: 700, easing: "out", delay: 150 }); + } + }, []); + + return ( + + + + + + PocketJS + {`${frameworkName()} + RUST + SCEGU`} + + + + + + + + + + + ONE RUST CORE - ONE OCTANE APP + + JSX at 60 FPS. + + + { + underline.current = node; + }} + class="h-1 w-0 rounded-full shadow bg-gradient-to-r from-blue-500 to-cyan-500" + style={{ translateX: count * 2 }} + /> + + Flexbox, springs and baked type - running through Octane. + + + + + { + setCount(count + 1); + }} + > + Press Circle + + {`Count: ${count}`} + {count > 3 ? ( + Reactive on real hardware. + ) : null} + + + ); +} diff --git a/apps/hero/main.octane.tsx b/apps/hero/main.octane.tsx new file mode 100644 index 000000000..76d0a599d --- /dev/null +++ b/apps/hero/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Hero +import Hero from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Hero); diff --git a/apps/library/app.octane.tsx b/apps/library/app.octane.tsx new file mode 100644 index 000000000..496808cdf --- /dev/null +++ b/apps/library/app.octane.tsx @@ -0,0 +1,213 @@ +import { useLayoutEffect, useRef, useState } from "octane"; +import { Image, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { spring } from "@pocketjs/framework/octane/animation"; +import { useButtonPress, useFrame } from "@pocketjs/framework/octane/lifecycle"; +import { BTN, focusNode } from "@pocketjs/framework/octane/input"; +import { frameworkName } from "@pocketjs/framework/octane"; + +type Screen = "library" | "loading" | "detail"; + +interface Game { + title: string; + genre: string; + playtime: string; + trophies: string; + blurb: string[]; + tileCls: string; + about?: boolean; +} + +const GAMES: Game[] = [ + { + title: "NEON DRIFT", + genre: "ARCADE RACING", + playtime: "14H 22M", + trophies: "18 / 40", + blurb: ["Drift a synthwave coastline at 200 km/h.", "Three circuits - never lift off the gas."], + tileCls: + "w-14 h-14 rounded-xl shadow-md items-center justify-center translate-y-2 focus:translate-y-0 focus:scale-110 transition-all duration-150 ease-out bg-gradient-to-b from-blue-500 to-blue-700 border-blue-300 focus:border-slate-900", + }, + { + title: "IRON VANGUARD", + genre: "MECH ACTION", + playtime: "31H 05M", + trophies: "27 / 40", + blurb: ["Pilot a scrapyard mech at the Vanguard fleet.", "Every boss fight rewrites the arena."], + tileCls: + "w-14 h-14 rounded-xl shadow-md items-center justify-center translate-y-2 focus:translate-y-0 focus:scale-110 transition-all duration-150 ease-out bg-gradient-to-b from-rose-400 to-rose-700 border-rose-300 focus:border-slate-900", + }, + { + title: "TIDE POOL", + genre: "PUZZLE", + playtime: "6H 40M", + trophies: "9 / 40", + blurb: ["Rearrange the reef before the tide comes in.", "120 hand-made pools, zero timers."], + tileCls: + "w-14 h-14 rounded-xl shadow-md items-center justify-center translate-y-2 focus:translate-y-0 focus:scale-110 transition-all duration-150 ease-out bg-gradient-to-b from-sky-400 to-sky-700 border-sky-300 focus:border-slate-900", + }, + { + title: "GHOST WATCH", + genre: "MYSTERY", + playtime: "9H 12M", + trophies: "12 / 40", + blurb: ["Something in the lighthouse keeps the log.", "Find out before the batteries do."], + tileCls: + "w-14 h-14 rounded-xl shadow-md items-center justify-center translate-y-2 focus:translate-y-0 focus:scale-110 transition-all duration-150 ease-out bg-gradient-to-b from-cyan-500 to-cyan-700 border-cyan-300 focus:border-slate-900", + }, + { + title: "ABOUT", + genre: "POCKETJS ENGINE", + playtime: "", + trophies: "", + blurb: [`${frameworkName()} or Solid over a no_std Rust core.`, "One JSX app - PSP hardware, PPSSPP or a browser."], + tileCls: + "w-14 h-14 rounded-xl shadow-md items-center justify-center translate-y-2 focus:translate-y-0 focus:scale-110 transition-all duration-150 ease-out bg-white border-slate-300 focus:border-slate-900", + about: true, + }, +]; + +const LOADING_FRAMES = 48; +const SPINNER_FRAME_STEP = 3; +const SPINNER_FRAMES = [ + "spinner-00.svg", + "spinner-01.svg", + "spinner-02.svg", + "spinner-03.svg", + "spinner-04.svg", + "spinner-05.svg", + "spinner-06.svg", + "spinner-07.svg", +]; + +const GridScreen = (props: { selectedIndex: number; onOpen: (game: Game, index: number) => void }) => { + const refs = useRef<(NodeMirror | undefined)[]>([]); + useLayoutEffect(() => { + const i = props.selectedIndex; + if (i >= 0) focusNode(refs.current[i] ?? null); + }, []); + return ( + + {GAMES.map((game, i) => ( + + { + refs.current[i] = node ?? undefined; + }} + class={game.tileCls} + focusable + onPress={() => props.onOpen(game, i)} + > + {game.about ? : null} + + {game.title} + + ))} + + ); +}; + +const Loading = (props: { title: string; frame: number }) => { + const src = SPINNER_FRAMES[Math.floor(props.frame / SPINNER_FRAME_STEP) % SPINNER_FRAMES.length]; + return ( + + + {`LOADING ${props.title}...`} + + ); +}; + +const DetailStat = (props: { label: string; value: string }) => { + return ( + + {props.value} + {props.label} + + ); +}; + +const Detail = (props: { game: Game }) => { + const panel = useRef(null); + useLayoutEffect(() => { + if (panel.current) spring(panel.current, "translateY", 0); + }, []); + return ( + { + panel.current = node; + }} + style={{ translateY: 18 }} + class="flex-col gap-3 p-4 grow rounded-xl shadow-md bg-white border-slate-200" + > + + + {props.game.genre} + {props.game.title} + + {!props.game.about ? ( + + + + + ) : null} + + + {props.game.blurb.map((line) => ( + + {line} + + ))} + + TRIANGLE back to library + + ); +}; + +export default function Library() { + const [screen, setScreen] = useState("library"); + const [selected, setSelected] = useState(null); + const [selectedIndex, setSelectedIndex] = useState(-1); + const [loadFrame, setLoadFrame] = useState(0); + + const openGame = (game: Game, index: number) => { + setSelected(game); + setSelectedIndex(index); + if (game.about) { + setScreen("detail"); + } else { + setLoadFrame(0); + setScreen("loading"); + } + }; + + useButtonPress(BTN.TRIANGLE, () => { + if (screen === "detail") setScreen("library"); + }); + useFrame(() => { + if (screen !== "loading") return; + setLoadFrame((frame) => frame + 1); + if (loadFrame + 1 >= LOADING_FRAMES) setScreen("detail"); + }); + + return ( + + + + POCKETJS SHOWCASE + Game Library + + 5 TITLES + + + {screen === "library" ? ( + <> + + LEFT / RIGHT move focus - CIRCLE open + + ) : null} + + {screen === "loading" && selected ? : null} + + {screen === "detail" && selected ? : null} + + ); +} diff --git a/apps/library/main.octane.tsx b/apps/library/main.octane.tsx new file mode 100644 index 000000000..d6d5fb07c --- /dev/null +++ b/apps/library/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Game Library +import Library from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Library); diff --git a/apps/music/app.octane.tsx b/apps/music/app.octane.tsx new file mode 100644 index 000000000..8d65aa768 --- /dev/null +++ b/apps/music/app.octane.tsx @@ -0,0 +1,156 @@ +import { useState } from "octane"; +import { Text, View } from "@pocketjs/framework/octane/components"; +import { useButtonPress, useFrame } from "@pocketjs/framework/octane/lifecycle"; +import { BTN } from "@pocketjs/framework/octane/input"; + +interface Track { + title: string; + artist: string; + coverCls: string; +} + +const TRACKS: Track[] = [ + { + title: "MIDNIGHT REPLAY", + artist: "SYNC PULSE", + coverCls: + "w-16 h-16 rounded-xl shadow-md items-center justify-center bg-gradient-to-b from-blue-500 to-blue-700 border-blue-300 focus:border-slate-900 transition-colors duration-150", + }, + { + title: "GLASS HORIZON", + artist: "AMBER TIDE", + coverCls: + "w-16 h-16 rounded-xl shadow-md items-center justify-center bg-gradient-to-b from-amber-400 to-amber-700 border-amber-300 focus:border-slate-900 transition-colors duration-150", + }, + { + title: "STATIC BLOOM", + artist: "NEON DRIFTERS", + coverCls: + "w-16 h-16 rounded-xl shadow-md items-center justify-center bg-gradient-to-b from-cyan-500 to-cyan-700 border-cyan-300 focus:border-slate-900 transition-colors duration-150", + }, +]; + +const TRACK_FRAMES = 300; +const PROGRESS_TRACK_W = 160; + +// Per-frame state lives in leaf components so each tick re-renders a handful +// of nodes, not the whole screen. Octane re-renders allocate their garbage up +// front; keeping the always-animating state small keeps the PSP QuickJS +// arena's GC pressure proportional to the equalizer + progress line only. + +function Equalizer(props: { playing: boolean }) { + const [barsFrame, setBarsFrame] = useState(0); + useFrame(() => { + if (props.playing) setBarsFrame((v) => v + 1); + }); + const barHeight = (i: number): number => { + if (!props.playing) return 6; + const v = Math.abs(Math.sin(barsFrame * 0.15 + i * 1.7)); + return 6 + Math.round(v * 20); + }; + return ( + + {([0, 1, 2, 3] as const).map((i) => ( + + ))} + + ); +} + +function ProgressLine(props: { playing: boolean; onTrackEnd: () => void; key?: number }) { + const [position, setPosition] = useState(0); + const pct = Math.round((position / TRACK_FRAMES) * 100); + useFrame(() => { + if (!props.playing) return; + if (position + 1 >= TRACK_FRAMES) props.onTrackEnd(); + else setPosition((v) => v + 1); + }); + return ( + + + + + {`${pct}%`} + + ); +} + +export default function Music() { + const [trackIndex, setTrackIndex] = useState(0); + const [playing, setPlaying] = useState(true); + // Bumped on every select/skip: ProgressLine is keyed on it, so its position + // state remounts to 0 exactly where the other variants reset it — including + // re-selecting the current track. + const [session, setSession] = useState(0); + const track = TRACKS[trackIndex]; + + const selectTrack = (i: number) => { + setTrackIndex(i); + setSession((s) => s + 1); + setPlaying(true); + }; + const nextTrack = () => { + setTrackIndex((i) => (i + 1) % TRACKS.length); + setSession((s) => s + 1); + }; + const prevTrack = () => { + setTrackIndex((i) => (i - 1 + TRACKS.length) % TRACKS.length); + setSession((s) => s + 1); + }; + + useButtonPress(BTN.LTRIGGER, prevTrack); + useButtonPress(BTN.RTRIGGER, nextTrack); + + return ( + + + + POCKETJS SHOWCASE + Now Playing + + {`TRACK ${trackIndex + 1} / ${TRACKS.length}`} + + + + setPlaying(!playing)}> + {playing ? ">" : "II"} + + + + {track.title} + {track.artist} + + + + + + + + {TRACKS.map((t, i) => ( + selectTrack(i)} + > + {t.title} + {t.artist} + + ))} + + + UP / DOWN focus - CIRCLE play/select - L/R skip track + + ); +} diff --git a/apps/music/main.octane.tsx b/apps/music/main.octane.tsx new file mode 100644 index 000000000..b9da4a32f --- /dev/null +++ b/apps/music/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Now Playing +import Music from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Music); diff --git a/apps/notifications/app.octane.tsx b/apps/notifications/app.octane.tsx new file mode 100644 index 000000000..d7bfb2299 --- /dev/null +++ b/apps/notifications/app.octane.tsx @@ -0,0 +1,160 @@ +import { useLayoutEffect, useRef, useState } from "octane"; +import { Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { animate } from "@pocketjs/framework/octane/animation"; +import { useFrame } from "@pocketjs/framework/octane/lifecycle"; + +interface Notice { + id: string; + title: string; + message: string; + time: string; + dotCls: string; +} + +const INITIAL: Notice[] = [ + { id: "update", title: "UPDATE AVAILABLE", message: "Firmware 6.61 is ready to install.", time: "2m ago", dotCls: "w-2 h-2 rounded-full bg-sky-500" }, + { id: "friend", title: "FRIEND REQUEST", message: "RIDGE_FOX wants to join your session.", time: "14m ago", dotCls: "w-2 h-2 rounded-full bg-emerald-500" }, + { id: "battery", title: "LOW BATTERY", message: "12% remaining - plug in soon.", time: "35m ago", dotCls: "w-2 h-2 rounded-full bg-amber-500" }, + { id: "trophy", title: "TROPHY UNLOCKED", message: '"First Contact" - Iron Vanguard.', time: "1h ago", dotCls: "w-2 h-2 rounded-full bg-blue-500" }, +]; + +const DISMISS_FRAMES = 16; +const ROW_RISE_PX = 42; +const ROW_RISE_FRAMES = 16; + +interface NoticeRowProps { + key?: string; + item: Notice; + index: number; + rise: number; + onRowRef: (id: string, row: NodeMirror) => void; + onDismiss: (id: string, el: NodeMirror | undefined) => void; +} + +function NoticeRow(props: NoticeRowProps) { + const el = useRef(null); + + useLayoutEffect(() => { + const card = el.current; + if (card) { + animate(card, "opacity", 1, { dur: 250, delay: props.index * 70, easing: "out" }); + animate(card, "translateX", 0, { dur: 250, delay: props.index * 70, easing: "out" }); + } + }, []); + + return ( + { + if (row) props.onRowRef(props.item.id, row); + }} + class="flex-col" + style={{ translateY: props.rise }} + > + props.onDismiss(props.item.id, el.current ?? undefined)} + > + + + {props.item.title} + {props.item.message} + + {props.item.time} + + + ); +} + +export default function Notifications() { + const [items, setItems] = useState([...INITIAL]); + const [dismissingId, setDismissingId] = useState(null); + const [dismissFrame, setDismissFrame] = useState(0); + const [riseOffsets, setRiseOffsets] = useState>({}); + const [riseQueued, setRiseQueued] = useState([]); + const [riseFrame, setRiseFrame] = useState(0); + const rowRefs = useRef(new Map()); + + const hasRise = Object.keys(riseOffsets).length > 0 || riseQueued.length > 0; + + useFrame(() => { + if (riseQueued.length > 0) { + for (const id of riseQueued) { + const row = rowRefs.current.get(id); + if (row) animate(row, "translateY", 0, { dur: 180, easing: "out" }); + } + setRiseQueued([]); + setRiseFrame(0); + } else if (Object.keys(riseOffsets).length > 0) { + const n = riseFrame + 1; + setRiseFrame(n); + if (n >= ROW_RISE_FRAMES) { + setRiseOffsets({}); + setRiseFrame(0); + } + } + + const id = dismissingId; + if (id === null) return; + const n = dismissFrame + 1; + setDismissFrame(n); + if (n >= DISMISS_FRAMES) { + const before = items; + const removedIndex = before.findIndex((it) => it.id === id); + const rising = removedIndex < 0 ? [] : before.slice(removedIndex + 1).map((it) => it.id); + if (rising.length > 0) { + setRiseOffsets(Object.fromEntries(rising.map((rid) => [rid, ROW_RISE_PX]))); + setRiseQueued(rising); + } + rowRefs.current.delete(id); + setItems(before.filter((it) => it.id !== id)); + setDismissingId(null); + setDismissFrame(0); + } + }); + + const dismiss = (id: string, el: NodeMirror | undefined) => { + if (dismissingId !== null || hasRise || !el) return; + setDismissingId(id); + setDismissFrame(0); + animate(el, "opacity", 0, { dur: 200, easing: "out" }); + animate(el, "translateX", 24, { dur: 200, easing: "out" }); + }; + + return ( + + + + POCKETJS SHOWCASE + Notifications + + {`${items.length} UNREAD`} + + + + {items.map((item, i) => ( + { + rowRefs.current.set(id, row); + }} + onDismiss={dismiss} + /> + ))} + + + {items.length === 0 ? ( + + ALL CLEAR + + ) : null} + + UP / DOWN move focus - CIRCLE dismiss + + ); +} diff --git a/apps/notifications/main.octane.tsx b/apps/notifications/main.octane.tsx new file mode 100644 index 000000000..9d2faa0ca --- /dev/null +++ b/apps/notifications/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Notifications +import Notifications from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Notifications); diff --git a/apps/settings/app.octane.tsx b/apps/settings/app.octane.tsx new file mode 100644 index 000000000..cf62e1ace --- /dev/null +++ b/apps/settings/app.octane.tsx @@ -0,0 +1,264 @@ +import { useEffect, useRef, useState } from "octane"; +import { Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { animate } from "@pocketjs/framework/octane/animation"; + +type ThemeName = "indigo" | "emerald" | "amber" | "rose"; + +interface ThemeOption { + name: ThemeName; + pageCls: string; + eyebrowCls: string; + titleCls: string; + optionsCls: string; + rowCls: string; + rowLabelCls: string; + switchOnCls: string; + switchOffCls: string; + knobCls: string; + sliderTrackCls: string; + sliderFillCls: string; + sliderThumbCls: string; + valueCls: string; + panelCls: string; + footerCls: string; + swatchCls: string; + selectedCls: string; +} + +const THEMES: ThemeOption[] = [ + { + name: "indigo", + pageCls: "flex-col w-full h-full p-3 gap-2 bg-gradient-to-b from-indigo-50 to-slate-100", + eyebrowCls: "text-xs text-indigo-600 tracking-wide", + titleCls: "text-2xl text-indigo-700 font-bold", + optionsCls: "text-xs text-indigo-700", + rowCls: "flex-row items-center justify-between px-2 py-1 bg-white border-indigo-200 rounded-lg shadow focus:bg-indigo-50 focus:border-indigo-500 transition-colors duration-150", + rowLabelCls: "text-sm text-indigo-950", + switchOnCls: "w-9 h-5 rounded-full bg-gradient-to-r from-indigo-500 to-indigo-600 border-indigo-500 shadow flex-row items-center", + switchOffCls: "w-9 h-5 rounded-full bg-gradient-to-r from-indigo-100 to-indigo-200 border-indigo-200 shadow flex-row items-center", + knobCls: "w-4 h-4 rounded-full bg-white border-indigo-200 shadow-md m-[2] translate-x-[0.5]", + sliderTrackCls: "relative w-[120] h-3 rounded-full bg-indigo-100 border-indigo-200 shadow overflow-hidden", + sliderFillCls: "absolute left-0 top-0 h-3 w-[120] rounded-full bg-gradient-to-r from-indigo-400 to-indigo-600", + sliderThumbCls: "absolute left-0 top-[2] w-2 h-2 rounded-full bg-white border-indigo-500 shadow-md translate-x-[64]", + valueCls: "text-xs text-indigo-700", + panelCls: "flex-col gap-2 px-2 py-2 bg-white border-indigo-200 rounded-xl shadow-md", + footerCls: "text-xs text-indigo-700", + swatchCls: "w-8 h-6 rounded-lg shadow bg-gradient-to-b from-indigo-500 to-indigo-700 border-indigo-300 focus:border-indigo-950 transition-colors duration-150 items-center justify-center", + selectedCls: "w-8 h-6 rounded-lg shadow-md bg-gradient-to-b from-indigo-500 to-indigo-700 border-indigo-950 transition-colors duration-150 items-center justify-center", + }, + { + name: "emerald", + pageCls: "flex-col w-full h-full p-3 gap-2 bg-gradient-to-b from-emerald-50 to-slate-100", + eyebrowCls: "text-xs text-emerald-600 tracking-wide", + titleCls: "text-2xl text-emerald-700 font-bold", + optionsCls: "text-xs text-emerald-700", + rowCls: "flex-row items-center justify-between px-2 py-1 bg-white border-emerald-200 rounded-lg shadow focus:bg-emerald-50 focus:border-emerald-500 transition-colors duration-150", + rowLabelCls: "text-sm text-emerald-950", + switchOnCls: "w-9 h-5 rounded-full bg-gradient-to-r from-emerald-500 to-emerald-600 border-emerald-500 shadow flex-row items-center", + switchOffCls: "w-9 h-5 rounded-full bg-gradient-to-r from-emerald-100 to-emerald-200 border-emerald-200 shadow flex-row items-center", + knobCls: "w-4 h-4 rounded-full bg-white border-emerald-200 shadow-md m-[2] translate-x-[0.5]", + sliderTrackCls: "relative w-[120] h-3 rounded-full bg-emerald-100 border-emerald-200 shadow overflow-hidden", + sliderFillCls: "absolute left-0 top-0 h-3 w-[120] rounded-full bg-gradient-to-r from-emerald-400 to-emerald-600", + sliderThumbCls: "absolute left-0 top-[2] w-2 h-2 rounded-full bg-white border-emerald-500 shadow-md translate-x-[64]", + valueCls: "text-xs text-emerald-700", + panelCls: "flex-col gap-2 px-2 py-2 bg-white border-emerald-200 rounded-xl shadow-md", + footerCls: "text-xs text-emerald-700", + swatchCls: "w-8 h-6 rounded-lg shadow bg-gradient-to-b from-emerald-400 to-emerald-600 border-emerald-300 focus:border-emerald-950 transition-colors duration-150 items-center justify-center", + selectedCls: "w-8 h-6 rounded-lg shadow-md bg-gradient-to-b from-emerald-400 to-emerald-600 border-emerald-950 transition-colors duration-150 items-center justify-center", + }, + { + name: "amber", + pageCls: "flex-col w-full h-full p-3 gap-2 bg-gradient-to-b from-amber-50 to-slate-100", + eyebrowCls: "text-xs text-amber-600 tracking-wide", + titleCls: "text-2xl text-amber-700 font-bold", + optionsCls: "text-xs text-amber-700", + rowCls: "flex-row items-center justify-between px-2 py-1 bg-white border-amber-200 rounded-lg shadow focus:bg-amber-50 focus:border-amber-500 transition-colors duration-150", + rowLabelCls: "text-sm text-amber-950", + switchOnCls: "w-9 h-5 rounded-full bg-gradient-to-r from-amber-400 to-amber-600 border-amber-500 shadow flex-row items-center", + switchOffCls: "w-9 h-5 rounded-full bg-gradient-to-r from-amber-100 to-amber-200 border-amber-200 shadow flex-row items-center", + knobCls: "w-4 h-4 rounded-full bg-white border-amber-200 shadow-md m-[2] translate-x-[0.5]", + sliderTrackCls: "relative w-[120] h-3 rounded-full bg-amber-100 border-amber-200 shadow overflow-hidden", + sliderFillCls: "absolute left-0 top-0 h-3 w-[120] rounded-full bg-gradient-to-r from-amber-400 to-amber-600", + sliderThumbCls: "absolute left-0 top-[2] w-2 h-2 rounded-full bg-white border-amber-500 shadow-md translate-x-[64]", + valueCls: "text-xs text-amber-700", + panelCls: "flex-col gap-2 px-2 py-2 bg-white border-amber-200 rounded-xl shadow-md", + footerCls: "text-xs text-amber-700", + swatchCls: "w-8 h-6 rounded-lg shadow bg-gradient-to-b from-amber-400 to-amber-600 border-amber-300 focus:border-amber-950 transition-colors duration-150 items-center justify-center", + selectedCls: "w-8 h-6 rounded-lg shadow-md bg-gradient-to-b from-amber-400 to-amber-600 border-amber-950 transition-colors duration-150 items-center justify-center", + }, + { + name: "rose", + pageCls: "flex-col w-full h-full p-3 gap-2 bg-gradient-to-b from-rose-50 to-slate-100", + eyebrowCls: "text-xs text-rose-600 tracking-wide", + titleCls: "text-2xl text-rose-700 font-bold", + optionsCls: "text-xs text-rose-700", + rowCls: "flex-row items-center justify-between px-2 py-1 bg-white border-rose-200 rounded-lg shadow focus:bg-rose-50 focus:border-rose-500 transition-colors duration-150", + rowLabelCls: "text-sm text-rose-950", + switchOnCls: "w-9 h-5 rounded-full bg-gradient-to-r from-rose-400 to-rose-600 border-rose-500 shadow flex-row items-center", + switchOffCls: "w-9 h-5 rounded-full bg-gradient-to-r from-rose-100 to-rose-200 border-rose-200 shadow flex-row items-center", + knobCls: "w-4 h-4 rounded-full bg-white border-rose-200 shadow-md m-[2] translate-x-[0.5]", + sliderTrackCls: "relative w-[120] h-3 rounded-full bg-rose-100 border-rose-200 shadow overflow-hidden", + sliderFillCls: "absolute left-0 top-0 h-3 w-[120] rounded-full bg-gradient-to-r from-rose-400 to-rose-600", + sliderThumbCls: "absolute left-0 top-[2] w-2 h-2 rounded-full bg-white border-rose-500 shadow-md translate-x-[64]", + valueCls: "text-xs text-rose-700", + panelCls: "flex-col gap-2 px-2 py-2 bg-white border-rose-200 rounded-xl shadow-md", + footerCls: "text-xs text-rose-700", + swatchCls: "w-8 h-6 rounded-lg shadow bg-gradient-to-b from-rose-400 to-rose-600 border-rose-300 focus:border-rose-950 transition-colors duration-150 items-center justify-center", + selectedCls: "w-8 h-6 rounded-lg shadow-md bg-gradient-to-b from-rose-400 to-rose-600 border-rose-950 transition-colors duration-150 items-center justify-center", + }, +]; + +function themeByName(name: ThemeName): ThemeOption { + return THEMES.find((t) => t.name === name) ?? THEMES[0]; +} + +const Toggle = ( + props: { label: string; value: boolean; themeName: ThemeName; onToggle: () => void }, +) => { + const [current, setCurrent] = useState(props.value); + const knob = useRef(null); + const initialized = useRef(false); + const palette = themeByName(props.themeName); + + // Knob position lives outside the render path: the class bakes the initial + // translate-x-[0.5]; this effect snaps on mount (dur 1) and tweens on + // toggles (dur 160) — never a `style` prop, so re-renders can't cancel it. + useEffect(() => { + if (!knob.current) return; + animate(knob.current, "translateX", current ? 15.5 : 0.5, { + dur: initialized.current ? 160 : 1, + easing: "out", + }); + initialized.current = true; + }); + + return ( + { + setCurrent(!current); + props.onToggle(); + }} + > + {props.label} + + { + knob.current = node; + }} + class={palette.knobCls} + /> + + + ); +}; + +const BRIGHTNESS_TRACK_W = 120; +const BRIGHTNESS_INITIAL_LEVEL = 3; +const BRIGHTNESS_THUMB_W = 8; +const brightnessWidth = (level: number): number => (level / 5) * BRIGHTNESS_TRACK_W; +const brightnessScale = (level: number): number => level / 5; +const brightnessFillOffset = (level: number): number => -(BRIGHTNESS_TRACK_W * (1 - brightnessScale(level))) / 2; + +const Brightness = (props: { themeName: ThemeName }) => { + const [level, setLevel] = useState(BRIGHTNESS_INITIAL_LEVEL); + const fill = useRef(null); + const thumb = useRef(null); + const initialized = useRef(false); + const palette = themeByName(props.themeName); + + // Same pattern as Toggle: thumb rest position is baked in the class + // (translate-x-[64] == level 3); mount snaps fill/thumb (dur 1), CIRCLE + // presses tween them (dur 150). No animated prop ever sits in `style`. + useEffect(() => { + if (!fill.current || !thumb.current) return; + const dur = initialized.current ? 150 : 1; + animate(fill.current, "scaleX", brightnessScale(level), { dur, easing: "out" }); + animate(fill.current, "translateX", brightnessFillOffset(level), { dur, easing: "out" }); + animate(thumb.current, "translateX", brightnessWidth(level) - BRIGHTNESS_THUMB_W, { dur, easing: "out" }); + initialized.current = true; + }); + + return ( + { + setLevel(level >= 5 ? 1 : level + 1); + }} + > + BRIGHTNESS + + + { + fill.current = node; + }} + class={palette.sliderFillCls} + /> + { + thumb.current = node; + }} + class={palette.sliderThumbCls} + /> + + + {`${level}/5`} + + + + ); +}; + +const ThemeRow = ( + props: { value: ThemeName; themeName: ThemeName; onPick: (t: ThemeName) => void }, +) => { + const palette = themeByName(props.themeName); + return ( + + THEME + + {THEMES.map((t) => ( + props.onPick(t.name)} + > + {props.value === t.name ? : null} + + ))} + + + ); +}; + +export default function Settings() { + const [sfx, setSfx] = useState(true); + const [vibration, setVibration] = useState(false); + const [theme, setTheme] = useState("indigo"); + const currentTheme = themeByName(theme); + + return ( + + + + POCKETJS SHOWCASE + Settings + + 4 OPTIONS + + + + setSfx(!sfx)} /> + setVibration(!vibration)} /> + + setTheme(next)} /> + + + UP / DOWN move focus - CIRCLE toggle / cycle / select + + ); +} diff --git a/apps/settings/main.octane.tsx b/apps/settings/main.octane.tsx new file mode 100644 index 000000000..fcd3027b5 --- /dev/null +++ b/apps/settings/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Settings +import Settings from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Settings); diff --git a/apps/stats/app.octane.tsx b/apps/stats/app.octane.tsx new file mode 100644 index 000000000..53352264d --- /dev/null +++ b/apps/stats/app.octane.tsx @@ -0,0 +1,220 @@ +import { useLayoutEffect, useMemo, useRef, useState } from "octane"; +import { Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { animate, jump } from "@pocketjs/framework/octane/animation"; +import { useButtonPress, useFrame } from "@pocketjs/framework/octane/lifecycle"; +import { BTN } from "@pocketjs/framework/octane/input"; + +const COUNT_FRAMES = 75; +const COUNT_TEXT_STEP = 8; +const BAR_ANIM_FRAMES = 26; +const BAR_STAGGER_FRAMES = 4; +const SYSTEMS_REVEAL_FRAMES = 12; +const SYSTEMS_STAGGER_FRAMES = 5; +const SYSTEMS_MAX_FRAMES = SYSTEMS_REVEAL_FRAMES + SYSTEMS_STAGGER_FRAMES * 3; + +interface Stat { + label: string; + target: number; + delta: string; + valueCls: string; +} + +const STATS: Stat[] = [ + { label: "PLAYERS ONLINE", target: 12480, delta: "+318", valueCls: "text-2xl text-blue-600 font-bold" }, + { label: "SESSIONS TODAY", target: 3642, delta: "+9%", valueCls: "text-2xl text-emerald-600 font-bold" }, + { label: "DRAW CALLS", target: 268, delta: "-12", valueCls: "text-2xl text-amber-600 font-bold" }, +]; + +interface Bar { + label: string; + pct: number; + fill: string; +} + +const BAR_W = 280; +const BAR_ANIM_MS = Math.round((BAR_ANIM_FRAMES / 60) * 1000); +const BAR_STAGGER_MS = Math.round((BAR_STAGGER_FRAMES / 60) * 1000); +const BARS: Bar[] = [ + { label: "CPU", pct: 42, fill: "h-2 w-[280] rounded-full bg-gradient-to-r from-blue-500 to-blue-600" }, + { label: "GPU", pct: 71, fill: "h-2 w-[280] rounded-full bg-gradient-to-r from-emerald-500 to-emerald-600" }, + { label: "RAM", pct: 63, fill: "h-2 w-[280] rounded-full bg-gradient-to-r from-amber-500 to-amber-600" }, + { label: "I/O", pct: 28, fill: "h-2 w-[280] rounded-full bg-gradient-to-r from-sky-500 to-sky-600" }, +]; + +interface Sys { + name: string; + status: string; + led: string; + statusCls: string; +} + +const SYSTEMS: Sys[] = [ + { name: "GE PIPELINE", status: "ONLINE", led: "w-2 h-2 rounded-full bg-emerald-500", statusCls: "text-xs text-emerald-600" }, + { name: "AUDIO MIXER", status: "ONLINE", led: "w-2 h-2 rounded-full bg-emerald-500", statusCls: "text-xs text-emerald-600" }, + { name: "MEMORY ARENA", status: "87% USED", led: "w-2 h-2 rounded-full bg-amber-500", statusCls: "text-xs text-amber-600" }, + { name: "WIFI LINK", status: "ONLINE", led: "w-2 h-2 rounded-full bg-emerald-500", statusCls: "text-xs text-emerald-600" }, +]; + +function fmt(n: number): string { + const s = String(n); + return s.length > 3 ? s.slice(0, -3) + "," + s.slice(-3) : s; +} + +function easeOutCubic(x: number): number { + const t = Math.max(0, Math.min(1, x)); + return 1 - (1 - t) * (1 - t) * (1 - t); +} + +function barScale(bar: Bar): number { + return bar.pct / 100; +} + +function barFillOffset(scale: number): number { + return -(BAR_W * (1 - scale)) / 2; +} + +const Overview = () => { + // scaleX/translateX are native tweens — they must stay OUT of the fills' + // `style` prop (re-applied styles cancel running animations). Initial + // values are jumped once in the pre-paint mount effect, then animated. + const fills = useRef>([]); + + useLayoutEffect(() => { + BARS.forEach((bar, i) => { + const fill = fills.current[i]; + if (!fill) return; + const scale = barScale(bar); + const delay = i * BAR_STAGGER_MS; + jump(fill, "scaleX", 0); + jump(fill, "translateX", barFillOffset(0)); + animate(fill, "scaleX", scale, { dur: BAR_ANIM_MS, delay, easing: "out" }); + animate(fill, "translateX", barFillOffset(scale), { dur: BAR_ANIM_MS, delay, easing: "out" }); + }); + }, []); + + return ( + + {BARS.map((bar, i) => ( + + + {bar.label} + + + { + fills.current[i] = node; + }} + class={bar.fill} + /> + + {bar.pct + "%"} + + ))} + + ); +}; + +// Per-frame counters live in leaf components so each tick re-renders a small +// subtree, not the whole screen (the same pattern as the music port): the +// count-up phase would otherwise re-render every node for 75 frames and the +// engine-arena churn exhausts the PSP's fixed arena mid-window. + +const StatTiles = () => { + // The rendered value only ever changes on COUNT_TEXT_STEP boundaries, so + // track the raw frame in a ref and commit state only when the stepped + // value moves: ~10 re-renders for the whole count-up instead of 75, with + // byte-identical output per frame index. + const raw = useRef(0); + const [visibleFrame, setVisibleFrame] = useState(0); + useFrame(() => { + if (raw.current >= COUNT_FRAMES) return; + raw.current += 1; + const stepped = + raw.current >= COUNT_FRAMES + ? COUNT_FRAMES + : Math.floor(raw.current / COUNT_TEXT_STEP) * COUNT_TEXT_STEP; + if (stepped !== visibleFrame) setVisibleFrame(stepped); + }); + const t = easeOutCubic(Math.min(1, visibleFrame / COUNT_FRAMES)); + return ( + + {STATS.map((stat) => ( + + {stat.label} + + {fmt(Math.round(stat.target * t))} + {stat.delta} + + + ))} + + ); +}; + +const Systems = () => { + const [frame, setFrame] = useState(0); + useFrame(() => { + if (frame < SYSTEMS_MAX_FRAMES) setFrame((f) => f + 1); + }); + const rowT = (i: number) => easeOutCubic((frame - i * SYSTEMS_STAGGER_FRAMES) / SYSTEMS_REVEAL_FRAMES); + return ( + + {SYSTEMS.map((sys, i) => ( + + + + {sys.name} + + {sys.status} + + ))} + + ); +}; + +export default function Stats() { + const [tab, setTab] = useState(0); + // Bumped on every RIGHT press: is keyed on it, so re-entering the + // tab remounts the reveal from frame 0, matching the other variants. + const [epoch, setEpoch] = useState(0); + + useButtonPress(BTN.RIGHT, () => { + setTab(1); + setEpoch((e) => e + 1); + }); + useButtonPress(BTN.LEFT, () => { + setTab(0); + }); + + return ( + + + + LIVE TELEMETRY + Mission Control + + + + OVERVIEW + + + SYSTEMS + + + + + + + + {tab === 0 ? : null} + {tab === 1 ? : null} + + + LEFT / RIGHT switch tab + + ); +} diff --git a/apps/stats/main.octane.tsx b/apps/stats/main.octane.tsx new file mode 100644 index 000000000..60596eac1 --- /dev/null +++ b/apps/stats/main.octane.tsx @@ -0,0 +1,5 @@ +// @title PocketJS: Mission Control +import Stats from "./app.tsx"; +import { mount } from "@pocketjs/framework"; + +mount(Stats); diff --git a/bun.lock b/bun.lock index 217b2d2d8..96612e217 100644 --- a/bun.lock +++ b/bun.lock @@ -7,6 +7,7 @@ "dependencies": { "@vue/compiler-sfc": "3.6.0-rc.1", "@vue/compiler-vapor": "3.6.0-rc.1", + "octane": "0.1.18", "solid-js": "^1.9", "vue": "3.6.0-rc.1", "vue-jsx-vapor": "3.2.19", @@ -166,6 +167,8 @@ "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.5", "", { "dependencies": { "@tybys/wasm-util": "^0.10.2" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-AWPoBRJ9tsnVhor4sjO7rkni+7p+2IAEFj6cx06UgP10jkQHqay/36uRV/bFkgrh18D9vb4cr8Q0Pthskgzy+Q=="], + "@noble/hashes": ["@noble/hashes@2.2.0", "", {}, "sha512-IYqDGiTXab6FniAgnSdZwgWbomxpy9FtYvLKs7wCUs2a8RkITG+DFGO1DM9cr+E3/RgADRpFjrKVaJ1z6sjtEg=="], + "@parcel/watcher": ["@parcel/watcher@2.5.1", "", { "dependencies": { "detect-libc": "^1.0.3", "is-glob": "^4.0.3", "micromatch": "^4.0.5", "node-addon-api": "^7.0.0" }, "optionalDependencies": { "@parcel/watcher-android-arm64": "2.5.1", "@parcel/watcher-darwin-arm64": "2.5.1", "@parcel/watcher-darwin-x64": "2.5.1", "@parcel/watcher-freebsd-x64": "2.5.1", "@parcel/watcher-linux-arm-glibc": "2.5.1", "@parcel/watcher-linux-arm-musl": "2.5.1", "@parcel/watcher-linux-arm64-glibc": "2.5.1", "@parcel/watcher-linux-arm64-musl": "2.5.1", "@parcel/watcher-linux-x64-glibc": "2.5.1", "@parcel/watcher-linux-x64-musl": "2.5.1", "@parcel/watcher-win32-arm64": "2.5.1", "@parcel/watcher-win32-ia32": "2.5.1", "@parcel/watcher-win32-x64": "2.5.1" } }, "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg=="], "@parcel/watcher-android-arm64": ["@parcel/watcher-android-arm64@2.5.1", "", { "os": "android", "cpu": "arm64" }, "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA=="], @@ -210,6 +213,8 @@ "@shikijs/vscode-textmate": ["@shikijs/vscode-textmate@10.0.2", "", {}, "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg=="], + "@sveltejs/acorn-typescript": ["@sveltejs/acorn-typescript@1.0.11", "", { "peerDependencies": { "acorn": "^8.9.0" } }, "sha512-LFuZUkjJ9iF7JZye/aG5XM0SFcQ5VyL0oVX4WJ9dc0Va3R3s0OauX1BESVCb+YN/ol8TAfqGDDAQsTG627Y5kw=="], + "@tailwindcss/cli": ["@tailwindcss/cli@4.3.2", "", { "dependencies": { "@parcel/watcher": "2.5.1", "@tailwindcss/node": "4.3.2", "@tailwindcss/oxide": "4.3.2", "enhanced-resolve": "5.21.6", "mri": "^1.2.0", "picocolors": "^1.1.1", "tailwindcss": "4.3.2" }, "bin": { "tailwindcss": "./dist/index.mjs" } }, "sha512-Fzt+HrIZHDlkRYKdLMBeufaroaPvwCBG70sMLdmurdeadNMO/LxbmT8Sbb+P83ep0iAlAImettb7Y+rO+37rXw=="], "@tailwindcss/node": ["@tailwindcss/node@4.3.2", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "enhanced-resolve": "5.21.6", "jiti": "^2.7.0", "lightningcss": "1.32.0", "magic-string": "^0.30.21", "source-map-js": "^1.2.1", "tailwindcss": "4.3.2" } }, "sha512-yWP/sqEcBLaD8JuA6zNwxoYKr75qxTioYwlRwekj5Jr/I5GXnoJfjetH/psLUIv74cYTH2lBUEzBkinthoYcBg=="], @@ -242,6 +247,8 @@ "@tailwindcss/typography": ["@tailwindcss/typography@0.5.20", "", { "dependencies": { "postcss-selector-parser": "6.0.10" }, "peerDependencies": { "tailwindcss": ">=3.0.0 || >=4.0.0 || insiders" } }, "sha512-hwbzQuNUfcPvbegQFatVPl/MY/tcM9KLl963hQ5laJKPh81TEZ1+dNG9PirGvcaDBkp+BCshExAyKVPW91dozw=="], + "@tsrx/core": ["@tsrx/core@0.1.54", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5", "@noble/hashes": "^2.2.0", "@sveltejs/acorn-typescript": "^1.0.11", "@types/estree": "^1.0.8", "@types/estree-jsx": "^1.0.5", "acorn": "^8.17.0", "esrap": "^2.3.0", "is-reference": "^3.0.3", "magic-string": "^0.30.18", "zimmerframe": "^1.1.2" } }, "sha512-DbPskFFyJyako9pIRZDwipM/zIKDrfUcsHsGP8KHK5+Z2yY+tR2PUki+ThgnUA3+LqZo4Khc+07S62tFRX3TeQ=="], + "@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], "@types/babel__core": ["@types/babel__core@7.20.5", "", { "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" } }, "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA=="], @@ -254,6 +261,10 @@ "@types/bun": ["@types/bun@1.3.14", "", { "dependencies": { "bun-types": "1.3.14" } }, "sha512-h1hFqFVcvAvD9j9K7ZW7vd82aSA+rTdznZa+5bwvCwqSB1jmmfLcbIWhOLx1/+boy/xmjgCs/OMUL8hRJSmnPw=="], + "@types/estree": ["@types/estree@1.0.9", "", {}, "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg=="], + + "@types/estree-jsx": ["@types/estree-jsx@1.0.5", "", { "dependencies": { "@types/estree": "*" } }, "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg=="], + "@types/hast": ["@types/hast@3.0.4", "", { "dependencies": { "@types/unist": "*" } }, "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ=="], "@types/mdast": ["@types/mdast@4.0.4", "", { "dependencies": { "@types/unist": "*" } }, "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA=="], @@ -262,6 +273,8 @@ "@types/opentype.js": ["@types/opentype.js@1.3.10", "", {}, "sha512-F67EFyk6j02okHz5JCgata3ZRAcZi9GLnzmkHw/rzJq3OCc8/ZVdoKrxMTYjcQP6IYHGBz2cav1cpzkOkPiPCQ=="], + "@types/react": ["@types/react@19.2.17", "", { "dependencies": { "csstype": "^3.2.2" } }, "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw=="], + "@types/unist": ["@types/unist@3.0.3", "", {}, "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="], "@ungap/structured-clone": ["@ungap/structured-clone@1.3.2", "", {}, "sha512-5jsZFwgR5rTdKwidH9Qmat75RKwqfpKlWWB1frDkljN127mwqBu8K0PYo7/hFpF03IEJpfVPpCQDY/eDx3iHvA=="], @@ -322,6 +335,8 @@ "@vue/shared": ["@vue/shared@3.6.0-rc.1", "", {}, "sha512-G2Y0ePuu7QIZ7eX7I8r0Q6mwO6rwhMXyYY8UAlPvkXsu7IxT5i8wDxiZK8EI5FnYYJKdSWInDnZREDX9w9zdCg=="], + "acorn": ["acorn@8.18.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ=="], + "babel-plugin-jsx-dom-expressions": ["babel-plugin-jsx-dom-expressions@0.40.7", "", { "dependencies": { "@babel/helper-module-imports": "7.18.6", "@babel/plugin-syntax-jsx": "^7.18.6", "@babel/types": "^7.20.7", "html-entities": "2.3.3", "parse5": "^7.1.2" }, "peerDependencies": { "@babel/core": "^7.20.12" } }, "sha512-/O6JWUmjv03OI9lL2ry9bUjpD5S3PclM55RRJEyCdcFZ5W2SEA/59d+l2hNsk3gI6kiWRdRPdOtqZmsQzFN1pQ=="], "babel-preset-solid": ["babel-preset-solid@1.9.12", "", { "dependencies": { "babel-plugin-jsx-dom-expressions": "^0.40.6" }, "peerDependencies": { "@babel/core": "^7.0.0", "solid-js": "^1.9.12" }, "optionalPeers": ["solid-js"] }, "sha512-LLqnuKVDlKpyBlMPcH6qEvs/wmS9a+NczppxJ3ryS/c0O5IiSFOIBQi9GzyiGDSbcJpx4Gr87jyFTos1MyEuWg=="], @@ -360,6 +375,8 @@ "detect-libc": ["detect-libc@1.0.3", "", { "bin": { "detect-libc": "./bin/detect-libc.js" } }, "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg=="], + "devalue": ["devalue@5.8.2", "", {}, "sha512-DObPPAfdtFbXjxLqK8s2Xk9ZuWz5+ZoFEhC7J76es4GU/rEiXwHTmbImoCdyoCOcBH1UF3+Cz6Z2sYD4hyl5TA=="], + "devlop": ["devlop@1.1.0", "", { "dependencies": { "dequal": "^2.0.0" } }, "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA=="], "electron-to-chromium": ["electron-to-chromium@1.5.384", "", {}, "sha512-g6KAKY1vkYsADvSPWvdJsuYT0ixdcu6lUtD9P/wJKGBEDlZVXh2AX42j1mPqqaQPDluWjara9ziQ7xqAeXCt5A=="], @@ -370,6 +387,8 @@ "escalade": ["escalade@3.2.0", "", {}, "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="], + "esrap": ["esrap@2.3.0", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" }, "peerDependencies": { "@typescript-eslint/types": "^8.2.0" }, "optionalPeers": ["@typescript-eslint/types"] }, "sha512-GQ/7RN8uOtEfNpzZzBMTzW9JBcX42oaSVtPzdF+6cEL8pqIL094iUpr9jzYGn4O4P/1S60dJ6izyT8F4LYARng=="], + "estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], "fill-range": ["fill-range@7.1.1", "", { "dependencies": { "to-regex-range": "^5.0.1" } }, "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg=="], @@ -394,6 +413,8 @@ "is-number": ["is-number@7.0.0", "", {}, "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="], + "is-reference": ["is-reference@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.6" } }, "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw=="], + "jiti": ["jiti@2.7.0", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ=="], "js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], @@ -460,6 +481,8 @@ "node-releases": ["node-releases@2.0.50", "", {}, "sha512-J6l92tKHX6w8Jy5nO1Vuc01NoIiRGi/d6qBKVxh+IQ8Cr3b6HbVNfKiF8ZpFKufTwpwxMmce2W3iQZ861ZRyTg=="], + "octane": ["octane@0.1.18", "", { "dependencies": { "@tsrx/core": "^0.1.54", "@types/react": "^19.2.17", "devalue": "^5.8.2", "esrap": "^2.3.0" }, "peerDependencies": { "react": "^19.0.0", "react-dom": "^19.0.0", "vite": "^8.0.16" }, "optionalPeers": ["react", "react-dom", "vite"] }, "sha512-LxqPEXBcjYPbaOPKneb2J9s3wRTKOrNPKOlNsEyN1iJuuabrTIXNFA0xQd6smaOYLCOGWDv/3NpD50NiX94V1g=="], + "oniguruma-parser": ["oniguruma-parser@0.12.2", "", {}, "sha512-6HVa5oIrgMC6aA6WF6XyyqbhRPJrKR02L20+2+zpDtO5QAzGHAUGw5TKQvwi5vctNnRHkJYmjAhRVQF2EKdTQw=="], "oniguruma-to-es": ["oniguruma-to-es@4.3.6", "", { "dependencies": { "oniguruma-parser": "^0.12.2", "regex": "^6.1.0", "regex-recursion": "^6.0.2" } }, "sha512-csuQ9x3Yr0cEIs/Zgx/OEt9iBw9vqIunAPQkx19R/fiMq2oGVTgcMqO/V3Ybqefr1TBvosI6jU539ksaBULJyA=="], @@ -554,6 +577,8 @@ "yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="], + "zimmerframe": ["zimmerframe@1.1.4", "", {}, "sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ=="], + "zwitch": ["zwitch@2.0.4", "", {}, "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A=="], "@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.2", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.2", "tslib": "^2.4.0" }, "bundled": true }, "sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA=="], diff --git a/contracts/schema/pocket-2.json b/contracts/schema/pocket-2.json index 0ff4c7e47..241d8debe 100644 --- a/contracts/schema/pocket-2.json +++ b/contracts/schema/pocket-2.json @@ -119,7 +119,8 @@ "framework": { "enum": [ "solid", - "vue-vapor" + "vue-vapor", + "octane" ] }, "viewport": { diff --git a/contracts/spec/pocket-manifest.ts b/contracts/spec/pocket-manifest.ts index 031df80ec..14b14579d 100644 --- a/contracts/spec/pocket-manifest.ts +++ b/contracts/spec/pocket-manifest.ts @@ -64,7 +64,7 @@ export interface PocketManifestV2 { readonly app: { readonly entry: string; readonly output?: string; - readonly framework: "solid" | "vue-vapor"; + readonly framework: "solid" | "vue-vapor" | "octane"; readonly viewport: ManifestViewport; }; } @@ -181,7 +181,7 @@ export const pocketManifestV2Schema = { maxLength: 64, pattern: "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$", }, - framework: { enum: ["solid", "vue-vapor"] }, + framework: { enum: ["solid", "vue-vapor", "octane"] }, viewport: { anyOf: [ // Shorthand: a bare fixed viewport (format-2 compatibility). diff --git a/docs/DESIGN.md b/docs/DESIGN.md index fde194f69..6bbae072f 100644 --- a/docs/DESIGN.md +++ b/docs/DESIGN.md @@ -159,7 +159,9 @@ PocketJS/ jsx-plugin.ts babel transformAsync per framework: Solid gets [[babel-preset-solid,{generate:'universal',moduleName}], [@babel/preset-typescript]], Vue Vapor gets vue-jsx-vapor + - preset-typescript; ALSO collects, per file, class strings + text + preset-typescript, Octane gets the octane universal compiler + (static host plans + dynamic slots) retargeted at + renderer-octane.ts; ALSO collects, per file, class strings + text codepoints FROM THE AST (StringLiteral + TemplateLiteral quasis — JSX text compiles to template literals [R]); lints: classList attr, interpolated class, HTML entities in JSX text, solid diff --git a/docs/RUNTIMES.md b/docs/RUNTIMES.md index fbbfb3803..9925ea992 100644 --- a/docs/RUNTIMES.md +++ b/docs/RUNTIMES.md @@ -103,8 +103,8 @@ Raw surfaces are wire protocols. Each surface ships an SDK that expresses it in the *algebra natural to its domain*: - The `ui` surface's natural algebra is a reactive tree → its SDK is **JSX** - (Solid or Vue Vapor through the universal renderer, Tailwind classes, - `animate()`). + (Solid, Vue Vapor or Octane through the universal renderer, Tailwind + classes, `animate()`). - An FPS's natural algebra is rules and policies over events → its SDK is a **mod API**: `strike.on("kill", …)`, `strike.rules.roundTime = 90`, weapon/bot config tables. diff --git a/docs/bench/three-frameworks-ppsspp-2026-07-29.json b/docs/bench/three-frameworks-ppsspp-2026-07-29.json new file mode 100644 index 000000000..6b9fe52a7 --- /dev/null +++ b/docs/bench/three-frameworks-ppsspp-2026-07-29.json @@ -0,0 +1,3697 @@ +{ + "generated": "2026-07-28T23:55:22.401Z", + "samples": 7, + "frameworks": [ + "solid", + "vue-vapor", + "octane" + ], + "ppsspp_revision": "676724ee5e", + "git_revision": "3c14b47", + "frame_budget_us": 16667, + "apps": { + "hero": { + "solid": { + "eval_us": { + "n": 7, + "mean": 597648, + "sd": 0, + "min": 597648, + "median": 597648, + "max": 597648 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 949383, + "sd": 0, + "min": 949383, + "median": 949383, + "max": 949383 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 18103, + "sd": 0, + "min": 18103, + "median": 18103, + "max": 18103 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 50050, + "sd": 0, + "min": 50050, + "median": 50050, + "max": 50050 + }, + "avg_js_us": { + "n": 7, + "mean": 2831, + "sd": 0, + "min": 2831, + "median": 2831, + "max": 2831 + }, + "avg_jobs_us": { + "n": 7, + "mean": 1, + "sd": 0, + "min": 1, + "median": 1, + "max": 1 + }, + "avg_tick_us": { + "n": 7, + "mean": 398, + "sd": 0, + "min": 398, + "median": 398, + "max": 398 + }, + "avg_draw_us": { + "n": 7, + "mean": 940, + "sd": 0, + "min": 940, + "median": 940, + "max": 940 + }, + "avg_render_us": { + "n": 7, + "mean": 178, + "sd": 0, + "min": 178, + "median": 178, + "max": 178 + }, + "avg_work_us": { + "n": 7, + "mean": 4350, + "sd": 0, + "min": 4350, + "median": 4350, + "max": 4350 + }, + "max_work_us": { + "n": 7, + "mean": 41918, + "sd": 0, + "min": 41918, + "median": 41918, + "max": 41918 + }, + "stack_free_bytes": { + "n": 7, + "mean": 796580, + "sd": 0, + "min": 796580, + "median": 796580, + "max": 796580 + }, + "host_wall_ms": { + "n": 7, + "mean": 315.0444050000001, + "sd": 3.306540836024915, + "min": 310.349209, + "median": 314.794167, + "max": 319.5625 + }, + "bundle_bytes": { + "n": 7, + "mean": 105534, + "sd": 0, + "min": 105534, + "median": 105534, + "max": 105534 + }, + "pak_bytes": { + "n": 7, + "mean": 464704, + "sd": 0, + "min": 464704, + "median": 464704, + "max": 464704 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17788160, + "sd": 0, + "min": 17788160, + "median": 17788160, + "max": 17788160 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 3079264, + "sd": 0, + "min": 3079264, + "median": 3079264, + "max": 3079264 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 14708896, + "sd": 0, + "min": 14708896, + "median": 14708896, + "max": 14708896 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19885312, + "sd": 0, + "min": 19885312, + "median": 19885312, + "max": 19885312 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1758497, + "sd": 0, + "min": 1758497, + "median": 1758497, + "max": 1758497 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2116818, + "sd": 0, + "min": 2116818, + "median": 2116818, + "max": 2116818 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 17748, + "sd": 0, + "min": 17748, + "median": 17748, + "max": 17748 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 33367, + "sd": 0, + "min": 33367, + "median": 33367, + "max": 33367 + }, + "avg_js_us": { + "n": 7, + "mean": 2495, + "sd": 0, + "min": 2495, + "median": 2495, + "max": 2495 + }, + "avg_jobs_us": { + "n": 7, + "mean": 819, + "sd": 0, + "min": 819, + "median": 819, + "max": 819 + }, + "avg_tick_us": { + "n": 7, + "mean": 163, + "sd": 0, + "min": 163, + "median": 163, + "max": 163 + }, + "avg_draw_us": { + "n": 7, + "mean": 950, + "sd": 0, + "min": 950, + "median": 950, + "max": 950 + }, + "avg_render_us": { + "n": 7, + "mean": 178, + "sd": 0, + "min": 178, + "median": 178, + "max": 178 + }, + "avg_work_us": { + "n": 7, + "mean": 4607, + "sd": 0, + "min": 4607, + "median": 4607, + "max": 4607 + }, + "max_work_us": { + "n": 7, + "mean": 27641, + "sd": 0, + "min": 27641, + "median": 27641, + "max": 27641 + }, + "stack_free_bytes": { + "n": 7, + "mean": 661980, + "sd": 0, + "min": 661980, + "median": 661980, + "max": 661980 + }, + "host_wall_ms": { + "n": 7, + "mean": 425.09527385714307, + "sd": 4.382160131700277, + "min": 420.9571249999999, + "median": 423.08549999999923, + "max": 431.6047920000001 + }, + "bundle_bytes": { + "n": 7, + "mean": 259729, + "sd": 0, + "min": 259729, + "median": 259729, + "max": 259729 + }, + "pak_bytes": { + "n": 7, + "mean": 461488, + "sd": 0, + "min": 461488, + "median": 461488, + "max": 461488 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17637120, + "sd": 0, + "min": 17637120, + "median": 17637120, + "max": 17637120 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 4876112, + "sd": 0, + "min": 4876112, + "median": 4876112, + "max": 4876112 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 12761008, + "sd": 0, + "min": 12761008, + "median": 12761008, + "max": 12761008 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19734272, + "sd": 0, + "min": 19734272, + "median": 19734272, + "max": 19734272 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 1764658, + "sd": 0, + "min": 1764658, + "median": 1764658, + "max": 1764658 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2133510, + "sd": 0, + "min": 2133510, + "median": 2133510, + "max": 2133510 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 397560, + "sd": 0, + "min": 397560, + "median": 397560, + "max": 397560 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 750750, + "sd": 0, + "min": 750750, + "median": 750750, + "max": 750750 + }, + "avg_js_us": { + "n": 7, + "mean": 357793, + "sd": 0, + "min": 357793, + "median": 357793, + "max": 357793 + }, + "avg_jobs_us": { + "n": 7, + "mean": 28745, + "sd": 0, + "min": 28745, + "median": 28745, + "max": 28745 + }, + "avg_tick_us": { + "n": 7, + "mean": 178, + "sd": 0, + "min": 178, + "median": 178, + "max": 178 + }, + "avg_draw_us": { + "n": 7, + "mean": 931, + "sd": 0, + "min": 931, + "median": 931, + "max": 931 + }, + "avg_render_us": { + "n": 7, + "mean": 175, + "sd": 0, + "min": 175, + "median": 175, + "max": 175 + }, + "avg_work_us": { + "n": 7, + "mean": 387824, + "sd": 0, + "min": 387824, + "median": 387824, + "max": 387824 + }, + "max_work_us": { + "n": 7, + "mean": 747260, + "sd": 0, + "min": 747260, + "median": 747260, + "max": 747260 + }, + "stack_free_bytes": { + "n": 7, + "mean": 762476, + "sd": 0, + "min": 762476, + "median": 762476, + "max": 762476 + }, + "host_wall_ms": { + "n": 7, + "mean": 3322.6342677142843, + "sd": 11.725219591057593, + "min": 3305.3591659999984, + "median": 3324.78225, + "max": 3337.5706669999963 + }, + "bundle_bytes": { + "n": 7, + "mean": 318774, + "sd": 0, + "min": 318774, + "median": 318774, + "max": 318774 + }, + "pak_bytes": { + "n": 7, + "mean": 461488, + "sd": 0, + "min": 461488, + "median": 461488, + "max": 461488 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17578240, + "sd": 0, + "min": 17578240, + "median": 17578240, + "max": 17578240 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 14617328, + "sd": 0, + "min": 14617328, + "median": 14617328, + "max": 14617328 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 2960912, + "sd": 0, + "min": 2960912, + "median": 2960912, + "max": 2960912 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19675392, + "sd": 0, + "min": 19675392, + "median": 19675392, + "max": 19675392 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + }, + "cards": { + "solid": { + "eval_us": { + "n": 7, + "mean": 566823, + "sd": 0, + "min": 566823, + "median": 566823, + "max": 566823 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 861344, + "sd": 0, + "min": 861344, + "median": 861344, + "max": 861344 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 17951, + "sd": 0, + "min": 17951, + "median": 17951, + "max": 17951 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 66801, + "sd": 0, + "min": 66801, + "median": 66801, + "max": 66801 + }, + "avg_js_us": { + "n": 7, + "mean": 2207, + "sd": 0, + "min": 2207, + "median": 2207, + "max": 2207 + }, + "avg_jobs_us": { + "n": 7, + "mean": 1, + "sd": 0, + "min": 1, + "median": 1, + "max": 1 + }, + "avg_tick_us": { + "n": 7, + "mean": 192, + "sd": 0, + "min": 192, + "median": 192, + "max": 192 + }, + "avg_draw_us": { + "n": 7, + "mean": 2370, + "sd": 0, + "min": 2370, + "median": 2370, + "max": 2370 + }, + "avg_render_us": { + "n": 7, + "mean": 433, + "sd": 0, + "min": 433, + "median": 433, + "max": 433 + }, + "avg_work_us": { + "n": 7, + "mean": 5205, + "sd": 0, + "min": 5205, + "median": 5205, + "max": 5205 + }, + "max_work_us": { + "n": 7, + "mean": 55501, + "sd": 0, + "min": 55501, + "median": 55501, + "max": 55501 + }, + "stack_free_bytes": { + "n": 7, + "mean": 836628, + "sd": 0, + "min": 836628, + "median": 836628, + "max": 836628 + }, + "host_wall_ms": { + "n": 7, + "mean": 353.71783357142806, + "sd": 6.380113811007733, + "min": 345.4383749999979, + "median": 351.8329169999997, + "max": 362.5555000000022 + }, + "bundle_bytes": { + "n": 7, + "mean": 105978, + "sd": 0, + "min": 105978, + "median": 105978, + "max": 105978 + }, + "pak_bytes": { + "n": 7, + "mean": 152784, + "sd": 0, + "min": 152784, + "median": 152784, + "max": 152784 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 18099712, + "sd": 0, + "min": 18099712, + "median": 18099712, + "max": 18099712 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 2128480, + "sd": 0, + "min": 2128480, + "median": 2128480, + "max": 2128480 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 15971232, + "sd": 0, + "min": 15971232, + "median": 15971232, + "max": 15971232 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20196864, + "sd": 0, + "min": 20196864, + "median": 20196864, + "max": 20196864 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1727805, + "sd": 0, + "min": 1727805, + "median": 1727805, + "max": 1727805 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2045822, + "sd": 0, + "min": 2045822, + "median": 2045822, + "max": 2045822 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 18373, + "sd": 0, + "min": 18373, + "median": 18373, + "max": 18373 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 66801, + "sd": 0, + "min": 66801, + "median": 66801, + "max": 66801 + }, + "avg_js_us": { + "n": 7, + "mean": 1992, + "sd": 0, + "min": 1992, + "median": 1992, + "max": 1992 + }, + "avg_jobs_us": { + "n": 7, + "mean": 454, + "sd": 0, + "min": 454, + "median": 454, + "max": 454 + }, + "avg_tick_us": { + "n": 7, + "mean": 325, + "sd": 0, + "min": 325, + "median": 325, + "max": 325 + }, + "avg_draw_us": { + "n": 7, + "mean": 2457, + "sd": 0, + "min": 2457, + "median": 2457, + "max": 2457 + }, + "avg_render_us": { + "n": 7, + "mean": 433, + "sd": 0, + "min": 433, + "median": 433, + "max": 433 + }, + "avg_work_us": { + "n": 7, + "mean": 5664, + "sd": 0, + "min": 5664, + "median": 5664, + "max": 5664 + }, + "max_work_us": { + "n": 7, + "mean": 50014, + "sd": 0, + "min": 50014, + "median": 50014, + "max": 50014 + }, + "stack_free_bytes": { + "n": 7, + "mean": 707500, + "sd": 0, + "min": 707500, + "median": 707500, + "max": 707500 + }, + "host_wall_ms": { + "n": 7, + "mean": 461.6156068571446, + "sd": 4.753374557942866, + "min": 457.1437090000036, + "median": 459.51958300000115, + "max": 471.2749160000021 + }, + "bundle_bytes": { + "n": 7, + "mean": 260670, + "sd": 0, + "min": 260670, + "median": 260670, + "max": 260670 + }, + "pak_bytes": { + "n": 7, + "mean": 151248, + "sd": 0, + "min": 151248, + "median": 151248, + "max": 151248 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17946368, + "sd": 0, + "min": 17946368, + "median": 17946368, + "max": 17946368 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 3656544, + "sd": 0, + "min": 3656544, + "median": 3656544, + "max": 3656544 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 14289824, + "sd": 0, + "min": 14289824, + "median": 14289824, + "max": 14289824 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20043520, + "sd": 0, + "min": 20043520, + "median": 20043520, + "max": 20043520 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 1672506, + "sd": 0, + "min": 1672506, + "median": 1672506, + "max": 1672506 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 1979077, + "sd": 0, + "min": 1979077, + "median": 1979077, + "max": 1979077 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 22386, + "sd": 0, + "min": 22386, + "median": 22386, + "max": 22386 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 417151, + "sd": 0, + "min": 417151, + "median": 417151, + "max": 417151 + }, + "avg_js_us": { + "n": 7, + "mean": 6190, + "sd": 0, + "min": 6190, + "median": 6190, + "max": 6190 + }, + "avg_jobs_us": { + "n": 7, + "mean": 475, + "sd": 0, + "min": 475, + "median": 475, + "max": 475 + }, + "avg_tick_us": { + "n": 7, + "mean": 184, + "sd": 0, + "min": 184, + "median": 184, + "max": 184 + }, + "avg_draw_us": { + "n": 7, + "mean": 2379, + "sd": 0, + "min": 2379, + "median": 2379, + "max": 2379 + }, + "avg_render_us": { + "n": 7, + "mean": 433, + "sd": 0, + "min": 433, + "median": 433, + "max": 433 + }, + "avg_work_us": { + "n": 7, + "mean": 9663, + "sd": 0, + "min": 9663, + "median": 9663, + "max": 9663 + }, + "max_work_us": { + "n": 7, + "mean": 403328, + "sd": 0, + "min": 403328, + "median": 403328, + "max": 403328 + }, + "stack_free_bytes": { + "n": 7, + "mean": 755884, + "sd": 0, + "min": 755884, + "median": 755884, + "max": 755884 + }, + "host_wall_ms": { + "n": 7, + "mean": 470.7068867142828, + "sd": 5.974551917672183, + "min": 464.94070799999463, + "median": 468.2745419999992, + "max": 482.2867499999993 + }, + "bundle_bytes": { + "n": 7, + "mean": 318490, + "sd": 0, + "min": 318490, + "median": 318490, + "max": 318490 + }, + "pak_bytes": { + "n": 7, + "mean": 151232, + "sd": 0, + "min": 151232, + "median": 151232, + "max": 151232 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17888768, + "sd": 0, + "min": 17888768, + "median": 17888768, + "max": 17888768 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 4376160, + "sd": 0, + "min": 4376160, + "median": 4376160, + "max": 4376160 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 13512608, + "sd": 0, + "min": 13512608, + "median": 13512608, + "max": 13512608 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19985920, + "sd": 0, + "min": 19985920, + "median": 19985920, + "max": 19985920 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + }, + "stats": { + "solid": { + "eval_us": { + "n": 7, + "mean": 701978, + "sd": 0, + "min": 701978, + "median": 701978, + "max": 701978 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 1044203, + "sd": 0, + "min": 1044203, + "median": 1044203, + "max": 1044203 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 19715, + "sd": 0, + "min": 19715, + "median": 19715, + "max": 19715 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 116469, + "sd": 0, + "min": 116469, + "median": 116469, + "max": 116469 + }, + "avg_js_us": { + "n": 7, + "mean": 4818, + "sd": 0, + "min": 4818, + "median": 4818, + "max": 4818 + }, + "avg_jobs_us": { + "n": 7, + "mean": 1, + "sd": 0, + "min": 1, + "median": 1, + "max": 1 + }, + "avg_tick_us": { + "n": 7, + "mean": 512, + "sd": 0, + "min": 512, + "median": 512, + "max": 512 + }, + "avg_draw_us": { + "n": 7, + "mean": 2725, + "sd": 0, + "min": 2725, + "median": 2725, + "max": 2725 + }, + "avg_render_us": { + "n": 7, + "mean": 574, + "sd": 0, + "min": 574, + "median": 574, + "max": 574 + }, + "avg_work_us": { + "n": 7, + "mean": 8633, + "sd": 0, + "min": 8633, + "median": 8633, + "max": 8633 + }, + "max_work_us": { + "n": 7, + "mean": 107585, + "sd": 0, + "min": 107585, + "median": 107585, + "max": 107585 + }, + "stack_free_bytes": { + "n": 7, + "mean": 728612, + "sd": 0, + "min": 728612, + "median": 728612, + "max": 728612 + }, + "host_wall_ms": { + "n": 7, + "mean": 453.3976015714278, + "sd": 7.17314905362393, + "min": 444.0222089999952, + "median": 450.3887919999979, + "max": 463.49008299999696 + }, + "bundle_bytes": { + "n": 7, + "mean": 111003, + "sd": 0, + "min": 111003, + "median": 111003, + "max": 111003 + }, + "pak_bytes": { + "n": 7, + "mean": 143872, + "sd": 0, + "min": 143872, + "median": 143872, + "max": 143872 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 18103552, + "sd": 0, + "min": 18103552, + "median": 18103552, + "max": 18103552 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 2564768, + "sd": 0, + "min": 2564768, + "median": 2564768, + "max": 2564768 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 15538784, + "sd": 0, + "min": 15538784, + "median": 15538784, + "max": 15538784 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20200704, + "sd": 0, + "min": 20200704, + "median": 20200704, + "max": 20200704 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1968671, + "sd": 0, + "min": 1968671, + "median": 1968671, + "max": 1968671 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2328556, + "sd": 0, + "min": 2328556, + "median": 2328556, + "max": 2328556 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 21400, + "sd": 0, + "min": 21400, + "median": 21400, + "max": 21400 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 199887, + "sd": 0, + "min": 199887, + "median": 199887, + "max": 199887 + }, + "avg_js_us": { + "n": 7, + "mean": 3544, + "sd": 0, + "min": 3544, + "median": 3544, + "max": 3544 + }, + "avg_jobs_us": { + "n": 7, + "mean": 3313, + "sd": 0, + "min": 3313, + "median": 3313, + "max": 3313 + }, + "avg_tick_us": { + "n": 7, + "mean": 725, + "sd": 0, + "min": 725, + "median": 725, + "max": 725 + }, + "avg_draw_us": { + "n": 7, + "mean": 2920, + "sd": 0, + "min": 2920, + "median": 2920, + "max": 2920 + }, + "avg_render_us": { + "n": 7, + "mean": 574, + "sd": 0, + "min": 574, + "median": 574, + "max": 574 + }, + "avg_work_us": { + "n": 7, + "mean": 11078, + "sd": 0, + "min": 11078, + "median": 11078, + "max": 11078 + }, + "max_work_us": { + "n": 7, + "mean": 191784, + "sd": 0, + "min": 191784, + "median": 191784, + "max": 191784 + }, + "stack_free_bytes": { + "n": 7, + "mean": 547092, + "sd": 0, + "min": 547092, + "median": 547092, + "max": 547092 + }, + "host_wall_ms": { + "n": 7, + "mean": 596.4421370000002, + "sd": 9.501078417915673, + "min": 586.7244999999966, + "median": 590.7514169999995, + "max": 609.8658329999962 + }, + "bundle_bytes": { + "n": 7, + "mean": 265522, + "sd": 0, + "min": 265522, + "median": 265522, + "max": 265522 + }, + "pak_bytes": { + "n": 7, + "mean": 143888, + "sd": 0, + "min": 143888, + "median": 143888, + "max": 143888 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17948928, + "sd": 0, + "min": 17948928, + "median": 17948928, + "max": 17948928 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 4694144, + "sd": 0, + "min": 4694144, + "median": 4694144, + "max": 4694144 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 13254784, + "sd": 0, + "min": 13254784, + "median": 13254784, + "max": 13254784 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20046080, + "sd": 0, + "min": 20046080, + "median": 20046080, + "max": 20046080 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 2158258, + "sd": 0, + "min": 2158258, + "median": 2158258, + "max": 2158258 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2528828, + "sd": 0, + "min": 2528828, + "median": 2528828, + "max": 2528828 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 292883, + "sd": 0, + "min": 292883, + "median": 292883, + "max": 292883 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 1217883, + "sd": 0, + "min": 1217883, + "median": 1217883, + "max": 1217883 + }, + "avg_js_us": { + "n": 7, + "mean": 254147, + "sd": 0, + "min": 254147, + "median": 254147, + "max": 254147 + }, + "avg_jobs_us": { + "n": 7, + "mean": 21937, + "sd": 0, + "min": 21937, + "median": 21937, + "max": 21937 + }, + "avg_tick_us": { + "n": 7, + "mean": 508, + "sd": 0, + "min": 508, + "median": 508, + "max": 508 + }, + "avg_draw_us": { + "n": 7, + "mean": 2748, + "sd": 0, + "min": 2748, + "median": 2748, + "max": 2748 + }, + "avg_render_us": { + "n": 7, + "mean": 572, + "sd": 0, + "min": 572, + "median": 572, + "max": 572 + }, + "avg_work_us": { + "n": 7, + "mean": 279914, + "sd": 0, + "min": 279914, + "median": 279914, + "max": 279914 + }, + "max_work_us": { + "n": 7, + "mean": 1214654, + "sd": 0, + "min": 1214654, + "median": 1214654, + "max": 1214654 + }, + "stack_free_bytes": { + "n": 7, + "mean": 700180, + "sd": 0, + "min": 700180, + "median": 700180, + "max": 700180 + }, + "host_wall_ms": { + "n": 7, + "mean": 2854.2508391428564, + "sd": 11.325750566605763, + "min": 2834.2104580000014, + "median": 2855.669332999998, + "max": 2866.069499999998 + }, + "bundle_bytes": { + "n": 7, + "mean": 327255, + "sd": 0, + "min": 327255, + "median": 327255, + "max": 327255 + }, + "pak_bytes": { + "n": 7, + "mean": 143872, + "sd": 0, + "min": 143872, + "median": 143872, + "max": 143872 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17887232, + "sd": 0, + "min": 17887232, + "median": 17887232, + "max": 17887232 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 17686176, + "sd": 0, + "min": 17686176, + "median": 17686176, + "max": 17686176 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 201056, + "sd": 0, + "min": 201056, + "median": 201056, + "max": 201056 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19984384, + "sd": 0, + "min": 19984384, + "median": 19984384, + "max": 19984384 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + }, + "library": { + "solid": { + "eval_us": { + "n": 7, + "mean": 600022, + "sd": 0, + "min": 600022, + "median": 600022, + "max": 600022 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 910618, + "sd": 0, + "min": 910618, + "median": 910618, + "max": 910618 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 18504, + "sd": 0, + "min": 18504, + "median": 18504, + "max": 18504 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 105694, + "sd": 0, + "min": 105694, + "median": 105694, + "max": 105694 + }, + "avg_js_us": { + "n": 7, + "mean": 2989, + "sd": 0, + "min": 2989, + "median": 2989, + "max": 2989 + }, + "avg_jobs_us": { + "n": 7, + "mean": 205, + "sd": 0, + "min": 205, + "median": 205, + "max": 205 + }, + "avg_tick_us": { + "n": 7, + "mean": 183, + "sd": 0, + "min": 183, + "median": 183, + "max": 183 + }, + "avg_draw_us": { + "n": 7, + "mean": 983, + "sd": 0, + "min": 983, + "median": 983, + "max": 983 + }, + "avg_render_us": { + "n": 7, + "mean": 244, + "sd": 0, + "min": 244, + "median": 244, + "max": 244 + }, + "avg_work_us": { + "n": 7, + "mean": 4606, + "sd": 0, + "min": 4606, + "median": 4606, + "max": 4606 + }, + "max_work_us": { + "n": 7, + "mean": 103562, + "sd": 0, + "min": 103562, + "median": 103562, + "max": 103562 + }, + "stack_free_bytes": { + "n": 7, + "mean": 737348, + "sd": 0, + "min": 737348, + "median": 737348, + "max": 737348 + }, + "host_wall_ms": { + "n": 7, + "mean": 340.96889900000366, + "sd": 7.446491920209099, + "min": 330.9646250000078, + "median": 344.21170900001016, + "max": 350.1238750000048 + }, + "bundle_bytes": { + "n": 7, + "mean": 110722, + "sd": 0, + "min": 110722, + "median": 110722, + "max": 110722 + }, + "pak_bytes": { + "n": 7, + "mean": 361424, + "sd": 0, + "min": 361424, + "median": 361424, + "max": 361424 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17886208, + "sd": 0, + "min": 17886208, + "median": 17886208, + "max": 17886208 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 2763168, + "sd": 0, + "min": 2763168, + "median": 2763168, + "max": 2763168 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 15123040, + "sd": 0, + "min": 15123040, + "median": 15123040, + "max": 15123040 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19983360, + "sd": 0, + "min": 19983360, + "median": 19983360, + "max": 19983360 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1805153, + "sd": 0, + "min": 1805153, + "median": 1805153, + "max": 1805153 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2145545, + "sd": 0, + "min": 2145545, + "median": 2145545, + "max": 2145545 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 19485, + "sd": 0, + "min": 19485, + "median": 19485, + "max": 19485 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 155730, + "sd": 0, + "min": 155730, + "median": 155730, + "max": 155730 + }, + "avg_js_us": { + "n": 7, + "mean": 2195, + "sd": 0, + "min": 2195, + "median": 2195, + "max": 2195 + }, + "avg_jobs_us": { + "n": 7, + "mean": 2165, + "sd": 0, + "min": 2165, + "median": 2165, + "max": 2165 + }, + "avg_tick_us": { + "n": 7, + "mean": 299, + "sd": 0, + "min": 299, + "median": 299, + "max": 299 + }, + "avg_draw_us": { + "n": 7, + "mean": 1146, + "sd": 0, + "min": 1146, + "median": 1146, + "max": 1146 + }, + "avg_render_us": { + "n": 7, + "mean": 244, + "sd": 0, + "min": 244, + "median": 244, + "max": 244 + }, + "avg_work_us": { + "n": 7, + "mean": 6051, + "sd": 0, + "min": 6051, + "median": 6051, + "max": 6051 + }, + "max_work_us": { + "n": 7, + "mean": 149259, + "sd": 0, + "min": 149259, + "median": 149259, + "max": 149259 + }, + "stack_free_bytes": { + "n": 7, + "mean": 568260, + "sd": 0, + "min": 568260, + "median": 568260, + "max": 568260 + }, + "host_wall_ms": { + "n": 7, + "mean": 462.2983334285714, + "sd": 10.470085888443526, + "min": 452.2586670000019, + "median": 456.640167000005, + "max": 478.1056249999965 + }, + "bundle_bytes": { + "n": 7, + "mean": 266244, + "sd": 0, + "min": 266244, + "median": 266244, + "max": 266244 + }, + "pak_bytes": { + "n": 7, + "mean": 359296, + "sd": 0, + "min": 359296, + "median": 359296, + "max": 359296 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17732864, + "sd": 0, + "min": 17732864, + "median": 17732864, + "max": 17732864 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 4769328, + "sd": 0, + "min": 4769328, + "median": 4769328, + "max": 4769328 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 12963536, + "sd": 0, + "min": 12963536, + "median": 12963536, + "max": 12963536 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19830016, + "sd": 0, + "min": 19830016, + "median": 19830016, + "max": 19830016 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 1761956, + "sd": 0, + "min": 1761956, + "median": 1761956, + "max": 1761956 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2094800, + "sd": 0, + "min": 2094800, + "median": 2094800, + "max": 2094800 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 63927, + "sd": 0, + "min": 63927, + "median": 63927, + "max": 63927 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 355930, + "sd": 0, + "min": 355930, + "median": 355930, + "max": 355930 + }, + "avg_js_us": { + "n": 7, + "mean": 45119, + "sd": 0, + "min": 45119, + "median": 45119, + "max": 45119 + }, + "avg_jobs_us": { + "n": 7, + "mean": 4205, + "sd": 0, + "min": 4205, + "median": 4205, + "max": 4205 + }, + "avg_tick_us": { + "n": 7, + "mean": 186, + "sd": 0, + "min": 186, + "median": 186, + "max": 186 + }, + "avg_draw_us": { + "n": 7, + "mean": 1002, + "sd": 0, + "min": 1002, + "median": 1002, + "max": 1002 + }, + "avg_render_us": { + "n": 7, + "mean": 244, + "sd": 0, + "min": 244, + "median": 244, + "max": 244 + }, + "avg_work_us": { + "n": 7, + "mean": 50758, + "sd": 0, + "min": 50758, + "median": 50758, + "max": 50758 + }, + "max_work_us": { + "n": 7, + "mean": 343449, + "sd": 0, + "min": 343449, + "median": 343449, + "max": 343449 + }, + "stack_free_bytes": { + "n": 7, + "mean": 678252, + "sd": 0, + "min": 678252, + "median": 678252, + "max": 678252 + }, + "host_wall_ms": { + "n": 7, + "mean": 877.4475477142884, + "sd": 5.401154937607926, + "min": 870.6787079999922, + "median": 878.2675000000017, + "max": 884.8607500000071 + }, + "bundle_bytes": { + "n": 7, + "mean": 326570, + "sd": 0, + "min": 326570, + "median": 326570, + "max": 326570 + }, + "pak_bytes": { + "n": 7, + "mean": 359280, + "sd": 0, + "min": 359280, + "median": 359280, + "max": 359280 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17672448, + "sd": 0, + "min": 17672448, + "median": 17672448, + "max": 17672448 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 7413152, + "sd": 0, + "min": 7413152, + "median": 7413152, + "max": 7413152 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 10259296, + "sd": 0, + "min": 10259296, + "median": 10259296, + "max": 10259296 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19769600, + "sd": 0, + "min": 19769600, + "median": 19769600, + "max": 19769600 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + }, + "settings": { + "solid": { + "eval_us": { + "n": 7, + "mean": 671193, + "sd": 0, + "min": 671193, + "median": 671193, + "max": 671193 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 977857, + "sd": 0, + "min": 977857, + "median": 977857, + "max": 977857 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 19029, + "sd": 0, + "min": 19029, + "median": 19029, + "max": 19029 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 83673, + "sd": 0, + "min": 83673, + "median": 83673, + "max": 83673 + }, + "avg_js_us": { + "n": 7, + "mean": 2777, + "sd": 0, + "min": 2777, + "median": 2777, + "max": 2777 + }, + "avg_jobs_us": { + "n": 7, + "mean": 360, + "sd": 0, + "min": 360, + "median": 360, + "max": 360 + }, + "avg_tick_us": { + "n": 7, + "mean": 522, + "sd": 0, + "min": 522, + "median": 522, + "max": 522 + }, + "avg_draw_us": { + "n": 7, + "mean": 3208, + "sd": 0, + "min": 3208, + "median": 3208, + "max": 3208 + }, + "avg_render_us": { + "n": 7, + "mean": 838, + "sd": 0, + "min": 838, + "median": 838, + "max": 838 + }, + "avg_work_us": { + "n": 7, + "mean": 7708, + "sd": 0, + "min": 7708, + "median": 7708, + "max": 7708 + }, + "max_work_us": { + "n": 7, + "mean": 83022, + "sd": 0, + "min": 83022, + "median": 83022, + "max": 83022 + }, + "stack_free_bytes": { + "n": 7, + "mean": 728724, + "sd": 0, + "min": 728724, + "median": 728724, + "max": 728724 + }, + "host_wall_ms": { + "n": 7, + "mean": 345.8052082857134, + "sd": 6.066182349345637, + "min": 340.67804099999194, + "median": 343.68504199999734, + "max": 357.8495410000032 + }, + "bundle_bytes": { + "n": 7, + "mean": 119661, + "sd": 0, + "min": 119661, + "median": 119661, + "max": 119661 + }, + "pak_bytes": { + "n": 7, + "mean": 153632, + "sd": 0, + "min": 153632, + "median": 153632, + "max": 153632 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 18084864, + "sd": 0, + "min": 18084864, + "median": 18084864, + "max": 18084864 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 2323264, + "sd": 0, + "min": 2323264, + "median": 2323264, + "max": 2323264 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 15761600, + "sd": 0, + "min": 15761600, + "median": 15761600, + "max": 15761600 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20182016, + "sd": 0, + "min": 20182016, + "median": 20182016, + "max": 20182016 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1891076, + "sd": 0, + "min": 1891076, + "median": 1891076, + "max": 1891076 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2228794, + "sd": 0, + "min": 2228794, + "median": 2228794, + "max": 2228794 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 19683, + "sd": 0, + "min": 19683, + "median": 19683, + "max": 19683 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 114799, + "sd": 0, + "min": 114799, + "median": 114799, + "max": 114799 + }, + "avg_js_us": { + "n": 7, + "mean": 2613, + "sd": 0, + "min": 2613, + "median": 2613, + "max": 2613 + }, + "avg_jobs_us": { + "n": 7, + "mean": 1380, + "sd": 0, + "min": 1380, + "median": 1380, + "max": 1380 + }, + "avg_tick_us": { + "n": 7, + "mean": 552, + "sd": 0, + "min": 552, + "median": 552, + "max": 552 + }, + "avg_draw_us": { + "n": 7, + "mean": 3402, + "sd": 0, + "min": 3402, + "median": 3402, + "max": 3402 + }, + "avg_render_us": { + "n": 7, + "mean": 835, + "sd": 0, + "min": 835, + "median": 835, + "max": 835 + }, + "avg_work_us": { + "n": 7, + "mean": 8784, + "sd": 0, + "min": 8784, + "median": 8784, + "max": 8784 + }, + "max_work_us": { + "n": 7, + "mean": 103329, + "sd": 0, + "min": 103329, + "median": 103329, + "max": 103329 + }, + "stack_free_bytes": { + "n": 7, + "mean": 564772, + "sd": 0, + "min": 564772, + "median": 564772, + "max": 564772 + }, + "host_wall_ms": { + "n": 7, + "mean": 454.33942842857294, + "sd": 5.051022200845952, + "min": 448.2034580000036, + "median": 454.91466599999694, + "max": 463.8571660000016 + }, + "bundle_bytes": { + "n": 7, + "mean": 273734, + "sd": 0, + "min": 273734, + "median": 273734, + "max": 273734 + }, + "pak_bytes": { + "n": 7, + "mean": 152128, + "sd": 0, + "min": 152128, + "median": 152128, + "max": 152128 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17932288, + "sd": 0, + "min": 17932288, + "median": 17932288, + "max": 17932288 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 4377568, + "sd": 0, + "min": 4377568, + "median": 4377568, + "max": 4377568 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 13554720, + "sd": 0, + "min": 13554720, + "median": 13554720, + "max": 13554720 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20029440, + "sd": 0, + "min": 20029440, + "median": 20029440, + "max": 20029440 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 1886720, + "sd": 0, + "min": 1886720, + "median": 1886720, + "max": 1886720 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2228794, + "sd": 0, + "min": 2228794, + "median": 2228794, + "max": 2228794 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 38939, + "sd": 0, + "min": 38939, + "median": 38939, + "max": 38939 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 567238, + "sd": 0, + "min": 567238, + "median": 567238, + "max": 567238 + }, + "avg_js_us": { + "n": 7, + "mean": 20707, + "sd": 0, + "min": 20707, + "median": 20707, + "max": 20707 + }, + "avg_jobs_us": { + "n": 7, + "mean": 2255, + "sd": 0, + "min": 2255, + "median": 2255, + "max": 2255 + }, + "avg_tick_us": { + "n": 7, + "mean": 433, + "sd": 0, + "min": 433, + "median": 433, + "max": 433 + }, + "avg_draw_us": { + "n": 7, + "mean": 3208, + "sd": 0, + "min": 3208, + "median": 3208, + "max": 3208 + }, + "avg_render_us": { + "n": 7, + "mean": 835, + "sd": 0, + "min": 835, + "median": 835, + "max": 835 + }, + "avg_work_us": { + "n": 7, + "mean": 27440, + "sd": 0, + "min": 27440, + "median": 27440, + "max": 27440 + }, + "max_work_us": { + "n": 7, + "mean": 554901, + "sd": 0, + "min": 554901, + "median": 554901, + "max": 554901 + }, + "stack_free_bytes": { + "n": 7, + "mean": 711556, + "sd": 0, + "min": 711556, + "median": 711556, + "max": 711556 + }, + "host_wall_ms": { + "n": 7, + "mean": 591.5574882857139, + "sd": 15.087722304960081, + "min": 578.5615410000028, + "median": 589.0874999999942, + "max": 624.0105420000036 + }, + "bundle_bytes": { + "n": 7, + "mean": 333443, + "sd": 0, + "min": 333443, + "median": 333443, + "max": 333443 + }, + "pak_bytes": { + "n": 7, + "mean": 152112, + "sd": 0, + "min": 152112, + "median": 152112, + "max": 152112 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17872640, + "sd": 0, + "min": 17872640, + "median": 17872640, + "max": 17872640 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 6263600, + "sd": 0, + "min": 6263600, + "median": 6263600, + "max": 6263600 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 11609040, + "sd": 0, + "min": 11609040, + "median": 11609040, + "max": 11609040 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19969792, + "sd": 0, + "min": 19969792, + "median": 19969792, + "max": 19969792 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + }, + "notifications": { + "solid": { + "eval_us": { + "n": 7, + "mean": 642845, + "sd": 0, + "min": 642845, + "median": 642845, + "max": 642845 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 960853, + "sd": 0, + "min": 960853, + "median": 960853, + "max": 960853 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 19424, + "sd": 0, + "min": 19424, + "median": 19424, + "max": 19424 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 93673, + "sd": 0, + "min": 93673, + "median": 93673, + "max": 93673 + }, + "avg_js_us": { + "n": 7, + "mean": 2706, + "sd": 0, + "min": 2706, + "median": 2706, + "max": 2706 + }, + "avg_jobs_us": { + "n": 7, + "mean": 596, + "sd": 0, + "min": 596, + "median": 596, + "max": 596 + }, + "avg_tick_us": { + "n": 7, + "mean": 516, + "sd": 0, + "min": 516, + "median": 516, + "max": 516 + }, + "avg_draw_us": { + "n": 7, + "mean": 1186, + "sd": 0, + "min": 1186, + "median": 1186, + "max": 1186 + }, + "avg_render_us": { + "n": 7, + "mean": 543, + "sd": 0, + "min": 543, + "median": 543, + "max": 543 + }, + "avg_work_us": { + "n": 7, + "mean": 5549, + "sd": 0, + "min": 5549, + "median": 5549, + "max": 5549 + }, + "max_work_us": { + "n": 7, + "mean": 80911, + "sd": 0, + "min": 80911, + "median": 80911, + "max": 80911 + }, + "stack_free_bytes": { + "n": 7, + "mean": 729476, + "sd": 0, + "min": 729476, + "median": 729476, + "max": 729476 + }, + "host_wall_ms": { + "n": 7, + "mean": 306.995904714289, + "sd": 5.0891009128219515, + "min": 297.94604199999594, + "median": 307.3480000000127, + "max": 313.52925000000687 + }, + "bundle_bytes": { + "n": 7, + "mean": 110116, + "sd": 0, + "min": 110116, + "median": 110116, + "max": 110116 + }, + "pak_bytes": { + "n": 7, + "mean": 170688, + "sd": 0, + "min": 170688, + "median": 170688, + "max": 170688 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 18077440, + "sd": 0, + "min": 18077440, + "median": 18077440, + "max": 18077440 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 2318688, + "sd": 0, + "min": 2318688, + "median": 2318688, + "max": 2318688 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 15758752, + "sd": 0, + "min": 15758752, + "median": 15758752, + "max": 15758752 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20174592, + "sd": 0, + "min": 20174592, + "median": 20174592, + "max": 20174592 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1834713, + "sd": 0, + "min": 1834713, + "median": 1834713, + "max": 1834713 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2161346, + "sd": 0, + "min": 2161346, + "median": 2161346, + "max": 2161346 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 22439, + "sd": 0, + "min": 22439, + "median": 22439, + "max": 22439 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 200069, + "sd": 0, + "min": 200069, + "median": 200069, + "max": 200069 + }, + "avg_js_us": { + "n": 7, + "mean": 2793, + "sd": 0, + "min": 2793, + "median": 2793, + "max": 2793 + }, + "avg_jobs_us": { + "n": 7, + "mean": 3767, + "sd": 0, + "min": 3767, + "median": 3767, + "max": 3767 + }, + "avg_tick_us": { + "n": 7, + "mean": 703, + "sd": 0, + "min": 703, + "median": 703, + "max": 703 + }, + "avg_draw_us": { + "n": 7, + "mean": 1255, + "sd": 0, + "min": 1255, + "median": 1255, + "max": 1255 + }, + "avg_render_us": { + "n": 7, + "mean": 520, + "sd": 0, + "min": 520, + "median": 520, + "max": 520 + }, + "avg_work_us": { + "n": 7, + "mean": 9040, + "sd": 0, + "min": 9040, + "median": 9040, + "max": 9040 + }, + "max_work_us": { + "n": 7, + "mean": 189299, + "sd": 0, + "min": 189299, + "median": 189299, + "max": 189299 + }, + "stack_free_bytes": { + "n": 7, + "mean": 606476, + "sd": 0, + "min": 606476, + "median": 606476, + "max": 606476 + }, + "host_wall_ms": { + "n": 7, + "mean": 428.0823392857128, + "sd": 6.028325478823332, + "min": 418.42120799999975, + "median": 429.03020800001104, + "max": 438.11004200000025 + }, + "bundle_bytes": { + "n": 7, + "mean": 260743, + "sd": 0, + "min": 260743, + "median": 260743, + "max": 260743 + }, + "pak_bytes": { + "n": 7, + "mean": 168960, + "sd": 0, + "min": 168960, + "median": 168960, + "max": 168960 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17928704, + "sd": 0, + "min": 17928704, + "median": 17928704, + "max": 17928704 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 3874672, + "sd": 0, + "min": 3874672, + "median": 3874672, + "max": 3874672 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 14054032, + "sd": 0, + "min": 14054032, + "median": 14054032, + "max": 14054032 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20025856, + "sd": 0, + "min": 20025856, + "median": 20025856, + "max": 20025856 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 1894267, + "sd": 0, + "min": 1894267, + "median": 1894267, + "max": 1894267 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2228104, + "sd": 0, + "min": 2228104, + "median": 2228104, + "max": 2228104 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 285835, + "sd": 0, + "min": 285835, + "median": 285835, + "max": 285835 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 784117, + "sd": 0, + "min": 784117, + "median": 784117, + "max": 784117 + }, + "avg_js_us": { + "n": 7, + "mean": 247511, + "sd": 0, + "min": 247511, + "median": 247511, + "max": 247511 + }, + "avg_jobs_us": { + "n": 7, + "mean": 21503, + "sd": 0, + "min": 21503, + "median": 21503, + "max": 21503 + }, + "avg_tick_us": { + "n": 7, + "mean": 502, + "sd": 0, + "min": 502, + "median": 502, + "max": 502 + }, + "avg_draw_us": { + "n": 7, + "mean": 1173, + "sd": 0, + "min": 1173, + "median": 1173, + "max": 1173 + }, + "avg_render_us": { + "n": 7, + "mean": 520, + "sd": 0, + "min": 520, + "median": 520, + "max": 520 + }, + "avg_work_us": { + "n": 7, + "mean": 271212, + "sd": 0, + "min": 271212, + "median": 271212, + "max": 271212 + }, + "max_work_us": { + "n": 7, + "mean": 771845, + "sd": 0, + "min": 771845, + "median": 771845, + "max": 771845 + }, + "stack_free_bytes": { + "n": 7, + "mean": 713204, + "sd": 0, + "min": 713204, + "median": 713204, + "max": 713204 + }, + "host_wall_ms": { + "n": 7, + "mean": 1734.1538689999975, + "sd": 8.000908792813588, + "min": 1724.5301659999968, + "median": 1732.5702499999898, + "max": 1747.4570839999942 + }, + "bundle_bytes": { + "n": 7, + "mean": 318619, + "sd": 0, + "min": 318619, + "median": 318619, + "max": 318619 + }, + "pak_bytes": { + "n": 7, + "mean": 168960, + "sd": 0, + "min": 168960, + "median": 168960, + "max": 168960 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17870848, + "sd": 0, + "min": 17870848, + "median": 17870848, + "max": 17870848 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 11701536, + "sd": 0, + "min": 11701536, + "median": 11701536, + "max": 11701536 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 6169312, + "sd": 0, + "min": 6169312, + "median": 6169312, + "max": 6169312 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19968000, + "sd": 0, + "min": 19968000, + "median": 19968000, + "max": 19968000 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + }, + "music": { + "solid": { + "eval_us": { + "n": 7, + "mean": 601273, + "sd": 0, + "min": 601273, + "median": 601273, + "max": 601273 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 911290, + "sd": 0, + "min": 911290, + "median": 911290, + "max": 911290 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 23621, + "sd": 0, + "min": 23621, + "median": 23621, + "max": 23621 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 86978, + "sd": 0, + "min": 86978, + "median": 86978, + "max": 86978 + }, + "avg_js_us": { + "n": 7, + "mean": 5604, + "sd": 0, + "min": 5604, + "median": 5604, + "max": 5604 + }, + "avg_jobs_us": { + "n": 7, + "mean": 390, + "sd": 0, + "min": 390, + "median": 390, + "max": 390 + }, + "avg_tick_us": { + "n": 7, + "mean": 4508, + "sd": 0, + "min": 4508, + "median": 4508, + "max": 4508 + }, + "avg_draw_us": { + "n": 7, + "mean": 1953, + "sd": 0, + "min": 1953, + "median": 1953, + "max": 1953 + }, + "avg_render_us": { + "n": 7, + "mean": 580, + "sd": 0, + "min": 580, + "median": 580, + "max": 580 + }, + "avg_work_us": { + "n": 7, + "mean": 13037, + "sd": 0, + "min": 13037, + "median": 13037, + "max": 13037 + }, + "max_work_us": { + "n": 7, + "mean": 84824, + "sd": 0, + "min": 84824, + "median": 84824, + "max": 84824 + }, + "stack_free_bytes": { + "n": 7, + "mean": 773260, + "sd": 0, + "min": 773260, + "median": 773260, + "max": 773260 + }, + "host_wall_ms": { + "n": 7, + "mean": 364.61433300000084, + "sd": 4.247011148999205, + "min": 360.70933300000615, + "median": 363.4749160000065, + "max": 373.8429579999938 + }, + "bundle_bytes": { + "n": 7, + "mean": 103566, + "sd": 0, + "min": 103566, + "median": 103566, + "max": 103566 + }, + "pak_bytes": { + "n": 7, + "mean": 159648, + "sd": 0, + "min": 159648, + "median": 159648, + "max": 159648 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 18095104, + "sd": 0, + "min": 18095104, + "median": 18095104, + "max": 18095104 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 2361680, + "sd": 0, + "min": 2361680, + "median": 2361680, + "max": 2361680 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 15733424, + "sd": 0, + "min": 15733424, + "median": 15733424, + "max": 15733424 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20192256, + "sd": 0, + "min": 20192256, + "median": 20192256, + "max": 20192256 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "vue-vapor": { + "eval_us": { + "n": 7, + "mean": 1815607, + "sd": 0, + "min": 1815607, + "median": 1815607, + "max": 1815607 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2162224, + "sd": 0, + "min": 2162224, + "median": 2162224, + "max": 2162224 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 23305, + "sd": 0, + "min": 23305, + "median": 23305, + "max": 23305 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 123669, + "sd": 0, + "min": 123669, + "median": 123669, + "max": 123669 + }, + "avg_js_us": { + "n": 7, + "mean": 3432, + "sd": 0, + "min": 3432, + "median": 3432, + "max": 3432 + }, + "avg_jobs_us": { + "n": 7, + "mean": 7314, + "sd": 0, + "min": 7314, + "median": 7314, + "max": 7314 + }, + "avg_tick_us": { + "n": 7, + "mean": 2610, + "sd": 0, + "min": 2610, + "median": 2610, + "max": 2610 + }, + "avg_draw_us": { + "n": 7, + "mean": 2182, + "sd": 0, + "min": 2182, + "median": 2182, + "max": 2182 + }, + "avg_render_us": { + "n": 7, + "mean": 577, + "sd": 0, + "min": 577, + "median": 577, + "max": 577 + }, + "avg_work_us": { + "n": 7, + "mean": 16117, + "sd": 0, + "min": 16117, + "median": 16117, + "max": 16117 + }, + "max_work_us": { + "n": 7, + "mean": 111336, + "sd": 0, + "min": 111336, + "median": 111336, + "max": 111336 + }, + "stack_free_bytes": { + "n": 7, + "mean": 653876, + "sd": 0, + "min": 653876, + "median": 653876, + "max": 653876 + }, + "host_wall_ms": { + "n": 7, + "mean": 515.5832915714293, + "sd": 6.607692429560528, + "min": 506.18612500000745, + "median": 516.8422500000161, + "max": 526.3460839999898 + }, + "bundle_bytes": { + "n": 7, + "mean": 261593, + "sd": 0, + "min": 261593, + "median": 261593, + "max": 261593 + }, + "pak_bytes": { + "n": 7, + "mean": 158048, + "sd": 0, + "min": 158048, + "median": 158048, + "max": 158048 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17938688, + "sd": 0, + "min": 17938688, + "median": 17938688, + "max": 17938688 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 3814784, + "sd": 0, + "min": 3814784, + "median": 3814784, + "max": 3814784 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 14123904, + "sd": 0, + "min": 14123904, + "median": 14123904, + "max": 14123904 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 20035840, + "sd": 0, + "min": 20035840, + "median": 20035840, + "max": 20035840 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + }, + "octane": { + "eval_us": { + "n": 7, + "mean": 1816520, + "sd": 0, + "min": 1816520, + "median": 1816520, + "max": 1816520 + }, + "boot_to_frame0_us": { + "n": 7, + "mean": 2146209, + "sd": 0, + "min": 2146209, + "median": 2146209, + "max": 2146209 + }, + "avg_frame_interval_us": { + "n": 7, + "mean": 292181, + "sd": 0, + "min": 292181, + "median": 292181, + "max": 292181 + }, + "max_frame_interval_us": { + "n": 7, + "mean": 717384, + "sd": 0, + "min": 717384, + "median": 717384, + "max": 717384 + }, + "avg_js_us": { + "n": 7, + "mean": 258133, + "sd": 0, + "min": 258133, + "median": 258133, + "max": 258133 + }, + "avg_jobs_us": { + "n": 7, + "mean": 19576, + "sd": 0, + "min": 19576, + "median": 19576, + "max": 19576 + }, + "avg_tick_us": { + "n": 7, + "mean": 2446, + "sd": 0, + "min": 2446, + "median": 2446, + "max": 2446 + }, + "avg_draw_us": { + "n": 7, + "mean": 1972, + "sd": 0, + "min": 1972, + "median": 1972, + "max": 1972 + }, + "avg_render_us": { + "n": 7, + "mean": 584, + "sd": 0, + "min": 584, + "median": 584, + "max": 584 + }, + "avg_work_us": { + "n": 7, + "mean": 282713, + "sd": 0, + "min": 282713, + "median": 282713, + "max": 282713 + }, + "max_work_us": { + "n": 7, + "mean": 705206, + "sd": 0, + "min": 705206, + "median": 705206, + "max": 705206 + }, + "stack_free_bytes": { + "n": 7, + "mean": 731604, + "sd": 0, + "min": 731604, + "median": 731604, + "max": 731604 + }, + "host_wall_ms": { + "n": 7, + "mean": 2509.168946428582, + "sd": 10.677191412545065, + "min": 2495.5307090000133, + "median": 2509.732458000013, + "max": 2526.2278750000114 + }, + "bundle_bytes": { + "n": 7, + "mean": 321002, + "sd": 0, + "min": 321002, + "median": 321002, + "max": 321002 + }, + "pak_bytes": { + "n": 7, + "mean": 158032, + "sd": 0, + "min": 158032, + "median": 158032, + "max": 158032 + }, + "arena_capacity_bytes": { + "n": 7, + "mean": 17879296, + "sd": 0, + "min": 17879296, + "median": 17879296, + "max": 17879296 + }, + "arena_bump_bytes": { + "n": 7, + "mean": 12289312, + "sd": 0, + "min": 12289312, + "median": 12289312, + "max": 12289312 + }, + "arena_tail_free_bytes": { + "n": 7, + "mean": 5589984, + "sd": 0, + "min": 5589984, + "median": 5589984, + "max": 5589984 + }, + "arena_init_free_bytes": { + "n": 7, + "mean": 19976448, + "sd": 0, + "min": 19976448, + "median": 19976448, + "max": 19976448 + }, + "arena_configured_bytes": { + "n": 7, + "mean": 0, + "sd": 0, + "min": 0, + "median": 0, + "max": 0 + } + } + } + }, + "comparison": { + "baseline": "solid", + "bootstrap": 5000, + "geomean": { + "vue-vapor": { + "eval_us": { + "ratio": 2.9262822463823817, + "ci95": [ + 2.9262822463823817, + 2.9262822463823817 + ] + }, + "boot_to_frame0_us": { + "ratio": 2.2980697436985436, + "ci95": [ + 2.2980697436985436, + 2.2980697436985436 + ] + }, + "avg_work_us": { + "ratio": 1.2380817170770324, + "ci95": [ + 1.2380817170770324, + 1.2380817170770324 + ] + }, + "host_wall_ms": { + "ratio": 1.3491596537064883, + "ci95": [ + 1.3417267207615966, + 1.356876923148897 + ] + }, + "bundle_bytes": { + "ratio": 2.4130484876558214, + "ci95": [ + 2.4130484876558214, + 2.4130484876558214 + ] + } + }, + "octane": { + "eval_us": { + "ratio": 2.955198380541197, + "ci95": [ + 2.955198380541197, + 2.955198380541197 + ] + }, + "boot_to_frame0_us": { + "ratio": 2.3166084677188095, + "ci95": [ + 2.3166084677188095, + 2.3166084677188095 + ] + }, + "avg_work_us": { + "ratio": 15.583140008230341, + "ci95": [ + 15.583140008230341, + 15.583140008230341 + ] + }, + "host_wall_ms": { + "ratio": 3.954368962963655, + "ci95": [ + 3.934234030291365, + 3.9755423904853844 + ] + }, + "bundle_bytes": { + "ratio": 2.9561111027478417, + "ci95": [ + 2.9561111027478417, + 2.9561111027478417 + ] + } + } + }, + "per_app": { + "eval_us": { + "hero": { + "solid": 597648, + "vue-vapor": 1758497, + "octane": 1764658 + }, + "cards": { + "solid": 566823, + "vue-vapor": 1727805, + "octane": 1672506 + }, + "stats": { + "solid": 701978, + "vue-vapor": 1968671, + "octane": 2158258 + }, + "library": { + "solid": 600022, + "vue-vapor": 1805153, + "octane": 1761956 + }, + "settings": { + "solid": 671193, + "vue-vapor": 1891076, + "octane": 1886720 + }, + "notifications": { + "solid": 642845, + "vue-vapor": 1834713, + "octane": 1894267 + }, + "music": { + "solid": 601273, + "vue-vapor": 1815607, + "octane": 1816520 + } + }, + "boot_to_frame0_us": { + "hero": { + "solid": 949383, + "vue-vapor": 2116818, + "octane": 2133510 + }, + "cards": { + "solid": 861344, + "vue-vapor": 2045822, + "octane": 1979077 + }, + "stats": { + "solid": 1044203, + "vue-vapor": 2328556, + "octane": 2528828 + }, + "library": { + "solid": 910618, + "vue-vapor": 2145545, + "octane": 2094800 + }, + "settings": { + "solid": 977857, + "vue-vapor": 2228794, + "octane": 2228794 + }, + "notifications": { + "solid": 960853, + "vue-vapor": 2161346, + "octane": 2228104 + }, + "music": { + "solid": 911290, + "vue-vapor": 2162224, + "octane": 2146209 + } + }, + "avg_work_us": { + "hero": { + "solid": 4350, + "vue-vapor": 4607, + "octane": 387824 + }, + "cards": { + "solid": 5205, + "vue-vapor": 5664, + "octane": 9663 + }, + "stats": { + "solid": 8633, + "vue-vapor": 11078, + "octane": 279914 + }, + "library": { + "solid": 4606, + "vue-vapor": 6051, + "octane": 50758 + }, + "settings": { + "solid": 7708, + "vue-vapor": 8784, + "octane": 27440 + }, + "notifications": { + "solid": 5549, + "vue-vapor": 9040, + "octane": 271212 + }, + "music": { + "solid": 13037, + "vue-vapor": 16117, + "octane": 282713 + } + }, + "host_wall_ms": { + "hero": { + "solid": 315.0444050000001, + "vue-vapor": 425.09527385714307, + "octane": 3322.6342677142843 + }, + "cards": { + "solid": 353.71783357142806, + "vue-vapor": 461.6156068571446, + "octane": 470.7068867142828 + }, + "stats": { + "solid": 453.3976015714278, + "vue-vapor": 596.4421370000002, + "octane": 2854.2508391428564 + }, + "library": { + "solid": 340.96889900000366, + "vue-vapor": 462.2983334285714, + "octane": 877.4475477142884 + }, + "settings": { + "solid": 345.8052082857134, + "vue-vapor": 454.33942842857294, + "octane": 591.5574882857139 + }, + "notifications": { + "solid": 306.995904714289, + "vue-vapor": 428.0823392857128, + "octane": 1734.1538689999975 + }, + "music": { + "solid": 364.61433300000084, + "vue-vapor": 515.5832915714293, + "octane": 2509.168946428582 + } + }, + "bundle_bytes": { + "hero": { + "solid": 105534, + "vue-vapor": 259729, + "octane": 318774 + }, + "cards": { + "solid": 105978, + "vue-vapor": 260670, + "octane": 318490 + }, + "stats": { + "solid": 111003, + "vue-vapor": 265522, + "octane": 327255 + }, + "library": { + "solid": 110722, + "vue-vapor": 266244, + "octane": 326570 + }, + "settings": { + "solid": 119661, + "vue-vapor": 273734, + "octane": 333443 + }, + "notifications": { + "solid": 110116, + "vue-vapor": 260743, + "octane": 318619 + }, + "music": { + "solid": 103566, + "vue-vapor": 261593, + "octane": 321002 + } + } + } + } +} \ No newline at end of file diff --git a/docs/bench/three-frameworks-ppsspp-2026-07-29.md b/docs/bench/three-frameworks-ppsspp-2026-07-29.md new file mode 100644 index 000000000..02498f32c --- /dev/null +++ b/docs/bench/three-frameworks-ppsspp-2026-07-29.md @@ -0,0 +1,558 @@ +# PocketJS PPSSPP Benchmark + +Generated: 2026-07-28T23:55:22.401Z +Samples per app/framework: 7 +Frameworks: solid, vue-vapor, octane +PPSSPP revision: 676724ee5e +Git revision: 3c14b47 +Frame budget: 16667us + +## Comparison (baseline: solid; lower is better) + +| metric | vue-vapor/solid geomean | octane/solid geomean | +|---|---:|---:| +| `eval_us` | 2.926x [2.926, 2.926] | 2.955x [2.955, 2.955] | +| `boot_to_frame0_us` | 2.298x [2.298, 2.298] | 2.317x [2.317, 2.317] | +| `avg_work_us` | 1.238x [1.238, 1.238] | 15.583x [15.583, 15.583] | +| `host_wall_ms` | 1.349x [1.342, 1.357] | 3.954x [3.934, 3.976] | +| `bundle_bytes` | 2.413x [2.413, 2.413] | 2.956x [2.956, 2.956] | + +95% CIs from 5000 bootstrap resamples. + +### Average frame work by app + +| app | solid avg work | vue-vapor avg work | octane avg work | +|---|---:|---:|---:| +| hero | 4.35 ms | 4.61 ms | 387.82 ms | +| cards | 5.21 ms | 5.66 ms | 9.66 ms | +| stats | 8.63 ms | 11.08 ms | 279.91 ms | +| library | 4.61 ms | 6.05 ms | 50.76 ms | +| settings | 7.71 ms | 8.78 ms | 27.44 ms | +| notifications | 5.55 ms | 9.04 ms | 271.21 ms | +| music | 13.04 ms | 16.12 ms | 282.71 ms | + +## hero (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 597648us | 0us | 597648us | 597648us | 597648us | +| boot_to_frame0_us | 949383us | 0us | 949383us | 949383us | 949383us | +| avg_frame_interval_us | 18103us | 0us | 18103us | 18103us | 18103us | +| max_frame_interval_us | 50050us | 0us | 50050us | 50050us | 50050us | +| avg_js_us | 2831us | 0us | 2831us | 2831us | 2831us | +| avg_jobs_us | 1us | 0us | 1us | 1us | 1us | +| avg_tick_us | 398us | 0us | 398us | 398us | 398us | +| avg_draw_us | 940us | 0us | 940us | 940us | 940us | +| avg_render_us | 178us | 0us | 178us | 178us | 178us | +| avg_work_us | 4350us | 0us | 4350us | 4350us | 4350us | +| max_work_us | 41918us | 0us | 41918us | 41918us | 41918us | +| stack_free_bytes | 777.9 KiB | 0 B | 777.9 KiB | 777.9 KiB | 777.9 KiB | +| host_wall_ms | 315.0ms | 3.3ms | 310.3ms | 314.8ms | 319.6ms | +| bundle_bytes | 103.1 KiB | 0 B | 103.1 KiB | 103.1 KiB | 103.1 KiB | +| pak_bytes | 453.8 KiB | 0 B | 453.8 KiB | 453.8 KiB | 453.8 KiB | +| arena_capacity_bytes | 16.96 MiB | 0 B | 16.96 MiB | 16.96 MiB | 16.96 MiB | +| arena_bump_bytes | 2.94 MiB | 0 B | 2.94 MiB | 2.94 MiB | 2.94 MiB | +| arena_tail_free_bytes | 14.03 MiB | 0 B | 14.03 MiB | 14.03 MiB | 14.03 MiB | +| arena_init_free_bytes | 18.96 MiB | 0 B | 18.96 MiB | 18.96 MiB | 18.96 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## hero (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1758497us | 0us | 1758497us | 1758497us | 1758497us | +| boot_to_frame0_us | 2116818us | 0us | 2116818us | 2116818us | 2116818us | +| avg_frame_interval_us | 17748us | 0us | 17748us | 17748us | 17748us | +| max_frame_interval_us | 33367us | 0us | 33367us | 33367us | 33367us | +| avg_js_us | 2495us | 0us | 2495us | 2495us | 2495us | +| avg_jobs_us | 819us | 0us | 819us | 819us | 819us | +| avg_tick_us | 163us | 0us | 163us | 163us | 163us | +| avg_draw_us | 950us | 0us | 950us | 950us | 950us | +| avg_render_us | 178us | 0us | 178us | 178us | 178us | +| avg_work_us | 4607us | 0us | 4607us | 4607us | 4607us | +| max_work_us | 27641us | 0us | 27641us | 27641us | 27641us | +| stack_free_bytes | 646.5 KiB | 0 B | 646.5 KiB | 646.5 KiB | 646.5 KiB | +| host_wall_ms | 425.1ms | 4.4ms | 421.0ms | 423.1ms | 431.6ms | +| bundle_bytes | 253.6 KiB | 0 B | 253.6 KiB | 253.6 KiB | 253.6 KiB | +| pak_bytes | 450.7 KiB | 0 B | 450.7 KiB | 450.7 KiB | 450.7 KiB | +| arena_capacity_bytes | 16.82 MiB | 0 B | 16.82 MiB | 16.82 MiB | 16.82 MiB | +| arena_bump_bytes | 4.65 MiB | 0 B | 4.65 MiB | 4.65 MiB | 4.65 MiB | +| arena_tail_free_bytes | 12.17 MiB | 0 B | 12.17 MiB | 12.17 MiB | 12.17 MiB | +| arena_init_free_bytes | 18.82 MiB | 0 B | 18.82 MiB | 18.82 MiB | 18.82 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## hero (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1764658us | 0us | 1764658us | 1764658us | 1764658us | +| boot_to_frame0_us | 2133510us | 0us | 2133510us | 2133510us | 2133510us | +| avg_frame_interval_us | 397560us | 0us | 397560us | 397560us | 397560us | +| max_frame_interval_us | 750750us | 0us | 750750us | 750750us | 750750us | +| avg_js_us | 357793us | 0us | 357793us | 357793us | 357793us | +| avg_jobs_us | 28745us | 0us | 28745us | 28745us | 28745us | +| avg_tick_us | 178us | 0us | 178us | 178us | 178us | +| avg_draw_us | 931us | 0us | 931us | 931us | 931us | +| avg_render_us | 175us | 0us | 175us | 175us | 175us | +| avg_work_us | 387824us | 0us | 387824us | 387824us | 387824us | +| max_work_us | 747260us | 0us | 747260us | 747260us | 747260us | +| stack_free_bytes | 744.6 KiB | 0 B | 744.6 KiB | 744.6 KiB | 744.6 KiB | +| host_wall_ms | 3322.6ms | 11.7ms | 3305.4ms | 3324.8ms | 3337.6ms | +| bundle_bytes | 311.3 KiB | 0 B | 311.3 KiB | 311.3 KiB | 311.3 KiB | +| pak_bytes | 450.7 KiB | 0 B | 450.7 KiB | 450.7 KiB | 450.7 KiB | +| arena_capacity_bytes | 16.76 MiB | 0 B | 16.76 MiB | 16.76 MiB | 16.76 MiB | +| arena_bump_bytes | 13.94 MiB | 0 B | 13.94 MiB | 13.94 MiB | 13.94 MiB | +| arena_tail_free_bytes | 2.82 MiB | 0 B | 2.82 MiB | 2.82 MiB | 2.82 MiB | +| arena_init_free_bytes | 18.76 MiB | 0 B | 18.76 MiB | 18.76 MiB | 18.76 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## cards (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 566823us | 0us | 566823us | 566823us | 566823us | +| boot_to_frame0_us | 861344us | 0us | 861344us | 861344us | 861344us | +| avg_frame_interval_us | 17951us | 0us | 17951us | 17951us | 17951us | +| max_frame_interval_us | 66801us | 0us | 66801us | 66801us | 66801us | +| avg_js_us | 2207us | 0us | 2207us | 2207us | 2207us | +| avg_jobs_us | 1us | 0us | 1us | 1us | 1us | +| avg_tick_us | 192us | 0us | 192us | 192us | 192us | +| avg_draw_us | 2370us | 0us | 2370us | 2370us | 2370us | +| avg_render_us | 433us | 0us | 433us | 433us | 433us | +| avg_work_us | 5205us | 0us | 5205us | 5205us | 5205us | +| max_work_us | 55501us | 0us | 55501us | 55501us | 55501us | +| stack_free_bytes | 817.0 KiB | 0 B | 817.0 KiB | 817.0 KiB | 817.0 KiB | +| host_wall_ms | 353.7ms | 6.4ms | 345.4ms | 351.8ms | 362.6ms | +| bundle_bytes | 103.5 KiB | 0 B | 103.5 KiB | 103.5 KiB | 103.5 KiB | +| pak_bytes | 149.2 KiB | 0 B | 149.2 KiB | 149.2 KiB | 149.2 KiB | +| arena_capacity_bytes | 17.26 MiB | 0 B | 17.26 MiB | 17.26 MiB | 17.26 MiB | +| arena_bump_bytes | 2.03 MiB | 0 B | 2.03 MiB | 2.03 MiB | 2.03 MiB | +| arena_tail_free_bytes | 15.23 MiB | 0 B | 15.23 MiB | 15.23 MiB | 15.23 MiB | +| arena_init_free_bytes | 19.26 MiB | 0 B | 19.26 MiB | 19.26 MiB | 19.26 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## cards (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1727805us | 0us | 1727805us | 1727805us | 1727805us | +| boot_to_frame0_us | 2045822us | 0us | 2045822us | 2045822us | 2045822us | +| avg_frame_interval_us | 18373us | 0us | 18373us | 18373us | 18373us | +| max_frame_interval_us | 66801us | 0us | 66801us | 66801us | 66801us | +| avg_js_us | 1992us | 0us | 1992us | 1992us | 1992us | +| avg_jobs_us | 454us | 0us | 454us | 454us | 454us | +| avg_tick_us | 325us | 0us | 325us | 325us | 325us | +| avg_draw_us | 2457us | 0us | 2457us | 2457us | 2457us | +| avg_render_us | 433us | 0us | 433us | 433us | 433us | +| avg_work_us | 5664us | 0us | 5664us | 5664us | 5664us | +| max_work_us | 50014us | 0us | 50014us | 50014us | 50014us | +| stack_free_bytes | 690.9 KiB | 0 B | 690.9 KiB | 690.9 KiB | 690.9 KiB | +| host_wall_ms | 461.6ms | 4.8ms | 457.1ms | 459.5ms | 471.3ms | +| bundle_bytes | 254.6 KiB | 0 B | 254.6 KiB | 254.6 KiB | 254.6 KiB | +| pak_bytes | 147.7 KiB | 0 B | 147.7 KiB | 147.7 KiB | 147.7 KiB | +| arena_capacity_bytes | 17.11 MiB | 0 B | 17.11 MiB | 17.11 MiB | 17.11 MiB | +| arena_bump_bytes | 3.49 MiB | 0 B | 3.49 MiB | 3.49 MiB | 3.49 MiB | +| arena_tail_free_bytes | 13.63 MiB | 0 B | 13.63 MiB | 13.63 MiB | 13.63 MiB | +| arena_init_free_bytes | 19.11 MiB | 0 B | 19.11 MiB | 19.11 MiB | 19.11 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## cards (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1672506us | 0us | 1672506us | 1672506us | 1672506us | +| boot_to_frame0_us | 1979077us | 0us | 1979077us | 1979077us | 1979077us | +| avg_frame_interval_us | 22386us | 0us | 22386us | 22386us | 22386us | +| max_frame_interval_us | 417151us | 0us | 417151us | 417151us | 417151us | +| avg_js_us | 6190us | 0us | 6190us | 6190us | 6190us | +| avg_jobs_us | 475us | 0us | 475us | 475us | 475us | +| avg_tick_us | 184us | 0us | 184us | 184us | 184us | +| avg_draw_us | 2379us | 0us | 2379us | 2379us | 2379us | +| avg_render_us | 433us | 0us | 433us | 433us | 433us | +| avg_work_us | 9663us | 0us | 9663us | 9663us | 9663us | +| max_work_us | 403328us | 0us | 403328us | 403328us | 403328us | +| stack_free_bytes | 738.2 KiB | 0 B | 738.2 KiB | 738.2 KiB | 738.2 KiB | +| host_wall_ms | 470.7ms | 6.0ms | 464.9ms | 468.3ms | 482.3ms | +| bundle_bytes | 311.0 KiB | 0 B | 311.0 KiB | 311.0 KiB | 311.0 KiB | +| pak_bytes | 147.7 KiB | 0 B | 147.7 KiB | 147.7 KiB | 147.7 KiB | +| arena_capacity_bytes | 17.06 MiB | 0 B | 17.06 MiB | 17.06 MiB | 17.06 MiB | +| arena_bump_bytes | 4.17 MiB | 0 B | 4.17 MiB | 4.17 MiB | 4.17 MiB | +| arena_tail_free_bytes | 12.89 MiB | 0 B | 12.89 MiB | 12.89 MiB | 12.89 MiB | +| arena_init_free_bytes | 19.06 MiB | 0 B | 19.06 MiB | 19.06 MiB | 19.06 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## stats (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 701978us | 0us | 701978us | 701978us | 701978us | +| boot_to_frame0_us | 1044203us | 0us | 1044203us | 1044203us | 1044203us | +| avg_frame_interval_us | 19715us | 0us | 19715us | 19715us | 19715us | +| max_frame_interval_us | 116469us | 0us | 116469us | 116469us | 116469us | +| avg_js_us | 4818us | 0us | 4818us | 4818us | 4818us | +| avg_jobs_us | 1us | 0us | 1us | 1us | 1us | +| avg_tick_us | 512us | 0us | 512us | 512us | 512us | +| avg_draw_us | 2725us | 0us | 2725us | 2725us | 2725us | +| avg_render_us | 574us | 0us | 574us | 574us | 574us | +| avg_work_us | 8633us | 0us | 8633us | 8633us | 8633us | +| max_work_us | 107585us | 0us | 107585us | 107585us | 107585us | +| stack_free_bytes | 711.5 KiB | 0 B | 711.5 KiB | 711.5 KiB | 711.5 KiB | +| host_wall_ms | 453.4ms | 7.2ms | 444.0ms | 450.4ms | 463.5ms | +| bundle_bytes | 108.4 KiB | 0 B | 108.4 KiB | 108.4 KiB | 108.4 KiB | +| pak_bytes | 140.5 KiB | 0 B | 140.5 KiB | 140.5 KiB | 140.5 KiB | +| arena_capacity_bytes | 17.26 MiB | 0 B | 17.26 MiB | 17.26 MiB | 17.26 MiB | +| arena_bump_bytes | 2.45 MiB | 0 B | 2.45 MiB | 2.45 MiB | 2.45 MiB | +| arena_tail_free_bytes | 14.82 MiB | 0 B | 14.82 MiB | 14.82 MiB | 14.82 MiB | +| arena_init_free_bytes | 19.26 MiB | 0 B | 19.26 MiB | 19.26 MiB | 19.26 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## stats (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1968671us | 0us | 1968671us | 1968671us | 1968671us | +| boot_to_frame0_us | 2328556us | 0us | 2328556us | 2328556us | 2328556us | +| avg_frame_interval_us | 21400us | 0us | 21400us | 21400us | 21400us | +| max_frame_interval_us | 199887us | 0us | 199887us | 199887us | 199887us | +| avg_js_us | 3544us | 0us | 3544us | 3544us | 3544us | +| avg_jobs_us | 3313us | 0us | 3313us | 3313us | 3313us | +| avg_tick_us | 725us | 0us | 725us | 725us | 725us | +| avg_draw_us | 2920us | 0us | 2920us | 2920us | 2920us | +| avg_render_us | 574us | 0us | 574us | 574us | 574us | +| avg_work_us | 11078us | 0us | 11078us | 11078us | 11078us | +| max_work_us | 191784us | 0us | 191784us | 191784us | 191784us | +| stack_free_bytes | 534.3 KiB | 0 B | 534.3 KiB | 534.3 KiB | 534.3 KiB | +| host_wall_ms | 596.4ms | 9.5ms | 586.7ms | 590.8ms | 609.9ms | +| bundle_bytes | 259.3 KiB | 0 B | 259.3 KiB | 259.3 KiB | 259.3 KiB | +| pak_bytes | 140.5 KiB | 0 B | 140.5 KiB | 140.5 KiB | 140.5 KiB | +| arena_capacity_bytes | 17.12 MiB | 0 B | 17.12 MiB | 17.12 MiB | 17.12 MiB | +| arena_bump_bytes | 4.48 MiB | 0 B | 4.48 MiB | 4.48 MiB | 4.48 MiB | +| arena_tail_free_bytes | 12.64 MiB | 0 B | 12.64 MiB | 12.64 MiB | 12.64 MiB | +| arena_init_free_bytes | 19.12 MiB | 0 B | 19.12 MiB | 19.12 MiB | 19.12 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## stats (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 2158258us | 0us | 2158258us | 2158258us | 2158258us | +| boot_to_frame0_us | 2528828us | 0us | 2528828us | 2528828us | 2528828us | +| avg_frame_interval_us | 292883us | 0us | 292883us | 292883us | 292883us | +| max_frame_interval_us | 1217883us | 0us | 1217883us | 1217883us | 1217883us | +| avg_js_us | 254147us | 0us | 254147us | 254147us | 254147us | +| avg_jobs_us | 21937us | 0us | 21937us | 21937us | 21937us | +| avg_tick_us | 508us | 0us | 508us | 508us | 508us | +| avg_draw_us | 2748us | 0us | 2748us | 2748us | 2748us | +| avg_render_us | 572us | 0us | 572us | 572us | 572us | +| avg_work_us | 279914us | 0us | 279914us | 279914us | 279914us | +| max_work_us | 1214654us | 0us | 1214654us | 1214654us | 1214654us | +| stack_free_bytes | 683.8 KiB | 0 B | 683.8 KiB | 683.8 KiB | 683.8 KiB | +| host_wall_ms | 2854.3ms | 11.3ms | 2834.2ms | 2855.7ms | 2866.1ms | +| bundle_bytes | 319.6 KiB | 0 B | 319.6 KiB | 319.6 KiB | 319.6 KiB | +| pak_bytes | 140.5 KiB | 0 B | 140.5 KiB | 140.5 KiB | 140.5 KiB | +| arena_capacity_bytes | 17.06 MiB | 0 B | 17.06 MiB | 17.06 MiB | 17.06 MiB | +| arena_bump_bytes | 16.87 MiB | 0 B | 16.87 MiB | 16.87 MiB | 16.87 MiB | +| arena_tail_free_bytes | 196.3 KiB | 0 B | 196.3 KiB | 196.3 KiB | 196.3 KiB | +| arena_init_free_bytes | 19.06 MiB | 0 B | 19.06 MiB | 19.06 MiB | 19.06 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## library (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 600022us | 0us | 600022us | 600022us | 600022us | +| boot_to_frame0_us | 910618us | 0us | 910618us | 910618us | 910618us | +| avg_frame_interval_us | 18504us | 0us | 18504us | 18504us | 18504us | +| max_frame_interval_us | 105694us | 0us | 105694us | 105694us | 105694us | +| avg_js_us | 2989us | 0us | 2989us | 2989us | 2989us | +| avg_jobs_us | 205us | 0us | 205us | 205us | 205us | +| avg_tick_us | 183us | 0us | 183us | 183us | 183us | +| avg_draw_us | 983us | 0us | 983us | 983us | 983us | +| avg_render_us | 244us | 0us | 244us | 244us | 244us | +| avg_work_us | 4606us | 0us | 4606us | 4606us | 4606us | +| max_work_us | 103562us | 0us | 103562us | 103562us | 103562us | +| stack_free_bytes | 720.1 KiB | 0 B | 720.1 KiB | 720.1 KiB | 720.1 KiB | +| host_wall_ms | 341.0ms | 7.4ms | 331.0ms | 344.2ms | 350.1ms | +| bundle_bytes | 108.1 KiB | 0 B | 108.1 KiB | 108.1 KiB | 108.1 KiB | +| pak_bytes | 353.0 KiB | 0 B | 353.0 KiB | 353.0 KiB | 353.0 KiB | +| arena_capacity_bytes | 17.06 MiB | 0 B | 17.06 MiB | 17.06 MiB | 17.06 MiB | +| arena_bump_bytes | 2.64 MiB | 0 B | 2.64 MiB | 2.64 MiB | 2.64 MiB | +| arena_tail_free_bytes | 14.42 MiB | 0 B | 14.42 MiB | 14.42 MiB | 14.42 MiB | +| arena_init_free_bytes | 19.06 MiB | 0 B | 19.06 MiB | 19.06 MiB | 19.06 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## library (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1805153us | 0us | 1805153us | 1805153us | 1805153us | +| boot_to_frame0_us | 2145545us | 0us | 2145545us | 2145545us | 2145545us | +| avg_frame_interval_us | 19485us | 0us | 19485us | 19485us | 19485us | +| max_frame_interval_us | 155730us | 0us | 155730us | 155730us | 155730us | +| avg_js_us | 2195us | 0us | 2195us | 2195us | 2195us | +| avg_jobs_us | 2165us | 0us | 2165us | 2165us | 2165us | +| avg_tick_us | 299us | 0us | 299us | 299us | 299us | +| avg_draw_us | 1146us | 0us | 1146us | 1146us | 1146us | +| avg_render_us | 244us | 0us | 244us | 244us | 244us | +| avg_work_us | 6051us | 0us | 6051us | 6051us | 6051us | +| max_work_us | 149259us | 0us | 149259us | 149259us | 149259us | +| stack_free_bytes | 554.9 KiB | 0 B | 554.9 KiB | 554.9 KiB | 554.9 KiB | +| host_wall_ms | 462.3ms | 10.5ms | 452.3ms | 456.6ms | 478.1ms | +| bundle_bytes | 260.0 KiB | 0 B | 260.0 KiB | 260.0 KiB | 260.0 KiB | +| pak_bytes | 350.9 KiB | 0 B | 350.9 KiB | 350.9 KiB | 350.9 KiB | +| arena_capacity_bytes | 16.91 MiB | 0 B | 16.91 MiB | 16.91 MiB | 16.91 MiB | +| arena_bump_bytes | 4.55 MiB | 0 B | 4.55 MiB | 4.55 MiB | 4.55 MiB | +| arena_tail_free_bytes | 12.36 MiB | 0 B | 12.36 MiB | 12.36 MiB | 12.36 MiB | +| arena_init_free_bytes | 18.91 MiB | 0 B | 18.91 MiB | 18.91 MiB | 18.91 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## library (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1761956us | 0us | 1761956us | 1761956us | 1761956us | +| boot_to_frame0_us | 2094800us | 0us | 2094800us | 2094800us | 2094800us | +| avg_frame_interval_us | 63927us | 0us | 63927us | 63927us | 63927us | +| max_frame_interval_us | 355930us | 0us | 355930us | 355930us | 355930us | +| avg_js_us | 45119us | 0us | 45119us | 45119us | 45119us | +| avg_jobs_us | 4205us | 0us | 4205us | 4205us | 4205us | +| avg_tick_us | 186us | 0us | 186us | 186us | 186us | +| avg_draw_us | 1002us | 0us | 1002us | 1002us | 1002us | +| avg_render_us | 244us | 0us | 244us | 244us | 244us | +| avg_work_us | 50758us | 0us | 50758us | 50758us | 50758us | +| max_work_us | 343449us | 0us | 343449us | 343449us | 343449us | +| stack_free_bytes | 662.4 KiB | 0 B | 662.4 KiB | 662.4 KiB | 662.4 KiB | +| host_wall_ms | 877.4ms | 5.4ms | 870.7ms | 878.3ms | 884.9ms | +| bundle_bytes | 318.9 KiB | 0 B | 318.9 KiB | 318.9 KiB | 318.9 KiB | +| pak_bytes | 350.9 KiB | 0 B | 350.9 KiB | 350.9 KiB | 350.9 KiB | +| arena_capacity_bytes | 16.85 MiB | 0 B | 16.85 MiB | 16.85 MiB | 16.85 MiB | +| arena_bump_bytes | 7.07 MiB | 0 B | 7.07 MiB | 7.07 MiB | 7.07 MiB | +| arena_tail_free_bytes | 9.78 MiB | 0 B | 9.78 MiB | 9.78 MiB | 9.78 MiB | +| arena_init_free_bytes | 18.85 MiB | 0 B | 18.85 MiB | 18.85 MiB | 18.85 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## settings (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 671193us | 0us | 671193us | 671193us | 671193us | +| boot_to_frame0_us | 977857us | 0us | 977857us | 977857us | 977857us | +| avg_frame_interval_us | 19029us | 0us | 19029us | 19029us | 19029us | +| max_frame_interval_us | 83673us | 0us | 83673us | 83673us | 83673us | +| avg_js_us | 2777us | 0us | 2777us | 2777us | 2777us | +| avg_jobs_us | 360us | 0us | 360us | 360us | 360us | +| avg_tick_us | 522us | 0us | 522us | 522us | 522us | +| avg_draw_us | 3208us | 0us | 3208us | 3208us | 3208us | +| avg_render_us | 838us | 0us | 838us | 838us | 838us | +| avg_work_us | 7708us | 0us | 7708us | 7708us | 7708us | +| max_work_us | 83022us | 0us | 83022us | 83022us | 83022us | +| stack_free_bytes | 711.6 KiB | 0 B | 711.6 KiB | 711.6 KiB | 711.6 KiB | +| host_wall_ms | 345.8ms | 6.1ms | 340.7ms | 343.7ms | 357.8ms | +| bundle_bytes | 116.9 KiB | 0 B | 116.9 KiB | 116.9 KiB | 116.9 KiB | +| pak_bytes | 150.0 KiB | 0 B | 150.0 KiB | 150.0 KiB | 150.0 KiB | +| arena_capacity_bytes | 17.25 MiB | 0 B | 17.25 MiB | 17.25 MiB | 17.25 MiB | +| arena_bump_bytes | 2.22 MiB | 0 B | 2.22 MiB | 2.22 MiB | 2.22 MiB | +| arena_tail_free_bytes | 15.03 MiB | 0 B | 15.03 MiB | 15.03 MiB | 15.03 MiB | +| arena_init_free_bytes | 19.25 MiB | 0 B | 19.25 MiB | 19.25 MiB | 19.25 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## settings (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1891076us | 0us | 1891076us | 1891076us | 1891076us | +| boot_to_frame0_us | 2228794us | 0us | 2228794us | 2228794us | 2228794us | +| avg_frame_interval_us | 19683us | 0us | 19683us | 19683us | 19683us | +| max_frame_interval_us | 114799us | 0us | 114799us | 114799us | 114799us | +| avg_js_us | 2613us | 0us | 2613us | 2613us | 2613us | +| avg_jobs_us | 1380us | 0us | 1380us | 1380us | 1380us | +| avg_tick_us | 552us | 0us | 552us | 552us | 552us | +| avg_draw_us | 3402us | 0us | 3402us | 3402us | 3402us | +| avg_render_us | 835us | 0us | 835us | 835us | 835us | +| avg_work_us | 8784us | 0us | 8784us | 8784us | 8784us | +| max_work_us | 103329us | 0us | 103329us | 103329us | 103329us | +| stack_free_bytes | 551.5 KiB | 0 B | 551.5 KiB | 551.5 KiB | 551.5 KiB | +| host_wall_ms | 454.3ms | 5.1ms | 448.2ms | 454.9ms | 463.9ms | +| bundle_bytes | 267.3 KiB | 0 B | 267.3 KiB | 267.3 KiB | 267.3 KiB | +| pak_bytes | 148.6 KiB | 0 B | 148.6 KiB | 148.6 KiB | 148.6 KiB | +| arena_capacity_bytes | 17.10 MiB | 0 B | 17.10 MiB | 17.10 MiB | 17.10 MiB | +| arena_bump_bytes | 4.17 MiB | 0 B | 4.17 MiB | 4.17 MiB | 4.17 MiB | +| arena_tail_free_bytes | 12.93 MiB | 0 B | 12.93 MiB | 12.93 MiB | 12.93 MiB | +| arena_init_free_bytes | 19.10 MiB | 0 B | 19.10 MiB | 19.10 MiB | 19.10 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## settings (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1886720us | 0us | 1886720us | 1886720us | 1886720us | +| boot_to_frame0_us | 2228794us | 0us | 2228794us | 2228794us | 2228794us | +| avg_frame_interval_us | 38939us | 0us | 38939us | 38939us | 38939us | +| max_frame_interval_us | 567238us | 0us | 567238us | 567238us | 567238us | +| avg_js_us | 20707us | 0us | 20707us | 20707us | 20707us | +| avg_jobs_us | 2255us | 0us | 2255us | 2255us | 2255us | +| avg_tick_us | 433us | 0us | 433us | 433us | 433us | +| avg_draw_us | 3208us | 0us | 3208us | 3208us | 3208us | +| avg_render_us | 835us | 0us | 835us | 835us | 835us | +| avg_work_us | 27440us | 0us | 27440us | 27440us | 27440us | +| max_work_us | 554901us | 0us | 554901us | 554901us | 554901us | +| stack_free_bytes | 694.9 KiB | 0 B | 694.9 KiB | 694.9 KiB | 694.9 KiB | +| host_wall_ms | 591.6ms | 15.1ms | 578.6ms | 589.1ms | 624.0ms | +| bundle_bytes | 325.6 KiB | 0 B | 325.6 KiB | 325.6 KiB | 325.6 KiB | +| pak_bytes | 148.5 KiB | 0 B | 148.5 KiB | 148.5 KiB | 148.5 KiB | +| arena_capacity_bytes | 17.04 MiB | 0 B | 17.04 MiB | 17.04 MiB | 17.04 MiB | +| arena_bump_bytes | 5.97 MiB | 0 B | 5.97 MiB | 5.97 MiB | 5.97 MiB | +| arena_tail_free_bytes | 11.07 MiB | 0 B | 11.07 MiB | 11.07 MiB | 11.07 MiB | +| arena_init_free_bytes | 19.04 MiB | 0 B | 19.04 MiB | 19.04 MiB | 19.04 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## notifications (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 642845us | 0us | 642845us | 642845us | 642845us | +| boot_to_frame0_us | 960853us | 0us | 960853us | 960853us | 960853us | +| avg_frame_interval_us | 19424us | 0us | 19424us | 19424us | 19424us | +| max_frame_interval_us | 93673us | 0us | 93673us | 93673us | 93673us | +| avg_js_us | 2706us | 0us | 2706us | 2706us | 2706us | +| avg_jobs_us | 596us | 0us | 596us | 596us | 596us | +| avg_tick_us | 516us | 0us | 516us | 516us | 516us | +| avg_draw_us | 1186us | 0us | 1186us | 1186us | 1186us | +| avg_render_us | 543us | 0us | 543us | 543us | 543us | +| avg_work_us | 5549us | 0us | 5549us | 5549us | 5549us | +| max_work_us | 80911us | 0us | 80911us | 80911us | 80911us | +| stack_free_bytes | 712.4 KiB | 0 B | 712.4 KiB | 712.4 KiB | 712.4 KiB | +| host_wall_ms | 307.0ms | 5.1ms | 297.9ms | 307.3ms | 313.5ms | +| bundle_bytes | 107.5 KiB | 0 B | 107.5 KiB | 107.5 KiB | 107.5 KiB | +| pak_bytes | 166.7 KiB | 0 B | 166.7 KiB | 166.7 KiB | 166.7 KiB | +| arena_capacity_bytes | 17.24 MiB | 0 B | 17.24 MiB | 17.24 MiB | 17.24 MiB | +| arena_bump_bytes | 2.21 MiB | 0 B | 2.21 MiB | 2.21 MiB | 2.21 MiB | +| arena_tail_free_bytes | 15.03 MiB | 0 B | 15.03 MiB | 15.03 MiB | 15.03 MiB | +| arena_init_free_bytes | 19.24 MiB | 0 B | 19.24 MiB | 19.24 MiB | 19.24 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## notifications (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1834713us | 0us | 1834713us | 1834713us | 1834713us | +| boot_to_frame0_us | 2161346us | 0us | 2161346us | 2161346us | 2161346us | +| avg_frame_interval_us | 22439us | 0us | 22439us | 22439us | 22439us | +| max_frame_interval_us | 200069us | 0us | 200069us | 200069us | 200069us | +| avg_js_us | 2793us | 0us | 2793us | 2793us | 2793us | +| avg_jobs_us | 3767us | 0us | 3767us | 3767us | 3767us | +| avg_tick_us | 703us | 0us | 703us | 703us | 703us | +| avg_draw_us | 1255us | 0us | 1255us | 1255us | 1255us | +| avg_render_us | 520us | 0us | 520us | 520us | 520us | +| avg_work_us | 9040us | 0us | 9040us | 9040us | 9040us | +| max_work_us | 189299us | 0us | 189299us | 189299us | 189299us | +| stack_free_bytes | 592.3 KiB | 0 B | 592.3 KiB | 592.3 KiB | 592.3 KiB | +| host_wall_ms | 428.1ms | 6.0ms | 418.4ms | 429.0ms | 438.1ms | +| bundle_bytes | 254.6 KiB | 0 B | 254.6 KiB | 254.6 KiB | 254.6 KiB | +| pak_bytes | 165 KiB | 0 B | 165 KiB | 165 KiB | 165 KiB | +| arena_capacity_bytes | 17.10 MiB | 0 B | 17.10 MiB | 17.10 MiB | 17.10 MiB | +| arena_bump_bytes | 3.70 MiB | 0 B | 3.70 MiB | 3.70 MiB | 3.70 MiB | +| arena_tail_free_bytes | 13.40 MiB | 0 B | 13.40 MiB | 13.40 MiB | 13.40 MiB | +| arena_init_free_bytes | 19.10 MiB | 0 B | 19.10 MiB | 19.10 MiB | 19.10 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## notifications (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1894267us | 0us | 1894267us | 1894267us | 1894267us | +| boot_to_frame0_us | 2228104us | 0us | 2228104us | 2228104us | 2228104us | +| avg_frame_interval_us | 285835us | 0us | 285835us | 285835us | 285835us | +| max_frame_interval_us | 784117us | 0us | 784117us | 784117us | 784117us | +| avg_js_us | 247511us | 0us | 247511us | 247511us | 247511us | +| avg_jobs_us | 21503us | 0us | 21503us | 21503us | 21503us | +| avg_tick_us | 502us | 0us | 502us | 502us | 502us | +| avg_draw_us | 1173us | 0us | 1173us | 1173us | 1173us | +| avg_render_us | 520us | 0us | 520us | 520us | 520us | +| avg_work_us | 271212us | 0us | 271212us | 271212us | 271212us | +| max_work_us | 771845us | 0us | 771845us | 771845us | 771845us | +| stack_free_bytes | 696.5 KiB | 0 B | 696.5 KiB | 696.5 KiB | 696.5 KiB | +| host_wall_ms | 1734.2ms | 8.0ms | 1724.5ms | 1732.6ms | 1747.5ms | +| bundle_bytes | 311.2 KiB | 0 B | 311.2 KiB | 311.2 KiB | 311.2 KiB | +| pak_bytes | 165 KiB | 0 B | 165 KiB | 165 KiB | 165 KiB | +| arena_capacity_bytes | 17.04 MiB | 0 B | 17.04 MiB | 17.04 MiB | 17.04 MiB | +| arena_bump_bytes | 11.16 MiB | 0 B | 11.16 MiB | 11.16 MiB | 11.16 MiB | +| arena_tail_free_bytes | 5.88 MiB | 0 B | 5.88 MiB | 5.88 MiB | 5.88 MiB | +| arena_init_free_bytes | 19.04 MiB | 0 B | 19.04 MiB | 19.04 MiB | 19.04 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## music (solid) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 601273us | 0us | 601273us | 601273us | 601273us | +| boot_to_frame0_us | 911290us | 0us | 911290us | 911290us | 911290us | +| avg_frame_interval_us | 23621us | 0us | 23621us | 23621us | 23621us | +| max_frame_interval_us | 86978us | 0us | 86978us | 86978us | 86978us | +| avg_js_us | 5604us | 0us | 5604us | 5604us | 5604us | +| avg_jobs_us | 390us | 0us | 390us | 390us | 390us | +| avg_tick_us | 4508us | 0us | 4508us | 4508us | 4508us | +| avg_draw_us | 1953us | 0us | 1953us | 1953us | 1953us | +| avg_render_us | 580us | 0us | 580us | 580us | 580us | +| avg_work_us | 13037us | 0us | 13037us | 13037us | 13037us | +| max_work_us | 84824us | 0us | 84824us | 84824us | 84824us | +| stack_free_bytes | 755.1 KiB | 0 B | 755.1 KiB | 755.1 KiB | 755.1 KiB | +| host_wall_ms | 364.6ms | 4.2ms | 360.7ms | 363.5ms | 373.8ms | +| bundle_bytes | 101.1 KiB | 0 B | 101.1 KiB | 101.1 KiB | 101.1 KiB | +| pak_bytes | 155.9 KiB | 0 B | 155.9 KiB | 155.9 KiB | 155.9 KiB | +| arena_capacity_bytes | 17.26 MiB | 0 B | 17.26 MiB | 17.26 MiB | 17.26 MiB | +| arena_bump_bytes | 2.25 MiB | 0 B | 2.25 MiB | 2.25 MiB | 2.25 MiB | +| arena_tail_free_bytes | 15.00 MiB | 0 B | 15.00 MiB | 15.00 MiB | 15.00 MiB | +| arena_init_free_bytes | 19.26 MiB | 0 B | 19.26 MiB | 19.26 MiB | 19.26 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## music (vue-vapor) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1815607us | 0us | 1815607us | 1815607us | 1815607us | +| boot_to_frame0_us | 2162224us | 0us | 2162224us | 2162224us | 2162224us | +| avg_frame_interval_us | 23305us | 0us | 23305us | 23305us | 23305us | +| max_frame_interval_us | 123669us | 0us | 123669us | 123669us | 123669us | +| avg_js_us | 3432us | 0us | 3432us | 3432us | 3432us | +| avg_jobs_us | 7314us | 0us | 7314us | 7314us | 7314us | +| avg_tick_us | 2610us | 0us | 2610us | 2610us | 2610us | +| avg_draw_us | 2182us | 0us | 2182us | 2182us | 2182us | +| avg_render_us | 577us | 0us | 577us | 577us | 577us | +| avg_work_us | 16117us | 0us | 16117us | 16117us | 16117us | +| max_work_us | 111336us | 0us | 111336us | 111336us | 111336us | +| stack_free_bytes | 638.6 KiB | 0 B | 638.6 KiB | 638.6 KiB | 638.6 KiB | +| host_wall_ms | 515.6ms | 6.6ms | 506.2ms | 516.8ms | 526.3ms | +| bundle_bytes | 255.5 KiB | 0 B | 255.5 KiB | 255.5 KiB | 255.5 KiB | +| pak_bytes | 154.3 KiB | 0 B | 154.3 KiB | 154.3 KiB | 154.3 KiB | +| arena_capacity_bytes | 17.11 MiB | 0 B | 17.11 MiB | 17.11 MiB | 17.11 MiB | +| arena_bump_bytes | 3.64 MiB | 0 B | 3.64 MiB | 3.64 MiB | 3.64 MiB | +| arena_tail_free_bytes | 13.47 MiB | 0 B | 13.47 MiB | 13.47 MiB | 13.47 MiB | +| arena_init_free_bytes | 19.11 MiB | 0 B | 19.11 MiB | 19.11 MiB | 19.11 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + +## music (octane) + +| metric | mean | sd | min | median | max | +|---|---:|---:|---:|---:|---:| +| eval_us | 1816520us | 0us | 1816520us | 1816520us | 1816520us | +| boot_to_frame0_us | 2146209us | 0us | 2146209us | 2146209us | 2146209us | +| avg_frame_interval_us | 292181us | 0us | 292181us | 292181us | 292181us | +| max_frame_interval_us | 717384us | 0us | 717384us | 717384us | 717384us | +| avg_js_us | 258133us | 0us | 258133us | 258133us | 258133us | +| avg_jobs_us | 19576us | 0us | 19576us | 19576us | 19576us | +| avg_tick_us | 2446us | 0us | 2446us | 2446us | 2446us | +| avg_draw_us | 1972us | 0us | 1972us | 1972us | 1972us | +| avg_render_us | 584us | 0us | 584us | 584us | 584us | +| avg_work_us | 282713us | 0us | 282713us | 282713us | 282713us | +| max_work_us | 705206us | 0us | 705206us | 705206us | 705206us | +| stack_free_bytes | 714.5 KiB | 0 B | 714.5 KiB | 714.5 KiB | 714.5 KiB | +| host_wall_ms | 2509.2ms | 10.7ms | 2495.5ms | 2509.7ms | 2526.2ms | +| bundle_bytes | 313.5 KiB | 0 B | 313.5 KiB | 313.5 KiB | 313.5 KiB | +| pak_bytes | 154.3 KiB | 0 B | 154.3 KiB | 154.3 KiB | 154.3 KiB | +| arena_capacity_bytes | 17.05 MiB | 0 B | 17.05 MiB | 17.05 MiB | 17.05 MiB | +| arena_bump_bytes | 11.72 MiB | 0 B | 11.72 MiB | 11.72 MiB | 11.72 MiB | +| arena_tail_free_bytes | 5.33 MiB | 0 B | 5.33 MiB | 5.33 MiB | 5.33 MiB | +| arena_init_free_bytes | 19.05 MiB | 0 B | 19.05 MiB | 19.05 MiB | 19.05 MiB | +| arena_configured_bytes | 0 B | 0 B | 0 B | 0 B | 0 B | + diff --git a/docs/bench/three-frameworks-ppsspp-2026-07-29.png b/docs/bench/three-frameworks-ppsspp-2026-07-29.png new file mode 100644 index 0000000000000000000000000000000000000000..329feba47f851be47ad483df129d09ddb53c89e4 GIT binary patch literal 151607 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%0A>q9Hew6#4syTTIR=ce*%IOV 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%0A&l)9<+&Yk;*ZH%AUefR{!VEBMr<1p| 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 literal 0 HcmV?d00001 diff --git a/docs/bench/three-frameworks-ppsspp-2026-07-29.svg b/docs/bench/three-frameworks-ppsspp-2026-07-29.svg new file mode 100644 index 000000000..b18abaf37 --- /dev/null +++ b/docs/bench/three-frameworks-ppsspp-2026-07-29.svg @@ -0,0 +1,192 @@ + + +PocketJS on PPSSPP — Solid vs Vue Vapor vs Octane +2026-07-28T23:55:22.401Z · 7 samples/app · PPSSPP 676724ee5e · pocketjs 3c14b47 · software renderer + +Solid + +Vue Vapor + +Octane +geomean — Vue Vapor/Solid: work 1.24x · boot 2.30x · size 2.41x | Octane/Solid: work 15.58x · boot 2.32x · size 2.96x +Average frame work (lower is better) + +0.0ms + +108.6ms + +217.2ms + +325.8ms + +434.4ms + +4.3ms + +4.6ms + +387.8ms +hero + +5.2ms + +5.7ms + +9.7ms +cards + +8.6ms + +11.1ms + +279.9ms +stats + +4.6ms + +6.1ms + +50.8ms +library + +7.7ms + +8.8ms + +27.4ms +settings + +5.5ms + +9.0ms + +271.2ms +notifications + +13.0ms + +16.1ms + +282.7ms +music +Boot to first frame (lower is better) + +0.00s + +0.71s + +1.42s + +2.12s + +2.83s + +0.95s + +2.12s + +2.13s +hero + +0.86s + +2.05s + +1.98s +cards + +1.04s + +2.33s + +2.53s +stats + +0.91s + +2.15s + +2.09s +library + +0.98s + +2.23s + +2.23s +settings + +0.96s + +2.16s + +2.23s +notifications + +0.91s + +2.16s + +2.15s +music +Bundle size (lower is better) + +0KiB + +91KiB + +182KiB + +274KiB + +365KiB + +103KiB + +254KiB + +311KiB +hero + +103KiB + +255KiB + +311KiB +cards + +108KiB + +259KiB + +320KiB +stats + +108KiB + +260KiB + +319KiB +library + +117KiB + +267KiB + +326KiB +settings + +108KiB + +255KiB + +311KiB +notifications + +101KiB + +255KiB + +313KiB +music + diff --git a/framework/compiler/ambient.d.ts b/framework/compiler/ambient.d.ts index 683e03f7d..434d1569d 100644 --- a/framework/compiler/ambient.d.ts +++ b/framework/compiler/ambient.d.ts @@ -23,6 +23,19 @@ declare module "vue-jsx-vapor/api" { ): { code: string; map?: string | null }; } +declare module "octane/compiler" { + export function compile( + source: string, + filename: string, + options?: Record, + ): { code: string; map: unknown; diagnostics: readonly unknown[] }; +} + +declare module "octane/package.json" { + const pkg: { version: string }; + export default pkg; +} + declare module "@vue-jsx-vapor/runtime/raw" { export const propsHelperCode: string; export const propsHelperId: string; diff --git a/framework/compiler/jsx-plugin.ts b/framework/compiler/jsx-plugin.ts index 91d8ded10..6b11194d2 100644 --- a/framework/compiler/jsx-plugin.ts +++ b/framework/compiler/jsx-plugin.ts @@ -18,10 +18,12 @@ import { vdomHelperId, } from "@vue-jsx-vapor/runtime/raw"; import type { BunPlugin } from "bun"; +import { compile as octaneCompile } from "octane/compiler"; import solidPresetPkg from "babel-preset-solid/package.json"; import compilerSfcPkg from "@vue/compiler-sfc/package.json"; import vuePkg from "vue/package.json"; import vueJsxVaporPkg from "vue-jsx-vapor/package.json"; +import octanePkg from "octane/package.json"; import babelCorePkg from "@babel/core/package.json"; import tsPresetPkg from "@babel/preset-typescript/package.json"; import type { PocketFramework } from "../src/config.ts"; @@ -31,12 +33,15 @@ export type { PocketFramework }; export const RENDERER_PATH = new URL("../src/renderer.ts", import.meta.url).pathname; export const RENDERER_SOLID_PATH = new URL("../src/renderer-solid.ts", import.meta.url).pathname; export const RENDERER_VUE_VAPOR_PATH = new URL("../src/renderer-vue-vapor.ts", import.meta.url).pathname; +export const RENDERER_OCTANE_PATH = new URL("../src/renderer-octane.ts", import.meta.url).pathname; const INDEX_PATH = new URL("../src/index.ts", import.meta.url).pathname; const INDEX_VUE_VAPOR_PATH = new URL("../src/index-vue-vapor.ts", import.meta.url).pathname; +const INDEX_OCTANE_PATH = new URL("../src/index-octane.ts", import.meta.url).pathname; const ANIMATION_PATH = new URL("../src/animation.ts", import.meta.url).pathname; const COMPONENTS_PATH = new URL("../src/components.ts", import.meta.url).pathname; const COMPONENTS_VUE_VAPOR_PATH = new URL("../src/components-vue-vapor.ts", import.meta.url).pathname; +const COMPONENTS_OCTANE_PATH = new URL("../src/components-octane.tsx", import.meta.url).pathname; const CONFIG_PATH = new URL("../src/config.ts", import.meta.url).pathname; const CLOCK_PATH = new URL("../src/clock.ts", import.meta.url).pathname; const DEVTOOLS_PATH = new URL("../src/devtools.ts", import.meta.url).pathname; @@ -47,6 +52,7 @@ const INPUT_API_PATH = new URL("../src/input-api.ts", import.meta.url).pathname; const LAUNCHER_PATH = new URL("../src/launcher.ts", import.meta.url).pathname; const LIFECYCLE_PATH = new URL("../src/lifecycle.ts", import.meta.url).pathname; const LIFECYCLE_VUE_VAPOR_PATH = new URL("../src/lifecycle-vue-vapor.ts", import.meta.url).pathname; +const LIFECYCLE_OCTANE_PATH = new URL("../src/lifecycle-octane.ts", import.meta.url).pathname; const OSK_PATH = new URL("../src/osk.tsx", import.meta.url).pathname; const MANIFEST_PATH = new URL("../src/manifest/index.ts", import.meta.url).pathname; const PACKAGE_PATH = new URL( @@ -55,6 +61,11 @@ const PACKAGE_PATH = new URL( ).pathname; const PLATFORM_PATH = new URL("../src/platform.ts", import.meta.url).pathname; const PRELUDE_PATH = new URL("../src/prelude.ts", import.meta.url).pathname; +const SCHEDULER_POLYFILL_PATH = new URL("../src/scheduler-polyfill.ts", import.meta.url).pathname; +const OCTANE_PROFILING_STUB_PATH = new URL( + "../src/octane-profiling-stub.ts", + import.meta.url, +).pathname; const GENERATED_STYLES_PATH = new URL( "../src/styles.generated.ts", import.meta.url, @@ -172,8 +183,40 @@ export const FRAMEWORKS: Record< renderer: RENDERER_VUE_VAPOR_PATH, }, }, + octane: { + label: "Octane", + outputSuffix: ".octane", + rendererPath: RENDERER_OCTANE_PATH, + rootPath: INDEX_OCTANE_PATH, + subpaths: { + "": INDEX_OCTANE_PATH, + animation: ANIMATION_PATH, + components: COMPONENTS_OCTANE_PATH, + config: CONFIG_PATH, + input: INPUT_API_PATH, + launcher: LAUNCHER_PATH, + lifecycle: LIFECYCLE_OCTANE_PATH, + platform: PLATFORM_PATH, + prelude: SCHEDULER_POLYFILL_PATH, + renderer: RENDERER_OCTANE_PATH, + }, + }, }; +/** + * The universal-renderer descriptor handed to the Octane compiler: JSX lowers + * to static host plans + dynamic slots and every runtime import retargets to + * the pocket renderer module (framework/src/renderer-octane.ts). + */ +export const OCTANE_RENDERER_DESCRIPTOR = { + id: "pocket", + module: `${"@pocketjs/framework"}/octane/renderer`, + target: "universal", + server: "unsupported", + text: "host", + capabilities: ["portal"], +} as const; + function patchVaporHelperCode(code: string): string { return code.replace( `if (i && i.appContext.vapor && p === "__vapor") { @@ -199,8 +242,8 @@ const VAPOR_HELPERS = new Map([ export function parseFramework(value: string | undefined, source: string): PocketFramework { if (value === undefined || value === "") return "solid"; - if (value === "solid" || value === "vue-vapor") return value; - throw new Error(`PocketJS ${source}: framework must be "solid" or "vue-vapor"`); + if (value === "solid" || value === "vue-vapor" || value === "octane") return value; + throw new Error(`PocketJS ${source}: framework must be "solid", "vue-vapor" or "octane"`); } export interface TransformResult { @@ -354,6 +397,8 @@ async function hashKey( "\0" + vueJsxVaporPkg.version + "\0" + + octanePkg.version + + "\0" + babelCorePkg.version + "\0" + tsPresetPkg.version + @@ -392,6 +437,8 @@ function publicSubpath(spec: string, framework: PocketFramework): string | null if (subpath.startsWith("solid/")) return subpath.slice("solid/".length); if (subpath === "vue-vapor") return ""; if (subpath.startsWith("vue-vapor/")) return subpath.slice("vue-vapor/".length); + if (subpath === "octane") return ""; + if (subpath.startsWith("octane/")) return subpath.slice("octane/".length); return subpath; } @@ -407,6 +454,12 @@ export function packagePath(spec: string, framework: PocketFramework): string | effects: EFFECTS_PATH, }[subpath] ?? null; } + if (spec === `${PACKAGE_NAME}/octane` || spec.startsWith(`${PACKAGE_NAME}/octane/`)) { + return FRAMEWORKS.octane.subpaths[subpath] ?? { + clock: CLOCK_PATH, + effects: EFFECTS_PATH, + }[subpath] ?? null; + } return FRAMEWORKS[framework].subpaths[subpath] ?? { clock: CLOCK_PATH, devtools: DEVTOOLS_PATH, @@ -420,8 +473,8 @@ export function packagePath(spec: string, framework: PocketFramework): string | } export function frameworkVariantPath(path: string, framework: PocketFramework): string { - if (framework !== "vue-vapor" || path.includes("/node_modules/") || path.endsWith(".d.ts")) return path; - const variant = path.replace(/(\.tsx?)$/, ".vue-vapor$1"); + if (framework === "solid" || path.includes("/node_modules/") || path.endsWith(".d.ts")) return path; + const variant = path.replace(/(\.tsx?)$/, `${FRAMEWORKS[framework].outputSuffix}$1`); return variant !== path && existsSync(variant) ? variant : path; } @@ -523,6 +576,36 @@ export async function transformFile( configFile: false, sourceMaps: false, }); + } else if (framework === "octane" && path.endsWith(".tsx")) { + // Collector pass on the pristine source (classes/text literals), then the + // Octane compiler lowers JSX + hooks against the pocket universal + // renderer. Plain .ts modules take the shared TS-preset branch below — + // Octane hook modules must be .tsx so their call sites get slots. + await transformAsync(src, { + filename: path, + presets: opts.presets, + parserOpts: opts.parserOpts, + plugins, + babelrc: false, + configFile: false, + sourceMaps: false, + }); + const compiled = octaneCompile(src, path, { + mode: "client", + renderer: OCTANE_RENDERER_DESCRIPTOR, + }) as { code: string; diagnostics?: readonly unknown[] }; + res = + options.features === undefined + ? { code: compiled.code } + : await transformAsync(compiled.code, { + filename: path, + presets: [], + parserOpts: opts.parserOpts, + plugins: [makeFeatureFolder(options.features)], + babelrc: false, + configFile: false, + sourceMaps: false, + }); } else { res = await transformAsync(src, { filename: path, @@ -572,7 +655,7 @@ export function jsxPlugin( const path = packagePath(args.path, framework); return path ? { path } : undefined; }); - if (framework === "vue-vapor") { + if (framework !== "solid") { build.onResolve({ filter: /^\.{1,2}\// }, (args) => { let resolved: string; try { @@ -583,6 +666,22 @@ export function jsxPlugin( const variant = frameworkVariantPath(resolved, framework); return variant !== resolved ? { path: variant } : undefined; }); + } + if (framework === "octane" && process.env.POCKETJS_OCTANE_PROFILER !== "1") { + // Octane's profiler is replaced with a no-op stub in Pocket bundles: + // its always-on per-render WeakMap bookkeeping pins render graphs + // under the pinned QuickJS's non-ephemeron weak marking (and costs + // frame time). See framework/src/octane-profiling-stub.ts. + build.onResolve({ filter: /^octane\/profiling$/ }, () => ({ + path: OCTANE_PROFILING_STUB_PATH, + })); + build.onResolve({ filter: /^\.\/profiling\.js$/ }, (args) => + args.importer.includes("/node_modules/octane/dist/") + ? { path: OCTANE_PROFILING_STUB_PATH } + : undefined, + ); + } + if (framework === "vue-vapor") { build.onResolve({ filter: /^vue$/ }, () => ({ path: VUE_VAPOR_RUNTIME_PATH })); build.onResolve({ filter: /^\/vue-jsx-vapor\/(?:props|vdom|vapor|ssr)$/ }, (args) => ({ path: args.path, diff --git a/framework/src/components-octane.tsx b/framework/src/components-octane.tsx new file mode 100644 index 000000000..b33f0fb5f --- /dev/null +++ b/framework/src/components-octane.tsx @@ -0,0 +1,446 @@ +// Octane-facing public component API. +// +// Host primitives are hand-lowered universal plans (lower-case host tags stay +// out of the global JSX namespace on purpose — see framework/src/jsx.d.ts); +// composite components are ordinary Octane function components and this file +// is compiled by the Octane compiler, so their hooks get call-site slots. + +import { useLayoutEffect, useMemo, useRef, useState } from "octane"; +import type { JSX as SolidJSX } from "solid-js"; +import { ENUMS, SCREEN_H, SCREEN_W } from "../../contracts/spec/spec.ts"; +import { animate, type EasingName } from "./animation.ts"; +import { + useButtonPress, + useFrame, + pushButtonHandlerBlock, + type ButtonPressOptions, +} from "./frame-octane.tsx"; +import { BTN } from "./input-api.ts"; +import { pushFocusGrid, pushFocusScope, type FocusGridOptions, type FocusScopeOptions } from "./input.ts"; +import { + createPortal as universalCreatePortal, + defineUniversalComponent, + OCTANE_RENDERER_ID, + overlayPortalTarget, + setProp, + universalPlan, + universalValue, + type NodeMirror, +} from "./renderer-octane.ts"; + +export type { NodeMirror } from "./renderer-octane.ts"; + +type StyleObject = Record; +type NodeRef = ((node: NodeMirror | null) => void) | { current: NodeMirror | null } | undefined; + +export type VNodeChild = SolidJSX.Element | (() => SolidJSX.Element); + +const RENDERER_MODULE = "@pocketjs/framework/octane/renderer"; + +const createPortal = universalCreatePortal as unknown as ( + children: unknown, + target: unknown, +) => SolidJSX.Element; + +function valueOf(value: T | (() => T)): T { + return typeof value === "function" ? (value as () => T)() : value; +} + +function resolveActive(active: unknown): boolean { + const resolved = valueOf(active); + return typeof resolved === "function" ? !!resolved() : (resolved as boolean | undefined) ?? true; +} + +function normalizeClassValue(value: unknown): unknown { + if (value && typeof value === "object" && !Array.isArray(value)) { + return Object.entries(value) + .filter(([, active]) => !!active) + .map(([name]) => name) + .join(" "); + } + if (!Array.isArray(value)) return value; + const parts = value + .map((part) => normalizeClassValue(part)) + .filter((part): part is string => typeof part === "string" && part.length > 0); + return parts.join(" "); +} + +function mergeRefs(...refs: NodeRef[]): (node: NodeMirror | null) => void { + return (node) => { + for (const ref of refs) { + if (!ref) continue; + if (typeof ref === "function") ref(node); + else ref.current = node; + } + }; +} + +/** Normalize public props into native-tree's exact host property contract. */ +function hostProps(props: Record): Record { + const out: Record = {}; + for (const key of Object.keys(props)) { + if (key === "children" || key === "key") continue; + const value = props[key]; + if (value === undefined) continue; + if (key === "className") { + if (out.class === undefined) out.class = normalizeClassValue(value); + } else if (key === "class") { + out.class = normalizeClassValue(value); + } else if (key === "nodeRef") { + if (out.ref === undefined) out.ref = value; + } else { + out[key] = value; + } + } + return out; +} + +// --------------------------------------------------------------------------- +// Host primitives +// --------------------------------------------------------------------------- + +export interface ViewProps { + class?: string; + className?: string; + style?: StyleObject; + onPress?: () => void; + focusable?: boolean; + debugName?: string; + nodeRef?: NodeRef; + key?: string | number; + children?: VNodeChild; +} + +export interface TextProps { + class?: string; + className?: string; + style?: StyleObject; + debugName?: string; + nodeRef?: NodeRef; + key?: string | number; + children?: VNodeChild; +} + +export interface ImageProps { + class?: string; + className?: string; + src?: string; + style?: StyleObject; + debugName?: string; + nodeRef?: NodeRef; + key?: string | number; +} + +export interface SpriteProps { + class?: string; + className?: string; + sprite?: string; + style?: StyleObject; + debugName?: string; + nodeRef?: NodeRef; + key?: string | number; +} + +type Component

= (props: P) => SolidJSX.Element; + +function primitive

(tag: "view" | "text" | "image"): Component

{ + const plan = universalPlan(OCTANE_RENDERER_ID, { + kind: "host", + type: tag, + propsSlot: 0, + children: [{ kind: "slot", slot: 1 }], + }); + return defineUniversalComponent( + OCTANE_RENDERER_ID, + (props: Record) => universalValue(plan, [hostProps(props), props.children]), + { module: RENDERER_MODULE }, + ) as unknown as Component

; +} + +export const View = primitive("view"); +export const Text = primitive("text"); +export const Image = primitive("image"); +export const Sprite = primitive("image"); + +// --------------------------------------------------------------------------- +// Composites +// --------------------------------------------------------------------------- + +export interface ScreenProps extends ViewProps {} + +export function Screen(props: ScreenProps) { + return ( + + ); +} + +export interface FocusableProps extends ViewProps { + onPress?: () => void; +} + +export function Focusable(props: FocusableProps) { + return ; +} + +export interface FocusScopeProps extends ViewProps, FocusScopeOptions { + active?: boolean | (() => boolean); +} + +export function FocusScope(props: FocusScopeProps) { + const ref = useRef(null); + const active = resolveActive(props.active); + useLayoutEffect(() => { + const node = ref.current; + if (!node || !active) return; + return pushFocusScope(node, { + autoFocus: props.autoFocus, + restoreFocus: props.restoreFocus, + }); + }, [active]); + const { active: _active, autoFocus: _autoFocus, restoreFocus: _restoreFocus, ...rest } = props; + return ; +} + +export interface FocusGridProps extends ViewProps, FocusGridOptions { + active?: boolean | (() => boolean); +} + +export function FocusGrid(props: FocusGridProps) { + const ref = useRef(null); + const active = resolveActive(props.active); + const columns = props.columns; + const wrap = props.wrap; + useLayoutEffect(() => { + const node = ref.current; + if (!node || !active) return; + return pushFocusGrid(node, { columns, wrap }); + }, [active, columns, wrap]); + const { active: _active, columns: _columns, wrap: _wrap, ...rest } = props; + return ; +} + +export interface ActionHandlerProps extends ButtonPressOptions { + button: number; + onPress: (pressed: number, buttons: number) => void; + children?: VNodeChild; +} + +export function ActionHandler(props: ActionHandlerProps) { + useButtonPress( + props.button, + (pressed, buttons) => props.onPress?.(pressed, buttons), + { + allowWhenBlocked: props.allowWhenBlocked, + active: () => resolveActive(props.active), + latched: props.latched, + }, + ); + return <>{props.children}; +} + +export interface PortalProps { + children?: VNodeChild; +} + +export function Portal(props: PortalProps) { + const target = useMemo(() => overlayPortalTarget(), []); + return <>{createPortal(props.children, target)}; +} + +export interface ModalProps { + class?: string; + panelClass?: string; + open?: boolean | (() => boolean); + children?: VNodeChild; +} + +export function Modal(props: ModalProps) { + const target = useMemo(() => overlayPortalTarget(), []); + const open = resolveActive(props.open); + useLayoutEffect(() => { + if (!open) return; + return pushButtonHandlerBlock(); + }, [open]); + return ( + <> + {createPortal( + + + + {props.children} + + , + target, + )} + + ); +} + +export interface ActionBarProps extends ViewProps {} + +export function ActionBar(props: ActionBarProps) { + const target = useMemo(() => overlayPortalTarget(), []); + return ( + <> + {createPortal( + , + target, + )} + + ); +} + +export interface GridProps extends ViewProps, Partial { + gap?: number; + active?: boolean | (() => boolean); +} + +export function Grid(props: GridProps) { + const ref = useRef(null); + const active = resolveActive(props.active); + const columns = props.columns; + const wrap = props.wrap; + useLayoutEffect(() => { + const node = ref.current; + if (!node || columns == null || !active) return; + return pushFocusGrid(node, { columns, wrap }); + }, [active, columns, wrap]); + const { active: _active, columns: _columns, wrap: _wrap, gap, style, ...rest } = props; + return ( + + ); +} + +export interface LazyProps extends Omit { + when: boolean | (() => boolean); + reveal?: number; + fallback?: VNodeChild | (() => VNodeChild); + children: VNodeChild | (() => VNodeChild); +} + +export function Lazy(props: LazyProps) { + const reveal = Math.max(0, Math.floor(props.reveal ?? 0)); + const [ready, setReady] = useState(reveal === 0); + const elapsed = useRef(0); + useFrame(() => { + if (ready) return; + if (!resolveActive(props.when)) return; + if (++elapsed.current >= reveal) setReady(true); + }); + const active = resolveActive(props.when); + const body = (!active + ? null + : ready + ? valueOf(props.children) + : valueOf(props.fallback)) as VNodeChild; + const { when: _when, reveal: _reveal, fallback: _fallback, children: _children, ...rest } = props; + return ( + + {body} + + ); +} + +export interface GalleryProps { + count: number; + page: number | (() => number); + onPageChange?: (next: number) => void; + renderPage: (index: number) => VNodeChild; + window?: number; + duration?: number; + easing?: EasingName; + bindTriggers?: boolean; + wrap?: boolean; + class?: string; +} + +export function Gallery(props: GalleryProps) { + const count = Math.max(0, Math.floor(props.count ?? 0)); + const win = Math.max(0, Math.floor(props.window ?? 1)); + const clampPage = (n: number): number => + props.wrap ? ((n % count) + count) % count : Math.max(0, Math.min(count - 1, n)); + const page = clampPage(Math.max(0, Math.floor(valueOf(props.page) ?? 0))); + const stripRef = useRef(null); + const mounted = useRef(false); + + if (props.bindTriggers !== false) { + useButtonPress(BTN.LTRIGGER, () => props.onPageChange?.(clampPage(page - 1))); + useButtonPress(BTN.RTRIGGER, () => props.onPageChange?.(clampPage(page + 1))); + } + + useLayoutEffect(() => { + const strip = stripRef.current; + if (!strip) return; + if (!mounted.current) { + mounted.current = true; + setProp(strip, "style", { translateX: -page * SCREEN_W }, undefined); + return; + } + animate(strip, "translateX", -page * SCREEN_W, { + dur: props.duration ?? 300, + easing: props.easing ?? "out", + }); + }, [page]); + + const pages: SolidJSX.Element[] = []; + for (let i = 0; i < count; i++) { + pages.push( + + {Math.abs(i - page) <= win ? props.renderPage(i) : null} + , + ); + } + + return ( + + + {pages} + + + ); +} diff --git a/framework/src/config.ts b/framework/src/config.ts index e95f39d2c..902f9a4d2 100644 --- a/framework/src/config.ts +++ b/framework/src/config.ts @@ -1,11 +1,12 @@ import type { AnimationTheme } from "../compiler/animation.ts"; -export type PocketFramework = "solid" | "vue-vapor"; +export type PocketFramework = "solid" | "vue-vapor" | "octane"; export interface PocketConfig { /** * JSX/runtime framework for application sources. Solid is the default for - * existing apps; Vue Vapor can be selected here or with --framework. + * existing apps; Vue Vapor or Octane can be selected here or with + * --framework. */ framework?: PocketFramework; /** diff --git a/framework/src/frame-octane.tsx b/framework/src/frame-octane.tsx new file mode 100644 index 000000000..a72e8a84a --- /dev/null +++ b/framework/src/frame-octane.tsx @@ -0,0 +1,95 @@ +// App-facing lifecycle callbacks for Octane. +// +// This module is compiled by the Octane compiler (framework=octane walks it), +// so the hook calls below get call-site slots and callers may invoke these +// custom hooks any number of times per component. `useEffectEvent` keeps the +// registered frame callback identity stable across re-renders while always +// running the latest closure. + +import { useEffect, useEffectEvent, useRef, useState } from "octane"; +import { __resetAnalog } from "./analog.ts"; + +export { __setAnalog, analogRaw, analogX, analogY } from "./analog.ts"; + +type FrameCallback = (buttons: number) => void; + +const callbacks = new Set(); +let buttonHandlerBlockDepth = 0; + +export function resetFrameHooks(): void { + callbacks.clear(); + buttonHandlerBlockDepth = 0; + __resetAnalog(); +} + +export function runFrameHooks(buttons: number): void { + for (const cb of [...callbacks]) cb(buttons); +} + +export function useFrame(callback: FrameCallback): void { + const stable = useEffectEvent(callback); + useEffect(() => { + callbacks.add(stable); + return () => { + callbacks.delete(stable); + }; + }, []); +} + +export interface ButtonPressOptions { + allowWhenBlocked?: boolean; + active?: boolean | (() => boolean); + /** See framework/src/frame.ts: arm only after the button is seen up for one frame. */ + latched?: boolean; +} + +export function pushButtonHandlerBlock(): () => void { + buttonHandlerBlockDepth++; + let disposed = false; + return () => { + if (disposed) return; + disposed = true; + buttonHandlerBlockDepth = Math.max(0, buttonHandlerBlockDepth - 1); + }; +} + +export function useButtonPress( + mask: number, + callback: (pressed: number, buttons: number) => void, + opts: ButtonPressOptions = {}, +): void { + const prevButtons = useRef(opts.latched ? ~0 : 0); // latched: "everything held" until released + const handler = useEffectEvent((buttons: number) => { + const pressed = buttons & ~prevButtons.current; + prevButtons.current = buttons; + const active = typeof opts.active === "function" ? opts.active() : opts.active ?? true; + if (!active) return; + if (buttonHandlerBlockDepth > 0 && !opts.allowWhenBlocked) return; + if (pressed & mask) callback(pressed, buttons); + }); + useEffect(() => { + callbacks.add(handler); + return () => { + callbacks.delete(handler); + }; + }, []); +} + +export interface SpriteAnimationOptions { + frameStep?: number; +} + +export function useSpriteAnimation( + frames: readonly string[], + opts: SpriteAnimationOptions = {}, +): string { + if (frames.length === 0) { + throw new Error("PocketJS: useSpriteAnimation() requires at least one frame"); + } + const frameStep = Math.max(1, Math.floor(opts.frameStep ?? 1)); + const [tick, setTick] = useState(0); + useFrame(() => { + setTick((current) => (current + 1) % (frames.length * frameStep)); + }); + return frames[Math.floor(tick / frameStep) % frames.length]; +} diff --git a/framework/src/index-octane.ts b/framework/src/index-octane.ts new file mode 100644 index 000000000..16ad313ac --- /dev/null +++ b/framework/src/index-octane.ts @@ -0,0 +1,265 @@ +// Octane runtime entry: render(App) / mount(App). + +import "./scheduler-polyfill.ts"; + +import { + detectHost, + getOps, + hostViewport, + installFrameHandler, + installHost, + installResizeViewportHook, + type HostOps, +} from "./host.ts"; +import { initDevtools, wrapFrameHandler } from "./devtools.ts"; +import { + createElement, + flushUniversalSync, + insertNode, + registerSprite as rendererRegisterSprite, + registerTexture as rendererRegisterTexture, + render as rendererRender, + rootMirror, + runSweep, + setProp, + setStyleResolver, + type NodeMirror, + type OctaneRenderRoot, +} from "./renderer-octane.ts"; +import { setOverlayRoot } from "./overlay.ts"; +import { registerStyles, resolveStyle } from "./styles.ts"; +import { handleFrame, setInputRoot } from "./input.ts"; +import { __setAnalog, resetFrameHooks, runFrameHooks } from "./frame-octane.tsx"; +import { __resetTouches, __setTouches } from "./touch.ts"; +import { __advanceClock, resetClock } from "./clock.ts"; +import { __drainEffects, resetEffects } from "./effects.ts"; +import { entries as pakEntries, get as pakGet, hasPack, loadPack } from "./pak.ts"; +import { STYLE_IDS as DEFAULT_STYLE_IDS } from "./styles.generated.ts"; +import { ENUMS, SCREEN_H, SCREEN_W } from "../../contracts/spec/spec.ts"; + +export interface RenderOptions { + /** web/wasm/test hosts inject their ops here; omit on PSP (globalThis.ui). */ + ops?: HostOps; + /** STYLE_IDS table (styles.generated.ts) - class literal -> styleId. */ + styles?: Record; + /** App pack; defaults to globalThis.__pak when present. */ + pak?: ArrayBuffer; +} + +export type MountOptions = RenderOptions; + +const STYLES_KEY = "ui:styles"; +const FONT_PREFIX = "ui:font."; +const IMG_PREFIX = "ui:img."; +const SPRITE_PREFIX = "ui:sprite."; + +export function frameworkName(): "Octane" { + return "Octane"; +} + +function globalOps(): HostOps | undefined { + return (globalThis as { ui?: HostOps }).ui; +} + +function uploadPakImages(ops: HostOps): void { + if ((ops as HostOps & { __textures?: unknown }).__textures) return; + for (const key of pakEntries(IMG_PREFIX)) { + const blob = pakGet(key); + let handle: number; + if (ops.uploadImgEntry) { + handle = ops.uploadImgEntry(blob); + } else { + const dv = new DataView(blob.buffer, blob.byteOffset, blob.byteLength); + handle = ops.uploadTexture( + blob.subarray(8), + dv.getUint16(0, true), + dv.getUint16(2, true), + blob[4], + ); + } + if (handle >= 0) rendererRegisterTexture(key.slice(IMG_PREFIX.length), handle); + } +} + +function uploadPakSprites(ops: HostOps): void { + if ((ops as HostOps & { __sprites?: unknown }).__sprites) return; + for (const key of pakEntries(SPRITE_PREFIX)) { + const blob = pakGet(key); + const dv = new DataView(blob.buffer, blob.byteOffset, blob.byteLength); + const w = dv.getUint16(0, true); + const h = dv.getUint16(2, true); + const psm = blob[4]; + const frames = dv.getUint16(6, true); + const cols = dv.getUint16(8, true); + const step = dv.getUint16(10, true); + const handle = ops.uploadTexture(blob.subarray(16), w, h, psm); + if (handle >= 0) { + rendererRegisterSprite(key.slice(SPRITE_PREFIX.length), { handle, frames, cols, step }); + } + } +} + +function createLayer(style: Record): NodeMirror { + const layer = createElement("view"); + setProp(layer, "style", style, undefined); + return layer; +} + +let appLayer: NodeMirror | null = null; +let overlayLayer: NodeMirror | null = null; + +export function resizeViewport(w: number, h: number): void { + if (!appLayer || !overlayLayer) return; + setProp(appLayer, "style", { width: w, height: h, overflow: ENUMS.Overflow.Hidden }, undefined); + setProp( + overlayLayer, + "style", + { + width: w, + height: h, + posType: ENUMS.PosType.Absolute, + insetT: 0, + insetR: 0, + insetB: 0, + insetL: 0, + zIndex: 1000, + }, + undefined, + ); + const ops = getOps() as HostOps & { __viewport?: { w: number; h: number } }; + ops.__viewport = { w, h }; +} + +export function render(code: OctaneRenderRoot, opts: RenderOptions = {}): () => void { + const host = detectHost(opts.ops); + installHost(host); + + setStyleResolver(resolveStyle); + if (opts.styles) registerStyles(opts.styles); + + const nativeTextureTable = host.kind === "native" + ? (host.ops as HostOps & { __textures?: Record }).__textures + : undefined; + if (host.kind === "native") { + if (nativeTextureTable) { + for (const key in nativeTextureTable) { + rendererRegisterTexture(key, nativeTextureTable[key]); + } + } + const spr = ( + host.ops as HostOps & { + __sprites?: Record; + } + ).__sprites; + if (spr) { + for (const key in spr) rendererRegisterSprite(key, spr[key]); + } + } + + // Transitional native ports can retain strict target/ABI identity while + // loading resources from globalThis.__pak until they gain a native parser. + // Established console hosts publish __textures, including an empty table. + if (host.kind === "injected" || nativeTextureTable === undefined) { + if (opts.pak) loadPack(opts.pak); + if (hasPack()) { + for (const key of pakEntries()) { + if (key === STYLES_KEY) { + host.ops.loadStyles?.(pakGet(key)); + } else if (key.startsWith(FONT_PREFIX)) { + host.ops.loadFontAtlas?.(pakGet(key)); + } + } + } + } + + const viewport = hostViewport(host.ops); + const layerW = viewport?.w ?? SCREEN_W; + const layerH = viewport?.h ?? SCREEN_H; + const appRoot = createLayer({ + width: layerW, + height: layerH, + overflow: ENUMS.Overflow.Hidden, + }); + const overlayRoot = createLayer({ + width: layerW, + height: layerH, + posType: ENUMS.PosType.Absolute, + insetT: 0, + insetR: 0, + insetB: 0, + insetL: 0, + zIndex: 1000, + }); + insertNode(rootMirror, appRoot); + insertNode(rootMirror, overlayRoot); + setOverlayRoot(overlayRoot); + appLayer = appRoot; + overlayLayer = overlayRoot; + + setInputRoot(appRoot); + resetFrameHooks(); + resetClock(); // clock policy + effect shell (docs/DETERMINISM.md), same as Solid + resetEffects(); + initDevtools(host.ops); // DevTools shim (docs/DEVTOOLS.md), same as the Solid path. + installFrameHandler( + wrapFrameHandler((buttons: number, analog: number, touches?: readonly number[]) => { + __advanceClock(); + __setAnalog(analog); + __setTouches(touches); + __drainEffects(); + // Octane schedules re-renders on the microtask queue; the sync boundary + // drains them before the sweep so a frame's commits land in that frame. + flushUniversalSync(() => { + runFrameHooks(buttons); + handleFrame(buttons); + }); + runSweep(); + }), + ); + + const dispose = rendererRender(code, appRoot); + const removeResizeViewportHook = installResizeViewportHook(resizeViewport); + return () => { + removeResizeViewportHook(); + __resetTouches(); + dispose(); + setInputRoot(null); + setOverlayRoot(null); + appLayer = null; + overlayLayer = null; + for (const child of rootMirror.children.splice(0)) { + child.parent = null; + host.ops.destroyNode(child.id); + } + runSweep(); + }; +} + +export function mount(code: OctaneRenderRoot, opts: MountOptions = {}): () => void { + const ops = opts.ops ?? globalOps(); + if (!ops) { + throw new Error("PocketJS: mount() requires globalThis.ui or opts.ops"); + } + if (opts.pak) loadPack(opts.pak); + uploadPakImages(ops); + uploadPakSprites(ops); + return render(code, { + ops, + styles: opts.styles ?? DEFAULT_STYLE_IDS, + pak: opts.pak, + }); +} + +export type { HostOps, Host } from "./host.ts"; +export { detectHost, installHost, getOps } from "./host.ts"; +export type { NodeMirror, OctaneRenderRoot } from "./renderer-octane.ts"; +export { + retain, + release, + runSweep, + registerTexture, + registerSprite, + missCounters, +} from "./renderer-octane.ts"; +export { registerStyles, resolveStyle } from "./styles.ts"; +export { entries as pakEntries, get as pakGet, loadPack, resetPack } from "./pak.ts"; diff --git a/framework/src/lifecycle-octane.ts b/framework/src/lifecycle-octane.ts new file mode 100644 index 000000000..65f6ea543 --- /dev/null +++ b/framework/src/lifecycle-octane.ts @@ -0,0 +1,11 @@ +export { + pushButtonHandlerBlock, + useFrame, + useButtonPress, + useSpriteAnimation, + analogX, + analogY, + analogRaw, + type ButtonPressOptions, + type SpriteAnimationOptions, +} from "./frame-octane.tsx"; diff --git a/framework/src/octane-profiling-stub.ts b/framework/src/octane-profiling-stub.ts new file mode 100644 index 000000000..b8aa73820 --- /dev/null +++ b/framework/src/octane-profiling-stub.ts @@ -0,0 +1,53 @@ +// No-op stand-in for `octane/profiling`, aliased in by the build for +// framework=octane bundles (framework/compiler/jsx-plugin.ts). +// +// Two reasons, both PSP-driven: +// 1. Memory — the real profiler records per-render bookkeeping into +// module-level WeakMaps (`trackedComponents` is written even while the +// profiler is stopped). The pinned QuickJS's new GC marks weak-record +// VALUES strongly (js_map_mark is not ephemeron-aware), so entries whose +// value closes over their key pin every render's owner graph: heavy demos +// leaked ~50 objects per re-render until the fixed arena OOM'd +// (music died at frame 58 of its capture window). +// 2. Time — with the profiler stubbed out, no per-render profiling work runs +// inside the PSP frame budget at all. +// +// Keep the export surface in sync with octane/dist/profiling.js. + +export function __profileBail(..._args: unknown[]): void {} +export function __profileBeginRender( + ..._args: unknown[] +): null { + return null; +} +export function __profileComponent(component: T, ..._rest: unknown[]): T { + return component; +} +export function __profileComponentSource(..._args: unknown[]): void {} +export function __profileEndRender(..._args: unknown[]): void {} +export function __profileHasComponentMetadata(..._args: unknown[]): boolean { + return false; +} +export function __profileHook(slot: T, ..._rest: unknown[]): T { + return slot; +} +export function __profileResolveHook(slot: T, ..._rest: unknown[]): T { + return slot; +} +export function __profileSchedule(..._args: unknown[]): void {} +export function __profileTrackComponent(..._args: unknown[]): void {} + +export const profiler = { + start(_options?: unknown): void {}, + stop(): void {}, + clear(): void {}, + isActive(): boolean { + return false; + }, + exportTrace(): { events: never[] } { + return { events: [] }; + }, + events(): never[] { + return []; + }, +}; diff --git a/framework/src/prelude.ts b/framework/src/prelude.ts index 315aab36a..71b5236f6 100644 --- a/framework/src/prelude.ts +++ b/framework/src/prelude.ts @@ -1,34 +1,6 @@ // Runtime globals that must exist before Vue Vapor scheduler modules evaluate. +import "./scheduler-polyfill.ts"; import { installVueVaporDom } from "./vue-vapor-dom.ts"; -if (typeof (globalThis as { queueMicrotask?: unknown }).queueMicrotask !== "function") { - (globalThis as { queueMicrotask?: (fn: () => void) => void }).queueMicrotask = ( - fn: () => void, - ) => { - Promise.resolve().then(fn); - }; -} - -if (typeof (globalThis as { setTimeout?: unknown }).setTimeout !== "function") { - (globalThis as unknown as { setTimeout?: (fn: () => void, delay?: number) => number }).setTimeout = ( - fn: () => void, - ) => { - queueMicrotask(fn); - return 0; - }; -} - -if (typeof (globalThis as { clearTimeout?: unknown }).clearTimeout !== "function") { - (globalThis as { clearTimeout?: (id: number) => void }).clearTimeout = () => {}; -} - -if (typeof (globalThis as { console?: unknown }).console !== "object") { - (globalThis as unknown as { console?: Record void> }).console = { - log() {}, - warn() {}, - error() {}, - }; -} - installVueVaporDom(); diff --git a/framework/src/renderer-octane.ts b/framework/src/renderer-octane.ts new file mode 100644 index 000000000..c216c2b1f --- /dev/null +++ b/framework/src/renderer-octane.ts @@ -0,0 +1,307 @@ +// Octane renderer over the native `ui.*` tree. +// +// Octane's universal client target compiles JSX into immutable host plans +// plus dynamic value slots and executes them against a UniversalHostDriver +// (no DOM, no virtual DOM). This module is the renderer that compiled +// modules import — the compiler descriptor's `module` id resolves here — so +// it re-exports the host-neutral universal ABI (hooks, plan helpers, +// hookSlots/withSlot) and implements the driver that maps universal host +// command batches onto the shared NodeMirror arena in native-tree.ts. + +export * from "octane/universal/native"; + +import { profiler } from "octane/profiling"; +import { + createUniversalRoot, + type UniversalComponent, + type UniversalHostDriver, + type UniversalHostParent, + type UniversalRoot, +} from "octane/universal/native"; +import { ENUMS, SCREEN_H, SCREEN_W } from "../../contracts/spec/spec.ts"; +import { + applyProps, + createElement, + createTextNode, + insertNode, + removeNode, + replaceText, + setProp, + type HostProps, + type NodeMirror, +} from "./native-tree.ts"; +import { getOverlayRoot } from "./overlay.ts"; + +export { + createElement, + createTextNode, + detachNode, + getFirstChild, + getNextSibling, + getParentNode, + insertNode, + isTextNode, + missCounters, + registerSprite, + registerTexture, + release, + removeNode, + replaceText, + resetRendererState, + resetSprites, + resetTextures, + retain, + rootMirror, + runSweep, + setProp, + setStyleResolver, + type HostProps, + type NodeMirror, +} from "./native-tree.ts"; + +/** Renderer alias used by the compiler descriptor and every compiled plan. */ +export const OCTANE_RENDERER_ID = "pocket"; + +// --------------------------------------------------------------------------- +// Portal targets +// --------------------------------------------------------------------------- +// // pass this marker as the createPortal target. +// The driver materializes one full-screen absolute view under the overlay +// root when the portal registration is prepared, and removes it exactly once +// when the registration is released (retarget, unmount, abort). + +const OVERLAY_TARGET = Symbol.for("pocketjs.octane.overlay-target"); + +export interface OverlayPortalTarget { + readonly [OVERLAY_TARGET]: true; +} + +export function overlayPortalTarget(): OverlayPortalTarget { + return { [OVERLAY_TARGET]: true } as OverlayPortalTarget; +} + +function isOverlayTarget(value: unknown): value is OverlayPortalTarget { + return ( + !!value && + typeof value === "object" && + (value as Record)[OVERLAY_TARGET] === true + ); +} + +function isNodeMirrorTarget(value: unknown): value is NodeMirror { + return ( + !!value && + typeof value === "object" && + typeof (value as NodeMirror).id === "number" && + Array.isArray((value as NodeMirror).children) + ); +} + +// --------------------------------------------------------------------------- +// Driver +// --------------------------------------------------------------------------- + +interface PocketContainer { + root: NodeMirror; + mirrors: Map; + committedProps: Map; + portalHosts: Map; +} + +let portalTargetSeq = 0; + +function textValue(props: Readonly>): string { + const value = props.value; + return value == null ? "" : String(value); +} + +function createPocketDriver(): UniversalHostDriver { + return { + id: OCTANE_RENDERER_ID, + capabilities: { text: "host" }, + portals: { + prepareTarget(context) { + const container = context.container; + const target = context.target; + if (context.transported) { + throw new Error("PocketJS: octane portal targets never cross a transport"); + } + let host: NodeMirror; + let owned = false; + if (isOverlayTarget(target)) { + host = createElement("view"); + setProp( + host, + "style", + { + width: SCREEN_W, + height: SCREEN_H, + posType: ENUMS.PosType.Absolute, + insetT: 0, + insetR: 0, + insetB: 0, + insetL: 0, + zIndex: 1000, + }, + undefined, + ); + insertNode(getOverlayRoot(), host); + owned = true; + } else if (isNodeMirrorTarget(target)) { + host = target; + } else { + throw new Error( + "PocketJS: octane portal target must be overlayPortalTarget() or a NodeMirror", + ); + } + const id = ++portalTargetSeq; + const handle = context.createPortalTargetHandle(id); + container.portalHosts.set(id, host); + return { + handle, + release() { + container.portalHosts.delete(id); + if (owned && host.parent) removeNode(host.parent, host); + }, + }; + }, + }, + prepareBatch(container, batch) { + if (batch.renderer !== OCTANE_RENDERER_ID) { + throw new Error( + `PocketJS: octane driver renderer mismatch (batch=${JSON.stringify(batch.renderer)})`, + ); + } + const { mirrors, committedProps, portalHosts } = container; + const resolveParent = (parent: UniversalHostParent): NodeMirror => { + if (parent === null) return container.root; + if (typeof parent === "number") { + const mirror = mirrors.get(parent); + if (!mirror) throw new Error(`PocketJS: octane driver unknown parent ${parent}`); + return mirror; + } + const host = portalHosts.get(parent.id); + if (!host) throw new Error(`PocketJS: octane driver unknown portal target ${String(parent.id)}`); + return host; + }; + const resolve = (id: number): NodeMirror => { + const mirror = mirrors.get(id); + if (!mirror) throw new Error(`PocketJS: octane driver unknown node ${id}`); + return mirror; + }; + let applied = false; + return { + apply() { + if (applied) return; + applied = true; + for (const command of batch.commands) { + applyCommand(command); + } + }, + abort() { + // Nothing staged outside apply(): host mutation happens only on + // acceptance, so an aborted attempt has nothing to release. + }, + }; + function applyCommand(command: (typeof batch.commands)[number]): void { + switch (command.op) { + case "create": { + if (mirrors.has(command.id)) { + throw new Error(`PocketJS: octane driver duplicate node ${command.id}`); + } + let mirror: NodeMirror; + if (command.type === "#text") { + mirror = createTextNode(textValue(command.props)); + } else { + mirror = createElement(command.type); + applyProps(mirror, command.props as HostProps); + } + mirrors.set(command.id, mirror); + committedProps.set(command.id, command.props as HostProps); + break; + } + case "update": { + const mirror = resolve(command.id); + const prev = committedProps.get(command.id) ?? {}; + if (mirror.domTag === "#text") { + const next = textValue(command.props); + if (next !== mirror.text) replaceText(mirror, next); + } else { + applyProps(mirror, command.props as HostProps, prev); + } + committedProps.set(command.id, command.props as HostProps); + break; + } + case "insert": + case "move": { + const parent = resolveParent(command.parent); + const before = command.before === null ? null : resolve(command.before); + insertNode(parent, resolve(command.id), before); + break; + } + case "remove": { + removeNode(resolveParent(command.parent), resolve(command.id)); + break; + } + case "destroy": { + // removeNode already queued the detached subtree for the + // end-of-frame sweep (native destroyNode frees whole trees); + // the driver only drops its records. + mirrors.delete(command.id); + committedProps.delete(command.id); + break; + } + default: + throw new Error( + `PocketJS: octane driver does not implement host command '${command.op}'`, + ); + } + } + }, + getPublicInstance(container, id) { + return container.mirrors.get(id) ?? null; + }, + }; +} + +// --------------------------------------------------------------------------- +// Root +// --------------------------------------------------------------------------- + +export type OctaneRenderRoot = UniversalComponent>; + +let activeRoot: UniversalRoot | null = null; + +/** The universal root of the mounted app (input/event plumbing hooks). */ +export function getActiveOctaneRoot(): UniversalRoot | null { + return activeRoot; +} + +export function render(code: OctaneRenderRoot, root: NodeMirror): () => void { + // Builds alias octane/profiling to the no-op stub (jsx-plugin), so these + // are belt-and-braces for unbundled paths (unit imports without the + // plugin): the real profiler's per-render records otherwise pin render + // graphs under the pinned QuickJS's non-ephemeron weak marking. + profiler.stop(); + profiler.clear(); + const container: PocketContainer = { + root, + mirrors: new Map(), + committedProps: new Map(), + portalHosts: new Map(), + }; + const universalRoot = createUniversalRoot( + container, + createPocketDriver(), + ); + activeRoot = universalRoot; + const attempt = universalRoot.render(code, {}); + if (attempt.status === "suspended") { + attempt.abort(); + throw new Error("PocketJS: octane render() suspended at mount — Suspense-on-boot is not supported"); + } + return () => { + if (activeRoot === universalRoot) activeRoot = null; + universalRoot.unmount(); + }; +} diff --git a/framework/src/scheduler-polyfill.ts b/framework/src/scheduler-polyfill.ts new file mode 100644 index 000000000..4eb66da96 --- /dev/null +++ b/framework/src/scheduler-polyfill.ts @@ -0,0 +1,33 @@ +// Runtime scheduler globals shared by the Vue Vapor and Octane entries. +// QuickJS has no event loop: queueMicrotask lowers onto the promise job +// queue (drained by the host once per frame) and setTimeout degrades to a +// microtask — deterministic-clock apps use onFrame/after() instead. + +if (typeof (globalThis as { queueMicrotask?: unknown }).queueMicrotask !== "function") { + (globalThis as { queueMicrotask?: (fn: () => void) => void }).queueMicrotask = ( + fn: () => void, + ) => { + Promise.resolve().then(fn); + }; +} + +if (typeof (globalThis as { setTimeout?: unknown }).setTimeout !== "function") { + (globalThis as unknown as { setTimeout?: (fn: () => void, delay?: number) => number }).setTimeout = ( + fn: () => void, + ) => { + queueMicrotask(fn); + return 0; + }; +} + +if (typeof (globalThis as { clearTimeout?: unknown }).clearTimeout !== "function") { + (globalThis as { clearTimeout?: (id: number) => void }).clearTimeout = () => {}; +} + +if (typeof (globalThis as { console?: unknown }).console !== "object") { + (globalThis as unknown as { console?: Record void> }).console = { + log() {}, + warn() {}, + error() {}, + }; +} diff --git a/hosts/pocketbook/docs/INTEGRATION.md b/hosts/pocketbook/docs/INTEGRATION.md index 6c1200933..9835580b4 100644 --- a/hosts/pocketbook/docs/INTEGRATION.md +++ b/hosts/pocketbook/docs/INTEGRATION.md @@ -2,7 +2,7 @@ > **Goal:** Create a new PocketJS host that renders the PocketJS UI engine on PocketBook > e-readers via the inkview SDK, enabling native-speed applications built with -> Solid/Vue Vapor + Tailwind on e-ink hardware. +> Solid/Vue Vapor/Octane + Tailwind on e-ink hardware. --- @@ -31,14 +31,14 @@ ``` ┌─────────────────────────────────────────────────────────────────┐ -│ app.tsx (Solid or Vue Vapor + Tailwind classes) │ +│ app.tsx (Solid, Vue Vapor or Octane + Tailwind classes) │ │ Compiled by @pocketjs/framework compiler (jsx-plugin, pak) │ └──────────────────────────┬──────────────────────────────────────┘ │ bundle.js + styles.bin + font atlases + images ▼ ┌─────────────────────────────────────────────────────────────────┐ │ QuickJS (single realm, ~ES2023) │ -│ framework/src/renderer-solid.ts or renderer-vue-vapor.ts │ +│ framework/src/renderer-{solid,vue-vapor,octane}.ts │ │ Emits ui.* ops via globalThis.ui (HostOps interface) │ └──────────────────────────┬──────────────────────────────────────┘ │ ~17 numeric FFI calls (createNode, setProp, setText…) @@ -100,7 +100,7 @@ RGBA8→Gray8 conversion + e-ink refresh management on top. | --------- | --------- | | **inkview-rs** | **None.** Used as a dependency as-is. | | **pocketjs-core** | **None.** DrawList + software rasterizer used unchanged. | -| **pocketjs framework** | **None.** Solid/Vue Vapor renderers are host-agnostic. | +| **pocketjs framework** | **None.** Solid/Vue Vapor/Octane renderers are host-agnostic. | | **pocketjs contracts** | **Additive.** New target profile in `platforms.ts`, new build backend entry. | | **NEW `hosts/pocketbook/`** | **All the new code.** ~1000–2000 lines of Rust. | @@ -111,7 +111,7 @@ RGBA8→Gray8 conversion + e-ink refresh management on top. ### Knowledge - Basic Rust (structs, traits, closures — you don't need to be an expert) -- Familiarity with PocketJS app development (you'll write apps in Solid/Vue Vapor) +- Familiarity with PocketJS app development (you'll write apps in Solid/Vue Vapor/Octane) - Understanding of e-ink display characteristics (ghosting, refresh modes) ### Tools @@ -1071,7 +1071,7 @@ PocketJS apps are compiled into a **pak** — a bundle containing: | File | Contents | | ------ | ---------- | -| `bundle.js` | Compiled app (Solid/Vue Vapor → universal renderer) | +| `bundle.js` | Compiled app (Solid/Vue Vapor/Octane → universal renderer) | | `styles.bin` | Tailwind classes → style table records | | `font-atlas-*.bin` | Baked Inter glyph atlases (exactly the app's codepoints) | | `images/` | PNG/JPEG textures referenced by the app | @@ -1330,6 +1330,7 @@ feature-detects optional HostOps methods. | `framework/src/native-tree.ts` | NodeMirror arena (JS-side tree mirror) | | `framework/src/renderer-solid.ts` | Solid universal renderer over HostOps | | `framework/src/renderer-vue-vapor.ts` | Vue Vapor renderer over HostOps | +| `framework/src/renderer-octane.ts` | Octane universal driver over HostOps | | `hosts/psp/src/ffi.rs` | PSP's HostOps installation (reference implementation) | | `hosts/psp/src/ge.rs` | PSP's DrawList walker (reference for a GPU backend) | | `hosts/psp/src/main.rs` | PSP's frame loop ordering | diff --git a/hosts/psp/src/host.rs b/hosts/psp/src/host.rs index 1d1491c2e..73e7297ed 100644 --- a/hosts/psp/src/host.rs +++ b/hosts/psp/src/host.rs @@ -153,5 +153,27 @@ pub unsafe fn log_exception_with(ctx: *mut JSContext, sink: impl Fn(&str)) { } JS_FreeCString(ctx, s); } + // Diagnostics for opaque exception values: report the tag and, for + // objects, the message/stack properties individually (a throw whose + // toString fails stringifies as "null" above and hides the cause). + // JS_TAG_OBJECT (-1) is absent from the PSP bindings surface. + const TAG_OBJECT: i32 = -1; + sink(&alloc::format!("exception tag={}", JS_ValueGetTag(e))); + if JS_ValueGetTag(e) == TAG_OBJECT { + for prop in [b"message\0".as_ptr(), b"stack\0".as_ptr()] { + let v = JS_GetPropertyStr(ctx, e, prop as *const core::ffi::c_char); + let mut plen: size_t = 0; + let ps = JS_ToCStringLen2(ctx, &mut plen, v, 0); + if !ps.is_null() { + if let Ok(pmsg) = + core::str::from_utf8(core::slice::from_raw_parts(ps as *const u8, plen)) + { + sink(pmsg); + } + JS_FreeCString(ctx, ps); + } + JS_FreeValue(ctx, v); + } + } JS_FreeValue(ctx, e); } diff --git a/hosts/psp/src/main.rs b/hosts/psp/src/main.rs index c83dbee17..9a0e11fa8 100644 --- a/hosts/psp/src/main.rs +++ b/hosts/psp/src/main.rs @@ -27,9 +27,7 @@ use psp::sys::DisplayPixelFormat; use psp::sys::{self, CtrlMode, GuContextType, GuSyncBehavior, GuSyncMode, IoOpenFlags, SceCtrlData}; use pocketjs_core::spec; -use pocketjs_psp::{dbg, ffi, ge, host, pak, svc, switch, veil, vid}; -#[cfg(feature = "bench")] -use pocketjs_psp::arena; +use pocketjs_psp::{arena, dbg, ffi, ge, host, pak, svc, switch, veil, vid}; psp::module!("pocketjs", 1, 1); @@ -48,6 +46,17 @@ const MULTI_APP_SIM_HZ: u32 = 20; static POCKETJS_APP_NAME: &str = env!("POCKETJS_APP"); static POCKETJS_TRACE: &str = env!("POCKETJS_TRACE"); +// Arena bump high-water at the last host-forced collection (frame loop's +// arena-pressure GC below). Single-threaded QuickJS worker. +static mut LAST_GC_BUMP: usize = 0; + +// libquickjs-sys omits JS_RunGC; the linked QuickJS C library provides it +// (local-extern pattern, same as host.rs JS_ExecutePendingJob). +extern "C" { + fn JS_RunGC(rt: *mut JSRuntime); +} + + // Build-time scripted input for deterministic PPSSPPHeadless captures // (tests/e2e/ppsspp.ts). Baked by build.rs from the POCKETJS_CAPTURE_INPUT env; // same "frame:mask,frame:mask" format as dreamcart's PSPJS_CAPTURE_INPUT. @@ -662,6 +671,29 @@ unsafe fn run_guest( } host::drain_jobs(rt); + // Arena-pressure GC (post-profiler-stub this WORKS: the guest's + // per-frame cycles are collectable once no WeakMap pins them, and the + // engine's lazy live*1.5 threshold otherwise lets its slab chunks pin + // the fixed arena). Collect when a frame leaves the bump >256 KiB + // past the last collection; steady-state guests never trigger it. + { + const GC_BUMP_STEP: usize = 256 * 1024; + let bump = arena::stats().bump_bytes; + if bump > LAST_GC_BUMP.saturating_add(GC_BUMP_STEP) { + JS_RunGC(rt); + LAST_GC_BUMP = arena::stats().bump_bytes; + } + } + if trace_enabled() && guest_frame % 25 == 0 { + let s = arena::stats(); + trace_pair( + b"[PocketJS arena] ", + &alloc::format!( + "frame {} bump {} tail {}", + guest_frame, s.bump_bytes, s.tail_free_bytes + ), + ); + } #[cfg(feature = "bench")] let bench_after_jobs = bench_now_us(); if guest_frame == 0 { diff --git a/package.json b/package.json index 45b60db00..e3fb5c4a9 100644 --- a/package.json +++ b/package.json @@ -95,7 +95,15 @@ "./vue-vapor/components": "./framework/src/components-vue-vapor.ts", "./vue-vapor/input": "./framework/src/input-api.ts", "./vue-vapor/lifecycle": "./framework/src/lifecycle-vue-vapor.ts", - "./vue-vapor/renderer": "./framework/src/renderer-vue-vapor.ts" + "./vue-vapor/renderer": "./framework/src/renderer-vue-vapor.ts", + "./octane": "./framework/src/index-octane.ts", + "./octane/animation": "./framework/src/animation.ts", + "./octane/clock": "./framework/src/clock.ts", + "./octane/effects": "./framework/src/effects.ts", + "./octane/components": "./framework/src/components-octane.tsx", + "./octane/input": "./framework/src/input-api.ts", + "./octane/lifecycle": "./framework/src/lifecycle-octane.ts", + "./octane/renderer": "./framework/src/renderer-octane.ts" }, "description": "High-performance JSX UI outside the browser, with native rendering, standard Vue Vapor and Solid support, a Tailwind design system, and 60 FPS animation under an 8 MB memory budget.", "scripts": { @@ -132,7 +140,7 @@ "e2e:launcher": "bun tests/e2e/launcher-ppsspp.ts", "e2e:launcher:vita": "bun tests/e2e/launcher-vita3k.ts", "pocket:pack": "bun tools/pocket-pack.ts", - "test": "bun tools/build.ts hero >/dev/null && bun tests/contract.ts && bun test tests/release-check.test.ts tests/release-notes.test.ts tests/platform-contracts.test.ts tests/pocket-package.test.ts tests/widget-args.test.ts tests/ipod-nano.test.ts tests/note.test.ts tests/site-stage.test.ts tests/host-build-inputs.test.ts tests/platform-runtime.test.ts tests/app-check.test.ts tests/vue-sfc.test.ts tests/font-bake.test.ts tests/touch.test.ts tests/vita-package.test.ts tests/psp-toolchain.test.ts tests/symbian-data.test.ts tests/symbian-toolchain.test.ts tests/symbian-device.test.ts tests/symbian-runtime.test.ts tests/cli.test.ts tests/npm-package.test.ts tests/video-outro.test.ts tests/osk-layout.test.ts && bun test --conditions=browser tests/tailwind.test.ts tests/renderer.test.ts tests/cursor.test.ts tests/action-handler-vue-vapor.test.ts tests/vue-vapor-dom.test.ts tests/vue-vapor-pak.test.ts tests/svg-bake.test.ts tests/devtools.test.ts tests/hot.test.ts tests/clock.test.ts tests/tiles.test.ts && bun tools/build.ts hero-vue-sfc-main --framework=vue-vapor >/dev/null && bun tools/build.ts vue-sfc-lab-main --framework=vue-vapor >/dev/null && bun test --conditions=browser tests/vue-sfc-lab.test.ts && bun tools/build.ts cafe-main >/dev/null && bun test --conditions=browser tests/sim.test.ts && bun tools/build.ts zoomlab-main >/dev/null && bun test --conditions=browser tests/deepzoom-sim.test.ts && bun tools/build.ts im-main >/dev/null && bun test --conditions=browser tests/im-sim.test.ts && bun tools/launcher.ts covers >/dev/null && bun test --conditions=browser tests/launcher-sim.test.ts", + "test": "bun tools/build.ts hero >/dev/null && bun tests/contract.ts && bun test tests/release-check.test.ts tests/release-notes.test.ts tests/platform-contracts.test.ts tests/pocket-package.test.ts tests/widget-args.test.ts tests/ipod-nano.test.ts tests/note.test.ts tests/site-stage.test.ts tests/host-build-inputs.test.ts tests/platform-runtime.test.ts tests/app-check.test.ts tests/vue-sfc.test.ts tests/font-bake.test.ts tests/touch.test.ts tests/vita-package.test.ts tests/psp-toolchain.test.ts tests/symbian-data.test.ts tests/symbian-toolchain.test.ts tests/symbian-device.test.ts tests/symbian-runtime.test.ts tests/cli.test.ts tests/npm-package.test.ts tests/video-outro.test.ts tests/osk-layout.test.ts && bun test --conditions=browser tests/tailwind.test.ts tests/renderer.test.ts tests/cursor.test.ts tests/action-handler-vue-vapor.test.ts tests/vue-vapor-dom.test.ts tests/vue-vapor-pak.test.ts tests/svg-bake.test.ts tests/devtools.test.ts tests/hot.test.ts tests/clock.test.ts tests/tiles.test.ts && bun tools/build.ts hero-vue-sfc-main --framework=vue-vapor >/dev/null && bun tools/build.ts vue-sfc-lab-main --framework=vue-vapor >/dev/null && bun test --conditions=browser tests/vue-sfc-lab.test.ts && bun tools/build.ts hero-main --framework=octane >/dev/null && bun test --conditions=browser tests/octane-smoke.test.ts && bun tools/build.ts cafe-main >/dev/null && bun test --conditions=browser tests/sim.test.ts && bun tools/build.ts zoomlab-main >/dev/null && bun test --conditions=browser tests/deepzoom-sim.test.ts && bun tools/build.ts im-main >/dev/null && bun test --conditions=browser tests/im-sim.test.ts && bun tools/launcher.ts covers >/dev/null && bun test --conditions=browser tests/launcher-sim.test.ts", "tape": "bun tools/tape.ts", "tape:check": "bun tools/tape.ts replay hero-main tests/tapes/hero-main.tape.json --assert tests/tapes/hero-main.hashes.json", "devtools": "bun tools/devtools.ts", @@ -151,6 +159,7 @@ "dependencies": { "@vue/compiler-sfc": "3.6.0-rc.1", "@vue/compiler-vapor": "3.6.0-rc.1", + "octane": "0.1.18", "solid-js": "^1.9", "vue": "3.6.0-rc.1", "vue-jsx-vapor": "3.2.19" diff --git a/site/assets/tailwind.css b/site/assets/tailwind.css index fd9cc9078..f8049dc3c 100644 --- a/site/assets/tailwind.css +++ b/site/assets/tailwind.css @@ -548,12 +548,14 @@ border-top-left-radius: 0; } .doc-fw-radio-solid:checked ~ .doc-fw-tabs .doc-fw-tab-solid, - .doc-fw-radio-vue-vapor:checked ~ .doc-fw-tabs .doc-fw-tab-vue-vapor { + .doc-fw-radio-vue-vapor:checked ~ .doc-fw-tabs .doc-fw-tab-vue-vapor, + .doc-fw-radio-octane:checked ~ .doc-fw-tabs .doc-fw-tab-octane { color: #04121b; background: linear-gradient(112deg, #eef3fa 0%, #d2dbe7 42%, #e8edf4 100%); } .doc-fw-radio-solid:checked ~ .doc-fw-panels .doc-fw-panel-solid, - .doc-fw-radio-vue-vapor:checked ~ .doc-fw-panels .doc-fw-panel-vue-vapor { + .doc-fw-radio-vue-vapor:checked ~ .doc-fw-panels .doc-fw-panel-vue-vapor, + .doc-fw-radio-octane:checked ~ .doc-fw-panels .doc-fw-panel-octane { display: block; } } diff --git a/site/build.ts b/site/build.ts index d15446033..755520954 100644 --- a/site/build.ts +++ b/site/build.ts @@ -82,7 +82,12 @@ const PROCESS_PRELUDE = async function bundle( entry: string, outfile: string, - opts: { shims?: boolean; prelude?: string; external?: string[] } = {}, + opts: { + shims?: boolean; + prelude?: string; + external?: string[]; + plugins?: import("bun").BunPlugin[]; + } = {}, ) { const res = await Bun.build({ entrypoints: [SITE + entry], @@ -93,7 +98,7 @@ async function bundle( external: opts.external, minify: true, sourcemap: "none", - plugins: opts.shims ? [shimPlugin] : [], + plugins: [...(opts.shims ? [shimPlugin] : []), ...(opts.plugins ?? [])], }); if (!res.success) { for (const l of res.logs) console.error(String(l)); @@ -215,7 +220,7 @@ function writeStaticHeaders(): void { // --- editable demos (mostly single-file; gallery inlines generated tile data) type SpriteMeta = Record; -type DemoVariant = { framework: "solid" | "vue-vapor"; source: string; spriteMeta?: SpriteMeta }; +type DemoVariant = { framework: "solid" | "vue-vapor" | "octane"; source: string; spriteMeta?: SpriteMeta }; type DemoEntry = { name: string; title: string; variants: DemoVariant[] }; function inlinePlaygroundImports(name: string, source: string): string | null { @@ -241,6 +246,7 @@ function demoManifest() { for (const name of readdirSync(dir).sort()) { const app = dir + name + "/app.tsx"; const vueApp = dir + name + "/app.vue-vapor.tsx"; + const octaneApp = dir + name + "/app.octane.tsx"; const main = dir + name + "/main.tsx"; if (!existsSync(app)) continue; // The playground (and every demo shelf on the site) shows only @@ -269,6 +275,12 @@ function demoManifest() { variants.push({ framework: "vue-vapor", source: vueSource, spriteMeta }); } } + if (existsSync(octaneApp)) { + const octaneSource = inlinePlaygroundImports(name, readFileSync(octaneApp, "utf8")); + if (octaneSource !== null) { + variants.push({ framework: "octane", source: octaneSource, spriteMeta }); + } + } out.push({ name, title, variants }); } return out; @@ -299,6 +311,18 @@ async function main() { await bundle("playground/runtime-entry.ts", "pg/runtime.js", { external: ["solid-js", "solid-js/universal"] }); await bundle("playground/runtime-vue-vapor-entry.ts", "pg/runtime-vue-vapor.js", { external: ["vue"] }); await bundle("playground/compiler-entry.ts", "pg/compiler.js", { shims: true, prelude: PROCESS_PRELUDE }); + // Octane framework modules must pass through the Octane compiler (hook call + // sites get slots; JSX lowers to universal plans), so this bundle runs under + // the same jsxPlugin the real build uses. Self-contained: the universal + // runtime (octane/universal/native) is bundled in, no import-map external. + // Imported lazily AFTER pg/compiler.js is bundled: loading jsx-plugin.ts + // (vue-jsx-vapor/api and friends) into this process poisons Bun's module + // classification for the wasi-shim graph and the compiler bundle then fails + // with a require-of-top-level-await error. + const { jsxPlugin } = await import("../framework/compiler/jsx-plugin.ts"); + await bundle("playground/runtime-octane-entry.ts", "pg/runtime-octane.js", { + plugins: [jsxPlugin("octane")], + }); await bundle("playground/playground.js", "pg/playground.bundle.js"); await bundle("assets/pocket-stage-web.js", "assets/pocket-stage-web.js"); @@ -502,7 +526,13 @@ const IMPORT_MAP = ``; @@ -553,19 +583,17 @@ async function buildDocs(highlight: Highlight) { let frameworkCodeId = 0; const renderFrameworkCode = (markdown: string) => markdown.replace(/:::framework-code\n([\s\S]*?)\n:::/g, (_match, body: string) => { - const variants: { framework: "solid" | "vue-vapor"; code: string; lang: string; label: string }[] = []; + const FW_LABELS = { solid: "Solid", "vue-vapor": "Vue Vapor", octane: "Octane" } as const; + const variants: { framework: keyof typeof FW_LABELS; code: string; lang: string; label: string }[] = []; body.replace(/```([^\n]*)\n([\s\S]*?)```/g, (_fence, meta: string, code: string) => { const parts = meta.trim().split(/\s+/); - const framework = parts.find((part: string) => part === "solid" || part === "vue-vapor") as - | "solid" - | "vue-vapor" - | undefined; + const framework = parts.find((part: string): part is keyof typeof FW_LABELS => part in FW_LABELS); if (!framework) return ""; variants.push({ framework, code: code.replace(/\n$/, ""), lang: parts[0] || "text", - label: framework === "solid" ? "Solid" : "Vue Vapor", + label: FW_LABELS[framework], }); return ""; }); diff --git a/site/content/docs/api.md b/site/content/docs/api.md index ea4cf2a22..decd7fc75 100644 --- a/site/content/docs/api.md +++ b/site/content/docs/api.md @@ -13,8 +13,9 @@ here. For conceptual walkthroughs see [Components](/docs/components/), | `@pocketjs/framework/components` | `View`, `Text`, `Image`, `Sprite`, `Screen`, `Focusable`, `FocusScope`, `FocusGrid`, `ActionHandler`, `Portal`, `Modal`, `ActionBar`, `Named`, `Grid`, `Lazy`, `Gallery`, `DeepZoom` (Solid) | | `solid-js` | `createSignal`, `createEffect`, `createMemo`, `onMount`, `onCleanup`, `batch`, `untrack`, `Show`, `For`, `Index`, `Switch`, `Match` | | `vue` | `defineComponent`, `ref`, `computed`, `watchEffect`, `onMounted`, `onScopeDispose` | +| `octane` | `useState`, `useEffect`, `useMemo`, `useRef`, `useLayoutEffect`, `useEffectEvent` | | `@pocketjs/framework/animation` | `animate`, `spring`, `cancelAnim` | -| `@pocketjs/framework/lifecycle` | `onFrame`, `onButtonPress`, `analogX`, `analogY`, `analogRaw`, `createSpriteAnimation`, `pushButtonHandlerBlock` | +| `@pocketjs/framework/lifecycle` | `onFrame`, `onButtonPress`, `analogX`, `analogY`, `analogRaw`, `createSpriteAnimation`, `pushButtonHandlerBlock` (Octane builds: `useFrame`, `useButtonPress`, `useSpriteAnimation`) | | `@pocketjs/framework/input` | `BTN`, `touches`, `focusNode`, `getFocused`, `pushFocusScope`, `pushFocusGrid` | | `@pocketjs/framework/platform` | `platform`, `hasFeature` | | `@pocketjs/framework/clock` | `simulationHz`, `ticksPerFrame`, `virtualFrame`, `virtualNow`, `after` | @@ -36,6 +37,11 @@ function mount(code: () => unknown, opts?: MountOptions): () => void App-level entry point for demo/application bundles. Resolves ops from `opts.ops` or `globalThis.ui`, loads `opts.pak` (when given), uploads the pack's images on injected hosts, feeds the default generated style table (`opts.styles` ?? `STYLE_IDS`), and mounts `code`. Returns a disposer that unmounts and destroys the app subtree. Throws if neither `opts.ops` nor `globalThis.ui` is present. +Solid entries pass a closure (`mount(() => )`); Vue Vapor and Octane +entries pass the component itself (`mount(App)`). In Octane, JSX inside a +call-argument arrow is a compile error, so `mount(App)` is the only valid +entry shape. + ### `render` ```ts @@ -424,6 +430,24 @@ not wrap refs, computed values, effects, or component definitions. Use `@pocketjs/framework/vue-vapor/components` explicitly, or set `framework: "vue-vapor"` and import generic `@pocketjs/framework/components`. +## `octane` + +Octane apps import React-model hooks directly from `octane` (`useState`, +`useEffect`, `useMemo`, `useRef`, `useLayoutEffect`, `useEffectEvent`, …); +PocketJS does not wrap them. Dependency arrays may be omitted — the Octane +compiler infers them from captures — and hooks are tracked by call site +(conditional hooks in `if` blocks are fine, hooks in loops are not). Use +`@pocketjs/framework/octane/components` explicitly, or set +`framework: "octane"` and import generic `@pocketjs/framework/components`. + +PocketJS's per-frame lifecycle hooks are use-prefixed in Octane builds — +`useFrame`, `useButtonPress`, and `useSpriteAnimation` from +`@pocketjs/framework/octane/lifecycle` — because the Octane compiler slot-keys +custom hooks by the `use[A-Z]` naming convention. Their signatures match +`onFrame` / `onButtonPress` / `createSpriteAnimation` below, except +`useSpriteAnimation` returns the current frame key as a plain `string`. +`pushButtonHandlerBlock` is not a hook and keeps its name. + --- ## `@pocketjs/framework/animation` @@ -482,7 +506,10 @@ Stops a running animation by the id `animate`/`spring` returned. ## `@pocketjs/framework/lifecycle` Component-scoped per-frame hooks. Registrations clean up with the selected -framework owner (`onCleanup` in Solid, `onScopeDispose` in Vue Vapor). See +framework owner (`onCleanup` in Solid, `onScopeDispose` in Vue Vapor, effect +cleanup in Octane). In Octane builds these exports are the use-prefixed hooks +`useFrame`, `useButtonPress`, and `useSpriteAnimation` (see +[`octane`](#octane) above); the signatures below are otherwise identical. See [Reactivity](/docs/reactivity/) and [Input & focus](/docs/input-focus/). ### `onFrame` @@ -505,8 +532,8 @@ function analogRaw(): number after PocketJS's shared deadzone (`right` and `down` are positive). `analogRaw` returns the host word `(x << 8) | y`, with each byte in `0..255` and `128` at center. Stickless hosts stay centered, so controller fallbacks do -not need target checks. Solid and Vue Vapor expose the same functions from -their lifecycle subpaths. +not need target checks. Solid, Vue Vapor, and Octane expose the same functions +from their lifecycle subpaths. ### `onButtonPress` @@ -538,7 +565,9 @@ function createSpriteAnimation( ``` Cycles through `frames` (image `src` keys), returning a Solid `Accessor` or a -Vue Vapor `ComputedRef` for the current frame. Throws if `frames` is empty. +Vue Vapor `ComputedRef` for the current frame (the Octane hook, +`useSpriteAnimation`, returns the current frame key as a plain `string`). +Throws if `frames` is empty. `opts.frameStep` (default `1`, min `1`) holds each sprite frame for that many host frames. diff --git a/site/content/docs/app-shell.md b/site/content/docs/app-shell.md index d08ab7ffe..d38ee541e 100644 --- a/site/content/docs/app-shell.md +++ b/site/content/docs/app-shell.md @@ -146,6 +146,22 @@ import { FocusGrid, Focusable, Text } from "@pocketjs/framework/components"; ))} ; ``` + +```tsx octane +import { FocusGrid, Focusable, Text } from "@pocketjs/framework/components"; + + + {games.map((game) => ( + launch(game)} + > + {game.title} + + ))} +; +``` ::: Because the grid keys off document order, it stays correct after a @@ -285,6 +301,34 @@ function DeletePrompt(props: { onConfirm: () => void }) { ); } ``` + +```tsx octane +import { useState } from "octane"; +import { Modal, Focusable, Text, View } from "@pocketjs/framework/components"; + +function DeletePrompt(props: { onConfirm: () => void }) { + const [open, setOpen] = useState(false); + return ( + + Delete save? + + setOpen(false)} + > + Cancel + + + Delete + + + + ); +} +``` ::: Two behaviors worth internalizing: @@ -450,6 +494,25 @@ function Photos() { ); } ``` + +```tsx octane +import { useState } from "octane"; +import { Gallery, Screen } from "@pocketjs/framework/components"; + +function Photos() { + const [page, setPage] = useState(0); + return ( + + } + /> + + ); +} +``` ::: Under the hood `Gallery` is a **static `overflow-hidden` viewport** wrapping an diff --git a/site/content/docs/architecture.md b/site/content/docs/architecture.md index 93a02ab92..4fd547227 100644 --- a/site/content/docs/architecture.md +++ b/site/content/docs/architecture.md @@ -5,9 +5,12 @@ in PPSSPP and Vita3K, in desktop/browser hosts, and under headless Bun. It gets there with one principle: **one Rust core, framework-specific JS adapters, one layout engine everywhere.** -The JavaScript side can be Solid or Vue Vapor. Solid uses its universal renderer; +The JavaScript side can be Solid, Vue Vapor, or Octane. Solid uses its +universal renderer; Vue Vapor uses a Vapor renderer adapter and a tiny DOM-shaped facade for Vue's -helpers. The rendering, layout, styling, animation, and text engine is a single +helpers; Octane compiles JSX and hooks to static host plans plus dynamic slots +whose driver (`renderer-octane.ts`) targets the native tree directly, with no +DOM shim. The rendering, layout, styling, animation, and text engine is a single `no_std` Rust crate (`pocketjs-core`) compiled for each host: MIPS for PSP, ARM for Vita, `wasm32` for browser/tests, and the desktop target for wgpu. Styling is a build-time [Tailwind subset](/docs/tailwind/); fonts are baked into atlases at build time. @@ -16,7 +19,7 @@ This page explains how the pieces fit together and why each choice was made. ## The pipeline ``` - app.tsx (Solid or Vue Vapor + Tailwind-subset classes) + app.tsx (Solid, Vue Vapor or Octane + Tailwind-subset classes) │ │ framework JSX transform (two-pass build) ▼ @@ -46,7 +49,7 @@ Reading it top to bottom: 1. **`app.tsx`** is ordinary framework JSX: PocketJS components from [`@pocketjs/framework/components`](/docs/components/), state/lifecycle from - `solid-js` or `vue`, and `class` strings from the Tailwind subset. + `solid-js`, `vue`, or `octane`, and `class` strings from the Tailwind subset. 2. A product **build** resolves `pocket.json` for one target, then runs the selected JSX transform, compiles class strings to a binary style table (`styles.bin`), bakes target-density glyph atlases/assets, and packs them @@ -74,7 +77,9 @@ runs on the handheld. PocketJS keeps framework code above a small renderer adapter boundary. Solid uses `babel-preset-solid` with `generate: 'universal'`; Vue Vapor uses -`vue-jsx-vapor` and `renderer-vue-vapor.ts`. Both adapters target the same JS +`vue-jsx-vapor` and `renderer-vue-vapor.ts`; Octane uses its universal +compiler against the "pocket" renderer descriptor and `renderer-octane.ts`. +All three adapters target the same JS mirror tree and `ui.*` HostOps, so the Rust core, input manager, style table, animation system, `.pak` format, and native targets do not fork by framework. @@ -171,7 +176,7 @@ It helps to think of PocketJS as three layers with narrow contracts between them. **1. The app + framework runtime (JavaScript).** Your components and reactive -state. The Solid/Vue adapters keep a lightweight JS *mirror* of the tree — +state. The Solid/Vue/Octane adapters keep a lightweight JS *mirror* of the tree — `{ id, parent, children[], … }` — so the reconciler can *read* tree structure without crossing the FFI boundary. Only *mutations* cross into native. `setProperty` runs through a dispatch table: @@ -252,16 +257,23 @@ pocketjs/ animation.ts ├ the public @pocketjs/framework/* subpath modules lifecycle.ts │ (Solid primitives are imported from solid-js) input-api.ts, overlay.ts, index.ts ┘ + renderer-octane.ts Octane pocket driver: host command batches → mirror tree + ui.* ops + components-octane.tsx, frame-octane.tsx, lifecycle-octane.ts + the Octane adapter (useFrame / useButtonPress / useSpriteAnimation) + index-octane.ts Octane runtime entry: render/mount; flushes Octane's + microtask re-renders synchronously inside each frame + scheduler-polyfill.ts microtask scheduler shim for QuickJS hosts framework/compiler/ - jsx-plugin.ts babel transform (Solid or Vue Vapor) + per-file class/codepoint collection + jsx-plugin.ts babel transform (Solid, Vue Vapor or Octane) + per-file class/codepoint collection vue-sfc-compile.ts .vue → inline Vapor render function (@vue/compiler-sfc) tailwind.ts token parser → styles.bin + styles.generated.ts bake-font.ts atlas baker (charset from AST scan + ASCII) pak.ts container writer hosts/web/ 480×272 canvas playground + Bun dev server - apps/ hero, cards, stats, library, settings, notifications, music + apps/ hero, cards, stats, library, settings, notifications, music, gallery + (each ships app.tsx plus app.vue-vapor.tsx / app.octane.tsx siblings) tests/ contract drift guard, wasm goldens, PPSSPP e2e tools/ build.ts, psp.ts, dev.ts, wasm.ts site/ this documentation @@ -302,7 +314,8 @@ frame order are covered on the [Native contract](/docs/native-contract/) page. compilation, and font baking in detail. - [Native contract](/docs/native-contract/) — the `ui.*` ops, node lifecycle, generation-tagged handles, and per-frame ordering. -- [Frameworks](/docs/frameworks/) — Solid and Vue Vapor selection, imports, and +- [Frameworks](/docs/frameworks/) — Solid, Vue Vapor, and Octane selection, + imports, and output naming. - [Reactivity](/docs/reactivity/) — how Solid signals and effects behave on the default runtime. diff --git a/site/content/docs/build-pipeline.md b/site/content/docs/build-pipeline.md index 358aea59d..4fe9d5b51 100644 --- a/site/content/docs/build-pipeline.md +++ b/site/content/docs/build-pipeline.md @@ -35,12 +35,14 @@ target-specific: PSP and Vita compile from the same source and logical layout, but Vita receives density-2 atlases/assets plus an embedded target/HostOps-ABI handshake. Do not copy one target's pair into another target's native package. -Solid is the default framework. Vue Vapor builds beside the Solid artifacts by -adding a suffix: +Solid is the default framework. Vue Vapor and Octane build beside the Solid +artifacts by adding a suffix: ```sh bun tools/build.ts hero-vue-vapor-main --framework=vue-vapor # -> dist/hero-vue-vapor-main.vue-vapor.js + dist/hero-vue-vapor-main.vue-vapor.pak +bun tools/build.ts hero-main --framework=octane +# -> dist/hero-main.octane.js + dist/hero-main.octane.pak ``` The build is **two passes over the same module graph**. Pass 1 transforms every @@ -64,7 +66,7 @@ name ending in `-main` finds `apps/hero/main.tsx`. | Flag | Effect | |---|---| -| `--framework=solid\|vue-vapor` | Select the framework for this low-level build, overriding `pocket.config.ts`. Manifest builds take it from `pocket.json`. | +| `--framework=solid\|vue-vapor\|octane` | Select the framework for this low-level build, overriding `pocket.config.ts`. Manifest builds take it from `pocket.json`. | | `--config=` | Load a different Pocket config file. | | `--no-config` | Ignore `pocket.config.ts`; defaults to Solid unless `--framework` is set. | | `--extra-chars=` | Force these codepoints into **every** baked atlas, on top of the collected charset and ASCII. | @@ -83,6 +85,7 @@ The output name is derived from the entry path, and both artifacts share it: | `apps/hero/main.tsx` | `hero-main.js`, `hero-main.pak` | the mounted entry — calls `mount()` | | `foo/bar.tsx` | `bar.js`, `bar.pak` | non‑demo path: basename | | `--framework=vue-vapor` | `.vue-vapor.js`, `.vue-vapor.pak` | Vue Vapor artifacts coexist with Solid artifacts | +| `--framework=octane` | `.octane.js`, `.octane.pak` | Octane artifacts coexist with the other two | A demo typically has `app.tsx` (the exported UI) and `main.tsx` (a tiny file that imports the app and mounts it). You build `hero-main` when you want a @@ -106,17 +109,27 @@ The selected framework owns the JSX transform: // Vue Vapor transformVueJsxVapor(source, path) + +// Octane +octaneCompile(source, path, { mode: "client", renderer: OCTANE_RENDERER_DESCRIPTOR }) ``` Solid compiles JSX into calls against `framework/src/renderer-solid.ts`. Vue Vapor compiles JSX with `vue-jsx-vapor` and bundles against `framework/src/renderer-vue-vapor.ts` -plus the small DOM facade needed by Vue's Vapor helpers. `@babel/preset-typescript` -still strips types in both cases, and the same collector/lints run before JSX is +plus the small DOM facade needed by Vue's Vapor helpers. Octane runs the +collector pass over the pristine source first, then hands the same source to +the Octane universal compiler, which lowers JSX and hooks to static host plans +plus dynamic slots against the "pocket" renderer descriptor — the compiled +output's runtime imports retarget to `@pocketjs/framework/octane/renderer` +(`framework/src/renderer-octane.ts`), whose driver maps host command batches +onto the native `ui.*` tree with no DOM shim. `@babel/preset-typescript` +still strips types in every case, and the same collector/lints run before JSX is lowered. Package imports are framework-aware during both pass 1 and pass 2. For example, -`@pocketjs/framework/components` resolves to `framework/src/components.ts` for Solid and -`framework/src/components-vue-vapor.ts` for Vue Vapor. The mapping is centralized in +`@pocketjs/framework/components` resolves to `framework/src/components.ts` for Solid, +`framework/src/components-vue-vapor.ts` for Vue Vapor, and +`framework/src/components-octane.tsx` for Octane. The mapping is centralized in `framework/compiler/jsx-plugin.ts`; see [Frameworks](/docs/frameworks/) for the public contract. diff --git a/site/content/docs/components.md b/site/content/docs/components.md index d37f745b3..4c9571a10 100644 --- a/site/content/docs/components.md +++ b/site/content/docs/components.md @@ -13,12 +13,18 @@ import { View, Text, Image } from "@pocketjs/framework/components"; import { ref, computed, onMounted } from "vue"; import { View, Text, Image } from "@pocketjs/framework/components"; ``` + +```tsx octane +import { useState, useEffect, useMemo } from "octane"; +import { View, Text, Image } from "@pocketjs/framework/components"; +``` ::: There are exactly **three host primitives** — `View`, `Text`, and `Image`. Solid apps import control-flow helpers (`Show`, `For`, `Index`, `Switch`, `Match`) from `solid-js`; Vue Vapor apps use Vue's own JSX and Composition API -from `vue`. Higher-level app-shell primitives (`Screen`, `Focusable`, `Modal`, +from `vue`; Octane apps use hooks from `octane` with plain JSX ternaries and +keyed `array.map`. Higher-level app-shell primitives (`Screen`, `Focusable`, `Modal`, and friends) build on `View` and are covered on the [App shell](/docs/app-shell/) page. @@ -55,6 +61,16 @@ input. ``` + +```tsx octane + + + + PocketJS + OCTANE + RUST + SCEGU + + +``` ::: A `View` becomes interactive by adding `focusable` and an `onPress` handler. @@ -83,6 +99,16 @@ button (Circle): Press Circle ``` + +```tsx octane + setCount(count + 1)} +> + Press Circle + +``` ::: Pair `onPress` with `focusable` — an unfocusable node never receives input. See @@ -102,6 +128,11 @@ mix static text and reactive expressions: ```tsx vue-vapor Count: {count.value} ``` + +```tsx octane +{/* Octane: mixed static + dynamic text is ONE template literal. */} +{`Count: ${count}`} +``` ::: `Count: ` and the reactive value are concatenated and measured together. When @@ -124,6 +155,10 @@ means you put text utilities (`text-*`, `font-bold`, `tracking-wide`, …) on th ```tsx vue-vapor JSX at 60 FPS. ``` + +```tsx octane +JSX at 60 FPS. +``` ::: The available text sizes, weights, colors and alignment utilities are baked at @@ -154,6 +189,10 @@ texture at runtime. ```tsx vue-vapor ``` + +```tsx octane + +``` ::: Set the drawn size with box utilities (`w-10 h-10` above); the class controls @@ -183,6 +222,18 @@ const frame = createSpriteAnimation( ; ``` + +```tsx octane +import { useSpriteAnimation } from "@pocketjs/framework/octane/lifecycle"; + +// Inside a component — useSpriteAnimation is a hook: +const frame = useSpriteAnimation( + ["spinner-00.svg", "spinner-01.svg", "spinner-02.svg"], + { frameStep: 3 }, +); + +; +``` ::: `Image` takes no children. See the [Build pipeline](/docs/build-pipeline/) for @@ -225,6 +276,13 @@ keys directly, prev-diffed per key. Use it for signal-driven values: style={{ width: (position.value / TRACK_FRAMES) * 160 }} /> ``` + +```tsx octane + +``` ::: Prefer transform keys (`translateX`, `translateY`, `scale`, `rotate`) for motion @@ -268,6 +326,26 @@ onMounted(() => { class="h-1 w-0 rounded-full bg-blue-500" />; ``` + +```tsx octane +import { animate } from "@pocketjs/framework/animation"; +import { useLayoutEffect, useRef } from "octane"; +import type { NodeMirror } from "@pocketjs/framework/components"; + +const underline = useRef(null); +useLayoutEffect(() => { + if (underline.current) { + animate(underline.current, "width", 210, { dur: 700, easing: "out" }); + } +}, []); + + { + underline.current = node; + }} + class="h-1 w-0 rounded-full bg-blue-500" +/>; +``` ::: ## Control flow @@ -276,7 +354,9 @@ In Solid apps, render lists and conditionals with Solid's control-flow components rather than `array.map` + `&&`. Import them directly from `solid-js`; their semantics are exactly Solid's, and PocketJS's Solid renderer turns their updates into native tree-mutation ops on the PSP. Vue Vapor apps use Vue's -native JSX control-flow patterns instead. +native JSX control-flow patterns instead. Octane apps use plain JSX — ternaries +for conditionals and `array.map` with a `key` prop for lists — and the Octane +compiler turns those into keyed dynamic slots over the native tree. ### `Show` @@ -296,6 +376,14 @@ Toggles a subtree on a boolean condition, with an optional `fallback`: Keep going... )} ``` + +```tsx octane +{count > 3 ? ( + Reactive on real hardware. +) : ( + Keep going... +)} +``` ::: When `when` flips, the children are inserted or removed from the native tree. @@ -327,6 +415,15 @@ an index *accessor*: ))} ``` + +```tsx octane +{tracks.map((track, i) => ( + select(i)}> + {track.title} + {track.artist} + +))} +``` ::: When the array is reordered, `For` **moves** existing nodes to their new @@ -352,6 +449,12 @@ and the index is a plain number: ))} ``` + +```tsx octane +{bars.map((bar, i) => ( + +))} +``` ::: Use `Index` when the list length is stable and it's the *values at each slot* @@ -379,6 +482,16 @@ Pick one of several branches — the JSX form of a `switch` statement: Idle )} ``` + +```tsx octane +{state === "loading" ? ( + Loading... +) : state === "ready" ? ( + Ready. +) : ( + Idle +)} +``` ::: The first `Match` whose `when` is truthy renders; if none match, `fallback` diff --git a/site/content/docs/frameworks.md b/site/content/docs/frameworks.md index c4ab295a6..7de7ded6c 100644 --- a/site/content/docs/frameworks.md +++ b/site/content/docs/frameworks.md @@ -1,22 +1,32 @@ # Frameworks -PocketJS supports two first-class app frameworks over the same native tree and -Rust core: +PocketJS supports three first-class app frameworks over the same native tree +and Rust core: | Framework | Build id | JSX transform | Runtime renderer | Output suffix | |---|---|---|---|---| | Solid | `solid` | `babel-preset-solid` universal mode | `renderer-solid.ts` | none | | Vue Vapor | `vue-vapor` | `vue-jsx-vapor` | `renderer-vue-vapor.ts` | `.vue-vapor` | +| Octane | `octane` | Octane universal compiler (host plans + slots) | `renderer-octane.ts` (pocket universal driver over the native tree) | `.octane` | Solid is the default so existing apps keep building to `dist/.js` and -`dist/.pak`. Vue Vapor builds next to it: +`dist/.pak`. Vue Vapor and Octane build next to it: ```sh bun tools/build.ts hero-main # dist/hero-main.js bun tools/build.ts hero-vue-vapor-main --framework=vue-vapor # dist/hero-vue-vapor-main.vue-vapor.js +bun tools/build.ts hero-main --framework=octane +# dist/hero-main.octane.js ``` +Sibling variant files select automatically: an `app.octane.tsx` (or +`app.vue-vapor.tsx`) next to `app.tsx` is picked up when building with the +matching `--framework`, which is how one demo directory carries all of its +ports — all eight showcase demos (`hero`, `cards`, `stats`, `library`, +`settings`, `notifications`, `music`, `gallery`) ship an `app.octane.tsx` and +`main.octane.tsx` beside the Solid originals. + There is no environment-variable switch for framework selection. Product builds declare it in `pocket.json`; low-level compiler work can still use a project config or one-command override. @@ -31,7 +41,8 @@ project config or one-command override. } ``` -Use `"vue-vapor"` for the Vue adapter. `pocket check|compile|build --target …` +Use `"vue-vapor"` for the Vue adapter and `"octane"` for Octane. +`pocket check|compile|build --target …` resolves this value once and all framework/compiler/native stages consume the same plan. Do not also put `framework` in `pocket.config.ts` for a manifest build. @@ -47,7 +58,7 @@ export default definePocketConfig({ }); ``` -Use Vue Vapor by changing the file: +Use Vue Vapor or Octane by changing the file: ```ts export default definePocketConfig({ @@ -55,22 +66,30 @@ export default definePocketConfig({ }); ``` +```ts +export default definePocketConfig({ + framework: "octane", +}); +``` + The direct framework/compiler/dev scripts read the config by default. Use -`--framework=solid` or `--framework=vue-vapor` to override it for one -invocation. `--config=` selects a different config file, and -`--no-config` ignores config entirely. +`--framework=solid`, `--framework=vue-vapor`, or `--framework=octane` to +override it for one invocation. `--config=` selects a different config +file, and `--no-config` ignores config entirely. The same flag works through the dev and PSP entry points: ```sh bun tools/dev.ts --framework=vue-vapor hero-vue-vapor-main +bun tools/dev.ts --framework=octane hero-main bun tools/psp.ts hero-vue-vapor --framework=vue-vapor --release ``` ## Framework app imports Apps import state and component lifecycle from the selected framework directly. -PocketJS does not wrap `createSignal`, `ref`, `onMount`, or `onMounted`. +PocketJS does not wrap `createSignal`, `ref`, `useState`, `onMount`, +`onMounted`, or `useEffect`. Solid app: @@ -134,14 +153,51 @@ export default function App() { mount(App); ``` +Octane app: + +```tsx +import { mount, frameworkName } from "@pocketjs/framework/octane"; +import { View, Text, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { useEffect, useRef, useState } from "octane"; + +export default function App() { + const [count, setCount] = useState(0); + const marker = useRef(null); + + useEffect(() => { + console.log(frameworkName(), marker.current?.id); + }, []); + + return ( + + {`Framework: ${frameworkName()}`} + { + marker.current = node; + }} + focusable + onPress={() => setCount(count + 1)} + > + {`Count: ${count}`} + + {count > 2 ? ( + Octane, native tree. + ) : null} + + ); +} + +mount(App); +``` + The generic public subpaths remain Solid-first defaults. Use explicit framework subpaths when an example or app is tied to a framework: -| Import | Solid build | Vue Vapor build | -|---|---|---| -| `@pocketjs/framework` | `framework/src/index.ts` | `framework/src/index-vue-vapor.ts` | -| `@pocketjs/framework/components` | `framework/src/components.ts` | `framework/src/components-vue-vapor.ts` | -| `@pocketjs/framework/lifecycle` | Solid lifecycle hooks | Vue Vapor lifecycle hooks | +| Import | Solid build | Vue Vapor build | Octane build | +|---|---|---|---| +| `@pocketjs/framework` | `framework/src/index.ts` | `framework/src/index-vue-vapor.ts` | `framework/src/index-octane.ts` | +| `@pocketjs/framework/components` | `framework/src/components.ts` | `framework/src/components-vue-vapor.ts` | `framework/src/components-octane.tsx` | +| `@pocketjs/framework/lifecycle` | Solid lifecycle hooks | Vue Vapor lifecycle hooks | Octane lifecycle hooks (`useFrame`, `useButtonPress`, `useSpriteAnimation`) | Use `nodeRef` when a component should look similar across framework examples. Solid still supports `ref`, but `nodeRef` avoids framework-specific ref semantics. @@ -160,13 +216,79 @@ import { mount } from "@pocketjs/framework/vue-vapor"; import { View } from "@pocketjs/framework/vue-vapor/components"; ``` +```tsx +import { mount } from "@pocketjs/framework/octane"; +import { View } from "@pocketjs/framework/octane/components"; +``` + Explicit subpaths are useful for framework-specific examples, tests, and integration code. Most apps should prefer the generic PocketJS subpaths and keep framework state imports native. +## Octane notes + +Octane is React's programming model, compiled: hooks and JSX, no VDOM. Hooks +(`useState`, `useEffect`, `useMemo`, `useRef`, `useLayoutEffect`, +`useEffectEvent`, …) import from `octane`. Dependency arrays may be omitted — +the compiler infers them from captures. Hooks are tracked by call site, so a +hook inside an `if` block is fine, but hooks in loops are not. PocketJS's +per-frame hooks follow the same rule: they are `useFrame`, `useButtonPress`, +and `useSpriteAnimation` (from `@pocketjs/framework/octane/lifecycle` or the +generic `lifecycle` subpath), use-prefixed because the Octane compiler +slot-keys custom hooks by the `use[A-Z]` naming convention. +(`pushButtonHandlerBlock` is not a hook and keeps its name.) + +At build time, Octane's universal compiler lowers JSX to static host plans +plus dynamic slots against the "pocket" renderer; at runtime the compiled +imports retarget to `@pocketjs/framework/octane/renderer`, whose driver maps +host command batches onto the native `ui.*` tree. There is no DOM shim +(unlike Vue Vapor). PocketJS's frame loop flushes Octane's microtask-scheduled +re-renders synchronously inside each frame, so a state write in a handler +commits in that same frame. + +Authoring rules specific to Octane apps: + +- **The entry passes the component itself.** `main.octane.tsx` must call + `mount(App)` — JSX inside a call-argument arrow (`mount(() => )`) is + a universal-target compile error. +- **Mixed static + dynamic text is one template literal.** Write + ``{`Count: ${count}`}``, not `Count: {count}` — + the compiler drops trailing whitespace on a static segment that precedes an + expression. +- **`class` stays full literals or ternaries of full literals**, exactly as in + the other frameworks. +- **Counters driven from `useFrame` use functional updates** + (`setX((v) => v + 1)`): a same-frame handler's state write would otherwise + be clobbered by a stale read. +- **Keep natively `animate()`d properties out of a `style` object whose value + changes across re-renders.** Re-applying a changed style value cancels the + running tween (unchanged values are diffed away and are safe); drive such + properties from an effect with `animate()`/`jump()` and a `nodeRef` instead. +- **Keep always-animating state in leaf components.** A per-frame `setState` + re-renders its owning component; putting the counter in a small leaf (the + music demo's `Equalizer`/`ProgressLine`, the stats demo's `StatTiles`) + keeps each tick's re-render to a handful of nodes instead of the whole + screen. On the PSP's fixed QuickJS arena this matters twice over: the + pinned engine retains a sliver of every render, and its slab allocator + pins whole chunks around it (the host runs an arena-pressure collection, + but less garbage is always better). If the rendered value only changes on + step boundaries, commit state on the step, not the raw frame — see + `StatTiles` in `apps/stats/app.octane.tsx`. +- **Frequently re-rendering apps have a session memory horizon on PSP** + until the pinned QuickJS is upgraded: each render retains a small residue + the collector cannot reclaim on this engine revision (~80–115 KB/frame + measured for the per-frame-state demos), so an always-animating screen + outlives its showcase capture window but not an unbounded session. The + growing live set also inflates engine GC time, which is why the PSP + benchmark's per-frame-work numbers for those demos are dominated by GC + rather than by Octane's own render work (`cards`, which has no per-frame + state, shows the steady-state cost). Solid and Vue Vapor apps, and Octane + apps without per-frame state, are unaffected. The engine fix (quickjs-rs + GC repair + repin) is tracked as a follow-up. + ## What stays shared -Both frameworks use the same Tailwind-subset compiler, generated style table, +All three frameworks use the same Tailwind-subset compiler, generated style table, font atlas baker, `.pak` asset container, host detection, input/focus system, overlay layer, animation API, PSP/Vita native build paths, browser dev host, and PPSSPP/Vita3K capture paths. Switching frameworks changes only the JS diff --git a/site/content/docs/getting-started.md b/site/content/docs/getting-started.md index d6451c4b8..cba16fea6 100644 --- a/site/content/docs/getting-started.md +++ b/site/content/docs/getting-started.md @@ -60,7 +60,8 @@ the canonical resolver; `pocket dev|psp|vita|hw|psplink` retain the low-level host-development paths; and `pocket devtools [app]` opens the [DevTools](/docs/devtools/) panel with the USB debug bridge. -That pulls `solid-js`, Vue Vapor dependencies, and the build-time tooling (the +That pulls `solid-js`, the Vue Vapor and Octane dependencies, and the +build-time tooling (the Babel + Tailwind-subset compiler, the font baker, and the dev host). There is no separate runtime to install — the framework is the `@pocketjs/framework` package in this repo, exposed through subpath imports like @@ -111,11 +112,11 @@ compiler runs. A component returns JSX. You lay out with `View`, draw text with `Text`, and style with `class` — a **build-time subset of Tailwind**, not runtime CSS. State comes directly from the selected framework: `createSignal` in Solid, -`ref` in Vue Vapor. +`ref` in Vue Vapor, `useState` in Octane. -Solid is the default low-level framework. Manifest builds select Solid or Vue -Vapor with `app.framework` in `pocket.json`; see [Frameworks](/docs/frameworks/) -for the full selection model. +Solid is the default low-level framework. Manifest builds select Solid, Vue +Vapor, or Octane with `app.framework` in `pocket.json`; see +[Frameworks](/docs/frameworks/) for the full selection model. Here's a focusable counter. Put it in the scaffolded `apps/my-app/app.tsx`: @@ -174,6 +175,32 @@ export default function App() { ); } ``` + +```tsx octane +import { useState } from "octane"; +import { Text, View } from "@pocketjs/framework/octane/components"; + +export default function App() { + const [count, setCount] = useState(0); + return ( + + {`Count: ${count}`} + + setCount(count + 1)} + > + Press Circle + + + {count > 3 ? ( + Reactive on real hardware. + ) : null} + + ); +} +``` ::: What's happening: @@ -189,9 +216,11 @@ What's happening: - **`focusable`** opts the `View` into d-pad focus, and **`onPress`** fires when the focused node is confirmed (the Circle button on a PSP). Focus and input are covered in [Input & focus](/docs/input-focus/). -- **`{count()}` / `{count.value}`** is a reactive read. When the setter or ref +- **`{count()}` / `{count.value}` / `` {`…${count}`} ``** is a reactive read. + When the setter or ref write runs, only that `Text` updates — no re-render of the whole native tree. - More in [Reactivity](/docs/reactivity/). + (In Octane, a text run that mixes static and dynamic segments is written as + one template literal.) More in [Reactivity](/docs/reactivity/). ## The mount entry @@ -213,6 +242,16 @@ mount(() => ); import App from "./app.tsx"; import { mount } from "@pocketjs/framework/vue-vapor"; +mount(App); +``` + +```tsx octane +// @title PocketJS: My App +import App from "./app.tsx"; +import { mount } from "@pocketjs/framework/octane"; + +// Pass the component itself: in Octane, JSX inside a call-argument arrow +// (mount(() => )) is a compile error. mount(App); ``` ::: @@ -260,6 +299,10 @@ bun tools/build.ts hero ```sh vue-vapor bun tools/build.ts hero --framework=vue-vapor ``` + +```sh octane +bun tools/build.ts hero --framework=octane +``` ::: That density-1 development command produces two files in `dist/`: @@ -270,7 +313,8 @@ That density-1 development command produces two files in `dist/`: | `dist/hero.pak` | The packed asset file: the compiled style table, font atlases, and images | Vue Vapor builds use the `.vue-vapor` suffix, for example -`dist/hero.vue-vapor.js` and `dist/hero.vue-vapor.pak`. +`dist/hero.vue-vapor.js` and `dist/hero.vue-vapor.pak`; Octane builds use the +`.octane` suffix, for example `dist/hero.octane.js` and `dist/hero.octane.pak`. A few notes on the low-level command: @@ -305,6 +349,10 @@ bun tools/dev.ts hero-main ```sh vue-vapor bun tools/dev.ts --framework=vue-vapor hero-main ``` + +```sh octane +bun tools/dev.ts --framework=octane hero-main +``` ::: Open the printed URL, **http://127.0.0.1:8130/**. Pass demo names to build @@ -338,15 +386,17 @@ for toolchain setup, key mappings, real-device installation, and the golden E2E. ### In the Playground No local build at all: open the [Playground](/playground/), which loads the same -wasm core in your browser. Pick Solid or Vue Vapor in the toolbar, edit JSX in -the editor, and it renders live — the quickest way to explore the component and +wasm core in your browser. Pick Solid, Vue Vapor, or Octane in the toolbar, +edit JSX in the editor, and it renders live — the quickest way to explore the component and styling surface before wiring up a local project. ## What the build just did `bun tools/build.ts` is a **two-pass** build: -1. **Transform & collect.** Babel (Solid's universal preset + TypeScript) runs +1. **Transform & collect.** The selected framework's JSX transform — Solid's + universal Babel preset, `vue-jsx-vapor`, or the Octane universal compiler — + plus TypeScript runs over every module reachable from your entry, content-hash cached in `.cache/`. As it goes it collects every class literal and every text codepoint from the AST. The Tailwind-subset compiler turns the collected classes into @@ -364,7 +414,7 @@ pak format — are in [Build pipeline](/docs/build-pipeline/). ## Next steps - [Architecture](/docs/architecture/) — how one Rust core drives every host. -- [Frameworks](/docs/frameworks/) — switch between Solid and Vue Vapor. +- [Frameworks](/docs/frameworks/) — switch between Solid, Vue Vapor, and Octane. - [Components](/docs/components/) — `View`, `Text`, `Image`, control flow, and the app-shell primitives. - [Styling](/docs/styling/) and [Tailwind subset](/docs/tailwind/) — the compile-time class rules. - [Reactivity](/docs/reactivity/) and [Animation](/docs/animation/) — signals, effects, and native tweens. diff --git a/site/content/docs/overview.md b/site/content/docs/overview.md index 11456aae6..4914fe279 100644 --- a/site/content/docs/overview.md +++ b/site/content/docs/overview.md @@ -1,15 +1,17 @@ # Overview -PocketJS lets you build **Solid** or **Vue Vapor** interfaces for Sony PSP and +PocketJS lets you build **Solid**, **Vue Vapor**, or **Octane** interfaces for +Sony PSP and PS Vita hardware. It compiles class strings and font glyphs at build time, then renders real flexbox, sub-pixel text and native animation through a compact `no_std` Rust core. One application manifest resolves into target-specific PSP and Vita artifacts; browser, desktop, PPSSPP/Vita3K, and headless hosts exercise the same logical UI and HostOps semantics. -If you know Solid or Vue, you already know most of PocketJS. The primitives are +If you know Solid, Vue, or React, you already know most of PocketJS. The +primitives are `View`, `Text`, and `Image`; state comes from the native framework package -(`solid-js` or `vue`); layout and color come from class strings like +(`solid-js`, `vue`, or `octane`); layout and color come from class strings like `flex-col items-center gap-4 bg-slate-50`. What is different is what happens underneath: there is no browser DOM and no runtime CSS. @@ -50,7 +52,9 @@ callback for you. ## Three pillars **1. Framework adapters over one native tree.** Solid is the default adapter and -uses `babel-preset-solid` universal mode. Vue Vapor uses `vue-jsx-vapor`. Both +uses `babel-preset-solid` universal mode. Vue Vapor uses `vue-jsx-vapor`. +Octane — React's programming model, compiled — uses the Octane universal +compiler, which lowers JSX to static host plans plus dynamic slots. All three target the same retained native tree and HostOps surface, so switching framework changes the JS component/reactivity layer, not the Rust core, styling pipeline, input model, or asset pack. See [Frameworks](/docs/frameworks/) and @@ -122,6 +126,27 @@ export default function App() { ); } ``` + +```tsx octane +// app.tsx +import { useState } from "octane"; +import { Text, View } from "@pocketjs/framework/components"; + +export default function App() { + const [count, setCount] = useState(0); + + return ( + + {`Count: ${count}`} + setCount(count + 1)} + /> + + ); +} +``` ::: The mount entry is ordinary bootstrap code — the framework detects the host, @@ -142,6 +167,14 @@ mount(() => ); import { mount } from "@pocketjs/framework/vue-vapor"; import App from "./app.tsx"; +mount(App); +``` + +```tsx octane +// main.tsx +import { mount } from "@pocketjs/framework/octane"; +import App from "./app.tsx"; + mount(App); ``` ::: @@ -157,6 +190,11 @@ bun tools/build.ts hero # -> dist/hero.js + dist/hero.pak bun tools/build.ts hero --framework=vue-vapor # -> dist/hero.vue-vapor.js + dist/hero.vue-vapor.pak ``` + +```sh octane +bun tools/build.ts hero --framework=octane +# -> dist/hero.octane.js + dist/hero.octane.pak +``` ::: A few things worth noticing in that example: @@ -165,9 +203,10 @@ A few things worth noticing in that example: changes swap styles natively, with zero JS on the focus transition. - `transition-colors duration-150` declares motion; the tween ticks in Rust at a fixed `dt = 1/60 s`. JS only declares it. -- `Count: {count()}` / `Count: {count.value}` is a mixed text run — a static +- `Count: {count()}` / `Count: {count.value}` / `` {`Count: ${count}`} `` is a + mixed text run — a static string and a reactive expression laid out as one inline run, not two flex - items. + items. (Octane writes the mixed run as one template literal.) ## One application contract, target-specific artifacts @@ -215,8 +254,8 @@ list in the [Tailwind subset](/docs/tailwind/) reference. - [Getting started](/docs/getting-started/) — install, build, and run your first app. -- [Frameworks](/docs/frameworks/) — switch between Solid and Vue Vapor without - environment-variable hacks. +- [Frameworks](/docs/frameworks/) — switch between Solid, Vue Vapor, and + Octane without environment-variable hacks. - [Architecture](/docs/architecture/) — how the JS runtime, Rust core, and target backends fit together. - [Components](/docs/components/) — `View`, `Text`, `Image`, control flow, and diff --git a/site/content/docs/reactivity.md b/site/content/docs/reactivity.md index 79dbbea4e..57c6d8c8e 100644 --- a/site/content/docs/reactivity.md +++ b/site/content/docs/reactivity.md @@ -2,7 +2,8 @@ PocketJS uses the selected framework's reactive system directly. Solid apps import signals and lifecycle from `solid-js`; Vue Vapor apps import refs, -computed values, watchers, and lifecycle from `vue`. There is no PocketJS +computed values, watchers, and lifecycle from `vue`; Octane apps import hooks +from `octane`. There is no PocketJS reactivity wrapper. :::framework-code @@ -27,18 +28,40 @@ import { onScopeDispose, } from "vue"; ``` + +```ts octane +import { + useState, + useEffect, + useMemo, + useRef, + useLayoutEffect, + useEffectEvent, +} from "octane"; +``` ::: -If you already know either framework, you know the API. These are fine-grained +If you already know the framework, you know the API. Solid and Vue Vapor are +fine-grained reactive primitives, not React hooks: they aren't dependency-array driven, and a -state write updates the native nodes that read it. +state write updates the native nodes that read it. Octane *is* React's hooks +model, compiled: dependency arrays may be omitted (the compiler infers them +from captures), and hooks are tracked by call site — a hook inside an `if` +block is fine, hooks in loops are not. ## The no-VDOM model React re-renders a component, builds a new virtual tree, and diffs it against the -old one. PocketJS's supported frameworks avoid that per-update component rerender -path: setup wires reactive reads to native mutations, and after that the work is -limited to the effects or bindings whose dependencies changed. +old one. PocketJS's supported frameworks avoid that virtual-tree path. Solid and +Vue Vapor never re-run a component after +setup: setup wires reactive reads to native mutations, and after that the work is +limited to the effects or bindings whose dependencies changed. Octane keeps +React's re-render model but compiles it: a state write re-executes the +component function, and the compiler's static host plans mean only the dynamic +slots that actually changed are applied to the native tree — there is no +virtual tree and no reconciliation walk. PocketJS's frame loop flushes Octane's +microtask-scheduled re-renders synchronously inside each frame, so a state +write commits in the same frame. That property is what makes PocketJS viable on a 2005 handheld: @@ -53,10 +76,11 @@ That property is what makes PocketJS viable on a 2005 handheld: JS side does essentially nothing; the Rust core still ticks animations and layout at a fixed 1/60 s. Idle screens cost no JS work. -## Signal / ref +## Signal / ref / state A Solid signal is a getter/setter pair. A Vue ref is an object with a `.value`. -Both represent one reactive value. +An Octane `useState` returns a `[value, setValue]` pair. Each represents one +reactive value. :::framework-code ```tsx solid @@ -96,6 +120,24 @@ function Counter() { ); } ``` + +```tsx octane +import { View, Text } from "@pocketjs/framework/components"; +import { useState } from "octane"; + +function Counter() { + const [count, setCount] = useState(0); + return ( + setCount(count + 1)} + > + {`Count: ${count}`} + + ); +} +``` ::: ### Signals in text @@ -139,6 +181,19 @@ watchEffect(() => { if (level.value >= 100) console.log("charged"); }); ``` + +```tsx octane +import { useEffect, useState } from "octane"; + +// Inside a component — hooks only run in components: +const [level, setLevel] = useState(0); + +useEffect(() => { + // Re-runs every time level changes — the dep array is omitted and + // the compiler infers it from the captured `level`. + if (level >= 100) console.log("charged"); +}); +``` ::: Effects are the right place to bridge reactive state to imperative APIs like @@ -168,12 +223,24 @@ const total = computed(() => items.value.length); // total.value is cached; it recomputes only when items.value changes. ``` + +```tsx octane +import { useMemo, useState } from "octane"; + +// Inside a component: +const [items, setItems] = useState([]); +const total = useMemo(() => items.length); + +// total is cached; it recomputes only when items changes (inferred deps). +``` ::: ## Mount and cleanup `onMount` / `onMounted` runs a callback once, after the component's initial -render — the place to do one-time imperative setup. It's exactly where the hero +render — the place to do one-time imperative setup. Octane uses +`useLayoutEffect(fn, [])`, which runs once before the first paint. It's exactly +where the hero demo starts its underline sweep: :::framework-code @@ -213,6 +280,30 @@ function Underline() { ); } ``` + +```tsx octane +import { View, type NodeMirror } from "@pocketjs/framework/components"; +import { animate } from "@pocketjs/framework/animation"; +import { useLayoutEffect, useRef } from "octane"; + +function Underline() { + const underline = useRef(null); + useLayoutEffect(() => { + // Runs once (empty deps); the tween ticks natively - zero steady-state JS. + if (underline.current) { + animate(underline.current, "width", 210, { dur: 700, easing: "out", delay: 150 }); + } + }, []); + return ( + { + underline.current = node; + }} + class="h-1 w-0 rounded-full bg-blue-500" + /> + ); +} +``` ::: Cleanup callbacks run when the enclosing scope is disposed — a component @@ -243,6 +334,17 @@ onScopeDispose(() => { // runs when the component scope is disposed }); ``` + +```tsx octane +import { useEffect } from "octane"; +import { animate, cancelAnim } from "@pocketjs/framework/animation"; + +useEffect(() => { + const anim = animate(node, "opacity", 1, { dur: 300 }); + // The returned cleanup runs before the next re-run / on unmount. + return () => cancelAnim(anim); +}); +``` ::: ## batch and untrack diff --git a/site/home.html b/site/home.html index 09b6440c7..6699c6de2 100644 --- a/site/home.html +++ b/site/home.html @@ -52,8 +52,8 @@

Bare MetalModern Web

High-performance JSX UI outside the browser, with native rendering, - standard Vue Vapor and Solid support, a Tailwind design system, and - 60 FPS animation under an 8 MB memory budget. + standard Solid, Vue Vapor and Octane support, a Tailwind design + system, and 60 FPS animation under an 8 MB memory budget.

Get started @@ -87,7 +87,7 @@

Bare MetalModern Web

Familiar tools, constrained hardware -

Tailwind, flexbox, Solid and Vue Vapor under 8MB RAM.

+

Tailwind, flexbox, Solid, Vue Vapor and Octane under 8MB RAM.

PocketJS keeps the authoring model modern while moving the expensive work to build time and to a tiny Rust core. The result is a real interface stack that can run smoothly on a Sony PSP.

@@ -147,7 +147,7 @@

Text is still sharp

Business logic stays intact

Native framework imports on a tiny machine.

-

Write Solid or Vue Vapor components with their own reactivity APIs, run them on QuickJS, and let PocketJS handle the native pixels.

+

Write Solid, Vue Vapor or Octane components with their own reactivity APIs, run them on QuickJS, and let PocketJS handle the native pixels.

  • @@ -170,6 +170,7 @@

    Native framework imports on a tiny machine.

    +
import { Text, View } from "@pocketjs/framework/components";
@@ -199,6 +200,20 @@ 

Native framework imports on a tiny machine.

</View> </View> ); +}
+
@@ -382,7 +397,7 @@

Build modern UI where the browser PocketJS -

Vue Vapor and Solid UI under 8 MB RAM, rendered through a tiny native core.

+

Solid, Vue Vapor and Octane UI under 8 MB RAM, rendered through a tiny native core.

Docs

diff --git a/site/playground/compiler-entry.ts b/site/playground/compiler-entry.ts index c4c9c4f01..5d5d64c99 100644 --- a/site/playground/compiler-entry.ts +++ b/site/playground/compiler-entry.ts @@ -13,6 +13,7 @@ import { transformAsync, type PluginObj } from "@babel/core"; import solidPreset from "babel-preset-solid"; import tsPreset from "@babel/preset-typescript"; import { transformVueJsxVapor } from "vue-jsx-vapor/api"; +import { compile as octaneCompile } from "octane/compiler"; import { parse as parseFont, type Font } from "opentype.js"; import { compileClasses, fontSlotInfo } from "../../framework/compiler/tailwind.ts"; @@ -44,7 +45,19 @@ import { PSM } from "../../contracts/spec/spec.ts"; * runtime helpers from. The playground import-map points it at runtime.js. */ const SOLID_RENDERER_MODULE = "@pocketjs/framework/solid/renderer"; -type PlaygroundFramework = "solid" | "vue-vapor"; +/** Octane universal-renderer descriptor — mirrors framework/compiler/jsx-plugin.ts + * OCTANE_RENDERER_DESCRIPTOR; the import map points the module id at + * runtime-octane.js. */ +const OCTANE_RENDERER = { + id: "pocket", + module: "@pocketjs/framework/octane/renderer", + target: "universal", + server: "unsupported", + text: "host", + capabilities: ["portal"], +} as const; + +type PlaygroundFramework = "solid" | "vue-vapor" | "octane"; interface SpriteMeta { cols: number; @@ -194,6 +207,19 @@ async function transform( configFile: false, sourceMaps: false, }); + } else if (framework === "octane") { + await transformAsync(source, { + filename: "app.tsx", + presets: [[tsPreset, {}]], + parserOpts: { plugins: ["jsx"] }, + plugins: [collectorPlugin(collected, framework)], + babelrc: false, + configFile: false, + sourceMaps: false, + }); + res = octaneCompile(source, "app.tsx", { mode: "client", renderer: OCTANE_RENDERER }) as { + code: string; + }; } else { res = await transformAsync(source, { filename: "app.tsx", diff --git a/site/playground/page.html b/site/playground/page.html index 16baf5a58..2bd0d0e78 100644 --- a/site/playground/page.html +++ b/site/playground/page.html @@ -6,6 +6,7 @@
+
@@ -56,7 +57,7 @@

- Edit the code — the preview recompiles live (Solid + Tailwind + baked fonts → a .pak, + Edit the code — the preview recompiles live (Solid, Vue Vapor or Octane + Tailwind + baked fonts → a .pak, rendered by the Rust core in WebAssembly). Click the screen, then use the on-screen controls, or the keyboard: arrows = d-pad · Z/Enter = ◯ · X = ✕ · A = ▢ · S = △.

diff --git a/site/playground/playground.js b/site/playground/playground.js index 217004eb6..d3c418595 100644 --- a/site/playground/playground.js +++ b/site/playground/playground.js @@ -158,8 +158,10 @@ async function main() { const appUrl = URL.createObjectURL(new Blob([result.code], { type: "text/javascript" })); const runtime = activeFramework === "vue-vapor" ? "@pocketjs/framework/vue-vapor" - : "@pocketjs/framework/solid"; - const mountExpr = activeFramework === "vue-vapor" ? "App" : "() => App()"; + : activeFramework === "octane" + ? "@pocketjs/framework/octane" + : "@pocketjs/framework/solid"; + const mountExpr = activeFramework === "solid" ? "() => App()" : "App"; const boot = `import App from ${JSON.stringify(appUrl)};\n` + `import { mount, __resetAll } from ${JSON.stringify(runtime)};\n` + @@ -171,8 +173,9 @@ async function main() { await import(/* @vite-ignore */ bootUrl); host.begin(); const ms = Math.round(performance.now() - t0); + const fwLabel = { "vue-vapor": "Vue Vapor", octane: "Octane" }[activeFramework] || "Solid"; setStatus( - `${activeFramework === "vue-vapor" ? "Vue Vapor" : "Solid"} · ok · ${result.classCount} styles · ${result.slotCount} atlases` + + `${fwLabel} · ok · ${result.classCount} styles · ${result.slotCount} atlases` + (result.imageNames.length ? ` · ${result.imageNames.length} img` : "") + ` · ${ms} ms`, "ok", @@ -232,7 +235,12 @@ async function main() { const boot = new URLSearchParams(location.search).get("demo"); const bootFramework = new URLSearchParams(location.search).get("framework"); if (boot && demos.some((d) => d.name === boot)) demoSel.value = boot; - if (bootFramework === "vue-vapor" && variantFor(currentDemo(), "vue-vapor")) framework = "vue-vapor"; + if ( + (bootFramework === "vue-vapor" || bootFramework === "octane") && + variantFor(currentDemo(), bootFramework) + ) { + framework = bootFramework; + } const first = currentDemo(); updateFrameworkButtons(); const firstVariant = currentVariant(); diff --git a/site/playground/runtime-octane-entry.ts b/site/playground/runtime-octane-entry.ts new file mode 100644 index 000000000..2007d03cf --- /dev/null +++ b/site/playground/runtime-octane-entry.ts @@ -0,0 +1,57 @@ +// Octane playground runtime bundle. Import-map entries for +// @pocketjs/framework/octane/* point here, while Solid and Vue Vapor keep +// their own bundles. Compiled octane apps import the universal ABI (hooks, +// plan helpers, hookSlots/withSlot) from the renderer module, so the whole +// renderer surface is re-exported alongside the app-facing API. + +export * from "../../framework/src/renderer-octane.ts"; + +export { frameworkName, mount, render } from "../../framework/src/index-octane.ts"; +export { + View, + Text, + Image, + Sprite, + Screen, + Focusable, + FocusScope, + FocusGrid, + ActionHandler, + Portal, + Modal, + ActionBar, + Grid, + Lazy, + Gallery, +} from "../../framework/src/components-octane.tsx"; +export { animate, spring, cancelAnim } from "../../framework/src/animation.ts"; +export { + useFrame, + useButtonPress, + useSpriteAnimation, + pushButtonHandlerBlock, +} from "../../framework/src/lifecycle-octane.ts"; +export { + BTN, + focusNode, + getFocused, + pushFocusGrid, + pushFocusScope, +} from "../../framework/src/input-api.ts"; + +import { + resetRendererState, + resetSprites, + resetTextures, +} from "../../framework/src/renderer-octane.ts"; +import { resetStyles } from "../../framework/src/styles.ts"; +import { resetPack } from "../../framework/src/pak.ts"; + +export function __resetAll(): void { + resetRendererState(); + resetTextures(); + resetSprites(); + resetStyles(); + resetPack(); + (globalThis as { frame?: unknown }).frame = undefined; +} diff --git a/skills/pocketjs-psp-benchmark/SKILL.md b/skills/pocketjs-psp-benchmark/SKILL.md index c172d5a9e..f809d4d7c 100644 --- a/skills/pocketjs-psp-benchmark/SKILL.md +++ b/skills/pocketjs-psp-benchmark/SKILL.md @@ -33,7 +33,20 @@ PSP_SDK=/path/to/mipsel-sony-psp BENCH_PPSSPP_TIMEOUT=60 \ bun tools/bench-ppsspp.ts --apps=all --samples=3 --memory-scan ``` -5. Preserve the generated evidence paths from `dist/bench/` in the final answer, PR body, or handoff. The `.json` file is authoritative; the `.md` file is for human review; `.raw.jsonl` keeps per-sample and memory-probe records. +5. For a cross-framework comparison (Solid vs Vue Vapor vs Octane), pass a + framework axis; the first framework is the ratio baseline and + `--bootstrap=N` adds 95% percentile CIs to the geomean ratios: + +```bash +BENCH_PPSSPP_TIMEOUT=60 bun tools/bench-ppsspp.ts \ + --apps=all --frameworks=solid,vue-vapor,octane --samples=7 --bootstrap=5000 +``` + + The summary JSON then nests per-framework metrics (`apps[app][framework]`) + and adds a `comparison` block; `--memory-scan` stays single-framework. + Render the matrix chart with `bun tools/bench-chart.ts `. + +6. Preserve the generated evidence paths from `dist/bench/` in the final answer, PR body, or handoff. The `.json` file is authoritative; the `.md` file is for human review; `.raw.jsonl` keeps per-sample and memory-probe records. ## Memory Scans diff --git a/tests/e2e/ppsspp.ts b/tests/e2e/ppsspp.ts index a73685a5d..0922b54df 100644 --- a/tests/e2e/ppsspp.ts +++ b/tests/e2e/ppsspp.ts @@ -18,15 +18,25 @@ // bun run e2e # compare against tests/goldens/psp/ // UPDATE=1 bun run e2e # regenerate goldens (then eyeball the PNGs!) // +// Frameworks: pass --framework=vue-vapor|octane to run the demos through a +// non-default framework. Goldens then live in tests/goldens/psp-/ +// and the spec table is filtered to demos that have that sibling variant +// (apps//app..tsx). +// // Host deps: ~/ppsspp-src/build/PPSSPPHeadless (source-built; see // framework/test/bsp-compare/ppsspp-capture.md on origin/main) and ImageMagick. import { $ } from "bun"; import { existsSync, mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync } from "node:fs"; import { homedir } from "node:os"; +import { FRAMEWORKS, parseFramework } from "../../framework/compiler/jsx-plugin.ts"; + +const frameworkArg = Bun.argv.find((a) => a.startsWith("--framework=")); +const framework = parseFramework(frameworkArg?.slice("--framework=".length), "--framework"); const pspUiDir = new URL("../..", import.meta.url).pathname; // PocketJS/ -const goldensDir = `${pspUiDir}tests/goldens/psp`; +const goldensDir = + framework === "solid" ? `${pspUiDir}tests/goldens/psp` : `${pspUiDir}tests/goldens/psp-${framework}`; const outDir = `${pspUiDir}dist/e2e-ppsspp`; const headless = process.env.PPSSPP_HEADLESS || `${homedir()}/ppsspp-src/build/PPSSPPHeadless`; // PPSSPPHeadless maps ms0: to ~/.ppsspp — dumps land in ~/.ppsspp/dc_cap. @@ -227,7 +237,7 @@ function writeDemoManifest(app: string): string { manifest.title = `PocketJS E2E ${app}`; manifest.app.entry = `apps/${app}/main.tsx`; manifest.app.output = `${app}-main`; - manifest.app.framework = "solid"; + manifest.app.framework = framework; const directory = `${outDir}/manifests`; const path = `${directory}/${app}.json`; mkdirSync(directory, { recursive: true }); @@ -241,9 +251,23 @@ const ppssppCommit = (await $`git -C ${homedir()}/ppsspp-src rev-parse HEAD`.tex const commitStamp = `${goldensDir}/PPSSPP-COMMIT.txt`; const stampedCommit = existsSync(commitStamp) ? readFileSync(commitStamp, "utf8").trim() : null; +// Non-default frameworks cover exactly the demos that carry the sibling +// variant; the rest stay Solid-only. +const selectedSpecs = + framework === "solid" + ? SPECS + : SPECS.filter((spec) => + existsSync(`${pspUiDir}apps/${spec.app}/app${FRAMEWORKS[framework].outputSuffix}.tsx`), + ); +if (selectedSpecs.length === 0) { + console.error(`no demos carry an app${FRAMEWORKS[framework].outputSuffix}.tsx variant`); + process.exit(2); +} +console.log(`framework: ${framework} (${selectedSpecs.length} demo(s), goldens: ${goldensDir})`); + let failed = false; -for (const spec of SPECS) { +for (const spec of selectedSpecs) { console.log(`\n## ${spec.app} (input: ${spec.inputScript})`); const manifest = writeDemoManifest(spec.app); @@ -347,7 +371,7 @@ for (const spec of SPECS) { writeFileSync(`${goldensDir}/${spec.app}.${shot.name}.actual.png`, a); console.error( `FAIL ${spec.app}.${shot.name}: differs from golden ` + - `(actual -> goldens/psp/${spec.app}.${shot.name}.actual.png)`, + `(actual -> ${goldensDir.slice(pspUiDir.length)}/${spec.app}.${shot.name}.actual.png)`, ); if (stampedCommit && stampedCommit !== ppssppCommit) { console.error( diff --git a/tests/goldens/psp-octane/PPSSPP-COMMIT.txt b/tests/goldens/psp-octane/PPSSPP-COMMIT.txt new file mode 100644 index 000000000..879fb802b --- /dev/null +++ b/tests/goldens/psp-octane/PPSSPP-COMMIT.txt @@ -0,0 +1 @@ +676724ee5e0283cbb879f45e1e88383cf821abd3 diff --git a/tests/goldens/psp-octane/cards.detail.png b/tests/goldens/psp-octane/cards.detail.png new file mode 100644 index 0000000000000000000000000000000000000000..bf52ae9e6d3392344b6acc9f7263af23f9879380 GIT binary patch literal 20180 zcmcG$by!zH_vpI`rIb_z=?($u?nX+KkXE|88$`N6x;>gat>o$QkFrH)37M zPqGl?LJ2`$z7TW^4tZ@ukUb*=?S6$I?sy1#W0hR5zza@1*O8VGg`WQXNpH%Hh9Egj zDN!Lsr`dxPXE&^g+o!Z_sib1ojEoFAn$TB4m7QJhKV=tdV+)C~i$BGEbNQNF4paY?w)j$1f&F+ z=f9ZoE9-}2{C?g;W)QO3ji}1d+tm3@`31!AI9gsdeS693eY9!zt^&4oy@tQqarCfcja^dcx%7JGSG2&Ptyspqwo(Z8Oyclks_Qd@V zWson?-7n|K+%7PPII7bl`Av^cdW*G7GP$SL=MqX4ZTs-h_g=1dE%|XVvgg67BRKkc zFVdbtP1$DUu4Qc)WVO`<^tJgUZ=S613+pe{gDXyx5~;uNeZD>=e*~hC4;nb6KgISh z!D;*IKv-yEQN=Y1i|vlW6rViTXO0(4Z%2t2Ts$hQT)3dm$i;!JK5Vpa$m$^Qug{1+ z^JDPFdipPxG2zV9d3E~wD0McPK1(*Gkfjf{hUg8&{FK#=iR^&2=i(+N(E)?#P2inP zWs6TnVaIWmn&~*TrwPbWsX>fd@%ULB7qg*bUk|3hbF{K3?F|8$-UaNnQO@?8P`&`p z!)v2`LFbOn=l*T$AsFRhN^H>!!Jd`pyV%y^x?mP0gWVhvrQ#z8W}b-f7T}uySNAHD z&~8JzEYg!@>c~Hd(Wzc#!EGda7GsX@;

pPk)8?ny3&xm~O-&DU6GGkcyo7Y7?cY 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/cards.layout.png b/tests/goldens/psp-octane/cards.layout.png new file mode 100644 index 0000000000000000000000000000000000000000..cad58e404f30ec84d65c9f6586bf2f9552c8e265 GIT binary patch literal 14582 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 Jne3-8{}(a0_U`}y literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/cards.opening.png b/tests/goldens/psp-octane/cards.opening.png new file mode 100644 index 0000000000000000000000000000000000000000..3196a8556e45c115ddd8a7bbbe076fdd03732c11 GIT binary patch literal 20115 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 ozfXt)|6R@eA42Ec$&2TS5#@Bjb+ literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/hero.boot.png b/tests/goldens/psp-octane/hero.boot.png new file mode 100644 index 0000000000000000000000000000000000000000..80d82b0c7f97e12741211b1702e5189f57fc5c03 GIT binary patch literal 18263 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/hero.focused.png b/tests/goldens/psp-octane/hero.focused.png new file mode 100644 index 0000000000000000000000000000000000000000..91b01694232714ec2be8e341c42b16420afbb37d GIT binary patch literal 18121 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 R0?(Ua@O1TaS?83{1OTUm7jFOn literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/hero.pressed.png b/tests/goldens/psp-octane/hero.pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..df20c91fcd334fbca52f2c42f5bb5ad17a041e6e GIT binary patch literal 17999 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 Q@YELuPgg&ebxsLQ0A}K`yZ`_I literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/library.detail.png b/tests/goldens/psp-octane/library.detail.png new file mode 100644 index 0000000000000000000000000000000000000000..a03241f7644a4a931b19ca51e41cb66fa5d12a08 GIT binary patch literal 17416 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/library.focused.png b/tests/goldens/psp-octane/library.focused.png new file mode 100644 index 0000000000000000000000000000000000000000..cad42075396e10867596bbce378bd599c1fbcd4a GIT binary patch literal 16495 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 MF*(snVSWGq0hA&I%>V!Z literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/library.grid.png b/tests/goldens/psp-octane/library.grid.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2de8a694167139ea2e5464af50a12441cbbf32 GIT binary patch literal 15691 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

    |e^~C79 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 WoCvlgoEUIn3sO-~m#=_YzW+Zp;MRx$ literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/music.paused.png b/tests/goldens/psp-octane/music.paused.png new file mode 100644 index 0000000000000000000000000000000000000000..0c5f1386d5611a3b41fe2086b390c362966ea705 GIT binary patch literal 20338 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 C(0RE4 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/music.playing.png b/tests/goldens/psp-octane/music.playing.png new file mode 100644 index 0000000000000000000000000000000000000000..1c5fa6ce6e2eb5bc64c03ec52c3f4202b6324295 GIT binary patch literal 20778 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 IFm7T01gHo$ZvX%Q literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/music.skipped.png b/tests/goldens/psp-octane/music.skipped.png new file mode 100644 index 0000000000000000000000000000000000000000..febae728f72e47ca3ef47c9d6aa5512813c2d0c8 GIT binary patch literal 20709 zcmbrlbx>A8A2xggA|)XyA>Aq6b(7NFA&qo*s5D5ogaXnf-60*)-6h@K@UGAE%scb_ z@y&cQ->7pt=bYWM``ce!*R^}XloX^;kqM9?5D4mfX>k<@1ZEZd!$5=uSGFnNEr1_V z6KNHB2*isT0{IjOf!u*hpLQS+*LM)e-UkSTF9ia@b4YJg763P18p}$FL!STr`O%Ue z4}mDzy%!f%^O!%(@YGY=eCqwK{V7#6)#&xB5d2XLGpQCj@`rX6J9^~QZ*;-t-bv$! z8g*=CZIySPa6?o~cyR-hX+LO#2=zpivF60#^ky%pk<(!;V9akHPun*fr`hY@?Oi|e zu^4O%Y-_h}^LARap8IAx6DL(x5yF7s)FL#sp@Lt?S2$Sk`yuC(2pj}5OG`Qmu5lqF za)7Bs!v6oc<$%BCZE-GNdCaob%9ARER!lIdi(WL$Z7C_k6E8K_8&#Q)$KiUFF~prb zv>Jinhyi75uQ(cij$Qwm6=2br+Emt z@Q{UjrcIHXE)nkml}a*jRQ22mCJX#lW?f5speLmG;mPSqe>M!mi)$Q)B+rblMQ`q} z!=R}8Cp`B>>9X#lc_$^;&Bi1Si!rs%*2cQ;co4`Dg`D7yn8oB1=Fwl}D=28M}x<+87F_F>q8H}`tM8M7&nsw>JldZ%z>xba?!{rq! zHhv?SHR~++q2D)^DsglyBF@m$=oKL2fq-C+}(aA zoS)5{Sx^v#3Nys-FE26THC6oDE}p><6$lMr5b(&e?jxEE8}1JaqHF($)b?` zI$G2nwN1$3+h-D*8i9JU&apH)@Ru)(Vqe_V{S#h(p~QrXJ_T`Cp_LK}JfdOjE!uDR z-l)IC0u%CH?ahV3zVMKCvCg;MKY$Og!DkOrCD9-B6J(;sI7C0nN>6I{S+q21M`7Gq zoqlTacn?-{HnN6VmM(t(gzRdlbjW0?I~>8W%g%-|W1E1(M9N7@#!DgNModtp!)Tlg zVZ%d5A2hN_GAUzj-!PJ$P>0a=9c{jk z-ib6tQz$h2JGmo|>l&7v+uz}KKbr^pG?}(f2V}$^5B%3h$0)Ys&PGv15W|+Va9ME4 zIP6~3)i-)CN*`sh>lfqlBj1*+?;TlCyj9559Qj&ZH%lfz!%6cr%J_Ys*2OezX_ls_ zDJ+4VqsAUs;M0(CkcbJ>8@jcxgunGU!a^_zc0&2Eby{rRIt2z~NsjDoE}lMpN^VP1 zBsP3ugmJ&A(iaG=^2z*gEASfxLMej!Hh~=h->x|rR)Lk03HQoFH+f*ke+h#Ff%S&?$pVuVSBn3HT%1v5opmt6^npHLBY4jjm*kXH;)BK~C( zr3%sN^T*GF>$f+W4YP?9sz37f>!8_M(ULN}k|SLDGtE`E)VHTkZm=vO9r{lK&r3s2 zah5o`Xhj$1Y^xdy>Bsn{gxqmW51vn1?0Z6g$2$KF2$;{~htnb=8WfSgDrDFNn8IVl zCxl2~g6VG+TIMdFM;;29%Q`x$!f`+$1R_ARsQgN2r%#7tZY_fenUT+<%N{ho+I=-r zcJrR@Z`GxFb9YoF3Ef)BEZK1Y%!Z`H2=@izT>rThQG^I$OO=EIHS}+iTf7UO+}XP} zt#q>Xh^osN`o$5nd^rNMw#yi+MZ~f~0_hMA{Tbl9WjY5pQ|mAuSWOkrz9m)vbs2~J zwkSsd7Z5A_*nEMbRj;q?C$>ydgk`maW*m=_4;xy9_jVnp>NY$jDf&_%Nbcjb_kHeW zh-4Ln`wLWX7|?ambTf7j7JsJR$nYgC;2wK8rg6RV5fX^NKLulRslyLg)@=9-D7|vA&OBNJ!$(iG|FZNuSb@F&kJ$f*=cMll%>~$fKU-~J?7n`z|76S|?tyM}Kj>bQYG7Z_PPNSmhOx3icpAFtDeGvTm z%{{OB!AT!(`Fkpc`|+!V#>)^Y`?lyITE;$@$d{0IY&m$Zk>$t1WPb%T6cn^KR*PTY z%hxgj0}F+1Rwmo<@+^K43oXYTF0^GCLd~~6PgbLP_?!0%V(*NP%QQPTl&v}G3;ru9 zc{?Vr2<|_jGbis8kmuwP3+i}0ry11mc*a&?kYQuJojY!02ctH-dlSISQ2Ib``^Z1I zykmclU*R@{2elxB(y}}IYk#CdGNYt!@v428^}RBZ3JTKuSiq;MgSPhy^2zf~NIK

    -pg*{dQt`)l+vma?~G>-b-rDuZ_3z`u{xd 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

      &o@bknoozR=%Wr_Y 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 N!S=@0T5JEbe*+r5l~w=% literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/settings.toggled.png b/tests/goldens/psp-octane/settings.toggled.png new file mode 100644 index 0000000000000000000000000000000000000000..3c65ffbeda8b191e1f895be0286fb5196094aaf0 GIT binary patch literal 19957 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/stats.midcount.png b/tests/goldens/psp-octane/stats.midcount.png new file mode 100644 index 0000000000000000000000000000000000000000..0ac964f8f219d0658312a33c9a60fc4626652f77 GIT binary patch literal 20390 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 KM)j7k@lm5y}scz+Z; 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/stats.systems.png b/tests/goldens/psp-octane/stats.systems.png new file mode 100644 index 0000000000000000000000000000000000000000..0da1eef452c28f75deb42823ea512fb338cf3da0 GIT binary patch literal 23684 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

      m{qFk7i`6{bb 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/PPSSPP-COMMIT.txt b/tests/goldens/psp-vue-vapor/PPSSPP-COMMIT.txt new file mode 100644 index 000000000..879fb802b --- /dev/null +++ b/tests/goldens/psp-vue-vapor/PPSSPP-COMMIT.txt @@ -0,0 +1 @@ +676724ee5e0283cbb879f45e1e88383cf821abd3 diff --git a/tests/goldens/psp-vue-vapor/cards.detail.png b/tests/goldens/psp-vue-vapor/cards.detail.png new file mode 100644 index 0000000000000000000000000000000000000000..bf52ae9e6d3392344b6acc9f7263af23f9879380 GIT binary patch literal 20180 zcmcG$by!zH_vpI`rIb_z=?($u?nX+KkXE|88$`N6x;>gat>o$QkFrH)37M zPqGl?LJ2`$z7TW^4tZ@ukUb*=?S6$I?sy1#W0hR5zza@1*O8VGg`WQXNpH%Hh9Egj zDN!Lsr`dxPXE&^g+o!Z_sib1ojEoFAn$TB4m7QJhKV=tdV+)C~i$BGEbNQNF4paY?w)j$1f&F+ z=f9ZoE9-}2{C?g;W)QO3ji}1d+tm3@`31!AI9gsdeS693eY9!zt^&4oy@tQqarCfcja^dcx%7JGSG2&Ptyspqwo(Z8Oyclks_Qd@V zWson?-7n|K+%7PPII7bl`Av^cdW*G7GP$SL=MqX4ZTs-h_g=1dE%|XVvgg67BRKkc zFVdbtP1$DUu4Qc)WVO`<^tJgUZ=S613+pe{gDXyx5~;uNeZD>=e*~hC4;nb6KgISh z!D;*IKv-yEQN=Y1i|vlW6rViTXO0(4Z%2t2Ts$hQT)3dm$i;!JK5Vpa$m$^Qug{1+ z^JDPFdipPxG2zV9d3E~wD0McPK1(*Gkfjf{hUg8&{FK#=iR^&2=i(+N(E)?#P2inP zWs6TnVaIWmn&~*TrwPbWsX>fd@%ULB7qg*bUk|3hbF{K3?F|8$-UaNnQO@?8P`&`p z!)v2`LFbOn=l*T$AsFRhN^H>!!Jd`pyV%y^x?mP0gWVhvrQ#z8W}b-f7T}uySNAHD z&~8JzEYg!@>c~Hd(Wzc#!EGda7GsX@;

      pPk)8?ny3&xm~O-&DU6GGkcyo7Y7?cY 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/cards.layout.png b/tests/goldens/psp-vue-vapor/cards.layout.png new file mode 100644 index 0000000000000000000000000000000000000000..cad58e404f30ec84d65c9f6586bf2f9552c8e265 GIT binary patch literal 14582 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 I&MBb@0JzYb6951J literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/hero.pressed.png b/tests/goldens/psp-vue-vapor/hero.pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..ada4e02512d4beb801cf226640ac7a048dfcb90f GIT binary patch literal 18348 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/library.focused.png b/tests/goldens/psp-vue-vapor/library.focused.png new file mode 100644 index 0000000000000000000000000000000000000000..cad42075396e10867596bbce378bd599c1fbcd4a GIT binary patch literal 16495 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 MF*(snVSWGq0hA&I%>V!Z literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/library.grid.png b/tests/goldens/psp-vue-vapor/library.grid.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2de8a694167139ea2e5464af50a12441cbbf32 GIT binary patch literal 15691 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

        |e^~C79 zPL@g(tnd!Fx!9M5lZ%0*)H=z~@yTEn@%>z_up3V5q#Mtzw#ac07RN{p93h!N99*C( z4Tp}8F*ll(Nd3D{*ktcigk2SgIUu6@-(Q|Z7lhR8_gvR%;KtajaDowFFwuzGL@_qL z({<_7!1!SjYh=dW4eYpleVg{}Pv84I{ynBBsh$pI4#KwZ&3o!^9^XyJBpF`CKQ!fN z1|#x`;gtBXh=dg7yW01b-Bq`f!25B(PIb>Qv;Av;2<+hvga^8NFp%m<_c(D)^3~e> zE&aEC*#GSOP=mxRUH1pyWzKN6Uet?Aw$Z6;<$ES}7yFub7*0PxebA`(CY>%s5?Na} zz>i6XX&)rkQr-w`JH=Hr5E~Ju8x&3VB1cAt!S{3QMi=GHCm|j(rJcd&C8mqF(blBh zUn2d^aEQ~Gyp*>6p{2KfNjbUxhi(BV@0)V|v-)+(EvgV-=ORJw(rFDUs5i^I_e4X` z-LQmd}!-!!nSYWaw$fAZwSxK|Arz-8ZAZ z+b>SjKxO=={>1X9K!2nk*9;CJ2v{3x%KQq8gfdtM@EC< zfMBMEZRj_2cE%?^KJG2yrK0T;$h>_xU*mG1!}}9pg6m=*h@d?QWq^r<{F0A!z%t5D z+RcZBuxf%$_M|BK+W-{$zx2g>Qn&qWK=e-6?2IYOkA*GQ;81U898AJTY7B751ZEKs zqR(>?&zVpZet~5yr-2C3#{bc-9)%d;KX=d=fbIsJcsW&iQgalbqO<6@!GC!=nWBLm_7}p=p{*JqSG5mss>)il5p}ZGbfR^T7XSxf^Dtc zEfH3z90|aLH8HmP_8WTf!mx`7H2P41&ByFxWxpQ|vXo@uW8+|1oHQj_SP&o8O-tc4 zO**BhkRrjGQaQ4yKgc!-1IITAurHPj*jke|&BdQg1$1L_w!J)?-C_%a!f|8vu$bd6 zTU%_k3qQx5)S{5{`{EEFN#AOebA*9?Kp(9nurd-Td;%{>Uvs1S__bAQ>F`6M&&xDa z+u4<08)e+()I6;sMo*KqJEe{JalY0qlBeak3+OSdCB%_+DGjV-Qd5d!jc_++TG+pd z9$=RkNhrnZF=t%*hA5R<#ws!L2bnN>;BcRd^7g>xWg4?-^SzQowT<8kI4lYfF)!FC z{HDprB9x0lT2 z6E%AH*59KM?&v|eZxAlH5~I{o?|Tzov9_qt-aMRU%bcFLj~wyWVn?@$A2}RzdeApr z#7Wr5YJW(Anjg-ZI8ro=?p1N6uZ*h^i3bryDo~pF3!`CDLII6?4=DnLqNK(hwMW;= zG=WAJ2^Le%z>lyv1X$>%=2+LgDyQ({#B6f4{+i6l4t>LKa@9{6^ecu7$b^I?K3Rvi zDDvU4(wepmo*jn9)1Dzk*O#DJQ?a;<({73`Ndj8q9(*?*L;2gc#-_;D<`KfiduD!1 zK8;gmjr?Twn4+eQ{8e0dzpPJ{IAE(gUUtutc3mKXM5q7{Axh@}?MACd;WeL|(u50v z&3W%>+?PW21n6=pinyU|(Oe~(4|Q2Zskx39KWRVQ$jZ(gKg3>d;$Ct-DPB5ByEYCM zG6YBA()bVHinl_FksmtClCJ-<=)X0U!oINRWm=^sF~ZcO>~Hbz1s$+!^dp;)@hgRPPcrj*T<)IRM*>hE+=d}fJ7n}4FUG^=g-joe%G+an0)CJ z!?cOUFJ$?hPbAytHJ$qBckLO?*_HEGR%(4U_;T>Eet!IEuaA`@-9 z@aamV(`(^TqSyIOTQ%~J?^i92Qe_QHO_>E|=O7l((4ryG3~xHLZFzZqm`MG|RyqrX zocyP~@;J*=rQY=Bh`dd%u3m*IQRbTfQ8aAOgg?G#hp1`17_V5KKks*eCbciRFyVy< zoGu#ujx&dzF60ZTZ*z^_$RN7lZWFK^5kY1OAr6^+J%0v8o_7UVY-%8k{PpNGCdM1O zm8?wa%PARZ#pSi@7F*mH)<0`R?z@-B))I$nK;tJk;MO4u#kbQWYNnP zg(J(Oqz4)AMoD}(Z3&jB}(|_M}e!(BGh@aDBKdg|FkA)-R7e$q7m%iz1H8rGK{|KMTxn z|5PA+`vJFJ*o}g3JwnI*KEUO4XBt7$+ZZv!%WRdJXMik!DgSLkSfM7xJuX zhpj3DemsfBq)#-<-#5yxEiH^+G`OHlKWC!%{ygZ6gc;~$zcDc8>pF;e* z2fuQNMoYk>Ux`~k?ij4!@b{3eWgTVrGrOBXgDc_8DuX`As|t-_mhS^=kg`ZL*Xz_i4EzmsIQizJ zEHMws^}0Env2k_v?+%Y~U#B+FQj(r}Nt6*HRwu9?>|ZdWchHJWXIK7-t#VX-rB&LV zaiqyke6aV1BzJIRXnc(Dynj0J$}X~KzMFa{_V46*=^s}XW>;eqiN!C9kPL;+GLaWV}j9DcbW!? zc>g_frE)cZ@7P&)u)-}(xN&)J`@AVwd4t}8bftAy)iQrJ8quK1PLu~TO^Pq{9JZ=Q zq`1V)9`(>C*b{8RdJX7Jn%I@4K=%k~V~qB| zN8X8>zKBfk)N0%zXWMeS9s+;LBCC%UB~4emX7aep(0n+<#is0B*15RrP9ApgNf&hZ zGqlJ~zxp_z*Ea(EG-gXae!3YMqqLm&mFO36zi?U@w{=ctnwg2SSD4Epjnz6|?JAn^ zQ7*PTdypx%)PTIy@7HH@;L01fD9nFlYfb>G|K4Zk_DKk&{+du`xb`c|8=k*m{W*BU z&|A>mv3-XE(D{9!R;iaPA64bRJwjqHhV~SL#Wf}L8!^;!RV!)!P^c>$GxhRD&)K)ZtZQF zr(1ja_XQ>da4T>_2`RVQZEllACY?jm@4VhU4`PO^uJ!5CdfMSG&yWG*Cr=jq1K+hI3L^|Uo2nzAt3%qji z;3~FPG(tlFp=h(*P!NwtNI(umF2o{W{za5bx*L*P~4ey>KjM?FQrfkn)$4>se5RG6A={tTVbRN>du>sOMqpQ`z_s#y4w726O#f)&4(!ET$+_8R?T>0 z797)2y&C%&b+~(sM5G{foP9pAlXiQ^ihJvVh4TbRO!5-(qNOaj@`>=M<(}6CFsf>u z*Z@(MT8+!IslE-9LDR*P#H=w#rN({kX_H%vos2f+#-$k9d-sM=CR9Y-p&JJvh0}2n zG&`5gLzs=&qpp3O%heg^Zr2xwzTVr7ed!-HSEfqF)9%q6J-zRKEfsjH=ze(%kj3)Q z(IEjR=^Qt$#lG0>!LZd@*4MjR=FZhwKKUHx-6{Ss%0ud}3s(kpR6~ZfquxjN6J3A! zD1Gyk-@^cz?K5*WhRv467`KahJ@7O61$$w3~u)ryL{1s>L*;+xB$U5Rf;o zABc~v9pAbQl2^fg^6O6qz|C|2)qRZJvsVcqx!(q1rg97?qiVYdDZ9TkQ6u7m2Cg(S z)hVA=jOy>bUXC=o()dmJfQZa95}?Avm3HB=Tl*IaLXc=1q5P>5Q*yc2yerz*24mE#8nV159UC;JuX;RokN|oB59`x6fgkW-VDx;br zY0=Jn1-wR$xtQI&#{Hm5r=~7?^#t|Z?=^uxm&ZP(a!A0J3u+onR$os?ai<0y0?Ic) zs2DmSBQ-NyloSIQ@jnhH@9?!g#%*5OzE(X=pa5c|C_kgK0%wb1Pyjg7KtqD-w6xD3 z&2(SUvG=gSL+0hpyEzsz<4DC~N=dKy45LJsxY3xL4d)j(&9=tE=8?ZBij7H`#pWI` zwCr$oH?(JVKeb6Mzmr6JkFodHYE`RDrFS&-nI8DlS{#7O+Vz>zF@?1wW)+K4TZq^9 z;qQ<4pN3Sxc@mur1KQ*@)ZV1^(-D24D9G*{01YkUExv?DUq|pn8ZRR|`LWxz^!Hzr z_e$(dRDhBfRCYr93f{)`g|;sN6Lx6a8lJ50EOVo+N&*iP(@nIm8xr8+)e&!RX?-^v zs*<9~UOa_qGSH;xj9vByS%&;jTUS@Rt|OwI$--H0wn8!67);qz=%h+JY1iT>8Bu^? zS09MAXY0~&8vkzW>}i+yTzLDP7g6@aCGtP?(+YY)GGDftUoYD%keHpz3XMw2e%^-$ zA_&tro6%(o(W~iTf9BtQT*K6Pewm&$L;wsc{t!Wg_W1%w=UzWD`J6Bcp z*8reU|5TaIkZtDC^3c|u$pmC{=9N3Rb#Ck~B0WVj8X1|9#zon!NaftYQK_XCb9SJ_ z#>o=ePhw`oa;2kN3Z==$b!ja9zN_7JOh}07*+czh%Tu;%RXjMRy3Ep|@fsPtr5;}} zE_JH!xY5w0S1hdzA4<1?mAY@f^{j1MP1aK^bU|Vcu*Le?l7&QW4k%hQCW9PBWf{lD zJ`Fa(Y;m}sC9;M|O`ICXd2o=Xl|S^G@_hI5p3LBtO08_^k0}buq`9L2fRjt<8&^8xQ&mf2QbB#wk9_-6(2GTiJ5?C`#h_;@LQPU(Zba6RwC<6AvukIm~mZno*i*K<_G-6*{G zG6qzy7pt7FPa4{5N}z63w5;TU)-$`>pwPF(JYp^!X4U9Ou+S~n)X~zP<8d1~G~>nS zrtN!%gz0g((2*TZbs>d?hoQ>vFHiVo|MtJ23%CYVvEO35wAkQA?i6QbB&WtUSzPnw z?Izd==qj#P#6n=&(2cnipUd-rVrYctxU;8y=~B6>fQ?oXb)3A)(D zXHcexYo@r&W*fa?6}tUVbYtR9!iGgz%EE05=|r1Hu|nlI@BW{ADddC}qt3U;`NAY< z;e8ZeP=^Uhq-Ba8^Sr|@IzVtAFOE?7Z0aaP+D-==X<*_~4F7 zP7^qU0D?hFg^a4w(#)q3Pe%!4YGUwSTpYSIjTilT6d`1vZYw?7EBv7E6v+j>2yVONoO`C+!LprDucGOM(z6j>RAui;8~3PCpo{*h zA~}lcRob*E_XVJ4GhJ{4A0&^rz^6CgVqj&W9BdhB+0sV&I~R}vV{ZgD6vSE$hEA_- z3;D59F!{AvX^X7}X|)`pl$gvuZN{eG=@n^(nDbhIoe9E9fi-Ou?hDmaENSiH)qPTNwr}JSHN~Jv z9-qr7^WN0S$T0L&us0CHNx@D^iUKHP2*~^3{`|^U;WG}k|p>GSG6o%5O?dzO%y<-MxgE zX8AtH-PcT?lMXP+&!ePNW}A6+U=}(KbmoL z3=TXNFJqUWC;8O#4@S%0VO?*}zm%P1IzQbFk#`G|riUsM<_bcVM+ zMp?ZZ;r?}KI+5R@9%7dt?5`PTEU&yf-|_XL7i>P(_AQkn1&nm|Cvb`tWt|;I8h@HC z?Lib^l>acKM zeY>{_aB0@UMyg|2L&Eh^6KP75DSX!{k~%UxN-#O~*b`ty(k0pH@>Wj4CTc#z>mbw} zs5!5%mO>MyeOHQJaGsUU4h>v5NW`)K;~KOELs%{Q9i(aTu~8{}4l|O>eA{@Ja@GYG z>_$HHLXlMSUzVad&)Y5tul+eeilZxc`z9vL@b%cC4SLB;_w~x9fA02olJ#HlfvxQb zFUO%ny2R=7@%!rLfWRh2R>bjBYE`0qUJY|Mk0m#bBiyNXP1L;1~~GXKjLuXeOszMgWKPyJv1`3+G1X>oJ-<}pv;=(;h+bhmkLvf5jr31t9Erb z49Q!ukh2A|`SSzf?6Hxt;2ciU$rlIyv(Y)J=XEAggxsjVllc<}q=6~_&*yOxSkSxl z!L1!7n>BF%(}#QhZ#Sg;UylzV`Wr$JK8 z`Reg~+b9X-Nt_qn88~;y1OwJn3{@s#D(#5+yMu zOSdCAK2Te4M{~A~%>NdIpeiU5#>E~q{{$Zvd_;LY@b?_LJI1171Gkn{YU*3nH+McP z6R05x57$6821uaZHDHRSCbg1uH3lWBO8gk;mD-Y5|>@3hpPcyVM}w=lGk=*CU){ zelI(ZvN4;rPDkJPRVUk3mNn?5qbT;>LnxAuYGBquw)rQtexZjQiE5{&?g|YC$BaIZ z$gA7dS_Huz+~f*BU2Pj@%RlH!VlGF>Z_mY~Cf;1%o*`IGxj%hc@jG-yt>QkT;LT$4 zl8cbntD8r#eeH1cYyJ0y-pfR^VkAAB@Y$E`rj^ah;M1x*){hFBEUdea#N`uDD%A={ zB6X;>lR)a4m#s3t#TL7(X+~-fmzzp_b(If zs+CK~e9S|zC6_imd(X{j`TbJ4BCIr8Zq33mXrJ<@S`QG~s`bSS&TLKVs9*b~i6P}( zueE6r^&Z~m3zu5c==$gDrdZ{IOlqy(yFM4zM)kQD19;98C&r^D9R_wD7WJ!V>jT;; zZ}Aec@QBM*ZjU5(Hu)91V5HAeMCum^vC6&s(k2SghyGsu9`2#ub9l3h|FfX?yRo&7fH9`?#GdlepN)(fe3*9&AA^rA@os~ zDgND%)GVhCzt07OdBYsHj;zd)&rz>p!8_woxM(cspD_`?w=F;NKgTC=ltbnC>W?j4 zUKgw!yJj8q5{>$cMC-W#BxBMZ*WTn9#Kp#3UsIvpje|z~_+LhRP)JSrG;CGBM30({ zlaY0RKYgbWG`9M1_PjZ?p zd#6E}3H#;IOlpHDBg^BccL6j7=m=xkEMXCd5#dH^>ALfFnF^D+qw%~ka#9Yp$$>no zH)j!fg~UZS(lW>S=Le=Fu~2}sA?i;51=3fvPHoaF^VFxgB;j&JyxpriFskWM=VLs! zF_qb3vIMTQLeSuyzXjaTyQ$~vn@(5`Y@=KfD&Q$?c_j2%nC@iqBzBuvQd(1jaRY_~ zR(Xfneu#Y;N<%^q8g_ZZg7$v&n8$Y&Iw-#*gMCXbE8L7Mi^c_Mw#abR{sFrEmyM|L z8OyJBa2SqY@Do(>LQG!`9{7lWn87=J8gf5lDWiG=&wHrp56GREqS;OCq;P;o{?d_4 zDaEj@l=M8js1Rz#;rAwu+INLNz(M9vtoEl6`$84cT|&4yKO*3EHn#MKtw@|0s^Aa0-=la-a!PBDpeqaB2}tN?@I5Xm(WB6B=iyj z384x|XwpJWxUc8jf4+6sS>Nxh@2<49=AFzuvuE#TX7+s0R9B+C#C8b;0@11{%WH!` z6m!6bfrb(&S-B&G1AcBnP+$lMbPN;){sw_Og+L&JB?u&*0s=9=%|L2N z0uQKPsw&BY&i=l>v=+vLKpgQZ^0K<#*bO|~P#5!cYx{A3L<{SeTg#?aRAZ%A6*~CX zw7y0NHpL*Ub=c*g9n09X>2bF7_`HU22XAMoD#fDum!o{L@$oma(=see3N(bcGro+Z znahl`xLsqV7*g?D6+&J48RdR9*@#~cO0|+VS|s^%l2fK&8?6)O!4Ql&Y^!6~t4;?5 z`gKiooE8MyiwUF#sW1+MZt+vHf$k{CoD0mOu>*a)PC*O$eESQ9j5d`hNICK!S4usd zv?Z066V_k@1=$a1v}UvH*Y7`cf#4@I9mNDv*iOHVTW*Ar%FWK~*O2*Nw|QcqG|ioQ zjkxVjBW{t;YS_pShEk@G7ozF0S)0BmZ<{Mr2+Q^gOX$qCq|o~k52Pmj_o6C(YRc`f zES4N`f10PpFOw2S#9q*h_E zAvnbXqp9nIj`h&vkPRDkJM1b1tBnqV04!aV#_C<8{#n~&>4~CW$@Mwsb%J^1XrU2@ zhQT}aM>$|&QDq;g+hv#_QHvI@y(odDeZp*mxoczn=^e-NyTA6PHp^kS>A0eHVf)VO zL@~_Bu{t7LOwCAaT@EC4;7wN#fRdvWxV zaa+PR$uf}=peFzWAYGlL{%kf=-%5Bll}-RmQzGvO`fj(&A)SkUcE>wp=NcFL-r#&G z`SIT{`bA#aNbdo{K|D2sMugj*N1&(U=6%XbENu=^YRQmBe{Dpjfm!o|ydlu&&)O${*)JT9Mir`2|G z&@DL)!%6(BcGhdr*fXU5Ll$#D;Cz>%l26bFZIlcQSDXwa!jZI~KCIRkzX>`3Y2>o{1aerHU-%#?V z@|)FkjdHj;&8GyrisN7K{8yd>+td!Z+H)6@y5!)ZAj(O#^BzFi^z>tUPJR@MPO^^J zREUw<-b31SxRC$>Zpl3jV{F25w+{Mo zPho+Y>we8M(BZ%ke=L{7XjA2%BOv7B7V|p7NSMg$_Z%1$RFc=hc|*mz#}SWIfj2j-2YNZlc6591 z{z%}jadXG~TCPwL(s-_tYGiy|Q1RkN#9;*Ec8y58OHG|*(uq#KpY8H@g(z5oT4ZEH zPdcA~5mNZcJ2g~-QQQ)F94?*@M6D2IpcoxtKzN=i48Ch)tF=w+AV}0@GV&~(fOp4r zhImu>mX<4wsy%F4d|m>5OCNmvEIelGkeYc!>hBM2YI3lzu*kn@7uU2^SmfP|RbGPJ zFP}=CHF$Ef%$Y*S@RU_HIdQ|lg4y{n5f-$*9z6jbK!ySUST{M`2bX&Ev6sa_EKV}e zSVP02*+jhU*%9`2pD3e+k&&LM>E{$XeZ-=f%P2+q#ts?YjJ|v0hF+5oM2FX;*7L^o zQ+G8r{6?xb|GmjZcZ>-E$CTb$)cC`;=8SxhK7ARI)LcM3)>CSS^}``YKFLnnVROX_-jJz8?=rX7rf+EuG`mTx*=#jqy!LvX z#_8H4ynjw^?((Yv{Rw|lA7zuq^;Y(?5#uBQBrOM}r3?Tm4neQVg9tBxX7Zu6SIiTI zoGP=_RMX1_Bl8OKU)d5vFaW=hjV@JF=!=^GSw*Tj9jm4iC(BFxEci_|E45n7%j=gz zgn3N;;QcH&IF42hyuf#pO_)kUqasyzcHNx!%>s+x@P|tuMeQJSa_oCY6H#mLY1wOP z&T=G1$7>S;ruM7rF95L~kbbR5m1Kn0POf8BDJ4{4iU+`83rZ+1(k{n`*rZ8B=&5{I zzQ!kg1N!RqYwxz_6E7Q@1^b8Ap6#o%N$@@zF?EpO4pBy%o@lGjd%}turT>^FCXY#! z_+Dz5Tqk7qH4N653zi^iYDBchv=jKxm)4EgI*g#(oYta{344g1<7o};9HS=3N<{!I zNrDXzwAl(WF8rn|Z|}ZR3$z*6Rjs@lUR_N>_1F1si`^G@Q%^d;se-2c$y9qOKOUjx zRG(a}ePEVQl*+C5T{)Bb%~N+`RZI42MKCS510-(p3X^B`q)YImHKAB8xK1l|NfWVG zf!x=T0-Y{u$h>|%q+cNqWFZ@y6N7SJU85`@N%*>z$C~8c&P`y(mi3}gKL@iiQ|#1V zh?a_!G(Z7DW~@)aE1stdA5EaaA$D)mdxr7a3+P)!!_mn{1ga=uFa4D#Nk-0AXXoUW z=J)~}#1CSQz0fH3U2h9N^x^93<5C+{rvBKN5BKq{0ln|1n4OZPm?L67j8*^z7AIcj z%c8r#wdh`-DCq^1o*^HJ-uWRZ?(EzRpSLc)!MAy_N-`XZ2Ung{Z!%*TiW|M zQ_5toE!P1z!HjMcT(jR))#dZfKXh>KX4Y$39|6@V- zGz=w@VPQc!m8WJHJ^0Z|uSdQLgnRf5qY14qf zn{}3btXXi~BavO%{fji|<@rV4C!h1Ya-Ep#LLL11jY>mazS7t7>_5cz|Fs(Oc2jBPIY%m#I zlAZo4Kx)0~IU1m*%3648XVBFx&wtrEXDhOaY%I~TZ~P5^2)jCtd}*C?bC6izzQPO< zk`UuXN&4!NJLwCE&cSh~Ey{+5hkiCTL%Sig6WzdC+4NG4t4mB0ait<&lu@VB$~ua4 zkvjy9{q2wG`C{0x`C-(|g&(sZT+In6CO2aad>Kflb&vTx=w*ofHmC;&p@0&(vfYcz zpM6R_va~mj9PlzaY3UtX%ld=d_;QfqCg%a1@UKVs=G6j`_(&TkvpeZUQW6mzt&vVS*F=e_JH+2GE&vU z;xIWod9g3qZ90-u$0b6)zc+0Ffb}_`UyR2e^+8U5xeT2xFNKV_7RPrF47Ci!;g8QebAiS4=J7AV(9og6g8bk5 zODju$JG~UZstS~>DaJDOeTQ#t#KuPN87Fg9*NBwdpB-{*4tf9)EG*d};Y7BL4G+N^ z+)4^cOia?VEABHSN9mtZ1=9@WtC3119R01PKb0T#z|260f)8z`JCl5@thm+AT**lj zhkbnd&L;zc30yX{ob1>3D{W@#XHQ>lzn|K-cuWwubNqA8aqDIRQP0m5Jv#b1N&FfA zn`pti@KgPIS;zE~r=ql)KM^>&1f6e zI^fR8T{85qhBDrQ8NKVZP&O7R#JM07GI*s->UHXIt=oezq6Ekh@2SI$h z$>~aQ_L2uqV@)nx=4tSB+!rw!8ZGyoQWlpu%>D-m+sRpILa&I9j*fJNrYfeg2Kk1I~YNj`Iy!v#-ol@rnyQ)k!q`?kB+B*Oj>--4uf&Tey4hN7`7H_+~8 zkHFx?p{)(x%%H$;G=K@w_4n&Pb|U`O(|A$w)tLhHMI-uuZ)yBjL-7oLW>-N!BN+cz zZpgpJ@c;TMs2^Oq6rg91-v1j9hSxcm`X5yLM^;V2S7(sWQzWvBSq%@3xOh=9-nGc& z+!bm$2a_Jn28u?bfbuQEX4`fTUqKv~qT(Xmx9b-+sjwbQ(2Rz6^qx_HvNAG@bbAMV za(GHhA)yN~fv%g{2P0!ZV}Irs+SM*kR0y-tVrBP2Ld>t-bmFL3zKqYrQv=6N$6+(8 zu&>hBzwt$XVPqKxT6|h@$z<*E2KIw>w4$}fI$I1ip2}mf0h0hc0}PYpIsuuhrg!8m z4;$o;EylYx`7P2j}mtB4Nbz^44+urQPEJc z1#$a%BO0ncg*D#G_J{F6ub3x;++IeWqv)LQEzhY}rD0@$b7+ndntihV+l|zd?=V;j z6>1L(gv#)I^zdjhHa3%v&Gax%pq{&Qty0BiQyG?mT_diHRBR5C-m! zg->Pkxj8Og$|EDI#|8N-(#^MmBjT1+6K@GB4u3R&g_pLOaI-=1KGI78WhTRk&$IEYs-IIV`H#Xs?bkRic@TKWvjN? zuHB17d~NVCNa6{D(4m@wb3>rJC`|cSU?XA4I_p)M@Kj>> zKs%+mGcz!-JJV9$4zcDRwZ#=J*mf=~Z9X#onceh70SU8qKQw=c_v&_K^Y=!LbMGks znxb9TFZ|Ev?tkZ#zBmoN2>N)9=U+V4ZVS>-02@K_hyccR;H?yW$*cBz0jx~65$4V_`Bx4(B%V>vel>joksTO7Rq zR8nvhY|&nW`r(Ji{WjUn=E3EIXF9Ow25s$}yR8+{?Caz=_v_Z^T86Mv2Z<{h*C=8j z{tpmOW@jKi3yrYPSEmionPmY!n5KjzzQrVcAq|Q>H4Lzcv5D--}0u@*GUzq=X=~MS=Wt>-#4jm-+U`B)u7bi z?j#bz;L2k?0ZA<^@7lFG9u-2fI*g^mh-X&22qpRHpJUgu1CCIGQUQ~v4qUK)2Q$v& z4$_#%(@X{2J11khtkIGU zugMu6hz-|5r*5ea7qP~E&t44Cj-@?%s7K?vuqz1LAF9IkUh8?ogOiK%DPOZa?r_-1 zIOwL=^Xb~9GYjLlc<_U#9+yK;bOfV-1(w!&AN ztdJy)tf!kltJq0z^U+4{2z`62#nQwS4AQxc%kQY=cpbcPAMxMeSXR`EuSuV|`RgOS z<|861Q^#~PG6;|DN+gW7-qz+%O9;Sy3598vgt3;gJ?XO!@J;m$;}GVba?@t}@isMbYbOhYRzD9Pf^kqL_+Aet?eXhAF)8Mnb&1n`R7 z=&mvSGbJnO&@YAbxE~LYsk2iq&YUZQ^O?RxfI8C4ztbVkr)X{Yq~l;n6=Sg3;-5xy zooX*r1xBvOz;k(|gGLe$kVEJraGO*>@9x~@m~|aJ>5v&U1klR|zcO=SG#&+pKVI)CN{a zi4+zNW{@Sg<>w2oTF||o`rd@f+klV}4|7H3pj`9-sK*J?5A{-WpSrDkdwUlVvo3J~ z_7T##n#-@awY_a;YfN6ol8VDJVIDnmu2n#f|3hx;Ox?jZB|;*6X`zi_!R{ z6^Nmae8Wm#`Cw;{y~U)iHbC67toEECUr!fF-PP>BjEu3_{GDJ&_?# z{mO`mnXqM>d?oo1pK`prg%4SDcDiP3KUgU#`5d|B_JUE5N5 z-Y6kJ>|)Lmm?0m#v)AA21BBW9tE0)jDz_)LCnkDCYF>Epc&gRSzHIZE2%mbAhRTfKWO1Bz=Z9;>E7c9=ETME z<$IzxeDx8+(`PdrNVVkE)W?W*?5@=k!XsQ{7>hqabru$1!MRts6v0bP&R=8|kU-FR zvV%ZyOS=F6JK=xbh4Rj`5rDhQYSTjqa$75R@^B0)BY WoCvlgoEUIn3sO-~m#=_YzW+Zp;MRx$ literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/music.paused.png b/tests/goldens/psp-vue-vapor/music.paused.png new file mode 100644 index 0000000000000000000000000000000000000000..bf042be6ae156d8f66dfd9179aee6364c3bda2c8 GIT binary patch literal 20315 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/music.playing.png b/tests/goldens/psp-vue-vapor/music.playing.png new file mode 100644 index 0000000000000000000000000000000000000000..9347e9151514e8e7d8eaa064dd3760964074e271 GIT binary patch literal 20679 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 XD)n4(aJB{5Gn<*Qg;9xt)8l^vUE&Rk literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/music.skipped.png b/tests/goldens/psp-vue-vapor/music.skipped.png new file mode 100644 index 0000000000000000000000000000000000000000..476ad70a87243a52ad81fe6b23cb0f7390043b9a GIT binary patch literal 20735 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 O*o?24U9Hl0j`|M;L-J4n literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/notifications.boot.png b/tests/goldens/psp-vue-vapor/notifications.boot.png new file mode 100644 index 0000000000000000000000000000000000000000..43da935c5fa8cd1688346b1737a4beb05f88a570 GIT binary patch literal 11631 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/notifications.settled.png b/tests/goldens/psp-vue-vapor/notifications.settled.png new file mode 100644 index 0000000000000000000000000000000000000000..753259b2fbb0e05186acb55852e5a253e1d56703 GIT binary patch literal 19529 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 I!8PpqpR2?j$p8QV literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/settings.themed.png b/tests/goldens/psp-vue-vapor/settings.themed.png new file mode 100644 index 0000000000000000000000000000000000000000..edfebf6d5ae16d1a460ee2d45f481cc47e5569f0 GIT binary patch literal 20339 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

        -pg*{dQt`)l+vma?~G>-b-rDuZ_3z`u{xd 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

          &o@bknoozR=%Wr_Y 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 N!S=@0T5JEbe*+r5l~w=% literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/settings.toggled.png b/tests/goldens/psp-vue-vapor/settings.toggled.png new file mode 100644 index 0000000000000000000000000000000000000000..5488212f4074f700714c273c3c8c378dd4a26181 GIT binary patch literal 19933 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 KM)j7k@lm5y}scz+Z; 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/stats.systems.png b/tests/goldens/psp-vue-vapor/stats.systems.png new file mode 100644 index 0000000000000000000000000000000000000000..0da1eef452c28f75deb42823ea512fb338cf3da0 GIT binary patch literal 23684 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

          m{qFk7i`6{bb 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp/hero.boot.png b/tests/goldens/psp/hero.boot.png index 677e7c502163b29a815efe25683670e1b924cc15..cbed137221aa2f4c106861a873effa5bbd81b7fc 100644 GIT binary patch delta 2241 zcmV;y2tN16kO9V!0gz$=&#`0HEfnM9<8BiWq>r#a#DO3Pg18iXNQjdW0W5#vJAYZ@ z$nixbWffH#&COf%pQop%uT)Z0Qf311mG=5&7P}AZGcrz`mdpJ3X`!{&v!hiVJQ4gq zk9`K8JB&HxiY8YvYga|3=IVd0+rH~oO>;lo`A{+V^Vw*J6Bv)bC*qen*cxGOs+|FiTXOmUb$?gL`atolbAwGo5=O zSS-Spj%54AJr)2*7? z{YSE*M~2e}?mv>%qNB!-Q|WZnTWh!8s;MQrm{}E-mT!ODva7j8$C;Jozm%P6MWyBA z$Ek)WL$>Zruc%Z5n2JivKHiybvD~84vaLJQ0D$CNR9beswvK!_aOAjDA{jqURa9EG zVe>AMe*cl<`;TM|QHDg14B!9HtP2+lNqTEVGygVj*_Hoe;rMZ?=#k<3k7Q+>I8EEo zV_E;3ez<={M_D@^)>_qCiOe&&|47#KxbgjbeXN~O8!d?)JIYro84wgOew+%x)ITU7 z^W+)Yl8Q?8g&zxpgCF5O9o7tR{Lk8nCVv+$7V2~q$GPCxZg+=a{#oq*9NF5^ub6)? zC(a)lHkf?ARa0A2Ti-t@0KnATqN}N`XI@tQg93kwO3S%-0hn4SszpcbPWxi(r)d^T zB;71KH{aZNr(Ot_i?H62x_Z9N7nckFoZvy{|5!+FbO0cg`Y^rM<`!!IkrS&{EFpK) zs1f0Re&fB0O3l!)kfjOp-&(gdJ176bkA=}A!(+#(=%b=XhLcQU$Eh}axa)N8g%{?} zCRu;IFn<=gmqv{Ue{0>=?=KckpAyTFl|_oKl)wANGGbEn$Z)B&Yjw0C%E9L4l3ml| zV&~18YMxcp$Oy8%e^9_%>$cvisgp`1**OmAgc8a`%59Iq~kB%ZMjs?Suvg1=wOqbYw*T+zb7K z1IRh*=PMba47u>*Po%``-2CW~;k0*S@pN$XD93v;$BFLoyc4snZMVC_&~WsBTgv4= z%jRW$ymRmPu`1H4I*I}SW?$_e6hJm|>;iz>HT5kzDt4U8S1QRod8W9u?A^DPn-_mK zeyqyec;{XS=0!*)67G)F+(OxYak&oHhB#_!>va^>Lh18=EF@c`QlFyI@}XfN{d^^> zRwQiLoC*M+Zuu+osG-Vx7hBZGhzl1B>8u_bt0LR``AVWkhF4T+rUP(fWs&F+;k(n1 zOpl8lsvOJ=GFU8^&_6i9VpjC_uC9Nq)7R9n?HsBc++)%A5=2H6m6Wwm`l8aZqSA8a zBjX;+8W0?4%}$Qmag=!B$HEI23twB2K=)d!CsaAuc1xIyAFImF&7U`GYI6&9;m4m| zN}O*?H?Y{F=)}KWl4MKK0PwH9+pL{XZp_aG_jcP)BCEsDaP)s$%H=rA=6rvaegpuP zCd>!N*qi!3{dxRY)m!VfTD+B7G~T%vg83mjou0cRRaR;2>(b7}2?8BEPDOi~EOa^w z0505Z0st7Q459lUx$*W74q%0Tq}_WD8Cj65m??dw5~k;FF)NF_`_}U8ocyBF^30QG zq*9+%cLm5|x%Oer3~NObnp=OUjayP%bktB~$Pi^n^hmf~b;ItmSXitbcZn5Mnjy-N z(>eL{poIH`+7SyLKW!Z!V+Dl1e1dUG#6))&~a#aPMLOf)C(62Gftdg4!D@zPDfD#f&%EQn0Mf!((>q$;oMnS zWBQa>GIH7Q;jZl5{GnkBtd(nDm1#ShTd0bv8$%eK(qhqs;w$C1YwADU@>kL=GESV~ z?w96m!f{ivSUc_#UzmSCdx&!ITWdewe}qbIK1)BsJX0+?%2#UBk1e?LLSP=k(UI)P(-pY(O~SM3HcAl`AAV_Uo?Qqd P00000NkvXXu0mjf32%;c delta 2241 zcmV;y2tN15kO9Y#0gz$=(6M9IEfnqDr@woTAa2C|5C?)F2;x%kAt94sIxK&L@BC$r zBgYq&lvPw|G&gV2f1aM6zEVk1Ntp@2SK8~BS?oTr&&W7&S}ybBr-jy9&yH4g@I>(c zJoXuU?l9(%E1F!ztX&nAnydf0Zu_oVHFZU$WlV7h8T3Eq#kr!NFthD#5l*~_9LG_C z-nujWtL(EEE*8>%a+&||@F9QeH}47=G{F3P^oZRD_6^M~)W3}9frxRnz}dFe)Qe>OE-SGb>N>_a+&|o zun>Chh7Wfg_-EGb+WG_k%xY_Ij~*G(Id$&;yxzx;b`n0Fa%NUs0ubIdK7f z$o?b8Z`agIrIPrWQ%M?DR{etm<~}{mmaNQaZlR8Sb^3NqJpfFPizS_DciQ3jnNv^a z=9`zhJMHlFxY!F93vSoculjQ$`8qT#gt?t{NOn$sQE3^;zoLIi<13X+pAu`WXlu4b zkBlHkv23tbR{YFq+$X|ft6D3O32D_uznk69S7Pym+Gxq{w8Irunu;pT?V9?f2@8s^ zlwGgVFz@cW(+`;WtEQIhVrErTTE2gA%dX}Y9cNaS|5A3Q6_u8c zAEz3k4B5Ify`oYLU@9st`*>%%#d3>E%eL-J0|1h9QEA!j+B)*#z>(upiDdjZRZ(f# zhRwT3`u#_a?>~|?L>Ur2GJO9(vo2gLBh2zJmqDO}BKa!Pk;xuhT zk7fOD`r&^T9cArwSZh^lB{I+8{v%n_?mKUWI#~B_;D%#Q~#iV z%#&wmODZbW7k(@Z4t|9DbXYUM@jq)Pn*3e3Sg6xc9Or^#yWJgz`Dd~Jb7X5vzheHq zoH&1I*kJPcR!wb9ZGHcs002{Si>{`&o_SgI4+?)MDlO;U1z>8Ss1_ZyJMD|DpQc$X zk#w`{+gxG6UtBKybAkt*|6?J!(E)%|>cjM2n_H;;M^3C-v4q@F zqeg`P`HlA~Dm6pHLY5}Xe{0>=?40}yKNd!h438bBqK}Fm8BQ{Z9jDsx;jYuU7hae@ zn`D3W!u(m}UK%wb{H=9czrR>GeM&4xRu(C`QvU86%ZN$QBg3UqAF_RjaZB4$cFqOb&d0{8{`|&!FtUfDXDJE6fr0k&8Y9U0L-_d@^R z0CJA{`AUW;LoWRI6Dct}H$Qr0IPKk7JRKZ8%JH7eaiV)X@5F3t+wJZ!G#vfkmU6kz zvUyn_@7z0ntctX%j-mj7*;o4q1(1y#y8z&JO?``wiXEr&l}a*Co+&OZd-tv7=EZ-F zAFDDq-nkcoc@a{Hgu5d(w@|iUT&}~lAbdL2czQ2P8I3&|F#)TgMld}vrmKVQkJ z6$u+QrvkvITmH&CYN+zw#TGR(;=;v3I;+RVs>t?!zLMyX;T2Vy=>QyAStNQy`0n&0 z)8k@?DhD%z3>M2J^bZcOm=(Rft1Ex&^ffhXJBKO<_gM731d$O%C1ov?zNoaUsI;8< z$hgO{1_TFMvy-EC93@`(vGBsh!q-+L(7o2`2~`fZ-4Z6_$Evb(^XJW)+T222`0=Ng z66f2}4J`I3I`MCpB-v6l0Q_t3Hftx88}oC)z1{Yc$m%dO9R1&xayibjIiG)}9|3@+ z3G=}*_NKm1e;z+p_13zr7H_2%jd$*aV19^Br|0fSl~o%1y0mj~fq)JoDrk zsnloHT>-LKu68;x#?BE z+J7XgqDu4bo6G33q!I~q7ya9{^}#^_+`Cu|4GS5f3}M|$ono-A^}@x%j1y;=11@H_(^1rbpa426<{h}Gv^;ubICoao zm_8+zj9fN+xGOt1e`weOYvtNkW!lc>7OJA^#t=rQv{*Eu_)7Whn)*+-{FQWzj1y<|j_z(PNCjO%j~&KhGGO%o9U;IcTu8#_6&9_1KZ@$kP?L_D!?rHcJr{c64cG-3}$2 P00000NkvXXu0mjfS9^+# diff --git a/tests/octane-smoke.test.ts b/tests/octane-smoke.test.ts new file mode 100644 index 000000000..4d5b76e32 --- /dev/null +++ b/tests/octane-smoke.test.ts @@ -0,0 +1,35 @@ +import { describe, expect, test } from "bun:test"; +import { bootWorld, treeHasText, type SimWorld } from "../hosts/sim/sim.ts"; +import { BTN } from "../contracts/spec/spec.ts"; + +async function step(world: SimWorld, buttons: number): Promise { + world.frame(buttons); + for (let tick = 0; tick < world.ticksPerFrame; tick++) world.tick(); + // Octane universal roots schedule re-renders on the microtask queue. + await Promise.resolve(); +} + +describe("Octane hero demo", () => { + test("boots, renders and reacts to CIRCLE presses", async () => { + const world = await bootWorld("hero-main.octane", 60); + for (let frame = 0; frame < 4; frame++) await step(world, 0); + + const initial = world.getTree(); + expect(treeHasText(initial, "PocketJS")).toBe(true); + expect(treeHasText(initial, "Octane + RUST + SCEGU")).toBe(true); + expect(treeHasText(initial, "ONE RUST CORE - ONE OCTANE APP")).toBe(true); + expect(treeHasText(initial, "Count: 0")).toBe(true); + expect(treeHasText(initial, "Reactive on real hardware.")).toBe(false); + + await step(world, BTN.DOWN); // establish focus on the first focusable + await step(world, 0); + for (let press = 0; press < 4; press++) { + await step(world, BTN.CIRCLE); + await step(world, 0); + } + + const updated = world.getTree(); + expect(treeHasText(updated, "Count: 4")).toBe(true); + expect(treeHasText(updated, "Reactive on real hardware.")).toBe(true); + }); +}); diff --git a/tools/bench-chart.ts b/tools/bench-chart.ts new file mode 100644 index 000000000..17d9d3186 --- /dev/null +++ b/tools/bench-chart.ts @@ -0,0 +1,132 @@ +// Render a PPSSPP bench summary (tools/bench-ppsspp.ts --frameworks=... JSON) +// into a self-contained SVG matrix chart: grouped per-app bars for the +// headline metrics plus the geomean-vs-baseline table. Deterministic output — +// byte-stable for a given summary file. +// +// bun tools/bench-chart.ts dist/bench/ppsspp-bench-.json docs/bench/out.svg + +import { readFileSync, writeFileSync, mkdirSync } from "node:fs"; +import { dirname } from "node:path"; + +interface Summary { + generated: string; + samples: number; + frameworks: string[]; + ppsspp_revision: string; + git_revision: string; + apps: Record>>; + comparison?: { + baseline: string; + geomean: Record>; + }; +} + +const [summaryPath, outPath] = process.argv.slice(2); +if (!summaryPath || !outPath) { + console.error("usage: bun tools/bench-chart.ts "); + process.exit(2); +} +const summary = JSON.parse(readFileSync(summaryPath, "utf8")) as Summary; + +const FW_COLORS: Record = { + solid: "#2c4f7c", + "vue-vapor": "#42b883", + octane: "#e8590c", +}; +const FW_LABELS: Record = { + solid: "Solid", + "vue-vapor": "Vue Vapor", + octane: "Octane", +}; + +const PANELS: { metric: string; title: string; unit: (v: number) => string }[] = [ + { metric: "avg_work_us", title: "Average frame work (lower is better)", unit: (v) => `${(v / 1000).toFixed(1)}ms` }, + { metric: "boot_to_frame0_us", title: "Boot to first frame (lower is better)", unit: (v) => `${(v / 1000000).toFixed(2)}s` }, + { metric: "bundle_bytes", title: "Bundle size (lower is better)", unit: (v) => `${(v / 1024).toFixed(0)}KiB` }, +]; + +const apps = Object.keys(summary.apps); +const fws = summary.frameworks; + +const M = { l: 56, r: 16, t: 44, b: 34 }; +const BAR_W = 26; +const GROUP_GAP = 30; +const groupW = fws.length * BAR_W + GROUP_GAP; +const plotW = apps.length * groupW; +const plotH = 150; +const panelW = M.l + plotW + M.r; +const panelH = M.t + plotH + M.b; +const headerH = 96; +const width = panelW; +const height = headerH + PANELS.length * panelH + 16; + +const esc = (s: string) => s.replace(/&/g, "&").replace(//g, ">"); +const svg: string[] = []; +svg.push( + ``, + ``, + `PocketJS on PPSSPP — ${fws.map((f) => FW_LABELS[f] ?? f).join(" vs ")}`, + `${esc(summary.generated)} · ${summary.samples} samples/app · PPSSPP ${esc(summary.ppsspp_revision)} · pocketjs ${esc(summary.git_revision)} · software renderer`, +); + +// Legend + geomean strip +let lx = 16; +for (const fw of fws) { + svg.push( + ``, + `${FW_LABELS[fw] ?? fw}`, + ); + lx += 110; +} +if (summary.comparison) { + const { baseline, geomean } = summary.comparison; + const parts: string[] = []; + for (const [fw, metrics] of Object.entries(geomean)) { + const work = metrics.avg_work_us?.ratio; + const boot = metrics.boot_to_frame0_us?.ratio; + const size = metrics.bundle_bytes?.ratio; + parts.push( + `${FW_LABELS[fw] ?? fw}/${FW_LABELS[baseline] ?? baseline}: work ${work?.toFixed(2)}x · boot ${boot?.toFixed(2)}x · size ${size?.toFixed(2)}x`, + ); + } + svg.push(`geomean — ${esc(parts.join(" | "))}`); +} + +PANELS.forEach((panel, pi) => { + const oy = headerH + pi * panelH; + const max = Math.max( + ...apps.flatMap((app) => fws.map((fw) => summary.apps[app][fw]?.[panel.metric]?.mean ?? 0)), + ); + const scale = max > 0 ? plotH / (max * 1.12) : 0; + svg.push(`${esc(panel.title)}`); + // gridlines (quarters) + for (let g = 0; g <= 4; g++) { + const gy = oy + M.t + plotH - (plotH * g) / 4; + const gv = (max * 1.12 * g) / 4; + svg.push( + ``, + `${panel.unit(gv)}`, + ); + } + apps.forEach((app, ai) => { + const gx = M.l + ai * groupW + GROUP_GAP / 2; + fws.forEach((fw, fi) => { + const v = summary.apps[app][fw]?.[panel.metric]?.mean ?? 0; + const h = v * scale; + const x = gx + fi * BAR_W; + const y = oy + M.t + plotH - h; + svg.push(``); + svg.push( + `${panel.unit(v)}`, + ); + }); + svg.push( + `${esc(app)}`, + ); + }); +}); +svg.push(``); + +mkdirSync(dirname(outPath), { recursive: true }); +writeFileSync(outPath, svg.join("\n") + "\n"); +console.log(`wrote ${outPath} (${apps.length} apps x ${fws.length} frameworks)`); diff --git a/tools/bench-ppsspp.ts b/tools/bench-ppsspp.ts index a8531cb30..b2e320f69 100644 --- a/tools/bench-ppsspp.ts +++ b/tools/bench-ppsspp.ts @@ -1,15 +1,18 @@ // PPSSPP benchmark runner for the current PocketJS PSP renderer. // -// Builds one bench EBOOT per selected app, then runs PPSSPPHeadless and reads -// PSP-side timing/memory metrics from ms0:/PocketJS-bench.jsonl. +// Builds one bench EBOOT per selected app (and per selected framework), then +// runs PPSSPPHeadless and reads PSP-side timing/memory metrics from +// ms0:/PocketJS-bench.jsonl. // // Examples: // PSP_SDK=/path/to/mipsel-sony-psp bun tools/bench-ppsspp.ts --apps=stats --samples=5 // PSP_SDK=/path/to/mipsel-sony-psp bun tools/bench-ppsspp.ts --apps=all --samples=3 --memory-scan +// bun tools/bench-ppsspp.ts --apps=all --frameworks=solid,vue-vapor,octane --samples=7 --bootstrap=5000 import { $ } from "bun"; import { existsSync, mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync } from "node:fs"; import { homedir } from "node:os"; +import { parseFramework, type PocketFramework } from "../framework/compiler/jsx-plugin.ts"; interface Spec { app: string; @@ -47,6 +50,7 @@ interface BenchLine { } interface Sample extends BenchLine { + framework: PocketFramework; sample: number; host_wall_ms: number; arena_limit_bytes: number | null; @@ -99,6 +103,8 @@ const pspUiDir = new URL("..", import.meta.url).pathname; const argv = Bun.argv.slice(2); let samples = 5; let apps = ["stats"]; +let frameworks: PocketFramework[] = ["solid"]; +let bootstrapIterations = 0; let timeout = Number(process.env.BENCH_PPSSPP_TIMEOUT || 60); let outDir = `${pspUiDir}dist/bench`; let dumpFrames = false; @@ -107,6 +113,7 @@ let memoryStepBytes = 256 * KiB; let memorySafetyBytes = 512 * KiB; let memorySafetyPercent = 20; let memoryMaxBytes = 32 * MiB; +let fromRaw = ""; for (let i = 0; i < argv.length; i++) { const a = argv[i]; @@ -117,6 +124,15 @@ for (let i = 0; i < argv.length; i++) { } else if (a.startsWith("--apps=") || a === "--apps") { apps = value.split(",").filter(Boolean); if (a === "--apps") i++; + } else if (a.startsWith("--frameworks=") || a === "--frameworks") { + frameworks = value + .split(",") + .filter(Boolean) + .map((fw) => parseFramework(fw, "--frameworks")); + if (a === "--frameworks") i++; + } else if (a.startsWith("--bootstrap=") || a === "--bootstrap") { + bootstrapIterations = Number(value); + if (a === "--bootstrap") i++; } else if (a.startsWith("--timeout=") || a === "--timeout") { timeout = Number(value); if (a === "--timeout") i++; @@ -139,6 +155,9 @@ for (let i = 0; i < argv.length; i++) { } else if (a.startsWith("--memory-max-kib=") || a === "--memory-max-kib") { memoryMaxBytes = Number(value) * KiB; if (a === "--memory-max-kib") i++; + } else if (a.startsWith("--from-raw=") || a === "--from-raw") { + fromRaw = value; + if (a === "--from-raw") i++; } else if (a === "--list-apps") { console.log(SPECS.map((s) => s.app).join("\n")); process.exit(0); @@ -148,6 +167,16 @@ for (let i = 0; i < argv.length; i++) { } if (!Number.isFinite(samples) || samples < 1) throw new Error("--samples must be >= 1"); +if (frameworks.length === 0) throw new Error("--frameworks must name at least one framework"); +if (new Set(frameworks).size !== frameworks.length) throw new Error("--frameworks has duplicates"); +if (!Number.isFinite(bootstrapIterations) || bootstrapIterations < 0) { + throw new Error("--bootstrap must be >= 0"); +} +if (memoryScan && frameworks.length > 1) { + throw new Error("--memory-scan supports a single framework per run"); +} +if (fromRaw && memoryScan) throw new Error("--from-raw cannot be combined with --memory-scan"); +if (fromRaw && !existsSync(fromRaw)) throw new Error(`--from-raw file not found: ${fromRaw}`); if (!Number.isFinite(timeout) || timeout <= 0) throw new Error("--timeout must be > 0"); if (!Number.isFinite(memoryStepBytes) || memoryStepBytes < 16 * KiB) throw new Error("--memory-step-kib must be >= 16"); if (!Number.isFinite(memorySafetyBytes) || memorySafetyBytes < 0) throw new Error("--memory-safety-kib must be >= 0"); @@ -163,7 +192,7 @@ const selectedSpecs = apps.includes("all") }); const headless = process.env.PPSSPP_HEADLESS || `${homedir()}/ppsspp-src/build/PPSSPPHeadless`; -if (!existsSync(headless)) throw new Error(`PPSSPPHeadless not found at ${headless}`); +if (!fromRaw && !existsSync(headless)) throw new Error(`PPSSPPHeadless not found at ${headless}`); const dccap = `${homedir()}/.ppsspp/dc_cap`; const benchFile = `${homedir()}/.ppsspp/PocketJS-bench.jsonl`; @@ -200,27 +229,58 @@ const METRICS = [ type Metric = (typeof METRICS)[number]; +// Comparison metrics live up here (not with buildComparison below): the +// report is built by top-level code, so a `const` further down would still +// be in its temporal dead zone when buildComparison runs. +const COMPARISON_METRICS = [ + "eval_us", + "boot_to_frame0_us", + "avg_work_us", + "host_wall_ms", + "bundle_bytes", +] as const satisfies readonly Metric[]; + const samplesOut: Sample[] = []; const memoryScans = new Map(); -for (const spec of selectedSpecs) { - console.log(`\n## build ${spec.app}`); - await buildBenchEboot(spec, null); - - for (let sample = 1; sample <= samples; sample++) { - const row = await runBenchSample(spec, sample, null); - samplesOut.push(row); - writeRaw({ kind: "sample", ...row }); - console.log( - `${row.app} #${sample}: eval=${fmtMs(row.eval_us)} frame0=${fmtMs(row.boot_to_frame0_us)} ` + - `work=${fmtUs(row.avg_work_us)} render=${fmtUs(row.avg_render_us)} arena=${fmtBytes(row.arena_bump_bytes)}`, - ); +if (fromRaw) { + // Rebuild the report from a previous run's raw samples (no emulator runs). + for (const line of readFileSync(fromRaw, "utf8").split("\n")) { + if (!line.trim()) continue; + const row = JSON.parse(line); + if (row.kind !== "sample") continue; + delete row.kind; + samplesOut.push(row as Sample); + } + console.log(`loaded ${samplesOut.length} samples from ${fromRaw}`); + for (const spec of selectedSpecs) { + for (const framework of frameworks) { + const n = samplesOut.filter((r) => isAppRow(r, spec.app, framework)).length; + if (n === 0) throw new Error(`--from-raw has no samples for ${spec.app} (${framework})`); + } + } +} else { + for (const spec of selectedSpecs) { + for (const framework of frameworks) { + console.log(`\n## build ${spec.app} (${framework})`); + await buildBenchEboot(spec, null, framework); + + for (let sample = 1; sample <= samples; sample++) { + const row = await runBenchSample(spec, sample, null, framework); + samplesOut.push(row); + writeRaw({ kind: "sample", ...row }); + console.log( + `${row.app} [${framework}] #${sample}: eval=${fmtMs(row.eval_us)} frame0=${fmtMs(row.boot_to_frame0_us)} ` + + `work=${fmtUs(row.avg_work_us)} render=${fmtUs(row.avg_render_us)} arena=${fmtBytes(row.arena_bump_bytes)}`, + ); + } + } } } if (memoryScan) { for (const spec of selectedSpecs) { - const uncappedRows = samplesOut.filter((r) => isAppRow(r, spec.app)); + const uncappedRows = samplesOut.filter((r) => isAppRow(r, spec.app, frameworks[0])); const uncapped = uncappedRows.reduce((best, row) => (row.arena_bump_bytes > best.arena_bump_bytes ? row : best), uncappedRows[0]); if (!uncapped) throw new Error(`no uncapped sample for ${spec.app}`); const scan = await scanMemoryForApp(spec, uncapped); @@ -232,10 +292,17 @@ const memoryScanReport = memoryScan ? renderMemoryScanReport(memoryScans) : unde const report = { generated: new Date().toISOString(), samples, + frameworks, ppsspp_revision: await textOrUnknown($`git -C ${homedir()}/ppsspp-src rev-parse --short HEAD`.quiet()), git_revision: await textOrUnknown($`git rev-parse --short HEAD`.cwd(pspUiDir).quiet()), frame_budget_us: FRAME_BUDGET_US, - apps: Object.fromEntries(selectedSpecs.map((spec) => [spec.app, summarizeApp(samplesOut, spec.app)])), + apps: Object.fromEntries( + selectedSpecs.map((spec) => [ + spec.app, + Object.fromEntries(frameworks.map((fw) => [fw, summarizeApp(samplesOut, spec.app, fw)])), + ]), + ), + comparison: frameworks.length > 1 ? buildComparison(samplesOut, selectedSpecs) : undefined, memory_scan: memoryScanReport, }; writeFileSync(summaryPath, JSON.stringify(report, null, 2)); @@ -248,8 +315,12 @@ if (memoryScanReport) { console.log(`suite safe arena: ${fmtBytes(memoryScanReport.suite.safe_arena_bytes)}`); } -async function buildBenchEboot(spec: Spec, arenaBytes: number | null): Promise { - await $`bun tools/psp.ts ${spec.app} --bench` +async function buildBenchEboot( + spec: Spec, + arenaBytes: number | null, + framework: PocketFramework = frameworks[0], +): Promise { + await $`bun tools/psp.ts ${spec.app} --bench --framework=${framework}` .cwd(pspUiDir) .env({ ...process.env, @@ -262,7 +333,12 @@ async function buildBenchEboot(spec: Spec, arenaBytes: number | null): Promise { +async function runBenchSample( + spec: Spec, + sample: number, + arenaBytes: number | null, + framework: PocketFramework = frameworks[0], +): Promise { rmSync(dccap, { recursive: true, force: true }); rmSync(benchFile, { force: true }); const t0 = performance.now(); @@ -291,7 +367,7 @@ async function runBenchSample(spec: Spec, sample: number, arenaBytes: number | n if (parsed.frames !== spec.capN || parsed.window_n !== spec.capN) { throw new Error(`${spec.app} sample ${sample}: bench window mismatch (${parsed.frames}/${parsed.window_n}, expected ${spec.capN})`); } - return { ...parsed, sample, host_wall_ms, arena_limit_bytes: arenaBytes }; + return { ...parsed, framework, sample, host_wall_ms, arena_limit_bytes: arenaBytes }; } async function scanMemoryForApp(spec: Spec, uncapped: Sample): Promise { @@ -405,8 +481,11 @@ function writeRaw(value: unknown): void { writeFileSync(rawPath, `${JSON.stringify(value)}\n`, { flag: "a" }); } -function isAppRow(row: Sample, app: string): boolean { - return row.app === `${app}-main` || row.app === app; +function isAppRow(row: Sample, app: string, framework: PocketFramework): boolean { + if (row.framework !== framework) return false; + // Device-side app ids may carry the framework output suffix. + const base = row.app.split(".")[0]; + return base === `${app}-main` || base === app; } function firstLine(text: string): string { @@ -468,14 +547,86 @@ function quantile(sorted: number[], q: number): number { return sorted[lo] * (1 - t) + sorted[hi] * t; } -function summarizeApp(rows: Sample[], app: string): Record> { - const subset = rows.filter((r) => isAppRow(r, app)); +function summarizeApp( + rows: Sample[], + app: string, + framework: PocketFramework, +): Record> { + const subset = rows.filter((r) => isAppRow(r, app, framework)); return Object.fromEntries(METRICS.map((metric) => [metric, summarize(subset.map((r) => r[metric]))])) as Record< Metric, ReturnType >; } +// --------------------------------------------------------------------------- +// Cross-framework comparison (PR #6 methodology): per metric, the geometric +// mean over apps of ratio(framework mean / baseline mean), baseline = the +// first selected framework. Optional bootstrap resampling (per app/framework +// cell, with replacement) yields a 95% percentile CI on each geomean. +// --------------------------------------------------------------------------- + +function geomean(values: number[]): number { + return Math.exp(values.reduce((a, b) => a + Math.log(b), 0) / values.length); +} + +function buildComparison(rows: Sample[], specs: Spec[]) { + const baseline = frameworks[0]; + const cell = (app: string, fw: PocketFramework, metric: Metric): number[] => + rows.filter((r) => isAppRow(r, app, fw)).map((r) => r[metric]); + const ratioOverApps = ( + fw: PocketFramework, + metric: Metric, + pick: (values: number[]) => number, + ): number => + geomean(specs.map((spec) => pick(cell(spec.app, fw, metric)) / pick(cell(spec.app, baseline, metric)))); + + const rng = mulberry32(0x9e3779b9); + const resample = (values: number[]): number[] => + values.map(() => values[Math.floor(rng() * values.length)]); + + const geomeans: Record> = {}; + for (const fw of frameworks.slice(1)) { + geomeans[fw] = {}; + for (const metric of COMPARISON_METRICS) { + const ratio = ratioOverApps(fw, metric, mean); + const entry: { ratio: number; ci95?: [number, number] } = { ratio }; + if (bootstrapIterations > 0) { + const draws: number[] = []; + for (let b = 0; b < bootstrapIterations; b++) { + draws.push(ratioOverApps(fw, metric, (values) => mean(resample(values)))); + } + draws.sort((x, y) => x - y); + entry.ci95 = [quantile(draws, 0.025), quantile(draws, 0.975)]; + } + geomeans[fw][metric] = entry; + } + } + + const perApp: Record>> = {}; + for (const metric of COMPARISON_METRICS) { + perApp[metric] = {}; + for (const spec of specs) { + perApp[metric][spec.app] = Object.fromEntries( + frameworks.map((fw) => [fw, mean(cell(spec.app, fw, metric))]), + ); + } + } + + return { baseline, bootstrap: bootstrapIterations || undefined, geomean: geomeans, per_app: perApp }; +} + +function mulberry32(seed: number): () => number { + let a = seed >>> 0; + return () => { + a |= 0; + a = (a + 0x6d2b79f5) | 0; + let t = Math.imul(a ^ (a >>> 15), 1 | a); + t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t; + return ((t ^ (t >>> 14)) >>> 0) / 4294967296; + }; +} + function formatMetric(metric: Metric, value: number): string { if (metric === "host_wall_ms") return `${value.toFixed(1)}ms`; if (metric.endsWith("_bytes")) return fmtBytes(value); @@ -485,34 +636,65 @@ function formatMetric(metric: Metric, value: number): string { function renderMarkdown(report: { generated: string; samples: number; + frameworks: PocketFramework[]; ppsspp_revision: string; git_revision: string; frame_budget_us: number; - apps: Record>>; + apps: Record>>>; + comparison?: ReturnType; memory_scan?: ReturnType; }) { const lines = [ "# PocketJS PPSSPP Benchmark", "", `Generated: ${report.generated}`, - `Samples per app: ${report.samples}`, + `Samples per app/framework: ${report.samples}`, + `Frameworks: ${report.frameworks.join(", ")}`, `PPSSPP revision: ${report.ppsspp_revision}`, `Git revision: ${report.git_revision}`, `Frame budget: ${fmtUs(report.frame_budget_us)}`, "", ]; - for (const [app, metrics] of Object.entries(report.apps)) { - lines.push(`## ${app}`, ""); - lines.push("| metric | mean | sd | min | median | max |"); - lines.push("|---|---:|---:|---:|---:|---:|"); - for (const metric of METRICS) { - const s = metrics[metric]; + if (report.comparison) { + const { baseline, geomean: ratios, per_app, bootstrap } = report.comparison; + lines.push(`## Comparison (baseline: ${baseline}; lower is better)`, ""); + const others = report.frameworks.filter((fw) => fw !== baseline); + lines.push(`| metric | ${others.map((fw) => `${fw}/${baseline} geomean`).join(" | ")} |`); + lines.push(`|---|${others.map(() => "---:").join("|")}|`); + for (const metric of COMPARISON_METRICS) { + const cells = others.map((fw) => { + const entry = ratios[fw][metric]; + const ci = entry.ci95 ? ` [${entry.ci95[0].toFixed(3)}, ${entry.ci95[1].toFixed(3)}]` : ""; + return `${entry.ratio.toFixed(3)}x${ci}`; + }); + lines.push(`| \`${metric}\` | ${cells.join(" | ")} |`); + } + lines.push(""); + if (bootstrap) lines.push(`95% CIs from ${bootstrap} bootstrap resamples.`, ""); + lines.push(`### Average frame work by app`, ""); + lines.push(`| app | ${report.frameworks.map((fw) => `${fw} avg work`).join(" | ")} |`); + lines.push(`|---|${report.frameworks.map(() => "---:").join("|")}|`); + for (const [app, byFw] of Object.entries(per_app.avg_work_us)) { lines.push( - `| ${metric} | ${formatMetric(metric, s.mean)} | ${formatMetric(metric, s.sd)} | ${formatMetric(metric, s.min)} | ${formatMetric(metric, s.median)} | ${formatMetric(metric, s.max)} |`, + `| ${app} | ${report.frameworks.map((fw) => `${(byFw[fw] / 1000).toFixed(2)} ms`).join(" | ")} |`, ); } lines.push(""); } + for (const [app, byFramework] of Object.entries(report.apps)) { + for (const [fw, metrics] of Object.entries(byFramework)) { + lines.push(`## ${app} (${fw})`, ""); + lines.push("| metric | mean | sd | min | median | max |"); + lines.push("|---|---:|---:|---:|---:|---:|"); + for (const metric of METRICS) { + const s = metrics[metric]; + lines.push( + `| ${metric} | ${formatMetric(metric, s.mean)} | ${formatMetric(metric, s.sd)} | ${formatMetric(metric, s.min)} | ${formatMetric(metric, s.median)} | ${formatMetric(metric, s.max)} |`, + ); + } + lines.push(""); + } + } if (report.memory_scan) { lines.push("## Memory Scan", ""); diff --git a/tools/build.ts b/tools/build.ts index b06eaa648..c7e3dfc08 100644 --- a/tools/build.ts +++ b/tools/build.ts @@ -14,7 +14,7 @@ // minify false) -> dist/.js. // // Flags: -// --framework=solid|vue-vapor select the framework for this build +// --framework=solid|vue-vapor|octane select the framework for this build // --config= load a Pocket config file (default: pocket.config.ts) // --no-config ignore pocket.config.ts // --extra-chars= force extra codepoints into every atlas @@ -116,7 +116,7 @@ if (planPath) { } if (!appArg) { - console.error("usage: bun tools/build.ts [--plan=] [--framework=solid|vue-vapor] [--extra-chars=...] [--density=N]"); + console.error("usage: bun tools/build.ts [--plan=] [--framework=solid|vue-vapor|octane] [--extra-chars=...] [--density=N]"); process.exit(1); } diff --git a/tools/play.ts b/tools/play.ts index 3a5298caa..bca909df5 100644 --- a/tools/play.ts +++ b/tools/play.ts @@ -49,7 +49,7 @@ function demos(): string[] { function usage(message?: string): never { if (message) console.error(`play: ${message}\n`); console.error( - "usage: bun play vita [--fullscreen] [--no-build] [--no-launch] [--framework=solid|vue-vapor]\n" + + "usage: bun play vita [--fullscreen] [--no-build] [--no-launch] [--framework=solid|vue-vapor|octane]\n" + `demos: ${demos().join(", ")}`, ); process.exit(message ? 2 : 0); @@ -149,7 +149,8 @@ if (!existsSync(sourceConfig)) { } const requestedFramework = - framework?.slice("--framework=".length) || (demo.endsWith("vue-vapor") ? "vue-vapor" : "solid"); + framework?.slice("--framework=".length) || + (demo.endsWith("vue-vapor") ? "vue-vapor" : demo.endsWith("octane") ? "octane" : "solid"); if (!noBuild) { const manifest = demoManifestFor(ROOT, demo, requestedFramework) as Record; diff --git a/tsconfig.json b/tsconfig.json index a58deab5f..4ca016763 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -36,7 +36,13 @@ "@pocketjs/framework/vue-vapor/components": ["./framework/src/components-vue-vapor.ts"], "@pocketjs/framework/vue-vapor/input": ["./framework/src/input-api.ts"], "@pocketjs/framework/vue-vapor/lifecycle": ["./framework/src/lifecycle-vue-vapor.ts"], - "@pocketjs/framework/vue-vapor/renderer": ["./framework/src/renderer-vue-vapor.ts"] + "@pocketjs/framework/vue-vapor/renderer": ["./framework/src/renderer-vue-vapor.ts"], + "@pocketjs/framework/octane": ["./framework/src/index-octane.ts"], + "@pocketjs/framework/octane/animation": ["./framework/src/animation.ts"], + "@pocketjs/framework/octane/components": ["./framework/src/components-octane.tsx"], + "@pocketjs/framework/octane/input": ["./framework/src/input-api.ts"], + "@pocketjs/framework/octane/lifecycle": ["./framework/src/lifecycle-octane.ts"], + "@pocketjs/framework/octane/renderer": ["./framework/src/renderer-octane.ts"] } }, "include": ["framework", "apps", "tests", "contracts", "hosts/web"] From 4e097c0cb5b04ec54729ea811d9dd7df458320bd Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 30 Jul 2026 09:45:43 +0900 Subject: [PATCH 02/10] perf(octane): move continuous motion onto native channels; fix silently -O0 QuickJS builds Real-hardware testing showed hero-octane under 1 fps. Two root causes: 1. Every PSP QuickJS build was -O0: CRATE_CC_NO_DEFAULTS=1 drops the cc crate's synthesized flags including build.rs opt_level(), and the pin predated quickjs-rs PR #6 anyway. -O2 now lives in TARGET_CFLAGS and libquickjs-sys is repinned to master (ba5bdd0d) registry-wide (psp + vita Cargo, psp/symbian toolchain manifests, pin tests). 2. An Octane state commit replays the whole root regardless of where the state lives (~2-4ms desktop, engine-bound on PSP), so per-frame state is unaffordable there. Continuous motion now rides the native channels: sprite atlases (hero/gallery/library spinners via sprites.json + a new spinner-atlas.svg), baked keyframe timelines (music equalizer, apps/music/pocket.config.ts), animate()/jump() one-shots (stats systems reveal), ref-based phase timers (notifications, library loading), and a new setTextContent() escape hatch - the text-shaped sibling of animate() - for count-ups and percentages (stats tiles, music progress). useSpriteAnimation also stops committing state on ticks that do not change the visible sprite frame. PPSSPP avg frame work, before -> after (budget 16.7ms): hero 387.8 -> 6.5ms, stats 279.9 -> 9.2ms, music 282.7 -> 12.9ms, notifications 271.2 -> 13.8ms, library 50.8 -> 4.9ms, settings 27.4 -> 14.5ms, cards 9.7 -> 6.6ms. All three frameworks' e2e suites pass; only the six goldens whose pixels legitimately changed were re-baselined. Co-Authored-By: Claude Fable 5 --- apps/gallery/app.octane.tsx | 19 +- apps/gallery/sprites.json | 6 + apps/hero/app.octane.tsx | 26 +- apps/hero/sprites.json | 8 + apps/library/app.octane.tsx | 33 +-- apps/library/sprites.json | 8 + apps/music/app.octane.tsx | 87 ++++-- apps/music/pocket.config.ts | 28 ++ apps/notifications/app.octane.tsx | 39 +-- apps/stats/app.octane.tsx | 60 ++-- assets/images/spinner-atlas.svg | 82 ++++++ framework/src/frame-octane.tsx | 18 +- framework/src/index-octane.ts | 1 + framework/src/native-tree.ts | 22 ++ hosts/psp/Cargo.lock | 2 +- hosts/psp/Cargo.toml | 2 +- hosts/vita/Cargo.lock | 2 +- hosts/vita/Cargo.toml | 2 +- site/assets/blog/octane-hero-jsx-60fps.png | Bin 0 -> 21525 bytes site/assets/blog/octane-music-leaf-state.png | Bin 0 -> 24699 bytes .../blog/octane-stats-mission-control.png | Bin 0 -> 28157 bytes site/content/blog/octane-on-psp.md | 261 ++++++++++++++++++ site/content/docs/frameworks.md | 47 ++-- site/nav.ts | 8 + site/playground/compiler-entry.ts | 13 +- tests/goldens/psp-octane/hero.boot.png | Bin 18263 -> 17581 bytes tests/goldens/psp-octane/hero.focused.png | Bin 18121 -> 18091 bytes tests/goldens/psp-octane/hero.pressed.png | Bin 17999 -> 17330 bytes tests/goldens/psp-octane/library.loading.png | Bin 7690 -> 7027 bytes tests/goldens/psp-octane/music.playing.png | Bin 20778 -> 20792 bytes tests/goldens/psp-octane/music.skipped.png | Bin 20709 -> 20729 bytes tests/psp-toolchain.test.ts | 2 +- tests/symbian-toolchain.test.ts | 2 +- tools/cli/psp-toolchain.json | 2 +- tools/cli/symbian-toolchain.json | 8 +- tools/gu-demo.ts | 2 +- tools/psp.ts | 5 +- 37 files changed, 638 insertions(+), 157 deletions(-) create mode 100644 apps/hero/sprites.json create mode 100644 apps/library/sprites.json create mode 100644 apps/music/pocket.config.ts create mode 100644 assets/images/spinner-atlas.svg create mode 100644 site/assets/blog/octane-hero-jsx-60fps.png create mode 100644 site/assets/blog/octane-music-leaf-state.png create mode 100644 site/assets/blog/octane-stats-mission-control.png create mode 100644 site/content/blog/octane-on-psp.md diff --git a/apps/gallery/app.octane.tsx b/apps/gallery/app.octane.tsx index 8259758e8..ac3c6c083 100644 --- a/apps/gallery/app.octane.tsx +++ b/apps/gallery/app.octane.tsx @@ -4,7 +4,6 @@ import { FocusScope, Gallery, Grid, - Image, Lazy, Screen, Sprite, @@ -12,21 +11,10 @@ import { View, type NodeMirror, } from "@pocketjs/framework/octane/components"; -import { useSpriteAnimation, useButtonPress } from "@pocketjs/framework/octane/lifecycle"; +import { useButtonPress } from "@pocketjs/framework/octane/lifecycle"; import { BTN, focusNode } from "@pocketjs/framework/octane/input"; import { GALLERY_PAGES, TILES_PER_PAGE, TILE_SRCS } from "./tiles.ts"; -const SPINNER_FRAMES = [ - "spinner-00.svg", - "spinner-01.svg", - "spinner-02.svg", - "spinner-03.svg", - "spinner-04.svg", - "spinner-05.svg", - "spinner-06.svg", - "spinner-07.svg", -]; - const REVEAL_FRAMES = 16; const PAGE_TITLE = ["SYNTHWAVE", "GOLDEN HOUR", "EVERGREEN", "NEBULA"]; const PAGE_SUB = ["neon coast drive", "warm analog haze", "deep forest floor", "far outer dark"]; @@ -49,10 +37,11 @@ const TILE_FRAME = "w-[68] h-[68] rounded-lg items-center justify-center bg-slate-900 border-slate-700 focus:scale-110 focus:border-white transition-transform duration-150 ease-out"; function Loading(props: { title: string }) { - const frame = useSpriteAnimation(SPINNER_FRAMES, { frameStep: 3 }); + // Native sprite channel: zero per-frame JS (a state tick would replay the + // whole root for every spinner frame on the PSP). return ( - + {`LOADING ${props.title}`} ); diff --git a/apps/gallery/sprites.json b/apps/gallery/sprites.json index 184e225c6..2758cf389 100644 --- a/apps/gallery/sprites.json +++ b/apps/gallery/sprites.json @@ -142,5 +142,11 @@ "rows": 2, "frames": 8, "step": 4 + }, + "spinner-atlas.svg": { + "cols": 4, + "rows": 2, + "frames": 8, + "step": 3 } } diff --git a/apps/hero/app.octane.tsx b/apps/hero/app.octane.tsx index 3e9cbc692..f4b995540 100644 --- a/apps/hero/app.octane.tsx +++ b/apps/hero/app.octane.tsx @@ -1,21 +1,8 @@ import { useLayoutEffect, useRef, useState } from "octane"; -import { Image, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { Image, Sprite, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; import { animate } from "@pocketjs/framework/octane/animation"; -import { useSpriteAnimation } from "@pocketjs/framework/octane/lifecycle"; import { frameworkName } from "@pocketjs/framework/octane"; -const SPINNER_FRAME_STEP = 3; -const SPINNER_FRAMES = [ - "spinner-00.svg", - "spinner-01.svg", - "spinner-02.svg", - "spinner-03.svg", - "spinner-04.svg", - "spinner-05.svg", - "spinner-06.svg", - "spinner-07.svg", -]; - const Stat = (props: { label: string; value: string; cls: string }) => { return ( @@ -25,9 +12,16 @@ const Stat = (props: { label: string; value: string; cls: string }) => { ); }; +// The spinner rides the native sprite channel (sprites.json atlas, host +// auto-play): an Octane state tick would replay the whole root every third +// frame — ~2ms of runtime work per replay on desktop, two orders worse on +// the PSP — while the native path costs zero JS per frame. +const Spinner = () => { + return ; +}; + export default function Hero() { const [count, setCount] = useState(0); - const spinnerSrc = useSpriteAnimation(SPINNER_FRAMES, { frameStep: SPINNER_FRAME_STEP }); const underline = useRef(null); useLayoutEffect(() => { @@ -57,7 +51,7 @@ export default function Hero() { ONE RUST CORE - ONE OCTANE APP JSX at 60 FPS. - + { diff --git a/apps/hero/sprites.json b/apps/hero/sprites.json new file mode 100644 index 000000000..728146423 --- /dev/null +++ b/apps/hero/sprites.json @@ -0,0 +1,8 @@ +{ + "spinner-atlas.svg": { + "cols": 4, + "rows": 2, + "frames": 8, + "step": 3 + } +} diff --git a/apps/library/app.octane.tsx b/apps/library/app.octane.tsx index 496808cdf..b45a3b5ae 100644 --- a/apps/library/app.octane.tsx +++ b/apps/library/app.octane.tsx @@ -1,5 +1,5 @@ import { useLayoutEffect, useRef, useState } from "octane"; -import { Image, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { Image, Sprite, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; import { spring } from "@pocketjs/framework/octane/animation"; import { useButtonPress, useFrame } from "@pocketjs/framework/octane/lifecycle"; import { BTN, focusNode } from "@pocketjs/framework/octane/input"; @@ -67,17 +67,6 @@ const GAMES: Game[] = [ ]; const LOADING_FRAMES = 48; -const SPINNER_FRAME_STEP = 3; -const SPINNER_FRAMES = [ - "spinner-00.svg", - "spinner-01.svg", - "spinner-02.svg", - "spinner-03.svg", - "spinner-04.svg", - "spinner-05.svg", - "spinner-06.svg", - "spinner-07.svg", -]; const GridScreen = (props: { selectedIndex: number; onOpen: (game: Game, index: number) => void }) => { const refs = useRef<(NodeMirror | undefined)[]>([]); @@ -106,11 +95,13 @@ const GridScreen = (props: { selectedIndex: number; onOpen: (game: Game, index: ); }; -const Loading = (props: { title: string; frame: number }) => { - const src = SPINNER_FRAMES[Math.floor(props.frame / SPINNER_FRAME_STEP) % SPINNER_FRAMES.length]; +// The spinner rides the native sprite channel (sprites.json atlas, host +// auto-play): a per-frame Octane state tick would replay the whole root +// for every spinner frame on the PSP. +const Loading = (props: { title: string }) => { return ( - + {`LOADING ${props.title}...`} ); @@ -166,7 +157,9 @@ export default function Library() { const [screen, setScreen] = useState("library"); const [selected, setSelected] = useState(null); const [selectedIndex, setSelectedIndex] = useState(-1); - const [loadFrame, setLoadFrame] = useState(0); + // Loading is a fixed-length phase whose motion is native (Sprite atlas): + // count it in a ref and commit exactly one state change at the end. + const loadTick = useRef(0); const openGame = (game: Game, index: number) => { setSelected(game); @@ -174,7 +167,7 @@ export default function Library() { if (game.about) { setScreen("detail"); } else { - setLoadFrame(0); + loadTick.current = 0; setScreen("loading"); } }; @@ -184,8 +177,8 @@ export default function Library() { }); useFrame(() => { if (screen !== "loading") return; - setLoadFrame((frame) => frame + 1); - if (loadFrame + 1 >= LOADING_FRAMES) setScreen("detail"); + loadTick.current += 1; + if (loadTick.current >= LOADING_FRAMES) setScreen("detail"); }); return ( @@ -205,7 +198,7 @@ export default function Library() { ) : null} - {screen === "loading" && selected ? : null} + {screen === "loading" && selected ? : null} {screen === "detail" && selected ? : null} diff --git a/apps/library/sprites.json b/apps/library/sprites.json new file mode 100644 index 000000000..728146423 --- /dev/null +++ b/apps/library/sprites.json @@ -0,0 +1,8 @@ +{ + "spinner-atlas.svg": { + "cols": 4, + "rows": 2, + "frames": 8, + "step": 3 + } +} diff --git a/apps/music/app.octane.tsx b/apps/music/app.octane.tsx index 8d65aa768..ebc632f45 100644 --- a/apps/music/app.octane.tsx +++ b/apps/music/app.octane.tsx @@ -1,7 +1,9 @@ -import { useState } from "octane"; -import { Text, View } from "@pocketjs/framework/octane/components"; +import { useLayoutEffect, useRef, useState } from "octane"; +import { Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; +import { animate, jump } from "@pocketjs/framework/octane/animation"; import { useButtonPress, useFrame } from "@pocketjs/framework/octane/lifecycle"; import { BTN } from "@pocketjs/framework/octane/input"; +import { setTextContent } from "@pocketjs/framework/octane"; interface Track { title: string; @@ -33,51 +35,78 @@ const TRACKS: Track[] = [ const TRACK_FRAMES = 300; const PROGRESS_TRACK_W = 160; -// Per-frame state lives in leaf components so each tick re-renders a handful -// of nodes, not the whole screen. Octane re-renders allocate their garbage up -// front; keeping the always-animating state small keeps the PSP QuickJS -// arena's GC pressure proportional to the equalizer + progress line only. +// Continuous motion rides the native animation system, never per-frame JS: +// an Octane state tick replays the whole root — cheap nowhere, ruinous on +// the PSP. The equalizer is four baked keyframe timelines (pocket.config.ts +// bakes the bars' |sin| curve, phase included, into styles.bin); play/pause +// just switches the animate-eq* classes on and off. + +const EQ_BARS_PLAYING = [ + "w-2 rounded-md shadow bg-gradient-to-b from-emerald-500 to-emerald-600 h-[6] animate-eq0", + "w-2 rounded-md shadow bg-gradient-to-b from-emerald-500 to-emerald-600 h-[6] animate-eq1", + "w-2 rounded-md shadow bg-gradient-to-b from-emerald-500 to-emerald-600 h-[6] animate-eq2", + "w-2 rounded-md shadow bg-gradient-to-b from-emerald-500 to-emerald-600 h-[6] animate-eq3", +] as const; +const EQ_BAR_PAUSED = "w-2 rounded-md shadow bg-gradient-to-b from-emerald-500 to-emerald-600 h-[6]"; function Equalizer(props: { playing: boolean }) { - const [barsFrame, setBarsFrame] = useState(0); - useFrame(() => { - if (props.playing) setBarsFrame((v) => v + 1); - }); - const barHeight = (i: number): number => { - if (!props.playing) return 6; - const v = Math.abs(Math.sin(barsFrame * 0.15 + i * 1.7)); - return 6 + Math.round(v * 20); - }; return ( {([0, 1, 2, 3] as const).map((i) => ( - + ))} ); } +// The fill is a native linear tween across the remaining track (re-aimed on +// play/pause) and the percent text updates imperatively via setTextContent — +// the whole progress line costs zero re-renders until the track ends. function ProgressLine(props: { playing: boolean; onTrackEnd: () => void; key?: number }) { - const [position, setPosition] = useState(0); - const pct = Math.round((position / TRACK_FRAMES) * 100); + const raw = useRef(0); + const shownPct = useRef(0); + const fill = useRef(null); + const pctText = useRef(null); + + useLayoutEffect(() => { + const node = fill.current; + if (!node) return; + if (props.playing) { + const remaining = TRACK_FRAMES - raw.current; + animate(node, "width", PROGRESS_TRACK_W, { dur: (remaining * 1000) / 60, easing: "linear" }); + } else { + jump(node, "width", (raw.current / TRACK_FRAMES) * PROGRESS_TRACK_W); + } + }, [props.playing]); + useFrame(() => { if (!props.playing) return; - if (position + 1 >= TRACK_FRAMES) props.onTrackEnd(); - else setPosition((v) => v + 1); + raw.current += 1; + if (raw.current >= TRACK_FRAMES) { + props.onTrackEnd(); + return; + } + const pct = Math.round((raw.current / TRACK_FRAMES) * 100); + if (pct !== shownPct.current) { + shownPct.current = pct; + const node = pctText.current; + if (node) setTextContent(node, `${pct}%`); + } }); + return ( - + - {`${pct}%`} + { + pctText.current = node; + }} + class="text-xs text-slate-500" + > + 0% + ); } diff --git a/apps/music/pocket.config.ts b/apps/music/pocket.config.ts new file mode 100644 index 000000000..b806ba332 --- /dev/null +++ b/apps/music/pocket.config.ts @@ -0,0 +1,28 @@ +// apps/music — app-local Pocket config: baked equalizer timelines. +// +// The four bars sample h(f) = 6 + 20*|sin(0.15f + 1.7i)| — the exact curve +// the JS equalizer used to compute per frame — at 8 points per |sin| period +// (pi/0.15 ~= 21 frames ~= 350ms), with each bar's phase baked into its own +// keyframes. The whole choreography replays every 350ms via `loop`, so the +// host animates the bars forever with zero per-frame JS. + +import { definePocketConfig } from "@pocketjs/framework/config"; + +const EQ_MS = "350ms"; + +export default definePocketConfig({ + theme: { + keyframes: { + "eq-bar-0": { from: { height: 6.0 }, "12.5%": { height: 13.7 }, "25%": { height: 20.1 }, "37.5%": { height: 24.5 }, "50%": { height: 26.0 }, "62.5%": { height: 24.5 }, "75%": { height: 20.1 }, "87.5%": { height: 13.7 }, to: { height: 6.0 } }, + "eq-bar-1": { from: { height: 25.8 }, "12.5%": { height: 23.3 }, "25%": { height: 18.2 }, "37.5%": { height: 11.2 }, "50%": { height: 8.6 }, "62.5%": { height: 16.0 }, "75%": { height: 21.8 }, "87.5%": { height: 25.3 }, to: { height: 25.8 } }, + "eq-bar-2": { from: { height: 11.1 }, "12.5%": { height: 18.1 }, "25%": { height: 23.3 }, "37.5%": { height: 25.8 }, "50%": { height: 25.3 }, "62.5%": { height: 21.9 }, "75%": { height: 16.1 }, "87.5%": { height: 8.7 }, to: { height: 11.1 } }, + "eq-bar-3": { from: { height: 24.5 }, "12.5%": { height: 20.2 }, "25%": { height: 13.7 }, "37.5%": { height: 6.1 }, "50%": { height: 13.6 }, "62.5%": { height: 20.1 }, "75%": { height: 24.4 }, "87.5%": { height: 26.0 }, to: { height: 24.5 } }, + }, + animation: { + "eq0": { value: "eq-bar-0 350ms linear both", loop: EQ_MS }, + "eq1": { value: "eq-bar-1 350ms linear both", loop: EQ_MS }, + "eq2": { value: "eq-bar-2 350ms linear both", loop: EQ_MS }, + "eq3": { value: "eq-bar-3 350ms linear both", loop: EQ_MS }, + }, + }, +}); diff --git a/apps/notifications/app.octane.tsx b/apps/notifications/app.octane.tsx index d7bfb2299..769b443b0 100644 --- a/apps/notifications/app.octane.tsx +++ b/apps/notifications/app.octane.tsx @@ -71,54 +71,55 @@ function NoticeRow(props: NoticeRowProps) { export default function Notifications() { const [items, setItems] = useState([...INITIAL]); const [dismissingId, setDismissingId] = useState(null); - const [dismissFrame, setDismissFrame] = useState(0); const [riseOffsets, setRiseOffsets] = useState>({}); - const [riseQueued, setRiseQueued] = useState([]); - const [riseFrame, setRiseFrame] = useState(0); const rowRefs = useRef(new Map()); + // Phase timers live in refs: the motion itself is native animate() tweens, + // so JS only needs to know when a phase ENDS. Counting in state would + // replay the whole root every frame of every dismissal on the PSP. + const riseQueued = useRef([]); + const riseTick = useRef(0); + const dismissTick = useRef(0); - const hasRise = Object.keys(riseOffsets).length > 0 || riseQueued.length > 0; + const hasRise = () => Object.keys(riseOffsets).length > 0 || riseQueued.current.length > 0; useFrame(() => { - if (riseQueued.length > 0) { - for (const id of riseQueued) { + if (riseQueued.current.length > 0) { + for (const id of riseQueued.current) { const row = rowRefs.current.get(id); if (row) animate(row, "translateY", 0, { dur: 180, easing: "out" }); } - setRiseQueued([]); - setRiseFrame(0); + riseQueued.current = []; + riseTick.current = 0; } else if (Object.keys(riseOffsets).length > 0) { - const n = riseFrame + 1; - setRiseFrame(n); - if (n >= ROW_RISE_FRAMES) { + riseTick.current += 1; + if (riseTick.current >= ROW_RISE_FRAMES) { setRiseOffsets({}); - setRiseFrame(0); + riseTick.current = 0; } } const id = dismissingId; if (id === null) return; - const n = dismissFrame + 1; - setDismissFrame(n); - if (n >= DISMISS_FRAMES) { + dismissTick.current += 1; + if (dismissTick.current >= DISMISS_FRAMES) { const before = items; const removedIndex = before.findIndex((it) => it.id === id); const rising = removedIndex < 0 ? [] : before.slice(removedIndex + 1).map((it) => it.id); if (rising.length > 0) { setRiseOffsets(Object.fromEntries(rising.map((rid) => [rid, ROW_RISE_PX]))); - setRiseQueued(rising); + riseQueued.current = rising; } rowRefs.current.delete(id); setItems(before.filter((it) => it.id !== id)); setDismissingId(null); - setDismissFrame(0); + dismissTick.current = 0; } }); const dismiss = (id: string, el: NodeMirror | undefined) => { - if (dismissingId !== null || hasRise || !el) return; + if (dismissingId !== null || hasRise() || !el) return; setDismissingId(id); - setDismissFrame(0); + dismissTick.current = 0; animate(el, "opacity", 0, { dur: 200, easing: "out" }); animate(el, "translateX", 24, { dur: 200, easing: "out" }); }; diff --git a/apps/stats/app.octane.tsx b/apps/stats/app.octane.tsx index 53352264d..544143aa0 100644 --- a/apps/stats/app.octane.tsx +++ b/apps/stats/app.octane.tsx @@ -3,6 +3,7 @@ import { Text, View, type NodeMirror } from "@pocketjs/framework/octane/componen import { animate, jump } from "@pocketjs/framework/octane/animation"; import { useButtonPress, useFrame } from "@pocketjs/framework/octane/lifecycle"; import { BTN } from "@pocketjs/framework/octane/input"; +import { setTextContent } from "@pocketjs/framework/octane"; const COUNT_FRAMES = 75; const COUNT_TEXT_STEP = 8; @@ -10,7 +11,6 @@ const BAR_ANIM_FRAMES = 26; const BAR_STAGGER_FRAMES = 4; const SYSTEMS_REVEAL_FRAMES = 12; const SYSTEMS_STAGGER_FRAMES = 5; -const SYSTEMS_MAX_FRAMES = SYSTEMS_REVEAL_FRAMES + SYSTEMS_STAGGER_FRAMES * 3; interface Stat { label: string; @@ -120,29 +120,43 @@ const Overview = () => { // engine-arena churn exhausts the PSP's fixed arena mid-window. const StatTiles = () => { - // The rendered value only ever changes on COUNT_TEXT_STEP boundaries, so - // track the raw frame in a ref and commit state only when the stepped - // value moves: ~10 re-renders for the whole count-up instead of 75, with - // byte-identical output per frame index. + // The count-up drives the three value texts imperatively through + // setTextContent — the text-shaped sibling of animate()/jump(). Committing + // the stepped value as state instead would re-prepare the whole root on + // every step: ~10 multi-frame stalls per count-up on the PSP. Here a step + // costs three replaceText host ops and the component never re-renders. const raw = useRef(0); - const [visibleFrame, setVisibleFrame] = useState(0); + const stepped = useRef(0); + const values = useRef<(NodeMirror | null)[]>([]); useFrame(() => { if (raw.current >= COUNT_FRAMES) return; raw.current += 1; - const stepped = + const next = raw.current >= COUNT_FRAMES ? COUNT_FRAMES : Math.floor(raw.current / COUNT_TEXT_STEP) * COUNT_TEXT_STEP; - if (stepped !== visibleFrame) setVisibleFrame(stepped); + if (next === stepped.current) return; + stepped.current = next; + const t = easeOutCubic(Math.min(1, next / COUNT_FRAMES)); + for (let i = 0; i < STATS.length; i++) { + const node = values.current[i]; + if (node) setTextContent(node, fmt(Math.round(STATS[i].target * t))); + } }); - const t = easeOutCubic(Math.min(1, visibleFrame / COUNT_FRAMES)); return ( - {STATS.map((stat) => ( + {STATS.map((stat, i) => ( {stat.label} - {fmt(Math.round(stat.target * t))} + { + values.current[i] = node; + }} + class={stat.valueCls} + > + {fmt(0)} + {stat.delta} @@ -152,18 +166,30 @@ const StatTiles = () => { }; const Systems = () => { - const [frame, setFrame] = useState(0); - useFrame(() => { - if (frame < SYSTEMS_MAX_FRAMES) setFrame((f) => f + 1); - }); - const rowT = (i: number) => easeOutCubic((frame - i * SYSTEMS_STAGGER_FRAMES) / SYSTEMS_REVEAL_FRAMES); + // Staggered entrance as native tweens: one animate() pair per row on + // mount, zero re-renders. A per-frame state tick here replayed the whole + // root for every frame of the reveal on the PSP. + const rows = useRef<(NodeMirror | null)[]>([]); + useLayoutEffect(() => { + const dur = (SYSTEMS_REVEAL_FRAMES * 1000) / 60; + for (let i = 0; i < rows.current.length; i++) { + const node = rows.current[i]; + if (!node) continue; + const delay = (i * SYSTEMS_STAGGER_FRAMES * 1000) / 60; + animate(node, "opacity", 1, { dur, delay, easing: "out" }); + animate(node, "translateY", 0, { dur, delay, easing: "out" }); + } + }, []); return ( {SYSTEMS.map((sys, i) => ( { + rows.current[i] = node; + }} class="flex-row items-center justify-between px-2 py-[2] rounded-lg shadow bg-white border-slate-200" - style={{ opacity: rowT(i), translateY: (1 - rowT(i)) * 8 }} + style={{ opacity: 0, translateY: 8 }} > diff --git a/assets/images/spinner-atlas.svg b/assets/images/spinner-atlas.svg new file mode 100644 index 000000000..4193385ab --- /dev/null +++ b/assets/images/spinner-atlas.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/framework/src/frame-octane.tsx b/framework/src/frame-octane.tsx index a72e8a84a..84d389262 100644 --- a/framework/src/frame-octane.tsx +++ b/framework/src/frame-octane.tsx @@ -87,9 +87,21 @@ export function useSpriteAnimation( throw new Error("PocketJS: useSpriteAnimation() requires at least one frame"); } const frameStep = Math.max(1, Math.floor(opts.frameStep ?? 1)); - const [tick, setTick] = useState(0); + // The raw tick lives in a ref: state (and therefore a re-render) only + // commits when the visible sprite index actually changes — 1/frameStep of + // the ticks — and never for single-frame sprites. On the PSP a re-render + // is the expensive unit, so this is a frame-budget contract, not a nicety. + const tick = useRef(0); + const shown = useRef(0); + const [index, setIndex] = useState(0); useFrame(() => { - setTick((current) => (current + 1) % (frames.length * frameStep)); + if (frames.length === 1) return; + tick.current = (tick.current + 1) % (frames.length * frameStep); + const next = Math.floor(tick.current / frameStep) % frames.length; + if (next !== shown.current) { + shown.current = next; + setIndex(next); + } }); - return frames[Math.floor(tick / frameStep) % frames.length]; + return frames[index % frames.length]; } diff --git a/framework/src/index-octane.ts b/framework/src/index-octane.ts index 16ad313ac..d534dd0f7 100644 --- a/framework/src/index-octane.ts +++ b/framework/src/index-octane.ts @@ -261,5 +261,6 @@ export { registerSprite, missCounters, } from "./renderer-octane.ts"; +export { setTextContent } from "./native-tree.ts"; export { registerStyles, resolveStyle } from "./styles.ts"; export { entries as pakEntries, get as pakGet, loadPack, resetPack } from "./pak.ts"; diff --git a/framework/src/native-tree.ts b/framework/src/native-tree.ts index 175cce74a..e0aac9927 100644 --- a/framework/src/native-tree.ts +++ b/framework/src/native-tree.ts @@ -449,6 +449,28 @@ export function isTextNode(node: NodeMirror): boolean { return node.type === NODE_TYPE.text; } +/** Imperatively replace a text element's content — the text-shaped sibling of + * `animate()`/`jump()`: per-frame text (count-ups, tickers, percentages) + * drives the native tree through a `nodeRef` instead of re-rendering. On + * replay-rendering frameworks a state commit re-prepares the whole root, so + * this is the difference between one host op and a full-tree walk per tick. + * Accepts the `` element mirror (updates its text child) or a raw text + * mirror. */ +export function setTextContent(node: NodeMirror, value: string): void { + // A ELEMENT is itself text-typed, but its rendered content lives in + // #text child mirrors (static plan text included) — prefer the child, and + // only write the node itself when it is a childless text mirror. Writing + // the element while a text child exists renders both runs side by side. + const target = node.children.find(isTextNode) ?? (isTextNode(node) ? node : undefined); + if (target === undefined) { + if (getHost().strict) { + throw new Error("PocketJS: setTextContent() target has no text child"); + } + return; + } + replaceText(target, value); +} + /** Unlink from the current mirror parent (native insertBefore self-unlinks). */ function unlink(node: NodeMirror): void { const p = node.parent; diff --git a/hosts/psp/Cargo.lock b/hosts/psp/Cargo.lock index e088cc7b1..0c9a8d417 100644 --- a/hosts/psp/Cargo.lock +++ b/hosts/psp/Cargo.lock @@ -54,7 +54,7 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libquickjs-sys" version = "0.9.0" -source = "git+https://github.com/pocket-stack/quickjs-rs.git?rev=0fc946fb670c0c29bc0135f510bcb0f595415a61#0fc946fb670c0c29bc0135f510bcb0f595415a61" +source = "git+https://github.com/pocket-stack/quickjs-rs.git?rev=ba5bdd0dc013518768e76cd9e05cd30ed53dd35b#ba5bdd0dc013518768e76cd9e05cd30ed53dd35b" dependencies = [ "cc", "copy_dir", diff --git a/hosts/psp/Cargo.toml b/hosts/psp/Cargo.toml index 01f349fc4..0a8244f96 100644 --- a/hosts/psp/Cargo.toml +++ b/hosts/psp/Cargo.toml @@ -22,7 +22,7 @@ edition = "2021" [dependencies] psp = { git = "https://github.com/pocket-stack/rust-psp.git", rev = "2cbaf8c9bc72569c76240a1d9743de10731e5f6b", features = ["external-c-heap", "abort-only", "external-global-alloc"] } -libquickjs-sys = { git = "https://github.com/pocket-stack/quickjs-rs.git", rev = "0fc946fb670c0c29bc0135f510bcb0f595415a61" } +libquickjs-sys = { git = "https://github.com/pocket-stack/quickjs-rs.git", rev = "ba5bdd0dc013518768e76cd9e05cd30ed53dd35b" } pocketjs-core = { path = "../../engine/core" } [features] diff --git a/hosts/vita/Cargo.lock b/hosts/vita/Cargo.lock index f1ed5515a..9b76014ea 100644 --- a/hosts/vita/Cargo.lock +++ b/hosts/vita/Cargo.lock @@ -48,7 +48,7 @@ checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" [[package]] name = "libquickjs-sys" version = "0.9.0" -source = "git+https://github.com/pocket-stack/quickjs-rs.git?rev=0fc946fb670c0c29bc0135f510bcb0f595415a61#0fc946fb670c0c29bc0135f510bcb0f595415a61" +source = "git+https://github.com/pocket-stack/quickjs-rs.git?rev=ba5bdd0dc013518768e76cd9e05cd30ed53dd35b#ba5bdd0dc013518768e76cd9e05cd30ed53dd35b" dependencies = [ "cc", "copy_dir", diff --git a/hosts/vita/Cargo.toml b/hosts/vita/Cargo.toml index 5c6ccd504..77c44c31b 100644 --- a/hosts/vita/Cargo.toml +++ b/hosts/vita/Cargo.toml @@ -9,7 +9,7 @@ edition = "2021" vitasdk-sys = { version = "0.3.3", features = ["SceCtrl_stub", "SceGxm_stub", "SceKernelThreadMgr_stub", "SceLibKernel_stub", "SceTouch_stub"] } vita2d-sys = "0.1.1" -libquickjs-sys = { git = "https://github.com/pocket-stack/quickjs-rs.git", rev = "0fc946fb670c0c29bc0135f510bcb0f595415a61" } +libquickjs-sys = { git = "https://github.com/pocket-stack/quickjs-rs.git", rev = "ba5bdd0dc013518768e76cd9e05cd30ed53dd35b" } pocketjs-core = { path = "../../engine/core", features = ["std"] } [features] diff --git a/site/assets/blog/octane-hero-jsx-60fps.png b/site/assets/blog/octane-hero-jsx-60fps.png new file mode 100644 index 0000000000000000000000000000000000000000..3dd1316df473d067dadc21a6dc56b55a7db46fef GIT binary patch literal 21525 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 TBx{}k7OaMVyPhMR4M_hNy)CvZ literal 0 HcmV?d00001 diff --git a/site/assets/blog/octane-music-leaf-state.png b/site/assets/blog/octane-music-leaf-state.png new file mode 100644 index 0000000000000000000000000000000000000000..9ed3c3a7cbaa0cab04e5321ec904998fd2e5ad5f GIT binary patch literal 24699 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

          KYI;#ts5 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 literal 0 HcmV?d00001 diff --git a/site/content/blog/octane-on-psp.md b/site/content/blog/octane-on-psp.md new file mode 100644 index 000000000..e22844dfd --- /dev/null +++ b/site/content/blog/octane-on-psp.md @@ -0,0 +1,261 @@ +The PocketJS hero demo running through Octane on a PSP: a headline reading JSX at 60 FPS, a live FPS counter showing 60, 42 nodes, 9 draw calls, a Press Circle button with Count: 1, and a subtitle reading Flexbox, springs and baked type running through Octane + +

          The hero demo's "pressed" moment — a committed 480×272 PPSSPP golden from the Octane e2e suite, shown at 2×. The counter under the button is useState. The 60 in the corner is real.

          + +When we first benchmarked JavaScript frameworks on the PSP ([PR #6](https://github.com/pocket-stack/pocketjs/pull/6)), React was the one that didn't make it: after the measurements, the writeup's conclusion was that original React has no viable path on a 333 MHz MIPS handheld with 32 MB of RAM. Solid and Vue Vapor became PocketJS's two frameworks, and "React on a PSP" went into the drawer labeled *not with that runtime*. + +[Octane](https://github.com/octanejs/octane) reopened the drawer. It is Dominic Gannaway's compiled implementation of the React programming model — `useState`, `useEffect`, JSX, the works — with no virtual DOM and no reconciler, because a compiler resolved the component tree's shape before the app ever shipped. That is not a performance detail. It is the difference between "React can't run here" and "the React *model* compiles to something that can." + +So we ported it. If you are new here: [PocketJS](/blog/introducing-pocketjs/) runs real web-framework components on a 2004 Sony PSP at a locked 60 FPS, and lately on [Vitas](/blog/pocketjs-on-ps-vita/), [Nokias](/blog/pocketjs-on-symbian/), and e-readers. As of this release it supports three frameworks over one native tree and one Rust core: Solid, Vue Vapor, and Octane. Every demo Vue Vapor has, Octane now has; 15 of the 23 committed Octane PSP goldens are **byte-identical** to the Vue Vapor frame; and the three-way benchmark below is the complete comparative dataset PR #6 could not produce, including an honest 15.58× that took a memory hunt through a pinned JS engine to explain. + +## A third dialect, not a third engine + +An Octane PocketJS app reads exactly the way a React developer would write it — hooks from `octane`, host components from the framework: + +```tsx +import { mount, frameworkName } from "@pocketjs/framework/octane"; +import { View, Text } from "@pocketjs/framework/octane/components"; +import { useState } from "octane"; + +export default function App() { + const [count, setCount] = useState(0); + return ( + + {`Framework: ${frameworkName()}`} + setCount(count + 1)}> + {`Count: ${count}`} + + {count > 2 ? Octane, native tree. : null} + + ); +} + +mount(App); +``` + +At build time, Octane's *universal* compiler lowers the JSX into static host plans plus dynamic slots, and infers effect dependency arrays from captures (you may still write them; you mostly don't). Hooks are tracked by call site rather than by array index, which is why an Octane hook is allowed inside an `if`. At runtime, the compiled output talks to whatever renderer the build named — and ours is `@pocketjs/framework/octane/renderer`, a driver that maps Octane's host command batches (create, update, insert, move, remove, destroy) directly onto the same native `ui.*` tree Solid and Vue Vapor render into. + + + + Solid + signals · JSX + universal-mode renderer + + Vue Vapor + refs · JSX + renderer + small DOM shim + + Octane + hooks · JSX · compiled + universal driver · no DOM shim + + + + + compiled to host plans + slot batches + + one native ui.* tree + NodeMirrors · styles · focus · input · animation + + + + pocketjs-core + layout · clip · paint transforms · DrawList + + + + sceGu · fixed-function GE + 480×272 · 60 Hz + a third framework is a third dialect, not a third engine + + +The driver is deliberately boring: batches in, `NodeMirror` mutations out, text through the host's text nodes, portals as a driver capability that mints overlay hosts transactionally. Two details are less boring. Unlike Vue Vapor, there is **no DOM shim** — Octane's universal target never asks for a document, so the adapter is the thinnest of the three. And PocketJS's frame loop drains Octane's microtask-scheduled re-renders **synchronously inside each frame**, so a `setState` in a button handler commits in the same tick that pressed the button — the same latency contract Solid and Vue Vapor already keep, and the reason input tapes stay [deterministic](/blog/ui-runtime-that-cant-flake/) across all three. + +Selecting it is one flag, or one manifest line: + +```sh +bun tools/build.ts hero-main --framework=octane # dist/hero-main.octane.js +bun tools/psp.ts hero --framework=octane --release # a real EBOOT.PBP +``` + +An `app.octane.tsx` next to `app.tsx` is picked up automatically — which is how one demo directory carries all of its ports. + +## Porting eight demos, and what the compiler taught us + +All eight showcase demos — hero, cards, stats, library, settings, notifications, music, gallery — now ship an Octane twin beside their Solid original and Vue Vapor port, sim-verified against the Vue Vapor variants and pinned by 23 byte-exact PPSSPP goldens. Fifteen of those 23 goldens are byte-identical to the Vue Vapor frame: same input tape, same frame index, same pixels, different programming model. The eight that differ are all frames captured mid-animation — sprite phases, equalizer bars, spring tails — where the frameworks' schedulers land on slightly different phases of the same motion. + +Porting produced a short list of authoring rules, each discovered the hard way and now in [the frameworks doc](/docs/frameworks/): + +- **The entry passes the component itself.** `mount(App)`, not `mount(() => )` — JSX inside a call-argument arrow is a fail-closed error in the universal target. +- **Mixed static and dynamic text is one template literal.** ``{`Count: ${count}`}`` — the compiler drops trailing whitespace on a static segment that precedes an expression, and `Count:0` is not a good look. +- **Frame-loop counters use functional updates.** `setX((v) => v + 1)`; a same-frame handler's write would otherwise be clobbered by a stale read. +- **Keep natively animated properties out of `style` objects whose values change across renders.** Re-applying a changed style value cancels the running tween; drive those from an effect with `animate()` and a `nodeRef`. +- **Keep always-animating state in leaf components.** This one turned out to be about memory, not CPU — the next section is why. + +PocketJS's own per-frame hooks came along renamed: `useFrame`, `useButtonPress`, `useSpriteAnimation`. The `use` prefix is not a style choice — the Octane compiler slot-keys custom hooks by the `use[A-Z]` call-site convention, and an `onFrame`-style name compiles into a plain call whose internal slots silently collide. We found that out when a gallery demo's left trigger started acting as a +1 button. + +## The memory hunt + +The first full Octane demos did not survive their runs. The music demo died at frame 58 with `InternalError: out of memory` — while megabytes of the QuickJS arena sat free. Exceptions arrived as `null`. The frame loop wedged. Every one of those symptoms pointed somewhere different, and all of them were real. + +The excavation went three layers down: + +1. **Octane's profiler is on by default** — and its `trackedComponents` WeakMap keeps being written even after `profiler.stop()`, with per-render closures as values. +2. **The pinned QuickJS marks WeakMap values strongly.** Our engine is a 2026 QuickJS revision whose new GC is not ephemeron-aware: a ten-line repro (`wm.set(key, {back: key})`) never collects, and the same code is on bellard master today. Every render's owner graph was being pinned by a profiler nobody asked for. +3. **The engine's slab allocator amplifies whatever survives.** A few live objects pin whole chunks of `JSMallocArena`, so a small true leak carves the fixed arena 10–20× faster than its own size, and the engine's auto-GC threshold (live × 1.5) is far too lazy for a heap this small. + +The fixes ship in this release: `framework=octane` builds alias `octane/profiling` to a no-op stub; the PSP frame loop gained an **arena-pressure GC** that runs a collection when a frame leaves the bump pointer more than 256 KiB past the last one (steady-state Solid and Vue Vapor guests never trigger it); and the Octane ports keep always-animating state in leaf components — the music demo's equalizer owns its own tick, so a re-render touches four bars instead of the screen: + +```tsx +function Equalizer(props: { playing: boolean }) { + const [barsFrame, setBarsFrame] = useState(0); + useFrame(() => { + if (props.playing) setBarsFrame((v) => v + 1); + }); + const barHeight = (i: number): number => { + if (!props.playing) return 6; + const v = Math.abs(Math.sin(barsFrame * 0.15 + i * 1.7)); + return 6 + Math.round(v * 20); + }; + return ( + + {([0, 1, 2, 3] as const).map((i) => ( + + ))} + + ); +} +``` + +What the fixes do **not** do is make frequent re-rendering free on this engine revision. Post-stub, each re-render still retains a residue the collector cannot reclaim — measured at ~80–115 KB per frame across the per-frame-state demos — so an always-animating Octane screen has a session memory horizon until the engine is repaired: it outlives its capture window, not an unbounded afternoon. The stats demo's benchmark window ends with the arena at 16.87 of 17.06 MiB. That is 98.9 % used, which its own screen almost predicted: + +The stats demo running through Octane on a PSP: a Mission Control dashboard with tiles for players online 12,480, sessions today 3,642, draw calls 268, and a status list where GE PIPELINE, AUDIO MIXER and WIFI LINK read ONLINE while MEMORY ARENA reads 87 percent used in amber + +

          The stats demo's Mission Control screen — a committed Octane golden. Its telemetry is fictional demo copy, but "MEMORY ARENA: 87% USED" aged into near-documentary: at the end of the real benchmark window the real arena sat at 98.9 %.

          + + + + always-animating screen + setState every frame + + + + ~80–115 KB retained + per re-render + engine can't reclaim it + + + + slab chunks pinned + whole chunks stay alive + around each survivor + + + + live set grows every frame + stats: 16.87 of 17.06 MiB + by the window's last frame + + + + engine auto-GC walks the growing set + stats: 254 ms of a 280 ms frame is JS + GC + + + + benchmark: avg frame work 15.58× Solid + GC dominance — not Octane's render cost + what ships today + + profiler stubbed out + octane/profiling → no-op + for framework=octane builds + + arena-pressure GC in the host + JS_RunGC when a frame leaves bump + >256 KiB past the last collection + + state lives in leaf components + a tick re-renders four bars, + not the screen + the residue is an engine bug — the quickjs-rs GC repair + repin is the tracked follow-up + apps without per-frame state are unaffected + + +Along the way the PSP host's exception logger learned to print tag, message, and stack — a `null` exception, it turns out, is QuickJS telling you it had no room left to construct the Error object. And the debug rig that cracked the case was not on the PSP at all: a scratch Cargo probe pinned to the exact same QuickJS revision, evaluating the real bundle against a stubbed `ui`, with heap histograms and a GC root dump. It reproduced the handheld's memory behavior byte-for-byte on a desktop, which is the only reason a three-layer engine bug was findable in finite time. + +## The benchmark PR #6 couldn't run + +PR #6's React column was empty because nothing bootable existed to measure. This time all three columns are full: 7 apps × 3 frameworks × 7 samples on deterministic headless PPSSPP — repeated runs are byte-identical — with geomean-vs-Solid ratios and bootstrap CIs, archived in [`docs/bench/`](https://github.com/pocket-stack/pocketjs/tree/grass-responsibility/docs/bench). + +| geomean vs Solid (lower is better) | Vue Vapor | Octane | +|---|---:|---:| +| bundle eval | 2.93× | 2.95× | +| boot → first frame | 2.30× | 2.32× | +| avg frame work | 1.24× | **15.58×** | +| bundle size | 2.41× | 2.96× | + + + Average JS work per frame — log scale + Solid + Vue Vapor + Octane + + + + + 16.7 ms budget + hero + 4.4 + 4.6 + 387.8 + cards + 5.2 + 5.7 + 9.7 — steady state, inside budget + stats + 8.6 + 11.1 + 279.9 + library + 4.6 + 6.1 + 50.8 + settings + 7.7 + 8.8 + 27.4 + notifications + 5.6 + 9.0 + 271.2 + music + 13.0 + 16.1 + 282.7 + 1 ms + 10 ms + 100 ms + PPSSPP software renderer · 7 deterministic samples per cell · byte-identical reruns · base 3c14b47 + + +Read the 15.58× with the last section in mind: it is the engine pathology compounding, not Octane rendering slowly. In every per-frame-state app the growing live set hands the engine's auto-GC a bigger walk each collection, until GC **is** the frame. The honest steady-state number is `cards`, the one demo with no per-frame state: 9.66 ms, 1.86× Solid, comfortably inside the 16.7 ms budget of a 60 FPS frame. Boot, eval, and bundle are engine-pathology-free, and there Octane lands essentially on top of Vue Vapor — a compiled React model costs about what a compiled Vue costs to ship and start. These numbers are honest to the current pinned engine, and they should collapse toward the `cards` ratio when the quickjs-rs GC repair lands; we would rather publish the ugly column with its explanation than wait for the flattering one. + +Two footnotes for the methodologically suspicious. The bench window and its input tape are baked into each EBOOT at build time, which is why runs are byte-identical — and why our first attempt to "reproduce" a number by rebuilding without the bake measured a completely different, idle window. And the report can be rebuilt from raw samples without re-running emulation, which mattered the day the report builder crashed *after* 147 emulator runs had already succeeded. + +## In the playground, too + +The [playground](/playground/) grew a third toggle. The real Octane universal compiler runs in the browser — it is pure JavaScript, so unlike some of our compilers it needed no WASM shim — and the docs' framework-switchable code blocks now carry all three variants, 29 blocks' worth. Same editor, same native-tree WASM host, third dialect. + +The music demo running through Octane on a PSP: a Now Playing screen for MIDNIGHT REPLAY by SYNC PULSE with a progress bar at one percent, a three-track playlist, a four-bar equalizer in the corner, and controller hints for focus, play and skip + +

          The music demo's Octane port mid-playback — the four equalizer bars in the corner are the Equalizer leaf component above, re-rendering alone at 60 Hz while the rest of the tree stays put.

          + +## What's named, what's next + +The gaps, named, because that is house policy: the per-frame-state memory horizon is real until the quickjs-rs GC repair and repin land (the ten-line WeakMap repro also reproduces on bellard master, so an upstream report is owed); the benchmark numbers above are emulator numbers from PPSSPP's software renderer, and a real-hardware spot-check is the open checklist item — the release EBOOTs are built and PPSSPP-verified, and PR #6's samples say emulator-to-hardware variance is modest, but we will not caption an emulator as a Memory Stick; and `gallery`, the eighth demo, ports and builds like the rest but is not yet in the golden suite. + +Everything here — adapter, compiler wiring, eight ports, playground, docs, benchmark — lands in [#203](https://github.com/pocket-stack/pocketjs/pull/203). Three frameworks now compile into the same native tree on the same 2004 handheld, and the newest one writes like React because, at the source level, it is: hooks, JSX, and a compiler that did the reconciler's job before the code left your machine. + +Follow [@pocket_js](https://x.com/pocket_js) for what's next. The pocket keeps getting deeper. diff --git a/site/content/docs/frameworks.md b/site/content/docs/frameworks.md index 7de7ded6c..273ce38a9 100644 --- a/site/content/docs/frameworks.md +++ b/site/content/docs/frameworks.md @@ -264,27 +264,32 @@ Authoring rules specific to Octane apps: changes across re-renders.** Re-applying a changed style value cancels the running tween (unchanged values are diffed away and are safe); drive such properties from an effect with `animate()`/`jump()` and a `nodeRef` instead. -- **Keep always-animating state in leaf components.** A per-frame `setState` - re-renders its owning component; putting the counter in a small leaf (the - music demo's `Equalizer`/`ProgressLine`, the stats demo's `StatTiles`) - keeps each tick's re-render to a handful of nodes instead of the whole - screen. On the PSP's fixed QuickJS arena this matters twice over: the - pinned engine retains a sliver of every render, and its slab allocator - pins whole chunks around it (the host runs an arena-pressure collection, - but less garbage is always better). If the rendered value only changes on - step boundaries, commit state on the step, not the raw frame — see - `StatTiles` in `apps/stats/app.octane.tsx`. -- **Frequently re-rendering apps have a session memory horizon on PSP** - until the pinned QuickJS is upgraded: each render retains a small residue - the collector cannot reclaim on this engine revision (~80–115 KB/frame - measured for the per-frame-state demos), so an always-animating screen - outlives its showcase capture window but not an unbounded session. The - growing live set also inflates engine GC time, which is why the PSP - benchmark's per-frame-work numbers for those demos are dominated by GC - rather than by Octane's own render work (`cards`, which has no per-frame - state, shows the steady-state cost). Solid and Vue Vapor apps, and Octane - apps without per-frame state, are unaffected. The engine fix (quickjs-rs - GC repair + repin) is tracked as a follow-up. +- **Continuous motion rides the native animation system, never per-frame + state.** An Octane state commit replays the whole root — the cost is the + same whether the state lives in the root or a one-node leaf (leaf state + changes *how often* you replay, not what a replay costs, and on the PSP + one replay is a multi-frame stall). Every continuous visual has a native + channel with zero per-frame JS: `` atlases for sprite cycling + (the hero/gallery/library spinners, `sprites.json`), baked keyframe + timelines for looping choreography (the music equalizer, + `apps/music/pocket.config.ts`), `animate()`/`jump()` for one-shot tweens + (the stats bars and systems reveal, notification rows), and + `setTextContent` — the text-shaped sibling of `animate()` — for per-frame + text like count-ups and percentages (`StatTiles`, `ProgressLine`). +- **Frame counters that merely time a phase live in refs**, committing state + exactly once at the boundary they're waiting for (the notifications + dismiss/rise timers, the library loading screen). Counting in state + replays the root every frame of the phase for pixels that never change. +- **Re-render residue is per replay, not per frame, on the pinned engine.** + Each replay retains a small residue the collector cannot reclaim on this + QuickJS revision, and the slab allocator amplifies it on the fixed arena + (the host's arena-pressure GC absorbs the churn). With the demos' + continuous motion moved onto native channels, replays happen at + interaction rate — button presses, track changes — so the residue no + longer bounds a play session the way per-frame replays did. The engine + repair (quickjs-rs GC fix + repin) remains the tracked follow-up, as does + upstream work on Octane's replay cost itself, which today makes a single + press noticeably heavier on PSP than in Solid or Vue Vapor. ## What stays shared diff --git a/site/nav.ts b/site/nav.ts index 51fede546..153d3b61b 100644 --- a/site/nav.ts +++ b/site/nav.ts @@ -54,6 +54,14 @@ export interface BlogPost { } export const BLOG_POSTS: BlogPost[] = [ + { + slug: "octane-on-psp", + title: "useState at 333 MHz: Octane Is PocketJS's Third Framework", + date: "2026-07-29", + description: + "PR #6 measured React out of the PSP. Octane compiles the React programming model — hooks, JSX, no VDOM — into host plans a 333 MHz handheld can run, so we ported it: a universal driver over the same native tree, all eight demos, and 15 of 23 PPSSPP goldens byte-identical to the Vue Vapor frames. Inside: the three-layer memory hunt through a pinned QuickJS (a profiler nobody asked for, a WeakMap that never lets go, a slab allocator that amplifies both), the three-framework benchmark PR #6 couldn't run, and why the honest 15.58× is really a GC story with a 1.86× ending.", + author: { name: 'Yifeng "Evan" Wang', url: "https://github.com/doodlewind" }, + }, { slug: "pocketjs-on-symbian", title: "Symbian Wanted a Frame Function: PocketJS on a Nokia E7", diff --git a/site/playground/compiler-entry.ts b/site/playground/compiler-entry.ts index 5d5d64c99..e07e66136 100644 --- a/site/playground/compiler-entry.ts +++ b/site/playground/compiler-entry.ts @@ -19,12 +19,17 @@ import { parse as parseFont, type Font } from "opentype.js"; import { compileClasses, fontSlotInfo } from "../../framework/compiler/tailwind.ts"; import { registerAnimationTheme } from "../../framework/compiler/animation.ts"; import motionsConfig from "../../apps/motions/pocket.config.ts"; +import musicConfig from "../../apps/music/pocket.config.ts"; // The playground compiles single-file demos without their app-dir -// pocket.config.ts, so install the motions demo's keyframe/animation theme -// (superset of the built-ins) as the playground-wide default — this is what -// lets the homepage/blog motion studies stay live-editable. -registerAnimationTheme(motionsConfig.theme); +// pocket.config.ts, so install the demo themes that define keyframes — +// motions (the homepage/blog motion studies) and music (the Octane +// equalizer's baked bar timelines) — merged as the playground-wide default. +// Namespaces are disjoint; a collision would mean a demo rename, not magic. +registerAnimationTheme({ + keyframes: { ...motionsConfig.theme?.keyframes, ...musicConfig.theme?.keyframes }, + animation: { ...motionsConfig.theme?.animation, ...musicConfig.theme?.animation }, +}); import { bakeSlot } from "../../framework/compiler/bake-font.ts"; import { PAK_DTYPE, diff --git a/tests/goldens/psp-octane/hero.boot.png b/tests/goldens/psp-octane/hero.boot.png index 80d82b0c7f97e12741211b1702e5189f57fc5c03..79c4c76a57024343261caf48b2860e842379ad23 100644 GIT binary patch literal 17581 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 diff --git a/tests/goldens/psp-octane/hero.focused.png b/tests/goldens/psp-octane/hero.focused.png index 91b01694232714ec2be8e341c42b16420afbb37d..2c8e0a834c925df8bb00c223727f82656309ed41 100644 GIT binary patch literal 18091 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
          c_dorM&9;64o!shaYOg@mcir{A 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 R0?(Ua@O1TaS?83{1OTUm7jFOn diff --git a/tests/goldens/psp-octane/hero.pressed.png b/tests/goldens/psp-octane/hero.pressed.png index df20c91fcd334fbca52f2c42f5bb5ad17a041e6e..4a87b6d2732e74092838e84e162659049ff0012d 100644 GIT binary patch literal 17330 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 Q@YELuPgg&ebxsLQ0A}K`yZ`_I diff --git a/tests/goldens/psp-octane/library.loading.png b/tests/goldens/psp-octane/library.loading.png index f62f2083752fac1a6fd4ee62e6839f2a5e4dbf1b..269748a2889a629fafcac7230f60555f1437680e 100644 GIT binary patch literal 7027 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 WoCvlgoEUIn3sO-~m#=_YzW+Zp;MRx$ diff --git a/tests/goldens/psp-octane/music.playing.png b/tests/goldens/psp-octane/music.playing.png index 1c5fa6ce6e2eb5bc64c03ec52c3f4202b6324295..ea4213d1b5b757de183606338b57794eb61a745a 100644 GIT binary patch literal 20792 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 Tfk`;1s2Oy$^lz8IkP-g^jQwM9 literal 20778 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 IFm7T01gHo$ZvX%Q diff --git a/tests/goldens/psp-octane/music.skipped.png b/tests/goldens/psp-octane/music.skipped.png index febae728f72e47ca3ef47c9d6aa5512813c2d0c8..e59fb2542ff997a0597c1e2b7701a94b1a6804b0 100644 GIT binary patch literal 20729 zcmbrmWmwfu^e?&*6$I&$4(U{oPHE|q4(aZ0kdl_}mhSG5?(XjHZtnQ|pL3scUfmb> zar^AeeD}<(UZ1sQAW%k11OW~Q4g!H7d=nLvgFv8G!GC1fS72m^^wR=(BhnR>lY~HA z$RQ9fUkKzL40-KBAoiaiko_MJ2uC~wf@PK5Aj<_FywwpG5rn+_`VQRi-M%^pnYr-1I2SlcH;(q*UbQI09=%^sE9D|^YxuJ?^soX|uw}Jhu z*NJgeO}`a#QeO*EHT{J`XO2iR^6LLCo!LfUN8hHt%!^4|Yr90$pFVO^$?JBl>8g?1 ze0`c^m|A_UNvp30^N;=_BnK^A@DBL^^BM;NX%mC;ehYz=$?>H_frseGM&J?6oBuzL z)))tGhNl&CK7NLe><>z_0)?^$s6Omkql5_!<#@$J-s_C%-HK%-&&G)Q8L*k4;uY$-no zF*uHCG`0Fh(A5y7{&?l?Xd!%YFW@L(;qAQIF@1u1?UR+7b8}9U)X=CxN6Rb7YDNYw z;!GWi`eFK=v(>hTz3Y~nFS2U2c+2@49&6~H(AD9meFwW=2-kd9!(q`jns>s_>hbtz zhWa*3jcQvuSeVytS2!fUV63hD0!FHlusf$OIIe#8*<&4iS)s!vsxk~jQLXHJ)=9~M zaen{Vw%mgt**{4&L7k$?Fr{Gk^kVhP7h@a?qfQ^TEqjv;$Qljf3US@)Y{X*64u>dG zJnK|hDG;tvUG4`v=M>c(KD+u(IX`Zdj!F;I<3P`MfgJF6MUJ)oDEwLs*rUO5q+ml0 z<%97U#(G3Tot36W=LY-o^{;s4@VMeTejGz!;fTm#`P^rP@Mx=eyWTb1BV7@jECI9U zl$9`qgM@qtgbUB^L94k*s+nFA17F7nxq(bX2g^N>&?wyMSKF=%N8dwCF7;$E`NCfI z$iumm5%WbF^q#kYzgw+Y+jWQe+DX5#7#mRI=*Mk|^HBsoSU?aa119koi`TX3nYxRj z#}T$irm?et@Sj0pJMBkOS_&g@wbir42&`XnpC^lw4H^D%F`G-x@hh6?OSPf<8;IA` zID&V#>LWVs!40kO5meB5$`*t zUPE)<%*a0bt*gWs0=!`S$nTTh_SnRv4%+xUGg7Y;GyaK4&+cPq`N0!Zc9LM@3SpfN zIpGU67N@Nq+@#fplqmYam?%}x?wmhvqGQc6Iq&jH*w)>*IvTCj*2eErsEu7U9n{SU z@9SdZu{dGoxB2!XX4=+3iQ53<}zf9RQJ^uKIo@t{-}4=Lqg>PQU^ z9|Vq13$?}d_7|9(g+KOw;C<&fPPuUEs1HkA4u8<74~@(Z zG=;(BROC!x`yHts#j%r_?@Ytt@gmFM;4HT@{Y|H^bAO zF4YXU^n!Sl^R}e^vJwPx$*J656V_4#A~EFCE3SP62;@h$7auePqD)0J3I-M7V84Jw z6Z7iT|M}=N+KSNX(MdBnB=H0G@h;`QsTzprn(=UUS26RpWZ6zDvXqHzpBF!klp13@ z^$f@}Qj_LcGK5%^5eN@)Dk;cm$OqgQc6BfEcGOtDSkEn-=rWz#Fn!H}f_!=-@4a06 zvf3Y`^}C~KQNSOk)@tp*iGsypKb*7n^2l!wyC@(oS8r$7axd<8tOF&LGum>R{Q(c0 zovbYOa(+pEVM+cQkYU=;xkJ9{5|+Jy&9DeQU)`QH!K_?nb}{_I^MlRE>pkUpNr8fR zF;8@Su(Ot(o9V+{Q8^RVS{V6tbM9AM2AttkA^}H(Hd5+x~mbgI3fr}zs zyEEZ+wX43>hz?R!l}wNA`R{Bmw&QWxuim$>pde21yWf6&q-Mk;7Od`#ZGIw%dYn=+ z$?Y1fB%};W_-wh>KGX3r2QlK-y~4&`9A4<$Ev0G9BmINrPLP=BJq3-@Mkg^UuS?1^ z)P{9~XWQ-Ze5=V+%B_U8lHlz7v?6tG!Sx+N^co;Yc&rxs*xLt~kd>Avk*w~h2swV` zP9{6~K8!gebX-jX@WZVP?OD$d_|db%raI%h7KJ4q$ytZSK3L$#S|J@By0Pisb|qIU zLnufYwF}8;FlMWlvB3%HwKn8TOANHOYy$Kx5LST8^=(1RqAl6!uw>kyANGr3wQ|uYkdf7K@2`_|p$2jOCpQx5scRTYdtg~AxG&BVV57i3^Xc?2%4S(kn zkNWC7di63hQ%)}Vc+FsEbK}yss|zJjx<8!k+8>4(=irc3_3ACidz_y~k8%br$0BC5XQDRz z6cP5{7&JBx*j?&69d3V%Yo^$E)#+mqAxkPIqah#XR@*2-k+ALRQF%NtnW84=Xwf(F zM91PlEj8HJ_tE3?nO|T(`Vzh;n+I1~bUP=Bh&HTb*9Yts{$`=1pQvUvPI`Jy?Lpb) z3!_dlNQOH)HbRhpdsB5}5oVH=${LrzAy-F-*Hj(F`gmK4afbqa(q@z9kO9Z(%7 zGjH$w&Br(&lkBw!250r-u_0aoUIbE=xEQE{n?zL3@>emczR1>e?@0O9wy40WP~Ws- zZi(llr8#{ae<=aw1<;W4hv-+;9sEU;GgsJrO}=42uM%(6RhCc4#M#b|^H15yU)k84 z1M^%9b-E-GSpx#l&pZKsqgbLIdgb26XD!&NkTv(~GwFNDXw^;1FE5hmGwj<;$YZP% zg&=pmzEn@g#}`_$yK`Y@cit9($8U^|BRUkzXdr11s}i-4l~oZ}f^aZ0aS ze4m*_jX>BFJE0F=-`UyHQ%yclbkBC+?_@$jk&lXG)plpqGBnIjXoY@9LTE( zx$j!}Wb4d9ED|E?5N2k3cE?vkYhhs|hk`qso8PteXm4pZ@+=heZY#?_JL#4TUt-%h z(b8*o;f{27j~edneU;!yjf$IKR{6w6n(jzANNgRFoXmBver_v77VWJE-PYk7oFxFL zMt)h7q$_?!fOK+k$K@+?b|+3C@OC3QNZcM<#nIrPAEO|v-gEM$w)}YCKJs=ayCIbG z+W9>;7q`pLkxzZzMUNlr4bSq|FXGS(Sk$fL`+2Y^B2rT=#O4B!?;pmoQo}w}Zo~<& zCQ)*89+WcQzdz6f{1)HRr1&s|ld69Brxo2F4Qz+a!5`J16^zkLV21*#mi@WI5a+4_-m#AP}-CTpi zl`YCI&Zc{4nGxQaH<)!wX98cGILkb-+@-!ixPB_A7tnBMIe)n+>OodQjiaP)^|i0h zD;l30%h+`z;}>nKl^@N-_NRuu=_J&@EMvyUG8|(~WAMDWa_-upkxs5RU98A^ zjMRk8>!8S&p_}6)6+MIzj%4XY=VBDqjx!Bp#W(j@fVg+7^fNB^PtoC~PZbl<4=zL~ zx}daHk0&Mf2^EOd%UsJrde85_Q6$~JqicCoA8xWQNCg(3n-pq+1JR&iY7;sP<)qzl zrFvNgSAJJ7(Ml+TC9a}2?rAI?`Ive*M7|G%SAfC#_N* zu+&KH4&bT>rO!g)zGky6(w3?IT_ib9>A~Gn$seB0%p_Xn4RzSj>`PkY7M6C58pOrn zs~PBY=PGVu=^77?L@!~mn*I5Upq&K&W?A)|50m&>u*k9|=?AB#RX8nwX{u*?C!NY| z$*{_ef7Thcl;FhTr=D@I|6&a#%}bAh`e{-3*TM0V$X=jWwn+~|K$#((QXVz^R6Sc@ zuSz}tch92+&0lkFC`@gc<;}u;ZMUnxy$+MzxRSO!-XrN$*q-<9>j;r$-)gu3D_oH0 zSa~3}LGK=}JNfJaDO1f62{2zQw|xBY5@k5@@ctrw;CNz9H*7m41^x3|*A>&2rEG;7 zV&CrYv+zI`#?NNQA-ONrdpnsGVvPMe>$EN&-SW7Ohacah!L@GmvR3y3=f3n^2Gnqk zBKHUk0-W2NtK@L}cs=(}b9-2!e{!@Nsml#~G=(ZDLHgz`Bpr+Wcg)Dn#cp|=t9P)S zyZcw9H_TJ^BoV(e_3{qzozSw{PqbD_UbYMK^4@*xO9~1;X*!iAMeQC=jxE#4kBdXM zpn+Vz`|Gj%szt-{3AzHE`ZWE4m5xq9)_Sg!(kcOJRU7($T0_q1m299Ofo%VOmnZ*I zxrmLdbd42_#pK)XEXev`=HFk|GZVlE&h@TfzOhn~!c){r1nsF&*Gs|lB<6;d?+v^h zGCmR>o8wb0ExuCZ+&qG`Ri5p_H>?D`paepKUh;@Ml}MtO%pWRjwSIOH*TS`Y?aA6> z75=r{?K;XKeGHUSmJK^!(<~;QGAEx-Mf_??k660yS`!%_r;1#3d=WFs|ND|*1Mz6? zf?a+sGcTs%W%Ur|C`r}EU{}}}53DsGD1mlcKVj^Whq6d!ENQtUWFHVRR4i(_IP;yB z_0*dgA`U7*LDIF_6`B}T7o?|G>XxR%>>51Emn=+qRXjgtRX3Nqet4nR!MgDZsI{lxeMd8e z;Ctb3uOu?l#-Zb~vkbkox3(EpjHE7{e<5h5j(;!Y`Gci?J?)AvMC>a_GInqIqstmn z7P4jR0OzN(L3e}{SE7||aaCQtWbn&qH8{Mn`SWi&WLR1Q9wh}v_ilKnIck1@Y4?#< zjz#Z`w{o@Osg)IN+6TmgZq!usywX3Z2mT8(m!y5M(M@AIWYBn>uo>T99*F=rfXz7K z^l&>ky1BB^iFzORp-2A;77?*`wiVuRx=BwhO?Z3R8=eq|lNU^PEXOnlZM83iehN2srfi|plb2L?7HF|i>g%_AZzs`len z?rg#Y7dP3ZSwzHIFjljdydVj2J}D;!k`gFHl{DlXOY-y-M3H&AnotMN4!Mf_0T#xf zi478LKRkTIr{dk(+$5v09KVo$2k@hakR%`M+F)0gzVRN+o=26esM_DZP{CM3tn-*r zT$`$tVzIFvzunOOX;x!+hrygdBhcw6+m-^`m|c-Y|hQ*eFlzyhP?TU=axH|PX4 zEfl;xp|sKc7mk5}%K9zu(fbF9}n(XJ5_vs(c)txQ`5>>EX`C@P^jSZrqEFTrFuuREV@+RWyIG;34(-!6c0Zo zwMlztuhk@(1b2G2U%S=^7yjfjoxNegmVba4)09m~VZ6S-F8fMPvbtKQORgy@C8~!M z>09y#W+-9>b#;H&b9LEo_L3>0q<9#3qm|1LFA+4`SH)8%)v9!eW@W&)8i;-E8iq|j zuV5*g7MSjnJR24$uVdAoPPrRnFYONjk!VYX1ieqg=ERtpUK0DHhfaTMA$xHi$%Bh~ zVP+O0dxK3}#c=dvv0Z5cvjyjjSKh}5x<%zCyX#G>WcAiAWxJLtkR9m%O<1$w&9!-E zkx*Qw6GB#H{fh;9Cv&FuCUGPUyIZdPTw92Jk>yOksHO}LcI_hr(SAMlL>x+H#~>Dz zt*E*bfY)+!2Pt=m4xL-g(DTE>b@m$JITVSAtf(lmVu`yk41#T9f$twQL6QjP%By}% zthnrKLNRe(-GP z1n;tbcsYshKr8GWKmSiqo7PXw|9(glpowMZ!ih_63hZ;#u(zi}eAP>deXVWnA|>S^ z4nOsDGF)O}N-Oev@9`pyaM8rPZfage$#r=^J`y<2Y1fSFq9Qz*0Bj(h-%`KNKi+tb zn=?ypy9W~{To&I!PK|V=((NyeaotNQZ)isyHNv2TgvgY?m&g12zAje1S_2q#_jtDe zTePmeA%~v(Nyg=#xJVzJOjj8if88rLcL}3QN^F^J^eflsS2Nj5P}M1;1qX|}PEVg5 zHkJGudQI-UyQirshqomvw(N@>6q5Xdnj9M9MfIUIm%s3!6j!&b0M)a;p#f8x9XU`? zA}H6si`Cr-!4MFRlLOQtYbaZpqG|3(y5IgwpS4%r#r`)ci+wb1JYaiR$tWGKm#`%EmuknLX z_V0Vr78G1g1f=yfgkaT?OgtJz+R%{qJ>=j1JVWDmG8qhZL=_DUuHRlxF#LL&{c|gH z5o*w;CU-8}Tw}#yAx?@KSrfmRfwq7#fgI?|Mv4I8tA%*Cbg&+@sFu4?J$a*ms`>e; zk#_heU)8PuGQ-pC>@ac9Ig`^vnZRQYOSy)=Ox<6cpc6ZbH1e^@+myT@HhY-B% zYsL7eYrwq!@Z(GcgC7`+0Lp6!q)z&ihqkAq`d9$uUxV!)Z~K*bb)h=wPI4uC!Tg^c z$p5Q3*)G%@avrJVaOvnhy<|@ZlG_th4#Af~Pk4~H`Cg#;@xYLxSlT-~{?jtU0PgF) zeBR2^<--H1UA-YzPJd@-F5HVRJWcj$<<1Ysjw`CZ(qpzfxEGh77?6BNxAyPdu|-NJ zCy}l$Kk%}!nVJ3SD%c&0c+%D+h|26n!Xx_RX#$p6PYuUD+}AN0F|S`gwSLOwmeeQM z-qJ1zRIA0jTr+K;*j#C-j%FYjg4^`)7-i;oH&W)No{KcCEA0E2{E|R2*Iw zvarU>)hAW)v)e{;xH+s0S+3+D=Fi5)I2B$R- z7UfTF2;+O058s;c4qqG>dwqZR)W*#mQkE85e81Foln8@+a&hlZe0geI%O~Q(N59U6_|Fb{P?swR=1OTkb<+lbp{^d7W~QJu3L)A z4PJW7j#en4&obXxybv_Ne6{Jip2E5T^l-Cw1Y&eDk82Wswuv-#(fNwA-TZS@&w(Y| z{9F@L|AX7&M6f%V`xOhP@93Yv4HW(d#xT`E=lX`{8uf28fB%-ycQkQ{4bU{IVHliu zo>7dTh~b9W*uy&RR}F z2*Qxh?T|0my#A<{xS5|Vb~3Q8SwW>ZDm@1uTHfDBE!cFemZU@d)og2ZSJN)1&Z=9| zQ0u!3YQ?ea$LOyL$%@M2N4Us69xlT=Md62j3rj0Zd>PWyQZq)*F`kspKl-j$zPffzADb=M?~w4j;FLpDjk1bUW8a-!+b51Ffd>scF8BQkH>c(T<#OU zd*+I~+qBs-ulM*OTq1**j*y>F&`;@-YGdr2?aoYy#2Z-$lfu`!raS>Nt47c{!L%%a z=A)sZsl|13)nzL_tn>$;%b~tO)6xtL>@1u%*_xP z*`Km)7B9ecIN5Z z?}fv?;I}ex*){CCh_967@dI6z{jiYOXTaXR=#+BZKe(duWL_48U1})4brBFtU$NpI z)04yCH`3}J>zI4vAI74%cIhJlJ;%*g8t7RpU9Y~x{^?f_?upg}1QMS+!jCrHB>$s3n5E%;`86Pwd%oq!bD4r8YNce!Eh9DkCR`K*A}(Jfl=gek7CI9zOxmLMDkt zW*3iAWmp0b5ySER&3?FOj|{i@<YNQGM>WKGJCUTP)w-Ins~*ZoDqQ|JmpDX(YIM%4umwY^VXmSR~N$%6D!Bu$>HR?oMe zpErLqte)MaFj(fd&MP}-6VNc9BL9$8W(I<_P07$z9aYaA8#QoI4ulzMcv-=?fyOKx z(V|DVWT&lHr?M$yP5V|Nlk&LnxT57rK=}5~^<>UdqHQOXaDzc9&w-E)llLZ}r3E?t zri`=*A0MAOG@^cx`cL-AW!(wEmnh@W8dZdF%fhCY;EgK|E~pj7!g4l*hFXFLs3Nq` zu_2-KI>s*B*&lIdi?9!w`v60v(l*V@Bgs_cF#D zQb&oS_$~8TTAUr<;xhO$xfdmmMfncno0CxVw0IgdJ|y+_jn!ujt-raR*5&n@(s{;Q zG0Ty9wtmh(9rMrKFJ)2GEb-*fk&so{3e!S7TK1GEk-55>g4~4s-SA9V&~UEmX2sz^ z8@-q;%p>mMiK?bKjgKwT_`Er5ctsr)m=OCWu}jCfX2~WFanH8;=J8k7yJ3Kzf{cJWm!DNs4e*ZHife0jf$h?I=qP3pBII3S#}rZW|BQqJ_Cf7PLF(CK$t2!-a2dGk8?w zP1njeHj<~-d&RRdNXN3p1NxE6X0f53BoM;;_fckI-)N{x;jTTKN*Unml;WLwn%BQN z+S%nz;`>vV$~k@tEK;?iW5)|i!Ivgh3Tbh#G*B0n>>_hMIBGdo6Q1RK@1&#NyPL!e zOU%icdIv>d6x5nlt9uTBd87l8W06L1| z9rl(s(ItodNI>0SA7*e@dj(lptq3fFQa?FW;x?UULa4GkLCdGgaun0$^Ee8sM1LCn zPA5RBN8af4^z`sBq7FV1wi(L;_=E}n_OeX393i_S%zmb|l}=}`O0{_ibBXMu!!Pp> zD`kypO6K;o9moO2VPhY0wz&WULu*#bw6Vp-bXsjn)X~c4W-F?894CWme%bCzeZn6; zb6A<(Ms4J`mgT!atxQkHcIjBN;RUY`tXa8qjl6=i^v7x3_t7~O zc{#=~WK@~k#rZ8)?269sp09(QQo{j+o;urAiiP@>b0*dE-Q6|C&62rO?1c;d`Kl>R ze~wYK>3uXz=~V}!vw974eWjfDJ=O73GfV1gX;Ap_=zIQt?bRuF;v%@K*fV7U9VcB5 z4vxoLA34*J`&O^uDG^Eh+;7uT&!ouEw)-?GfjR#!fZpH)qnBy-MlEm$}g zSRhT>wFD$}Y_V~0lq=J+B!M;$GXE(j76jt^8+1u6EpsVN+C5p8$E%2a-`X6Wzw97H zi0YY|4s4tqi=>_|ayp-r06%#P|EhS*=nGD$V&Qj6bXejPDT=riMe3rb1j`mLOG{qJ z!@w(VNaF}{3&D(R zcDN_Y+|2Ct^>wGp_L-AYGTI`jMPQGPj!deb3zXF9udnaY*;gtP=rx49CF<&B@AwmKHXsoMT~O@qa!98>0`r z3PqMHoT@V^RxFguFM1imFk`_*dY@U6zvym`0&qaBHtFcEoUyzKM~lkg8G%Y=T24;R z%--~2&}!6*hx^i?mW9HP6Z$q+xnm&u?2BPDOgA66)UZ2aCy!CTB3yXj$NUb3-=sRRYkPFZtg|(Fl?sEx zBbjfc=5a|dViby^yEXau?HQbOzR2T%hFAAN0X;N|3QFymrjVD5)P0#n(!6VWN0k@=acuS{9Z)EdcAc4iu1yGW@|=Y7Al z^Bp~B)q+DjpBRvMKh5MdJb$HTx{otm@~ty~z5We&T^_48dK8M1hJ+_ACEegb?s;we z_HUAzunJAyxTPu_Uf1?gfI~O<@6}+$P%@Bc&SQW_cceD>16CFLm6rn7Z9*Q!x3ftt zq*hE;e8OoK^%uGaJM#|v{8@8}^pSWX!scz3TmqtpOBe7K&rGKCyAqag*(lRvga_?r zQLjVZU~sySkoZz!QaOJXfmm-~t85mpTGjl_&morEsKZchoT&mZJUuxb6`j2J^AcJG zP)!OgRK1=8(kqj;&4lm*oES!XyZ$wz)P zUg>{~YNigaE6`Xh$y0X^O-)V*3nDsck=l(`rYXlnIZ~fp=yhCzB}pQDG<95rr_UYH zLUH&i1#28SYStsq*CTC`QSo+@QX^tK(l7Rd#QSF~W-+lphmFBtLI}trTUQEY@-#J& znM}n5%{#8#6Y61!_mFEV$uJDXsjX7y{SR6V(+KwHgkUjZ6`xbx?}gF)q^Y6{+Q-G3 zJTnSd_8Ph6&Q?|AN!*&VTMf3KW8H;I>%qf(r_*@8w9no=e%ToLFFX?C82y|ZPH_4Q zeg&#oxr6b=N-yzzgitGCnn8UV9zbeY3_?L6u#(@F#GBfqC!7C%^$>KsvUv-0N9=1L z6&~ivu6^Wh{zt)W@$fbd%?9y=dFm3dI#cqERI@Ty0q@1;)e-`0r~JNm^ZaE9t#n{~ zG_(G9tKXKJo9vwnWP1{fxMUPJ3Rb_h^lt0G7u3Z_QOP}`%O00Hdw*GzL|EN51`e#a z_2nHPK*AYq{0eH;?t|hCb#E@F-h8fBD*fmS5HVm=&Xb#KT+M`GHT&7+)>2kC5DE7) zz0p88HeoA%u9Dh*D^kx;qC}HHzLV9sqbo`G+kLvB;{&=b&0=7ea}5fI$A?DPclG(Y^MOdW5;tjNxrt~NzA99Gep9Ld%zCguG{y7Zd+VE~CQN!Ct$ z{vsE!bmnS==py?g|KdyKPtC*Y6Ri_Zi@+2+N1`O_H{%oM?}1NLoAO`;`liZROC3{1 z@}6yAL`3Zn`HtV134#00AJ<~$fZ3@$@4W?t*`*_C`~q%#Yo(2P(Ci%>9c&Eb%9ygKFD6j9FY@@6|@OMcJ3HdBfe3;YvzQ1!PKXQKz#!Nf=6`rJ_ z?((k4TZN^POe<7vo2kW$+nL# zlRJ&VkR==eK2PD0WnAqZ1hNG5z1TTmT!z%0e|=NoF9-L=K+GKIqf6H-jzG!KLmqq& z*!t^ze_r)C6bF=m43hw&wY-92JkH>D}b#jq%HUJjjz&SpyX z(5_!CuVi*x+S+Wx;2s z9GrZAOZR%G`_pYWR`Iv70~_)q2n_0KowIF*#!UG`7eMP6a8u{ftg9Wr%DpdDW-rSa z9omNCB}X0)qhVc~65qwH805-OqElb#mXJ8LQUa{dJW(?JSQ~+QTKCGk%}q*}7_nG* zX&TY;FARVJZ|3KxR3#ajX#=}-_U!i6&RL2vN;Cc);xdey*w=2FbEG78RXpCa*B}yK z;3jpfojJi}CpTmt9*Bb*t-C8Swb9_`o{e&Lyx?Q+x|G(dI7%*Zs0ezEZ4P!%7 znzCBMa%C=p(wWyd_QqepahDOV&r4w+H!QtcS~S6M z03rQ;4x!s!1N~ES%^%H~*#XN2AXO(eYkR)01Vss1vmJ{KtRe~a;(xz%T8n2t)blA> zePcDGWfkndCRn^+UHjLE=TLacrYo2_W-mr`Prl-(G$jhpmtex!Rij>VZJheJSU*6% z@acbW-=f^!G~w~>MdE#7y}Cbjze0K|cggXn6;Cqa7(mossg?J9jR+za_kzM3o+0h% z-#v|`v<&Ey%qC{yfCxrgRaoY>FZC6tv~b81u-{#_@N#U2=fyhtd*I2RzD!vj}Pa25SRE3Sa;-aQj>5@%gKi z!r2@{J=y4pcjL;o!Q%bk^=*BSU7S+IwEyN?AYm~jee>^I=ZZVKpPDr2Q;AV(d}c}P zhJjQIKcU?Xy9Gx=0*CuJg$lZ=0|gOp(U*h72m0U^w-3}CwQ)74F^L8HR1uUEUxP!Q zUW|g3O6eKRW~o@c|G?FDDs@I_m3v0PwVCl7mGQ>1DmiKbF7i=B07<(FR4XEBx!pl- z(_}HjQOqT z&Hn~UfBpw3S&N27M!8b6^)fKJse^E3^_!6YSEgQ9HWo;IAS;Uo$+bK*)Ls5eu=C%Y z17MNf<~%uJB8zjzHx#z37zXA}SSnS(aR&tTPBN{3P<)r~QRl)Q)Bpgd5$}8|T1J30 z4+5eA3KX^6n;VBabkz}d5x13&L#5!jQ3zDvQqE9_c;B)tm#js!I>sFLXM#9Tu6)7p zKyGjOp2%>F$Pk5p*UZ>2xUzS0e)*68=dV0K?T@Lp{<8*ELhqw$_3bz-)c-?Bg2l-E zAh$4MyfK)>CXP;xz`*9Q*uLBaAQJuGsi+{obUqtE$u=LbQB2624QrgmxPSUQ0^G8< z^<{rs*Q(9emx^{88(1Z=pqmM(fr2ZuF+MhD>%I!uNu?&XpyD?IDwvCeYXZGMdc~=* zcX$?6{_T-)d&sQh=ES~bB5vV=A@C$MOPos{STJO!SJ6S7H&obT`2bnwd}+w3;i0Jg zag-=se!IPy+U^q9Vt4@Z8ka~&PXx?*d7@Y@8a8);$1lmu1!3fO_+``o6-*{3xRfg3 zdurunIH)f+?Vu(iS+45hpenFGO6*LqjU5%jgLt`a3ZvPV7qD1N>$yT%{;u5B`A%p3 zqg>i0qhNYQEzz~X?oTax06uJ5u{asKmIktJd>FFo(=+NJzE)mA^Ozt&^1#yo^$jAG zFzicYKEi5xQnhbXN$t}092ceWY=-*iL{}=AXMOo{347ZcLXgj+T>u2trn`uCDbk3l zbCA@LviJ+w2@+@c(K@BTk&;}*&8F;)OifP}?n(A{l;u5{DcK4hyK}B!HrA;!AvWZX z55D%j($6jq6n=n2&a5lZc*Uh2orD}8&>)bkWV+%`u#Js1YARiEy2uBBlD1N*&#q!I zV->kL$@srsl%nthJQN`GI5W8T=j7Vs?C*ffo*huk^!bqqZi#r8g^O-DH{S>X>pY2V z1Knt<+-IR`P>Z>WaSM`Y12;w|yTJRrJUT=Q7y;(N=n@OuSe8+2T2+3*s{;!d6TqdX zv!E$%Vsa3g<2b{T%r9H<55b0W*faev0QEa6Q_qE-7tvx9Z+W7a<1;88s2E+sv}r*< zKUG#)m3Z}HIM%@*9?;c~LCyG8M`HC9I6M%042=RXe0fqW>@m^eY4da_xRC=Dp6AP=WX#b28z{ucqg4X5P_M_LjNx;WDR1ouM7yvdU7z= z6=yB^mjttzFa4Z)KYn}3Uy@G|`>YDr?xP3#1`?8ydb~wD1b5Hs#smRq16ALJ>Y`l} zf(_VHT>q<1gnh@iT>l6BG`P)0c7~&!hHwCItdM-JVd&Oj z#9_OD%%5ZSk<_C~XFHh;7(gH%R$MezoM!sSK0M-Omo3wWX?9x|I~QS0iArcMR~V7l zz2U`=u%aKAG+llr@R79AOM%-VIZ-aVC~Jnff}^GautSNc5tmD; z06Q&(qDPsCxQO$5aE56vx&>pFKUR?X@t@hiJ!oAVtvzLejCdn8r8VFBLi)m^NrMbK zxTE){{-gRru!%MmKghM3>3NEr?J;Aff^)EYgO;?ILD%1p*o#}Te+t2Zw0;~2@^|XQ zzL6G2upe!IsXkI-$65&T!d?Bcs%QMzK^)isB45P2xVGbB>N^|Ov8Fs|rjlL{nqdPe z+zrJ=!u9ujoVVZ#9E5u{R;>1(&s8PV=6aWh~b9L?aUv&r%kGDSiguKQ;T9ZU7ETwOt*cjIi%7Tq)+ zw@~d(Bg%SR_V|-}I;X6kLCE&oUvmOWKmN4?z4S}eXJVO+Zm5+n zE%WV8j;7z+Z_x)3|nrGsWsy*v!#{zQ@n^wmc`xO7%cLX1U|lrQ;zX8jyGb+Vmoi) zon#WWC9VL{u?l~`S`NrNeh?TUtZ@INnpX4+0 z<;7P-e~WgWv^vgEuM)b&Q=)V1lD&d>AcAgGzrJ%!2wK5?xBy-}YW$q-i zX%{*D!sX9f+rQel%PrMxm8x!UFp&Je!1P-0;biCdH*b7E|Ew9%d|~?Lm8GL z5pYGPp31Kzb5YWxu5|j9luwQh_x(DMDUN>T+_{NZU@@~jl~fVIUYE6x9W>k5naElV6g3s+>v4(_9upE&7z;3nqtmp?h%CN&wVt@Xh{hvh-cP-dxj!5!a_cfORla(3 zw?0FokaEBKj{2=9X7sasMuI$;*yypWrlcfYN^v1G9r*YvxETf#PNcsT19DSRB9&X7 zLVkZgO&?YH!zvLkVbj^218heBK=sN~naClJQ~#e|YXaE`A~xYWDdox-&Fpf99o4NZ zEA>hlGT5mNcJ(Y5qV(UCs24)!Hx4N~AL!^9p~7bphBp!zmle=fP8JIl@-PPj6Bw!1 z_oog>Q+`ku`zv3kUlHuZ%2rfdV0lO^QKP?$cx}FTYCm@e4@(@_3Efy2z*tF2pu?@i z`qG*21!*lSvkveWfP=lPj3>NU6A3I-qKK4-dTxPVk8S#7S#x@f(MjR!x6a|mA5hvN z#($E~gxL&7A@KnVjmdC-(kQUAW01;MX4ZE!&GCrr`5c(t+t;^!dKDJ#CQz$m+J|Ug zd5`;?9;(?oV{e{R+TM5{q8a8$ z1&wl&IXJ4-vR~C>N72puEYMMvTG^nY{C5k*mp{X#&f#gxud;lm>4%g=hiBCF=>?tv<1|40v~@;$!CH?0P+v49LU6ic-l-~ z)SF8b3U)bm4@prQkxClW7nTY*F2dhYb8BhGhiPm-z!~!st+KPjF@|M+k(n%h?cJmaC6^x8N4U+xGcm9ly)7h*|mSofU`r%;{Q<_Kp*TZAX)g6KM-K9*5S9B3h zZsi(?v-$8o955fkE?)=1+;YCnQi1+g|~7q3$HR zqY>(;=50++CV1Rp=?XPe(bUZq)cQ$YhKAre&#rSnhz~5MN2jM*W9#8aQ96=47jz8P znTAaXJsz;VzrP>X67eJF@Zp54H&2lf(YTx+n~a8r2I=&M z**55pL<){ONh=X=E8p~dKWPCpgim2MN~u(X;xAkl8#`Q#7zXxRL0BsE0)JD_z$F;R zT55?tzaZjc$1ipu4*1#TjwJHjjc=(kI*A(I${7D{l?JboOl09CBapt#><1c%%0tRFP8QpDVk?KP%%!6(IBXTnr~aXLXLs6Yxk-I}j$j z|1>6QgxO_2+c<_sP~wDnE8b6&g6GGbSGhop7}&Yde1nSFN%!|NRG?s!b#wi#uwiFx zPC;pNjo!s}G3Lh^SmI;~asxyQ)8(eQlNVh-Z5C9YSkX>k_z^Xt9Q$xS@%g{MsWA*D zH4|C%30Izhn}oZs?;fI~l}4XLTt3_+d_zI&Nb5YCvrm$bDPZv(ogMR*59uO#U&vTA z;hJ}OG_(HRXC5|#DvG4#L3;$GpZ|R?Xw}_KNGhzoj(sW2lE_!NI94JO#Eh8s}8274kB7w;O}toy%>Ox zUJJ!2|4%j7{nb>qg#jJug3?5q4va{Xj*Jk|fIyI;Nelu~1_g(XLP8QGO0`f%qaZbd zKqyK;L_hwNA)AruyTYG=s`PFQ1 zJ4>rTN7N{DCn46G8v5jl6Ny)$vaE?E;jwtv)ILCc?02J*81L2wv9ZJr1%sr$IwCjqmJ?|r3=);#t z0{o$DoV$BrA1Opir3vyW@4soW^lpE>-5pkcIA>a`CJY3=a47(#XdhPX4w|_E0Ne2J z(hmZPLq4TFw_cu7O{j4X!D7wm20MTVr0i;IYsCiTqyB_JK}~+<8z>FBR}5V-viI`e zxniZtO?z*0%iPthvxda6h)bK|6e?Aek8f#dm!Upreky$|?i46+-hd12u%-T~egB?$ z%AG27d^CG@Bu@jWqDFULUhy}KqIU>e5DL~@BhWGv+3xPicH`oA0juSH?dE>{V~@NJ zH$E6Ur0$VphOY+FK;q>s+EkwuBCrw^yU8b16GVD4j6H)mboafise4kt=okQnV`Y_P z1u|kkka~M$?JApDCp3Dh#!=!RZCLhnpb}o#Y zxj06kA3n!BnNlWFe66u5!bvD@Y)!vT3Q}m?l})fr@(1HOxy2$2vM*rtczfK0?IHAj z(aZOJeY$wuJg-yD;cNR#qKG^0KZ!4j(PjO8|>C^W5*qew8=a zQX5vr`03ad@Kbj7<*SJwyqcf9a?wSiLIUrN2NMDBY?*qH8)N3F06iL+vfb0zq~5UJ z;2gB7Y1{g8iyQQ;~0*^)RX0n2k93YJ*rll^^2=R!mN>1 zlQUi9Q2^bGxQ>-s8y>idZv!LM8ji__6Yg|AiQ_ePud0u4o$_96ly4`9s9e)tWYoZB z=2g`C2d&NCl=AzBLMWB!Q~LBfTFVpu*Pl@Ix7z05LIvwVsdkqYcyhUS@wN=6dsOj6 z8*G-L7Q7aw3Q&1dD!^i`=`YV;EVB`Udy(WUK=^r=x?(A`ugN9-ltoy8O+mX~d>pS~ zA9Ql-_w(rDy^HF&RZ--uxYV+FCg{r!P6l<5iRzr*nIAULa?%-cxjKIR3Q1J@XXZLr zurix_Ts723;zKsS_rOF-@M6J!bsJ}}fsxxxf5S5*63cG8po(a_$-(`$J;S3}@+NZZ^xFbCiO zP@4_>rX75P@#r=%3Q?AV|8PdH9&GR-hOuYJJ198tUPbgA8he`NJD;fejI03Z>q6Xh zDTWI9mh@sv1$hVOMBs3QbjJwH7Uh%bRp_j#OFeGf`9O2<+2&iYf#aHI)zO{0m$qB# z*=D6DV@OVUsZlh1&Z3A<}%;I@#K`BZcnJ! z}Ic?Fd>Wv8Hf*U%8E5foDl4&Yy1Z97X8OuOZUbwt-8 z%svSe6--nxJvZ0nw}vdF0_h?ODSdx?@U!JlKnpH(81v(nO7r#;OugxCX!{zDHHez9 zgd|Bkr1PTNn}j8y%FNKn&mg{9mo>Pw(?*Op>zp?qX>C~qcxCk5K@g4?dd@yr)2GJ0 zWn2BR4+>(7g!0cLOOw{c)u}Q1yEo984-jBj8J?xt>zwFDa`3RaIF+QD;DQX8&J`&x z|2!)GBgMK`WUV%-u34J6J|c}#v2Aex_7<`JMWw%$Ng_V&|I^VhgJPkRbg^Rfa}iMf zDDasZ>B(FH@&DB^BjZkbK=<}G!mBLD)Yr)1EDSBPRm@Pk>ZCaqeo3D2cKz=5HQ<0I z#+~J_VhPjc#d77jc?n6DM$W#4_@<4-dLYU^Tk1NFRz+SDZKJU{`@0Q8T!w34zHPK8 zX@sM}p#`?PKLVTQ58_#ilfHqoZmHw_h`!WvY=DpV)9I_@J&>l)Q)cYyt~bW22@f=7 z2mvZ3~5xwPAzRytTOo(sHwIJ`yrV;rR`mvGUa(#99wzx=M+EPsoUch z)92*Y#n^|Ez;KNg3dTgEKj!Z>i=HjYB0if2KHN%$d&X*X^m^!id;UTL90qN$R@w-V zBwGrBS5WA0XM_g9SI^Ib2pS*LIA=%9evAUst^UeI5~YU%9$7J%+1DRe30}?$FRxNW zz@6M2PRJfEaxDX!GM%qG&vMxZ1zcc$0&1z_Hl>e02{lsXxU*rNL9ILuMCppMsdakS zK}ZlsHuAz?8k7H=iY-Q6%6{A%tSnWw$2=b=i&H+ZQX;>RihPmfpts{a%>(giA_^6* zEyD-w%)i!6~`j&rMJ}k&bF>N<`~6x_CyBX z#~1E`cED!CpBFEKWin+gO)C;fx!fS5OW<%dhqtuBF1^-$>racAhYw^~*)AYl8aG1_E?%>0BMNeD5{SF01?f>CCGZ1~Pn1 zvY@z|VRV{%UB1G*GY1^5UA8A2xggA|)XyA>Aq6b(7NFA&qo*s5D5ogaXnf-60*)-6h@K@UGAE%scb_ z@y&cQ->7pt=bYWM``ce!*R^}XloX^;kqM9?5D4mfX>k<@1ZEZd!$5=uSGFnNEr1_V z6KNHB2*isT0{IjOf!u*hpLQS+*LM)e-UkSTF9ia@b4YJg763P18p}$FL!STr`O%Ue z4}mDzy%!f%^O!%(@YGY=eCqwK{V7#6)#&xB5d2XLGpQCj@`rX6J9^~QZ*;-t-bv$! z8g*=CZIySPa6?o~cyR-hX+LO#2=zpivF60#^ky%pk<(!;V9akHPun*fr`hY@?Oi|e zu^4O%Y-_h}^LARap8IAx6DL(x5yF7s)FL#sp@Lt?S2$Sk`yuC(2pj}5OG`Qmu5lqF za)7Bs!v6oc<$%BCZE-GNdCaob%9ARER!lIdi(WL$Z7C_k6E8K_8&#Q)$KiUFF~prb zv>Jinhyi75uQ(cij$Qwm6=2br+Emt z@Q{UjrcIHXE)nkml}a*jRQ22mCJX#lW?f5speLmG;mPSqe>M!mi)$Q)B+rblMQ`q} z!=R}8Cp`B>>9X#lc_$^;&Bi1Si!rs%*2cQ;co4`Dg`D7yn8oB1=Fwl}D=28M}x<+87F_F>q8H}`tM8M7&nsw>JldZ%z>xba?!{rq! zHhv?SHR~++q2D)^DsglyBF@m$=oKL2fq-C+}(aA zoS)5{Sx^v#3Nys-FE26THC6oDE}p><6$lMr5b(&e?jxEE8}1JaqHF($)b?` zI$G2nwN1$3+h-D*8i9JU&apH)@Ru)(Vqe_V{S#h(p~QrXJ_T`Cp_LK}JfdOjE!uDR z-l)IC0u%CH?ahV3zVMKCvCg;MKY$Og!DkOrCD9-B6J(;sI7C0nN>6I{S+q21M`7Gq zoqlTacn?-{HnN6VmM(t(gzRdlbjW0?I~>8W%g%-|W1E1(M9N7@#!DgNModtp!)Tlg zVZ%d5A2hN_GAUzj-!PJ$P>0a=9c{jk z-ib6tQz$h2JGmo|>l&7v+uz}KKbr^pG?}(f2V}$^5B%3h$0)Ys&PGv15W|+Va9ME4 zIP6~3)i-)CN*`sh>lfqlBj1*+?;TlCyj9559Qj&ZH%lfz!%6cr%J_Ys*2OezX_ls_ zDJ+4VqsAUs;M0(CkcbJ>8@jcxgunGU!a^_zc0&2Eby{rRIt2z~NsjDoE}lMpN^VP1 zBsP3ugmJ&A(iaG=^2z*gEASfxLMej!Hh~=h->x|rR)Lk03HQoFH+f*ke+h#Ff%S&?$pVuVSBn3HT%1v5opmt6^npHLBY4jjm*kXH;)BK~C( zr3%sN^T*GF>$f+W4YP?9sz37f>!8_M(ULN}k|SLDGtE`E)VHTkZm=vO9r{lK&r3s2 zah5o`Xhj$1Y^xdy>Bsn{gxqmW51vn1?0Z6g$2$KF2$;{~htnb=8WfSgDrDFNn8IVl zCxl2~g6VG+TIMdFM;;29%Q`x$!f`+$1R_ARsQgN2r%#7tZY_fenUT+<%N{ho+I=-r zcJrR@Z`GxFb9YoF3Ef)BEZK1Y%!Z`H2=@izT>rThQG^I$OO=EIHS}+iTf7UO+}XP} zt#q>Xh^osN`o$5nd^rNMw#yi+MZ~f~0_hMA{Tbl9WjY5pQ|mAuSWOkrz9m)vbs2~J zwkSsd7Z5A_*nEMbRj;q?C$>ydgk`maW*m=_4;xy9_jVnp>NY$jDf&_%Nbcjb_kHeW zh-4Ln`wLWX7|?ambTf7j7JsJR$nYgC;2wK8rg6RV5fX^NKLulRslyLg)@=9-D7|vA&OBNJ!$(iG|FZNuSb@F&kJ$f*=cMll%>~$fKU-~J?7n`z|76S|?tyM}Kj>bQYG7Z_PPNSmhOx3icpAFtDeGvTm z%{{OB!AT!(`Fkpc`|+!V#>)^Y`?lyITE;$@$d{0IY&m$Zk>$t1WPb%T6cn^KR*PTY z%hxgj0}F+1Rwmo<@+^K43oXYTF0^GCLd~~6PgbLP_?!0%V(*NP%QQPTl&v}G3;ru9 zc{?Vr2<|_jGbis8kmuwP3+i}0ry11mc*a&?kYQuJojY!02ctH-dlSISQ2Ib``^Z1I zykmclU*R@{2elxB(y}}IYk#CdGNYt!@v428^}RBZ3JTKuSiq;MgSPhy^2zf~NIK

          GmI=@8--!T89|7*3T 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 diff --git a/tests/psp-toolchain.test.ts b/tests/psp-toolchain.test.ts index e254f5c2c..cb94da5be 100644 --- a/tests/psp-toolchain.test.ts +++ b/tests/psp-toolchain.test.ts @@ -42,7 +42,7 @@ describe("canonical PSP toolchain", () => { }, quickJsRs: { repository: "https://github.com/pocket-stack/quickjs-rs.git", - rev: "0fc946fb670c0c29bc0135f510bcb0f595415a61", + rev: "ba5bdd0dc013518768e76cd9e05cd30ed53dd35b", }, sdk: { repository: "https://github.com/pocket-stack/pspdev", diff --git a/tests/symbian-toolchain.test.ts b/tests/symbian-toolchain.test.ts index a45faa3e7..cac7765ca 100644 --- a/tests/symbian-toolchain.test.ts +++ b/tests/symbian-toolchain.test.ts @@ -72,7 +72,7 @@ describe("canonical Symbian E7 toolchain", () => { } expect(SYMBIAN_TOOLCHAIN.quickjs).toMatchObject({ version: "2026-06-04", - rev: "0fc946fb670c0c29bc0135f510bcb0f595415a61", + rev: "ba5bdd0dc013518768e76cd9e05cd30ed53dd35b", }); expect(SYMBIAN_TOOLCHAIN.runtime).toEqual({ sisVersion: "1.0.0", diff --git a/tools/cli/psp-toolchain.json b/tools/cli/psp-toolchain.json index 6431746c3..3fd753679 100644 --- a/tools/cli/psp-toolchain.json +++ b/tools/cli/psp-toolchain.json @@ -10,7 +10,7 @@ }, "quickJsRs": { "repository": "https://github.com/pocket-stack/quickjs-rs.git", - "rev": "0fc946fb670c0c29bc0135f510bcb0f595415a61" + "rev": "ba5bdd0dc013518768e76cd9e05cd30ed53dd35b" }, "cargoPsp": { "package": "cargo-psp", diff --git a/tools/cli/symbian-toolchain.json b/tools/cli/symbian-toolchain.json index faa2d8752..dcf039a7f 100644 --- a/tools/cli/symbian-toolchain.json +++ b/tools/cli/symbian-toolchain.json @@ -41,10 +41,10 @@ "quickjs": { "version": "2026-06-04", "repository": "https://github.com/pocket-stack/quickjs-rs", - "rev": "0fc946fb670c0c29bc0135f510bcb0f595415a61", - "asset": "quickjs-rs-0fc946fb670c0c29bc0135f510bcb0f595415a61.tar.gz", - "url": "https://codeload.github.com/pocket-stack/quickjs-rs/tar.gz/0fc946fb670c0c29bc0135f510bcb0f595415a61", - "sha256": "2160d35d7f5a69c687161647ae5521c186f08442fde56f78465cdfa2a3d6ecf5" + "rev": "ba5bdd0dc013518768e76cd9e05cd30ed53dd35b", + "asset": "quickjs-rs-ba5bdd0dc013518768e76cd9e05cd30ed53dd35b.tar.gz", + "url": "https://codeload.github.com/pocket-stack/quickjs-rs/tar.gz/ba5bdd0dc013518768e76cd9e05cd30ed53dd35b", + "sha256": "c721a3645e4c8df526482c544450fe2bb6351e820471727511ac054c35f44fc3" }, "downloadsCachePath": "symbian/downloads", "receipt": ".pocket-stack-symbian.json", diff --git a/tools/gu-demo.ts b/tools/gu-demo.ts index 3fc27bdad..cbd9954e5 100644 --- a/tools/gu-demo.ts +++ b/tools/gu-demo.ts @@ -64,7 +64,7 @@ const env = { TARGET_AR: `${toolchain.llvmBin}/llvm-ar`, TARGET_CFLAGS: `-target mipsel-sony-psp -mcpu=mips2 -msingle-float -mlittle-endian -mno-abicalls -fno-pic -G0 -mno-check-zero-division ` + - `-fno-stack-protector -I${sdk}/psp/include -I${sdk}/psp/sdk/include`, + `-fno-stack-protector -O2 -I${sdk}/psp/include -I${sdk}/psp/sdk/include`, AR_mipsel_sony_psp: `${toolchain.llvmBin}/llvm-ar`, RANLIB_mipsel_sony_psp: `${toolchain.llvmBin}/llvm-ranlib`, RUST_PSP_TARGET: `${repo}hosts/psp/targets/mipsel-sony-psp.json`, diff --git a/tools/psp.ts b/tools/psp.ts index 22f79fdf0..81f4f5777 100644 --- a/tools/psp.ts +++ b/tools/psp.ts @@ -307,9 +307,12 @@ const env = { TARGET_AR: `${toolchain.llvmBin}/llvm-ar`, // Match the Rust PSP target's +noabicalls mode. -G0 avoids clang's MIPS // backend selecting unsupported GP-relative accesses for large C sources. + // -O2 must live HERE: CRATE_CC_NO_DEFAULTS=1 makes the cc crate drop its + // synthesized flags, including the -O from build.rs opt_level() — without + // it every C dependency (QuickJS!) silently compiles at -O0. TARGET_CFLAGS: `-target mipsel-sony-psp -mcpu=mips2 -msingle-float -mlittle-endian -mno-abicalls -fno-pic -G0 -mno-check-zero-division ` + - `-fno-stack-protector -I${sdk}/psp/include -I${sdk}/psp/sdk/include`, + `-fno-stack-protector -O2 -I${sdk}/psp/include -I${sdk}/psp/sdk/include`, // CRITICAL: archive MIPS objects with llvm-ar (Apple ar drops them -> undefined JS_*). AR_mipsel_sony_psp: `${toolchain.llvmBin}/llvm-ar`, RANLIB_mipsel_sony_psp: `${toolchain.llvmBin}/llvm-ranlib`, From f0b8d1212d150d71c31c9ac23ba07d85d787677e Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 30 Jul 2026 09:57:29 +0900 Subject: [PATCH 03/10] feat(psp): XMB cover art for all eight showcase demos; refresh bench + blog to post-fix numbers - tools/gen-demo-covers.ts bakes the pocket app-family cover convention for every showcase demo: ICON0 as a geometry-drawn family tile, PIC1 as a real sim-pumped frame of the app with the XMB legibility dim. apps//psp/ fragments apply to every framework build of that demo. - docs/bench: archive the 2026-07-30 post-optimization dataset (geomean avg_work octane 1.66x vs solid, was 15.58x; all 21 cells inside the 16.7ms budget) alongside the pre-fix 07-29 dataset. - blog: add "The hardware said no" chapter (the -O0-since-2021 discovery, replay-scope-independence, the native-channel rule, per-demo before/after), refresh the benchmark section to the new dataset with a linear-scale chart, and re-count byte-identical goldens (14/23). - playground compiler-entry merges the music demo's equalizer keyframes into the playground-wide animation theme. Co-Authored-By: Claude Fable 5 --- apps/cards/psp/Psp.toml | 7 + apps/cards/psp/icon0.png | Bin 0 -> 4127 bytes apps/cards/psp/pic1.png | Bin 0 -> 24280 bytes apps/gallery/psp/Psp.toml | 7 + apps/gallery/psp/icon0.png | Bin 0 -> 4370 bytes apps/gallery/psp/pic1.png | Bin 0 -> 71119 bytes apps/hero/psp/Psp.toml | 7 + apps/hero/psp/icon0.png | Bin 0 -> 3725 bytes apps/hero/psp/pic1.png | Bin 0 -> 30930 bytes apps/library/psp/Psp.toml | 7 + apps/library/psp/icon0.png | Bin 0 -> 4298 bytes apps/library/psp/pic1.png | Bin 0 -> 25858 bytes apps/music/psp/Psp.toml | 7 + apps/music/psp/icon0.png | Bin 0 -> 3700 bytes apps/music/psp/pic1.png | Bin 0 -> 31605 bytes apps/notifications/psp/Psp.toml | 7 + apps/notifications/psp/icon0.png | Bin 0 -> 3997 bytes apps/notifications/psp/pic1.png | Bin 0 -> 38510 bytes apps/settings/psp/Psp.toml | 7 + apps/settings/psp/icon0.png | Bin 0 -> 4644 bytes apps/settings/psp/pic1.png | Bin 0 -> 30632 bytes apps/stats/psp/Psp.toml | 7 + apps/stats/psp/icon0.png | Bin 0 -> 3739 bytes apps/stats/psp/pic1.png | Bin 0 -> 32848 bytes .../three-frameworks-ppsspp-2026-07-30.json | 3697 +++++++++++++++++ .../three-frameworks-ppsspp-2026-07-30.md | 558 +++ .../three-frameworks-ppsspp-2026-07-30.png | Bin 0 -> 153000 bytes .../three-frameworks-ppsspp-2026-07-30.svg | 192 + site/assets/blog/octane-hero-jsx-60fps.png | Bin 21525 -> 20687 bytes site/assets/blog/octane-music-leaf-state.png | Bin 24699 -> 24716 bytes site/content/blog/octane-on-psp.md | 173 +- site/nav.ts | 2 +- tools/gen-demo-covers.ts | 277 ++ 33 files changed, 4891 insertions(+), 64 deletions(-) create mode 100644 apps/cards/psp/Psp.toml create mode 100644 apps/cards/psp/icon0.png create mode 100644 apps/cards/psp/pic1.png create mode 100644 apps/gallery/psp/Psp.toml create mode 100644 apps/gallery/psp/icon0.png create mode 100644 apps/gallery/psp/pic1.png create mode 100644 apps/hero/psp/Psp.toml create mode 100644 apps/hero/psp/icon0.png create mode 100644 apps/hero/psp/pic1.png create mode 100644 apps/library/psp/Psp.toml create mode 100644 apps/library/psp/icon0.png create mode 100644 apps/library/psp/pic1.png create mode 100644 apps/music/psp/Psp.toml create mode 100644 apps/music/psp/icon0.png create mode 100644 apps/music/psp/pic1.png create mode 100644 apps/notifications/psp/Psp.toml create mode 100644 apps/notifications/psp/icon0.png create mode 100644 apps/notifications/psp/pic1.png create mode 100644 apps/settings/psp/Psp.toml create mode 100644 apps/settings/psp/icon0.png create mode 100644 apps/settings/psp/pic1.png create mode 100644 apps/stats/psp/Psp.toml create mode 100644 apps/stats/psp/icon0.png create mode 100644 apps/stats/psp/pic1.png create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-30.json create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-30.md create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-30.png create mode 100644 docs/bench/three-frameworks-ppsspp-2026-07-30.svg create mode 100644 tools/gen-demo-covers.ts diff --git a/apps/cards/psp/Psp.toml b/apps/cards/psp/Psp.toml new file mode 100644 index 000000000..915fcec40 --- /dev/null +++ b/apps/cards/psp/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Cards EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts cards +title = "PocketJS Cards" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/cards/psp/icon0.png b/apps/cards/psp/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..ff10fc9644f79a0be13dff2ea1659b995131b585 GIT binary patch literal 4127 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 b@FR96Z+VeNJHZ`#!v_H6K(eLMrh)$hu-_c4 literal 0 HcmV?d00001 diff --git a/apps/cards/psp/pic1.png b/apps/cards/psp/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..b939869fae3e4d3e189152569359ee6d5545c021 GIT binary patch literal 24280 zcmb?@Wl$VZw=IO=8r%uN-Q9va1b24{?oP1a?(V_e-CZZRySw}Ce6Q}0_vcmJdUuL} znXc*6r_b54_F8)g{UIlg2!{&?1_p*GDIuZ=1_r(fJW*hvfFtH&#Sy@t&yGTp$}qsg z3&!|2@E+VzQCtYDauWXt4D2hIq==xhTgGXJs}uf0>gG$C+#yseUL*nv&R5tNeXu&x zumlk)<)|bRtw!D?ULKbF^tGkbrOYL7PnUyP-y2ctW6c?$(r>_~%_OT;p%^)%0$pB)}v(1wQLZ?D(dZ z(MnJ=Rn;Diwb?zbt7B?*{@LRRV1}f?rH}uWH}&nzJyFzcL53{7wY|cuBdcoj71FujZ1HmzY z&-j0ZgMpy^_h~_N6e#t7=l!Dmick%l1oK(pJGTD6(_!-b{`Uu3^CES)Ze_M7_NS8* zmb5XS4RAqTNK^3$=^)i&+byshmW7@2vHLrgNFKCK%rJ6=>!8H8TVx4wov&sxk8xN% z_`Hln4=JZMN;@?h8=JFriQ(Rk4KC&2T+nZ2exy)xb{V)!A=w#&mvkH&9WP|OCQPX5 z!E3Eu1l?WY)}mfKJ6~+bEK#t`TCP_rTm~D-5v3Fi-vC$PO(^3LdMl#mmMQSsdBdy~ zcDp!^b_IP#NYDOKFQ9VCBjg{>G*jYmM{9mbm1TQYx0p)A+_9i}#3ScI*ARW5l*wY%wekV&4Cp ziFpmG2i`H^_GXWrUnW{)beNf-&yDq2-2n@l?>XI9QzqpmBG5LrHe8ylbAn(^KRd&< zx%IotAMD3M<#s{`v3&+JtBWkJtx@tQ^w3%Xg@m`&AK8Yh< zPOFjSZtmxV5G$%j7AH5=2dn)os*QjCZSC;v^Sg;vO-fNYGhoQgRw>DZjNdJP1sjKd zjuUCuFudSOjU4kD$*xdsZjumh?4qENL>*B@Y?~TIH#Yyx_84KN(a`Hna|_sG%&Yg} z=kWe4N4PPThQnXnW~B>bu{3b=>Y=h@LY_ZyLU9#$0?wa!^yWEXtuioSLxbrPMe2gv zS!Hu%KwEJgPRJf^4vrC3t`t3!iV$l7SyX+lh;DBCge2S*pCwK;ZF3yIIy{zedTH#( zIzuIynnO&*Wuf%7iLaIq&loaE8Iww#@?41Cxy@LT;&LlHD3W>v>;FCKvHm;Flw-*H zU8?FHwmb#t5X3ko`vHxkp4-$*eM2XPkL;Oqc za%l06Kh(Pg!I)IUa(xekj5&y{1o;6ZYR2`rZu*H?T7nVl3)P%DC7a6a@18O7xaYM5 z$hIuf8Gm9RI<)h3zuAUe#vT&f=lzkv))Qc_6A{Y`P9n@^;=p5D9G_mlXgkNgj7uyh zBT*3cF8$(OKoL@wW=knED4-y{1k^WIgErmbBkRhKrO1|8hb+NtRm!bMpxI zcWi*OJ#~yTp8JuKYqC>tNtAsV9Se1bu=9Gyc6_PNB5p&1gShD=kKLDnP8X>|SR3EK z>Qr*7Sv-UeftX2cb)8eV&?ohQef7If_}A0m9ndy)?DUU>LX(rQAHMHe(AsEI6g@=zKl?3Fjer;r1cr5lOMiG9u(+KD zQVq89kq7Srqg&K-s$fZ#xp38;7ZkkPO~v+D2)SN5Pj`si(Ub>YYnv~siP}>`@eKk9~ zV_;UofDB?if>N5xGYm~MKfnLF)q_u?uv8k1tskz?S9z!DQo-?KqeM}+Vwz=lzr~Y0 z>nbsmsTYzC$Vl-iO*X@m&QP6oe8HK89#Zi2{;55%rm$^eW4}q9PL=N5j_@zz@C69v z`clxu289s&QdWT2#BBNFc2h`RK2XYlF#8$f>eu4Y^WV!kz#?M{#K?r0h}3?%p;h$ z{?={eddh(vkL}Ru$J#zInQp++VOzE#h>;lzf+W|O@A&dsG?i!5w9@iMpIHJhTjj>5 zQJsxksMQG)IphYxDZP~3y^#qhYOVdFAi!jM2*!WCfH%a6NJb^0VMuj1w;D5uR}LGK zTS@%B!4NF-kJF|bsvJSvLT8|$L3h#=8uS|)k)De&1lhGJB4JJXE2jsa3(D(9G!?2L zj^{ugKv>I@lK-cyUb^g&&ZT8Jx02Ywq zb+tY8*cvhFMovCnYJZ)V$wC9}dLZmSATKIZpbUtQ_$5M`Cs7MOWi@tf6@ z>oaAKhr4o?2$;;{bd}3v*)#sg<_E>D}rDXVDDqvzM5h zXXT>ZS&<}g|B3=wiQ&>s zR4A(~5RY{R&~Wp#KAzrGJ*~TTVHBbQ*tlnH;+J~w%S9J-9T$>Kb+kR{@i8u#gq&P2 zCXqn?D-=}7C;Elg*HuxD&ei4lp2K0v)KnaGy4WE-8tO7I329kkDk}SVcdzRsHR1*2 z3ok$DM%&D0`wPtAkP!EsNY}%&6Nt^@xf3TR0M=v?GEJ;^@&l6qqomj6w@P+4a)j^e zBiY?IHmD2g8cSQ|9vsBq-P_X-ZD~OTg|Ca3{ij2i;fRi0)kB9 zt;y`J@u!<)@JEoqQx_Pg(=PVGqz+u*lbY{y2(i7GnE2zsM#q=t^%f%@JdR3;&F);1 zgk(LiZo`_(odut6Xd)jmEiE1}2Hp?W`E6K;)eV7ejt%_WqDFe-@>R=*Y6EYomBuy4 zzE+54mkws*@uq@;l(Ur!czCl0P51rOA-A{4CWwbh-3l0%?w5O_?eSE{h)6D>a|#NI z8lxe0_HsQuhmUZE2fNcnDzNRHir10s*Mx-)H=av=-^ad-VC+qjA-UR*^uCCtp-&G| z0MvZh__(j1vS^B~vE2|vBH;f*J~lqOnMy&FZ#)-f0s2?p3<&*2w6pT$X>+|0kL^P) zZHivza(t%s?(pV)KAi0K7FBuN4)3UMY!H=kw6lxxenDpDXu+f;lmLK|$MQ)6+ zva{d3LuW&2_x2zlN82406Ln z{>odnkf6_$J~BDkZy1%|T11b+(9>vFmy;<6-Oz9cW^78|^W|?kz9aYJV>|=I;DTX; z-9=KQdO2pLnzDj@2d-b($y^4%W0Gf+bsBrsWMx*jtx|dDE?#qW*Ik9#HzWvreh1p& z$7k}A3QFB5EmcmZL+p+Y{)M}qfT8AtEZN2KEt?&tkbtlgepe40T^9+4rj8Dl@yDcc zTCu8ynYERnfpE2A+M7;qXow4p&D@al;;#b8eta)T)AP&V-9y=4Jpd&ZOnR`0LF~@EUZs=?Q?MjVOcXQz39=9Ir_&aA zz;ixj%88rKqZ*4EIQ^BAa$rtpPl7@cl9iO)&vfO7F<$zy(Vxafw(5FeN-CN6%-~BH zvxl`yzesDYp(-IOyH#i_fTixr!%wKI>Vg!~XBHz%j#l-4XtGVmZ`4@Z40FN}!s)$_ z4>lB)X}A-tc-vYs#2NBy{&{`)QBGV?kiS;Tz}zh*BEpH#!%pjaqp>8e@12@2QFCRx z?gXC}d$2&0mgz{Gldk94%VPNzG4x*_$4xtl#pJGsZ-9rwe|{?F*vOoPX=;!~ATl;J zy?k|)hs6CdmW*}1^1x3{+#}}WLvN#j`LEQc^}y^0}--wh&+X@Ry zLdC+uLTz+9JN5&2;noI>G&UaYR#e7RGF_x@0h7SnO@Ep0he zcRy{8rjOk8XN#FpHy97T95+wf$mFQ@Li=!jNSKUTd0U4XR zL8H0>X!dOw)3sK%gv4xUU!%>A2Z1f%NzBHUIzEn|TA?{oszUP{9vAcv*$j+-q7!b# z%4dT5M$087EuHGvnxF5oq4z?m=hecY|MlD{I7GZC5lDtmrh*T5cO+wQ9&e|5XVaIA zww+J9)7Do(CklfDqU;Hcfx}SEK%l&6zva#LdRCFJZEtH!K0nu`*KYpRlXDPskd1U3 z@ozPl>b~RI8_TvKaiWTfN{@_U?rr#D!t6%s15@an0*koV9$uD3u(-&NGnfq$<#I8M`)QpFTUpc#Yv*zkSR^Uu0& zon`Y+oxkXOQ5aUNz!(^#q#dW=Uzc)_QXIy4+we)8iZrz-sz2?vcAvj3a- z7}HQ%v+GVN<5Di#L1;KjO^cIZi~dG8%0ZPfXbB|mA@wb&MVfMW0zr}?rQkD-l^VTh z*<5hol6LDax0C*ujp<9u`fBDQl2(ycNY2-^eMs53wLg^!eLYoOP{&jTrtSU@0| zQ^}3tW_N^z*yeb9+hlXYDZizK&F-VcEZbOmnzU>y*1#qyAz{}KkJ}C3E8~29oeJ@W z)84)&p;AZoXn9T|E|7NYbj3A>&l4G{SG(Cx17PFyvzELsStUcScpo0wTRonaeCso8 z1@3;N2$oq{ix-2cO-+dH1+~^1o$qJ=E+4^PaCFO7Wb*el+mHc^7o(DhW>&?_$vgTy zC+dI8UPUvwKUG{=k{Rtvw09)lXc)otxwl+HLE>^8t$0jU$%^6;(XN28#{_8-q8r}~ z&i!0xg#!|oSX^FjJGbJ*wpA|Q1K+^rykFfw#aVXPTGwx~l78Li0OJ0fue(rMO#z*( zw+JtHZfSa&cjpyD6t<1SefDpz@DM~7fgD8$5>dMSvr>(dh2ZAH9u3CrQ{)wAMa9|c z>%qrx2$9d=5sO)I=H+J;+nQRJGZCx0s;X?g_iNeG*A7F!tu2EO+||(3;dwV2!1lqv zS+{=SPH(;Tm?+P7WTsK0MSdm3#fMABcv~{l6OW)6W43L-V*l6@c!&Jhj($f3&<5P_ ztp{K9`LaF81OVxvIu{e-m8S9mY@@FnG@11YBF|90A>m*Sb+aw11g!#sqRtSKp}89; z`DXMrMkgNg<&*_qIpXtv;b*xU(*QPVg#1iyQdImSCS6j{hCJGOBXGiUzc=yN-Me#> z7tVntG@NbAspaSxNB?9{rC)0Tu+8h?ds*~d`qX6J{AGysY9G2el?EU`p=<2zM0e#F zt1yj7N;GF*WKI z7<7AbfRqb?&y*Y5i55Wcd2nY`nQM5R_;?~~S<(PduOTxIQ)&b!{^akYsX)MG?e?S~ zkwPFelAi9WHVpcL8wv^wXP1{J0azGg64dz)-rDM6(~N}u5pgm!b?d>2?hPUh?b|>FlmK8 zu;4CjB-KcdV+;?5O)J9l;Lu8n-(31oVfNGYn=Szl4(Q7#B@m2 zaHc^NbH8zD022*jlSH3-P*$TQfsVFUm!!A0WSDsGQ)~~&@|l9S^GuXgpFE5+Gj&ea zI|NYJNk}67{d23ct~ssd69TdQuOhk5H(Zc0>u|!C#)A>9gd6jnxHJ6McNpJh#boQdundb#igGQuuF@8HbIUHfB& z871v7d>GMKtFu+JT~8C6nWGZCEr)D#0Z@S*9v#7-P)!AsNzb}(Ux`0*A9~My{u!aD z*&5c9Yk*7Q#-!_U#P$B5_x_Es-|lew3gx1olgGuHL_i+jfD(oF^F0%^t#>nWrd;2? zGYv^p@h8C0@)nNGEzd{+yFPx#WM)yEhK@{+S|(5$W-%W2`2Pi=;fb=DT(Q@n4F^&w23!Z0J@LMT9{PC5d~O0_`Al|G z=FGJxu_2T?cv%3Lxkjf zd~`CE3nxqM?tH$l48FakFrMTB52x{~U2I-ZSI2WSkC{Y1wz`wZK5hpPUKgGWr~(#; z`X}D$Pw!(&7m%50Y2(=+OI@4q6|qg26F^-sB=8On6fd{3$qIlzKUl)Ag?)G{-5Q{pit&>1Q4xK-!x zyR)-kUqjw#t17KzVj_of%qQ zTorwPF9&4z+=Y|k-&leiu|jgfnoTy&o9`mGBUeR9vgx)Gji6+U{n|@O=NmGu-(HZP zHq_01f1li4-*E%E#@*QS5M^nj;|Zs#y&2vQxs$V>1lf9jGt{yDxeaosOzLa)-zb-}kFCQnLOVS6iRKn`m1SI+Hv!RhKJn;l6zT_KjzA2A)QnuPok% zR$I?S?4$I`*J}qZP@`;InVZbwaZ5w^xA(|FybsM-o4}Utct6{U{6#iOk*V~hnvFDl zkBS%Qbh1Dq3jdrQ87O)ksnJO5ApdAerFoui%(n7;H4&w|I4UVAM^47&PG1%E+OBQz z_46;Sz|zuF0nJHJv^5zW*%uWR3(Kc~Sx*>9@@>Val)}tYXUOig$5*p3pkAr#sI!ifj5&cnw=# zE`nE^1N%O14VR4~6(D;LH+s$o^ELt5Clz0!jwD~c7WvVEkDMHnr3{g&kF&<-<5 z@nan(GMmu|10{H$LY6wcAhk8CH%lq5_gI0YB$u&8ko*fe#qOFYdv_db2@)Aq0V?@H zacV{pE7gRgyA=f+lu)+bwZM*ujvT$`N%VEY4v}^(B{mR zpNQ3SoB`hf0zFC?xPMo;rZennT?h+%K@P6~O+(aqL<+2+L1Z~)nclD%z&#wPlt?w2 z!N0^;fBw}L{co*+LK7G>;(uQs{eLL7w1*ZFx>ZHmk&%UA&#nc)2cdP3H9~I5E!+$C3K5Uf1vzw*XSnDS9D5 z>pq8?n#qHJJODFulJUR{^_h{!Tix7i10F-;ijjL?tQcg-YL0cC_dbYZBO%_31Uf9?h4FI%m^lK?b@(D zDkH{6e&bzFYNG${1-J<kqj`5{@H9@F0NV>&Lz0)P}of;$ULp zMreI{6KTPKOqTA!&L6_HLTPn^cA&XCGEH5Wr7VS>gBQyutYB<+MHK7WB5)ja^G|VC zbZE-UE7cvZVLGfA%07o8mHamUXDDZZnR$QkMCJF)R5X8!F{H+oJ{w*T{~8%>0sjQ_ zO;J$TF&7W{+r}?7M(2?Wk)V; zGgfT94J0sMB~h6?=#Yj^wNj&)D40BINJSX^NhPrnxliwFG=>^hh8S_3fGdLAh-L4m zr!#lgo}N^gHvpH+J#>nz!aB`r`Qp-|^VQ4+V@7 z{c}CaY6iGVTP!Os(>)E0aPeH;jHNxdHcJ#hr^eQ6I%zVc%AzCd2(&?MuQp5S_K07vM5Jp3bst8&~eEr@1n3P!iEx(i_>%NMbx|TLPlKt}+oCWx% z)B6dY7VxmV&7?J8zF$%+`03Ccvr=$yGR+G*ib`UB3k( zk>(R6G0>+&uEuf>l3>=*7Q60DDM8-Tg_0NWF}=(gfgI)+mcH*jRUEWl=I^=}#*nvA zql9r=kA)P6--O;osMnnq4DQfWH;3;&4o(R7vTlEkw8(~w-?9C*DUh$F-BB>>B3uJ` zLp>CJF#Sv!p*bZN_&^}?9la%|uCvqom zU+{6CxBna-(AD8!K5y^!yxYSQse+w6C7PWOmOaG{cmt!|wXGR}8ToU4%=ieHC%C*D zkNDT$zo)?DDMGlsXdqpwvT%;#e^B;}H^=hRkvif-+>2eZj7K0o8TQVfjiRL+?xRmF z^ko)7kFT~jhb$*rxng`QvFN^|>aT%*HyH&bb_Mw4W~uUp(&&{rPV zvzBNv@?ZC?!jm`CrOIVvqRtTf)4l(vZ9V>4ogYc1rL61?VAa+~r;WL2Fytg-%xYDt z&-A3~bsl6M9sD9bPg0`#Cj$*us)mf%`w7V_XZvdp`~&z{LruDF4nBn6tN+-wttDi4 zz;w^Qu#2~G{^H5dvhgF3!}5H1Zp_g-g=#J-feZmj>e{da6~OYq7ZLrx{DT6o#}(ao z7jJcHi`70qH=nN);ojeg))BNnP8r^TlADF4dx6HPdSysmp&bDL%9E9Z0Iwh1qmKgh zh-BhsoRIzY&;`DEBfs8i@c6V3oGvCNrUA?uGyEy(fT6ho2J4m;pU)>vUSLI5@8f%Y z__tk&*R&cm>07to$C>!+b=t^Lqpj<15+R8&fIOS;KL)6yHoFT0tXu(Z33yu z%R9 z5a`hAsSaQ71#JpQnoaTRRXtycyXJt7{#4m+YX(iRSum$ARvRFO!oq@a;>+FpI%3C< z^jC@#e$MgLk1-mOL&H01YqI??czz3hIGjIJC#CRAQ9=EC|f)I2psJS{7uM z<&yvq2E^S720qs>0-tg!Is$+dnL>GM~oplH#vB}n+GJeKa# z((4g3y_pqIG#xRa-|{k)r6t~D&)7zLS6K45LSK!U8Owc^*e^*N`c1tWe0 zrWcGsQ%row&F#RYlglo_5sUujGU`mb#etwndVk$hs@bdM8|f=Ww$FrG+e64Ik9%pv z$IHem6W3CzcB@n%l9Txu$KH;up}`xM_x|0lj0 z{Z2}1O{ngcn@$qAsjM5>A}V^#(e7@MizdK=t2)=C0k*p9^}u&b;Jr`p`Y&3WU7N|e z=LH(r`;hO4JUZq+#O1~N8PN?WyB#-4@1y%`wr>k`Ku`D7`$^Zq1jl=lS(XPvlh*#3 zD?bA4%FNP0S=SA-ZPyb#q3>TaCkhT!$nfOGdnCZJs;-|XY#}4IffXb+0El+?y_b!B zAS7&0ecTB^11lQPympSWclBKL9=2_mjr7sf^@!}x`q`BpD9rF80hXdEZFg4$*ul+{ zwT(?D*$m;bIZKTeLoP5jwmZr&Az>pH?#!sTxNo?}c>jXKH>Mt_?om{|$NQ+sKfLjq z^VNB7R8Rp~&#hvo_e_=A9Z|$$Q-CBQ+^f^#h3L1Pw+HZQpX@F=@WB6AnP=GhB-87H z>+gl-`Heljzj(8lS)Jet^=i`ETQ9W}`q625`M!7#to~YoEStkm!RT-&R8a`)gMZ_YAS1p_Qo4iCnbIjvhjmA2UtAf>D~To}MM@HxX)=;}OF4r@ul zl21Vp0X~MG2l26>{Z{CvI0c#n2)uuAW7csQa(k?uQuxDSB164JnoY_hvBY!!YD*V2 z^P{1$vg6jaUapTy?t1wo&->0OrgVs!6A{4*1R_AA`E-7Oc;a=?OTOr}GYAAo|H}!w z3Y1%We8Bh!u@4Yk6yR+1=Bpl#dS-Sgz?&bkWDN{v6_vpLlw}{LDyz^0@9f@H+w$P>+KGad55>Go9;QWn<$uZHPisAXJ6h~4(mI0Z+nD?G;|clTb;Kr9|q(M z1PNhbuMiLrVq;ML89{GvxlUbNeZ6vPYugji$H_stj#lrxcL?}mgVlD7TR_*r>-tM} z?cKU;Ih_tcoZQhe>MUsX@bq|_;eAC<384P?JiWNz9(N2K=GMeyBK$udx?XLsuWK!= zZ-27ao8C#q#iN2t$VnA6Rb>mjaD1e;w_BH%TK3IiFSIQ9zR~j#F5;$$(lxV$S|T@B zHWFV}H8%PK-4HQNY+@ds@T4SF zBqA>VzN6ju3av%#dci)lXn}|Ud~v{K&(3sCm+$n|2_M$lVB<$5w6vfP-gdly4NN_X z;rHM<$n491>{6g((dE~c20yHSB+M}JObI-Q=xgA1E6Jb#3+auO{sH20A~FY4AE()M zwavc)A-VnLd?;f13?NI3-K-a)Al;aI3 z3q+QedH$4^?os%n@Yh@bDs1?iWl?Qy@Y)Mf@Cc+U=4`aC_XN#T@(&5cYU9_e58IgG zox5*i%yJb`6a&+nV=VHvF3Xg5Rj}+*l|5(WYKTmi5*{n$GqN%27 ziz!tXnpr|@`%P?|UTY?!2&TL_i`ZXmBSe$=rJQT@rzH9PnmgYm^wN`tR%Br##d>*2KJ>0$1dz<^U zPnII^58saDX+iU%MG^9eimPFTqATPk+5u-hbzgDtEn-C=b4e_h(f7Tg}l4v4f z#_)_Jj;t%HoRTc7txcOuQ@W(A$$U`1W|Io9M%`kzQ?b$HZtN7n@IbJ2q=T$qGj9Em zIUhxjo3dUAVodwXAZFfFM(*XNq$oiJ0wbWeDzC-6a86OUBejAqZN zlc3iursatxW`uB5B5A!;ja#A06R?;IxaG|=PxjUF*i@{39j%1>K|1K5GA=>i#NFUA zsp8kt&AZu)P$ftyuG#ixS*ulPcI0}DluVsUGtE^RWNUG;VLFh92 z)$#=cVs(9~FU-WRD7*CHYrzPAqu z*{DK&weM&JFC$ATC+iF#Ltx_I@2#w9$&AYrny=CTic#%~^1_1V7(^?zb;k3|-ek|{ zxCHZ^tB|HGCoV1(pVWY%QMcV5PqWOV0sJvgTjK`%AXZLAez=76_Q&Zy@$)lu2}~=YZxS%}sS(n4 zMN)UiO>$-aj3pB`g0d<{Onf5vJK@#bsOE9HW(|*a0V!GFoP30!eEZxlx^*E>HRRAx z_9Tp5pa&}Fp{Y4U{8YR0&(+?UU0hm*AE{&pb(f5m8ApD;k<;z%?980_%cHXz1AWu@ z;URXToAlSN+8ebQbJj0fjW-=t)u4);W*uxp1OVo+;>z}STlKz3T>Xe<~v623qg?RlsKuTWneMF~{48`Yjjw(t*LbX7Dz&X%CpE~a2Wk5nAqM==#^9)2(!>VTWhBXK)4@ZpRi zS0ZvPWG2r*lJA0wwvB^Bu+yIkuidE|koTvch%}fF)V&EqF~;EVq>0#2>urQ53ES8`q^E!`m#DXWS_ns)Q*4V;Hh^#54DR(dVZXfGc6f%@ zy>mA!z$oIVCH_4-I=d5~rv)u*FAA~%>jMk@oQ~nAWX9lld};!062O!raNRr_Kbgp7 zcA$U5bL3odyd)h7Wxprn75phoGZKnsLP%KSc<9Cj$erJ4;Eqa03_P4j1~Zs#iUY9o zzjVk&i=nxH{`tDH>(I)GZ4}Bjd9JpxL{;S#X zHCKk$^_}3XQas7Lpxy_HxO~>mYob)J*r~CZTswoP0;kXOC$mXCNZ{7MfLlW~ZDqAl z{$P>(2=5Rtu`)NXvkMH~XO{|tCqDFcb$N)(O2b#c`em|n$4KbQdvy0!HM(7%A_f-m3=?$;ma27twq5?iRv?LBJ6cr>BytS*Plh1i01hE5j4DV_4KbYx8BGBrim^x7o| z+Rp_3DlBB*;WeJ5Kn>YkEV)5Ih{~gc>+*R} zqQztxkiMbpvWtXQqY)nEW9A;zy72V}u6k9=dyJRH<#0_47MABwn3qOUJXy=S@zCRY z0pjy-w)L$}uUz+0rKQO!>P#)#Z>;vvP>qQMS|&6MkSwS|Q)HMj+J1bA$?j0@IjT#3 zdwN3fsO=hhm=te2IzBHf_!E=+h3Dh;`~c0}_mNF!jn4qc%PnpVaS%h3)$NQ^ME7Oi zpS#?4_{vq`$wY%PsM|!I2CO*l)@|AFq^18u!J~8OlBjild~WzAe6DLzJyZK*#tt2G`|rVuUW5s>-g5+yk7&yl=PqrIj&TrU{2fw#iI<+yJ4l*i%}K8VC9t5o4z00biv}M2+~xH1 zj!LN1>Fn$4oo5#WhQ~fmJ%L340#%pWn|G-tUML&R(FxJ+OV3_tcagH*L^>H&;^ta1x0NMphXI+QZ+U!4xM~#YNDTx#^4Bw zW#4Y?{+}71jl`q<^k>qKWM8e|;@Q?P7Q4qpOJ7%1c9kDh!$7LjZ zm$srPlTH#vSXiDBRdW>x2)kDS1K!OQ+!&S z$WLz;E%x#(!SWS&$Ba;d74{k+Ljc*o#jP-G{arB2?eYD4N<>a>V8ksty_zy~rR^;^ zwksEexikM74grDDNP(E1;jbxgE2bgE*3#cyPkU|X`zHUKs>qq_@GjTrxdCy4wZUn6 z4io~~`!-_=9}9iJqdOS;#q)O=&Q~TTR$WrSmd4<3{@7X$Y&pdy#|HrcP30$A#hFg| zZ5#XxRB#MN5HkM;(Qlr8r&$ihh`u8s)r1&Hsh!#gR=qc<=-8;_CCgAFB@0-AmlF;k zyhz{2)obyW9GT)ca()sPveDSmoD)H2u#)un4W9M-Qr;D!rm`R*96yzKX2&flb?JTv z7_C9%TS39_g;Oc(V5ss(ouoiYr#~@}4u#j1fPC}(3^jA&WKeqrtFseXDX|LsZ%3!V zD9B<`Py`BBa~8hXvejAWNcP){12Xo>As}@7@6RJ8$>OFfsIcjq>(oZ{?ZAO*T?^x2V737tUOhKm{(JBWXKgu@&&6V6 zDqsOhDl5ZF@E8cuQCEvmFQ2YQ)5Jz6_4Z11Rz}7p3On-CA%;fH5-x`A%sWRBJqUKn zwROLXI`big#8VJ0$+eS3&AV*Sz7`YSu^Gw^VgpO~bk7nU_|{cc`jeE8Ej2l74I}B^ ziAcw9$i-%_CR3|LRb!~+dJG|Q(fxVmGWf=DPt%0p=$(tAhTN#18=FFXVK75ZhCKhG zWsLsnHJ)d9Ql=Piy$)!3|1Jt1UVKeohd@_u9b6C-=$68Wd2rLNS?C-waxs)`KqO%z zVMPaPKVFmvD#JXy*w^lN?v}zO-e1RL>Q8)|VWl3x^cLHF*c$F83@ZE5TKB)VKM$%Z z#-T|{RWmX2%IJN31w#r6pTC!@ed7xo!(gM81lUMftCC79ga|zOLE|vudE>m&%1{%? zr7wNWt2U_CSN@@D6BUl>bBA$jq@?}v+eAAy))v_+uj=t%9Ia`SD^-=+zf0rhO)Nl1 zfoA6Lnk)a5QuN>+|K#)?;jpQsgai2F_)HA`c1FDGT9!j1+}&+9z5LSBqSzwUjkcrn zBcl!CjgT613&Nl$4bIHTm`9}K`1*u`?&*=cv|yaQ^sF=)0M6?0d4t^|BY;p05IAGx ze{=$NQQzpw%*!jKXvjMT?+9dN!|@}8+n8Dwkj2l37Q(BA1qwZaoGM>)%_ZO~5f9e` z>-n3mzVr;^uv80%2miomlAhr~W9kF~zlIC!>z(8ME8Ddr3yveVq`WlJU&l*q3o%VN zf;B#WkFyh^JpNwnGazRV$$+wDTuixv1 zQdC)i`R=WxmE-TycGBxrXa4dAaCovOs`h!OpRQEl-yno{jZO5USY|*x-_2YZc$#bl z%jRl5_LwJi%Qt%}@IGB(M2~WW$g>y{0XaCbx1AR3e4{oCfQ%?awuNm?*+BWHfAevE zc)B%1@Q^!aNu{F#e91x0?a_bu<0vd?AGpxBlZEo%lv5*8#kEELRS!hMDtrYK_C-N|?1;wAOgxWcE-!4zA}`b@p{ zD}JE8tr&#EUZBvXC?*H3&PyJZ z8pfe|ub0{iyik7Ju1xhAgYNu*>;xq4YXRSP@+(YuBP3`BJ`QJO2c}B^o}oT=v@<4W zcRpu+Cs>8iPz1KAK@_gnV@>?z zBy5lxNg5ce0d5&rlG3rWDN(6K0;%fpu@_yBq!(VdY(Vky_l1var!I+PWKd^QUf>z* z!mA$d6>V{FsKQoUM_rUd6bZ5)f?)nx#5ODE3Xp=?H>h^_|{ zE|Oz1$(gIA^=8!R6LFbAGM?NTK%i7pW^?JN^a*fApKB}8E91*V4>Elza@^d zZe6=)3lfY}(uXbyor3nWczbL;fT|8jW{a;@>Hzv>qv$?OJ zf|1|T4cM5dwxTnKJ~OV{_0~@o7%oqrgSIJviB;UwBYNi9@MfPT!CdtQ_>rQ_3^EiM zv0J|j{d!G0cP{BXorpgGkLglpQ{yL(_a0Q5Av#V>&wV;Mbws zu6xmrE@pSIdFNq(ppIQZ+npm~$-*IPTYS3=(2=g`o8p zE4ymR!O*B@h6LBP!O(Eoy8F}F(8ZFHLn?`?nTb?&ESRLjxyG`ht6+DqV@K7jBiCLU zCRdzZ!++$&4ZK|0>)%3sCcR_=W<|Mg?Z+lz{?>sf8f#Azh7FIIQ%Z<$gEMfpLZMom znfl9$boxmvzjh@QM3?^u=qGVOpX*B*i(J`TX^^P`<)+5+OQMBPG~-9KtO892j`PJq z+vFbIsBvODC%vA$!}J{VuD8$)kTZQJcZLr{4rh0N%>U6N6XPDV=F{eE=FXb!rO?TJ z{%ch53tKu73nwPVHE{}5(7@C=^*sjYgz+Yz|X$e(#`ZC1*Soi_J= zMn^NcETm|&TNKB^iC5qQZiyYZrOiL^FT;#sD@__7k5>_z6)wvoEOBCR8G-DC;`Tf> z(FiP@$EbW;Z87OHK*1k{XD=avJMBiwi;KwJK`5GZ^@rJp!i|p!`+u{rmpD*EN4;o|$W|dCvXZ=RW5-b8-&DDNwTdsHic~Rey!24zg(!!5X^7uPR5i zNRiL$+Tk&3&AVahaY6V#<5e}ofQQ-#_u z-4{a?5b?-2EaKTCdn$e(B0HgArg47ad6hAE*FQHWi}deC*_=nENP$R(Eo0ht!&W@M zyHyc?p9lXB72!@Ej>8s~E`;49#^+$_+Y8B;qxiY_)313=S3AH6O0^%%OG*J#($MTO zh{lv15Q*Lb4Q|9O3Tb5S?7et?)Ygd!c*OWxnRBP4=%x#KZ0&=ruv9pAcLInN|I(r;sUZhBVc_Co z*|d`I=uKmPX86@SVU0ZZTFa)^$n{mT`qt@}=0@86`#Xgd4gT!UIgc&Q%vutYN~*>E zIKSuy09FI;(0$w}k=w(C1TpJR?>9ClQO2QwOB{%a|gqOPW5lcJW5saXaZNRj@w>0hq~ zm7jLWKZwOLQTO2m_WD#drYE_S8~SyLaBe8B)?nF-V&X3!6o+tNb27ebc;o(fSU6gx z54zO$;(sS&zpc3E8TA>QEtX8JgPVFfpm22i_GPAX*B5EFmdTb{(pUnf=AJ9++J+KT5MTXAKSKmez|F zAS8x&Q!j{_-ziM4QBZoPGx^({Jm5%B z3_ni{VzI#Ji+5NWKcvjLi+fkY#6%6;wM=bn@(>#YYIR^6fs$LS4uZol$Og z5u*K32!u%A2p#qUU$A(^Jkut}GHeu|9xC}>4V2buRj^H%k{2Dvk#kPnLqt~ zF!QSXlgbIMB0UKao?|Qh9R9 ze>>2q7wtb&_MM}?)UCf4{m48|0=pLW)!*QWKEoUSd~cX`>-cm6f`T{ai*7&31yLdv zQKOf}Pw^4N=oC)KRNa@+U=~yKnB6aQt95I3TJ_jD>P35-qZb3JwoXm9qcUSCB5a#K z?f*K|)?!SXFfNidiFOt>U^RxbCzNi_x)z)E`U7io`se^5;J7`66hYC>O7B!_r|Z3! z1xy7G3Q{M}|0(KO;?u7l#XHj`ke14G1w53Vp=-v9!JG)D#)N5PW}fo5ori@uXvdPB zh4Mon38m9*!Y#{G5MfRG)oUDS64(e@R^zrDeqi5*WcqMg&W1 zH97~y(XIpM?Yvs1*gPxLkJz@{+tf*v4Vlr1VN8wjy7&9{(V_DVq5ceB=*Cfn$_&>p zaVUAF!@Z*F%|_JRp|jAA76=Qm(~(w)_Z@Sj0mNMBpQ?_?%sxORv1$+v#lL64XZ z%GiZMPWSyz3D5VYhc8?olLy9oagEzX==BwT{>ierz{igk6`|ni#`|wfGx#B-ra*`< z9n0vphjOU9jay^*Lg6g^@0ku=NDwWnqZ&a%)iG=~*&4DWpf2YL&gW_p4d`nUbN$O} zIg!zXbN8%sGs&toJ;QZN)XY1%&iwQkf7L{iVp5koLlM~9aEcK%mn!ilu8p@XQM5sA zNZgkC!dnvFL|v<&FjXCrT&A2fk^JV(4|1q2A0HosI3oVd8>J4AARpg8h&=nh1OJ_p z{{sv}{};DV+`6`3P_!k*zbyPCLQk&SUDlz{EPG}YD7&vTeW#Y>${h9nrWnTQ zsl{k7;pu0SP8Ht*ckbzj68*;(>lWF`W4w+T-^Pef&(Uck>y&F3xv;yoT<^T7LEgOfNPkGf5c?BJSVZ~cdWbHR*+neucCQ5clns<`SP@jZxv`h zR)9R*n{#Lo(Cp&%gQso!T^L1bpX0_bY|Vyp45-0T032SMQy< z`A`WN6g-wG=-xv;9vPd6Oq{~697V64O6QDjb^Uj)lAc^ESK9%CqrQ2!9J*pwP5dV61SnI}`<$`_m9C3UrSF1;yv+2=OYPxG;R>&3)FGAdn`fu!yvZP9AoJ@N z?4w$2XH>z(L=s!XDVPkyplr>F_W_<&ue}vbzoE>Y7Z|HvpQI_0(An;B%;(fMVR(6J~J5*hHi8IX1MfJ-hXI zmwkP`UrVr*jcYq{k$_!uJ$_nOO(Y0{?aM2g(O(CMb-{MPlFZhYEHLhPQw}tU^Z@s?ZG6I{<^Rh z9~sQWk*TNWhc(kI)XmGP7p{lMHGZx^kFl-}mYxQ+!Nn(!+OzpJ33CO-p1>GhZ-T!In+1T``0*)(#UFQSXmJ*X(wi&HFMOym2HbnGj|+-Xr#Wp={13X6@&lVHkE_h8 zI>z<>)ogmi`g$MNU6Oo%?0+vxvAcKt>#7c|_$zW!+u)pzfIX2La|zz(P!<)tyO{BM z8%W#zY&kqQYcQ3#Z>&%^U6$B3kVczw=ze#$IJFCm4NSvjx&&GCl?J2R#ujkY56*X4$oxW&A4&A!<}E9 zpQ0)U6<`E`l!BEY7#J1L((#G79P31!K&5#EB6ZlVTt+Ae)c3F&)B9-ZpI9**Hg;osU{8j696 zpH-u+!(RUaKUsSi>b(*M^c5(q6}i*MQK(e(-PZFuLgH$I!^bplrMz5?+FNwyY2vUu z_TKfeDXR6B9|8Iy9t}9OW*0s--PrGWWcrxO_dtLm`bgWm-SAPRRi~$lBE5FnI|5$w zlSR*}qmfoOpK#_K;*M%Kg?ZY@T!Ds+A}!8I6T{Ygvo#9UCqwbcPKS?l58QZCfw<9g7z(2-S? ztWF)dP$<%#D@F!-xuIkBd1~)Oh@e3o3Fwi0B@;LK!sZi6R#q1xF6+qZ%|+-H{lbS^{h20H^Re(m^51X#4LA2sseD$$%akJB z*ln~|abx5pA9t!Huo?*XYe3k1+xk-$nP}>%=nAQ*iv3AtA4ogF!Mx{Wq*lh_ZG6W> z3#lf_^tyG$tVOYb5$s`VuUJwXwH&E*v1qDVT7EZL_fBLqHcZdD7wPNGlqenN&a)I( z_Se0srM)sI2w2(pk2S~1Z$Y5<2yU0vHNcdf7v5h#(FQBiW<313BH<{9P0n{yNPhj~ zTEgO@WD>LQJ%y@9D#^+~U-OTLQE$^)ulLTc_e15eg>(|5?Q4D{Ndp z(U zJgu2vqNilqJ=r~4wsXo&zV5i5_fk28cj@?nNuE%|1jill&@{07$#ouh!O`N&4rC|b z1uQ`w8;|)|do~r1vTL1unZ}cUy^NTM#f>rUx+}LX$hUG6ZZ4#hr;mL*-o0IQNcCt@ zW%}#DW_`5i>eEV1XyPFU>m8Hs(*Em~jTW3)p0oBtJKqtD@?W`Ubin|<0k67aY!Y2c zk!mx$pnlD}TtI}!u;#wkpIPg3?4CXTC?=H$0!huE`FA&YP^f?R42}|lSAPDp`x>!G zh$|I-6N5E;#reRYIpcGc!c_r;q1J;BwR|^S3V*CIP%uK`ie>z|`QBa2y9Q{}Qhl%Q zA0+tgP5j`@#PVSkH(%ZUD<(D-%O$5bD+9Yk)8UY1L+W@lih>#bixX3B6bUMz&BK{; z3y?g^-BL;%Mcs85%gVnMer4z8^yVbWj^yatN!VWTzn9@7cGdTGNNga!Tew|GA|Z}t z*z0hT&6cbv{Ga|DiD}2AjwDd-Y$2R=SIezbQKBG;mla}v?!6V5&aVwb5pSzeT;HUg z-`DHiIb+!jrhF-0&Mfi%I_pzmQ4r|wt83|EFGtfGdR;XVqEbtjmRC2}wkv=!Jj zO3WSwm4M}}w*Wzedg=Nys7>w(?X`jH{UC%zTe9P@0?Kx^<^706%*U$-2l|GY8T1#>q=j3NQ&}eSj{uN;BZDj*97!x-l&SjT>7yf z`90;R^0%~j0o}B29rD>K&Ecl9Tnu3t_Hbs##(KhQeT9w)Z+6f2?ER(tcSskIgEO3- zHIskYB9!7w+CBdLMhc6HtRzd(hMf2D3&N%eAFQ7{-vJbNlY?pjr?alXb#c=#syDD- zdN*{|o{ahA7~k~mVP2>4za9WEbweNfM%xp6m*53aDJc13;YFqMjl|(0FNbBYJZ++h=B;HtgEWqrsW@6wLNP`*&bByc-oFBKCDwU)`_m0^C@rJ^6uy&0 zQuO&e$FzI4w;U4Zy}a+|Pk|@uKJy&|Yj#lV^>jMMV_7+CTwYoom5U^w}EW2Z#l<&jV2)FJ6 z=d*=+rhFAogMYKK*^hYay=9eARCg+Sx@ZRhIsh991w>L6?cFQq^ktK8K{q)e|WnvX8&?ZmO^Kwa= z=knwrWu9<)aZWN6F9<~!<9u@-_K$a{|Y0Chx!hjEaU<$t4*fRD^ByuH*N*W0QB=bJ5^YNy=p375TRPaC-LbKx_q zm&U}d?K%6)bs8-pdpYs1p=Zy~+qcUc6MyjA%Y9jyEOR4cX$!YGV-+8@VKxR2v4w9H z%x)vYIy#%GnMYmM8;dCQG&TPzya2H4P ZkQw;m)b`{k0BB7Q(tfC~S*vav^*{AQH*Np` literal 0 HcmV?d00001 diff --git a/apps/gallery/psp/Psp.toml b/apps/gallery/psp/Psp.toml new file mode 100644 index 000000000..4349aea7d --- /dev/null +++ b/apps/gallery/psp/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Gallery EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts gallery +title = "PocketJS Gallery" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/gallery/psp/icon0.png b/apps/gallery/psp/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..5716ab8b3eebec059690cf78e80a10d61cec3f7a GIT binary patch literal 4370 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 M07*qoM6N<$g7o{6+5i9m literal 0 HcmV?d00001 diff --git a/apps/gallery/psp/pic1.png b/apps/gallery/psp/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..c05334e6e305e7dc9042ee52a772287d7f50bfd2 GIT binary patch literal 71119 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 literal 0 HcmV?d00001 diff --git a/apps/hero/psp/pic1.png b/apps/hero/psp/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..0b3533a49d993cac0f59c298258548944b02c69b GIT binary patch literal 30930 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 literal 0 HcmV?d00001 diff --git a/apps/library/psp/pic1.png b/apps/library/psp/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..e22f5bfee68da59aa05e433b53860968c3d18d09 GIT binary patch literal 25858 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 literal 0 HcmV?d00001 diff --git a/apps/music/psp/Psp.toml b/apps/music/psp/Psp.toml new file mode 100644 index 000000000..70e128722 --- /dev/null +++ b/apps/music/psp/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Music EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts music +title = "PocketJS Music" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/music/psp/icon0.png b/apps/music/psp/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..ba677944ee2237a9077132582979c045b3e6ff66 GIT binary patch literal 3700 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ⅅ_ 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 literal 0 HcmV?d00001 diff --git a/apps/notifications/psp/Psp.toml b/apps/notifications/psp/Psp.toml new file mode 100644 index 000000000..dbe317bb2 --- /dev/null +++ b/apps/notifications/psp/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Notifications EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts notifications +title = "PocketJS Notifications" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/notifications/psp/icon0.png b/apps/notifications/psp/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..702c01cf35d82218648a5ef88bc7c33b55c84e5d GIT binary patch literal 3997 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 literal 0 HcmV?d00001 diff --git a/apps/stats/psp/Psp.toml b/apps/stats/psp/Psp.toml new file mode 100644 index 000000000..310b10f1d --- /dev/null +++ b/apps/stats/psp/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Stats EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts stats +title = "PocketJS Stats" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/stats/psp/icon0.png b/apps/stats/psp/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..b4b70fdfae92c958e55668b2ca8e9c4bea37d41d GIT binary patch literal 3739 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 z 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

          >n^+c=b4hZo=ZclvG!h$_;L^`^ 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%0A^xu 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 D7$Om) literal 0 HcmV?d00001 diff --git a/docs/bench/three-frameworks-ppsspp-2026-07-30.svg b/docs/bench/three-frameworks-ppsspp-2026-07-30.svg new file mode 100644 index 000000000..7bc6cc86f --- /dev/null +++ b/docs/bench/three-frameworks-ppsspp-2026-07-30.svg @@ -0,0 +1,192 @@ + + +PocketJS on PPSSPP — Solid vs Vue Vapor vs Octane +2026-07-30T00:48:05.365Z · 7 samples/app · PPSSPP 676724ee5e · pocketjs 4e097c0 · software renderer + +Solid + +Vue Vapor + +Octane +geomean — Vue Vapor/Solid: work 1.11x · boot 2.02x · size 2.41x | Octane/Solid: work 1.66x · boot 2.00x · size 2.96x +Average frame work (lower is better) + +0.0ms + +4.1ms + +8.1ms + +12.2ms + +16.3ms + +3.7ms + +3.6ms + +6.5ms +hero + +4.8ms + +5.1ms + +6.6ms +cards + +6.8ms + +8.0ms + +9.2ms +stats + +3.7ms + +4.4ms + +4.9ms +library + +6.8ms + +7.4ms + +14.5ms +settings + +4.5ms + +6.1ms + +13.8ms +notifications + +10.4ms + +10.4ms + +12.9ms +music +Boot to first frame (lower is better) + +0.00s + +0.40s + +0.79s + +1.19s + +1.58s + +0.65s + +1.27s + +1.25s +hero + +0.58s + +1.21s + +1.16s +cards + +0.68s + +1.34s + +1.41s +stats + +0.63s + +1.26s + +1.23s +library + +0.64s + +1.30s + +1.28s +settings + +0.63s + +1.26s + +1.26s +notifications + +0.61s + +1.26s + +1.25s +music +Bundle size (lower is better) + +0KiB + +91KiB + +182KiB + +274KiB + +365KiB + +103KiB + +254KiB + +314KiB +hero + +103KiB + +255KiB + +311KiB +cards + +108KiB + +259KiB + +321KiB +stats + +108KiB + +260KiB + +319KiB +library + +117KiB + +267KiB + +326KiB +settings + +108KiB + +255KiB + +311KiB +notifications + +101KiB + +255KiB + +315KiB +music + diff --git a/site/assets/blog/octane-hero-jsx-60fps.png b/site/assets/blog/octane-hero-jsx-60fps.png index 3dd1316df473d067dadc21a6dc56b55a7db46fef..41c9fccaeacfffbece7faa36365ca3d950d1329e 100644 GIT binary patch literal 20687 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 TBx{}k7OaMVyPhMR4M_hNy)CvZ diff --git a/site/assets/blog/octane-music-leaf-state.png b/site/assets/blog/octane-music-leaf-state.png index 9ed3c3a7cbaa0cab04e5321ec904998fd2e5ad5f..9af703bb75729bef89448709ef1fe45eedb446a4 100644 GIT binary patch literal 24716 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 CunmI% literal 24699 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 { - if (props.playing) setBarsFrame((v) => v + 1); - }); - const barHeight = (i: number): number => { - if (!props.playing) return 6; - const v = Math.abs(Math.sin(barsFrame * 0.15 + i * 1.7)); - return 6 + Math.round(v * 20); - }; - return ( - - {([0, 1, 2, 3] as const).map((i) => ( - - ))} - - ); -} -``` +The fixes ship in this release: `framework=octane` builds alias `octane/profiling` to a no-op stub; the PSP frame loop gained an **arena-pressure GC** that runs a collection when a frame leaves the bump pointer more than 256 KiB past the last one (steady-state Solid and Vue Vapor guests never trigger it); and the Octane ports moved their always-animating state into leaf components so a tick re-rendered a handful of nodes instead of the screen. That last fix turned out to be only half the answer — the next section is what the other half cost to learn. What the fixes do **not** do is make frequent re-rendering free on this engine revision. Post-stub, each re-render still retains a residue the collector cannot reclaim — measured at ~80–115 KB per frame across the per-frame-state demos — so an always-animating Octane screen has a session memory horizon until the engine is repaired: it outlives its capture window, not an unbounded afternoon. The stats demo's benchmark window ends with the arena at 16.87 of 17.06 MiB. That is 98.9 % used, which its own screen almost predicted: @@ -185,62 +163,131 @@ What the fixes do **not** do is make frequent re-rendering free on this engine r Along the way the PSP host's exception logger learned to print tag, message, and stack — a `null` exception, it turns out, is QuickJS telling you it had no room left to construct the Error object. And the debug rig that cracked the case was not on the PSP at all: a scratch Cargo probe pinned to the exact same QuickJS revision, evaluating the real bundle against a stubbed `ui`, with heap histograms and a GC root dump. It reproduced the handheld's memory behavior byte-for-byte on a desktop, which is the only reason a three-layer engine bug was findable in finite time. +## The hardware said no + +With the emulator suite green we put the release EBOOTs on a Memory Stick, and the real PSP delivered its verdict on the hero demo: **under one frame per second**. Not "a bit heavy" — a slideshow. The rest of this section is the two things that number was made of, because both are the kind of bug that hides in plain sight for years. + +**The first was not Octane's fault at all.** While chasing it we repinned our QuickJS fork to pick up a known interpreter fix — and the benchmark numbers did not move by a microsecond. Byte-identical archives on both sides of an optimizer change means the optimizer change never happened: our PSP build exports `CRATE_CC_NO_DEFAULTS=1` (needed to keep the cc crate's host-flag synthesis out of a MIPS cross-compile), and that flag also drops the `-O` level the build script asks for. With no `-O` in our own `TARGET_CFLAGS` either, clang fell back to `-O0` — **every QuickJS interpreter PocketJS ever shipped on PSP had been unoptimized, since the flag was introduced in a 2021 bring-up experiment**. One `-O2` in the right place: hero's average frame work fell from 387.8 ms to 154.4 ms, and Solid and Vue Vapor got faster retroactively too. + +**The second was architectural, and it rewrote our own advice.** Profiling the remaining 154 ms on a desktop probe showed the frame machinery costs microseconds and a single Octane re-render costs the same ~2 ms whether the state lives in the root or in a one-node leaf: an Octane state commit replays the whole root. Moving state into leaf components — the guidance we shipped in the first cut of this port — changes how *often* you replay, not what a replay costs. `memo` does not help either; component bodies already skip, and the cost is the replay walk itself. On a 333 MHz handheld one replay is a multi-frame stall, so the only number that matters is **replays per second, and for anything continuously animated the right answer is zero**. + +PocketJS already had the channels to make it zero — the same native machinery Solid and Vue Vapor demos lean on: + +- **Sprite cycling** → the native `` atlas (`sprites.json`, host auto-play). The hero, gallery, and library spinners became one 256×128 atlas baked from the eight spinner SVGs; per-frame JS: none. +- **Looping choreography** → baked keyframe timelines. The music equalizer's `|sin|` curve, phase per bar included, is sampled into four keyframe tracks in `pocket.config.ts` and loops in `styles.bin` forever; play/pause just switches classes: + +```tsx +const EQ_BARS_PLAYING = [ + "w-2 rounded-md shadow bg-gradient-to-b from-emerald-500 to-emerald-600 h-[6] animate-eq0", + // …eq1, eq2, eq3 — same bar, phase baked into each timeline +] as const; + +function Equalizer(props: { playing: boolean }) { + return ( + + {([0, 1, 2, 3] as const).map((i) => ( + + ))} + + ); +} +``` + +- **One-shot motion** → `animate()`/`jump()` from a mount effect (the stats reveal's staggered rows, notification rows), instead of easing curves computed in a per-frame `setState`. +- **Per-frame text** → a new escape hatch, `setTextContent(nodeRef, string)` — the text-shaped sibling of `animate()`. The stats count-up and the music progress percentage now write one host op per visible change and never re-render anything. +- **Phase timers** → refs that count frames and commit state exactly once at the boundary (a dismissal finishing, a loading screen ending). + +Average frame work per demo on PPSSPP, before and after (the 60 FPS budget is 16.7 ms): + +| demo | first full port | this release | +|---|---:|---:| +| hero | 387.8 ms | **6.5 ms** | +| stats | 279.9 ms | **9.2 ms** | +| music | 282.7 ms | **12.9 ms** | +| notifications | 271.2 ms | **13.8 ms** | +| library | 50.8 ms | **4.9 ms** | +| settings | 27.4 ms | **14.5 ms** | +| cards | 9.7 ms | **6.6 ms** | + +One cost stays, named: a button press is still one replay, and on the PSP that is a **150–250 ms hitch on the press frame** — Solid and Vue Vapor handle the same press in milliseconds. The replay walk re-resolves owner identity paths from the root on every lookup (13,000 calls per replay in the stats demo), which looks cacheable; that is upstream work we intend to take to Octane itself rather than paper over in the driver. + ## The benchmark PR #6 couldn't run -PR #6's React column was empty because nothing bootable existed to measure. This time all three columns are full: 7 apps × 3 frameworks × 7 samples on deterministic headless PPSSPP — repeated runs are byte-identical — with geomean-vs-Solid ratios and bootstrap CIs, archived in [`docs/bench/`](https://github.com/pocket-stack/pocketjs/tree/grass-responsibility/docs/bench). +PR #6's React column was empty because nothing bootable existed to measure. This time all three columns are full: 7 apps × 3 frameworks × 7 samples on deterministic headless PPSSPP — repeated runs are byte-identical — with geomean-vs-Solid ratios and bootstrap CIs, archived in [`docs/bench/`](https://github.com/pocket-stack/pocketjs/tree/grass-responsibility/docs/bench). (For the record: the first full dataset, taken before the fixes above, read avg frame work at **15.58×** Solid. This is the same suite after them.) | geomean vs Solid (lower is better) | Vue Vapor | Octane | |---|---:|---:| -| bundle eval | 2.93× | 2.95× | -| boot → first frame | 2.30× | 2.32× | -| avg frame work | 1.24× | **15.58×** | +| bundle eval | 2.91× | 2.88× | +| boot → first frame | 2.02× | 2.00× | +| avg frame work | 1.11× | **1.66×** | | bundle size | 2.41× | 2.96× | - - Average JS work per frame — log scale + + Average JS work per frame — all 21 cells inside the frame budget Solid Vue Vapor Octane - - - - - 16.7 ms budget + + + + + 16.7 ms budget hero - 4.4 - 4.6 - 387.8 + + 3.66 + + 3.61 + + 6.53 cards - 5.2 - 5.7 - 9.7 — steady state, inside budget + + 4.82 + + 5.14 + + 6.56 stats - 8.6 - 11.1 - 279.9 + + 6.84 + + 8.04 + + 9.25 library - 4.6 - 6.1 - 50.8 + + 3.68 + + 4.39 + + 4.94 settings - 7.7 - 8.8 - 27.4 + + 6.84 + + 7.37 + + 14.53 notifications - 5.6 - 9.0 - 271.2 + + 4.52 + + 6.1 + + 13.84 music - 13.0 - 16.1 - 282.7 - 1 ms - 10 ms - 100 ms - PPSSPP software renderer · 7 deterministic samples per cell · byte-identical reruns · base 3c14b47 + + 10.44 + + 10.39 + + 12.92 + 5 ms + 10 ms + 15 ms + PPSSPP software renderer · 7 deterministic samples per cell · byte-identical reruns · base 4e097c0 -Read the 15.58× with the last section in mind: it is the engine pathology compounding, not Octane rendering slowly. In every per-frame-state app the growing live set hands the engine's auto-GC a bigger walk each collection, until GC **is** the frame. The honest steady-state number is `cards`, the one demo with no per-frame state: 9.66 ms, 1.86× Solid, comfortably inside the 16.7 ms budget of a 60 FPS frame. Boot, eval, and bundle are engine-pathology-free, and there Octane lands essentially on top of Vue Vapor — a compiled React model costs about what a compiled Vue costs to ship and start. These numbers are honest to the current pinned engine, and they should collapse toward the `cards` ratio when the quickjs-rs GC repair lands; we would rather publish the ugly column with its explanation than wait for the flattering one. +The 1.66× is a real, honest gap — per app Octane runs 1.2–3.1× Solid's frame work — but it is a gap measured in *milliseconds inside the budget*, not in dropped frames: the heaviest Octane screen (settings, 14.5 ms) still clears 60 FPS on the PSP's worst path. Boot, eval, and bundle land essentially on top of Vue Vapor — a compiled React model costs about what a compiled Vue costs to ship and start. And the `-O2` discovery cut Solid and Vue Vapor's own numbers roughly in half too, which is why every column here is faster than in any earlier PocketJS writeup. Two footnotes for the methodologically suspicious. The bench window and its input tape are baked into each EBOOT at build time, which is why runs are byte-identical — and why our first attempt to "reproduce" a number by rebuilding without the bake measured a completely different, idle window. And the report can be rebuilt from raw samples without re-running emulation, which mattered the day the report builder crashed *after* 147 emulator runs had already succeeded. @@ -250,11 +297,11 @@ The [playground](/playground/) grew a third toggle. The real Octane universal co The music demo running through Octane on a PSP: a Now Playing screen for MIDNIGHT REPLAY by SYNC PULSE with a progress bar at one percent, a three-track playlist, a four-bar equalizer in the corner, and controller hints for focus, play and skip -

          The music demo's Octane port mid-playback — the four equalizer bars in the corner are the Equalizer leaf component above, re-rendering alone at 60 Hz while the rest of the tree stays put.

          +

          The music demo's Octane port mid-playback. Everything moving in this frame moves without JavaScript: the four equalizer bars are baked keyframe timelines looping in styles.bin, the progress fill is one native linear tween, and the percent label is a setTextContent host op per visible change.

          ## What's named, what's next -The gaps, named, because that is house policy: the per-frame-state memory horizon is real until the quickjs-rs GC repair and repin land (the ten-line WeakMap repro also reproduces on bellard master, so an upstream report is owed); the benchmark numbers above are emulator numbers from PPSSPP's software renderer, and a real-hardware spot-check is the open checklist item — the release EBOOTs are built and PPSSPP-verified, and PR #6's samples say emulator-to-hardware variance is modest, but we will not caption an emulator as a Memory Stick; and `gallery`, the eighth demo, ports and builds like the rest but is not yet in the golden suite. +The gaps, named, because that is house policy: a button press is one root replay and costs a visible 150–250 ms hitch on the PSP until the replay walk is fixed upstream in Octane (the identity-path caching described above); the per-replay memory residue on the pinned engine is still real — replays are now rare enough that it no longer bounds a session, but the quickjs-rs GC repair and repin remain owed, as does an upstream report for the ten-line WeakMap repro that also reproduces on bellard master; the benchmark numbers above are emulator numbers from PPSSPP's software renderer — the first hardware run is what triggered the whole performance chapter, and the post-fix hardware re-test is the open checklist item; and `gallery`, the eighth demo, ports and builds like the rest but is not yet in the golden suite. Everything here — adapter, compiler wiring, eight ports, playground, docs, benchmark — lands in [#203](https://github.com/pocket-stack/pocketjs/pull/203). Three frameworks now compile into the same native tree on the same 2004 handheld, and the newest one writes like React because, at the source level, it is: hooks, JSX, and a compiler that did the reconciler's job before the code left your machine. diff --git a/site/nav.ts b/site/nav.ts index 153d3b61b..ca3406a81 100644 --- a/site/nav.ts +++ b/site/nav.ts @@ -59,7 +59,7 @@ export const BLOG_POSTS: BlogPost[] = [ title: "useState at 333 MHz: Octane Is PocketJS's Third Framework", date: "2026-07-29", description: - "PR #6 measured React out of the PSP. Octane compiles the React programming model — hooks, JSX, no VDOM — into host plans a 333 MHz handheld can run, so we ported it: a universal driver over the same native tree, all eight demos, and 15 of 23 PPSSPP goldens byte-identical to the Vue Vapor frames. Inside: the three-layer memory hunt through a pinned QuickJS (a profiler nobody asked for, a WeakMap that never lets go, a slab allocator that amplifies both), the three-framework benchmark PR #6 couldn't run, and why the honest 15.58× is really a GC story with a 1.86× ending.", + "PR #6 measured React out of the PSP. Octane compiles the React programming model — hooks, JSX, no VDOM — into host plans a 333 MHz handheld can run, so we ported it: a universal driver over the same native tree, all eight demos, 14 of 23 PPSSPP goldens byte-identical to the Vue Vapor frames. Inside: the three-layer memory hunt through a pinned QuickJS, the hardware test that read under 1 FPS, the compiler flag that had silently shipped an -O0 interpreter since 2021, the rule that continuous motion never touches setState — and the benchmark PR #6 couldn't run, landing every cell of three frameworks inside the 60 FPS budget.", author: { name: 'Yifeng "Evan" Wang', url: "https://github.com/doodlewind" }, }, { diff --git a/tools/gen-demo-covers.ts b/tools/gen-demo-covers.ts new file mode 100644 index 000000000..87aac48de --- /dev/null +++ b/tools/gen-demo-covers.ts @@ -0,0 +1,277 @@ +// tools/gen-demo-covers.ts — bake XMB cover art for the showcase demos. +// +// Follows the pocket app-family cover convention (apps/im/psp/gen-cover.ts is +// the single-app reference): ICON0 is a 144×80 brand tile drawn from geometry +// — one shared family layout with a per-demo mark and accent — and PIC1 is a +// 480×272 frame of the real app, pumped through the sim host by the same +// runScenario the golden suites use, dimmed left-heavy so the XMB column +// stays legible. Writes apps//psp/{Psp.toml,icon0.png,pic1.png}; +// tools/psp.ts picks the fragment up for EVERY framework build of the demo. +// +// bun tools/gen-demo-covers.ts (all demos) +// bun tools/gen-demo-covers.ts hero music (a subset) + +import { createCanvas, GlobalFonts, type SKRSContext2D } from "@napi-rs/canvas"; +import { mkdirSync } from "node:fs"; +import { runScenario } from "../hosts/sim/sim.ts"; +import { BTN } from "../contracts/spec/spec.ts"; + +const ROOT = new URL("../", import.meta.url).pathname; +GlobalFonts.registerFromPath(ROOT + "assets/fonts/Inter-Bold.ttf", "Inter"); + +interface DemoCover { + dir: string; + bundle: string; + title: string; + /** Two-line wordmark next to the mark. */ + word: [string, string]; + accent: string; + /** Seconds of sim time before the PIC1 screenshot. */ + seconds: number; + script?: { at: number; press: number }[]; + mark: (g: SKRSContext2D) => void; +} + +function roundRect(g: SKRSContext2D, x: number, y: number, w: number, h: number, r: number): void { + g.beginPath(); + g.moveTo(x + r, y); + g.arcTo(x + w, y, x + w, y + h, r); + g.arcTo(x + w, y + h, x, y + h, r); + g.arcTo(x, y + h, x, y, r); + g.arcTo(x, y, x + w, y, r); + g.closePath(); +} + +const DEMOS: DemoCover[] = [ + { + dir: "hero", + bundle: "hero-main", + title: "PocketJS Hero", + word: ["POCKET", "HERO"], + accent: "#3b82f6", + seconds: 2.0, + script: [{ at: 1.5, press: BTN.CIRCLE }], + mark: (g) => { + roundRect(g, 14, 20, 40, 40, 10); + g.fillStyle = "#3b82f6"; + g.fill(); + g.fillStyle = "#f8fafc"; + g.beginPath(); + g.moveTo(29, 30); + g.lineTo(29, 50); + g.lineTo(46, 40); + g.closePath(); + g.fill(); + }, + }, + { + dir: "cards", + bundle: "cards-main", + title: "PocketJS Cards", + word: ["POCKET", "CARDS"], + accent: "#818cf8", + seconds: 1.6, + mark: (g) => { + roundRect(g, 24, 24, 30, 38, 6); + g.fillStyle = "#312e81"; + g.fill(); + roundRect(g, 14, 18, 30, 38, 6); + g.fillStyle = "#818cf8"; + g.fill(); + g.fillStyle = "#e0e7ff"; + g.fillRect(20, 26, 18, 3); + g.fillRect(20, 33, 12, 3); + }, + }, + { + dir: "stats", + bundle: "stats-main", + title: "PocketJS Stats", + word: ["POCKET", "STATS"], + accent: "#10b981", + seconds: 1.8, + mark: (g) => { + g.fillStyle = "#155e46"; + roundRect(g, 14, 42, 9, 18, 2.5); + g.fill(); + g.fillStyle = "#10b981"; + roundRect(g, 27, 32, 9, 28, 2.5); + g.fill(); + g.fillStyle = "#34d399"; + roundRect(g, 40, 20, 9, 40, 2.5); + g.fill(); + }, + }, + { + dir: "library", + bundle: "library-main", + title: "PocketJS Library", + word: ["POCKET", "LIBRARY"], + accent: "#38bdf8", + seconds: 1.5, + mark: (g) => { + const tiles: [number, number, string][] = [ + [14, 20, "#38bdf8"], + [36, 20, "#e0507a"], + [14, 42, "#0ea5b7"], + [36, 42, "#8b5cf6"], + ]; + for (const [x, y, fill] of tiles) { + roundRect(g, x, y, 18, 18, 5); + g.fillStyle = fill; + g.fill(); + } + }, + }, + { + dir: "settings", + bundle: "settings-main", + title: "PocketJS Settings", + word: ["POCKET", "SETTINGS"], + accent: "#60a5fa", + seconds: 1.5, + mark: (g) => { + roundRect(g, 14, 26, 44, 12, 6); + g.fillStyle = "#1e3a5f"; + g.fill(); + g.beginPath(); + g.arc(48, 32, 9, 0, Math.PI * 2); + g.fillStyle = "#60a5fa"; + g.fill(); + roundRect(g, 14, 46, 44, 12, 6); + g.fillStyle = "#1e3a5f"; + g.fill(); + g.beginPath(); + g.arc(24, 52, 9, 0, Math.PI * 2); + g.fillStyle = "#475569"; + g.fill(); + }, + }, + { + dir: "notifications", + bundle: "notifications-main", + title: "PocketJS Notifications", + word: ["POCKET", "ALERTS"], + accent: "#f59e0b", + seconds: 1.2, + mark: (g) => { + for (const [y, w, fill] of [ + [20, 40, "#f59e0b"], + [36, 34, "#eab308"], + [52, 28, "#a16207"], + ] as const) { + roundRect(g, 14, y, w, 11, 4); + g.fillStyle = fill; + g.fill(); + } + g.beginPath(); + g.arc(56, 24, 5, 0, Math.PI * 2); + g.fillStyle = "#ef4444"; + g.fill(); + }, + }, + { + dir: "music", + bundle: "music-main", + title: "PocketJS Music", + word: ["POCKET", "MUSIC"], + accent: "#34d399", + seconds: 1.5, + mark: (g) => { + for (const [i, h] of [26, 40, 18, 32].entries()) { + roundRect(g, 16 + i * 11, 60 - h, 7, h, 3); + g.fillStyle = i % 2 ? "#10b981" : "#34d399"; + g.fill(); + } + }, + }, + { + dir: "gallery", + bundle: "gallery-main", + title: "PocketJS Gallery", + word: ["POCKET", "GALLERY"], + accent: "#22d3ee", + seconds: 1.5, + mark: (g) => { + roundRect(g, 14, 20, 44, 40, 7); + g.fillStyle = "#164e63"; + g.fill(); + g.beginPath(); + g.arc(28, 33, 6, 0, Math.PI * 2); + g.fillStyle = "#fde68a"; + g.fill(); + g.beginPath(); + g.moveTo(18, 56); + g.lineTo(34, 38); + g.lineTo(44, 50); + g.lineTo(52, 42); + g.lineTo(56, 56); + g.closePath(); + g.fillStyle = "#22d3ee"; + g.fill(); + }, + }, +]; + +const only = new Set(Bun.argv.slice(2)); +const selected = only.size === 0 ? DEMOS : DEMOS.filter((d) => only.has(d.dir)); +if (selected.length === 0) throw new Error(`no demos match: ${[...only].join(", ")}`); + +for (const demo of selected) { + const out = `${ROOT}apps/${demo.dir}/psp/`; + mkdirSync(out, { recursive: true }); + + // ICON0 — 144×80 family tile: mark left, two-line wordmark right, accent rule. + { + const c = createCanvas(144, 80); + const g = c.getContext("2d"); + roundRect(g, 0.5, 0.5, 143, 79, 10); + g.fillStyle = "#0a1118"; + g.fill(); + g.strokeStyle = "#22333f"; + g.lineWidth = 1; + g.stroke(); + demo.mark(g); + g.fillStyle = "#e8f0f2"; + g.font = "bold 15px Inter"; + g.fillText(demo.word[0], 66, 36); + g.fillText(demo.word[1], 66, 55); + g.fillStyle = demo.accent; + g.fillRect(67, 61, 26, 2); + await Bun.write(out + "icon0.png", c.toBuffer("image/png")); + } + + // PIC1 — a real frame of the demo via the sim pump the goldens use. + { + const trace = await runScenario({ + app: demo.bundle, + hz: 60, + seconds: demo.seconds, + script: demo.script, + }); + const c = createCanvas(480, 272); + const g = c.getContext("2d"); + const img = g.createImageData(480, 272); + img.data.set(trace.finalFrame); + g.putImageData(img, 0, 0); + g.fillStyle = "rgba(0,0,0,0.30)"; + g.fillRect(0, 0, 480, 272); + const grad = g.createLinearGradient(0, 0, 480, 0); + grad.addColorStop(0, "rgba(0,0,0,0.45)"); + grad.addColorStop(0.55, "rgba(0,0,0,0)"); + g.fillStyle = grad; + g.fillRect(0, 0, 480, 272); + await Bun.write(out + "pic1.png", c.toBuffer("image/png")); + } + + const toml = `# XMB metadata for the ${demo.title} EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts ${demo.dir} +title = "${demo.title}" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" +`; + await Bun.write(out + "Psp.toml", toml); + console.log(`covers: apps/${demo.dir}/psp/ (icon0 144x80, pic1 480x272, "${demo.title}")`); +} From 7a40ae68896afde4299b0294918dc0d1db35aa8b Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 30 Jul 2026 10:03:33 +0900 Subject: [PATCH 04/10] docs(blog): rewrite the Octane post's index blurb for outside readers No repo-internal references, leads with the machine and the three findings; post dated to its publish day. Co-Authored-By: Claude Fable 5 --- site/nav.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/site/nav.ts b/site/nav.ts index ca3406a81..961c2de75 100644 --- a/site/nav.ts +++ b/site/nav.ts @@ -57,9 +57,9 @@ export const BLOG_POSTS: BlogPost[] = [ { slug: "octane-on-psp", title: "useState at 333 MHz: Octane Is PocketJS's Third Framework", - date: "2026-07-29", + date: "2026-07-30", description: - "PR #6 measured React out of the PSP. Octane compiles the React programming model — hooks, JSX, no VDOM — into host plans a 333 MHz handheld can run, so we ported it: a universal driver over the same native tree, all eight demos, 14 of 23 PPSSPP goldens byte-identical to the Vue Vapor frames. Inside: the three-layer memory hunt through a pinned QuickJS, the hardware test that read under 1 FPS, the compiler flag that had silently shipped an -O0 interpreter since 2021, the rule that continuous motion never touches setState — and the benchmark PR #6 couldn't run, landing every cell of three frameworks inside the 60 FPS budget.", + "React itself can't run on a 2004 Sony PSP — 333 MHz, 32 MB of RAM. Octane compiles React's programming model instead of shipping its runtime, so we made it PocketJS's third framework beside Solid and Vue Vapor. Between \"it boots\" and 60 FPS: a WeakMap the JS engine's GC never frees, the discovery that a 2021 build flag had been silently shipping an unoptimized interpreter ever since, and a hard rule — on hardware like this, continuous animation never touches setState. Full three-framework benchmark included; every demo ends up inside the 16.7 ms frame budget.", author: { name: 'Yifeng "Evan" Wang', url: "https://github.com/doodlewind" }, }, { From 569d62636d8e0ca6118d44d4b8cce17ca059f52b Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 30 Jul 2026 13:00:07 +0900 Subject: [PATCH 05/10] fix(compiler): hard-error on in bake-svg; flatten the spinner atlas The svg baker scans shapes flat, so the spinner atlas's per-cell was silently dropped - all eight frames baked into cell 0 and cells 1-7 shipped blank. On hardware the spinner sat invisible and "flashed" once per cycle when the frame index wrapped through the one painted cell; the golden re-baseline had baked the bug in. The atlas now carries absolute per-cell circle coordinates (no groups), and bake-svg refuses loudly instead of mis-baking. All four affected goldens re-baked and visually verified: the spinner is present at a distinct phase in every capture. Co-Authored-By: Claude Fable 5 --- assets/images/spinner-atlas.svg | 134 +++++++++---------- framework/compiler/bake-svg.ts | 9 ++ site/assets/blog/octane-hero-jsx-60fps.png | Bin 20687 -> 21503 bytes tests/goldens/psp-octane/hero.boot.png | Bin 17581 -> 18277 bytes tests/goldens/psp-octane/hero.focused.png | Bin 18091 -> 18121 bytes tests/goldens/psp-octane/hero.pressed.png | Bin 17330 -> 18021 bytes tests/goldens/psp-octane/library.loading.png | Bin 7027 -> 7643 bytes 7 files changed, 70 insertions(+), 73 deletions(-) diff --git a/assets/images/spinner-atlas.svg b/assets/images/spinner-atlas.svg index 4193385ab..dd3ade416 100644 --- a/assets/images/spinner-atlas.svg +++ b/assets/images/spinner-atlas.svg @@ -1,6 +1,9 @@ + - - + @@ -8,75 +11,60 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/framework/compiler/bake-svg.ts b/framework/compiler/bake-svg.ts index 6e30b5042..c2e8e7bd1 100644 --- a/framework/compiler/bake-svg.ts +++ b/framework/compiler/bake-svg.ts @@ -332,6 +332,15 @@ export function bakeSvg(svg: string, rasterDensity = 1): DecodedImage { // content (clipPaths, masks) is never painted directly. const svgBody = svg.replace(//gi, ""); + // Shapes are scanned flat: a wrapper is invisible to this baker, so a + // transform on one would be silently dropped — shapes would pile up at + // their untranslated coordinates (a sprite atlas with 7 blank cells shipped + // this way once). Hard error; bake the offsets into the coordinates. + if (/]*\btransform=/i.test(svgBody)) { + throw new Error( + "svg bake: is not applied by this baker - flatten the transform into the shapes' own coordinates", + ); + } const shapes: Shape[] = []; const shapeRe = /<(circle|rect|path)\b[^>]*\/?>/gi; let m: RegExpExecArray | null; diff --git a/site/assets/blog/octane-hero-jsx-60fps.png b/site/assets/blog/octane-hero-jsx-60fps.png index 41c9fccaeacfffbece7faa36365ca3d950d1329e..5787cc574a7b35d9d368070dc465e00947cceb17 100644 GIT binary patch literal 21503 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 literal 20687 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 b|K(@>QvDh_scr-CEF1<;S3j3^P6FP#G0k&^?} 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
          c_dorM&9;64o!shaYOg@mcir{A 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 R0?(Ua@O1TaS?83{1OTUm7jFOn literal 18091 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 Cc&2#( literal 7027 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 NS`T#Zmub8V`wuz Date: Thu, 30 Jul 2026 13:12:41 +0900 Subject: [PATCH 06/10] docs(blog): record the hardware confirmation and the blank-atlas incident The post-fix builds are verified on the same physical PSP that failed the first run; the sprite-cycling bullet now carries the honest beat about the atlas bake and the golden re-baseline that hid it. Co-Authored-By: Claude Fable 5 --- site/content/blog/octane-on-psp.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/site/content/blog/octane-on-psp.md b/site/content/blog/octane-on-psp.md index fa9bf89fd..9670a8590 100644 --- a/site/content/blog/octane-on-psp.md +++ b/site/content/blog/octane-on-psp.md @@ -173,7 +173,7 @@ With the emulator suite green we put the release EBOOTs on a Memory Stick, and t PocketJS already had the channels to make it zero — the same native machinery Solid and Vue Vapor demos lean on: -- **Sprite cycling** → the native `` atlas (`sprites.json`, host auto-play). The hero, gallery, and library spinners became one 256×128 atlas baked from the eight spinner SVGs; per-frame JS: none. +- **Sprite cycling** → the native `` atlas (`sprites.json`, host auto-play). The hero, gallery, and library spinners became one 256×128 atlas baked from the eight spinner SVGs; per-frame JS: none. (The atlas itself shipped broken once: our SVG baker silently dropped ``, so seven of eight cells baked blank — on hardware the spinner blinked instead of spun, and a golden re-baseline had quietly enshrined the bug. The baker now hard-errors on ``, and the goldens got looked at with actual eyes.) - **Looping choreography** → baked keyframe timelines. The music equalizer's `|sin|` curve, phase per bar included, is sampled into four keyframe tracks in `pocket.config.ts` and loops in `styles.bin` forever; play/pause just switches classes: ```tsx @@ -301,7 +301,7 @@ The [playground](/playground/) grew a third toggle. The real Octane universal co ## What's named, what's next -The gaps, named, because that is house policy: a button press is one root replay and costs a visible 150–250 ms hitch on the PSP until the replay walk is fixed upstream in Octane (the identity-path caching described above); the per-replay memory residue on the pinned engine is still real — replays are now rare enough that it no longer bounds a session, but the quickjs-rs GC repair and repin remain owed, as does an upstream report for the ten-line WeakMap repro that also reproduces on bellard master; the benchmark numbers above are emulator numbers from PPSSPP's software renderer — the first hardware run is what triggered the whole performance chapter, and the post-fix hardware re-test is the open checklist item; and `gallery`, the eighth demo, ports and builds like the rest but is not yet in the golden suite. +The gaps, named, because that is house policy: a button press is one root replay and costs a visible 150–250 ms hitch on the PSP until the replay walk is fixed upstream in Octane (the identity-path caching described above); the per-replay memory residue on the pinned engine is still real — replays are now rare enough that it no longer bounds a session, but the quickjs-rs GC repair and repin remain owed, as does an upstream report for the ten-line WeakMap repro that also reproduces on bellard master; the benchmark numbers above are emulator numbers from PPSSPP's software renderer, but the post-fix builds have since been re-tested on the same physical PSP that failed the first run — smooth, spinner turning; and `gallery`, the eighth demo, ports and builds like the rest but is not yet in the golden suite. Everything here — adapter, compiler wiring, eight ports, playground, docs, benchmark — lands in [#203](https://github.com/pocket-stack/pocketjs/pull/203). Three frameworks now compile into the same native tree on the same 2004 handheld, and the newest one writes like React because, at the source level, it is: hooks, JSX, and a compiler that did the reconciler's job before the code left your machine. From 1eb4aa2266b0a7e3afd9e04dc5f339f64a35b773 Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 6 Aug 2026 06:54:47 +0800 Subject: [PATCH 07/10] perf(octane): upgrade to 0.1.26 scoped updates, move hero's count off the root MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit octanejs/octane#578 (shipped in 0.1.26) makes a universal setState replay only the owning component's subtree instead of the whole root. It landed the day after we filed #574 with a repro, and our repro is now their regression benchmark (benchmarks/universal-leaf-update). The upgrade alone changes nothing on device: all 23 psp-octane goldens stay byte-exact, and every bench app's press cost is unmoved. The reason is on our side — octane scopes a replay to the nearest owner holding a committed range, and a root component has none, so state that lives in the root component still replays everything. Every demo keeps its interactive state in the root. Hero now demonstrates the shape the fix rewards: the counter moves into a CounterRow leaf, and the underline it also drives leaves the render path for the native jump() channel. Output is unchanged to the byte (all 23 goldens pass), while on PPSSPP: hero octane avg work 6.53 -> 3.64 ms max work 176.89 -> 37.80 ms hero solid avg work 3.66 ms max work 31.47 ms That is press-latency parity with Solid, from a 4.7x drop in the worst frame. The other six demos are unconverted; several of them hold state at the root legitimately (library's screen, stats' tab switch whole views) and need per-app judgement rather than a blanket refactor. Verified: full suite 8 groups 0 fail, tsc clean, 23/23 psp-octane goldens byte-exact, solid control unchanged (+0%) across the same bench run. Co-Authored-By: Claude Opus 5 (1M context) --- apps/hero/app.octane.tsx | 55 +++++++++++++++++++++++++++------------- bun.lock | 8 +++--- package.json | 2 +- 3 files changed, 43 insertions(+), 22 deletions(-) diff --git a/apps/hero/app.octane.tsx b/apps/hero/app.octane.tsx index f4b995540..e4ce7ad07 100644 --- a/apps/hero/app.octane.tsx +++ b/apps/hero/app.octane.tsx @@ -1,6 +1,6 @@ import { useLayoutEffect, useRef, useState } from "octane"; import { Image, Sprite, Text, View, type NodeMirror } from "@pocketjs/framework/octane/components"; -import { animate } from "@pocketjs/framework/octane/animation"; +import { animate, jump } from "@pocketjs/framework/octane/animation"; import { frameworkName } from "@pocketjs/framework/octane"; const Stat = (props: { label: string; value: string; cls: string }) => { @@ -20,8 +20,35 @@ const Spinner = () => { return ; }; -export default function Hero() { +// The count lives here rather than in Hero: octane scopes a setState replay to +// the nearest owner that has a committed range, and the root component has +// none — root state always replays the whole tree (176.9 -> 37.8 ms per press +// on PSP for this app). Anything else the count drives has to leave the render +// path with it, hence the underline moving through jump() below. +const CounterRow = (props: { onCount: (next: number) => void }) => { const [count, setCount] = useState(0); + return ( + + { + const next = count + 1; + setCount(next); + props.onCount(next); + }} + > + Press Circle + + {`Count: ${count}`} + {count > 3 ? ( + Reactive on real hardware. + ) : null} + + ); +}; + +export default function Hero() { const underline = useRef(null); useLayoutEffect(() => { @@ -58,28 +85,20 @@ export default function Hero() { underline.current = node; }} class="h-1 w-0 rounded-full shadow bg-gradient-to-r from-blue-500 to-cyan-500" - style={{ translateX: count * 2 }} + // Constant, never re-applied: it keeps the transform on the node so + // jump()'s edge rounding matches the pre-refactor raster exactly. + style={{ translateX: 0 }} /> Flexbox, springs and baked type - running through Octane. - - { - setCount(count + 1); - }} - > - Press Circle - - {`Count: ${count}`} - {count > 3 ? ( - Reactive on real hardware. - ) : null} - + { + if (underline.current) jump(underline.current, "translateX", next * 2); + }} + /> ); } diff --git a/bun.lock b/bun.lock index 96612e217..08fb8cc89 100644 --- a/bun.lock +++ b/bun.lock @@ -7,7 +7,7 @@ "dependencies": { "@vue/compiler-sfc": "3.6.0-rc.1", "@vue/compiler-vapor": "3.6.0-rc.1", - "octane": "0.1.18", + "octane": "0.1.26", "solid-js": "^1.9", "vue": "3.6.0-rc.1", "vue-jsx-vapor": "3.2.19", @@ -247,7 +247,7 @@ "@tailwindcss/typography": ["@tailwindcss/typography@0.5.20", "", { "dependencies": { "postcss-selector-parser": "6.0.10" }, "peerDependencies": { "tailwindcss": ">=3.0.0 || >=4.0.0 || insiders" } }, "sha512-hwbzQuNUfcPvbegQFatVPl/MY/tcM9KLl963hQ5laJKPh81TEZ1+dNG9PirGvcaDBkp+BCshExAyKVPW91dozw=="], - "@tsrx/core": ["@tsrx/core@0.1.54", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5", "@noble/hashes": "^2.2.0", "@sveltejs/acorn-typescript": "^1.0.11", "@types/estree": "^1.0.8", "@types/estree-jsx": "^1.0.5", "acorn": "^8.17.0", "esrap": "^2.3.0", "is-reference": "^3.0.3", "magic-string": "^0.30.18", "zimmerframe": "^1.1.2" } }, "sha512-DbPskFFyJyako9pIRZDwipM/zIKDrfUcsHsGP8KHK5+Z2yY+tR2PUki+ThgnUA3+LqZo4Khc+07S62tFRX3TeQ=="], + "@tsrx/core": ["@tsrx/core@0.1.56", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5", "@noble/hashes": "^2.2.0", "@sveltejs/acorn-typescript": "^1.0.11", "@types/estree": "^1.0.8", "@types/estree-jsx": "^1.0.5", "acorn": "^8.17.0", "esrap": "^2.3.0", "is-reference": "^3.0.3", "magic-string": "^0.30.18", "zimmerframe": "^1.1.2" } }, "sha512-SZ+lani1n0yR4pFqOxclfWvU4Pvd3i9d6aptShicAzC3IYW2yQrsNJoG5ZqoVai9A3ZRikkO4CY8/HK+ksNp1Q=="], "@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], @@ -385,6 +385,8 @@ "entities": ["entities@7.0.1", "", {}, "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA=="], + "es-module-lexer": ["es-module-lexer@1.7.0", "", {}, "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA=="], + "escalade": ["escalade@3.2.0", "", {}, "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="], "esrap": ["esrap@2.3.0", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" }, "peerDependencies": { "@typescript-eslint/types": "^8.2.0" }, "optionalPeers": ["@typescript-eslint/types"] }, "sha512-GQ/7RN8uOtEfNpzZzBMTzW9JBcX42oaSVtPzdF+6cEL8pqIL094iUpr9jzYGn4O4P/1S60dJ6izyT8F4LYARng=="], @@ -481,7 +483,7 @@ "node-releases": ["node-releases@2.0.50", "", {}, "sha512-J6l92tKHX6w8Jy5nO1Vuc01NoIiRGi/d6qBKVxh+IQ8Cr3b6HbVNfKiF8ZpFKufTwpwxMmce2W3iQZ861ZRyTg=="], - "octane": ["octane@0.1.18", "", { "dependencies": { "@tsrx/core": "^0.1.54", "@types/react": "^19.2.17", "devalue": "^5.8.2", "esrap": "^2.3.0" }, "peerDependencies": { "react": "^19.0.0", "react-dom": "^19.0.0", "vite": "^8.0.16" }, "optionalPeers": ["react", "react-dom", "vite"] }, "sha512-LxqPEXBcjYPbaOPKneb2J9s3wRTKOrNPKOlNsEyN1iJuuabrTIXNFA0xQd6smaOYLCOGWDv/3NpD50NiX94V1g=="], + "octane": ["octane@0.1.26", "", { "dependencies": { "@tsrx/core": "^0.1.56", "@types/react": "^19.2.17", "devalue": "^5.8.2", "es-module-lexer": "^1.7.0", "esrap": "^2.3.0" }, "peerDependencies": { "react": "^19.0.0", "react-dom": "^19.0.0", "vite": "^8.0.16" }, "optionalPeers": ["react", "react-dom", "vite"] }, "sha512-StqvnF8qSqIzNQoikPyrYlFBulUgxY7d9An+JptrT/JgZi/sxoygby0iik0EtikNN6RLleeqr/ebS08pxT5NFA=="], "oniguruma-parser": ["oniguruma-parser@0.12.2", "", {}, "sha512-6HVa5oIrgMC6aA6WF6XyyqbhRPJrKR02L20+2+zpDtO5QAzGHAUGw5TKQvwi5vctNnRHkJYmjAhRVQF2EKdTQw=="], diff --git a/package.json b/package.json index 6d9129681..d25e6c763 100644 --- a/package.json +++ b/package.json @@ -165,7 +165,7 @@ "dependencies": { "@vue/compiler-sfc": "3.6.0-rc.1", "@vue/compiler-vapor": "3.6.0-rc.1", - "octane": "0.1.18", + "octane": "0.1.26", "solid-js": "^1.9", "vue": "3.6.0-rc.1", "vue-jsx-vapor": "3.2.19" From 9c858234ca02019b5ebda498cc007c2b360b167e Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 6 Aug 2026 08:23:01 +0800 Subject: [PATCH 08/10] =?UTF-8?q?feat(psp):=20per-framework=20XMB=20covers?= =?UTF-8?q?=20=E2=80=94=20the=20Octane=20twins=20name=20themselves?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A demo's framework twins were indistinguishable on a memory stick: both the Solid and the Octane build of `hero` packed the same icon and the same "PocketJS Hero" title, so the XMB gave you no way to tell which one you were about to launch. gen-demo-covers.ts grows --framework=, which bakes a variant set into apps//psp// instead of the shared directory: the framework's name under the accent rule on the 144x80 tile, an accent-bordered badge in the PIC1 corner, and "(Octane)" appended to the PARAM.SFO title. PIC1 is rendered from that framework's own bundle. tools/psp.ts prefers /psp// when it exists and otherwise keeps using the shared fragment, so default builds are untouched. All eight Octane demos get the variant set. Verified by unpacking the built PBPs: every one carries its Octane icon0/pic1 and an "(Octane)" SFO title. Co-Authored-By: Claude Opus 5 (1M context) --- apps/cards/psp/octane/Psp.toml | 7 +++ apps/cards/psp/octane/icon0.png | Bin 0 -> 4953 bytes apps/cards/psp/octane/pic1.png | Bin 0 -> 26164 bytes apps/gallery/psp/octane/Psp.toml | 7 +++ apps/gallery/psp/octane/icon0.png | Bin 0 -> 5178 bytes apps/gallery/psp/octane/pic1.png | Bin 0 -> 72705 bytes apps/hero/psp/octane/Psp.toml | 7 +++ apps/hero/psp/octane/icon0.png | Bin 0 -> 4532 bytes apps/hero/psp/octane/pic1.png | Bin 0 -> 32926 bytes apps/library/psp/octane/Psp.toml | 7 +++ apps/library/psp/octane/icon0.png | Bin 0 -> 5130 bytes apps/library/psp/octane/pic1.png | Bin 0 -> 27566 bytes apps/music/psp/octane/Psp.toml | 7 +++ apps/music/psp/octane/icon0.png | Bin 0 -> 4507 bytes apps/music/psp/octane/pic1.png | Bin 0 -> 33200 bytes apps/notifications/psp/octane/Psp.toml | 7 +++ apps/notifications/psp/octane/icon0.png | Bin 0 -> 4787 bytes apps/notifications/psp/octane/pic1.png | Bin 0 -> 40287 bytes apps/settings/psp/octane/Psp.toml | 7 +++ apps/settings/psp/octane/icon0.png | Bin 0 -> 5478 bytes apps/settings/psp/octane/pic1.png | Bin 0 -> 32438 bytes apps/stats/psp/octane/Psp.toml | 7 +++ apps/stats/psp/octane/icon0.png | Bin 0 -> 4482 bytes apps/stats/psp/octane/pic1.png | Bin 0 -> 34589 bytes tools/gen-demo-covers.ts | 69 ++++++++++++++++++++---- tools/psp.ts | 9 +++- 26 files changed, 123 insertions(+), 11 deletions(-) create mode 100644 apps/cards/psp/octane/Psp.toml create mode 100644 apps/cards/psp/octane/icon0.png create mode 100644 apps/cards/psp/octane/pic1.png create mode 100644 apps/gallery/psp/octane/Psp.toml create mode 100644 apps/gallery/psp/octane/icon0.png create mode 100644 apps/gallery/psp/octane/pic1.png create mode 100644 apps/hero/psp/octane/Psp.toml create mode 100644 apps/hero/psp/octane/icon0.png create mode 100644 apps/hero/psp/octane/pic1.png create mode 100644 apps/library/psp/octane/Psp.toml create mode 100644 apps/library/psp/octane/icon0.png create mode 100644 apps/library/psp/octane/pic1.png create mode 100644 apps/music/psp/octane/Psp.toml create mode 100644 apps/music/psp/octane/icon0.png create mode 100644 apps/music/psp/octane/pic1.png create mode 100644 apps/notifications/psp/octane/Psp.toml create mode 100644 apps/notifications/psp/octane/icon0.png create mode 100644 apps/notifications/psp/octane/pic1.png create mode 100644 apps/settings/psp/octane/Psp.toml create mode 100644 apps/settings/psp/octane/icon0.png create mode 100644 apps/settings/psp/octane/pic1.png create mode 100644 apps/stats/psp/octane/Psp.toml create mode 100644 apps/stats/psp/octane/icon0.png create mode 100644 apps/stats/psp/octane/pic1.png diff --git a/apps/cards/psp/octane/Psp.toml b/apps/cards/psp/octane/Psp.toml new file mode 100644 index 000000000..c023d301d --- /dev/null +++ b/apps/cards/psp/octane/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Cards (Octane) EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo with --framework=octane; cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts --framework=octane cards +title = "PocketJS Cards (Octane)" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/cards/psp/octane/icon0.png b/apps/cards/psp/octane/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..f4d7d18b432452e3733b0b687ac931f54e9448df GIT binary patch literal 4953 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 V^DgYhlDsj1p{^OELfiS}e*j@Op@#qf literal 0 HcmV?d00001 diff --git a/apps/cards/psp/octane/pic1.png b/apps/cards/psp/octane/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..5050e62d30742bac621329ce7b3e960417b64c1f GIT binary patch literal 26164 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 literal 0 HcmV?d00001 diff --git a/apps/gallery/psp/octane/pic1.png b/apps/gallery/psp/octane/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..91405fe7f702188c537716f3be4c89b57cc5ce38 GIT binary patch literal 72705 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 E0}nL1Z2$lO literal 0 HcmV?d00001 diff --git a/apps/hero/psp/octane/Psp.toml b/apps/hero/psp/octane/Psp.toml new file mode 100644 index 000000000..ac74dfb92 --- /dev/null +++ b/apps/hero/psp/octane/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Hero (Octane) EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo with --framework=octane; cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts --framework=octane hero +title = "PocketJS Hero (Octane)" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/hero/psp/octane/icon0.png b/apps/hero/psp/octane/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..8b5612c48bbc38e7ecb103f7a1c663d17cb28d96 GIT binary patch literal 4532 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 literal 0 HcmV?d00001 diff --git a/apps/music/psp/octane/pic1.png b/apps/music/psp/octane/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..a942b9f5f454ddcc0b0d5ff74138e0350ea93f8f GIT binary patch literal 33200 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 N002ovPDHLkV1g0bXq5l} literal 0 HcmV?d00001 diff --git a/apps/notifications/psp/octane/pic1.png b/apps/notifications/psp/octane/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..889540723ba834431d7a5eb14a9b355b19d2a474 GIT binary patch literal 40287 zcmcG#Wl&sC^eqY@K!OGm+!9=ZyC%51ySuwf&=7(R?m-79xJ%IB9^40)!3XCZe*b$v zyn3JBt-7g64Rbi0>E6A2%UY`=l@uh=Q3z4s;NZ}urNmU=;NaJR|L@))0avUfz(0Yv z*RCScYHxsles9da1E1ktRU}2=D#wWT;ov^PNs9@qd1W58dpl)FC$GbLMH6bCkLfMrC@NYkB5h4BaHy5uO$U>jQhNSZx0rRuYH82fS{n@^sJ!2nrBui zebUJkqY62l%BFw9rhMGTKd5uaU4d{9Qtv*B$EnGd4jG1u+?<Qei#Aut zp3`){y@Ctd{gP}zi~D5RUPGmVm_e`W-xgc7COPak0PDTe?@3Ljze=G?=D-wz6%D=e z`&Uk>>)rNeZJ4lQ$(B&{V_K|}s(Ea_;kU1+UP?my@NZtf0)CVi!#Dc&_2auY*>K%( zsQ+Dh{SHYBxbQldCWxgAxaZ?L0r*gO+?V^;-+n~<{c`tfML6Ri#Ft-sy?TT28MyH3 z&-<_c{~q*UO? znct#(rm(O@aQe^CzTMzMd5nhL;>b5wm*%cb&C}G%ai!!`5`*;;5sgKD$)r>S^w{L; zm$Cf&gdTT)ap%*()NC`bTT{ECzOJT>EN>e}L!~uFR*nsFv9gb>I^y0jDD`Zoto9m% z^7`O}KX36q=}7(1sHRYiUi4ksJv=(1Q+kinFb@UBcQ1%7Ib7$m&|8;rfDt(@Cl(81pc~eCkb>6nOT{S1W9{xc`YrZlaYY&@L?vqB zAeLkY4wvjZ8F94os^?xLXdgM0>QLSF>xJ6j6!g+BXqLyXB`7i+2Mo*~(<>$5?ykiG zhWAU*PC*tha>K$Yr4$^yaQq9&D^dk*i&Ep^9Uk=(d^q~6o`9VXF-Q?p&6$=Q|1~%m zrV{}+$WEWp!l}=~(7D5N7bJEyNmyRz?7%xD4h^G~in&H>cbpM-YXX(OPJ-otSh5D- z@I`RUs7n9JsIgkQ=4*&}mz30%@N@pdZP1IGub-0H|>+?`x*KSWcoQxOQ_TZhfopLV5==# zxhbtw&$Eb?{i^n?j)u5g{2CZs@i5%>T*};Q_h`4A8N8pfE9j-=)hYVKFWonbjA6s? zwsQ%D%Pa^3W6D}>Bl?WaKe?G zE6V}feYVsmW%(*n7t9kfP!@@z>GG5v@{T_q(i(I(@eVoF|@Syr!_S|m~5o8Z#2E|HHQS{(dCV9l6jfHpGr5+72ys%cgX z`l}R+u*_fjk-FP74o6_|qZSpnsVbAfVxf423LHxIQl**QRK3X~;5Jo9|8h0xB3~;U zDY5eHJN9a99UvgnG};czYYf3aAMzoOwjMvG)I$%GDEnwx{x!#CI&jb<3Q{mlZQTI>i7nqA4I{f2-$uAwL9!FYL zU_T-5GLpAzQ|(Kt)ZwcYC9yquzbI5OE{gh9Bk#uyKD0KAXGR~`+^=f(UAt6W9WoW9 zVqxgK5_?I2XZ@7(Zd)kP<_4k0p6QFIH3dUSCU5Z#vvmGMOCZxz5i`x&UB@9{=V=(d zQB|3xH+F5>uG!ww*ZIPxCu}|px+DCH_RhmF@{9ma0S`ibAMkn7SO%1ja~bP<86H9V z9YvExV859(%`F}mOvx)DKK^|GA0tDL(l`2-^I{kz^x?x=b+07-P1&5N*%s;q*B+&y zfwXaYdXd3f@G#@>r4HgG7D|WDN8_{Ae1rUt+}xCvC*=$a=64lB9clpuV-1PdH-fn;K=r5q53LpABUWw+uXdxQW0+y}BVAQsFSvNw&h9t16|8L&)?G>G|S-!t=O4wxkhlA}+ zva%wOod|&*Hx!HyWxPsxxodj`)pLElKeKiltTl_PAV!fO(L$ZOp9+LNnQ|jMJk6%n zPZ`K=l;U*ThLe+YjRFybdFnT#Sj-=JSBll6BtG*iORGoqmd}RGA`MQ;pyfI^H1fpj zolflScr}|SS3ORCnLS2O=)OX^8xSyX3pEhF4@&5!iqygKK?HV+S3qlWB^C|mF}6f) z^xQQQwcX=-^E<3yAX5cP{yuqkdFFz?CRD!V)f|3Kj6)BF+5s`nn_*<^{%M_m#X*8b zkYLhFbo4@ln;m!Uw#PdogGe4D^Q7;3$wgf(f`Lb=e8VT-R2+fqv%EjHCh6-2FIO%+ z%;+dn*;q|yv$FK;jV{-&?7OIo_Ovtl82jl7&bn*fb)Jx5f~brV?X~*^JqM)z6-sgD z0KLIUl%E!O2ol`ZXW8ec@2Ciqg2&($$<@5Rg9U_KgsY(QmW&Q#%k>oAJtM~<*##BX z!Zg6UvnM+Lw$nv<-}WdyEH0y9vv7rQ@h&7|_azzsF-=9#pv&bE?W@3zunRo~WgMbo zsF>imd{-}2Qv#K2S|m^s8E3q1)D>`TFNMoa7`Rt=0jr-UR7Bj+QUOtE;n0uggq*`n z`ANM!MEN3b@&Mlri=d-M(z9f&F#s@ivHAhCWQCeiJa}_iu+=WK0)yLdxjG@Km~!m* zjdO__3dkf;&67teO84`)jEZxk=(%*Z3Iom&lhTFw6?VG^_pZ%xu^Q>^&)L4zg;648 zx3(I|VFus2wiZcQkwnnWY9H+Wg1%L8O5L<7!74;cfeEN1{+w&oSmOSBol{o7b@`;R zTUb0Fznk$@9aMruIi|r6@wv6O@qkohHr0WZM$=j`?)o#$sC@3Vxsdgge-%+)Ob+V2 zjhCqbsXbi(z)^ZfP_#b7q}aqG2Znr&43DbEu)~NAi$T*oUvB8~>2Z_6NV4KFv`<0z zQELLd=YJJZrfFi?f%E|zYS_4O$(LNXK!}li6R5TjDdWH)V@AVx^)qS4Q^w5kie&dh zWc;eCv*r`;N>FeGuT4y%_vJqiox4kW}`kZp-{AVzkQk2fC zz|NUqGT*!`mb)o{TeBh6sQz-%@^+fOMjptprspM%2VVYb7XyqJ_X7T_EnPLEBni)+ zONu)TXd*jgIND6Q^=t02`;(7IptrAs2SUD+p!^>ddVa^AlTb4JE{pnv>|_zC;($J% zTJ~Br^w>N&HnyoZZ?%`>^Pe~1aHEn&M%;4F!AaTKLOZ*RkR7w!xhlW$|Efio@?p4) z(dksVgmb>0ckMBWkOG`TPfu8|XS9iy7Jj7k+d~pZrMkL0=Z#HGxX_4*i<8)nSe-53 zVRrV~O#Z;Mrzhc@b7Wo~2hqv?hxhmS1ah9E&zRmj|?KHbZ)J;MLd<#uG`b3#Hw z@4$fL(9N8vt7`@tW>MOGeI{B^DYHpW4KW zL>YI6F6Je6GsK6zsgcN7SXPEC?SgImhJusRT;85qE&*RM8V<6%{cF;}Z_K0O;>f;& zL<;m?)a*3@fweGf%ZbOz{us{aumQwbzkhgWIV2GMik699EdRah4A6dL3>4w7CnlPO zhlf{d+b_4N_qmRfye)l9T#z&0*1z+)_aB-i9%l({T*{G#q%#KmJHbb2i5Bh~RW} zAa7%HxXt&x;rKLEm1XVnqs&krTw68(*2`C}ZTDl4j3K_1eR|d8aYYR~AT_Gi@@trn zjgH(||Kl%&bet1-W{ZRr?zgC^F{`A#ofh?+^EB{`5#+kdtgNlgICrb~d=UtpgWiNj zURW|uF8d~~Z1r$Chp=`=1hHF=xn5Y{z@-sbKR{>#$M7u2oVO%qO$yh#Tn8{O zHlt`B?lN;~oo>(7EA=~%X=J74cM4T$=;&5AY2E`#u!2pDj0HN@b;rFNl)DrY9q ztl7?P#COPo6@k$;Pj5Tq71#QlafCP8;3k-X)V=UGFF;@+qmP zYCNkXp=%ybat;|;Nq=%h?~}>C6UHIj!(KT-SN$sq90#|n+RpQ!3%_H36%}DbnV+5B zrWgi%n*x#F63+t8Ha#(q_SIGw8Ehc%O(*{o0|SCIC^b9n6Dw;x0`m3WM{4Tci`XyE zN#(Wq`58a5wu$*Y@PnRb9y*6>f`f?-y#9PyZpChNTr&=cqGp=h=_ui6L8*4jDfs&aAdqY<^mTUE&(}DoG}C9BUQ70 zfC0wK_AM@!Vyk6y<{>s&sR8UG@!MKjiv%UW0pyD2m}<4nFr_RV~}}BV@zaI5aGRm75=V)vN*>Sge?EqYG^Xzf8xQ z0M07+!v+=J_)!PX(@9D2?Oy&gkfY+$L1NC*SbgGQpd`u{Ng<&S0e4#>~jBix7y)W0>ol)JcQDkXxvmT;IKtiIcayM}G#BtDt zT}2`^!)JI<33N)kt4>GBStl_6RSd_=dh}MKZGxbEw4 zMxL=I;_ME&+i~%8m!7z8{$*+&Q!z0`vtt|*-F81u9)=(K;VS(zHol4|y%j%)!}X{O zqm#9=h+k`F-N2=J2Gy0hti=QKxa*Ig-}xY(6o3*bQ`n52|M7Mk=EU2-9RQz4PJ!^#mbYv$Wth~RWG{QA=JTgd1{k8A9#`iNHP`Iyu6iAQNvWy$*zY%i znOLrxm^(Q+3qniq6l+X(HN2l(eJngeV0ASDbacuXqKysi=ZiHB(>nxY2*gBqwLhNf zFAwimP|&Aq?QL0?8hkut6NnX<3_1>KHNE`(5$Na`$d0fCP;-obomEmVl?RZe1bkax zFrMKVY!CNv<714NC;Y9Tx%SSyuUU-g*0*}`=n_5VuYJp1I6g5eC_eckk&U#=)GT-J zTgTSQj!zzrYvjWjOFn7o*-6p+F1%m8iVdFl-DMO`IP0)*i!5iX$XSIJEq}@`dB8Bv z2AdDte9qxo-0f&DwZ;%)e*7%RGimi}cT1a8VPnVL_20GF^#g^%Ijo)QTc)R^w43CB z>O3&rYX6Q7f(*w;MkeNGHYqv-j&Un0NR~VNBbdiBCG-Co={KBkbNz$CMa9Haa>6A*Z{ww9Z zU7kdT0cB&hK_)1ntnpx8-=HphF}A4bV-!Q9#v1!aD!S~(@`xSZWSbo0FWrBarfk!5LS#wwSQoV;1fgtAtNTDG~96>D!xAq!c(#IdKz%xoF=Lc1jm%7;`r>Po%# z?YVKliSyD}YhH2J7T+jB*Opj;%3Cam=ik9dqC zDh7)8DqGv3?c#cyot@9;eCy2P1||*x*&`!pAG-RekO+P?nc3T>Bfk1m`)B1&gKY|1 z`g`oR`9oNP2DHwjAh}eQK+>| z%2z@DIJQeaJn3Rb;mSDZV@L(N_NOg1%kxnuozHJgGX;H>uR*>DN8fRPq>9RXLuRa{ zp)nGjk#z1ZX~_+De|=1ClH{MojoL00I%nt`87uT8xB8P}B1Y@&+q2A5hw+lRLplbA zqTD~V%a%q?-@nC1K;q1GY*5})Cyd{17OJTwx;}N|+_nt*3Tyzy)%#|%X2p*pqE~*< z*0oK;fJbESo~W<jLf7#@z-o-%KF6-m45Z5!dA^{auAf7P() zFS=p?T<7!7zIMwUlK1Y_E`E;Q0s$&g+325K!KItcO-2_s1jlp^4ihtn)nH2A65G9B zOG*%M)0$cl%VJqj_|?J`O*RlTp>Uz)cCB!n@Kr*IkDS#mCLOR|;8t zf4)3D7;12I`NB?20#*+$*1vg1PUfSreDzSk{c<}T*tab^XJvPZo@QG|h;g*mQ=K0% zVZ{wC!y>~Q=zMm30u85BxwKAwfhVWpOiQ4NQR%2~o4)%1G-cTgz}_-cZaJYWOp^Nf zvcEEh(j~6dZ=M~{Fk;z_(=E)F#Z>fu=6K%qmxv0vwxYVh(6NC?;?$e4^q#a7-0Eqi zj$l{6Fj4#u=3C+g8~EbE>}4oBS2o1l&YbK3`rR^euk*yrqityT1vD+~rbby^%_>yW zw{aWmIrOrzK$)3!`=%%o4NinAa&jDRBhQ4kt{1Gjb?0XnqD4V}$A-RE%^}Z1dwVH0 zqQdIxX3W|8rgpxWuMUSz$8DOJO3O(5LA>Ueb&02^rsEnM7_Q<4ZQ6wHLXJGA%{#iy z*`8l_7?~+fr@jupn&4&`DmRd}wyRfsS=2^L2Q9cG)2^93Dp;4kms*1BS8+-8aj7`VWPxsK zGo}QJzacvo$X7i{DbR&hAHmkIef<*oA1%;1HH(~NpUC`?OMzyd?W`6TDA8@j^xO)@ z*+?%gKfh0~aH&yIDtovHbY)j<)}8Av+47y-=NK8)Zl0S^P_S4xkEE~vp}*AVlz;H_ z!&FN82L%@&$QS)MHZwmfqn3@;dS?Zid44wkMbJ0ox-tTOHv>qgUK3M&OI78}X_qDJ z|8Y-V*Kbi#KhfB+y7Aj&7L>Gm_BovZabvmCdb53vc?TT_&#c<^erREuH;v8>hB1lr zQP=yMKMs|j&k2%ll*_i=?zU^!J%dbYRwF1a9fHTSrjt1wLiN^AcFCfM=KPvL(m$C4 zu}2jz*nrf+Kz@gR^@~BO_i@ctm_2vJTHh)cYeB1lwo|S;R&an%KjphOq?obhB>%&K z18zBzSgyCmXdo)&9HvgCcYr^9vP?x>Hy?y6n&Idy#6QfheV)-OvVp0N|gY4@$! zLwmhN*055u;lQKjo7pgZWCbl^aDA>Ctx`#%RlSYcQ1oMT`4U{~%DP*NQ_HdyCw(0u zBK>xrD9O=N?eJlR_%)Avl{)Uvc%RIckR-w5mOj|V{;d$uZ;DfbQ6nI|Chos9=q9bz z51(|kHQy{ABenLt{aUOLtx<8#`T|Sm2MVIGBu677c(ZDL@a?)y3^vx$^= z^o5{z6*>Y`FI?n0QG`hDM{>0&iHdHUgnxw;RtQHf%}&iLdv&FpGylU#9?CWugiLQs zfHH*}(HG(PDQO7n-*ErOWd2g3oj9D)vXA+-gk&zg;=t{|ZPKCn!d|{&CagzE8IB&_ zMk&=-(w<;ylx%hhDVZx{*3Gkx>=*e1t=b#n4( zz8VL}GlPS44l5n4Vx=EHeM&yJFANP0y}7!bO(Gf@8Hta3H}K@&3OVoZ$K`ABNoER) zH{9OcjsvCl)*m*ugT%FUbWnUfpl`ea@tE|CeJqlD3%oGMmT6MvW@e^W?&I`vwjpMg zL)$>dpr$#etfM0)?VPLkw7npk3bvF|P=M@h0O-?A?`u3}eQ+^L&gD-vCcQQpWn&?J z4?F!c!RO5p#G;Yu0szxlt`>D^21;Vr-Olq8A{>Ijc#8YT9~?%+IqOFY!-*g8RFsuZ zR2@gGAR{R$DW5&h9#XQh2CFHMHHf2t#S*YBR+mwtb!yS04RKNmxd_rf9KJ+BDw~zD zw8WIy3RS!XI#80Vm25s-BH-<3YzAB^TSl|0{%{0YAW~4DO<{XJYW^ezfE=#xRPaBX zYj#>%c>I%uUXFa`tcUF%oD|lSB1xkNq^&N@%36BHDyH?B z?(ZG#?2PjB5J!DN6)pI-v%^(td*Htam}YWjIsDH%rj#_WWs|c!vPo#y9Xk$-ZHzqGr$;-0KInps(y$wM8TkthDQ79je?E{9E-v6Bb^i$H={|BDq1 z^SrBdb%R~9akSlpFXsg@xz!R|5ww8b#uG_sT?q)#YW3uCZg?k``Ur z(f0eJB~|#Z!T}gaqOVCv^rb+dIu-pJP7|w>VL*rEqf=TAE-AqY(#Kh9*4G|gIp8B3 z7sMwdOos+{0j?nInI9kTlP1UNF7K~_#(QgQ?@K$y<+OX7< z<>m;9{Edm+b~u4kLdaMAfdK+;g?D6RvStOwEB-HN^*RA8h-TDck-z1)PPv<#Tdqb~ zWNfUdg$1?IydXy2Ydiammq<*w|FOZ=Bv;T%sup6ZUmPJOaZ8YE0@WqmS(D zSsfh#!2T0zsaz}Gyo;uX>+ZhvgZi%NxRPmBt?V4sFP&e-uK7nCZ<`B8s{%2pBSv5v zsR;~@1weDS%e!|5eos7D8^#QTMrC~{K|06H#|;e%j=F;O#{k&si)L)A3nmUXK=tgr-44fSPj zY^^;ve$iGXqw3S0uP@WX5VSNmf6XcJf?Bnl&k(GKeKy~^F~Lrzlm z-gQai^h`4=uTTKEz4TEeL%ry{f)SN;uF=lf+hdNw4Two9*HN1CPY77bMh(Et&HPhU zZB4bBovE=3It$NbfX=AstByakCHecx`d@zb>Kkr9=`TwDh3+JpPqVD2t}d#s9BA!((u5ZN|vYI>~D+GBVNI1{GH17n#bi*8!T7ni{3_U?dtE+SwV6 z<=^q)qTG_Cg$3RQM@%NSg_VnmjH~irtzbN95YGYUyr?L}$jDec2-J(&@!YVyGuL@9 zg&|7RM!J#DBCjwxwfM=92yLUFu;}j`LWn5fJ#op&LpkmD7+&a;UmiCb(Jp+ zMey(L&=uz!3e23J8Uu~u_V)>;;m zs4Ky`&EHphf^-!!Lz$qO0B2SJuJ&|9q#Km}P5GdwmAX4^AuCKO8q&kTQSW55ws;4~ zVv43)#ZZ1($--N&>2P$RZtQNFUv&5NAp)j#c@D_W^v=vqmQhg=prDXI3xC5ll@gjm zv;;@XcqTtY&q%kq(Ib3tKpK~@<+!Y~#Aju%>-Y600oo~VxCRGjzWN!8*pQ4fJvXOl zZ!hTWy|8|@iYIXMn?%A1m=S76`Rp8kht;Dafw)H0HZmtP%3NeRw4Rm#!} z?B3Zt`bBbIv#qF;6r3{c)*E&MC18xn@okCC@g;PNg7!>b_yeuo>zvG1>BLW&{`^tE zvp06KkUC)f&fPtiiau8G1Uc!VVC7%a`~Q|LdPtofLm>d(e#F$oy|I3)=4=%LWRExh zVkmhh59^2*^}}^4Ok@p^qALW^h~x{(wwirfvwzr!%`7`o480p$&FbT5xMpFoqoflG zKc8v~@&S+3ax}QJ^IKk((MT&Cr1Pb*qz#TL^wIIYowWWd1EZY%$L+yp!hvP}2HeIG z`!36)2Ueozyz<+3p%Z5>L-+Re_prFSmodDy6|c}Z+pJzGo+U*dv#Dh_&!*xPLIUud zNp>kwTg>K#5@1MvH+`I+x%hz(Go0>I^NU+xSC6so2tz$l@N|4emdtq98}<6Ads3j} zF0%7O4*#k4j|+Gb!umy2(j_JlFf?%&8NbuM`YtdTV`E0_4Qz(W_$?6Azy3~)nzLO1 zzN9o7)caobFjWWsdnt%f-0alXMsLsy@$kiw(!vYUC(0OtIr(2pa8^ zY;6tQc+hNYcB}Ytvic3@khAg1>3WKhNv~O6)3H-e$g$d`_J9;ddILok6l5P@4)9Ii zPir3FdNOKSn^A!F{25pshs>ZokBf0Je$VAe{=Z$P_;Av1tMTPk(PF(7<}$Ks zCuZ5D3_NVQ0)mZIcY;g-46xv)$iUI;ZO_E-_`G1d?j8|yeINffd==py6tiC0w5VuDlx$22Kmh;XRv>}&uOL+}S6cd7GcBwh?Y_%O)>J&%9qE%XF{L2DXLGR&B{;!01o8b@cscWv$Yv;G&~nl5tw7~>#gk#=M_uc9^u)Gbh_!+C{nZ#Oue zS6>@@$|6{(d%kx-(#7LIPEGwIn0TB?9zisJ{s`l|W*Xkg8cIzrAjcJeK1xDK-5ZZj z)^l_ukR^zj*0}gRDzb=Wyf!{`)B#-7kp}A4OJ8bP&{6sLY}Dv>$!45R&c_z~uq@}M z^X%lODvQkgB`{Q}9V1NS&soSf?k6iN>#bS580=C^;asKD<&70uB^GYSjoYnzXBmak z!v{rHP^N;<9rEDNsT~U27stZt`h;e0R08Wk$nMR_FaX6gyEkSZn}^MC*C{I-$Q1lB zZ6o9GWaAPN)&s;qVZ5PUb1iA$U0@0(9;+fIe#A>MxQ&oR%1C5+lAnqS@hM46DclVn z*m=`~P{FPWes?qT0#GuDHbuW#JEYHI_n^Y&+=Y#H2u3NeY-?reHX@}~@a@=KcOv3O z=z*7#hGYeEaD1@Kq~5vpPKdt|*R`<{zFuZ@%wAkf(whq_+1rI}nsxy+ z+-K|gTgzUrO+(t)0GBGPSx#Zpsk0;+xB--aT|B?j`YrP7$9VxDxIbtHUhn)kFRX!t z;`4f=XgR-C`K~aW)8XzSp7n{3(XqozspILvr0~caOf_(^8+d;H!+vgo z95Is#FGSRogTpf}Juyh5tbgB)l|?|p6Z+A5@NFvfs9v*n^oj!wBX4|6rBF*d|5xjJ z!WLg#(PsU2ggQ?j3=b#1tUC8AEG*KYwmtwyQn#wtVN*%KCnVSsc8zGvj(YlrbwH>i zttc;Y$XTQ5ILl(rl@OoY3*5YI>-lhE?lL4-Ec7~Kr9ZmVSFfrq0^&9lZVW%2m^SfF zkSin0w$ZlPqZJ7Zp`_*mUCvON=UZW4fF85Omv4HB)LxMhfl%&q>@^cxq z0PGmV&xvkkS%95)u{?gu(8wyU07^*fKWa;2-*too{AT-dVK{WJ4q{O>`Guu-#W%{= zCNSWHZ!19+Vo^BF&C*KJZzl`bYFeYMZiwDFJp{+p~MTvZk_@sCdKe=I0f(k9CI5oqy5TqWhD)N&jsXRKSdMb)A_XSO5WW= z`**aUp(E{H{up9b^h>$y@1P9DC$98`1@8dZ8NuZzJ`@-B{r%(Jovap|HBTTh9G(5a zn`?4u&5l_WE`>I-@>!5G2wI~v&W)=c!Z+5z{vyejO)42^;QwBI(qB?45m2PV1=GOn zb*&Q4mR7VwH>6Jy~N44K|H11J!_sjtPb ziEz9avae*DXDaISRHODC;fH^pvd;1QjMg6n)RTc_Zf9akEzgV*6fMV zs>!y4J%u>p!aOkslR?EMWU`&Im(gNt!46}m0=LwLkd|rW&(3exCmAYc;x(u$RC(SG zgIIyan|B{r1hXQVVN-)K)B)IV4Qu|}TJL1MH9z>E<#G<8yCZCWgdVdZs*8VRdd79}7hv0UaD#O%C40mL#7nP^2tmR1hXqH@}tq_|9l7_vo1qKTXi7(9FJ z1?>lvBMh3pFy1{;H(;UiCav0FdDPtO`Y~1yr~Fk|8|d3*vo#H0&R27 z{1+49c7=vb^!`?I!Tqp=v&*?!`JDJvCftN7O=aKtNL_}ilqvxxQx815S>HuPz*OQr zS42qYjaHowx+uk#Tq?Ey&ut(M1J_k|2#!2j{p^f?u>zLgaN}zy1<|-UxX!0#XTgZT zqbKVV9a%1K7A@+hCuespwd}c&B@O23B7WIx@E>Qj3lpqQOuTD=n4e`}c2Wv*#`iYi z5B<16=m?Y@9$~MQQlLqx^lkG(G^$@>QS`-by+aDeCu9Y}aJNP6d-GGTQvhYaPVoj} zWt3};x3;z0^<_fpJ6T;xOyq03K!~86{P;V(_s6Ei3GX*kGkx4@W~W%LM6~DxnNngVOjKdxovGIsiw@ocpy9`7az$$!!)n^E=BEwUxfXCoK zZd)h-Q?jve{8%|L+HEiqx#9z)IX?;Hk3PdPp-W$QM0_QgeLa$~@Q6m6tbg2vH{iJ2 za1!Q`qZ2RJ`p-H?>|YhD$%tGEE-6y}E#5c%b;(6aCjoy#DtaN(||;xUVJ|?4*%} z-EspGFDT@`$bVm4;kYvsiBLdE#lm3%IjBg-aR&f|KRRATJ3-tTH%RDBJysQ(1^+T zsr};t1>ZT*g?Cq1n5^86eMWD3-jOPVc&;v3)K34Kl+>}wGh8b(PUmpFKk+{e_n20F zU%hY~Yu9L`MMDjS+&BBw5?)*qYh*;v&(mUW31**6Z7VyoP6D})ZNvW;ONJ!@K55eS zhOtj~Pj_+in%sW!Yz|)q7XwgWIpfpFp~VvZ$@n_EFuj{1*P!w9eS%&`0A5h=vRnL`$CmS zg)%BGA66`Sz<00548{W8iNM2DL>aSgr1P~|Rh4U0d_zIbCZJ3z*GO4j4=3)FN_AzZ zpvCWx+zGFs&cWQ!nOc8aEUGYG0Z%hbyp9%meNl#AzdkZ2FnVhXuhu*K>8wr zfl6oq^JHg>-4F}!eKe&s#2nBwFfD+3whujdJ&fjlJf`4opFIui(lIkaCOSyk&bzTX zcmlJU=B<#zC3tB^d&LM+)3UaJ((jF^7d~!Tw59<*B}{vLm@fu~z0X-6TnuE>0spkV%{&mc@_M1@jFR5%38Ej?u%TX` zwp2Rwa_r=_muQo@F=-P9nvn?L-74vI)zcm^tBrv*mWH(7~zFd zu7-kd1^mP7+Oo#ytZ^33eK9|xUV2x`<2Id4r5q+9-WinB>uN}w38TKY?KyVYaN&)o zyVzh3L+$2@Z5o3!F6)@K6tw?fMM#^L%>c!Oi)KhFbeVAZudq8XA0 zOov}j8om>6BpOYctq?F-zq#M<8AhFHX?X4r%TJU1da{8vel&IWyv(Eg1T zKCn@NbfxrL7y&T8pZ2NW+j-AcvHK*iMh=%r#e57)Z9?!xEXvb^pQMOpq8X@m7?;$Dgi zpIqPhgwKeq?7;~6Mo$b|Bd9YH?vqt~DAhZG6(HTu&{F{tgCrNzKnfzZE(|a#K*ea} zi>qv5}7{9Mby{0oIl9k zlSdgYmyc7YUZ(uN6Ka3vNb6-H4ZxrH$X^$V{Aug^w$$E%R_v}VFYS`6LjQKM^2@#K z3-S?ci4!IwELMygEfF@#R3R%lfi%Aj_)6=fb)PXB5GOz0SiG;CTX$=Y&m05zBl{q# z!AJ?l?$MWDy#wZO$;Zi+L9y2$tgX^GT)U$=0{c%?y)K-uvEkAzn4yX&3=m7G$QTUV zsXpz5s;U*=4knfqf%PQD$I?$=+eRpX{n!;S{-tOxGsM-Lrhs)IgW2eXde#y~F?fanY)d)avIlZ(b>7haWa&fH@HR$Z^`xItF zOIc%~?d?LBd)bsKb|IlZu#S7`t@rQs+Pv&|*R>w_O2aBhPQV!vAW(aB8`CYXt7~BA zvv}Rb!8DgL17wjMR&p9eb!ysD)Sk3k6@v*7t z>4Aw;TAQRm6DW8*cq7>KDjT5d)UdVc79T!VYq&++peeW7LkaAz51%~%Goagz%W!wq8j5qeom zV*!{B9+SSl?xRX#SG!Lhu8f_H7c`_w=|&d-j# z>OH&bNm^J^5;jyyIMkSgG*kT{3LtU6Zm;Pb% zRx>a%hQ(Yfz>Tm2jML6;yT3I8tR7nzUQ=jpAJBP zPSAGaZ?6C4<)!muzkR^zW7k{J1XYX0HqxS3h#OeO9Wl^`4}VO1DW@HNx8`9O2&M{!);YRa(?E z$_|1a?j#~AYGq}&Vf_4YAl9e**7L+mWW)K46{w=Vt;Y@nCmi113%F1BTxwIpBWmB# zHb@q}D|@?wcEx~ALL%<0{ArZY9ylQL9tUS%6Wj_;ImtG-ZTa;vR-gZIu8vfwE~RKk zgSWRW$l3*ax`3u2GcA7X+hePgymSC$-o(^o9+0_*gj16WSW#2|+sgHHbDONDEGca& zjsvt~gpM5nKmLAyLl0HExJ`?y5fEe)$1o0rEmd9I;^A4@LJL~Km_fjdT+bm`IUTw$ ztj%Fum8@*kO@im@X7rqb^TxTl5bv?~uQ#Zu+pTK>S&)KW$<>#$%K{hxunKSk@3D$3 zp<^aryssX)fGfmH&sR%PU(fPA1CI<2wJSiB8*VLcF=q#B-VO-t{yd)7Q^-l?OZt(5 zjS@K>e(OmelcSqZ4up}}S$ASUMqkhy>JB54qK=_JQ-JB1Z}NzIGdf0#P2+K`28~=& zj!f6KJq}@gxdrb!yvv(D+k$r7^!7L7_JemON^$nwS~wdQek1ESk{X!!;Z?V0&ZI@~ z5ae`DGIdk~0t`?>)@?z=%juz5#Ej8?A~42gT;_6%pO(n*|JDL5ty3gW(xf=d)Hq7M zb(fF2<<-c@Dr-C}nb(jSedNkR+c;X$mNT`*MCg$KZJN?DkD^Wx$)#CZ+Z|eXj2&ny zf-(VKh0T~PAtURDstbU6#wDFZdi{SnoX!pRF8|~b_rd>2j8SR^!L%m)=MvGNQeSy9 zFbybmJtLo7T7l08$=d4p6E}a7aegEqvkdREpaDL#6e$qu`aWEaj%nYVM%nJU@wwEh z?i1kWmNsZ72mZgPn`_FWfPiYylQ9Lr`A8{5VsAXY~uh) z)C)kL*!hFRzsCTWym*%Wl8=!aDr7X*AkuuC=;;_%7#gvEyGk_h7W1Nm?uSf;cxC}@5;Xk zuE_bX7YhGZe3kbW64etgt5Q2|5Pe5XlPMIb(BUvAOhQ>gvG=)`#K-3{;Yh32J{A-A z;WAIpYK&_enT|O>k+I6oredO=vivOlmK8qQ?>A7srbtq=o8+8jApfIRw~LiqDE9ep zb|HJmWc^m@d1aPymD$1o_XV`-u9_z+l%ieCQ`E7vArR=;2RNVa&#&uTyes?-|nc7~d zJXy6ZXkr1R3Q8x-x~WaDnOL?^)wqoPM)rTjlVXZ%aDdDX=#Hfnr70QBop0sMM-e)m zKkS$TjqrR_r~91e=~}`*z5+n7fQyZkhxOx>$R9e*tK9I@ z5RNa8+sF^C&pGWdw3x#oY>v*66kMs)P}pk1$Gt2oF$x^I5*d}-lk9`agX8R#tgP(l z=+vy0$Hvy`POg8KF;Uss=?5n+AQ^h;M5!Ox?Rz9`Fd^gjZ$ApI4lk3X$$k9x`ul6C z$ix%8Z*Z&pbL}aSo~yjDOy9sKQ;=pF!}~WK(g2L(a{l*ZqT2r7*rl71g9e2(QMT_@ zQ+ok5Rp{rH?5Bs%n4SGG>tznf;`&(CQVQxSzo^(V+8zQ$%Xv}{ z3*K-33R5Geq#A-Yz`{<=C}{e{sc8At`KkvBh_w9q>wa$R&XFP?Xy#GUe4?Pi@7~F7 zsfWrP6m}CQ8gMl=3f&)w8rw#KU@9zfhGyjC?WrkHSl=MXRnPy0Sfavakhr$p%xzv1 z6CEG@BkR_6YHpxuxqW5;W!=~5c$(c|vrPsvtBTp z0!}hMca4-9px3gih+M7NUd~Y|-@}+Tdu%hqS45-?O+`v&{|0x5*m}ukegDYa*^=%r zqbVcyC3nlifZ&LBld!%0o6hWLJf1qQ>9umx$Qql~v(^$0Z;gb(jAt2ObW0 zk8=x(eqBx(ftF2NMk)gkL+4R%AQl?$srrUL^_XT9S4I>BcUN$!?@7swGV)kZkkFM4 zj)pZx%#~OBc05|H16&q$U0mwdhQ1g47TF!>4>h>m^GaxmS@`^ax}v^6BX`uW>av4k zt-UELE{G`#Wkp%v`1*^(KkjFf{RY2>i;|*3j3l6xw!2&byHoF0nzrtX2O!^i^*z=a z$B%|n*(#Dt-g3R=!X8XGm-;ukKDIGuR2F>|*5*eYTi1Fr2)vONK%;z`wE9E$7Yg=_OtsTDCXefWcuG=e7i*IyBx8MAg5I(*TJlXKs8&K{mflTm?a za%!e_e0(w@>-H-<#m}(4o@MSHirmD+)ZU#7|DKt-1!+YKOhp!Ug`psQ3%x=m>Lz&j zDGrynx@m7%s~pG2Cfci}MI{t6!e<*lYdi3e`McHe=~%B6cBXt79rmb3K!`Au`PHj8 z7FfMJHPgM6LNX-rcrHU1rSXY)<)=i>y1XHeQ<#;MjJmkAxKQEvn!U&ER8_067c@uiQ-N-HxxI4ecPr^;yF5cO}nPACj@ z^>$Y{Xky2bxg9Rbi)#eCi9E>Myou64zh3e{Vd!%HDe;qcqndJPRG+qvCCbX0K;-Oq zp-B1WaeZCf>9|GpX`9y+LbXY9~s|$x~nF~<(GB4yN|mm zZ%9+G{=?48?us44ZGP{EF}(xxSLWVqN;tx_<}Xr~2qJe}plpxNpc71_$ESv?ko=C1 z7PObU^LD<&$d0oETv8+^8b7y-ad%u;@L_hY&G?bS@j7CFST7}2pGcfB|LrA81uY2; zKQLAhCD@P6O!uY+hM~RXh`rssh+Py*GBCJ3KVGL-bPf#pJ0nxU{N{l-{qB&ulLSK| zY-$kJ5dln^SaKuR3kFpxTOxQLq6VF#`B2zKYzf-)AIC&9hb_uAfQyU0@cU7B} z0HYDY=kXFHI(kwm2943g<@`7h(|4BS0=f0&R~;uRdJZ&ip4H!ye0=q|JBHSWUv;kF zHUA}_DJd&OkF|Rq%##-nLLZrzwRf>OBDA!9j~hJcZ;um;#^x5EN2Anotjc zB91rlW>jYf6eCd4UB|}SZ-2)6E}8J)-!AgIdm$pS$saYG_bLtQZ2!S0l2F zDs6g>zjGqp+ZT6bp$yiV32{k3bubeGn>{zY=aw#9Wbw5p5tpYH{OLIZ3upJ{Dh=V0 za(On9bi-wGyEoLAa5>q!L%EpJs16X6jemE}Pbv%z%^z`UTjL>NiU*ykSvgP!cYxC0 z9~6|y)Z(^}#l!>|A{IrOq|uXy~Dl#l2l@ zJxMpaKZ6FA2Ek^9VFC~TEKFH(g5e#?hv&^sj*+PrdMPV91{sceOvgaw>t*n{Aa)L9 zVHJUtOGqCEH?%BNHYzbq!sLX=|Bed?MU6e9`uDKCpC?Z;$4!BhQ}3H|T3k3m@VNs? zD1Az;u0S||C-pyaYZG8#pw%d$p&GKvX(jln6dHFi|Cna))qOd9fKZCTI7e<35C+8c zo>{*uCRzavl#>LU13*;g@MSPCj0$KZ8F4OSFrY_97cpzI@Bka=X`keC7DAXkZkk6+ zW7NYgCTxLeEOOUZ(P2S>tk1d&s>k}vb42Sm>lHzvCbMof5LICNyji?a<$^dd$suH~ zAfz@hQMq2P+@?6mzP*jFX7Wv(nLCbz2OG34% zR6ZIShAPEkoFxmSkT6jAUB-|W6iUoG77mTfi_1tLSg??=y-&8fV)WAd!)@08gZrc7 zy25N}m4vyFnLdFwpP$j++=-R(&VPQ5Z@h*_qLVC<8Uuzd(Y}4#*29MnD|S8t1H8tD zYG?K3Tss)vzJK7W{>e!3(A;*UaUu)mo45uzpo>>C*`cBuFcfowepy|8NdwA{3KoU= zMh6#{*vbv)H(xm;?*v zPTK3;u=B1!^JC*vj8vT=l7LVDD*b*GpM?Ufq4kOBE+1OE&QI?=L#3t4y)3Zb(oHNP zF7zl>29AMxQW zwEBVNg`B*YH_u{z%;{*gGVIBtW}JgjNYR4BIXAiU!KFw;r*yLT-DJ8;9TS$yOB2Fi z6Xe_Fo@DhED-&t56R$_EoNl)|UIKeR`D6EHq*{;p+e4Yqo~zRN2Ap1`lYevn_#B;) zPs>_j-2y|_eJv*xqFgVg20!ShU3L9#PT{PG4?p%Mn5qFq(Eh$lGKIGxJzDH$as{1J zz{17ebk$(NU$C@y3ohbwVkOTnCd+4TfS0L`Itaj~Bw3OZuY56adEu52Rz3Nk-Rx(H z*uYOFo>fs5*@%o=4!i6|aPp=)%xcppCva(07G6ARPD5vC*u!ZE`Ud~n6|>I$0+LJJ zEORa2BO-~Bq6hSm;we-C#j(aqEvp~OheI!o$a9N1@#sM#2K09(u8w%Mv$*b%r>@Q5 zK??m)eexrb4_n-L&pVfEVhNUYSixFr9U1qpHFz$kp6(jViYmApsFNR*{xn1RpnvFKAqdc9ZCVpyBA6k)LbWf3VhX2Ojj~?MLrd6KN=DQp@|PM12WT z+!~_+ZAm>ClEyhR6TZUeQUlQY`*DcdCvP>BJ3P*Jc+etwrwjz1-Abx)wolh2VC_?R z+X11~T8-ryotQSzpZ&l{S8ho&7%YcIsH@fLCwuloLPXG-e6c1bu)5L{$<@P2gi@Lc zr$z~832TR8`LnzyL=47OrH2QRy^ZZ$$6OaHNP?*=wN+Lp_7lbcZBvCwZ(P~+B{zO~ z50-+jCXPhZPr*`TeAKEa%|#Eci+MIQ5zy1dUMZ++^oi}1lvP)daz-4j-}vxGP?2NQ z_I85rq%xIHO|u@6u9MYJ5##4!!RfXBAziygTteYfXPkIA-jcY)#K70~UMvK69iOdt zJM_y$Z2d!##wqc-3(^u%ZX!aStV*h}KzZ4SC(y+CEn9FjIXA*?yMs+3dKe)r)ZuYg zN5O9rks{)FXJfSFO_`M>m)+m1;Rn#fmM!8xE(^5CHue7;JlYS>q$2J zpB%7jPSmq7rV`(FHB$e!a=ZpyYJ4bCe3g~{3!3i9QoK)mY4TUd2-2W<@NW!Gq-o{&Xx@i@vZ0goW<8tuiw%)Zimw zwmx^NKX>as-v(LPTt2+25EV5sSA90R6sJc z%SxLLlYuN$`W^v2ALtw=QUUF|Wy*$AFc8ui_u`pE8SE>cyHgz;>S z&a-cHB5<2!LNuNb==5T#8BYpT+I?yL;4U@9>%P4PF`gE8oZJ|?(7pCWg^zjD`=vsV zh2y45uFX14-h{!jAu=??`O07A|Cg=}`B`+U7KyG!fL+=fwp#mHN{ZIJ`qC1e@jI}R z>?n@yIrdcy`Sym%j%O(33u7?TZnM%!AGoC~R2gIkQW}5xwWLKXT;1gUMcp*zAo648 zFq?4*;?D>}akpu5WBn-fEfSH55_-+&L@U;cYw=|FFC-z`7YMi$=kEHtxok#*rF_1$ z6Fc?%>YEjkFH3o}6E_CZ^A$p$;53NT2>H{I(`5zKPqU`Y$9lW66!OO`iRh`#p^Frt zw-?bw1hdCKiMOm}UE4Fhn9W0(7Q-GVAy4Oc1;pzX9$oR3#cPkD60ZNgUu;v$@*ZR0 z(GgY`<;HwQL9IVJb@(@1rLt&2^NXVP>Cb_d`g1=V)p^Lkq#2LG9h9vT&WaIW|jjN_BP{X;&{JUVF>TJ&e_ z`xr9+`1}F8T0^+J2( z@5Qe-4y_@3y@d@SvoxB6(9QHTT)y2G)q`18Mza+u=}ENQA?Gyl%^xPCF*|$xp0ocN6c)X3tl_x!!;){ zhd#V`IJFI|!!{X8XTpK!tq9eKuEKc=_2diRk+$ zZ%^+o&r*P8zI!WJh4a39rx!B^9Z&f-ZuLYAIvJ^12R_*m;iK`B92M8vF%S-6vg zmA!_UmsdhY218vP`*5io@jI}X!32r|GfY6y5CTMrPGkRLlONQBOLS5aLR+`wtX;iU z)AIt2DeI3#z0`8MjqT;K765V_E;mMVMpGR=f;gDOUC1ABYsdi$$wI6G?{cH^9GtrmNdLr>uMX24(a8#n#aoSodz zASw|IKiBA@nm2TJ5f3zo8`G*ffRQ0v=R<#0X!MMI{Xs_M#jmRr;_$_I;J(E-wq(hg zV|m$2N=8O3hJ&s8yccR2BxVtUy8-ssGI^_a7;- zh6xCOw5?y7;$SsQE%%RM_`bOH7lgv}2T?&BI>RCp%v_A{5c-GdTd#~f!8!p~oZZ8< z7Y4?sMuLV$kGfM(+MK07 zKXdd|NC6{Uvlmp#!y&UwF8p`!MXXm^dJmUC;zfU9xX9}xOx{S;Xw$t>h_P<0+(+*;V!N9{7#=NwTRW#nMzan z-?!O#-|*w(FC!p@$!RII(NKijZ%@K&H93ZHw7MiQ&}&1j6?4c6RF8ti>fKwKGqHRU z-Ms##%zq!jg1ZxLzAjY`0d|5&1anZIZC=3cS8XULNJ>hEc#zr857JmuNv&;d?E^$M zi6O-1mY7OgM7f4Z*~r{i=HyPTF{f&2(<+>6m{@B~k6D(6b&BZ756EpDLPQAOCo8F& zTU)j#-gGx7v&@{FLoHs7eM4Vg7J4Yb_wbFibf+39MQL1yEHmJrv6T6qVS$}d#+bg) z07Fimi&Y(J$e!FkAe9UFRQW-yY{LyxR+Kxp-{_})VpqJbO32^GP1nL^brJhTMd`o> zE-#OgjGsRI@Q_wiR1{1ER6>*BxfRhmhZ|y-V}1num(5-qVBa!rt*i_La%>0#qNELCLs|Gi;42+oL<G1L0usNwX$K z*j9&=h6O5wjB^$jp=MxkFf+RncjjH&o3e#(W+%JAVj0kI{|#bj`wMumL!*oRBO{v( z-q+D>b4t|DXR{|v%#V)CW0N!3;0eBWMzI%Q*t&EHpBx__zJrgyjej}vxl+3SuS%(Q zD$2Kc->|miYdl_m-jATBC!{jQr0(n~E`4qhynlcZ?gjHlTq{3FRo5*MKu*<8VOlLX zeL-}zLpz&iBwr`i&lBqF=R-Am`UZyDOj$oOHq_@-^JQdIGOHXl{*S@(-3Vklr}xjO z^*1GN9c<%wC{$Hqn3(&ENIU@LHuRD`ZWDTeYZ^_-;ja5xfp{^JqKBgI!(!OaV!!Sw#HILfyQ{vlfd zx7o#iZZmYklx7)wg*ULy%1rD`!zQXH7Zf&WL`>~nVwlz-*Wio2y-=Q~nc(#-_eym_ z1=pAaQ2)$on@nPq*)&-DpCi6&y8UY|zte(~pY*!qwQNmU(!Hme2AWakiKxVsL^7uK zpUeNUjBMDc#NX>XEfFxxTF+KC{!Ix)#3$`Zo@*@(-oEA!po=#8Lk>3X;$6>{mCi{# z?&Um7Gz0w=LfVoXlQZhU@RjmL(0)3N9iL=FIl%kg!!%n@&bICm(Y`#k?K6A4d`tdc zhg1$mvDHkt)r^ceWAPNbMQ*dlcX-tkhbw13XE8k|0d*CCpJwJaN33^P(nhQBb9&&% z_e$F7vpdl(1MI(ecktNutbP7q_sSjo(LG#(jpOW@$j1$M4&eb8SH~!x2#xY#7zJH{ zX4gRCLDFvj`M%(x2a{5g!GXV}FZGBWuWeO32VrApw?LB%!^eeee~r#+Cb3nA1jUU*LwuO zP~sBru3#g7$Dzshiw*wO9^2o<&j??GS3Qu+zWe1{0~m?9@iLLobgxD0T29GGdq2FWi5U%%5i0c?Hl=~*sCTM%InqwdK*7`Iluz+ zXWiS1WhQYxa%k(^_6W$OeB2`T$aWyjaTm{AN!|u|g$<4J+#WsbBqX~Osaso*v zM&!jcW1L4wKz~FMgJ#YD=^=jzvJm0ojz;_cXaV}aa+Ur}U(|#1n`R$u4wN?fL&m~p z1)u68HycXD9*2!Q;-^B%tT!a*gyUe|py` zIYPxFsjCZ%v&o0ztlgMam4tn!Z5*mGP3^c)NFL1{Ry0k+&gjz{`WJu1uk^rZN?4c%ingE4MU)5#nth|g2P9R5Bd8_-C9wLGrK;Ja}cjlgNai}LL!W34VYD$WzIS>L81Q3_A0hd!$!v%L< zA%_OtEF)&^>}V5e9TC5Hb1>iR1%EYs^ffAAe_#S#Vq)XWenSVJB7&Bl_Z)-+m=_Fu zl?oM(Gse;6PE1P7sUzZGBxnxrXzH%*fmYAV_4yT*rL{zWd_%wn^zmGPE*>+jI-Jvx zF)+XzEaw5Tj~YXl2Fkv{tb!s+(n2ds6H5a)2O&J38f61k+U-p~bMT5M%Ihl@1prU4 zTOzPtwb4_RM!zw~9S0v(lHZkrML6vR!am0pH6okMtxwD=dL4Qq`lTe{pk*No{}KTT z_jQ(j8Xy>4<#(cVeBA5i$#h#y8B%)QAJx&_Q7%s3v8LMvqZ=iTZiiAF#lyu~q!A5ZLwoye}L`b95|9id(BLbNjYfnQ)S@W z!WyfGMuveWIDB&J-~KRc$d*{o?lCSo2aO*fFG5sL*00?AhetA+8zV~A_O$_T#!#{% zS~~eVKD9s3IOTr3EonM<-OzRp<-W1j=hyup9xq)V<((tB3DU@|-Py2t=l@9-`4b;!Z z8@v3W7#Vqk7g68&++KFX6L0YV9$v?4G8k;;GaDJoME-nwFg@7^D+xKAuf+W!<}6A0 zNveRiXc1N1LvyUzXd`>xV%O}uW!+5UOJ^0pGm8su!<_}v0#Dl(_8!xkl=!H>? znyRY05k1tE_dHyzMh9cw+nW3&{q9ZfB)*!rrF#8SV+}NI|D)x~-6=~7JqJ=CYT#u5 zK`8-D2BSbS%TDpfdwJkFL|)EKz=GP#|Gl&4VpR&)kB3B2jNfdzsDM*`Xx~Hrw~QyX z=}DBxIHQgz@Mcs>pgavo9q!iX5n%XoMBEV(XoAn0r3q1FFZR6%6F5@#4V zVK9TYXwj1_kKM8@A)?utRh-C+hrD#DubK~LF22rDpL;%59K0T^;*1 z?ISgDV{XPCkgC`y-x~`{fIko=e`q$$2$Kt*3M2WZiGdhT7@dseOFOSK{ zfZqJXLg$~#77GLh;?nGaR)YzNaiLbO)q_@i3sQTrDh`$7Q1li4%5#X1hj;t*M=BnFS@iJ=@qW?*XpDg2 zS>x<(h(`+xk^9npSt4;6`#j^d9h+@;;DBwy(e@Gs>X0&%of&1i`R!{0iQo&yZu*8a zGI62Y$t=nir>p3cn7*p%04w%Lqhd-ppg1U7%ubfQa&1mPMFn40SdLhLreZ=dAvry_ znWya1WOeObTzNmmjAlqrTw7B?7G;&wWmN2M9P)@TCL(cj7+;5Zk~nd^_T8?OAy&%^ zhbqUnzPs-Cf!H;nHs-t$Aj|UKKv-Lfr?@=5zni)%F99?7@PrxzY-Fuk&^0&Oe4kkN zWS&%ns#xPotmOfUk&L3-eh(oRXXGzW^RLLSyDKrR9$2j$EHLxdmb!6?XKkI7slYUV z2vsAut>>Gvq=KK8lw@)^(BY%64SZ^>EiPnemKprPw^;9d0J;6smAsf8?xKPz(IBhh z`-MI8YoU7V#s$nhfJz#L_~=N**QYmN-PC3WQehD-=@`Pf@7=g6vQGca56*3GQ_=Tj z78Jb;WLYZU11$w8oQR*5)tSoM?@+=-J6&2GVt9~o>g{sltdw)mHjS;oRWniafH>~E z=@S8RdiGaF;(vHrw~Hwz{$|_M7$X+p>1x>o)f!hqmI6Cx^hI;k>&bObDU(~|>^)df zK%Wx7bcjGL0rzP}v)BqS=C9JHQlD$kb~b7(4*DhVH#&wqHUZ;XQHtTm#gD;9?*Oie zt$wDT>Xb2CkbdO+)BAt%e5NS>&bSz_9|Y^! z@95YbV4MebWIVn)cNxGOeQ3&~?Su19XV_O?-j(^Z zULh*EalNqvPCM5VZi$lNh?X0;p!ekN_fT#v0^S!q#F(%48&AdmMf{7t;(MXUtG5B0 zuy|DD7BsI88_W|tlmBD!=hDgYoUC`03o!?B0Q;Z$NcT*N0OK|1*<@=1$Pk-P0Qx6* zh5m6hXw93y6n~$lM)yXi?PJdSTpHWesr(8Ltx`XF3xN00*TRZ#i76DO7r#NG)Mdj7 zgNv9A89fm`GaEM}Bdvy`8W?%qT@bncjzlMfukalt**L2^d%*Y=79>&}mo@W4{vmSO zoQ+>sFVjaoPW`m*j0#7InvHtez=$aNiO3Mx7T(4|I^y42T8)(bfi*twmEKx{v(vVFOuryq&1qdT2DijkO2yHz-sOywC0#8!IH&3Wi$66k8w z)}LBv6dqNhgZxPE38xa;7bAbPJCUuuD*XJ%BnHZV6eMx0 zc|uyUi?W9{i1Qjd;34psSL29B{R(1&q1AacdWX0}y)fVgXDJja5s3quaf+WU$~kEM zDW+)Ys((hILO0z~xsY1|x=DUsV$jR5B8=u{7j0oON<^jYAksf5Eu2;hP5oc#qK394 zhVlz;G|)Qqw+sl$Ds5nnsGn`XYqWiOcYs~@bvDvpT*b}_qyqj;b`#;T;4LHZr2q7e zrsJiHTZejv#v`u80`O43B+&bA$6+dc*gFHz%T|$tW!rZs3~&^xY?g7~W4Xmym8xQd zMY+dWiP3nhEMlw%?(95(0g9oX6hNA<3?3-^eQ5Jz3$4%G@ zOb9Q20dO_V$K7*?;;*y8*Tla+uY2c)gl61E0j>H?96EHdXkGGuBOhS1SXVf_EB<*0 zqB-JT-U9pr{~HPDOQaF@b96`SOvD6Q3?2ID=1v}RUphdiRK&vr)9cCaABEq=P`Cfx zACo_JJ0pIKz;3kH~-p-<-Xj6)^kTf5M32SEZB43Ii{Ue9l> z?NrWL3kniw77TE@JliKw^6*5*BOP}e1&48dd#y3@<6nO?fA9=upoU_jR-Ac3FLj(2 zVEppZCO5}byC@BeY>J915SEpdOFnXgjVE3|vnU||!E*WxYqEQ|5AGyxh;b+&0nX?B zzbn`_@;W+RGcs`@wuKJ&q&6bE-5?V}t=ZS_?e2c_G+-_|0e2FB^mR+t_7yDHSXk>5 zu?&EG$vj)}kQ)RbzP*Bins)r42#B{gG(^?kd4Pd2vpRri+p`~ESP=9QW{Icw!KP-h zs-BowXkSXf&z%&Jl;nvkKl^oa`23{tJXq>22K*`_{?G`B;kL(*A}cRzlX8h3Hw0(t zK6kjUIdRm~dbYL+l_ml^%{QYEYqkv_+)jUr8K&*<5U=%q`UE8Z8O@eh{V3;7VP&mh zG*{0kakXSdrY?^xyJ>4LxS8IGpacM3^mg9Uz{P%WMDb zY)cbj+nyo?yAv`{&jK*s=;7KNxBzFgNB11&upn>t$Zr(}QzBVpRq0MWN3lU(Gz%^EsxEgrK*M zTDmfNPSf4CnOYRb{cTQuK}BfoiaX->K;(nFqZ5HO9Y{DkeK4Rz@Z!@|v?>t*l5$I9)6~ z11^!+^{6z>6B`)S=-t6#LuzVzt1H^1^i&twgx(Q8*Cqm=h>3}dhFw-3evOaYwcIS9 z$SJGW{Igi7G=ZI;Pjqy;Dl7ZoRp$HJ6HLxsD#Yl%))Zp@x#{JQaZ@4&hU9?1DiDCK z(%%~1{_?INo{+^bIVU?C7Ytc3F%F!tfXgbh?d=`N-Mzi+++3SsyA)o#1fTmW56|m6 z<4{p3212e|rIM4re|}oGk8rgoylOS3r~5-ABao3;ge70172h1&=5_|rsgbjhEs3Nh zMM-IxOQ`W!9cfF!EMEe2`wK`Z767)N9zuVc5xtz8Fig-j5hjq?xgA?)n`r{>>B&;>$H@46l>jTwYI3;+Fji6NM^m zb&jgzRQw8wiHWJuT>WV?%Ig$Vz2CN&PBP9IJT8{mH6_2jJX`{n7L(ie9M5_V8uM*T zw+C@+=PNyS8us~G*cY{Kc?$=z6S8N_opybVzxhfy(~(o;a@p!}AQMhstPt|A``i=0 zpo3IredB_H0q~0+yLA~vn8|eZi(u;tq0Lw)^}2ElHw^EaBH_rK{DgZin!nKG2LLzZqer5|?$^iY1C5Sd)-B!SnH zb5jzAhBSy_bW^nA*-0ri6Jv8I+%i(3$ZiNA2T+*)WTpnGX$5)(4#pCM5wzE)=4O4j zk`XwoTxrTXQ3J8{%^(s`k=GC!eiH&pN?J_J zW%o8$z%9A!r>pnv69rBbyP0Z&{E2jsKXKZmmsn<(!dC|!c4$zm|z#IBg4xc-~8`V%HLlwVuZ}!H|fwEk{v#hRdCa>7vZeb9RvL+AgS75a}SIxtv@prx6r zc4Vlg~AGMUmybyUrY?DYyub;eB!5eiVaYb2q*(MDnAuYJ*tWnADh(x>I^#a81RHk@G3rgK&B+${28-573n#YJB-S6}AiU|x&YUD+kZbrp_dXC?Xvi=|5C4xihn@b%dKe9vHdnRh6SaG8y%vh^$S;3uK z69JQv3)~*%BSRAlA8(%$9-M}Mq%X9MHZPF>HL;vKlHup|aO+0&!~rN%-BSiQcBOTs z_~8nu1o^J`)5w7qRZ2?3ZE9@5$hJ2x%=T{3V`zjcZGSFqVwvNMq}XWiMQ8Q~5R%>u z-FwCH=Go*l+FV#ufje<|_W$u}(S696CQx(#Ut(pa;Xh)9ofh@SPCmd=a&3M_bsS1Z z?B$bollSD!>C*bAE=s|59;SfoCeCk`4y0WSq7}fKl}AnU$+|zSf(eF%J2k+ov4E)? zC;Rwda-?;c>}@CkPrBg;ka=l+1g+Wg_FMKGKFgEt?b4LV0S zYH##{gPt8c3CcpHGc-;*mO&+^$@#;W+z@BI!sn0(JufD+y*?@b|94ekJz0(&+#b`w za=Dx#_4mIAI%@mFwQFU+_AJ2--HJP{KZ#4#Mx$`z*`iTXyN();4X4I9iqXTQ6wtg6 z5wT6ZjcsMdzK27spg;mVEuWI+Pczu?1E!<9d)={qZy&pB%Q-snw}hZIMg-2nsXHcs z#zn22xuNUT^}YDaO^shl%`QBcKztzZ3;-r>Y@X#iz;4*)rIg*|=hQTK z?h{gKqCQ|sD!Vbk_@x0@$zBnmki~11&-05jS1z6=27UzP25b2vFcF=n}{iAPxpxM3u zGy0*c5h%qO-@}UC?k(m*00I@b+JkV z9lraVMJv+mWBm^iqhd9gF?)8MFPym{%dql(_+i`V?>R^nyl?2i2rKcV&;BzM^ghAB z5TI{{ti1C=msI?sqEHWSY4`~{TAL5 z-+cpL)ia4KL8=m)YvyxIGK_`lFS6CxTo%+eJ>c{H?cv6D7NM7mTX z*xB?J_X9|X`NVuv(jYLnhJwyGwFy9sD9BPF6QGFxILHaC&4W@p^>*pyLE>=sm67QF z7xC8MdjK7}DOpg;;br8xxU|eC;*l@r5-8=e?NKr4gw0SSOI~wde7(t)7G)ALzkt-+WumCtLb)Ph`q;#A1tc_QqWReU_!*h0&0z%gM(WRelM0Hnsw zepnL*1IAsT{WjDy{mFw2WuZY6Eaaie;6lJImyitAMuA!4zi@YYhz?*!0~ype1ZqGzaZc;0U*ivSj0Rmh$3g@F1;84ZFl3semt8D z0e&Q4Zv0IelrnS~34b4^8WGR~))3Zen7G80gbIV|;qz;YUhs3@CR*l+9-#9D6CPxL zEER>yEz_ZkV~3wgr;`{2g$9NpQ$H z1Y>v4>13^}KAiOu_;$PnHt^H2=!CsUNA18Wr;*aT`f?8ilK(E8VK0zi1-uWGA%I2k zZh7vGLMOc+t#j1-QhR;fK=^67&;tA-;<1X;1#%M1m98Ut2lW`UFMLwY=tOKtmX_qa8oEbRQlp;j2BF2q$A z6F}+-!UxLu!Odmo?QJ2Vxy+gzg@=H^n-~8gsDv2)GY&x-kUjBlbQWF?n_hzu${eus z#lfabxQ(b=Z%nMHF=h^nBwt+o5;;1RUSs5Rms7i0m{U7#3{RI794uyAw*>5+U5OaA zqYm}FQ|#4tz{lgLL8l|@`W!pC74ClQWIHFMDaHVMV@<&}KQwiTfb2Ju_Md0&S3z?% zG0uG>I@ajRRLW8$DpnOwD&T2Os*sO6pr0 zBx&C4r_ZJRkq@l->p9fX5v^LZcZi))(-Njgfdr;V05EV_)DjktNBs2SzxRHXK{JhR z;hj$Qu=9*&2YeSA?3bWm;ln=Z$WjO~+LMUtiaY;gy;_RQH^#RDeavtEg(M%$ftbxN zMU|BxMDep67jl?d-=O+x(~sT*$hITxwv>d==JtBJ|9)h4*LO|DkQTAyMl1f{Pm$pO zX>}iOqMBH1dn+>^D&!|7fyydTpSP|!yK@gT1;5sPQ}PxUG~~Pbb~%rhpY#=xK(7~r z=0K@d*y!T5$LBVW4LT`P^Mf}Tg(i$K+~0!31Sh^`Ui!8FwmU>JDHA}>r}_r`m?~Di z74_@rH$-fSXZdF2zWF-f#5Z8@4cNqAei~x%`1soU0YyM1Z@Kh6AVp&FIgiIw@m`O(%dXH-Ui=o;jJ_@g)CaARQD zgOrRMc;UXir0qvOR5$(kE=#XvBB}n-!$nzOiw6_iPiHhAHSqRvfG%n{C^S^s{cYtw4yi|b-hZ@&S_ zQ%FNetu{2vV`oH|?uqekZlNZJmbF()B}UfD3%AwnL=nTtzbR#i?Ey4ViRyZV+0hR@<0DJHtPN#7YWMZ zsF!eUx(C6+%Fs>wv26faAuvu4y{xVz!iYI*2i|!!pLlTKJcL6scK)-(QwaT9{@ zj*LsfTa8|wKAx6>?8&wuYK}ht)1U&ia+I>2Nd6ps|5k7;HQ8^=V0Q6n7GZfU<_CU= zZx9GD4=X(GCpX*z4db7o5Ho&Yf5=XJPJs0?a}{@;G?WUC?y449+Nj?v>j*(s)Z={xEL^vw%W(muk>=(Ds z2}jdBJTo;clQg_!5=IPuxX8%P1ua=6siK+ErhK7N9=m#S7RuuF_uopOM@*E0AuA=K z(QwpYGmri0o;>qk{?iSibpLF*$ZBUlX~=u1PC?XJlQ1<$Z5UU>}HFr+(Qd45{y#% zIx*0<8{0lv*t9Xxx4-4%LZ02xH|)gxr#e?PCU!vGKNQZ)np#slqY1C@GN&;nR(xhp z6-T_W-13NTaj#ECNqh`bzH zq87WKN_LMaGqHGb=}_Ir#iRfwm3Q@H|B5!zjnqZu(a!H4@8gHRF`P+gO8~6);y=C@#&ZsZ21~bj2Llm`{OSL%yAk36V-j0h4L$xu!!Y z2i0IrsE){!hu-1L-(l*4#DFUQ<9);FKh4J8$^47Bgs8lAj+-)Lu|9zU?v=ka;aih5 zeOKsK?>0&K(*qqEd@3`;CCD;WEXEF;@Wm>j_XRWwRad^ z)G=t6OmJ%5$9`E*YnI?lT{x96A7r@$1bths(^T(jRs%#_V&!dFgB)SI4XIo>unjV zbAkd+&svHKNA0wJF3Gz&dG5waKh~LJOc(GpBvk!YRK*?rIBatb$%w{y_D~vkLVJy@ zTj$#uxiMvhx$0e8?D*KofM{RDKj5-rWlUb`p(tR1sJ`j5J3pSY&$-UE_uBj3dtK|kmoh?In7d+0fa4som6=r({V@7le1D(D9xC(MQCa#_Y z)hK;Wsh!wA`iy9bog+J&qU}6>;6h+I+@JWjRdlEvp}rIeJP2(GiPYaR7hT3Are(#I zjh_+I?Ox_j>GPUTX;Gz{VGm#%$?Gn1&Rwv(d{wYYwUCfFWouwD4*Wj6oHhK(NA#P& z`FgIu)G69~r2cK2LX(uSi$K|Gk~t@t@&uFc=xLvEFs=99h}{ED?7pk`fsXkqwO5JQ z+o3d@`?f!Uks}*I#!ReLlz>$*hS8IG#7cc#_w0hc?8SK%klD%Egnlo?0p1FP zWV+qznMIlLQ%P2n`=E?o38g005FO$N7=6lZN?eC|A{86EtE{ecevc2S>t+hqoK--m zwO5sU!6%%3Nf9CTsj;Q7&K|#AdV_|Yx4Q`~h?Ckf<<{$poU3E^Z(p$KYezWSGo~Br ztLNAHx%-7u#m+^I+AN=ZrJ+aUlu<=!7YwYhu&}LK?_d}n&+4cVg`C7mJbgh05hpB~ z>i*S(7+yvTTkF6)YoVwam-3UYL-bvw!^n^`gHXa3lFCqS-0DgR?MdEC_!lF2Y=Azp%UB~^soO$wYtq%dLRW!~a! zyI`o@X>+b!cJVL{bNFGC4u9^?@rUz^zO~@!xq#nm*C@$Yd(>oWaZZC0ZSXtjo0C9k z)-Db!Keut=KTH_FWPLf16h;q58X<#A={2g1g0|G)qakOgnb`~ zbv}6}|MB+ez!|O_wuchz5@9>7`y45LzNwmldajrCuqUs@;mIltm#j7%X&v)Y3=$xU z==+Bb_w-VniZA<_CR$9K%U& zr`SA;tydtrL|PJ+Mlcg7Tk)C}l^GvrQYI<)3v^~q*4<33M>2KWj~$HNqTY$$yDEX8 zJDX0A{S1Bfn_nr?I_Gh7CjBd09gK#_K=oDWU{nVrxfb1do+%@K2h%&ccqD}x=dmo5 z@4P%tBEMLdJ`Wt2dTWbH6J=RkrC9Ds=oq3#17o#$ z@U5~ca^2ZiBYrcDoG^Y9Ip-*biPII}gTUxU2xe1T3^56@R95K{&^Rmw?7+m?#ZSL$p<<2bjlJ)D3uT4`9E6Y1A+LXsNh+xG@?&ZLPj&>`Q4`Oa!CZ8U!$yqywVeHj!u_` z;aOAjfWaT%=!ni74Lz#9#aw_Q?Rbepp_;iZ!a<_r>#z`r^9~GB1k>y;yY@KiGqhg@ zH1>WnBW0;oQbLWJ=@B6D&@Yh-{!IH?v3Qh{Pg2y8&tt&J2KE)YnS+ka zgb0LPY>Q4XA=-c5lWWrW^j2)43bk<xNvp(Dw=LGmHI$vAfM%hXHq}5|`|A@bSiL_tF4Y>@=+smyZXT;S_rs zX;|}DTKpq26CrEP9#y6=07&nO()E6ie_A2GY?6K!dbw;K8h**4FZZFC!W{`+FmKkFWA{!&?zeOyXm<(ofJYR9Bl=g?q}LH-1&zVQsx zcFd{cO%wi>m^tj9yefxvS1_eIoY@duz+Wp=>UAI`P|S%K*A-$^ubs4!VT=2=fI~0H zZ82}k(k4XGkO6vR1qSrQDvzK@qJBn5ubUwg{LdfmTha%|7(L$9dxIA1f{2X05Q{{; zekn;1WTef{<6l*|xAPksCQO5to9daj0SPcgr%3*Jg)uj4!1`DL<@O z&@F*;Njn(t_v+oKG?xx&$0q(Mozc>NgS+crO0rOP7p7&Dh+2v2!e&;O(*;0A%DC1=nIo zfmL2-h4bCEGQ-nLt6c+%vm9)#PLuZoCA4!|_okZ)-ck&!c&^M} z*fBT>Y?_kfkAfB`)6Fi9jP6>gOc{=BAR2a25t}P#B{y1mo}@Ir2M*Ju(BJ3P7_A1q z6)y{(v=iV4TJo207=c67j|cn1Q2u&O#y#xsM}1UbU!@8+>E4BbjRO}+M>6DdMGr^; zy-%cQL{haRW#tpPjhjm|bRC8_kj|j-+uhD%e0^{Ujr;jH=c?JacvqRFdiWjWDD2)% zx;qzdcn|$#i^p9}=`;b*Grkoi{%-Ca99pXPdnM})gawc#1P3-59iNCZt5z!?_wfzP zn^ zOtRAlbmxs-oj~@MRMX85U9BU>yFvMsYX1PaSg7!a?Ousm?(t44;Y=vA$NBR*;8a`N z;J@(YZ~5k{e^;ajT*EEz5EkbI0v1WAp>x&m;!&5~)7g!qj&}~F&hJV_lzbKYPGP{D zH|aZ4uRNf&N$ZiR{~!UZisrs}THUfbvu)+Wko~MXPv`IPDR<6(Euc>8Bm(f>W@V^!jRNSW^ldo#g1_Vcw{D-Ut6R2 z+J`z)QM;}{v}hj^C2KwG2J~PN{-ZX3`qJC(Br2sF{-E1@)K}VFS7e_2stUo#z@0@j zqcks$w+0`O-dqv5=rp%5&LFZ^CO%XJ7q6s8gp_>Pwkq@#VwWQ|U!n*SmN|9%v-2Dx zibtC%$skX1d5Kwqazhfsm26YQN@Ez0VrF z7XPWo(f2m#9Xjg8OPkrndS9o|TwrF&B06CWKp+9?A!=scjv@-3D&$U-5VnIGeEYqs*@2cm>j2+?l1}Bd}i*pLk&b8UtLjx`Jj$Sog=M(*r z#&h}bc!IVq45GRIXnDwzg{ZzJ(wZCl=IoOP^nSIx#iO!GSHp=w?Ht|4U0$owSD%|O zn>cL&0dN*rrk4_BpWn4$^#oSj%A4Q1@{vw0D)2Zox^!0nK-6OTB7 zPOS@!G7x$*Y7-6q<*)F<_4WZRPnF~IA}c?SyGupI%>@lvCr^p%{>%Lh7sqD%@D!6` zVNZ!Ao{T{zs)*$xR9&X@ozvYA3xIu@r4LyHBXIph3JVecW_RxU?}Gl+npE$O&VFI_mRTFeb z9^9+Tfq*ycrEnP+Hk>MB=A3T`>){@+pIRK+Le{?bMPHd5o54rVafBcdbv;lReNw8{ zy`U1OXdJ`78y50~A?5Bm@tDY|Dd@Pyg;wXyScosCmJ9!wwHO=BipUc_yegO;y7_|- z@$$W@!B3^--^W9Rff*`6Ax^Z$;5hW~Ki{^h9lo86t?b0N+CRy+g=OUfp{X91I-H}M z8Nc?&pHmMcND#aM{ zsT)ALQbi}@>GT3o*QK<%1XZ2l_X8 zflY2+@(0nE|K5AvF6TP{3yljfh2^3gkhmc7oG6rXI=$1&t(4L4B;sWhg61f z0|ss{Hr+gln>c0Lcz&`R-DFw_l|g06gH!h~m>@l(RKmDA+fv_2q|VA7P1PtZ+%B*6rD<$qbGtrf{>lA@^I$V=@!p(- zhh)w!hoe7#r}o-k1KMB%F@fmhH`8oJ884k9-(QjJZdgJO?U9^bIn~8mfeJhs_G?pC zSoSXWYF1IjH~pT6-6&3%&T9i3D6G_ah!`6Sb){1S*82$*Z=a+kqc>x|3luXfJF zt_(x;vl}4pcDM+I(9@!3BdZPJ0d32!MWnQ!6Jv^7X_0jkl%=phT+!rO;UsR>_PC~; zXAQ{)RCDcK-iS7RAaJEf==3)#lLT*+nebWex~Y^uu)KQr*TU?wauxF};x9%LN?Fug zHx=&!0tbAFJ;~11GUQxy5dq01bFD4UE|a^P+)8K{q7IqCyU|ie(;xX|QU#-A z#%)ChPh}BwC21~%6C6}mlOo4G6M*GIVO$pwEqS!P)-eaA;pdH+3Y=S0Ew$Hv;?MKZ z2gIvKC_v`O`jm&zG_RziH^@i6RZZd`SP=yM_b~~jJB+&>(kU4Qk*Kh*Pv`^cYweaT zvlFS50}jbN&-X?3S~K!Qvj*;1b-7BWYL)ysos5W|vggk4**{!V*65KdUS3hEKUv(#}f6F9vs3AmR!JCyn{f&^xviN5Jt9$p#{!upZ^Y#zH&2T?ZR| zt*`2@vsVBvV7WKu`$WFfyQ6vw`b_5C?)R3|>zoMLSN0;yyo})c^(*pXmo9T6(A#a3 z9=((d4AZl`n8?cx_ArH$69T&?A8M2}Rf8bVqdql9ZJXd9p&fy9{>o_yaY9Fz*> z(~D5eonuU6{_;I^_8`uhiO`hdH;^FVus3X567BB_iXPvZbWAk$Q`}K&F5ESff8TNpw*1O#Ddq!~h_I|hax zhX4FNzF*$+JooH-&!=Fkv#`V&9tAtZM#<+`v^MpbbsHo?geVF5Cq(5^5m%k;+_WH=Wqxd)# zjEgV!R!5;1h=Kj`q$?B6HvI@aSV0(QoBXhc z{_>c7W13R?A0wViNUnoCdDUID&(DCfAD0U*L34i}JfT?NZi4kGRdJaVD(^Tp8dVXM zh!npFi0&e@PvJJ^NFfZ1WesClCseH^{N3ehrvP!KHxp`OS-vL{(uK{++R{=$O6|mgD z!D*!8U!?7`wOSst@Gf(|o&Rv>>~F*E$HvoR%k^#3&VumIwAYHc2?subGhKZx*Zs{W z-gO_eSJiiI-Hu`32Hk;Q8xA9r_@1L(f_2UkPnM`O! zs{b9f6}y^)Do|b0Zmq4oi!jC{lEl31=Q|Hz`~G>*kpfsXA!4hy*`^pTD<@sQ!8ov?*MVrOy%sIv@$o6t5pdfngO+AZp;S&3lx?bUTC1t8`4lmHO-_v%T#8WWuyEg+aF6Q?kdZv2Bx-Ky-4Suv7kpAl2uRSQ}R<7rB zQm@l&6?b)YHO-SJNy*7W{c(9G*IR-^SC$Qq&nJYzJKj>ZBJ>D^B%_pf`t=!YVonZe zcjsOE$@w|EfID5$oA|n!JO4#PAh4mwR;11sNhRkSk~7*Q6VDXwFju{-p7Uz62_Cqs z1E?cMm7^qi$jjIghl(h9VB$n^oFWlJ^a5@JsXQ;3^J4motV;H$A(LOq>zGgOI^2!; zOL>|zQc^xmI07qY3a55=R=Su0alGqr4V-tV^d$AH3y2ti6vw`v-p9wsq&fZ_2Hkpf zee=V*k0+}OW*MToKTC;Y1Tz4Ff5YKfok7gc#Tw|z<)@o_jO5Vo`6(%3wI(pvr7J?_ zj;=BH5G$+aj~+!p?GTcZJLmq@7NZTRetx@&!pFio^I7lL`n)$8H;?b{d4rBbsb4)Vu};TE2ivtg-)vhmVh2>xj&1aDNuc^~H6i z^Hb=<$UoPZr%i6Rv|t*izcSf=XItMG;4Z{ll#6$`IKgNnr$yGiKYdnjRKjG5SM2hu zBgD2*SMVouV=F7wTwHu{{82{5FQSXIAKuGwwdvTHBqYXTmcRk?bU%?VH{pjb_qQjw70Z_mE zB_B~lSVO~bY`fonRg9i=sM%iXN~jly`}s3SFRatD(dL;HO85p9gy(J%2X#&8HQy)G zE?ohG6curCj*gBRoTdP+9UIZY`z8h@i-+@d51E*laCW>&9hckmBbw^!mQ^$*9h&2w z3Re-m-F-T91mx8_&t_1SEZ_H&Jm_uggrwT!$oRcT;nZrlbAOd}?K-uML-SXi(Z{FR zbN`z~9T73HWH1_!Hs(>QS-fHI5Oa(Pj6+f~B9ipyALquAz*WDsHE60!<=p4pi~*cMyIJZb?Lm2&gf537e6pv%nPXwwq~0vx}|m3^~tLrw?=#Y z+V4vg-ASJQW+{>;T`3c`wrMI)ySKGx%e<0{EdM} z%KU;e$k!d3HlCV$dU;Xeg+{03+FYGD{M$NoUqDq1YF1#+V<*kH#@gD%naY)-mX@c2f`VI}Qc+&2WqvlR4+4XNgaC0>rp>v< z#b-D&^6QT@b7dk}2vB=7DUiuOJ*_3pjj9I=QhWvikUr6Y&*m5*12f7rbK zclV(~%!RD$4w@Yn_5e>YAGulVg~P&WH0q?0D(v4eN~fJ{JzmRA#s$ zexzdV9xpe+%-f-7Glr%(1f;~9qvD4tqobpw%*>E>nBu3$nzDZvSO1u$FZGd*CvxEx zY_;k9N=l$ws#r@}SoE-3p<@fgP#L5&c(-$$kP`Y-QM(D#CI?+OpmsTh_G+wON{2+F z`ifQxx}bGK=hbC-tie-fI;Yb@ni<5RW?Jy~vdi?unOl08 zW8<`uIu-l$F8oTzQ!wXWi0*62vnlCj4WbF>)r0ZM>y_z0JfpwW^zs6f#(s^GA){;V zdrMeNPuwVD1X^-_=JTCDr7!bQ3H#ALBAcR6Vy30_HMy9~Lu;vrZBIb6>p^SlTv6v3 zKJ4woJ-=yumV1AJn|;X*d&`pA{H?dO>_<$RYAhM*n(tJ+0QiyLlHU3HxtyH31GVc7 z%sSJ5_Ypf#C|A~JLU|zk#y~wiy2We*D3t8>^0-;m#9=(QZ%3Gwx9a}NMoYwf$*4{K zX}}^B+fvU>V5vU>J{-wpEkXOf=<@{xL}*Mpi)5q=2XQPm1-Vq}e*dVhsafEV5VA1D zsgbF$^7i&mIha+ChYoe~0E@}KN%mnC6$$(Ln9q)VXQE})l$44;{Y^&fMd|73U6>xF@G2`5X8>Q#@%KIu})kn>Z)Ofh}`9gd99ja0}3ZZhxO&2~{ADDv_TwTRmB#Zb7 z9>~f4MIEn@YmsZciMvV5xyxfODtSus*wfR??RLYH-ok=i6p26}(nr~~lKlKyjre9k zh-I=8ox$I#)CW}MGPL|A1Ko-b69+;5{8&=d(jqS`Dk2~!w>d4YV3c@I@ln6>8#Tq# zk6d4{j8Ll8sn&{|Ql$$Eplf)oni) zq)ssAnyyqctEUU|5`b-KjO+)I*UTYbR8u%8D2xgd%{pD#c@3&wNJxCXoUJZ3t}jK` z`v`8cC#qLGuhQ^NO)jIMi%@tCOCAY?vok=2x%FBcgWgZv2O{FS;OSXn4535!t^_>_odTQX0k6SAciwv_M&NGjm^_ zpjipDbS)S#61{s~l11iLG;7x7yA$8!FwT(-<&OKN({zOZU#k{208L0vUcU%}tYYO`JeI0TwXz1k@te9C z!mzUtr1Or7ElO-cz!OfbvKh|SL7h4QOaQzLORpAQY5@=YCe)n|(N&dz9z37DCRa3qnF1P-c5Wj)?}9 z?5~;_$YrOq47WO6c_B}b@GqaUmlox9<~Te&+OLkch+O$?{i*mi#m#>0CoWc^zxl7v2-g`lPF8;Y5VdK`H^>(&s@Wn9RY zHjD^)r$sNH!g=?foSg0kFJ){ybST)`a-#3D=2IaH4H=qA&vxgI!96`azL3NAbajre zAoeB3Gn4uoSsXdcm9CUB^!Mm!+}w(99G$}`5N5ExrgO^O`ZM4XaSc_WHh1+zCmfS7 z`?wY*XYP2cbDT_RbtR^zM(9)k3$(E>eF^gD-(KsS-|D*bL3``#Zl;2krd8&*iWzbg z-6$tf+g`n$umC1!#V~3uHcjZTGU~u@x$ctEe&IAq&VUb)4dYJI#*8Op8Z}M!m z8t1?y1Fw~_+#ISDpusfZT<~u%18^p|`cI*-&uE~Pb!FW@WSl2qk~XW#c0Wg&DDI&y zJ=IL_Dp;m+W~fy+%5jmqX;M&$LODqkDZRgB`yDvrF(mX}F_7JcX97;fO=Mn7}+eg1X!E5;Q~SiS#y@8 zqDsxbN^!aLJvMWr#@nvNRK@WBTtzF$y@_)*OeT=g5x!#1p);;*>*|bA7zlt?cQEU1 zm=t+|-SJ?{EF`v0C~YGs&+{~^c}LDpl=QW98uD_{kXQx%f&VaSqzv(pm20TIrz!0i zzq?m3He?JFQP{y7C@ucDvJdE+P`4!h&+eio>*K6+`e!-O19VAWNH6BY_;N|TheI*m z4K-0JgE>4XJf;%A>;B>)4~*;{8kESbcVI64IPb(!N)E|P@(5ujg?^HYfjJ@qM3nvL zvsdmy%rurh8BVDLntHP$=Prew?6zjM(BT}PIL3-s7a>u-(hbBJs<&>3&N6q7QxIBs zXSSug*|v{czC@Spwbs#QiqEdA9$5s!R{c?!vvgvc!c=S4!m$jaHcAv+ZrmKnrrrZ1EgTS1he z?ylcfE<~Sm?^zx|I^NH(K%**q0?({+QN>5PoU^p$U$lsmY`ht>I~4_q^%%rNThgAl z7OngfNMI!pnbbnZ`WVstwE{zLMaK@v$owO!Hhx$)lux+0%EKYS8E5UUBz%kG zv7Soe;3jPZ3pE+9-W~;aD9$We?l!}%gL9CO6k%Lluapq#=JInirc1z0QMu6r!Nz_ z>%qihD+hw9Z{Ke}AD|I1o3BqA@nSbjAbY*iUFJtJ7$Dz-$RLf#zVmzOhCjx={@*?d zh>vi@r6&wE-D{H8YlsA#&y`!vI?ca%zQ6Qn1>G6T3La-KkbQ3wenMC4Fsf2*salK- z`sqY5|E(b$g184qGu=3^F~tW;5mzFB+8YYf3z6AqcW!R{SB5)N&2~P(%7`iXDmMOL z1}Eg=07x!uwv4-)^q}u}yQ$0aXt+M}1H&6&9z771Vdb;=oqun)!)p^X(|?8^BI`zd zgx9>EneN37%NW$=BNYJYeby;yn!P;JQrDPYPL@vq#uTE1$st|5L(UysifhNAIwk$R zi^o{E&XGa5F@@}LW8687?be<6>De6$k-^kRRRYWbR-ScMPxzy&-wQ(}Lr(HFPV}oU z#L9!34f)^n>Xxn*+H(})))yE7IB&8F^eVJl%E90Dus)z|gifOzyVa#j^MZbP7-T{C zRgZJi1+B80IMzR_?6cPAG7oc+@r*WsyNZ+!*b?DZ!Ic%~*Pa9dsOp1R&M_o`8} VE4q*mV~tWARb@?JwbHw={{i!y><$0` literal 0 HcmV?d00001 diff --git a/apps/settings/psp/octane/pic1.png b/apps/settings/psp/octane/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..aa28be18c5868c500e3abc1366b03afb68ac38db GIT binary patch literal 32438 zcmbrl1yEdF)GbH|1P=)g!9s9Npm7Vq-QC^YT?4@b1a}DT)m4ON$xYv-P`Wv#V$hsw!_q9GF?!@$6xiHiv-z`(p&2euE0?|^U2L<%B+7dXcs z;!23XpBJLhFW~bVM+MOzFy*6!`!F!1FycZ2N^WUKE$((&ed)V*?xN|1C_g`uBF2&; zt=3b=#)?V&p&traR9&)ht@k`i-V0sbpI_OFT#1aFe{nHNATq!LK9K|*jEcxn#@y?LfmE79R z(4%qwB^CeUTt2xtjM__nGOubZ!w{`}w)Eihn2WGEaVoiZ z8`tn3Lenu3;le|jm$5$}!om8lhyVJZ=l`Ab17gCP&+V|U@95wD@PmJSr}i!g1_e0g zdnGF38=Tjp_3%Hy(!ZY9!AuIL2Al*JVEi4i^7VAMA;14m7m}kJaC%bcyr*cU;7#CZm%SmE-{0?`O z_E7tCe9$PJy-F=-VUc2^6Jv%9XT7qPW>efjW#?H|Z{S0UH(irc%bcx~!gfuYuT%s+ zD*8d`no%7^GN{q}%fQ~Rs4g1J_jIKz>)+*(ZKo2XIt$W~M1q~u80nrM(lXOd_p&m* z3zajWYy7S&{k0v(sWdKp8>4BdDdUayyaV&U1fM+aOUmkPU?u0^}JY0 z`r7D1(=qNBHANw>T2N^oLO0cmNh0LPPG{7GL*8M>R9Tmdbq;#`*8 zT-H~vQb(u;q<)iBi+1*{GMB zGqQG1v>^UI=}MD9wYM3(*j?KRNOKxF%;NrF@1O@;H@G%*V%59QQVVQZ#;AH)(;u)LML*>pOLghY&4hSN`-SQOJ8& ze(6c~9-aD8IwUQ|!<%OWf;L~v;1sT(M4nop`eH4PPrFm2K@8F5sakDmdR|)fE8*%< zEx5vS((ehcE3Fg5H}unMs5bE*TAFBn=qJaQ5S3~jXIV!|D97)aeFUski`GT5xCA?3 zCIRvOEpldB#6;D=J-E%DVW8KV@!-=;#0@^;fR_WAjAD2gH^XoCa*BoK6=A{Ll=J+z zZ+@~+8J3zkk`6hNnd4C=j#8be3^-YVJ(o5#ejc2a&haD`3{oj>$HkC``XdlL|EB2A zvjSyEq(nsG^V~%s2*(t{y72Ftc!6~Ph@tGy7mhv$5-ZKnzJz)s8|G?sTte+PtOB$j zcxr1$XIQjyFCOYm%ruYNx8f1!2Bjhn_aLD;8rCJ2O38Tazj~yabwVdT4hf>=pAI!n z*=M*7N*(TNBBKt63_6@2i(mAJpYy0Vy_E&_pQmQQC3%Tf;`#mJ=q^Um;|NHyP@ z3TcTzU0Rx-FICVi7}XJZbz*omr#W(FV?6@Ot4J5?ii<(GV(i|&ODQfvc82qjPTb$_ zCqv3?=gu4yjOmi3LzUk3mQ^KMA3_v6cjFp;I0a~r)wt3XI&7SVOq_dkoBog{e`PTS zfwo=GNBjOYL}jPe*6ysu*_92BXHhs2M@KN}UGe-ru?M`puuO5!SI@oI@Cz5~zD~fv zw~}RSy5sG4UC3+q0;FGBVQ!jO2~tW=_D{IQFH3LG5+yrHem9Mq%k zfe6)Z(DBwWh9=*9Vz5z)24U%vT*G@9g!di|Gs*v4D>V00HHk{s^nCR> zu6;mHsekT#!9zSaEa!K-jjl3QD|1(9$Zx#~uB2&!|DM-P_7J0Y#AdY>fgNucSQtqn zQ*Pf%bU4(6il7C*16?28tUHOr1u%QJ5R_RvMh`eLc{I9kcF?_mgq_v0o#O`+j%_qK zZQD5G?zDewrmjJ^u8>q;BW`t(n%`JvRqs>4=bzuj^hdacP#ieOV>!3dYWCjsn-ke_ z7%3D53|xp=*sbHEo62;Xo2eivFZKKzDBy)}%EAp>`cmUukXpvAZ}vU+5ZpU$l(r%Z z*%fE10^H}gX$AG#a`{fl(1NEI6JaMH`91MDM!7um6(I==ha=fL^Jw>3&r#vI-4mjH zo7KZa%y~CLX!121(A__9oEw{pTOE9#@Uqjpn+LM6Qy19`WCY7o~arQ&5 zH0pguL*4I`AK61k@xYf5eP+I5Ow_@BCyeu?4k;Ok+w#AQJGkI)RCtH8+-LAu;3Fr; zeXTU5gAD@(}gwPhRjQmMQ@|CnK} zDiknU^pQm+3PxbHu-L(B$d}PK&@y$C%PsHVIz1OFEEckj7Ae%|*s9};lT-W5mdlc^ zXhUytc0OU2pL*xxid-O>U(YRUTYu#;J(oJ@#4egk>3y@inv$Ygc;wkDDC-((tMHmx z`z!Yh+pAHnkKdQ;NEium#4`igOTaokfJskVL7rTt!r5-yfb2_W(O=dc;h3t(H)E6I ze?Jtf>@}zL*C_ue)G)D<8gn}me1eo6-ajTcFzg*Xw_qtloj$%z<2IIEb7W$*O?3DS zL~g^Ha3E^of0Ut=k|BqSo zzvUO~4DvdXMHP!tBLnM;X~>0;39WpoOneGyA>=T+qIYr~5mwE7{My?;uJ!43RR#kw zjM@}Xv~YPd|5f*f2d;8<|zg>`6bL4}{`D^tUa|mDSq@;^T2u>NQtp3!?kJ zPL3{w#YZ_oj;c*7D5}g$;^O)?0rLYgQ1at~Vf!a`ZuOarPk4VciGwoJauTYnC*L3o0P>_H!Zunr)nrMX3CCF=a^V+aQ)O|k2|ucie|K0Hi$%Mdq_o0 zFo#Jqdp&~*5U43(_WQ5OSDie-M>nw>57xYmh zI;RrW3jSlH_0|jcIQN9{(0bN2P5`F4{c06_MR5OLvE12D?Dd#za_^fha!e7VqW=MZ zS~$jum;TRiU4i1LE5lMkR#qtVCi;?9_)@gS`{c!9hBlpaH+;>!k2#&|<6$ zY3=S@nJ+bhS&4tl%o2=aZqb}L_b`J$sTP=9Icz%d5H!KW} zgUfJji%qFL9GL8H^GAb)wOz?1cD$Gq`^{V|M(S2mP=mc9R_y2>+W;Y!CCzyloGk)~81Cxhh1&C?^fKFiOp!l@9}?RD5`b zMjStboKM=b?I?B0Z0w#Sf;8t$T`^O%vwYJIED$tZ;c=XKwEtrQqQbC8W!0ulQ1d_1 zn%>l5E0RmCRC;SYl;IN_Si3T^8ZlFx-G*H36{1NgQdN$&m9eyp$P@VKL%X|hoT;DY z$o3!uVD0OB?Iuu9WCfK^55*!NxH5L{*E6lCabCpp6u;0yv_Dd^ceP@cZ&a%x< z|5mss^i7ycela<3?!g0R<>_h8GdHYzkF8{fVlQO>QkddJE>j(XOx+@me%fSEgQw{` z-R~553ZYV;q-2KO=QCH6^jAbkh@)p(csMf#F?7T8u^F+HfiX7vGG(|%s+a4A{_UB| zF^r2|^q^yYxZg(H+M0D9^JNx4v|umZiv@U9z!(S{sdA{S(!3J#VMJ{sg||- z-}E^$@S`jt;sm%iE_9L4*JN_`Dt)B;Hmx$G^Sukt$NqnoW)Ak()8xbzKeSsgrCH>0 zjo;P(7ihx6R68v+HcVbR4g$8?V5Sra*vo})_ihY_g`85Y-AI$~TJmNhm#iy#59%Cq z(xnKbWaj(QNGLQNyFIN%kk04K`WK3H9ICi2V z^SHL5+?|0)<#m^Y_aaA$oK#b}YQT!Y0xCLSPn6B8@ z=f2ZuXF@PJJ)M^2vKBh&O{Jl??0CXKtlPRx=KaR=(xIySs(*SpT*TY(xszC@B7#5b zD{tQJf`+R5hm}yUL7`}4ZTt|Q1f2QtWGisgm8PX=cJ~d8nj*}5&#X*B~ znN(aVBClbFv#UF4`(u7ArFTncz{*74hv;pT*{vu?Vy2nx*ksB!-Vr*jqgC9^%?0sG z`Ve0a1yc`N5m{GM;h6b4_U^@~!IRwA3loz7F{;DIlCKob%^TU@ujLaLmdjc9^9KOZ z8;sz-lZ;q`4q4bZE3WOOgeQzXvhSMv;HVa-*v5tYSUsh;lUy6$GkD3i5bHzGZsAa_Tox3yC@gnAE73(Y@?pC2U?{W6;P^0@7B1|(>SM^k zqRomk!wG~VPwj6!I>`wt>w~>KD5o zOiUnUfJYfdW_%$XQ6TmY(a|QEv3_`PhFGN>98eD|+u}Cj9OD>#^VM?X$MON(^<_3O zl-h*@uof8hDt%666WXK&Zmu=vvm7$UL>$}}kWIrB?K^YBZhdsnf79yyWze#1Z+9HZ zYPGy6D4E>+GK;vCOY@!(EOgyFgBX%g@i`4=oP~-iDP{8ZV#s-Vnrl7@XAJnFu-v|q zktlboC^m+i?q&7u=g!#Ne}^lFVO8KXjZ%are%#PwK1c)3Ftn z!0Zm45qQt5+m#%L3C&N%F0(?fZJZgAea;VI;C@PubXlBrV=h6TWry4jtX-aMCmtfs zaWRuExU>Ec%pFou$(vic6Y^u%CHfcQ+e%gup{BG8%s9zoA;s}I*KP03C-?EVeo0Ma zY$UrS3t17r0gagA@{Z8#uK8cythDM?0TCwZO|4D?LGOpf=Py6uq9Ecne)^Xw&Bp|ooVDBNzSO{ob z_{hGJ4}ia{o{Df>df`Q@c5ErDHDy;fq=oI&1a-b=!%k9Q;Yp&WZe4PLxAWX#+_sZA zawGFgyS4xz4tITy76;3~%F={XeccpI4V@`PDR|~O`1+=IzXg{n0lP4s`>Ej6CvEj4 z$vQhcuYFs=?IL-+IcC!H8vYysS@hfKDsHv4iak^#2$LkjaWn9In2ZpHD7A#S^Hsfz z#x(pwW1|&mcYBwTv!73O8F7;mzEtvo;Y^#Cx(W4L__uv|k-bM}`l^7)j| zg7)W$XbqU#wwLIp$AA3GyZ=JAjOR=f!g8}zOC2y#OO_AACgwEfpKNTLr&?PFXPp-MkpM%dtD4yfpk{B$4>uR&jWQnwnPW`%Tj!D*W*W}rNXlCX; zo9&G$&eN+N*%$e0Z+D3nBm}?zoex5}gi=h_?S{QiU$)k+et2M}?Wo)c_IPK{rMAqD zwg{}gtRRZ&6xS`l3dA$DY4s)QmTz50QfHm9$ zxzHCbF^p%wl#eS0ZR2qly z8xG0Dtvsb2(s;Ho11sxp;QI?e=~YSbF59%P~-ySm)^(YTUdV0Q*FUG+~6I zs3kwiI*4xQcNEz*?u87UxMpPP;jhD607%q1Y6s-`PpFwQLi*#^%oA+V-nB zg@6MEp9Z87p^Iob2dQa~BW6(?|yxp5S?5qY+%RG0` zMjFIq@`Y69B@ix*w&p?H^X9JGZIBJkyj8gy#^Nv?drcAmWp2~c?3~sy?Z7zRA;bcK zbqM-ZIiy=Lq_g=N`lj{nNu;yxy@7nX?vs~a9g#8!1i`7ZiPw^K79;d%4X)QA0jK*O z<32sEi!vl929)6D?;fxEn6=PaMQ6bP*e&hejPbzMfk*h^o)$~lz=@-$rChC-k`ANH znk-3z^n({4BAha8N8|Yd0F@ztdg`27M%lQ%IoJT| zcg*JLo;QCnq{EYX^#Ty1G^Or?xU0zCN||5Zh(yc zF{zovK;pGbWblQTG}jwSAA1%RHm?RDZSJ^qcD@p&iZnOP(mF0p+uEV4r=>?V_E+u zRv#%?ZpRh!Hd|Q`!k^*m=Z}nc*EZF)Rt3;ydAhrgFt2wy-w_ZlonnvCc8+bb1Ps# z%-HzPalJ)KXt^XDY`nJIE7J-1IlfRd;jC(E)NSMd`EkP%lBJsuRxuc{_!;?0GO_o* zvb)76PH3`wn||yIgQnk>IA%1;#@*{etjA2wg%z2<{bFp8l0Raz*Ap#m=;P@` zcz>F_+<3ToNkxE==~8JDc`?pK!yNR8q4+T!a@I9vs+a(i8th*#i4ygQ@miM2B3$+6 z7vDu2!5FEX;{HT!_7_1v?=q`6yWrSdc4B(!x^`<1r5~trwf@Lh&L{EtVT& zvf4CvN6Z5wKPl;OYINB4UkK^^_o!h5zbX>0)uw)M z9Zr}8sb%u^y6|}ZP|h+e2}jdR14gG)kF5m%L6%lXl@_?wU#LUCA?}t|lfkxc5@J)j zUJ7$?jE2Vl)RETZ?F%Gxp~1mLso=)_pO8eyEe6qZsm!17CbL?$cNdUTs+T zYe=Hrp^l#VN!NxU(dgO+M6erpGseuuC;WBK(8A%JZG7sNvC}-rVy3w3%QI<#jE+7f z!B84XNFdKkXB>Vu9Ea=mJ7BOpjbn`M=Wek#YY#z*FYBZ>u1PhSPRt;VUJ|dZ4``9B z;M&s`$6#C?FO19zct4hcifLwLcVKeqp`wvw`VrRt_U1Hj~GwhU%=IGGQ3^bn{L!#y>?}o zUhlHMpB&Lr&NuA(e1_=Lme|^=@AI@c(TVn(y!CvfYj&5JwTu5{Q#&}gw+IOVpD305 zL*b_9+6x96+J^h-tNZdGmut&@BdVIs=Js z%>e3x&Rf3~5lx`glwmNm6B3P(*cFR-)+ozm-P_3_c{^M$uA@3OBG7_{Dr`Ayw0eH)Kx-?n7LPW^byyU{j zeSEU=iSzO3B;f9W7!`UzM`EY+z?jmcu4d=wnxx-+H2yT&3#Kgo!pBqVUEMn!_>DFN0l9cp_ za|}dFW^s|eLSYK^-M#4E{CGm5s=Sd(nMHnqX=RQj)u#CM@!DWA%Un_twXb{Zi016q zZy)sy3?Mm&OcW{kjuobU$J}$f3rfo1Bn#XB)eEpu@f^Z$BIxhQMY3V{8?%q;8yj0Z z=k9sKe69Ia&Wt(`3u!yPqLQ(o+^{JY;d}9kQZ6!f1A?Ta*8D^l-)Nc0;}O zJhIDp8|`Q5w*w&_PTLgEm8W5$$*tM_lV7HpOM%=^NNX)iqDEXPRqo3&8N3%llx@bD zBk08S;a`}J(ra9K#db4!znnj!$mW<6eAoG^lIOLhId)N^%D-;=GDQcP4pFazB&RoV z6_%kfNC2AjcR8ByZ->2KWAQ|agZ`k?^hp`)(MUPkQ#gvl&2KxLbtYyQSy%-7`^%p= z-#`!NqN+_#^J7~|Bzk>o-0zc#nlFZK_76Pd9D-QPnV|Y`B~P^#mOo3YmVVB%r^<1( zL!#orRqsLs2N2H;Hm)GI9hqLqRaG>QriaFfg^{)A0#&z-pH%J+YYD!snRTxCPYa{h&-tr5dU&>b0beq ze4@PFGOn+&8?95#?LP_BuW8&@QqIlfCv zKP#0R0CBE!0|v15tQsietHWv5mvtRF$16v@dK=};%)1yft=-S9!%tvlI8l{9{c=qCpbumTH1%DmR)>Y?&U!QqRPe^svx^#3ss%xECtc=$Lw2!OEy;k@gqe6c|V){4Xaf2x%NX zG18w@v9X7q9_sC%7FTkdqx#~O8>fa2+xSFI13$kfUR4J@Ib2M$aO07rZpN$nWV+Mr z@8hr6sq$qtHZo%FU4Mo3rv);C8}urgnT&^(wM(<@At@y#D+vK0wh7qcv3qJv8_<+w z)(jRlcNcS`L(y1rN!uy@>a+}ctAL=+ZXtj{^x+fGX^)5WN-<`V7#r}27cO={>cZRJ zP5^$(|FBHV$K~O#>T}1Zz!h7_b+p@9`u*?stgs5NE1K7UHs{M*Z`Qpta(uK}Gohm6 zEtrJcdP#07qnisgZ5v5jgE%vIX3Q(qGNPgBgKcz&;wA5{rq#S5onc{Y$h+ip5@Y6V{dlW>A@nhaHwi!i6lvT_HPqRQ`5 zGVZSt&a%+3=TJVWEX~OLE=f|yy>lX|9JbVb;E`C${LJ7EYrt#00V?I`+VMf=3 zpKG?F9sL_HQu05B7K5he6ZPpqvz(qbdU_yR{J|f04nx#EDn}3$h9)J=B4@RO>Y=*r z{6^Ob{u(b6Vw{>Fe@grB$~@V z!R7~M8gNt7^2*5!+?ET~xsY}f)Y+ud?%IKPsG$}gd&H5P+RA&;477EJ#=_#_&JF5j zqV*A*ILHAUqw0PY3$|PPyOi=j&0iF%ShL`x(eqriU!|+u@3G`Y>b)CwXTyr$zSjsf zOdlhn{WijvB2stA#g|tQPe&<0*oUwR^d)?~lGgF!la%`sgB9q_vfRMcdux|g{5uYt z4mD%(R76>sFzQaV1E?A%@QY}HVTNJ_n3W;_(-kF$6qcih_l`I^#55zUDu-h9Cki8( zJkl3qlO1H- z?9MCsdl73r5gRFhBY19>Cq>#GCVXzBSh3B@CL|WB6c-GPJK+{xeH5vdF+;C}{ zVndH5$HrP;Ff&j55-Q|gV>*bbC*GMo*o`4hCQk(&eg=AEfaoCKkE0*b<=?fTH`NP_ z(0mV~<787_uDQ~glD~k%Jn0;&MEf(}Jozy!2UwUhw;ygi8N+qjjJU-X;>OverP<#w zwZk#a=!_A};~Cmx>9?Hrx-q%3)+=Izs9puA0188uAXE6ceWy()zU3uQL}L$&LXncl zZ%F}ptR-iM9%nWU4-b*9-PzyRa~LR<^k0%G--iU~cZ-v!{{g6os~`(8#It_)+nDo9`}>f$>IoAd>s6ju@@#5kV4QXwa#%eoIGhuc5S*T} zUi+q&{_2R*Ke&X-J|9#d0*r~6!c*dT3d2I_LUNOb9>X%0V(edsxDy<#!NE(uG1a?X z;@6LVp_1^(zmXS_ckA=w!e+|U(j7ki*6m$x5SVqYVbkaziQ^vDBXRwDY+hXv{*)n! zRigMTQ1$43)BN4jF-7T2t7^<@^?sWWw`L^0X3f#l^Vpdtt*yT?HY0>bQRTUryeD(w zl?ET0X41(O<%|i&I08bfzt#np0;P=83g1r2p@&Dh8Ky}O2X8OkfJDNX2Ai;a&GV|W z5zS9B;d6H^Ek-7cSm{#9JgYYe3!eeWQ)Ax%rH=(mmd$xh9IBwI$5_o=ZIG%Xj-5C>rhSfU1dFCeu~r4>QD{XrA7 zwCUL{%=<(Jo`hJFoP;JEovT{acviw&V|)G)Zr*}lI=U%QS~9)D$3}#c?8-R}CI{>k zxZB46rj1gsLqIL%{lK3q-|N^kc!Qwo0PBmP0cl;*1ai8s`C=)|7r68_Vk;7iECmrc z#|(B_D$fSiH0K`1D{IZ+*bV#?vqgVAb@tq{Z`kV@^ZpgI^D^DwmvH!2d4ALNp>1pH z8AXEAb;5$zk~wqlPp#8ZuJ1U= z4rVch+z3Co@3^IH8>qCHd;c78)|_$riUb#AWoLp`54!Q(qZI?>Y>Qu}2b|8`2#Y8XRT zs)TA5#4t8>2!_q=50lGCV*7?FXM`j!ajO1%`_0((`sl%h6;@3KMRzr<;zt;0HrbI& zfcYSvh=n=)|Mc04_FP7YlfQeWMVbl{8}8n%>eY!)`)W`>b&qsU9^5OHZ(3@vE)LrT zvc}wYY|-Q0od+>Qd(gu2MTfQ>Y-Ci*n{YU}!)pCViP=B`X%`d~v5n;)zH4a-oSykv zRO~Rd#vd@WO-=|Vg8+zEoYGWun&RNFq^S5}esJ%UESI*EtqX* z!Di(kyQm1qmnIMun4vTHZjki5KB;1!gvs8`cYM*8a?ws~Kk%i)VR-o8l7^Zne0|D6Xk>vA4N% z^sx;#ou)C4!wY-#WS0`+4(X1HAbr03)`xzhu#ugH30QXv(`h!Ojf`LtzwH(Q@EggL17?wyD` zbYzR?yqgjr&tc@^QnI4%rzio)B1DxiUV=qbbS@Gz$k_t5F&gF zU(xjF&}{RY{HGCFRn|Q@YthlS)sUDk?I!-2T1#E(Q>#C0Pd}uvsV=OpeuhygHKQ&G z00hO!WhGS=Vn5HD`_R6)QmuvllxrNw2@iEsgqDde8Q98ttfr{AbFr>$xy91={8wKr zkE0nbm8_0|mzPI}^DEe4f(_Q!+heXqjY&qV{wqhmY^t*?^V|66-f(BDFPb)^fFFwa z-Xp(cHIe>Mn1>c474Xc-jyI5p{XH{5cd-|N(T z2~qmL?sLhY0KNeAp+ql_k`ORhL`gZjtSnTBr=!L537VjYeBOZlh>d)QviRhKj){3k zashEJ1F_DYk1mlg?cKlnps>EntTb&rdAt-K=&4IAFV+l2i_Nmi6qaGZr`_6Gdb!aM z$&M`MZ@uepu<{7{2rlBiT3vp!a!Kk!r9C!GUzB!bUZcl0+siipOW4b!Yuo0GD&O}x z*4B%<0%jL!mIhZ_!1(A$kJHPoEH`IIGK6i6`3`utP{)WDy3Wox>TMXjiC*(UO_X^` zf3*y4p89HK5oX2rkS+1As6<_$@!COnwS+5S+;xhju0m_&FLM>H-&ioWbX@rv6XPI| z$0DvqI9O#sP))<%)2S;?_I>VY0-Rlb?L%-HX{oC3oo8_|4|rdKm-lHeWz;j7+O&jT zIer54HYB&Y!>xWPw3rqZH3BO_Cj&2&Qb~KByS)6`alPpH@%c$st&!PRBla~f9Ra$! zLc$)tMu3?XL(?ZN0tD%rUSDZIB##L5l2z7OKG#i9@H;#xE-IIvF;2*)aVYxsi7@6f~4t4#@#^Jkuppm^b2@S%B^ zes5I3toGM&G8Tt|?sOU>eRY=FT0Elj0g7x0I66W+z5J36ghZwH5g{Q7iI?vc^F{%z&m$tuU8+Q^u z`t=Gu11JPz$+3hxHtgh%!}aiJ6+gbs>?6m{G~&Xhz`6Qd!e}&rLEbe!aRoQv2B%$5 zmSGIAO$U8~S-HPT-`!Z2@bjZb=+Dcpd+a%Q`m1>=ZZ#$rJQl3!HT{eSNRu)C`$PO+1OZYvlv2pkDc3URM7snx8%x(+FTT-=R^ z7?_&@BMj-OFh(>Qag5^PMV?gySQ>E!5jPSXJJwI;WtQ^G7O3@0mfLiu72RP0l}7ko zU+o(SsZ&H~qDU4;*^mt?gMWkwMxNbpurvV#NGdT2UN7)Xpp(kd^N<$Xp+ip+O~Ury?Cg=;Tz*f z!He#mU;5}S9>$;BbJF8AH^!%$r68OcLbeMRu-z^sFlQQ=hSeTeewZZU;k~2&Sth)Y zoX%Z)BrHc^^$Txi!(qPyvT#bruDo4ivsk}yVC_!s|H*rS*k^4l%r+j06&zF95;+{2 zz)&-ipjpn~9qLF9h3@)digT`cDfrvch!09@QhU3kJ1i>otAN^CGJ1f$TN1)c3hTuG zygn^mxn?|AV%{uYk7l;6n`W#vY-YOaJY$@AcUSnI^p&9K*}8Eon-?rKaYxIU4QF~F&v;dhLqN!8Rwek3n?wApY-BBCmH z`dJz#YE7a3LqtTP=>WNuTTl6+&hleKKuy*tV5VbfvFSPXutVW$FM_Rv6?)F zw}`f_$@SyvzuhYAn^-!}C0)X$O}F;#B?q2b_(h59+r&wgB7|l=%{Q{X{@_6mcbq9o z9zFkcdjoM-!T&1M-{tWBH+={69Eg(aq%pDMwF~Lg4gmtyf%3?s+R{rB$*~Gf&n7bK zib!|IyAp^7G#V!6Z;aiK89=8sVx*cnDF#zA5*ay49MnbYkMj-%<5&zV^~dnAUC4xE zwsZ`>oQnO(2#xX25hj^*IEbns-zw9*eyqyJebIQnTtMi;5q^`1@~Gq3QNpj1wgUQ` z04M#nLbG$Xib+`A=ASWzZiA${OA*+COcH1{aIlW{T-bDX^U6T*|Ngb_Na2rR+`7Y$ zc2k^X?IJANg8(+^UqWTBr*?8VgI{L-|8x3Xl6uU}H)fXAU{*rnIOYfBL`h*-LRqzd zPnX!Ms`CF${uoObs&pL&F|L%fs*1=0Z0TXvJ_etyF)q-r37{hA4}dJh#ERt)x&{v6 zth;q~Z~buluYuvVGq?Z4g`|{l0>I>_gr>?`d|x>@=?A|#>ydZN5tD48NqME?G*h5& z()d@Omx$k^M#M_xPl{qVJAZyfM4+dqFY4w%?fiZHQgWOLUgD6jwDi|g0$$#?dk}%I zdqXuhS7=)EwZpoBdEN`K{hF&VS=hK6VW{9auZAQ#Wc%j2tfpXuX~nV+xm z=u^Vq3SdPw`eaoTZEe<>86VB1FEMyF^>OiZpHNo2T3bJo#ZVJR10Pe7^FJcCifNsI z8XS~s(pj8pZtX{Jvh{h$y;r|&=Z&@KM6C=rw(6MNao>2VwT$+dexx%{BO_EhNulSn zp-Kvl(EmHQh+o9>hVk3<;pR_GRP<=US)QKnm0^M*uBJhIop-6ppc=TheDC?|L+tJ` zxqw2r^Ob(;@6}WM_4z6kpza@`#s*Sy{CC%aAM^5W*qMO9V%}G;r0mg+r=!U>b0>9; zOUj6{_mvpRdH!FCAs!yyHusu)RByh9=3u>#Yiwfcg_4LLKOaB`pC_6z(1{m?ot+V; zrsRE|N^&DmW#x#jS@`%O*G{*A8nYBIGcd3F06-568ngWUYdOFDbUSs;hb>No^p-69 z(-~6*)dcH zg^Z_pkQ8HDgu}j41j*C3>1osVDSd-QBU;$9NDRpaNj-ra7OvA4R*AV|YF1~N>l5_J zsw!H;%(Us-rnc6xm)o}ToqttG9w$9kcWo~P=&nJ-00g5kZ0e9sovqvrjTDOw%HJpC z_Q+5q(cQ?aAWV|1aYqA+Ywy0#q49CK_@n#!CfIuKHU=2KM~j4xau+N#)&#D2mR18M zAj;1(X1m7IQQrzBJm^}6f{u^r%wEE=_nC7Zk4Sun>RYb}Bc)m0&As{1Pup&gd>;## zcx#t|9s>?HGb*ek(YuKWs2dOC^F`YeW7K7H*;=!E8v7c@Xtd9xGfb3^S>E00^8^3j zU-zx6Xg6THJ#X`A{0l~c%cSyoN-znv#Sux~G{(Db>+3W~cTS_qXuOMrWqNykxOAY| zt~iQ)c(?e4j=5M;z+OEpj|$c2c}l$XCHFC-qYq#CO{OYYa=^n|%90ckYtjkdrw2ZQ zRPDz*U9dwN)#%tuRi^KaDqT@ojfc+ZT6mR5*|yZmUYfpfYHF{^uAoF+TodbNmmB#h zX>oC-&yxh8PlV?$)Oo&*Q)H2n8O4%vyuVZi3Xu9Y8Ij43e3>C%#`pz{C?#aa+GD4E zp$RSuDZM@6^*Bm0zAw~3!LhD|oY38e2_a)KA>Jg(dTDN9^0nE6=j!qrUR#s&mfqnc zOoYdTRNTmCxYljtIjLqd{`uR~Cg+1;()^K#%zZ$gdXmTU6#zRPjdb2I-+gX^HPLu9 z^_7ZCyH2{ksOi>FG1B6TH;rz%tAFY3YI|ZQ&fwjA7c!WPd2W0wgcCKT?@gH-x9uK| zvfZBjfyuXt*f#!0UoS1tLyxy7Yjnh3F1k=TfU#Z_ij`V_H(x!Hd8dv{tWNda_Eb&> z*M`$9WpsQU?-P63U`^wSjL+p(qIwI&-M@}riY((_QGu)7!4{pAloH1V3Zn7@r{g`r z)|R6&(8M!ap_|NE{vMvg`+(NaP%+sN2qjTbVE9^qXdLOMP@>-_G~o<|Zw3S+Xdlg& zZ#sxKXkl=JO9*-PHcwWBkSKUE8niLurc4%yw|?~FOvG%E=XQw`r0(=iovub@M%a{FPL2L4%!3SmsM<=A16RfrA2_+RhL4>Z=ms%l986dtpL>8Z*S^Y*IBNh5c!M z{T+CGPj=ai9{EwH?2M0fD%dL!-uARX!Wfd)tsJ5-=ANiji z=88&6OpG-#xm`+gA@`1Wjiev21m>J`szh(#pBnU&Xp|D8BR^e)%&^(WakwlC(8hOf zP*2QvjIpSwSf8I>TyR4KH-9Etu&j)I=@JhRzy?;*NyK!>g(UlT zV0_8)as%;pf$!2#+d~N(VN}mCn{IW&L!dIy5d=$)5lWsucj~ZtOOe4{O%=CuU&mOk zdpJlqHxuH1p7$2|CrMUy?(M4YY25JnthMDr+Zu8+@;h%p)zO#C6#LsSx1wvG`kucj zJo9CWd%4v+)A>*ZM+&p}y2hnth3&x)u#MKI^j$oX%$;XI2x*z=dVx-{b2z!-0u}h- zzjs}yd}H(TSb$XHaA<cGoPzmeSd4F%d6BjzByB&0sECOEImGsyvzvB9Tzf~ zS$o5q0%JK_Te&k@r(! zd<+n1z=t~u+Q&d2S*7;_7a*B#u-g)wLU&x2K&5uCT?oI4xMv-qJG`rIPhZ%qZTb$M ztYic}AP)9`qo<`c^z%Q>Jc+VsJW@kAU8mYbmnZff0q0y0hP;o4X*&N{>qg0)}e%X-pFEeM= z?aFwx73%zUHQe+;!su=&75mi63cGDqLNP6%?>bx^r1NOVY<$b;;~PZ z!RBQ#A0i_hFV)h*6G0eAasNkYZyD9r|AY_H0tE_`7ARh%xEEm>ni@eA^$-N(&xiil^GxND?eT^|DU*_-c zS>OuMpyuQP9g^>}h{>8(Qrw;o>*zZ2aSnd(tF@}jX5o_W8oD6FT#`I^@9T`xNW3-y z7nlBLmq4?3!8t^SdsDs}}$OrMQb-Z6_ce^yem9t^5-@xIx9b9Z8d;8qCq7vt`xCu%*t zU~NBJ6GJf-ii-1F9}&zbj^NMI8bo_&SikqKC-e1*0v0v~6h&M3v+Ozc@ph;b+B zbGgL1#t)srAcE?$YGb*2ZZEpQL{1l-M8?Hh8X&9~MUf1Nt$CZv*xODU253(JBODrH zU3W74IW}fjNW3|NOVVV2ZVfUd<=?knD!=cK)uRUTQb?;PRb7WuN&|S5(7X8)#OW7h zm^6&ZD4ul0GKf;ZMaeX;FKFH$)pQ)v3z_-r2wz})bYmEiFbe9k)VB2V{II`rf9|i& zO5_OcYIsDkQJju9Tm~_&Zq89MemKO@qozl*HvVVXt1YA@^@+#+!Rl;>P#=mPiK!iq zl5xNN4XcO83xtSl;;zWv-39=tt$pr4st7-GgZrcRD4}8CMAAyD=6weK{xp^RI@ipz zyL1kFad#PiqJD2~`XIEH#72)$DWga>g25}0Swg>u2P2#^xG63>zxc3aSB%&7aiE!( zy|fuxOu0pd{X^hIl0@loJEk=-12*>bN^O(P9kJrg{mDvnS!-Om4G8A6%M>=tj z;(%Uw1Gbl02ptM&6 zl%@x!9jfa7Y>~8FKkZR}{zeTG@Cvs|AV2uF=9aO$bbn%E5NgA+5`j4NYbSLVv1jmfiODy*~fs+ZN8;w4K-aY>ZuWuG4Ti!h*TX`EXEwH`+@?H zqbxxX$dG&OrfK2IJygNs?Z&923MYI%-={rQi{AnNQdtyH3l&)ZQ&i*R{#M1)_C*fD zD_eO=CYdqGP8sMdX8p*$kx4*JbNl2*?IRFGP&iX+PD<4ATExrc*-Nn`nplHBn` z>!h7_Z)W=X^NkPG(rV-U_yz>p-D8kga!$N^r^YpHHC+cWIA@>x7Su!ZLUnF8Iml)58W56eCg(s2A z$bh4Q3d@zTCo;6<^D*IIu$!dTAIC7B)MB`>zz}ZgX*>FVeoiJf_k+RAMA`t%QQ4%? zn^d?h#yz1JKL7D83T=AYsiY`mdwI>(_dL5YU2+!PW3!p#ece~%Q#l=2v`zX}^B1uk z`W$$o>~>F*JYAl_2$X|GEe*I20jNfDfMJ#8Ly@sJ#5)Sq__Eo&hc~e<>Y~d#+v{TA zc0LT5@FAG`#gQXZ7>4m8WTTrYoB_sgb)vjBx++_L}sYCb8Kh z@TFj7)2Uxpv)628O=a$FuDqsN2UPanw-!+$2pe%K`wW&W4Nm-i z2ebEMB)53|Dt*&dmJpU_Oz|uon#;lzn$XM3saPuFS-KATp?WRhBpT5=Buw2nc7h-v z_PqZJbiW_+KQ}k*cimz2-db~5oPe$W);LM@_V)lg7TC+&y2l}fR+`U6$7b{Qp(oTU zrNwHV;K~4zxccRDO1qXO-`cVB63;mAEXOS0qO|%qsC6!Njhmile%U&!W{xQhIJ$Nt zo*z?C)fUYB3ixCu_Y|mBrAS0hE?s({>S*nk+b>l_4wU-RgL2Kx5!oP7dYDk!E!`e# zX*1L4;L+7Vdg6Oi4t97Y9T4;VL3#5R4}5a~cgneWjGt8u#p?7BG}fqJ78jl4C4UUZ zV)o(J0QS;@I!+3cns-!|0+9@2vASVlp)}M3uPN|Hd6O8NgZd}}D?wBSl; zU;oVYn8+bk9K6mVX1Y=w;$wd}G31Yr&t00dy5U{fcxc3(B~lr8>nBYJkys7k2rl|0 z(SW^0Vk;PPo=#>w_1#VDZAw@m*Q<+QI5V9>jFln6i{xyfe)(rv+Q{U&T?=sD(ot`T zAOi_{iH#U0D-u07XT#SxB?P_6qjOclJI1G6wNrkZ1;)N&%*&m$X5fj*`UiU=&RKYC zF>)DMCMKTa@}wHZM}%?&ed|N|U#x}VIWghRi`3T3n$kV{2Zk*DX5n@FLPr&!nu$3K z!^YHJK|qtLV8E8j2F|z9mH*vN_{zVk9Od3Y%&LxCU<5etryUcr_YK?UXE+Ki~M^! zwgbh2F0JF&0=}lA-4FJG8rvdI-n{bp4;=EPmJYSXhCphRX6=X2kgkGw8n1Kz)zNr~ z{T$=b>RH?i3F+F{+S;5Y{==gr0_}aw zUFJEi{ip%3N-lrxcYqk5Ylpi8BdnWpQL zA3c}-f0_pxJ@m2`6>XLdAzb0FO#Z7*R>g)l#gH>xUjC%M%IdC)WBC1|@B77u%agQ# zJ028cKSB01OD20WpQa_F;-Eg1_+)LhlkTAL)OfqbH+BJ)#gV3wQi|s!l8t%_S+3K$ zCSw@E;o5=ki>Padf7@EcqyquMz%g@>(3?Qc;jXp5%~pMtXIQu7l&F#)vVs>z)a3as z4gTF{{{YTT->AG-4&R?8Reh*D#>5UmKRc^+y*PW_|3Jjd^{&=+H*}j3C7eN*BqYQ$ zYX)h3lHhbe^z9dXclmvO|8J?aUT++~~@=y+pW$Ag{?nkvAUfiRh z`0h!{R`U%3@u>T0)p_slU_^Kgy;AQue9)t^|CdiBG0stB@qT^TVJjRV%ij~*+1|yx zNNC9`_(i5zf1?ZUV9(S1Qz_Jyr_cWu%XR6B|$?vW|SYG zAV5!V=6CnU*OpqC0-uk+7QkTguY!lMl+L-!_lyLou+SzS`@~^-v#WbCAD_=p|FONX zKQIe`pBx<6&{MrQT8m=-=;t;2rIh~PqdzGjUT0;a!su)3g9@?!o(S)7sj#rpp@T(% z0R`^%(bX|d08Cyvv+-915h>N}K@$>NCicLPzWhG`^k>Xj8XPpnHmb!aSR7OEE(vUs zPWB}mMOtL6o0w8l40U-pv~HA3Ytg5Np_GsskPq3OZ7;ySxMv@AYjV0ofEu{Pm_c>? zsO{(c@~!5M+yX=f8wTfpi_(JmzXM1+hxYydRK-Jo`Rsor9efG0{}t2wfcF3GM>GCh zTPVRB%WUsjU#CKCE$dn4w!_Bup{}mv*}1#Z(fG?ZZ^{JN-U5L1WX zqTSPR4Hy4sL9j0^gvKqE;PAYac#xI@HLLpzc417*r^6+LhHOBuExp7i@?^ln;8ih( z^1q>H^x(eq>|mXzu%-ohZ++&$LPxpv(@zZ1zo&3=S7WxBQ8Ud*cIW#wZx>7CXs|l6 z&0g!imtStiZJ&kNt;)7xLdUlGqk=gjg9e3xK9GmKz<1t*v~4xdB!j$%jTssStR2#N z?IORc@l(6wRhi{9IP{*F0L(_htEFr$bR1>uKg=0hRueK;t6NpUoXh-%+;wibOY@;BSYe_3HZ(PA0`0dKh4&WFJ%xs`Zr`{&}<` zWY6dsDok)ClHI4lEcxWP{BHHmqHG>>BrPP;m3v3?R!ESz;wE;O*OoQ5npj4zsLB+l zz`y$kzt{bL;!~9lOW9r1YCWIvo}8!Me}h%kS{7&l0Kq)v#=;uS0pdLhU*_3-3P|2$ z$)siociL8F|EXvp5GYuY^++gDjJ|e*F1(XdmeOrffr^l7dzXg($(HM@=7_=_Lb0+8 z@VBj)l#LmgtJH@9Y~UA00vHDVY#TmYj$+l=Is*%ovJ=9TlW>ZRuJpA2^mNZHb-U@^ ztY7Srsz#OpynR*)N<^iM(Y0+4gh?n3bmU+*=ED^^CrV?ambQkC{&kd3_$0MqaTANmXF1;vgEX-77CB1}+TUq^kn! zVXZa`835lEJGQZnrMJUhe5CKomP8ofri_rGegXCmmtw=VMt{0eU+dWzxr?&5V-ITR zG&ONaGz zy%x_1arwggja?w2AgQ-JA&&t`5K=|o+Y8tVN2jLXI+Sju>T?pneh9w8ki_ZnBK4!_at91aY zI7qD+3aW6eNv+0k;ZV~S|4;s^i=KT<8jM%84F8O7fsSPPv%_7^uUqlLcDQ@4siv46 zzY&Td%P?6mwcY&eW6Y-yIoyky`hDsrTZLs=WCjVC_D!|`V%UJLH!qnxemIH~r1hLW zr$N-e(i1(U{6xJ0)J8$Rd`*=Ic0<)X+bv!{S=S)f_OC4Cp8eKlNCr)8fLiq4b}3q_ zx_XZY-Jo7Woh=dX`F>sdW&4Ra1~{#=O@od|M0+9OT}NCrqN4Re8XC`1xHfeRKRn;~ zYVk#zz?yC6kHvSTDYrY7X{Tac;5Ztv!d4sN=48*)|P4{4?@O}2G zmA95-mL{7QS?6q)UX;~u-`oMPVrt|w{^REjVhi`SZ=!-sB1lK3?; z`SIe&g|tH zm)~|{Lu^Gvme(0kfy*Ezc)Itm7w{e^wx}-|f64l&go@)nd8&`Ezm6rLTw<1z_xJDY zQiJT|tJA)}z{s_ep*D_mD;N-6M{6S>+g00(e3UIsn}3NB_d>0R*KSZwSMr!pQRCuEt;#{m zhy61pHy zzFoe~3c#PX4$_ssEvy z_6F&aWC~Lj*J$)3U0;k2ZYYjrM=T~OCEq+Tn6U!GEoBllhzuR_5!HZ7L;4%w*dzN2 z{*t$Wdl;Q}EvxrjT@evXamro3_nn_w%np%N{$sgrd_2;aiO2JH7jfLbr(vtKyrj zqHC|3K7I=M&QTI#RiOz1L#KUyqzsdNNmL!^$OAPq=0n-$C)bVzHaBL@FW44-^V2lf zoe)PB5ld(RM)E*_e)s)Tk=EI!#-T>@#0nGnPVo7ZCWAq@yk+Z)y@^^4(te#4Hn2$R z&QllJ{@*>s$*7S0rU_~cGFHh=+n7&5!qw0*H~8E`rREkNr;nyquJOce`B-$JCX8d) z9J#e)W1!Z7ErtqYkCivhlX}vQ@UWuJK@o1*>kWRfN=rO zzxn=Da2Hj0DoXq-Sy($7fcowt8&^4*I4>#U2%qa`xB+?@fH%-pysIb-Q=iLLm! zEuBMU%C<0cwx*t2!UX$4xsNP=uAp#MTVE~xVs=_3k>O=Rmwf)sj#O@Gg~bf ztH)t9K5BMv$_;d~B@nb1fFVLSX4@H2#4(((fqI!^nk6-V{b97>U(ltc-P`og{>^G? zCue-iVOl4zcsm((myeqN_Z#dv!CY5u0kq()Tq26I*8Og-&5F|1wK$xa`{l_Yltr_J z9wwp|%-$5S6YpTb9`V~dD3|~C;xM#JL4uQ>S&k6K!S|!~B`z}FJfbwIR~0(z92Hic z@)O|C1*SeS4xrKNw#OTKWezl)_%#Sq9P1!xvyc73kkI&HTa*ZLJE;jZ>}U1#E%>wF z#p}jinO3xOOS1%{#0(b4q@WNV2K)V7NXic@9)bD|%_+ydqUJta%GBP>wCr12oDZS2#|?w}O9k_UvX7t+8UTPYa_0TUlST0Xj;7YogVV%s zMKHJWB{Y4hFP|W&q_34h5d0Wm`>cFtsIYFMbg%`v9_ZT!=w#M zWPu*Z!-#<%^r~<;i-C@RB#nL}rbTA2w)1m*n)xB`@69xLa%aVdHIiEIN=7abgDK zl#T<=nj_9+A|fV{@2g=ktQ{QM+Y+5yLI%nzoFVxQdH0R!3I<_j1q|n;}##W3rz zq#R&6R3tL*f!L6RxG3cuSdvlpk+_CVS?7NV#Mh9WyJ^PW8#cLi0XSz#Ig;R;7cX_sU0^=+w%%K z-jzI$0tD^#Pb%sNoUS_`WAcYe@j^(`p&c*Lhr{U;qyXpxvh|~Os|nMYSY<5na5|t( zA}hXu#<=D!oekL+F!SE&brlD0_d9ul-MSx>wxxKxGrMN)8vHJ?ihJ+#ti815n{`X@ z0RRPV9NTiUiJ!}|TF%EldXTyzZe8%KvbiWO#vz^~_od5+rjUsozwEP-kQgmgAiTvX zX0Pi#gv&pk|Li__8o`r>Lf?%8oW|80}~J!tdWf_>{)Cxh%N@&xEF?LWklnbeV8* z;o|zfJRq$fNy&LM)>6v)NS6vUY0NeY(!OYEdpG?a}6vDXx{JIqJp% z4z+9=HDi?^I}MPEi$rRc12aBy+uAk~WKN&p@d5X##*6lfAJdm~rm z{)5n~@mjKY%{QS;Ql}I_EwkM$1ft_hL$%{the7dCo6LbKxzx zUPqpouwul5VGq+)Q(BrkdKe6rG;|I2_*pGxEcbL6M&$6^zoq$rK4a7*^_ej(5a-=w zfw~xnU!WaaTW!7)sY^6dQsCPeJoF%O_~(ZN^C*x zO4YJEJKNyW^~y>L?7p;Ou)M2zcr()$`Y$}x?{9z#z5FdLT|nL$?iidd?V%tIO*({yql2lgfY~gZ&wUg5Zw)Qh z!yZGeXs-D6YOMC1+qIzPUaVv*sx09QufsAvq=fx;B7|_rrG_xDPra)~%Tb}vNg1TP zmSoNUVGRA~f%BZt0-&Dl06Y1ndbMKaj6Qg+!|Df#kLs_2F1jsnAjLd=*|*o{Ep3!c z<322JP>v5CJC&)ew2bZ)S0mq-Ef)QDx`*x)`BC|R7Pa!t%u8sqg77wt#Qd_NKJqkyWX45YP zgfHhjyhYo-F3o&!%yCW@KIs>iJZ`9RyJqC_Z^#s>M>aeV<+h{iKh6ix3c6=6cU)t_ z|LWf$9)~6ej+>F0z{Zh8DwAJjhJJmOw-fF;_I?TDwLzpyJp(aCupiYN@eB;oeY|)K za$ly*i2-ye!)EEzQZWn#J6LYZG%fwX@V25duXq1&YJ8p?f~3r^c8zN0N6H>zcUA+? zIDNZNJD;a*_LR&0V$xN%q{xnI@h2~ry-9;<9veKGuJF=&dG7WXw}dWsuXG!nwp$)E zdwN*S0a&ziZIql#axOO_O;;Rf^BXp3LImP?fobqHM;hAS0r5RogKW!r!JgyJtN9~Y zH*!k%F?NYp=K^nTVb$BO;ll5QgI;g-$q&hfkk@DeYKk+;WbXj{b;O#!jatNk)dGJf$DGow)HUBFzoPo|ar{c2dCuPxqxRgQ7;(991d80ajK;nmO zxIxG9<12*E_c18~zS|3eIhR8kk|EJCaR0*_w1>e<6J8Y#EqT$+PM2%Fq4u#f1E=&;!Sh26h()}4wEETjhn`5L zCkUx{sECP3m)*HJz=D0~w{`ynL?(4?8TAG_5sN#5mHLVLFYkYh^d4AJ3*2-+X%u^J zUOHP+kB2(mD{&2Fx+^}XiY?uf=cucLe{YiApr;1D)D2I7=bc*O_3iS^uYy3_3Efzb zXC;`muPwVYg6*$_J&ehLeL2^|>eqK&00_5;!fkGt4QhiUO1S~aw^8bXX5N_zhj%zo z@gVXHH>%3@_iT}70dBKc}6MM3j-$D%F4KAA?H8 zZ>A;>H4?yy)tcyPp<>5Yh0rfdeRCR*j#9I1qOMQO9K}I=8*|)p9&=4zFM2_%mexLk zlEB10Oxvn>b5)DiQ?>HDtN%h6#-~$1tB<5_(QxSBbo0Vq06$n>#;`reF1u`}MJa91 zG+%b3F%*x%L|mx&GCt$iPc$Pxk-$Z_S%d?2WIlT!q|CSOKYK18HgWt|!+rIpz4A;j zN8dQQ53kBsv64Y22;$BBuGnDT6k^ z5ly%wEbH^Y)`{@1J-BxQqq6TKj;$Ue_X!@!+dS{ZnywVj1v!+Q4%j=UR;Qf__Yg|B z+6lNdoLX?@MxnpMU-92z(sR(wn|)J=Oh%GakaFp<&+Eo88#>PGhPG2CdNabN6Q=PD zge4)A^rs_E6?A&`*gp1>v!h}0l=wK6T3Y3cY==gjN)Z9x5aUZO(}?-zjgb-FwCmEX zec`#A+{ch==11-pP(SU2LA^G4#|5lr3G4BDb@78E+FAXRX94%zYG*G~Xs)do_%=Wb zCn_Cw!a^^^qxWiN;||;RJ-1OGg$*ga7x|cP$Czk9^$TvIVr@`}`C}Ob%QPueN_EaYb%-O4rJJ#l4d#c1V`U zg8-i2-YII)-sP6d@JtS)RLt8_p}}J!j?5b#G!5}b!bP#0;@X2->|FZ>;{wQ0oxPNn zJ4D8iR?yq0*GxLpEm31zXxq z9PiQa7>db~ja?@S znQaMJU{-nhdasZ)nK-=HlI^r9auNR={8&wf>9cz-4>cax6PMxp9v6O(t5K~mM9o< z_+x|}qtROuUW$*iQdO2a?!HmitudpTdh;gnePYa#Y^smF1%7CR!R7AF!-vnH$S?_a8_=6ZDqoRmH1hqC$`FnT#m@- zLwG${ctWL}oH^m0wJrCq+lA)Sc3VVE@R&KV&&9gC7&pG zQ@FuM;rIBBemuR`Q*!;)V_EX6r}G3^)wVWc+43*rz{RutCnU3#7U`|Jha%eC#q$9y zJ%cKZh5?c)$SlqiF*P6DXt+xM3HbmQT`OksoDOZB+wU7LD>XEXZD0@syHgi~;A!*>KMCmCL3y^2naKKO){QdH!O!X8tFi4Y+8F!B~F)~lmLS;caj%M0!x)Z$-TzgS~??l|pzPs+oUspPU6 zp5*{qJ16URh#T(!aJSVpcwTvJ7N6qn9ZgN-9^b6-enCj8F*5b>xt(9>=#C`Gr=z<3 zoYn~XH7gd>`N=&CLvOvAK z!CRo>Z~oU;yr{!N{MvN**(Ipzb>NgEb86NYVZ_%xVdAbsZi2Vs{%<=KKh-~0aSj(K z8Tyz+5coBgYaaAkrF`^aP%Hp2z7i0;*2*;RGG6o$@Al0?&a%M8Md4VWlB}%mZ;4j3 z6D7x64MnIE@f`~AHPNfzK0CXOkKfulJ06&2@?NF874|t8^cK5P74B}qy^$r%%A#0# zxV3pfjq}>_Ybm_`iFljdndv!OwzuCmx1sg4oH4#u=7Dyp3(@;Nb{?j_n%cUOB^R06 zbrYm3No5?f zE<{Cl__gY&{Jrqa!w5ofd-S?2w~0A4iK^Eu_14J2eVI^7E9$R859Ac@5XWUpr*XS} z7knxd*H4{A59asYyRF$1C3B%VZR^U7wea)d&V~C2mx@1VsB2gW=oaFeteQQhKV&N( z*x1`ej!{}nHOjd12@18e;#Xy$gaD;<5Emz=)Kh^EG%PHIqQqH<9Mn>C zYPu6}T?Lz){cAm~6=N5v_wVdtW0lKyK7K*0bpeZu_xeV<&r8X<3}ma_TXLG_sZ_-4 zC78_qeQ_=Rt1o2a@HeEGG%b6e3U$SgI{WUJD)dQb{19bjkNk$ZTre(@uyFTeDG8Tj z1UXmVt-@<^vaYgO>Nd~&gD8Tnw$2t0Z-D@wbMN-8d~^WdvT2QcsdihVEeuE4_Z1~joE;Tc7s3M z?=gWK#V(z%6OiR{JdUYUOoY$RUL{nj@Ck!0W)ZZrl?8$iHPR%Td#w5$=blp|it~M* zXD;c;93aae+ciR5kxw+u;_`v^*do~R?s8`u7^&Zud2$v=bKSyP5nC|lO8c41>Ug>% zi#DgmI>K7yJgG^&X)dvImz%rBBI7>eW=4D8$CqH?y!~YMZ=q}Hx}H&%>DRa2h+sNX zg=a>$F8fEz-~>%DRwf+iw~cG|IgibkAoQyDn9(r6yQu_qVoKeqyM2SL(?`a$(L~>8 z23|h(MWyVFpRjck+~YPoT=RFfOAVw4638N}B~389t1b)GnQ}=EajN{qnuwtXI~P2H z*@dP3505j#x<}iDNkl-D4jNIkny>HnuCd@_>UXgHb6re2FZ83ur>pc_*azj(CXBnM z2^d9HcdU~4rr?`~IBhH`#)e!|b=(d9tFLGr_E`jiJn3cV#;mmP5K^#eh_g*WH5%EJ zQQP+)R(M7bFm!Q-QqNb%mzLy|qsi3C#I41a|#8NYZLQi8=DrG6$}3^HoX7sAV0xT(|bt zv2Uw?eoLjbb>QC4z(_a-y1q$1M?L9f9A)aW){7{M3z~XSh}Y7Oy7CFV=8OB=f!QK9 zF*(13xEmaqq06~gI`PP7!BS7UUV#Uz`B4KByT$VVncjucF_2BGkM|y#6%H|TF4-yp z^;q$9ZQKJ_DNIkIB6i75hXp~quCHMoqr`6Py8_Olqj&n*0XO0oXjPXI;g1(N%#Chh zz2gqWq=MoZ^n}yU*6!m8evKsZht(W=>1lJ6El_PH%bdbTjv!h+rkPvj(tCE7Df$|v zhG?NoJRY2*>z_l#Z<2<5KrVtvQC`%ACA(PhyQFfoJz=sn1tYS*YfUHqZHciZ1)sRA zP?{)QLe*q88x6`dYu_?yJi|_kJ@6iG=B0uL2sZEys{K6so~3achfNSva?d%2@QJQo z;!c?MeW!j}V8!*4(w9=YLog4$9m3_ySXBQh`3!Gg@mTC$M)i%CuJ+8igYWh=qeNbv zL1CQ|J43Q2%J3*GZ*vB?0EwilY4*f&K7Y^K3)-+U5g(GUJ}6*nACYINr6{w0h0N%zH+1bYw>D_(T8Fq@_bLxl* z5SP`-asZ2pZK^!Q2z=8xP9r4>nHZbW_m)!)tmhDSMEZC@(Q@%@d!@*=Uo@fFUYlao zXXELo!cA{%=sab%F}KGV?JMl+B@)KA-6tnAqsKvODU+Yq<=##TGCcN;0;{2=+XMrt zTp20K87#0<8+T;eggQ-C%;l7w15^L1(_it><6U50Nc)0ysXUuSVmSE=l{tP6%OaOT zPi-nwXnR^0Jar}U#i(A*qYg#&S&%0fF`b?n@->oCMVz^)m z!OhL?+%NhHWiEGZDA*{sfoaJF8gJ1z9!xuoHiKzwPDh%#CMOCBz%T$gNg7X-f(^FC@J_zD$;5(r%Y|`Y8<|mZbt}_U(mf%SCU#(u|6#K^ra?IBH{M}N)Dy1~${BZi5tzgP-3c9s`OV^dg}-$v`yf~8q{fX{ z?6^m#*j~(*HpQXUlKxG~ua&^awBP=EZk9zb#pro%>xc~zB)kaK0q|G-K8OT)lIgWP zb9|S^pj|mP>t-A_*5w!5U|1S&psf9-IG_~eIsh%1_AgEaqi6y=A=f~wx}NN>(twZ zTu?4jYBtM`weQ|(jWV}r4qp?9^Y8W(6%})@JvCp$HGeEAl+73~pN8LHP^nLk{3FKv z&A1H+#%i^740J74$_BNjVlePjEyFAPN5kA8r1)>u3W?j#*Fvly@&T6@w~ddTAG%&6 z4l3F%bOv)odE(Tr@bOXUuU^0BjV7iX2~>7=*&nYKh2L{!D@WwGlX z)r)b$@(#4xieZtX1dnX*r3wMT?7y*>GS<6Q@JlIzy3^lgxV4@?6{9VhPTN_0=%j8c zeD%Dc@mqCP0pZ4TAfu>yC<77G%GF`g_b#@y+FmU2NnM$!1**1k%=oK|*<|S?DGLo$wUBX!Z{_y4%x$vId3Td2Q zxr;klgs=FV?s&~eZoWzT!vl@^*>K=dy2|r=Iys1U5qPspKjEAW4M*LM@S|~NA*yrG zDb3~4Xr=PhRI&4hdU_bBFjzv>**oWX$AzAO-~O=1*_n-g2jtIDb(PuO`w+U|Iybw+ z+7{D?9eCxdh_3~S&pIx)E1K;E@}oSU7Za;(SD9Lw&Y!iC6V5#q7? z`~WS%Iv=>9j52!Da>QE(q;j_O0ry`}77y(SHJqOWJJPNZ%g>DW&l6k%uT$S&+sT7z z4SyA*QCyjsk4|$hQWO$J!E4(@&L}_7&HeVHR{=-&^oGzWms(o@ literal 0 HcmV?d00001 diff --git a/apps/stats/psp/octane/Psp.toml b/apps/stats/psp/octane/Psp.toml new file mode 100644 index 000000000..90f4368fe --- /dev/null +++ b/apps/stats/psp/octane/Psp.toml @@ -0,0 +1,7 @@ +# XMB metadata for the PocketJS Stats (Octane) EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml when building this demo with --framework=octane; cargo-psp packs +# it into PARAM.SFO / ICON0 / PIC1. +# Regenerate the art with: bun tools/gen-demo-covers.ts --framework=octane stats +title = "PocketJS Stats (Octane)" +xmb_icon_png = "icon0.png" +xmb_background_png = "pic1.png" diff --git a/apps/stats/psp/octane/icon0.png b/apps/stats/psp/octane/icon0.png new file mode 100644 index 0000000000000000000000000000000000000000..c97fcf35f8363d0ea662ae1966ec4712e42ce16a GIT binary patch literal 4482 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 literal 0 HcmV?d00001 diff --git a/apps/stats/psp/octane/pic1.png b/apps/stats/psp/octane/pic1.png new file mode 100644 index 0000000000000000000000000000000000000000..d1677cce90447e043ab49ca13e0c6eabb5df570a GIT binary patch literal 34589 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 literal 0 HcmV?d00001 diff --git a/tools/gen-demo-covers.ts b/tools/gen-demo-covers.ts index 87aac48de..7a635349c 100644 --- a/tools/gen-demo-covers.ts +++ b/tools/gen-demo-covers.ts @@ -8,13 +8,21 @@ // stays legible. Writes apps//psp/{Psp.toml,icon0.png,pic1.png}; // tools/psp.ts picks the fragment up for EVERY framework build of the demo. // -// bun tools/gen-demo-covers.ts (all demos) -// bun tools/gen-demo-covers.ts hero music (a subset) +// --framework= bakes a VARIANT set into apps//psp// instead: +// same layout, plus the framework's name on the tile, in the PIC1 corner and +// in the XMB title, so a demo's framework twins are distinguishable on a +// memory stick that holds several of them. tools/psp.ts prefers the variant +// directory when building that framework. +// +// bun tools/gen-demo-covers.ts (all demos, default fw) +// bun tools/gen-demo-covers.ts hero music (a subset) +// bun tools/gen-demo-covers.ts --framework=octane (the Octane twins) import { createCanvas, GlobalFonts, type SKRSContext2D } from "@napi-rs/canvas"; import { mkdirSync } from "node:fs"; import { runScenario } from "../hosts/sim/sim.ts"; import { BTN } from "../contracts/spec/spec.ts"; +import { FRAMEWORKS, parseFramework } from "../framework/compiler/jsx-plugin.ts"; const ROOT = new URL("../", import.meta.url).pathname; GlobalFonts.registerFromPath(ROOT + "assets/fonts/Inter-Bold.ttf", "Inter"); @@ -213,12 +221,22 @@ const DEMOS: DemoCover[] = [ }, ]; -const only = new Set(Bun.argv.slice(2)); +const args = Bun.argv.slice(2); +const frameworkArg = args.find((a) => a.startsWith("--framework=")); +// No flag = the shared, framework-neutral cover set the default build uses. +const framework = frameworkArg + ? parseFramework(frameworkArg.slice("--framework=".length), "--framework") + : null; +const frameworkLabel = framework === null ? null : FRAMEWORKS[framework].label; +const only = new Set(args.filter((a) => !a.startsWith("--"))); const selected = only.size === 0 ? DEMOS : DEMOS.filter((d) => only.has(d.dir)); if (selected.length === 0) throw new Error(`no demos match: ${[...only].join(", ")}`); for (const demo of selected) { - const out = `${ROOT}apps/${demo.dir}/psp/`; + const out = + framework === null + ? `${ROOT}apps/${demo.dir}/psp/` + : `${ROOT}apps/${demo.dir}/psp/${framework}/`; mkdirSync(out, { recursive: true }); // ICON0 — 144×80 family tile: mark left, two-line wordmark right, accent rule. @@ -238,13 +256,19 @@ for (const demo of selected) { g.fillText(demo.word[1], 66, 55); g.fillStyle = demo.accent; g.fillRect(67, 61, 26, 2); + if (frameworkLabel !== null) { + // The whole point of the variant set: name the framework on the tile so + // two builds of one demo are not the same icon in the XMB. + g.font = "bold 10px Inter"; + g.fillText(frameworkLabel.toUpperCase(), 67, 75); + } await Bun.write(out + "icon0.png", c.toBuffer("image/png")); } // PIC1 — a real frame of the demo via the sim pump the goldens use. { const trace = await runScenario({ - app: demo.bundle, + app: framework === null ? demo.bundle : demo.bundle + FRAMEWORKS[framework].outputSuffix, hz: 60, seconds: demo.seconds, script: demo.script, @@ -261,17 +285,42 @@ for (const demo of selected) { grad.addColorStop(0.55, "rgba(0,0,0,0)"); g.fillStyle = grad; g.fillRect(0, 0, 480, 272); + if (frameworkLabel !== null) { + // Bottom-right, clear of the XMB's left column and its bottom text row. + const text = frameworkLabel.toUpperCase(); + g.font = "bold 13px Inter"; + const w = g.measureText(text).width; + roundRect(g, 480 - 22 - w - 20, 272 - 46, w + 20, 24, 12); + g.fillStyle = "rgba(8,14,20,0.72)"; + g.fill(); + g.strokeStyle = demo.accent; + g.lineWidth = 1; + g.stroke(); + g.fillStyle = demo.accent; + g.fillText(text, 480 - 22 - w - 10, 272 - 29); + } await Bun.write(out + "pic1.png", c.toBuffer("image/png")); } - const toml = `# XMB metadata for the ${demo.title} EBOOT. tools/psp.ts copies this to -# hosts/psp/Psp.toml when building this demo (any framework); cargo-psp packs + const title = frameworkLabel === null ? demo.title : `${demo.title} (${frameworkLabel})`; + const scope = + framework === null + ? "when building this demo (any framework)" + : `when building this demo with --framework=${framework}`; + const regen = + framework === null + ? `bun tools/gen-demo-covers.ts ${demo.dir}` + : `bun tools/gen-demo-covers.ts --framework=${framework} ${demo.dir}`; + const toml = `# XMB metadata for the ${title} EBOOT. tools/psp.ts copies this to +# hosts/psp/Psp.toml ${scope}; cargo-psp packs # it into PARAM.SFO / ICON0 / PIC1. -# Regenerate the art with: bun tools/gen-demo-covers.ts ${demo.dir} -title = "${demo.title}" +# Regenerate the art with: ${regen} +title = "${title}" xmb_icon_png = "icon0.png" xmb_background_png = "pic1.png" `; await Bun.write(out + "Psp.toml", toml); - console.log(`covers: apps/${demo.dir}/psp/ (icon0 144x80, pic1 480x272, "${demo.title}")`); + console.log( + `covers: ${out.slice(ROOT.length)} (icon0 144x80, pic1 480x272, "${title}")`, + ); } diff --git a/tools/psp.ts b/tools/psp.ts index 81f4f5777..e265579f7 100644 --- a/tools/psp.ts +++ b/tools/psp.ts @@ -173,9 +173,16 @@ cargoArgs.push("--bin", "pocketjs-psp"); // another app's EBOOT. hosts/psp/Psp.toml is build output (gitignored). // --------------------------------------------------------------------------- const GENERATED_MARK = "# GENERATED by tools/psp.ts"; -const fragmentHome = buildPlan +const fragmentBase = buildPlan ? resolvePath(projectRoot, buildPlan.app.entry, "..", "psp") : `${pspUiDir}apps/${app.replace(/-main$/, "")}/psp`; +// A demo built through a non-default framework may ship its own cover set so +// the XMB tells the twins apart (/psp//); the shared fragment +// one level up stays the default when there is no such variant. +const frameworkFragmentHome = `${fragmentBase}/${framework}`; +const fragmentHome = existsSync(`${frameworkFragmentHome}/Psp.toml`) + ? frameworkFragmentHome + : fragmentBase; const xmbFragment = `${fragmentHome}/Psp.toml`; const xmbFragmentLabel = xmbFragment.startsWith(pspUiDir) ? xmbFragment.slice(pspUiDir.length) From d815c917ce47b4d0a3c6282069eb49599675475b Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 6 Aug 2026 09:03:03 +0800 Subject: [PATCH 09/10] perf(octane): scope the settings toggle and drop two of three dismissal replays MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two hitches Evan caught on hardware after the 0.1.26 upgrade. Both are the same root cause as hero's — state sitting in a root component, which octane cannot scope a replay to because a root owner holds no committed range — not a new one, and not a gap in the upstream fix. settings: the toggle mirrored its value up to Settings, so every press replayed the whole root (37 component bodies). Nothing up there read `sfx` or `vibration` — the switch already tracked its own `current` — so the root state is gone and the press now scopes to the switch: 5 bodies. `theme` stays at the root, where it belongs; it restyles every row, so that press is still a whole- tree render and is now the app's worst frame rather than the toggles. notifications: one dismissal cost THREE full-root replays of ~35 bodies — press, removal, rise-end — of which only the removal changes anything on screen. `dismissingId` never reached the render tree at all, and the rise offsets only seeded a native tween. Both move to refs; `risingIds` is read during the removal replay to seed the survivors' offset. settings avg work 14.53 -> 9.94 ms (max is now the theme switch) notifications avg work 13.84 -> 7.57 ms 3 replays per dismissal -> 1 A first attempt jumped the survivors' translateY natively instead of rendering it, which silently deleted the rise animation: the list replay recreates the surviving rows, so the jump landed on nodes that were about to be destroyed and the new ones tweened 0 -> 0. The three committed goldens all happen to sit outside the rise, so they stayed green. Caught by diffing every frame hash of the tape against HEAD, which is also how both refactors are verified here: 120/120 frames identical for each, plus 23/23 PPSSPP goldens byte-exact and 11/11 suite stages green. Co-Authored-By: Claude Opus 5 (1M context) --- apps/notifications/app.octane.tsx | 71 ++++++++++++++++--------------- apps/settings/app.octane.tsx | 17 +++++--- 2 files changed, 46 insertions(+), 42 deletions(-) diff --git a/apps/notifications/app.octane.tsx b/apps/notifications/app.octane.tsx index 769b443b0..beb774fed 100644 --- a/apps/notifications/app.octane.tsx +++ b/apps/notifications/app.octane.tsx @@ -70,55 +70,56 @@ function NoticeRow(props: NoticeRowProps) { export default function Notifications() { const [items, setItems] = useState([...INITIAL]); - const [dismissingId, setDismissingId] = useState(null); - const [riseOffsets, setRiseOffsets] = useState>({}); const rowRefs = useRef(new Map()); - // Phase timers live in refs: the motion itself is native animate() tweens, - // so JS only needs to know when a phase ENDS. Counting in state would - // replay the whole root every frame of every dismissal on the PSP. - const riseQueued = useRef([]); - const riseTick = useRef(0); + // The dismissal state machine lives in refs: which row is leaving, which + // rows are sliding up, how many frames are left. In state, each phase edge + // replays the whole root — three replays of ~35 component bodies per + // dismissal, ~200 ms each on the PSP — and only one of the three changes + // anything, because only `items` reaches the render tree. `risingIds` is + // read during that one replay to seed the survivors' offset, so it must be + // assigned before setItems. + const dismissingId = useRef(null); + const risingIds = useRef([]); + const riseFramesLeft = useRef(0); const dismissTick = useRef(0); - const hasRise = () => Object.keys(riseOffsets).length > 0 || riseQueued.current.length > 0; + const busy = () => + dismissingId.current !== null || risingIds.current.length > 0 || riseFramesLeft.current > 0; useFrame(() => { - if (riseQueued.current.length > 0) { - for (const id of riseQueued.current) { + if (risingIds.current.length > 0) { + for (const id of risingIds.current) { const row = rowRefs.current.get(id); if (row) animate(row, "translateY", 0, { dur: 180, easing: "out" }); } - riseQueued.current = []; - riseTick.current = 0; - } else if (Object.keys(riseOffsets).length > 0) { - riseTick.current += 1; - if (riseTick.current >= ROW_RISE_FRAMES) { - setRiseOffsets({}); - riseTick.current = 0; - } + risingIds.current = []; + riseFramesLeft.current = ROW_RISE_FRAMES; + } else if (riseFramesLeft.current > 0) { + riseFramesLeft.current -= 1; } - const id = dismissingId; + const id = dismissingId.current; if (id === null) return; dismissTick.current += 1; - if (dismissTick.current >= DISMISS_FRAMES) { - const before = items; - const removedIndex = before.findIndex((it) => it.id === id); - const rising = removedIndex < 0 ? [] : before.slice(removedIndex + 1).map((it) => it.id); - if (rising.length > 0) { - setRiseOffsets(Object.fromEntries(rising.map((rid) => [rid, ROW_RISE_PX]))); - riseQueued.current = rising; - } - rowRefs.current.delete(id); - setItems(before.filter((it) => it.id !== id)); - setDismissingId(null); - dismissTick.current = 0; - } + if (dismissTick.current < DISMISS_FRAMES) return; + + const before = items; + const removedIndex = before.findIndex((it) => it.id === id); + const rising = removedIndex < 0 ? [] : before.slice(removedIndex + 1).map((it) => it.id); + // Set before setItems, because the replay it triggers rebuilds the rows + // and reads this to seed their offset. A jump() here would be lost: the + // survivors are recreated by that replay, so the node it wrote to is gone + // by the time the tween starts. + risingIds.current = rising; + rowRefs.current.delete(id); + setItems(before.filter((it) => it.id !== id)); + dismissingId.current = null; + dismissTick.current = 0; }); const dismiss = (id: string, el: NodeMirror | undefined) => { - if (dismissingId !== null || hasRise() || !el) return; - setDismissingId(id); + if (busy() || !el) return; + dismissingId.current = id; dismissTick.current = 0; animate(el, "opacity", 0, { dur: 200, easing: "out" }); animate(el, "translateX", 24, { dur: 200, easing: "out" }); @@ -140,7 +141,7 @@ export default function Notifications() { key={item.id} item={item} index={i} - rise={riseOffsets[item.id] ?? 0} + rise={risingIds.current.includes(item.id) ? ROW_RISE_PX : 0} onRowRef={(id: string, row: NodeMirror) => { rowRefs.current.set(id, row); }} diff --git a/apps/settings/app.octane.tsx b/apps/settings/app.octane.tsx index cf62e1ace..c618adf52 100644 --- a/apps/settings/app.octane.tsx +++ b/apps/settings/app.octane.tsx @@ -112,10 +112,14 @@ function themeByName(name: ThemeName): ThemeOption { return THEMES.find((t) => t.name === name) ?? THEMES[0]; } +// The switch owns its value outright. Mirroring it up to Settings would cost +// a whole-root replay per press — octane can only scope a replay to an owner +// that holds a committed range, and the root component has none — and nothing +// up there reads it. const Toggle = ( - props: { label: string; value: boolean; themeName: ThemeName; onToggle: () => void }, + props: { label: string; initial: boolean; themeName: ThemeName }, ) => { - const [current, setCurrent] = useState(props.value); + const [current, setCurrent] = useState(props.initial); const knob = useRef(null); const initialized = useRef(false); const palette = themeByName(props.themeName); @@ -138,7 +142,6 @@ const Toggle = ( focusable onPress={() => { setCurrent(!current); - props.onToggle(); }} > {props.label} @@ -236,8 +239,8 @@ const ThemeRow = ( }; export default function Settings() { - const [sfx, setSfx] = useState(true); - const [vibration, setVibration] = useState(false); + // Only the theme lives up here, and it earns it: every row restyles when it + // changes, so that press is a genuine whole-tree render. const [theme, setTheme] = useState("indigo"); const currentTheme = themeByName(theme); @@ -252,8 +255,8 @@ export default function Settings() { - setSfx(!sfx)} /> - setVibration(!vibration)} /> + + setTheme(next)} /> From 3248c40a6c2f7294faf87dc942deafd6c3f16c30 Mon Sep 17 00:00:00 2001 From: "Yifeng \"Evan\" Wang" <7312949+doodlewind@users.noreply.github.com> Date: Thu, 6 Aug 2026 09:03:34 +0800 Subject: [PATCH 10/10] ci(test): run the suite per branch, not only at release release.yml already gated a tag on `bun run test` + tsc + the Rust core tests; the same steps now run on every pull request and push to main, which is the branch CI this repo has been missing. Host-independent only: the PSP and Vita golden suites need PPSSPP, Vita3K and the pinned PSP toolchain, so tests/e2e/ stays a local step. hosts/web/pocketjs.wasm is gitignored, so the workflow builds it before the browser stages. Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/test.yml | 63 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 000000000..bd2c99031 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,63 @@ +name: Test suite + +# The suite that release.yml already gates a tag on, run per branch instead of +# only at publish time. Everything here is host-independent: the PSP/Vita +# golden suites need PPSSPP, Vita3K and the pinned PSP toolchain, so they stay +# a local step (tests/e2e/) and are not reachable from a runner. +on: + pull_request: + push: + branches: [main] + workflow_dispatch: {} + +permissions: + contents: read + +concurrency: + group: test-${{ github.ref }} + cancel-in-progress: true + +jobs: + suite: + name: JS suite + typecheck + Rust core + runs-on: ubuntu-latest + timeout-minutes: 30 + steps: + - uses: actions/checkout@v4 + + - uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - uses: dtolnay/rust-toolchain@stable + with: + targets: wasm32-unknown-unknown + + - name: Cache cargo + wasm target + uses: actions/cache@v4 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + engine/wasm/target + key: ${{ runner.os }}-wasm-${{ hashFiles('engine/wasm/Cargo.toml', 'engine/core/Cargo.toml', 'engine/wasm/src/**', 'engine/core/src/**') }} + restore-keys: ${{ runner.os }}-wasm- + + - name: Install dependencies + run: bun install --frozen-lockfile + + # hosts/web/pocketjs.wasm is a build artifact (gitignored); the browser + # stages eval it, so it has to exist before the suite runs. + - name: Build wasm (core + software rasterizer) + run: bun tools/wasm.ts + + - name: Test JavaScript and package contracts + run: bun run test + + # The app build at the start of `bun run test` generates the local style + # module that TypeScript intentionally imports. + - name: Typecheck + run: bunx tsc --noEmit + + - name: Test Rust core + run: cargo test --locked --manifest-path engine/core/Cargo.toml

      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 Jne3-8{}(a0_U`}y literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/cards.opening.png b/tests/goldens/psp-vue-vapor/cards.opening.png new file mode 100644 index 0000000000000000000000000000000000000000..3196a8556e45c115ddd8a7bbbe076fdd03732c11 GIT binary patch literal 20115 zcmcGWWmHyC7oaZJ+ zdF~+H%@fc0;c;0mc9U7j!n#mQp89K5O=lOI-uKde%0h-`Qd%Kb;||-5SyW^jBbs7I zP;FKjiL-0`ssn*|l%Cie6-D#QH#$t6amW=lbu`(%>lQH&4_Cilty{*Bp&faP+-#d{ za%OsLo~B&>6wU0dVCE5|K=r3sK@pt57sEyr7Ycw6r$EKc&l00X_5bpcVFWyU|Ktgm zKZR_P|No~)cK))Q=HbyxWQ9RV0(xSH8Dn$P2bFg@&QIS+hG|Jfv@*pckIawqTZK7R zA+>x8g`j|<^Mlvp9Z%ohK&;giP?A83=$qgCcMAPo4#igSWpoATbEii0X~(Z)R+@}Y zR~S8NqPWFy*q!4j^g0~mU@Vx`#*p0uR(F%}o__4t*3|08fhQ0ihnuNuCyzX3XqM~r z0Xvq4-5849{C=6U$G{e`{?6)L$qx@B=eu(t3PRj4r2BxT4-`1hG}p%_hU%Hqo7l|3# zrZtIOJPjYRScyMiSaHVSe+)den~b+*Q69Gal>e@iYgAzksm+3voG^J&f1L%>klp|H zf_uY{yunRLG~F|nj(3)e2A}k`t+P3GwXMT(E9drE1B#ptE6?MmyydMftAD_}zEbpH zC`CzY0b#L^ATv_Yv0Bk-EzN(O(C2?W_f%13RncHdNDp6*`AuRj!YXyXk8xVm?}7te zP!CMcgzZJDPAeObH!57Eh{q_sZgC3NFaZWN);Pv)TEeoFLM#_(=rnjESw_ zV`!X;LPVd{b+xT%L@o>L1=8i*@Z&!g91LqxuZa z2+ENxG5aw|tH(J>#A50pxQlz5`m+!imdrAKucz`O9ovue$O9nH&sJ4OrM-XJ+iFUf z>e9xD7Q>y$?UV3BbEUPOaJ6l{=sp#uFa!iCtfj7T{2`Z-W^??nl>vijg1n~%( zM$Sn)y@1?%XFMi&^s??t82u@D;l!KxT6;r(+!-{nm;dvi6OAP%x<6vI8ISGa-IVTJ z6e54tMo)eCHcQyYunyV637=}%E%o6H8JgrEAQ&%_RrkvytM#oIl_~D!Vf}55r@j+k z#FZo=^yDRgkQw;4h|>d$_jlw-Ad0SiEK7Z0UDmg-DB;}%3refVxjGpe1mAW|7hEz) zO&r8V`<++hPBlT?&d+Rz^zd*GnA@>bJ*B{l8nPDfJGLD$LD4x7xJH zc9Xp)6RWPtgnPdDJsG-Z{M2P244uVPP7e?uh?UP%ZJMG3XQKIf5mPCe#_Axqt&%22 zj1KL{rA3C8y*v>^+UhrEDxDT_n9=#9q_XGL+#*eK!4<)wqxZ>bMKlwo=;#**OpEnxC7UG)`w`C*`1gmC z(fY2UCL{}ZA+gu~uj6?bCP)J)WQh?^bNWv3iwRmACtTCi>AiP_Fy^Y9QD#vcvuEqe zou>AAEr+I>$osrDd!-K7osWgB-<`C4=UD3&{rOPL_Ignm)xYL9#`T)HdWL(1^?=*; zbp^h~a($&gTbmZS;KO45@?S?}e~KlGaxpC8gqP8h&4CKvNBzuQPP5ARhBUUmh#a?n z`#?u?rlqX`d#qF}=Y)P$hV&&@8_6gTh-2H7sg$ zCbsO*1yTIxD1I@YC0DHpncHgy82?7mR=&{r!mkMr6uRYR&rZh6By}s1cyMdmx>fH)%RezWSqgdeh##l5cUp&5ZIOs`1 zeVYAJMYucd@vLoAvCeu?{5HKi(kH2C2#U%IGfHj?TUu;#HWw5AYd)A*uH)=+DEhD0 zMHlNYhj*RaBWovj&S)fJ&|aP`4WIx`9{5`!h+~sGHDS3gw~o<2E<3JgXXI~MAN=7> z{K3SygW{R4{J5?@e6Vb^8S@i-J}_HuWob#sma^;??|D+R6``qttnKJ}amZFsPuM0r zEd1waMYnNSsAzl-PRxCh@RKS=j+n{qNOWmMqfwWa%}>21a>Ry z#Xr9N1dC0dK0x)q%6CN4D;OUqN*tjV;pHt*$-F9^cfoC$sk7Mv#uVh&=-F9N!?PiB zx?b`A1#-*#>yY6fmy)aP>Y`zxCk{lx=(CxFp1<%x()RY7v$x^ z|2l~jq0MRgTj~k~{d|!W6_;_2X@t|rbI~j2D4t)NK%3d<_~j^HFqivQJ#kR0(8V@& zO>q5P?yy6qn;K*MQ}P5fh}*pON6j<6E104}Z;xk?_2FYBv-k^@64|)`cJI5S3;ikg z^p&BSxbw$5|Cc@w(+k29dQ7)xs#iuBq8`5@Q;gKj^U;Ld`l?|>hV~^ftU<8em39vE zA#dUANdIkae~Rp!7Wjh)SxhK0!Y2v!td+bx<%^1nSxC=>c?Jzf!So9-GWooimGi(*!HMSxWy-i1p@cwZZeaU4P>mUzxRPb1S$kX?4NtN8vq@W&EME^Ro~N=uGYnHmQ(@7I2CCxJJxF zxZv-p3bHjd#Az+8rdLNLn%9RcpZ5&iS!*_}S?qP#KJP7d+77qNy+%Z%Jn&ZSY|D(N zsD4X^g~M%bIbQKTxjpd1*$!T2R92R7MRv|$N;9XY4)XEcw(~cy+kP^SGn_V{M-&8onNSdoLWdN0fBCeszp>IB!(vJU^6DUF$>|q~v9;CqL6# z9K7%(iJ`yVqpx_#;sg8WrTM*)+Vb9nnazr_?&bDAN|}ewLPe=0#otlCIrQ^Rl!%Px zk&$Ne62`_%##-|91m&FVm*fI`QZ(!1fmJf*J;pSq^_6mu5<5P0;p98sJ;F@TbLZuE zQYwwXRd;XP&!(4aUc2H!5Z{FkaboH5fr|BSC-C5f=R z$0j{pQ#quHrK;K_)KDZ~em&(wppQ*RWj#N*9W(Qm?&04qT z(0~L^;>^LU-0$fl!x;aQW9zFJx>S_%>chbA*sjQDXxDOHYxu$&bLbeXI5*4L45IFX z>^cvQc{v4XON$jYhu`g~WfpmL;^%C)7mKPL$nUeyEKFiENR)Pq-{f7W=Ut>GoZ5wP z-2{&1iciN5$;Z#B5KyzLCO8rjbwvzCb;>>y-e^<_lT(m;N;N-Jn`M-I`uex%)SfeP z%h0Q{Rusp~jI@LVJym;u#26II#K{iyCHG7G7C2}qqxAg3M4~2I=V)VEpye%NG&bAs z3Q;4Eu~{(19<)4ifdzfO?jTM!mv+p;_QFJFGOahq^#n}t)bSx%=l51w(1@a=$f?60TvV=s#ZXaZF1+*aDFBNGW4!16a9b>|$eBPuzXNJ8 z*G+M`2>mFSgJYQK`LtB!9(5MMB49pjx%icvmp4$0wQ6D|J~30}O&2}G+SboIA;XZj z<`gnu5wiu03Oufbs1=O*ddQadD(Ng%HdovGgsi2E6|DJwj5Z@cBHItyq@-ZCGT_9H zr{#6BG;&KubKT6Qg|R?COYEsq~5Tkh+%Gom|X%{D}CfSNi5OVS*=|7>rYeOsFE2>@jqyH}&-7bO06f=nm|Sfcju=tsLh03Z`>H z20twx{`Giy3=AZ|+h}$;#e-V>#iRP{B`D|UHmyn(PRHNSP=~M!xBQdCeDlZMWs;T~ zsJyJtXIR+GpX1@L-(ro#w@t7_l|P(cDton%iQh>QQ0tz<`pZQ#)$LEterF1MGMa8L zzT6Pih8OGX9e?3!MEvPBTxO0z?TmG02%^xXB10(3o^zQcN@$#ZM)KN|ye84)d0Gc|ke?m_;qwCRF+xH(gTs4|CgEPM$(PFLhTYoMNlr%ssblORbMrNd3lt0aOsA9e(4KA=}d?YIW3P+nRdQ@tnh6`)JVh{_ssh4-@o^oX`EpVqv_xZD!RpUe7FqIoc z`>W}B*I;p)NcsgL>|L~JpS_oFOQMF}?{8a`bB{!y~%j znrmxo2l?y_NxFFW5T0Ujk#Amb>nIP~>-=RQfk$t9@a?`U5B+nJKu`T7v~lp{`Qr`W zfP*es`|R7(_inQnF;fb^r#s(Q&nfnsRo~0@2eq4Z9j9G13EeN5xe0znT}>~$%6Xzx zDl#!B6@_h|KI=#EFq-#|Gx=YsBtCKaN%Nlveyo@@sCF^f;@C8b;)E#wPlurY8)3Df zcopYz@3q<9o!@qi7ldITH`7i`HlhV@9-)MokVl<+h)o$$Mtx}#=m|$`-Syhb;oeKk zWSL*Q+RL>^IE=n%m6>ZMP9)!zU;JY5sgh(gT`)(mz7{qSQ1wuL)+?DTeTRs2L$HzB zv_?Kb^0~ykZ@fjbu-~wKgP>n@sHonc(35+mm45YT&scUoOKdsB^Ypfo&HM4XMO65x zfWht7Q38I|XYjoI@$lB%w(T}}{_v@@VU%5g3E~{gZccAsD|HcOw|W@kip)%4M>X?P zR+%QTJ=kJ;f>m|v{6|~X3JD`?y$)URVnDgXjSG@W~{F| zr~V|HD`=e$*7Plc$W?rt)sIJCKP--0z9$s-^BJt5ccWsCuW)Xq8Fc|#JG%{9%j4;8Z| z7VM&R%`?U}?E2Pld8Jd+hb^8LJ4-*_@WR7EpPT9}4>zhOZ*F|mRvOUJ4qmt(F!DB- znuQJ;S9i;IMyCa_7BjuZ>kSTy4`Jc)5S#8x&^rfe8$BnXb6Ptg4<~NO(>n0MC2`HB zZLpsv^T)AhUK~}_ZI(elMkaebW36>*@t*TT?L6s2M*+jGOzs8Q$HO<;B#m9dV@sk$ zwa=uk@m_Qr@?mc`SlQZ(e;+mCalt!2CL?p8;>TH(^t}I&D;k}ek}_2D{7qJSh{yMq z;hN_uDJgfsVQZ|4s1^&gvA#%ilF9nIII6GTq6#3}Q_J^QeUM6Gs6MpdNgXt+exa{F z(uSi2IvZZfvc7*65xmA)a^$#Bo9XKlDpA1ebht!HUiAl&CzTdg@@WAi}uC9(4*uS>= z6<7MGAq^FCI*`1&wsvx5I|L1b#)1ShFj9~qqWRVLLHlV+M2e9P^)54+zm8fuVAh)1 zM%8)-x9zyHPE>bg6AJZQLza&DF3`!MHv$x!GBu2urvWbbKs+=#~+9Vq4Jr zXunms_-R%!IhvB%(RMm%ntk%c$K)07u<{|B;ko%r%tvc43|>_LsK))>GjMb1$~f+?vqv`ZAIxE zsQuSi?{+5a34M_ceDd8Qof3Zgpr63TjUTCVk-TDYM$k4scoOX1ED4<@9esU_7PMWs z-V4CoCa^bB>-fzp=;}tXic^zi%KzX-uK^M5+a1Doto9RmE|!wmx8y1L!OR`*<_ zlxs(LSU;T=sW_w{eK;*5_d-AOYuNz%zwN8p6h|X`YcW6RC<-w`lvTLk8e+(^7DgG9;kyhzY?o@~r0o+7)bj;+%@T-i5$o(ZP9)7BY5^GHhAn75Ah? z*{JUEou@xMbk@}Gl!oBZ|EO632hrg6mS|@ja)- ztPrP)UMP}3j+QSUZ{u+E&P42tTaaT)^vRyyJ0#9Ho|ur!h9M)O(WX<42&A`~8oh*s z9%g3V@M5DOx4<}X`bg(nQ_uU1u=WKDrwzSL?~*`=cKAXGe%3o&*Vg6;)_K+2Z)v;! zP?NtTr=fb=^!To(W}bSD?Qo_kHK;jK!+kN{0tkVk*VTH_W@OL2HntGoffsYK>CHS^cJu{q+LrA{zJ&Xgx$c&!9TnSq$xaV%_$`($dkGTyyTZ z`2Myi+2(uC-EQP+vni(GUFSqXw$J2H#KU3tM2#uLAkyHqc%zc+b|WiQSUT!m;ef_3 znHX^;2Mmft%W!ybCtygw;wm`pMM}!t8|`&uvnWPgssoptRhna4+3$-mVv#rzdBvRx zLG_>jV|f@2#AjbJ=9*!XA0yiw{jpbu%nKEIdeiUw1%t1oDWi-K&HnS&U-fg z@zYH6<#(_YX?2A|k;}VcZthwrir1(2 zmb~n#GuCpU>~~zMtpBLSaEQcZaZDiKEfzGYz4f$ropN0GAeu*AN`c1L3DMMdebA_6 zbmCtfKE27UW(V2>5~f_y(Hq`D`>PdC_zeZ*3deV3gt=5pMY0uxP<#jVU96X?*0v-( zaB){b7e^;1aF=y^TgSkILX9H8H*FtQFGUTcwkq8A>OEX+ekyRw7I1Dq z26Y>*%4|{Fln+!SQ83-c<4V9!6EA(Zs4YLR0-Cn4v`l2x^=)Td*tSH!IqoKNvw;ol z{-B=Jl!-$-PD#;IQab2a(N+6cqvz%SyeGAOAM$;nUSPphd+5_3&lq0zuo2Ymeq7tg z=`0|zbVu77T39BKqXx*;aNxyVvz?N~&3XP`Wlecc|JUWsB$-(awvx!FBVN=Tt9Z|9 zx#!TZlyn>KPCL;>A>V@hhp!~@vN>??U<22WdiB2_HDm*Gi;C{=#<6;4;Cz+zT}A?( z1lp|}%>_yb+g=)AKvq*;8}p4}?Tj=|MPdqhF+1u7K$sl`+2eaVM`)1|NI>pw06VS| z2(MJiT)>!+Ak8_7JPtA_UnLzL0_-RoR-+$O87U(B==y$q$matFv0l^T-y9_J=Vv!x zLyhvZ4F=pdbXVJ4a4eRKqA+C`!|7D=@W?z6p)&!5(~+}}>d@cg?k@SfQGs;0^#1p< ziA{W5DRa$-qPm@YSggBIA6uXVX&!O{vv^vren|P8(O3=RlIzV|M;-F zsYG`}PZVZBq}u4asgY)M!nPq#gebSdNVQ70#I0!+7;&`y&7}!kp2N#aWz8p!glL#W zu9+gI*p4(*@1+v;Mmk6@<`$A=u<#$7?ZUsT^fm$8NyaWO<5RvPUJq7`=Rt)gcJXL1 zb=Twsdmu4&b%l)nZ9cG14am<=`1}kY7GuHjnDBN+&us(r8{k7b2SAe8cnzjTMV9^b zmgi`R#o21$-%9nZfhU~CziY#3M0+#|G~HQqWdPH|FieQT=f zaXw?YKI(3enHO>;<%0o5cfegT;H?%HM|^2I=jCbbHVnjO6-|ia^|9}5RpSs2+6|*X zg@6BVX3r3^RLT_iuoH8gU4{vc0Xo3fi7A^oiYHDjo#u z4i#j#?;I%E!{t0KcEKSn+YTU>VPRN35 z%gSlsA+l-zU)VOF7BqA9irctA^Ue)iXsZ9desbdu{4uwlb)7t30 zqJla4ZTB+L=E_00AD7zC&y{+M?xn+I&9%OXeAl>eH(juckx1oluCX{s8H@{N)TzFP zQ3go9_6z2SRdcakcGb65yonNrj+9nhdwYXBwwEfsGNm2g7VUFeOA6d?|Ha)dB@&tQ zrx5og;Bp`}t~{!nNdn{LAbMG)VA^lW@#wiO`8#D0ls%b&p>KH^7%fY}KN?;w3hx9+ zQo+r(;9eiu=eR=^PQ8{f*HyH|!QV23bX!brA5v0IrKxM}mb$5;|7M(t-zs1pE_x)D z$$5FK@k)~MF8)FR{J-AoRJNn0*2 zwb%EWK<{=|*>;Ip7h^>VTUW-aij$jB+)KVi)=|jXIVB*qn0D%I!aDXFmaj{I`SM8E0jW`lwTBN<6D&gAIijE+WHp~m+-I_J+K z1C@>l;fcz5)rd{|6#~5U&E1o42|~X}<7v9+kiMZ4r#U9Cl;u0z_-OMMMR>hxfRYiK zscC5_SBp-FksNckxuQImpyqU-H%AcreM9Abi~O23GMUHgPt6XVat2?^+Wb9m4niaE z5E820r;rz}`@uiSphA$XyksD{)N9D1&{ke{TaLVirB3jr)m6}$c|l8ZT3S+COwSo3 z^s6^^a`~CJwz{JqhbkB-+{S*XJVGpvX)k6DZh`3J0pZWd`?e( zA1cX{GQiEf_0>4rgMz)@@W)Csiy?yJLOiKjBFm7E>+k)D$!*JU0%(qH1a|$Z8}s$H zB)OBGrCQF(+;rIPE^)F9F9E)`Rn3`Ft6uJ+rrN`57zy<5Q|uSwdP0O>9rn2v!nD0> z>s8&|;V0=NkV|}AsMMblO2#VvidF^|+M;qbRTo($_`O|X*TlH#NnScee7tHI_PrPM ziJgWm3v0$7oao5Zy{eijRwXs#bQ*wNR_e&w7Ua=2YG>Uiel~w&w0tJxg=cR?Q*hC& zM8>(*nRlj|8{K5gtZtSqi~VNEIQnnoH-$4+=g9?cD)Rw6eiKY`f!5Rc`*V!Me5FjW zKUm;b;9#?CN~(+=AGx;Br>rr#%p(_KMYelZ*5Z281ifB|Z{E$OoYFHDI~J%w(6!Ct zM&;s8GtSC-@HotGDW9aJHjgR0+i(hdG6vs@*M{wa!EODR%hjQ-|L+MOK}z@pEat>A zoF~@)e!PMHBaa%=S1G*iaEIOn8DLftWGRMSe8HQz+b2=?y}Pf~2n_RTCcXzsoBhI2 zu<#sl3q9E*BH|1z+$AE~Vi`j5mCRcWlWwjod=8yx6XHt5i@5+fRWIpCYlzsYdP{x4 z=kEr;O<8~Uq(Sj*(9s3vR%NKY+)(`eXSteq>X!3)ICxG+fClPhWGvoJYCTS3WHQ93 zPdwLT)(Tyi;i%GdRb+^SrvUc{=V4rc5!jb$LvbrijwWDs2e~yyF2f z5vR1IVqm$oRy+t|U~;_tUXT*@jC5Ht8F)Kx>it%Gt4OY6s!)D*cJM@FYisWZwC?zY zvL7xE^2SPoUvIuCIJhYS^IU1C52NFJnFlIX8gv_+lp6&#PEYf?Jw4OGAh$uo#|j@{ z5MIB25ohqo8qhzllT^=_S!gNsK@$v^lRQ!`jPA#NRLXNID5{>JZO}7m4M`~6KGKgB zYZjmW2Y5IuJE}Qns0M@O{Pf$FL~nZMg=3Et)cHDJSif|1YLb`LkdGLu`c`PxQdt6w zP0w=dXJWyiyU7datYPWRV0xMoGkk6^s3C)2QWHqiVU}3c`27^NX05coi_ZN>&r{pp zm0go(>@)qCMdNBQIUTQaclxe^WBavOJpvY1awY%x|Dp2H+hPZGtAS42Fmu)~GL0k` zaDQGuNordU)2&-a&#|cQ>>BXinPYoQQQSmwBj@GfT1*$Q=m@)uJ0*Pi9X8YIBfiuv9m~&8JL;P5SfHc> zYF|ZeoVTIu4#K%)PP;q?>!WZqr!+GGm_B1D9aHy*yzTp{XpLxS&cMp+<9b7}3g?P- zHe>fs{56r4K!X0y=@UmI>sSMrfN|ey8kUao5EsSw=fjBs+kX+Bp!=nM#e_?>+I&4q zTwo=+5ty2!K+8ruiJ&BvLD%OTwck&j*#9I&Wh;>lw!4*FOPDwDsl~V(2-^(Ut$O5` zbEbrA)Jmr&q&%Zf6z1Z{&8o0a{~b7Rb=EndT{L5;wj{wC8r#3EtfC;-q_d0)Eydsg zmGxm3;l)2${qD%Gr>d)2(fUI#mpg^w(VQM$exn)wePck` zJ-4*kl#ob!PS$-@`)h(G5qS*z&cJ7VjS|R8)jvrAHZlTWuFr=nPkK_eUo-TI7&!6`r8xsQ|dZdLSs<6uk%{pUACpN z@bg33$6$FWAi=h#k<2Nils*}xPoxQ~y6I^#Noi?UG7{=agVzgh8Z2yI27xP=s>a#f zlW%}Kt!a|d;=Z+R;PG3}34XvrT)uvF%-3ZI?-eV^FX-yvvO{^Ef6(cS5k5eFMI4HK zm37OA4=!0%=B9=N;*K6{?lyk0T0;55jZI}p7EfRuBHj+dH z6FS2c_#O+E;-AIe7cO&96Mt_U|A0{@vdb8ppO>LMqWB+rCVeJZWA#%R_N<BVYb1{b8uId*~lOA=rr3|Fns%nP#A6 zpY!7^DupiztkG?^qkuCkQ5=WUg$%qi#Z<*{&W+X9&>GB$jxE%=b zA5_$~VP>Rr#C({q6aVgRXDa=$`)8JSb1;qh%EpIIQ5#|GMO5;0NLE2Er=@+#?u7wR z*!_=)*nYF&o?iVpl`02a-<3zPqjW61e8~|Lk_BXu%6mt8^Z(5CC^BZ)^>UFqvz<3x z1?H`C32shfq0bB@o_n3_<`nF-H__hUJ$P-r(S822*X z8=FVUG@Zn1Bc9|;T@s6;JCiT`a{5hQex!NGYOF2i_WLF$cul%iv^Z<0KU^e7kZ?Cc ztju20wTz8$khFt|VZ>0pIvO|h%juRP`pOwaXeUu$sDvLTQ^fWV#ztqQPDvSC%1=4s zT}-h#2&svQf{7PT;>O`gVEf?uaw}l_8w3i4w+L_$=*_I2D`TvWU|{>f%~&t@i(L`1 zIf{3FE&`;==2nHp;RfwH*3JT?HqvVjjlz669*rkHX?rD^yyEbyCPlB0xU`4aqfG%+dfI9sv zzfHRa7Om=D>-K`uSHE|xxsz?cuUMjVp`ELCd=Le0F!WdaeP-qUQtafTw4eaZU3sH- z)y=ZWYzz6b3%_Feuk9;W&v*G?e=vNyz)>zq%(2m+VElb{*kBxY++u)1UUHQlL+<#_ z(aOIr;^5#g6EJabs4-yw(G2(2YT-6I#Y-78>;h76-7GMl)c@#A@Z?K$bToJkj5-h} ze2sPC$Q&SMxSw*ecS+AaaHO&tZK5N2exjlO^SCY>Xi_c6N<3&b{^4k+ny^1CZ#VgTB(+mf_P(y@bP2vA5)8Za2Ey*!0Pk_e`) z`8SjUjYBpJB=%6t+U^NMMIe+ zqPc=9%YNGX4u3l#fuMQu6HlrQPwLxp1jwP(DUx9I{^wrhENSA?XN~fZ7*#Z&`%e(z zF$33*llxcf_((7d#^qF>K{a)CDPhumo(PXY0~q0ND4qp(c9;@8`PzZ9F^b)8PpE|` z0Go?!W5pyCrTdU?O(5^O6PZBpk++gUzNcN^efr-()u;NUt1ES7%5Z(|l7K=n0|N%l zPOm*fJO3D0cBraG3uW}0T7Inj+N4yEZSd*4EKN=+i%6!5a&mpQDT(X**LJ{&0aX`F zR|dnVpJyRJKYfur7=azsbo|vgnj(h0cg3FnbEgxsvUzcB=cme9C9~A894ShPy;N>D za>>J6j(jBK=yg3W5FrQL9lNUeu`%QN`kJ~`D!+)pPGfsM1J*=^AskZW!#cMqpuv!f z$Yz(-a$>Q&K%u@UN~MIt+aM6v`Qp^mV1)&T%5}ru{^apKNzo#lZeFVxzjU+gOQ-Si zXCb}lc@6Vl_Jn4LyfA+{$nRS*uj3|X)u5S#s2SlJteYlaVR)WTJs0lRid__TVD7k& z&fkQu4KIOXI?~+c4j}?B7ZdC@v;$tg-Tf5*;Mk-|B2$J&1JSkBZo!$IR1oH0B$mZ? zl}pa4h}sjmgLAS^vg@+ofOskSFYaXV*nl47i$pXM`NGm4gg<;0g`*#{Kg}wkC%>V3 z3>ZS}HniB8vEQ=I{(Ub=aKql5;c~+soeGh-8md@y8%DunfL0L%<{!U)q2zpc)PQpDsDb%fGwD7$@QKmFE^E{nVxeH$ADIyn8-%Fs~{8up(53rUCzkkoX7 zZ-1UW1A&UDS4c=i|B2-OH(c>13+I17$}?Hgsu4`9BWRv9s~1dbpu!W6(#In}=fkmn zOG6*izar`6dp*D8JmL}<%Q0WV;&OKeI8Z&`fQspH14%YTRXWGw|Bg+zM`}}{`j13K z4)CaJRYuYOMSA>w_!nu;x>DELhyX!OVZESF7$D$64&s%t(LZK=mh~v7djY>uYaXg9 zQ-dPwI02bTm2{wL3ckAO@1ht(W*(vITj&c3!aaGtXbB`h9Kb+X9*_S%XTXo{sZN%& zdw?u<@X)_HMc-HJQi*?8wngQ8FIM?7#JH0GPWBF!4Acl6QS&qN1m+a_sv*&hC@Cr7 zkg!IE{wF5`5@MzIZ@00ue8Qj!!P`{NTJsR6lKMS>8l!yQRfEAIs*XZx*W{CywQ~n7 z*`MeD919OwTr#fJyN^697XyxW$3qJm@t`2Tb_Tbjx-PY|^!4?RIS)Ys$U(=7-IeXm zjo{)|+d7J$ask_{wtSro=5UNWZEO2|?kCl?Z4$P7(k-)Qp6NqJl0#3c?v++{yUB?a>J%>G$5tlWNRC-XXgw61-GxW(0W42( zHp&M1C%E6P*b3gCN#Pf95kXTW_bHgOKR=+5F44K66NpB0N~o)&L#{>02LNskmxX74 z!UO$3`Z672_Tly2l2;y)QmNXD^6{NZ7?UPl2ZFD%>j6euOiLc%-AIsH@H*h_@qM46 z&#-H4a3dCu!uBC1nwq0PCH)`l2hYofk*{U*#&_XOHiTyR=Z8S$azJKF-nfFB(XxDve9*g&BWA#0 zKA;$!+lD=lmitKnWsOd>f{Kf{nr;%QG50#BH-{#6o&v56i8)W=#53YU-Xb+y%U`XM zK=jC&_O;T%R;ITY=4jr(l%BLB-0fx%EBQ|_;)?hC*miV#^>%JYoK_wN6=n!P){t-0 zYQv$>ydrJ9bnM4oz}Vp-cf((z7XR*`zxa{}Vgw+-^DlH!z!}!y{V`p+9HlFba(1LP zuKk3~$BU7}?a z2jyFJ^!a(=2%H;eTkW(SLj06dw99vbwMe*l_<_S?~aA$T0l)9#={jej{w3NyMR zc9TJLkA^eVR%<~kx*nJDn}bF<<9ms$$tvXypKV}@t8H&vU`&tdlwjN}%%OuY6(JC0 z=OQ8|+HLN>fU(%F4MvMC(@0_?Htz6i+cr$tvGQoK5`HR1Fida&L40PacD?CW^pIg`%UagfZk-^fz576A0wc2_6rP`)te$> zxbaWS-sPyVvwJ)Q)I*X(ixmtpz&jGflgJzt`itwsVHA#npCmwC2S@p{eYa%`; zkM85H0LN+;$sM<>t$K8W(eUW^gY%oNgvKP%!E|b?LK}!gCCx(>peq*B525GbA#d$} z%CbUS#6<_q7la3MSkT<5GyB-KpPXw0;TBox_p_cC;TK`jR#qS7G#Iy&z`;JXj_{E2 zC2vZhWM0m!tXIQsCOCSEzaNc$)atqn3B^U1dzWT#ammI@%ZMKxZJ>5)Mty$iV;ypc z-yOEEc2i{J!%0-c*Eo-O~%jB27u4BdOXHPMrNzr{CaR5 znY5?|R}F*`{-Lk3)@ZI-*Ww+^E7{cp682Ctmp}T4UJn<0KH-O?g!G9RicQoUF~q$a z-d8)K%ij0p_71vf24-BU=3IJ&)N}t-lb=U(e@~uDXBJ77UhVXIKM6JpMC1XJ55`54 z_{2&9+0B}Ar?Q4huJ-iw1O=h`#C!=wI>5B~NyCV5&NUY<)d@wlHN9fl==+)qAXQm5 zyJOIgvTXaMRZm<#TYGPCZU<}$APiOA4Hm~s3*8+?2w0wRM4lNn_g?sibyX*D+*3`f zYPVDiZ_t@7;Z2yF7K$cJpsllP zVER-T59|A5o@NLDMlEWG&Sqhy0ZB+b@8W>AahRxiv;kuS$jxcR8tNg+NjdMT3c=GfuB@1qEj8c?N6Z+t zfXf1OD$yg&AfZqLTihu)At8l^01aTcq`GgTl5oEQs5x^w{?x>MXQ+%4^4L@!qRSn! z$Z<)G6XoLw(1-~_m6O_f5sA*LL{AHGsyXbqj)@7E|xH|6gR?jK^hwp%^pK23|hr2i zYk!XG%Kv}yGny}-wRhxV%&0X>M=zrKlcwY&XP6Lj_eby*SX7H-H5fsQ!qSd`akrmg z3qVHT3#EK$Yor%Yo@RwUazqe>IDO^B_rj1&!Idp2Sszf>-#0%j!xOeYit&3CLaf!-3GZm%*Ev^ari`8jDvf|k^Gmv^OUYNh?4h8GLMRdcIVh$ z`wO2ktB1YxP$;JZqq2t0!drvVQI{(r`Z4Y=v0?>ujaP3!{+|@h7_+0ZZ*`p`vA=9p zaZrT~i7^sNgJk?5O|t}2~pGj|R3V}?(1 zl)jHi>;nG<7=*gc=V3CK;?eO!7GNWwze?m12(mgL5h(fa=x4(Oz|ujH`R{HLaW z5di}HTN8wvWmV|^q;??-kWgL9tk@-u__IX`Rugy54&#;1zAmy#Z8GB?DWEI&pN;M$ z6ikUNDh~tmW#W^V*1yA2*NN-v~S%B@At6A`X@!#Aa=H5<9K57t`1MG%#4J-i3JB(|SC@QPJYUKku84Q99LTW?a+V z`(_quL=`w!P5kB+5$L-|7PGzp(yBS1GeeMz0n-yJvaOgD9zAaI8_H=FAU5D;g&MES z;TJ+tgJ{W1^M<{FAXzT+0w*Yqx&ja-3v@Zx&cF+wj8M{-)(2fYIO1^NhLDTA`5C-A-lPLo|Z#vIO@w`PA!4Y>x8rGvkAjEet| zw2d{41fIQJxgs+6rv%}E&6q%@P|2m)kbLnVG6-J9oM$Wqnx;eHrXHslP zbOi|Q-Q?HmMKaVm<`h;WXtPC##a311SpDCeV{yFyf*%mX3%}rD1mAAwkq12b#0}-4 zAwUFgDrEL+yWt&rvlVWTbJRuLobe>yx?Fj$nI8;%nIbxwSWpf{+aUrP15vZsU`a%@ zI0_Lrd})zw{XoEkKNiV-d?^PORA860B8D}xNfpK4Jxx@PLqAtVu_Cf;|Dp)JsQSsL zayM)W))U=oDM9QgyKiZi4SR`bl(J%o@5OWf<*+*;86Ioe7L2br)qQKq13O1vT)+^< zcTl-B{}+4XXaWaNZ2#I$SVcWz3gat3vq~MF;#rk)@HXn}ikW?$;^a8f1xo6 zHgE|!D3dR}l&-q8(-M3PNBdMUtI?ore5c|~msuatE*)rm;W?MO7WxM#0aAlc1!zu^ zl8BkZC{Xpz$%ouoGpv~vaL?JH`2GK)RnXtlYwrhKE=tJH?0=#=P_oNxkrv@=1m?d3 zCulG6X`69$4STQRH4sogY z1=Y35Rd0Dx!UqL%hF<%<;^2q@B_t)UY$b1*MkG(%gfcpfae_OwQU_Nm=9%M`z(v$1 zZuCwnaT?K>_BDq$MIeQj+g?Dwl*J`<@Dm4kWz@P!@vU-j(BGgAV{qr^vz?~${qJS% z7Pwz#)o_rMsxoM^_IxZ)0kb>42Ao4VnMsQ3(c1R+Ace-}Ce#&_&y^sTiVLnjs6 zc%S3^-dSo94DB?oo_(E-4c&PT6NAK$z;?j5(v<0?RH2c%IZJSJfpf#$0gOo>BU_9C zH#E4H`Pq};@|nl4B!Jr(aOWJjGpDlx+A89s_b|Ufgkl z_XTBim`#bn)p~od*#%IHs&8F0#y19qdF0oKMU_ph-l!#DB<}$!`z%CO+9O`biAX;J z8UcyWD-@KND6REi;HBugn*%F$Nt}Mai#QQkMt&X10Q;g?LY+7qp!w`a7gg(;4TA$i ztf0=qcP9H-E{4}r%(U)Pcnj=?#x#mht>^J#iy%zDgH$cvWr+#U7;HMytYc7zthw+1 zr$6j~cHj9ike-U2Otu z_S8}zkB#Ig4d03Et6!?*q}vC~SFs7YQQgIP?Wra?%)}w``5QtcZ+@&I$lwc`#NKqF zs2ZEZKG^oR-OV!%qaxl>gh*o(`d4N}rkCV1Yh8+gbUemJ@@u>kH!_3|V-{75-#LR2 zJ*z-AoT0<`TMOCU;-iGe^0tp{i|R17M3Rn1~s5g0wb}!s1@?>O-Yg z`Y60_Cg|!!d_f?l^1rN^Y_%;=fC;_s3MOW2{yVcqQRpoTm#x>Ek(uwdKA{6<{gttk ze)(f>3#Z>&9Jx%mE+WEv!|+T%rp@1f-4xhFxkZ!n!iTv;c~Ia`ocE5iFXny}?Eh-y zGk(z~vBJV6H9T`E!j#74O>?^a&BlX1oLJ8M`M9wA;g(+2*_#bc&UB(ezc#$r@4eT3qz{ee;@Rns)Z%%|@pQZR zxx4F+%!1)O1dq$Oa^{)UB|oxZ|9X(?hz05C>-VC#CS9K$IC>n;o51;g(J$4iYH{0w z>$85_b{;qZ*XIGd!Grcib?jl6-=2T0zy0Gg21kx$$IXynYpq3pXjelsph3oSw=%2F!JW4SC7Mxrz(dMFwtC2NgFp}`ni zqA?g_l%?!@LWa^~%^rF(wisblvNN_}%w)X3p6BoPz23j?`@VkH{X6GA_xYXg`JAET z5kwg6T5f`hXQd2u$PaGg%%F5KHFU?+lZtHiJrPW&F0^rAo_lK2a z396k`m!+}ld0kcVa>`~^Aj!v(AKY@g+^GGwc2!-=?R?jo$kY0-$7J1pHYfhUK5L)W zv(738UNNfBceAiSRVu&fI6HRx*0)vTeun(hBfd*h$g2+Zs>H)aBD+hHAGxvxu}7U-DS+Kqa7{;udzAVZbpHw=x0tCKyix>qK)-py8J5$seXm#%hfb&_uu7hp%uT<)=5tbxr`>@jnY z&*jgELl#Fe=MUlzL$CRP?tXti=@&pk*U)cbwXQ?sUD!uX?>QHc2`g0<4f6Uy-K5v$XEJ8tDUH9K}W) zvh`#{l-lNYw_)Ecz(V=N9gqd`%G%S|o|zZhY!+*?_G4~+^so;b!S~$-y|(*0qdiqt z6QTO0OiyanpR&b0b!vO#E0O9R-XKefJ9iKJc2qQDYR+OOcguR`jMp%wnqd7`Xg3U^ zgtDAh19QqRYDlh(MBxSwdflNmV#+1uIo@i8*T>&Hf2$uR~-R06MeRyV}7EPUz<(|ZgacWy4(no79WNdGdE#b}c zMdam8N>NDlkEYhPPA8qJF4x3XZW9LsSy&-CYx3rhcUEZ+=G_*%=$q2gYRG-}=WJeU zz9qNI`jYIxEau2iL-%YMj&H}qhbzR%mK0-Y$zJ52BO*}9EVH0Aizqa^)^?E`2Zai3 zeQ!`5am*>Pyxg+vU&|RYQtEMr{AV>JER_EQPiZ9oh|<9_#K7dRq8b)He5pUDp)Fvv6KSDZlt%R{C#S4IKf9E0GCuLeK-}mHHXXdRwgbuH@{Vi81|8t_~kqA+^kF* zn6yz)tSameBOsh=F7;e5ogPqh%}nSf?W!yTP1TK{NfDBZ6F=ZV_V-2cCILwfX!Q&{ z=Y7w?==6tL2R*V?QKLl4d0Q#VJJg#}ihIR2`yR^a{`q`RIz%o$PgV&0M@~i}bse=t zg$$vOGB0VgTg9jHGsm5}(_Z6T?G$Xsdzjto)ifQ*zQ9sBnXKT(7C>W^_yM5PD$bf{-uU zw?jy&mf;~K>aRJf9O?Gz`V~nrAOHo)0baTeW2pS>hQX+~d-3I?@sCKtP|B4<%+rgN zlTEAEh}m-ev@yV1>v~+$+>X7xBtg z1t@ci=Nu)sei^W(@<_54%-oc}g?>CpSUr+*`$UC1?)Zs!eIldB>##|BH?=%8`e7zu zcL^(%VCNu!`g|=r@pC4VXi=RK#2%3 zEr~lFl%kW0-jSA7rIdT$jg*J$zUCZMc-k6&&%(O^c2@MP109v5zF>4qIPOSVPM^~%ti<_EQh zFESLT+n?~XMWlmP9oGlof7}6}ZgB!H;JVe68gPtWb4HG~-2sg9f--q0s49YJ2k6@f zQ#o^V!DP&Gh1x{WCNu0)#rPSoO#3c+4Nz1ny}%1F)qFDDIjOsgV0ZjWIvB6{R(VAlK3@MXFX_}IMAMGLI^P06={?*f~dAAy4VF#mC~3SEJ|d?G*jq)EQm^ z(kT!VbY^z}b5q-5m!zH^)zi7{epb=q1(^QOnDfl#Sk5T}ip*y@*xrdq;eX{zv6`#0 ozfXt)|6R@eA42Ec$&2TS5#@Bjb+ literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/hero.boot.png b/tests/goldens/psp-vue-vapor/hero.boot.png new file mode 100644 index 0000000000000000000000000000000000000000..c623c9facfbcc0457a0780bf63be83a639d6fa2f GIT binary patch literal 18608 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 TIcI>!3Nd)P`njxgN@xNAo7N8Q literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-vue-vapor/hero.focused.png b/tests/goldens/psp-vue-vapor/hero.focused.png new file mode 100644 index 0000000000000000000000000000000000000000..5d791b560f7bc0fbb2e3e61bbd36f9debc5e98b9 GIT binary patch literal 18469 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

    GmI=@8--!T89|7*3T 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/notifications.boot.png b/tests/goldens/psp-octane/notifications.boot.png new file mode 100644 index 0000000000000000000000000000000000000000..43da935c5fa8cd1688346b1737a4beb05f88a570 GIT binary patch literal 11631 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 literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/notifications.settled.png b/tests/goldens/psp-octane/notifications.settled.png new file mode 100644 index 0000000000000000000000000000000000000000..226547c6c5bb474d6a02eb95ac1bbcfce291b5a6 GIT binary patch literal 19771 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 Tk^_*yLLgR_wiXXDmu~$5y|^-} literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/settings.boot.png b/tests/goldens/psp-octane/settings.boot.png new file mode 100644 index 0000000000000000000000000000000000000000..f55be675fb2093d058b0ac3d08e4d3584785216c GIT binary patch literal 19670 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 I!8PpqpR2?j$p8QV literal 0 HcmV?d00001 diff --git a/tests/goldens/psp-octane/settings.themed.png b/tests/goldens/psp-octane/settings.themed.png new file mode 100644 index 0000000000000000000000000000000000000000..edfebf6d5ae16d1a460ee2d45f481cc47e5569f0 GIT binary patch literal 20339 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