Crushval levels : level arrayval tile : Playground.numberval nx : level -> intval ny : level -> intval nz : level -> intval cell : level -> int -> int -> int -> charval across : level -> int -> intval deep_n : level -> int -> intval project : level -> int -> int -> int -> chartype play = {level : int;view : int;crushed : bool;squash : Playground.number;u : Playground.number;y : Playground.number;depth : int;vx : Playground.number;vy : Playground.number;ground : bool;message : string;}val size : Playground.number * Playground.numberval enter : int -> playval nothing : inputval read_input :
((Playground.keyboard -> bool) -> bool) ->
Playground.keyboard ->
inputval fell : play -> boolval at_exit : play -> bool