a few changes to the structures, behavior still needs to be set