typedefs documented