Replace lisp code with a structured, immutable data model and specific UI