must pass pointers to structs and dereference them before calling their attributes