@@ -0,0 +1,702 @@
+package task.util.generic;%0A%0A/**%0A * Created with IntelliJ IDEA.%0A * User: benjamin%0A * Date: 06/10/13%0A * Time: 16:23%0A * To change this template use File %7C Settings %7C File Templates.%0A */%0Apublic class T2%3CE1, E2%3E %7B%0A%0A  public E1 e1;%0A  public E2 e2;%0A%0A  public T2() %7B%0A    this(null, null);%0A  %7D%0A%0A  public T2(T2%3CE1, E2%3E t) %7B%0A    this(t.e1, t.e2);%0A  %7D%0A%0A  public T2(E1 e1, E2 e2) %7B%0A    set(e1, e2);%0A  %7D%0A%0A  public T2%3CE1, E2%3E set(E1 e1, E2 e2) %7B%0A    this.e1 = e1;%0A    this.e2 = e2;%0A    return this;%0A  %7D%0A%0A  public T2%3CE1, E2%3E set(T2%3CE1, E2%3E t) %7B%0A    return set(t.e1, t.e2);%0A  %7D%0A%0A  public static %3CE1, E2%3E T2%3CE1, E2%3E set(T2%3CE1, E2%3E t, E1 e1, E2 e2) %7B%0A    return t == null ? new T2%3CE1, E2%3E(e1, e2) : t.set(e1, e2);%0A  %7D%0A%0A%7D%0A

Create T2.java