/*
 File: rule_lhs_phrasetbl.cpp
 Date and Time: Fri Jan 30 18:55:23 2015 
*/
#include "rule_lhs_phrase.h"
using namespace NS_yacco2_T_enum;// enumerate
using namespace NS_yacco2_err_symbols;// error symbols
using namespace NS_yacco2_k_symbols;// lrk 
using namespace NS_yacco2_terminals;// terminals
using namespace NS_yacco2_characters;// rc 
using namespace yacco2;// yacco2 library
using namespace NS_rule_lhs_phrase;// grammar's ns
// first set terminals
// LR1_invisible_shift_operator
// raw_open_brace
yacco2::UCHAR LA1_Crule_lhs_phrase[] ={
2
,0,32
,16,8
};
// LR1_eolr
yacco2::UCHAR LA2_Crule_lhs_phrase[] ={
1
,0,4
};
// LR1_questionable_shift_operator
// LR1_reduce_operator
yacco2::UCHAR LA3_Crule_lhs_phrase[] ={
1
,0,17
};
// LR1_questionable_shift_operator
// raw_close_brace
yacco2::UCHAR LA4_Crule_lhs_phrase[] ={
2
,0,1
,16,32
};
// LR1_questionable_shift_operator
// LR1_reduce_operator
// raw_close_brace
yacco2::UCHAR LA5_Crule_lhs_phrase[] ={
2
,0,17
,16,32
};
// LR1_reduce_operator
yacco2::UCHAR LA6_Crule_lhs_phrase[] ={
1
,0,16
};
extern yacco2::State S1_Crule_lhs_phrase;
extern yacco2::State S2_Crule_lhs_phrase;
extern yacco2::State S3_Crule_lhs_phrase;
extern yacco2::State S4_Crule_lhs_phrase;
extern yacco2::State S5_Crule_lhs_phrase;
extern yacco2::State S6_Crule_lhs_phrase;
extern yacco2::State S7_Crule_lhs_phrase;
extern yacco2::State S8_Crule_lhs_phrase;
extern yacco2::State S9_Crule_lhs_phrase;
extern yacco2::State S10_Crule_lhs_phrase;
extern yacco2::State S11_Crule_lhs_phrase;
extern yacco2::State S12_Crule_lhs_phrase;
struct S12ttd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Type_pp_fnct_ptr ar_fnct_ptr_;
 yacco2::ULINT (*thd_id_bit_map_ptr__)[];
 yacco2::Thread_entry* thread_entries_[1];
};
S12ttd_Crule_lhs_phrase S12tt_Crule_lhs_phrase = {
  1 // no of threads
 ,0 //AR_rulename or 0
 ,0// ptr to thread id bit map
 ,(yacco2::Thread_entry*)&ITH_lint_balls
};
extern yacco2::State S13_Crule_lhs_phrase;
extern yacco2::State S14_Crule_lhs_phrase;
extern yacco2::State S15_Crule_lhs_phrase;
extern yacco2::State S16_Crule_lhs_phrase;
extern yacco2::State S17_Crule_lhs_phrase;
struct S17ttd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Type_pp_fnct_ptr ar_fnct_ptr_;
 yacco2::ULINT (*thd_id_bit_map_ptr__)[];
 yacco2::Thread_entry* thread_entries_[1];
};
S17ttd_Crule_lhs_phrase S17tt_Crule_lhs_phrase = {
  1 // no of threads
 ,0 //AR_rulename or 0
 ,0// ptr to thread id bit map
 ,(yacco2::Thread_entry*)&ITH_cweb_or_c_k
};
extern yacco2::State S18_Crule_lhs_phrase;
extern yacco2::State S19_Crule_lhs_phrase;
extern yacco2::State S20_Crule_lhs_phrase;
extern yacco2::State S21_Crule_lhs_phrase;
extern yacco2::State S22_Crule_lhs_phrase;
extern yacco2::State S23_Crule_lhs_phrase;
struct S23ttd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Type_pp_fnct_ptr ar_fnct_ptr_;
 yacco2::ULINT (*thd_id_bit_map_ptr__)[];
 yacco2::Thread_entry* thread_entries_[1];
};
S23ttd_Crule_lhs_phrase S23tt_Crule_lhs_phrase = {
  1 // no of threads
 ,0 //AR_rulename or 0
 ,0// ptr to thread id bit map
 ,(yacco2::Thread_entry*)&ITH_o2_sdc
};
extern yacco2::State S24_Crule_lhs_phrase;
extern yacco2::State S25_Crule_lhs_phrase;
extern yacco2::State S26_Crule_lhs_phrase;
extern yacco2::State S27_Crule_lhs_phrase;
extern yacco2::State S28_Crule_lhs_phrase;
struct S28ttd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Type_pp_fnct_ptr ar_fnct_ptr_;
 yacco2::ULINT (*thd_id_bit_map_ptr__)[];
 yacco2::Thread_entry* thread_entries_[2];
};
S28ttd_Crule_lhs_phrase S28tt_Crule_lhs_phrase = {
  2 // no of threads
 ,0 //AR_rulename or 0
 ,0// ptr to thread id bit map
 ,(yacco2::Thread_entry*)&ITH_identifier
 ,(yacco2::Thread_entry*)&ITH_cweb_or_c_k
};
extern yacco2::State S29_Crule_lhs_phrase;
extern yacco2::State S30_Crule_lhs_phrase;
extern yacco2::State S31_Crule_lhs_phrase;
extern yacco2::State S32_Crule_lhs_phrase;
extern yacco2::State S33_Crule_lhs_phrase;
extern yacco2::State S34_Crule_lhs_phrase;
extern yacco2::State S35_Crule_lhs_phrase;
extern yacco2::State S36_Crule_lhs_phrase;
extern yacco2::State S37_Crule_lhs_phrase;
extern yacco2::State S38_Crule_lhs_phrase;
extern yacco2::State S39_Crule_lhs_phrase;
extern yacco2::State S40_Crule_lhs_phrase;
extern yacco2::State S41_Crule_lhs_phrase;
extern yacco2::State S42_Crule_lhs_phrase;
extern yacco2::State S43_Crule_lhs_phrase;
extern yacco2::State S44_Crule_lhs_phrase;
extern yacco2::State S45_Crule_lhs_phrase;
extern yacco2::State S46_Crule_lhs_phrase;
extern yacco2::State S47_Crule_lhs_phrase;
extern yacco2::State S48_Crule_lhs_phrase;
extern yacco2::State S49_Crule_lhs_phrase;
struct S49ttd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Type_pp_fnct_ptr ar_fnct_ptr_;
 yacco2::ULINT (*thd_id_bit_map_ptr__)[];
 yacco2::Thread_entry* thread_entries_[1];
};
S49ttd_Crule_lhs_phrase S49tt_Crule_lhs_phrase = {
  1 // no of threads
 ,0 //AR_rulename or 0
 ,0// ptr to thread id bit map
 ,(yacco2::Thread_entry*)&ITH_identifier
};
extern yacco2::State S50_Crule_lhs_phrase;
extern yacco2::State S51_Crule_lhs_phrase;
extern yacco2::State S52_Crule_lhs_phrase;
extern yacco2::State S53_Crule_lhs_phrase;
extern yacco2::State S54_Crule_lhs_phrase;
extern yacco2::State S55_Crule_lhs_phrase;
extern yacco2::State S56_Crule_lhs_phrase;
struct S56ttd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Type_pp_fnct_ptr ar_fnct_ptr_;
 yacco2::ULINT (*thd_id_bit_map_ptr__)[];
 yacco2::Thread_entry* thread_entries_[1];
};
S56ttd_Crule_lhs_phrase S56tt_Crule_lhs_phrase = {
  1 // no of threads
 ,0 //AR_rulename or 0
 ,0// ptr to thread id bit map
 ,(yacco2::Thread_entry*)&ITH_identifier
};
struct S1std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S1std_Crule_lhs_phrase S1st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {307,(State*)&S2_Crule_lhs_phrase} // shift sym: T_lhs
   ,{569,(State*)&S1_Crule_lhs_phrase} // accept sym: Rrule_lhs_phrase
  }// end of shift table
};
yacco2::State S1_Crule_lhs_phrase = //State's vectored into symbol: " No symbol" 
{1
,0,0,0,0,(Shift_tbl*)&S1st_Crule_lhs_phrase,0,0,0,0};
struct S2std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S2std_Crule_lhs_phrase S2st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S3_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S2pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S2rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S2rtd_Crule_lhs_phrase S2rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA1_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S2_Crule_lhs_phrase = //State's vectored into symbol: "#lhs" 
{2
,(Shift_entry*)&S2pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S2st_Crule_lhs_phrase,(Reduce_tbl*)&S2rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S3std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[3];
};
S3std_Crule_lhs_phrase S3st_Crule_lhs_phrase = {
 3
 ,
  {// start of table
   {5,(State*)&S4_Crule_lhs_phrase} // shift sym: LR1_invisible_shift_operator
   ,{131,(State*)&S5_Crule_lhs_phrase} // shift sym: raw_open_brace
   ,{571,(State*)&S15_Crule_lhs_phrase} // shift sym: Rpotential_directives
  }// end of shift table
};
yacco2::Shift_entry S3ise_Crule_lhs_phrase = {5,(State*)&S4_Crule_lhs_phrase};
yacco2::State S3_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{3
,0,0,(Shift_entry*)&S3ise_Crule_lhs_phrase
,0,(Shift_tbl*)&S3st_Crule_lhs_phrase,0,0,0,0};
struct S4rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S4rtd_Crule_lhs_phrase S4rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rpotential_directives_}
 }// end of reduce table
};
yacco2::State S4_Crule_lhs_phrase = //State's vectored into symbol: "|.|" 
{4
,0,0,0,0,0,(Reduce_tbl*)&S4rt_Crule_lhs_phrase,0,0,0};
struct S5std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S5std_Crule_lhs_phrase S5st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S6_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S5pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S5rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S5rtd_Crule_lhs_phrase S5rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA3_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S5_Crule_lhs_phrase = //State's vectored into symbol: "{" 
{5
,(Shift_entry*)&S5pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S5st_Crule_lhs_phrase,(Reduce_tbl*)&S5rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S6std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[3];
};
S6std_Crule_lhs_phrase S6st_Crule_lhs_phrase = {
 3
 ,
  {// start of table
   {3,(State*)&S17_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{572,(State*)&S7_Crule_lhs_phrase} // shift sym: Rmust_directive_phrase
   ,{583,(State*)&S20_Crule_lhs_phrase} // shift sym: Rdirective_cweb_k
  }// end of shift table
};
yacco2::Shift_entry S6pse_Crule_lhs_phrase = {3,(State*)&S17_Crule_lhs_phrase};
struct S6rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S6rtd_Crule_lhs_phrase S6rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA3_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rdirective_cweb_k_}
 }// end of reduce table
};
yacco2::State S6_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{6
,(Shift_entry*)&S6pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S6st_Crule_lhs_phrase,(Reduce_tbl*)&S6rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S17tt_Crule_lhs_phrase,0,0};
struct S7std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[6];
};
S7std_Crule_lhs_phrase S7st_Crule_lhs_phrase = {
 6
 ,
  {// start of table
   {3,(State*)&S28_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{575,(State*)&S8_Crule_lhs_phrase} // shift sym: Rmaybe_more_directives
   ,{576,(State*)&S37_Crule_lhs_phrase} // shift sym: Rmaybe_directive_phrases
   ,{577,(State*)&S47_Crule_lhs_phrase} // shift sym: Rmaybe_directive_phrase
   ,{579,(State*)&S39_Crule_lhs_phrase} // shift sym: Rdirective
   ,{584,(State*)&S42_Crule_lhs_phrase} // shift sym: Rcweb_k
  }// end of shift table
};
yacco2::Shift_entry S7pse_Crule_lhs_phrase = {3,(State*)&S28_Crule_lhs_phrase};
struct S7rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S7rtd_Crule_lhs_phrase S7rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA4_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rmaybe_more_directives_}
 }// end of reduce table
};
yacco2::State S7_Crule_lhs_phrase = //State's vectored into symbol: "Rmust_directive_phrase" 
{7
,(Shift_entry*)&S7pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S7st_Crule_lhs_phrase,(Reduce_tbl*)&S7rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S28tt_Crule_lhs_phrase,0,0};
struct S8std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[3];
};
S8std_Crule_lhs_phrase S8st_Crule_lhs_phrase = {
 3
 ,
  {// start of table
   {0,(State*)&S9_Crule_lhs_phrase} // shift sym: LR1_questionable_shift_operator
   ,{133,(State*)&S10_Crule_lhs_phrase} // shift sym: raw_close_brace
   ,{574,(State*)&S11_Crule_lhs_phrase} // shift sym: Rclose_brace
  }// end of shift table
};
yacco2::Shift_entry S8qse_Crule_lhs_phrase = {0,(State*)&S9_Crule_lhs_phrase};
yacco2::State S8_Crule_lhs_phrase = //State's vectored into symbol: "Rmaybe_more_directives" 
{8
,0,0,0,0,(Shift_tbl*)&S8st_Crule_lhs_phrase,0,0,0,(Shift_entry*)&S8qse_Crule_lhs_phrase
};
struct S9rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S9rtd_Crule_lhs_phrase S9rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rclose_brace_}
 }// end of reduce table
};
yacco2::State S9_Crule_lhs_phrase = //State's vectored into symbol: "|?|" 
{9
,0,0,0,0,0,(Reduce_tbl*)&S9rt_Crule_lhs_phrase,0,0,0};
struct S10rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S10rtd_Crule_lhs_phrase S10rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rclose_brace_}
 }// end of reduce table
};
yacco2::State S10_Crule_lhs_phrase = //State's vectored into symbol: "}" 
{10
,0,0,0,0,0,(Reduce_tbl*)&S10rt_Crule_lhs_phrase,0,0,0};
struct S11std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S11std_Crule_lhs_phrase S11st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S14_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S11pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S11rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S11rtd_Crule_lhs_phrase S11rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S11_Crule_lhs_phrase = //State's vectored into symbol: "Rclose_brace" 
{11
,(Shift_entry*)&S11pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S11st_Crule_lhs_phrase,(Reduce_tbl*)&S11rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S12std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[1];
};
S12std_Crule_lhs_phrase S12st_Crule_lhs_phrase = {
 1
 ,
  {// start of table
   {375,(State*)&S13_Crule_lhs_phrase} // shift sym: T_lint
  }// end of shift table
};
yacco2::State S12_Crule_lhs_phrase = //State's vectored into symbol: "|||" 
{12
,0,0,0,0,(Shift_tbl*)&S12st_Crule_lhs_phrase,0,0,0,0};
struct S13rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S13rtd_Crule_lhs_phrase S13rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rlint_}
 }// end of reduce table
};
yacco2::State S13_Crule_lhs_phrase = //State's vectored into symbol: "lint" 
{13
,0,0,0,0,0,(Reduce_tbl*)&S13rt_Crule_lhs_phrase,0,0,0};
struct S14rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S14rtd_Crule_lhs_phrase S14rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rpotential_directives_}
 }// end of reduce table
};
yacco2::State S14_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{14
,0,0,0,0,0,(Reduce_tbl*)&S14rt_Crule_lhs_phrase,0,0,0};
struct S15std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S15std_Crule_lhs_phrase S15st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S16_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S15pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S15rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S15rtd_Crule_lhs_phrase S15rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S15_Crule_lhs_phrase = //State's vectored into symbol: "Rpotential_directives" 
{15
,(Shift_entry*)&S15pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S15st_Crule_lhs_phrase,(Reduce_tbl*)&S15rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S16rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S16rtd_Crule_lhs_phrase S16rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA2_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rrule_lhs_phrase_}
 }// end of reduce table
};
yacco2::State S16_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{16
,0,0,0,0,0,(Reduce_tbl*)&S16rt_Crule_lhs_phrase,0,0,0};
struct S17std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S17std_Crule_lhs_phrase S17st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {372,(State*)&S18_Crule_lhs_phrase} // shift sym: T_cweb_comment
   ,{396,(State*)&S19_Crule_lhs_phrase} // shift sym: Err_comment_overrun
  }// end of shift table
};
yacco2::State S17_Crule_lhs_phrase = //State's vectored into symbol: "|||" 
{17
,0,0,0,0,(Shift_tbl*)&S17st_Crule_lhs_phrase,0,0,0,0};
struct S18rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S18rtd_Crule_lhs_phrase S18rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA3_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rdirective_cweb_k_}
 }// end of reduce table
};
yacco2::State S18_Crule_lhs_phrase = //State's vectored into symbol: "cweb-comment" 
{18
,0,0,0,0,0,(Reduce_tbl*)&S18rt_Crule_lhs_phrase,0,0,0};
struct S19rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S19rtd_Crule_lhs_phrase S19rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA3_Crule_lhs_phrase,Crule_lhs_phrase::rhs3_Rdirective_cweb_k_}
 }// end of reduce table
};
yacco2::State S19_Crule_lhs_phrase = //State's vectored into symbol: "comment-overrun" 
{19
,0,0,0,0,0,(Reduce_tbl*)&S19rt_Crule_lhs_phrase,0,0,0};
struct S20std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S20std_Crule_lhs_phrase S20st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S21_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S20pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S20rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S20rtd_Crule_lhs_phrase S20rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA3_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S20_Crule_lhs_phrase = //State's vectored into symbol: "Rdirective_cweb_k" 
{20
,(Shift_entry*)&S20pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S20st_Crule_lhs_phrase,(Reduce_tbl*)&S20rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S21std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[3];
};
S21std_Crule_lhs_phrase S21st_Crule_lhs_phrase = {
 3
 ,
  {// start of table
   {0,(State*)&S48_Crule_lhs_phrase} // shift sym: LR1_questionable_shift_operator
   ,{3,(State*)&S49_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{573,(State*)&S22_Crule_lhs_phrase} // shift sym: Rmust_directive
  }// end of shift table
};
yacco2::Shift_entry S21pse_Crule_lhs_phrase = {3,(State*)&S49_Crule_lhs_phrase};
yacco2::Shift_entry S21qse_Crule_lhs_phrase = {0,(State*)&S48_Crule_lhs_phrase};
yacco2::State S21_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{21
,(Shift_entry*)&S21pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S21st_Crule_lhs_phrase,0,(State_s_thread_tbl*)&S49tt_Crule_lhs_phrase,0,(Shift_entry*)&S21qse_Crule_lhs_phrase
};
struct S22std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S22std_Crule_lhs_phrase S22st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S23_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{580,(State*)&S26_Crule_lhs_phrase} // shift sym: Rsyntax_code
  }// end of shift table
};
yacco2::Shift_entry S22pse_Crule_lhs_phrase = {3,(State*)&S23_Crule_lhs_phrase};
yacco2::State S22_Crule_lhs_phrase = //State's vectored into symbol: "Rmust_directive" 
{22
,(Shift_entry*)&S22pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S22st_Crule_lhs_phrase,0,(State_s_thread_tbl*)&S23tt_Crule_lhs_phrase,0,0};
struct S23std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S23std_Crule_lhs_phrase S23st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {0,(State*)&S24_Crule_lhs_phrase} // shift sym: LR1_questionable_shift_operator
   ,{326,(State*)&S25_Crule_lhs_phrase} // shift sym: T_syntax_code
  }// end of shift table
};
yacco2::Shift_entry S23qse_Crule_lhs_phrase = {0,(State*)&S24_Crule_lhs_phrase};
yacco2::State S23_Crule_lhs_phrase = //State's vectored into symbol: "|||" 
{23
,0,0,0,0,(Shift_tbl*)&S23st_Crule_lhs_phrase,0,0,0,(Shift_entry*)&S23qse_Crule_lhs_phrase
};
struct S24rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S24rtd_Crule_lhs_phrase S24rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rsyntax_code_}
 }// end of reduce table
};
yacco2::State S24_Crule_lhs_phrase = //State's vectored into symbol: "|?|" 
{24
,0,0,0,0,0,(Reduce_tbl*)&S24rt_Crule_lhs_phrase,0,0,0};
struct S25rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S25rtd_Crule_lhs_phrase S25rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rsyntax_code_}
 }// end of reduce table
};
yacco2::State S25_Crule_lhs_phrase = //State's vectored into symbol: "syntax-code" 
{25
,0,0,0,0,0,(Reduce_tbl*)&S25rt_Crule_lhs_phrase,0,0,0};
struct S26std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S26std_Crule_lhs_phrase S26st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S27_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S26pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S26rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S26rtd_Crule_lhs_phrase S26rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S26_Crule_lhs_phrase = //State's vectored into symbol: "Rsyntax_code" 
{26
,(Shift_entry*)&S26pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S26st_Crule_lhs_phrase,(Reduce_tbl*)&S26rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S27rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S27rtd_Crule_lhs_phrase S27rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rmust_directive_phrase_}
 }// end of reduce table
};
yacco2::State S27_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{27
,0,0,0,0,0,(Reduce_tbl*)&S27rt_Crule_lhs_phrase,0,0,0};
struct S28std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[8];
};
S28std_Crule_lhs_phrase S28st_Crule_lhs_phrase = {
 8
 ,
  {// start of table
   {0,(State*)&S29_Crule_lhs_phrase} // shift sym: LR1_questionable_shift_operator
   ,{308,(State*)&S30_Crule_lhs_phrase} // shift sym: T_user_declaration
   ,{311,(State*)&S31_Crule_lhs_phrase} // shift sym: T_constructor
   ,{312,(State*)&S32_Crule_lhs_phrase} // shift sym: T_destructor
   ,{313,(State*)&S33_Crule_lhs_phrase} // shift sym: T_op
   ,{315,(State*)&S34_Crule_lhs_phrase} // shift sym: T_user_implementation
   ,{372,(State*)&S35_Crule_lhs_phrase} // shift sym: T_cweb_comment
   ,{396,(State*)&S36_Crule_lhs_phrase} // shift sym: Err_comment_overrun
  }// end of shift table
};
yacco2::Shift_entry S28qse_Crule_lhs_phrase = {0,(State*)&S29_Crule_lhs_phrase};
yacco2::State S28_Crule_lhs_phrase = //State's vectored into symbol: "|||" 
{28
,0,0,0,0,(Shift_tbl*)&S28st_Crule_lhs_phrase,0,0,0,(Shift_entry*)&S28qse_Crule_lhs_phrase
};
struct S29rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S29rtd_Crule_lhs_phrase S29rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs6_Rdirective_}
 }// end of reduce table
};
yacco2::State S29_Crule_lhs_phrase = //State's vectored into symbol: "|?|" 
{29
,0,0,0,0,0,(Reduce_tbl*)&S29rt_Crule_lhs_phrase,0,0,0};
struct S30rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S30rtd_Crule_lhs_phrase S30rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rdirective_}
 }// end of reduce table
};
yacco2::State S30_Crule_lhs_phrase = //State's vectored into symbol: "#user-declaration" 
{30
,0,0,0,0,0,(Reduce_tbl*)&S30rt_Crule_lhs_phrase,0,0,0};
struct S31rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S31rtd_Crule_lhs_phrase S31rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs3_Rdirective_}
 }// end of reduce table
};
yacco2::State S31_Crule_lhs_phrase = //State's vectored into symbol: "#constructor" 
{31
,0,0,0,0,0,(Reduce_tbl*)&S31rt_Crule_lhs_phrase,0,0,0};
struct S32rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S32rtd_Crule_lhs_phrase S32rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs4_Rdirective_}
 }// end of reduce table
};
yacco2::State S32_Crule_lhs_phrase = //State's vectored into symbol: "#destructor" 
{32
,0,0,0,0,0,(Reduce_tbl*)&S32rt_Crule_lhs_phrase,0,0,0};
struct S33rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S33rtd_Crule_lhs_phrase S33rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs5_Rdirective_}
 }// end of reduce table
};
yacco2::State S33_Crule_lhs_phrase = //State's vectored into symbol: "#op" 
{33
,0,0,0,0,0,(Reduce_tbl*)&S33rt_Crule_lhs_phrase,0,0,0};
struct S34rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S34rtd_Crule_lhs_phrase S34rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rdirective_}
 }// end of reduce table
};
yacco2::State S34_Crule_lhs_phrase = //State's vectored into symbol: "#user-implementation" 
{34
,0,0,0,0,0,(Reduce_tbl*)&S34rt_Crule_lhs_phrase,0,0,0};
struct S35rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S35rtd_Crule_lhs_phrase S35rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rcweb_k_}
 }// end of reduce table
};
yacco2::State S35_Crule_lhs_phrase = //State's vectored into symbol: "cweb-comment" 
{35
,0,0,0,0,0,(Reduce_tbl*)&S35rt_Crule_lhs_phrase,0,0,0};
struct S36rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S36rtd_Crule_lhs_phrase S36rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rcweb_k_}
 }// end of reduce table
};
yacco2::State S36_Crule_lhs_phrase = //State's vectored into symbol: "comment-overrun" 
{36
,0,0,0,0,0,(Reduce_tbl*)&S36rt_Crule_lhs_phrase,0,0,0};
struct S37std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[4];
};
S37std_Crule_lhs_phrase S37st_Crule_lhs_phrase = {
 4
 ,
  {// start of table
   {3,(State*)&S28_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{577,(State*)&S38_Crule_lhs_phrase} // shift sym: Rmaybe_directive_phrase
   ,{579,(State*)&S39_Crule_lhs_phrase} // shift sym: Rdirective
   ,{584,(State*)&S42_Crule_lhs_phrase} // shift sym: Rcweb_k
  }// end of shift table
};
yacco2::Shift_entry S37pse_Crule_lhs_phrase = {3,(State*)&S28_Crule_lhs_phrase};
struct S37rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S37rtd_Crule_lhs_phrase S37rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA4_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rmaybe_more_directives_}
 }// end of reduce table
};
yacco2::State S37_Crule_lhs_phrase = //State's vectored into symbol: "Rmaybe_directive_phrases" 
{37
,(Shift_entry*)&S37pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S37st_Crule_lhs_phrase,(Reduce_tbl*)&S37rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S28tt_Crule_lhs_phrase,0,0};
struct S38rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S38rtd_Crule_lhs_phrase S38rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rmaybe_directive_phrases_}
 }// end of reduce table
};
yacco2::State S38_Crule_lhs_phrase = //State's vectored into symbol: "Rmaybe_directive_phrase" 
{38
,0,0,0,0,0,(Reduce_tbl*)&S38rt_Crule_lhs_phrase,0,0,0};
struct S39std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S39std_Crule_lhs_phrase S39st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S23_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{580,(State*)&S40_Crule_lhs_phrase} // shift sym: Rsyntax_code
  }// end of shift table
};
yacco2::Shift_entry S39pse_Crule_lhs_phrase = {3,(State*)&S23_Crule_lhs_phrase};
yacco2::State S39_Crule_lhs_phrase = //State's vectored into symbol: "Rdirective" 
{39
,(Shift_entry*)&S39pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S39st_Crule_lhs_phrase,0,(State_s_thread_tbl*)&S23tt_Crule_lhs_phrase,0,0};
struct S40std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S40std_Crule_lhs_phrase S40st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S41_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S40pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S40rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S40rtd_Crule_lhs_phrase S40rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S40_Crule_lhs_phrase = //State's vectored into symbol: "Rsyntax_code" 
{40
,(Shift_entry*)&S40pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S40st_Crule_lhs_phrase,(Reduce_tbl*)&S40rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S41rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S41rtd_Crule_lhs_phrase S41rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rmaybe_directive_phrase_}
 }// end of reduce table
};
yacco2::State S41_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{41
,0,0,0,0,0,(Reduce_tbl*)&S41rt_Crule_lhs_phrase,0,0,0};
struct S42std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S42std_Crule_lhs_phrase S42st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S43_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S42pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S42rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S42rtd_Crule_lhs_phrase S42rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S42_Crule_lhs_phrase = //State's vectored into symbol: "Rcweb_k" 
{42
,(Shift_entry*)&S42pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S42st_Crule_lhs_phrase,(Reduce_tbl*)&S42rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S43std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S43std_Crule_lhs_phrase S43st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S56_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{579,(State*)&S44_Crule_lhs_phrase} // shift sym: Rdirective
  }// end of shift table
};
yacco2::Shift_entry S43pse_Crule_lhs_phrase = {3,(State*)&S56_Crule_lhs_phrase};
yacco2::State S43_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{43
,(Shift_entry*)&S43pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S43st_Crule_lhs_phrase,0,(State_s_thread_tbl*)&S56tt_Crule_lhs_phrase,0,0};
struct S44std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S44std_Crule_lhs_phrase S44st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S23_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{580,(State*)&S45_Crule_lhs_phrase} // shift sym: Rsyntax_code
  }// end of shift table
};
yacco2::Shift_entry S44pse_Crule_lhs_phrase = {3,(State*)&S23_Crule_lhs_phrase};
yacco2::State S44_Crule_lhs_phrase = //State's vectored into symbol: "Rdirective" 
{44
,(Shift_entry*)&S44pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S44st_Crule_lhs_phrase,0,(State_s_thread_tbl*)&S23tt_Crule_lhs_phrase,0,0};
struct S45std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[2];
};
S45std_Crule_lhs_phrase S45st_Crule_lhs_phrase = {
 2
 ,
  {// start of table
   {3,(State*)&S12_Crule_lhs_phrase} // shift sym: LR1_parallel_operator
   ,{581,(State*)&S46_Crule_lhs_phrase} // shift sym: Rlint
  }// end of shift table
};
yacco2::Shift_entry S45pse_Crule_lhs_phrase = {3,(State*)&S12_Crule_lhs_phrase};
struct S45rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S45rtd_Crule_lhs_phrase S45rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rlint_}
 }// end of reduce table
};
yacco2::State S45_Crule_lhs_phrase = //State's vectored into symbol: "Rsyntax_code" 
{45
,(Shift_entry*)&S45pse_Crule_lhs_phrase,0,0,0,(Shift_tbl*)&S45st_Crule_lhs_phrase,(Reduce_tbl*)&S45rt_Crule_lhs_phrase,(State_s_thread_tbl*)&S12tt_Crule_lhs_phrase,0,0};
struct S46rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S46rtd_Crule_lhs_phrase S46rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rmaybe_directive_phrase_}
 }// end of reduce table
};
yacco2::State S46_Crule_lhs_phrase = //State's vectored into symbol: "Rlint" 
{46
,0,0,0,0,0,(Reduce_tbl*)&S46rt_Crule_lhs_phrase,0,0,0};
struct S47rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S47rtd_Crule_lhs_phrase S47rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA5_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rmaybe_directive_phrases_}
 }// end of reduce table
};
yacco2::State S47_Crule_lhs_phrase = //State's vectored into symbol: "Rmaybe_directive_phrase" 
{47
,0,0,0,0,0,(Reduce_tbl*)&S47rt_Crule_lhs_phrase,0,0,0};
struct S48rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S48rtd_Crule_lhs_phrase S48rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs7_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S48_Crule_lhs_phrase = //State's vectored into symbol: "|?|" 
{48
,0,0,0,0,0,(Reduce_tbl*)&S48rt_Crule_lhs_phrase,0,0,0};
struct S49std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[6];
};
S49std_Crule_lhs_phrase S49st_Crule_lhs_phrase = {
 6
 ,
  {// start of table
   {0,(State*)&S50_Crule_lhs_phrase} // shift sym: LR1_questionable_shift_operator
   ,{308,(State*)&S51_Crule_lhs_phrase} // shift sym: T_user_declaration
   ,{311,(State*)&S52_Crule_lhs_phrase} // shift sym: T_constructor
   ,{312,(State*)&S53_Crule_lhs_phrase} // shift sym: T_destructor
   ,{313,(State*)&S54_Crule_lhs_phrase} // shift sym: T_op
   ,{315,(State*)&S55_Crule_lhs_phrase} // shift sym: T_user_implementation
  }// end of shift table
};
yacco2::Shift_entry S49qse_Crule_lhs_phrase = {0,(State*)&S50_Crule_lhs_phrase};
yacco2::State S49_Crule_lhs_phrase = //State's vectored into symbol: "|||" 
{49
,0,0,0,0,(Shift_tbl*)&S49st_Crule_lhs_phrase,0,0,0,(Shift_entry*)&S49qse_Crule_lhs_phrase
};
struct S50rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S50rtd_Crule_lhs_phrase S50rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs6_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S50_Crule_lhs_phrase = //State's vectored into symbol: "|?|" 
{50
,0,0,0,0,0,(Reduce_tbl*)&S50rt_Crule_lhs_phrase,0,0,0};
struct S51rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S51rtd_Crule_lhs_phrase S51rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs1_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S51_Crule_lhs_phrase = //State's vectored into symbol: "#user-declaration" 
{51
,0,0,0,0,0,(Reduce_tbl*)&S51rt_Crule_lhs_phrase,0,0,0};
struct S52rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S52rtd_Crule_lhs_phrase S52rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs3_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S52_Crule_lhs_phrase = //State's vectored into symbol: "#constructor" 
{52
,0,0,0,0,0,(Reduce_tbl*)&S52rt_Crule_lhs_phrase,0,0,0};
struct S53rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S53rtd_Crule_lhs_phrase S53rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs4_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S53_Crule_lhs_phrase = //State's vectored into symbol: "#destructor" 
{53
,0,0,0,0,0,(Reduce_tbl*)&S53rt_Crule_lhs_phrase,0,0,0};
struct S54rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S54rtd_Crule_lhs_phrase S54rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs5_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S54_Crule_lhs_phrase = //State's vectored into symbol: "#op" 
{54
,0,0,0,0,0,(Reduce_tbl*)&S54rt_Crule_lhs_phrase,0,0,0};
struct S55rtd_Crule_lhs_phrase{
 yacco2::USINT no_entries_;
 yacco2::Reduce_entry reduce_entries_[1];
};
S55rtd_Crule_lhs_phrase S55rt_Crule_lhs_phrase = {
 1
 ,
 {// start of table
  {(Set_tbl*)&LA6_Crule_lhs_phrase,Crule_lhs_phrase::rhs2_Rmust_directive_}
 }// end of reduce table
};
yacco2::State S55_Crule_lhs_phrase = //State's vectored into symbol: "#user-implementation" 
{55
,0,0,0,0,0,(Reduce_tbl*)&S55rt_Crule_lhs_phrase,0,0,0};
struct S56std_Crule_lhs_phrase{
  yacco2::USINT no_entries_;
  yacco2::Shift_entry shift_entries_[6];
};
S56std_Crule_lhs_phrase S56st_Crule_lhs_phrase = {
 6
 ,
  {// start of table
   {0,(State*)&S29_Crule_lhs_phrase} // shift sym: LR1_questionable_shift_operator
   ,{308,(State*)&S30_Crule_lhs_phrase} // shift sym: T_user_declaration
   ,{311,(State*)&S31_Crule_lhs_phrase} // shift sym: T_constructor
   ,{312,(State*)&S32_Crule_lhs_phrase} // shift sym: T_destructor
   ,{313,(State*)&S33_Crule_lhs_phrase} // shift sym: T_op
   ,{315,(State*)&S34_Crule_lhs_phrase} // shift sym: T_user_implementation
  }// end of shift table
};
yacco2::Shift_entry S56qse_Crule_lhs_phrase = {0,(State*)&S29_Crule_lhs_phrase};
yacco2::State S56_Crule_lhs_phrase = //State's vectored into symbol: "|||" 
{56
,0,0,0,0,(Shift_tbl*)&S56st_Crule_lhs_phrase,0,0,0,(Shift_entry*)&S56qse_Crule_lhs_phrase
};
