public static int resolveInteiro(Escopo escopo, String esquerda, String operador, String direita) {
		int valor1 = 0;
		int valor2 = 0;
		Variavel var1 = escopo.buscaVariavel(esquerda);
		Variavel var2 = escopo.buscaVariavel(direita);
		if (var1 != null) {
			valor1 = ((Inteiro)var1).getValor();
		} else {
			try {
				valor1 = Integer.parseInt(esquerda);
			} catch (NumberFormatException e) {
				throw new IllegalArgumentException("Número inválido: " + esquerda);
			}
		}
		if (var2 != null) {
			valor2 = ((Inteiro)var2).getValor();
		} else {
			try {
				valor2 = Integer.parseInt(direita);
			} catch (NumberFormatException e) {
				throw new IllegalArgumentException("Número inválido: " + direita);
			}
		}
		if (operador.equals("+")) {
			return valor1 + valor2;
		} else if (operador.equals("-")) {
			return valor1 - valor2;
		} else if (operador.equals("*")) {
			return valor1 * valor2;
		} else if (operador.equals("/")) {
			return valor1 / valor2;
		} else if (operador.equals("%")) {
			return valor1 % valor2;
		} else {
			throw new IllegalArgumentException("Operador " + operador + " nao definido");
		}
	}