public void VisitElement(Element element){
if(element is IntegerElement){
IntegerElement int_elem = (IntegerElement) element;
VisitIntegerElement(int_elem);
} else if(element is VariableElement){
VariableElement var_elem = (VariableElement) element;
VisitVariableElement(var_elem);
} else if(element is MatrixOperationElement){
MatrixOperationElement matrix_elem = (MatrixOperationElement)element;
VisitMatrixElement(matrix_elem);
} else if(element is AdditionOperationElement){
AdditionOperationElement add_elem = (AdditionOperationElement) element;
VisitAdditionOperationElement(add_elem);
} else if(element is MultiplicationOperationElement){
MultiplicationOperationElement mult_elem = (MultiplicationOperationElement)element;
VisitMultiplicationOperationElement(mult_elem);
} else if(element is AssignmentOperationElement){
AssignmentOperationElement assign_elem = (AssignmentOperationElement) element;
VisitAssignmentOperationElement(assign_elem);
}
}