module Box; type Box (A : Type) := box : A → Box A; type T := t : T; b : Box _; b := box t; id : {A : Type} → A → A; id x := x; tt : _; tt := id t end;