code: // Generated from TA.g4 by ANTLR 4.4
  
  package ta.parser;
  
  import java.text.ParseException;
  import java.util.*;
  import ta.declarations.*;
  import ta.expressions.*;
  import ta.expressions.binary.*;
  import ta.expressions.unary.*;
  import ta.expressions.ternary.*;
  import ta.*;
  import java.util.Map.Entry;
  
  import ta.state.*;
  import ta.transition.Transition;
  import ta.transition.Guard;
  import ta.transition.assignments.*;
  import ta.SystemDecl;
  import ta.Variable;
  
  import java.util.function.Predicate;
  import java.util.stream.Collectors;
  import ta.TA;
  import ta.transition.Assign;
  import ta.transition.sync.*;
  import ta.transition.guard.*;
  import ta.transition.guard.ClockConstraintAtom.ClockConstraintAtomOperator;
  import ta.transition.guard.VariableConstraintAtom.VariableConstraintAtomOperator;
  import operators.*;
  
  
  import org.antlr.v4.runtime.ParserRuleContext;
  import org.antlr.v4.runtime.misc.NotNull;
  import org.antlr.v4.runtime.tree.ErrorNode;
  import org.antlr.v4.runtime.tree.TerminalNode;
  
  /**
   * This class provides an empty implementation of {@link TAListener},
   * which can be extended to create a listener which only needs to handle a subset
   * of the available methods.
   */
  public class TABaseListener implements TAListener {
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterFunctionDecl(@NotNull TAParser.FunctionDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitFunctionDecl(@NotNull TAParser.FunctionDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterClockconstraint(@NotNull TAParser.ClockconstraintContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitClockconstraint(@NotNull TAParser.ClockconstraintContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterArgList(@NotNull TAParser.ArgListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitArgList(@NotNull TAParser.ArgListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterDeclarationid(@NotNull TAParser.DeclarationidContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitDeclarationid(@NotNull TAParser.DeclarationidContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterPrefix(@NotNull TAParser.PrefixContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitPrefix(@NotNull TAParser.PrefixContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterGuard(@NotNull TAParser.GuardContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitGuard(@NotNull TAParser.GuardContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterSimpleassigment(@NotNull TAParser.SimpleassigmentContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitSimpleassigment(@NotNull TAParser.SimpleassigmentContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterCommit(@NotNull TAParser.CommitContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitCommit(@NotNull TAParser.CommitContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterRange(@NotNull TAParser.RangeContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitRange(@NotNull TAParser.RangeContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterType(@NotNull TAParser.TypeContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitType(@NotNull TAParser.TypeContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterFieldDeclId(@NotNull TAParser.FieldDeclIdContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitFieldDeclId(@NotNull TAParser.FieldDeclIdContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterCaseocc(@NotNull TAParser.CaseoccContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitCaseocc(@NotNull TAParser.CaseoccContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterTransitions(@NotNull TAParser.TransitionsContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitTransitions(@NotNull TAParser.TransitionsContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterStates(@NotNull TAParser.StatesContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitStates(@NotNull TAParser.StatesContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterConstraintAtom(@NotNull TAParser.ConstraintAtomContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitConstraintAtom(@NotNull TAParser.ConstraintAtomContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterParameter(@NotNull TAParser.ParameterContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitParameter(@NotNull TAParser.ParameterContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterStatement(@NotNull TAParser.StatementContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitStatement(@NotNull TAParser.StatementContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterExprStatement(@NotNull TAParser.ExprStatementContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitExprStatement(@NotNull TAParser.ExprStatementContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterBlock(@NotNull TAParser.BlockContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitBlock(@NotNull TAParser.BlockContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterUrgent(@NotNull TAParser.UrgentContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitUrgent(@NotNull TAParser.UrgentContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterTypeIdList(@NotNull TAParser.TypeIdListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitTypeIdList(@NotNull TAParser.TypeIdListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterTransitionBody(@NotNull TAParser.TransitionBodyContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitTransitionBody(@NotNull TAParser.TransitionBodyContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterProcBody(@NotNull TAParser.ProcBodyContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitProcBody(@NotNull TAParser.ProcBodyContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterInstantiation(@NotNull TAParser.InstantiationContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitInstantiation(@NotNull TAParser.InstantiationContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterInit(@NotNull TAParser.InitContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitInit(@NotNull TAParser.InitContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterExpression(@NotNull TAParser.ExpressionContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitExpression(@NotNull TAParser.ExpressionContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterFieldDecl(@NotNull TAParser.FieldDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitFieldDecl(@NotNull TAParser.FieldDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterAssignment(@NotNull TAParser.AssignmentContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitAssignment(@NotNull TAParser.AssignmentContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterProcDecl(@NotNull TAParser.ProcDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitProcDecl(@NotNull TAParser.ProcDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterStateList(@NotNull TAParser.StateListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitStateList(@NotNull TAParser.StateListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterArrayDecl(@NotNull TAParser.ArrayDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitArrayDecl(@NotNull TAParser.ArrayDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterGuardconditionList(@NotNull TAParser.GuardconditionListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitGuardconditionList(@NotNull TAParser.GuardconditionListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterTypeDecl(@NotNull TAParser.TypeDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitTypeDecl(@NotNull TAParser.TypeDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterTa(@NotNull TAParser.TaContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitTa(@NotNull TAParser.TaContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterDeclaration(@NotNull TAParser.DeclarationContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitDeclaration(@NotNull TAParser.DeclarationContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterVariableId(@NotNull TAParser.VariableIdContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitVariableId(@NotNull TAParser.VariableIdContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterSync(@NotNull TAParser.SyncContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitSync(@NotNull TAParser.SyncContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterAssignmentList(@NotNull TAParser.AssignmentListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitAssignmentList(@NotNull TAParser.AssignmentListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterInvariant(@NotNull TAParser.InvariantContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitInvariant(@NotNull TAParser.InvariantContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterSystem(@NotNull TAParser.SystemContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitSystem(@NotNull TAParser.SystemContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterTransitionset(@NotNull TAParser.TransitionsetContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitTransitionset(@NotNull TAParser.TransitionsetContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterExprList(@NotNull TAParser.ExprListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitExprList(@NotNull TAParser.ExprListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterParameterList(@NotNull TAParser.ParameterListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitParameterList(@NotNull TAParser.ParameterListContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterVariableDecl(@NotNull TAParser.VariableDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitVariableDecl(@NotNull TAParser.VariableDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterBoundedVariableDecl(@NotNull TAParser.BoundedVariableDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitBoundedVariableDecl(@NotNull TAParser.BoundedVariableDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterStateDecl(@NotNull TAParser.StateDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitStateDecl(@NotNull TAParser.StateDeclContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterAssign(@NotNull TAParser.AssignContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitAssign(@NotNull TAParser.AssignContext ctx) { }
  
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void enterEveryRule(@NotNull ParserRuleContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void exitEveryRule(@NotNull ParserRuleContext ctx) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void visitTerminal(@NotNull TerminalNode node) { }
  	/**
  	 * {@inheritDoc}
  	 *
  	 * <p>The default implementation does nothing.</p>
  	 */
  	@Override public void visitErrorNode(@NotNull ErrorNode node) { }
  }