let pair pp1 pp2 fmt (a,b) = Format.fprintf fmt "("; pp1 fmt a; string fmt ","; pp2 fmt b; Format.fprintf fmt ")@?"