# The prompt — identical for all four models

> Build a single, self-contained HTML file (inline CSS and JavaScript, zero external dependencies, no CDN imports) implementing a playable 2D Lunar Lander game on a canvas, with a built-in autopilot and a self-test panel that grades the physics.
>
> The game: a side-view lander with rotation and a main thruster. Use exactly these constants: gravity 1.62 m/s², main-engine acceleration 4.5 m/s² along the lander's axis, rotation rate 90°/s, fuel for 10 seconds of continuous burn. The lander spawns near the top of the screen with random horizontal drift. Terrain is procedurally generated from a numeric seed (seed input field, default 42), deterministic for a given seed, with at least two flat landing pads. A landing is safe only if vertical speed ≤ 2.0 m/s, horizontal speed ≤ 1.0 m/s, and tilt ≤ 8° on a pad — anything else is a crash. Controls: left/right arrows rotate, up arrow thrusts, R restarts. Show a HUD with altitude, vertical speed, horizontal speed, fuel, and angle.
>
> The autopilot: an AUTO toggle that flies and lands the ship using only the same controls a human has.
>
> The self-test panel (always visible): one button runs the full suite headless at maximum speed and displays, persistently on screen: (1) PHYSICS DRIFT — simulate 10 seconds of thrust-free fall and report the percentage deviation from the analytic distance ½gt², which should be ≈ 0 for correct physics; (2) AUTOPILOT — run 20 episodes with seeds 1 through 20 and report landings succeeded out of 20, mean touchdown vertical speed, and mean fuel remaining.

Rules of the run:

- One prompt. One deliverable each. **No back-and-forth** (Gemini required an error retry and a mid-run model switch — documented on its page).
- Whatever came out is what ships. The files in `apps/` are byte-for-byte untouched.
- Two referees baked in: analytic physics drift, and an autopilot graded by the model's own game.
