sig type ('a, 'b, 'c, 'd) t val name : string end