typedefd type to fix problem with pointer types