I see. Could we also see an example of union and intersection of groups? I assume a union would create a new group that is a union of two other groups and an intersection would create a group that is an intersection of two other groups. The code below indicates `//union with parent' and `//intersection with parent` which strikes me a bit as odd, since I don't see the utility of such function.