return new TypeParam(getAssociatedWrapper(), getName(), (ClassType) primaryConstraint.bind(t));
return new TypeParam(getAssociatedWrapper(), getName(), (RefType) primaryConstraint.bind(t));
  public Type bind(ClassType t) {    debugStart("Bind", "to " + t);    try {      int index = getIndex(t.getWrapper());      if (index == -1) {        return new TypeParam(getAssociatedWrapper(), getName(), (ClassType) primaryConstraint.bind(t));      } else if (t.getTypeArguments() == null) {        return null;      } else {        return t.getTypeArguments()[index];      }    } finally {      debugEnd();    }  }