first type theorem in and working with pretty print