return arrayTypeFromDimensionsAndBaseType(numDimensions, elementType);
return arrayTypeFromDimensionsAndBaseType(numDimensions, baseType);
	public ArrayType arrayTypeFromElementType(Type elementType) {		if (!elementType.isValidArrayElementType())			throw new IllegalArgumentException("Type " + elementType.getSignature() +				" is not a valid array element type");		int numDimensions;		Type baseType;		if (elementType.isBasicType()) {			numDimensions = 1;			baseType = elementType;		} else {			ObjectType elementObjectType = (ObjectType) elementType;			if (elementObjectType.isArray()) {				ArrayType arrayType = (ArrayType) elementObjectType;				numDimensions = 1 + arrayType.getNumDimensions();				baseType = arrayType.getBaseType();			} else {				numDimensions = 1;				baseType = elementType;			}		}		return arrayTypeFromDimensionsAndBaseType(numDimensions, elementType);	}