variable explanation now correctly handles structs