// Somo ef the butt-ugly Generics syntax. // Kennel requires two classes, much like Map. // Here & means "and also" nothing at all to do with its regular meaning of logical intersection. // Also note the required "extends" an interface Comparable instead of "implements" it. public class Kennel <D extends Comparable<D> & Serializable, C>