Carpet.java is example code from a practice test that contained very confusing generic type syntax. I played with it and added comments to get a feel for how custom generic classes and methods work outside of collections. Very strangely, is the answer.