return TypeFrame.getBottomType();
return BottomType.instance();
	public Type mergeTypes(Type a, Type b) throws DataflowAnalysisException {		byte aType = a.getType(), bType = b.getType();		if (aType == T_TOP)			// Top is the identity element			return b;		else if (bType == T_TOP)	// Top is the identity element			return a;		else if (aType == T_BOTTOM || bType == T_BOTTOM)	// Bottom meet anything is bottom			return TypeFrame.getBottomType();		else if (isReferenceType(aType) && isReferenceType(bType)) {	// Two object types!			// Handle the Null type, which serves as a special "top"			// value for object types.			if (aType == T_NULL)				return b;			else if (bType == T_NULL)				return a;			ReferenceType aRef = (ReferenceType) a;			ReferenceType bRef = (ReferenceType) b;			return mergeReferenceTypes(aRef, bRef);		} else if (isReferenceType(aType) || isReferenceType(bType))	// Object meet non-object is bottom			return TypeFrame.getBottomType();		else if (aType == bType)	// Same non-object type?			return a;		else if (isIntegerType(aType) && isIntegerType(bType)) // Two different integer types - use T_INT			return Type.INT;		else						// Default - types are incompatible			return TypeFrame.getBottomType();	}