Menge<b> Menge<a>
/* Menge<b> Menge<? extends Menge<a>> */
/* Erg.:
[[(TPH a = Menge< Integer >), (TPH b = Matrix)],
 [(TPH a = Menge< Integer >), (TPH b = ? extends Matrix)],
 [(TPH a = ? extends Menge< Integer >), (TPH b = Matrix)],
 [(TPH a = ? extends Menge< Integer >), (TPH b = ? extends Matrix)],
 [(TPH a = ? extends Menge< ? extends Integer >), (TPH b = Matrix)],
 [(TPH a = ? extends Menge< ? extends Integer >), (TPH b = ? extends Matrix)],
 [(TPH a = ? extends Menge< ? extends Number >), (TPH b = Matrix)],
 [(TPH a = ? extends Menge< ? extends Number >), (TPH b = ? extends Matrix)],
 [(TPH a = ? extends Menge< ? extends Object >), (TPH b = Matrix)],
 [(TPH a = ? extends Menge< ? extends Object >), (TPH b = ? extends Matrix)],
 [(TPH a = ? extends Menge< ? super Integer >), (TPH b = Matrix)],
 [(TPH a = ? extends Menge< ? super Integer >), (TPH b = ? extends Matrix)],
 [(TPH a = ? extends Object), (TPH b = Matrix)],
 [(TPH a = ? extends Object), (TPH b = ? extends Matrix)],
 [(TPH a = ? super Menge< Integer >), (TPH b = Matrix)],
 [(TPH a = ? super Menge< Integer >), (TPH b = ? extends Matrix)],
 [(TPH a = Menge< Integer >), (TPH b = ExtMatrix)],
 [(TPH a = Menge< Integer >), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? extends Menge< Integer >), (TPH b = ExtMatrix)],
 [(TPH a = ? extends Menge< Integer >), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? extends Menge< ? extends Integer >), (TPH b = ExtMatrix)],
 [(TPH a = ? extends Menge< ? extends Integer >), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? extends Menge< ? extends Number >), (TPH b = ExtMatrix)],
 [(TPH a = ? extends Menge< ? extends Number >), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? extends Menge< ? extends Object >), (TPH b = ExtMatrix)],
 [(TPH a = ? extends Menge< ? extends Object >), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? extends Menge< ? super Integer >), (TPH b = ExtMatrix)],
 [(TPH a = ? extends Menge< ? super Integer >), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? extends Object), (TPH b = ExtMatrix)],
 [(TPH a = ? extends Object), (TPH b = ? extends ExtMatrix)],
 [(TPH a = ? super Menge< Integer >), (TPH b = ExtMatrix)],
 [(TPH a = ? super Menge< Integer >), (TPH b = ? extends ExtMatrix)],
 [(TPH b = Menge< TPH a >)],
 [(TPH b = ? extends Menge< TPH a >)]]
*/
 
class Number {}
class Integer extends Number {}

class Menge<a> { }

class Matrix extends Menge<Menge<Integer>> { } 

class ExtMatrix extends Matrix { }