remove constructor; add typedef to structs