updates
organize helpers/structs