Parse Table:
Set 1:
  OPENTOKEN_ACCEPT_ID <= ^ CASE_EXPRESSION_ID EOF_ID

   WHEN_ID              => shift and goto state 2
   default              => ERROR

   CASE_EXPRESSION_ID   goto state 3

Set 2:
  CASE_EXPRESSION_ID <= WHEN_ID ^ DISCRETE_CHOICE_ID EQUAL_GREATER_ID, EOF_ID

   IDENTIFIER_ID        => shift and goto state 5
   default              => ERROR

   CHOICE_EXPRESSION_ID goto state 6
   CHOICE_RELATION_ID   goto state 7
   DISCRETE_CHOICE_ID   goto state 8
   FACTOR_ID            goto state 9
   FACTOR_LIST_ID       goto state 10
   RANGE_NT_ID          goto state 11

Set 3:
  OPENTOKEN_ACCEPT_ID <= CASE_EXPRESSION_ID ^ EOF_ID

   EOF_ID               => shift and goto state 4
   default              => ERROR


Set 4:
  OPENTOKEN_ACCEPT_ID <= CASE_EXPRESSION_ID EOF_ID ^, EOF_ID/IDENTIFIER_ID/TICK_ID/EQUAL_GREATER_ID/DOT_DOT_ID/WHEN_ID/RANGE_ID

   EOF_ID               => accept it
   IDENTIFIER_ID        => accept it
   TICK_ID              => accept it
   EQUAL_GREATER_ID     => accept it
   DOT_DOT_ID           => accept it
   WHEN_ID              => accept it
   RANGE_ID             => accept it
   default              => ERROR


Set 5:
  RANGE_NT_ID <= IDENTIFIER_ID ^ TICK_ID RANGE_ID, EQUAL_GREATER_ID
  FACTOR_ID <= IDENTIFIER_ID ^, DOT_DOT_ID/EQUAL_GREATER_ID

   TICK_ID              => shift and goto state 14
   DOT_DOT_ID           => reduce 1 tokens to FACTOR_ID
   EQUAL_GREATER_ID     => reduce 1 tokens to FACTOR_ID
   default              => ERROR


Set 6:
  DISCRETE_CHOICE_ID <= CHOICE_EXPRESSION_ID ^, EQUAL_GREATER_ID

   EQUAL_GREATER_ID     => reduce 1 tokens to DISCRETE_CHOICE_ID
   default              => ERROR


Set 7:
  CHOICE_EXPRESSION_ID <= CHOICE_RELATION_ID ^, EQUAL_GREATER_ID

   EQUAL_GREATER_ID     => reduce 1 tokens to CHOICE_EXPRESSION_ID
   default              => ERROR


Set 8:
  CASE_EXPRESSION_ID <= WHEN_ID DISCRETE_CHOICE_ID ^ EQUAL_GREATER_ID, EOF_ID

   EQUAL_GREATER_ID     => shift and goto state 13
   default              => ERROR


Set 9:
  FACTOR_LIST_ID <= FACTOR_ID ^, DOT_DOT_ID/EQUAL_GREATER_ID

   DOT_DOT_ID           => reduce 1 tokens to FACTOR_LIST_ID
   EQUAL_GREATER_ID     => reduce 1 tokens to FACTOR_LIST_ID
   default              => ERROR


Set 10:
  RANGE_NT_ID <= FACTOR_LIST_ID ^ DOT_DOT_ID FACTOR_LIST_ID, EQUAL_GREATER_ID
  CHOICE_RELATION_ID <= FACTOR_LIST_ID ^, EQUAL_GREATER_ID

   DOT_DOT_ID           => shift and goto state 12
   EQUAL_GREATER_ID     => reduce 1 tokens to CHOICE_RELATION_ID
   default              => ERROR


Set 11:
  DISCRETE_CHOICE_ID <= RANGE_NT_ID ^, EQUAL_GREATER_ID

   EQUAL_GREATER_ID     => reduce 1 tokens to DISCRETE_CHOICE_ID
   default              => ERROR


Set 12:
  RANGE_NT_ID <= FACTOR_LIST_ID DOT_DOT_ID ^ FACTOR_LIST_ID, EQUAL_GREATER_ID

   IDENTIFIER_ID        => shift and goto state 16
   default              => ERROR

   FACTOR_ID            goto state 9
   FACTOR_LIST_ID       goto state 17

Set 13:
  CASE_EXPRESSION_ID <= WHEN_ID DISCRETE_CHOICE_ID EQUAL_GREATER_ID ^, EOF_ID

   EOF_ID               => reduce 3 tokens to CASE_EXPRESSION_ID
   default              => ERROR


Set 14:
  RANGE_NT_ID <= IDENTIFIER_ID TICK_ID ^ RANGE_ID, EQUAL_GREATER_ID

   RANGE_ID             => shift and goto state 15
   default              => ERROR


Set 15:
  RANGE_NT_ID <= IDENTIFIER_ID TICK_ID RANGE_ID ^, EQUAL_GREATER_ID

   EQUAL_GREATER_ID     => reduce 3 tokens to RANGE_NT_ID
   default              => ERROR


Set 16:
  FACTOR_ID <= IDENTIFIER_ID ^, EQUAL_GREATER_ID

   EQUAL_GREATER_ID     => reduce 1 tokens to FACTOR_ID
   default              => ERROR


Set 17:
  RANGE_NT_ID <= FACTOR_LIST_ID DOT_DOT_ID FACTOR_LIST_ID ^, EQUAL_GREATER_ID

   EQUAL_GREATER_ID     => reduce 3 tokens to RANGE_NT_ID
   default              => ERROR


 1 : 
WHEN_ID : SHIFT
 2 : WHEN_ID
 1 : 
IDENTIFIER_ID : SHIFT
 5 : IDENTIFIER_ID
 2 : WHEN_ID
 1 : 
EQUAL_GREATER_ID : REDUCE to FACTOR_ID, goto state 9
 9 : FACTOR_ID
 2 : WHEN_ID
 1 : 
EQUAL_GREATER_ID : REDUCE to FACTOR_LIST_ID, goto state 10
 10 : FACTOR_LIST_ID
 2 : WHEN_ID
 1 : 
EQUAL_GREATER_ID : REDUCE to CHOICE_RELATION_ID, goto state 7
 7 : CHOICE_RELATION_ID
 2 : WHEN_ID
 1 : 
EQUAL_GREATER_ID : REDUCE to CHOICE_EXPRESSION_ID, goto state 6
 6 : CHOICE_EXPRESSION_ID
 2 : WHEN_ID
 1 : 
EQUAL_GREATER_ID : REDUCE to DISCRETE_CHOICE_ID, goto state 8
 8 : DISCRETE_CHOICE_ID
 2 : WHEN_ID
 1 : 
EQUAL_GREATER_ID : SHIFT
 13 : EQUAL_GREATER_ID
 8 : DISCRETE_CHOICE_ID
 2 : WHEN_ID
 1 : 
EOF_ID : REDUCE to CASE_EXPRESSION_ID, goto state 3
 3 : CASE_EXPRESSION_ID
 1 : 
EOF_ID : SHIFT
 4 : EOF_ID
 3 : CASE_EXPRESSION_ID
 1 : 
EOF_ID : ACCEPT_IT
