Build me a Tamagotchi-style virtual pet for my Tokymaker — call it Tokygotchi.

The pet is a little Claude robot: a round head with two eyes, a mouth, two
feet, and a short antenna with a small knob on top. It wanders left and right
across the OLED on its own. It hatches from an egg in stages: a plain hollow
circle for the first ~4 seconds, then a horizontal jagged crack appears for
~3 seconds, then it hatches into a small robot that gradually grows to full
size as it ages.

Care for it with the board's controls (label the hints to match the physical
button positions — A top-left, B top-right, touch pads at left-centre and
right-bottom):
- Button A = Feed. Show a FOOD (hunger) bar at the top that you keep topped up.
- Button B = Play a quick math mini-game. Ask "is the left sum bigger?" — show
  two single-digit sums side by side, e.g. "1+3 > 2+1", with YES at top-left and
  NO at top-right. A = YES (left is bigger), B = NO. Best of 3 rounds, ~5 seconds
  to answer each (and it must never hang waiting for input). Winning raises fun.
- Touch 1 (left-centre) = Clean. The pet drops a little poop pile every so
  often; tapping cleans it.
- Touch 2 (right-bottom) = Medicine. The pet randomly gets sick; when it does
  it stops moving, its eyes become flat lines, and a little syringe is drawn at
  the bottom-centre as the prompt. Tapping cures it.

The pet's FACE shows its mood — it smiles when content, goes neutral, and
frowns when neglected. Show a HAPPY bar too, but happiness is DERIVED from the
care stats: it's the average of hunger and fun, minus penalties when the pet is
sick or dirty. So feeding, playing, cleaning, and curing all lift the same
overall happiness, and the bar and the face move together.

Death: if FOOD and HAPPY both reach 0, the pet dies — it stops moving and shows
two X's over its eyes where it stands (a lean in-place "dead" look, not a full
GAME OVER screen). It's a session pet — no save across power-off is needed;
power-cycling gives a fresh egg.

IMPORTANT — initialization: explicitly set every state flag and counter you read
before writing (dead, sick, poop, age, etc.) to its starting value in setup.
Flashing is a hot patch, not a cold boot, so statics are NOT zero-initialized —
an uninitialized flag in a gate (e.g. the wander's "alive" check) will freeze the
pet while it still looks alive.

All text small. Keep the whole program under the compile backend's hard size
limit (the /sendCode GET URL caps near 7.8 KB, with no POST fallback), so author
it economically: short variable names, set the text size once, derive values
instead of storing redundant ones, single-line bars, and gate the big sprite
behind one "has it hatched?" check.
