// Path: language/src/com/infdot/analysis/language/expression/visitor/AbstractExpressionVisitor.java
// public abstract class AbstractExpressionVisitor<V> {
// 	
// 	public abstract V visitConstant(Constant constant);
// 	
// 	public abstract V visitDiv(Div div, V e1, V e2);
// 	
// 	public abstract V visitGt(Gt gt, V e1, V e2);
// 	
// 	public abstract V visitIdentifier(Identifier identifier);
// 	
// 	public abstract V visitInput(Input input);
// 	
// 	public abstract V visitSub(Sub sub, V e1, V e2);
// }


import java.util.Set;
import com.infdot.analysis.language.expression.visitor.AbstractExpressionVisitor;
package com.infdot.analysis.language.expression;



public class Constant extends Expression {
	private int value;

	public Constant(int value) {
		this.value = value;
	}

	@Override
	public String toString() {
		return String.valueOf(value);
	}

// Path: language/src/com/infdot/analysis/language/expression/visitor/AbstractExpressionVisitor.java
// public abstract class AbstractExpressionVisitor<V> {
// 	
// 	public abstract V visitConstant(Constant constant);
// 	
// 	public abstract V visitDiv(Div div, V e1, V e2);
// 	
// 	public abstract V visitGt(Gt gt, V e1, V e2);
// 	
// 	public abstract V visitIdentifier(Identifier identifier);
// 	
// 	public abstract V visitInput(Input input);
// 	
// 	public abstract V visitSub(Sub sub, V e1, V e2);
// }


// Path: language/src/com/infdot/analysis/language/expression/Constant.java
import java.util.Set;
import com.infdot.analysis.language.expression.visitor.AbstractExpressionVisitor;

package com.infdot.analysis.language.expression;



public class Constant extends Expression {
	private int value;

	public Constant(int value) {
		this.value = value;
	}

	@Override
	public String toString() {
		return String.valueOf(value);
	}

	@Override