sig val x : int val y : < m : 'a. 'a -> 'a list > type t = Int | Float type r = { offset : int; blocksize : int; } end