public class Group {
// Group Management
public int size() {...}
public int rank() {...}
public int [] translateRanks(Group group1, int [] ranks1) {...}
public static int compare(Group group1, Group group2) {...}
public static Group union(Group group1, Group group2) {...}
public static Group intersection(Group group1, Group group2) {...}
public static Group difference(Group group1, Group group2) {...}
public Group incl(int [] ranks) {...}
public Group excl(int [] ranks) {...}
public Group rangeIncl(int [] [] ranges) {...}
public Group rangeExcl(int [] [] ranges) {...}
public void finalize() {...}
...
}