One advantage of using the structs is that you don't even need to care about cases like: "should I check whether *it is really a ListValue".