code: void init(VarMap varMap)
  	{
  		ArrayList<Type> upperBoundsList = new ArrayList<Type>();
  		upperBoundsList.addAll(Arrays.asList(varMap.map(variable.getBounds())));
  		upperBoundsList.addAll(Arrays.asList(wildcard.getUpperBounds()));
  		upperBounds = new Type[upperBoundsList.size()];
  		upperBoundsList.toArray(upperBounds);
  	}
docs: Initialize this CaptureTypeImpl. This is needed for type variable bounds
  referring to each other: we need the capture of the argument.