import java.lang.reflect.Field;

public class TestCases2 {

    public boolean test1() throws Throwable {
        Field xFiguraField = this.getDeclaredField(Figura.class, "x");
        Field yFiguraField = this.getDeclaredField(Figura.class, "y");
        Field texturaFiguraField = this.getDeclaredField(Figura.class, "textura");
        if (xFiguraField == null || yFiguraField == null || texturaFiguraField == null)
        	return false;

    	Circulo circulo = new Circulo(71, 72, 4.0);
        Object xValue = this.getDeclaredFieldValue(Figura.class, circulo, "x");
        Object yValue = this.getDeclaredFieldValue(Figura.class, circulo, "y");
        Object radioValue = this.getDeclaredFieldValue(Circulo.class, circulo, "radio");
        Object texturaValue = this.getDeclaredFieldValue(Figura.class, circulo, "textura");
        if (!(xValue != null && xValue instanceof Double && (double) xValue == 71))
        	return false;
        if (!(yValue != null && yValue instanceof Double && (double) yValue == 72))
        	return false;
        if (!(radioValue != null && radioValue instanceof Double && (double) radioValue == 4.0))
        	return false;
        if (!(texturaValue != null && texturaValue instanceof Integer && (int) texturaValue == 0))
        	return false;
        return true;
    }
    public boolean test2() throws Throwable {
        Field xFiguraField = this.getDeclaredField(Figura.class, "x");
        Field yFiguraField = this.getDeclaredField(Figura.class, "y");
        Field texturaFiguraField = this.getDeclaredField(Figura.class, "textura");
        if (xFiguraField == null || yFiguraField == null || texturaFiguraField == null)
        	return false;

    	Circulo circulo = new Circulo(61, 62, 3.5, 7);
        Object xValue = this.getDeclaredFieldValue(Figura.class, circulo, "x");
        Object yValue = this.getDeclaredFieldValue(Figura.class, circulo, "y");
        Object radioValue = this.getDeclaredFieldValue(Circulo.class, circulo, "radio");
        Object texturaValue = this.getDeclaredFieldValue(Figura.class, circulo, "textura");
        if (!(xValue != null && xValue instanceof Double && (double) xValue == 61))
        	return false;
        if (!(yValue != null && yValue instanceof Double && (double) yValue == 62))
        	return false;
        if (!(radioValue != null && radioValue instanceof Double && (double) radioValue == 3.5))
        	return false;
        if (!(texturaValue != null && texturaValue instanceof Integer && (int) texturaValue == 7))
        	return false;
        return true;
    }

    private Field getDeclaredField(Class<?> clazz, String fieldName) throws SecurityException {
    	try {
    		return clazz.getDeclaredField(fieldName);
    	}
    	catch (NoSuchFieldException e) {
    		return null;
    	}
    }
    private Object getDeclaredFieldValue(Class<?> clazz, Object obj, String fieldName) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
    	Field field = this.getDeclaredField(clazz, fieldName);

    	field.setAccessible(true);

    	return field.get(obj);
    }
}