struct, typedef and tomato