~ashn/cyclone

2fcd7e60cfd5702126a16de18c8324fd370ff71c — yitzhak 12 years ago c1f88b3
Fixed a bug in doc generation; changed the maximum parser stack.


git-svn-id: https://source.seas.harvard.edu/svn/cyclone/trunk/cyclone@6419 581db07f-6e62-4d40-9733-d432c4eebb07
M bin/genfiles/cf_flowinfo.c => bin/genfiles/cf_flowinfo.c +8 -8
@@ 742,19 742,19 @@ i=i + 1;goto _TLAC;_TLAB:;}
return;}default:
 return;};}
# 425
static void*Cyc_CfFlowInfo_insert_place_inner(void*new_val,void*old_val){void*_T0;int*_T1;unsigned _T2;void*_T3;struct Cyc_CfFlowInfo_UnionRInfo _T4;struct _fat_ptr _T5;struct _fat_ptr _T6;void**_T7;unsigned _T8;unsigned _T9;void*_TA;struct _fat_ptr _TB;unsigned _TC;int _TD;unsigned char*_TE;void**_TF;void*_T10;struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*_T11;void*_T12;void*_T13;void*_T14;struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*_T15;void*_T16;void*_T17;void*_T18;struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*_T19;void*_T1A;void*_T1B;struct Cyc_Absyn_Vardecl*_T1C;int _T1D;void*_T1E;void*_T1F;struct _fat_ptr _T20;int _T21;_T0=old_val;_T1=(int*)_T0;_T2=*_T1;switch(_T2){case 6: _T3=old_val;{struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*_T22=(struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*)_T3;_T4=_T22->f1;_T21=_T4.is_union;_T20=_T22->f2;}{int is_union=_T21;struct _fat_ptr d=_T20;_T6=d;{unsigned _T22=
static void*Cyc_CfFlowInfo_insert_place_inner(void*new_val,void*old_val){void*_T0;int*_T1;unsigned _T2;void*_T3;struct Cyc_CfFlowInfo_UnionRInfo _T4;struct _fat_ptr _T5;struct _fat_ptr _T6;void**_T7;unsigned _T8;unsigned _T9;void*_TA;struct _fat_ptr _TB;unsigned char*_TC;void**_TD;void**_TE;unsigned _TF;int _T10;void*_T11;struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*_T12;void*_T13;void*_T14;void*_T15;struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*_T16;void*_T17;void*_T18;void*_T19;struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*_T1A;void*_T1B;void*_T1C;struct Cyc_Absyn_Vardecl*_T1D;int _T1E;void*_T1F;void*_T20;struct _fat_ptr _T21;int _T22;_T0=old_val;_T1=(int*)_T0;_T2=*_T1;switch(_T2){case 6: _T3=old_val;{struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*_T23=(struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*)_T3;_T4=_T23->f1;_T22=_T4.is_union;_T21=_T23->f2;}{int is_union=_T22;struct _fat_ptr d=_T21;_T6=d;{unsigned _T23=
# 428
_get_fat_size(_T6,sizeof(void*));_T8=_check_times(_T22,sizeof(void*));{void**_T23=_cycalloc(_T8);{unsigned _T24=_T22;unsigned i;i=0;_TLB1: if(i < _T24)goto _TLAF;else{goto _TLB0;}_TLAF: _T9=i;_TA=new_val;_TB=d;_TC=i;_TD=(int)_TC;_TE=_check_fat_subscript(_TB,sizeof(void*),_TD);_TF=(void**)_TE;_T10=*_TF;
_T23[_T9]=Cyc_CfFlowInfo_insert_place_inner(_TA,_T10);i=i + 1;goto _TLB1;_TLB0:;}_T7=(void**)_T23;}_T5=
_get_fat_size(_T6,sizeof(void*));_T8=_check_times(_T23,sizeof(void*));{void**_T24=_cycalloc(_T8);{unsigned _T25=_T23;unsigned i;i=0;_TLB1: if(i < _T25)goto _TLAF;else{goto _TLB0;}_TLAF: _T9=i;_TA=new_val;_TB=d;_TC=_TB.curr;_TD=(void**)_TC;_TE=
_check_null(_TD);_TF=i;_T10=(int)_TF;_T11=_TE[_T10];_T24[_T9]=Cyc_CfFlowInfo_insert_place_inner(_TA,_T11);i=i + 1;goto _TLB1;_TLB0:;}_T7=(void**)_T24;}_T5=
# 428
_tag_fat(_T7,sizeof(void*),_T22);}{struct _fat_ptr d2=_T5;{struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*_T22=_cycalloc(sizeof(struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct));_T22->tag=6;
_tag_fat(_T7,sizeof(void*),_T23);}{struct _fat_ptr d2=_T5;{struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*_T23=_cycalloc(sizeof(struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct));_T23->tag=6;
# 432
_T22->f1.is_union=is_union;_T22->f1.fieldnum=- 1;_T22->f2=d2;_T11=(struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*)_T22;}_T12=(void*)_T11;return _T12;}}case 7: _T13=old_val;{struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*_T22=(struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*)_T13;_T1F=_T22->f1;_T21=_T22->f2;_T14=_T22->f3;_T1E=(void*)_T14;_T1D=_T22->f4;}{struct Cyc_Absyn_Exp*e=_T1F;int i=_T21;void*rval=_T1E;int l=_T1D;{struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*_T22=_cycalloc(sizeof(struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct));_T22->tag=7;
_T23->f1.is_union=is_union;_T23->f1.fieldnum=- 1;_T23->f2=d2;_T12=(struct Cyc_CfFlowInfo_Aggregate_CfFlowInfo_AbsRVal_struct*)_T23;}_T13=(void*)_T12;return _T13;}}case 7: _T14=old_val;{struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*_T23=(struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*)_T14;_T20=_T23->f1;_T22=_T23->f2;_T15=_T23->f3;_T1F=(void*)_T15;_T1E=_T23->f4;}{struct Cyc_Absyn_Exp*e=_T20;int i=_T22;void*rval=_T1F;int l=_T1E;{struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*_T23=_cycalloc(sizeof(struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct));_T23->tag=7;
# 434
_T22->f1=e;_T22->f2=i;_T22->f3=Cyc_CfFlowInfo_insert_place_inner(new_val,rval);_T22->f4=l;_T15=(struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*)_T22;}_T16=(void*)_T15;return _T16;}case 8: _T17=old_val;{struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*_T22=(struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*)_T17;_T1C=_T22->f1;_T18=_T22->f2;_T1F=(void*)_T18;}{struct Cyc_Absyn_Vardecl*n=_T1C;void*rval=_T1F;{struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*_T22=_cycalloc(sizeof(struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct));_T22->tag=8;
_T23->f1=e;_T23->f2=i;_T23->f3=Cyc_CfFlowInfo_insert_place_inner(new_val,rval);_T23->f4=l;_T16=(struct Cyc_CfFlowInfo_Consumed_CfFlowInfo_AbsRVal_struct*)_T23;}_T17=(void*)_T16;return _T17;}case 8: _T18=old_val;{struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*_T23=(struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*)_T18;_T1D=_T23->f1;_T19=_T23->f2;_T20=(void*)_T19;}{struct Cyc_Absyn_Vardecl*n=_T1D;void*rval=_T20;{struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*_T23=_cycalloc(sizeof(struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct));_T23->tag=8;
# 436
_T22->f1=n;_T22->f2=Cyc_CfFlowInfo_insert_place_inner(new_val,rval);_T19=(struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*)_T22;}_T1A=(void*)_T19;return _T1A;}default: _T1B=new_val;
return _T1B;};}
_T23->f1=n;_T23->f2=Cyc_CfFlowInfo_insert_place_inner(new_val,rval);_T1A=(struct Cyc_CfFlowInfo_NamedLocation_CfFlowInfo_AbsRVal_struct*)_T23;}_T1B=(void*)_T1A;return _T1B;}default: _T1C=new_val;
return _T1C;};}
# 443
static struct _fat_ptr Cyc_CfFlowInfo_aggr_dict_insert(struct _fat_ptr d,int n,void*rval){struct _fat_ptr _T0;int _T1;unsigned char*_T2;void**_T3;struct _fat_ptr _T4;struct _fat_ptr _T5;struct _fat_ptr _T6;void**_T7;unsigned _T8;unsigned _T9;struct _fat_ptr _TA;unsigned char*_TB;void**_TC;unsigned _TD;int _TE;struct _fat_ptr _TF;unsigned char*_T10;void**_T11;int _T12;struct _fat_ptr _T13;_T0=d;_T1=n;_T2=_check_fat_subscript(_T0,sizeof(void*),_T1);_T3=(void**)_T2;{
void*old_rval=*_T3;

M bin/genfiles/parse_tab.c => bin/genfiles/parse_tab.c +1204 -1204
@@ 676,7 676,7 @@ void*Cyc_BansheeIf_add_location(struct _fat_ptr,void*);extern char Cyc_Parse_Exi
enum Cyc_Parse_Storage_class{Cyc_Parse_Typedef_sc =0U,Cyc_Parse_Extern_sc =1U,Cyc_Parse_ExternC_sc =2U,Cyc_Parse_Static_sc =3U,Cyc_Parse_Auto_sc =4U,Cyc_Parse_Register_sc =5U,Cyc_Parse_Abstract_sc =6U,Cyc_Parse_None_sc =7U};
# 62
enum Cyc_Parse_ConstraintOps{Cyc_Parse_C_AND_OP =0U,Cyc_Parse_C_OR_OP =1U,Cyc_Parse_C_NOT_OP =2U,Cyc_Parse_C_EQ_OP =3U,Cyc_Parse_C_INCL_OP =4U};struct Cyc_Parse_Declaration_spec{enum Cyc_Parse_Storage_class sc;struct Cyc_Absyn_Tqual tq;struct Cyc_Parse_Type_specifier type_specs;int is_inline;struct Cyc_List_List*attributes;};struct Cyc_Parse_Abstractdeclarator{struct Cyc_List_List*tms;};
# 79 "parse.y"
# 80 "parse.y"
void Cyc_Lex_register_typedef(struct _tuple0*);
void Cyc_Lex_enter_namespace(struct _fat_ptr*);
void Cyc_Lex_leave_namespace (void);


@@ 686,9 686,9 @@ void Cyc_Lex_enter_extern_c (void);
void Cyc_Lex_leave_extern_c (void);
extern struct _tuple0*Cyc_Lex_token_qvar;
extern struct _fat_ptr Cyc_Lex_token_string;
# 103 "parse.y"
# 104 "parse.y"
int Cyc_Parse_parsing_tempest=0;
# 109
# 110
struct Cyc_Parse_FlatList*Cyc_Parse_flat_imp_rev(struct Cyc_Parse_FlatList*x){struct Cyc_Parse_FlatList*_T0;struct Cyc_Parse_FlatList*_T1;struct Cyc_Parse_FlatList*_T2;struct Cyc_Parse_FlatList*_T3;struct Cyc_Parse_FlatList*_T4;struct Cyc_Parse_FlatList*_T5;
if(x!=0)goto _TL0;_T0=x;return _T0;_TL0: {
struct Cyc_Parse_FlatList*first=x;_T1=x;{


@@ 699,12 699,12 @@ _TL3: _T3=second;{struct Cyc_Parse_FlatList*temp=_T3->tl;_T4=second;
_T4->tl=first;
first=second;
second=temp;}goto _TL2;_TL4: _T5=first;
# 120
# 121
return _T5;}}}char Cyc_Parse_Exit[5U]="Exit";struct Cyc_Parse_Numelts_ptrqual_Parse_Pointer_qual_struct{int tag;struct Cyc_Absyn_Exp*f1;};struct Cyc_Parse_Region_ptrqual_Parse_Pointer_qual_struct{int tag;void*f1;};struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct{int tag;struct Cyc_List_List*f1;};struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct{int tag;};struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct{int tag;void*f1;};
# 176
# 177
static void*Cyc_Parse_collapse_type_specifiers(struct Cyc_Parse_Type_specifier,unsigned);struct _tuple14{struct Cyc_Absyn_Tqual f0;void*f1;struct Cyc_List_List*f2;struct Cyc_List_List*f3;};
static struct _tuple14 Cyc_Parse_apply_tms(struct Cyc_Absyn_Tqual,void*,struct Cyc_List_List*,struct Cyc_List_List*);
# 181
# 182
static struct Cyc_List_List*Cyc_Parse_parse_result=0;
static struct Cyc_List_List*Cyc_Parse_constraint_graph=0;
static int Cyc_Parse_inside_function_definition=0;


@@ 712,17 712,17 @@ static int Cyc_Parse_inside_noinference_block=0;
static void*Cyc_Parse_parse_abort(unsigned loc,struct _fat_ptr msg){struct Cyc_Warn_String_Warn_Warg_struct _T0;unsigned _T1;struct _fat_ptr _T2;struct Cyc_Parse_Exit_exn_struct*_T3;void*_T4;{struct Cyc_Warn_String_Warn_Warg_struct _T5;_T5.tag=0;
_T5.f1=msg;_T0=_T5;}{struct Cyc_Warn_String_Warn_Warg_struct _T5=_T0;void*_T6[1];_T6[0]=& _T5;_T1=loc;_T2=_tag_fat(_T6,sizeof(void*),1);Cyc_Warn_err2(_T1,_T2);}{struct Cyc_Parse_Exit_exn_struct*_T5=_cycalloc(sizeof(struct Cyc_Parse_Exit_exn_struct));
_T5->tag=Cyc_Parse_Exit;_T3=(struct Cyc_Parse_Exit_exn_struct*)_T5;}_T4=(void*)_T3;_throw(_T4);}
# 190
# 191
static void*Cyc_Parse_type_name_to_type(struct _tuple8*tqt,unsigned loc){struct _tuple8*_T0;struct Cyc_Absyn_Tqual _T1;int _T2;struct Cyc_Absyn_Tqual _T3;int _T4;struct Cyc_Absyn_Tqual _T5;int _T6;struct Cyc_Absyn_Tqual _T7;unsigned _T8;struct Cyc_Absyn_Tqual _T9;unsigned _TA;struct _fat_ptr _TB;struct _fat_ptr _TC;void*_TD;void*_TE;struct Cyc_Absyn_Tqual _TF;_T0=tqt;{struct _tuple8 _T10=*_T0;_TF=_T10.f1;_TE=_T10.f2;}{struct Cyc_Absyn_Tqual tq=_TF;void*t=_TE;_T1=tq;_T2=_T1.print_const;
# 193
# 194
if(_T2)goto _TL7;else{goto _TL9;}_TL9: _T3=tq;_T4=_T3.q_volatile;if(_T4)goto _TL7;else{goto _TL8;}_TL8: _T5=tq;_T6=_T5.q_restrict;if(_T6)goto _TL7;else{goto _TL5;}
_TL7: _T7=tq;_T8=_T7.loc;if(_T8==0U)goto _TLA;_T9=tq;loc=_T9.loc;goto _TLB;_TLA: _TLB: _TA=loc;_TB=
_tag_fat("qualifier on type is ignored",sizeof(char),29U);_TC=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_TA,_TB,_TC);goto _TL6;_TL5: _TL6: _TD=t;
# 197
# 198
return _TD;}}
# 200
# 201
static void*Cyc_Parse_make_pointer_mod(struct _RegionHandle*r,struct Cyc_Absyn_PtrLoc*loc,void*nullable,void*bound,void*eff,struct Cyc_List_List*pqs,struct Cyc_Absyn_Tqual tqs){struct Cyc_List_List*_T0;int*_T1;unsigned _T2;void*_T3;void*_T4;int(*_T5)(struct _fat_ptr,struct _fat_ptr);void*(*_T6)(struct _fat_ptr,struct _fat_ptr);struct _fat_ptr _T7;struct _fat_ptr _T8;struct Cyc_List_List*_T9;struct Cyc_Absyn_Pointer_mod_Absyn_Type_modifier_struct*_TA;struct _RegionHandle*_TB;struct Cyc_Core_Opt*_TC;struct Cyc_Core_Opt*_TD;void*_TE;void*_TF;void*_T10;
# 205
# 206
void*zeroterm=Cyc_Tcutil_any_bool(0);
void*autoreleased=Cyc_Tcutil_any_bool(0);
void*aqual=0;


@@ 739,35 739,35 @@ bound=Cyc_Absyn_thin_bounds_exp(e);goto _LL0;}case 10:{struct Cyc_Parse_Alias_pt
aqual=aq;goto _LL0;}case 2:{struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*_T13=(struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*)_T11;_T12=_T13->f1;}{struct Cyc_List_List*ts=_T12;
eff=Cyc_Absyn_join_eff(ts);goto _LL0;}default:{struct Cyc_Parse_Region_ptrqual_Parse_Pointer_qual_struct*_T13=(struct Cyc_Parse_Region_ptrqual_Parse_Pointer_qual_struct*)_T11;_T4=_T13->f1;_T12=(void*)_T4;}{void*t=_T12;_T6=Cyc_Warn_impos;{
int(*_T13)(struct _fat_ptr,struct _fat_ptr)=(int(*)(struct _fat_ptr,struct _fat_ptr))_T6;_T5=_T13;}_T7=_tag_fat("Found region pointer qual",sizeof(char),26U);_T8=_tag_fat(0U,sizeof(void*),0);_T5(_T7,_T8);goto _LL0;}}_LL0:;}_T9=pqs;
# 208
# 209
pqs=_T9->tl;goto _TLF;_TLE: _TB=r;{struct Cyc_Absyn_Pointer_mod_Absyn_Type_modifier_struct*_T11=_region_malloc(_TB,0U,sizeof(struct Cyc_Absyn_Pointer_mod_Absyn_Type_modifier_struct));_T11->tag=2;
# 222
# 223
_T11->f1.eff=eff;_T11->f1.nullable=nullable;_T11->f1.bounds=bound;_T11->f1.zero_term=zeroterm;
_T11->f1.ptrloc=loc;_T11->f1.autoreleased=autoreleased;
if(aqual==0)goto _TL11;_T11->f1.aqual=aqual;goto _TL12;_TL11: _TC=& Cyc_Kinds_aqko;_TD=(struct Cyc_Core_Opt*)_TC;_TE=Cyc_Absyn_new_evar(_TD,0);_TF=Cyc_Absyn_rtd_qual_type;_T11->f1.aqual=Cyc_Absyn_aqual_var_type(_TE,_TF);_TL12:
 _T11->f2=tqs;_TA=(struct Cyc_Absyn_Pointer_mod_Absyn_Type_modifier_struct*)_T11;}_T10=(void*)_TA;
# 222
# 223
return _T10;}
# 229
# 230
static void Cyc_Parse_check_single_constraint(unsigned loc,struct _fat_ptr id){struct _fat_ptr _T0;struct _fat_ptr _T1;int _T2;struct Cyc_String_pa_PrintArg_struct _T3;unsigned _T4;struct _fat_ptr _T5;struct _fat_ptr _T6;_T0=id;_T1=
_tag_fat("single",sizeof(char),7U);_T2=Cyc_zstrcmp(_T0,_T1);if(!_T2)goto _TL13;{struct Cyc_String_pa_PrintArg_struct _T7;_T7.tag=0;
_T7.f1=_tag_fat(" is not a valid effect constraint",sizeof(char),34U);_T3=_T7;}{struct Cyc_String_pa_PrintArg_struct _T7=_T3;void*_T8[1];_T8[0]=& _T7;_T4=loc;_T5=id;_T6=_tag_fat(_T8,sizeof(void*),1);Cyc_Warn_err(_T4,_T5,_T6);}goto _TL14;_TL13: _TL14:;}
# 233
# 234
static void*Cyc_Parse_effect_from_atomic(struct Cyc_List_List*effs){int _T0;struct Cyc_List_List*_T1;void*_T2;void*_T3;_T0=
Cyc_List_length(effs);if(_T0!=1)goto _TL15;_T1=
_check_null(effs);_T2=_T1->hd;return _T2;
# 237
# 238
_TL15: _T3=Cyc_Absyn_join_eff(effs);return _T3;}
# 240
# 241
static struct _tuple0*Cyc_Parse_gensym_enum (void){struct _tuple0*_T0;struct _fat_ptr*_T1;struct _fat_ptr _T2;struct Cyc_Int_pa_PrintArg_struct _T3;int _T4;int _T5;struct _fat_ptr _T6;struct _fat_ptr _T7;
static int enum_counter=0;{struct _tuple0*_T8=_cycalloc(sizeof(struct _tuple0));
_T8->f0=Cyc_Absyn_Rel_n(0);{struct _fat_ptr*_T9=_cycalloc(sizeof(struct _fat_ptr));{struct Cyc_Int_pa_PrintArg_struct _TA;_TA.tag=1;_T4=enum_counter;
enum_counter=_T4 + 1;_T5=_T4;_TA.f1=(unsigned long)_T5;_T3=_TA;}{struct Cyc_Int_pa_PrintArg_struct _TA=_T3;void*_TB[1];_TB[0]=& _TA;_T6=_tag_fat("__anonymous_enum_%d__",sizeof(char),22U);_T7=_tag_fat(_TB,sizeof(void*),1);_T2=Cyc_aprintf(_T6,_T7);}*_T9=_T2;_T1=(struct _fat_ptr*)_T9;}_T8->f1=_T1;_T0=(struct _tuple0*)_T8;}
# 242
# 243
return _T0;}struct _tuple15{unsigned f0;struct _tuple0*f1;struct Cyc_Absyn_Tqual f2;void*f3;struct Cyc_List_List*f4;struct Cyc_List_List*f5;};struct _tuple16{struct Cyc_Absyn_Exp*f0;struct Cyc_Absyn_Exp*f1;};struct _tuple17{struct _tuple15*f0;struct _tuple16*f1;};
# 246
# 247
static struct Cyc_Absyn_Aggrfield*Cyc_Parse_make_aggr_field(unsigned loc,struct _tuple17*field_info){struct _tuple17*_T0;struct _tuple15*_T1;struct _tuple16*_T2;unsigned _T3;struct _fat_ptr _T4;struct _fat_ptr _T5;int _T6;unsigned _T7;struct _fat_ptr _T8;struct _fat_ptr _T9;struct Cyc_Absyn_Aggrfield*_TA;struct _tuple0*_TB;struct _tuple0 _TC;struct Cyc_Absyn_Exp*_TD;struct Cyc_Absyn_Exp*_TE;struct Cyc_List_List*_TF;struct Cyc_List_List*_T10;void*_T11;struct Cyc_Absyn_Tqual _T12;struct _tuple0*_T13;unsigned _T14;_T0=field_info;{struct _tuple17 _T15=*_T0;_T1=_T15.f0;{struct _tuple15 _T16=*_T1;_T14=_T16.f0;_T13=_T16.f1;_T12=_T16.f2;_T11=_T16.f3;_T10=_T16.f4;_TF=_T16.f5;}_T2=_T15.f1;{struct _tuple16 _T16=*_T2;_TE=_T16.f0;_TD=_T16.f1;}}{unsigned varloc=_T14;struct _tuple0*qid=_T13;struct Cyc_Absyn_Tqual tq=_T12;void*t=_T11;struct Cyc_List_List*tvs=_T10;struct Cyc_List_List*atts=_TF;struct Cyc_Absyn_Exp*widthopt=_TE;struct Cyc_Absyn_Exp*reqopt=_TD;
# 252
# 253
if(tvs==0)goto _TL17;_T3=loc;_T4=
_tag_fat("bad type params in struct field",sizeof(char),32U);_T5=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T3,_T4,_T5);goto _TL18;_TL17: _TL18: _T6=
Cyc_Absyn_is_qvar_qualified(qid);if(!_T6)goto _TL19;_T7=loc;_T8=


@@ 775,9 775,9 @@ _tag_fat("struct or union field cannot be qualified with a namespace",sizeof(cha
_T15->name=_TC.f1;_T15->tq=tq;_T15->type=t;
_T15->width=widthopt;_T15->attributes=atts;
_T15->requires_clause=reqopt;_TA=(struct Cyc_Absyn_Aggrfield*)_T15;}
# 256
# 257
return _TA;}}
# 261
# 262
static struct Cyc_Parse_Type_specifier Cyc_Parse_empty_spec(unsigned loc){struct Cyc_Parse_Type_specifier _T0;{struct Cyc_Parse_Type_specifier _T1;
_T1.Signed_spec=0;
_T1.Unsigned_spec=0;


@@ 788,124 788,124 @@ _T1.Complex_spec=0;
_T1.Valid_type_spec=0;
_T1.Type_spec=Cyc_Absyn_sint_type;
_T1.loc=loc;_T0=_T1;}
# 262
# 263
return _T0;}
# 273
# 274
static struct Cyc_Parse_Type_specifier Cyc_Parse_type_spec(void*t,unsigned loc){struct Cyc_Parse_Type_specifier _T0;
struct Cyc_Parse_Type_specifier s=Cyc_Parse_empty_spec(loc);
s.Type_spec=t;
s.Valid_type_spec=1;_T0=s;
return _T0;}
# 279
# 280
static struct Cyc_Parse_Type_specifier Cyc_Parse_signed_spec(unsigned loc){struct Cyc_Parse_Type_specifier _T0;
struct Cyc_Parse_Type_specifier s=Cyc_Parse_empty_spec(loc);
s.Signed_spec=1;_T0=s;
return _T0;}
# 284
# 285
static struct Cyc_Parse_Type_specifier Cyc_Parse_unsigned_spec(unsigned loc){struct Cyc_Parse_Type_specifier _T0;
struct Cyc_Parse_Type_specifier s=Cyc_Parse_empty_spec(loc);
s.Unsigned_spec=1;_T0=s;
return _T0;}
# 289
# 290
static struct Cyc_Parse_Type_specifier Cyc_Parse_short_spec(unsigned loc){struct Cyc_Parse_Type_specifier _T0;
struct Cyc_Parse_Type_specifier s=Cyc_Parse_empty_spec(loc);
s.Short_spec=1;_T0=s;
return _T0;}
# 294
# 295
static struct Cyc_Parse_Type_specifier Cyc_Parse_long_spec(unsigned loc){struct Cyc_Parse_Type_specifier _T0;
struct Cyc_Parse_Type_specifier s=Cyc_Parse_empty_spec(loc);
s.Long_spec=1;_T0=s;
return _T0;}
# 299
# 300
static struct Cyc_Parse_Type_specifier Cyc_Parse_complex_spec(unsigned loc){struct Cyc_Parse_Type_specifier _T0;
struct Cyc_Parse_Type_specifier s=Cyc_Parse_empty_spec(loc);
s.Complex_spec=1;_T0=s;
return _T0;}
# 306
# 307
static void*Cyc_Parse_array2ptr(void*t,int argposn){void*_T0;int _T1;void*_T2;void*_T3;int _T4;struct Cyc_Core_Opt*_T5;struct Cyc_Core_Opt*_T6;void*_T7;_T1=
# 308
# 309
Cyc_Tcutil_is_array_type(t);if(!_T1)goto _TL1B;_T2=t;_T4=argposn;
if(!_T4)goto _TL1D;_T5=& Cyc_Kinds_eko;_T6=(struct Cyc_Core_Opt*)_T5;_T3=Cyc_Absyn_new_evar(_T6,0);goto _TL1E;_TL1D: _T3=Cyc_Absyn_heap_rgn_type;_TL1E: _T7=Cyc_Absyn_al_qual_type;_T0=Cyc_Tcutil_promote_array(_T2,_T3,_T7,0);goto _TL1C;_TL1B: _T0=t;_TL1C:
# 308
# 309
 return _T0;}struct _tuple18{struct _fat_ptr*f0;void*f1;};
# 321 "parse.y"
# 322 "parse.y"
static struct Cyc_List_List*Cyc_Parse_get_arg_tags(struct Cyc_List_List*x){struct Cyc_List_List*_T0;void*_T1;struct _tuple8*_T2;void*_T3;int*_T4;int _T5;struct _tuple8*_T6;void*_T7;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T8;void*_T9;int*_TA;int _TB;struct _tuple8*_TC;void*_TD;struct Cyc_Absyn_AppType_Absyn_Type_struct*_TE;struct Cyc_List_List*_TF;struct _tuple8*_T10;void*_T11;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T12;struct Cyc_List_List*_T13;struct Cyc_List_List*_T14;struct Cyc_List_List*_T15;void*_T16;struct Cyc_List_List*_T17;void*_T18;struct _fat_ptr*_T19;void*_T1A;int*_T1B;int _T1C;void*_T1D;void*_T1E;struct Cyc_Absyn_Evar_Absyn_Type_struct*_T1F;void**_T20;struct _fat_ptr*_T21;struct _fat_ptr _T22;struct Cyc_String_pa_PrintArg_struct _T23;struct _fat_ptr*_T24;struct _fat_ptr _T25;struct _fat_ptr _T26;void**_T27;struct Cyc_Absyn_Tvar*_T28;struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*_T29;struct Cyc_Absyn_Kind*_T2A;struct Cyc_List_List*_T2B;struct _tuple18*_T2C;struct _tuple8*_T2D;struct _fat_ptr*_T2E;struct _tuple8*_T2F;struct _fat_ptr*_T30;struct _tuple8*_T31;struct _fat_ptr*_T32;struct _tuple8*_T33;struct _fat_ptr*_T34;struct _tuple8*_T35;void*_T36;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T37;void*_T38;int*_T39;int _T3A;struct _tuple8*_T3B;void*_T3C;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T3D;struct Cyc_List_List*_T3E;struct _tuple8*_T3F;void*_T40;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T41;struct Cyc_List_List*_T42;struct Cyc_List_List*_T43;void*_T44;int*_T45;int _T46;struct _tuple8*_T47;void*_T48;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T49;struct Cyc_List_List*_T4A;struct Cyc_List_List*_T4B;struct Cyc_List_List*_T4C;struct _fat_ptr*_T4D;void*_T4E;struct Cyc_List_List*_T4F;void*_T50;void*_T51;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T52;struct Cyc_List_List*_T53;void*_T54;struct Cyc_Absyn_Evar_Absyn_Type_struct*_T55;void**_T56;struct _fat_ptr*_T57;struct _fat_ptr _T58;struct Cyc_String_pa_PrintArg_struct _T59;struct _fat_ptr _T5A;struct _fat_ptr _T5B;void**_T5C;struct Cyc_Absyn_Tvar*_T5D;struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*_T5E;struct Cyc_Absyn_Kind*_T5F;struct _tuple8*_T60;struct _fat_ptr*_T61;struct Cyc_List_List*_T62;struct Cyc_List_List*_T63;
struct Cyc_List_List*res=0;
_TL22: if(x!=0)goto _TL20;else{goto _TL21;}
_TL20: _T0=x;_T1=_T0->hd;{struct _tuple8*_T64=(struct _tuple8*)_T1;struct _fat_ptr _T65;void*_T66;void*_T67;_T2=(struct _tuple8*)_T64;_T3=_T2->f2;_T4=(int*)_T3;_T5=*_T4;if(_T5!=0)goto _TL23;_T6=(struct _tuple8*)_T64;_T7=_T6->f2;_T8=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T7;_T9=_T8->f1;_TA=(int*)_T9;_TB=*_TA;if(_TB!=5)goto _TL25;_TC=(struct _tuple8*)_T64;_TD=_TC->f2;_TE=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_TD;_TF=_TE->f2;if(_TF==0)goto _TL27;_T10=(struct _tuple8*)_T64;_T11=_T10->f2;_T12=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T11;_T13=_T12->f2;_T14=(struct Cyc_List_List*)_T13;_T15=_T14->tl;if(_T15!=0)goto _TL29;{struct _tuple8 _T68=*_T64;_T67=_T68.f0;_T16=_T68.f2;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_T69=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T16;_T17=_T69->f2;{struct Cyc_List_List _T6A=*_T17;_T18=_T6A.hd;_T66=(void*)_T18;}}}_T19=(struct _fat_ptr*)_T67;if(_T19==0)goto _TL2B;{struct _fat_ptr*v=_T67;void*i=_T66;{void*_T68;_T1A=i;_T1B=(int*)_T1A;_T1C=*_T1B;if(_T1C!=1)goto _TL2D;_T1D=i;{struct Cyc_Absyn_Evar_Absyn_Type_struct*_T69=(struct Cyc_Absyn_Evar_Absyn_Type_struct*)_T1D;_T1E=i;_T1F=(struct Cyc_Absyn_Evar_Absyn_Type_struct*)_T1E;_T20=& _T1F->f2;_T68=(void**)_T20;}{void**z=(void**)_T68;
# 330
# 331
struct _fat_ptr*nm;nm=_cycalloc(sizeof(struct _fat_ptr));_T21=nm;{struct Cyc_String_pa_PrintArg_struct _T69;_T69.tag=0;_T24=v;_T69.f1=*_T24;_T23=_T69;}{struct Cyc_String_pa_PrintArg_struct _T69=_T23;void*_T6A[1];_T6A[0]=& _T69;_T25=_tag_fat("`%s",sizeof(char),4U);_T26=_tag_fat(_T6A,sizeof(void*),1);_T22=Cyc_aprintf(_T25,_T26);}*_T21=_T22;_T27=z;{struct Cyc_Absyn_Tvar*_T69=_cycalloc(sizeof(struct Cyc_Absyn_Tvar));
_T69->name=nm;_T69->identity=- 1;{struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*_T6A=_cycalloc(sizeof(struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct));_T6A->tag=0;_T2A=& Cyc_Kinds_ik;_T6A->f1=(struct Cyc_Absyn_Kind*)_T2A;_T29=(struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*)_T6A;}_T69->kind=(void*)_T29;_T69->aquals_bound=0;_T28=(struct Cyc_Absyn_Tvar*)_T69;}*_T27=Cyc_Absyn_var_type(_T28);goto _LL7;}_TL2D: goto _LL7;_LL7:;}{struct Cyc_List_List*_T68=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple18*_T69=_cycalloc(sizeof(struct _tuple18));
# 335
# 336
_T69->f0=v;_T69->f1=i;_T2C=(struct _tuple18*)_T69;}_T68->hd=_T2C;_T68->tl=res;_T2B=(struct Cyc_List_List*)_T68;}res=_T2B;goto _LL0;}_TL2B: _T2D=(struct _tuple8*)_T64;_T2E=_T2D->f0;if(_T2E==0)goto _TL2F;goto _LL5;_TL2F: goto _LL5;_TL29: _T2F=(struct _tuple8*)_T64;_T30=_T2F->f0;if(_T30==0)goto _TL31;goto _LL5;_TL31: goto _LL5;_TL27: _T31=(struct _tuple8*)_T64;_T32=_T31->f0;if(_T32==0)goto _TL33;goto _LL5;_TL33: goto _LL5;_TL25: _T33=(struct _tuple8*)_T64;_T34=_T33->f0;if(_T34==0)goto _TL35;_T35=(struct _tuple8*)_T64;_T36=_T35->f2;_T37=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T36;_T38=_T37->f1;_T39=(int*)_T38;_T3A=*_T39;if(_T3A!=4)goto _TL37;_T3B=(struct _tuple8*)_T64;_T3C=_T3B->f2;_T3D=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T3C;_T3E=_T3D->f2;if(_T3E==0)goto _TL39;_T3F=(struct _tuple8*)_T64;_T40=_T3F->f2;_T41=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T40;_T42=_T41->f2;_T43=(struct Cyc_List_List*)_T42;_T44=_T43->hd;_T45=(int*)_T44;_T46=*_T45;if(_T46!=1)goto _TL3B;_T47=(struct _tuple8*)_T64;_T48=_T47->f2;_T49=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T48;_T4A=_T49->f2;_T4B=(struct Cyc_List_List*)_T4A;_T4C=_T4B->tl;if(_T4C!=0)goto _TL3D;{struct _tuple8 _T68=*_T64;_T4D=_T68.f0;{struct _fat_ptr _T69=*_T4D;_T65=_T69;}_T4E=_T68.f2;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_T69=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T4E;_T4F=_T69->f2;{struct Cyc_List_List _T6A=*_T4F;_T50=_T6A.hd;{struct Cyc_Absyn_Evar_Absyn_Type_struct*_T6B=(struct Cyc_Absyn_Evar_Absyn_Type_struct*)_T50;_T51=_T64->f2;_T52=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T51;_T53=_T52->f2;_T54=_T53->hd;_T55=(struct Cyc_Absyn_Evar_Absyn_Type_struct*)_T54;_T56=& _T55->f2;_T67=(void**)_T56;}}}}{struct _fat_ptr v=_T65;void**z=(void**)_T67;
# 339
# 340
struct _fat_ptr*nm;nm=_cycalloc(sizeof(struct _fat_ptr));_T57=nm;{struct Cyc_String_pa_PrintArg_struct _T68;_T68.tag=0;_T68.f1=v;_T59=_T68;}{struct Cyc_String_pa_PrintArg_struct _T68=_T59;void*_T69[1];_T69[0]=& _T68;_T5A=_tag_fat("`%s",sizeof(char),4U);_T5B=_tag_fat(_T69,sizeof(void*),1);_T58=Cyc_aprintf(_T5A,_T5B);}*_T57=_T58;_T5C=z;{struct Cyc_Absyn_Tvar*_T68=_cycalloc(sizeof(struct Cyc_Absyn_Tvar));
_T68->name=nm;_T68->identity=- 1;{struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*_T69=_cycalloc(sizeof(struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct));_T69->tag=0;_T5F=& Cyc_Kinds_ek;_T69->f1=(struct Cyc_Absyn_Kind*)_T5F;_T5E=(struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*)_T69;}_T68->kind=(void*)_T5E;_T68->aquals_bound=0;_T5D=(struct Cyc_Absyn_Tvar*)_T68;}*_T5C=Cyc_Absyn_var_type(_T5D);goto _LL0;}_TL3D: goto _LL5;_TL3B: goto _LL5;_TL39: goto _LL5;_TL37: goto _LL5;_TL35: goto _LL5;_TL23: _T60=(struct _tuple8*)_T64;_T61=_T60->f0;if(_T61==0)goto _TL3F;goto _LL5;_TL3F: _LL5: goto _LL0;_LL0:;}_T62=x;
# 323
# 324
x=_T62->tl;goto _TL22;_TL21: _T63=res;
# 344
# 345
return _T63;}
# 348
# 349
static struct Cyc_List_List*Cyc_Parse_get_aggrfield_tags(struct Cyc_List_List*x){struct Cyc_List_List*_T0;void*_T1;struct Cyc_Absyn_Aggrfield*_T2;int*_T3;int _T4;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T5;void*_T6;int*_T7;int _T8;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T9;struct Cyc_List_List*_TA;struct Cyc_Absyn_AppType_Absyn_Type_struct*_TB;struct Cyc_List_List*_TC;struct Cyc_List_List*_TD;struct Cyc_List_List*_TE;struct Cyc_List_List*_TF;void*_T10;struct Cyc_List_List*_T11;struct _tuple18*_T12;struct Cyc_List_List*_T13;void*_T14;struct Cyc_Absyn_Aggrfield*_T15;struct Cyc_List_List*_T16;struct Cyc_List_List*_T17;
struct Cyc_List_List*res=0;
_TL44: if(x!=0)goto _TL42;else{goto _TL43;}
_TL42: _T0=x;_T1=_T0->hd;_T2=(struct Cyc_Absyn_Aggrfield*)_T1;{void*_T18=_T2->type;void*_T19;_T3=(int*)_T18;_T4=*_T3;if(_T4!=0)goto _TL45;_T5=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T18;_T6=_T5->f1;_T7=(int*)_T6;_T8=*_T7;if(_T8!=5)goto _TL47;_T9=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T18;_TA=_T9->f2;if(_TA==0)goto _TL49;_TB=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T18;_TC=_TB->f2;_TD=(struct Cyc_List_List*)_TC;_TE=_TD->tl;if(_TE!=0)goto _TL4B;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_T1A=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T18;_TF=_T1A->f2;{struct Cyc_List_List _T1B=*_TF;_T10=_T1B.hd;_T19=(void*)_T10;}}{void*i=_T19;{struct Cyc_List_List*_T1A=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple18*_T1B=_cycalloc(sizeof(struct _tuple18));_T13=x;_T14=_T13->hd;_T15=(struct Cyc_Absyn_Aggrfield*)_T14;
# 353
# 354
_T1B->f0=_T15->name;_T1B->f1=i;_T12=(struct _tuple18*)_T1B;}_T1A->hd=_T12;_T1A->tl=res;_T11=(struct Cyc_List_List*)_T1A;}res=_T11;goto _LL0;}_TL4B: goto _LL3;_TL49: goto _LL3;_TL47: goto _LL3;_TL45: _LL3: goto _LL0;_LL0:;}_T16=x;
# 350
# 351
x=_T16->tl;goto _TL44;_TL43: _T17=res;
# 356
# 357
return _T17;}
# 360
# 361
static struct Cyc_Absyn_Exp*Cyc_Parse_substitute_tags_exp(struct Cyc_List_List*tags,struct Cyc_Absyn_Exp*e){struct Cyc_Absyn_Exp*_T0;int*_T1;int _T2;struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*_T3;void*_T4;int*_T5;int _T6;struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*_T7;void*_T8;struct Cyc_Absyn_Unresolved_b_Absyn_Binding_struct*_T9;struct _tuple0*_TA;struct _tuple0*_TB;union Cyc_Absyn_Nmspace _TC;struct _union_Nmspace_Rel_n _TD;unsigned _TE;struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*_TF;void*_T10;struct Cyc_Absyn_Unresolved_b_Absyn_Binding_struct*_T11;struct _tuple0*_T12;struct _tuple0*_T13;union Cyc_Absyn_Nmspace _T14;struct _union_Nmspace_Rel_n _T15;struct Cyc_List_List*_T16;void*_T17;struct _tuple0*_T18;struct Cyc_List_List*_T19;void*_T1A;int _T1B;struct Cyc_Absyn_Valueof_e_Absyn_Raw_exp_struct*_T1C;void*_T1D;struct Cyc_Absyn_Exp*_T1E;unsigned _T1F;struct Cyc_Absyn_Exp*_T20;struct Cyc_List_List*_T21;struct Cyc_Absyn_Exp*_T22;_T0=e;{
void*_T23=_T0->r;struct _fat_ptr*_T24;_T1=(int*)_T23;_T2=*_T1;if(_T2!=1)goto _TL4D;_T3=(struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*)_T23;_T4=_T3->f1;_T5=(int*)_T4;_T6=*_T5;if(_T6!=0)goto _TL4F;_T7=(struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*)_T23;_T8=_T7->f1;_T9=(struct Cyc_Absyn_Unresolved_b_Absyn_Binding_struct*)_T8;_TA=_T9->f1;_TB=(struct _tuple0*)_TA;_TC=_TB->f0;_TD=_TC.Rel_n;_TE=_TD.tag;if(_TE!=2)goto _TL51;_TF=(struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*)_T23;_T10=_TF->f1;_T11=(struct Cyc_Absyn_Unresolved_b_Absyn_Binding_struct*)_T10;_T12=_T11->f1;_T13=(struct _tuple0*)_T12;_T14=_T13->f0;_T15=_T14.Rel_n;_T16=_T15.val;if(_T16!=0)goto _TL53;{struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*_T25=(struct Cyc_Absyn_Var_e_Absyn_Raw_exp_struct*)_T23;_T17=_T25->f1;{struct Cyc_Absyn_Unresolved_b_Absyn_Binding_struct*_T26=(struct Cyc_Absyn_Unresolved_b_Absyn_Binding_struct*)_T17;_T18=_T26->f1;{struct _tuple0 _T27=*_T18;_T24=_T27.f1;}}}{struct _fat_ptr*y=_T24;{
# 363
# 364
struct Cyc_List_List*ts=tags;_TL58: if(ts!=0)goto _TL56;else{goto _TL57;}
_TL56: _T19=ts;_T1A=_T19->hd;{struct _tuple18*_T25=(struct _tuple18*)_T1A;void*_T26;struct _fat_ptr*_T27;{struct _tuple18 _T28=*_T25;_T27=_T28.f0;_T26=_T28.f1;}{struct _fat_ptr*x=_T27;void*i=_T26;_T1B=
Cyc_strptrcmp(x,y);if(_T1B!=0)goto _TL59;{struct Cyc_Absyn_Valueof_e_Absyn_Raw_exp_struct*_T28=_cycalloc(sizeof(struct Cyc_Absyn_Valueof_e_Absyn_Raw_exp_struct));_T28->tag=38;
_T28->f1=Cyc_Tcutil_copy_type(i);_T1C=(struct Cyc_Absyn_Valueof_e_Absyn_Raw_exp_struct*)_T28;}_T1D=(void*)_T1C;_T1E=e;_T1F=_T1E->loc;_T20=Cyc_Absyn_new_exp(_T1D,_T1F);return _T20;_TL59:;}}_T21=ts;
# 363
# 364
ts=_T21->tl;goto _TL58;_TL57:;}goto _LL0;}_TL53: goto _LL3;_TL51: goto _LL3;_TL4F: goto _LL3;_TL4D: _LL3: goto _LL0;_LL0:;}_T22=e;
# 371
# 372
return _T22;}
# 376
# 377
static void*Cyc_Parse_substitute_tags(struct Cyc_List_List*tags,void*t){void*_T0;int*_T1;unsigned _T2;void*_T3;struct Cyc_Absyn_ArrayInfo _T4;struct Cyc_Absyn_ArrayInfo _T5;struct Cyc_Absyn_ArrayInfo _T6;struct Cyc_Absyn_ArrayInfo _T7;struct Cyc_Absyn_ArrayInfo _T8;void*_T9;void*_TA;struct Cyc_Absyn_PtrInfo _TB;struct Cyc_Absyn_PtrInfo _TC;struct Cyc_Absyn_PtrInfo _TD;struct Cyc_Absyn_PtrAtts _TE;struct Cyc_Absyn_PtrInfo _TF;struct Cyc_Absyn_PtrAtts _T10;struct Cyc_Absyn_PtrInfo _T11;struct Cyc_Absyn_PtrAtts _T12;struct Cyc_Absyn_PtrInfo _T13;struct Cyc_Absyn_PtrAtts _T14;struct Cyc_Absyn_PtrInfo _T15;struct Cyc_Absyn_PtrAtts _T16;struct Cyc_Absyn_PtrInfo _T17;struct Cyc_Absyn_PtrAtts _T18;struct Cyc_Absyn_PtrInfo _T19;struct Cyc_Absyn_PtrAtts _T1A;struct Cyc_Absyn_PtrInfo _T1B;void*_T1C;void*_T1D;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T1E;void*_T1F;int*_T20;int _T21;void*_T22;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T23;struct Cyc_List_List*_T24;void*_T25;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T26;struct Cyc_List_List*_T27;struct Cyc_List_List*_T28;struct Cyc_List_List*_T29;void*_T2A;struct Cyc_List_List*_T2B;void*_T2C;void*_T2D;void*_T2E;void*_T2F;void*_T30;{struct Cyc_Absyn_Exp*_T31;void*_T32;void*_T33;struct Cyc_Absyn_PtrLoc*_T34;void*_T35;void*_T36;unsigned _T37;void*_T38;void*_T39;struct Cyc_Absyn_Tqual _T3A;void*_T3B;_T0=t;_T1=(int*)_T0;_T2=*_T1;switch(_T2){case 5: _T3=t;{struct Cyc_Absyn_ArrayType_Absyn_Type_struct*_T3C=(struct Cyc_Absyn_ArrayType_Absyn_Type_struct*)_T3;_T4=_T3C->f1;_T3B=_T4.elt_type;_T5=_T3C->f1;_T3A=_T5.tq;_T6=_T3C->f1;_T39=_T6.num_elts;_T7=_T3C->f1;_T38=_T7.zero_term;_T8=_T3C->f1;_T37=_T8.zt_loc;}{void*et=_T3B;struct Cyc_Absyn_Tqual tq=_T3A;struct Cyc_Absyn_Exp*nelts=_T39;void*zt=_T38;unsigned ztloc=_T37;
# 379
# 380
struct Cyc_Absyn_Exp*nelts2=nelts;
if(nelts==0)goto _TL5C;
nelts2=Cyc_Parse_substitute_tags_exp(tags,nelts);goto _TL5D;_TL5C: _TL5D: {
void*et2=Cyc_Parse_substitute_tags(tags,et);
if(nelts!=nelts2)goto _TL60;else{goto _TL61;}_TL61: if(et!=et2)goto _TL60;else{goto _TL5E;}
_TL60: _T9=Cyc_Absyn_array_type(et2,tq,nelts2,zt,ztloc);return _T9;_TL5E: goto _LL0;}}case 4: _TA=t;{struct Cyc_Absyn_PointerType_Absyn_Type_struct*_T3C=(struct Cyc_Absyn_PointerType_Absyn_Type_struct*)_TA;_TB=_T3C->f1;_T3B=_TB.elt_type;_TC=_T3C->f1;_T3A=_TC.elt_tq;_TD=_T3C->f1;_TE=_TD.ptr_atts;_T39=_TE.eff;_TF=_T3C->f1;_T10=_TF.ptr_atts;_T38=_T10.nullable;_T11=_T3C->f1;_T12=_T11.ptr_atts;_T36=_T12.bounds;_T13=_T3C->f1;_T14=_T13.ptr_atts;_T35=_T14.zero_term;_T15=_T3C->f1;_T16=_T15.ptr_atts;_T34=_T16.ptrloc;_T17=_T3C->f1;_T18=_T17.ptr_atts;_T33=_T18.autoreleased;_T19=_T3C->f1;_T1A=_T19.ptr_atts;_T32=_T1A.aqual;}{void*et=_T3B;struct Cyc_Absyn_Tqual tq=_T3A;void*r=_T39;void*n=_T38;void*b=_T36;void*zt=_T35;struct Cyc_Absyn_PtrLoc*pl=_T34;void*rel=_T33;void*aq=_T32;
# 387
# 388
void*et2=Cyc_Parse_substitute_tags(tags,et);
void*b2=Cyc_Parse_substitute_tags(tags,b);
if(et2!=et)goto _TL64;else{goto _TL65;}_TL65: if(b2!=b)goto _TL64;else{goto _TL62;}
_TL64:{struct Cyc_Absyn_PtrInfo _T3C;_T3C.elt_type=et2;_T3C.elt_tq=tq;_T3C.ptr_atts.eff=r;_T3C.ptr_atts.nullable=n;_T3C.ptr_atts.bounds=b2;_T3C.ptr_atts.zero_term=zt;_T3C.ptr_atts.ptrloc=pl;_T3C.ptr_atts.autoreleased=rel;_T3C.ptr_atts.aqual=aq;_T1B=_T3C;}_T1C=Cyc_Absyn_pointer_type(_T1B);return _T1C;_TL62: goto _LL0;}case 0: _T1D=t;_T1E=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T1D;_T1F=_T1E->f1;_T20=(int*)_T1F;_T21=*_T20;if(_T21!=13)goto _TL66;_T22=t;_T23=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T22;_T24=_T23->f2;if(_T24==0)goto _TL68;_T25=t;_T26=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T25;_T27=_T26->f2;_T28=(struct Cyc_List_List*)_T27;_T29=_T28->tl;if(_T29!=0)goto _TL6A;_T2A=t;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_T3C=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T2A;_T2B=_T3C->f2;{struct Cyc_List_List _T3D=*_T2B;_T2C=_T3D.hd;_T3B=(void*)_T2C;}}{void*t=_T3B;
# 393
# 394
void*t2=Cyc_Parse_substitute_tags(tags,t);
if(t==t2)goto _TL6C;_T2D=Cyc_Absyn_thin_bounds_type(t2);return _T2D;_TL6C: goto _LL0;}_TL6A: goto _LL9;_TL68: goto _LL9;_TL66: goto _LL9;case 9: _T2E=t;{struct Cyc_Absyn_ValueofType_Absyn_Type_struct*_T3C=(struct Cyc_Absyn_ValueofType_Absyn_Type_struct*)_T2E;_T31=_T3C->f1;}{struct Cyc_Absyn_Exp*e=_T31;
# 397
# 398
struct Cyc_Absyn_Exp*e2=Cyc_Parse_substitute_tags_exp(tags,e);
if(e2==e)goto _TL6E;_T2F=Cyc_Absyn_valueof_type(e2);return _T2F;_TL6E: goto _LL0;}default: _LL9: goto _LL0;}_LL0:;}_T30=t;
# 402
# 403
return _T30;}
# 407
# 408
static void Cyc_Parse_substitute_aggrfield_tags(struct Cyc_List_List*tags,struct Cyc_Absyn_Aggrfield*x){struct Cyc_Absyn_Aggrfield*_T0;struct Cyc_List_List*_T1;struct Cyc_Absyn_Aggrfield*_T2;void*_T3;_T0=x;_T1=tags;_T2=x;_T3=_T2->type;
_T0->type=Cyc_Parse_substitute_tags(_T1,_T3);}struct _tuple19{struct Cyc_Absyn_Tqual f0;void*f1;};struct _tuple20{void*f0;struct Cyc_Absyn_Tqual f1;void*f2;};
# 414
# 415
static struct _tuple19*Cyc_Parse_get_tqual_typ(unsigned loc,struct _tuple20*t){struct _tuple19*_T0;struct _tuple20*_T1;struct _tuple20 _T2;struct _tuple20*_T3;struct _tuple20 _T4;{struct _tuple19*_T5=_cycalloc(sizeof(struct _tuple19));_T1=t;_T2=*_T1;
_T5->f0=_T2.f1;_T3=t;_T4=*_T3;_T5->f1=_T4.f2;_T0=(struct _tuple19*)_T5;}return _T0;}
# 418
# 419
static int Cyc_Parse_is_typeparam(void*tm){void*_T0;int*_T1;int _T2;_T0=tm;_T1=(int*)_T0;_T2=*_T1;if(_T2!=4)goto _TL70;
# 420
# 421
return 1;_TL70:
 return 0;;}
# 427
# 428
static void*Cyc_Parse_id2type(struct _fat_ptr s,void*k,void*aliashint,unsigned loc){struct _fat_ptr _T0;struct _fat_ptr _T1;int _T2;void*_T3;struct _fat_ptr _T4;struct _fat_ptr _T5;int _T6;void*_T7;struct _fat_ptr _T8;struct _fat_ptr _T9;int _TA;void*_TB;int _TC;void*_TD;struct Cyc_Absyn_Tvar*_TE;struct _fat_ptr*_TF;void*_T10;_T0=s;_T1=
_tag_fat("`H",sizeof(char),3U);_T2=Cyc_zstrcmp(_T0,_T1);if(_T2!=0)goto _TL72;_T3=Cyc_Absyn_heap_rgn_type;
return _T3;_TL72: _T4=s;_T5=
# 431
# 432
_tag_fat("`U",sizeof(char),3U);_T6=Cyc_zstrcmp(_T4,_T5);if(_T6!=0)goto _TL74;_T7=Cyc_Absyn_unique_rgn_shorthand_type;
return _T7;_TL74: _T8=s;_T9=
_tag_fat("`RC",sizeof(char),4U);_TA=Cyc_zstrcmp(_T8,_T9);if(_TA!=0)goto _TL76;_TB=Cyc_Absyn_refcnt_rgn_shorthand_type;


@@ 914,32 914,32 @@ Cyc_zstrcmp(s,Cyc_CurRgn_curr_rgn_name);if(_TC!=0)goto _TL78;_TD=
Cyc_CurRgn_curr_rgn_type();return _TD;_TL78:
 aliashint=Cyc_Kinds_consistent_aliashint(loc,k,aliashint);{struct Cyc_Absyn_Tvar*_T11=_cycalloc(sizeof(struct Cyc_Absyn_Tvar));{struct _fat_ptr*_T12=_cycalloc(sizeof(struct _fat_ptr));
*_T12=s;_TF=(struct _fat_ptr*)_T12;}_T11->name=_TF;_T11->identity=- 1;_T11->kind=k;_T11->aquals_bound=aliashint;_TE=(struct Cyc_Absyn_Tvar*)_T11;}_T10=Cyc_Absyn_var_type(_TE);return _T10;}
# 441
# 442
static void*Cyc_Parse_id2aqual(unsigned loc,struct _fat_ptr s){unsigned long _T0;struct _fat_ptr _T1;unsigned char*_T2;const char*_T3;const char*_T4;int _T5;void*_T6;void*_T7;void*_T8;unsigned long _T9;struct _fat_ptr _TA;unsigned char*_TB;const char*_TC;const char*_TD;char _TE;int _TF;struct _fat_ptr _T10;unsigned char*_T11;const char*_T12;char _T13;int _T14;void*_T15;struct Cyc_Warn_String_Warn_Warg_struct _T16;struct Cyc_Warn_String_Warn_Warg_struct _T17;unsigned _T18;struct _fat_ptr _T19;void*_T1A;_T0=
Cyc_strlen(s);if(_T0!=2U)goto _TL7A;_T1=s;_T2=_T1.curr;_T3=(const char*)_T2;_T4=
_check_null(_T3);{char _T1B=_T4[1];_T5=(int)_T1B;switch(_T5){case 65: _T6=Cyc_Absyn_al_qual_type;
return _T6;case 85: _T7=Cyc_Absyn_un_qual_type;
return _T7;case 84: _T8=Cyc_Absyn_rtd_qual_type;
return _T8;default: goto _LL0;}_LL0:;}goto _TL7B;
# 450
# 451
_TL7A: _T9=Cyc_strlen(s);if(_T9!=3U)goto _TL7D;_TA=s;_TB=_TA.curr;_TC=(const char*)_TB;_TD=
_check_null(_TC);_TE=_TD[1];_TF=(int)_TE;if(_TF!=82)goto _TL7F;_T10=s;_T11=_T10.curr;_T12=(const char*)_T11;_T13=_T12[2];_T14=(int)_T13;if(_T14!=67)goto _TL7F;_T15=Cyc_Absyn_rc_qual_type;
return _T15;_TL7F: goto _TL7E;_TL7D: _TL7E: _TL7B:{struct Cyc_Warn_String_Warn_Warg_struct _T1B;_T1B.tag=0;
# 454
# 455
_T1B.f1=_tag_fat("bad aqual bound ",sizeof(char),17U);_T16=_T1B;}{struct Cyc_Warn_String_Warn_Warg_struct _T1B=_T16;{struct Cyc_Warn_String_Warn_Warg_struct _T1C;_T1C.tag=0;_T1C.f1=s;_T17=_T1C;}{struct Cyc_Warn_String_Warn_Warg_struct _T1C=_T17;void*_T1D[2];_T1D[0]=& _T1B;_T1D[1]=& _T1C;_T18=loc;_T19=_tag_fat(_T1D,sizeof(void*),2);Cyc_Warn_err2(_T18,_T19);}}_T1A=Cyc_Absyn_al_qual_type;
return _T1A;}
# 458
# 459
static struct Cyc_List_List*Cyc_Parse_insert_aqual(struct _RegionHandle*yy,struct Cyc_List_List*qlist,void*aq,unsigned loc){struct Cyc_List_List*_T0;int*_T1;int _T2;struct Cyc_Warn_String_Warn_Warg_struct _T3;unsigned _T4;struct _fat_ptr _T5;struct Cyc_List_List*_T6;struct Cyc_List_List*_T7;struct Cyc_List_List*_T8;struct _RegionHandle*_T9;struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*_TA;struct _RegionHandle*_TB;{
struct Cyc_List_List*l=qlist;_TL84: if(l!=0)goto _TL82;else{goto _TL83;}
_TL82: _T0=l;{void*_TC=_T0->hd;_T1=(int*)_TC;_T2=*_T1;if(_T2!=10)goto _TL85;{struct Cyc_Warn_String_Warn_Warg_struct _TD;_TD.tag=0;
# 462
# 463
_TD.f1=_tag_fat("Multiple alias qualifiers",sizeof(char),26U);_T3=_TD;}{struct Cyc_Warn_String_Warn_Warg_struct _TD=_T3;void*_TE[1];_TE[0]=& _TD;_T4=loc;_T5=_tag_fat(_TE,sizeof(void*),1);Cyc_Warn_err2(_T4,_T5);}_T6=qlist;
return _T6;_TL85: goto _LL0;_LL0:;}_T7=l;
# 459
# 460
l=_T7->tl;goto _TL84;_TL83:;}_T9=yy;{struct Cyc_List_List*_TC=_region_malloc(_T9,0U,sizeof(struct Cyc_List_List));_TB=yy;{struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*_TD=_region_malloc(_TB,0U,sizeof(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct));_TD->tag=10;
# 468
# 469
_TD->f1=aq;_TA=(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*)_TD;}_TC->hd=(void*)_TA;_TC->tl=qlist;_T8=(struct Cyc_List_List*)_TC;}return _T8;}
# 471
# 472
static void Cyc_Parse_tvar_ok(struct _fat_ptr s,unsigned loc){struct _fat_ptr _T0;struct _fat_ptr _T1;int _T2;unsigned _T3;struct _fat_ptr _T4;struct _fat_ptr _T5;struct _fat_ptr _T6;struct _fat_ptr _T7;int _T8;unsigned _T9;struct _fat_ptr _TA;struct _fat_ptr _TB;struct _fat_ptr _TC;struct _fat_ptr _TD;int _TE;unsigned _TF;struct _fat_ptr _T10;struct _fat_ptr _T11;int _T12;unsigned _T13;struct _fat_ptr _T14;struct _fat_ptr _T15;_T0=s;_T1=
_tag_fat("`H",sizeof(char),3U);_T2=Cyc_zstrcmp(_T0,_T1);if(_T2!=0)goto _TL87;_T3=loc;_T4=
_tag_fat("bad occurrence of heap region",sizeof(char),30U);_T5=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T3,_T4,_T5);goto _TL88;_TL87: _TL88: _T6=s;_T7=


@@ 949,90 949,90 @@ _tag_fat("`RC",sizeof(char),4U);_TE=Cyc_zstrcmp(_TC,_TD);if(_TE!=0)goto _TL8B;_T
_tag_fat("bad occurrence of refcounted region",sizeof(char),36U);_T11=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_TF,_T10,_T11);goto _TL8C;_TL8B: _TL8C: _T12=
Cyc_zstrcmp(s,Cyc_CurRgn_curr_rgn_name);if(_T12!=0)goto _TL8D;_T13=loc;_T14=
_tag_fat("bad occurrence of \"current\" region",sizeof(char),35U);_T15=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T13,_T14,_T15);goto _TL8E;_TL8D: _TL8E:;}
# 486
# 487
static struct Cyc_Absyn_Tvar*Cyc_Parse_typ2tvar(unsigned loc,void*t){void*_T0;int*_T1;int _T2;void*_T3;struct Cyc_Absyn_Tvar*_T4;int(*_T5)(unsigned,struct _fat_ptr);unsigned _T6;struct _fat_ptr _T7;struct Cyc_Absyn_Tvar*_T8;_T0=t;_T1=(int*)_T0;_T2=*_T1;if(_T2!=2)goto _TL8F;_T3=t;{struct Cyc_Absyn_VarType_Absyn_Type_struct*_T9=(struct Cyc_Absyn_VarType_Absyn_Type_struct*)_T3;_T8=_T9->f1;}{struct Cyc_Absyn_Tvar*pr=_T8;_T4=pr;
# 488
# 489
return _T4;}_TL8F:{
int(*_T9)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T5=_T9;}_T6=loc;_T7=_tag_fat("expecting a list of type variables, not types",sizeof(char),46U);_T5(_T6,_T7);;}
# 494
# 495
static void Cyc_Parse_set_vartyp_kind(void*t,struct Cyc_Absyn_Kind*k,int leq){int*_T0;int _T1;struct Cyc_Absyn_Tvar*_T2;struct Cyc_Absyn_VarType_Absyn_Type_struct*_T3;struct Cyc_Absyn_Tvar*_T4;void**_T5;void**_T6;void*_T7;int*_T8;int _T9;void**_TA;void*_TB;int _TC;struct Cyc_Absyn_Less_kb_Absyn_KindBound_struct*_TD;
void*_TE=Cyc_Absyn_compress(t);void*_TF;_T0=(int*)_TE;_T1=*_T0;if(_T1!=2)goto _TL91;{struct Cyc_Absyn_VarType_Absyn_Type_struct*_T10=(struct Cyc_Absyn_VarType_Absyn_Type_struct*)_TE;_T2=_T10->f1;{struct Cyc_Absyn_Tvar _T11=*_T2;_T3=(struct Cyc_Absyn_VarType_Absyn_Type_struct*)_TE;_T4=_T3->f1;_T5=& _T4->kind;_TF=(void**)_T5;}}{void**cptr=(void**)_TF;_T6=cptr;_T7=*_T6;{
# 497
# 498
void*_T10=Cyc_Kinds_compress_kb(_T7);_T8=(int*)_T10;_T9=*_T8;if(_T9!=1)goto _TL93;_TA=cptr;_TC=leq;
# 499
# 500
if(!_TC)goto _TL95;{struct Cyc_Absyn_Less_kb_Absyn_KindBound_struct*_T11=_cycalloc(sizeof(struct Cyc_Absyn_Less_kb_Absyn_KindBound_struct));_T11->tag=2;_T11->f1=0;_T11->f2=k;_TD=(struct Cyc_Absyn_Less_kb_Absyn_KindBound_struct*)_T11;}_TB=(void*)_TD;goto _TL96;_TL95: _TB=Cyc_Kinds_kind_to_bound(k);_TL96:*_TA=_TB;return;_TL93:
 return;;}}goto _TL92;_TL91:
# 502
# 503
 return;_TL92:;}
# 507
# 508
static struct Cyc_List_List*Cyc_Parse_oldstyle2newstyle(struct _RegionHandle*yy,struct Cyc_List_List*tms,struct Cyc_List_List*tds,unsigned loc){struct Cyc_List_List*_T0;int*_T1;int _T2;void*_T3;struct Cyc_List_List*_T4;struct Cyc_List_List*_T5;struct Cyc_List_List*_T6;struct Cyc_List_List*_T7;void*_T8;int _T9;struct Cyc_List_List*_TA;struct Cyc_List_List*_TB;struct Cyc_List_List*_TC;struct Cyc_List_List*_TD;void*_TE;int*_TF;int _T10;unsigned _T11;struct _fat_ptr _T12;struct _fat_ptr _T13;struct Cyc_List_List*_T14;void*_T15;int _T16;int _T17;int(*_T18)(unsigned,struct _fat_ptr);unsigned _T19;struct _fat_ptr _T1A;struct Cyc_List_List*_T1B;void*_T1C;struct Cyc_Absyn_Decl*_T1D;int*_T1E;int _T1F;struct Cyc_Absyn_Vardecl*_T20;struct _tuple0*_T21;struct _tuple0 _T22;struct _fat_ptr*_T23;struct Cyc_List_List*_T24;void*_T25;struct _fat_ptr*_T26;int _T27;struct Cyc_Absyn_Vardecl*_T28;struct Cyc_Absyn_Exp*_T29;int(*_T2A)(unsigned,struct _fat_ptr);struct Cyc_Absyn_Decl*_T2B;unsigned _T2C;struct _fat_ptr _T2D;struct Cyc_Absyn_Vardecl*_T2E;struct _tuple0*_T2F;int _T30;int(*_T31)(unsigned,struct _fat_ptr);struct Cyc_Absyn_Decl*_T32;unsigned _T33;struct _fat_ptr _T34;struct Cyc_List_List*_T35;struct _tuple8*_T36;struct Cyc_Absyn_Vardecl*_T37;struct _tuple0*_T38;struct _tuple0 _T39;struct Cyc_Absyn_Vardecl*_T3A;struct Cyc_Absyn_Vardecl*_T3B;int(*_T3C)(unsigned,struct _fat_ptr);struct Cyc_Absyn_Decl*_T3D;unsigned _T3E;struct _fat_ptr _T3F;struct Cyc_List_List*_T40;int(*_T41)(unsigned,struct _fat_ptr);unsigned _T42;struct Cyc_List_List*_T43;void*_T44;struct _fat_ptr*_T45;struct _fat_ptr _T46;struct _fat_ptr _T47;struct _fat_ptr _T48;struct Cyc_List_List*_T49;struct Cyc_List_List*_T4A;struct _RegionHandle*_T4B;struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T4C;struct _RegionHandle*_T4D;struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*_T4E;struct _RegionHandle*_T4F;struct Cyc_List_List*_T50;struct _RegionHandle*_T51;struct Cyc_List_List*_T52;struct _RegionHandle*_T53;struct Cyc_List_List*_T54;struct Cyc_List_List*_T55;struct Cyc_List_List*_T56;unsigned _T57;
# 515
# 516
if(tms!=0)goto _TL97;return 0;_TL97: _T0=tms;{
# 517
# 518
void*_T58=_T0->hd;void*_T59;_T1=(int*)_T58;_T2=*_T1;if(_T2!=3)goto _TL99;{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T5A=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T58;_T3=_T5A->f1;_T59=(void*)_T3;}{void*args=_T59;_T4=tms;_T5=_T4->tl;
# 520
# 521
if(_T5==0)goto _TL9D;else{goto _TL9E;}_TL9E: _T6=tms;_T7=_T6->tl;_T8=_T7->hd;_T9=
Cyc_Parse_is_typeparam(_T8);
# 520
# 521
if(_T9)goto _TL9F;else{goto _TL9B;}_TL9F: _TA=tms;_TB=_TA->tl;_TC=
_check_null(_TB);_TD=_TC->tl;
# 520
# 521
if(_TD==0)goto _TL9D;else{goto _TL9B;}
# 523
# 524
_TL9D:{struct Cyc_List_List*_T5A;_TE=args;_TF=(int*)_TE;_T10=*_TF;if(_T10!=1)goto _TLA0;_T11=loc;_T12=
# 526
# 527
_tag_fat("function declaration with both new- and old-style parameter declarations; ignoring old-style",sizeof(char),93U);_T13=_tag_fat(0U,sizeof(void*),0);
# 525
# 526
Cyc_Warn_warn(_T11,_T12,_T13);_T14=tms;
# 527
# 528
return _T14;_TLA0: _T15=args;{struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*_T5B=(struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*)_T15;_T5A=_T5B->f1;}{struct Cyc_List_List*ids=_T5A;_T16=
# 529
# 530
Cyc_List_length(ids);_T17=Cyc_List_length(tds);if(_T16==_T17)goto _TLA2;{
int(*_T5B)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T18=_T5B;}_T19=loc;_T1A=
_tag_fat("wrong number of parameter declarations in old-style function declaration",sizeof(char),73U);
# 530
# 531
_T18(_T19,_T1A);goto _TLA3;_TLA2: _TLA3: {
# 533
# 534
struct Cyc_List_List*rev_new_params=0;
_TLA7: if(ids!=0)goto _TLA5;else{goto _TLA6;}
_TLA5:{struct Cyc_List_List*tds2=tds;
_TLAB: if(tds2!=0)goto _TLA9;else{goto _TLAA;}
_TLA9: _T1B=tds2;_T1C=_T1B->hd;{struct Cyc_Absyn_Decl*x=(struct Cyc_Absyn_Decl*)_T1C;_T1D=x;{
void*_T5B=_T1D->r;struct Cyc_Absyn_Vardecl*_T5C;_T1E=(int*)_T5B;_T1F=*_T1E;if(_T1F!=0)goto _TLAC;{struct Cyc_Absyn_Var_d_Absyn_Raw_decl_struct*_T5D=(struct Cyc_Absyn_Var_d_Absyn_Raw_decl_struct*)_T5B;_T5C=_T5D->f1;}{struct Cyc_Absyn_Vardecl*vd=_T5C;_T20=vd;_T21=_T20->name;_T22=*_T21;_T23=_T22.f1;_T24=ids;_T25=_T24->hd;_T26=(struct _fat_ptr*)_T25;_T27=
# 540
# 541
Cyc_zstrptrcmp(_T23,_T26);if(_T27==0)goto _TLAE;goto _TLA8;_TLAE: _T28=vd;_T29=_T28->initializer;
# 542
# 543
if(_T29==0)goto _TLB0;{
int(*_T5D)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T2A=_T5D;}_T2B=x;_T2C=_T2B->loc;_T2D=_tag_fat("initializer found in parameter declaration",sizeof(char),43U);_T2A(_T2C,_T2D);goto _TLB1;_TLB0: _TLB1: _T2E=vd;_T2F=_T2E->name;_T30=
Cyc_Absyn_is_qvar_qualified(_T2F);if(!_T30)goto _TLB2;{
int(*_T5D)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T31=_T5D;}_T32=x;_T33=_T32->loc;_T34=_tag_fat("namespaces forbidden in parameter declarations",sizeof(char),47U);_T31(_T33,_T34);goto _TLB3;_TLB2: _TLB3:{struct Cyc_List_List*_T5D=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple8*_T5E=_cycalloc(sizeof(struct _tuple8));_T37=vd;_T38=_T37->name;_T39=*_T38;
_T5E->f0=_T39.f1;_T3A=vd;_T5E->f1=_T3A->tq;_T3B=vd;_T5E->f2=_T3B->type;_T36=(struct _tuple8*)_T5E;}_T5D->hd=_T36;
_T5D->tl=rev_new_params;_T35=(struct Cyc_List_List*)_T5D;}
# 546
# 547
rev_new_params=_T35;goto L;}_TLAC:{
# 549
# 550
int(*_T5D)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T3C=_T5D;}_T3D=x;_T3E=_T3D->loc;_T3F=_tag_fat("nonvariable declaration in parameter type",sizeof(char),42U);_T3C(_T3E,_T3F);;}}_TLA8: _T40=tds2;
# 536
# 537
tds2=_T40->tl;goto _TLAB;_TLAA:
# 552
# 553
 L: if(tds2!=0)goto _TLB4;{
int(*_T5B)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T41=_T5B;}_T42=loc;_T43=ids;_T44=_T43->hd;_T45=(struct _fat_ptr*)_T44;_T46=*_T45;_T47=_tag_fat(" is not given a type",sizeof(char),21U);_T48=Cyc_strconcat(_T46,_T47);_T41(_T42,_T48);goto _TLB5;_TLB4: _TLB5:;}_T49=ids;
# 534
# 535
ids=_T49->tl;goto _TLA7;_TLA6: _T4B=yy;{struct Cyc_List_List*_T5B=_region_malloc(_T4B,0U,sizeof(struct Cyc_List_List));_T4D=yy;{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T5C=_region_malloc(_T4D,0U,sizeof(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct));_T5C->tag=3;_T4F=yy;{struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*_T5D=_region_malloc(_T4F,0U,sizeof(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct));_T5D->tag=1;
# 556
# 557
_T5D->f1=Cyc_List_imp_rev(rev_new_params);
_T5D->f2=0;_T5D->f3=0;_T5D->f4=0;_T5D->f5=0;_T5D->f6=0;_T5D->f7=0;_T5D->f8=0;_T5D->f9=0;_T5D->f10=0;_T4E=(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*)_T5D;}
# 556
# 557
_T5C->f1=(void*)_T4E;_T4C=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T5C;}_T5B->hd=(void*)_T4C;
# 558
# 559
_T5B->tl=0;_T4A=(struct Cyc_List_List*)_T5B;}
# 555
# 556
return _T4A;}};}goto _TL9C;_TL9B: _TL9C: goto _LL4;}_TL99: _LL4: _T51=yy;{struct Cyc_List_List*_T5A=_region_malloc(_T51,0U,sizeof(struct Cyc_List_List));_T52=tms;
# 563
# 564
_T5A->hd=_T52->hd;_T53=yy;_T54=tms;_T55=_T54->tl;_T56=tds;_T57=loc;_T5A->tl=Cyc_Parse_oldstyle2newstyle(_T53,_T55,_T56,_T57);_T50=(struct Cyc_List_List*)_T5A;}return _T50;;}}
# 569
# 570
static struct Cyc_Absyn_Fndecl*Cyc_Parse_make_function(struct _RegionHandle*yy,struct Cyc_Parse_Declaration_spec*dso,struct Cyc_Parse_Declarator d,struct Cyc_List_List*tds,struct Cyc_Absyn_Stmt*body,unsigned loc){struct Cyc_Parse_Declarator _T0;struct Cyc_Parse_Declarator _T1;struct Cyc_Parse_Declarator _T2;struct _RegionHandle*_T3;struct Cyc_Parse_Declarator _T4;struct Cyc_List_List*_T5;struct Cyc_List_List*_T6;unsigned _T7;struct Cyc_Parse_Declaration_spec*_T8;struct Cyc_Parse_Declaration_spec*_T9;struct Cyc_Parse_Declaration_spec*_TA;struct Cyc_Parse_Declaration_spec*_TB;struct Cyc_Parse_Declaration_spec*_TC;int _TD;unsigned _TE;struct _fat_ptr _TF;struct _fat_ptr _T10;struct Cyc_Absyn_Tqual _T11;void*_T12;struct Cyc_List_List*_T13;struct Cyc_Parse_Declarator _T14;struct Cyc_List_List*_T15;unsigned _T16;struct _fat_ptr _T17;struct _fat_ptr _T18;void*_T19;int*_T1A;int _T1B;void*_T1C;struct Cyc_Absyn_FnInfo _T1D;struct Cyc_List_List*_T1E;void*_T1F;struct _tuple8*_T20;struct _tuple8 _T21;struct _fat_ptr*_T22;unsigned _T23;struct _fat_ptr _T24;struct _fat_ptr _T25;struct Cyc_List_List*_T26;void*_T27;struct _tuple8*_T28;struct _fat_ptr*_T29;struct Cyc_List_List*_T2A;struct Cyc_Absyn_FnInfo _T2B;struct Cyc_List_List*_T2C;struct Cyc_List_List*_T2D;struct Cyc_Absyn_Fndecl*_T2E;struct Cyc_Parse_Declarator _T2F;int(*_T30)(unsigned,struct _fat_ptr);unsigned _T31;struct _fat_ptr _T32;
# 573
# 574
if(tds==0)goto _TLB6;{struct Cyc_Parse_Declarator _T33;_T1=d;
_T33.id=_T1.id;_T2=d;_T33.varloc=_T2.varloc;_T3=yy;_T4=d;_T5=_T4.tms;_T6=tds;_T7=loc;_T33.tms=Cyc_Parse_oldstyle2newstyle(_T3,_T5,_T6,_T7);_T0=_T33;}d=_T0;goto _TLB7;_TLB6: _TLB7: {
enum Cyc_Absyn_Scope sc=2U;


@@ 1040,47 1040,47 @@ struct Cyc_Parse_Type_specifier tss=Cyc_Parse_empty_spec(loc);
struct Cyc_Absyn_Tqual tq=Cyc_Absyn_empty_tqual(0U);
int is_inline=0;
struct Cyc_List_List*atts=0;
# 581
# 582
if(dso==0)goto _TLB8;_T8=dso;
tss=_T8->type_specs;_T9=dso;
tq=_T9->tq;_TA=dso;
is_inline=_TA->is_inline;_TB=dso;
atts=_TB->attributes;_TC=dso;{
# 587
# 588
enum Cyc_Parse_Storage_class _T33=_TC->sc;_TD=(int)_T33;switch(_TD){case Cyc_Parse_None_sc: goto _LL0;case Cyc_Parse_Extern_sc:
# 589
# 590
 sc=3U;goto _LL0;case Cyc_Parse_Static_sc:
 sc=0U;goto _LL0;default: _TE=loc;_TF=
_tag_fat("bad storage class on function",sizeof(char),30U);_T10=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_TE,_TF,_T10);goto _LL0;}_LL0:;}goto _TLB9;_TLB8: _TLB9: {
# 594
# 595
void*t=Cyc_Parse_collapse_type_specifiers(tss,loc);_T11=tq;_T12=t;_T13=atts;_T14=d;_T15=_T14.tms;{
struct _tuple14 _T33=Cyc_Parse_apply_tms(_T11,_T12,_T13,_T15);struct Cyc_List_List*_T34;struct Cyc_List_List*_T35;void*_T36;struct Cyc_Absyn_Tqual _T37;_T37=_T33.f0;_T36=_T33.f1;_T35=_T33.f2;_T34=_T33.f3;{struct Cyc_Absyn_Tqual fn_tqual=_T37;void*fn_type=_T36;struct Cyc_List_List*x=_T35;struct Cyc_List_List*out_atts=_T34;
# 599
# 600
if(x==0)goto _TLBB;_T16=loc;_T17=
_tag_fat("bad type params, ignoring",sizeof(char),26U);_T18=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T16,_T17,_T18);goto _TLBC;_TLBB: _TLBC: {struct Cyc_Absyn_FnInfo _T38;_T19=fn_type;_T1A=(int*)_T19;_T1B=*_T1A;if(_T1B!=6)goto _TLBD;_T1C=fn_type;{struct Cyc_Absyn_FnType_Absyn_Type_struct*_T39=(struct Cyc_Absyn_FnType_Absyn_Type_struct*)_T1C;_T38=_T39->f1;}{struct Cyc_Absyn_FnInfo i=_T38;_T1D=i;{
# 604
# 605
struct Cyc_List_List*args2=_T1D.args;_TLC2: if(args2!=0)goto _TLC0;else{goto _TLC1;}
_TLC0: _T1E=args2;_T1F=_T1E->hd;_T20=(struct _tuple8*)_T1F;_T21=*_T20;_T22=_T21.f0;if(_T22!=0)goto _TLC3;_T23=loc;_T24=
_tag_fat("missing argument variable in function prototype",sizeof(char),48U);_T25=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T23,_T24,_T25);_T26=args2;_T27=_T26->hd;_T28=(struct _tuple8*)_T27;{struct _fat_ptr*_T39=_cycalloc(sizeof(struct _fat_ptr));
*_T39=_tag_fat("?",sizeof(char),2U);_T29=(struct _fat_ptr*)_T39;}(*_T28).f0=_T29;goto _TLC4;_TLC3: _TLC4: _T2A=args2;
# 604
# 605
args2=_T2A->tl;goto _TLC2;_TLC1:;}_T2B=i;_T2C=_T2B.attributes;_T2D=out_atts;
# 615
# 616
i.attributes=Cyc_List_append(_T2C,_T2D);{struct Cyc_Absyn_Fndecl*_T39=_cycalloc(sizeof(struct Cyc_Absyn_Fndecl));
_T39->sc=sc;_T39->is_inline=is_inline;_T2F=d;_T39->name=_T2F.id;_T39->body=body;_T39->i=i;
_T39->cached_type=0;_T39->param_vardecls=0;_T39->fn_vardecl=0;
_T39->orig_scope=sc;_T39->escapes=0;_T2E=(struct Cyc_Absyn_Fndecl*)_T39;}
# 616
# 617
return _T2E;}_TLBD:{
# 619
# 620
int(*_T39)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T30=_T39;}_T31=loc;_T32=_tag_fat("declarator is not a function prototype",sizeof(char),39U);_T30(_T31,_T32);;}}}}}}static char _TmpG0[76U]="at most one type may appear within a type specifier \n\t(missing ';' or ','?)";
# 623
# 624
static struct _fat_ptr Cyc_Parse_msg1={(unsigned char*)_TmpG0,(unsigned char*)_TmpG0,(unsigned char*)_TmpG0 + 76U};static char _TmpG1[84U]="sign specifier may appear only once within a type specifier \n\t(missing ';' or ','?)";
# 625
# 626
static struct _fat_ptr Cyc_Parse_msg2={(unsigned char*)_TmpG1,(unsigned char*)_TmpG1,(unsigned char*)_TmpG1 + 84U};
# 632
# 633
static struct Cyc_Parse_Type_specifier Cyc_Parse_combine_specifiers(unsigned loc,struct Cyc_Parse_Type_specifier s1,struct Cyc_Parse_Type_specifier s2){struct Cyc_Parse_Type_specifier _T0;int _T1;struct Cyc_Parse_Type_specifier _T2;int _T3;unsigned _T4;struct _fat_ptr _T5;struct _fat_ptr _T6;struct Cyc_Parse_Type_specifier _T7;int _T8;struct Cyc_Parse_Type_specifier _T9;int _TA;struct Cyc_Parse_Type_specifier _TB;int _TC;unsigned _TD;struct _fat_ptr _TE;struct _fat_ptr _TF;struct Cyc_Parse_Type_specifier _T10;int _T11;struct Cyc_Parse_Type_specifier _T12;int _T13;struct Cyc_Parse_Type_specifier _T14;int _T15;unsigned _T16;struct _fat_ptr _T17;struct _fat_ptr _T18;struct Cyc_Parse_Type_specifier _T19;int _T1A;struct Cyc_Parse_Type_specifier _T1B;int _T1C;struct Cyc_Parse_Type_specifier _T1D;int _T1E;unsigned _T1F;struct _fat_ptr _T20;struct _fat_ptr _T21;struct Cyc_Parse_Type_specifier _T22;int _T23;struct Cyc_Parse_Type_specifier _T24;int _T25;struct Cyc_Parse_Type_specifier _T26;int _T27;struct Cyc_Parse_Type_specifier _T28;int _T29;struct Cyc_Parse_Type_specifier _T2A;int _T2B;struct Cyc_Parse_Type_specifier _T2C;int _T2D;struct Cyc_Parse_Type_specifier _T2E;int _T2F;unsigned _T30;struct _fat_ptr _T31;struct _fat_ptr _T32;int _T33;struct Cyc_Parse_Type_specifier _T34;int _T35;struct Cyc_Parse_Type_specifier _T36;int _T37;int _T38;struct Cyc_Parse_Type_specifier _T39;int _T3A;struct Cyc_Parse_Type_specifier _T3B;int _T3C;struct Cyc_Parse_Type_specifier _T3D;int _T3E;int _T3F;struct Cyc_Parse_Type_specifier _T40;int _T41;struct Cyc_Parse_Type_specifier _T42;struct Cyc_Parse_Type_specifier _T43;int _T44;struct Cyc_Parse_Type_specifier _T45;int _T46;unsigned _T47;struct _fat_ptr _T48;struct _fat_ptr _T49;struct Cyc_Parse_Type_specifier _T4A;int _T4B;struct Cyc_Parse_Type_specifier _T4C;struct Cyc_Parse_Type_specifier _T4D;_T0=s1;_T1=_T0.Signed_spec;
# 635
# 636
if(!_T1)goto _TLC5;_T2=s2;_T3=_T2.Signed_spec;if(!_T3)goto _TLC5;_T4=loc;_T5=Cyc_Parse_msg2;_T6=_tag_fat(0U,sizeof(void*),0);
Cyc_Warn_warn(_T4,_T5,_T6);goto _TLC6;_TLC5: _TLC6: _T7=s2;_T8=_T7.Signed_spec;
s1.Signed_spec=s1.Signed_spec | _T8;_T9=s1;_TA=_T9.Unsigned_spec;


@@ 1094,22 1094,22 @@ if(!_T1C)goto _TLCB;_T1D=s2;_T1E=_T1D.Complex_spec;if(!_T1E)goto _TLCB;_T1F=loc;
_tag_fat("too many occurrences of _Complex or __complex__ in specifiers",sizeof(char),62U);_T21=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T1F,_T20,_T21);goto _TLCC;_TLCB: _TLCC: _T22=s2;_T23=_T22.Complex_spec;
s1.Complex_spec=s1.Complex_spec | _T23;_T24=s1;_T25=_T24.Long_Long_spec;
if(_T25)goto _TLD2;else{goto _TLD1;}_TLD2: _T26=s2;_T27=_T26.Long_Long_spec;if(_T27)goto _TLCF;else{goto _TLD1;}_TLD1: _T28=s1;_T29=_T28.Long_Long_spec;if(_T29)goto _TLD3;else{goto _TLD0;}_TLD3: _T2A=s2;_T2B=_T2A.Long_spec;if(_T2B)goto _TLCF;else{goto _TLD0;}_TLD0: _T2C=s2;_T2D=_T2C.Long_Long_spec;if(_T2D)goto _TLD4;else{goto _TLCD;}_TLD4: _T2E=s1;_T2F=_T2E.Long_spec;if(_T2F)goto _TLCF;else{goto _TLCD;}
# 650
# 651
_TLCF: _T30=loc;_T31=_tag_fat("too many occurrences of long in specifiers",sizeof(char),43U);_T32=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T30,_T31,_T32);goto _TLCE;_TLCD: _TLCE: _T34=s1;_T35=_T34.Long_Long_spec;
# 652
# 653
if(_T35)goto _TLD7;else{goto _TLD8;}_TLD8: _T36=s2;_T37=_T36.Long_Long_spec;if(_T37)goto _TLD7;else{goto _TLD5;}_TLD7: _T33=1;goto _TLD6;_TLD5: _T39=s1;_T3A=_T39.Long_spec;if(!_T3A)goto _TLD9;_T3B=s2;_T38=_T3B.Long_spec;goto _TLDA;_TLD9: _T38=0;_TLDA: _T33=_T38;_TLD6:
# 651
# 652
 s1.Long_Long_spec=_T33;_T3D=s1;_T3E=_T3D.Long_Long_spec;
# 653
# 654
if(_T3E)goto _TLDB;else{goto _TLDD;}_TLDD: _T40=s1;_T41=_T40.Long_spec;if(!_T41)goto _TLDE;_T3F=1;goto _TLDF;_TLDE: _T42=s2;_T3F=_T42.Long_spec;_TLDF: _T3C=_T3F;goto _TLDC;_TLDB: _T3C=0;_TLDC: s1.Long_spec=_T3C;_T43=s1;_T44=_T43.Valid_type_spec;
if(!_T44)goto _TLE0;_T45=s2;_T46=_T45.Valid_type_spec;if(!_T46)goto _TLE0;_T47=loc;_T48=Cyc_Parse_msg1;_T49=_tag_fat(0U,sizeof(void*),0);
Cyc_Warn_err(_T47,_T48,_T49);goto _TLE1;
_TLE0: _T4A=s2;_T4B=_T4A.Valid_type_spec;if(!_T4B)goto _TLE2;_T4C=s2;
s1.Type_spec=_T4C.Type_spec;
s1.Valid_type_spec=1;goto _TLE3;_TLE2: _TLE3: _TLE1: _T4D=s1;
# 660
# 661
return _T4D;}
# 666
# 667
static void*Cyc_Parse_collapse_type_specifiers(struct Cyc_Parse_Type_specifier ts,unsigned loc){struct Cyc_Parse_Type_specifier _T0;int _T1;struct Cyc_Parse_Type_specifier _T2;int _T3;struct Cyc_Parse_Type_specifier _T4;int _T5;struct Cyc_Parse_Type_specifier _T6;int _T7;struct Cyc_Parse_Type_specifier _T8;int _T9;struct Cyc_Parse_Type_specifier _TA;void*_TB;int _TC;struct Cyc_Parse_Type_specifier _TD;int _TE;int _TF;struct Cyc_Parse_Type_specifier _T10;int _T11;struct Cyc_Parse_Type_specifier _T12;int _T13;unsigned _T14;struct _fat_ptr _T15;struct _fat_ptr _T16;struct Cyc_Parse_Type_specifier _T17;int _T18;struct Cyc_Parse_Type_specifier _T19;int _T1A;struct Cyc_Parse_Type_specifier _T1B;int _T1C;struct Cyc_Parse_Type_specifier _T1D;int _T1E;struct Cyc_Parse_Type_specifier _T1F;int _T20;struct Cyc_Parse_Type_specifier _T21;int _T22;unsigned _T23;struct _fat_ptr _T24;struct _fat_ptr _T25;struct Cyc_Parse_Type_specifier _T26;int _T27;struct Cyc_Parse_Type_specifier _T28;int _T29;struct Cyc_Parse_Type_specifier _T2A;int _T2B;int _T2C;int _T2D;int _T2E;struct Cyc_Parse_Type_specifier _T2F;int _T30;void*_T31;unsigned _T32;struct _fat_ptr _T33;struct _fat_ptr _T34;struct Cyc_Parse_Type_specifier _T35;int _T36;void*_T37;void*_T38;void*_T39;void*_T3A;int*_T3B;int _T3C;void*_T3D;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T3E;void*_T3F;int*_T40;unsigned _T41;void*_T42;void*_T43;int _T44;enum Cyc_Absyn_Sign _T45;int _T46;enum Cyc_Absyn_Sign _T47;int _T48;int _T49;enum Cyc_Absyn_Size_of _T4A;int _T4B;enum Cyc_Absyn_Size_of _T4C;int _T4D;struct Cyc_Parse_Type_specifier _T4E;int _T4F;int _T50;struct Cyc_Parse_Type_specifier _T51;int _T52;int _T53;unsigned _T54;struct _fat_ptr _T55;struct _fat_ptr _T56;int _T57;unsigned _T58;struct _fat_ptr _T59;struct _fat_ptr _T5A;void*_T5B;_T0=ts;{
int seen_type=_T0.Valid_type_spec;_T2=ts;_T3=_T2.Signed_spec;
if(!_T3)goto _TLE4;_T1=1;goto _TLE5;_TLE4: _T4=ts;_T1=_T4.Unsigned_spec;_TLE5: {int seen_sign=_T1;_T6=ts;_T7=_T6.Short_spec;


@@ 1117,189 1117,189 @@ if(_T7)goto _TLE8;else{goto _TLE9;}_TLE9: _T8=ts;_T9=_T8.Long_spec;if(_T9)goto _
if(!_TC)goto _TLEA;_TD=ts;_TB=_TD.Type_spec;goto _TLEB;_TLEA: _TB=Cyc_Absyn_void_type;_TLEB: {void*t=_TB;
enum Cyc_Absyn_Size_of sz=2U;
enum Cyc_Absyn_Sign sgn=0U;_TE=seen_size;
# 674
# 675
if(_TE)goto _TLEE;else{goto _TLEF;}_TLEF: _TF=seen_sign;if(_TF)goto _TLEE;else{goto _TLEC;}
_TLEE: _T10=ts;_T11=_T10.Signed_spec;if(!_T11)goto _TLF0;_T12=ts;_T13=_T12.Unsigned_spec;if(!_T13)goto _TLF0;_T14=loc;_T15=Cyc_Parse_msg2;_T16=_tag_fat(0U,sizeof(void*),0);
Cyc_Warn_err(_T14,_T15,_T16);goto _TLF1;_TLF0: _TLF1: _T17=ts;_T18=_T17.Unsigned_spec;
if(!_T18)goto _TLF2;sgn=1U;goto _TLF3;_TLF2: _TLF3: _T19=ts;_T1A=_T19.Short_spec;
if(_T1A)goto _TLF8;else{goto _TLF7;}_TLF8: _T1B=ts;_T1C=_T1B.Long_spec;if(_T1C)goto _TLF6;else{goto _TLF9;}_TLF9: _T1D=ts;_T1E=_T1D.Long_Long_spec;if(_T1E)goto _TLF6;else{goto _TLF7;}_TLF7: _T1F=ts;_T20=_T1F.Long_spec;if(_T20)goto _TLFA;else{goto _TLF4;}_TLFA: _T21=ts;_T22=_T21.Long_Long_spec;if(_T22)goto _TLF6;else{goto _TLF4;}
# 680
# 681
_TLF6: _T23=loc;_T24=Cyc_Parse_msg2;_T25=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T23,_T24,_T25);goto _TLF5;_TLF4: _TLF5: _T26=ts;_T27=_T26.Short_spec;
if(!_T27)goto _TLFB;sz=1U;goto _TLFC;_TLFB: _TLFC: _T28=ts;_T29=_T28.Long_spec;
if(!_T29)goto _TLFD;sz=3U;goto _TLFE;_TLFD: _TLFE: _T2A=ts;_T2B=_T2A.Long_Long_spec;
if(!_T2B)goto _TLFF;sz=4U;goto _TL100;_TLFF: _TL100: goto _TLED;_TLEC: _TLED: _T2C=seen_type;
# 687
# 688
if(_T2C)goto _TL101;else{goto _TL103;}
_TL103: _T2D=seen_sign;if(_T2D)goto _TL104;else{goto _TL106;}_TL106: _T2E=seen_size;if(_T2E)goto _TL104;else{goto _TL107;}
_TL107: _T2F=ts;_T30=_T2F.Complex_spec;if(!_T30)goto _TL108;_T31=
Cyc_Absyn_complex_type(Cyc_Absyn_double_type);return _T31;_TL108: _T32=loc;_T33=
_tag_fat("missing type within specifier",sizeof(char),30U);_T34=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T32,_T33,_T34);goto _TL105;_TL104: _TL105: _T35=ts;_T36=_T35.Complex_spec;
# 693
# 694
if(!_T36)goto _TL10A;_T37=
Cyc_Absyn_int_type(sgn,sz);_T38=Cyc_Absyn_complex_type(_T37);return _T38;
_TL10A: _T39=Cyc_Absyn_int_type(sgn,sz);return _T39;_TL101:{enum Cyc_Absyn_Size_of _T5C;enum Cyc_Absyn_Sign _T5D;_T3A=t;_T3B=(int*)_T3A;_T3C=*_T3B;if(_T3C!=0)goto _TL10C;_T3D=t;_T3E=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T3D;_T3F=_T3E->f1;_T40=(int*)_T3F;_T41=*_T40;switch(_T41){case 1: _T42=t;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_T5E=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T42;_T43=_T5E->f1;{struct Cyc_Absyn_IntCon_Absyn_TyCon_struct*_T5F=(struct Cyc_Absyn_IntCon_Absyn_TyCon_struct*)_T43;_T5D=_T5F->f1;_T5C=_T5F->f2;}}{enum Cyc_Absyn_Sign sgn2=_T5D;enum Cyc_Absyn_Size_of sz2=_T5C;_T44=seen_sign;
# 699
# 700
if(!_T44)goto _TL10F;_T45=sgn2;_T46=(int)_T45;_T47=sgn;_T48=(int)_T47;if(_T46==_T48)goto _TL10F;
sgn2=sgn;
t=Cyc_Absyn_int_type(sgn,sz2);goto _TL110;_TL10F: _TL110: _T49=seen_size;
# 703
# 704
if(!_T49)goto _TL111;_T4A=sz2;_T4B=(int)_T4A;_T4C=sz;_T4D=(int)_T4C;if(_T4B==_T4D)goto _TL111;
t=Cyc_Absyn_int_type(sgn2,sz);goto _TL112;_TL111: _TL112: _T4E=ts;_T4F=_T4E.Complex_spec;
if(!_T4F)goto _TL113;
t=Cyc_Absyn_complex_type(t);goto _TL114;_TL113: _TL114: goto _LL0;}case 2: _T50=seen_size;
# 709
# 710
if(!_T50)goto _TL115;
t=Cyc_Absyn_long_double_type;goto _TL116;_TL115: _TL116: _T51=ts;_T52=_T51.Complex_spec;
if(!_T52)goto _TL117;
t=Cyc_Absyn_complex_type(t);goto _TL118;_TL117: _TL118: goto _LL0;default: goto _LL5;}goto _TL10D;_TL10C: _LL5: _T53=seen_sign;
# 715
# 716
if(!_T53)goto _TL119;_T54=loc;_T55=
_tag_fat("sign specification on non-integral type",sizeof(char),40U);_T56=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T54,_T55,_T56);goto _TL11A;_TL119: _TL11A: _T57=seen_size;
if(!_T57)goto _TL11B;_T58=loc;_T59=
_tag_fat("size qualifier on non-integral type",sizeof(char),36U);_T5A=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T58,_T59,_T5A);goto _TL11C;_TL11B: _TL11C: goto _LL0;_TL10D: _LL0:;}_T5B=t;
# 721
# 722
return _T5B;}}}}}
# 724
# 725
static struct Cyc_List_List*Cyc_Parse_apply_tmss(struct _RegionHandle*r,struct Cyc_Absyn_Tqual tq,void*t,struct _tuple13*ds,struct Cyc_List_List*shared_atts){struct _tuple13*_T0;struct Cyc_Parse_Declarator _T1;struct Cyc_Parse_Declarator _T2;struct Cyc_Absyn_Tqual _T3;void*_T4;struct Cyc_List_List*_T5;struct Cyc_Parse_Declarator _T6;struct Cyc_List_List*_T7;struct Cyc_List_List*_T8;struct _tuple13*_T9;struct _tuple13*_TA;struct _RegionHandle*_TB;struct Cyc_Absyn_Tqual _TC;void*_TD;struct _tuple13*_TE;struct _tuple13*_TF;struct Cyc_List_List*_T10;struct Cyc_List_List*_T11;struct _RegionHandle*_T12;struct _tuple15*_T13;struct _RegionHandle*_T14;
# 728
# 729
if(ds!=0)goto _TL11D;return 0;_TL11D: _T0=ds;{
struct Cyc_Parse_Declarator d=_T0->hd;_T1=d;{
struct _tuple0*q=_T1.id;_T2=d;{
unsigned varloc=_T2.varloc;_T3=tq;_T4=t;_T5=shared_atts;_T6=d;_T7=_T6.tms;{
struct _tuple14 _T15=Cyc_Parse_apply_tms(_T3,_T4,_T5,_T7);struct Cyc_List_List*_T16;struct Cyc_List_List*_T17;void*_T18;struct Cyc_Absyn_Tqual _T19;_T19=_T15.f0;_T18=_T15.f1;_T17=_T15.f2;_T16=_T15.f3;{struct Cyc_Absyn_Tqual tq2=_T19;void*new_typ=_T18;struct Cyc_List_List*tvs=_T17;struct Cyc_List_List*atts=_T16;_T9=ds;_TA=_T9->tl;
# 735
# 736
if(_TA!=0)goto _TL11F;_T8=0;goto _TL120;_TL11F: _TB=r;_TC=tq;_TD=Cyc_Tcutil_copy_type(t);_TE=ds;_TF=_TE->tl;_T10=shared_atts;_T8=Cyc_Parse_apply_tmss(_TB,_TC,_TD,_TF,_T10);_TL120: {struct Cyc_List_List*tl=_T8;_T12=r;{struct Cyc_List_List*_T1A=_region_malloc(_T12,0U,sizeof(struct Cyc_List_List));_T14=r;{struct _tuple15*_T1B=_region_malloc(_T14,0U,sizeof(struct _tuple15));
_T1B->f0=varloc;_T1B->f1=q;_T1B->f2=tq2;_T1B->f3=new_typ;_T1B->f4=tvs;_T1B->f5=atts;_T13=(struct _tuple15*)_T1B;}_T1A->hd=_T13;_T1A->tl=tl;_T11=(struct Cyc_List_List*)_T1A;}return _T11;}}}}}}}
# 739
# 740
static struct _tuple14 Cyc_Parse_apply_tms(struct Cyc_Absyn_Tqual tq,void*t,struct Cyc_List_List*atts,struct Cyc_List_List*tms){struct _tuple14 _T0;struct Cyc_List_List*_T1;int*_T2;unsigned _T3;void*_T4;struct Cyc_Absyn_Tqual _T5;void*_T6;struct Cyc_List_List*_T7;struct Cyc_List_List*_T8;struct Cyc_List_List*_T9;struct _tuple14 _TA;void*_TB;struct Cyc_Absyn_Tqual _TC;void*_TD;struct Cyc_List_List*_TE;struct Cyc_List_List*_TF;struct Cyc_List_List*_T10;struct _tuple14 _T11;void*_T12;void*_T13;int*_T14;int _T15;void*_T16;void*_T17;struct Cyc_List_List*_T18;void*_T19;int _T1A;struct Cyc_List_List*_T1B;struct Cyc_List_List*_T1C;struct Cyc_List_List*_T1D;struct Cyc_List_List*_T1E;struct Cyc_List_List*_T1F;struct Cyc_List_List*_T20;struct Cyc_List_List*_T21;struct Cyc_List_List*_T22;struct Cyc_List_List*_T23;int*_T24;int _T25;struct Cyc_List_List*_T26;int _T27;struct Cyc_List_List*_T28;struct Cyc_List_List*_T29;struct Cyc_List_List*_T2A;void*_T2B;struct _tuple8*_T2C;struct _tuple8 _T2D;struct _fat_ptr*_T2E;struct Cyc_List_List*_T2F;void*_T30;struct _tuple8*_T31;struct _tuple8 _T32;void*_T33;void*_T34;struct Cyc_List_List*_T35;void*_T36;void**_T37;void**_T38;int*_T39;int _T3A;struct Cyc_Absyn_ArrayInfo _T3B;struct Cyc_Absyn_ArrayInfo _T3C;struct Cyc_Absyn_ArrayInfo _T3D;struct Cyc_Absyn_ArrayInfo _T3E;struct Cyc_Absyn_ArrayInfo _T3F;struct _tuple0*_T40;struct _tuple0*_T41;struct _tuple0*_T42;struct Cyc_List_List*_T43;struct _fat_ptr _T44;struct Cyc_List_List*_T45;struct Cyc_List_List*_T46;struct Cyc_List_List*_T47;void*_T48;struct Cyc_List_List*_T49;struct Cyc_Absyn_Exp*_T4A;struct Cyc_List_List*_T4B;void*_T4C;struct Cyc_Absyn_Exp*_T4D;struct Cyc_List_List*_T4E;struct Cyc_List_List*_T4F;void*_T50;void**_T51;void**_T52;struct Cyc_List_List*_T53;void**_T54;void*_T55;void**_T56;void**_T57;void*_T58;struct Cyc_List_List*_T59;struct Cyc_Absyn_Tqual _T5A;unsigned _T5B;struct Cyc_Absyn_Tqual _T5C;void*_T5D;struct Cyc_List_List*_T5E;struct Cyc_List_List*_T5F;struct Cyc_List_List*_T60;struct _tuple14 _T61;void*_T62;int(*_T63)(unsigned,struct _fat_ptr);unsigned _T64;struct _fat_ptr _T65;struct Cyc_List_List*_T66;struct Cyc_List_List*_T67;struct _tuple14 _T68;int(*_T69)(unsigned,struct _fat_ptr);unsigned _T6A;struct _fat_ptr _T6B;struct Cyc_Absyn_Tqual _T6C;struct Cyc_Absyn_PtrInfo _T6D;void*_T6E;struct Cyc_List_List*_T6F;struct Cyc_List_List*_T70;struct Cyc_List_List*_T71;struct _tuple14 _T72;struct Cyc_Absyn_Tqual _T73;void*_T74;struct Cyc_List_List*_T75;struct Cyc_List_List*_T76;struct Cyc_List_List*_T77;struct _tuple14 _T78;
# 742
# 743
if(tms!=0)goto _TL121;{struct _tuple14 _T79;_T79.f0=tq;_T79.f1=t;_T79.f2=0;_T79.f3=atts;_T0=_T79;}return _T0;_TL121: _T1=tms;{
void*_T79=_T1->hd;struct Cyc_Absyn_Tqual _T7A;struct Cyc_Absyn_PtrAtts _T7B;struct Cyc_List_List*_T7C;void*_T7D;unsigned _T7E;void*_T7F;_T2=(int*)_T79;_T3=*_T2;switch(_T3){case 0:{struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct*_T80=(struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct*)_T79;_T4=_T80->f1;_T7F=(void*)_T4;_T7E=_T80->f2;}{void*zeroterm=_T7F;unsigned ztloc=_T7E;_T5=
# 745
# 746
Cyc_Absyn_empty_tqual(0U);_T6=
Cyc_Absyn_array_type(t,tq,0,zeroterm,ztloc);_T7=atts;_T8=tms;_T9=_T8->tl;_TA=
# 745
# 746
Cyc_Parse_apply_tms(_T5,_T6,_T7,_T9);return _TA;}case 1:{struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct*_T80=(struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct*)_T79;_T7F=_T80->f1;_TB=_T80->f2;_T7D=(void*)_TB;_T7E=_T80->f3;}{struct Cyc_Absyn_Exp*e=_T7F;void*zeroterm=_T7D;unsigned ztloc=_T7E;_TC=
# 748
# 749
Cyc_Absyn_empty_tqual(0U);_TD=
Cyc_Absyn_array_type(t,tq,e,zeroterm,ztloc);_TE=atts;_TF=tms;_T10=_TF->tl;_T11=
# 748
# 749
Cyc_Parse_apply_tms(_TC,_TD,_TE,_T10);return _T11;}case 3:{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T80=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T79;_T12=_T80->f1;_T7F=(void*)_T12;}{void*args=_T7F;unsigned _T80;struct Cyc_Absyn_Exp*_T81;struct Cyc_Absyn_Exp*_T82;struct Cyc_Absyn_Exp*_T83;struct Cyc_Absyn_Exp*_T84;struct Cyc_List_List*_T85;struct Cyc_List_List*_T86;void*_T87;struct Cyc_Absyn_VarargInfo*_T88;int _T89;struct Cyc_List_List*_T8A;_T13=args;_T14=(int*)_T13;_T15=*_T14;if(_T15!=1)goto _TL124;_T16=args;{struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*_T8B=(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*)_T16;_T8A=_T8B->f1;_T89=_T8B->f2;_T88=_T8B->f3;_T17=_T8B->f4;_T87=(void*)_T17;_T86=_T8B->f5;_T85=_T8B->f6;_T84=_T8B->f7;_T83=_T8B->f8;_T82=_T8B->f9;_T81=_T8B->f10;}{struct Cyc_List_List*args2=_T8A;int c_vararg=_T89;struct Cyc_Absyn_VarargInfo*cyc_vararg=_T88;void*eff=_T87;struct Cyc_List_List*effc=_T86;struct Cyc_List_List*qb=_T85;struct Cyc_Absyn_Exp*chks=_T84;struct Cyc_Absyn_Exp*req=_T83;struct Cyc_Absyn_Exp*ens=_T82;struct Cyc_Absyn_Exp*thrw=_T81;
# 753
# 754
struct Cyc_List_List*typvars=0;
# 755
# 756
struct Cyc_List_List*fn_atts=0;struct Cyc_List_List*new_atts=0;{
struct Cyc_List_List*as=atts;_TL129: if(as!=0)goto _TL127;else{goto _TL128;}
_TL127: _T18=as;_T19=_T18->hd;_T1A=Cyc_Atts_fntype_att(_T19);if(!_T1A)goto _TL12A;{struct Cyc_List_List*_T8B=_cycalloc(sizeof(struct Cyc_List_List));_T1C=as;
_T8B->hd=_T1C->hd;_T8B->tl=fn_atts;_T1B=(struct Cyc_List_List*)_T8B;}fn_atts=_T1B;goto _TL12B;
# 760
# 761
_TL12A:{struct Cyc_List_List*_T8B=_cycalloc(sizeof(struct Cyc_List_List));_T1E=as;_T8B->hd=_T1E->hd;_T8B->tl=new_atts;_T1D=(struct Cyc_List_List*)_T8B;}new_atts=_T1D;_TL12B: _T1F=as;
# 756
# 757
as=_T1F->tl;goto _TL129;_TL128:;}_T20=tms;_T21=_T20->tl;
# 762
# 763
if(_T21==0)goto _TL12C;_T22=tms;_T23=_T22->tl;{
void*_T8B=_T23->hd;struct Cyc_List_List*_T8C;_T24=(int*)_T8B;_T25=*_T24;if(_T25!=4)goto _TL12E;{struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*_T8D=(struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*)_T8B;_T8C=_T8D->f1;}{struct Cyc_List_List*ts=_T8C;
# 765
# 766
typvars=ts;_T26=tms;
tms=_T26->tl;goto _LL12;}_TL12E: goto _LL12;_LL12:;}goto _TL12D;_TL12C: _TL12D: _T27=c_vararg;
# 771
# 772
if(_T27)goto _TL130;else{goto _TL132;}_TL132: if(cyc_vararg!=0)goto _TL130;if(args2==0)goto _TL130;_T28=args2;_T29=_T28->tl;if(_T29!=0)goto _TL130;_T2A=args2;_T2B=_T2A->hd;_T2C=(struct _tuple8*)_T2B;_T2D=*_T2C;_T2E=_T2D.f0;if(_T2E!=0)goto _TL130;_T2F=args2;_T30=_T2F->hd;_T31=(struct _tuple8*)_T30;_T32=*_T31;_T33=_T32.f2;_T34=Cyc_Absyn_void_type;if(_T33!=_T34)goto _TL130;
# 776
# 777
args2=0;goto _TL131;_TL130: _TL131: {
# 781
# 782
struct Cyc_List_List*new_requires=0;{
struct Cyc_List_List*a=args2;_TL136: if(a!=0)goto _TL134;else{goto _TL135;}
_TL134: _T35=a;_T36=_T35->hd;{struct _tuple8*_T8B=(struct _tuple8*)_T36;void*_T8C;struct Cyc_Absyn_Tqual _T8D;struct _fat_ptr*_T8E;{struct _tuple8 _T8F=*_T8B;_T8E=_T8F.f0;_T8D=_T8F.f1;_T37=& _T8B->f2;_T8C=(void**)_T37;}{struct _fat_ptr*vopt=_T8E;struct Cyc_Absyn_Tqual tq=_T8D;void**t=(void**)_T8C;_T38=t;{
void*_T8F=*_T38;unsigned _T90;void*_T91;struct Cyc_Absyn_Exp*_T92;struct Cyc_Absyn_Tqual _T93;void*_T94;_T39=(int*)_T8F;_T3A=*_T39;if(_T3A!=5)goto _TL137;{struct Cyc_Absyn_ArrayType_Absyn_Type_struct*_T95=(struct Cyc_Absyn_ArrayType_Absyn_Type_struct*)_T8F;_T3B=_T95->f1;_T94=_T3B.elt_type;_T3C=_T95->f1;_T93=_T3C.tq;_T3D=_T95->f1;_T92=_T3D.num_elts;_T3E=_T95->f1;_T91=_T3E.zero_term;_T3F=_T95->f1;_T90=_T3F.zt_loc;}{void*et=_T94;struct Cyc_Absyn_Tqual tq=_T93;struct Cyc_Absyn_Exp*neltsopt=_T92;void*zt=_T91;unsigned ztloc=_T90;
# 786
# 787
if(neltsopt==0)goto _TL139;if(vopt==0)goto _TL139;{
struct _tuple0*v;v=_cycalloc(sizeof(struct _tuple0));_T40=v;_T40->f0.Loc_n.tag=4U;_T41=v;_T41->f0.Loc_n.val=0;_T42=v;_T42->f1=vopt;{
struct Cyc_Absyn_Exp*nelts=Cyc_Absyn_copy_exp(neltsopt);{struct Cyc_Absyn_Exp*_T95[1];_T95[0]=
Cyc_Absyn_var_exp(v,0U);_T44=_tag_fat(_T95,sizeof(struct Cyc_Absyn_Exp*),1);_T43=Cyc_List_list(_T44);}{struct Cyc_Absyn_Exp*e2=Cyc_Absyn_primop_exp(18U,_T43,0U);
struct Cyc_Absyn_Exp*new_req=Cyc_Absyn_lte_exp(nelts,e2,0U);{struct Cyc_List_List*_T95=_cycalloc(sizeof(struct Cyc_List_List));
_T95->hd=new_req;_T95->tl=new_requires;_T45=(struct Cyc_List_List*)_T95;}new_requires=_T45;}}}goto _TL13A;_TL139: _TL13A: goto _LL1A;}_TL137: goto _LL1A;_LL1A:;}}}_T46=a;
# 782
# 783
a=_T46->tl;goto _TL136;_TL135:;}
# 797
# 798
if(new_requires==0)goto _TL13B;{
struct Cyc_Absyn_Exp*r;
if(req==0)goto _TL13D;
r=req;goto _TL13E;
# 802
# 803
_TL13D: _T47=new_requires;_T48=_T47->hd;r=(struct Cyc_Absyn_Exp*)_T48;_T49=new_requires;
new_requires=_T49->tl;_TL13E:
# 805
# 806
 _TL142: if(new_requires!=0)goto _TL140;else{goto _TL141;}
_TL140: _T4A=r;_T4B=new_requires;_T4C=_T4B->hd;_T4D=(struct Cyc_Absyn_Exp*)_T4C;r=Cyc_Absyn_and_exp(_T4A,_T4D,0U);_T4E=new_requires;
# 805
# 806
new_requires=_T4E->tl;goto _TL142;_TL141:
# 807
# 808
 req=r;}goto _TL13C;_TL13B: _TL13C: {
# 811
# 812
struct Cyc_List_List*tags=Cyc_Parse_get_arg_tags(args2);
# 813
# 814
if(tags==0)goto _TL143;
t=Cyc_Parse_substitute_tags(tags,t);goto _TL144;_TL143: _TL144:
 t=Cyc_Parse_array2ptr(t,0);{
# 818
# 819
struct Cyc_List_List*a=args2;_TL148: if(a!=0)goto _TL146;else{goto _TL147;}
_TL146: _T4F=a;_T50=_T4F->hd;{struct _tuple8*_T8B=(struct _tuple8*)_T50;void*_T8C;struct Cyc_Absyn_Tqual _T8D;struct _fat_ptr*_T8E;{struct _tuple8 _T8F=*_T8B;_T8E=_T8F.f0;_T8D=_T8F.f1;_T51=& _T8B->f2;_T8C=(void**)_T51;}{struct _fat_ptr*vopt=_T8E;struct Cyc_Absyn_Tqual tq=_T8D;void**t=(void**)_T8C;
if(tags==0)goto _TL149;_T52=t;_T53=tags;_T54=t;_T55=*_T54;
*_T52=Cyc_Parse_substitute_tags(_T53,_T55);goto _TL14A;_TL149: _TL14A: _T56=t;_T57=t;_T58=*_T57;
*_T56=Cyc_Parse_array2ptr(_T58,1);}}_T59=a;
# 818
# 819
a=_T59->tl;goto _TL148;_TL147:;}_T5A=tq;_T5B=_T5A.loc;_T5C=
# 830
# 831
Cyc_Absyn_empty_tqual(_T5B);_T5D=
Cyc_Absyn_function_type(typvars,eff,tq,t,args2,c_vararg,cyc_vararg,effc,qb,fn_atts,chks,req,ens,thrw);_T5E=new_atts;_T5F=
# 835
# 836
_check_null(tms);_T60=_T5F->tl;_T61=
# 830
# 831
Cyc_Parse_apply_tms(_T5C,_T5D,_T5E,_T60);return _T61;}}}_TL124: _T62=args;{struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*_T8B=(struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*)_T62;_T80=_T8B->f2;}{unsigned loc=_T80;{
# 837
# 838
int(*_T8B)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T63=_T8B;}_T64=loc;_T65=_tag_fat("function declaration without parameter types",sizeof(char),45U);_T63(_T64,_T65);};}case 4:{struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*_T80=(struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*)_T79;_T7C=_T80->f1;_T7E=_T80->f2;}{struct Cyc_List_List*ts=_T7C;unsigned loc=_T7E;_T66=tms;_T67=_T66->tl;
# 844
# 845
if(_T67!=0)goto _TL14B;{struct _tuple14 _T80;
_T80.f0=tq;_T80.f1=t;_T80.f2=ts;_T80.f3=atts;_T68=_T80;}return _T68;_TL14B:{
# 849
# 850
int(*_T80)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T69=_T80;}_T6A=loc;_T6B=
_tag_fat("type parameters must appear before function arguments in declarator",sizeof(char),68U);
# 849
# 850
_T69(_T6A,_T6B);}case 2:{struct Cyc_Absyn_Pointer_mod_Absyn_Type_modifier_struct*_T80=(struct Cyc_Absyn_Pointer_mod_Absyn_Type_modifier_struct*)_T79;_T7B=_T80->f1;_T7A=_T80->f2;}{struct Cyc_Absyn_PtrAtts ptratts=_T7B;struct Cyc_Absyn_Tqual tq2=_T7A;_T6C=tq2;{struct Cyc_Absyn_PtrInfo _T80;
# 852
# 853
_T80.elt_type=t;_T80.elt_tq=tq;_T80.ptr_atts=ptratts;_T6D=_T80;}_T6E=Cyc_Absyn_pointer_type(_T6D);_T6F=atts;_T70=tms;_T71=_T70->tl;_T72=Cyc_Parse_apply_tms(_T6C,_T6E,_T6F,_T71);return _T72;}default:{struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*_T80=(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*)_T79;_T7E=_T80->f1;_T7C=_T80->f2;}{unsigned loc=_T7E;struct Cyc_List_List*atts2=_T7C;_T73=tq;_T74=t;_T75=
# 857
# 858
Cyc_List_append(atts,atts2);_T76=tms;_T77=_T76->tl;_T78=Cyc_Parse_apply_tms(_T73,_T74,_T75,_T77);return _T78;}};}}
# 863
# 864
void*Cyc_Parse_speclist2typ(struct Cyc_Parse_Type_specifier tss,unsigned loc){void*_T0;_T0=
Cyc_Parse_collapse_type_specifiers(tss,loc);return _T0;}
# 872
# 873
static struct Cyc_Absyn_Decl*Cyc_Parse_v_typ_to_typedef(unsigned loc,struct _tuple15*t){struct _tuple15*_T0;void*_T1;int*_T2;int _T3;void*_T4;struct Cyc_Core_Opt*_T5;struct Cyc_Core_Opt*_T6;struct Cyc_Absyn_Typedef_d_Absyn_Raw_decl_struct*_T7;struct Cyc_Absyn_Typedefdecl*_T8;void*_T9;unsigned _TA;struct Cyc_Absyn_Decl*_TB;struct Cyc_List_List*_TC;struct Cyc_List_List*_TD;void*_TE;struct Cyc_Absyn_Tqual _TF;struct _tuple0*_T10;unsigned _T11;_T0=t;{struct _tuple15 _T12=*_T0;_T11=_T12.f0;_T10=_T12.f1;_TF=_T12.f2;_TE=_T12.f3;_TD=_T12.f4;_TC=_T12.f5;}{unsigned varloc=_T11;struct _tuple0*x=_T10;struct Cyc_Absyn_Tqual tq=_TF;void*typ=_TE;struct Cyc_List_List*tvs=_TD;struct Cyc_List_List*atts=_TC;
# 875
# 876
Cyc_Lex_register_typedef(x);{
# 877
# 878
struct Cyc_Core_Opt*kind;
void*type;{struct Cyc_Core_Opt*_T12;_T1=typ;_T2=(int*)_T1;_T3=*_T2;if(_T3!=1)goto _TL14D;_T4=typ;{struct Cyc_Absyn_Evar_Absyn_Type_struct*_T13=(struct Cyc_Absyn_Evar_Absyn_Type_struct*)_T4;_T12=_T13->f1;}{struct Cyc_Core_Opt*kopt=_T12;
# 881
# 882
type=0;
if(kopt!=0)goto _TL14F;_T6=& Cyc_Kinds_bko;_T5=(struct Cyc_Core_Opt*)_T6;goto _TL150;_TL14F: _T5=kopt;_TL150: kind=_T5;goto _LL3;}_TL14D:
# 884
# 885
 kind=0;type=typ;goto _LL3;_LL3:;}{struct Cyc_Absyn_Typedef_d_Absyn_Raw_decl_struct*_T12=_cycalloc(sizeof(struct Cyc_Absyn_Typedef_d_Absyn_Raw_decl_struct));_T12->tag=8;{struct Cyc_Absyn_Typedefdecl*_T13=_cycalloc(sizeof(struct Cyc_Absyn_Typedefdecl));
# 886
# 887
_T13->name=x;_T13->tvs=tvs;_T13->kind=kind;
_T13->defn=type;_T13->atts=atts;
_T13->tq=tq;_T13->extern_c=0;_T8=(struct Cyc_Absyn_Typedefdecl*)_T13;}
# 886
# 887
_T12->f1=_T8;_T7=(struct Cyc_Absyn_Typedef_d_Absyn_Raw_decl_struct*)_T12;}_T9=(void*)_T7;_TA=loc;_TB=Cyc_Absyn_new_decl(_T9,_TA);return _TB;}}}
# 893
# 894
static struct Cyc_Absyn_Stmt*Cyc_Parse_flatten_decl(struct Cyc_Absyn_Decl*d,struct Cyc_Absyn_Stmt*s){struct Cyc_Absyn_Decl_s_Absyn_Raw_stmt_struct*_T0;void*_T1;struct Cyc_Absyn_Decl*_T2;unsigned _T3;struct Cyc_Absyn_Stmt*_T4;{struct Cyc_Absyn_Decl_s_Absyn_Raw_stmt_struct*_T5=_cycalloc(sizeof(struct Cyc_Absyn_Decl_s_Absyn_Raw_stmt_struct));_T5->tag=12;
_T5->f1=d;_T5->f2=s;_T0=(struct Cyc_Absyn_Decl_s_Absyn_Raw_stmt_struct*)_T5;}_T1=(void*)_T0;_T2=d;_T3=_T2->loc;_T4=Cyc_Absyn_new_stmt(_T1,_T3);return _T4;}
# 897
# 898
static struct Cyc_Absyn_Stmt*Cyc_Parse_flatten_declarations(struct Cyc_List_List*ds,struct Cyc_Absyn_Stmt*s){struct Cyc_Absyn_Stmt*(*_T0)(struct Cyc_Absyn_Stmt*(*)(struct Cyc_Absyn_Decl*,struct Cyc_Absyn_Stmt*),struct Cyc_List_List*,struct Cyc_Absyn_Stmt*);void*(*_T1)(void*(*)(void*,void*),struct Cyc_List_List*,void*);struct Cyc_List_List*_T2;struct Cyc_Absyn_Stmt*_T3;struct Cyc_Absyn_Stmt*_T4;_T1=Cyc_List_fold_right;{
struct Cyc_Absyn_Stmt*(*_T5)(struct Cyc_Absyn_Stmt*(*)(struct Cyc_Absyn_Decl*,struct Cyc_Absyn_Stmt*),struct Cyc_List_List*,struct Cyc_Absyn_Stmt*)=(struct Cyc_Absyn_Stmt*(*)(struct Cyc_Absyn_Stmt*(*)(struct Cyc_Absyn_Decl*,struct Cyc_Absyn_Stmt*),struct Cyc_List_List*,struct Cyc_Absyn_Stmt*))_T1;_T0=_T5;}_T2=ds;_T3=s;_T4=_T0(Cyc_Parse_flatten_decl,_T2,_T3);return _T4;}
# 901
# 902
static void Cyc_Parse_decl_split(struct _RegionHandle*r,struct _tuple11*ds,struct _tuple13**decls,struct Cyc_List_List**es,struct Cyc_List_List**rs){struct _tuple11*_T0;struct _tuple13*_T1;struct _RegionHandle*_T2;struct Cyc_List_List*_T3;struct _RegionHandle*_T4;struct Cyc_List_List*_T5;struct _RegionHandle*_T6;struct _tuple11*_T7;struct Cyc_List_List**_T8;struct Cyc_List_List**_T9;struct _tuple13**_TA;struct _tuple13*(*_TB)(struct _tuple13*);
# 905
# 906
struct _tuple13*declarators=0;
struct Cyc_List_List*exprs=0;
struct Cyc_List_List*renames=0;


@@ 1308,19 1308,19 @@ _TL152: _T0=ds;{struct _tuple12 _TC=_T0->hd;struct Cyc_Absyn_Exp*_TD;struct Cyc_
_T10->tl=declarators;_T10->hd=d;_T1=(struct _tuple13*)_T10;}declarators=_T1;_T4=r;{struct Cyc_List_List*_T10=_region_malloc(_T4,0U,sizeof(struct Cyc_List_List));
_T10->hd=e;_T10->tl=exprs;_T3=(struct Cyc_List_List*)_T10;}exprs=_T3;_T6=r;{struct Cyc_List_List*_T10=_region_malloc(_T6,0U,sizeof(struct Cyc_List_List));
_T10->hd=rename;_T10->tl=renames;_T5=(struct Cyc_List_List*)_T10;}renames=_T5;}}_T7=ds;
# 908
# 909
ds=_T7->tl;goto _TL154;_TL153: _T8=es;
# 914
# 915
*_T8=Cyc_List_imp_rev(exprs);_T9=rs;
*_T9=Cyc_List_imp_rev(renames);_TA=decls;{
struct _tuple13*(*_TC)(struct _tuple13*)=(struct _tuple13*(*)(struct _tuple13*))Cyc_Parse_flat_imp_rev;_TB=_TC;}*_TA=_TB(declarators);}
# 924
# 925
static struct Cyc_List_List*Cyc_Parse_make_declarations(struct Cyc_Parse_Declaration_spec ds,struct _tuple11*ids,unsigned tqual_loc,unsigned loc){struct Cyc_Parse_Declaration_spec _T0;struct Cyc_Parse_Declaration_spec _T1;struct Cyc_Parse_Declaration_spec _T2;struct Cyc_Absyn_Tqual _T3;unsigned _T4;struct Cyc_Parse_Declaration_spec _T5;int _T6;unsigned _T7;struct _fat_ptr _T8;struct _fat_ptr _T9;struct Cyc_Parse_Declaration_spec _TA;int _TB;enum Cyc_Absyn_Scope _TC;int _TD;struct _RegionHandle*_TE;struct _tuple11*_TF;struct _tuple13**_T10;struct Cyc_List_List**_T11;struct Cyc_List_List**_T12;struct Cyc_List_List*_T13;void*_T14;struct Cyc_Absyn_Exp*_T15;struct Cyc_List_List*_T16;void*_T17;int*_T18;unsigned _T19;void*_T1A;struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_T1B;struct Cyc_Absyn_TypeDecl*_T1C;struct Cyc_Absyn_TypeDecl*_T1D;void*_T1E;int*_T1F;unsigned _T20;void*_T21;struct Cyc_Absyn_TypeDecl*_T22;void*_T23;struct Cyc_Absyn_Aggrdecl*_T24;struct Cyc_Absyn_Aggrdecl*_T25;struct Cyc_List_List*_T26;struct Cyc_List_List*_T27;struct Cyc_Absyn_Aggrdecl*_T28;struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct*_T29;void*_T2A;unsigned _T2B;void*_T2C;struct Cyc_Absyn_TypeDecl*_T2D;void*_T2E;unsigned _T2F;struct _fat_ptr _T30;struct _fat_ptr _T31;struct Cyc_Absyn_Enumdecl*_T32;struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*_T33;void*_T34;unsigned _T35;void*_T36;struct Cyc_Absyn_TypeDecl*_T37;void*_T38;unsigned _T39;struct _fat_ptr _T3A;struct _fat_ptr _T3B;struct Cyc_Absyn_Datatypedecl*_T3C;struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct*_T3D;void*_T3E;unsigned _T3F;void*_T40;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T41;void*_T42;int*_T43;unsigned _T44;void*_T45;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T46;void*_T47;struct Cyc_Absyn_AggrCon_Absyn_TyCon_struct*_T48;union Cyc_Absyn_AggrInfo _T49;struct _union_AggrInfo_UnknownAggr _T4A;unsigned _T4B;void*_T4C;void*_T4D;union Cyc_Absyn_AggrInfo _T4E;struct _union_AggrInfo_UnknownAggr _T4F;struct _tuple2 _T50;union Cyc_Absyn_AggrInfo _T51;struct _union_AggrInfo_UnknownAggr _T52;struct _tuple2 _T53;struct Cyc_List_List*(*_T54)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*);struct Cyc_List_List*(*_T55)(void*(*)(void*,void*),void*,struct Cyc_List_List*);unsigned _T56;struct Cyc_List_List*_T57;struct Cyc_Absyn_Aggrdecl*_T58;struct Cyc_Absyn_Aggrdecl*_T59;struct Cyc_Absyn_Aggrdecl*_T5A;struct Cyc_Absyn_Aggrdecl*_T5B;struct Cyc_Absyn_Aggrdecl*_T5C;struct Cyc_Absyn_Aggrdecl*_T5D;struct Cyc_Absyn_Aggrdecl*_T5E;unsigned _T5F;struct _fat_ptr _T60;struct _fat_ptr _T61;struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct*_T62;void*_T63;unsigned _T64;void*_T65;struct Cyc_Absyn_AppType_Absyn_Type_struct*_T66;void*_T67;struct Cyc_Absyn_DatatypeCon_Absyn_TyCon_struct*_T68;union Cyc_Absyn_DatatypeInfo _T69;struct _union_DatatypeInfo_KnownDatatype _T6A;unsigned _T6B;void*_T6C;void*_T6D;union Cyc_Absyn_DatatypeInfo _T6E;struct _union_DatatypeInfo_KnownDatatype _T6F;unsigned _T70;struct _fat_ptr _T71;struct _fat_ptr _T72;struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct*_T73;struct Cyc_Absyn_Datatypedecl**_T74;void*_T75;unsigned _T76;void*_T77;void*_T78;union Cyc_Absyn_DatatypeInfo _T79;struct _union_DatatypeInfo_UnknownDatatype _T7A;struct Cyc_Absyn_UnknownDatatypeInfo _T7B;union Cyc_Absyn_DatatypeInfo _T7C;struct _union_DatatypeInfo_UnknownDatatype _T7D;struct Cyc_Absyn_UnknownDatatypeInfo _T7E;struct Cyc_List_List*(*_T7F)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*);struct Cyc_List_List*(*_T80)(void*(*)(void*,void*),void*,struct Cyc_List_List*);unsigned _T81;struct Cyc_List_List*_T82;unsigned _T83;struct _fat_ptr _T84;struct _fat_ptr _T85;void*_T86;void*_T87;struct Cyc_Absyn_Enumdecl*_T88;struct Cyc_Absyn_Enumdecl*_T89;struct Cyc_Absyn_Enumdecl*_T8A;unsigned _T8B;struct _fat_ptr _T8C;struct _fat_ptr _T8D;struct Cyc_Absyn_Decl*_T8E;struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*_T8F;void*_T90;void*_T91;struct Cyc_Absyn_Enumdecl*_T92;struct Cyc_Absyn_Enumdecl*_T93;struct Cyc_Absyn_Enumdecl*_T94;struct Cyc_Core_Opt*_T95;unsigned _T96;struct _fat_ptr _T97;struct _fat_ptr _T98;struct Cyc_Absyn_Decl*_T99;struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*_T9A;unsigned _T9B;struct _fat_ptr _T9C;struct _fat_ptr _T9D;int _T9E;int _T9F;unsigned _TA0;struct _fat_ptr _TA1;struct _fat_ptr _TA2;struct Cyc_List_List*(*_TA3)(struct Cyc_Absyn_Decl*(*)(unsigned,struct _tuple15*),unsigned,struct Cyc_List_List*);struct Cyc_List_List*(*_TA4)(void*(*)(void*,void*),void*,struct Cyc_List_List*);unsigned _TA5;struct Cyc_List_List*_TA6;struct Cyc_List_List*_TA7;void*_TA8;unsigned _TA9;struct _fat_ptr _TAA;struct _fat_ptr _TAB;int(*_TAC)(unsigned,struct _fat_ptr);unsigned _TAD;struct _fat_ptr _TAE;int(*_TAF)(unsigned,struct _fat_ptr);unsigned _TB0;struct _fat_ptr _TB1;unsigned _TB2;struct _tuple0*_TB3;void*_TB4;struct Cyc_List_List*_TB5;void*_TB6;struct Cyc_Absyn_Exp*_TB7;struct Cyc_List_List*_TB8;void*_TB9;struct Cyc_Absyn_Exp*_TBA;struct Cyc_Absyn_Vardecl*_TBB;struct Cyc_Absyn_Vardecl*_TBC;struct Cyc_Absyn_Vardecl*_TBD;struct Cyc_List_List*_TBE;struct Cyc_Absyn_Decl*_TBF;struct Cyc_Absyn_Var_d_Absyn_Raw_decl_struct*_TC0;struct Cyc_List_List*_TC1;struct Cyc_List_List*_TC2;struct Cyc_List_List*_TC3;struct _RegionHandle _TC4=_new_region(0U,"mkrgn");struct _RegionHandle*mkrgn=& _TC4;_push_region(mkrgn);{struct Cyc_List_List*_TC5;struct Cyc_Parse_Type_specifier _TC6;struct Cyc_Absyn_Tqual _TC7;_T0=ds;_TC7=_T0.tq;_T1=ds;_TC6=_T1.type_specs;_T2=ds;_TC5=_T2.attributes;{struct Cyc_Absyn_Tqual tq=_TC7;struct Cyc_Parse_Type_specifier tss=_TC6;struct Cyc_List_List*atts=_TC5;_T3=tq;_T4=_T3.loc;
# 929
# 930
if(_T4!=0U)goto _TL155;tq.loc=tqual_loc;goto _TL156;_TL155: _TL156: _T5=ds;_T6=_T5.is_inline;
if(!_T6)goto _TL157;_T7=loc;_T8=
_tag_fat("inline qualifier on non-function definition",sizeof(char),44U);_T9=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T7,_T8,_T9);goto _TL158;_TL157: _TL158: {
# 933
# 934
enum Cyc_Absyn_Scope s=2U;
int istypedef=0;_TA=ds;{
enum Cyc_Parse_Storage_class _TC8=_TA.sc;_TB=(int)_TC8;switch(_TB){case Cyc_Parse_Typedef_sc:


@@ 1331,69 1331,69 @@ enum Cyc_Parse_Storage_class _TC8=_TA.sc;_TB=(int)_TC8;switch(_TB){case Cyc_Pars
 s=2U;goto _LL3;case Cyc_Parse_Register_sc: _TD=Cyc_Flags_no_register;
if(!_TD)goto _TL15A;_TC=2U;goto _TL15B;_TL15A: _TC=5U;_TL15B: s=_TC;goto _LL3;case Cyc_Parse_Abstract_sc:
 s=1U;goto _LL3;default: goto _LL3;}_LL3:;}{
# 949
# 950
struct _tuple13*declarators=0;
struct Cyc_List_List*exprs=0;
struct Cyc_List_List*renames=0;_TE=mkrgn;_TF=ids;_T10=& declarators;_T11=& exprs;_T12=& renames;
Cyc_Parse_decl_split(_TE,_TF,_T10,_T11,_T12);{
# 954
# 955
int exps_empty=1;{
struct Cyc_List_List*es=exprs;_TL15F: if(es!=0)goto _TL15D;else{goto _TL15E;}
_TL15D: _T13=es;_T14=_T13->hd;_T15=(struct Cyc_Absyn_Exp*)_T14;if(_T15==0)goto _TL160;
exps_empty=0;goto _TL15E;_TL160: _T16=es;
# 955
# 956
es=_T16->tl;goto _TL15F;_TL15E:;}{
# 962
# 963
void*base_type=Cyc_Parse_collapse_type_specifiers(tss,loc);
if(declarators!=0)goto _TL162;{int _TC8;struct Cyc_Absyn_Datatypedecl**_TC9;struct Cyc_List_List*_TCA;struct _tuple0*_TCB;enum Cyc_Absyn_AggrKind _TCC;struct Cyc_Absyn_Datatypedecl*_TCD;struct Cyc_Absyn_Enumdecl*_TCE;struct Cyc_Absyn_Aggrdecl*_TCF;_T17=base_type;_T18=(int*)_T17;_T19=*_T18;switch(_T19){case 10: _T1A=base_type;_T1B=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T1A;_T1C=_T1B->f1;_T1D=(struct Cyc_Absyn_TypeDecl*)_T1C;_T1E=_T1D->r;_T1F=(int*)_T1E;_T20=*_T1F;switch(_T20){case 0: _T21=base_type;{struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T21;_T22=_TD0->f1;{struct Cyc_Absyn_TypeDecl _TD1=*_T22;_T23=_TD1.r;{struct Cyc_Absyn_Aggr_td_Absyn_Raw_typedecl_struct*_TD2=(struct Cyc_Absyn_Aggr_td_Absyn_Raw_typedecl_struct*)_T23;_TCF=_TD2->f1;}}}{struct Cyc_Absyn_Aggrdecl*ad=_TCF;_T24=ad;_T25=ad;_T26=_T25->attributes;_T27=atts;
# 968
# 969
_T24->attributes=Cyc_List_append(_T26,_T27);_T28=ad;
_T28->sc=s;{struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct));_TD1->tag=5;
_TD1->f1=ad;_T29=(struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct*)_TD1;}_T2A=(void*)_T29;_T2B=loc;_TD0->hd=Cyc_Absyn_new_decl(_T2A,_T2B);_TD0->tl=0;_npop_handler(0);return _TD0;}}case 1: _T2C=base_type;{struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T2C;_T2D=_TD0->f1;{struct Cyc_Absyn_TypeDecl _TD1=*_T2D;_T2E=_TD1.r;{struct Cyc_Absyn_Enum_td_Absyn_Raw_typedecl_struct*_TD2=(struct Cyc_Absyn_Enum_td_Absyn_Raw_typedecl_struct*)_T2E;_TCE=_TD2->f1;}}}{struct Cyc_Absyn_Enumdecl*ed=_TCE;
# 972
# 973
if(atts==0)goto _TL166;_T2F=loc;_T30=_tag_fat("attributes on enum not supported",sizeof(char),33U);_T31=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T2F,_T30,_T31);goto _TL167;_TL166: _TL167: _T32=ed;
_T32->sc=s;{struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct));_TD1->tag=7;
_TD1->f1=ed;_T33=(struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*)_TD1;}_T34=(void*)_T33;_T35=loc;_TD0->hd=Cyc_Absyn_new_decl(_T34,_T35);_TD0->tl=0;_npop_handler(0);return _TD0;}}default: _T36=base_type;{struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T36;_T37=_TD0->f1;{struct Cyc_Absyn_TypeDecl _TD1=*_T37;_T38=_TD1.r;{struct Cyc_Absyn_Datatype_td_Absyn_Raw_typedecl_struct*_TD2=(struct Cyc_Absyn_Datatype_td_Absyn_Raw_typedecl_struct*)_T38;_TCD=_TD2->f1;}}}{struct Cyc_Absyn_Datatypedecl*dd=_TCD;
# 976
# 977
if(atts==0)goto _TL168;_T39=loc;_T3A=_tag_fat("attributes on datatypes not supported",sizeof(char),38U);_T3B=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T39,_T3A,_T3B);goto _TL169;_TL168: _TL169: _T3C=dd;
_T3C->sc=s;{struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct));_TD1->tag=6;
_TD1->f1=dd;_T3D=(struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct*)_TD1;}_T3E=(void*)_T3D;_T3F=loc;_TD0->hd=Cyc_Absyn_new_decl(_T3E,_T3F);_TD0->tl=0;_npop_handler(0);return _TD0;}}};case 0: _T40=base_type;_T41=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T40;_T42=_T41->f1;_T43=(int*)_T42;_T44=*_T43;switch(_T44){case 24: _T45=base_type;_T46=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T45;_T47=_T46->f1;_T48=(struct Cyc_Absyn_AggrCon_Absyn_TyCon_struct*)_T47;_T49=_T48->f1;_T4A=_T49.UnknownAggr;_T4B=_T4A.tag;if(_T4B!=1)goto _TL16B;_T4C=base_type;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T4C;_T4D=_TD0->f1;{struct Cyc_Absyn_AggrCon_Absyn_TyCon_struct*_TD1=(struct Cyc_Absyn_AggrCon_Absyn_TyCon_struct*)_T4D;_T4E=_TD1->f1;_T4F=_T4E.UnknownAggr;_T50=_T4F.val;_TCC=_T50.f0;_T51=_TD1->f1;_T52=_T51.UnknownAggr;_T53=_T52.val;_TCB=_T53.f1;}_TCA=_TD0->f2;}{enum Cyc_Absyn_AggrKind k=_TCC;struct _tuple0*n=_TCB;struct Cyc_List_List*ts=_TCA;_T55=Cyc_List_map_c;{
# 980
# 981
struct Cyc_List_List*(*_TD0)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T55;_T54=_TD0;}_T56=loc;_T57=ts;{struct Cyc_List_List*ts2=_T54(Cyc_Parse_typ2tvar,_T56,_T57);
struct Cyc_Absyn_Aggrdecl*ad;ad=_cycalloc(sizeof(struct Cyc_Absyn_Aggrdecl));_T58=ad;_T58->kind=k;_T59=ad;_T59->sc=s;_T5A=ad;_T5A->name=n;_T5B=ad;_T5B->tvs=ts2;_T5C=ad;_T5C->impl=0;_T5D=ad;_T5D->attributes=0;_T5E=ad;_T5E->expected_mem_kind=0;
if(atts==0)goto _TL16D;_T5F=loc;_T60=_tag_fat("bad attributes on type declaration",sizeof(char),35U);_T61=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T5F,_T60,_T61);goto _TL16E;_TL16D: _TL16E: {struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct));_TD1->tag=5;
_TD1->f1=ad;_T62=(struct Cyc_Absyn_Aggr_d_Absyn_Raw_decl_struct*)_TD1;}_T63=(void*)_T62;_T64=loc;_TD0->hd=Cyc_Absyn_new_decl(_T63,_T64);_TD0->tl=0;_npop_handler(0);return _TD0;}}}_TL16B: goto _LL25;case 22: _T65=base_type;_T66=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T65;_T67=_T66->f1;_T68=(struct Cyc_Absyn_DatatypeCon_Absyn_TyCon_struct*)_T67;_T69=_T68->f1;_T6A=_T69.KnownDatatype;_T6B=_T6A.tag;if(_T6B!=2)goto _TL16F;_T6C=base_type;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T6C;_T6D=_TD0->f1;{struct Cyc_Absyn_DatatypeCon_Absyn_TyCon_struct*_TD1=(struct Cyc_Absyn_DatatypeCon_Absyn_TyCon_struct*)_T6D;_T6E=_TD1->f1;_T6F=_T6E.KnownDatatype;_TC9=_T6F.val;}}{struct Cyc_Absyn_Datatypedecl**tudp=_TC9;
# 985
# 986
if(atts==0)goto _TL171;_T70=loc;_T71=_tag_fat("bad attributes on datatype",sizeof(char),27U);_T72=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T70,_T71,_T72);goto _TL172;_TL171: _TL172: {struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct));_TD1->tag=6;_T74=tudp;
_TD1->f1=*_T74;_T73=(struct Cyc_Absyn_Datatype_d_Absyn_Raw_decl_struct*)_TD1;}_T75=(void*)_T73;_T76=loc;_TD0->hd=Cyc_Absyn_new_decl(_T75,_T76);_TD0->tl=0;_npop_handler(0);return _TD0;}}_TL16F: _T77=base_type;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T77;_T78=_TD0->f1;{struct Cyc_Absyn_DatatypeCon_Absyn_TyCon_struct*_TD1=(struct Cyc_Absyn_DatatypeCon_Absyn_TyCon_struct*)_T78;_T79=_TD1->f1;_T7A=_T79.UnknownDatatype;_T7B=_T7A.val;_TCB=_T7B.name;_T7C=_TD1->f1;_T7D=_T7C.UnknownDatatype;_T7E=_T7D.val;_TC8=_T7E.is_extensible;}_TCA=_TD0->f2;}{struct _tuple0*n=_TCB;int isx=_TC8;struct Cyc_List_List*ts=_TCA;_T80=Cyc_List_map_c;{
# 988
# 989
struct Cyc_List_List*(*_TD0)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T80;_T7F=_TD0;}_T81=loc;_T82=ts;{struct Cyc_List_List*ts2=_T7F(Cyc_Parse_typ2tvar,_T81,_T82);
struct Cyc_Absyn_Decl*tud=Cyc_Absyn_datatype_decl(s,n,ts2,0,isx,loc);
if(atts==0)goto _TL173;_T83=loc;_T84=_tag_fat("bad attributes on datatype",sizeof(char),27U);_T85=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T83,_T84,_T85);goto _TL174;_TL173: _TL174: {struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));
_TD0->hd=tud;_TD0->tl=0;_npop_handler(0);return _TD0;}}}case 19: _T86=base_type;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T86;_T87=_TD0->f1;{struct Cyc_Absyn_EnumCon_Absyn_TyCon_struct*_TD1=(struct Cyc_Absyn_EnumCon_Absyn_TyCon_struct*)_T87;_TCB=_TD1->f1;}}{struct _tuple0*n=_TCB;
# 993
# 994
struct Cyc_Absyn_Enumdecl*ed;ed=_cycalloc(sizeof(struct Cyc_Absyn_Enumdecl));_T88=ed;_T88->sc=s;_T89=ed;_T89->name=n;_T8A=ed;_T8A->fields=0;
if(atts==0)goto _TL175;_T8B=loc;_T8C=_tag_fat("bad attributes on enum",sizeof(char),23U);_T8D=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T8B,_T8C,_T8D);goto _TL176;_TL175: _TL176: {struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*_TD2=_cycalloc(sizeof(struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct));_TD2->tag=7;
_TD2->f1=ed;_T8F=(struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*)_TD2;}_TD1->r=(void*)_T8F;_TD1->loc=loc;_T8E=(struct Cyc_Absyn_Decl*)_TD1;}_TD0->hd=_T8E;_TD0->tl=0;_npop_handler(0);return _TD0;}}case 20: _T90=base_type;{struct Cyc_Absyn_AppType_Absyn_Type_struct*_TD0=(struct Cyc_Absyn_AppType_Absyn_Type_struct*)_T90;_T91=_TD0->f1;{struct Cyc_Absyn_AnonEnumCon_Absyn_TyCon_struct*_TD1=(struct Cyc_Absyn_AnonEnumCon_Absyn_TyCon_struct*)_T91;_TCA=_TD1->f1;}}{struct Cyc_List_List*fs=_TCA;
# 999
# 1000
struct Cyc_Absyn_Enumdecl*ed;ed=_cycalloc(sizeof(struct Cyc_Absyn_Enumdecl));_T92=ed;_T92->sc=s;_T93=ed;_T93->name=Cyc_Parse_gensym_enum();_T94=ed;{struct Cyc_Core_Opt*_TD0=_cycalloc(sizeof(struct Cyc_Core_Opt));_TD0->v=fs;_T95=(struct Cyc_Core_Opt*)_TD0;}_T94->fields=_T95;
if(atts==0)goto _TL177;_T96=loc;_T97=_tag_fat("bad attributes on enum",sizeof(char),23U);_T98=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T96,_T97,_T98);goto _TL178;_TL177: _TL178: {struct Cyc_List_List*_TD0;_TD0=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*_TD2=_cycalloc(sizeof(struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct));_TD2->tag=7;
_TD2->f1=ed;_T9A=(struct Cyc_Absyn_Enum_d_Absyn_Raw_decl_struct*)_TD2;}_TD1->r=(void*)_T9A;_TD1->loc=loc;_T99=(struct Cyc_Absyn_Decl*)_TD1;}_TD0->hd=_T99;_TD0->tl=0;_npop_handler(0);return _TD0;}}default: goto _LL25;};default: _LL25: _T9B=loc;_T9C=
_tag_fat("missing declarator",sizeof(char),19U);_T9D=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T9B,_T9C,_T9D);{struct Cyc_List_List*_TD0=0;_npop_handler(0);return _TD0;}};}goto _TL163;_TL162: _TL163: {
# 1006
# 1007
struct Cyc_List_List*fields=Cyc_Parse_apply_tmss(mkrgn,tq,base_type,declarators,atts);_T9E=istypedef;
if(!_T9E)goto _TL179;_T9F=exps_empty;
# 1011
# 1012
if(_T9F)goto _TL17B;else{goto _TL17D;}
_TL17D: _TA0=loc;_TA1=_tag_fat("initializer in typedef declaration",sizeof(char),35U);_TA2=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_TA0,_TA1,_TA2);goto _TL17C;_TL17B: _TL17C: _TA4=Cyc_List_map_c;{
struct Cyc_List_List*(*_TC8)(struct Cyc_Absyn_Decl*(*)(unsigned,struct _tuple15*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Decl*(*)(unsigned,struct _tuple15*),unsigned,struct Cyc_List_List*))_TA4;_TA3=_TC8;}_TA5=loc;_TA6=fields;{struct Cyc_List_List*decls=_TA3(Cyc_Parse_v_typ_to_typedef,_TA5,_TA6);struct Cyc_List_List*_TC8=decls;_npop_handler(0);return _TC8;}_TL179: {
# 1017
# 1018
struct Cyc_List_List*decls=0;{
struct Cyc_List_List*ds=fields;
_TL181:
# 1018
# 1019
 if(ds!=0)goto _TL17F;else{goto _TL180;}
# 1021
# 1022
_TL17F: _TA7=ds;_TA8=_TA7->hd;{struct _tuple15*_TC8=(struct _tuple15*)_TA8;struct Cyc_List_List*_TC9;struct Cyc_List_List*_TCA;void*_TCB;struct Cyc_Absyn_Tqual _TCC;struct _tuple0*_TCD;unsigned _TCE;{struct _tuple15 _TCF=*_TC8;_TCE=_TCF.f0;_TCD=_TCF.f1;_TCC=_TCF.f2;_TCB=_TCF.f3;_TCA=_TCF.f4;_TC9=_TCF.f5;}{unsigned varloc=_TCE;struct _tuple0*x=_TCD;struct Cyc_Absyn_Tqual tq2=_TCC;void*t2=_TCB;struct Cyc_List_List*tvs2=_TCA;struct Cyc_List_List*atts2=_TC9;
if(tvs2==0)goto _TL182;_TA9=loc;_TAA=
_tag_fat("bad type params, ignoring",sizeof(char),26U);_TAB=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_TA9,_TAA,_TAB);goto _TL183;_TL182: _TL183:


@@ 1406,79 1406,79 @@ _TBB->tq=tq2;_TBC=vd;
_TBC->sc=s;_TBD=vd;
_TBD->attributes=atts2;{struct Cyc_List_List*_TCF=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_TD0=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Var_d_Absyn_Raw_decl_struct*_TD1=_cycalloc(sizeof(struct Cyc_Absyn_Var_d_Absyn_Raw_decl_struct));_TD1->tag=0;
_TD1->f1=vd;_TC0=(struct Cyc_Absyn_Var_d_Absyn_Raw_decl_struct*)_TD1;}_TD0->r=(void*)_TC0;_TD0->loc=loc;_TBF=(struct Cyc_Absyn_Decl*)_TD0;}_TCF->hd=_TBF;_TCF->tl=decls;_TBE=(struct Cyc_List_List*)_TCF;}decls=_TBE;}}}_TC1=ds;
# 1020
# 1021
ds=_TC1->tl;_TC2=_check_null(exprs);exprs=_TC2->tl;_TC3=_check_null(renames);renames=_TC3->tl;goto _TL181;_TL180:;}{struct Cyc_List_List*_TC8=
# 1034
# 1035
Cyc_List_imp_rev(decls);_npop_handler(0);return _TC8;}}}}}}}}}_pop_region();}
# 1038
# 1039
static unsigned Cyc_Parse_cnst2uint(unsigned loc,union Cyc_Absyn_Cnst x){union Cyc_Absyn_Cnst _T0;struct _union_Cnst_LongLong_c _T1;unsigned _T2;union Cyc_Absyn_Cnst _T3;struct _union_Cnst_Int_c _T4;struct _tuple5 _T5;int _T6;unsigned _T7;union Cyc_Absyn_Cnst _T8;struct _union_Cnst_Char_c _T9;struct _tuple3 _TA;char _TB;unsigned _TC;union Cyc_Absyn_Cnst _TD;struct _union_Cnst_LongLong_c _TE;struct _tuple6 _TF;long long _T10;unsigned _T11;struct _fat_ptr _T12;struct _fat_ptr _T13;long long _T14;unsigned _T15;struct Cyc_String_pa_PrintArg_struct _T16;unsigned _T17;struct _fat_ptr _T18;struct _fat_ptr _T19;long long _T1A;char _T1B;int _T1C;_T0=x;_T1=_T0.LongLong_c;_T2=_T1.tag;switch(_T2){case 5: _T3=x;_T4=_T3.Int_c;_T5=_T4.val;_T1C=_T5.f1;{int i=_T1C;_T6=i;_T7=(unsigned)_T6;
# 1040
# 1041
return _T7;}case 2: _T8=x;_T9=_T8.Char_c;_TA=_T9.val;_T1B=_TA.f1;{char c=_T1B;_TB=c;_TC=(unsigned)_TB;
return _TC;}case 6: _TD=x;_TE=_TD.LongLong_c;_TF=_TE.val;_T1A=_TF.f1;{long long x=_T1A;_T10=x;{
# 1043
# 1044
unsigned long long y=(unsigned long long)_T10;
if(y <= 4294967295U)goto _TL189;_T11=loc;_T12=
_tag_fat("integer constant too large",sizeof(char),27U);_T13=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T11,_T12,_T13);goto _TL18A;_TL189: _TL18A: _T14=x;_T15=(unsigned)_T14;
return _T15;}}default:{struct Cyc_String_pa_PrintArg_struct _T1D;_T1D.tag=0;
# 1048
# 1049
_T1D.f1=Cyc_Absynpp_cnst2string(x);_T16=_T1D;}{struct Cyc_String_pa_PrintArg_struct _T1D=_T16;void*_T1E[1];_T1E[0]=& _T1D;_T17=loc;_T18=_tag_fat("expected integer constant but found %s",sizeof(char),39U);_T19=_tag_fat(_T1E,sizeof(void*),1);Cyc_Warn_err(_T17,_T18,_T19);}
return 0U;};}
# 1054
# 1055
static struct Cyc_Absyn_Exp*Cyc_Parse_pat2exp(struct Cyc_Absyn_Pat*p){struct Cyc_Absyn_Pat*_T0;int*_T1;unsigned _T2;struct _tuple0*_T3;struct Cyc_Absyn_Pat*_T4;unsigned _T5;struct Cyc_Absyn_Exp*_T6;struct Cyc_Absyn_Reference_p_Absyn_Raw_pat_struct*_T7;struct Cyc_Absyn_Pat*_T8;struct Cyc_Absyn_Pat*_T9;void*_TA;int*_TB;int _TC;struct Cyc_Absyn_Vardecl*_TD;struct _tuple0*_TE;struct Cyc_Absyn_Pat*_TF;unsigned _T10;struct Cyc_Absyn_Exp*_T11;struct Cyc_Absyn_Pat*_T12;unsigned _T13;struct Cyc_Absyn_Exp*_T14;struct Cyc_Absyn_Exp*_T15;struct Cyc_Absyn_Pat*_T16;unsigned _T17;struct Cyc_Absyn_Exp*_T18;struct Cyc_Absyn_Pat*_T19;unsigned _T1A;struct Cyc_Absyn_Exp*_T1B;enum Cyc_Absyn_Sign _T1C;int _T1D;struct Cyc_Absyn_Pat*_T1E;unsigned _T1F;struct Cyc_Absyn_Exp*_T20;char _T21;struct Cyc_Absyn_Pat*_T22;unsigned _T23;struct Cyc_Absyn_Exp*_T24;struct _fat_ptr _T25;int _T26;struct Cyc_Absyn_Pat*_T27;unsigned _T28;struct Cyc_Absyn_Exp*_T29;struct Cyc_Absyn_UnknownCall_p_Absyn_Raw_pat_struct*_T2A;int _T2B;struct _tuple0*_T2C;struct Cyc_Absyn_Pat*_T2D;unsigned _T2E;struct Cyc_List_List*(*_T2F)(struct Cyc_Absyn_Exp*(*)(struct Cyc_Absyn_Pat*),struct Cyc_List_List*);struct Cyc_List_List*(*_T30)(void*(*)(void*),struct Cyc_List_List*);struct Cyc_List_List*_T31;struct Cyc_Absyn_Exp*_T32;struct Cyc_List_List*_T33;struct Cyc_Absyn_Pat*_T34;unsigned _T35;struct Cyc_Absyn_Exp*_T36;struct Cyc_Absyn_Exp*_T37;struct Cyc_Absyn_Pat*_T38;unsigned _T39;struct _fat_ptr _T3A;struct _fat_ptr _T3B;struct Cyc_Absyn_Pat*_T3C;unsigned _T3D;struct Cyc_Absyn_Exp*_T3E;_T0=p;{
void*_T3F=_T0->r;struct Cyc_Absyn_Exp*_T40;struct Cyc_List_List*_T41;struct _fat_ptr _T42;char _T43;int _T44;enum Cyc_Absyn_Sign _T45;struct Cyc_Absyn_Pat*_T46;struct Cyc_Absyn_Vardecl*_T47;struct _tuple0*_T48;_T1=(int*)_T3F;_T2=*_T1;switch(_T2){case 14:{struct Cyc_Absyn_UnknownId_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_UnknownId_p_Absyn_Raw_pat_struct*)_T3F;_T48=_T49->f1;}{struct _tuple0*x=_T48;_T3=x;_T4=p;_T5=_T4->loc;_T6=
Cyc_Absyn_unknownid_exp(_T3,_T5);return _T6;}case 3: _T7=(struct Cyc_Absyn_Reference_p_Absyn_Raw_pat_struct*)_T3F;_T8=_T7->f2;_T9=(struct Cyc_Absyn_Pat*)_T8;_TA=_T9->r;_TB=(int*)_TA;_TC=*_TB;if(_TC!=0)goto _TL18C;{struct Cyc_Absyn_Reference_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_Reference_p_Absyn_Raw_pat_struct*)_T3F;_T47=_T49->f1;}{struct Cyc_Absyn_Vardecl*vd=_T47;_TD=vd;_TE=_TD->name;_TF=p;_T10=_TF->loc;_T11=
# 1058
# 1059
Cyc_Absyn_unknownid_exp(_TE,_T10);_T12=p;_T13=_T12->loc;_T14=Cyc_Absyn_deref_exp(_T11,_T13);return _T14;}_TL18C: goto _LL13;case 5:{struct Cyc_Absyn_Pointer_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_Pointer_p_Absyn_Raw_pat_struct*)_T3F;_T46=_T49->f1;}{struct Cyc_Absyn_Pat*p2=_T46;_T15=
Cyc_Parse_pat2exp(p2);_T16=p;_T17=_T16->loc;_T18=Cyc_Absyn_address_exp(_T15,_T17);return _T18;}case 8: _T19=p;_T1A=_T19->loc;_T1B=
Cyc_Absyn_null_exp(_T1A);return _T1B;case 9:{struct Cyc_Absyn_Int_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_Int_p_Absyn_Raw_pat_struct*)_T3F;_T45=_T49->f1;_T44=_T49->f2;}{enum Cyc_Absyn_Sign s=_T45;int i=_T44;_T1C=s;_T1D=i;_T1E=p;_T1F=_T1E->loc;_T20=
Cyc_Absyn_int_exp(_T1C,_T1D,_T1F);return _T20;}case 10:{struct Cyc_Absyn_Char_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_Char_p_Absyn_Raw_pat_struct*)_T3F;_T43=_T49->f1;}{char c=_T43;_T21=c;_T22=p;_T23=_T22->loc;_T24=
Cyc_Absyn_char_exp(_T21,_T23);return _T24;}case 11:{struct Cyc_Absyn_Float_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_Float_p_Absyn_Raw_pat_struct*)_T3F;_T42=_T49->f1;_T44=_T49->f2;}{struct _fat_ptr s=_T42;int i=_T44;_T25=s;_T26=i;_T27=p;_T28=_T27->loc;_T29=
Cyc_Absyn_float_exp(_T25,_T26,_T28);return _T29;}case 15: _T2A=(struct Cyc_Absyn_UnknownCall_p_Absyn_Raw_pat_struct*)_T3F;_T2B=_T2A->f3;if(_T2B!=0)goto _TL18E;{struct Cyc_Absyn_UnknownCall_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_UnknownCall_p_Absyn_Raw_pat_struct*)_T3F;_T48=_T49->f1;_T41=_T49->f2;}{struct _tuple0*x=_T48;struct Cyc_List_List*ps=_T41;_T2C=x;_T2D=p;_T2E=_T2D->loc;{
# 1065
# 1066
struct Cyc_Absyn_Exp*e1=Cyc_Absyn_unknownid_exp(_T2C,_T2E);_T30=Cyc_List_map;{
struct Cyc_List_List*(*_T49)(struct Cyc_Absyn_Exp*(*)(struct Cyc_Absyn_Pat*),struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Exp*(*)(struct Cyc_Absyn_Pat*),struct Cyc_List_List*))_T30;_T2F=_T49;}_T31=ps;{struct Cyc_List_List*es=_T2F(Cyc_Parse_pat2exp,_T31);_T32=e1;_T33=es;_T34=p;_T35=_T34->loc;_T36=
Cyc_Absyn_unknowncall_exp(_T32,_T33,_T35);return _T36;}}}_TL18E: goto _LL13;case 16:{struct Cyc_Absyn_Exp_p_Absyn_Raw_pat_struct*_T49=(struct Cyc_Absyn_Exp_p_Absyn_Raw_pat_struct*)_T3F;_T40=_T49->f1;}{struct Cyc_Absyn_Exp*e=_T40;_T37=e;
return _T37;}default: _LL13: _T38=p;_T39=_T38->loc;_T3A=
# 1070
# 1071
_tag_fat("cannot mix patterns and expressions in case",sizeof(char),44U);_T3B=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T39,_T3A,_T3B);_T3C=p;_T3D=_T3C->loc;_T3E=
Cyc_Absyn_null_exp(_T3D);return _T3E;};}}
# 1074
# 1075
static struct _tuple16 Cyc_Parse_split_seq(struct Cyc_Absyn_Exp*maybe_seq){struct Cyc_Absyn_Exp*_T0;int*_T1;int _T2;struct _tuple16 _T3;struct _tuple16 _T4;_T0=maybe_seq;{
void*_T5=_T0->r;struct Cyc_Absyn_Exp*_T6;struct Cyc_Absyn_Exp*_T7;_T1=(int*)_T5;_T2=*_T1;if(_T2!=9)goto _TL190;{struct Cyc_Absyn_SeqExp_e_Absyn_Raw_exp_struct*_T8=(struct Cyc_Absyn_SeqExp_e_Absyn_Raw_exp_struct*)_T5;_T7=_T8->f1;_T6=_T8->f2;}{struct Cyc_Absyn_Exp*e1=_T7;struct Cyc_Absyn_Exp*e2=_T6;{struct _tuple16 _T8;
# 1077
# 1078
_T8.f0=e1;_T8.f1=e2;_T3=_T8;}return _T3;}_TL190:{struct _tuple16 _T8;
# 1079
# 1080
_T8.f0=maybe_seq;_T8.f1=0;_T4=_T8;}return _T4;;}}
# 1082
# 1083
static struct Cyc_Absyn_Exp*Cyc_Parse_join_assn(struct Cyc_Absyn_Exp*e1,struct Cyc_Absyn_Exp*e2){struct Cyc_Absyn_Exp*_T0;struct Cyc_Absyn_Exp*_T1;struct Cyc_Absyn_Exp*_T2;
if(e1==0)goto _TL192;if(e2==0)goto _TL192;_T0=Cyc_Absyn_and_exp(e1,e2,0U);return _T0;
_TL192: if(e1==0)goto _TL194;_T1=e1;return _T1;
_TL194: _T2=e2;return _T2;}struct _tuple21{struct Cyc_Absyn_Exp*f0;struct Cyc_Absyn_Exp*f1;struct Cyc_Absyn_Exp*f2;struct Cyc_Absyn_Exp*f3;};
# 1087
# 1088
static struct _tuple21 Cyc_Parse_join_assns(struct _tuple21 a1,struct _tuple21 a2){struct _tuple21 _T0;struct _tuple21 _T1;struct _tuple21 _T2;struct _tuple21 _T3;struct _tuple21 _T4;struct _tuple21 _T5;struct _tuple21 _T6;struct _tuple21 _T7;struct _tuple21 _T8;struct Cyc_Absyn_Exp*_T9;struct Cyc_Absyn_Exp*_TA;struct Cyc_Absyn_Exp*_TB;struct Cyc_Absyn_Exp*_TC;_T0=a1;_TC=_T0.f0;_T1=a1;_TB=_T1.f1;_T2=a1;_TA=_T2.f2;_T3=a1;_T9=_T3.f3;{struct Cyc_Absyn_Exp*c1=_TC;struct Cyc_Absyn_Exp*r1=_TB;struct Cyc_Absyn_Exp*e1=_TA;struct Cyc_Absyn_Exp*t1=_T9;struct Cyc_Absyn_Exp*_TD;struct Cyc_Absyn_Exp*_TE;struct Cyc_Absyn_Exp*_TF;struct Cyc_Absyn_Exp*_T10;_T4=a2;_T10=_T4.f0;_T5=a2;_TF=_T5.f1;_T6=a2;_TE=_T6.f2;_T7=a2;_TD=_T7.f3;{struct Cyc_Absyn_Exp*c2=_T10;struct Cyc_Absyn_Exp*r2=_TF;struct Cyc_Absyn_Exp*e2=_TE;struct Cyc_Absyn_Exp*t2=_TD;
# 1090
# 1091
struct Cyc_Absyn_Exp*c=Cyc_Parse_join_assn(c1,c2);
struct Cyc_Absyn_Exp*r=Cyc_Parse_join_assn(r1,r2);
struct Cyc_Absyn_Exp*e=Cyc_Parse_join_assn(e1,e2);
struct Cyc_Absyn_Exp*t=Cyc_Parse_join_assn(t1,t2);{struct _tuple21 _T11;
_T11.f0=c;_T11.f1=r;_T11.f2=e;_T11.f3=t;_T8=_T11;}return _T8;}}}
# 1097
# 1098
static void*Cyc_Parse_assign_cvar_pos(struct _fat_ptr posstr,int ovfat,void*cv){void*_T0;int*_T1;int _T2;void*_T3;void*_T4;struct Cyc_Absyn_Cvar_Absyn_Type_struct*_T5;const char**_T6;void*_T7;struct Cyc_Absyn_Cvar_Absyn_Type_struct*_T8;int*_T9;const char**_TA;struct _fat_ptr _TB;unsigned char*_TC;int*_TD;void*_TE;void*_TF;void*_T10;void*_T11;_T0=cv;_T1=(int*)_T0;_T2=*_T1;if(_T2!=3)goto _TL196;_T3=cv;{struct Cyc_Absyn_Cvar_Absyn_Type_struct*_T12=(struct Cyc_Absyn_Cvar_Absyn_Type_struct*)_T3;_T4=cv;_T5=(struct Cyc_Absyn_Cvar_Absyn_Type_struct*)_T4;_T6=& _T5->f6;_T11=(const char**)_T6;_T7=cv;_T8=(struct Cyc_Absyn_Cvar_Absyn_Type_struct*)_T7;_T9=& _T8->f7;_T10=(int*)_T9;}{const char**pos=(const char**)_T11;int*ov=(int*)_T10;_TA=pos;_TB=posstr;_TC=_untag_fat_ptr_check_bound(_TB,sizeof(char),1U);
# 1100
# 1101
*_TA=(const char*)_TC;_TD=ov;
*_TD=ovfat;_TE=cv;
return _TE;}_TL196: _TF=cv;
# 1104
# 1105
return _TF;;}
# 1108
# 1109
static void*Cyc_Parse_typevar2cvar(struct _fat_ptr s){struct Cyc_Hashtable_Table*_T0;unsigned _T1;struct Cyc_Hashtable_Table*(*_T2)(int,int(*)(struct _fat_ptr*,struct _fat_ptr*),int(*)(struct _fat_ptr*));struct Cyc_Hashtable_Table*(*_T3)(int,int(*)(void*,void*),int(*)(void*));int(*_T4)(struct _fat_ptr*,struct _fat_ptr*);int(*_T5)(struct _fat_ptr*);struct _handler_cons*_T6;int _T7;void*(*_T8)(struct Cyc_Hashtable_Table*,struct _fat_ptr*);void*(*_T9)(struct Cyc_Hashtable_Table*,void*);struct Cyc_Hashtable_Table*_TA;struct _fat_ptr*_TB;void*_TC;struct Cyc_Core_Not_found_exn_struct*_TD;char*_TE;char*_TF;struct _fat_ptr _T10;struct _fat_ptr _T11;struct _fat_ptr*_T12;struct _fat_ptr _T13;struct _fat_ptr _T14;int _T15;struct Cyc_Core_Opt*_T16;struct Cyc_Core_Opt*_T17;struct _fat_ptr _T18;void(*_T19)(struct Cyc_Hashtable_Table*,struct _fat_ptr*,void*);void(*_T1A)(struct Cyc_Hashtable_Table*,void*,void*);struct Cyc_Hashtable_Table*_T1B;struct _fat_ptr*_T1C;void*_T1D;void*_T1E;int(*_T1F)(unsigned,struct _fat_ptr);struct _fat_ptr _T20;
# 1111
# 1112
static struct Cyc_Hashtable_Table*cvmap=0;_T0=cvmap;_T1=(unsigned)_T0;
if(_T1)goto _TL198;else{goto _TL19A;}
_TL19A: _T3=Cyc_Hashtable_create;{struct Cyc_Hashtable_Table*(*_T21)(int,int(*)(struct _fat_ptr*,struct _fat_ptr*),int(*)(struct _fat_ptr*))=(struct Cyc_Hashtable_Table*(*)(int,int(*)(struct _fat_ptr*,struct _fat_ptr*),int(*)(struct _fat_ptr*)))_T3;_T2=_T21;}_T4=Cyc_strptrcmp;_T5=Cyc_Hashtable_hash_stringptr;cvmap=_T2(101,_T4,_T5);goto _TL199;_TL198: _TL199: {struct _handler_cons _T21;_T6=& _T21;_push_handler(_T6);{int _T22=0;_T7=setjmp(_T21.handler);if(!_T7)goto _TL19B;_T22=1;goto _TL19C;_TL19B: _TL19C: if(_T22)goto _TL19D;else{goto _TL19F;}_TL19F: _T9=Cyc_Hashtable_lookup;{
# 1115
# 1116
void*(*_T23)(struct Cyc_Hashtable_Table*,struct _fat_ptr*)=(void*(*)(struct Cyc_Hashtable_Table*,struct _fat_ptr*))_T9;_T8=_T23;}_TA=cvmap;{struct _fat_ptr*_T23=_cycalloc(sizeof(struct _fat_ptr));*_T23=s;_TB=(struct _fat_ptr*)_T23;}{void*_T23=_T8(_TA,_TB);_npop_handler(0);return _T23;}_pop_handler();goto _TL19E;_TL19D: _TC=Cyc_Core_get_exn_thrown();{void*_T23=(void*)_TC;void*_T24;_TD=(struct Cyc_Core_Not_found_exn_struct*)_T23;_TE=_TD->tag;_TF=Cyc_Core_Not_found;if(_TE!=_TF)goto _TL1A0;{
# 1118
# 1119
struct _fat_ptr kind=Cyc_strchr(s,'_');_T10=kind;_T11=
_fat_ptr_plus(_T10,sizeof(char),1);{struct _fat_ptr name=Cyc_strchr(_T11,'_');_T12=& name;
_fat_ptr_inplace_plus(_T12,sizeof(char),1);_T13=kind;_T14=


@@ 1486,698 1486,698 @@ _tag_fat("_PTRBND",sizeof(char),8U);_T15=Cyc_strncmp(_T13,_T14,7U);if(_T15)goto 
_TL1A4: _T16=& Cyc_Kinds_ptrbko;_T17=(struct Cyc_Core_Opt*)_T16;_T18=name;{void*t=Cyc_Absyn_cvar_type_name(_T17,_T18);_T1A=Cyc_Hashtable_insert;{
void(*_T25)(struct Cyc_Hashtable_Table*,struct _fat_ptr*,void*)=(void(*)(struct Cyc_Hashtable_Table*,struct _fat_ptr*,void*))_T1A;_T19=_T25;}_T1B=_check_null(cvmap);{struct _fat_ptr*_T25=_cycalloc(sizeof(struct _fat_ptr));*_T25=s;_T1C=(struct _fat_ptr*)_T25;}_T1D=t;_T19(_T1B,_T1C,_T1D);_T1E=t;
return _T1E;}
# 1127
# 1128
_TL1A2:{int(*_T25)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T1F=_T25;}_T20=_tag_fat("Constraint variable unknown kind",sizeof(char),33U);_T1F(0U,_T20);;}}goto _TL1A1;_TL1A0: _T24=_T23;{void*exn=_T24;_rethrow(exn);}_TL1A1:;}_TL19E:;}}}
# 1133
# 1134
static void*Cyc_Parse_str2type(unsigned loc,struct _fat_ptr s){struct _fat_ptr _T0;struct _fat_ptr _T1;int _T2;void*_T3;void*_T4;struct _fat_ptr _T5;struct _fat_ptr _T6;int _T7;void*_T8;void*_T9;void*_TA;int(*_TB)(unsigned,struct _fat_ptr);unsigned _TC;struct _fat_ptr _TD;struct Cyc_String_pa_PrintArg_struct _TE;struct _fat_ptr _TF;struct _fat_ptr _T10;_T0=s;_T1=
_tag_fat("@fat",sizeof(char),5U);_T2=Cyc_strcmp(_T0,_T1);if(_T2)goto _TL1A5;else{goto _TL1A7;}
_TL1A7: _T3=Cyc_Tcutil_ptrbnd_cvar_equivalent(Cyc_Absyn_fat_bound_type);_T4=_check_null(_T3);return _T4;
# 1137
# 1138
_TL1A5: _T5=s;_T6=_tag_fat("@thin @numelts{valueof_t(1U)}",sizeof(char),30U);_T7=Cyc_strcmp(_T5,_T6);if(_T7)goto _TL1A8;else{goto _TL1AA;}
_TL1AA: _T8=Cyc_Absyn_bounds_one();_T9=Cyc_Tcutil_ptrbnd_cvar_equivalent(_T8);_TA=_check_null(_T9);return _TA;_TL1A8:{
# 1140
# 1141
int(*_T11)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_TB=_T11;}_TC=loc;{struct Cyc_String_pa_PrintArg_struct _T11;_T11.tag=0;_T11.f1=s;_TE=_T11;}{struct Cyc_String_pa_PrintArg_struct _T11=_TE;void*_T12[1];_T12[0]=& _T11;_TF=_tag_fat("Unknown type constant:: %s",sizeof(char),27U);_T10=_tag_fat(_T12,sizeof(void*),1);_TD=Cyc_aprintf(_TF,_T10);}_TB(_TC,_TD);}
# 1143
# 1144
static void*Cyc_Parse_composite_constraint(enum Cyc_Parse_ConstraintOps op,void*t1,void*t2){enum Cyc_Parse_ConstraintOps _T0;int _T1;void*_T2;void*_T3;void*_T4;void*_T5;void*_T6;void*_T7;void*_T8;int(*_T9)(unsigned,struct _fat_ptr);struct _fat_ptr _TA;_T0=op;_T1=(int)_T0;switch(_T1){case Cyc_Parse_C_AND_OP: _T2=t1;_T3=
# 1145
# 1146
_check_null(t2);_T4=Cyc_BansheeIf_and_constraint(_T2,_T3);return _T4;case Cyc_Parse_C_OR_OP: _T5=t1;_T6=
_check_null(t2);_T7=Cyc_BansheeIf_or_constraint(_T5,_T6);return _T7;case Cyc_Parse_C_NOT_OP: _T8=
Cyc_BansheeIf_not_constraint(t1);return _T8;default:{
# 1149
# 1150
int(*_TB)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T9=_TB;}_TA=_tag_fat("Unexpected operator for composite constraint",sizeof(char),45U);_T9(0U,_TA);};}
# 1153
# 1154
static void*Cyc_Parse_comparison_constraint(enum Cyc_Parse_ConstraintOps op,void*t1,void*t2){enum Cyc_Parse_ConstraintOps _T0;int _T1;void*_T2;void*_T3;int(*_T4)(unsigned,struct _fat_ptr);struct _fat_ptr _T5;_T0=op;_T1=(int)_T0;switch(_T1){case Cyc_Parse_C_EQ_OP: _T2=
# 1155
# 1156
Cyc_BansheeIf_cmpeq_constraint(t1,t2);return _T2;case Cyc_Parse_C_INCL_OP: _T3=
Cyc_BansheeIf_inclusion_constraint(t1,t2);return _T3;default:{
# 1158
# 1159
int(*_T6)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T4=_T6;}_T5=_tag_fat("Unexpected operator for composite constraint",sizeof(char),45U);_T4(0U,_T5);};}struct _union_YYSTYPE_YYINITIALSVAL{int tag;int val;};struct _union_YYSTYPE_Int_tok{int tag;union Cyc_Absyn_Cnst val;};struct _union_YYSTYPE_Char_tok{int tag;char val;};struct _union_YYSTYPE_String_tok{int tag;struct _fat_ptr val;};struct _union_YYSTYPE_QualId_tok{int tag;struct _tuple0*val;};struct _union_YYSTYPE_Exp_tok{int tag;struct Cyc_Absyn_Exp*val;};struct _union_YYSTYPE_Stmt_tok{int tag;struct Cyc_Absyn_Stmt*val;};struct _tuple22{unsigned f0;void*f1;void*f2;};struct _union_YYSTYPE_YY1{int tag;struct _tuple22*val;};struct _union_YYSTYPE_YY2{int tag;void*val;};struct _union_YYSTYPE_YY3{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY4{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY5{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY6{int tag;enum Cyc_Absyn_Primop val;};struct _union_YYSTYPE_YY7{int tag;struct Cyc_Core_Opt*val;};struct _union_YYSTYPE_YY8{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY9{int tag;struct Cyc_Absyn_Pat*val;};struct _tuple23{struct Cyc_List_List*f0;int f1;};struct _union_YYSTYPE_YY10{int tag;struct _tuple23*val;};struct _union_YYSTYPE_YY11{int tag;struct Cyc_List_List*val;};struct _tuple24{struct Cyc_List_List*f0;struct Cyc_Absyn_Pat*f1;};struct _union_YYSTYPE_YY12{int tag;struct _tuple24*val;};struct _union_YYSTYPE_YY13{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY14{int tag;struct _tuple23*val;};struct _union_YYSTYPE_YY15{int tag;struct Cyc_Absyn_Fndecl*val;};struct _union_YYSTYPE_YY16{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY17{int tag;struct Cyc_Parse_Declaration_spec val;};struct _union_YYSTYPE_YY18{int tag;struct _tuple12 val;};struct _union_YYSTYPE_YY19{int tag;struct _tuple11*val;};struct _union_YYSTYPE_YY20{int tag;enum Cyc_Parse_Storage_class val;};struct _union_YYSTYPE_YY21{int tag;struct Cyc_Parse_Type_specifier val;};struct _union_YYSTYPE_YY22{int tag;enum Cyc_Absyn_AggrKind val;};struct _tuple25{int f0;enum Cyc_Absyn_AggrKind f1;};struct _union_YYSTYPE_YY23{int tag;struct _tuple25 val;};struct _union_YYSTYPE_YY24{int tag;struct Cyc_Absyn_Tqual val;};struct _union_YYSTYPE_YY25{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY26{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY27{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY28{int tag;struct Cyc_Parse_Declarator val;};struct _union_YYSTYPE_YY29{int tag;struct _tuple12*val;};struct _union_YYSTYPE_YY30{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY31{int tag;struct Cyc_Parse_Abstractdeclarator val;};struct _union_YYSTYPE_YY32{int tag;int val;};struct _union_YYSTYPE_YY33{int tag;enum Cyc_Absyn_Scope val;};struct _union_YYSTYPE_YY34{int tag;struct Cyc_Absyn_Datatypefield*val;};struct _union_YYSTYPE_YY35{int tag;struct Cyc_List_List*val;};struct _tuple26{struct Cyc_Absyn_Tqual f0;struct Cyc_Parse_Type_specifier f1;struct Cyc_List_List*f2;};struct _union_YYSTYPE_YY36{int tag;struct _tuple26 val;};struct _union_YYSTYPE_YY37{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY38{int tag;struct _tuple8*val;};struct _union_YYSTYPE_YY39{int tag;struct Cyc_List_List*val;};struct _tuple27{struct Cyc_List_List*f0;int f1;struct Cyc_Absyn_VarargInfo*f2;void*f3;struct Cyc_List_List*f4;struct Cyc_List_List*f5;};struct _union_YYSTYPE_YY40{int tag;struct _tuple27*val;};struct _union_YYSTYPE_YY41{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY42{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY43{int tag;void*val;};struct _union_YYSTYPE_YY44{int tag;struct Cyc_Absyn_Kind*val;};struct _union_YYSTYPE_YY45{int tag;void*val;};struct _union_YYSTYPE_YY46{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY47{int tag;void*val;};struct _union_YYSTYPE_YY48{int tag;struct Cyc_Absyn_Enumfield*val;};struct _union_YYSTYPE_YY49{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY50{int tag;void*val;};struct _tuple28{struct Cyc_List_List*f0;struct Cyc_List_List*f1;};struct _union_YYSTYPE_YY51{int tag;struct _tuple28*val;};struct _union_YYSTYPE_YY52{int tag;void*val;};struct _tuple29{void*f0;void*f1;};struct _union_YYSTYPE_YY53{int tag;struct _tuple29*val;};struct _union_YYSTYPE_YY54{int tag;void*val;};struct _union_YYSTYPE_YY55{int tag;struct Cyc_List_List*val;};struct _tuple30{struct Cyc_List_List*f0;unsigned f1;};struct _union_YYSTYPE_YY56{int tag;struct _tuple30*val;};struct _union_YYSTYPE_YY57{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY58{int tag;void*val;};struct _union_YYSTYPE_YY59{int tag;void*val;};struct _union_YYSTYPE_YY60{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY61{int tag;struct Cyc_Absyn_Exp*val;};struct _union_YYSTYPE_YY62{int tag;struct _tuple21 val;};struct _union_YYSTYPE_YY63{int tag;void*val;};struct _tuple31{struct Cyc_List_List*f0;struct Cyc_List_List*f1;struct Cyc_List_List*f2;};struct _union_YYSTYPE_YY64{int tag;struct _tuple31*val;};struct _union_YYSTYPE_YY65{int tag;struct _tuple28*val;};struct _union_YYSTYPE_YY66{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY67{int tag;struct Cyc_List_List*val;};struct _tuple32{struct _fat_ptr f0;struct Cyc_Absyn_Exp*f1;};struct _union_YYSTYPE_YY68{int tag;struct _tuple32*val;};struct _union_YYSTYPE_YY69{int tag;struct Cyc_Absyn_Exp*(*val)(struct Cyc_Absyn_Exp*,struct Cyc_Absyn_Exp*,unsigned);};struct _union_YYSTYPE_YY70{int tag;enum Cyc_Parse_ConstraintOps val;};struct _union_YYSTYPE_YY71{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY72{int tag;struct Cyc_List_List*val;};struct _union_YYSTYPE_YY73{int tag;void*val;};struct _union_YYSTYPE_YY74{int tag;int val;};union Cyc_YYSTYPE{struct _union_YYSTYPE_YYINITIALSVAL YYINITIALSVAL;struct _union_YYSTYPE_Int_tok Int_tok;struct _union_YYSTYPE_Char_tok Char_tok;struct _union_YYSTYPE_String_tok String_tok;struct _union_YYSTYPE_QualId_tok QualId_tok;struct _union_YYSTYPE_Exp_tok Exp_tok;struct _union_YYSTYPE_Stmt_tok Stmt_tok;struct _union_YYSTYPE_YY1 YY1;struct _union_YYSTYPE_YY2 YY2;struct _union_YYSTYPE_YY3 YY3;struct _union_YYSTYPE_YY4 YY4;struct _union_YYSTYPE_YY5 YY5;struct _union_YYSTYPE_YY6 YY6;struct _union_YYSTYPE_YY7 YY7;struct _union_YYSTYPE_YY8 YY8;struct _union_YYSTYPE_YY9 YY9;struct _union_YYSTYPE_YY10 YY10;struct _union_YYSTYPE_YY11 YY11;struct _union_YYSTYPE_YY12 YY12;struct _union_YYSTYPE_YY13 YY13;struct _union_YYSTYPE_YY14 YY14;struct _union_YYSTYPE_YY15 YY15;struct _union_YYSTYPE_YY16 YY16;struct _union_YYSTYPE_YY17 YY17;struct _union_YYSTYPE_YY18 YY18;struct _union_YYSTYPE_YY19 YY19;struct _union_YYSTYPE_YY20 YY20;struct _union_YYSTYPE_YY21 YY21;struct _union_YYSTYPE_YY22 YY22;struct _union_YYSTYPE_YY23 YY23;struct _union_YYSTYPE_YY24 YY24;struct _union_YYSTYPE_YY25 YY25;struct _union_YYSTYPE_YY26 YY26;struct _union_YYSTYPE_YY27 YY27;struct _union_YYSTYPE_YY28 YY28;struct _union_YYSTYPE_YY29 YY29;struct _union_YYSTYPE_YY30 YY30;struct _union_YYSTYPE_YY31 YY31;struct _union_YYSTYPE_YY32 YY32;struct _union_YYSTYPE_YY33 YY33;struct _union_YYSTYPE_YY34 YY34;struct _union_YYSTYPE_YY35 YY35;struct _union_YYSTYPE_YY36 YY36;struct _union_YYSTYPE_YY37 YY37;struct _union_YYSTYPE_YY38 YY38;struct _union_YYSTYPE_YY39 YY39;struct _union_YYSTYPE_YY40 YY40;struct _union_YYSTYPE_YY41 YY41;struct _union_YYSTYPE_YY42 YY42;struct _union_YYSTYPE_YY43 YY43;struct _union_YYSTYPE_YY44 YY44;struct _union_YYSTYPE_YY45 YY45;struct _union_YYSTYPE_YY46 YY46;struct _union_YYSTYPE_YY47 YY47;struct _union_YYSTYPE_YY48 YY48;struct _union_YYSTYPE_YY49 YY49;struct _union_YYSTYPE_YY50 YY50;struct _union_YYSTYPE_YY51 YY51;struct _union_YYSTYPE_YY52 YY52;struct _union_YYSTYPE_YY53 YY53;struct _union_YYSTYPE_YY54 YY54;struct _union_YYSTYPE_YY55 YY55;struct _union_YYSTYPE_YY56 YY56;struct _union_YYSTYPE_YY57 YY57;struct _union_YYSTYPE_YY58 YY58;struct _union_YYSTYPE_YY59 YY59;struct _union_YYSTYPE_YY60 YY60;struct _union_YYSTYPE_YY61 YY61;struct _union_YYSTYPE_YY62 YY62;struct _union_YYSTYPE_YY63 YY63;struct _union_YYSTYPE_YY64 YY64;struct _union_YYSTYPE_YY65 YY65;struct _union_YYSTYPE_YY66 YY66;struct _union_YYSTYPE_YY67 YY67;struct _union_YYSTYPE_YY68 YY68;struct _union_YYSTYPE_YY69 YY69;struct _union_YYSTYPE_YY70 YY70;struct _union_YYSTYPE_YY71 YY71;struct _union_YYSTYPE_YY72 YY72;struct _union_YYSTYPE_YY73 YY73;struct _union_YYSTYPE_YY74 YY74;};
# 1251
# 1252
static void Cyc_yythrowfail(struct _fat_ptr s){struct Cyc_Core_Failure_exn_struct*_T0;void*_T1;{struct Cyc_Core_Failure_exn_struct*_T2=_cycalloc(sizeof(struct Cyc_Core_Failure_exn_struct));_T2->tag=Cyc_Core_Failure;
_T2->f1=s;_T0=(struct Cyc_Core_Failure_exn_struct*)_T2;}_T1=(void*)_T0;_throw(_T1);}static char _TmpG2[7U]="cnst_t";
# 1214 "parse.y"
# 1215 "parse.y"
static union Cyc_Absyn_Cnst Cyc_yyget_Int_tok(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_Int_tok _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_Int_tok _T5;union Cyc_Absyn_Cnst _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2,(unsigned char*)_TmpG2,(unsigned char*)_TmpG2 + 7U};union Cyc_Absyn_Cnst _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->Int_tok;_T3=_T2.tag;if(_T3!=2)goto _TL1AD;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.Int_tok;_T7=_T5.val;}{union Cyc_Absyn_Cnst yy=_T7;_T6=yy;
# 1217
# 1218
return _T6;}_TL1AD:
 Cyc_yythrowfail(s);;}
# 1221
# 1222
static union Cyc_YYSTYPE Cyc_Int_tok(union Cyc_Absyn_Cnst yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.Int_tok.tag=2U;_T1.Int_tok.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3[5U]="char";
# 1215 "parse.y"
# 1216 "parse.y"
static char Cyc_yyget_Char_tok(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_Char_tok _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_Char_tok _T5;char _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3,(unsigned char*)_TmpG3,(unsigned char*)_TmpG3 + 5U};char _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->Char_tok;_T3=_T2.tag;if(_T3!=3)goto _TL1AF;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.Char_tok;_T7=_T5.val;}{char yy=_T7;_T6=yy;
# 1218
# 1219
return _T6;}_TL1AF:
 Cyc_yythrowfail(s);;}
# 1222
# 1223
static union Cyc_YYSTYPE Cyc_Char_tok(char yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.Char_tok.tag=3U;_T1.Char_tok.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4[13U]="string_t<`H>";
# 1216 "parse.y"
# 1217 "parse.y"
static struct _fat_ptr Cyc_yyget_String_tok(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_String_tok _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_String_tok _T5;struct _fat_ptr _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG4,(unsigned char*)_TmpG4,(unsigned char*)_TmpG4 + 13U};struct _fat_ptr _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->String_tok;_T3=_T2.tag;if(_T3!=4)goto _TL1B1;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.String_tok;_T7=_T5.val;}{struct _fat_ptr yy=_T7;_T6=yy;
# 1219
# 1220
return _T6;}_TL1B1:
 Cyc_yythrowfail(s);;}
# 1223
# 1224
static union Cyc_YYSTYPE Cyc_String_tok(struct _fat_ptr yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.String_tok.tag=4U;_T1.String_tok.val=yy1;_T0=_T1;}return _T0;}static char _TmpG5[35U]="$(seg_t,booltype_t, ptrbound_t)@`H";
# 1219 "parse.y"
# 1220 "parse.y"
static struct _tuple22*Cyc_yyget_YY1(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY1 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY1 _T5;struct _tuple22*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG5,(unsigned char*)_TmpG5,(unsigned char*)_TmpG5 + 35U};struct _tuple22*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY1;_T3=_T2.tag;if(_T3!=8)goto _TL1B3;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY1;_T7=_T5.val;}{struct _tuple22*yy=_T7;_T6=yy;
# 1222
# 1223
return _T6;}_TL1B3:
 Cyc_yythrowfail(s);;}
# 1226
# 1227
static union Cyc_YYSTYPE Cyc_YY1(struct _tuple22*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY1.tag=8U;_T1.YY1.val=yy1;_T0=_T1;}return _T0;}static char _TmpG6[11U]="ptrbound_t";
# 1220 "parse.y"
# 1221 "parse.y"
static void*Cyc_yyget_YY2(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY2 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY2 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG6,(unsigned char*)_TmpG6,(unsigned char*)_TmpG6 + 11U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY2;_T3=_T2.tag;if(_T3!=9)goto _TL1B5;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY2;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1223
# 1224
return _T6;}_TL1B5:
 Cyc_yythrowfail(s);;}
# 1227
# 1228
static union Cyc_YYSTYPE Cyc_YY2(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY2.tag=9U;_T1.YY2.val=yy1;_T0=_T1;}return _T0;}static char _TmpG7[28U]="list_t<offsetof_field_t,`H>";
# 1221 "parse.y"
# 1222 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY3(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY3 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY3 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG7,(unsigned char*)_TmpG7,(unsigned char*)_TmpG7 + 28U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY3;_T3=_T2.tag;if(_T3!=10)goto _TL1B7;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY3;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1224
# 1225
return _T6;}_TL1B7:
 Cyc_yythrowfail(s);;}
# 1228
# 1229
static union Cyc_YYSTYPE Cyc_YY3(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY3.tag=10U;_T1.YY3.val=yy1;_T0=_T1;}return _T0;}static char _TmpG8[6U]="exp_t";
# 1222 "parse.y"
# 1223 "parse.y"
static struct Cyc_Absyn_Exp*Cyc_yyget_Exp_tok(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_Exp_tok _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_Exp_tok _T5;struct Cyc_Absyn_Exp*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG8,(unsigned char*)_TmpG8,(unsigned char*)_TmpG8 + 6U};struct Cyc_Absyn_Exp*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->Exp_tok;_T3=_T2.tag;if(_T3!=6)goto _TL1B9;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.Exp_tok;_T7=_T5.val;}{struct Cyc_Absyn_Exp*yy=_T7;_T6=yy;
# 1225
# 1226
return _T6;}_TL1B9:
 Cyc_yythrowfail(s);;}
# 1229
# 1230
static union Cyc_YYSTYPE Cyc_Exp_tok(struct Cyc_Absyn_Exp*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.Exp_tok.tag=6U;_T1.Exp_tok.val=yy1;_T0=_T1;}return _T0;}static char _TmpG9[17U]="list_t<exp_t,`H>";
static struct Cyc_List_List*Cyc_yyget_YY4(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY4 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY4 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG9,(unsigned char*)_TmpG9,(unsigned char*)_TmpG9 + 17U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY4;_T3=_T2.tag;if(_T3!=11)goto _TL1BB;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY4;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1233
# 1234
return _T6;}_TL1BB:
 Cyc_yythrowfail(s);;}
# 1237
# 1238
static union Cyc_YYSTYPE Cyc_YY4(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY4.tag=11U;_T1.YY4.val=yy1;_T0=_T1;}return _T0;}static char _TmpGA[47U]="list_t<$(list_t<designator_t,`H>,exp_t)@`H,`H>";
# 1231 "parse.y"
# 1232 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY5(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY5 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY5 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpGA,(unsigned char*)_TmpGA,(unsigned char*)_TmpGA + 47U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY5;_T3=_T2.tag;if(_T3!=12)goto _TL1BD;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY5;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1234
# 1235
return _T6;}_TL1BD:
 Cyc_yythrowfail(s);;}
# 1238
# 1239
static union Cyc_YYSTYPE Cyc_YY5(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY5.tag=12U;_T1.YY5.val=yy1;_T0=_T1;}return _T0;}static char _TmpGB[9U]="primop_t";
# 1232 "parse.y"
# 1233 "parse.y"
static enum Cyc_Absyn_Primop Cyc_yyget_YY6(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY6 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY6 _T5;enum Cyc_Absyn_Primop _T6;
static struct _fat_ptr s={(unsigned char*)_TmpGB,(unsigned char*)_TmpGB,(unsigned char*)_TmpGB + 9U};enum Cyc_Absyn_Primop _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY6;_T3=_T2.tag;if(_T3!=13)goto _TL1BF;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY6;_T7=_T5.val;}{enum Cyc_Absyn_Primop yy=_T7;_T6=yy;
# 1235
# 1236
return _T6;}_TL1BF:
 Cyc_yythrowfail(s);;}
# 1239
# 1240
static union Cyc_YYSTYPE Cyc_YY6(enum Cyc_Absyn_Primop yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY6.tag=13U;_T1.YY6.val=yy1;_T0=_T1;}return _T0;}static char _TmpGC[19U]="opt_t<primop_t,`H>";
# 1233 "parse.y"
# 1234 "parse.y"
static struct Cyc_Core_Opt*Cyc_yyget_YY7(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY7 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY7 _T5;struct Cyc_Core_Opt*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpGC,(unsigned char*)_TmpGC,(unsigned char*)_TmpGC + 19U};struct Cyc_Core_Opt*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY7;_T3=_T2.tag;if(_T3!=14)goto _TL1C1;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY7;_T7=_T5.val;}{struct Cyc_Core_Opt*yy=_T7;_T6=yy;
# 1236
# 1237
return _T6;}_TL1C1:
 Cyc_yythrowfail(s);;}
# 1240
# 1241
static union Cyc_YYSTYPE Cyc_YY7(struct Cyc_Core_Opt*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY7.tag=14U;_T1.YY7.val=yy1;_T0=_T1;}return _T0;}static char _TmpGD[7U]="qvar_t";
# 1234 "parse.y"
# 1235 "parse.y"
static struct _tuple0*Cyc_yyget_QualId_tok(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_QualId_tok _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_QualId_tok _T5;struct _tuple0*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpGD,(unsigned char*)_TmpGD,(unsigned char*)_TmpGD + 7U};struct _tuple0*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->QualId_tok;_T3=_T2.tag;if(_T3!=5)goto _TL1C3;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.QualId_tok;_T7=_T5.val;}{struct _tuple0*yy=_T7;_T6=yy;
# 1237
# 1238
return _T6;}_TL1C3:
 Cyc_yythrowfail(s);;}
# 1241
# 1242
static union Cyc_YYSTYPE Cyc_QualId_tok(struct _tuple0*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.QualId_tok.tag=5U;_T1.QualId_tok.val=yy1;_T0=_T1;}return _T0;}static char _TmpGE[7U]="stmt_t";
# 1237 "parse.y"
# 1238 "parse.y"
static struct Cyc_Absyn_Stmt*Cyc_yyget_Stmt_tok(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_Stmt_tok _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_Stmt_tok _T5;struct Cyc_Absyn_Stmt*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpGE,(unsigned char*)_TmpGE,(unsigned char*)_TmpGE + 7U};struct Cyc_Absyn_Stmt*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->Stmt_tok;_T3=_T2.tag;if(_T3!=7)goto _TL1C5;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.Stmt_tok;_T7=_T5.val;}{struct Cyc_Absyn_Stmt*yy=_T7;_T6=yy;
# 1240
# 1241
return _T6;}_TL1C5:
 Cyc_yythrowfail(s);;}
# 1244
# 1245
static union Cyc_YYSTYPE Cyc_Stmt_tok(struct Cyc_Absyn_Stmt*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.Stmt_tok.tag=7U;_T1.Stmt_tok.val=yy1;_T0=_T1;}return _T0;}static char _TmpGF[27U]="list_t<switch_clause_t,`H>";
# 1240 "parse.y"
# 1241 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY8(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY8 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY8 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpGF,(unsigned char*)_TmpGF,(unsigned char*)_TmpGF + 27U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY8;_T3=_T2.tag;if(_T3!=15)goto _TL1C7;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY8;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1243
# 1244
return _T6;}_TL1C7:
 Cyc_yythrowfail(s);;}
# 1247
# 1248
static union Cyc_YYSTYPE Cyc_YY8(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY8.tag=15U;_T1.YY8.val=yy1;_T0=_T1;}return _T0;}static char _TmpG10[6U]="pat_t";
# 1241 "parse.y"
# 1242 "parse.y"
static struct Cyc_Absyn_Pat*Cyc_yyget_YY9(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY9 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY9 _T5;struct Cyc_Absyn_Pat*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG10,(unsigned char*)_TmpG10,(unsigned char*)_TmpG10 + 6U};struct Cyc_Absyn_Pat*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY9;_T3=_T2.tag;if(_T3!=16)goto _TL1C9;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY9;_T7=_T5.val;}{struct Cyc_Absyn_Pat*yy=_T7;_T6=yy;
# 1244
# 1245
return _T6;}_TL1C9:
 Cyc_yythrowfail(s);;}
# 1248
# 1249
static union Cyc_YYSTYPE Cyc_YY9(struct Cyc_Absyn_Pat*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY9.tag=16U;_T1.YY9.val=yy1;_T0=_T1;}return _T0;}static char _TmpG11[28U]="$(list_t<pat_t,`H>,bool)@`H";
# 1246 "parse.y"
# 1247 "parse.y"
static struct _tuple23*Cyc_yyget_YY10(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY10 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY10 _T5;struct _tuple23*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG11,(unsigned char*)_TmpG11,(unsigned char*)_TmpG11 + 28U};struct _tuple23*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY10;_T3=_T2.tag;if(_T3!=17)goto _TL1CB;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY10;_T7=_T5.val;}{struct _tuple23*yy=_T7;_T6=yy;
# 1249
# 1250
return _T6;}_TL1CB:
 Cyc_yythrowfail(s);;}
# 1253
# 1254
static union Cyc_YYSTYPE Cyc_YY10(struct _tuple23*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY10.tag=17U;_T1.YY10.val=yy1;_T0=_T1;}return _T0;}static char _TmpG12[17U]="list_t<pat_t,`H>";
# 1247 "parse.y"
# 1248 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY11(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY11 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY11 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG12,(unsigned char*)_TmpG12,(unsigned char*)_TmpG12 + 17U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY11;_T3=_T2.tag;if(_T3!=18)goto _TL1CD;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY11;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1250
# 1251
return _T6;}_TL1CD:
 Cyc_yythrowfail(s);;}
# 1254
# 1255
static union Cyc_YYSTYPE Cyc_YY11(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY11.tag=18U;_T1.YY11.val=yy1;_T0=_T1;}return _T0;}static char _TmpG13[36U]="$(list_t<designator_t,`H>,pat_t)@`H";
# 1248 "parse.y"
# 1249 "parse.y"
static struct _tuple24*Cyc_yyget_YY12(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY12 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY12 _T5;struct _tuple24*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG13,(unsigned char*)_TmpG13,(unsigned char*)_TmpG13 + 36U};struct _tuple24*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY12;_T3=_T2.tag;if(_T3!=19)goto _TL1CF;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY12;_T7=_T5.val;}{struct _tuple24*yy=_T7;_T6=yy;
# 1251
# 1252
return _T6;}_TL1CF:
 Cyc_yythrowfail(s);;}
# 1255
# 1256
static union Cyc_YYSTYPE Cyc_YY12(struct _tuple24*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY12.tag=19U;_T1.YY12.val=yy1;_T0=_T1;}return _T0;}static char _TmpG14[47U]="list_t<$(list_t<designator_t,`H>,pat_t)@`H,`H>";
# 1249 "parse.y"
# 1250 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY13(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY13 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY13 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG14,(unsigned char*)_TmpG14,(unsigned char*)_TmpG14 + 47U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY13;_T3=_T2.tag;if(_T3!=20)goto _TL1D1;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY13;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1252
# 1253
return _T6;}_TL1D1:
 Cyc_yythrowfail(s);;}
# 1256
# 1257
static union Cyc_YYSTYPE Cyc_YY13(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY13.tag=20U;_T1.YY13.val=yy1;_T0=_T1;}return _T0;}static char _TmpG15[58U]="$(list_t<$(list_t<designator_t,`H>,pat_t)@`H,`H>,bool)@`H";
# 1250 "parse.y"
# 1251 "parse.y"
static struct _tuple23*Cyc_yyget_YY14(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY14 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY14 _T5;struct _tuple23*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG15,(unsigned char*)_TmpG15,(unsigned char*)_TmpG15 + 58U};struct _tuple23*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY14;_T3=_T2.tag;if(_T3!=21)goto _TL1D3;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY14;_T7=_T5.val;}{struct _tuple23*yy=_T7;_T6=yy;
# 1253
# 1254
return _T6;}_TL1D3:
 Cyc_yythrowfail(s);;}
# 1257
# 1258
static union Cyc_YYSTYPE Cyc_YY14(struct _tuple23*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY14.tag=21U;_T1.YY14.val=yy1;_T0=_T1;}return _T0;}static char _TmpG16[9U]="fndecl_t";
# 1251 "parse.y"
# 1252 "parse.y"
static struct Cyc_Absyn_Fndecl*Cyc_yyget_YY15(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY15 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY15 _T5;struct Cyc_Absyn_Fndecl*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG16,(unsigned char*)_TmpG16,(unsigned char*)_TmpG16 + 9U};struct Cyc_Absyn_Fndecl*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY15;_T3=_T2.tag;if(_T3!=22)goto _TL1D5;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY15;_T7=_T5.val;}{struct Cyc_Absyn_Fndecl*yy=_T7;_T6=yy;
# 1254
# 1255
return _T6;}_TL1D5:
 Cyc_yythrowfail(s);;}
# 1258
# 1259
static union Cyc_YYSTYPE Cyc_YY15(struct Cyc_Absyn_Fndecl*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY15.tag=22U;_T1.YY15.val=yy1;_T0=_T1;}return _T0;}static char _TmpG17[18U]="list_t<decl_t,`H>";
# 1252 "parse.y"
# 1253 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY16(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY16 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY16 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG17,(unsigned char*)_TmpG17,(unsigned char*)_TmpG17 + 18U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY16;_T3=_T2.tag;if(_T3!=23)goto _TL1D7;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY16;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1255
# 1256
return _T6;}_TL1D7:
 Cyc_yythrowfail(s);;}
# 1259
# 1260
static union Cyc_YYSTYPE Cyc_YY16(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY16.tag=23U;_T1.YY16.val=yy1;_T0=_T1;}return _T0;}static char _TmpG18[12U]="decl_spec_t";
# 1255 "parse.y"
# 1256 "parse.y"
static struct Cyc_Parse_Declaration_spec Cyc_yyget_YY17(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY17 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY17 _T5;struct Cyc_Parse_Declaration_spec _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG18,(unsigned char*)_TmpG18,(unsigned char*)_TmpG18 + 12U};struct Cyc_Parse_Declaration_spec _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY17;_T3=_T2.tag;if(_T3!=24)goto _TL1D9;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY17;_T7=_T5.val;}{struct Cyc_Parse_Declaration_spec yy=_T7;_T6=yy;
# 1258
# 1259
return _T6;}_TL1D9:
 Cyc_yythrowfail(s);;}
# 1262
# 1263
static union Cyc_YYSTYPE Cyc_YY17(struct Cyc_Parse_Declaration_spec yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY17.tag=24U;_T1.YY17.val=yy1;_T0=_T1;}return _T0;}static char _TmpG19[41U]="$(declarator_t<`yy>,exp_opt_t,exp_opt_t)";
# 1256 "parse.y"
# 1257 "parse.y"
static struct _tuple12 Cyc_yyget_YY18(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY18 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY18 _T5;struct _tuple12 _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG19,(unsigned char*)_TmpG19,(unsigned char*)_TmpG19 + 41U};struct _tuple12 _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY18;_T3=_T2.tag;if(_T3!=25)goto _TL1DB;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY18;_T7=_T5.val;}{struct _tuple12 yy=_T7;_T6=yy;
# 1259
# 1260
return _T6;}_TL1DB:
 Cyc_yythrowfail(s);;}
# 1263
# 1264
static union Cyc_YYSTYPE Cyc_YY18(struct _tuple12 yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY18.tag=25U;_T1.YY18.val=yy1;_T0=_T1;}return _T0;}static char _TmpG1A[23U]="declarator_list_t<`yy>";
# 1257 "parse.y"
# 1258 "parse.y"
static struct _tuple11*Cyc_yyget_YY19(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY19 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY19 _T5;struct _tuple11*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG1A,(unsigned char*)_TmpG1A,(unsigned char*)_TmpG1A + 23U};struct _tuple11*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY19;_T3=_T2.tag;if(_T3!=26)goto _TL1DD;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY19;_T7=_T5.val;}{struct _tuple11*yy=_T7;_T6=yy;
# 1260
# 1261
return _T6;}_TL1DD:
 Cyc_yythrowfail(s);;}
# 1264
# 1265
static union Cyc_YYSTYPE Cyc_YY19(struct _tuple11*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY19.tag=26U;_T1.YY19.val=yy1;_T0=_T1;}return _T0;}static char _TmpG1B[16U]="storage_class_t";
# 1258 "parse.y"
# 1259 "parse.y"
static enum Cyc_Parse_Storage_class Cyc_yyget_YY20(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY20 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY20 _T5;enum Cyc_Parse_Storage_class _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG1B,(unsigned char*)_TmpG1B,(unsigned char*)_TmpG1B + 16U};enum Cyc_Parse_Storage_class _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY20;_T3=_T2.tag;if(_T3!=27)goto _TL1DF;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY20;_T7=_T5.val;}{enum Cyc_Parse_Storage_class yy=_T7;_T6=yy;
# 1261
# 1262
return _T6;}_TL1DF:
 Cyc_yythrowfail(s);;}
# 1265
# 1266
static union Cyc_YYSTYPE Cyc_YY20(enum Cyc_Parse_Storage_class yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY20.tag=27U;_T1.YY20.val=yy1;_T0=_T1;}return _T0;}static char _TmpG1C[17U]="type_specifier_t";
# 1259 "parse.y"
# 1260 "parse.y"
static struct Cyc_Parse_Type_specifier Cyc_yyget_YY21(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY21 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY21 _T5;struct Cyc_Parse_Type_specifier _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG1C,(unsigned char*)_TmpG1C,(unsigned char*)_TmpG1C + 17U};struct Cyc_Parse_Type_specifier _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY21;_T3=_T2.tag;if(_T3!=28)goto _TL1E1;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY21;_T7=_T5.val;}{struct Cyc_Parse_Type_specifier yy=_T7;_T6=yy;
# 1262
# 1263
return _T6;}_TL1E1:
 Cyc_yythrowfail(s);;}
# 1266
# 1267
static union Cyc_YYSTYPE Cyc_YY21(struct Cyc_Parse_Type_specifier yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY21.tag=28U;_T1.YY21.val=yy1;_T0=_T1;}return _T0;}static char _TmpG1D[12U]="aggr_kind_t";
# 1261 "parse.y"
# 1262 "parse.y"
static enum Cyc_Absyn_AggrKind Cyc_yyget_YY22(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY22 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY22 _T5;enum Cyc_Absyn_AggrKind _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG1D,(unsigned char*)_TmpG1D,(unsigned char*)_TmpG1D + 12U};enum Cyc_Absyn_AggrKind _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY22;_T3=_T2.tag;if(_T3!=29)goto _TL1E3;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY22;_T7=_T5.val;}{enum Cyc_Absyn_AggrKind yy=_T7;_T6=yy;
# 1264
# 1265
return _T6;}_TL1E3:
 Cyc_yythrowfail(s);;}
# 1268
# 1269
static union Cyc_YYSTYPE Cyc_YY22(enum Cyc_Absyn_AggrKind yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY22.tag=29U;_T1.YY22.val=yy1;_T0=_T1;}return _T0;}static char _TmpG1E[20U]="$(bool,aggr_kind_t)";
# 1262 "parse.y"
# 1263 "parse.y"
static struct _tuple25 Cyc_yyget_YY23(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY23 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY23 _T5;struct _tuple25 _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG1E,(unsigned char*)_TmpG1E,(unsigned char*)_TmpG1E + 20U};struct _tuple25 _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY23;_T3=_T2.tag;if(_T3!=30)goto _TL1E5;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY23;_T7=_T5.val;}{struct _tuple25 yy=_T7;_T6=yy;
# 1265
# 1266
return _T6;}_TL1E5:
 Cyc_yythrowfail(s);;}
# 1269
# 1270
static union Cyc_YYSTYPE Cyc_YY23(struct _tuple25 yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY23.tag=30U;_T1.YY23.val=yy1;_T0=_T1;}return _T0;}static char _TmpG1F[8U]="tqual_t";
# 1263 "parse.y"
# 1264 "parse.y"
static struct Cyc_Absyn_Tqual Cyc_yyget_YY24(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY24 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY24 _T5;struct Cyc_Absyn_Tqual _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG1F,(unsigned char*)_TmpG1F,(unsigned char*)_TmpG1F + 8U};struct Cyc_Absyn_Tqual _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY24;_T3=_T2.tag;if(_T3!=31)goto _TL1E7;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY24;_T7=_T5.val;}{struct Cyc_Absyn_Tqual yy=_T7;_T6=yy;
# 1266
# 1267
return _T6;}_TL1E7:
 Cyc_yythrowfail(s);;}
# 1270
# 1271
static union Cyc_YYSTYPE Cyc_YY24(struct Cyc_Absyn_Tqual yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY24.tag=31U;_T1.YY24.val=yy1;_T0=_T1;}return _T0;}static char _TmpG20[23U]="list_t<aggrfield_t,`H>";
# 1264 "parse.y"
# 1265 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY25(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY25 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY25 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG20,(unsigned char*)_TmpG20,(unsigned char*)_TmpG20 + 23U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY25;_T3=_T2.tag;if(_T3!=32)goto _TL1E9;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY25;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1267
# 1268
return _T6;}_TL1E9:
 Cyc_yythrowfail(s);;}
# 1271
# 1272
static union Cyc_YYSTYPE Cyc_YY25(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY25.tag=32U;_T1.YY25.val=yy1;_T0=_T1;}return _T0;}static char _TmpG21[34U]="list_t<list_t<aggrfield_t,`H>,`H>";
# 1265 "parse.y"
# 1266 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY26(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY26 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY26 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG21,(unsigned char*)_TmpG21,(unsigned char*)_TmpG21 + 34U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY26;_T3=_T2.tag;if(_T3!=33)goto _TL1EB;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY26;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1268
# 1269
return _T6;}_TL1EB:
 Cyc_yythrowfail(s);;}
# 1272
# 1273
static union Cyc_YYSTYPE Cyc_YY26(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY26.tag=33U;_T1.YY26.val=yy1;_T0=_T1;}return _T0;}static char _TmpG22[33U]="list_t<type_modifier_t<`yy>,`yy>";
# 1266 "parse.y"
# 1267 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY27(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY27 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY27 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG22,(unsigned char*)_TmpG22,(unsigned char*)_TmpG22 + 33U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY27;_T3=_T2.tag;if(_T3!=34)goto _TL1ED;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY27;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1269
# 1270
return _T6;}_TL1ED:
 Cyc_yythrowfail(s);;}
# 1273
# 1274
static union Cyc_YYSTYPE Cyc_YY27(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY27.tag=34U;_T1.YY27.val=yy1;_T0=_T1;}return _T0;}static char _TmpG23[18U]="declarator_t<`yy>";
# 1267 "parse.y"
# 1268 "parse.y"
static struct Cyc_Parse_Declarator Cyc_yyget_YY28(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY28 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY28 _T5;struct Cyc_Parse_Declarator _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG23,(unsigned char*)_TmpG23,(unsigned char*)_TmpG23 + 18U};struct Cyc_Parse_Declarator _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY28;_T3=_T2.tag;if(_T3!=35)goto _TL1EF;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY28;_T7=_T5.val;}{struct Cyc_Parse_Declarator yy=_T7;_T6=yy;
# 1270
# 1271
return _T6;}_TL1EF:
 Cyc_yythrowfail(s);;}
# 1274
# 1275
static union Cyc_YYSTYPE Cyc_YY28(struct Cyc_Parse_Declarator yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY28.tag=35U;_T1.YY28.val=yy1;_T0=_T1;}return _T0;}static char _TmpG24[45U]="$(declarator_t<`yy>,exp_opt_t,exp_opt_t)@`yy";
# 1268 "parse.y"
# 1269 "parse.y"
static struct _tuple12*Cyc_yyget_YY29(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY29 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY29 _T5;struct _tuple12*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG24,(unsigned char*)_TmpG24,(unsigned char*)_TmpG24 + 45U};struct _tuple12*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY29;_T3=_T2.tag;if(_T3!=36)goto _TL1F1;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY29;_T7=_T5.val;}{struct _tuple12*yy=_T7;_T6=yy;
# 1271
# 1272
return _T6;}_TL1F1:
 Cyc_yythrowfail(s);;}
# 1275
# 1276
static union Cyc_YYSTYPE Cyc_YY29(struct _tuple12*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY29.tag=36U;_T1.YY29.val=yy1;_T0=_T1;}return _T0;}static char _TmpG25[57U]="list_t<$(declarator_t<`yy>,exp_opt_t,exp_opt_t)@`yy,`yy>";
# 1269 "parse.y"
# 1270 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY30(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY30 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY30 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG25,(unsigned char*)_TmpG25,(unsigned char*)_TmpG25 + 57U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY30;_T3=_T2.tag;if(_T3!=37)goto _TL1F3;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY30;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1272
# 1273
return _T6;}_TL1F3:
 Cyc_yythrowfail(s);;}
# 1276
# 1277
static union Cyc_YYSTYPE Cyc_YY30(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY30.tag=37U;_T1.YY30.val=yy1;_T0=_T1;}return _T0;}static char _TmpG26[26U]="abstractdeclarator_t<`yy>";
# 1270 "parse.y"
# 1271 "parse.y"
static struct Cyc_Parse_Abstractdeclarator Cyc_yyget_YY31(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY31 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY31 _T5;struct Cyc_Parse_Abstractdeclarator _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG26,(unsigned char*)_TmpG26,(unsigned char*)_TmpG26 + 26U};struct Cyc_Parse_Abstractdeclarator _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY31;_T3=_T2.tag;if(_T3!=38)goto _TL1F5;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY31;_T7=_T5.val;}{struct Cyc_Parse_Abstractdeclarator yy=_T7;_T6=yy;
# 1273
# 1274
return _T6;}_TL1F5:
 Cyc_yythrowfail(s);;}
# 1277
# 1278
static union Cyc_YYSTYPE Cyc_YY31(struct Cyc_Parse_Abstractdeclarator yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY31.tag=38U;_T1.YY31.val=yy1;_T0=_T1;}return _T0;}static char _TmpG27[5U]="bool";
# 1271 "parse.y"
# 1272 "parse.y"
static int Cyc_yyget_YY32(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY32 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY32 _T5;int _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG27,(unsigned char*)_TmpG27,(unsigned char*)_TmpG27 + 5U};int _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY32;_T3=_T2.tag;if(_T3!=39)goto _TL1F7;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY32;_T7=_T5.val;}{int yy=_T7;_T6=yy;
# 1274
# 1275
return _T6;}_TL1F7:
 Cyc_yythrowfail(s);;}
# 1278
# 1279
static union Cyc_YYSTYPE Cyc_YY32(int yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY32.tag=39U;_T1.YY32.val=yy1;_T0=_T1;}return _T0;}static char _TmpG28[8U]="scope_t";
# 1272 "parse.y"
# 1273 "parse.y"
static enum Cyc_Absyn_Scope Cyc_yyget_YY33(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY33 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY33 _T5;enum Cyc_Absyn_Scope _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG28,(unsigned char*)_TmpG28,(unsigned char*)_TmpG28 + 8U};enum Cyc_Absyn_Scope _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY33;_T3=_T2.tag;if(_T3!=40)goto _TL1F9;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY33;_T7=_T5.val;}{enum Cyc_Absyn_Scope yy=_T7;_T6=yy;
# 1275
# 1276
return _T6;}_TL1F9:
 Cyc_yythrowfail(s);;}
# 1279
# 1280
static union Cyc_YYSTYPE Cyc_YY33(enum Cyc_Absyn_Scope yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY33.tag=40U;_T1.YY33.val=yy1;_T0=_T1;}return _T0;}static char _TmpG29[16U]="datatypefield_t";
# 1273 "parse.y"
# 1274 "parse.y"
static struct Cyc_Absyn_Datatypefield*Cyc_yyget_YY34(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY34 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY34 _T5;struct Cyc_Absyn_Datatypefield*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG29,(unsigned char*)_TmpG29,(unsigned char*)_TmpG29 + 16U};struct Cyc_Absyn_Datatypefield*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY34;_T3=_T2.tag;if(_T3!=41)goto _TL1FB;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY34;_T7=_T5.val;}{struct Cyc_Absyn_Datatypefield*yy=_T7;_T6=yy;
# 1276
# 1277
return _T6;}_TL1FB:
 Cyc_yythrowfail(s);;}
# 1280
# 1281
static union Cyc_YYSTYPE Cyc_YY34(struct Cyc_Absyn_Datatypefield*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY34.tag=41U;_T1.YY34.val=yy1;_T0=_T1;}return _T0;}static char _TmpG2A[27U]="list_t<datatypefield_t,`H>";
# 1274 "parse.y"
# 1275 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY35(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY35 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY35 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2A,(unsigned char*)_TmpG2A,(unsigned char*)_TmpG2A + 27U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY35;_T3=_T2.tag;if(_T3!=42)goto _TL1FD;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY35;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1277
# 1278
return _T6;}_TL1FD:
 Cyc_yythrowfail(s);;}
# 1281
# 1282
static union Cyc_YYSTYPE Cyc_YY35(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY35.tag=42U;_T1.YY35.val=yy1;_T0=_T1;}return _T0;}static char _TmpG2B[41U]="$(tqual_t,type_specifier_t,attributes_t)";
# 1275 "parse.y"
# 1276 "parse.y"
static struct _tuple26 Cyc_yyget_YY36(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY36 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY36 _T5;struct _tuple26 _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2B,(unsigned char*)_TmpG2B,(unsigned char*)_TmpG2B + 41U};struct _tuple26 _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY36;_T3=_T2.tag;if(_T3!=43)goto _TL1FF;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY36;_T7=_T5.val;}{struct _tuple26 yy=_T7;_T6=yy;
# 1278
# 1279
return _T6;}_TL1FF:
 Cyc_yythrowfail(s);;}
# 1282
# 1283
static union Cyc_YYSTYPE Cyc_YY36(struct _tuple26 yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY36.tag=43U;_T1.YY36.val=yy1;_T0=_T1;}return _T0;}static char _TmpG2C[17U]="list_t<var_t,`H>";
# 1276 "parse.y"
# 1277 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY37(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY37 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY37 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2C,(unsigned char*)_TmpG2C,(unsigned char*)_TmpG2C + 17U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY37;_T3=_T2.tag;if(_T3!=44)goto _TL201;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY37;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1279
# 1280
return _T6;}_TL201:
 Cyc_yythrowfail(s);;}
# 1283
# 1284
static union Cyc_YYSTYPE Cyc_YY37(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY37.tag=44U;_T1.YY37.val=yy1;_T0=_T1;}return _T0;}static char _TmpG2D[31U]="$(var_opt_t,tqual_t,type_t)@`H";
# 1277 "parse.y"
# 1278 "parse.y"
static struct _tuple8*Cyc_yyget_YY38(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY38 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY38 _T5;struct _tuple8*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2D,(unsigned char*)_TmpG2D,(unsigned char*)_TmpG2D + 31U};struct _tuple8*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY38;_T3=_T2.tag;if(_T3!=45)goto _TL203;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY38;_T7=_T5.val;}{struct _tuple8*yy=_T7;_T6=yy;
# 1280
# 1281
return _T6;}_TL203:
 Cyc_yythrowfail(s);;}
# 1284
# 1285
static union Cyc_YYSTYPE Cyc_YY38(struct _tuple8*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY38.tag=45U;_T1.YY38.val=yy1;_T0=_T1;}return _T0;}static char _TmpG2E[42U]="list_t<$(var_opt_t,tqual_t,type_t)@`H,`H>";
# 1278 "parse.y"
# 1279 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY39(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY39 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY39 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2E,(unsigned char*)_TmpG2E,(unsigned char*)_TmpG2E + 42U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY39;_T3=_T2.tag;if(_T3!=46)goto _TL205;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY39;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1281
# 1282
return _T6;}_TL205:
 Cyc_yythrowfail(s);;}
# 1285
# 1286
static union Cyc_YYSTYPE Cyc_YY39(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY39.tag=46U;_T1.YY39.val=yy1;_T0=_T1;}return _T0;}static char _TmpG2F[139U]="$(list_t<$(var_opt_t,tqual_t,type_t)@`H,`H>, bool,vararg_info_t *`H,type_opt_t, list_t<effconstr_t,`H>, list_t<$(type_t,type_t)@`H,`H>)@`H";
# 1279 "parse.y"
# 1280 "parse.y"
static struct _tuple27*Cyc_yyget_YY40(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY40 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY40 _T5;struct _tuple27*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG2F,(unsigned char*)_TmpG2F,(unsigned char*)_TmpG2F + 139U};struct _tuple27*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY40;_T3=_T2.tag;if(_T3!=47)goto _TL207;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY40;_T7=_T5.val;}{struct _tuple27*yy=_T7;_T6=yy;
# 1282
# 1283
return _T6;}_TL207:
 Cyc_yythrowfail(s);;}
# 1286
# 1287
static union Cyc_YYSTYPE Cyc_YY40(struct _tuple27*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY40.tag=47U;_T1.YY40.val=yy1;_T0=_T1;}return _T0;}static char _TmpG30[8U]="types_t";
# 1280 "parse.y"
# 1281 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY41(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY41 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY41 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG30,(unsigned char*)_TmpG30,(unsigned char*)_TmpG30 + 8U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY41;_T3=_T2.tag;if(_T3!=48)goto _TL209;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY41;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1283
# 1284
return _T6;}_TL209:
 Cyc_yythrowfail(s);;}
# 1287
# 1288
static union Cyc_YYSTYPE Cyc_YY41(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY41.tag=48U;_T1.YY41.val=yy1;_T0=_T1;}return _T0;}static char _TmpG31[24U]="list_t<designator_t,`H>";
# 1282 "parse.y"
# 1283 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY42(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY42 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY42 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG31,(unsigned char*)_TmpG31,(unsigned char*)_TmpG31 + 24U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY42;_T3=_T2.tag;if(_T3!=49)goto _TL20B;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY42;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1285
# 1286
return _T6;}_TL20B:
 Cyc_yythrowfail(s);;}
# 1289
# 1290
static union Cyc_YYSTYPE Cyc_YY42(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY42.tag=49U;_T1.YY42.val=yy1;_T0=_T1;}return _T0;}static char _TmpG32[13U]="designator_t";
# 1283 "parse.y"
# 1284 "parse.y"
static void*Cyc_yyget_YY43(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY43 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY43 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG32,(unsigned char*)_TmpG32,(unsigned char*)_TmpG32 + 13U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY43;_T3=_T2.tag;if(_T3!=50)goto _TL20D;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY43;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1286
# 1287
return _T6;}_TL20D:
 Cyc_yythrowfail(s);;}
# 1290
# 1291
static union Cyc_YYSTYPE Cyc_YY43(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY43.tag=50U;_T1.YY43.val=yy1;_T0=_T1;}return _T0;}static char _TmpG33[7U]="kind_t";
# 1284 "parse.y"
# 1285 "parse.y"
static struct Cyc_Absyn_Kind*Cyc_yyget_YY44(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY44 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY44 _T5;struct Cyc_Absyn_Kind*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG33,(unsigned char*)_TmpG33,(unsigned char*)_TmpG33 + 7U};struct Cyc_Absyn_Kind*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY44;_T3=_T2.tag;if(_T3!=51)goto _TL20F;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY44;_T7=_T5.val;}{struct Cyc_Absyn_Kind*yy=_T7;_T6=yy;
# 1287
# 1288
return _T6;}_TL20F:
 Cyc_yythrowfail(s);;}
# 1291
# 1292
static union Cyc_YYSTYPE Cyc_YY44(struct Cyc_Absyn_Kind*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY44.tag=51U;_T1.YY44.val=yy1;_T0=_T1;}return _T0;}static char _TmpG34[7U]="type_t";
# 1285 "parse.y"
# 1286 "parse.y"
static void*Cyc_yyget_YY45(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY45 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY45 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG34,(unsigned char*)_TmpG34,(unsigned char*)_TmpG34 + 7U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY45;_T3=_T2.tag;if(_T3!=52)goto _TL211;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY45;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1288
# 1289
return _T6;}_TL211:
 Cyc_yythrowfail(s);;}
# 1292
# 1293
static union Cyc_YYSTYPE Cyc_YY45(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY45.tag=52U;_T1.YY45.val=yy1;_T0=_T1;}return _T0;}static char _TmpG35[23U]="list_t<attribute_t,`H>";
# 1286 "parse.y"
# 1287 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY46(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY46 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY46 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG35,(unsigned char*)_TmpG35,(unsigned char*)_TmpG35 + 23U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY46;_T3=_T2.tag;if(_T3!=53)goto _TL213;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY46;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1289
# 1290
return _T6;}_TL213:
 Cyc_yythrowfail(s);;}
# 1293
# 1294
static union Cyc_YYSTYPE Cyc_YY46(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY46.tag=53U;_T1.YY46.val=yy1;_T0=_T1;}return _T0;}static char _TmpG36[12U]="attribute_t";
# 1287 "parse.y"
# 1288 "parse.y"
static void*Cyc_yyget_YY47(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY47 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY47 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG36,(unsigned char*)_TmpG36,(unsigned char*)_TmpG36 + 12U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY47;_T3=_T2.tag;if(_T3!=54)goto _TL215;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY47;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1290
# 1291
return _T6;}_TL215:
 Cyc_yythrowfail(s);;}
# 1294
# 1295
static union Cyc_YYSTYPE Cyc_YY47(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY47.tag=54U;_T1.YY47.val=yy1;_T0=_T1;}return _T0;}static char _TmpG37[12U]="enumfield_t";
# 1288 "parse.y"
# 1289 "parse.y"
static struct Cyc_Absyn_Enumfield*Cyc_yyget_YY48(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY48 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY48 _T5;struct Cyc_Absyn_Enumfield*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG37,(unsigned char*)_TmpG37,(unsigned char*)_TmpG37 + 12U};struct Cyc_Absyn_Enumfield*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY48;_T3=_T2.tag;if(_T3!=55)goto _TL217;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY48;_T7=_T5.val;}{struct Cyc_Absyn_Enumfield*yy=_T7;_T6=yy;
# 1291
# 1292
return _T6;}_TL217:
 Cyc_yythrowfail(s);;}
# 1295
# 1296
static union Cyc_YYSTYPE Cyc_YY48(struct Cyc_Absyn_Enumfield*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY48.tag=55U;_T1.YY48.val=yy1;_T0=_T1;}return _T0;}static char _TmpG38[23U]="list_t<enumfield_t,`H>";
# 1289 "parse.y"
# 1290 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY49(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY49 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY49 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG38,(unsigned char*)_TmpG38,(unsigned char*)_TmpG38 + 23U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY49;_T3=_T2.tag;if(_T3!=56)goto _TL219;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY49;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1292
# 1293
return _T6;}_TL219:
 Cyc_yythrowfail(s);;}
# 1296
# 1297
static union Cyc_YYSTYPE Cyc_YY49(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY49.tag=56U;_T1.YY49.val=yy1;_T0=_T1;}return _T0;}static char _TmpG39[11U]="type_opt_t";
# 1290 "parse.y"
# 1291 "parse.y"
static void*Cyc_yyget_YY50(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY50 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY50 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG39,(unsigned char*)_TmpG39,(unsigned char*)_TmpG39 + 11U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY50;_T3=_T2.tag;if(_T3!=57)goto _TL21B;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY50;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1293
# 1294
return _T6;}_TL21B:
 Cyc_yythrowfail(s);;}
# 1297
# 1298
static union Cyc_YYSTYPE Cyc_YY50(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY50.tag=57U;_T1.YY50.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3A[61U]="$(list_t<effconstr_t,`H>, list_t<$(type_t,type_t)@`H,`H>)*`H";
# 1292 "parse.y"
# 1293 "parse.y"
static struct _tuple28*Cyc_yyget_YY51(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY51 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY51 _T5;struct _tuple28*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3A,(unsigned char*)_TmpG3A,(unsigned char*)_TmpG3A + 61U};struct _tuple28*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY51;_T3=_T2.tag;if(_T3!=58)goto _TL21D;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY51;_T7=_T5.val;}{struct _tuple28*yy=_T7;_T6=yy;
# 1295
# 1296
return _T6;}_TL21D:
 Cyc_yythrowfail(s);;}
# 1299
# 1300
static union Cyc_YYSTYPE Cyc_YY51(struct _tuple28*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY51.tag=58U;_T1.YY51.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3B[12U]="effconstr_t";
# 1293 "parse.y"
# 1294 "parse.y"
static void*Cyc_yyget_YY52(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY52 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY52 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3B,(unsigned char*)_TmpG3B,(unsigned char*)_TmpG3B + 12U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY52;_T3=_T2.tag;if(_T3!=59)goto _TL21F;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY52;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1296
# 1297
return _T6;}_TL21F:
 Cyc_yythrowfail(s);;}
# 1300
# 1301
static union Cyc_YYSTYPE Cyc_YY52(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY52.tag=59U;_T1.YY52.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3C[21U]="$(type_t, type_t)@`H";
# 1294 "parse.y"
# 1295 "parse.y"
static struct _tuple29*Cyc_yyget_YY53(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY53 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY53 _T5;struct _tuple29*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3C,(unsigned char*)_TmpG3C,(unsigned char*)_TmpG3C + 21U};struct _tuple29*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY53;_T3=_T2.tag;if(_T3!=60)goto _TL221;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY53;_T7=_T5.val;}{struct _tuple29*yy=_T7;_T6=yy;
# 1297
# 1298
return _T6;}_TL221:
 Cyc_yythrowfail(s);;}
# 1301
# 1302
static union Cyc_YYSTYPE Cyc_YY53(struct _tuple29*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY53.tag=60U;_T1.YY53.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3D[11U]="booltype_t";
# 1295 "parse.y"
# 1296 "parse.y"
static void*Cyc_yyget_YY54(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY54 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY54 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3D,(unsigned char*)_TmpG3D,(unsigned char*)_TmpG3D + 11U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY54;_T3=_T2.tag;if(_T3!=61)goto _TL223;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY54;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1298
# 1299
return _T6;}_TL223:
 Cyc_yythrowfail(s);;}
# 1302
# 1303
static union Cyc_YYSTYPE Cyc_YY54(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY54.tag=61U;_T1.YY54.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3E[35U]="list_t<$(seg_t,qvar_t,bool)@`H,`H>";
# 1296 "parse.y"
# 1297 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY55(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY55 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY55 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3E,(unsigned char*)_TmpG3E,(unsigned char*)_TmpG3E + 35U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY55;_T3=_T2.tag;if(_T3!=62)goto _TL225;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY55;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1299
# 1300
return _T6;}_TL225:
 Cyc_yythrowfail(s);;}
# 1303
# 1304
static union Cyc_YYSTYPE Cyc_YY55(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY55.tag=62U;_T1.YY55.val=yy1;_T0=_T1;}return _T0;}static char _TmpG3F[48U]="$(list_t<$(seg_t,qvar_t,bool)@`H,`H>, seg_t)@`H";
# 1297 "parse.y"
# 1298 "parse.y"
static struct _tuple30*Cyc_yyget_YY56(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY56 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY56 _T5;struct _tuple30*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG3F,(unsigned char*)_TmpG3F,(unsigned char*)_TmpG3F + 48U};struct _tuple30*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY56;_T3=_T2.tag;if(_T3!=63)goto _TL227;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY56;_T7=_T5.val;}{struct _tuple30*yy=_T7;_T6=yy;
# 1300
# 1301
return _T6;}_TL227:
 Cyc_yythrowfail(s);;}
# 1304
# 1305
static union Cyc_YYSTYPE Cyc_YY56(struct _tuple30*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY56.tag=63U;_T1.YY56.val=yy1;_T0=_T1;}return _T0;}static char _TmpG40[18U]="list_t<qvar_t,`H>";
# 1298 "parse.y"
# 1299 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY57(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY57 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY57 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG40,(unsigned char*)_TmpG40,(unsigned char*)_TmpG40 + 18U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY57;_T3=_T2.tag;if(_T3!=64)goto _TL229;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY57;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1301
# 1302
return _T6;}_TL229:
 Cyc_yythrowfail(s);;}
# 1305
# 1306
static union Cyc_YYSTYPE Cyc_YY57(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY57.tag=64U;_T1.YY57.val=yy1;_T0=_T1;}return _T0;}static char _TmpG41[12U]="aqualtype_t";
# 1299 "parse.y"
# 1300 "parse.y"
static void*Cyc_yyget_YY58(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY58 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY58 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG41,(unsigned char*)_TmpG41,(unsigned char*)_TmpG41 + 12U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY58;_T3=_T2.tag;if(_T3!=65)goto _TL22B;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY58;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1302
# 1303
return _T6;}_TL22B:
 Cyc_yythrowfail(s);;}
# 1306
# 1307
static union Cyc_YYSTYPE Cyc_YY58(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY58.tag=65U;_T1.YY58.val=yy1;_T0=_T1;}return _T0;}static char _TmpG42[20U]="pointer_qual_t<`yy>";
# 1300 "parse.y"
# 1301 "parse.y"
static void*Cyc_yyget_YY59(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY59 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY59 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG42,(unsigned char*)_TmpG42,(unsigned char*)_TmpG42 + 20U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY59;_T3=_T2.tag;if(_T3!=66)goto _TL22D;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY59;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1303
# 1304
return _T6;}_TL22D:
 Cyc_yythrowfail(s);;}
# 1307
# 1308
static union Cyc_YYSTYPE Cyc_YY59(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY59.tag=66U;_T1.YY59.val=yy1;_T0=_T1;}return _T0;}static char _TmpG43[21U]="pointer_quals_t<`yy>";
# 1301 "parse.y"
# 1302 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY60(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY60 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY60 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG43,(unsigned char*)_TmpG43,(unsigned char*)_TmpG43 + 21U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY60;_T3=_T2.tag;if(_T3!=67)goto _TL22F;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY60;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1304
# 1305
return _T6;}_TL22F:
 Cyc_yythrowfail(s);;}
# 1308
# 1309
static union Cyc_YYSTYPE Cyc_YY60(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY60.tag=67U;_T1.YY60.val=yy1;_T0=_T1;}return _T0;}static char _TmpG44[10U]="exp_opt_t";
# 1302 "parse.y"
# 1303 "parse.y"
static struct Cyc_Absyn_Exp*Cyc_yyget_YY61(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY61 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY61 _T5;struct Cyc_Absyn_Exp*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG44,(unsigned char*)_TmpG44,(unsigned char*)_TmpG44 + 10U};struct Cyc_Absyn_Exp*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY61;_T3=_T2.tag;if(_T3!=68)goto _TL231;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY61;_T7=_T5.val;}{struct Cyc_Absyn_Exp*yy=_T7;_T6=yy;
# 1305
# 1306
return _T6;}_TL231:
 Cyc_yythrowfail(s);;}
# 1309
# 1310
static union Cyc_YYSTYPE Cyc_YY61(struct Cyc_Absyn_Exp*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY61.tag=68U;_T1.YY61.val=yy1;_T0=_T1;}return _T0;}static char _TmpG45[43U]="$(exp_opt_t,exp_opt_t,exp_opt_t,exp_opt_t)";
# 1303 "parse.y"
# 1304 "parse.y"
static struct _tuple21 Cyc_yyget_YY62(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY62 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY62 _T5;struct _tuple21 _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG45,(unsigned char*)_TmpG45,(unsigned char*)_TmpG45 + 43U};struct _tuple21 _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY62;_T3=_T2.tag;if(_T3!=69)goto _TL233;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY62;_T7=_T5.val;}{struct _tuple21 yy=_T7;_T6=yy;
# 1306
# 1307
return _T6;}_TL233:
 Cyc_yythrowfail(s);;}
# 1310
# 1311
static union Cyc_YYSTYPE Cyc_YY62(struct _tuple21 yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY62.tag=69U;_T1.YY62.val=yy1;_T0=_T1;}return _T0;}static char _TmpG46[10U]="raw_exp_t";
# 1305 "parse.y"
# 1306 "parse.y"
static void*Cyc_yyget_YY63(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY63 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY63 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG46,(unsigned char*)_TmpG46,(unsigned char*)_TmpG46 + 10U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY63;_T3=_T2.tag;if(_T3!=70)goto _TL235;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY63;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1308
# 1309
return _T6;}_TL235:
 Cyc_yythrowfail(s);;}
# 1312
# 1313
static union Cyc_YYSTYPE Cyc_YY63(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY63.tag=70U;_T1.YY63.val=yy1;_T0=_T1;}return _T0;}static char _TmpG47[112U]="$(list_t<$(string_t<`H>, exp_t)@`H, `H>, list_t<$(string_t<`H>, exp_t)@`H, `H>, list_t<string_t<`H>@`H, `H>)@`H";
# 1306 "parse.y"
# 1307 "parse.y"
static struct _tuple31*Cyc_yyget_YY64(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY64 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY64 _T5;struct _tuple31*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG47,(unsigned char*)_TmpG47,(unsigned char*)_TmpG47 + 112U};struct _tuple31*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY64;_T3=_T2.tag;if(_T3!=71)goto _TL237;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY64;_T7=_T5.val;}{struct _tuple31*yy=_T7;_T6=yy;
# 1309
# 1310
return _T6;}_TL237:
 Cyc_yythrowfail(s);;}
# 1313
# 1314
static union Cyc_YYSTYPE Cyc_YY64(struct _tuple31*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY64.tag=71U;_T1.YY64.val=yy1;_T0=_T1;}return _T0;}static char _TmpG48[73U]="$(list_t<$(string_t<`H>, exp_t)@`H, `H>, list_t<string_t<`H>@`H, `H>)@`H";
# 1307 "parse.y"
# 1308 "parse.y"
static struct _tuple28*Cyc_yyget_YY65(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY65 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY65 _T5;struct _tuple28*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG48,(unsigned char*)_TmpG48,(unsigned char*)_TmpG48 + 73U};struct _tuple28*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY65;_T3=_T2.tag;if(_T3!=72)goto _TL239;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY65;_T7=_T5.val;}{struct _tuple28*yy=_T7;_T6=yy;
# 1310
# 1311
return _T6;}_TL239:
 Cyc_yythrowfail(s);;}
# 1314
# 1315
static union Cyc_YYSTYPE Cyc_YY65(struct _tuple28*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY65.tag=72U;_T1.YY65.val=yy1;_T0=_T1;}return _T0;}static char _TmpG49[28U]="list_t<string_t<`H>@`H, `H>";
# 1308 "parse.y"
# 1309 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY66(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY66 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY66 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG49,(unsigned char*)_TmpG49,(unsigned char*)_TmpG49 + 28U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY66;_T3=_T2.tag;if(_T3!=73)goto _TL23B;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY66;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1311
# 1312
return _T6;}_TL23B:
 Cyc_yythrowfail(s);;}
# 1315
# 1316
static union Cyc_YYSTYPE Cyc_YY66(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY66.tag=73U;_T1.YY66.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4A[38U]="list_t<$(string_t<`H>, exp_t)@`H, `H>";
# 1309 "parse.y"
# 1310 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY67(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY67 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY67 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG4A,(unsigned char*)_TmpG4A,(unsigned char*)_TmpG4A + 38U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY67;_T3=_T2.tag;if(_T3!=74)goto _TL23D;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY67;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1312
# 1313
return _T6;}_TL23D:
 Cyc_yythrowfail(s);;}
# 1316
# 1317
static union Cyc_YYSTYPE Cyc_YY67(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY67.tag=74U;_T1.YY67.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4B[26U]="$(string_t<`H>, exp_t)@`H";
# 1310 "parse.y"
# 1311 "parse.y"
static struct _tuple32*Cyc_yyget_YY68(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY68 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY68 _T5;struct _tuple32*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG4B,(unsigned char*)_TmpG4B,(unsigned char*)_TmpG4B + 26U};struct _tuple32*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY68;_T3=_T2.tag;if(_T3!=75)goto _TL23F;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY68;_T7=_T5.val;}{struct _tuple32*yy=_T7;_T6=yy;
# 1313
# 1314
return _T6;}_TL23F:
 Cyc_yythrowfail(s);;}
# 1317
# 1318
static union Cyc_YYSTYPE Cyc_YY68(struct _tuple32*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY68.tag=75U;_T1.YY68.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4C[16U]="exp_maker_fun_t";
# 1311 "parse.y"
# 1312 "parse.y"
static struct Cyc_Absyn_Exp*(*Cyc_yyget_YY69(union Cyc_YYSTYPE*yy1))(struct Cyc_Absyn_Exp*,struct Cyc_Absyn_Exp*,unsigned){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY69 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY69 _T5;struct Cyc_Absyn_Exp*(*_T6)(struct Cyc_Absyn_Exp*,struct Cyc_Absyn_Exp*,unsigned);
static struct _fat_ptr s={(unsigned char*)_TmpG4C,(unsigned char*)_TmpG4C,(unsigned char*)_TmpG4C + 16U};struct Cyc_Absyn_Exp*(*_T7)(struct Cyc_Absyn_Exp*,struct Cyc_Absyn_Exp*,unsigned);_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY69;_T3=_T2.tag;if(_T3!=76)goto _TL241;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY69;_T7=_T5.val;}{struct Cyc_Absyn_Exp*(*yy)(struct Cyc_Absyn_Exp*,struct Cyc_Absyn_Exp*,unsigned)=_T7;_T6=yy;
# 1314
# 1315
return _T6;}_TL241:
 Cyc_yythrowfail(s);;}
# 1318
# 1319
static union Cyc_YYSTYPE Cyc_YY69(struct Cyc_Absyn_Exp*(*yy1)(struct Cyc_Absyn_Exp*,struct Cyc_Absyn_Exp*,unsigned)){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY69.tag=76U;_T1.YY69.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4D[19U]="enum ConstraintOps";
# 1313 "parse.y"
# 1314 "parse.y"
static enum Cyc_Parse_ConstraintOps Cyc_yyget_YY70(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY70 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY70 _T5;enum Cyc_Parse_ConstraintOps _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG4D,(unsigned char*)_TmpG4D,(unsigned char*)_TmpG4D + 19U};enum Cyc_Parse_ConstraintOps _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY70;_T3=_T2.tag;if(_T3!=77)goto _TL243;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY70;_T7=_T5.val;}{enum Cyc_Parse_ConstraintOps yy=_T7;_T6=yy;
# 1316
# 1317
return _T6;}_TL243:
 Cyc_yythrowfail(s);;}
# 1320
# 1321
static union Cyc_YYSTYPE Cyc_YY70(enum Cyc_Parse_ConstraintOps yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY70.tag=77U;_T1.YY70.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4E[60U]="list_t<$(type_t, list_t<BansheeIf::constraint_t,`H>)@`H,`H>";
# 1314 "parse.y"
# 1315 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY71(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY71 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY71 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG4E,(unsigned char*)_TmpG4E,(unsigned char*)_TmpG4E + 60U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY71;_T3=_T2.tag;if(_T3!=78)goto _TL245;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY71;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1317
# 1318
return _T6;}_TL245:
 Cyc_yythrowfail(s);;}
# 1321
# 1322
static union Cyc_YYSTYPE Cyc_YY71(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY71.tag=78U;_T1.YY71.val=yy1;_T0=_T1;}return _T0;}static char _TmpG4F[35U]="list_t<BansheeIf::constraint_t,`H>";
# 1315 "parse.y"
# 1316 "parse.y"
static struct Cyc_List_List*Cyc_yyget_YY72(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY72 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY72 _T5;struct Cyc_List_List*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG4F,(unsigned char*)_TmpG4F,(unsigned char*)_TmpG4F + 35U};struct Cyc_List_List*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY72;_T3=_T2.tag;if(_T3!=79)goto _TL247;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY72;_T7=_T5.val;}{struct Cyc_List_List*yy=_T7;_T6=yy;
# 1318
# 1319
return _T6;}_TL247:
 Cyc_yythrowfail(s);;}
# 1322
# 1323
static union Cyc_YYSTYPE Cyc_YY72(struct Cyc_List_List*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY72.tag=79U;_T1.YY72.val=yy1;_T0=_T1;}return _T0;}static char _TmpG50[24U]="BansheeIf::constraint_t";
# 1316 "parse.y"
# 1317 "parse.y"
static void*Cyc_yyget_YY73(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY73 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY73 _T5;void*_T6;
static struct _fat_ptr s={(unsigned char*)_TmpG50,(unsigned char*)_TmpG50,(unsigned char*)_TmpG50 + 24U};void*_T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY73;_T3=_T2.tag;if(_T3!=80)goto _TL249;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY73;_T7=_T5.val;}{void*yy=_T7;_T6=yy;
# 1319
# 1320
return _T6;}_TL249:
 Cyc_yythrowfail(s);;}
# 1323
# 1324
static union Cyc_YYSTYPE Cyc_YY73(void*yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY73.tag=80U;_T1.YY73.val=yy1;_T0=_T1;}return _T0;}static char _TmpG51[4U]="int";
# 1318 "parse.y"
# 1319 "parse.y"
static int Cyc_yyget_YY74(union Cyc_YYSTYPE*yy1){union Cyc_YYSTYPE*_T0;union Cyc_YYSTYPE*_T1;struct _union_YYSTYPE_YY74 _T2;unsigned _T3;union Cyc_YYSTYPE*_T4;struct _union_YYSTYPE_YY74 _T5;int _T6;
static struct _fat_ptr s={(unsigned char*)_TmpG51,(unsigned char*)_TmpG51,(unsigned char*)_TmpG51 + 4U};int _T7;_T0=yy1;_T1=(union Cyc_YYSTYPE*)_T0;_T2=_T1->YY74;_T3=_T2.tag;if(_T3!=81)goto _TL24B;_T4=yy1;{union Cyc_YYSTYPE _T8=*_T4;_T5=_T8.YY74;_T7=_T5.val;}{int yy=_T7;_T6=yy;
# 1321
# 1322
return _T6;}_TL24B:
 Cyc_yythrowfail(s);;}
# 1325
# 1326
static union Cyc_YYSTYPE Cyc_YY74(int yy1){union Cyc_YYSTYPE _T0;{union Cyc_YYSTYPE _T1;_T1.YY74.tag=81U;_T1.YY74.val=yy1;_T0=_T1;}return _T0;}struct Cyc_Yyltype{int timestamp;unsigned first_line;unsigned first_column;unsigned last_line;unsigned last_column;};
# 1341
# 1342
struct Cyc_Yyltype Cyc_yynewloc (void){struct Cyc_Yyltype _T0;{struct Cyc_Yyltype _T1;
_T1.timestamp=0;_T1.first_line=0U;_T1.first_column=0U;_T1.last_line=0U;_T1.last_column=0U;_T0=_T1;}return _T0;}
# 1344
# 1345
struct Cyc_Yyltype Cyc_yylloc={0,0U,0U,0U,0U};
# 1355 "parse.y"
# 1356 "parse.y"
static short Cyc_yytranslate[402U]={0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,173,2,2,158,171,168,2,155,156,151,166,150,169,161,170,2,2,2,2,2,2,2,2,2,2,160,147,153,152,154,165,164,174,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,175,2,2,2,2,162,2,163,167,157,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,148,159,149,172,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146};static char _TmpG52[2U]="$";static char _TmpG53[6U]="error";static char _TmpG54[12U]="$undefined.";static char _TmpG55[5U]="AUTO";static char _TmpG56[9U]="REGISTER";static char _TmpG57[7U]="STATIC";static char _TmpG58[7U]="EXTERN";static char _TmpG59[8U]="TYPEDEF";static char _TmpG5A[5U]="VOID";static char _TmpG5B[5U]="CHAR";static char _TmpG5C[6U]="SHORT";static char _TmpG5D[4U]="INT";static char _TmpG5E[5U]="LONG";static char _TmpG5F[6U]="FLOAT";static char _TmpG60[7U]="DOUBLE";static char _TmpG61[7U]="SIGNED";static char _TmpG62[9U]="UNSIGNED";static char _TmpG63[6U]="CONST";static char _TmpG64[9U]="VOLATILE";static char _TmpG65[9U]="RESTRICT";static char _TmpG66[7U]="STRUCT";static char _TmpG67[6U]="UNION";static char _TmpG68[5U]="CASE";static char _TmpG69[8U]="DEFAULT";static char _TmpG6A[7U]="INLINE";static char _TmpG6B[7U]="SIZEOF";static char _TmpG6C[9U]="OFFSETOF";static char _TmpG6D[3U]="IF";static char _TmpG6E[5U]="ELSE";static char _TmpG6F[7U]="SWITCH";static char _TmpG70[6U]="WHILE";static char _TmpG71[3U]="DO";static char _TmpG72[4U]="FOR";static char _TmpG73[5U]="GOTO";static char _TmpG74[9U]="CONTINUE";static char _TmpG75[6U]="BREAK";static char _TmpG76[7U]="RETURN";static char _TmpG77[5U]="ENUM";static char _TmpG78[7U]="TYPEOF";static char _TmpG79[16U]="BUILTIN_VA_LIST";static char _TmpG7A[10U]="EXTENSION";static char _TmpG7B[8U]="COMPLEX";static char _TmpG7C[8U]="NULL_kw";static char _TmpG7D[4U]="LET";static char _TmpG7E[6U]="THROW";static char _TmpG7F[4U]="TRY";static char _TmpG80[6U]="CATCH";static char _TmpG81[7U]="EXPORT";static char _TmpG82[9U]="OVERRIDE";static char _TmpG83[5U]="HIDE";static char _TmpG84[4U]="NEW";static char _TmpG85[5U]="QNEW";static char _TmpG86[9U]="ABSTRACT";static char _TmpG87[9U]="FALLTHRU";static char _TmpG88[6U]="USING";static char _TmpG89[10U]="NAMESPACE";static char _TmpG8A[12U]="NOINFERENCE";static char _TmpG8B[9U]="DATATYPE";static char _TmpG8C[7U]="MALLOC";static char _TmpG8D[8U]="RMALLOC";static char _TmpG8E[9U]="RVMALLOC";static char _TmpG8F[15U]="RMALLOC_INLINE";static char _TmpG90[8U]="QMALLOC";static char _TmpG91[7U]="CALLOC";static char _TmpG92[8U]="QCALLOC";static char _TmpG93[8U]="RCALLOC";static char _TmpG94[5U]="SWAP";static char _TmpG95[7U]="ASSERT";static char _TmpG96[9U]="REGION_T";static char _TmpG97[6U]="TAG_T";static char _TmpG98[7U]="REGION";static char _TmpG99[5U]="RNEW";static char _TmpG9A[8U]="REGIONS";static char _TmpG9B[7U]="PORTON";static char _TmpG9C[8U]="PORTOFF";static char _TmpG9D[7U]="PRAGMA";static char _TmpG9E[10U]="TEMPESTON";static char _TmpG9F[11U]="TEMPESTOFF";static char _TmpGA0[13U]="AQ_ALIASABLE";static char _TmpGA1[10U]="AQ_REFCNT";static char _TmpGA2[14U]="AQ_RESTRICTED";static char _TmpGA3[10U]="AQ_UNIQUE";static char _TmpGA4[8U]="AQUAL_T";static char _TmpGA5[8U]="NUMELTS";static char _TmpGA6[6U]="TAGOF";static char _TmpGA7[8U]="VALUEOF";static char _TmpGA8[10U]="VALUEOF_T";static char _TmpGA9[9U]="TAGCHECK";static char _TmpGAA[13U]="NUMELTS_QUAL";static char _TmpGAB[10U]="THIN_QUAL";static char _TmpGAC[9U]="FAT_QUAL";static char _TmpGAD[13U]="NOTNULL_QUAL";static char _TmpGAE[14U]="NULLABLE_QUAL";static char _TmpGAF[14U]="REQUIRES_QUAL";static char _TmpGB0[13U]="ENSURES_QUAL";static char _TmpGB1[12U]="EFFECT_QUAL";static char _TmpGB2[12U]="THROWS_QUAL";static char _TmpGB3[12U]="SUBSET_QUAL";static char _TmpGB4[12U]="REGION_QUAL";static char _TmpGB5[16U]="NOZEROTERM_QUAL";static char _TmpGB6[14U]="ZEROTERM_QUAL";static char _TmpGB7[12U]="TAGGED_QUAL";static char _TmpGB8[12U]="ASSERT_QUAL";static char _TmpGB9[18U]="ASSERT_FALSE_QUAL";static char _TmpGBA[11U]="ALIAS_QUAL";static char _TmpGBB[7U]="AQUALS";static char _TmpGBC[12U]="CHECKS_QUAL";static char _TmpGBD[16U]="EXTENSIBLE_QUAL";static char _TmpGBE[18U]="AUTORELEASED_QUAL";static char _TmpGBF[7U]="PTR_OP";static char _TmpGC0[7U]="INC_OP";static char _TmpGC1[7U]="DEC_OP";static char _TmpGC2[8U]="LEFT_OP";static char _TmpGC3[9U]="RIGHT_OP";static char _TmpGC4[6U]="LE_OP";static char _TmpGC5[6U]="GE_OP";static char _TmpGC6[6U]="EQ_OP";static char _TmpGC7[6U]="NE_OP";static char _TmpGC8[7U]="AND_OP";static char _TmpGC9[6U]="OR_OP";static char _TmpGCA[11U]="MUL_ASSIGN";static char _TmpGCB[11U]="DIV_ASSIGN";static char _TmpGCC[11U]="MOD_ASSIGN";static char _TmpGCD[11U]="ADD_ASSIGN";static char _TmpGCE[11U]="SUB_ASSIGN";static char _TmpGCF[12U]="LEFT_ASSIGN";static char _TmpGD0[13U]="RIGHT_ASSIGN";static char _TmpGD1[11U]="AND_ASSIGN";static char _TmpGD2[11U]="XOR_ASSIGN";static char _TmpGD3[10U]="OR_ASSIGN";static char _TmpGD4[9U]="ELLIPSIS";static char _TmpGD5[11U]="LEFT_RIGHT";static char _TmpGD6[12U]="COLON_COLON";static char _TmpGD7[11U]="IDENTIFIER";static char _TmpGD8[17U]="INTEGER_CONSTANT";static char _TmpGD9[7U]="STRING";static char _TmpGDA[8U]="WSTRING";static char _TmpGDB[19U]="CHARACTER_CONSTANT";static char _TmpGDC[20U]="WCHARACTER_CONSTANT";static char _TmpGDD[18U]="FLOATING_CONSTANT";static char _TmpGDE[9U]="TYPE_VAR";static char _TmpGDF[13U]="TYPEDEF_NAME";static char _TmpGE0[16U]="QUAL_IDENTIFIER";static char _TmpGE1[18U]="QUAL_TYPEDEF_NAME";static char _TmpGE2[18U]="AQUAL_SHORT_CONST";static char _TmpGE3[10U]="ATTRIBUTE";static char _TmpGE4[8U]="ASM_TOK";static char _TmpGE5[4U]="';'";static char _TmpGE6[4U]="'{'";static char _TmpGE7[4U]="'}'";static char _TmpGE8[4U]="','";static char _TmpGE9[4U]="'*'";static char _TmpGEA[4U]="'='";static char _TmpGEB[4U]="'<'";static char _TmpGEC[4U]="'>'";static char _TmpGED[4U]="'('";static char _TmpGEE[4U]="')'";static char _TmpGEF[4U]="'_'";static char _TmpGF0[4U]="'$'";static char _TmpGF1[4U]="'|'";static char _TmpGF2[4U]="':'";static char _TmpGF3[4U]="'.'";static char _TmpGF4[4U]="'['";static char _TmpGF5[4U]="']'";static char _TmpGF6[4U]="'@'";static char _TmpGF7[4U]="'?'";static char _TmpGF8[4U]="'+'";static char _TmpGF9[4U]="'^'";static char _TmpGFA[4U]="'&'";static char _TmpGFB[4U]="'-'";static char _TmpGFC[4U]="'/'";static char _TmpGFD[4U]="'%'";static char _TmpGFE[4U]="'~'";static char _TmpGFF[4U]="'!'";static char _TmpG100[4U]="'A'";static char _TmpG101[4U]="'V'";static char _TmpG102[20U]="prog_or_constraints";static char _TmpG103[5U]="prog";static char _TmpG104[17U]="translation_unit";static char _TmpG105[18U]="tempest_on_action";static char _TmpG106[19U]="tempest_off_action";static char _TmpG107[16U]="extern_c_action";static char _TmpG108[13U]="end_extern_c";static char _TmpG109[14U]="hide_list_opt";static char _TmpG10A[17U]="hide_list_values";static char _TmpG10B[16U]="export_list_opt";static char _TmpG10C[12U]="export_list";static char _TmpG10D[19U]="export_list_values";static char _TmpG10E[13U]="override_opt";static char _TmpG10F[21U]="external_declaration";static char _TmpG110[14U]="optional_semi";static char _TmpG111[20U]="function_definition";static char _TmpG112[21U]="function_definition2";static char _TmpG113[13U]="using_action";static char _TmpG114[15U]="unusing_action";static char _TmpG115[17U]="namespace_action";static char _TmpG116[19U]="unnamespace_action";static char _TmpG117[19U]="noinference_action";static char _TmpG118[21U]="unnoinference_action";static char _TmpG119[12U]="declaration";static char _TmpG11A[9U]="open_opt";static char _TmpG11B[17U]="declaration_list";static char _TmpG11C[23U]="declaration_specifiers";static char _TmpG11D[24U]="storage_class_specifier";static char _TmpG11E[15U]="attributes_opt";static char _TmpG11F[11U]="attributes";static char _TmpG120[15U]="attribute_list";static char _TmpG121[10U]="attribute";static char _TmpG122[15U]="type_specifier";static char _TmpG123[25U]="type_specifier_notypedef";static char _TmpG124[5U]="kind";static char _TmpG125[15U]="type_qualifier";static char _TmpG126[15U]="enum_specifier";static char _TmpG127[11U]="enum_field";static char _TmpG128[22U]="enum_declaration_list";static char _TmpG129[26U]="struct_or_union_specifier";static char _TmpG12A[26U]="maybe_tagged_struct_union";static char _TmpG12B[16U]="struct_or_union";static char _TmpG12C[16U]="type_params_opt";static char _TmpG12D[24U]="struct_declaration_list";static char _TmpG12E[25U]="struct_declaration_list0";static char _TmpG12F[25U]="init_declarator_list_rev";static char _TmpG130[16U]="init_declarator";static char _TmpG131[19U]="struct_declaration";static char _TmpG132[25U]="specifier_qualifier_list";static char _TmpG133[35U]="notypedef_specifier_qualifier_list";static char _TmpG134[27U]="struct_declarator_list_rev";static char _TmpG135[18U]="struct_declarator";static char _TmpG136[20U]="requires_clause_opt";static char _TmpG137[19U]="datatype_specifier";static char _TmpG138[14U]="qual_datatype";static char _TmpG139[19U]="datatypefield_list";static char _TmpG13A[20U]="datatypefield_scope";static char _TmpG13B[14U]="datatypefield";static char _TmpG13C[11U]="declarator";static char _TmpG13D[23U]="declarator_withtypedef";static char _TmpG13E[18U]="direct_declarator";static char _TmpG13F[30U]="direct_declarator_withtypedef";static char _TmpG140[8U]="pointer";static char _TmpG141[12U]="one_pointer";static char _TmpG142[14U]="pointer_quals";static char _TmpG143[13U]="pointer_qual";static char _TmpG144[16U]="aqual_specifier";static char _TmpG145[23U]="pointer_null_and_bound";static char _TmpG146[14U]="pointer_bound";static char _TmpG147[18U]="zeroterm_qual_opt";static char _TmpG148[8U]="eff_set";static char _TmpG149[8U]="eff_opt";static char _TmpG14A[11U]="tqual_list";static char _TmpG14B[20U]="parameter_type_list";static char _TmpG14C[14U]="opt_aqual_bnd";static char _TmpG14D[9U]="type_var";static char _TmpG14E[16U]="optional_effect";static char _TmpG14F[27U]="optional_effconstr_qualbnd";static char _TmpG150[18U]="effconstr_qualbnd";static char _TmpG151[14U]="effconstr_elt";static char _TmpG152[13U]="qual_bnd_elt";static char _TmpG153[12U]="aqual_const";static char _TmpG154[15U]="qual_bnd_const";static char _TmpG155[14U]="qual_bnd_term";static char _TmpG156[16U]="optional_inject";static char _TmpG157[11U]="effect_set";static char _TmpG158[14U]="atomic_effect";static char _TmpG159[11U]="region_set";static char _TmpG15A[15U]="parameter_list";static char _TmpG15B[22U]="parameter_declaration";static char _TmpG15C[16U]="identifier_list";static char _TmpG15D[17U]="identifier_list0";static char _TmpG15E[12U]="initializer";static char _TmpG15F[18U]="array_initializer";static char _TmpG160[17U]="initializer_list";static char _TmpG161[12U]="designation";static char _TmpG162[16U]="designator_list";static char _TmpG163[11U]="designator";static char _TmpG164[10U]="type_name";static char _TmpG165[14U]="any_type_name";static char _TmpG166[15U]="type_name_list";static char _TmpG167[20U]="abstract_declarator";static char _TmpG168[27U]="direct_abstract_declarator";static char _TmpG169[16U]="chk_req_ens_thr";static char _TmpG16A[20U]="chk_req_ens_thr_opt";static char _TmpG16B[10U]="statement";static char _TmpG16C[18U]="labeled_statement";static char _TmpG16D[21U]="expression_statement";static char _TmpG16E[18U]="start_fndef_block";static char _TmpG16F[16U]="end_fndef_block";static char _TmpG170[25U]="fndef_compound_statement";static char _TmpG171[19U]="compound_statement";static char _TmpG172[16U]="block_item_list";static char _TmpG173[20U]="selection_statement";static char _TmpG174[15U]="switch_clauses";static char _TmpG175[20U]="iteration_statement";static char _TmpG176[12U]="for_exp_opt";static char _TmpG177[15U]="jump_statement";static char _TmpG178[12U]="exp_pattern";static char _TmpG179[20U]="conditional_pattern";static char _TmpG17A[19U]="logical_or_pattern";static char _TmpG17B[20U]="logical_and_pattern";static char _TmpG17C[21U]="inclusive_or_pattern";static char _TmpG17D[21U]="exclusive_or_pattern";static char _TmpG17E[12U]="and_pattern";static char _TmpG17F[17U]="equality_pattern";static char _TmpG180[19U]="relational_pattern";static char _TmpG181[14U]="shift_pattern";static char _TmpG182[17U]="additive_pattern";static char _TmpG183[23U]="multiplicative_pattern";static char _TmpG184[13U]="cast_pattern";static char _TmpG185[14U]="unary_pattern";static char _TmpG186[16U]="postfix_pattern";static char _TmpG187[16U]="primary_pattern";static char _TmpG188[8U]="pattern";static char _TmpG189[19U]="tuple_pattern_list";static char _TmpG18A[20U]="tuple_pattern_list0";static char _TmpG18B[14U]="field_pattern";static char _TmpG18C[19U]="field_pattern_list";static char _TmpG18D[20U]="field_pattern_list0";static char _TmpG18E[11U]="expression";static char _TmpG18F[22U]="assignment_expression";static char _TmpG190[20U]="assignment_operator";static char _TmpG191[23U]="conditional_expression";static char _TmpG192[20U]="constant_expression";static char _TmpG193[22U]="logical_or_expression";static char _TmpG194[23U]="logical_and_expression";static char _TmpG195[24U]="inclusive_or_expression";static char _TmpG196[24U]="exclusive_or_expression";static char _TmpG197[15U]="and_expression";static char _TmpG198[20U]="equality_expression";static char _TmpG199[22U]="relational_expression";static char _TmpG19A[17U]="shift_expression";static char _TmpG19B[20U]="additive_expression";static char _TmpG19C[26U]="multiplicative_expression";static char _TmpG19D[12U]="equality_op";static char _TmpG19E[14U]="relational_op";static char _TmpG19F[12U]="additive_op";static char _TmpG1A0[18U]="multiplicative_op";static char _TmpG1A1[16U]="cast_expression";static char _TmpG1A2[17U]="unary_expression";static char _TmpG1A3[15U]="unary_operator";static char _TmpG1A4[9U]="asm_expr";static char _TmpG1A5[13U]="volatile_opt";static char _TmpG1A6[12U]="asm_out_opt";static char _TmpG1A7[12U]="asm_outlist";static char _TmpG1A8[11U]="asm_in_opt";static char _TmpG1A9[11U]="asm_inlist";static char _TmpG1AA[11U]="asm_io_elt";static char _TmpG1AB[16U]="asm_clobber_opt";static char _TmpG1AC[17U]="asm_clobber_list";static char _TmpG1AD[19U]="postfix_expression";static char _TmpG1AE[17U]="field_expression";static char _TmpG1AF[19U]="primary_expression";static char _TmpG1B0[25U]="argument_expression_list";static char _TmpG1B1[26U]="argument_expression_list0";static char _TmpG1B2[9U]="constant";static char _TmpG1B3[20U]="qual_opt_identifier";static char _TmpG1B4[17U]="qual_opt_typedef";static char _TmpG1B5[18U]="struct_union_name";static char _TmpG1B6[11U]="field_name";static char _TmpG1B7[12U]="right_angle";static char _TmpG1B8[16U]="all_constraints";static char _TmpG1B9[20U]="constraint_list_opt";static char _TmpG1BA[16U]="constraint_list";static char _TmpG1BB[15U]="tvar_or_string";static char _TmpG1BC[11U]="constraint";static char _TmpG1BD[5U]="c_op";
# 1758 "parse.y"
# 1759 "parse.y"
static struct _fat_ptr Cyc_yytname[364U]={{(unsigned char*)_TmpG52,(unsigned char*)_TmpG52,(unsigned char*)_TmpG52 + 2U},{(unsigned char*)_TmpG53,(unsigned char*)_TmpG53,(unsigned char*)_TmpG53 + 6U},{(unsigned char*)_TmpG54,(unsigned char*)_TmpG54,(unsigned char*)_TmpG54 + 12U},{(unsigned char*)_TmpG55,(unsigned char*)_TmpG55,(unsigned char*)_TmpG55 + 5U},{(unsigned char*)_TmpG56,(unsigned char*)_TmpG56,(unsigned char*)_TmpG56 + 9U},{(unsigned char*)_TmpG57,(unsigned char*)_TmpG57,(unsigned char*)_TmpG57 + 7U},{(unsigned char*)_TmpG58,(unsigned char*)_TmpG58,(unsigned char*)_TmpG58 + 7U},{(unsigned char*)_TmpG59,(unsigned char*)_TmpG59,(unsigned char*)_TmpG59 + 8U},{(unsigned char*)_TmpG5A,(unsigned char*)_TmpG5A,(unsigned char*)_TmpG5A + 5U},{(unsigned char*)_TmpG5B,(unsigned char*)_TmpG5B,(unsigned char*)_TmpG5B + 5U},{(unsigned char*)_TmpG5C,(unsigned char*)_TmpG5C,(unsigned char*)_TmpG5C + 6U},{(unsigned char*)_TmpG5D,(unsigned char*)_TmpG5D,(unsigned char*)_TmpG5D + 4U},{(unsigned char*)_TmpG5E,(unsigned char*)_TmpG5E,(unsigned char*)_TmpG5E + 5U},{(unsigned char*)_TmpG5F,(unsigned char*)_TmpG5F,(unsigned char*)_TmpG5F + 6U},{(unsigned char*)_TmpG60,(unsigned char*)_TmpG60,(unsigned char*)_TmpG60 + 7U},{(unsigned char*)_TmpG61,(unsigned char*)_TmpG61,(unsigned char*)_TmpG61 + 7U},{(unsigned char*)_TmpG62,(unsigned char*)_TmpG62,(unsigned char*)_TmpG62 + 9U},{(unsigned char*)_TmpG63,(unsigned char*)_TmpG63,(unsigned char*)_TmpG63 + 6U},{(unsigned char*)_TmpG64,(unsigned char*)_TmpG64,(unsigned char*)_TmpG64 + 9U},{(unsigned char*)_TmpG65,(unsigned char*)_TmpG65,(unsigned char*)_TmpG65 + 9U},{(unsigned char*)_TmpG66,(unsigned char*)_TmpG66,(unsigned char*)_TmpG66 + 7U},{(unsigned char*)_TmpG67,(unsigned char*)_TmpG67,(unsigned char*)_TmpG67 + 6U},{(unsigned char*)_TmpG68,(unsigned char*)_TmpG68,(unsigned char*)_TmpG68 + 5U},{(unsigned char*)_TmpG69,(unsigned char*)_TmpG69,(unsigned char*)_TmpG69 + 8U},{(unsigned char*)_TmpG6A,(unsigned char*)_TmpG6A,(unsigned char*)_TmpG6A + 7U},{(unsigned char*)_TmpG6B,(unsigned char*)_TmpG6B,(unsigned char*)_TmpG6B + 7U},{(unsigned char*)_TmpG6C,(unsigned char*)_TmpG6C,(unsigned char*)_TmpG6C + 9U},{(unsigned char*)_TmpG6D,(unsigned char*)_TmpG6D,(unsigned char*)_TmpG6D + 3U},{(unsigned char*)_TmpG6E,(unsigned char*)_TmpG6E,(unsigned char*)_TmpG6E + 5U},{(unsigned char*)_TmpG6F,(unsigned char*)_TmpG6F,(unsigned char*)_TmpG6F + 7U},{(unsigned char*)_TmpG70,(unsigned char*)_TmpG70,(unsigned char*)_TmpG70 + 6U},{(unsigned char*)_TmpG71,(unsigned char*)_TmpG71,(unsigned char*)_TmpG71 + 3U},{(unsigned char*)_TmpG72,(unsigned char*)_TmpG72,(unsigned char*)_TmpG72 + 4U},{(unsigned char*)_TmpG73,(unsigned char*)_TmpG73,(unsigned char*)_TmpG73 + 5U},{(unsigned char*)_TmpG74,(unsigned char*)_TmpG74,(unsigned char*)_TmpG74 + 9U},{(unsigned char*)_TmpG75,(unsigned char*)_TmpG75,(unsigned char*)_TmpG75 + 6U},{(unsigned char*)_TmpG76,(unsigned char*)_TmpG76,(unsigned char*)_TmpG76 + 7U},{(unsigned char*)_TmpG77,(unsigned char*)_TmpG77,(unsigned char*)_TmpG77 + 5U},{(unsigned char*)_TmpG78,(unsigned char*)_TmpG78,(unsigned char*)_TmpG78 + 7U},{(unsigned char*)_TmpG79,(unsigned char*)_TmpG79,(unsigned char*)_TmpG79 + 16U},{(unsigned char*)_TmpG7A,(unsigned char*)_TmpG7A,(unsigned char*)_TmpG7A + 10U},{(unsigned char*)_TmpG7B,(unsigned char*)_TmpG7B,(unsigned char*)_TmpG7B + 8U},{(unsigned char*)_TmpG7C,(unsigned char*)_TmpG7C,(unsigned char*)_TmpG7C + 8U},{(unsigned char*)_TmpG7D,(unsigned char*)_TmpG7D,(unsigned char*)_TmpG7D + 4U},{(unsigned char*)_TmpG7E,(unsigned char*)_TmpG7E,(unsigned char*)_TmpG7E + 6U},{(unsigned char*)_TmpG7F,(unsigned char*)_TmpG7F,(unsigned char*)_TmpG7F + 4U},{(unsigned char*)_TmpG80,(unsigned char*)_TmpG80,(unsigned char*)_TmpG80 + 6U},{(unsigned char*)_TmpG81,(unsigned char*)_TmpG81,(unsigned char*)_TmpG81 + 7U},{(unsigned char*)_TmpG82,(unsigned char*)_TmpG82,(unsigned char*)_TmpG82 + 9U},{(unsigned char*)_TmpG83,(unsigned char*)_TmpG83,(unsigned char*)_TmpG83 + 5U},{(unsigned char*)_TmpG84,(unsigned char*)_TmpG84,(unsigned char*)_TmpG84 + 4U},{(unsigned char*)_TmpG85,(unsigned char*)_TmpG85,(unsigned char*)_TmpG85 + 5U},{(unsigned char*)_TmpG86,(unsigned char*)_TmpG86,(unsigned char*)_TmpG86 + 9U},{(unsigned char*)_TmpG87,(unsigned char*)_TmpG87,(unsigned char*)_TmpG87 + 9U},{(unsigned char*)_TmpG88,(unsigned char*)_TmpG88,(unsigned char*)_TmpG88 + 6U},{(unsigned char*)_TmpG89,(unsigned char*)_TmpG89,(unsigned char*)_TmpG89 + 10U},{(unsigned char*)_TmpG8A,(unsigned char*)_TmpG8A,(unsigned char*)_TmpG8A + 12U},{(unsigned char*)_TmpG8B,(unsigned char*)_TmpG8B,(unsigned char*)_TmpG8B + 9U},{(unsigned char*)_TmpG8C,(unsigned char*)_TmpG8C,(unsigned char*)_TmpG8C + 7U},{(unsigned char*)_TmpG8D,(unsigned char*)_TmpG8D,(unsigned char*)_TmpG8D + 8U},{(unsigned char*)_TmpG8E,(unsigned char*)_TmpG8E,(unsigned char*)_TmpG8E + 9U},{(unsigned char*)_TmpG8F,(unsigned char*)_TmpG8F,(unsigned char*)_TmpG8F + 15U},{(unsigned char*)_TmpG90,(unsigned char*)_TmpG90,(unsigned char*)_TmpG90 + 8U},{(unsigned char*)_TmpG91,(unsigned char*)_TmpG91,(unsigned char*)_TmpG91 + 7U},{(unsigned char*)_TmpG92,(unsigned char*)_TmpG92,(unsigned char*)_TmpG92 + 8U},{(unsigned char*)_TmpG93,(unsigned char*)_TmpG93,(unsigned char*)_TmpG93 + 8U},{(unsigned char*)_TmpG94,(unsigned char*)_TmpG94,(unsigned char*)_TmpG94 + 5U},{(unsigned char*)_TmpG95,(unsigned char*)_TmpG95,(unsigned char*)_TmpG95 + 7U},{(unsigned char*)_TmpG96,(unsigned char*)_TmpG96,(unsigned char*)_TmpG96 + 9U},{(unsigned char*)_TmpG97,(unsigned char*)_TmpG97,(unsigned char*)_TmpG97 + 6U},{(unsigned char*)_TmpG98,(unsigned char*)_TmpG98,(unsigned char*)_TmpG98 + 7U},{(unsigned char*)_TmpG99,(unsigned char*)_TmpG99,(unsigned char*)_TmpG99 + 5U},{(unsigned char*)_TmpG9A,(unsigned char*)_TmpG9A,(unsigned char*)_TmpG9A + 8U},{(unsigned char*)_TmpG9B,(unsigned char*)_TmpG9B,(unsigned char*)_TmpG9B + 7U},{(unsigned char*)_TmpG9C,(unsigned char*)_TmpG9C,(unsigned char*)_TmpG9C + 8U},{(unsigned char*)_TmpG9D,(unsigned char*)_TmpG9D,(unsigned char*)_TmpG9D + 7U},{(unsigned char*)_TmpG9E,(unsigned char*)_TmpG9E,(unsigned char*)_TmpG9E + 10U},{(unsigned char*)_TmpG9F,(unsigned char*)_TmpG9F,(unsigned char*)_TmpG9F + 11U},{(unsigned char*)_TmpGA0,(unsigned char*)_TmpGA0,(unsigned char*)_TmpGA0 + 13U},{(unsigned char*)_TmpGA1,(unsigned char*)_TmpGA1,(unsigned char*)_TmpGA1 + 10U},{(unsigned char*)_TmpGA2,(unsigned char*)_TmpGA2,(unsigned char*)_TmpGA2 + 14U},{(unsigned char*)_TmpGA3,(unsigned char*)_TmpGA3,(unsigned char*)_TmpGA3 + 10U},{(unsigned char*)_TmpGA4,(unsigned char*)_TmpGA4,(unsigned char*)_TmpGA4 + 8U},{(unsigned char*)_TmpGA5,(unsigned char*)_TmpGA5,(unsigned char*)_TmpGA5 + 8U},{(unsigned char*)_TmpGA6,(unsigned char*)_TmpGA6,(unsigned char*)_TmpGA6 + 6U},{(unsigned char*)_TmpGA7,(unsigned char*)_TmpGA7,(unsigned char*)_TmpGA7 + 8U},{(unsigned char*)_TmpGA8,(unsigned char*)_TmpGA8,(unsigned char*)_TmpGA8 + 10U},{(unsigned char*)_TmpGA9,(unsigned char*)_TmpGA9,(unsigned char*)_TmpGA9 + 9U},{(unsigned char*)_TmpGAA,(unsigned char*)_TmpGAA,(unsigned char*)_TmpGAA + 13U},{(unsigned char*)_TmpGAB,(unsigned char*)_TmpGAB,(unsigned char*)_TmpGAB + 10U},{(unsigned char*)_TmpGAC,(unsigned char*)_TmpGAC,(unsigned char*)_TmpGAC + 9U},{(unsigned char*)_TmpGAD,(unsigned char*)_TmpGAD,(unsigned char*)_TmpGAD + 13U},{(unsigned char*)_TmpGAE,(unsigned char*)_TmpGAE,(unsigned char*)_TmpGAE + 14U},{(unsigned char*)_TmpGAF,(unsigned char*)_TmpGAF,(unsigned char*)_TmpGAF + 14U},{(unsigned char*)_TmpGB0,(unsigned char*)_TmpGB0,(unsigned char*)_TmpGB0 + 13U},{(unsigned char*)_TmpGB1,(unsigned char*)_TmpGB1,(unsigned char*)_TmpGB1 + 12U},{(unsigned char*)_TmpGB2,(unsigned char*)_TmpGB2,(unsigned char*)_TmpGB2 + 12U},{(unsigned char*)_TmpGB3,(unsigned char*)_TmpGB3,(unsigned char*)_TmpGB3 + 12U},{(unsigned char*)_TmpGB4,(unsigned char*)_TmpGB4,(unsigned char*)_TmpGB4 + 12U},{(unsigned char*)_TmpGB5,(unsigned char*)_TmpGB5,(unsigned char*)_TmpGB5 + 16U},{(unsigned char*)_TmpGB6,(unsigned char*)_TmpGB6,(unsigned char*)_TmpGB6 + 14U},{(unsigned char*)_TmpGB7,(unsigned char*)_TmpGB7,(unsigned char*)_TmpGB7 + 12U},{(unsigned char*)_TmpGB8,(unsigned char*)_TmpGB8,(unsigned char*)_TmpGB8 + 12U},{(unsigned char*)_TmpGB9,(unsigned char*)_TmpGB9,(unsigned char*)_TmpGB9 + 18U},{(unsigned char*)_TmpGBA,(unsigned char*)_TmpGBA,(unsigned char*)_TmpGBA + 11U},{(unsigned char*)_TmpGBB,(unsigned char*)_TmpGBB,(unsigned char*)_TmpGBB + 7U},{(unsigned char*)_TmpGBC,(unsigned char*)_TmpGBC,(unsigned char*)_TmpGBC + 12U},{(unsigned char*)_TmpGBD,(unsigned char*)_TmpGBD,(unsigned char*)_TmpGBD + 16U},{(unsigned char*)_TmpGBE,(unsigned char*)_TmpGBE,(unsigned char*)_TmpGBE + 18U},{(unsigned char*)_TmpGBF,(unsigned char*)_TmpGBF,(unsigned char*)_TmpGBF + 7U},{(unsigned char*)_TmpGC0,(unsigned char*)_TmpGC0,(unsigned char*)_TmpGC0 + 7U},{(unsigned char*)_TmpGC1,(unsigned char*)_TmpGC1,(unsigned char*)_TmpGC1 + 7U},{(unsigned char*)_TmpGC2,(unsigned char*)_TmpGC2,(unsigned char*)_TmpGC2 + 8U},{(unsigned char*)_TmpGC3,(unsigned char*)_TmpGC3,(unsigned char*)_TmpGC3 + 9U},{(unsigned char*)_TmpGC4,(unsigned char*)_TmpGC4,(unsigned char*)_TmpGC4 + 6U},{(unsigned char*)_TmpGC5,(unsigned char*)_TmpGC5,(unsigned char*)_TmpGC5 + 6U},{(unsigned char*)_TmpGC6,(unsigned char*)_TmpGC6,(unsigned char*)_TmpGC6 + 6U},{(unsigned char*)_TmpGC7,(unsigned char*)_TmpGC7,(unsigned char*)_TmpGC7 + 6U},{(unsigned char*)_TmpGC8,(unsigned char*)_TmpGC8,(unsigned char*)_TmpGC8 + 7U},{(unsigned char*)_TmpGC9,(unsigned char*)_TmpGC9,(unsigned char*)_TmpGC9 + 6U},{(unsigned char*)_TmpGCA,(unsigned char*)_TmpGCA,(unsigned char*)_TmpGCA + 11U},{(unsigned char*)_TmpGCB,(unsigned char*)_TmpGCB,(unsigned char*)_TmpGCB + 11U},{(unsigned char*)_TmpGCC,(unsigned char*)_TmpGCC,(unsigned char*)_TmpGCC + 11U},{(unsigned char*)_TmpGCD,(unsigned char*)_TmpGCD,(unsigned char*)_TmpGCD + 11U},{(unsigned char*)_TmpGCE,(unsigned char*)_TmpGCE,(unsigned char*)_TmpGCE + 11U},{(unsigned char*)_TmpGCF,(unsigned char*)_TmpGCF,(unsigned char*)_TmpGCF + 12U},{(unsigned char*)_TmpGD0,(unsigned char*)_TmpGD0,(unsigned char*)_TmpGD0 + 13U},{(unsigned char*)_TmpGD1,(unsigned char*)_TmpGD1,(unsigned char*)_TmpGD1 + 11U},{(unsigned char*)_TmpGD2,(unsigned char*)_TmpGD2,(unsigned char*)_TmpGD2 + 11U},{(unsigned char*)_TmpGD3,(unsigned char*)_TmpGD3,(unsigned char*)_TmpGD3 + 10U},{(unsigned char*)_TmpGD4,(unsigned char*)_TmpGD4,(unsigned char*)_TmpGD4 + 9U},{(unsigned char*)_TmpGD5,(unsigned char*)_TmpGD5,(unsigned char*)_TmpGD5 + 11U},{(unsigned char*)_TmpGD6,(unsigned char*)_TmpGD6,(unsigned char*)_TmpGD6 + 12U},{(unsigned char*)_TmpGD7,(unsigned char*)_TmpGD7,(unsigned char*)_TmpGD7 + 11U},{(unsigned char*)_TmpGD8,(unsigned char*)_TmpGD8,(unsigned char*)_TmpGD8 + 17U},{(unsigned char*)_TmpGD9,(unsigned char*)_TmpGD9,(unsigned char*)_TmpGD9 + 7U},{(unsigned char*)_TmpGDA,(unsigned char*)_TmpGDA,(unsigned char*)_TmpGDA + 8U},{(unsigned char*)_TmpGDB,(unsigned char*)_TmpGDB,(unsigned char*)_TmpGDB + 19U},{(unsigned char*)_TmpGDC,(unsigned char*)_TmpGDC,(unsigned char*)_TmpGDC + 20U},{(unsigned char*)_TmpGDD,(unsigned char*)_TmpGDD,(unsigned char*)_TmpGDD + 18U},{(unsigned char*)_TmpGDE,(unsigned char*)_TmpGDE,(unsigned char*)_TmpGDE + 9U},{(unsigned char*)_TmpGDF,(unsigned char*)_TmpGDF,(unsigned char*)_TmpGDF + 13U},{(unsigned char*)_TmpGE0,(unsigned char*)_TmpGE0,(unsigned char*)_TmpGE0 + 16U},{(unsigned char*)_TmpGE1,(unsigned char*)_TmpGE1,(unsigned char*)_TmpGE1 + 18U},{(unsigned char*)_TmpGE2,(unsigned char*)_TmpGE2,(unsigned char*)_TmpGE2 + 18U},{(unsigned char*)_TmpGE3,(unsigned char*)_TmpGE3,(unsigned char*)_TmpGE3 + 10U},{(unsigned char*)_TmpGE4,(unsigned char*)_TmpGE4,(unsigned char*)_TmpGE4 + 8U},{(unsigned char*)_TmpGE5,(unsigned char*)_TmpGE5,(unsigned char*)_TmpGE5 + 4U},{(unsigned char*)_TmpGE6,(unsigned char*)_TmpGE6,(unsigned char*)_TmpGE6 + 4U},{(unsigned char*)_TmpGE7,(unsigned char*)_TmpGE7,(unsigned char*)_TmpGE7 + 4U},{(unsigned char*)_TmpGE8,(unsigned char*)_TmpGE8,(unsigned char*)_TmpGE8 + 4U},{(unsigned char*)_TmpGE9,(unsigned char*)_TmpGE9,(unsigned char*)_TmpGE9 + 4U},{(unsigned char*)_TmpGEA,(unsigned char*)_TmpGEA,(unsigned char*)_TmpGEA + 4U},{(unsigned char*)_TmpGEB,(unsigned char*)_TmpGEB,(unsigned char*)_TmpGEB + 4U},{(unsigned char*)_TmpGEC,(unsigned char*)_TmpGEC,(unsigned char*)_TmpGEC + 4U},{(unsigned char*)_TmpGED,(unsigned char*)_TmpGED,(unsigned char*)_TmpGED + 4U},{(unsigned char*)_TmpGEE,(unsigned char*)_TmpGEE,(unsigned char*)_TmpGEE + 4U},{(unsigned char*)_TmpGEF,(unsigned char*)_TmpGEF,(unsigned char*)_TmpGEF + 4U},{(unsigned char*)_TmpGF0,(unsigned char*)_TmpGF0,(unsigned char*)_TmpGF0 + 4U},{(unsigned char*)_TmpGF1,(unsigned char*)_TmpGF1,(unsigned char*)_TmpGF1 + 4U},{(unsigned char*)_TmpGF2,(unsigned char*)_TmpGF2,(unsigned char*)_TmpGF2 + 4U},{(unsigned char*)_TmpGF3,(unsigned char*)_TmpGF3,(unsigned char*)_TmpGF3 + 4U},{(unsigned char*)_TmpGF4,(unsigned char*)_TmpGF4,(unsigned char*)_TmpGF4 + 4U},{(unsigned char*)_TmpGF5,(unsigned char*)_TmpGF5,(unsigned char*)_TmpGF5 + 4U},{(unsigned char*)_TmpGF6,(unsigned char*)_TmpGF6,(unsigned char*)_TmpGF6 + 4U},{(unsigned char*)_TmpGF7,(unsigned char*)_TmpGF7,(unsigned char*)_TmpGF7 + 4U},{(unsigned char*)_TmpGF8,(unsigned char*)_TmpGF8,(unsigned char*)_TmpGF8 + 4U},{(unsigned char*)_TmpGF9,(unsigned char*)_TmpGF9,(unsigned char*)_TmpGF9 + 4U},{(unsigned char*)_TmpGFA,(unsigned char*)_TmpGFA,(unsigned char*)_TmpGFA + 4U},{(unsigned char*)_TmpGFB,(unsigned char*)_TmpGFB,(unsigned char*)_TmpGFB + 4U},{(unsigned char*)_TmpGFC,(unsigned char*)_TmpGFC,(unsigned char*)_TmpGFC + 4U},{(unsigned char*)_TmpGFD,(unsigned char*)_TmpGFD,(unsigned char*)_TmpGFD + 4U},{(unsigned char*)_TmpGFE,(unsigned char*)_TmpGFE,(unsigned char*)_TmpGFE + 4U},{(unsigned char*)_TmpGFF,(unsigned char*)_TmpGFF,(unsigned char*)_TmpGFF + 4U},{(unsigned char*)_TmpG100,(unsigned char*)_TmpG100,(unsigned char*)_TmpG100 + 4U},{(unsigned char*)_TmpG101,(unsigned char*)_TmpG101,(unsigned char*)_TmpG101 + 4U},{(unsigned char*)_TmpG102,(unsigned char*)_TmpG102,(unsigned char*)_TmpG102 + 20U},{(unsigned char*)_TmpG103,(unsigned char*)_TmpG103,(unsigned char*)_TmpG103 + 5U},{(unsigned char*)_TmpG104,(unsigned char*)_TmpG104,(unsigned char*)_TmpG104 + 17U},{(unsigned char*)_TmpG105,(unsigned char*)_TmpG105,(unsigned char*)_TmpG105 + 18U},{(unsigned char*)_TmpG106,(unsigned char*)_TmpG106,(unsigned char*)_TmpG106 + 19U},{(unsigned char*)_TmpG107,(unsigned char*)_TmpG107,(unsigned char*)_TmpG107 + 16U},{(unsigned char*)_TmpG108,(unsigned char*)_TmpG108,(unsigned char*)_TmpG108 + 13U},{(unsigned char*)_TmpG109,(unsigned char*)_TmpG109,(unsigned char*)_TmpG109 + 14U},{(unsigned char*)_TmpG10A,(unsigned char*)_TmpG10A,(unsigned char*)_TmpG10A + 17U},{(unsigned char*)_TmpG10B,(unsigned char*)_TmpG10B,(unsigned char*)_TmpG10B + 16U},{(unsigned char*)_TmpG10C,(unsigned char*)_TmpG10C,(unsigned char*)_TmpG10C + 12U},{(unsigned char*)_TmpG10D,(unsigned char*)_TmpG10D,(unsigned char*)_TmpG10D + 19U},{(unsigned char*)_TmpG10E,(unsigned char*)_TmpG10E,(unsigned char*)_TmpG10E + 13U},{(unsigned char*)_TmpG10F,(unsigned char*)_TmpG10F,(unsigned char*)_TmpG10F + 21U},{(unsigned char*)_TmpG110,(unsigned char*)_TmpG110,(unsigned char*)_TmpG110 + 14U},{(unsigned char*)_TmpG111,(unsigned char*)_TmpG111,(unsigned char*)_TmpG111 + 20U},{(unsigned char*)_TmpG112,(unsigned char*)_TmpG112,(unsigned char*)_TmpG112 + 21U},{(unsigned char*)_TmpG113,(unsigned char*)_TmpG113,(unsigned char*)_TmpG113 + 13U},{(unsigned char*)_TmpG114,(unsigned char*)_TmpG114,(unsigned char*)_TmpG114 + 15U},{(unsigned char*)_TmpG115,(unsigned char*)_TmpG115,(unsigned char*)_TmpG115 + 17U},{(unsigned char*)_TmpG116,(unsigned char*)_TmpG116,(unsigned char*)_TmpG116 + 19U},{(unsigned char*)_TmpG117,(unsigned char*)_TmpG117,(unsigned char*)_TmpG117 + 19U},{(unsigned char*)_TmpG118,(unsigned char*)_TmpG118,(unsigned char*)_TmpG118 + 21U},{(unsigned char*)_TmpG119,(unsigned char*)_TmpG119,(unsigned char*)_TmpG119 + 12U},{(unsigned char*)_TmpG11A,(unsigned char*)_TmpG11A,(unsigned char*)_TmpG11A + 9U},{(unsigned char*)_TmpG11B,(unsigned char*)_TmpG11B,(unsigned char*)_TmpG11B + 17U},{(unsigned char*)_TmpG11C,(unsigned char*)_TmpG11C,(unsigned char*)_TmpG11C + 23U},{(unsigned char*)_TmpG11D,(unsigned char*)_TmpG11D,(unsigned char*)_TmpG11D + 24U},{(unsigned char*)_TmpG11E,(unsigned char*)_TmpG11E,(unsigned char*)_TmpG11E + 15U},{(unsigned char*)_TmpG11F,(unsigned char*)_TmpG11F,(unsigned char*)_TmpG11F + 11U},{(unsigned char*)_TmpG120,(unsigned char*)_TmpG120,(unsigned char*)_TmpG120 + 15U},{(unsigned char*)_TmpG121,(unsigned char*)_TmpG121,(unsigned char*)_TmpG121 + 10U},{(unsigned char*)_TmpG122,(unsigned char*)_TmpG122,(unsigned char*)_TmpG122 + 15U},{(unsigned char*)_TmpG123,(unsigned char*)_TmpG123,(unsigned char*)_TmpG123 + 25U},{(unsigned char*)_TmpG124,(unsigned char*)_TmpG124,(unsigned char*)_TmpG124 + 5U},{(unsigned char*)_TmpG125,(unsigned char*)_TmpG125,(unsigned char*)_TmpG125 + 15U},{(unsigned char*)_TmpG126,(unsigned char*)_TmpG126,(unsigned char*)_TmpG126 + 15U},{(unsigned char*)_TmpG127,(unsigned char*)_TmpG127,(unsigned char*)_TmpG127 + 11U},{(unsigned char*)_TmpG128,(unsigned char*)_TmpG128,(unsigned char*)_TmpG128 + 22U},{(unsigned char*)_TmpG129,(unsigned char*)_TmpG129,(unsigned char*)_TmpG129 + 26U},{(unsigned char*)_TmpG12A,(unsigned char*)_TmpG12A,(unsigned char*)_TmpG12A + 26U},{(unsigned char*)_TmpG12B,(unsigned char*)_TmpG12B,(unsigned char*)_TmpG12B + 16U},{(unsigned char*)_TmpG12C,(unsigned char*)_TmpG12C,(unsigned char*)_TmpG12C + 16U},{(unsigned char*)_TmpG12D,(unsigned char*)_TmpG12D,(unsigned char*)_TmpG12D + 24U},{(unsigned char*)_TmpG12E,(unsigned char*)_TmpG12E,(unsigned char*)_TmpG12E + 25U},{(unsigned char*)_TmpG12F,(unsigned char*)_TmpG12F,(unsigned char*)_TmpG12F + 25U},{(unsigned char*)_TmpG130,(unsigned char*)_TmpG130,(unsigned char*)_TmpG130 + 16U},{(unsigned char*)_TmpG131,(unsigned char*)_TmpG131,(unsigned char*)_TmpG131 + 19U},{(unsigned char*)_TmpG132,(unsigned char*)_TmpG132,(unsigned char*)_TmpG132 + 25U},{(unsigned char*)_TmpG133,(unsigned char*)_TmpG133,(unsigned char*)_TmpG133 + 35U},{(unsigned char*)_TmpG134,(unsigned char*)_TmpG134,(unsigned char*)_TmpG134 + 27U},{(unsigned char*)_TmpG135,(unsigned char*)_TmpG135,(unsigned char*)_TmpG135 + 18U},{(unsigned char*)_TmpG136,(unsigned char*)_TmpG136,(unsigned char*)_TmpG136 + 20U},{(unsigned char*)_TmpG137,(unsigned char*)_TmpG137,(unsigned char*)_TmpG137 + 19U},{(unsigned char*)_TmpG138,(unsigned char*)_TmpG138,(unsigned char*)_TmpG138 + 14U},{(unsigned char*)_TmpG139,(unsigned char*)_TmpG139,(unsigned char*)_TmpG139 + 19U},{(unsigned char*)_TmpG13A,(unsigned char*)_TmpG13A,(unsigned char*)_TmpG13A + 20U},{(unsigned char*)_TmpG13B,(unsigned char*)_TmpG13B,(unsigned char*)_TmpG13B + 14U},{(unsigned char*)_TmpG13C,(unsigned char*)_TmpG13C,(unsigned char*)_TmpG13C + 11U},{(unsigned char*)_TmpG13D,(unsigned char*)_TmpG13D,(unsigned char*)_TmpG13D + 23U},{(unsigned char*)_TmpG13E,(unsigned char*)_TmpG13E,(unsigned char*)_TmpG13E + 18U},{(unsigned char*)_TmpG13F,(unsigned char*)_TmpG13F,(unsigned char*)_TmpG13F + 30U},{(unsigned char*)_TmpG140,(unsigned char*)_TmpG140,(unsigned char*)_TmpG140 + 8U},{(unsigned char*)_TmpG141,(unsigned char*)_TmpG141,(unsigned char*)_TmpG141 + 12U},{(unsigned char*)_TmpG142,(unsigned char*)_TmpG142,(unsigned char*)_TmpG142 + 14U},{(unsigned char*)_TmpG143,(unsigned char*)_TmpG143,(unsigned char*)_TmpG143 + 13U},{(unsigned char*)_TmpG144,(unsigned char*)_TmpG144,(unsigned char*)_TmpG144 + 16U},{(unsigned char*)_TmpG145,(unsigned char*)_TmpG145,(unsigned char*)_TmpG145 + 23U},{(unsigned char*)_TmpG146,(unsigned char*)_TmpG146,(unsigned char*)_TmpG146 + 14U},{(unsigned char*)_TmpG147,(unsigned char*)_TmpG147,(unsigned char*)_TmpG147 + 18U},{(unsigned char*)_TmpG148,(unsigned char*)_TmpG148,(unsigned char*)_TmpG148 + 8U},{(unsigned char*)_TmpG149,(unsigned char*)_TmpG149,(unsigned char*)_TmpG149 + 8U},{(unsigned char*)_TmpG14A,(unsigned char*)_TmpG14A,(unsigned char*)_TmpG14A + 11U},{(unsigned char*)_TmpG14B,(unsigned char*)_TmpG14B,(unsigned char*)_TmpG14B + 20U},{(unsigned char*)_TmpG14C,(unsigned char*)_TmpG14C,(unsigned char*)_TmpG14C + 14U},{(unsigned char*)_TmpG14D,(unsigned char*)_TmpG14D,(unsigned char*)_TmpG14D + 9U},{(unsigned char*)_TmpG14E,(unsigned char*)_TmpG14E,(unsigned char*)_TmpG14E + 16U},{(unsigned char*)_TmpG14F,(unsigned char*)_TmpG14F,(unsigned char*)_TmpG14F + 27U},{(unsigned char*)_TmpG150,(unsigned char*)_TmpG150,(unsigned char*)_TmpG150 + 18U},{(unsigned char*)_TmpG151,(unsigned char*)_TmpG151,(unsigned char*)_TmpG151 + 14U},{(unsigned char*)_TmpG152,(unsigned char*)_TmpG152,(unsigned char*)_TmpG152 + 13U},{(unsigned char*)_TmpG153,(unsigned char*)_TmpG153,(unsigned char*)_TmpG153 + 12U},{(unsigned char*)_TmpG154,(unsigned char*)_TmpG154,(unsigned char*)_TmpG154 + 15U},{(unsigned char*)_TmpG155,(unsigned char*)_TmpG155,(unsigned char*)_TmpG155 + 14U},{(unsigned char*)_TmpG156,(unsigned char*)_TmpG156,(unsigned char*)_TmpG156 + 16U},{(unsigned char*)_TmpG157,(unsigned char*)_TmpG157,(unsigned char*)_TmpG157 + 11U},{(unsigned char*)_TmpG158,(unsigned char*)_TmpG158,(unsigned char*)_TmpG158 + 14U},{(unsigned char*)_TmpG159,(unsigned char*)_TmpG159,(unsigned char*)_TmpG159 + 11U},{(unsigned char*)_TmpG15A,(unsigned char*)_TmpG15A,(unsigned char*)_TmpG15A + 15U},{(unsigned char*)_TmpG15B,(unsigned char*)_TmpG15B,(unsigned char*)_TmpG15B + 22U},{(unsigned char*)_TmpG15C,(unsigned char*)_TmpG15C,(unsigned char*)_TmpG15C + 16U},{(unsigned char*)_TmpG15D,(unsigned char*)_TmpG15D,(unsigned char*)_TmpG15D + 17U},{(unsigned char*)_TmpG15E,(unsigned char*)_TmpG15E,(unsigned char*)_TmpG15E + 12U},{(unsigned char*)_TmpG15F,(unsigned char*)_TmpG15F,(unsigned char*)_TmpG15F + 18U},{(unsigned char*)_TmpG160,(unsigned char*)_TmpG160,(unsigned char*)_TmpG160 + 17U},{(unsigned char*)_TmpG161,(unsigned char*)_TmpG161,(unsigned char*)_TmpG161 + 12U},{(unsigned char*)_TmpG162,(unsigned char*)_TmpG162,(unsigned char*)_TmpG162 + 16U},{(unsigned char*)_TmpG163,(unsigned char*)_TmpG163,(unsigned char*)_TmpG163 + 11U},{(unsigned char*)_TmpG164,(unsigned char*)_TmpG164,(unsigned char*)_TmpG164 + 10U},{(unsigned char*)_TmpG165,(unsigned char*)_TmpG165,(unsigned char*)_TmpG165 + 14U},{(unsigned char*)_TmpG166,(unsigned char*)_TmpG166,(unsigned char*)_TmpG166 + 15U},{(unsigned char*)_TmpG167,(unsigned char*)_TmpG167,(unsigned char*)_TmpG167 + 20U},{(unsigned char*)_TmpG168,(unsigned char*)_TmpG168,(unsigned char*)_TmpG168 + 27U},{(unsigned char*)_TmpG169,(unsigned char*)_TmpG169,(unsigned char*)_TmpG169 + 16U},{(unsigned char*)_TmpG16A,(unsigned char*)_TmpG16A,(unsigned char*)_TmpG16A + 20U},{(unsigned char*)_TmpG16B,(unsigned char*)_TmpG16B,(unsigned char*)_TmpG16B + 10U},{(unsigned char*)_TmpG16C,(unsigned char*)_TmpG16C,(unsigned char*)_TmpG16C + 18U},{(unsigned char*)_TmpG16D,(unsigned char*)_TmpG16D,(unsigned char*)_TmpG16D + 21U},{(unsigned char*)_TmpG16E,(unsigned char*)_TmpG16E,(unsigned char*)_TmpG16E + 18U},{(unsigned char*)_TmpG16F,(unsigned char*)_TmpG16F,(unsigned char*)_TmpG16F + 16U},{(unsigned char*)_TmpG170,(unsigned char*)_TmpG170,(unsigned char*)_TmpG170 + 25U},{(unsigned char*)_TmpG171,(unsigned char*)_TmpG171,(unsigned char*)_TmpG171 + 19U},{(unsigned char*)_TmpG172,(unsigned char*)_TmpG172,(unsigned char*)_TmpG172 + 16U},{(unsigned char*)_TmpG173,(unsigned char*)_TmpG173,(unsigned char*)_TmpG173 + 20U},{(unsigned char*)_TmpG174,(unsigned char*)_TmpG174,(unsigned char*)_TmpG174 + 15U},{(unsigned char*)_TmpG175,(unsigned char*)_TmpG175,(unsigned char*)_TmpG175 + 20U},{(unsigned char*)_TmpG176,(unsigned char*)_TmpG176,(unsigned char*)_TmpG176 + 12U},{(unsigned char*)_TmpG177,(unsigned char*)_TmpG177,(unsigned char*)_TmpG177 + 15U},{(unsigned char*)_TmpG178,(unsigned char*)_TmpG178,(unsigned char*)_TmpG178 + 12U},{(unsigned char*)_TmpG179,(unsigned char*)_TmpG179,(unsigned char*)_TmpG179 + 20U},{(unsigned char*)_TmpG17A,(unsigned char*)_TmpG17A,(unsigned char*)_TmpG17A + 19U},{(unsigned char*)_TmpG17B,(unsigned char*)_TmpG17B,(unsigned char*)_TmpG17B + 20U},{(unsigned char*)_TmpG17C,(unsigned char*)_TmpG17C,(unsigned char*)_TmpG17C + 21U},{(unsigned char*)_TmpG17D,(unsigned char*)_TmpG17D,(unsigned char*)_TmpG17D + 21U},{(unsigned char*)_TmpG17E,(unsigned char*)_TmpG17E,(unsigned char*)_TmpG17E + 12U},{(unsigned char*)_TmpG17F,(unsigned char*)_TmpG17F,(unsigned char*)_TmpG17F + 17U},{(unsigned char*)_TmpG180,(unsigned char*)_TmpG180,(unsigned char*)_TmpG180 + 19U},{(unsigned char*)_TmpG181,(unsigned char*)_TmpG181,(unsigned char*)_TmpG181 + 14U},{(unsigned char*)_TmpG182,(unsigned char*)_TmpG182,(unsigned char*)_TmpG182 + 17U},{(unsigned char*)_TmpG183,(unsigned char*)_TmpG183,(unsigned char*)_TmpG183 + 23U},{(unsigned char*)_TmpG184,(unsigned char*)_TmpG184,(unsigned char*)_TmpG184 + 13U},{(unsigned char*)_TmpG185,(unsigned char*)_TmpG185,(unsigned char*)_TmpG185 + 14U},{(unsigned char*)_TmpG186,(unsigned char*)_TmpG186,(unsigned char*)_TmpG186 + 16U},{(unsigned char*)_TmpG187,(unsigned char*)_TmpG187,(unsigned char*)_TmpG187 + 16U},{(unsigned char*)_TmpG188,(unsigned char*)_TmpG188,(unsigned char*)_TmpG188 + 8U},{(unsigned char*)_TmpG189,(unsigned char*)_TmpG189,(unsigned char*)_TmpG189 + 19U},{(unsigned char*)_TmpG18A,(unsigned char*)_TmpG18A,(unsigned char*)_TmpG18A + 20U},{(unsigned char*)_TmpG18B,(unsigned char*)_TmpG18B,(unsigned char*)_TmpG18B + 14U},{(unsigned char*)_TmpG18C,(unsigned char*)_TmpG18C,(unsigned char*)_TmpG18C + 19U},{(unsigned char*)_TmpG18D,(unsigned char*)_TmpG18D,(unsigned char*)_TmpG18D + 20U},{(unsigned char*)_TmpG18E,(unsigned char*)_TmpG18E,(unsigned char*)_TmpG18E + 11U},{(unsigned char*)_TmpG18F,(unsigned char*)_TmpG18F,(unsigned char*)_TmpG18F + 22U},{(unsigned char*)_TmpG190,(unsigned char*)_TmpG190,(unsigned char*)_TmpG190 + 20U},{(unsigned char*)_TmpG191,(unsigned char*)_TmpG191,(unsigned char*)_TmpG191 + 23U},{(unsigned char*)_TmpG192,(unsigned char*)_TmpG192,(unsigned char*)_TmpG192 + 20U},{(unsigned char*)_TmpG193,(unsigned char*)_TmpG193,(unsigned char*)_TmpG193 + 22U},{(unsigned char*)_TmpG194,(unsigned char*)_TmpG194,(unsigned char*)_TmpG194 + 23U},{(unsigned char*)_TmpG195,(unsigned char*)_TmpG195,(unsigned char*)_TmpG195 + 24U},{(unsigned char*)_TmpG196,(unsigned char*)_TmpG196,(unsigned char*)_TmpG196 + 24U},{(unsigned char*)_TmpG197,(unsigned char*)_TmpG197,(unsigned char*)_TmpG197 + 15U},{(unsigned char*)_TmpG198,(unsigned char*)_TmpG198,(unsigned char*)_TmpG198 + 20U},{(unsigned char*)_TmpG199,(unsigned char*)_TmpG199,(unsigned char*)_TmpG199 + 22U},{(unsigned char*)_TmpG19A,(unsigned char*)_TmpG19A,(unsigned char*)_TmpG19A + 17U},{(unsigned char*)_TmpG19B,(unsigned char*)_TmpG19B,(unsigned char*)_TmpG19B + 20U},{(unsigned char*)_TmpG19C,(unsigned char*)_TmpG19C,(unsigned char*)_TmpG19C + 26U},{(unsigned char*)_TmpG19D,(unsigned char*)_TmpG19D,(unsigned char*)_TmpG19D + 12U},{(unsigned char*)_TmpG19E,(unsigned char*)_TmpG19E,(unsigned char*)_TmpG19E + 14U},{(unsigned char*)_TmpG19F,(unsigned char*)_TmpG19F,(unsigned char*)_TmpG19F + 12U},{(unsigned char*)_TmpG1A0,(unsigned char*)_TmpG1A0,(unsigned char*)_TmpG1A0 + 18U},{(unsigned char*)_TmpG1A1,(unsigned char*)_TmpG1A1,(unsigned char*)_TmpG1A1 + 16U},{(unsigned char*)_TmpG1A2,(unsigned char*)_TmpG1A2,(unsigned char*)_TmpG1A2 + 17U},{(unsigned char*)_TmpG1A3,(unsigned char*)_TmpG1A3,(unsigned char*)_TmpG1A3 + 15U},{(unsigned char*)_TmpG1A4,(unsigned char*)_TmpG1A4,(unsigned char*)_TmpG1A4 + 9U},{(unsigned char*)_TmpG1A5,(unsigned char*)_TmpG1A5,(unsigned char*)_TmpG1A5 + 13U},{(unsigned char*)_TmpG1A6,(unsigned char*)_TmpG1A6,(unsigned char*)_TmpG1A6 + 12U},{(unsigned char*)_TmpG1A7,(unsigned char*)_TmpG1A7,(unsigned char*)_TmpG1A7 + 12U},{(unsigned char*)_TmpG1A8,(unsigned char*)_TmpG1A8,(unsigned char*)_TmpG1A8 + 11U},{(unsigned char*)_TmpG1A9,(unsigned char*)_TmpG1A9,(unsigned char*)_TmpG1A9 + 11U},{(unsigned char*)_TmpG1AA,(unsigned char*)_TmpG1AA,(unsigned char*)_TmpG1AA + 11U},{(unsigned char*)_TmpG1AB,(unsigned char*)_TmpG1AB,(unsigned char*)_TmpG1AB + 16U},{(unsigned char*)_TmpG1AC,(unsigned char*)_TmpG1AC,(unsigned char*)_TmpG1AC + 17U},{(unsigned char*)_TmpG1AD,(unsigned char*)_TmpG1AD,(unsigned char*)_TmpG1AD + 19U},{(unsigned char*)_TmpG1AE,(unsigned char*)_TmpG1AE,(unsigned char*)_TmpG1AE + 17U},{(unsigned char*)_TmpG1AF,(unsigned char*)_TmpG1AF,(unsigned char*)_TmpG1AF + 19U},{(unsigned char*)_TmpG1B0,(unsigned char*)_TmpG1B0,(unsigned char*)_TmpG1B0 + 25U},{(unsigned char*)_TmpG1B1,(unsigned char*)_TmpG1B1,(unsigned char*)_TmpG1B1 + 26U},{(unsigned char*)_TmpG1B2,(unsigned char*)_TmpG1B2,(unsigned char*)_TmpG1B2 + 9U},{(unsigned char*)_TmpG1B3,(unsigned char*)_TmpG1B3,(unsigned char*)_TmpG1B3 + 20U},{(unsigned char*)_TmpG1B4,(unsigned char*)_TmpG1B4,(unsigned char*)_TmpG1B4 + 17U},{(unsigned char*)_TmpG1B5,(unsigned char*)_TmpG1B5,(unsigned char*)_TmpG1B5 + 18U},{(unsigned char*)_TmpG1B6,(unsigned char*)_TmpG1B6,(unsigned char*)_TmpG1B6 + 11U},{(unsigned char*)_TmpG1B7,(unsigned char*)_TmpG1B7,(unsigned char*)_TmpG1B7 + 12U},{(unsigned char*)_TmpG1B8,(unsigned char*)_TmpG1B8,(unsigned char*)_TmpG1B8 + 16U},{(unsigned char*)_TmpG1B9,(unsigned char*)_TmpG1B9,(unsigned char*)_TmpG1B9 + 20U},{(unsigned char*)_TmpG1BA,(unsigned char*)_TmpG1BA,(unsigned char*)_TmpG1BA + 16U},{(unsigned char*)_TmpG1BB,(unsigned char*)_TmpG1BB,(unsigned char*)_TmpG1BB + 15U},{(unsigned char*)_TmpG1BC,(unsigned char*)_TmpG1BC,(unsigned char*)_TmpG1BC + 11U},{(unsigned char*)_TmpG1BD,(unsigned char*)_TmpG1BD,(unsigned char*)_TmpG1BD + 5U}};
# 1825
# 1826
static short Cyc_yyr1[625U]={0,176,176,177,178,178,178,178,178,178,178,178,178,178,178,178,179,180,181,182,183,183,184,184,184,185,185,186,186,186,187,187,188,188,189,189,189,190,190,191,191,191,191,192,192,193,194,195,196,197,198,199,199,199,199,199,199,200,200,201,201,202,202,202,202,202,202,202,202,202,202,202,203,203,203,203,203,203,203,204,204,205,206,206,207,207,207,207,208,208,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,210,211,211,211,212,212,212,213,213,214,214,214,215,215,215,216,216,217,217,218,218,219,219,220,220,221,221,222,222,222,222,223,224,224,224,224,224,224,225,225,225,225,225,225,226,226,227,227,227,227,228,228,229,229,229,230,230,231,231,231,231,232,232,232,233,233,234,234,235,235,236,236,236,236,236,236,236,236,236,237,237,237,237,237,237,237,237,237,237,238,238,239,240,240,241,241,241,241,241,241,241,241,241,241,241,241,242,242,242,- 1,- 1,243,243,243,244,244,244,245,245,245,246,246,247,247,247,248,248,249,249,249,249,249,250,250,251,251,252,252,253,253,254,254,254,254,255,255,255,256,257,257,257,257,257,258,258,259,259,260,260,261,261,262,262,262,262,263,263,264,264,265,265,265,266,267,267,268,268,269,269,269,269,269,270,270,270,270,271,271,272,272,273,273,274,274,275,275,275,275,275,275,276,276,277,277,277,278,278,278,278,278,278,278,278,278,279,279,279,279,279,279,279,279,280,280,281,281,281,281,281,281,282,283,283,284,285,286,286,287,287,288,288,288,288,288,288,288,288,289,289,289,289,289,289,290,290,290,290,290,290,291,291,291,291,292,292,293,293,293,293,293,293,293,293,294,295,295,296,296,297,297,298,298,299,299,300,300,301,301,302,302,303,303,303,304,304,305,305,306,306,307,307,307,307,307,308,309,310,310,310,310,310,310,310,310,310,310,310,310,310,310,310,310,310,311,311,311,312,312,313,313,314,314,314,315,315,316,316,317,317,317,318,318,318,318,318,318,318,318,318,318,318,319,319,319,319,319,319,319,319,319,320,321,321,322,322,323,323,324,324,325,325,326,326,327,327,328,328,328,329,329,330,330,331,331,332,332,332,332,333,333,334,334,334,335,335,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,337,337,337,337,338,339,339,340,340,340,341,341,342,342,342,343,343,344,345,345,345,346,346,347,347,347,347,347,347,347,347,347,347,347,348,348,348,348,349,349,349,349,349,349,349,349,349,349,349,350,351,351,352,352,352,352,352,353,353,354,354,355,355,356,356,357,357,358,358,359,359,360,360,361,361,362,362,362,362,362,362,362,363,363,363,363,363};
# 1891
# 1892
static short Cyc_yyr2[625U]={0,1,1,1,2,3,5,3,5,5,8,3,3,3,3,0,1,1,2,1,0,4,1,2,3,0,1,4,3,4,2,3,0,4,1,1,1,1,0,3,4,4,5,3,4,2,1,2,1,1,1,2,3,5,3,6,4,0,5,1,2,1,2,2,1,2,1,2,1,2,1,2,1,1,1,1,2,1,1,0,1,6,1,3,1,1,4,8,1,2,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,3,4,4,1,4,4,1,4,7,1,1,1,1,5,2,4,1,3,1,2,3,4,8,3,2,1,1,1,0,3,0,1,1,2,1,3,1,3,3,5,3,1,2,1,2,1,2,1,2,1,2,1,2,1,3,2,2,0,3,4,0,6,3,5,1,2,1,2,3,3,0,1,1,2,5,1,2,1,2,1,3,4,4,5,5,4,4,2,1,1,3,4,4,5,5,4,4,2,1,2,5,0,2,4,4,4,1,1,1,1,1,1,1,4,1,1,1,4,0,1,2,2,1,0,3,3,0,1,1,1,3,0,1,1,0,2,2,3,5,5,7,0,1,2,4,0,2,0,2,1,1,3,3,3,3,4,3,1,1,1,1,1,1,4,1,4,0,1,1,3,2,3,4,1,1,3,1,3,2,1,2,1,1,3,1,1,2,3,4,8,8,1,2,3,4,2,2,1,2,3,2,1,2,1,2,3,4,3,1,1,3,1,1,2,3,3,4,4,5,4,5,4,2,4,4,4,4,5,5,5,5,0,1,1,1,1,1,1,1,3,1,2,1,1,2,3,2,3,1,2,3,4,1,2,1,2,5,7,7,5,8,6,0,4,4,5,6,7,5,7,9,8,0,1,3,2,2,2,3,2,4,5,1,1,5,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,1,3,1,3,1,4,1,2,4,2,6,1,1,1,3,1,2,1,3,6,6,4,4,5,4,2,2,4,4,4,1,3,1,1,3,1,2,1,3,1,1,3,1,3,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,5,2,2,2,5,5,5,5,1,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,1,3,1,3,1,1,1,1,1,1,1,1,1,1,1,1,4,1,2,2,2,2,2,4,2,6,4,8,6,6,6,9,13,11,4,4,6,6,4,2,2,4,4,4,1,1,1,1,5,0,1,0,2,3,1,3,0,2,3,1,3,4,0,1,2,1,3,1,4,3,4,3,3,2,2,5,6,7,1,1,3,3,1,4,1,1,1,3,2,5,5,4,5,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,8,0,1,1,3,1,1,5,9,7,7,7,7,9,1,1,1,1,1};
# 1957
# 1958
static short Cyc_yydefact[1269U]={0,36,72,73,74,75,77,90,91,92,93,94,95,96,97,98,117,118,119,133,134,68,0,0,103,0,99,0,78,0,0,49,171,110,113,0,0,0,16,17,0,0,0,0,0,595,248,597,596,598,0,230,0,106,0,230,229,1,3,0,0,0,0,34,0,0,0,35,0,61,70,64,88,66,100,101,0,132,104,0,0,182,0,205,208,105,186,135,2,76,75,248,69,0,121,0,63,593,0,595,590,591,592,594,0,135,0,0,422,0,0,0,288,0,426,424,45,47,0,0,57,0,0,0,0,0,0,131,172,0,0,249,250,0,0,227,0,0,0,0,228,0,0,0,4,0,0,0,0,0,51,0,141,143,62,71,65,67,599,600,135,137,135,349,59,0,0,0,38,0,252,0,194,183,206,0,213,214,218,219,0,0,217,216,0,215,221,238,208,0,89,76,125,0,123,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,579,580,543,0,0,0,541,0,540,538,539,0,451,453,467,477,479,481,483,485,487,489,491,494,496,509,0,511,561,578,576,595,434,0,0,0,0,435,0,0,425,54,0,0,135,0,0,264,266,267,265,0,268,0,152,148,150,308,269,315,310,0,0,0,0,0,11,12,0,0,223,222,0,0,601,602,248,116,0,0,0,0,0,187,107,286,0,283,13,14,0,5,0,7,0,0,52,0,543,0,0,38,130,0,138,139,164,0,169,60,38,143,0,0,0,0,0,0,0,0,0,0,0,0,595,347,0,350,0,361,355,0,359,340,341,351,342,0,343,344,345,0,37,39,316,0,273,289,0,0,254,252,0,233,0,0,0,0,0,240,239,79,236,209,0,126,122,0,0,0,518,0,0,534,469,509,0,470,471,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,512,513,544,533,0,515,0,0,0,0,514,0,102,0,0,0,0,0,0,498,499,0,502,503,500,501,0,0,0,504,505,0,506,507,508,0,0,457,458,459,460,461,462,463,464,465,466,456,0,516,0,567,568,0,0,0,582,0,135,427,0,0,0,448,595,602,0,0,0,0,304,444,449,0,446,0,0,423,0,290,0,0,441,442,0,439,0,0,311,0,281,153,158,154,156,149,151,252,0,318,309,319,604,603,0,109,112,0,56,0,0,111,114,0,0,184,0,195,196,251,0,85,84,0,82,232,231,188,252,285,318,287,0,108,19,32,46,0,48,0,50,0,142,144,145,292,291,38,40,135,128,140,0,0,160,167,135,177,41,0,0,0,0,0,595,0,379,0,382,383,384,0,0,386,0,0,353,0,0,362,356,143,360,352,348,0,193,274,0,0,0,280,253,275,338,0,243,0,254,192,235,234,189,233,0,0,0,0,241,80,0,136,127,476,124,120,0,0,0,0,595,293,298,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,581,588,0,587,452,478,0,480,482,484,486,488,490,492,493,495,497,455,454,566,563,0,565,0,0,0,437,438,0,307,0,445,302,305,433,0,303,436,430,53,0,431,0,0,0,312,0,159,155,157,0,0,233,0,320,0,252,0,329,314,0,0,0,0,0,0,0,252,0,204,185,607,0,0,0,152,135,284,0,25,6,8,9,0,42,254,163,147,164,0,0,162,170,179,178,0,0,173,0,0,0,369,0,0,0,379,0,380,381,385,0,0,0,357,346,354,0,43,317,252,0,277,0,0,0,0,0,0,339,191,0,255,256,257,0,0,273,244,190,210,212,211,220,241,207,237,517,0,0,0,294,0,299,0,520,0,0,0,0,0,0,0,535,0,577,528,529,532,0,0,536,537,545,0,0,510,585,0,0,564,562,0,0,0,0,306,447,450,432,440,443,313,270,282,338,321,322,233,0,0,233,0,0,55,224,0,197,0,0,0,0,233,0,0,0,608,609,595,0,81,83,0,0,20,26,146,137,161,0,165,168,180,177,177,0,0,0,0,0,0,0,0,0,379,369,387,0,358,44,254,0,278,276,0,0,0,0,0,0,0,0,0,0,254,0,242,573,0,572,0,295,300,0,472,473,452,452,452,0,0,0,0,474,475,566,565,550,0,586,569,0,589,468,583,584,0,428,429,326,324,328,338,323,233,58,198,115,203,338,202,199,233,0,0,0,0,0,0,0,605,0,0,86,0,0,0,0,0,0,0,176,175,363,369,0,0,0,0,0,389,390,392,394,396,398,400,402,404,406,409,411,413,415,420,421,0,0,366,375,0,379,0,0,388,246,279,0,0,0,0,0,258,259,0,271,263,260,261,245,252,519,0,0,301,522,523,524,0,0,0,0,531,530,0,556,550,546,548,542,570,0,327,325,201,200,0,0,0,0,0,0,0,0,606,610,0,33,28,0,0,38,0,10,129,166,0,0,0,369,0,418,0,0,369,0,0,0,0,0,0,0,0,0,0,0,0,0,416,369,0,0,379,368,331,332,333,330,262,0,254,575,574,0,0,0,0,0,0,557,556,553,551,0,547,571,612,611,0,0,0,0,623,624,622,620,621,0,0,0,0,29,27,0,30,0,22,181,364,365,0,0,0,0,369,371,393,0,395,397,399,401,403,405,407,408,410,412,0,370,376,0,0,335,336,337,334,0,247,0,0,521,0,0,0,0,559,558,0,552,549,0,0,0,0,0,0,613,0,31,21,23,0,367,417,0,414,372,0,369,378,0,272,297,296,525,0,0,555,0,554,0,0,0,0,0,0,87,24,0,391,369,373,377,0,0,560,616,617,618,615,0,0,419,374,0,527,0,0,0,619,614,526,0,0,0};
# 2087
# 2088
static short Cyc_yydefgoto[188U]={1266,57,58,59,60,61,553,990,1158,887,888,1083,743,62,364,63,350,64,555,65,557,66,559,67,285,165,68,69,626,275,541,542,276,72,297,277,74,192,193,75,76,77,190,324,325,151,152,326,278,513,571,572,755,78,79,759,760,761,80,573,81,533,82,83,187,188,290,84,135,620,381,382,808,714,132,85,371,614,795,796,797,279,280,1039,606,610,799,507,372,308,111,112,640,563,641,486,487,488,281,365,366,715,519,792,793,353,354,355,167,356,168,357,358,359,903,360,770,361,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,489,502,503,490,491,492,362,233,466,234,632,235,236,237,238,239,240,241,242,243,244,439,444,449,453,245,246,247,421,422,951,1059,1060,1133,1061,1135,1200,248,931,249,666,667,250,251,87,1084,493,523,88,878,879,1141,880,1150};
# 2109
# 2110
static short Cyc_yypact[1269U]={3575,- -32768,- -32768,- -32768,- -32768,- 63,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,4585,79,30,- -32768,4585,- -32768,691,- -32768,216,- 14,- -32768,- -32768,65,78,159,209,288,- -32768,- -32768,182,289,291,606,398,- -32768,152,- -32768,- -32768,- -32768,321,343,617,373,363,343,- -32768,- -32768,- -32768,391,393,406,3409,- -32768,675,709,434,- -32768,624,4585,4585,4585,- -32768,4585,- -32768,- -32768,243,443,- -32768,216,4361,335,124,468,225,- -32768,- -32768,445,- -32768,490,507,- 4,- -32768,216,505,7442,- -32768,- -32768,1423,319,- -32768,- -32768,- -32768,- -32768,519,445,534,7442,- -32768,525,1423,548,563,568,- -32768,95,- -32768,- -32768,4694,4694,579,571,3409,3409,362,7442,5329,- -32768,- -32768,170,592,- -32768,- -32768,612,6236,- -32768,590,595,170,5329,- -32768,3409,3409,3740,- -32768,3409,3740,3409,3740,3740,- -32768,370,- -32768,1683,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,445,5329,220,- -32768,- -32768,4361,624,2048,622,4694,4806,6370,- -32768,335,- -32768,642,- -32768,- -32768,- -32768,- -32768,661,688,- -32768,- -32768,705,- -32768,- -32768,- 36,225,4694,- -32768,- -32768,685,713,716,216,7933,722,8052,7442,7695,727,729,741,750,754,780,786,796,805,807,809,812,816,820,826,831,832,833,8052,8052,- -32768,- -32768,940,8171,3069,834,- -32768,8171,- -32768,- -32768,- -32768,125,- -32768,- -32768,- 40,874,835,828,825,530,296,758,397,123,- -32768,277,8171,389,8,- -32768,848,193,- -32768,1423,- 23,857,1248,865,262,1248,- -32768,- -32768,871,7442,445,1342,851,- -32768,- -32768,- -32768,- -32768,852,- -32768,4992,5329,1234,5329,466,- -32768,- -32768,- -32768,- 16,- 16,879,866,861,- -32768,- -32768,862,3,- -32768,- -32768,421,197,- -32768,- -32768,872,- -32768,883,73,870,880,875,- -32768,- -32768,929,444,- -32768,- -32768,- -32768,885,- -32768,886,- -32768,887,890,- -32768,590,940,6504,4361,622,884,891,5329,- -32768,801,216,894,- -32768,622,450,895,329,898,5431,901,916,912,914,6638,2903,5431,327,903,- -32768,2219,- -32768,910,2390,2390,624,2390,- -32768,- -32768,- -32768,- -32768,915,- -32768,- -32768,- -32768,428,- -32768,- -32768,911,70,935,- -32768,4,920,919,464,930,803,924,7442,949,4694,362,- -32768,- -32768,945,932,- -32768,70,216,- -32768,7442,950,3069,- -32768,5329,3069,- -32768,- -32768,- -32768,5566,- -32768,982,7442,7442,7442,7442,7442,7442,7442,7442,7442,7442,7442,969,7442,7442,5329,888,7442,7442,- -32768,- -32768,- -32768,- -32768,948,- -32768,2390,952,459,7442,- -32768,7442,- -32768,8171,7442,8171,8171,8171,8171,- -32768,- -32768,8171,- -32768,- -32768,- -32768,- -32768,8171,8171,8171,- -32768,- -32768,8171,- -32768,- -32768,- -32768,8171,7442,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,7442,- -32768,170,- -32768,- -32768,6772,170,7442,- -32768,951,445,- -32768,957,958,965,- -32768,298,519,170,7442,1423,374,- -32768,- -32768,- -32768,973,956,964,1423,- -32768,974,- -32768,597,1248,- -32768,- -32768,975,978,4694,4694,- -32768,976,979,- -32768,1234,1234,1234,- -32768,- -32768,4007,6906,354,- -32768,403,- -32768,- -32768,4,- -32768,- -32768,977,- -32768,1000,4694,- -32768,- -32768,972,980,407,237,- -32768,- -32768,- -32768,983,- -32768,986,993,984,- -32768,- -32768,- -32768,3849,- -32768,353,- -32768,5329,- -32768,- -32768,1087,- -32768,3409,- -32768,3409,- -32768,3409,- -32768,990,- -32768,- -32768,- -32768,622,- -32768,445,- -32768,- -32768,7442,636,- -32768,- 49,445,909,- -32768,7442,7442,995,1004,7442,994,1123,2732,1008,- -32768,- -32768,- -32768,667,1114,- -32768,7040,2561,- -32768,1017,3235,- -32768,- -32768,4205,- -32768,- -32768,- -32768,4694,- -32768,- -32768,5329,1013,5143,- -32768,- -32768,1003,623,904,- -32768,5178,919,- -32768,- -32768,- -32768,- -32768,803,1015,1016,102,1020,856,- -32768,949,- -32768,- -32768,- -32768,- -32768,- -32768,1021,1023,1025,1051,1026,- -32768,- -32768,773,6504,499,1029,1037,1038,1040,1043,1044,1050,1052,1035,565,1045,1048,1049,1055,418,1059,1060,1071,1068,7814,- -32768,- -32768,1062,1058,- -32768,874,168,835,828,825,530,296,758,397,397,123,- -32768,- -32768,- -32768,- -32768,- -32768,1063,- -32768,52,4694,6102,5329,- -32768,5329,- -32768,1057,- -32768,- -32768,- -32768,- -32768,1306,- -32768,- -32768,- -32768,- -32768,1074,- -32768,1385,188,259,- -32768,5329,- -32768,- -32768,- -32768,1069,1072,803,1061,403,4694,4957,7174,- -32768,- -32768,7442,1080,267,197,1073,7442,4694,4806,7308,- -32768,407,1096,7576,1076,73,4042,445,- -32768,1085,1187,- -32768,- -32768,- -32768,6504,- -32768,919,- -32768,- -32768,801,1081,7442,- -32768,- -32768,- -32768,- -32768,1089,216,684,574,596,7442,902,608,5431,1084,7442,1093,1091,- -32768,- -32768,1108,1110,1102,2390,- -32768,- -32768,4473,- -32768,911,1112,4694,- -32768,1113,4,1106,1109,1115,1119,- -32768,- -32768,1122,- -32768,1118,1128,1148,- 50,274,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,856,- -32768,- -32768,1117,255,1117,1116,- -32768,5700,- -32768,7695,- -32768,7442,7442,7442,7442,1254,7442,7442,- -32768,7695,- -32768,- -32768,- -32768,- -32768,170,170,- -32768,- -32768,1120,1125,5834,- -32768,- -32768,7442,7442,- -32768,- -32768,70,777,1150,1151,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,623,- -32768,- -32768,803,70,1129,803,1124,628,- -32768,- -32768,1136,- -32768,1138,70,1140,1141,803,1135,699,1143,- -32768,1154,1155,1152,- -32768,- -32768,3740,1156,1257,- -32768,- -32768,5329,- -32768,7442,- -32768,- -32768,1157,62,909,5431,1159,1153,1041,1167,1161,5431,7442,1164,7442,902,- -32768,1168,- -32768,- -32768,919,323,- -32768,- -32768,7442,7442,7442,7442,4,904,904,- 11,1177,4,919,5329,- -32768,- -32768,176,- -32768,7442,- -32768,- -32768,6504,- -32768,982,1163,1176,1180,1188,1182,1189,1190,- -32768,982,1186,1191,- 9,1193,- -32768,- -32768,789,- -32768,- -32768,- -32768,- -32768,6102,- -32768,- -32768,- -32768,- -32768,- -32768,623,- -32768,803,- -32768,- -32768,- -32768,- -32768,623,- -32768,- -32768,803,1195,1196,1197,1198,1199,1200,1201,1203,1096,1211,- -32768,1208,659,1210,3409,1212,1204,5329,- -32768,- -32768,1331,902,1214,8290,1209,3235,1205,- -32768,- 28,- -32768,1245,1213,778,530,296,837,397,123,- -32768,- -32768,- -32768,- -32768,1249,8171,2390,- -32768,- -32768,648,7442,1221,1220,- -32768,- -32768,- -32768,1217,1224,1237,1238,1239,- -32768,- -32768,1215,- -32768,- -32768,- -32768,- -32768,- -32768,1112,- -32768,559,491,- -32768,- -32768,- -32768,- -32768,7442,5329,7442,1351,- -32768,- -32768,1222,49,500,- -32768,- -32768,- -32768,- -32768,5968,- -32768,- -32768,- -32768,- -32768,34,34,1096,34,621,621,1096,1262,- -32768,- -32768,1251,- -32768,- -32768,1258,1259,690,243,- -32768,- -32768,- -32768,649,5431,1263,902,3069,- -32768,5329,1242,1877,8171,7442,8171,8171,8171,8171,8171,8171,8171,8171,8171,8171,7442,- -32768,902,1266,1261,7442,- -32768,623,623,623,623,- -32768,4694,919,- -32768,- -32768,3235,1264,1265,1268,1260,7442,1287,514,- -32768,- -32768,1288,- -32768,- -32768,- -32768,- -32768,1275,1276,1278,1279,- -32768,- -32768,- -32768,- -32768,- -32768,1281,1282,1286,1300,- -32768,- -32768,243,- -32768,1289,697,- -32768,- -32768,- -32768,1301,1293,1285,8171,902,- -32768,874,536,835,828,828,530,296,758,397,397,123,- -32768,538,- -32768,- -32768,5431,1295,- -32768,- -32768,- -32768,- -32768,535,- -32768,1303,804,- -32768,1297,1412,5329,657,- -32768,1305,1288,- -32768,- -32768,34,34,1096,34,1096,34,- -32768,1302,- -32768,- -32768,- -32768,243,- -32768,1117,255,- -32768,- -32768,7442,1877,- -32768,5431,- -32768,- -32768,- -32768,- -32768,1304,1313,- -32768,1321,- -32768,1314,1315,1317,1322,1327,1332,- -32768,- -32768,253,- -32768,902,- -32768,- -32768,5329,1329,- -32768,- -32768,- -32768,- -32768,- -32768,1096,34,- -32768,- -32768,1330,- -32768,1333,1335,1336,- -32768,- -32768,- -32768,1487,1488,- -32768};
# 2239
# 2240
static short Cyc_yypgoto[188U]={- -32768,- -32768,48,- -32768,- -32768,- -32768,- -32768,- -32768,279,- -32768,- -32768,339,- -32768,- -32768,- 319,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- 52,- -32768,- 114,192,- -32768,- -32768,0,763,- -32768,106,- 202,1358,13,- -32768,- -32768,- 145,- -32768,- -32768,1459,- 60,614,- -32768,- -32768,1194,1181,680,408,- -32768,753,- -32768,- -32768,- -32768,81,- -32768,- -32768,56,- 246,1425,- 334,330,- -32768,1320,- -32768,1132,- -32768,1461,- 584,- 331,- -32768,707,- 144,1223,241,- 361,- 586,57,- -32768,- -32768,- 73,- 555,- -32768,717,738,- 340,- 494,- 135,- 508,- 146,- -32768,- 311,- 183,- 628,- 370,- -32768,1047,- 189,- 111,- 166,- 186,- 452,- 226,- 746,- 303,- -32768,- -32768,- -32768,1170,- 87,- 536,- 294,- -32768,- 790,- -32768,- 720,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,- -32768,172,- -32768,- -32768,836,- 213,- -32768,497,917,- -32768,- 180,82,- 182,- 421,- 413,- 432,1095,- 414,- 425,- 429,- 358,- 433,522,527,520,531,- 193,712,637,1226,- -32768,- -32768,- -32768,487,- -32768,- 1003,414,- -32768,1133,332,- -32768,- 428,- -32768,- 21,561,- 71,- 75,- 97,- 102,569,- -32768,582,- 967,- 976,481};
# 2265
# 2266
static short Cyc_yytable[8464U]={70,160,672,566,307,159,114,282,283,562,669,616,576,73,675,676,679,398,399,395,671,70,674,385,373,70,370,642,164,611,801,423,298,583,73,428,425,802,73,321,590,298,741,685,753,257,623,496,532,906,389,292,136,595,467,1134,597,598,798,600,547,846,70,781,925,718,322,757,758,70,70,70,89,70,511,73,607,114,331,431,70,172,73,73,73,508,73,677,678,114,539,1098,518,73,1037,1143,718,520,783,1152,323,164,329,1142,91,1144,71,741,137,926,144,754,962,330,786,351,520,478,1026,117,549,380,70,70,153,432,1057,71,129,1038,662,71,860,1203,479,73,73,1099,521,474,131,70,70,70,91,70,70,70,70,70,522,1058,608,70,73,73,73,521,73,73,73,73,73,890,776,70,73,70,71,1139,287,288,475,172,1140,71,71,71,73,71,73,524,723,520,1057,95,71,1025,529,309,310,311,303,312,313,314,315,316,1233,113,734,634,429,635,636,499,540,1091,631,1132,954,- 174,45,92,734,844,857,96,118,1065,603,48,332,536,521,657,1067,93,71,71,1236,119,1238,114,565,536,114,1234,1235,114,1237,630,1239,265,912,114,748,71,71,71,266,71,71,71,71,71,536,45,805,71,680,154,155,156,604,157,48,624,522,330,253,71,166,71,450,429,510,963,1260,52,966,430,261,629,129,728,704,130,1261,512,778,974,120,451,452,351,131,809,351,351,728,351,1163,295,1114,631,292,1168,511,511,511,296,121,175,176,177,178,179,429,642,180,70,1182,181,182,183,254,1028,842,184,45,816,1044,185,73,124,900,1045,47,48,49,1042,70,454,855,166,255,70,51,45,70,70,531,70,522,73,122,166,48,352,73,55,56,73,73,291,73,798,798,186,45,683,351,189,332,686,45,1220,47,48,49,328,627,1066,47,48,49,693,295,930,631,1068,531,707,708,1185,296,455,456,457,458,459,460,461,462,463,464,605,599,1256,440,441,429,174,1045,856,689,726,495,508,1043,369,913,868,70,522,477,71,383,465,- 252,254,1245,522,- 252,123,889,73,501,927,268,269,270,271,125,936,126,611,71,442,443,255,254,71,1257,128,71,71,- 601,71,536,307,45,536,778,114,- 289,289,642,- 289,839,48,255,114,591,740,133,536,114,1029,50,869,592,911,578,780,45,579,169,522,170,134,782,869,47,48,49,171,468,469,470,847,91,848,935,138,273,749,546,515,510,510,510,166,756,516,516,317,139,722,318,508,845,512,512,512,696,832,469,470,71,727,769,733,96,484,485,1191,141,352,142,777,352,352,471,352,739,164,50,631,472,473,50,862,143,70,719,70,720,70,730,86,731,447,872,721,448,694,73,732,73,429,73,471,631,602,863,530,429,833,473,1034,149,94,70,874,1041,873,115,936,116,161,232,70,550,996,319,73,189,70,551,1022,320,744,259,745,73,746,517,429,609,369,73,86,615,664,352,51,383,51,291,515,293,86,534,1047,19,20,516,86,55,56,55,56,937,938,548,158,- 18,807,162,429,191,86,946,947,437,438,935,429,1136,1126,750,195,194,817,536,534,695,115,1058,71,956,71,1201,71,701,258,740,1172,1173,115,256,914,1132,1179,1176,1169,114,1175,260,536,1123,86,86,114,429,1171,429,1174,71,1225,295,1124,936,262,1221,86,1222,71,296,522,86,86,86,71,86,86,86,86,86,286,631,263,932,429,788,789,722,790,264,827,426,45,429,351,1112,86,330,791,898,284,48,97,733,948,949,631,631,631,631,51,299,957,703,52,429,429,1177,1178,45,304,899,935,55,56,194,45,429,48,964,498,50,609,904,1157,48,300,51,363,971,150,52,1145,1146,51,166,70,429,52,70,55,56,751,968,166,752,1161,55,56,73,166,45,73,1147,1148,1149,376,429,550,47,48,49,1167,1113,1160,294,429,1081,98,1082,871,1096,1231,773,115,377,429,115,306,807,115,145,146,99,100,1111,115,101,102,103,896,104,48,897,386,893,363,589,105,1156,327,106,378,1214,517,107,1215,108,109,306,976,977,978,609,535,147,148,1089,110,379,534,387,1128,979,980,981,535,388,383,445,446,982,16,17,18,548,392,854,86,114,1223,400,71,401,70,71,426,535,574,426,1186,1187,1188,1189,580,402,643,73,645,646,647,618,619,1164,403,1165,653,391,404,394,396,396,86,757,758,1180,159,711,712,713,1246,814,815,901,902,958,959,1244,670,97,418,419,987,45,405,396,1192,1063,1064,396,406,47,48,49,1102,1103,194,1125,1106,1107,407,51,1227,429,509,531,514,420,396,408,570,409,212,410,55,56,411,351,352,687,412,166,1219,992,413,607,994,995,1035,1036,414,268,269,270,271,415,416,417,427,70,71,433,436,434,435,476,480,494,1030,1031,1032,1033,73,497,327,504,505,1230,272,1159,1190,525,526,159,527,131,528,538,543,70,45,100,221,222,101,102,103,609,544,48,545,567,73,552,554,556,794,1086,558,568,1243,575,393,91,351,226,115,273,585,577,302,608,581,394,115,584,534,1258,586,115,587,45,593,348,596,999,1000,605,534,47,48,49,1018,762,763,612,522,766,613,51,771,534,97,546,159,617,621,375,91,50,516,535,55,56,535,71,70,628,633,396,431,654,661,688,45,699,535,663,535,73,690,691,47,48,49,86,50,86,692,86,932,698,51,700,709,71,531,706,710,702,705,724,725,738,742,55,56,735,729,1159,736,747,396,159,396,396,396,396,737,764,396,765,768,767,772,396,396,396,98,774,396,609,609,609,396,779,609,784,787,351,803,804,811,252,100,806,810,101,102,103,812,104,48,813,818,- 601,819,820,105,821,826,106,822,823,306,1001,396,108,109,824,828,825,71,829,830,836,227,841,110,229,831,352,230,231,834,835,837,840,843,849,866,70,852,861,858,306,867,859,870,306,877,883,885,886,73,892,564,894,905,907,429,7,8,9,10,11,12,13,14,15,16,17,18,19,20,908,909,910,369,115,917,915,924,918,838,771,115,922,933,919,22,23,24,920,26,306,921,923,943,950,952,396,960,961,965,306,967,535,352,97,32,969,622,970,306,972,973,975,983,535,984,33,34,988,985,989,997,986,998,1021,1024,993,535,564,1027,40,1040,644,1048,41,895,648,649,650,651,652,1020,71,655,656,42,1049,659,660,43,1050,1052,1051,1053,1054,44,1055,1076,665,1079,668,1056,97,1062,1069,1070,1071,1072,1073,1074,1075,1080,1085,1090,1088,1087,1092,1100,1095,1097,98,1110,1115,1116,1122,681,1101,1117,91,396,1130,1131,481,50,1118,482,100,682,97,101,102,103,665,483,48,53,54,1119,1120,1121,105,130,1166,106,306,1153,1023,107,771,108,109,1154,1155,484,485,306,1162,1183,352,1197,110,1184,1196,509,1194,1195,1199,1057,98,1204,1205,97,1206,1207,1046,1208,1209,717,1211,1218,850,1229,1213,482,100,396,1210,101,102,103,86,483,48,1217,1216,1224,1226,1228,105,1232,1249,106,1240,1247,98,107,115,108,109,97,396,484,485,1248,1250,1251,500,1252,110,252,100,1254,1253,101,102,103,1255,104,48,1259,1262,1267,1268,1263,105,1264,1265,106,1241,1212,305,107,259,108,109,884,127,98,991,891,569,173,384,665,110,625,560,665,929,853,140,928,252,100,537,771,101,102,103,916,104,48,601,396,673,1104,1108,105,697,851,106,1105,1019,396,107,98,108,109,1109,561,1137,1202,658,158,1242,86,1077,110,396,1151,252,100,0,564,101,102,103,0,104,48,1078,0,0,0,327,105,0,0,106,0,0,0,107,0,108,109,0,0,0,0,0,0,0,0,426,110,0,0,0,0,1170,0,0,0,0,0,0,0,396,0,564,1181,306,0,0,0,771,0,0,0,0,0,0,0,0,0,0,1193,0,0,0,0,1198,396,396,396,396,0,0,0,0,0,865,0,0,0,0,0,0,0,158,0,0,876,0,0,0,882,0,0,0,0,0,0,0,0,0,0,564,0,0,0,0,0,0,0,0,306,0,0,0,0,0,0,0,665,0,0,0,0,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,1094,0,0,0,0,0,158,0,0,22,23,24,25,26,0,27,0,0,0,0,396,564,0,0,28,939,940,941,942,32,944,945,0,0,0,0,0,0,0,0,33,34,35,0,564,0,0,955,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,158,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,396,0,396,396,396,396,396,396,396,396,396,396,0,91,47,0,49,0,50,319,0,163,0,0,0,320,0,0,0,0,53,54,0,0,0,0,0,0,0,0,0,0,0,564,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,564,0,396,0,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,901,902,21,196,197,333,0,334,335,336,337,338,339,340,341,22,23,24,342,26,97,27,199,343,0,0,0,0,200,201,28,344,0,0,396,32,202,203,204,205,206,207,208,209,0,210,33,34,35,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,1127,0,1129,0,0,0,42,0,0,0,43,217,218,564,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,345,100,221,222,101,102,103,91,47,48,49,0,50,223,346,347,0,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,196,197,333,0,334,335,336,337,338,339,340,341,22,23,24,342,26,97,27,199,343,0,0,0,0,200,201,28,344,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,35,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,345,100,221,222,101,102,103,91,47,48,49,0,50,223,346,347,348,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,196,197,333,0,334,335,336,337,338,339,340,341,22,23,24,342,26,97,27,199,343,0,0,0,0,200,201,28,344,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,35,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,345,100,221,222,101,102,103,91,47,48,49,0,50,223,346,347,594,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,196,197,333,0,334,335,336,337,338,339,340,341,22,23,24,342,26,97,27,199,343,0,0,0,0,200,201,28,344,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,35,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,345,100,221,222,101,102,103,91,47,48,49,0,50,223,346,347,0,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,196,197,333,0,334,335,336,337,338,339,340,341,22,23,24,342,26,97,27,199,343,0,0,0,0,200,201,28,344,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,35,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,582,100,221,222,101,102,103,91,47,48,49,0,50,223,346,347,0,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,196,197,0,0,0,0,0,0,0,0,0,0,22,23,24,342,26,97,27,199,0,0,0,0,0,200,201,28,0,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,35,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,91,47,48,49,0,50,223,0,0,0,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,196,197,0,0,0,0,0,0,0,0,0,0,22,23,24,342,26,97,0,0,0,0,0,0,0,0,0,28,0,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,0,0,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,91,47,48,49,0,50,223,0,0,0,0,224,0,0,0,393,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,196,197,0,0,0,0,0,0,0,0,0,0,22,23,24,198,26,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,0,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,91,47,48,49,0,50,223,0,424,0,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,196,197,0,0,0,0,0,0,0,0,0,0,22,23,24,198,26,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,32,202,203,204,205,206,207,208,209,0,210,33,34,0,211,0,0,0,212,0,0,0,0,0,0,40,213,214,215,41,216,0,0,0,0,0,0,0,0,0,42,0,0,0,43,217,218,0,0,0,44,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,91,47,48,49,0,50,223,0,0,0,0,224,0,0,0,225,0,53,349,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231,- 15,1,0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,25,26,0,27,0,0,0,0,0,0,0,0,28,0,29,30,31,32,0,0,0,0,0,0,0,0,0,0,33,34,35,0,0,36,37,0,38,39,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,91,47,48,49,0,50,0,0,0,- 15,0,51,0,0,0,52,0,53,54,0,0,0,0,0,55,56,- 15,1,0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,25,26,0,27,0,0,0,0,0,0,0,0,28,0,29,30,31,32,0,0,0,0,0,0,0,0,0,0,33,34,35,0,0,36,37,0,38,39,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,46,47,48,49,0,50,0,0,0,0,0,51,0,0,0,52,0,53,54,0,0,0,0,0,55,56,1,0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,25,26,0,27,0,0,0,0,0,0,0,0,28,0,29,30,31,32,0,0,0,0,0,0,0,0,0,0,33,34,35,0,0,36,37,0,38,39,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,45,0,0,0,0,0,0,91,47,48,49,0,50,22,23,24,- 15,26,51,0,0,0,52,0,53,54,0,0,0,0,0,55,56,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,367,0,0,45,0,0,0,0,0,0,91,47,48,49,0,50,0,369,0,0,0,51,0,0,0,546,0,53,54,0,0,0,516,0,55,56,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,26,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,22,23,24,0,26,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,32,0,0,0,0,42,0,0,0,43,0,33,34,0,0,44,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,367,0,42,0,0,0,43,0,0,0,91,47,44,49,0,50,0,369,0,0,0,51,0,0,0,515,0,53,54,0,0,0,516,0,55,56,0,0,45,0,0,0,0,0,0,91,47,48,49,0,50,0,0,0,0,0,51,0,0,0,531,0,53,54,0,0,0,0,0,55,56,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,25,26,0,27,0,0,0,0,0,0,0,0,28,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,35,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,47,0,49,0,50,319,0,347,0,0,0,320,0,0,0,0,53,54,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,25,26,0,27,0,0,0,0,0,0,0,0,28,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,35,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,91,47,0,49,0,50,0,0,163,22,23,24,25,26,0,27,0,53,54,0,0,0,0,0,28,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,35,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,2,3,4,90,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,21,0,0,0,91,47,0,49,0,50,0,0,347,22,23,24,25,26,0,0,0,53,54,0,0,0,0,0,28,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,0,0,0,0,0,0,91,47,0,49,0,50,22,23,24,0,26,0,0,0,0,0,0,53,54,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,267,0,0,0,0,0,268,269,270,271,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,272,0,44,0,0,0,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,0,0,0,91,47,0,49,273,50,0,0,274,22,23,24,0,26,0,0,0,53,54,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,367,0,0,368,0,0,0,0,0,0,91,47,0,49,0,50,0,369,0,0,0,0,0,0,0,0,0,53,54,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,26,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,22,23,24,0,26,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,32,0,0,0,0,42,0,0,0,43,0,33,34,0,0,44,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,367,0,42,0,0,0,43,0,0,0,91,47,44,49,0,50,0,369,0,0,0,0,0,0,0,0,0,53,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,47,0,49,0,50,0,0,0,506,0,0,0,0,0,0,0,53,54,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,26,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,22,23,24,0,26,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,32,0,0,0,0,42,0,0,0,43,0,33,34,0,0,44,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,91,47,44,49,0,50,0,0,0,785,0,0,0,0,0,0,0,53,54,0,0,0,0,0,0,800,0,0,0,0,0,0,0,0,0,91,47,0,49,0,50,0,0,0,0,0,0,0,0,0,0,0,53,54,7,8,9,10,11,12,13,14,15,16,17,18,19,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,33,34,0,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,43,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,197,333,0,334,335,336,337,338,339,340,341,0,91,47,198,49,97,50,199,343,0,0,0,0,200,201,0,344,0,53,54,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,582,100,221,222,101,102,103,0,0,48,0,0,0,223,346,347,0,0,224,0,0,0,225,0,0,226,0,196,197,0,0,0,0,227,637,228,229,0,0,230,231,0,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,638,100,221,222,101,102,103,0,296,48,0,0,0,223,0,397,639,0,224,0,0,0,225,0,0,226,196,197,484,485,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,638,100,221,222,101,102,103,0,296,48,0,0,0,223,0,397,934,0,224,0,0,0,225,0,0,226,196,197,484,485,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,638,100,221,222,101,102,103,0,296,48,0,0,0,223,0,397,953,0,224,0,0,0,225,0,0,226,196,197,484,485,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,638,100,221,222,101,102,103,0,296,48,0,0,0,223,0,397,1138,0,224,0,0,0,225,0,0,226,196,197,484,485,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,638,100,221,222,101,102,103,0,296,48,0,0,0,223,0,397,0,0,224,0,0,0,225,0,0,226,196,197,484,485,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,301,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,374,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,397,0,0,224,0,0,0,225,0,0,226,196,197,0,0,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,588,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,684,0,226,196,197,0,0,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,716,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,775,0,226,196,197,0,0,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,864,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,875,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,225,0,0,226,196,197,0,0,0,0,0,227,0,228,229,0,0,230,231,198,0,97,0,199,0,0,0,0,0,200,201,0,0,0,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,211,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,881,100,221,222,101,102,103,0,0,48,0,196,197,223,0,0,0,0,224,0,0,0,225,0,0,226,198,0,97,0,0,0,0,227,0,228,229,0,0,230,231,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,0,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,196,197,223,0,397,0,0,224,0,0,0,225,0,0,226,198,0,97,0,0,0,0,227,0,228,229,0,0,230,231,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,0,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,196,197,223,0,838,0,0,224,0,0,0,225,0,0,226,198,0,97,0,0,0,0,227,0,228,229,0,0,230,231,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,0,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,196,197,223,0,0,0,0,224,0,0,0,390,0,0,226,198,0,97,0,0,0,0,227,0,228,229,0,0,230,231,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,0,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,196,197,223,0,0,0,0,224,0,0,0,393,0,0,226,198,0,97,0,0,0,0,227,0,228,229,0,0,230,231,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,0,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,196,197,223,0,0,0,0,224,0,0,0,225,0,0,226,198,0,97,0,0,0,0,227,0,228,229,0,0,230,231,0,0,0,202,203,204,205,206,207,208,209,0,210,0,0,0,0,0,0,0,212,0,0,0,0,0,0,0,213,214,215,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,218,0,0,0,0,0,0,219,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,100,221,222,101,102,103,0,0,48,0,0,0,223,0,0,0,0,224,0,0,0,1093,0,0,226,0,0,0,0,0,0,0,227,0,228,229,0,0,230,231};
# 3115
# 3116
static short Cyc_yycheck[8464U]={0,76,434,322,139,76,27,118,119,320,431,372,331,0,439,444,449,200,200,199,433,21,436,189,170,25,170,397,80,369,616,224,129,336,21,228,225,621,25,153,343,138,550,471,93,105,377,260,294,769,195,124,52,347,247,1058,350,351,613,353,306,689,62,599,114,517,153,5,6,69,70,71,135,73,276,62,72,98,165,119,80,81,69,70,71,274,73,445,446,110,17,119,278,80,105,1071,548,113,606,1075,160,153,162,1070,140,1072,0,615,52,159,62,160,858,165,608,167,113,140,908,133,306,157,122,123,68,165,135,21,132,140,424,25,716,1136,157,122,123,165,154,131,144,141,142,143,140,145,146,147,148,149,166,160,148,153,141,142,143,154,145,146,147,148,149,749,592,165,153,167,62,135,122,123,164,173,140,69,70,71,165,73,167,283,522,113,135,155,80,907,290,141,142,143,136,145,146,147,148,149,1201,27,534,390,150,392,393,265,133,997,388,160,838,149,133,21,548,163,710,25,153,965,150,142,166,294,154,414,972,148,122,123,1206,153,1208,254,321,306,257,1204,1205,260,1207,386,1209,148,780,266,565,141,142,143,155,145,146,147,148,149,327,133,156,153,453,69,70,71,366,73,142,378,166,321,98,165,80,167,151,150,276,861,1254,155,864,156,110,385,132,531,499,135,1255,276,593,875,133,170,171,347,144,628,350,351,546,353,1092,133,1024,485,379,1097,510,511,512,141,153,88,89,90,91,92,150,689,95,321,1112,98,99,100,133,913,160,104,133,642,156,108,321,153,764,161,141,142,143,927,342,66,156,153,153,347,151,133,350,351,155,353,166,342,147,165,142,167,347,164,165,350,351,124,353,922,923,144,133,468,424,153,318,472,133,1167,141,142,143,161,382,967,141,142,143,484,133,134,570,975,155,504,505,1115,141,120,121,122,123,124,125,126,127,128,129,133,352,156,114,115,150,83,161,156,476,528,156,608,928,147,783,156,424,166,254,321,187,152,156,133,1222,166,160,147,747,424,266,800,78,79,80,81,155,815,155,787,342,153,154,153,133,347,1244,57,350,351,160,353,531,596,133,534,767,486,147,105,838,150,663,142,153,494,147,546,155,548,499,156,145,727,155,777,155,599,133,158,153,166,155,148,603,739,141,142,143,162,109,110,111,690,140,692,815,132,144,567,155,155,510,511,512,321,574,162,162,147,155,519,150,710,688,510,511,512,152,109,110,111,424,531,584,533,342,161,162,1123,147,347,147,593,350,351,155,353,546,599,145,729,161,162,145,719,148,555,153,557,155,559,153,0,155,166,730,162,169,485,555,162,557,150,559,155,754,147,720,156,150,161,162,921,148,22,584,731,926,731,27,959,29,148,95,593,150,898,146,584,153,599,156,904,152,555,107,557,593,559,278,150,369,147,599,52,150,156,424,151,377,151,379,155,125,62,294,936,20,21,162,68,164,165,164,165,817,817,306,76,148,626,79,150,135,82,827,827,116,117,959,150,150,160,570,148,93,156,727,327,486,98,160,555,842,557,150,559,494,133,739,1101,1102,110,153,784,160,1108,1105,1098,699,1104,155,752,1043,122,123,706,150,1100,150,1103,584,156,133,134,1064,147,160,136,160,593,141,166,141,142,143,599,145,146,147,148,149,140,892,150,811,150,93,94,718,96,152,156,225,133,150,777,1020,166,780,106,156,152,142,42,734,832,833,917,918,919,920,151,150,845,147,155,150,150,1106,1107,133,156,156,1064,164,165,195,133,150,142,862,264,145,522,156,1084,142,155,151,147,872,147,155,152,153,151,584,777,150,155,780,164,165,147,156,593,150,1090,164,165,777,599,133,780,173,174,175,155,150,150,141,142,143,1097,156,156,126,150,149,118,151,729,1001,156,147,254,155,150,257,139,807,260,147,148,133,134,1019,266,137,138,139,147,141,142,150,150,754,147,341,148,150,161,151,155,147,515,155,150,157,158,170,152,153,154,613,294,147,148,993,168,155,531,149,1052,165,166,167,306,152,628,112,113,173,17,18,19,546,155,706,318,901,1184,155,777,155,885,780,390,327,328,393,1117,1118,1119,1120,334,155,400,885,402,403,404,99,100,1093,155,1095,410,196,155,198,199,200,352,5,6,1109,988,510,511,512,1224,149,150,22,23,149,150,1222,432,42,219,220,885,133,155,224,1126,149,150,228,155,141,142,143,167,168,386,1045,112,113,155,151,149,150,275,155,277,18,247,155,160,155,75,155,164,165,155,1020,777,473,155,780,1166,892,155,72,896,897,922,923,155,78,79,80,81,155,155,155,155,990,885,118,168,159,167,148,140,133,917,918,919,920,990,133,325,155,155,1197,105,1085,1122,133,147,1085,154,144,155,135,149,1020,133,134,135,136,137,138,139,787,149,142,156,148,1020,149,149,149,133,990,149,149,1221,148,155,140,1097,158,486,144,133,155,134,148,155,342,494,155,727,1247,147,499,147,133,160,149,155,25,26,133,739,141,142,143,901,577,578,156,166,581,160,151,584,752,42,155,1156,156,163,171,140,145,162,531,164,165,534,990,1097,166,149,388,119,133,155,153,133,150,546,156,548,1097,154,154,141,142,143,555,145,557,154,559,1218,149,151,160,149,1020,155,150,150,156,156,155,133,150,48,164,165,155,159,1215,155,152,431,1215,433,434,435,436,156,155,439,148,30,160,147,444,445,446,118,46,449,921,922,923,453,149,926,155,166,1222,156,156,150,133,134,156,156,137,138,139,156,141,142,133,156,160,150,150,148,150,156,151,150,150,515,155,485,157,158,150,156,150,1097,156,156,135,166,150,168,169,156,1020,172,173,156,156,149,156,156,163,724,1222,149,163,156,546,147,156,156,550,135,156,148,47,1222,155,320,149,155,147,150,8,9,10,11,12,13,14,15,16,17,18,19,20,21,148,147,156,147,699,155,149,115,155,148,769,706,150,153,155,37,38,39,155,41,596,155,150,25,160,156,570,133,133,156,606,163,727,1097,42,57,156,376,156,615,156,156,163,156,739,147,68,69,148,150,49,148,156,156,149,147,155,752,397,147,82,140,401,156,86,760,405,406,407,408,409,160,1222,412,413,97,156,416,417,101,156,155,150,150,150,107,156,140,427,134,429,156,42,156,155,155,155,155,155,155,155,149,148,28,156,149,148,118,155,160,118,118,147,149,155,454,159,156,140,663,25,155,130,145,156,133,134,466,42,137,138,139,471,141,142,157,158,156,156,156,148,135,156,151,720,150,905,155,907,157,158,149,149,161,162,731,149,147,1222,155,168,156,150,739,156,156,135,135,118,150,150,42,150,150,933,150,150,516,134,150,130,25,149,133,134,729,156,137,138,139,885,141,142,156,149,156,149,156,148,150,135,151,156,155,118,155,901,157,158,42,754,161,162,156,156,156,130,156,168,133,134,150,156,137,138,139,150,141,142,156,156,0,0,156,148,156,156,151,1215,1156,138,155,1001,157,158,738,43,118,890,752,325,82,188,592,168,379,318,596,807,130,55,800,133,134,297,1024,137,138,139,787,141,142,358,817,435,1009,1012,148,487,699,151,1010,901,827,155,118,157,158,1013,319,1059,1133,415,988,1218,990,983,168,842,1074,133,134,- 1,642,137,138,139,- 1,141,142,984,- 1,- 1,- 1,890,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,1093,168,- 1,- 1,- 1,- 1,1099,- 1,- 1,- 1,- 1,- 1,- 1,- 1,892,- 1,689,1110,928,- 1,- 1,- 1,1115,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,1126,- 1,- 1,- 1,- 1,1131,917,918,919,920,- 1,- 1,- 1,- 1,- 1,721,- 1,- 1,- 1,- 1,- 1,- 1,- 1,1085,- 1,- 1,732,- 1,- 1,- 1,736,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,747,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,993,- 1,- 1,- 1,- 1,- 1,- 1,- 1,764,- 1,- 1,- 1,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,999,- 1,- 1,- 1,- 1,- 1,1156,- 1,- 1,37,38,39,40,41,- 1,43,- 1,- 1,- 1,- 1,1019,815,- 1,- 1,52,819,820,821,822,57,824,825,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,838,- 1,- 1,841,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,1215,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,1098,- 1,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,- 1,140,141,- 1,143,- 1,145,146,- 1,148,- 1,- 1,- 1,152,- 1,- 1,- 1,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,936,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,959,- 1,1166,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,- 1,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,- 1,- 1,- 1,- 1,50,51,52,53,- 1,- 1,1221,57,58,59,60,61,62,63,64,65,- 1,67,68,69,70,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,1051,- 1,1053,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,1064,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,147,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,25,26,27,- 1,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,- 1,- 1,- 1,- 1,50,51,52,53,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,70,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,147,148,149,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,25,26,27,- 1,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,- 1,- 1,- 1,- 1,50,51,52,53,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,70,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,147,148,149,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,25,26,27,- 1,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,- 1,- 1,- 1,- 1,50,51,52,53,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,70,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,147,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,25,26,27,- 1,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,- 1,- 1,- 1,- 1,50,51,52,53,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,70,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,147,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,25,26,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,42,43,44,- 1,- 1,- 1,- 1,- 1,50,51,52,- 1,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,70,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,25,26,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,42,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,52,- 1,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,25,26,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,- 1,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,25,26,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,57,58,59,60,61,62,63,64,65,- 1,67,68,69,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,82,83,84,85,86,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,102,103,- 1,- 1,- 1,107,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,141,142,143,- 1,145,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,0,1,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,- 1,43,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,52,- 1,54,55,56,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,- 1,73,74,- 1,76,77,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,140,141,142,143,- 1,145,- 1,- 1,- 1,149,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,164,165,0,1,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,- 1,43,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,52,- 1,54,55,56,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,- 1,73,74,- 1,76,77,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,140,141,142,143,- 1,145,- 1,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,164,165,1,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,- 1,43,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,52,- 1,54,55,56,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,- 1,73,74,- 1,76,77,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,140,141,142,143,- 1,145,37,38,39,149,41,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,164,165,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,130,- 1,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,140,141,142,143,- 1,145,- 1,147,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,162,- 1,164,165,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,- 1,41,- 1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,37,38,39,- 1,41,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,68,69,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,130,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,140,141,107,143,- 1,145,- 1,147,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,162,- 1,164,165,- 1,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,140,141,142,143,- 1,145,- 1,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,157,158,- 1,- 1,- 1,- 1,- 1,164,165,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,- 1,43,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,52,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,140,141,- 1,143,- 1,145,146,- 1,148,- 1,- 1,- 1,152,- 1,- 1,- 1,- 1,157,158,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,40,41,- 1,43,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,52,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,140,141,- 1,143,- 1,145,- 1,- 1,148,37,38,39,40,41,- 1,43,- 1,157,158,- 1,- 1,- 1,- 1,- 1,52,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,70,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,24,- 1,- 1,- 1,140,141,- 1,143,- 1,145,- 1,- 1,148,37,38,39,40,41,- 1,- 1,- 1,157,158,- 1,- 1,- 1,- 1,- 1,52,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,140,141,- 1,143,- 1,145,37,38,39,- 1,41,- 1,- 1,- 1,- 1,- 1,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,72,- 1,- 1,- 1,- 1,- 1,78,79,80,81,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,105,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,- 1,- 1,- 1,140,141,- 1,143,144,145,- 1,- 1,148,37,38,39,- 1,41,- 1,- 1,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,130,- 1,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,140,141,- 1,143,- 1,145,- 1,147,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,157,158,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,- 1,41,- 1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,37,38,39,- 1,41,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,68,69,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,130,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,140,141,107,143,- 1,145,- 1,147,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,140,141,- 1,143,- 1,145,- 1,- 1,- 1,149,- 1,- 1,- 1,- 1,- 1,- 1,- 1,157,158,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,- 1,41,- 1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,37,38,39,- 1,41,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,68,69,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,140,141,107,143,- 1,145,- 1,- 1,- 1,149,- 1,- 1,- 1,- 1,- 1,- 1,- 1,157,158,- 1,- 1,- 1,- 1,- 1,- 1,130,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,140,141,- 1,143,- 1,145,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,157,158,8,9,10,11,12,13,14,15,16,17,18,19,20,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,37,38,39,- 1,41,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,57,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,68,69,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,82,- 1,- 1,- 1,86,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,97,- 1,- 1,- 1,101,- 1,- 1,- 1,- 1,- 1,107,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,25,26,27,- 1,29,30,31,32,33,34,35,36,- 1,140,141,40,143,42,145,44,45,- 1,- 1,- 1,- 1,50,51,- 1,53,- 1,157,158,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,147,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,- 1,25,26,- 1,- 1,- 1,- 1,166,32,168,169,- 1,- 1,172,173,- 1,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,141,142,- 1,- 1,- 1,146,- 1,148,149,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,161,162,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,141,142,- 1,- 1,- 1,146,- 1,148,149,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,161,162,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,141,142,- 1,- 1,- 1,146,- 1,148,149,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,161,162,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,141,142,- 1,- 1,- 1,146,- 1,148,149,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,161,162,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,141,142,- 1,- 1,- 1,146,- 1,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,161,162,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,140,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,163,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,147,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,156,- 1,158,25,26,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,163,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,156,- 1,158,25,26,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,163,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,163,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,25,26,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,40,- 1,42,- 1,44,- 1,- 1,- 1,- 1,- 1,50,51,- 1,- 1,- 1,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,71,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,25,26,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,40,- 1,42,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,25,26,146,- 1,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,40,- 1,42,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,25,26,146,- 1,148,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,40,- 1,42,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,25,26,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,40,- 1,42,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,25,26,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,40,- 1,42,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,25,26,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,40,- 1,42,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173,- 1,- 1,- 1,58,59,60,61,62,63,64,65,- 1,67,- 1,- 1,- 1,- 1,- 1,- 1,- 1,75,- 1,- 1,- 1,- 1,- 1,- 1,- 1,83,84,85,- 1,87,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,102,103,- 1,- 1,- 1,- 1,- 1,- 1,110,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,133,134,135,136,137,138,139,- 1,- 1,142,- 1,- 1,- 1,146,- 1,- 1,- 1,- 1,151,- 1,- 1,- 1,155,- 1,- 1,158,- 1,- 1,- 1,- 1,- 1,- 1,- 1,166,- 1,168,169,- 1,- 1,172,173};char Cyc_Yystack_overflow[17U]="Yystack_overflow";struct Cyc_Yystack_overflow_exn_struct{char*tag;int f1;};
# 45 "cycbison.simple"
struct Cyc_Yystack_overflow_exn_struct Cyc_Yystack_overflow_val={Cyc_Yystack_overflow,0};


@@ 2232,12 2232,12 @@ yyssp_offset=yyssp_offset + 1;_TB=yyssp_offset;_TC=_check_fat_subscript(_TA,size
# 210
if(_TF < _T11)goto _TL251;
# 212
if(yystacksize < 10000)goto _TL253;_T12=
if(yystacksize < 30000)goto _TL253;_T12=
_tag_fat("parser stack overflow",sizeof(char),22U);_T13=yystate;_T14=yychar;Cyc_yyerror(_T12,_T13,_T14);_T15=& Cyc_Yystack_overflow_val;_T16=(struct Cyc_Yystack_overflow_exn_struct*)_T15;_throw(_T16);goto _TL254;_TL253: _TL254:
# 216
 yystacksize=yystacksize * 2;
if(yystacksize <= 10000)goto _TL255;
yystacksize=10000;goto _TL256;_TL255: _TL256: _T18=yystacksize;{unsigned _T18AB=(unsigned)_T18;_T1A=yyregion;_T1B=_check_times(_T18AB,sizeof(short));{short*_T18AC=_region_malloc(_T1A,0U,_T1B);{unsigned _T18AD=_T18AB;unsigned i;i=0;_TL25A: if(i < _T18AD)goto _TL258;else{goto _TL259;}_TL258: _T1C=i;_T1D=yyssp_offset;_T1E=(unsigned)_T1D;
if(yystacksize <= 30000)goto _TL255;
yystacksize=30000;goto _TL256;_TL255: _TL256: _T18=yystacksize;{unsigned _T18AB=(unsigned)_T18;_T1A=yyregion;_T1B=_check_times(_T18AB,sizeof(short));{short*_T18AC=_region_malloc(_T1A,0U,_T1B);{unsigned _T18AD=_T18AB;unsigned i;i=0;_TL25A: if(i < _T18AD)goto _TL258;else{goto _TL259;}_TL258: _T1C=i;_T1D=yyssp_offset;_T1E=(unsigned)_T1D;
# 220
if(_T1C > _T1E)goto _TL25B;_T1F=i;_T20=yyss;_T21=_T20.curr;_T22=(short*)_T21;_T23=i;_T24=(int)_T23;_T18AC[_T1F]=_T22[_T24];goto _TL25C;_TL25B: _T25=i;_T18AC[_T25]=0;_TL25C: i=i + 1;goto _TL25A;_TL259:;}_T19=(short*)_T18AC;}_T17=
# 219


@@ 2302,29 2302,29 @@ yylen=(int)_T63;_T64=yyvs;_T65=yyvsp_offset + 1;_T66=yylen;_T67=_T65 - _T66;_T68
_fat_ptr_plus(_T64,sizeof(struct Cyc_Yystacktype),_T67);_T69=_untag_fat_ptr_check_bound(_T68,sizeof(struct Cyc_Yystacktype),14U);_T6A=_check_null(_T69);yyyvsp=(struct Cyc_Yystacktype*)_T6A;
if(yylen <= 0)goto _TL27E;_T6B=yyyvsp;_T6C=_T6B[0];
yyval=_T6C.v;goto _TL27F;_TL27E: _TL27F: _T6D=yyn;_T6E=(int)_T6D;switch(_T6E){case 1:
# 1323 "parse.y"
# 1324 "parse.y"
 yyval=Cyc_YY74(0);goto _LL0;case 2:
# 1326 "parse.y"
# 1327 "parse.y"
 yyval=Cyc_YY74(1);_T6F=yyyvsp;_T70=& _T6F[0].v;_T71=(union Cyc_YYSTYPE*)_T70;
Cyc_Parse_constraint_graph=Cyc_yyget_YY71(_T71);goto _LL0;case 3: _T72=yyyvsp;_T73=_T72[0];
# 1333 "parse.y"
# 1334 "parse.y"
yyval=_T73.v;_T74=yyyvsp;_T75=& _T74[0].v;_T76=(union Cyc_YYSTYPE*)_T75;
Cyc_Parse_parse_result=Cyc_yyget_YY16(_T76);goto _LL0;case 4: _T77=yyyvsp;_T78=& _T77[0].v;_T79=(union Cyc_YYSTYPE*)_T78;_T7A=
# 1339 "parse.y"
# 1340 "parse.y"
Cyc_yyget_YY16(_T79);_T7B=yyyvsp;_T7C=& _T7B[1].v;_T7D=(union Cyc_YYSTYPE*)_T7C;_T7E=Cyc_yyget_YY16(_T7D);_T7F=Cyc_List_imp_append(_T7A,_T7E);yyval=Cyc_YY16(_T7F);goto _LL0;case 5:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Using_d_Absyn_Raw_decl_struct*_T18AD=_cycalloc(sizeof(struct Cyc_Absyn_Using_d_Absyn_Raw_decl_struct));_T18AD->tag=10;_T83=yyyvsp;_T84=& _T83[0].v;_T85=(union Cyc_YYSTYPE*)_T84;
# 1343 "parse.y"
# 1344 "parse.y"
_T18AD->f1=Cyc_yyget_QualId_tok(_T85);_T86=yyyvsp;_T87=& _T86[2].v;_T88=(union Cyc_YYSTYPE*)_T87;_T18AD->f2=Cyc_yyget_YY16(_T88);_T82=(struct Cyc_Absyn_Using_d_Absyn_Raw_decl_struct*)_T18AD;}_T18AC->r=(void*)_T82;_T89=yyyvsp;_T8A=_T89[0];_T8B=_T8A.l;_T8C=_T8B.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T8C);_T81=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T81;_T18AB->tl=0;_T80=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T80);
Cyc_Lex_leave_using();goto _LL0;case 6:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Using_d_Absyn_Raw_decl_struct*_T18AD=_cycalloc(sizeof(struct Cyc_Absyn_Using_d_Absyn_Raw_decl_struct));_T18AD->tag=10;_T90=yyyvsp;_T91=& _T90[0].v;_T92=(union Cyc_YYSTYPE*)_T91;
# 1347 "parse.y"
# 1348 "parse.y"
_T18AD->f1=Cyc_yyget_QualId_tok(_T92);_T93=yyyvsp;_T94=& _T93[2].v;_T95=(union Cyc_YYSTYPE*)_T94;_T18AD->f2=Cyc_yyget_YY16(_T95);_T8F=(struct Cyc_Absyn_Using_d_Absyn_Raw_decl_struct*)_T18AD;}_T18AC->r=(void*)_T8F;_T96=yyyvsp;_T97=_T96[0];_T98=_T97.l;_T99=_T98.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T99);_T8E=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T8E;_T9A=yyyvsp;_T9B=& _T9A[4].v;_T9C=(union Cyc_YYSTYPE*)_T9B;_T18AB->tl=Cyc_yyget_YY16(_T9C);_T8D=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T8D);goto _LL0;case 7:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Namespace_d_Absyn_Raw_decl_struct*_T18AD=_cycalloc(sizeof(struct Cyc_Absyn_Namespace_d_Absyn_Raw_decl_struct));_T18AD->tag=9;{struct _fat_ptr*_T18AE=_cycalloc(sizeof(struct _fat_ptr));_TA1=yyyvsp;_TA2=& _TA1[0].v;_TA3=(union Cyc_YYSTYPE*)_TA2;
# 1350
# 1351
*_T18AE=Cyc_yyget_String_tok(_TA3);_TA0=(struct _fat_ptr*)_T18AE;}_T18AD->f1=_TA0;_TA4=yyyvsp;_TA5=& _TA4[2].v;_TA6=(union Cyc_YYSTYPE*)_TA5;_T18AD->f2=Cyc_yyget_YY16(_TA6);_T9F=(struct Cyc_Absyn_Namespace_d_Absyn_Raw_decl_struct*)_T18AD;}_T18AC->r=(void*)_T9F;_TA7=yyyvsp;_TA8=_TA7[0];_TA9=_TA8.l;_TAA=_TA9.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_TAA);_T9E=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T9E;_T18AB->tl=0;_T9D=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T9D);
Cyc_Lex_leave_namespace();goto _LL0;case 8:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_Namespace_d_Absyn_Raw_decl_struct*_T18AD=_cycalloc(sizeof(struct Cyc_Absyn_Namespace_d_Absyn_Raw_decl_struct));_T18AD->tag=9;{struct _fat_ptr*_T18AE=_cycalloc(sizeof(struct _fat_ptr));_TAF=yyyvsp;_TB0=& _TAF[0].v;_TB1=(union Cyc_YYSTYPE*)_TB0;
# 1354 "parse.y"
# 1355 "parse.y"
*_T18AE=Cyc_yyget_String_tok(_TB1);_TAE=(struct _fat_ptr*)_T18AE;}_T18AD->f1=_TAE;_TB2=yyyvsp;_TB3=& _TB2[2].v;_TB4=(union Cyc_YYSTYPE*)_TB3;_T18AD->f2=Cyc_yyget_YY16(_TB4);_TAD=(struct Cyc_Absyn_Namespace_d_Absyn_Raw_decl_struct*)_T18AD;}_T18AC->r=(void*)_TAD;_TB5=yyyvsp;_TB6=_TB5[0];_TB7=_TB6.l;_TB8=_TB7.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_TB8);_TAC=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_TAC;_TB9=yyyvsp;_TBA=& _TB9[4].v;_TBB=(union Cyc_YYSTYPE*)_TBA;_T18AB->tl=Cyc_yyget_YY16(_TBB);_TAB=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_TAB);goto _LL0;case 9: _TBC=yyyvsp;_TBD=& _TBC[2].v;_TBE=(union Cyc_YYSTYPE*)_TBD;_TBF=
# 1356 "parse.y"
# 1357 "parse.y"
Cyc_yyget_YY16(_TBE);_TC0=yyyvsp;_TC1=& _TC0[4].v;_TC2=(union Cyc_YYSTYPE*)_TC1;_TC3=Cyc_yyget_YY16(_TC2);_TC4=Cyc_List_append(_TBF,_TC3);yyval=Cyc_YY16(_TC4);goto _LL0;case 10: _TC5=yyyvsp;_TC6=& _TC5[0].v;_TC7=(union Cyc_YYSTYPE*)_TC6;{
# 1358 "parse.y"
# 1359 "parse.y"
int is_c_include=Cyc_yyget_YY32(_TC7);_TC8=yyyvsp;_TC9=& _TC8[4].v;_TCA=(union Cyc_YYSTYPE*)_TC9;{
struct Cyc_List_List*cycdecls=Cyc_yyget_YY16(_TCA);_TCB=yyyvsp;_TCC=& _TCB[5].v;_TCD=(union Cyc_YYSTYPE*)_TCC;{
struct _tuple30*_T18AB=Cyc_yyget_YY56(_TCD);unsigned _T18AC;struct Cyc_List_List*_T18AD;{struct _tuple30 _T18AE=*_T18AB;_T18AD=_T18AE.f0;_T18AC=_T18AE.f1;}{struct Cyc_List_List*exs=_T18AD;unsigned wc=_T18AC;_TCE=yyyvsp;_TCF=& _TCE[6].v;_TD0=(union Cyc_YYSTYPE*)_TCF;{


@@ 2337,290 2337,290 @@ if(_TE0)goto _TL286;else{goto _TL288;}
_TL288: if(exs!=0)goto _TL28B;else{goto _TL28C;}_TL28C: if(cycdecls!=0)goto _TL28B;else{goto _TL289;}
_TL28B: _TE1=yyyvsp;_TE2=_TE1[0];_TE3=_TE2.l;_TE4=_TE3.first_line;_TE5=Cyc_Position_loc_to_seg(_TE4);_TE6=_tag_fat("expecting \"C include\"",sizeof(char),22U);_TE7=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_TE5,_TE6,_TE7);{struct Cyc_List_List*_T18AE=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AF=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_ExternCinclude_d_Absyn_Raw_decl_struct*_T18B0=_cycalloc(sizeof(struct Cyc_Absyn_ExternCinclude_d_Absyn_Raw_decl_struct));_T18B0->tag=12;_TEB=yyyvsp;_TEC=& _TEB[2].v;_TED=(union Cyc_YYSTYPE*)_TEC;
_T18B0->f1=Cyc_yyget_YY16(_TED);_T18B0->f2=cycdecls;_T18B0->f3=exs;{struct _tuple10*_T18B1=_cycalloc(sizeof(struct _tuple10));_T18B1->f0=wc;_T18B1->f1=hides;_TEE=(struct _tuple10*)_T18B1;}_T18B0->f4=_TEE;_TEA=(struct Cyc_Absyn_ExternCinclude_d_Absyn_Raw_decl_struct*)_T18B0;}_T18AF->r=(void*)_TEA;_TEF=yyyvsp;_TF0=_TEF[0];_TF1=_TF0.l;_TF2=_TF1.first_line;_T18AF->loc=Cyc_Position_loc_to_seg(_TF2);_TE9=(struct Cyc_Absyn_Decl*)_T18AF;}_T18AE->hd=_TE9;_TF3=yyyvsp;_TF4=& _TF3[7].v;_TF5=(union Cyc_YYSTYPE*)_TF4;_T18AE->tl=Cyc_yyget_YY16(_TF5);_TE8=(struct Cyc_List_List*)_T18AE;}yyval=Cyc_YY16(_TE8);goto _TL28A;
# 1372
# 1373
_TL289:{struct Cyc_List_List*_T18AE=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AF=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_ExternC_d_Absyn_Raw_decl_struct*_T18B0=_cycalloc(sizeof(struct Cyc_Absyn_ExternC_d_Absyn_Raw_decl_struct));_T18B0->tag=11;_TF9=yyyvsp;_TFA=& _TF9[2].v;_TFB=(union Cyc_YYSTYPE*)_TFA;_T18B0->f1=Cyc_yyget_YY16(_TFB);_TF8=(struct Cyc_Absyn_ExternC_d_Absyn_Raw_decl_struct*)_T18B0;}_T18AF->r=(void*)_TF8;_TFC=yyyvsp;_TFD=_TFC[0];_TFE=_TFD.l;_TFF=_TFE.first_line;_T18AF->loc=Cyc_Position_loc_to_seg(_TFF);_TF7=(struct Cyc_Absyn_Decl*)_T18AF;}_T18AE->hd=_TF7;_T100=yyyvsp;_T101=& _T100[7].v;_T102=(union Cyc_YYSTYPE*)_T101;_T18AE->tl=Cyc_yyget_YY16(_T102);_TF6=(struct Cyc_List_List*)_T18AE;}yyval=Cyc_YY16(_TF6);_TL28A: goto _TL287;
# 1375
# 1376
_TL286:{struct Cyc_List_List*_T18AE=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AF=_cycalloc(sizeof(struct Cyc_Absyn_Decl));{struct Cyc_Absyn_ExternCinclude_d_Absyn_Raw_decl_struct*_T18B0=_cycalloc(sizeof(struct Cyc_Absyn_ExternCinclude_d_Absyn_Raw_decl_struct));_T18B0->tag=12;_T106=yyyvsp;_T107=& _T106[2].v;_T108=(union Cyc_YYSTYPE*)_T107;_T18B0->f1=Cyc_yyget_YY16(_T108);_T18B0->f2=cycdecls;_T18B0->f3=exs;{struct _tuple10*_T18B1=_cycalloc(sizeof(struct _tuple10));_T18B1->f0=wc;_T18B1->f1=hides;_T109=(struct _tuple10*)_T18B1;}_T18B0->f4=_T109;_T105=(struct Cyc_Absyn_ExternCinclude_d_Absyn_Raw_decl_struct*)_T18B0;}_T18AF->r=(void*)_T105;_T10A=yyyvsp;_T10B=_T10A[0];_T10C=_T10B.l;_T10D=_T10C.first_line;_T18AF->loc=Cyc_Position_loc_to_seg(_T10D);_T104=(struct Cyc_Absyn_Decl*)_T18AF;}_T18AE->hd=_T104;_T10E=yyyvsp;_T10F=& _T10E[7].v;_T110=(union Cyc_YYSTYPE*)_T10F;_T18AE->tl=Cyc_yyget_YY16(_T110);_T103=(struct Cyc_List_List*)_T18AE;}yyval=Cyc_YY16(_T103);_TL287: goto _LL0;}}}}}case 11:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));_T113=& Cyc_Absyn_Porton_d_val;_T114=(struct Cyc_Absyn_Porton_d_Absyn_Raw_decl_struct*)_T113;
# 1378 "parse.y"
# 1379 "parse.y"
_T18AC->r=(void*)_T114;_T115=yyyvsp;_T116=_T115[0];_T117=_T116.l;_T118=_T117.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T118);_T112=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T112;_T119=yyyvsp;_T11A=& _T119[2].v;_T11B=(union Cyc_YYSTYPE*)_T11A;_T18AB->tl=Cyc_yyget_YY16(_T11B);_T111=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T111);goto _LL0;case 12:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));_T11E=& Cyc_Absyn_Portoff_d_val;_T11F=(struct Cyc_Absyn_Portoff_d_Absyn_Raw_decl_struct*)_T11E;
# 1380 "parse.y"
# 1381 "parse.y"
_T18AC->r=(void*)_T11F;_T120=yyyvsp;_T121=_T120[0];_T122=_T121.l;_T123=_T122.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T123);_T11D=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T11D;_T124=yyyvsp;_T125=& _T124[2].v;_T126=(union Cyc_YYSTYPE*)_T125;_T18AB->tl=Cyc_yyget_YY16(_T126);_T11C=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T11C);goto _LL0;case 13:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));_T129=& Cyc_Absyn_Tempeston_d_val;_T12A=(struct Cyc_Absyn_Tempeston_d_Absyn_Raw_decl_struct*)_T129;
# 1382 "parse.y"
# 1383 "parse.y"
_T18AC->r=(void*)_T12A;_T12B=yyyvsp;_T12C=_T12B[0];_T12D=_T12C.l;_T12E=_T12D.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T12E);_T128=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T128;_T12F=yyyvsp;_T130=& _T12F[2].v;_T131=(union Cyc_YYSTYPE*)_T130;_T18AB->tl=Cyc_yyget_YY16(_T131);_T127=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T127);goto _LL0;case 14:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Decl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Decl));_T134=& Cyc_Absyn_Tempestoff_d_val;_T135=(struct Cyc_Absyn_Tempestoff_d_Absyn_Raw_decl_struct*)_T134;
# 1384 "parse.y"
_T18AC->r=(void*)_T135;_T136=yyyvsp;_T137=_T136[0];_T138=_T137.l;_T139=_T138.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T139);_T133=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T133;_T13A=yyyvsp;_T13B=& _T13A[2].v;_T13C=(union Cyc_YYSTYPE*)_T13B;_T18AB->tl=Cyc_yyget_YY16(_T13C);_T132=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T132);goto _LL0;case 15:
# 1385 "parse.y"
_T18AC->r=(void*)_T135;_T136=yyyvsp;_T137=_T136[0];_T138=_T137.l;_T139=_T138.first_line;_T18AC->loc=Cyc_Position_loc_to_seg(_T139);_T133=(struct Cyc_Absyn_Decl*)_T18AC;}_T18AB->hd=_T133;_T13A=yyyvsp;_T13B=& _T13A[2].v;_T13C=(union Cyc_YYSTYPE*)_T13B;_T18AB->tl=Cyc_yyget_YY16(_T13C);_T132=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T132);goto _LL0;case 15:
# 1386 "parse.y"
 yyval=Cyc_YY16(0);goto _LL0;case 16:
# 1389 "parse.y"
# 1390 "parse.y"
 Cyc_Parse_parsing_tempest=1;goto _LL0;case 17:
# 1392
# 1393
 Cyc_Parse_parsing_tempest=0;goto _LL0;case 18:
# 1397 "parse.y"
# 1398 "parse.y"
 Cyc_Lex_enter_extern_c();_T13D=yyyvsp;_T13E=& _T13D[1].v;_T13F=(union Cyc_YYSTYPE*)_T13E;_T140=
Cyc_yyget_String_tok(_T13F);_T141=_tag_fat("C",sizeof(char),2U);_T142=Cyc_strcmp(_T140,_T141);if(_T142!=0)goto _TL28D;
yyval=Cyc_YY32(0);goto _TL28E;
_TL28D: _T143=yyyvsp;_T144=& _T143[1].v;_T145=(union Cyc_YYSTYPE*)_T144;_T146=Cyc_yyget_String_tok(_T145);_T147=_tag_fat("C include",sizeof(char),10U);_T148=Cyc_strcmp(_T146,_T147);if(_T148!=0)goto _TL28F;
yyval=Cyc_YY32(1);goto _TL290;
# 1403
# 1404
_TL28F: _T149=yyyvsp;_T14A=_T149[0];_T14B=_T14A.l;_T14C=_T14B.first_line;_T14D=Cyc_Position_loc_to_seg(_T14C);_T14E=_tag_fat("expecting \"C\" or \"C include\"",sizeof(char),29U);_T14F=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T14D,_T14E,_T14F);
yyval=Cyc_YY32(1);_TL290: _TL28E: goto _LL0;case 19:
# 1410 "parse.y"
# 1411 "parse.y"
 Cyc_Lex_leave_extern_c();goto _LL0;case 20:
# 1414 "parse.y"
 yyval=Cyc_YY57(0);goto _LL0;case 21: _T150=yyyvsp;_T151=_T150[2];
# 1415 "parse.y"
 yyval=Cyc_YY57(0);goto _LL0;case 21: _T150=yyyvsp;_T151=_T150[2];
# 1416 "parse.y"
yyval=_T151.v;goto _LL0;case 22:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T153=yyyvsp;_T154=& _T153[0].v;_T155=(union Cyc_YYSTYPE*)_T154;
# 1419 "parse.y"
_T18AB->hd=Cyc_yyget_QualId_tok(_T155);_T18AB->tl=0;_T152=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY57(_T152);goto _LL0;case 23:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T157=yyyvsp;_T158=& _T157[0].v;_T159=(union Cyc_YYSTYPE*)_T158;
# 1420 "parse.y"
_T18AB->hd=Cyc_yyget_QualId_tok(_T159);_T18AB->tl=0;_T156=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY57(_T156);goto _LL0;case 24:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T15B=yyyvsp;_T15C=& _T15B[0].v;_T15D=(union Cyc_YYSTYPE*)_T15C;
_T18AB->hd=Cyc_yyget_QualId_tok(_T155);_T18AB->tl=0;_T152=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY57(_T152);goto _LL0;case 23:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T157=yyyvsp;_T158=& _T157[0].v;_T159=(union Cyc_YYSTYPE*)_T158;
# 1421 "parse.y"
_T18AB->hd=Cyc_yyget_QualId_tok(_T159);_T18AB->tl=0;_T156=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY57(_T156);goto _LL0;case 24:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T15B=yyyvsp;_T15C=& _T15B[0].v;_T15D=(union Cyc_YYSTYPE*)_T15C;
# 1422 "parse.y"
_T18AB->hd=Cyc_yyget_QualId_tok(_T15D);_T15E=yyyvsp;_T15F=& _T15E[2].v;_T160=(union Cyc_YYSTYPE*)_T15F;_T18AB->tl=Cyc_yyget_YY57(_T160);_T15A=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY57(_T15A);goto _LL0;case 25:{struct _tuple30*_T18AB=_cycalloc(sizeof(struct _tuple30));
# 1425 "parse.y"
_T18AB->f0=0;_T18AB->f1=0U;_T161=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T161);goto _LL0;case 26: _T162=yyyvsp;_T163=_T162[0];
# 1426 "parse.y"
_T18AB->f0=0;_T18AB->f1=0U;_T161=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T161);goto _LL0;case 26: _T162=yyyvsp;_T163=_T162[0];
# 1427 "parse.y"
yyval=_T163.v;goto _LL0;case 27:{struct _tuple30*_T18AB=_cycalloc(sizeof(struct _tuple30));_T165=yyyvsp;_T166=& _T165[2].v;_T167=(union Cyc_YYSTYPE*)_T166;
# 1430 "parse.y"
_T18AB->f0=Cyc_yyget_YY55(_T167);_T18AB->f1=0U;_T164=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T164);goto _LL0;case 28:{struct _tuple30*_T18AB=_cycalloc(sizeof(struct _tuple30));
# 1431 "parse.y"
_T18AB->f0=0;_T18AB->f1=0U;_T168=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T168);goto _LL0;case 29:{struct _tuple30*_T18AB=_cycalloc(sizeof(struct _tuple30));
_T18AB->f0=Cyc_yyget_YY55(_T167);_T18AB->f1=0U;_T164=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T164);goto _LL0;case 28:{struct _tuple30*_T18AB=_cycalloc(sizeof(struct _tuple30));
# 1432 "parse.y"
_T18AB->f0=0;_T18AB->f1=0U;_T168=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T168);goto _LL0;case 29:{struct _tuple30*_T18AB=_cycalloc(sizeof(struct _tuple30));
# 1433 "parse.y"
_T18AB->f0=0;_T16A=yyyvsp;_T16B=_T16A[0];_T16C=_T16B.l;_T16D=_T16C.first_line;_T18AB->f1=Cyc_Position_loc_to_seg(_T16D);_T169=(struct _tuple30*)_T18AB;}yyval=Cyc_YY56(_T169);goto _LL0;case 30:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple33*_T18AC=_cycalloc(sizeof(struct _tuple33));_T170=yyyvsp;_T171=_T170[0];_T172=_T171.l;_T173=_T172.first_line;
# 1437 "parse.y"
# 1438 "parse.y"
_T18AC->f0=Cyc_Position_loc_to_seg(_T173);_T174=yyyvsp;_T175=& _T174[0].v;_T176=(union Cyc_YYSTYPE*)_T175;_T18AC->f1=Cyc_yyget_QualId_tok(_T176);_T18AC->f2=0;_T16F=(struct _tuple33*)_T18AC;}_T18AB->hd=_T16F;_T18AB->tl=0;_T16E=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY55(_T16E);goto _LL0;case 31:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple33*_T18AC=_cycalloc(sizeof(struct _tuple33));_T179=yyyvsp;_T17A=_T179[0];_T17B=_T17A.l;_T17C=_T17B.first_line;
# 1439 "parse.y"
# 1440 "parse.y"
_T18AC->f0=Cyc_Position_loc_to_seg(_T17C);_T17D=yyyvsp;_T17E=& _T17D[0].v;_T17F=(union Cyc_YYSTYPE*)_T17E;_T18AC->f1=Cyc_yyget_QualId_tok(_T17F);_T18AC->f2=0;_T178=(struct _tuple33*)_T18AC;}_T18AB->hd=_T178;_T180=yyyvsp;_T181=& _T180[2].v;_T182=(union Cyc_YYSTYPE*)_T181;_T18AB->tl=Cyc_yyget_YY55(_T182);_T177=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY55(_T177);goto _LL0;case 32:
# 1443 "parse.y"
 yyval=Cyc_YY16(0);goto _LL0;case 33: _T183=yyyvsp;_T184=_T183[2];
# 1444 "parse.y"
 yyval=Cyc_YY16(0);goto _LL0;case 33: _T183=yyyvsp;_T184=_T183[2];
# 1445 "parse.y"
yyval=_T184.v;goto _LL0;case 34:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_Fn_d_Absyn_Raw_decl_struct*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Fn_d_Absyn_Raw_decl_struct));_T18AC->tag=1;_T187=yyyvsp;_T188=& _T187[0].v;_T189=(union Cyc_YYSTYPE*)_T188;
# 1448 "parse.y"
_T18AC->f1=Cyc_yyget_YY15(_T189);_T186=(struct Cyc_Absyn_Fn_d_Absyn_Raw_decl_struct*)_T18AC;}_T18A=(void*)_T186;_T18B=yyyvsp;_T18C=_T18B[0];_T18D=_T18C.l;_T18E=_T18D.first_line;_T18F=Cyc_Position_loc_to_seg(_T18E);_T18AB->hd=Cyc_Absyn_new_decl(_T18A,_T18F);_T18AB->tl=0;_T185=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T185);goto _LL0;case 35: _T190=yyyvsp;_T191=_T190[0];
# 1449 "parse.y"
yyval=_T191.v;goto _LL0;case 36:
_T18AC->f1=Cyc_yyget_YY15(_T189);_T186=(struct Cyc_Absyn_Fn_d_Absyn_Raw_decl_struct*)_T18AC;}_T18A=(void*)_T186;_T18B=yyyvsp;_T18C=_T18B[0];_T18D=_T18C.l;_T18E=_T18D.first_line;_T18F=Cyc_Position_loc_to_seg(_T18E);_T18AB->hd=Cyc_Absyn_new_decl(_T18A,_T18F);_T18AB->tl=0;_T185=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T185);goto _LL0;case 35: _T190=yyyvsp;_T191=_T190[0];
# 1450 "parse.y"
yyval=_T191.v;goto _LL0;case 36:
# 1451 "parse.y"
 yyval=Cyc_YY16(0);goto _LL0;case 39: _T192=yyr;_T193=yyyvsp;_T194=& _T193[0].v;_T195=(union Cyc_YYSTYPE*)_T194;_T196=
# 1484 "parse.y"
# 1485 "parse.y"
Cyc_yyget_YY28(_T195);_T197=yyyvsp;_T198=& _T197[1].v;_T199=(union Cyc_YYSTYPE*)_T198;_T19A=Cyc_yyget_Stmt_tok(_T199);_T19B=yyyvsp;_T19C=_T19B[0];_T19D=_T19C.l;_T19E=_T19D.first_line;_T19F=Cyc_Position_loc_to_seg(_T19E);_T1A0=Cyc_Parse_make_function(_T192,0,_T196,0,_T19A,_T19F);yyval=Cyc_YY15(_T1A0);goto _LL0;case 40: _T1A1=yyyvsp;_T1A2=& _T1A1[0].v;_T1A3=(union Cyc_YYSTYPE*)_T1A2;{
# 1486 "parse.y"
# 1487 "parse.y"
struct Cyc_Parse_Declaration_spec d=Cyc_yyget_YY17(_T1A3);_T1A4=yyr;_T1A5=& d;_T1A6=(struct Cyc_Parse_Declaration_spec*)_T1A5;_T1A7=yyyvsp;_T1A8=& _T1A7[1].v;_T1A9=(union Cyc_YYSTYPE*)_T1A8;_T1AA=
Cyc_yyget_YY28(_T1A9);_T1AB=yyyvsp;_T1AC=& _T1AB[2].v;_T1AD=(union Cyc_YYSTYPE*)_T1AC;_T1AE=Cyc_yyget_Stmt_tok(_T1AD);_T1AF=yyyvsp;_T1B0=_T1AF[0];_T1B1=_T1B0.l;_T1B2=_T1B1.first_line;_T1B3=Cyc_Position_loc_to_seg(_T1B2);_T1B4=Cyc_Parse_make_function(_T1A4,_T1A6,_T1AA,0,_T1AE,_T1B3);yyval=Cyc_YY15(_T1B4);goto _LL0;}case 41: _T1B5=yyr;_T1B6=yyyvsp;_T1B7=& _T1B6[0].v;_T1B8=(union Cyc_YYSTYPE*)_T1B7;_T1B9=
# 1498 "parse.y"
# 1499 "parse.y"
Cyc_yyget_YY28(_T1B8);_T1BA=yyyvsp;_T1BB=& _T1BA[1].v;_T1BC=(union Cyc_YYSTYPE*)_T1BB;_T1BD=Cyc_yyget_YY16(_T1BC);_T1BE=yyyvsp;_T1BF=& _T1BE[2].v;_T1C0=(union Cyc_YYSTYPE*)_T1BF;_T1C1=Cyc_yyget_Stmt_tok(_T1C0);_T1C2=yyyvsp;_T1C3=_T1C2[0];_T1C4=_T1C3.l;_T1C5=_T1C4.first_line;_T1C6=Cyc_Position_loc_to_seg(_T1C5);_T1C7=Cyc_Parse_make_function(_T1B5,0,_T1B9,_T1BD,_T1C1,_T1C6);yyval=Cyc_YY15(_T1C7);goto _LL0;case 42: _T1C8=yyyvsp;_T1C9=& _T1C8[0].v;_T1CA=(union Cyc_YYSTYPE*)_T1C9;{
# 1500 "parse.y"
# 1501 "parse.y"
struct Cyc_Parse_Declaration_spec d=Cyc_yyget_YY17(_T1CA);_T1CB=yyr;_T1CC=& d;_T1CD=(struct Cyc_Parse_Declaration_spec*)_T1CC;_T1CE=yyyvsp;_T1CF=& _T1CE[1].v;_T1D0=(union Cyc_YYSTYPE*)_T1CF;_T1D1=
Cyc_yyget_YY28(_T1D0);_T1D2=yyyvsp;_T1D3=& _T1D2[2].v;_T1D4=(union Cyc_YYSTYPE*)_T1D3;_T1D5=Cyc_yyget_YY16(_T1D4);_T1D6=yyyvsp;_T1D7=& _T1D6[3].v;_T1D8=(union Cyc_YYSTYPE*)_T1D7;_T1D9=Cyc_yyget_Stmt_tok(_T1D8);_T1DA=yyyvsp;_T1DB=_T1DA[0];_T1DC=_T1DB.l;_T1DD=_T1DC.first_line;_T1DE=Cyc_Position_loc_to_seg(_T1DD);_T1DF=Cyc_Parse_make_function(_T1CB,_T1CD,_T1D1,_T1D5,_T1D9,_T1DE);yyval=Cyc_YY15(_T1DF);goto _LL0;}case 43: _T1E0=yyyvsp;_T1E1=& _T1E0[0].v;_T1E2=(union Cyc_YYSTYPE*)_T1E1;{
# 1508 "parse.y"
# 1509 "parse.y"
struct Cyc_Parse_Declaration_spec d=Cyc_yyget_YY17(_T1E2);_T1E3=yyr;_T1E4=& d;_T1E5=(struct Cyc_Parse_Declaration_spec*)_T1E4;_T1E6=yyyvsp;_T1E7=& _T1E6[1].v;_T1E8=(union Cyc_YYSTYPE*)_T1E7;_T1E9=
Cyc_yyget_YY28(_T1E8);_T1EA=yyyvsp;_T1EB=& _T1EA[2].v;_T1EC=(union Cyc_YYSTYPE*)_T1EB;_T1ED=Cyc_yyget_Stmt_tok(_T1EC);_T1EE=yyyvsp;_T1EF=_T1EE[0];_T1F0=_T1EF.l;_T1F1=_T1F0.first_line;_T1F2=Cyc_Position_loc_to_seg(_T1F1);_T1F3=Cyc_Parse_make_function(_T1E3,_T1E5,_T1E9,0,_T1ED,_T1F2);yyval=Cyc_YY15(_T1F3);goto _LL0;}case 44: _T1F4=yyyvsp;_T1F5=& _T1F4[0].v;_T1F6=(union Cyc_YYSTYPE*)_T1F5;{
# 1511 "parse.y"
# 1512 "parse.y"
struct Cyc_Parse_Declaration_spec d=Cyc_yyget_YY17(_T1F6);_T1F7=yyr;_T1F8=& d;_T1F9=(struct Cyc_Parse_Declaration_spec*)_T1F8;_T1FA=yyyvsp;_T1FB=& _T1FA[1].v;_T1FC=(union Cyc_YYSTYPE*)_T1FB;_T1FD=
Cyc_yyget_YY28(_T1FC);_T1FE=yyyvsp;_T1FF=& _T1FE[2].v;_T200=(union Cyc_YYSTYPE*)_T1FF;_T201=Cyc_yyget_YY16(_T200);_T202=yyyvsp;_T203=& _T202[3].v;_T204=(union Cyc_YYSTYPE*)_T203;_T205=Cyc_yyget_Stmt_tok(_T204);_T206=yyyvsp;_T207=_T206[0];_T208=_T207.l;_T209=_T208.first_line;_T20A=Cyc_Position_loc_to_seg(_T209);_T20B=Cyc_Parse_make_function(_T1F7,_T1F9,_T1FD,_T201,_T205,_T20A);yyval=Cyc_YY15(_T20B);goto _LL0;}case 45: _T20C=yyyvsp;_T20D=& _T20C[1].v;_T20E=(union Cyc_YYSTYPE*)_T20D;_T20F=
# 1516 "parse.y"
# 1517 "parse.y"
Cyc_yyget_QualId_tok(_T20E);Cyc_Lex_enter_using(_T20F);_T210=yyyvsp;_T211=_T210[1];yyval=_T211.v;goto _LL0;case 46:
# 1519
# 1520
 Cyc_Lex_leave_using();goto _LL0;case 47:{struct _fat_ptr*_T18AB=_cycalloc(sizeof(struct _fat_ptr));_T213=yyyvsp;_T214=& _T213[1].v;_T215=(union Cyc_YYSTYPE*)_T214;
# 1522
# 1523
*_T18AB=Cyc_yyget_String_tok(_T215);_T212=(struct _fat_ptr*)_T18AB;}Cyc_Lex_enter_namespace(_T212);_T216=yyyvsp;_T217=_T216[1];yyval=_T217.v;goto _LL0;case 48:
# 1525
# 1526
 Cyc_Lex_leave_namespace();goto _LL0;case 49:
# 1528
# 1529
 Cyc_Parse_inside_noinference_block=Cyc_Parse_inside_noinference_block + 1;goto _LL0;case 50:
# 1531
# 1532
 Cyc_Parse_inside_noinference_block=Cyc_Parse_inside_noinference_block + -1;goto _LL0;case 51: _T218=yyyvsp;_T219=& _T218[0].v;_T21A=(union Cyc_YYSTYPE*)_T219;_T21B=
# 1536 "parse.y"
# 1537 "parse.y"
Cyc_yyget_YY17(_T21A);_T21C=yyyvsp;_T21D=_T21C[0];_T21E=_T21D.l;_T21F=_T21E.first_line;_T220=Cyc_Position_loc_to_seg(_T21F);_T221=yyyvsp;_T222=_T221[0];_T223=_T222.l;_T224=_T223.first_line;_T225=Cyc_Position_loc_to_seg(_T224);_T226=Cyc_Parse_make_declarations(_T21B,0,_T220,_T225);yyval=Cyc_YY16(_T226);goto _LL0;case 52: _T227=yyyvsp;_T228=& _T227[0].v;_T229=(union Cyc_YYSTYPE*)_T228;_T22A=
# 1538 "parse.y"
# 1539 "parse.y"
Cyc_yyget_YY17(_T229);{struct _tuple11*(*_T18AB)(struct _tuple11*)=(struct _tuple11*(*)(struct _tuple11*))Cyc_Parse_flat_imp_rev;_T22B=_T18AB;}_T22C=yyyvsp;_T22D=& _T22C[1].v;_T22E=(union Cyc_YYSTYPE*)_T22D;_T22F=Cyc_yyget_YY19(_T22E);_T230=_T22B(_T22F);_T231=yyyvsp;_T232=_T231[0];_T233=_T232.l;_T234=_T233.first_line;_T235=Cyc_Position_loc_to_seg(_T234);_T236=yyyvsp;_T237=_T236[0];_T238=_T237.l;_T239=_T238.first_line;_T23A=Cyc_Position_loc_to_seg(_T239);_T23B=Cyc_Parse_make_declarations(_T22A,_T230,_T235,_T23A);yyval=Cyc_YY16(_T23B);goto _LL0;case 53:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T23D=yyyvsp;_T23E=& _T23D[1].v;_T23F=(union Cyc_YYSTYPE*)_T23E;_T240=
# 1541
# 1542
Cyc_yyget_YY9(_T23F);_T241=yyyvsp;_T242=& _T241[3].v;_T243=(union Cyc_YYSTYPE*)_T242;_T244=Cyc_yyget_Exp_tok(_T243);_T245=yyyvsp;_T246=_T245[0];_T247=_T246.l;_T248=_T247.first_line;_T249=Cyc_Position_loc_to_seg(_T248);_T18AB->hd=Cyc_Absyn_let_decl(_T240,_T244,_T249);_T18AB->tl=0;_T23C=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T23C);goto _LL0;case 54:  {
# 1543 "parse.y"
# 1544 "parse.y"
struct Cyc_List_List*vds=0;_T24A=yyyvsp;_T24B=& _T24A[1].v;_T24C=(union Cyc_YYSTYPE*)_T24B;{
struct Cyc_List_List*ids=Cyc_yyget_YY37(_T24C);_TL294: if(ids!=0)goto _TL292;else{goto _TL293;}
_TL292:{struct _tuple0*qv;qv=_cycalloc(sizeof(struct _tuple0));_T24D=qv;_T24D->f0=Cyc_Absyn_Rel_n(0);_T24E=qv;_T24F=ids;_T250=_T24F->hd;_T24E->f1=(struct _fat_ptr*)_T250;{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T252=qv;_T253=
Cyc_Absyn_wildtyp(0);_T18AB->hd=Cyc_Absyn_new_vardecl(0U,_T252,_T253,0,0);_T18AB->tl=vds;_T251=(struct Cyc_List_List*)_T18AB;}vds=_T251;}_T254=ids;
# 1544
# 1545
ids=_T254->tl;goto _TL294;_TL293:;}{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T256=
# 1548
# 1549
Cyc_List_imp_rev(vds);_T257=yyyvsp;_T258=_T257[0];_T259=_T258.l;_T25A=_T259.first_line;_T25B=Cyc_Position_loc_to_seg(_T25A);_T18AB->hd=Cyc_Absyn_letv_decl(_T256,_T25B);_T18AB->tl=0;_T255=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T255);goto _LL0;}case 55: _T25C=yyyvsp;_T25D=& _T25C[2].v;_T25E=(union Cyc_YYSTYPE*)_T25D;_T25F=
# 1553 "parse.y"
# 1554 "parse.y"
Cyc_yyget_String_tok(_T25E);_T260=yyyvsp;_T261=_T260[2];_T262=_T261.l;_T263=_T262.first_line;_T264=Cyc_Position_loc_to_seg(_T263);Cyc_Parse_tvar_ok(_T25F,_T264);{
struct Cyc_Absyn_Tvar*tv;tv=_cycalloc(sizeof(struct Cyc_Absyn_Tvar));_T265=tv;{struct _fat_ptr*_T18AB=_cycalloc(sizeof(struct _fat_ptr));_T267=yyyvsp;_T268=& _T267[2].v;_T269=(union Cyc_YYSTYPE*)_T268;*_T18AB=Cyc_yyget_String_tok(_T269);_T266=(struct _fat_ptr*)_T18AB;}_T265->name=_T266;_T26A=tv;_T26A->identity=- 1;_T26B=tv;_T26C=& Cyc_Kinds_ek;_T26D=(struct Cyc_Absyn_Kind*)_T26C;_T26B->kind=Cyc_Kinds_kind_to_bound(_T26D);_T26E=tv;_T26E->aquals_bound=0;{
void*t=Cyc_Absyn_var_type(tv);_T26F=yyyvsp;_T270=_T26F[4];_T271=_T270.l;_T272=_T271.first_line;_T273=
Cyc_Position_loc_to_seg(_T272);{struct _tuple0*_T18AB=_cycalloc(sizeof(struct _tuple0));_T18AB->f0=Cyc_Absyn_Loc_n();{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_T276=yyyvsp;_T277=& _T276[4].v;_T278=(union Cyc_YYSTYPE*)_T277;*_T18AC=Cyc_yyget_String_tok(_T278);_T275=(struct _fat_ptr*)_T18AC;}_T18AB->f1=_T275;_T274=(struct _tuple0*)_T18AB;}_T279=Cyc_Absyn_rgn_handle_type(t);{struct Cyc_Absyn_Vardecl*vd=Cyc_Absyn_new_vardecl(_T273,_T274,_T279,0,0);{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T27B=tv;_T27C=vd;_T27D=yyyvsp;_T27E=_T27D[0];_T27F=_T27E.l;_T280=_T27F.first_line;_T281=
Cyc_Position_loc_to_seg(_T280);_T18AB->hd=Cyc_Absyn_region_decl(_T27B,_T27C,0,_T281);_T18AB->tl=0;_T27A=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T27A);goto _LL0;}}}case 56:{struct Cyc_String_pa_PrintArg_struct _T18AB;_T18AB.tag=0;_T284=yyyvsp;_T285=& _T284[1].v;_T286=(union Cyc_YYSTYPE*)_T285;
# 1561
# 1562
_T18AB.f1=Cyc_yyget_String_tok(_T286);_T283=_T18AB;}{struct Cyc_String_pa_PrintArg_struct _T18AB=_T283;void*_T18AC[1];_T18AC[0]=& _T18AB;_T287=_tag_fat("`%s",sizeof(char),4U);_T288=_tag_fat(_T18AC,sizeof(void*),1);_T282=Cyc_aprintf(_T287,_T288);}{struct _fat_ptr tvstring=_T282;_T289=yyyvsp;_T28A=& _T289[1].v;_T28B=(union Cyc_YYSTYPE*)_T28A;_T28C=
Cyc_yyget_String_tok(_T28B);_T28D=yyyvsp;_T28E=_T28D[1];_T28F=_T28E.l;_T290=_T28F.first_line;_T291=Cyc_Position_loc_to_seg(_T290);Cyc_Parse_tvar_ok(_T28C,_T291);{
struct Cyc_Absyn_Tvar*tv;tv=_cycalloc(sizeof(struct Cyc_Absyn_Tvar));_T292=tv;{struct _fat_ptr*_T18AB=_cycalloc(sizeof(struct _fat_ptr));*_T18AB=tvstring;_T293=(struct _fat_ptr*)_T18AB;}_T292->name=_T293;_T294=tv;_T294->identity=- 1;_T295=tv;_T296=& Cyc_Kinds_ek;_T297=(struct Cyc_Absyn_Kind*)_T296;_T295->kind=Cyc_Kinds_kind_to_bound(_T297);_T298=tv;_T298->aquals_bound=0;{
void*t=Cyc_Absyn_var_type(tv);_T299=yyyvsp;_T29A=_T299[1];_T29B=_T29A.l;_T29C=_T29B.first_line;_T29D=
Cyc_Position_loc_to_seg(_T29C);{struct _tuple0*_T18AB=_cycalloc(sizeof(struct _tuple0));_T18AB->f0=Cyc_Absyn_Loc_n();{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_T2A0=yyyvsp;_T2A1=& _T2A0[1].v;_T2A2=(union Cyc_YYSTYPE*)_T2A1;*_T18AC=Cyc_yyget_String_tok(_T2A2);_T29F=(struct _fat_ptr*)_T18AC;}_T18AB->f1=_T29F;_T29E=(struct _tuple0*)_T18AB;}_T2A3=Cyc_Absyn_rgn_handle_type(t);{struct Cyc_Absyn_Vardecl*vd=Cyc_Absyn_new_vardecl(_T29D,_T29E,_T2A3,0,0);{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T2A5=tv;_T2A6=vd;_T2A7=yyyvsp;_T2A8=& _T2A7[2].v;_T2A9=(union Cyc_YYSTYPE*)_T2A8;_T2AA=
Cyc_yyget_YY61(_T2A9);_T2AB=yyyvsp;_T2AC=_T2AB[0];_T2AD=_T2AC.l;_T2AE=_T2AD.first_line;_T2AF=Cyc_Position_loc_to_seg(_T2AE);_T18AB->hd=Cyc_Absyn_region_decl(_T2A5,_T2A6,_T2AA,_T2AF);_T18AB->tl=0;_T2A4=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY16(_T2A4);goto _LL0;}}}}case 57:
# 1571 "parse.y"
# 1572 "parse.y"
 yyval=Cyc_YY61(0);goto _LL0;case 58: _T2B0=yyyvsp;_T2B1=& _T2B0[1].v;_T2B2=(union Cyc_YYSTYPE*)_T2B1;_T2B3=
# 1573 "parse.y"
# 1574 "parse.y"
Cyc_yyget_String_tok(_T2B2);_T2B4=_tag_fat("open",sizeof(char),5U);_T2B5=Cyc_strcmp(_T2B3,_T2B4);if(_T2B5==0)goto _TL295;_T2B6=yyyvsp;_T2B7=_T2B6[3];_T2B8=_T2B7.l;_T2B9=_T2B8.first_line;_T2BA=Cyc_Position_loc_to_seg(_T2B9);_T2BB=_tag_fat("expecting `open'",sizeof(char),17U);_T2BC=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T2BA,_T2BB,_T2BC);goto _TL296;_TL295: _TL296: _T2BD=yyyvsp;_T2BE=& _T2BD[3].v;_T2BF=(union Cyc_YYSTYPE*)_T2BE;_T2C0=
Cyc_yyget_Exp_tok(_T2BF);yyval=Cyc_YY61(_T2C0);goto _LL0;case 59: _T2C1=yyyvsp;_T2C2=_T2C1[0];
# 1577
# 1578
yyval=_T2C2.v;goto _LL0;case 60: _T2C3=yyyvsp;_T2C4=& _T2C3[0].v;_T2C5=(union Cyc_YYSTYPE*)_T2C4;_T2C6=
# 1578 "parse.y"
# 1579 "parse.y"
Cyc_yyget_YY16(_T2C5);_T2C7=yyyvsp;_T2C8=& _T2C7[1].v;_T2C9=(union Cyc_YYSTYPE*)_T2C8;_T2CA=Cyc_yyget_YY16(_T2C9);_T2CB=Cyc_List_imp_append(_T2C6,_T2CA);yyval=Cyc_YY16(_T2CB);goto _LL0;case 61:{struct Cyc_Parse_Declaration_spec _T18AB;_T2CD=yyyvsp;_T2CE=& _T2CD[0].v;_T2CF=(union Cyc_YYSTYPE*)_T2CE;
# 1584 "parse.y"
# 1585 "parse.y"
_T18AB.sc=Cyc_yyget_YY20(_T2CF);_T2D0=yyyvsp;_T2D1=_T2D0[0];_T2D2=_T2D1.l;_T2D3=_T2D2.first_line;_T2D4=Cyc_Position_loc_to_seg(_T2D3);_T18AB.tq=Cyc_Absyn_empty_tqual(_T2D4);
_T18AB.type_specs=Cyc_Parse_empty_spec(0U);_T18AB.is_inline=0;_T18AB.attributes=0;_T2CC=_T18AB;}
# 1584
# 1585
yyval=Cyc_YY17(_T2CC);goto _LL0;case 62: _T2D5=yyyvsp;_T2D6=& _T2D5[1].v;_T2D7=(union Cyc_YYSTYPE*)_T2D6;{
# 1587 "parse.y"
# 1588 "parse.y"
struct Cyc_Parse_Declaration_spec two=Cyc_yyget_YY17(_T2D7);_T2D8=two;_T2D9=_T2D8.sc;_T2DA=(int)_T2D9;
if(_T2DA==7)goto _TL297;_T2DB=yyyvsp;_T2DC=_T2DB[0];_T2DD=_T2DC.l;_T2DE=_T2DD.first_line;_T2DF=
Cyc_Position_loc_to_seg(_T2DE);_T2E0=
_tag_fat("Only one storage class is allowed in a declaration (missing ';' or ','?)",sizeof(char),73U);_T2E1=_tag_fat(0U,sizeof(void*),0);
# 1589
# 1590
Cyc_Warn_warn(_T2DF,_T2E0,_T2E1);goto _TL298;_TL297: _TL298:{struct Cyc_Parse_Declaration_spec _T18AB;_T2E3=yyyvsp;_T2E4=& _T2E3[0].v;_T2E5=(union Cyc_YYSTYPE*)_T2E4;
# 1591
# 1592
_T18AB.sc=Cyc_yyget_YY20(_T2E5);_T2E6=two;_T18AB.tq=_T2E6.tq;_T2E7=two;_T18AB.type_specs=_T2E7.type_specs;_T2E8=two;
_T18AB.is_inline=_T2E8.is_inline;_T2E9=two;_T18AB.attributes=_T2E9.attributes;_T2E2=_T18AB;}
# 1591
# 1592
yyval=Cyc_YY17(_T2E2);goto _LL0;}case 63: _T2EA=yyyvsp;_T2EB=_T2EA[0];_T2EC=_T2EB.l;_T2ED=_T2EC.first_line;_T2EE=
# 1595 "parse.y"
# 1596 "parse.y"
Cyc_Position_loc_to_seg(_T2ED);_T2EF=_tag_fat("__extension__ keyword ignored in declaration",sizeof(char),45U);_T2F0=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T2EE,_T2EF,_T2F0);_T2F1=yyyvsp;_T2F2=_T2F1[1];
yyval=_T2F2.v;goto _LL0;case 64:{struct Cyc_Parse_Declaration_spec _T18AB;
# 1599 "parse.y"
# 1600 "parse.y"
_T18AB.sc=7U;_T2F4=yyyvsp;_T2F5=_T2F4[0];_T2F6=_T2F5.l;_T2F7=_T2F6.first_line;_T2F8=Cyc_Position_loc_to_seg(_T2F7);_T18AB.tq=Cyc_Absyn_empty_tqual(_T2F8);_T2F9=yyyvsp;_T2FA=& _T2F9[0].v;_T2FB=(union Cyc_YYSTYPE*)_T2FA;
_T18AB.type_specs=Cyc_yyget_YY21(_T2FB);_T18AB.is_inline=0;_T18AB.attributes=0;_T2F3=_T18AB;}
# 1599
# 1600
yyval=Cyc_YY17(_T2F3);goto _LL0;case 65: _T2FC=yyyvsp;_T2FD=& _T2FC[1].v;_T2FE=(union Cyc_YYSTYPE*)_T2FD;{
# 1602 "parse.y"
# 1603 "parse.y"
struct Cyc_Parse_Declaration_spec two=Cyc_yyget_YY17(_T2FE);{struct Cyc_Parse_Declaration_spec _T18AB;_T300=two;
_T18AB.sc=_T300.sc;_T301=two;_T18AB.tq=_T301.tq;_T302=yyyvsp;_T303=_T302[0];_T304=_T303.l;_T305=_T304.first_line;_T306=
Cyc_Position_loc_to_seg(_T305);_T307=two;_T308=_T307.type_specs;_T309=yyyvsp;_T30A=& _T309[0].v;_T30B=(union Cyc_YYSTYPE*)_T30A;_T30C=Cyc_yyget_YY21(_T30B);_T18AB.type_specs=Cyc_Parse_combine_specifiers(_T306,_T308,_T30C);_T30D=two;
_T18AB.is_inline=_T30D.is_inline;_T30E=two;_T18AB.attributes=_T30E.attributes;_T2FF=_T18AB;}
# 1603
# 1604
yyval=Cyc_YY17(_T2FF);goto _LL0;}case 66:{struct Cyc_Parse_Declaration_spec _T18AB;
# 1608 "parse.y"
# 1609 "parse.y"
_T18AB.sc=7U;_T310=yyyvsp;_T311=& _T310[0].v;_T312=(union Cyc_YYSTYPE*)_T311;_T18AB.tq=Cyc_yyget_YY24(_T312);_T18AB.type_specs=Cyc_Parse_empty_spec(0U);_T18AB.is_inline=0;_T18AB.attributes=0;_T30F=_T18AB;}yyval=Cyc_YY17(_T30F);goto _LL0;case 67: _T313=yyyvsp;_T314=& _T313[1].v;_T315=(union Cyc_YYSTYPE*)_T314;{
# 1610 "parse.y"
# 1611 "parse.y"
struct Cyc_Parse_Declaration_spec two=Cyc_yyget_YY17(_T315);{struct Cyc_Parse_Declaration_spec _T18AB;_T317=two;
_T18AB.sc=_T317.sc;_T318=yyyvsp;_T319=& _T318[0].v;_T31A=(union Cyc_YYSTYPE*)_T319;_T31B=Cyc_yyget_YY24(_T31A);_T31C=two;_T31D=_T31C.tq;_T18AB.tq=Cyc_Absyn_combine_tqual(_T31B,_T31D);_T31E=two;
_T18AB.type_specs=_T31E.type_specs;_T31F=two;_T18AB.is_inline=_T31F.is_inline;_T320=two;_T18AB.attributes=_T320.attributes;_T316=_T18AB;}
# 1611
# 1612
yyval=Cyc_YY17(_T316);goto _LL0;}case 68:{struct Cyc_Parse_Declaration_spec _T18AB;
# 1615 "parse.y"
# 1616 "parse.y"
_T18AB.sc=7U;_T322=yyyvsp;_T323=_T322[0];_T324=_T323.l;_T325=_T324.first_line;_T326=Cyc_Position_loc_to_seg(_T325);_T18AB.tq=Cyc_Absyn_empty_tqual(_T326);
_T18AB.type_specs=Cyc_Parse_empty_spec(0U);_T18AB.is_inline=1;_T18AB.attributes=0;_T321=_T18AB;}
# 1615
# 1616
yyval=Cyc_YY17(_T321);goto _LL0;case 69: _T327=yyyvsp;_T328=& _T327[1].v;_T329=(union Cyc_YYSTYPE*)_T328;{
# 1618 "parse.y"
# 1619 "parse.y"
struct Cyc_Parse_Declaration_spec two=Cyc_yyget_YY17(_T329);{struct Cyc_Parse_Declaration_spec _T18AB;_T32B=two;
_T18AB.sc=_T32B.sc;_T32C=two;_T18AB.tq=_T32C.tq;_T32D=two;_T18AB.type_specs=_T32D.type_specs;_T18AB.is_inline=1;_T32E=two;_T18AB.attributes=_T32E.attributes;_T32A=_T18AB;}yyval=Cyc_YY17(_T32A);goto _LL0;}case 70:{struct Cyc_Parse_Declaration_spec _T18AB;
# 1622 "parse.y"
# 1623 "parse.y"
_T18AB.sc=7U;_T330=yyyvsp;_T331=_T330[0];_T332=_T331.l;_T333=_T332.first_line;_T334=Cyc_Position_loc_to_seg(_T333);_T18AB.tq=Cyc_Absyn_empty_tqual(_T334);
_T18AB.type_specs=Cyc_Parse_empty_spec(0U);_T18AB.is_inline=0;_T335=yyyvsp;_T336=& _T335[0].v;_T337=(union Cyc_YYSTYPE*)_T336;_T18AB.attributes=Cyc_yyget_YY46(_T337);_T32F=_T18AB;}
# 1622
# 1623
yyval=Cyc_YY17(_T32F);goto _LL0;case 71: _T338=yyyvsp;_T339=& _T338[1].v;_T33A=(union Cyc_YYSTYPE*)_T339;{
# 1625 "parse.y"
# 1626 "parse.y"
struct Cyc_Parse_Declaration_spec two=Cyc_yyget_YY17(_T33A);{struct Cyc_Parse_Declaration_spec _T18AB;_T33C=two;
_T18AB.sc=_T33C.sc;_T33D=two;_T18AB.tq=_T33D.tq;_T33E=two;
_T18AB.type_specs=_T33E.type_specs;_T33F=two;_T18AB.is_inline=_T33F.is_inline;_T340=yyyvsp;_T341=& _T340[0].v;_T342=(union Cyc_YYSTYPE*)_T341;_T343=
Cyc_yyget_YY46(_T342);_T344=two;_T345=_T344.attributes;_T18AB.attributes=Cyc_List_imp_append(_T343,_T345);_T33B=_T18AB;}
# 1626
# 1627
yyval=Cyc_YY17(_T33B);goto _LL0;}case 72:
# 1632 "parse.y"
 yyval=Cyc_YY20(4U);goto _LL0;case 73:
# 1633 "parse.y"
 yyval=Cyc_YY20(5U);goto _LL0;case 74:
 yyval=Cyc_YY20(4U);goto _LL0;case 73:
# 1634 "parse.y"
 yyval=Cyc_YY20(3U);goto _LL0;case 75:
 yyval=Cyc_YY20(5U);goto _LL0;case 74:
# 1635 "parse.y"
 yyval=Cyc_YY20(3U);goto _LL0;case 75:
# 1636 "parse.y"
 yyval=Cyc_YY20(1U);goto _LL0;case 76: _T346=yyyvsp;_T347=& _T346[1].v;_T348=(union Cyc_YYSTYPE*)_T347;_T349=
# 1637 "parse.y"
# 1638 "parse.y"
Cyc_yyget_String_tok(_T348);_T34A=_tag_fat("C",sizeof(char),2U);_T34B=Cyc_strcmp(_T349,_T34A);if(_T34B==0)goto _TL299;_T34C=yyyvsp;_T34D=_T34C[0];_T34E=_T34D.l;_T34F=_T34E.first_line;_T350=
Cyc_Position_loc_to_seg(_T34F);_T351=_tag_fat("only extern or extern \"C\" is allowed",sizeof(char),37U);_T352=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_err(_T350,_T351,_T352);goto _TL29A;_TL299: _TL29A:
 yyval=Cyc_YY20(2U);goto _LL0;case 77:
# 1641 "parse.y"
# 1642 "parse.y"
 yyval=Cyc_YY20(0U);goto _LL0;case 78:
# 1643 "parse.y"
# 1644 "parse.y"
 yyval=Cyc_YY20(6U);goto _LL0;case 79:
# 1648 "parse.y"
 yyval=Cyc_YY46(0);goto _LL0;case 80: _T353=yyyvsp;_T354=_T353[0];
# 1649 "parse.y"
 yyval=Cyc_YY46(0);goto _LL0;case 80: _T353=yyyvsp;_T354=_T353[0];
# 1650 "parse.y"
yyval=_T354.v;goto _LL0;case 81: _T355=yyyvsp;_T356=_T355[3];
# 1653 "parse.y"
# 1654 "parse.y"
yyval=_T356.v;goto _LL0;case 82:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T358=yyyvsp;_T359=& _T358[0].v;_T35A=(union Cyc_YYSTYPE*)_T359;
# 1656
# 1657
_T18AB->hd=Cyc_yyget_YY47(_T35A);_T18AB->tl=0;_T357=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY46(_T357);goto _LL0;case 83:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T35C=yyyvsp;_T35D=& _T35C[0].v;_T35E=(union Cyc_YYSTYPE*)_T35D;
# 1657 "parse.y"
# 1658 "parse.y"
_T18AB->hd=Cyc_yyget_YY47(_T35E);_T35F=yyyvsp;_T360=& _T35F[2].v;_T361=(union Cyc_YYSTYPE*)_T360;_T18AB->tl=Cyc_yyget_YY46(_T361);_T35B=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY46(_T35B);goto _LL0;case 84: _T362=yyyvsp;_T363=_T362[0];_T364=_T363.l;_T365=_T364.first_line;_T366=
# 1660
# 1661
Cyc_Position_loc_to_seg(_T365);_T367=yyyvsp;_T368=& _T367[0].v;_T369=(union Cyc_YYSTYPE*)_T368;_T36A=Cyc_yyget_String_tok(_T369);_T36B=Cyc_Atts_parse_nullary_att(_T366,_T36A);yyval=Cyc_YY47(_T36B);goto _LL0;case 85: _T36C=& Cyc_Atts_Const_att_val;_T36D=(struct Cyc_Absyn_Const_att_Absyn_Attribute_struct*)_T36C;_T36E=(void*)_T36D;
# 1661 "parse.y"
# 1662 "parse.y"
yyval=Cyc_YY47(_T36E);goto _LL0;case 86: _T36F=yyyvsp;_T370=_T36F[0];_T371=_T370.l;_T372=_T371.first_line;_T373=
# 1663 "parse.y"
# 1664 "parse.y"
Cyc_Position_loc_to_seg(_T372);_T374=yyyvsp;_T375=& _T374[0].v;_T376=(union Cyc_YYSTYPE*)_T375;_T377=Cyc_yyget_String_tok(_T376);_T378=yyyvsp;_T379=_T378[2];_T37A=_T379.l;_T37B=_T37A.first_line;_T37C=Cyc_Position_loc_to_seg(_T37B);_T37D=yyyvsp;_T37E=& _T37D[2].v;_T37F=(union Cyc_YYSTYPE*)_T37E;_T380=Cyc_yyget_Exp_tok(_T37F);_T381=Cyc_Atts_parse_unary_att(_T373,_T377,_T37C,_T380);yyval=Cyc_YY47(_T381);goto _LL0;case 87: _T382=yyyvsp;_T383=_T382[0];_T384=_T383.l;_T385=_T384.first_line;_T386=
# 1665 "parse.y"
# 1666 "parse.y"
Cyc_Position_loc_to_seg(_T385);_T387=yyyvsp;_T388=_T387[2];_T389=_T388.l;_T38A=_T389.first_line;_T38B=Cyc_Position_loc_to_seg(_T38A);_T38C=yyyvsp;_T38D=& _T38C[0].v;_T38E=(union Cyc_YYSTYPE*)_T38D;_T38F=Cyc_yyget_String_tok(_T38E);_T390=yyyvsp;_T391=& _T390[2].v;_T392=(union Cyc_YYSTYPE*)_T391;_T393=Cyc_yyget_String_tok(_T392);_T394=yyyvsp;_T395=_T394[4];_T396=_T395.l;_T397=_T396.first_line;_T398=
Cyc_Position_loc_to_seg(_T397);_T399=yyyvsp;_T39A=& _T399[4].v;_T39B=(union Cyc_YYSTYPE*)_T39A;_T39C=Cyc_yyget_Int_tok(_T39B);_T39D=Cyc_Parse_cnst2uint(_T398,_T39C);_T39E=yyyvsp;_T39F=_T39E[6];_T3A0=_T39F.l;_T3A1=_T3A0.first_line;_T3A2=
Cyc_Position_loc_to_seg(_T3A1);_T3A3=yyyvsp;_T3A4=& _T3A3[6].v;_T3A5=(union Cyc_YYSTYPE*)_T3A4;_T3A6=Cyc_yyget_Int_tok(_T3A5);_T3A7=Cyc_Parse_cnst2uint(_T3A2,_T3A6);_T3A8=
# 1665
# 1666
Cyc_Atts_parse_format_att(_T386,_T38B,_T38F,_T393,_T39D,_T3A7);yyval=Cyc_YY47(_T3A8);goto _LL0;case 88: _T3A9=yyyvsp;_T3AA=_T3A9[0];
# 1677 "parse.y"
# 1678 "parse.y"
yyval=_T3AA.v;goto _LL0;case 89: _T3AB=yyyvsp;_T3AC=& _T3AB[0].v;_T3AD=(union Cyc_YYSTYPE*)_T3AC;_T3AE=
# 1679 "parse.y"
# 1680 "parse.y"
Cyc_yyget_QualId_tok(_T3AD);_T3AF=yyyvsp;_T3B0=& _T3AF[1].v;_T3B1=(union Cyc_YYSTYPE*)_T3B0;_T3B2=Cyc_yyget_YY41(_T3B1);_T3B3=Cyc_Absyn_typedef_type(_T3AE,_T3B2,0,0);_T3B4=yyyvsp;_T3B5=_T3B4[0];_T3B6=_T3B5.l;_T3B7=_T3B6.first_line;_T3B8=Cyc_Position_loc_to_seg(_T3B7);_T3B9=Cyc_Parse_type_spec(_T3B3,_T3B8);yyval=Cyc_YY21(_T3B9);goto _LL0;case 90: _T3BA=Cyc_Absyn_void_type;_T3BB=yyyvsp;_T3BC=_T3BB[0];_T3BD=_T3BC.l;_T3BE=_T3BD.first_line;_T3BF=
# 1683 "parse.y"
Cyc_Position_loc_to_seg(_T3BE);_T3C0=Cyc_Parse_type_spec(_T3BA,_T3BF);yyval=Cyc_YY21(_T3C0);goto _LL0;case 91: _T3C1=Cyc_Absyn_char_type;_T3C2=yyyvsp;_T3C3=_T3C2[0];_T3C4=_T3C3.l;_T3C5=_T3C4.first_line;_T3C6=
# 1684 "parse.y"
Cyc_Position_loc_to_seg(_T3C5);_T3C7=Cyc_Parse_type_spec(_T3C1,_T3C6);yyval=Cyc_YY21(_T3C7);goto _LL0;case 92: _T3C8=yyyvsp;_T3C9=_T3C8[0];_T3CA=_T3C9.l;_T3CB=_T3CA.first_line;_T3CC=
Cyc_Position_loc_to_seg(_T3BE);_T3C0=Cyc_Parse_type_spec(_T3BA,_T3BF);yyval=Cyc_YY21(_T3C0);goto _LL0;case 91: _T3C1=Cyc_Absyn_char_type;_T3C2=yyyvsp;_T3C3=_T3C2[0];_T3C4=_T3C3.l;_T3C5=_T3C4.first_line;_T3C6=
# 1685 "parse.y"
Cyc_Position_loc_to_seg(_T3CB);_T3CD=Cyc_Parse_short_spec(_T3CC);yyval=Cyc_YY21(_T3CD);goto _LL0;case 93: _T3CE=Cyc_Absyn_sint_type;_T3CF=yyyvsp;_T3D0=_T3CF[0];_T3D1=_T3D0.l;_T3D2=_T3D1.first_line;_T3D3=
Cyc_Position_loc_to_seg(_T3C5);_T3C7=Cyc_Parse_type_spec(_T3C1,_T3C6);yyval=Cyc_YY21(_T3C7);goto _LL0;case 92: _T3C8=yyyvsp;_T3C9=_T3C8[0];_T3CA=_T3C9.l;_T3CB=_T3CA.first_line;_T3CC=
# 1686 "parse.y"
Cyc_Position_loc_to_seg(_T3D2);_T3D4=Cyc_Parse_type_spec(_T3CE,_T3D3);yyval=Cyc_YY21(_T3D4);goto _LL0;case 94: _T3D5=yyyvsp;_T3D6=_T3D5[0];_T3D7=_T3D6.l;_T3D8=_T3D7.first_line;_T3D9=
Cyc_Position_loc_to_seg(_T3CB);_T3CD=Cyc_Parse_short_spec(_T3CC);yyval=Cyc_YY21(_T3CD);goto _LL0;case 93: _T3CE=Cyc_Absyn_sint_type;_T3CF=yyyvsp;_T3D0=_T3CF[0];_T3D1=_T3D0.l;_T3D2=_T3D1.first_line;_T3D3=
# 1687 "parse.y"
Cyc_Position_loc_to_seg(_T3D8);_T3DA=Cyc_Parse_long_spec(_T3D9);yyval=Cyc_YY21(_T3DA);goto _LL0;case 95: _T3DB=Cyc_Absyn_float_type;_T3DC=yyyvsp;_T3DD=_T3DC[0];_T3DE=_T3DD.l;_T3DF=_T3DE.first_line;_T3E0=
Cyc_Position_loc_to_seg(_T3D2);_T3D4=Cyc_Parse_type_spec(_T3CE,_T3D3);yyval=Cyc_YY21(_T3D4);goto _LL0;case 94: _T3D5=yyyvsp;_T3D6=_T3D5[0];_T3D7=_T3D6.l;_T3D8=_T3D7.first_line;_T3D9=
# 1688 "parse.y"
Cyc_Position_loc_to_seg(_T3DF);_T3E1=Cyc_Parse_type_spec(_T3DB,_T3E0);yyval=Cyc_YY21(_T3E1);goto _LL0;case 96: _T3E2=Cyc_Absyn_double_type;_T3E3=yyyvsp;_T3E4=_T3E3[0];_T3E5=_T3E4.l;_T3E6=_T3E5.first_line;_T3E7=
Cyc_Position_loc_to_seg(_T3D8);_T3DA=Cyc_Parse_long_spec(_T3D9);yyval=Cyc_YY21(_T3DA);goto _LL0;case 95: _T3DB=Cyc_Absyn_float_type;_T3DC=yyyvsp;_T3DD=_T3DC[0];_T3DE=_T3DD.l;_T3DF=_T3DE.first_line;_T3E0=
# 1689 "parse.y"
Cyc_Position_loc_to_seg(_T3E6);_T3E8=Cyc_Parse_type_spec(_T3E2,_T3E7);yyval=Cyc_YY21(_T3E8);goto _LL0;case 97: _T3E9=yyyvsp;_T3EA=_T3E9[0];_T3EB=_T3EA.l;_T3EC=_T3EB.first_line;_T3ED=
Cyc_Position_loc_to_seg(_T3DF);_T3E1=Cyc_Parse_type_spec(_T3DB,_T3E0);yyval=Cyc_YY21(_T3E1);goto _LL0;case 96: _T3E2=Cyc_Absyn_double_type;_T3E3=yyyvsp;_T3E4=_T3E3[0];_T3E5=_T3E4.l;_T3E6=_T3E5.first_line;_T3E7=
# 1690 "parse.y"
Cyc_Position_loc_to_seg(_T3EC);_T3EE=Cyc_Parse_signed_spec(_T3ED);yyval=Cyc_YY21(_T3EE);goto _LL0;case 98: _T3EF=yyyvsp;_T3F0=_T3EF[0];_T3F1=_T3F0.l;_T3F2=_T3F1.first_line;_T3F3=
Cyc_Position_loc_to_seg(_T3E6);_T3E8=Cyc_Parse_type_spec(_T3E2,_T3E7);yyval=Cyc_YY21(_T3E8);goto _LL0;case 97: _T3E9=yyyvsp;_T3EA=_T3E9[0];_T3EB=_T3EA.l;_T3EC=_T3EB.first_line;_T3ED=
# 1691 "parse.y"
Cyc_Position_loc_to_seg(_T3F2);_T3F4=Cyc_Parse_unsigned_spec(_T3F3);yyval=Cyc_YY21(_T3F4);goto _LL0;case 99: _T3F5=yyyvsp;_T3F6=_T3F5[0];_T3F7=_T3F6.l;_T3F8=_T3F7.first_line;_T3F9=
Cyc_Position_loc_to_seg(_T3EC);_T3EE=Cyc_Parse_signed_spec(_T3ED);yyval=Cyc_YY21(_T3EE);goto _LL0;case 98: _T3EF=yyyvsp;_T3F0=_T3EF[0];_T3F1=_T3F0.l;_T3F2=_T3F1.first_line;_T3F3=
# 1692 "parse.y"
Cyc_Position_loc_to_seg(_T3F8);_T3FA=Cyc_Parse_complex_spec(_T3F9);yyval=Cyc_YY21(_T3FA);goto _LL0;case 100: _T3FB=yyyvsp;_T3FC=_T3FB[0];
Cyc_Position_loc_to_seg(_T3F2);_T3F4=Cyc_Parse_unsigned_spec(_T3F3);yyval=Cyc_YY21(_T3F4);goto _LL0;case 99: _T3F5=yyyvsp;_T3F6=_T3F5[0];_T3F7=_T3F6.l;_T3F8=_T3F7.first_line;_T3F9=
# 1693 "parse.y"
yyval=_T3FC.v;goto _LL0;case 101: _T3FD=yyyvsp;_T3FE=_T3FD[0];
Cyc_Position_loc_to_seg(_T3F8);_T3FA=Cyc_Parse_complex_spec(_T3F9);yyval=Cyc_YY21(_T3FA);goto _LL0;case 100: _T3FB=yyyvsp;_T3FC=_T3FB[0];
# 1694 "parse.y"
yyval=_T3FC.v;goto _LL0;case 101: _T3FD=yyyvsp;_T3FE=_T3FD[0];
# 1695 "parse.y"
yyval=_T3FE.v;goto _LL0;case 102: _T3FF=yyyvsp;_T400=& _T3FF[2].v;_T401=(union Cyc_YYSTYPE*)_T400;_T402=
# 1696 "parse.y"
# 1697 "parse.y"
Cyc_yyget_Exp_tok(_T401);_T403=Cyc_Absyn_typeof_type(_T402);_T404=yyyvsp;_T405=_T404[0];_T406=_T405.l;_T407=_T406.first_line;_T408=Cyc_Position_loc_to_seg(_T407);_T409=Cyc_Parse_type_spec(_T403,_T408);yyval=Cyc_YY21(_T409);goto _LL0;case 103: _T40A=
# 1698 "parse.y"
# 1699 "parse.y"
_tag_fat("__builtin_va_list",sizeof(char),18U);_T40B=& Cyc_Kinds_bk;_T40C=(struct Cyc_Absyn_Kind*)_T40B;_T40D=Cyc_Absyn_builtin_type(_T40A,_T40C);_T40E=yyyvsp;_T40F=_T40E[0];_T410=_T40F.l;_T411=_T410.first_line;_T412=Cyc_Position_loc_to_seg(_T411);_T413=Cyc_Parse_type_spec(_T40D,_T412);yyval=Cyc_YY21(_T413);goto _LL0;case 104: _T414=yyyvsp;_T415=_T414[0];
# 1700 "parse.y"
# 1701 "parse.y"
yyval=_T415.v;goto _LL0;case 105: _T416=yyyvsp;_T417=& _T416[0].v;_T418=(union Cyc_YYSTYPE*)_T417;_T419=
# 1702 "parse.y"
# 1703 "parse.y"
Cyc_yyget_YY45(_T418);_T41A=yyyvsp;_T41B=_T41A[0];_T41C=_T41B.l;_T41D=_T41C.first_line;_T41E=Cyc_Position_loc_to_seg(_T41D);_T41F=Cyc_Parse_type_spec(_T419,_T41E);yyval=Cyc_YY21(_T41F);goto _LL0;case 106: _T420=
# 1704 "parse.y"
# 1705 "parse.y"
Cyc_Absyn_new_evar(0,0);_T421=yyyvsp;_T422=_T421[0];_T423=_T422.l;_T424=_T423.first_line;_T425=Cyc_Position_loc_to_seg(_T424);_T426=Cyc_Parse_type_spec(_T420,_T425);yyval=Cyc_YY21(_T426);goto _LL0;case 107: _T427=yyyvsp;_T428=& _T427[2].v;_T429=(union Cyc_YYSTYPE*)_T428;_T42A=
# 1706 "parse.y"
# 1707 "parse.y"
Cyc_yyget_YY44(_T429);_T42B=Cyc_Kinds_kind_to_opt(_T42A);_T42C=Cyc_Absyn_new_evar(_T42B,0);_T42D=yyyvsp;_T42E=_T42D[0];_T42F=_T42E.l;_T430=_T42F.first_line;_T431=Cyc_Position_loc_to_seg(_T430);_T432=Cyc_Parse_type_spec(_T42C,_T431);yyval=Cyc_YY21(_T432);goto _LL0;case 108: _T434=Cyc_List_map_c;{
# 1708 "parse.y"
# 1709 "parse.y"
struct Cyc_List_List*(*_T18AB)(struct _tuple19*(*)(unsigned,struct _tuple8*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct _tuple19*(*)(unsigned,struct _tuple8*),unsigned,struct Cyc_List_List*))_T434;_T433=_T18AB;}{struct _tuple19*(*_T18AB)(unsigned,struct _tuple8*)=(struct _tuple19*(*)(unsigned,struct _tuple8*))Cyc_Parse_get_tqual_typ;_T435=_T18AB;}_T436=yyyvsp;_T437=_T436[2];_T438=_T437.l;_T439=_T438.first_line;_T43A=Cyc_Position_loc_to_seg(_T439);_T43B=yyyvsp;_T43C=& _T43B[2].v;_T43D=(union Cyc_YYSTYPE*)_T43C;_T43E=Cyc_yyget_YY39(_T43D);_T43F=Cyc_List_imp_rev(_T43E);_T440=_T433(_T435,_T43A,_T43F);_T441=Cyc_Absyn_tuple_type(_T440);_T442=yyyvsp;_T443=_T442[0];_T444=_T443.l;_T445=_T444.first_line;_T446=
Cyc_Position_loc_to_seg(_T445);_T447=
# 1708
# 1709
Cyc_Parse_type_spec(_T441,_T446);yyval=Cyc_YY21(_T447);goto _LL0;case 109: _T448=yyyvsp;_T449=& _T448[2].v;_T44A=(union Cyc_YYSTYPE*)_T449;_T44B=
# 1711 "parse.y"
# 1712 "parse.y"
Cyc_yyget_YY45(_T44A);_T44C=Cyc_Absyn_rgn_handle_type(_T44B);_T44D=yyyvsp;_T44E=_T44D[0];_T44F=_T44E.l;_T450=_T44F.first_line;_T451=Cyc_Position_loc_to_seg(_T450);_T452=Cyc_Parse_type_spec(_T44C,_T451);yyval=Cyc_YY21(_T452);goto _LL0;case 110: _T453=& Cyc_Kinds_eko;_T454=(struct Cyc_Core_Opt*)_T453;_T455=
# 1713 "parse.y"
# 1714 "parse.y"
Cyc_Absyn_new_evar(_T454,0);_T456=Cyc_Absyn_rgn_handle_type(_T455);_T457=yyyvsp;_T458=_T457[0];_T459=_T458.l;_T45A=_T459.first_line;_T45B=Cyc_Position_loc_to_seg(_T45A);_T45C=Cyc_Parse_type_spec(_T456,_T45B);yyval=Cyc_YY21(_T45C);goto _LL0;case 111: _T45D=yyyvsp;_T45E=& _T45D[2].v;_T45F=(union Cyc_YYSTYPE*)_T45E;_T460=
# 1715 "parse.y"
# 1716 "parse.y"
Cyc_yyget_YY58(_T45F);_T461=Cyc_Absyn_aqual_handle_type(_T460);_T462=yyyvsp;_T463=_T462[0];_T464=_T463.l;_T465=_T464.first_line;_T466=Cyc_Position_loc_to_seg(_T465);_T467=Cyc_Parse_type_spec(_T461,_T466);yyval=Cyc_YY21(_T467);goto _LL0;case 112: _T468=yyyvsp;_T469=& _T468[2].v;_T46A=(union Cyc_YYSTYPE*)_T469;_T46B=
# 1717 "parse.y"
# 1718 "parse.y"
Cyc_yyget_YY45(_T46A);_T46C=Cyc_Absyn_tag_type(_T46B);_T46D=yyyvsp;_T46E=_T46D[0];_T46F=_T46E.l;_T470=_T46F.first_line;_T471=Cyc_Position_loc_to_seg(_T470);_T472=Cyc_Parse_type_spec(_T46C,_T471);yyval=Cyc_YY21(_T472);goto _LL0;case 113: _T473=& Cyc_Kinds_iko;_T474=(struct Cyc_Core_Opt*)_T473;_T475=
# 1719 "parse.y"
# 1720 "parse.y"
Cyc_Absyn_new_evar(_T474,0);_T476=Cyc_Absyn_tag_type(_T475);_T477=yyyvsp;_T478=_T477[0];_T479=_T478.l;_T47A=_T479.first_line;_T47B=Cyc_Position_loc_to_seg(_T47A);_T47C=Cyc_Parse_type_spec(_T476,_T47B);yyval=Cyc_YY21(_T47C);goto _LL0;case 114: _T47D=yyyvsp;_T47E=& _T47D[2].v;_T47F=(union Cyc_YYSTYPE*)_T47E;_T480=
# 1721 "parse.y"
# 1722 "parse.y"
Cyc_yyget_Exp_tok(_T47F);_T481=Cyc_Absyn_valueof_type(_T480);_T482=yyyvsp;_T483=_T482[0];_T484=_T483.l;_T485=_T484.first_line;_T486=Cyc_Position_loc_to_seg(_T485);_T487=Cyc_Parse_type_spec(_T481,_T486);yyval=Cyc_YY21(_T487);goto _LL0;case 115: _T488=yyyvsp;_T489=& _T488[2].v;_T48A=(union Cyc_YYSTYPE*)_T489;{
# 1724
# 1725
struct _tuple26 _T18AB=Cyc_yyget_YY36(_T48A);struct Cyc_List_List*_T18AC;struct Cyc_Parse_Type_specifier _T18AD;struct Cyc_Absyn_Tqual _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{struct Cyc_Absyn_Tqual tq=_T18AE;struct Cyc_Parse_Type_specifier tspecs=_T18AD;struct Cyc_List_List*atts=_T18AC;_T48B=tq;_T48C=_T48B.loc;
if(_T48C!=0U)goto _TL29B;_T48D=yyyvsp;_T48E=_T48D[2];_T48F=_T48E.l;_T490=_T48F.first_line;tq.loc=Cyc_Position_loc_to_seg(_T490);goto _TL29C;_TL29B: _TL29C: _T491=yyyvsp;_T492=& _T491[3].v;_T493=(union Cyc_YYSTYPE*)_T492;{
struct Cyc_Parse_Declarator _T18AF=Cyc_yyget_YY28(_T493);struct Cyc_List_List*_T18B0;unsigned _T18B1;struct _tuple0*_T18B2;_T18B2=_T18AF.id;_T18B1=_T18AF.varloc;_T18B0=_T18AF.tms;{struct _tuple0*qv=_T18B2;unsigned varloc=_T18B1;struct Cyc_List_List*tms=_T18B0;_T494=tspecs;_T495=yyyvsp;_T496=_T495[2];_T497=_T496.l;_T498=_T497.first_line;_T499=


@@ 2632,36 2632,36 @@ _T18B8.f1=_tag_fat("parameter cannot be qualified with a namespace",sizeof(char)
 if(atts2==0)goto _TL2A1;{struct Cyc_Warn_String_Warn_Warg_struct _T18B8;_T18B8.tag=0;_T18B8.f1=_tag_fat("extra attributes on parameter, ignoring",sizeof(char),40U);_T4A9=_T18B8;}{struct Cyc_Warn_String_Warn_Warg_struct _T18B8=_T4A9;void*_T18B9[1];_T18B9[0]=& _T18B8;_T4AA=yyyvsp;_T4AB=_T4AA[0];_T4AC=_T4AB.l;_T4AD=_T4AC.first_line;_T4AE=Cyc_Position_loc_to_seg(_T4AD);_T4AF=_tag_fat(_T18B9,sizeof(void*),1);Cyc_Warn_warn2(_T4AE,_T4AF);}goto _TL2A2;_TL2A1: _TL2A2: {
struct Cyc_Absyn_Vardecl*vd=Cyc_Absyn_new_vardecl(varloc,qv,t2,0,0);{struct Cyc_Absyn_SubsetType_Absyn_Type_struct*_T18B8=_cycalloc(sizeof(struct Cyc_Absyn_SubsetType_Absyn_Type_struct));_T18B8->tag=12;
_T18B8->f1=vd;_T4B1=yyyvsp;_T4B2=& _T4B1[5].v;_T4B3=(union Cyc_YYSTYPE*)_T4B2;_T18B8->f2=Cyc_yyget_Exp_tok(_T4B3);_T18B8->f3=0;_T4B0=(struct Cyc_Absyn_SubsetType_Absyn_Type_struct*)_T18B8;}_T4B4=(void*)_T4B0;_T4B5=yyyvsp;_T4B6=_T4B5[0];_T4B7=_T4B6.l;_T4B8=_T4B7.first_line;_T4B9=Cyc_Position_loc_to_seg(_T4B8);_T4BA=Cyc_Parse_type_spec(_T4B4,_T4B9);yyval=Cyc_YY21(_T4BA);goto _LL0;}}}}}}}case 116: _T4BB=yyyvsp;_T4BC=& _T4BB[0].v;_T4BD=(union Cyc_YYSTYPE*)_T4BC;_T4BE=
# 1740 "parse.y"
# 1741 "parse.y"
Cyc_yyget_String_tok(_T4BD);_T4BF=yyyvsp;_T4C0=_T4BF[0];_T4C1=_T4C0.l;_T4C2=_T4C1.first_line;_T4C3=Cyc_Position_loc_to_seg(_T4C2);_T4C4=Cyc_Kinds_id_to_kind(_T4BE,_T4C3);yyval=Cyc_YY44(_T4C4);goto _LL0;case 117: _T4C6=Cyc_Flags_porting_c_code;
# 1744 "parse.y"
# 1745 "parse.y"
if(!_T4C6)goto _TL2A3;_T4C7=yyyvsp;_T4C8=_T4C7[0];_T4C9=_T4C8.l;_T4CA=_T4C9.first_line;_T4C5=Cyc_Position_loc_to_seg(_T4CA);goto _TL2A4;_TL2A3: _T4C5=0U;_TL2A4: {unsigned loc=_T4C5;{struct Cyc_Absyn_Tqual _T18AB;
_T18AB.print_const=1;_T18AB.q_volatile=0;_T18AB.q_restrict=0;_T18AB.real_const=1;_T18AB.loc=loc;_T4CB=_T18AB;}yyval=Cyc_YY24(_T4CB);goto _LL0;}case 118:{struct Cyc_Absyn_Tqual _T18AB;
# 1746 "parse.y"
_T18AB.print_const=0;_T18AB.q_volatile=1;_T18AB.q_restrict=0;_T18AB.real_const=0;_T18AB.loc=0U;_T4CC=_T18AB;}yyval=Cyc_YY24(_T4CC);goto _LL0;case 119:{struct Cyc_Absyn_Tqual _T18AB;
# 1747 "parse.y"
_T18AB.print_const=0;_T18AB.q_volatile=1;_T18AB.q_restrict=0;_T18AB.real_const=0;_T18AB.loc=0U;_T4CC=_T18AB;}yyval=Cyc_YY24(_T4CC);goto _LL0;case 119:{struct Cyc_Absyn_Tqual _T18AB;
# 1748 "parse.y"
_T18AB.print_const=0;_T18AB.q_volatile=0;_T18AB.q_restrict=1;_T18AB.real_const=0;_T18AB.loc=0U;_T4CD=_T18AB;}yyval=Cyc_YY24(_T4CD);goto _LL0;case 120:  {
# 1753 "parse.y"
# 1754 "parse.y"
struct Cyc_Absyn_TypeDecl*ed;ed=_cycalloc(sizeof(struct Cyc_Absyn_TypeDecl));_T4CE=ed;{struct Cyc_Absyn_Enum_td_Absyn_Raw_typedecl_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Enum_td_Absyn_Raw_typedecl_struct));_T18AB->tag=1;{struct Cyc_Absyn_Enumdecl*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_Enumdecl));_T18AC->sc=2U;_T4D1=yyyvsp;_T4D2=& _T4D1[1].v;_T4D3=(union Cyc_YYSTYPE*)_T4D2;_T18AC->name=Cyc_yyget_QualId_tok(_T4D3);{struct Cyc_Core_Opt*_T18AD=_cycalloc(sizeof(struct Cyc_Core_Opt));_T4D5=yyyvsp;_T4D6=& _T4D5[3].v;_T4D7=(union Cyc_YYSTYPE*)_T4D6;_T18AD->v=Cyc_yyget_YY49(_T4D7);_T4D4=(struct Cyc_Core_Opt*)_T18AD;}_T18AC->fields=_T4D4;_T4D0=(struct Cyc_Absyn_Enumdecl*)_T18AC;}_T18AB->f1=_T4D0;_T4CF=(struct Cyc_Absyn_Enum_td_Absyn_Raw_typedecl_struct*)_T18AB;}_T4CE->r=(void*)_T4CF;_T4D8=ed;_T4D9=yyyvsp;_T4DA=_T4D9[0];_T4DB=_T4DA.l;_T4DC=_T4DB.first_line;
_T4D8->loc=Cyc_Position_loc_to_seg(_T4DC);{struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct));_T18AB->tag=10;
_T18AB->f1=ed;_T18AB->f2=0;_T4DD=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T18AB;}_T4DE=(void*)_T4DD;_T4DF=yyyvsp;_T4E0=_T4DF[0];_T4E1=_T4E0.l;_T4E2=_T4E1.first_line;_T4E3=Cyc_Position_loc_to_seg(_T4E2);_T4E4=Cyc_Parse_type_spec(_T4DE,_T4E3);yyval=Cyc_YY21(_T4E4);goto _LL0;}case 121: _T4E5=yyyvsp;_T4E6=& _T4E5[1].v;_T4E7=(union Cyc_YYSTYPE*)_T4E6;_T4E8=
# 1758 "parse.y"
# 1759 "parse.y"
Cyc_yyget_QualId_tok(_T4E7);_T4E9=Cyc_Absyn_enum_type(_T4E8,0);_T4EA=yyyvsp;_T4EB=_T4EA[0];_T4EC=_T4EB.l;_T4ED=_T4EC.first_line;_T4EE=Cyc_Position_loc_to_seg(_T4ED);_T4EF=Cyc_Parse_type_spec(_T4E9,_T4EE);yyval=Cyc_YY21(_T4EF);goto _LL0;case 122: _T4F0=yyyvsp;_T4F1=& _T4F0[2].v;_T4F2=(union Cyc_YYSTYPE*)_T4F1;_T4F3=
# 1760 "parse.y"
# 1761 "parse.y"
Cyc_yyget_YY49(_T4F2);_T4F4=Cyc_Absyn_anon_enum_type(_T4F3);_T4F5=yyyvsp;_T4F6=_T4F5[0];_T4F7=_T4F6.l;_T4F8=_T4F7.first_line;_T4F9=Cyc_Position_loc_to_seg(_T4F8);_T4FA=Cyc_Parse_type_spec(_T4F4,_T4F9);yyval=Cyc_YY21(_T4FA);goto _LL0;case 123:{struct Cyc_Absyn_Enumfield*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Enumfield));_T4FC=yyyvsp;_T4FD=& _T4FC[0].v;_T4FE=(union Cyc_YYSTYPE*)_T4FD;
# 1766 "parse.y"
# 1767 "parse.y"
_T18AB->name=Cyc_yyget_QualId_tok(_T4FE);_T18AB->tag=0;_T4FF=yyyvsp;_T500=_T4FF[0];_T501=_T500.l;_T502=_T501.first_line;_T18AB->loc=Cyc_Position_loc_to_seg(_T502);_T4FB=(struct Cyc_Absyn_Enumfield*)_T18AB;}yyval=Cyc_YY48(_T4FB);goto _LL0;case 124:{struct Cyc_Absyn_Enumfield*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Enumfield));_T504=yyyvsp;_T505=& _T504[0].v;_T506=(union Cyc_YYSTYPE*)_T505;
# 1768 "parse.y"
# 1769 "parse.y"
_T18AB->name=Cyc_yyget_QualId_tok(_T506);_T507=yyyvsp;_T508=& _T507[2].v;_T509=(union Cyc_YYSTYPE*)_T508;_T18AB->tag=Cyc_yyget_Exp_tok(_T509);_T50A=yyyvsp;_T50B=_T50A[0];_T50C=_T50B.l;_T50D=_T50C.first_line;_T18AB->loc=Cyc_Position_loc_to_seg(_T50D);_T503=(struct Cyc_Absyn_Enumfield*)_T18AB;}yyval=Cyc_YY48(_T503);goto _LL0;case 125:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T50F=yyyvsp;_T510=& _T50F[0].v;_T511=(union Cyc_YYSTYPE*)_T510;
# 1772 "parse.y"
_T18AB->hd=Cyc_yyget_YY48(_T511);_T18AB->tl=0;_T50E=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY49(_T50E);goto _LL0;case 126:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T513=yyyvsp;_T514=& _T513[0].v;_T515=(union Cyc_YYSTYPE*)_T514;
# 1773 "parse.y"
_T18AB->hd=Cyc_yyget_YY48(_T515);_T18AB->tl=0;_T512=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY49(_T512);goto _LL0;case 127:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T517=yyyvsp;_T518=& _T517[0].v;_T519=(union Cyc_YYSTYPE*)_T518;
_T18AB->hd=Cyc_yyget_YY48(_T511);_T18AB->tl=0;_T50E=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY49(_T50E);goto _LL0;case 126:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T513=yyyvsp;_T514=& _T513[0].v;_T515=(union Cyc_YYSTYPE*)_T514;
# 1774 "parse.y"
_T18AB->hd=Cyc_yyget_YY48(_T515);_T18AB->tl=0;_T512=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY49(_T512);goto _LL0;case 127:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T517=yyyvsp;_T518=& _T517[0].v;_T519=(union Cyc_YYSTYPE*)_T518;
# 1775 "parse.y"
_T18AB->hd=Cyc_yyget_YY48(_T519);_T51A=yyyvsp;_T51B=& _T51A[2].v;_T51C=(union Cyc_YYSTYPE*)_T51B;_T18AB->tl=Cyc_yyget_YY49(_T51C);_T516=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY49(_T516);goto _LL0;case 128:{struct Cyc_Absyn_AnonAggrType_Absyn_Type_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_AnonAggrType_Absyn_Type_struct));_T18AB->tag=7;_T51E=yyyvsp;_T51F=& _T51E[0].v;_T520=(union Cyc_YYSTYPE*)_T51F;
# 1780 "parse.y"
# 1781 "parse.y"
_T18AB->f1=Cyc_yyget_YY22(_T520);_T18AB->f2=0;_T521=yyyvsp;_T522=& _T521[2].v;_T523=(union Cyc_YYSTYPE*)_T522;_T18AB->f3=Cyc_yyget_YY25(_T523);_T51D=(struct Cyc_Absyn_AnonAggrType_Absyn_Type_struct*)_T18AB;}_T524=(void*)_T51D;_T525=yyyvsp;_T526=_T525[0];_T527=_T526.l;_T528=_T527.first_line;_T529=Cyc_Position_loc_to_seg(_T528);_T52A=Cyc_Parse_type_spec(_T524,_T529);yyval=Cyc_YY21(_T52A);goto _LL0;case 129: _T52C=Cyc_List_map_c;{
# 1784 "parse.y"
# 1785 "parse.y"
struct Cyc_List_List*(*_T18AB)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T52C;_T52B=_T18AB;}_T52D=yyyvsp;_T52E=_T52D[2];_T52F=_T52E.l;_T530=_T52F.first_line;_T531=Cyc_Position_loc_to_seg(_T530);_T532=yyyvsp;_T533=& _T532[2].v;_T534=(union Cyc_YYSTYPE*)_T533;_T535=Cyc_yyget_YY41(_T534);{struct Cyc_List_List*ts=_T52B(Cyc_Parse_typ2tvar,_T531,_T535);_T537=Cyc_List_map_c;{
struct Cyc_List_List*(*_T18AB)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T537;_T536=_T18AB;}_T538=yyyvsp;_T539=_T538[4];_T53A=_T539.l;_T53B=_T53A.first_line;_T53C=Cyc_Position_loc_to_seg(_T53B);_T53D=yyyvsp;_T53E=& _T53D[4].v;_T53F=(union Cyc_YYSTYPE*)_T53E;_T540=Cyc_yyget_YY41(_T53F);{struct Cyc_List_List*exist_ts=_T536(Cyc_Parse_typ2tvar,_T53C,_T540);_T541=yyyvsp;_T542=& _T541[5].v;_T543=(union Cyc_YYSTYPE*)_T542;{
struct _tuple28*ec_qb=Cyc_yyget_YY51(_T543);_T545=ec_qb;_T546=(unsigned)_T545;


@@ 2669,60 2669,60 @@ if(!_T546)goto _TL2A5;_T547=ec_qb;_T544=*_T547;goto _TL2A6;_TL2A5:{struct _tuple
Cyc_yyget_YY23(_T54B);_T54D=_T54C.f1;_T54E=yyyvsp;_T54F=& _T54E[1].v;_T550=(union Cyc_YYSTYPE*)_T54F;_T551=Cyc_yyget_QualId_tok(_T550);_T552=ts;_T553=exist_ts;_T554=ec;_T555=qb;_T556=yyyvsp;_T557=& _T556[6].v;_T558=(union Cyc_YYSTYPE*)_T557;_T559=
Cyc_yyget_YY25(_T558);_T55A=yyyvsp;_T55B=& _T55A[0].v;_T55C=(union Cyc_YYSTYPE*)_T55B;_T55D=Cyc_yyget_YY23(_T55C);_T55E=_T55D.f0;_T55F=Cyc_Absyn_aggrdecl_impl(_T553,_T554,_T555,_T559,_T55E);_T560=yyyvsp;_T561=_T560[0];_T562=_T561.l;_T563=_T562.first_line;_T564=
Cyc_Position_loc_to_seg(_T563);{
# 1788
# 1789
struct Cyc_Absyn_TypeDecl*td=Cyc_Absyn_aggr_tdecl(_T54D,2U,_T551,_T552,_T55F,0,_T564);{struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_T18AE=_cycalloc(sizeof(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct));_T18AE->tag=10;
# 1791
# 1792
_T18AE->f1=td;_T18AE->f2=0;_T565=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T18AE;}_T566=(void*)_T565;_T567=yyyvsp;_T568=_T567[0];_T569=_T568.l;_T56A=_T569.first_line;_T56B=Cyc_Position_loc_to_seg(_T56A);_T56C=Cyc_Parse_type_spec(_T566,_T56B);yyval=Cyc_YY21(_T56C);goto _LL0;}}}}}}case 130: _T56D=yyyvsp;_T56E=& _T56D[0].v;_T56F=(union Cyc_YYSTYPE*)_T56E;_T570=
# 1794 "parse.y"
# 1795 "parse.y"
Cyc_yyget_YY23(_T56F);_T571=_T570.f1;_T572=yyyvsp;_T573=& _T572[1].v;_T574=(union Cyc_YYSTYPE*)_T573;_T575=Cyc_yyget_QualId_tok(_T574);_T577=yyyvsp;_T578=& _T577[0].v;_T579=(union Cyc_YYSTYPE*)_T578;_T57A=Cyc_yyget_YY23(_T579);_T57B=_T57A.f0;if(!_T57B)goto _TL2A7;{struct Cyc_Core_Opt*_T18AB=_cycalloc(sizeof(struct Cyc_Core_Opt));_T18AB->v=(void*)1;_T57C=(struct Cyc_Core_Opt*)_T18AB;}_T576=_T57C;goto _TL2A8;_TL2A7: _T576=0;_TL2A8: _T57D=Cyc_Absyn_UnknownAggr(_T571,_T575,_T576);_T57E=yyyvsp;_T57F=& _T57E[2].v;_T580=(union Cyc_YYSTYPE*)_T57F;_T581=
Cyc_yyget_YY41(_T580);_T582=
# 1794
# 1795
Cyc_Absyn_aggr_type(_T57D,_T581);_T583=yyyvsp;_T584=_T583[0];_T585=_T584.l;_T586=_T585.first_line;_T587=
Cyc_Position_loc_to_seg(_T586);_T588=
# 1794
# 1795
Cyc_Parse_type_spec(_T582,_T587);yyval=Cyc_YY21(_T588);goto _LL0;case 131:{struct _tuple25 _T18AB;
# 1799 "parse.y"
_T18AB.f0=1;_T58A=yyyvsp;_T58B=& _T58A[1].v;_T58C=(union Cyc_YYSTYPE*)_T58B;_T18AB.f1=Cyc_yyget_YY22(_T58C);_T589=_T18AB;}yyval=Cyc_YY23(_T589);goto _LL0;case 132:{struct _tuple25 _T18AB;
# 1800 "parse.y"
_T18AB.f0=1;_T58A=yyyvsp;_T58B=& _T58A[1].v;_T58C=(union Cyc_YYSTYPE*)_T58B;_T18AB.f1=Cyc_yyget_YY22(_T58C);_T589=_T18AB;}yyval=Cyc_YY23(_T589);goto _LL0;case 132:{struct _tuple25 _T18AB;
# 1801 "parse.y"
_T18AB.f0=0;_T58E=yyyvsp;_T58F=& _T58E[0].v;_T590=(union Cyc_YYSTYPE*)_T58F;_T18AB.f1=Cyc_yyget_YY22(_T590);_T58D=_T18AB;}yyval=Cyc_YY23(_T58D);goto _LL0;case 133:
# 1803
# 1804
 yyval=Cyc_YY22(0U);goto _LL0;case 134:
# 1804 "parse.y"
# 1805 "parse.y"
 yyval=Cyc_YY22(1U);goto _LL0;case 135:
# 1807
# 1808
 yyval=Cyc_YY41(0);goto _LL0;case 136: _T591=yyyvsp;_T592=& _T591[1].v;_T593=(union Cyc_YYSTYPE*)_T592;_T594=
# 1808 "parse.y"
# 1809 "parse.y"
Cyc_yyget_YY41(_T593);_T595=Cyc_List_imp_rev(_T594);yyval=Cyc_YY41(_T595);goto _LL0;case 137:
# 1813 "parse.y"
# 1814 "parse.y"
 yyval=Cyc_YY25(0);goto _LL0;case 138:  {
# 1815 "parse.y"
# 1816 "parse.y"
struct Cyc_List_List*decls=0;_T596=yyyvsp;_T597=& _T596[0].v;_T598=(union Cyc_YYSTYPE*)_T597;{
struct Cyc_List_List*x=Cyc_yyget_YY26(_T598);_TL2AC: if(x!=0)goto _TL2AA;else{goto _TL2AB;}
_TL2AA: _T599=x;_T59A=_T599->hd;_T59B=(struct Cyc_List_List*)_T59A;_T59C=decls;decls=Cyc_List_imp_append(_T59B,_T59C);_T59D=x;
# 1816
# 1817
x=_T59D->tl;goto _TL2AC;_TL2AB:;}{
# 1819
# 1820
struct Cyc_List_List*tags=Cyc_Parse_get_aggrfield_tags(decls);
if(tags==0)goto _TL2AD;_T59F=Cyc_List_iter_c;{
void(*_T18AB)(void(*)(struct Cyc_List_List*,struct Cyc_Absyn_Aggrfield*),struct Cyc_List_List*,struct Cyc_List_List*)=(void(*)(void(*)(struct Cyc_List_List*,struct Cyc_Absyn_Aggrfield*),struct Cyc_List_List*,struct Cyc_List_List*))_T59F;_T59E=_T18AB;}_T5A0=tags;_T5A1=decls;_T59E(Cyc_Parse_substitute_aggrfield_tags,_T5A0,_T5A1);goto _TL2AE;_TL2AD: _TL2AE:
 yyval=Cyc_YY25(decls);goto _LL0;}}case 139:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T5A3=yyyvsp;_T5A4=& _T5A3[0].v;_T5A5=(union Cyc_YYSTYPE*)_T5A4;
# 1828 "parse.y"
_T18AB->hd=Cyc_yyget_YY25(_T5A5);_T18AB->tl=0;_T5A2=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY26(_T5A2);goto _LL0;case 140:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T5A7=yyyvsp;_T5A8=& _T5A7[1].v;_T5A9=(union Cyc_YYSTYPE*)_T5A8;
# 1829 "parse.y"
_T18AB->hd=Cyc_yyget_YY25(_T5A5);_T18AB->tl=0;_T5A2=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY26(_T5A2);goto _LL0;case 140:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T5A7=yyyvsp;_T5A8=& _T5A7[1].v;_T5A9=(union Cyc_YYSTYPE*)_T5A8;
# 1830 "parse.y"
_T18AB->hd=Cyc_yyget_YY25(_T5A9);_T5AA=yyyvsp;_T5AB=& _T5AA[0].v;_T5AC=(union Cyc_YYSTYPE*)_T5AB;_T18AB->tl=Cyc_yyget_YY26(_T5AC);_T5A6=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY26(_T5A6);goto _LL0;case 141: _T5AE=yyr;{struct _tuple11*_T18AB=_region_malloc(_T5AE,0U,sizeof(struct _tuple11));
# 1835 "parse.y"
# 1836 "parse.y"
_T18AB->tl=0;_T5AF=yyyvsp;_T5B0=& _T5AF[0].v;_T5B1=(union Cyc_YYSTYPE*)_T5B0;_T18AB->hd=Cyc_yyget_YY18(_T5B1);_T5AD=(struct _tuple11*)_T18AB;}yyval=Cyc_YY19(_T5AD);goto _LL0;case 142: _T5B3=yyr;{struct _tuple11*_T18AB=_region_malloc(_T5B3,0U,sizeof(struct _tuple11));_T5B4=yyyvsp;_T5B5=& _T5B4[0].v;_T5B6=(union Cyc_YYSTYPE*)_T5B5;
# 1837 "parse.y"
# 1838 "parse.y"
_T18AB->tl=Cyc_yyget_YY19(_T5B6);_T5B7=yyyvsp;_T5B8=& _T5B7[2].v;_T5B9=(union Cyc_YYSTYPE*)_T5B8;_T18AB->hd=Cyc_yyget_YY18(_T5B9);_T5B2=(struct _tuple11*)_T18AB;}yyval=Cyc_YY19(_T5B2);goto _LL0;case 143:{struct _tuple12 _T18AB;_T5BB=yyyvsp;_T5BC=& _T5BB[0].v;_T5BD=(union Cyc_YYSTYPE*)_T5BC;
# 1841 "parse.y"
_T18AB.f0=Cyc_yyget_YY28(_T5BD);_T18AB.f1=0;_T18AB.f2=0;_T5BA=_T18AB;}yyval=Cyc_YY18(_T5BA);goto _LL0;case 144:{struct _tuple12 _T18AB;_T5BF=yyyvsp;_T5C0=& _T5BF[0].v;_T5C1=(union Cyc_YYSTYPE*)_T5C0;
# 1842 "parse.y"
_T18AB.f0=Cyc_yyget_YY28(_T5C1);_T18AB.f1=0;_T5C2=yyyvsp;_T5C3=& _T5C2[2].v;_T5C4=(union Cyc_YYSTYPE*)_T5C3;_T5C5=Cyc_yyget_YY63(_T5C4);_T5C6=yyyvsp;_T5C7=_T5C6[1];_T5C8=_T5C7.l;_T5C9=_T5C8.first_line;_T5CA=Cyc_Position_loc_to_seg(_T5C9);_T18AB.f2=Cyc_Absyn_new_exp(_T5C5,_T5CA);_T5BE=_T18AB;}yyval=Cyc_YY18(_T5BE);goto _LL0;case 145:{struct _tuple12 _T18AB;_T5CC=yyyvsp;_T5CD=& _T5CC[0].v;_T5CE=(union Cyc_YYSTYPE*)_T5CD;
_T18AB.f0=Cyc_yyget_YY28(_T5BD);_T18AB.f1=0;_T18AB.f2=0;_T5BA=_T18AB;}yyval=Cyc_YY18(_T5BA);goto _LL0;case 144:{struct _tuple12 _T18AB;_T5BF=yyyvsp;_T5C0=& _T5BF[0].v;_T5C1=(union Cyc_YYSTYPE*)_T5C0;
# 1843 "parse.y"
_T18AB.f0=Cyc_yyget_YY28(_T5CE);_T5CF=yyyvsp;_T5D0=& _T5CF[2].v;_T5D1=(union Cyc_YYSTYPE*)_T5D0;_T18AB.f1=Cyc_yyget_Exp_tok(_T5D1);_T18AB.f2=0;_T5CB=_T18AB;}yyval=Cyc_YY18(_T5CB);goto _LL0;case 146:{struct _tuple12 _T18AB;_T5D3=yyyvsp;_T5D4=& _T5D3[0].v;_T5D5=(union Cyc_YYSTYPE*)_T5D4;
_T18AB.f0=Cyc_yyget_YY28(_T5C1);_T18AB.f1=0;_T5C2=yyyvsp;_T5C3=& _T5C2[2].v;_T5C4=(union Cyc_YYSTYPE*)_T5C3;_T5C5=Cyc_yyget_YY63(_T5C4);_T5C6=yyyvsp;_T5C7=_T5C6[1];_T5C8=_T5C7.l;_T5C9=_T5C8.first_line;_T5CA=Cyc_Position_loc_to_seg(_T5C9);_T18AB.f2=Cyc_Absyn_new_exp(_T5C5,_T5CA);_T5BE=_T18AB;}yyval=Cyc_YY18(_T5BE);goto _LL0;case 145:{struct _tuple12 _T18AB;_T5CC=yyyvsp;_T5CD=& _T5CC[0].v;_T5CE=(union Cyc_YYSTYPE*)_T5CD;
# 1844 "parse.y"
_T18AB.f0=Cyc_yyget_YY28(_T5CE);_T5CF=yyyvsp;_T5D0=& _T5CF[2].v;_T5D1=(union Cyc_YYSTYPE*)_T5D0;_T18AB.f1=Cyc_yyget_Exp_tok(_T5D1);_T18AB.f2=0;_T5CB=_T18AB;}yyval=Cyc_YY18(_T5CB);goto _LL0;case 146:{struct _tuple12 _T18AB;_T5D3=yyyvsp;_T5D4=& _T5D3[0].v;_T5D5=(union Cyc_YYSTYPE*)_T5D4;
# 1845 "parse.y"
_T18AB.f0=Cyc_yyget_YY28(_T5D5);_T5D6=yyyvsp;_T5D7=& _T5D6[4].v;_T5D8=(union Cyc_YYSTYPE*)_T5D7;_T18AB.f1=Cyc_yyget_Exp_tok(_T5D8);_T5D9=yyyvsp;_T5DA=& _T5D9[2].v;_T5DB=(union Cyc_YYSTYPE*)_T5DA;_T5DC=Cyc_yyget_YY63(_T5DB);_T5DD=yyyvsp;_T5DE=_T5DD[1];_T5DF=_T5DE.l;_T5E0=_T5DF.first_line;_T5E1=Cyc_Position_loc_to_seg(_T5E0);_T18AB.f2=Cyc_Absyn_new_exp(_T5DC,_T5E1);_T5D2=_T18AB;}yyval=Cyc_YY18(_T5D2);goto _LL0;case 147:  {struct _RegionHandle _T18AB=_new_region(0U,"temp");struct _RegionHandle*temp=& _T18AB;_push_region(temp);_T5E2=yyyvsp;_T5E3=& _T5E2[0].v;_T5E4=(union Cyc_YYSTYPE*)_T5E3;{
# 1850 "parse.y"
# 1851 "parse.y"
struct _tuple26 _T18AC=Cyc_yyget_YY36(_T5E4);struct Cyc_List_List*_T18AD;struct Cyc_Parse_Type_specifier _T18AE;struct Cyc_Absyn_Tqual _T18AF;_T18AF=_T18AC.f0;_T18AE=_T18AC.f1;_T18AD=_T18AC.f2;{struct Cyc_Absyn_Tqual tq=_T18AF;struct Cyc_Parse_Type_specifier tspecs=_T18AE;struct Cyc_List_List*atts=_T18AD;_T5E5=tq;_T5E6=_T5E5.loc;
if(_T5E6!=0U)goto _TL2AF;_T5E7=yyyvsp;_T5E8=_T5E7[0];_T5E9=_T5E8.l;_T5EA=_T5E9.first_line;tq.loc=Cyc_Position_loc_to_seg(_T5EA);goto _TL2B0;_TL2AF: _TL2B0: {
struct _tuple13*decls=0;


@@ 2731,182 2731,182 @@ struct Cyc_List_List*x=Cyc_yyget_YY30(_T5ED);_TL2B4: if(x!=0)goto _TL2B2;else{go
_TL2B2: _T5EE=x;_T5EF=_T5EE->hd;{struct _tuple12*_T18B0=(struct _tuple12*)_T5EF;struct Cyc_Absyn_Exp*_T18B1;struct Cyc_Absyn_Exp*_T18B2;struct Cyc_Parse_Declarator _T18B3;{struct _tuple12 _T18B4=*_T18B0;_T18B3=_T18B4.f0;_T18B2=_T18B4.f1;_T18B1=_T18B4.f2;}{struct Cyc_Parse_Declarator d=_T18B3;struct Cyc_Absyn_Exp*wd=_T18B2;struct Cyc_Absyn_Exp*wh=_T18B1;_T5F1=temp;{struct _tuple13*_T18B4=_region_malloc(_T5F1,0U,sizeof(struct _tuple13));
_T18B4->tl=decls;_T18B4->hd=d;_T5F0=(struct _tuple13*)_T18B4;}decls=_T5F0;_T5F3=temp;{struct Cyc_List_List*_T18B4=_region_malloc(_T5F3,0U,sizeof(struct Cyc_List_List));_T5F5=temp;{struct _tuple16*_T18B5=_region_malloc(_T5F5,0U,sizeof(struct _tuple16));
_T18B5->f0=wd;_T18B5->f1=wh;_T5F4=(struct _tuple16*)_T18B5;}_T18B4->hd=_T5F4;_T18B4->tl=widths_and_reqs;_T5F2=(struct Cyc_List_List*)_T18B4;}widths_and_reqs=_T5F2;}}_T5F6=x;
# 1854
# 1855
x=_T5F6->tl;goto _TL2B4;_TL2B3:;}_T5F7=tspecs;_T5F8=yyyvsp;_T5F9=_T5F8[0];_T5FA=_T5F9.l;_T5FB=_T5FA.first_line;_T5FC=
# 1859
# 1860
Cyc_Position_loc_to_seg(_T5FB);{void*t=Cyc_Parse_speclist2typ(_T5F7,_T5FC);_T5FD=temp;_T5FE=temp;_T5FF=
# 1861
# 1862
Cyc_Parse_apply_tmss(temp,tq,t,decls,atts);_T600=widths_and_reqs;{
# 1860
# 1861
struct Cyc_List_List*info=Cyc_List_rzip(_T5FD,_T5FE,_T5FF,_T600);_T602=Cyc_List_map_c;{
# 1862
# 1863
struct Cyc_List_List*(*_T18B0)(struct Cyc_Absyn_Aggrfield*(*)(unsigned,struct _tuple17*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Aggrfield*(*)(unsigned,struct _tuple17*),unsigned,struct Cyc_List_List*))_T602;_T601=_T18B0;}_T603=yyyvsp;_T604=_T603[0];_T605=_T604.l;_T606=_T605.first_line;_T607=Cyc_Position_loc_to_seg(_T606);_T608=info;_T609=_T601(Cyc_Parse_make_aggr_field,_T607,_T608);yyval=Cyc_YY25(_T609);_npop_handler(0);goto _LL0;}}}}}_pop_region();}case 148:{struct _tuple26 _T18AB;_T60B=yyyvsp;_T60C=_T60B[0];_T60D=_T60C.l;_T60E=_T60D.first_line;_T60F=
# 1871 "parse.y"
# 1872 "parse.y"
Cyc_Position_loc_to_seg(_T60E);_T18AB.f0=Cyc_Absyn_empty_tqual(_T60F);_T610=yyyvsp;_T611=& _T610[0].v;_T612=(union Cyc_YYSTYPE*)_T611;_T18AB.f1=Cyc_yyget_YY21(_T612);_T18AB.f2=0;_T60A=_T18AB;}yyval=Cyc_YY36(_T60A);goto _LL0;case 149: _T613=yyyvsp;_T614=& _T613[1].v;_T615=(union Cyc_YYSTYPE*)_T614;{
# 1873 "parse.y"
# 1874 "parse.y"
struct _tuple26 two=Cyc_yyget_YY36(_T615);{struct _tuple26 _T18AB;_T617=two;_T18AB.f0=_T617.f0;_T618=yyyvsp;_T619=_T618[0];_T61A=_T619.l;_T61B=_T61A.first_line;_T61C=Cyc_Position_loc_to_seg(_T61B);_T61D=yyyvsp;_T61E=& _T61D[0].v;_T61F=(union Cyc_YYSTYPE*)_T61E;_T620=Cyc_yyget_YY21(_T61F);_T621=two;_T622=_T621.f1;_T18AB.f1=Cyc_Parse_combine_specifiers(_T61C,_T620,_T622);_T623=two;_T18AB.f2=_T623.f2;_T616=_T18AB;}yyval=Cyc_YY36(_T616);goto _LL0;}case 150:{struct _tuple26 _T18AB;_T625=yyyvsp;_T626=& _T625[0].v;_T627=(union Cyc_YYSTYPE*)_T626;
# 1875 "parse.y"
# 1876 "parse.y"
_T18AB.f0=Cyc_yyget_YY24(_T627);_T18AB.f1=Cyc_Parse_empty_spec(0U);_T18AB.f2=0;_T624=_T18AB;}yyval=Cyc_YY36(_T624);goto _LL0;case 151: _T628=yyyvsp;_T629=& _T628[1].v;_T62A=(union Cyc_YYSTYPE*)_T629;{
# 1877 "parse.y"
# 1878 "parse.y"
struct _tuple26 two=Cyc_yyget_YY36(_T62A);{struct _tuple26 _T18AB;_T62C=yyyvsp;_T62D=& _T62C[0].v;_T62E=(union Cyc_YYSTYPE*)_T62D;_T62F=Cyc_yyget_YY24(_T62E);_T630=two;_T631=_T630.f0;_T18AB.f0=Cyc_Absyn_combine_tqual(_T62F,_T631);_T632=two;_T18AB.f1=_T632.f1;_T633=two;_T18AB.f2=_T633.f2;_T62B=_T18AB;}yyval=Cyc_YY36(_T62B);goto _LL0;}case 152:{struct _tuple26 _T18AB;_T635=yyyvsp;_T636=_T635[0];_T637=_T636.l;_T638=_T637.first_line;_T639=
# 1879 "parse.y"
# 1880 "parse.y"
Cyc_Position_loc_to_seg(_T638);_T18AB.f0=Cyc_Absyn_empty_tqual(_T639);_T18AB.f1=Cyc_Parse_empty_spec(0U);_T63A=yyyvsp;_T63B=& _T63A[0].v;_T63C=(union Cyc_YYSTYPE*)_T63B;_T18AB.f2=Cyc_yyget_YY46(_T63C);_T634=_T18AB;}yyval=Cyc_YY36(_T634);goto _LL0;case 153: _T63D=yyyvsp;_T63E=& _T63D[1].v;_T63F=(union Cyc_YYSTYPE*)_T63E;{
# 1881 "parse.y"
# 1882 "parse.y"
struct _tuple26 two=Cyc_yyget_YY36(_T63F);{struct _tuple26 _T18AB;_T641=two;_T18AB.f0=_T641.f0;_T642=two;_T18AB.f1=_T642.f1;_T643=yyyvsp;_T644=& _T643[0].v;_T645=(union Cyc_YYSTYPE*)_T644;_T646=Cyc_yyget_YY46(_T645);_T647=two;_T648=_T647.f2;_T18AB.f2=Cyc_List_append(_T646,_T648);_T640=_T18AB;}yyval=Cyc_YY36(_T640);goto _LL0;}case 154:{struct _tuple26 _T18AB;_T64A=yyyvsp;_T64B=_T64A[0];_T64C=_T64B.l;_T64D=_T64C.first_line;_T64E=
# 1887 "parse.y"
# 1888 "parse.y"
Cyc_Position_loc_to_seg(_T64D);_T18AB.f0=Cyc_Absyn_empty_tqual(_T64E);_T64F=yyyvsp;_T650=& _T64F[0].v;_T651=(union Cyc_YYSTYPE*)_T650;_T18AB.f1=Cyc_yyget_YY21(_T651);_T18AB.f2=0;_T649=_T18AB;}yyval=Cyc_YY36(_T649);goto _LL0;case 155: _T652=yyyvsp;_T653=& _T652[1].v;_T654=(union Cyc_YYSTYPE*)_T653;{
# 1889 "parse.y"
# 1890 "parse.y"
struct _tuple26 two=Cyc_yyget_YY36(_T654);{struct _tuple26 _T18AB;_T656=two;_T18AB.f0=_T656.f0;_T657=yyyvsp;_T658=_T657[0];_T659=_T658.l;_T65A=_T659.first_line;_T65B=Cyc_Position_loc_to_seg(_T65A);_T65C=yyyvsp;_T65D=& _T65C[0].v;_T65E=(union Cyc_YYSTYPE*)_T65D;_T65F=Cyc_yyget_YY21(_T65E);_T660=two;_T661=_T660.f1;_T18AB.f1=Cyc_Parse_combine_specifiers(_T65B,_T65F,_T661);_T662=two;_T18AB.f2=_T662.f2;_T655=_T18AB;}yyval=Cyc_YY36(_T655);goto _LL0;}case 156:{struct _tuple26 _T18AB;_T664=yyyvsp;_T665=& _T664[0].v;_T666=(union Cyc_YYSTYPE*)_T665;
# 1891 "parse.y"
# 1892 "parse.y"
_T18AB.f0=Cyc_yyget_YY24(_T666);_T18AB.f1=Cyc_Parse_empty_spec(0U);_T18AB.f2=0;_T663=_T18AB;}yyval=Cyc_YY36(_T663);goto _LL0;case 157: _T667=yyyvsp;_T668=& _T667[1].v;_T669=(union Cyc_YYSTYPE*)_T668;{
# 1893 "parse.y"
# 1894 "parse.y"
struct _tuple26 two=Cyc_yyget_YY36(_T669);{struct _tuple26 _T18AB;_T66B=yyyvsp;_T66C=& _T66B[0].v;_T66D=(union Cyc_YYSTYPE*)_T66C;_T66E=Cyc_yyget_YY24(_T66D);_T66F=two;_T670=_T66F.f0;_T18AB.f0=Cyc_Absyn_combine_tqual(_T66E,_T670);_T671=two;_T18AB.f1=_T671.f1;_T672=two;_T18AB.f2=_T672.f2;_T66A=_T18AB;}yyval=Cyc_YY36(_T66A);goto _LL0;}case 158:{struct _tuple26 _T18AB;_T674=yyyvsp;_T675=_T674[0];_T676=_T675.l;_T677=_T676.first_line;_T678=
# 1895 "parse.y"
# 1896 "parse.y"
Cyc_Position_loc_to_seg(_T677);_T18AB.f0=Cyc_Absyn_empty_tqual(_T678);_T18AB.f1=Cyc_Parse_empty_spec(0U);_T679=yyyvsp;_T67A=& _T679[0].v;_T67B=(union Cyc_YYSTYPE*)_T67A;_T18AB.f2=Cyc_yyget_YY46(_T67B);_T673=_T18AB;}yyval=Cyc_YY36(_T673);goto _LL0;case 159: _T67C=yyyvsp;_T67D=& _T67C[1].v;_T67E=(union Cyc_YYSTYPE*)_T67D;{
# 1897 "parse.y"
# 1898 "parse.y"
struct _tuple26 two=Cyc_yyget_YY36(_T67E);{struct _tuple26 _T18AB;_T680=two;_T18AB.f0=_T680.f0;_T681=two;_T18AB.f1=_T681.f1;_T682=yyyvsp;_T683=& _T682[0].v;_T684=(union Cyc_YYSTYPE*)_T683;_T685=Cyc_yyget_YY46(_T684);_T686=two;_T687=_T686.f2;_T18AB.f2=Cyc_List_append(_T685,_T687);_T67F=_T18AB;}yyval=Cyc_YY36(_T67F);goto _LL0;}case 160: _T689=yyr;{struct Cyc_List_List*_T18AB=_region_malloc(_T689,0U,sizeof(struct Cyc_List_List));_T68A=yyyvsp;_T68B=& _T68A[0].v;_T68C=(union Cyc_YYSTYPE*)_T68B;
# 1903 "parse.y"
# 1904 "parse.y"
_T18AB->hd=Cyc_yyget_YY29(_T68C);_T18AB->tl=0;_T688=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY30(_T688);goto _LL0;case 161: _T68E=yyr;{struct Cyc_List_List*_T18AB=_region_malloc(_T68E,0U,sizeof(struct Cyc_List_List));_T68F=yyyvsp;_T690=& _T68F[2].v;_T691=(union Cyc_YYSTYPE*)_T690;
# 1905 "parse.y"
# 1906 "parse.y"
_T18AB->hd=Cyc_yyget_YY29(_T691);_T692=yyyvsp;_T693=& _T692[0].v;_T694=(union Cyc_YYSTYPE*)_T693;_T18AB->tl=Cyc_yyget_YY30(_T694);_T68D=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY30(_T68D);goto _LL0;case 162: _T696=yyr;{struct _tuple12*_T18AB=_region_malloc(_T696,0U,sizeof(struct _tuple12));_T697=yyyvsp;_T698=& _T697[0].v;_T699=(union Cyc_YYSTYPE*)_T698;
# 1910 "parse.y"
# 1911 "parse.y"
_T18AB->f0=Cyc_yyget_YY28(_T699);_T18AB->f1=0;_T69A=yyyvsp;_T69B=& _T69A[1].v;_T69C=(union Cyc_YYSTYPE*)_T69B;_T18AB->f2=Cyc_yyget_YY61(_T69C);_T695=(struct _tuple12*)_T18AB;}yyval=Cyc_YY29(_T695);goto _LL0;case 163: _T69E=yyr;{struct _tuple12*_T18AB=_region_malloc(_T69E,0U,sizeof(struct _tuple12));{struct _tuple0*_T18AC=_cycalloc(sizeof(struct _tuple0));
# 1914 "parse.y"
# 1915 "parse.y"
_T18AC->f0=Cyc_Absyn_Rel_n(0);{struct _fat_ptr*_T18AD=_cycalloc(sizeof(struct _fat_ptr));*_T18AD=_tag_fat("",sizeof(char),1U);_T6A0=(struct _fat_ptr*)_T18AD;}_T18AC->f1=_T6A0;_T69F=(struct _tuple0*)_T18AC;}_T18AB->f0.id=_T69F;_T18AB->f0.varloc=0U;_T18AB->f0.tms=0;_T6A1=yyyvsp;_T6A2=& _T6A1[1].v;_T6A3=(union Cyc_YYSTYPE*)_T6A2;_T18AB->f1=Cyc_yyget_Exp_tok(_T6A3);_T18AB->f2=0;_T69D=(struct _tuple12*)_T18AB;}yyval=Cyc_YY29(_T69D);goto _LL0;case 164: _T6A5=yyr;{struct _tuple12*_T18AB=_region_malloc(_T6A5,0U,sizeof(struct _tuple12));{struct _tuple0*_T18AC=_cycalloc(sizeof(struct _tuple0));
# 1919 "parse.y"
# 1920 "parse.y"
_T18AC->f0=Cyc_Absyn_Rel_n(0);{struct _fat_ptr*_T18AD=_cycalloc(sizeof(struct _fat_ptr));*_T18AD=_tag_fat("",sizeof(char),1U);_T6A7=(struct _fat_ptr*)_T18AD;}_T18AC->f1=_T6A7;_T6A6=(struct _tuple0*)_T18AC;}_T18AB->f0.id=_T6A6;_T18AB->f0.varloc=0U;_T18AB->f0.tms=0;_T18AB->f1=0;_T18AB->f2=0;_T6A4=(struct _tuple12*)_T18AB;}yyval=Cyc_YY29(_T6A4);goto _LL0;case 165: _T6A9=yyr;{struct _tuple12*_T18AB=_region_malloc(_T6A9,0U,sizeof(struct _tuple12));_T6AA=yyyvsp;_T6AB=& _T6AA[0].v;_T6AC=(union Cyc_YYSTYPE*)_T6AB;
# 1922 "parse.y"
# 1923 "parse.y"
_T18AB->f0=Cyc_yyget_YY28(_T6AC);_T6AD=yyyvsp;_T6AE=& _T6AD[2].v;_T6AF=(union Cyc_YYSTYPE*)_T6AE;_T18AB->f1=Cyc_yyget_Exp_tok(_T6AF);_T18AB->f2=0;_T6A8=(struct _tuple12*)_T18AB;}yyval=Cyc_YY29(_T6A8);goto _LL0;case 166: _T6B0=yyyvsp;_T6B1=& _T6B0[2].v;_T6B2=(union Cyc_YYSTYPE*)_T6B1;_T6B3=
# 1926 "parse.y"
Cyc_yyget_Exp_tok(_T6B2);yyval=Cyc_YY61(_T6B3);goto _LL0;case 167:
# 1927 "parse.y"
Cyc_yyget_Exp_tok(_T6B2);yyval=Cyc_YY61(_T6B3);goto _LL0;case 167:
# 1928 "parse.y"
 yyval=Cyc_YY61(0);goto _LL0;case 168: _T6B4=yyyvsp;_T6B5=& _T6B4[0].v;_T6B6=(union Cyc_YYSTYPE*)_T6B5;{
# 1933 "parse.y"
# 1934 "parse.y"
int is_extensible=Cyc_yyget_YY32(_T6B6);_T6B8=Cyc_List_map_c;{
struct Cyc_List_List*(*_T18AB)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T6B8;_T6B7=_T18AB;}_T6B9=yyyvsp;_T6BA=_T6B9[2];_T6BB=_T6BA.l;_T6BC=_T6BB.first_line;_T6BD=Cyc_Position_loc_to_seg(_T6BC);_T6BE=yyyvsp;_T6BF=& _T6BE[2].v;_T6C0=(union Cyc_YYSTYPE*)_T6BF;_T6C1=Cyc_yyget_YY41(_T6C0);{struct Cyc_List_List*ts=_T6B7(Cyc_Parse_typ2tvar,_T6BD,_T6C1);_T6C2=yyyvsp;_T6C3=& _T6C2[1].v;_T6C4=(union Cyc_YYSTYPE*)_T6C3;_T6C5=
Cyc_yyget_QualId_tok(_T6C4);_T6C6=ts;{struct Cyc_Core_Opt*_T18AB=_cycalloc(sizeof(struct Cyc_Core_Opt));_T6C8=yyyvsp;_T6C9=& _T6C8[4].v;_T6CA=(union Cyc_YYSTYPE*)_T6C9;_T18AB->v=Cyc_yyget_YY35(_T6CA);_T6C7=(struct Cyc_Core_Opt*)_T18AB;}_T6CB=is_extensible;_T6CC=yyyvsp;_T6CD=_T6CC[0];_T6CE=_T6CD.l;_T6CF=_T6CE.first_line;_T6D0=
Cyc_Position_loc_to_seg(_T6CF);{
# 1935
# 1936
struct Cyc_Absyn_TypeDecl*dd=Cyc_Absyn_datatype_tdecl(2U,_T6C5,_T6C6,_T6C7,_T6CB,_T6D0);{struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct));_T18AB->tag=10;
# 1937
# 1938
_T18AB->f1=dd;_T18AB->f2=0;_T6D1=(struct Cyc_Absyn_TypeDeclType_Absyn_Type_struct*)_T18AB;}_T6D2=(void*)_T6D1;_T6D3=yyyvsp;_T6D4=_T6D3[0];_T6D5=_T6D4.l;_T6D6=_T6D5.first_line;_T6D7=Cyc_Position_loc_to_seg(_T6D6);_T6D8=Cyc_Parse_type_spec(_T6D2,_T6D7);yyval=Cyc_YY21(_T6D8);goto _LL0;}}}case 169: _T6D9=yyyvsp;_T6DA=& _T6D9[0].v;_T6DB=(union Cyc_YYSTYPE*)_T6DA;{
# 1940 "parse.y"
# 1941 "parse.y"
int is_extensible=Cyc_yyget_YY32(_T6DB);{struct Cyc_Absyn_UnknownDatatypeInfo _T18AB;_T6DD=yyyvsp;_T6DE=& _T6DD[1].v;_T6DF=(union Cyc_YYSTYPE*)_T6DE;
_T18AB.name=Cyc_yyget_QualId_tok(_T6DF);_T18AB.is_extensible=is_extensible;_T6DC=_T18AB;}_T6E0=Cyc_Absyn_UnknownDatatype(_T6DC);_T6E1=yyyvsp;_T6E2=& _T6E1[2].v;_T6E3=(union Cyc_YYSTYPE*)_T6E2;_T6E4=Cyc_yyget_YY41(_T6E3);_T6E5=Cyc_Absyn_datatype_type(_T6E0,_T6E4);_T6E6=yyyvsp;_T6E7=_T6E6[0];_T6E8=_T6E7.l;_T6E9=_T6E8.first_line;_T6EA=Cyc_Position_loc_to_seg(_T6E9);_T6EB=Cyc_Parse_type_spec(_T6E5,_T6EA);yyval=Cyc_YY21(_T6EB);goto _LL0;}case 170: _T6EC=yyyvsp;_T6ED=& _T6EC[0].v;_T6EE=(union Cyc_YYSTYPE*)_T6ED;{
# 1944 "parse.y"
# 1945 "parse.y"
int is_extensible=Cyc_yyget_YY32(_T6EE);{struct Cyc_Absyn_UnknownDatatypeFieldInfo _T18AB;_T6F0=yyyvsp;_T6F1=& _T6F0[1].v;_T6F2=(union Cyc_YYSTYPE*)_T6F1;
_T18AB.datatype_name=Cyc_yyget_QualId_tok(_T6F2);_T6F3=yyyvsp;_T6F4=& _T6F3[3].v;_T6F5=(union Cyc_YYSTYPE*)_T6F4;_T18AB.field_name=Cyc_yyget_QualId_tok(_T6F5);_T18AB.is_extensible=is_extensible;_T6EF=_T18AB;}_T6F6=Cyc_Absyn_UnknownDatatypefield(_T6EF);_T6F7=yyyvsp;_T6F8=& _T6F7[4].v;_T6F9=(union Cyc_YYSTYPE*)_T6F8;_T6FA=Cyc_yyget_YY41(_T6F9);_T6FB=Cyc_Absyn_datatype_field_type(_T6F6,_T6FA);_T6FC=yyyvsp;_T6FD=_T6FC[0];_T6FE=_T6FD.l;_T6FF=_T6FE.first_line;_T700=Cyc_Position_loc_to_seg(_T6FF);_T701=Cyc_Parse_type_spec(_T6FB,_T700);yyval=Cyc_YY21(_T701);goto _LL0;}case 171:
# 1950 "parse.y"
 yyval=Cyc_YY32(0);goto _LL0;case 172:
# 1951 "parse.y"
 yyval=Cyc_YY32(0);goto _LL0;case 172:
# 1952 "parse.y"
 yyval=Cyc_YY32(1);goto _LL0;case 173:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T703=yyyvsp;_T704=& _T703[0].v;_T705=(union Cyc_YYSTYPE*)_T704;
# 1955 "parse.y"
_T18AB->hd=Cyc_yyget_YY34(_T705);_T18AB->tl=0;_T702=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T702);goto _LL0;case 174:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T707=yyyvsp;_T708=& _T707[0].v;_T709=(union Cyc_YYSTYPE*)_T708;
# 1956 "parse.y"
_T18AB->hd=Cyc_yyget_YY34(_T709);_T18AB->tl=0;_T706=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T706);goto _LL0;case 175:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T70B=yyyvsp;_T70C=& _T70B[0].v;_T70D=(union Cyc_YYSTYPE*)_T70C;
_T18AB->hd=Cyc_yyget_YY34(_T705);_T18AB->tl=0;_T702=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T702);goto _LL0;case 174:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T707=yyyvsp;_T708=& _T707[0].v;_T709=(union Cyc_YYSTYPE*)_T708;
# 1957 "parse.y"
_T18AB->hd=Cyc_yyget_YY34(_T70D);_T70E=yyyvsp;_T70F=& _T70E[2].v;_T710=(union Cyc_YYSTYPE*)_T70F;_T18AB->tl=Cyc_yyget_YY35(_T710);_T70A=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T70A);goto _LL0;case 176:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T712=yyyvsp;_T713=& _T712[0].v;_T714=(union Cyc_YYSTYPE*)_T713;
_T18AB->hd=Cyc_yyget_YY34(_T709);_T18AB->tl=0;_T706=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T706);goto _LL0;case 175:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T70B=yyyvsp;_T70C=& _T70B[0].v;_T70D=(union Cyc_YYSTYPE*)_T70C;
# 1958 "parse.y"
_T18AB->hd=Cyc_yyget_YY34(_T70D);_T70E=yyyvsp;_T70F=& _T70E[2].v;_T710=(union Cyc_YYSTYPE*)_T70F;_T18AB->tl=Cyc_yyget_YY35(_T710);_T70A=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T70A);goto _LL0;case 176:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T712=yyyvsp;_T713=& _T712[0].v;_T714=(union Cyc_YYSTYPE*)_T713;
# 1959 "parse.y"
_T18AB->hd=Cyc_yyget_YY34(_T714);_T715=yyyvsp;_T716=& _T715[2].v;_T717=(union Cyc_YYSTYPE*)_T716;_T18AB->tl=Cyc_yyget_YY35(_T717);_T711=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY35(_T711);goto _LL0;case 177:
# 1962 "parse.y"
 yyval=Cyc_YY33(2U);goto _LL0;case 178:
# 1963 "parse.y"
 yyval=Cyc_YY33(3U);goto _LL0;case 179:
 yyval=Cyc_YY33(2U);goto _LL0;case 178:
# 1964 "parse.y"
 yyval=Cyc_YY33(3U);goto _LL0;case 179:
# 1965 "parse.y"
 yyval=Cyc_YY33(0U);goto _LL0;case 180:{struct Cyc_Absyn_Datatypefield*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Datatypefield));_T719=yyyvsp;_T71A=& _T719[1].v;_T71B=(union Cyc_YYSTYPE*)_T71A;
# 1968 "parse.y"
# 1969 "parse.y"
_T18AB->name=Cyc_yyget_QualId_tok(_T71B);_T18AB->typs=0;_T71C=yyyvsp;_T71D=_T71C[0];_T71E=_T71D.l;_T71F=_T71E.first_line;_T18AB->loc=Cyc_Position_loc_to_seg(_T71F);_T720=yyyvsp;_T721=& _T720[0].v;_T722=(union Cyc_YYSTYPE*)_T721;_T18AB->sc=Cyc_yyget_YY33(_T722);_T718=(struct Cyc_Absyn_Datatypefield*)_T18AB;}yyval=Cyc_YY34(_T718);goto _LL0;case 181: _T724=Cyc_List_map_c;{
# 1970 "parse.y"
# 1971 "parse.y"
struct Cyc_List_List*(*_T18AB)(struct _tuple19*(*)(unsigned,struct _tuple8*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct _tuple19*(*)(unsigned,struct _tuple8*),unsigned,struct Cyc_List_List*))_T724;_T723=_T18AB;}{struct _tuple19*(*_T18AB)(unsigned,struct _tuple8*)=(struct _tuple19*(*)(unsigned,struct _tuple8*))Cyc_Parse_get_tqual_typ;_T725=_T18AB;}_T726=yyyvsp;_T727=_T726[3];_T728=_T727.l;_T729=_T728.first_line;_T72A=Cyc_Position_loc_to_seg(_T729);_T72B=yyyvsp;_T72C=& _T72B[3].v;_T72D=(union Cyc_YYSTYPE*)_T72C;_T72E=Cyc_yyget_YY39(_T72D);_T72F=Cyc_List_imp_rev(_T72E);{struct Cyc_List_List*typs=_T723(_T725,_T72A,_T72F);{struct Cyc_Absyn_Datatypefield*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Datatypefield));_T731=yyyvsp;_T732=& _T731[1].v;_T733=(union Cyc_YYSTYPE*)_T732;
_T18AB->name=Cyc_yyget_QualId_tok(_T733);_T18AB->typs=typs;_T734=yyyvsp;_T735=_T734[0];_T736=_T735.l;_T737=_T736.first_line;_T18AB->loc=Cyc_Position_loc_to_seg(_T737);_T738=yyyvsp;_T739=& _T738[0].v;_T73A=(union Cyc_YYSTYPE*)_T739;_T18AB->sc=Cyc_yyget_YY33(_T73A);_T730=(struct Cyc_Absyn_Datatypefield*)_T18AB;}yyval=Cyc_YY34(_T730);goto _LL0;}case 182: _T73B=yyyvsp;_T73C=_T73B[0];
# 1976 "parse.y"
# 1977 "parse.y"
yyval=_T73C.v;goto _LL0;case 183: _T73D=yyyvsp;_T73E=& _T73D[1].v;_T73F=(union Cyc_YYSTYPE*)_T73E;{
# 1978 "parse.y"
# 1979 "parse.y"
struct Cyc_Parse_Declarator two=Cyc_yyget_YY28(_T73F);{struct Cyc_Parse_Declarator _T18AB;_T741=two;
_T18AB.id=_T741.id;_T742=two;_T18AB.varloc=_T742.varloc;_T743=yyyvsp;_T744=& _T743[0].v;_T745=(union Cyc_YYSTYPE*)_T744;_T746=Cyc_yyget_YY27(_T745);_T747=two;_T748=_T747.tms;_T18AB.tms=Cyc_List_imp_append(_T746,_T748);_T740=_T18AB;}yyval=Cyc_YY28(_T740);goto _LL0;}case 184: _T749=yyyvsp;_T74A=_T749[0];
# 1985 "parse.y"
# 1986 "parse.y"
yyval=_T74A.v;goto _LL0;case 185: _T74B=yyyvsp;_T74C=& _T74B[1].v;_T74D=(union Cyc_YYSTYPE*)_T74C;{
# 1987 "parse.y"
# 1988 "parse.y"
struct Cyc_Parse_Declarator two=Cyc_yyget_YY28(_T74D);{struct Cyc_Parse_Declarator _T18AB;_T74F=two;
_T18AB.id=_T74F.id;_T750=two;_T18AB.varloc=_T750.varloc;_T751=yyyvsp;_T752=& _T751[0].v;_T753=(union Cyc_YYSTYPE*)_T752;_T754=Cyc_yyget_YY27(_T753);_T755=two;_T756=_T755.tms;_T18AB.tms=Cyc_List_imp_append(_T754,_T756);_T74E=_T18AB;}yyval=Cyc_YY28(_T74E);goto _LL0;}case 186:{struct Cyc_Parse_Declarator _T18AB;_T758=yyyvsp;_T759=& _T758[0].v;_T75A=(union Cyc_YYSTYPE*)_T759;
# 1992 "parse.y"
_T18AB.id=Cyc_yyget_QualId_tok(_T75A);_T75B=yyyvsp;_T75C=_T75B[0];_T75D=_T75C.l;_T75E=_T75D.first_line;_T18AB.varloc=Cyc_Position_loc_to_seg(_T75E);_T18AB.tms=0;_T757=_T18AB;}yyval=Cyc_YY28(_T757);goto _LL0;case 187: _T75F=yyyvsp;_T760=_T75F[1];
# 1993 "parse.y"
_T18AB.id=Cyc_yyget_QualId_tok(_T75A);_T75B=yyyvsp;_T75C=_T75B[0];_T75D=_T75C.l;_T75E=_T75D.first_line;_T18AB.varloc=Cyc_Position_loc_to_seg(_T75E);_T18AB.tms=0;_T757=_T18AB;}yyval=Cyc_YY28(_T757);goto _LL0;case 187: _T75F=yyyvsp;_T760=_T75F[1];
# 1994 "parse.y"
yyval=_T760.v;goto _LL0;case 188: _T761=yyyvsp;_T762=& _T761[2].v;_T763=(union Cyc_YYSTYPE*)_T762;{
# 1997 "parse.y"
# 1998 "parse.y"
struct Cyc_Parse_Declarator d=Cyc_yyget_YY28(_T763);_T765=yyr;{struct Cyc_List_List*_T18AB=_region_malloc(_T765,0U,sizeof(struct Cyc_List_List));_T767=yyr;{struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*_T18AC=_region_malloc(_T767,0U,sizeof(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct));_T18AC->tag=5;_T768=yyyvsp;_T769=_T768[1];_T76A=_T769.l;_T76B=_T76A.first_line;
_T18AC->f1=Cyc_Position_loc_to_seg(_T76B);_T76C=yyyvsp;_T76D=& _T76C[1].v;_T76E=(union Cyc_YYSTYPE*)_T76D;_T18AC->f2=Cyc_yyget_YY46(_T76E);_T766=(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*)_T18AC;}_T18AB->hd=(void*)_T766;_T76F=d;_T18AB->tl=_T76F.tms;_T764=(struct Cyc_List_List*)_T18AB;}d.tms=_T764;_T770=yyyvsp;_T771=_T770[2];
yyval=_T771.v;goto _LL0;}case 189:{struct Cyc_Parse_Declarator _T18AB;_T773=yyyvsp;_T774=& _T773[0].v;_T775=(union Cyc_YYSTYPE*)_T774;_T776=
# 2002 "parse.y"
# 2003 "parse.y"
Cyc_yyget_YY28(_T775);_T18AB.id=_T776.id;_T777=yyyvsp;_T778=& _T777[0].v;_T779=(union Cyc_YYSTYPE*)_T778;_T77A=Cyc_yyget_YY28(_T779);_T18AB.varloc=_T77A.varloc;_T77C=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T77C,0U,sizeof(struct Cyc_List_List));_T77E=yyr;{struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T77E,0U,sizeof(struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct));_T18AD->tag=0;_T77F=yyyvsp;_T780=& _T77F[3].v;_T781=(union Cyc_YYSTYPE*)_T780;_T18AD->f1=Cyc_yyget_YY54(_T781);_T782=yyyvsp;_T783=_T782[3];_T784=_T783.l;_T785=_T784.first_line;_T18AD->f2=Cyc_Position_loc_to_seg(_T785);_T77D=(struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T77D;_T786=yyyvsp;_T787=& _T786[0].v;_T788=(union Cyc_YYSTYPE*)_T787;_T789=Cyc_yyget_YY28(_T788);_T18AC->tl=_T789.tms;_T77B=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T77B;_T772=_T18AB;}yyval=Cyc_YY28(_T772);goto _LL0;case 190:{struct Cyc_Parse_Declarator _T18AB;_T78B=yyyvsp;_T78C=& _T78B[0].v;_T78D=(union Cyc_YYSTYPE*)_T78C;_T78E=
# 2004 "parse.y"
# 2005 "parse.y"
Cyc_yyget_YY28(_T78D);_T18AB.id=_T78E.id;_T78F=yyyvsp;_T790=& _T78F[0].v;_T791=(union Cyc_YYSTYPE*)_T790;_T792=Cyc_yyget_YY28(_T791);_T18AB.varloc=_T792.varloc;_T794=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T794,0U,sizeof(struct Cyc_List_List));_T796=yyr;{struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T796,0U,sizeof(struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct));_T18AD->tag=1;_T797=yyyvsp;_T798=& _T797[2].v;_T799=(union Cyc_YYSTYPE*)_T798;
_T18AD->f1=Cyc_yyget_Exp_tok(_T799);_T79A=yyyvsp;_T79B=& _T79A[4].v;_T79C=(union Cyc_YYSTYPE*)_T79B;_T18AD->f2=Cyc_yyget_YY54(_T79C);_T79D=yyyvsp;_T79E=_T79D[4];_T79F=_T79E.l;_T7A0=_T79F.first_line;_T18AD->f3=Cyc_Position_loc_to_seg(_T7A0);_T795=(struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T795;_T7A1=yyyvsp;_T7A2=& _T7A1[0].v;_T7A3=(union Cyc_YYSTYPE*)_T7A2;_T7A4=Cyc_yyget_YY28(_T7A3);_T18AC->tl=_T7A4.tms;_T793=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T793;_T78A=_T18AB;}
# 2004
# 2005
yyval=Cyc_YY28(_T78A);goto _LL0;case 191: _T7A5=yyyvsp;_T7A6=& _T7A5[2].v;_T7A7=(union Cyc_YYSTYPE*)_T7A6;{
# 2007 "parse.y"
# 2008 "parse.y"
struct _tuple27*_T18AB=Cyc_yyget_YY40(_T7A7);struct Cyc_List_List*_T18AC;struct Cyc_List_List*_T18AD;void*_T18AE;struct Cyc_Absyn_VarargInfo*_T18AF;int _T18B0;struct Cyc_List_List*_T18B1;{struct _tuple27 _T18B2=*_T18AB;_T18B1=_T18B2.f0;_T18B0=_T18B2.f1;_T18AF=_T18B2.f2;_T18AE=_T18B2.f3;_T18AD=_T18B2.f4;_T18AC=_T18B2.f5;}{struct Cyc_List_List*lis=_T18B1;int b=_T18B0;struct Cyc_Absyn_VarargInfo*c=_T18AF;void*eff=_T18AE;struct Cyc_List_List*ec=_T18AD;struct Cyc_List_List*qb=_T18AC;_T7A8=yyyvsp;_T7A9=& _T7A8[4].v;_T7AA=(union Cyc_YYSTYPE*)_T7A9;{
struct _tuple21 _T18B2=Cyc_yyget_YY62(_T7AA);struct Cyc_Absyn_Exp*_T18B3;struct Cyc_Absyn_Exp*_T18B4;struct Cyc_Absyn_Exp*_T18B5;struct Cyc_Absyn_Exp*_T18B6;_T18B6=_T18B2.f0;_T18B5=_T18B2.f1;_T18B4=_T18B2.f2;_T18B3=_T18B2.f3;{struct Cyc_Absyn_Exp*chk=_T18B6;struct Cyc_Absyn_Exp*req=_T18B5;struct Cyc_Absyn_Exp*ens=_T18B4;struct Cyc_Absyn_Exp*thrws=_T18B3;{struct Cyc_Parse_Declarator _T18B7;_T7AC=yyyvsp;_T7AD=& _T7AC[0].v;_T7AE=(union Cyc_YYSTYPE*)_T7AD;_T7AF=
Cyc_yyget_YY28(_T7AE);_T18B7.id=_T7AF.id;_T7B0=yyyvsp;_T7B1=& _T7B0[0].v;_T7B2=(union Cyc_YYSTYPE*)_T7B1;_T7B3=Cyc_yyget_YY28(_T7B2);_T18B7.varloc=_T7B3.varloc;_T7B5=yyr;{struct Cyc_List_List*_T18B8=_region_malloc(_T7B5,0U,sizeof(struct Cyc_List_List));_T7B7=yyr;{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T18B9=_region_malloc(_T7B7,0U,sizeof(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct));_T18B9->tag=3;_T7B9=yyr;{struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*_T18BA=_region_malloc(_T7B9,0U,sizeof(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct));_T18BA->tag=1;_T18BA->f1=lis;_T18BA->f2=b;_T18BA->f3=c;_T18BA->f4=eff;_T18BA->f5=ec;_T18BA->f6=qb;_T18BA->f7=chk;_T18BA->f8=req;_T18BA->f9=ens;_T18BA->f10=thrws;_T7B8=(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*)_T18BA;}_T18B9->f1=(void*)_T7B8;_T7B6=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T18B9;}_T18B8->hd=(void*)_T7B6;_T7BA=yyyvsp;_T7BB=& _T7BA[0].v;_T7BC=(union Cyc_YYSTYPE*)_T7BB;_T7BD=Cyc_yyget_YY28(_T7BC);_T18B8->tl=_T7BD.tms;_T7B4=(struct Cyc_List_List*)_T18B8;}_T18B7.tms=_T7B4;_T7AB=_T18B7;}yyval=Cyc_YY28(_T7AB);goto _LL0;}}}}case 192:{struct Cyc_Parse_Declarator _T18AB;_T7BF=yyyvsp;_T7C0=& _T7BF[0].v;_T7C1=(union Cyc_YYSTYPE*)_T7C0;_T7C2=
# 2012 "parse.y"
# 2013 "parse.y"
Cyc_yyget_YY28(_T7C1);_T18AB.id=_T7C2.id;_T7C3=yyyvsp;_T7C4=& _T7C3[0].v;_T7C5=(union Cyc_YYSTYPE*)_T7C4;_T7C6=Cyc_yyget_YY28(_T7C5);_T18AB.varloc=_T7C6.varloc;_T7C8=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T7C8,0U,sizeof(struct Cyc_List_List));_T7CA=yyr;{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T7CA,0U,sizeof(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct));_T18AD->tag=3;_T7CC=yyr;{struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*_T18AE=_region_malloc(_T7CC,0U,sizeof(struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct));_T18AE->tag=0;_T7CD=yyyvsp;_T7CE=& _T7CD[2].v;_T7CF=(union Cyc_YYSTYPE*)_T7CE;_T18AE->f1=Cyc_yyget_YY37(_T7CF);_T7D0=yyyvsp;_T7D1=_T7D0[0];_T7D2=_T7D1.l;_T7D3=_T7D2.first_line;_T18AE->f2=Cyc_Position_loc_to_seg(_T7D3);_T7CB=(struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*)_T18AE;}_T18AD->f1=(void*)_T7CB;_T7C9=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T7C9;_T7D4=yyyvsp;_T7D5=& _T7D4[0].v;_T7D6=(union Cyc_YYSTYPE*)_T7D5;_T7D7=Cyc_yyget_YY28(_T7D6);_T18AC->tl=_T7D7.tms;_T7C7=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T7C7;_T7BE=_T18AB;}yyval=Cyc_YY28(_T7BE);goto _LL0;case 193: _T7D9=Cyc_List_map_c;{
# 2015
# 2016
struct Cyc_List_List*(*_T18AB)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T7D9;_T7D8=_T18AB;}_T7DA=yyyvsp;_T7DB=_T7DA[1];_T7DC=_T7DB.l;_T7DD=_T7DC.first_line;_T7DE=Cyc_Position_loc_to_seg(_T7DD);_T7DF=yyyvsp;_T7E0=& _T7DF[2].v;_T7E1=(union Cyc_YYSTYPE*)_T7E0;_T7E2=Cyc_yyget_YY41(_T7E1);_T7E3=Cyc_List_imp_rev(_T7E2);{struct Cyc_List_List*ts=_T7D8(Cyc_Parse_typ2tvar,_T7DE,_T7E3);{struct Cyc_Parse_Declarator _T18AB;_T7E5=yyyvsp;_T7E6=& _T7E5[0].v;_T7E7=(union Cyc_YYSTYPE*)_T7E6;_T7E8=
Cyc_yyget_YY28(_T7E7);_T18AB.id=_T7E8.id;_T7E9=yyyvsp;_T7EA=& _T7E9[0].v;_T7EB=(union Cyc_YYSTYPE*)_T7EA;_T7EC=Cyc_yyget_YY28(_T7EB);_T18AB.varloc=_T7EC.varloc;_T7EE=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T7EE,0U,sizeof(struct Cyc_List_List));_T7F0=yyr;{struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T7F0,0U,sizeof(struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct));_T18AD->tag=4;_T18AD->f1=ts;_T7F1=yyyvsp;_T7F2=_T7F1[0];_T7F3=_T7F2.l;_T7F4=_T7F3.first_line;_T18AD->f2=Cyc_Position_loc_to_seg(_T7F4);_T18AD->f3=0;_T7EF=(struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T7EF;_T7F5=yyyvsp;_T7F6=& _T7F5[0].v;_T7F7=(union Cyc_YYSTYPE*)_T7F6;_T7F8=Cyc_yyget_YY28(_T7F7);_T18AC->tl=_T7F8.tms;_T7ED=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T7ED;_T7E4=_T18AB;}yyval=Cyc_YY28(_T7E4);goto _LL0;}case 194:{struct Cyc_Parse_Declarator _T18AB;_T7FA=yyyvsp;_T7FB=& _T7FA[0].v;_T7FC=(union Cyc_YYSTYPE*)_T7FB;_T7FD=
# 2019 "parse.y"
# 2020 "parse.y"
Cyc_yyget_YY28(_T7FC);_T18AB.id=_T7FD.id;_T7FE=yyyvsp;_T7FF=& _T7FE[0].v;_T800=(union Cyc_YYSTYPE*)_T7FF;_T801=Cyc_yyget_YY28(_T800);_T18AB.varloc=_T801.varloc;_T803=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T803,0U,sizeof(struct Cyc_List_List));_T805=yyr;{struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T805,0U,sizeof(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct));_T18AD->tag=5;_T806=yyyvsp;_T807=_T806[1];_T808=_T807.l;_T809=_T808.first_line;_T18AD->f1=Cyc_Position_loc_to_seg(_T809);_T80A=yyyvsp;_T80B=& _T80A[1].v;_T80C=(union Cyc_YYSTYPE*)_T80B;_T18AD->f2=Cyc_yyget_YY46(_T80C);_T804=(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T804;_T80D=yyyvsp;_T80E=& _T80D[0].v;_T80F=(union Cyc_YYSTYPE*)_T80E;_T810=
Cyc_yyget_YY28(_T80F);_T18AC->tl=_T810.tms;_T802=(struct Cyc_List_List*)_T18AC;}
# 2019
# 2020
_T18AB.tms=_T802;_T7F9=_T18AB;}yyval=Cyc_YY28(_T7F9);goto _LL0;case 195:{struct Cyc_Parse_Declarator _T18AB;_T812=yyyvsp;_T813=& _T812[0].v;_T814=(union Cyc_YYSTYPE*)_T813;
# 2026 "parse.y"
_T18AB.id=Cyc_yyget_QualId_tok(_T814);_T815=yyyvsp;_T816=_T815[0];_T817=_T816.l;_T818=_T817.first_line;_T18AB.varloc=Cyc_Position_loc_to_seg(_T818);_T18AB.tms=0;_T811=_T18AB;}yyval=Cyc_YY28(_T811);goto _LL0;case 196:{struct Cyc_Parse_Declarator _T18AB;_T81A=yyyvsp;_T81B=& _T81A[0].v;_T81C=(union Cyc_YYSTYPE*)_T81B;
# 2027 "parse.y"
_T18AB.id=Cyc_yyget_QualId_tok(_T81C);_T81D=yyyvsp;_T81E=_T81D[0];_T81F=_T81E.l;_T820=_T81F.first_line;_T18AB.varloc=Cyc_Position_loc_to_seg(_T820);_T18AB.tms=0;_T819=_T18AB;}yyval=Cyc_YY28(_T819);goto _LL0;case 197: _T821=yyyvsp;_T822=_T821[1];
_T18AB.id=Cyc_yyget_QualId_tok(_T814);_T815=yyyvsp;_T816=_T815[0];_T817=_T816.l;_T818=_T817.first_line;_T18AB.varloc=Cyc_Position_loc_to_seg(_T818);_T18AB.tms=0;_T811=_T18AB;}yyval=Cyc_YY28(_T811);goto _LL0;case 196:{struct Cyc_Parse_Declarator _T18AB;_T81A=yyyvsp;_T81B=& _T81A[0].v;_T81C=(union Cyc_YYSTYPE*)_T81B;
# 2028 "parse.y"
_T18AB.id=Cyc_yyget_QualId_tok(_T81C);_T81D=yyyvsp;_T81E=_T81D[0];_T81F=_T81E.l;_T820=_T81F.first_line;_T18AB.varloc=Cyc_Position_loc_to_seg(_T820);_T18AB.tms=0;_T819=_T18AB;}yyval=Cyc_YY28(_T819);goto _LL0;case 197: _T821=yyyvsp;_T822=_T821[1];
# 2029 "parse.y"
yyval=_T822.v;goto _LL0;case 198: _T823=yyyvsp;_T824=& _T823[2].v;_T825=(union Cyc_YYSTYPE*)_T824;{
# 2032 "parse.y"
# 2033 "parse.y"
struct Cyc_Parse_Declarator d=Cyc_yyget_YY28(_T825);_T827=yyr;{struct Cyc_List_List*_T18AB=_region_malloc(_T827,0U,sizeof(struct Cyc_List_List));_T829=yyr;{struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*_T18AC=_region_malloc(_T829,0U,sizeof(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct));_T18AC->tag=5;_T82A=yyyvsp;_T82B=_T82A[1];_T82C=_T82B.l;_T82D=_T82C.first_line;
_T18AC->f1=Cyc_Position_loc_to_seg(_T82D);_T82E=yyyvsp;_T82F=& _T82E[1].v;_T830=(union Cyc_YYSTYPE*)_T82F;_T18AC->f2=Cyc_yyget_YY46(_T830);_T828=(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*)_T18AC;}_T18AB->hd=(void*)_T828;_T831=d;_T18AB->tl=_T831.tms;_T826=(struct Cyc_List_List*)_T18AB;}d.tms=_T826;_T832=yyyvsp;_T833=_T832[2];
yyval=_T833.v;goto _LL0;}case 199: _T834=yyyvsp;_T835=& _T834[0].v;_T836=(union Cyc_YYSTYPE*)_T835;{
# 2037 "parse.y"
# 2038 "parse.y"
struct Cyc_Parse_Declarator one=Cyc_yyget_YY28(_T836);{struct Cyc_Parse_Declarator _T18AB;_T838=one;
_T18AB.id=_T838.id;_T839=one;_T18AB.varloc=_T839.varloc;_T83B=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T83B,0U,sizeof(struct Cyc_List_List));_T83D=yyr;{struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T83D,0U,sizeof(struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct));_T18AD->tag=0;_T83E=yyyvsp;_T83F=& _T83E[3].v;_T840=(union Cyc_YYSTYPE*)_T83F;
_T18AD->f1=Cyc_yyget_YY54(_T840);_T841=yyyvsp;_T842=_T841[3];_T843=_T842.l;_T844=_T843.first_line;_T18AD->f2=Cyc_Position_loc_to_seg(_T844);_T83C=(struct Cyc_Absyn_Carray_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T83C;_T845=one;_T18AC->tl=_T845.tms;_T83A=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T83A;_T837=_T18AB;}
# 2038
# 2039
yyval=Cyc_YY28(_T837);goto _LL0;}case 200: _T846=yyyvsp;_T847=& _T846[0].v;_T848=(union Cyc_YYSTYPE*)_T847;{
# 2041 "parse.y"
# 2042 "parse.y"
struct Cyc_Parse_Declarator one=Cyc_yyget_YY28(_T848);{struct Cyc_Parse_Declarator _T18AB;_T84A=one;
_T18AB.id=_T84A.id;_T84B=one;_T18AB.varloc=_T84B.varloc;_T84D=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T84D,0U,sizeof(struct Cyc_List_List));_T84F=yyr;{struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T84F,0U,sizeof(struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct));_T18AD->tag=1;_T850=yyyvsp;_T851=& _T850[2].v;_T852=(union Cyc_YYSTYPE*)_T851;
_T18AD->f1=Cyc_yyget_Exp_tok(_T852);_T853=yyyvsp;_T854=& _T853[4].v;_T855=(union Cyc_YYSTYPE*)_T854;_T18AD->f2=Cyc_yyget_YY54(_T855);_T856=yyyvsp;_T857=_T856[4];_T858=_T857.l;_T859=_T858.first_line;_T18AD->f3=Cyc_Position_loc_to_seg(_T859);_T84E=(struct Cyc_Absyn_ConstArray_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T84E;_T85A=one;
_T18AC->tl=_T85A.tms;_T84C=(struct Cyc_List_List*)_T18AC;}
# 2043
# 2044
_T18AB.tms=_T84C;_T849=_T18AB;}
# 2042
# 2043
yyval=Cyc_YY28(_T849);goto _LL0;}case 201: _T85B=yyyvsp;_T85C=& _T85B[2].v;_T85D=(union Cyc_YYSTYPE*)_T85C;{
# 2046 "parse.y"
# 2047 "parse.y"
struct _tuple27*_T18AB=Cyc_yyget_YY40(_T85D);struct Cyc_List_List*_T18AC;struct Cyc_List_List*_T18AD;void*_T18AE;struct Cyc_Absyn_VarargInfo*_T18AF;int _T18B0;struct Cyc_List_List*_T18B1;{struct _tuple27 _T18B2=*_T18AB;_T18B1=_T18B2.f0;_T18B0=_T18B2.f1;_T18AF=_T18B2.f2;_T18AE=_T18B2.f3;_T18AD=_T18B2.f4;_T18AC=_T18B2.f5;}{struct Cyc_List_List*lis=_T18B1;int b=_T18B0;struct Cyc_Absyn_VarargInfo*c=_T18AF;void*eff=_T18AE;struct Cyc_List_List*ec=_T18AD;struct Cyc_List_List*qb=_T18AC;_T85E=yyyvsp;_T85F=& _T85E[4].v;_T860=(union Cyc_YYSTYPE*)_T85F;{
struct _tuple21 _T18B2=Cyc_yyget_YY62(_T860);struct Cyc_Absyn_Exp*_T18B3;struct Cyc_Absyn_Exp*_T18B4;struct Cyc_Absyn_Exp*_T18B5;struct Cyc_Absyn_Exp*_T18B6;_T18B6=_T18B2.f0;_T18B5=_T18B2.f1;_T18B4=_T18B2.f2;_T18B3=_T18B2.f3;{struct Cyc_Absyn_Exp*chk=_T18B6;struct Cyc_Absyn_Exp*req=_T18B5;struct Cyc_Absyn_Exp*ens=_T18B4;struct Cyc_Absyn_Exp*thrws=_T18B3;_T861=yyyvsp;_T862=& _T861[0].v;_T863=(union Cyc_YYSTYPE*)_T862;{
struct Cyc_Parse_Declarator one=Cyc_yyget_YY28(_T863);{struct Cyc_Parse_Declarator _T18B7;_T865=one;
_T18B7.id=_T865.id;_T866=one;_T18B7.varloc=_T866.varloc;_T868=yyr;{struct Cyc_List_List*_T18B8=_region_malloc(_T868,0U,sizeof(struct Cyc_List_List));_T86A=yyr;{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T18B9=_region_malloc(_T86A,0U,sizeof(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct));_T18B9->tag=3;_T86C=yyr;{struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*_T18BA=_region_malloc(_T86C,0U,sizeof(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct));_T18BA->tag=1;_T18BA->f1=lis;_T18BA->f2=b;_T18BA->f3=c;_T18BA->f4=eff;_T18BA->f5=ec;_T18BA->f6=qb;_T18BA->f7=chk;_T18BA->f8=req;_T18BA->f9=ens;_T18BA->f10=thrws;_T86B=(struct Cyc_Absyn_WithTypes_Absyn_Funcparams_struct*)_T18BA;}_T18B9->f1=(void*)_T86B;_T869=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T18B9;}_T18B8->hd=(void*)_T869;_T86D=one;_T18B8->tl=_T86D.tms;_T867=(struct Cyc_List_List*)_T18B8;}_T18B7.tms=_T867;_T864=_T18B7;}yyval=Cyc_YY28(_T864);goto _LL0;}}}}}case 202: _T86E=yyyvsp;_T86F=& _T86E[0].v;_T870=(union Cyc_YYSTYPE*)_T86F;{
# 2052 "parse.y"
# 2053 "parse.y"
struct Cyc_Parse_Declarator one=Cyc_yyget_YY28(_T870);{struct Cyc_Parse_Declarator _T18AB;_T872=one;
_T18AB.id=_T872.id;_T873=one;_T18AB.varloc=_T873.varloc;_T875=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T875,0U,sizeof(struct Cyc_List_List));_T877=yyr;{struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T877,0U,sizeof(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct));_T18AD->tag=3;_T879=yyr;{struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*_T18AE=_region_malloc(_T879,0U,sizeof(struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct));_T18AE->tag=0;_T87A=yyyvsp;_T87B=& _T87A[2].v;_T87C=(union Cyc_YYSTYPE*)_T87B;_T18AE->f1=Cyc_yyget_YY37(_T87C);_T87D=yyyvsp;_T87E=_T87D[0];_T87F=_T87E.l;_T880=_T87F.first_line;_T18AE->f2=Cyc_Position_loc_to_seg(_T880);_T878=(struct Cyc_Absyn_NoTypes_Absyn_Funcparams_struct*)_T18AE;}_T18AD->f1=(void*)_T878;_T876=(struct Cyc_Absyn_Function_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T876;_T881=one;_T18AC->tl=_T881.tms;_T874=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T874;_T871=_T18AB;}yyval=Cyc_YY28(_T871);goto _LL0;}case 203: _T883=Cyc_List_map_c;{
# 2056
# 2057
struct Cyc_List_List*(*_T18AB)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*)=(struct Cyc_List_List*(*)(struct Cyc_Absyn_Tvar*(*)(unsigned,void*),unsigned,struct Cyc_List_List*))_T883;_T882=_T18AB;}_T884=yyyvsp;_T885=_T884[1];_T886=_T885.l;_T887=_T886.first_line;_T888=Cyc_Position_loc_to_seg(_T887);_T889=yyyvsp;_T88A=& _T889[2].v;_T88B=(union Cyc_YYSTYPE*)_T88A;_T88C=Cyc_yyget_YY41(_T88B);_T88D=Cyc_List_imp_rev(_T88C);{struct Cyc_List_List*ts=_T882(Cyc_Parse_typ2tvar,_T888,_T88D);_T88E=yyyvsp;_T88F=& _T88E[0].v;_T890=(union Cyc_YYSTYPE*)_T88F;{
struct Cyc_Parse_Declarator one=Cyc_yyget_YY28(_T890);{struct Cyc_Parse_Declarator _T18AB;_T892=one;
_T18AB.id=_T892.id;_T893=one;_T18AB.varloc=_T893.varloc;_T895=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T895,0U,sizeof(struct Cyc_List_List));_T897=yyr;{struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T897,0U,sizeof(struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct));_T18AD->tag=4;_T18AD->f1=ts;_T898=yyyvsp;_T899=_T898[0];_T89A=_T899.l;_T89B=_T89A.first_line;_T18AD->f2=Cyc_Position_loc_to_seg(_T89B);_T18AD->f3=0;_T896=(struct Cyc_Absyn_TypeParams_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T896;_T89C=one;_T18AC->tl=_T89C.tms;_T894=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T894;_T891=_T18AB;}yyval=Cyc_YY28(_T891);goto _LL0;}}case 204: _T89D=yyyvsp;_T89E=& _T89D[0].v;_T89F=(union Cyc_YYSTYPE*)_T89E;{
# 2060 "parse.y"
# 2061 "parse.y"
struct Cyc_Parse_Declarator one=Cyc_yyget_YY28(_T89F);{struct Cyc_Parse_Declarator _T18AB;_T8A1=one;
_T18AB.id=_T8A1.id;_T8A2=one;_T18AB.varloc=_T8A2.varloc;_T8A4=yyr;{struct Cyc_List_List*_T18AC=_region_malloc(_T8A4,0U,sizeof(struct Cyc_List_List));_T8A6=yyr;{struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*_T18AD=_region_malloc(_T8A6,0U,sizeof(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct));_T18AD->tag=5;_T8A7=yyyvsp;_T8A8=_T8A7[1];_T8A9=_T8A8.l;_T8AA=_T8A9.first_line;_T18AD->f1=Cyc_Position_loc_to_seg(_T8AA);_T8AB=yyyvsp;_T8AC=& _T8AB[1].v;_T8AD=(union Cyc_YYSTYPE*)_T8AC;_T18AD->f2=Cyc_yyget_YY46(_T8AD);_T8A5=(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*)_T18AD;}_T18AC->hd=(void*)_T8A5;_T8AE=one;_T18AC->tl=_T8AE.tms;_T8A3=(struct Cyc_List_List*)_T18AC;}_T18AB.tms=_T8A3;_T8A0=_T18AB;}yyval=Cyc_YY28(_T8A0);goto _LL0;}case 205: _T8AF=yyyvsp;_T8B0=_T8AF[0];
# 2066 "parse.y"
yyval=_T8B0.v;goto _LL0;case 206: _T8B1=yyyvsp;_T8B2=& _T8B1[0].v;_T8B3=(union Cyc_YYSTYPE*)_T8B2;_T8B4=
# 2067 "parse.y"
yyval=_T8B0.v;goto _LL0;case 206: _T8B1=yyyvsp;_T8B2=& _T8B1[0].v;_T8B3=(union Cyc_YYSTYPE*)_T8B2;_T8B4=
# 2068 "parse.y"
Cyc_yyget_YY27(_T8B3);_T8B5=yyyvsp;_T8B6=& _T8B5[1].v;_T8B7=(union Cyc_YYSTYPE*)_T8B6;_T8B8=Cyc_yyget_YY27(_T8B7);_T8B9=Cyc_List_imp_append(_T8B4,_T8B8);yyval=Cyc_YY27(_T8B9);goto _LL0;case 207:  {
# 2071 "parse.y"
# 2072 "parse.y"
struct Cyc_List_List*ans=0;_T8BA=yyyvsp;_T8BB=& _T8BA[3].v;_T8BC=(union Cyc_YYSTYPE*)_T8BB;_T8BD=
Cyc_yyget_YY46(_T8BC);if(_T8BD==0)goto _TL2B5;_T8BF=yyr;{struct Cyc_List_List*_T18AB=_region_malloc(_T8BF,0U,sizeof(struct Cyc_List_List));_T8C1=yyr;{struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*_T18AC=_region_malloc(_T8C1,0U,sizeof(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct));_T18AC->tag=5;_T8C2=yyyvsp;_T8C3=_T8C2[3];_T8C4=_T8C3.l;_T8C5=_T8C4.first_line;
_T18AC->f1=Cyc_Position_loc_to_seg(_T8C5);_T8C6=yyyvsp;_T8C7=& _T8C6[3].v;_T8C8=(union Cyc_YYSTYPE*)_T8C7;_T18AC->f2=Cyc_yyget_YY46(_T8C8);_T8C0=(struct Cyc_Absyn_Attributes_mod_Absyn_Type_modifier_struct*)_T18AC;}_T18AB->hd=(void*)_T8C0;_T18AB->tl=ans;_T8BE=(struct Cyc_List_List*)_T18AB;}ans=_T8BE;goto _TL2B6;_TL2B5: _TL2B6: {
# 2075
# 2076
struct Cyc_Absyn_PtrLoc*ptrloc=0;_T8C9=yyyvsp;_T8CA=& _T8C9[0].v;_T8CB=(union Cyc_YYSTYPE*)_T8CA;_T8CC=
Cyc_yyget_YY1(_T8CB);{struct _tuple22 _T18AB=*_T8CC;void*_T18AC;void*_T18AD;unsigned _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{unsigned ploc=_T18AE;void*nullable=_T18AD;void*bound=_T18AC;_T8CD=Cyc_Flags_porting_c_code;
if(!_T8CD)goto _TL2B7;{struct Cyc_Absyn_PtrLoc*_T18AF=_cycalloc(sizeof(struct Cyc_Absyn_PtrLoc));


@@ 2914,196 2914,196 @@ _T18AF->ptr_loc=ploc;_T8CF=yyyvsp;_T8D0=_T8CF[2];_T8D1=_T8D0.l;_T8D2=_T8D1.first
Cyc_yyget_YY45(_T8DD);_T8DF=yyyvsp;_T8E0=& _T8DF[1].v;_T8E1=(union Cyc_YYSTYPE*)_T8E0;_T8E2=Cyc_yyget_YY60(_T8E1);_T8E3=yyyvsp;_T8E4=& _T8E3[4].v;_T8E5=(union Cyc_YYSTYPE*)_T8E4;_T8E6=Cyc_yyget_YY24(_T8E5);{void*mod=Cyc_Parse_make_pointer_mod(_T8D7,_T8D8,_T8D9,_T8DA,_T8DE,_T8E2,_T8E6);_T8E8=yyr;{struct Cyc_List_List*_T18AF=_region_malloc(_T8E8,0U,sizeof(struct Cyc_List_List));
_T18AF->hd=mod;_T18AF->tl=ans;_T8E7=(struct Cyc_List_List*)_T18AF;}ans=_T8E7;
yyval=Cyc_YY27(ans);goto _LL0;}}}}}case 208:
# 2085
# 2086
 yyval=Cyc_YY60(0);goto _LL0;case 209: _T8EA=yyr;{struct Cyc_List_List*_T18AB=_region_malloc(_T8EA,0U,sizeof(struct Cyc_List_List));_T8EB=yyyvsp;_T8EC=& _T8EB[0].v;_T8ED=(union Cyc_YYSTYPE*)_T8EC;
# 2086 "parse.y"
# 2087 "parse.y"
_T18AB->hd=Cyc_yyget_YY59(_T8ED);_T8EE=yyyvsp;_T8EF=& _T8EE[1].v;_T8F0=(union Cyc_YYSTYPE*)_T8EF;_T18AB->tl=Cyc_yyget_YY60(_T8F0);_T8E9=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY60(_T8E9);goto _LL0;case 210: _T8F2=yyr;{struct Cyc_Parse_Numelts_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T8F2,0U,sizeof(struct Cyc_Parse_Numelts_ptrqual_Parse_Pointer_qual_struct));_T18AB->tag=0;_T8F3=yyyvsp;_T8F4=& _T8F3[2].v;_T8F5=(union Cyc_YYSTYPE*)_T8F4;
# 2091 "parse.y"
# 2092 "parse.y"
_T18AB->f1=Cyc_yyget_Exp_tok(_T8F5);_T8F1=(struct Cyc_Parse_Numelts_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T8F6=(void*)_T8F1;yyval=Cyc_YY59(_T8F6);goto _LL0;case 211: _T8F7=yyyvsp;_T8F8=_T8F7[0];_T8F9=_T8F8.l;_T8FA=_T8F9.first_line;_T8FB=
# 2093 "parse.y"
# 2094 "parse.y"
Cyc_Position_loc_to_seg(_T8FA);_T8FC=_tag_fat("@region qualifiers are deprecated; use @effect instead",sizeof(char),55U);_T8FD=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_T8FB,_T8FC,_T8FD);_T8FF=yyr;{struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T8FF,0U,sizeof(struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct));_T18AB->tag=2;{struct Cyc_List_List*_T18AC=_cycalloc(sizeof(struct Cyc_List_List));_T901=yyyvsp;_T902=& _T901[2].v;_T903=(union Cyc_YYSTYPE*)_T902;
_T18AC->hd=Cyc_yyget_YY45(_T903);_T18AC->tl=0;_T900=(struct Cyc_List_List*)_T18AC;}_T18AB->f1=_T900;_T8FE=(struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T904=(void*)_T8FE;yyval=Cyc_YY59(_T904);goto _LL0;case 212: _T906=yyr;{struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T906,0U,sizeof(struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct));_T18AB->tag=2;_T907=yyyvsp;_T908=& _T907[2].v;_T909=(union Cyc_YYSTYPE*)_T908;
# 2095 "parse.y"
_T18AB->f1=Cyc_yyget_YY41(_T909);_T905=(struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T90A=(void*)_T905;yyval=Cyc_YY59(_T90A);goto _LL0;case 213: _T90C=yyr;{struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T90C,0U,sizeof(struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct));
# 2096 "parse.y"
_T18AB->tag=3;_T90B=(struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T90D=(void*)_T90B;yyval=Cyc_YY59(_T90D);goto _LL0;case 214: _T90F=yyr;{struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T90F,0U,sizeof(struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct));
_T18AB->f1=Cyc_yyget_YY41(_T909);_T905=(struct Cyc_Parse_Effect_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T90A=(void*)_T905;yyval=Cyc_YY59(_T90A);goto _LL0;case 213: _T90C=yyr;{struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T90C,0U,sizeof(struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct));
# 2097 "parse.y"
_T18AB->tag=4;_T90E=(struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T910=(void*)_T90E;yyval=Cyc_YY59(_T910);goto _LL0;case 215: _T912=yyr;{struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T912,0U,sizeof(struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct));
_T18AB->tag=3;_T90B=(struct Cyc_Parse_Thin_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T90D=(void*)_T90B;yyval=Cyc_YY59(_T90D);goto _LL0;case 214: _T90F=yyr;{struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T90F,0U,sizeof(struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct));
# 2098 "parse.y"
_T18AB->tag=7;_T911=(struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T913=(void*)_T911;yyval=Cyc_YY59(_T913);goto _LL0;case 216: _T915=yyr;{struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T915,0U,sizeof(struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct));
_T18AB->tag=4;_T90E=(struct Cyc_Parse_Fat_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T910=(void*)_T90E;yyval=Cyc_YY59(_T910);goto _LL0;case 215: _T912=yyr;{struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T912,0U,sizeof(struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct));
# 2099 "parse.y"
_T18AB->tag=5;_T914=(struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T916=(void*)_T914;yyval=Cyc_YY59(_T916);goto _LL0;case 217: _T918=yyr;{struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T918,0U,sizeof(struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct));
_T18AB->tag=7;_T911=(struct Cyc_Parse_Autoreleased_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T913=(void*)_T911;yyval=Cyc_YY59(_T913);goto _LL0;case 216: _T915=yyr;{struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T915,0U,sizeof(struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct));
# 2100 "parse.y"
_T18AB->tag=6;_T917=(struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T919=(void*)_T917;yyval=Cyc_YY59(_T919);goto _LL0;case 218: _T91B=yyr;{struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T91B,0U,sizeof(struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct));
_T18AB->tag=5;_T914=(struct Cyc_Parse_Zeroterm_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T916=(void*)_T914;yyval=Cyc_YY59(_T916);goto _LL0;case 217: _T918=yyr;{struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T918,0U,sizeof(struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct));
# 2101 "parse.y"
_T18AB->tag=8;_T91A=(struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T91C=(void*)_T91A;yyval=Cyc_YY59(_T91C);goto _LL0;case 219: _T91E=yyr;{struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T91E,0U,sizeof(struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct));
_T18AB->tag=6;_T917=(struct Cyc_Parse_Nozeroterm_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T919=(void*)_T917;yyval=Cyc_YY59(_T919);goto _LL0;case 218: _T91B=yyr;{struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T91B,0U,sizeof(struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct));
# 2102 "parse.y"
_T18AB->tag=9;_T91D=(struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T91F=(void*)_T91D;yyval=Cyc_YY59(_T91F);goto _LL0;case 220: _T921=yyr;{struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T921,0U,sizeof(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct));_T18AB->tag=10;_T922=yyyvsp;_T923=& _T922[2].v;_T924=(union Cyc_YYSTYPE*)_T923;
_T18AB->tag=8;_T91A=(struct Cyc_Parse_Notnull_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T91C=(void*)_T91A;yyval=Cyc_YY59(_T91C);goto _LL0;case 219: _T91E=yyr;{struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T91E,0U,sizeof(struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct));
# 2103 "parse.y"
_T18AB->f1=Cyc_yyget_YY58(_T924);_T920=(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T925=(void*)_T920;yyval=Cyc_YY59(_T925);goto _LL0;case 221: _T926=yyyvsp;_T927=_T926[0];_T928=_T927.l;_T929=_T928.first_line;_T92A=
_T18AB->tag=9;_T91D=(struct Cyc_Parse_Nullable_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T91F=(void*)_T91D;yyval=Cyc_YY59(_T91F);goto _LL0;case 220: _T921=yyr;{struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T921,0U,sizeof(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct));_T18AB->tag=10;_T922=yyyvsp;_T923=& _T922[2].v;_T924=(union Cyc_YYSTYPE*)_T923;
# 2104 "parse.y"
_T18AB->f1=Cyc_yyget_YY58(_T924);_T920=(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T925=(void*)_T920;yyval=Cyc_YY59(_T925);goto _LL0;case 221: _T926=yyyvsp;_T927=_T926[0];_T928=_T927.l;_T929=_T928.first_line;_T92A=
# 2105 "parse.y"
Cyc_Position_loc_to_seg(_T929);_T92B=yyyvsp;_T92C=& _T92B[0].v;_T92D=(union Cyc_YYSTYPE*)_T92C;_T92E=Cyc_yyget_String_tok(_T92D);{void*aq=Cyc_Parse_id2aqual(_T92A,_T92E);_T930=yyr;{struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*_T18AB=_region_malloc(_T930,0U,sizeof(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct));_T18AB->tag=10;_T18AB->f1=aq;_T92F=(struct Cyc_Parse_Alias_ptrqual_Parse_Pointer_qual_struct*)_T18AB;}_T931=(void*)_T92F;yyval=Cyc_YY59(_T931);goto _LL0;}case 222: _T932=yyyvsp;_T933=& _T932[0].v;_T934=(union Cyc_YYSTYPE*)_T933;_T935=
# 2108 "parse.y"
# 2109 "parse.y"
Cyc_yyget_YY58(_T934);yyval=Cyc_YY58(_T935);goto _LL0;case 223: _T936=yyyvsp;_T937=& _T936[0].v;_T938=(union Cyc_YYSTYPE*)_T937;_T939=
# 2114 "parse.y"
# 2115 "parse.y"
Cyc_yyget_YY45(_T938);_T93A=Cyc_Absyn_al_qual_type;_T93B=Cyc_Absyn_aqual_var_type(_T939,_T93A);yyval=Cyc_YY58(_T93B);goto _LL0;case 224: _T93C=yyyvsp;_T93D=& _T93C[2].v;_T93E=(union Cyc_YYSTYPE*)_T93D;_T93F=
# 2118 "parse.y"
# 2119 "parse.y"
Cyc_yyget_YY45(_T93E);_T940=Cyc_Absyn_aqualsof_type(_T93F);_T941=Cyc_Absyn_al_qual_type;_T942=Cyc_Absyn_aqual_var_type(_T940,_T941);yyval=Cyc_YY58(_T942);goto _LL0;case 225: goto _LL0;case 226: _T943=yyyvsp;_T944=_T943[0];_T945=_T944.l;_T946=_T945.first_line;_T947=
# 2124 "parse.y"
# 2125 "parse.y"
Cyc_Position_loc_to_seg(_T946);_T948=yyyvsp;_T949=& _T948[0].v;_T94A=(union Cyc_YYSTYPE*)_T949;_T94B=Cyc_yyget_String_tok(_T94A);_T94C=Cyc_Parse_id2aqual(_T947,_T94B);yyval=Cyc_YY58(_T94C);goto _LL0;case 227:{struct _tuple22*_T18AB=_cycalloc(sizeof(struct _tuple22));_T94E=yyyvsp;_T94F=_T94E[0];_T950=_T94F.l;_T951=_T950.first_line;
# 2130 "parse.y"
_T18AB->f0=Cyc_Position_loc_to_seg(_T951);_T18AB->f1=Cyc_Absyn_true_type;_T952=Cyc_Parse_parsing_tempest;if(!_T952)goto _TL2B9;_T18AB->f2=Cyc_Absyn_fat_bound_type;goto _TL2BA;_TL2B9: _T953=yyyvsp;_T954=_T953[0];_T955=_T954.l;_T956=_T955.first_line;_T957=Cyc_Position_loc_to_seg(_T956);_T958=Cyc_Position_string_of_segment(_T957);_T959=yyyvsp;_T95A=& _T959[1].v;_T95B=(union Cyc_YYSTYPE*)_T95A;_T95C=Cyc_yyget_YY2(_T95B);_T18AB->f2=Cyc_Parse_assign_cvar_pos(_T958,0,_T95C);_TL2BA: _T94D=(struct _tuple22*)_T18AB;}yyval=Cyc_YY1(_T94D);goto _LL0;case 228:{struct _tuple22*_T18AB=_cycalloc(sizeof(struct _tuple22));_T95E=yyyvsp;_T95F=_T95E[0];_T960=_T95F.l;_T961=_T960.first_line;
# 2131 "parse.y"
_T18AB->f0=Cyc_Position_loc_to_seg(_T961);_T18AB->f1=Cyc_Absyn_false_type;_T962=yyyvsp;_T963=_T962[0];_T964=_T963.l;_T965=_T964.first_line;_T966=Cyc_Position_loc_to_seg(_T965);_T967=Cyc_Position_string_of_segment(_T966);_T968=yyyvsp;_T969=& _T968[1].v;_T96A=(union Cyc_YYSTYPE*)_T969;_T96B=Cyc_yyget_YY2(_T96A);_T18AB->f2=Cyc_Parse_assign_cvar_pos(_T967,0,_T96B);_T95D=(struct _tuple22*)_T18AB;}yyval=Cyc_YY1(_T95D);goto _LL0;case 229: _T96D=Cyc_Flags_override_fat;
_T18AB->f0=Cyc_Position_loc_to_seg(_T951);_T18AB->f1=Cyc_Absyn_true_type;_T952=Cyc_Parse_parsing_tempest;if(!_T952)goto _TL2B9;_T18AB->f2=Cyc_Absyn_fat_bound_type;goto _TL2BA;_TL2B9: _T953=yyyvsp;_T954=_T953[0];_T955=_T954.l;_T956=_T955.first_line;_T957=Cyc_Position_loc_to_seg(_T956);_T958=Cyc_Position_string_of_segment(_T957);_T959=yyyvsp;_T95A=& _T959[1].v;_T95B=(union Cyc_YYSTYPE*)_T95A;_T95C=Cyc_yyget_YY2(_T95B);_T18AB->f2=Cyc_Parse_assign_cvar_pos(_T958,0,_T95C);_TL2BA: _T94D=(struct _tuple22*)_T18AB;}yyval=Cyc_YY1(_T94D);goto _LL0;case 228:{struct _tuple22*_T18AB=_cycalloc(sizeof(struct _tuple22));_T95E=yyyvsp;_T95F=_T95E[0];_T960=_T95F.l;_T961=_T960.first_line;
# 2132 "parse.y"
_T18AB->f0=Cyc_Position_loc_to_seg(_T961);_T18AB->f1=Cyc_Absyn_false_type;_T962=yyyvsp;_T963=_T962[0];_T964=_T963.l;_T965=_T964.first_line;_T966=Cyc_Position_loc_to_seg(_T965);_T967=Cyc_Position_string_of_segment(_T966);_T968=yyyvsp;_T969=& _T968[1].v;_T96A=(union Cyc_YYSTYPE*)_T969;_T96B=Cyc_yyget_YY2(_T96A);_T18AB->f2=Cyc_Parse_assign_cvar_pos(_T967,0,_T96B);_T95D=(struct _tuple22*)_T18AB;}yyval=Cyc_YY1(_T95D);goto _LL0;case 229: _T96D=Cyc_Flags_override_fat;
# 2133 "parse.y"
if(!_T96D)goto _TL2BB;if(Cyc_Parse_inside_noinference_block!=0)goto _TL2BB;_T96E=Cyc_Flags_interproc;if(!_T96E)goto _TL2BB;{struct _tuple22*_T18AB=_cycalloc(sizeof(struct _tuple22));_T970=yyyvsp;_T971=_T970[0];_T972=_T971.l;_T973=_T972.first_line;
_T18AB->f0=Cyc_Position_loc_to_seg(_T973);_T18AB->f1=Cyc_Absyn_true_type;_T974=yyyvsp;_T975=_T974[0];_T976=_T975.l;_T977=_T976.first_line;_T978=Cyc_Position_loc_to_seg(_T977);_T979=Cyc_Position_string_of_segment(_T978);_T97A=& Cyc_Kinds_ptrbko;_T97B=(struct Cyc_Core_Opt*)_T97A;_T97C=Cyc_Absyn_cvar_type(_T97B);_T18AB->f2=Cyc_Parse_assign_cvar_pos(_T979,1,_T97C);_T96F=(struct _tuple22*)_T18AB;}_T96C=_T96F;goto _TL2BC;_TL2BB:{struct _tuple22*_T18AB=_cycalloc(sizeof(struct _tuple22));_T97E=yyyvsp;_T97F=_T97E[0];_T980=_T97F.l;_T981=_T980.first_line;
_T18AB->f0=Cyc_Position_loc_to_seg(_T981);_T18AB->f1=Cyc_Absyn_true_type;_T18AB->f2=Cyc_Absyn_fat_bound_type;_T97D=(struct _tuple22*)_T18AB;}_T96C=_T97D;_TL2BC:
# 2132
# 2133
 yyval=Cyc_YY1(_T96C);goto _LL0;case 230: _T983=Cyc_Flags_interproc;
# 2137
# 2138
if(!_T983)goto _TL2BD;if(Cyc_Parse_inside_noinference_block!=0)goto _TL2BD;_T984=& Cyc_Kinds_ptrbko;_T985=(struct Cyc_Core_Opt*)_T984;_T982=Cyc_Absyn_cvar_type(_T985);goto _TL2BE;_TL2BD: _T982=Cyc_Absyn_bounds_one();_TL2BE: yyval=Cyc_YY2(_T982);goto _LL0;case 231: _T986=yyyvsp;_T987=& _T986[1].v;_T988=(union Cyc_YYSTYPE*)_T987;_T989=
# 2138 "parse.y"
# 2139 "parse.y"
Cyc_yyget_Exp_tok(_T988);_T98A=Cyc_Absyn_thin_bounds_exp(_T989);yyval=Cyc_YY2(_T98A);goto _LL0;case 232: _T98B=Cyc_Flags_resolve;
# 2141 "parse.y"
# 2142 "parse.y"
if(_T98B)goto _TL2BF;else{goto _TL2C1;}
_TL2C1:{int(*_T18AB)(unsigned,struct _fat_ptr)=(int(*)(unsigned,struct _fat_ptr))Cyc_Parse_parse_abort;_T98C=_T18AB;}_T98D=_tag_fat("Type variable not permitted in pointer bound",sizeof(char),45U);_T98C(0U,_T98D);goto _TL2C0;_TL2BF: _TL2C0: _T98E=yyyvsp;_T98F=& _T98E[1].v;_T990=(union Cyc_YYSTYPE*)_T98F;_T991=
Cyc_yyget_String_tok(_T990);_T992=Cyc_Parse_typevar2cvar(_T991);yyval=Cyc_YY2(_T992);goto _LL0;case 233: _T993=
# 2148 "parse.y"
Cyc_Tcutil_any_bool(0);yyval=Cyc_YY54(_T993);goto _LL0;case 234:
# 2149 "parse.y"
 yyval=Cyc_YY54(Cyc_Absyn_true_type);goto _LL0;case 235:
Cyc_Tcutil_any_bool(0);yyval=Cyc_YY54(_T993);goto _LL0;case 234:
# 2150 "parse.y"
 yyval=Cyc_YY54(Cyc_Absyn_true_type);goto _LL0;case 235:
# 2151 "parse.y"
 yyval=Cyc_YY54(Cyc_Absyn_false_type);goto _LL0;case 236:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T995=yyyvsp;_T996=& _T995[0].v;_T997=(union Cyc_YYSTYPE*)_T996;
# 2154 "parse.y"
_T18AB->hd=Cyc_yyget_YY45(_T997);_T18AB->tl=0;_T994=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_T994);goto _LL0;case 237:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T999=yyyvsp;_T99A=& _T999[0].v;_T99B=(union Cyc_YYSTYPE*)_T99A;
# 2155 "parse.y"
_T18AB->hd=Cyc_yyget_YY45(_T997);_T18AB->tl=0;_T994=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_T994);goto _LL0;case 237:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_T999=yyyvsp;_T99A=& _T999[0].v;_T99B=(union Cyc_YYSTYPE*)_T99A;
# 2156 "parse.y"
_T18AB->hd=Cyc_yyget_YY45(_T99B);_T99C=yyyvsp;_T99D=& _T99C[2].v;_T99E=(union Cyc_YYSTYPE*)_T99D;_T18AB->tl=Cyc_yyget_YY41(_T99E);_T998=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_T998);goto _LL0;case 238: _T99F=& Cyc_Kinds_eko;_T9A0=(struct Cyc_Core_Opt*)_T99F;_T9A1=
# 2159 "parse.y"
Cyc_Absyn_new_evar(_T9A0,0);yyval=Cyc_YY45(_T9A1);goto _LL0;case 239: _T9A2=yyyvsp;_T9A3=& _T9A2[0].v;_T9A4=(union Cyc_YYSTYPE*)_T9A3;{
# 2160 "parse.y"
struct Cyc_List_List*es=Cyc_yyget_YY41(_T9A4);_T9A5=Cyc_List_length(es);if(_T9A5!=1)goto _TL2C2;_T9A6=_check_null(es);_T9A7=_T9A6->hd;yyval=Cyc_YY45(_T9A7);goto _TL2C3;_TL2C2: _T9A8=yyyvsp;_T9A9=& _T9A8[0].v;_T9AA=(union Cyc_YYSTYPE*)_T9A9;_T9AB=Cyc_yyget_YY41(_T9AA);_T9AC=Cyc_Absyn_join_eff(_T9AB);yyval=Cyc_YY45(_T9AC);_TL2C3: goto _LL0;}case 240: _T9AD=& Cyc_Kinds_eko;_T9AE=(struct Cyc_Core_Opt*)_T9AD;_T9AF=
Cyc_Absyn_new_evar(_T9A0,0);yyval=Cyc_YY45(_T9A1);goto _LL0;case 239: _T9A2=yyyvsp;_T9A3=& _T9A2[0].v;_T9A4=(union Cyc_YYSTYPE*)_T9A3;{
# 2161 "parse.y"
struct Cyc_List_List*es=Cyc_yyget_YY41(_T9A4);_T9A5=Cyc_List_length(es);if(_T9A5!=1)goto _TL2C2;_T9A6=_check_null(es);_T9A7=_T9A6->hd;yyval=Cyc_YY45(_T9A7);goto _TL2C3;_TL2C2: _T9A8=yyyvsp;_T9A9=& _T9A8[0].v;_T9AA=(union Cyc_YYSTYPE*)_T9A9;_T9AB=Cyc_yyget_YY41(_T9AA);_T9AC=Cyc_Absyn_join_eff(_T9AB);yyval=Cyc_YY45(_T9AC);_TL2C3: goto _LL0;}case 240: _T9AD=& Cyc_Kinds_eko;_T9AE=(struct Cyc_Core_Opt*)_T9AD;_T9AF=
# 2162 "parse.y"
Cyc_Absyn_new_evar(_T9AE,0);yyval=Cyc_YY45(_T9AF);goto _LL0;case 241: _T9B0=yyvs;_T9B1=yyvsp_offset + 1;_T9B2=_check_fat_subscript(_T9B0,sizeof(struct Cyc_Yystacktype),_T9B1);_T9B3=(struct Cyc_Yystacktype*)_T9B2;_T9B4=*_T9B3;_T9B5=_T9B4.l;_T9B6=_T9B5.first_line;_T9B7=
# 2172 "parse.y"
Cyc_Position_loc_to_seg(_T9B6);_T9B8=Cyc_Absyn_empty_tqual(_T9B7);yyval=Cyc_YY24(_T9B8);goto _LL0;case 242: _T9B9=yyyvsp;_T9BA=& _T9B9[0].v;_T9BB=(union Cyc_YYSTYPE*)_T9BA;_T9BC=
# 2173 "parse.y"
Cyc_Position_loc_to_seg(_T9B6);_T9B8=Cyc_Absyn_empty_tqual(_T9B7);yyval=Cyc_YY24(_T9B8);goto _LL0;case 242: _T9B9=yyyvsp;_T9BA=& _T9B9[0].v;_T9BB=(union Cyc_YYSTYPE*)_T9BA;_T9BC=
# 2174 "parse.y"
Cyc_yyget_YY24(_T9BB);_T9BD=yyyvsp;_T9BE=& _T9BD[1].v;_T9BF=(union Cyc_YYSTYPE*)_T9BE;_T9C0=Cyc_yyget_YY24(_T9BF);_T9C1=Cyc_Absyn_combine_tqual(_T9BC,_T9C0);yyval=Cyc_YY24(_T9C1);goto _LL0;case 243: _T9C2=yyyvsp;_T9C3=& _T9C2[1].v;_T9C4=(union Cyc_YYSTYPE*)_T9C3;{
# 2178 "parse.y"
# 2179 "parse.y"
struct _tuple28*ec_qb=Cyc_yyget_YY51(_T9C4);_T9C6=ec_qb;_T9C7=(unsigned)_T9C6;
if(!_T9C7)goto _TL2C4;_T9C8=ec_qb;_T9C5=*_T9C8;goto _TL2C5;_TL2C4:{struct _tuple28 _T18AB;_T18AB.f0=0;_T18AB.f1=0;_T9C9=_T18AB;}_T9C5=_T9C9;_TL2C5: {struct _tuple28 _T18AB=_T9C5;struct Cyc_List_List*_T18AC;struct Cyc_List_List*_T18AD;_T18AD=_T18AB.f0;_T18AC=_T18AB.f1;{struct Cyc_List_List*ec=_T18AD;struct Cyc_List_List*qb=_T18AC;{struct _tuple27*_T18AE=_cycalloc(sizeof(struct _tuple27));
_T18AE->f0=0;_T18AE->f1=0;_T18AE->f2=0;_T9CB=yyyvsp;_T9CC=& _T9CB[0].v;_T9CD=(union Cyc_YYSTYPE*)_T9CC;_T18AE->f3=Cyc_yyget_YY50(_T9CD);_T18AE->f4=ec;_T18AE->f5=qb;_T9CA=(struct _tuple27*)_T18AE;}yyval=Cyc_YY40(_T9CA);goto _LL0;}}}case 244: _T9CE=yyyvsp;_T9CF=& _T9CE[2].v;_T9D0=(union Cyc_YYSTYPE*)_T9CF;{
# 2182 "parse.y"
# 2183 "parse.y"
struct _tuple28*ec_qb=Cyc_yyget_YY51(_T9D0);_T9D2=ec_qb;_T9D3=(unsigned)_T9D2;
if(!_T9D3)goto _TL2C6;_T9D4=ec_qb;_T9D1=*_T9D4;goto _TL2C7;_TL2C6:{struct _tuple28 _T18AB;_T18AB.f0=0;_T18AB.f1=0;_T9D5=_T18AB;}_T9D1=_T9D5;_TL2C7: {struct _tuple28 _T18AB=_T9D1;struct Cyc_List_List*_T18AC;struct Cyc_List_List*_T18AD;_T18AD=_T18AB.f0;_T18AC=_T18AB.f1;{struct Cyc_List_List*ec=_T18AD;struct Cyc_List_List*qb=_T18AC;{struct _tuple27*_T18AE=_cycalloc(sizeof(struct _tuple27));_T9D7=yyyvsp;_T9D8=& _T9D7[0].v;_T9D9=(union Cyc_YYSTYPE*)_T9D8;_T9DA=
Cyc_yyget_YY39(_T9D9);_T18AE->f0=Cyc_List_imp_rev(_T9DA);_T18AE->f1=0;_T18AE->f2=0;_T9DB=yyyvsp;_T9DC=& _T9DB[1].v;_T9DD=(union Cyc_YYSTYPE*)_T9DC;_T18AE->f3=Cyc_yyget_YY50(_T9DD);_T18AE->f4=ec;_T18AE->f5=qb;_T9D6=(struct _tuple27*)_T18AE;}yyval=Cyc_YY40(_T9D6);goto _LL0;}}}case 245: _T9DE=yyyvsp;_T9DF=& _T9DE[4].v;_T9E0=(union Cyc_YYSTYPE*)_T9DF;{
# 2186 "parse.y"
# 2187 "parse.y"
struct _tuple28*ec_qb=Cyc_yyget_YY51(_T9E0);_T9E2=ec_qb;_T9E3=(unsigned)_T9E2;
if(!_T9E3)goto _TL2C8;_T9E4=ec_qb;_T9E1=*_T9E4;goto _TL2C9;_TL2C8:{struct _tuple28 _T18AB;_T18AB.f0=0;_T18AB.f1=0;_T9E5=_T18AB;}_T9E1=_T9E5;_TL2C9: {struct _tuple28 _T18AB=_T9E1;struct Cyc_List_List*_T18AC;struct Cyc_List_List*_T18AD;_T18AD=_T18AB.f0;_T18AC=_T18AB.f1;{struct Cyc_List_List*ec=_T18AD;struct Cyc_List_List*qb=_T18AC;{struct _tuple27*_T18AE=_cycalloc(sizeof(struct _tuple27));_T9E7=yyyvsp;_T9E8=& _T9E7[0].v;_T9E9=(union Cyc_YYSTYPE*)_T9E8;_T9EA=
Cyc_yyget_YY39(_T9E9);_T18AE->f0=Cyc_List_imp_rev(_T9EA);_T18AE->f1=1;_T18AE->f2=0;_T9EB=yyyvsp;_T9EC=& _T9EB[3].v;_T9ED=(union Cyc_YYSTYPE*)_T9EC;_T18AE->f3=Cyc_yyget_YY50(_T9ED);_T18AE->f4=ec;_T18AE->f5=qb;_T9E6=(struct _tuple27*)_T18AE;}yyval=Cyc_YY40(_T9E6);goto _LL0;}}}case 246: _T9EE=yyyvsp;_T9EF=& _T9EE[2].v;_T9F0=(union Cyc_YYSTYPE*)_T9EF;{
# 2191
# 2192
struct _tuple8*_T18AB=Cyc_yyget_YY38(_T9F0);void*_T18AC;struct Cyc_Absyn_Tqual _T18AD;struct _fat_ptr*_T18AE;{struct _tuple8 _T18AF=*_T18AB;_T18AE=_T18AF.f0;_T18AD=_T18AF.f1;_T18AC=_T18AF.f2;}{struct _fat_ptr*n=_T18AE;struct Cyc_Absyn_Tqual tq=_T18AD;void*t=_T18AC;
struct Cyc_Absyn_VarargInfo*v;v=_cycalloc(sizeof(struct Cyc_Absyn_VarargInfo));_T9F1=v;_T9F1->name=n;_T9F2=v;_T9F2->tq=tq;_T9F3=v;_T9F3->type=t;_T9F4=v;_T9F5=yyyvsp;_T9F6=& _T9F5[1].v;_T9F7=(union Cyc_YYSTYPE*)_T9F6;_T9F4->inject=Cyc_yyget_YY32(_T9F7);_T9F8=yyyvsp;_T9F9=& _T9F8[4].v;_T9FA=(union Cyc_YYSTYPE*)_T9F9;{
struct _tuple28*ec_qb=Cyc_yyget_YY51(_T9FA);_T9FC=ec_qb;_T9FD=(unsigned)_T9FC;
if(!_T9FD)goto _TL2CA;_T9FE=ec_qb;_T9FB=*_T9FE;goto _TL2CB;_TL2CA:{struct _tuple28 _T18AF;_T18AF.f0=0;_T18AF.f1=0;_T9FF=_T18AF;}_T9FB=_T9FF;_TL2CB: {struct _tuple28 _T18AF=_T9FB;struct Cyc_List_List*_T18B0;struct Cyc_List_List*_T18B1;_T18B1=_T18AF.f0;_T18B0=_T18AF.f1;{struct Cyc_List_List*ec=_T18B1;struct Cyc_List_List*qb=_T18B0;{struct _tuple27*_T18B2=_cycalloc(sizeof(struct _tuple27));
_T18B2->f0=0;_T18B2->f1=0;_T18B2->f2=v;_TA01=yyyvsp;_TA02=& _TA01[3].v;_TA03=(union Cyc_YYSTYPE*)_TA02;_T18B2->f3=Cyc_yyget_YY50(_TA03);_T18B2->f4=ec;_T18B2->f5=qb;_TA00=(struct _tuple27*)_T18B2;}yyval=Cyc_YY40(_TA00);goto _LL0;}}}}}case 247: _TA04=yyyvsp;_TA05=& _TA04[4].v;_TA06=(union Cyc_YYSTYPE*)_TA05;{
# 2199
# 2200
struct _tuple8*_T18AB=Cyc_yyget_YY38(_TA06);void*_T18AC;struct Cyc_Absyn_Tqual _T18AD;struct _fat_ptr*_T18AE;{struct _tuple8 _T18AF=*_T18AB;_T18AE=_T18AF.f0;_T18AD=_T18AF.f1;_T18AC=_T18AF.f2;}{struct _fat_ptr*n=_T18AE;struct Cyc_Absyn_Tqual tq=_T18AD;void*t=_T18AC;
struct Cyc_Absyn_VarargInfo*v;v=_cycalloc(sizeof(struct Cyc_Absyn_VarargInfo));_TA07=v;_TA07->name=n;_TA08=v;_TA08->tq=tq;_TA09=v;_TA09->type=t;_TA0A=v;_TA0B=yyyvsp;_TA0C=& _TA0B[3].v;_TA0D=(union Cyc_YYSTYPE*)_TA0C;_TA0A->inject=Cyc_yyget_YY32(_TA0D);_TA0E=yyyvsp;_TA0F=& _TA0E[6].v;_TA10=(union Cyc_YYSTYPE*)_TA0F;{
struct _tuple28*ec_qb=Cyc_yyget_YY51(_TA10);_TA12=ec_qb;_TA13=(unsigned)_TA12;
if(!_TA13)goto _TL2CC;_TA14=ec_qb;_TA11=*_TA14;goto _TL2CD;_TL2CC:{struct _tuple28 _T18AF;_T18AF.f0=0;_T18AF.f1=0;_TA15=_T18AF;}_TA11=_TA15;_TL2CD: {struct _tuple28 _T18AF=_TA11;struct Cyc_List_List*_T18B0;struct Cyc_List_List*_T18B1;_T18B1=_T18AF.f0;_T18B0=_T18AF.f1;{struct Cyc_List_List*ec=_T18B1;struct Cyc_List_List*qb=_T18B0;{struct _tuple27*_T18B2=_cycalloc(sizeof(struct _tuple27));_TA17=yyyvsp;_TA18=& _TA17[0].v;_TA19=(union Cyc_YYSTYPE*)_TA18;_TA1A=
Cyc_yyget_YY39(_TA19);_T18B2->f0=Cyc_List_imp_rev(_TA1A);_T18B2->f1=0;_T18B2->f2=v;_TA1B=yyyvsp;_TA1C=& _TA1B[5].v;_TA1D=(union Cyc_YYSTYPE*)_TA1C;_T18B2->f3=Cyc_yyget_YY50(_TA1D);_T18B2->f4=ec;_T18B2->f5=qb;_TA16=(struct _tuple27*)_T18B2;}yyval=Cyc_YY40(_TA16);goto _LL0;}}}}}case 248:
# 2209 "parse.y"
 yyval=Cyc_YY50(0);goto _LL0;case 249: _TA1E=yyyvsp;_TA1F=_TA1E[0];_TA20=_TA1F.l;_TA21=_TA20.first_line;_TA22=
# 2210 "parse.y"
 yyval=Cyc_YY50(0);goto _LL0;case 249: _TA1E=yyyvsp;_TA1F=_TA1E[0];_TA20=_TA1F.l;_TA21=_TA20.first_line;_TA22=
# 2211 "parse.y"
Cyc_Position_loc_to_seg(_TA21);_TA23=yyyvsp;_TA24=& _TA23[0].v;_TA25=(union Cyc_YYSTYPE*)_TA24;_TA26=Cyc_yyget_String_tok(_TA25);_TA27=Cyc_Parse_id2aqual(_TA22,_TA26);yyval=Cyc_YY50(_TA27);goto _LL0;case 250: _TA28=yyyvsp;_TA29=& _TA28[0].v;_TA2A=(union Cyc_YYSTYPE*)_TA29;_TA2B=
# 2213
# 2214
Cyc_yyget_String_tok(_TA2A);{struct Cyc_Absyn_Unknown_kb_Absyn_KindBound_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Unknown_kb_Absyn_KindBound_struct));_T18AB->tag=1;_T18AB->f1=0;_TA2C=(struct Cyc_Absyn_Unknown_kb_Absyn_KindBound_struct*)_T18AB;}_TA2D=(void*)_TA2C;_TA2E=yyyvsp;_TA2F=& _TA2E[1].v;_TA30=(union Cyc_YYSTYPE*)_TA2F;_TA31=Cyc_yyget_YY50(_TA30);_TA32=yyyvsp;_TA33=_TA32[0];_TA34=_TA33.l;_TA35=_TA34.first_line;_TA36=Cyc_Position_loc_to_seg(_TA35);_TA37=Cyc_Parse_id2type(_TA2B,_TA2D,_TA31,_TA36);yyval=Cyc_YY45(_TA37);goto _LL0;case 251: _TA38=yyyvsp;_TA39=& _TA38[0].v;_TA3A=(union Cyc_YYSTYPE*)_TA39;_TA3B=
# 2214 "parse.y"
# 2215 "parse.y"
Cyc_yyget_String_tok(_TA3A);_TA3C=yyyvsp;_TA3D=& _TA3C[2].v;_TA3E=(union Cyc_YYSTYPE*)_TA3D;_TA3F=Cyc_yyget_YY44(_TA3E);_TA40=Cyc_Kinds_kind_to_bound(_TA3F);_TA41=yyyvsp;_TA42=& _TA41[3].v;_TA43=(union Cyc_YYSTYPE*)_TA42;_TA44=Cyc_yyget_YY50(_TA43);_TA45=yyyvsp;_TA46=_TA45[0];_TA47=_TA46.l;_TA48=_TA47.first_line;_TA49=Cyc_Position_loc_to_seg(_TA48);_TA4A=Cyc_Parse_id2type(_TA3B,_TA40,_TA44,_TA49);yyval=Cyc_YY45(_TA4A);goto _LL0;case 252:
# 2217
# 2218
 yyval=Cyc_YY50(0);goto _LL0;case 253: _TA4B=yyyvsp;_TA4C=& _TA4B[1].v;_TA4D=(union Cyc_YYSTYPE*)_TA4C;_TA4E=
# 2218 "parse.y"
# 2219 "parse.y"
Cyc_yyget_YY41(_TA4D);_TA4F=Cyc_Absyn_join_eff(_TA4E);yyval=Cyc_YY50(_TA4F);goto _LL0;case 254:
# 2222 "parse.y"
 yyval=Cyc_YY51(0);goto _LL0;case 255: _TA50=yyyvsp;_TA51=_TA50[1];
# 2223 "parse.y"
 yyval=Cyc_YY51(0);goto _LL0;case 255: _TA50=yyyvsp;_TA51=_TA50[1];
# 2224 "parse.y"
yyval=_TA51.v;goto _LL0;case 256:{struct _tuple28*_T18AB=_cycalloc(sizeof(struct _tuple28));{void*_T18AC[1];_TA54=yyyvsp;_TA55=& _TA54[0].v;_TA56=(union Cyc_YYSTYPE*)_TA55;_T18AC[0]=
# 2228 "parse.y"
# 2229 "parse.y"
Cyc_yyget_YY52(_TA56);_TA57=_tag_fat(_T18AC,sizeof(void*),1);_TA53=Cyc_List_list(_TA57);}_T18AB->f0=_TA53;_T18AB->f1=0;_TA52=(struct _tuple28*)_T18AB;}yyval=Cyc_YY51(_TA52);goto _LL0;case 257:{struct _tuple28*_T18AB=_cycalloc(sizeof(struct _tuple28));
# 2230 "parse.y"
# 2231 "parse.y"
_T18AB->f0=0;{struct _tuple29*_T18AC[1];_TA5A=yyyvsp;_TA5B=& _TA5A[0].v;_TA5C=(union Cyc_YYSTYPE*)_TA5B;_T18AC[0]=Cyc_yyget_YY53(_TA5C);_TA5D=_tag_fat(_T18AC,sizeof(struct _tuple29*),1);_TA59=Cyc_List_list(_TA5D);}_T18AB->f1=_TA59;_TA58=(struct _tuple28*)_T18AB;}yyval=Cyc_YY51(_TA58);goto _LL0;case 258: _TA5E=yyyvsp;_TA5F=& _TA5E[2].v;_TA60=(union Cyc_YYSTYPE*)_TA5F;{
# 2233 "parse.y"
# 2234 "parse.y"
struct _tuple28*rest=Cyc_yyget_YY51(_TA60);_TA61=
_check_null(rest);{struct _tuple28 _T18AB=*_TA61;struct Cyc_List_List*_T18AC;_T18AC=_T18AB.f0;{struct Cyc_List_List*rpo=_T18AC;_TA62=rest;{struct Cyc_List_List*_T18AD=_cycalloc(sizeof(struct Cyc_List_List));_TA64=yyyvsp;_TA65=& _TA64[0].v;_TA66=(union Cyc_YYSTYPE*)_TA65;
_T18AD->hd=Cyc_yyget_YY52(_TA66);_T18AD->tl=rpo;_TA63=(struct Cyc_List_List*)_T18AD;}(*_TA62).f0=_TA63;
yyval=Cyc_YY51(rest);goto _LL0;}}}case 259: _TA67=yyyvsp;_TA68=& _TA67[2].v;_TA69=(union Cyc_YYSTYPE*)_TA68;{
# 2240 "parse.y"
# 2241 "parse.y"
struct _tuple28*rest=Cyc_yyget_YY51(_TA69);_TA6A=
_check_null(rest);{struct _tuple28 _T18AB=*_TA6A;struct Cyc_List_List*_T18AC;_T18AC=_T18AB.f1;{struct Cyc_List_List*qb=_T18AC;_TA6B=rest;{struct Cyc_List_List*_T18AD=_cycalloc(sizeof(struct Cyc_List_List));_TA6D=yyyvsp;_TA6E=& _TA6D[0].v;_TA6F=(union Cyc_YYSTYPE*)_TA6E;
_T18AD->hd=Cyc_yyget_YY53(_TA6F);_T18AD->tl=qb;_TA6C=(struct Cyc_List_List*)_T18AD;}(*_TA6B).f1=_TA6C;
yyval=Cyc_YY51(rest);goto _LL0;}}}case 260:  {
# 2250 "parse.y"
# 2251 "parse.y"
struct Cyc_Absyn_Less_kb_Absyn_KindBound_struct*kb;kb=_cycalloc(sizeof(struct Cyc_Absyn_Less_kb_Absyn_KindBound_struct));_TA70=kb;_TA70->tag=2;_TA71=kb;_TA71->f1=0;_TA72=kb;_TA73=& Cyc_Kinds_ek;_TA72->f2=(struct Cyc_Absyn_Kind*)_TA73;_TA74=yyyvsp;_TA75=& _TA74[2].v;_TA76=(union Cyc_YYSTYPE*)_TA75;_TA77=
Cyc_yyget_String_tok(_TA76);_TA78=kb;_TA79=(void*)_TA78;_TA7A=yyyvsp;_TA7B=_TA7A[2];_TA7C=_TA7B.l;_TA7D=_TA7C.first_line;_TA7E=Cyc_Position_loc_to_seg(_TA7D);{void*t=Cyc_Parse_id2type(_TA77,_TA79,0,_TA7E);{struct Cyc_Absyn_SubsetConstraint_Absyn_EffConstraint_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_SubsetConstraint_Absyn_EffConstraint_struct));_T18AB->tag=2;_TA80=yyyvsp;_TA81=& _TA80[0].v;_TA82=(union Cyc_YYSTYPE*)_TA81;_TA83=
Cyc_yyget_YY41(_TA82);_T18AB->f1=Cyc_Parse_effect_from_atomic(_TA83);_T18AB->f2=t;_TA7F=(struct Cyc_Absyn_SubsetConstraint_Absyn_EffConstraint_struct*)_T18AB;}_TA84=(void*)_TA7F;yyval=Cyc_YY52(_TA84);goto _LL0;}}case 261:{struct Cyc_Absyn_DisjointConstraint_Absyn_EffConstraint_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_DisjointConstraint_Absyn_EffConstraint_struct));_T18AB->tag=1;_TA86=yyyvsp;_TA87=& _TA86[0].v;_TA88=(union Cyc_YYSTYPE*)_TA87;_TA89=
# 2256 "parse.y"
# 2257 "parse.y"
Cyc_yyget_YY41(_TA88);_T18AB->f1=Cyc_Parse_effect_from_atomic(_TA89);_TA8A=yyyvsp;_TA8B=& _TA8A[2].v;_TA8C=(union Cyc_YYSTYPE*)_TA8B;_TA8D=
Cyc_yyget_YY41(_TA8C);_T18AB->f2=Cyc_Parse_effect_from_atomic(_TA8D);_TA85=(struct Cyc_Absyn_DisjointConstraint_Absyn_EffConstraint_struct*)_T18AB;}_TA8E=(void*)_TA85;
# 2256
# 2257
yyval=Cyc_YY52(_TA8E);goto _LL0;case 262: _TA8F=yyyvsp;_TA90=_TA8F[0];_TA91=_TA90.l;_TA92=_TA91.first_line;_TA93=
# 2261 "parse.y"
# 2262 "parse.y"
Cyc_Position_loc_to_seg(_TA92);_TA94=yyyvsp;_TA95=& _TA94[0].v;_TA96=(union Cyc_YYSTYPE*)_TA95;_TA97=Cyc_yyget_String_tok(_TA96);Cyc_Parse_check_single_constraint(_TA93,_TA97);{struct Cyc_Absyn_SingleConstraint_Absyn_EffConstraint_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_SingleConstraint_Absyn_EffConstraint_struct));_T18AB->tag=0;_TA99=yyyvsp;_TA9A=& _TA99[2].v;_TA9B=(union Cyc_YYSTYPE*)_TA9A;_TA9C=
Cyc_yyget_YY41(_TA9B);_T18AB->f1=Cyc_Parse_effect_from_atomic(_TA9C);_TA98=(struct Cyc_Absyn_SingleConstraint_Absyn_EffConstraint_struct*)_T18AB;}_TA9D=(void*)_TA98;yyval=Cyc_YY52(_TA9D);goto _LL0;case 263:{struct _tuple29*_T18AB=_cycalloc(sizeof(struct _tuple29));_TA9F=yyyvsp;_TAA0=& _TA9F[2].v;_TAA1=(union Cyc_YYSTYPE*)_TAA0;
# 2269 "parse.y"
# 2270 "parse.y"
_T18AB->f0=Cyc_yyget_YY45(_TAA1);_TAA2=yyyvsp;_TAA3=& _TAA2[0].v;_TAA4=(union Cyc_YYSTYPE*)_TAA3;_T18AB->f1=Cyc_yyget_YY45(_TAA4);_TA9E=(struct _tuple29*)_T18AB;}yyval=Cyc_YY53(_TA9E);goto _LL0;case 264:
# 2274 "parse.y"
 yyval=Cyc_YY58(Cyc_Absyn_al_qual_type);goto _LL0;case 265:
# 2275 "parse.y"
 yyval=Cyc_YY58(Cyc_Absyn_un_qual_type);goto _LL0;case 266:
 yyval=Cyc_YY58(Cyc_Absyn_al_qual_type);goto _LL0;case 265:
# 2276 "parse.y"
 yyval=Cyc_YY58(Cyc_Absyn_rc_qual_type);goto _LL0;case 267:
 yyval=Cyc_YY58(Cyc_Absyn_un_qual_type);goto _LL0;case 266:
# 2277 "parse.y"
 yyval=Cyc_YY58(Cyc_Absyn_rtd_qual_type);goto _LL0;case 268: _TAA5=yyyvsp;_TAA6=_TAA5[0];_TAA7=_TAA6.l;_TAA8=_TAA7.first_line;_TAA9=
 yyval=Cyc_YY58(Cyc_Absyn_rc_qual_type);goto _LL0;case 267:
# 2278 "parse.y"
 yyval=Cyc_YY58(Cyc_Absyn_rtd_qual_type);goto _LL0;case 268: _TAA5=yyyvsp;_TAA6=_TAA5[0];_TAA7=_TAA6.l;_TAA8=_TAA7.first_line;_TAA9=
# 2279 "parse.y"
Cyc_Position_loc_to_seg(_TAA8);_TAAA=yyyvsp;_TAAB=& _TAAA[0].v;_TAAC=(union Cyc_YYSTYPE*)_TAAB;_TAAD=Cyc_yyget_String_tok(_TAAC);_TAAE=Cyc_Parse_id2aqual(_TAA9,_TAAD);yyval=Cyc_YY58(_TAAE);goto _LL0;case 269: _TAAF=yyyvsp;_TAB0=& _TAAF[0].v;_TAB1=(union Cyc_YYSTYPE*)_TAB0;_TAB2=
# 2283 "parse.y"
# 2284 "parse.y"
Cyc_yyget_YY58(_TAB1);yyval=Cyc_YY45(_TAB2);goto _LL0;case 270: _TAB3=yyyvsp;_TAB4=& _TAB3[2].v;_TAB5=(union Cyc_YYSTYPE*)_TAB4;_TAB6=
# 2286 "parse.y"
# 2287 "parse.y"
Cyc_yyget_YY45(_TAB5);_TAB7=Cyc_Absyn_aqualsof_type(_TAB6);_TAB8=Cyc_Absyn_al_qual_type;_TAB9=Cyc_Absyn_aqual_var_type(_TAB7,_TAB8);yyval=Cyc_YY45(_TAB9);goto _LL0;case 271:  {
# 2293 "parse.y"
# 2294 "parse.y"
struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct*kb;kb=_cycalloc(sizeof(struct Cyc_Absyn_Eq_kb_Absyn_KindBound_struct));_TABA=kb;_TABA->tag=0;_TABB=kb;_TABC=& Cyc_Kinds_aqk;_TABB->f1=(struct Cyc_Absyn_Kind*)_TABC;_TABD=yyyvsp;_TABE=& _TABD[0].v;_TABF=(union Cyc_YYSTYPE*)_TABE;_TAC0=
Cyc_yyget_String_tok(_TABF);_TAC1=kb;_TAC2=(void*)_TAC1;_TAC3=yyyvsp;_TAC4=_TAC3[0];_TAC5=_TAC4.l;_TAC6=_TAC5.first_line;_TAC7=Cyc_Position_loc_to_seg(_TAC6);_TAC8=Cyc_Parse_id2type(_TAC0,_TAC2,0,_TAC7);yyval=Cyc_YY45(_TAC8);goto _LL0;}case 272: _TAC9=yyyvsp;_TACA=& _TAC9[2].v;_TACB=(union Cyc_YYSTYPE*)_TACA;_TACC=
# 2298 "parse.y"
# 2299 "parse.y"
Cyc_yyget_YY45(_TACB);_TACD=Cyc_Absyn_aqualsof_type(_TACC);yyval=Cyc_YY45(_TACD);goto _LL0;case 273:
# 2327 "parse.y"
# 2328 "parse.y"
 yyval=Cyc_YY32(0);goto _LL0;case 274: _TACE=yyyvsp;_TACF=& _TACE[0].v;_TAD0=(union Cyc_YYSTYPE*)_TACF;_TAD1=
# 2329 "parse.y"
# 2330 "parse.y"
Cyc_yyget_String_tok(_TAD0);_TAD2=_tag_fat("inject",sizeof(char),7U);_TAD3=Cyc_zstrcmp(_TAD1,_TAD2);if(_TAD3==0)goto _TL2CE;{struct Cyc_Warn_String_Warn_Warg_struct _T18AB;_T18AB.tag=0;
_T18AB.f1=_tag_fat("missing type in function declaration",sizeof(char),37U);_TAD4=_T18AB;}{struct Cyc_Warn_String_Warn_Warg_struct _T18AB=_TAD4;void*_T18AC[1];_T18AC[0]=& _T18AB;_TAD5=yyyvsp;_TAD6=_TAD5[0];_TAD7=_TAD6.l;_TAD8=_TAD7.first_line;_TAD9=Cyc_Position_loc_to_seg(_TAD8);_TADA=_tag_fat(_T18AC,sizeof(void*),1);Cyc_Warn_err2(_TAD9,_TADA);}goto _TL2CF;_TL2CE: _TL2CF:
 yyval=Cyc_YY32(1);goto _LL0;case 275: _TADB=yyyvsp;_TADC=_TADB[0];
# 2336 "parse.y"
yyval=_TADC.v;goto _LL0;case 276: _TADD=yyyvsp;_TADE=& _TADD[0].v;_TADF=(union Cyc_YYSTYPE*)_TADE;_TAE0=
# 2337 "parse.y"
yyval=_TADC.v;goto _LL0;case 276: _TADD=yyyvsp;_TADE=& _TADD[0].v;_TADF=(union Cyc_YYSTYPE*)_TADE;_TAE0=
# 2338 "parse.y"
Cyc_yyget_YY41(_TADF);_TAE1=yyyvsp;_TAE2=& _TAE1[2].v;_TAE3=(union Cyc_YYSTYPE*)_TAE2;_TAE4=Cyc_yyget_YY41(_TAE3);_TAE5=Cyc_List_imp_append(_TAE0,_TAE4);yyval=Cyc_YY41(_TAE5);goto _LL0;case 277:
# 2341 "parse.y"
 yyval=Cyc_YY41(0);goto _LL0;case 278: _TAE6=yyyvsp;_TAE7=_TAE6[1];
# 2342 "parse.y"
yyval=_TAE7.v;goto _LL0;case 279:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TAE9=yyyvsp;_TAEA=& _TAE9[2].v;_TAEB=(union Cyc_YYSTYPE*)_TAEA;_TAEC=
 yyval=Cyc_YY41(0);goto _LL0;case 278: _TAE6=yyyvsp;_TAE7=_TAE6[1];
# 2343 "parse.y"
yyval=_TAE7.v;goto _LL0;case 279:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TAE9=yyyvsp;_TAEA=& _TAE9[2].v;_TAEB=(union Cyc_YYSTYPE*)_TAEA;_TAEC=
# 2344 "parse.y"
Cyc_yyget_YY45(_TAEB);_T18AB->hd=Cyc_Absyn_regionsof_eff(_TAEC);_T18AB->tl=0;_TAE8=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_TAE8);goto _LL0;case 280: _TAED=yyyvsp;_TAEE=& _TAED[0].v;_TAEF=(union Cyc_YYSTYPE*)_TAEE;_TAF0=
# 2345 "parse.y"
# 2346 "parse.y"
Cyc_yyget_YY45(_TAEF);_TAF1=& Cyc_Kinds_ek;_TAF2=(struct Cyc_Absyn_Kind*)_TAF1;Cyc_Parse_set_vartyp_kind(_TAF0,_TAF2,0);{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TAF4=yyyvsp;_TAF5=& _TAF4[0].v;_TAF6=(union Cyc_YYSTYPE*)_TAF5;
_T18AB->hd=Cyc_yyget_YY45(_TAF6);_T18AB->tl=0;_TAF3=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_TAF3);goto _LL0;case 281:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TAF8=yyyvsp;_TAF9=& _TAF8[0].v;_TAFA=(union Cyc_YYSTYPE*)_TAF9;_TAFB=
# 2353 "parse.y"
# 2354 "parse.y"
Cyc_yyget_YY38(_TAFA);_TAFC=yyyvsp;_TAFD=_TAFC[0];_TAFE=_TAFD.l;_TAFF=_TAFE.first_line;_TB00=Cyc_Position_loc_to_seg(_TAFF);_T18AB->hd=Cyc_Parse_type_name_to_type(_TAFB,_TB00);_T18AB->tl=0;_TAF7=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_TAF7);goto _LL0;case 282:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TB02=yyyvsp;_TB03=& _TB02[0].v;_TB04=(union Cyc_YYSTYPE*)_TB03;_TB05=
# 2355 "parse.y"
# 2356 "parse.y"
Cyc_yyget_YY38(_TB04);_TB06=yyyvsp;_TB07=_TB06[0];_TB08=_TB07.l;_TB09=_TB08.first_line;_TB0A=Cyc_Position_loc_to_seg(_TB09);_T18AB->hd=Cyc_Parse_type_name_to_type(_TB05,_TB0A);_TB0B=yyyvsp;_TB0C=& _TB0B[2].v;_TB0D=(union Cyc_YYSTYPE*)_TB0C;_T18AB->tl=Cyc_yyget_YY41(_TB0D);_TB01=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY41(_TB01);goto _LL0;case 283:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TB0F=yyyvsp;_TB10=& _TB0F[0].v;_TB11=(union Cyc_YYSTYPE*)_TB10;
# 2360 "parse.y"
_T18AB->hd=Cyc_yyget_YY38(_TB11);_T18AB->tl=0;_TB0E=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY39(_TB0E);goto _LL0;case 284:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TB13=yyyvsp;_TB14=& _TB13[2].v;_TB15=(union Cyc_YYSTYPE*)_TB14;
# 2361 "parse.y"
_T18AB->hd=Cyc_yyget_YY38(_TB11);_T18AB->tl=0;_TB0E=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY39(_TB0E);goto _LL0;case 284:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TB13=yyyvsp;_TB14=& _TB13[2].v;_TB15=(union Cyc_YYSTYPE*)_TB14;
# 2362 "parse.y"
_T18AB->hd=Cyc_yyget_YY38(_TB15);_TB16=yyyvsp;_TB17=& _TB16[0].v;_TB18=(union Cyc_YYSTYPE*)_TB17;_T18AB->tl=Cyc_yyget_YY39(_TB18);_TB12=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY39(_TB12);goto _LL0;case 285: _TB19=yyyvsp;_TB1A=& _TB19[0].v;_TB1B=(union Cyc_YYSTYPE*)_TB1A;{
# 2367 "parse.y"
# 2368 "parse.y"
struct _tuple26 _T18AB=Cyc_yyget_YY36(_TB1B);struct Cyc_List_List*_T18AC;struct Cyc_Parse_Type_specifier _T18AD;struct Cyc_Absyn_Tqual _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{struct Cyc_Absyn_Tqual tq=_T18AE;struct Cyc_Parse_Type_specifier tspecs=_T18AD;struct Cyc_List_List*atts=_T18AC;_TB1C=tq;_TB1D=_TB1C.loc;
if(_TB1D!=0U)goto _TL2D0;_TB1E=yyyvsp;_TB1F=_TB1E[0];_TB20=_TB1F.l;_TB21=_TB20.first_line;tq.loc=Cyc_Position_loc_to_seg(_TB21);goto _TL2D1;_TL2D0: _TL2D1: _TB22=yyyvsp;_TB23=& _TB22[1].v;_TB24=(union Cyc_YYSTYPE*)_TB23;{
struct Cyc_Parse_Declarator _T18AF=Cyc_yyget_YY28(_TB24);struct Cyc_List_List*_T18B0;unsigned _T18B1;struct _tuple0*_T18B2;_T18B2=_T18AF.id;_T18B1=_T18AF.varloc;_T18B0=_T18AF.tms;{struct _tuple0*qv=_T18B2;unsigned varloc=_T18B1;struct Cyc_List_List*tms=_T18B0;_TB25=tspecs;_TB26=yyyvsp;_TB27=_TB26[0];_TB28=_TB27.l;_TB29=_TB28.first_line;_TB2A=


@@ 3117,82 3117,82 @@ struct _fat_ptr*idopt=_TB3B.f1;
if(atts2==0)goto _TL2D6;{struct Cyc_Warn_String_Warn_Warg_struct _T18B8;_T18B8.tag=0;
_T18B8.f1=_tag_fat("extra attributes on parameter, ignoring",sizeof(char),40U);_TB3C=_T18B8;}{struct Cyc_Warn_String_Warn_Warg_struct _T18B8=_TB3C;void*_T18B9[1];_T18B9[0]=& _T18B8;_TB3D=yyyvsp;_TB3E=_TB3D[0];_TB3F=_TB3E.l;_TB40=_TB3F.first_line;_TB41=Cyc_Position_loc_to_seg(_TB40);_TB42=_tag_fat(_T18B9,sizeof(void*),1);Cyc_Warn_warn2(_TB41,_TB42);}goto _TL2D7;_TL2D6: _TL2D7:{struct _tuple8*_T18B8=_cycalloc(sizeof(struct _tuple8));
_T18B8->f0=idopt;_T18B8->f1=tq2;_T18B8->f2=t2;_TB43=(struct _tuple8*)_T18B8;}yyval=Cyc_YY38(_TB43);goto _LL0;}}}}}}}case 286: _TB44=yyyvsp;_TB45=& _TB44[0].v;_TB46=(union Cyc_YYSTYPE*)_TB45;{
# 2382 "parse.y"
# 2383 "parse.y"
struct _tuple26 _T18AB=Cyc_yyget_YY36(_TB46);struct Cyc_List_List*_T18AC;struct Cyc_Parse_Type_specifier _T18AD;struct Cyc_Absyn_Tqual _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{struct Cyc_Absyn_Tqual tq=_T18AE;struct Cyc_Parse_Type_specifier tspecs=_T18AD;struct Cyc_List_List*atts=_T18AC;_TB47=tq;_TB48=_TB47.loc;
if(_TB48!=0U)goto _TL2D8;_TB49=yyyvsp;_TB4A=_TB49[0];_TB4B=_TB4A.l;_TB4C=_TB4B.first_line;tq.loc=Cyc_Position_loc_to_seg(_TB4C);goto _TL2D9;_TL2D8: _TL2D9: _TB4D=tspecs;_TB4E=yyyvsp;_TB4F=_TB4E[0];_TB50=_TB4F.l;_TB51=_TB50.first_line;_TB52=
Cyc_Position_loc_to_seg(_TB51);{void*t=Cyc_Parse_speclist2typ(_TB4D,_TB52);
if(atts==0)goto _TL2DA;{struct Cyc_Warn_String_Warn_Warg_struct _T18AF;_T18AF.tag=0;
_T18AF.f1=_tag_fat("bad attributes on parameter, ignoring",sizeof(char),38U);_TB53=_T18AF;}{struct Cyc_Warn_String_Warn_Warg_struct _T18AF=_TB53;void*_T18B0[1];_T18B0[0]=& _T18AF;_TB54=yyyvsp;_TB55=_TB54[0];_TB56=_TB55.l;_TB57=_TB56.first_line;_TB58=Cyc_Position_loc_to_seg(_TB57);_TB59=_tag_fat(_T18B0,sizeof(void*),1);Cyc_Warn_warn2(_TB58,_TB59);}goto _TL2DB;_TL2DA: _TL2DB:{struct _tuple8*_T18AF=_cycalloc(sizeof(struct _tuple8));
_T18AF->f0=0;_T18AF->f1=tq;_T18AF->f2=t;_TB5A=(struct _tuple8*)_T18AF;}yyval=Cyc_YY38(_TB5A);goto _LL0;}}}case 287: _TB5B=yyyvsp;_TB5C=& _TB5B[0].v;_TB5D=(union Cyc_YYSTYPE*)_TB5C;{
# 2390 "parse.y"
# 2391 "parse.y"
struct _tuple26 _T18AB=Cyc_yyget_YY36(_TB5D);struct Cyc_List_List*_T18AC;struct Cyc_Parse_Type_specifier _T18AD;struct Cyc_Absyn_Tqual _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{struct Cyc_Absyn_Tqual tq=_T18AE;struct Cyc_Parse_Type_specifier tspecs=_T18AD;struct Cyc_List_List*atts=_T18AC;_TB5E=tq;_TB5F=_TB5E.loc;
if(_TB5F!=0U)goto _TL2DC;_TB60=yyyvsp;_TB61=_TB60[0];_TB62=_TB61.l;_TB63=_TB62.first_line;tq.loc=Cyc_Position_loc_to_seg(_TB63);goto _TL2DD;_TL2DC: _TL2DD: _TB64=tspecs;_TB65=yyyvsp;_TB66=_TB65[0];_TB67=_TB66.l;_TB68=_TB67.first_line;_TB69=
Cyc_Position_loc_to_seg(_TB68);{void*t=Cyc_Parse_speclist2typ(_TB64,_TB69);_TB6A=yyyvsp;_TB6B=& _TB6A[1].v;_TB6C=(union Cyc_YYSTYPE*)_TB6B;_TB6D=
Cyc_yyget_YY31(_TB6C);{struct Cyc_List_List*tms=_TB6D.tms;
struct _tuple14 _T18AF=Cyc_Parse_apply_tms(tq,t,atts,tms);struct Cyc_List_List*_T18B0;struct Cyc_List_List*_T18B1;void*_T18B2;struct Cyc_Absyn_Tqual _T18B3;_T18B3=_T18AF.f0;_T18B2=_T18AF.f1;_T18B1=_T18AF.f2;_T18B0=_T18AF.f3;{struct Cyc_Absyn_Tqual tq2=_T18B3;void*t2=_T18B2;struct Cyc_List_List*tvs=_T18B1;struct Cyc_List_List*atts2=_T18B0;
if(tvs==0)goto _TL2DE;{struct Cyc_Warn_String_Warn_Warg_struct _T18B4;_T18B4.tag=0;
# 2397
# 2398
_T18B4.f1=_tag_fat("bad type parameters on formal argument, ignoring",sizeof(char),49U);_TB6E=_T18B4;}{struct Cyc_Warn_String_Warn_Warg_struct _T18B4=_TB6E;void*_T18B5[1];_T18B5[0]=& _T18B4;_TB6F=yyyvsp;_TB70=_TB6F[0];_TB71=_TB70.l;_TB72=_TB71.first_line;_TB73=
# 2396
# 2397
Cyc_Position_loc_to_seg(_TB72);_TB74=_tag_fat(_T18B5,sizeof(void*),1);Cyc_Warn_warn2(_TB73,_TB74);}goto _TL2DF;_TL2DE: _TL2DF:
# 2398
# 2399
 if(atts2==0)goto _TL2E0;{struct Cyc_Warn_String_Warn_Warg_struct _T18B4;_T18B4.tag=0;
_T18B4.f1=_tag_fat("bad attributes on parameter, ignoring",sizeof(char),38U);_TB75=_T18B4;}{struct Cyc_Warn_String_Warn_Warg_struct _T18B4=_TB75;void*_T18B5[1];_T18B5[0]=& _T18B4;_TB76=yyyvsp;_TB77=_TB76[0];_TB78=_TB77.l;_TB79=_TB78.first_line;_TB7A=Cyc_Position_loc_to_seg(_TB79);_TB7B=_tag_fat(_T18B5,sizeof(void*),1);Cyc_Warn_warn2(_TB7A,_TB7B);}goto _TL2E1;_TL2E0: _TL2E1:{struct _tuple8*_T18B4=_cycalloc(sizeof(struct _tuple8));
_T18B4->f0=0;_T18B4->f1=tq2;_T18B4->f2=t2;_TB7C=(struct _tuple8*)_T18B4;}yyval=Cyc_YY38(_TB7C);goto _LL0;}}}}}case 288: _TB7D=yyyvsp;_TB7E=& _TB7D[0].v;_TB7F=(union Cyc_YYSTYPE*)_TB7E;_TB80=
# 2405 "parse.y"
# 2406 "parse.y"
Cyc_yyget_YY37(_TB7F);_TB81=Cyc_List_imp_rev(_TB80);yyval=Cyc_YY37(_TB81);goto _LL0;case 289:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_TB84=yyyvsp;_TB85=& _TB84[0].v;_TB86=(union Cyc_YYSTYPE*)_TB85;
# 2408
# 2409
*_T18AC=Cyc_yyget_String_tok(_TB86);_TB83=(struct _fat_ptr*)_T18AC;}_T18AB->hd=_TB83;_T18AB->tl=0;_TB82=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY37(_TB82);goto _LL0;case 290:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_TB89=yyyvsp;_TB8A=& _TB89[2].v;_TB8B=(union Cyc_YYSTYPE*)_TB8A;
# 2409 "parse.y"
# 2410 "parse.y"
*_T18AC=Cyc_yyget_String_tok(_TB8B);_TB88=(struct _fat_ptr*)_T18AC;}_T18AB->hd=_TB88;_TB8C=yyyvsp;_TB8D=& _TB8C[0].v;_TB8E=(union Cyc_YYSTYPE*)_TB8D;_T18AB->tl=Cyc_yyget_YY37(_TB8E);_TB87=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY37(_TB87);goto _LL0;case 291: _TB8F=yyyvsp;_TB90=_TB8F[0];
# 2413 "parse.y"
yyval=_TB90.v;goto _LL0;case 292: _TB91=yyyvsp;_TB92=_TB91[0];
# 2414 "parse.y"
yyval=_TB90.v;goto _LL0;case 292: _TB91=yyyvsp;_TB92=_TB91[0];
# 2415 "parse.y"
yyval=_TB92.v;goto _LL0;case 293:{struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct));_T18AB->tag=35;
# 2419 "parse.y"
# 2420 "parse.y"
_T18AB->f1=0;_T18AB->f2=0;_TB93=(struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct*)_T18AB;}_TB94=(void*)_TB93;_TB95=yyyvsp;_TB96=_TB95[0];_TB97=_TB96.l;_TB98=_TB97.first_line;_TB99=Cyc_Position_loc_to_seg(_TB98);_TB9A=Cyc_Absyn_new_exp(_TB94,_TB99);yyval=Cyc_Exp_tok(_TB9A);goto _LL0;case 294:{struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct));_T18AB->tag=35;
# 2421 "parse.y"
# 2422 "parse.y"
_T18AB->f1=0;_TB9C=yyyvsp;_TB9D=& _TB9C[1].v;_TB9E=(union Cyc_YYSTYPE*)_TB9D;_TB9F=Cyc_yyget_YY5(_TB9E);_T18AB->f2=Cyc_List_imp_rev(_TB9F);_TB9B=(struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct*)_T18AB;}_TBA0=(void*)_TB9B;_TBA1=yyyvsp;_TBA2=_TBA1[0];_TBA3=_TBA2.l;_TBA4=_TBA3.first_line;_TBA5=Cyc_Position_loc_to_seg(_TBA4);_TBA6=Cyc_Absyn_new_exp(_TBA0,_TBA5);yyval=Cyc_Exp_tok(_TBA6);goto _LL0;case 295:{struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct));_T18AB->tag=35;
# 2423 "parse.y"
# 2424 "parse.y"
_T18AB->f1=0;_TBA8=yyyvsp;_TBA9=& _TBA8[1].v;_TBAA=(union Cyc_YYSTYPE*)_TBA9;_TBAB=Cyc_yyget_YY5(_TBAA);_T18AB->f2=Cyc_List_imp_rev(_TBAB);_TBA7=(struct Cyc_Absyn_UnresolvedMem_e_Absyn_Raw_exp_struct*)_T18AB;}_TBAC=(void*)_TBA7;_TBAD=yyyvsp;_TBAE=_TBAD[0];_TBAF=_TBAE.l;_TBB0=_TBAF.first_line;_TBB1=Cyc_Position_loc_to_seg(_TBB0);_TBB2=Cyc_Absyn_new_exp(_TBAC,_TBB1);yyval=Cyc_Exp_tok(_TBB2);goto _LL0;case 296: _TBB3=yyyvsp;_TBB4=_TBB3[2];_TBB5=_TBB4.l;_TBB6=_TBB5.first_line;_TBB7=
# 2425 "parse.y"
# 2426 "parse.y"
Cyc_Position_loc_to_seg(_TBB6);{struct _tuple0*_T18AB=_cycalloc(sizeof(struct _tuple0));_T18AB->f0=Cyc_Absyn_Loc_n();{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_TBBA=yyyvsp;_TBBB=& _TBBA[2].v;_TBBC=(union Cyc_YYSTYPE*)_TBBB;*_T18AC=Cyc_yyget_String_tok(_TBBC);_TBB9=(struct _fat_ptr*)_T18AC;}_T18AB->f1=_TBB9;_TBB8=(struct _tuple0*)_T18AB;}_TBBD=Cyc_Absyn_uint_type;_TBBE=yyyvsp;_TBBF=_TBBE[2];_TBC0=_TBBF.l;_TBC1=_TBC0.first_line;_TBC2=
Cyc_Position_loc_to_seg(_TBC1);_TBC3=Cyc_Absyn_uint_exp(0U,_TBC2);{
# 2425
# 2426
struct Cyc_Absyn_Vardecl*vd=Cyc_Absyn_new_vardecl(_TBB7,_TBB8,_TBBD,_TBC3,0);_TBC4=vd;
# 2428
# 2429
_TBC4->tq.real_const=1;{struct Cyc_Absyn_Comprehension_e_Absyn_Raw_exp_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_Comprehension_e_Absyn_Raw_exp_struct));_T18AB->tag=26;
_T18AB->f1=vd;_TBC6=yyyvsp;_TBC7=& _TBC6[4].v;_TBC8=(union Cyc_YYSTYPE*)_TBC7;_T18AB->f2=Cyc_yyget_Exp_tok(_TBC8);_TBC9=yyyvsp;_TBCA=& _TBC9[6].v;_TBCB=(union Cyc_YYSTYPE*)_TBCA;_T18AB->f3=Cyc_yyget_Exp_tok(_TBCB);_T18AB->f4=0;_TBC5=(struct Cyc_Absyn_Comprehension_e_Absyn_Raw_exp_struct*)_T18AB;}_TBCC=(void*)_TBC5;_TBCD=yyyvsp;_TBCE=_TBCD[0];_TBCF=_TBCE.l;_TBD0=_TBCF.first_line;_TBD1=Cyc_Position_loc_to_seg(_TBD0);_TBD2=Cyc_Absyn_new_exp(_TBCC,_TBD1);yyval=Cyc_Exp_tok(_TBD2);goto _LL0;}case 297: _TBD3=yyyvsp;_TBD4=& _TBD3[6].v;_TBD5=(union Cyc_YYSTYPE*)_TBD4;_TBD6=
# 2433 "parse.y"
# 2434 "parse.y"
Cyc_yyget_YY38(_TBD5);_TBD7=yyyvsp;_TBD8=_TBD7[6];_TBD9=_TBD8.l;_TBDA=_TBD9.first_line;_TBDB=Cyc_Position_loc_to_seg(_TBDA);{void*t=Cyc_Parse_type_name_to_type(_TBD6,_TBDB);{struct Cyc_Absyn_ComprehensionNoinit_e_Absyn_Raw_exp_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_ComprehensionNoinit_e_Absyn_Raw_exp_struct));_T18AB->tag=27;_TBDD=yyyvsp;_TBDE=& _TBDD[4].v;_TBDF=(union Cyc_YYSTYPE*)_TBDE;
_T18AB->f1=Cyc_yyget_Exp_tok(_TBDF);_T18AB->f2=t;_T18AB->f3=0;_TBDC=(struct Cyc_Absyn_ComprehensionNoinit_e_Absyn_Raw_exp_struct*)_T18AB;}_TBE0=(void*)_TBDC;_TBE1=yyyvsp;_TBE2=_TBE1[0];_TBE3=_TBE2.l;_TBE4=_TBE3.first_line;_TBE5=Cyc_Position_loc_to_seg(_TBE4);_TBE6=Cyc_Absyn_new_exp(_TBE0,_TBE5);yyval=Cyc_Exp_tok(_TBE6);goto _LL0;}case 298:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple34*_T18AC=_cycalloc(sizeof(struct _tuple34));
# 2441 "parse.y"
# 2442 "parse.y"
_T18AC->f0=0;_TBE9=yyyvsp;_TBEA=& _TBE9[0].v;_TBEB=(union Cyc_YYSTYPE*)_TBEA;_T18AC->f1=Cyc_yyget_Exp_tok(_TBEB);_TBE8=(struct _tuple34*)_T18AC;}_T18AB->hd=_TBE8;_T18AB->tl=0;_TBE7=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY5(_TBE7);goto _LL0;case 299:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple34*_T18AC=_cycalloc(sizeof(struct _tuple34));_TBEE=yyyvsp;_TBEF=& _TBEE[0].v;_TBF0=(union Cyc_YYSTYPE*)_TBEF;
# 2443 "parse.y"
# 2444 "parse.y"
_T18AC->f0=Cyc_yyget_YY42(_TBF0);_TBF1=yyyvsp;_TBF2=& _TBF1[1].v;_TBF3=(union Cyc_YYSTYPE*)_TBF2;_T18AC->f1=Cyc_yyget_Exp_tok(_TBF3);_TBED=(struct _tuple34*)_T18AC;}_T18AB->hd=_TBED;_T18AB->tl=0;_TBEC=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY5(_TBEC);goto _LL0;case 300:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple34*_T18AC=_cycalloc(sizeof(struct _tuple34));
# 2445 "parse.y"
# 2446 "parse.y"
_T18AC->f0=0;_TBF6=yyyvsp;_TBF7=& _TBF6[2].v;_TBF8=(union Cyc_YYSTYPE*)_TBF7;_T18AC->f1=Cyc_yyget_Exp_tok(_TBF8);_TBF5=(struct _tuple34*)_T18AC;}_T18AB->hd=_TBF5;_TBF9=yyyvsp;_TBFA=& _TBF9[0].v;_TBFB=(union Cyc_YYSTYPE*)_TBFA;_T18AB->tl=Cyc_yyget_YY5(_TBFB);_TBF4=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY5(_TBF4);goto _LL0;case 301:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct _tuple34*_T18AC=_cycalloc(sizeof(struct _tuple34));_TBFE=yyyvsp;_TBFF=& _TBFE[2].v;_TC00=(union Cyc_YYSTYPE*)_TBFF;
# 2447 "parse.y"
# 2448 "parse.y"
_T18AC->f0=Cyc_yyget_YY42(_TC00);_TC01=yyyvsp;_TC02=& _TC01[3].v;_TC03=(union Cyc_YYSTYPE*)_TC02;_T18AC->f1=Cyc_yyget_Exp_tok(_TC03);_TBFD=(struct _tuple34*)_T18AC;}_T18AB->hd=_TBFD;_TC04=yyyvsp;_TC05=& _TC04[0].v;_TC06=(union Cyc_YYSTYPE*)_TC05;_T18AB->tl=Cyc_yyget_YY5(_TC06);_TBFC=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY5(_TBFC);goto _LL0;case 302: _TC07=yyyvsp;_TC08=& _TC07[0].v;_TC09=(union Cyc_YYSTYPE*)_TC08;_TC0A=
# 2451 "parse.y"
Cyc_yyget_YY42(_TC09);_TC0B=Cyc_List_imp_rev(_TC0A);yyval=Cyc_YY42(_TC0B);goto _LL0;case 303:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_FieldName_Absyn_Designator_struct*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_FieldName_Absyn_Designator_struct));_T18AC->tag=1;{struct _fat_ptr*_T18AD=_cycalloc(sizeof(struct _fat_ptr));_TC0F=yyyvsp;_TC10=& _TC0F[0].v;_TC11=(union Cyc_YYSTYPE*)_TC10;
# 2452 "parse.y"
Cyc_yyget_YY42(_TC09);_TC0B=Cyc_List_imp_rev(_TC0A);yyval=Cyc_YY42(_TC0B);goto _LL0;case 303:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));{struct Cyc_Absyn_FieldName_Absyn_Designator_struct*_T18AC=_cycalloc(sizeof(struct Cyc_Absyn_FieldName_Absyn_Designator_struct));_T18AC->tag=1;{struct _fat_ptr*_T18AD=_cycalloc(sizeof(struct _fat_ptr));_TC0F=yyyvsp;_TC10=& _TC0F[0].v;_TC11=(union Cyc_YYSTYPE*)_TC10;
# 2453 "parse.y"
*_T18AD=Cyc_yyget_String_tok(_TC11);_TC0E=(struct _fat_ptr*)_T18AD;}_T18AC->f1=_TC0E;_TC0D=(struct Cyc_Absyn_FieldName_Absyn_Designator_struct*)_T18AC;}_T18AB->hd=(void*)_TC0D;_T18AB->tl=0;_TC0C=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY42(_TC0C);goto _LL0;case 304:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TC13=yyyvsp;_TC14=& _TC13[0].v;_TC15=(union Cyc_YYSTYPE*)_TC14;
# 2457 "parse.y"
_T18AB->hd=Cyc_yyget_YY43(_TC15);_T18AB->tl=0;_TC12=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY42(_TC12);goto _LL0;case 305:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TC17=yyyvsp;_TC18=& _TC17[1].v;_TC19=(union Cyc_YYSTYPE*)_TC18;
# 2458 "parse.y"
_T18AB->hd=Cyc_yyget_YY43(_TC15);_T18AB->tl=0;_TC12=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY42(_TC12);goto _LL0;case 305:{struct Cyc_List_List*_T18AB=_cycalloc(sizeof(struct Cyc_List_List));_TC17=yyyvsp;_TC18=& _TC17[1].v;_TC19=(union Cyc_YYSTYPE*)_TC18;
# 2459 "parse.y"
_T18AB->hd=Cyc_yyget_YY43(_TC19);_TC1A=yyyvsp;_TC1B=& _TC1A[0].v;_TC1C=(union Cyc_YYSTYPE*)_TC1B;_T18AB->tl=Cyc_yyget_YY42(_TC1C);_TC16=(struct Cyc_List_List*)_T18AB;}yyval=Cyc_YY42(_TC16);goto _LL0;case 306:{struct Cyc_Absyn_ArrayElement_Absyn_Designator_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_ArrayElement_Absyn_Designator_struct));_T18AB->tag=0;_TC1E=yyyvsp;_TC1F=& _TC1E[1].v;_TC20=(union Cyc_YYSTYPE*)_TC1F;
# 2462 "parse.y"
_T18AB->f1=Cyc_yyget_Exp_tok(_TC20);_TC1D=(struct Cyc_Absyn_ArrayElement_Absyn_Designator_struct*)_T18AB;}_TC21=(void*)_TC1D;yyval=Cyc_YY43(_TC21);goto _LL0;case 307:{struct Cyc_Absyn_FieldName_Absyn_Designator_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_FieldName_Absyn_Designator_struct));_T18AB->tag=1;{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_TC24=yyyvsp;_TC25=& _TC24[1].v;_TC26=(union Cyc_YYSTYPE*)_TC25;
# 2463 "parse.y"
_T18AB->f1=Cyc_yyget_Exp_tok(_TC20);_TC1D=(struct Cyc_Absyn_ArrayElement_Absyn_Designator_struct*)_T18AB;}_TC21=(void*)_TC1D;yyval=Cyc_YY43(_TC21);goto _LL0;case 307:{struct Cyc_Absyn_FieldName_Absyn_Designator_struct*_T18AB=_cycalloc(sizeof(struct Cyc_Absyn_FieldName_Absyn_Designator_struct));_T18AB->tag=1;{struct _fat_ptr*_T18AC=_cycalloc(sizeof(struct _fat_ptr));_TC24=yyyvsp;_TC25=& _TC24[1].v;_TC26=(union Cyc_YYSTYPE*)_TC25;
# 2464 "parse.y"
*_T18AC=Cyc_yyget_String_tok(_TC26);_TC23=(struct _fat_ptr*)_T18AC;}_T18AB->f1=_TC23;_TC22=(struct Cyc_Absyn_FieldName_Absyn_Designator_struct*)_T18AB;}_TC27=(void*)_TC22;yyval=Cyc_YY43(_TC27);goto _LL0;case 308: _TC28=yyyvsp;_TC29=& _TC28[0].v;_TC2A=(union Cyc_YYSTYPE*)_TC29;{
# 2468 "parse.y"
# 2469 "parse.y"
struct _tuple26 _T18AB=Cyc_yyget_YY36(_TC2A);struct Cyc_List_List*_T18AC;struct Cyc_Parse_Type_specifier _T18AD;struct Cyc_Absyn_Tqual _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{struct Cyc_Absyn_Tqual tq=_T18AE;struct Cyc_Parse_Type_specifier tss=_T18AD;struct Cyc_List_List*atts=_T18AC;_TC2B=tss;_TC2C=yyyvsp;_TC2D=_TC2C[0];_TC2E=_TC2D.l;_TC2F=_TC2E.first_line;_TC30=
Cyc_Position_loc_to_seg(_TC2F);{void*t=Cyc_Parse_speclist2typ(_TC2B,_TC30);
if(atts==0)goto _TL2E2;_TC31=yyyvsp;_TC32=_TC31[0];_TC33=_TC32.l;_TC34=_TC33.first_line;_TC35=
Cyc_Position_loc_to_seg(_TC34);_TC36=_tag_fat("ignoring attributes in type",sizeof(char),28U);_TC37=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_TC35,_TC36,_TC37);goto _TL2E3;_TL2E2: _TL2E3:{struct _tuple8*_T18AF=_cycalloc(sizeof(struct _tuple8));
_T18AF->f0=0;_T18AF->f1=tq;_T18AF->f2=t;_TC38=(struct _tuple8*)_T18AF;}yyval=Cyc_YY38(_TC38);goto _LL0;}}}case 309: _TC39=yyyvsp;_TC3A=& _TC39[0].v;_TC3B=(union Cyc_YYSTYPE*)_TC3A;{
# 2475 "parse.y"
# 2476 "parse.y"
struct _tuple26 _T18AB=Cyc_yyget_YY36(_TC3B);struct Cyc_List_List*_T18AC;struct Cyc_Parse_Type_specifier _T18AD;struct Cyc_Absyn_Tqual _T18AE;_T18AE=_T18AB.f0;_T18AD=_T18AB.f1;_T18AC=_T18AB.f2;{struct Cyc_Absyn_Tqual tq=_T18AE;struct Cyc_Parse_Type_specifier tss=_T18AD;struct Cyc_List_List*atts=_T18AC;_TC3C=tss;_TC3D=yyyvsp;_TC3E=_TC3D[0];_TC3F=_TC3E.l;_TC40=_TC3F.first_line;_TC41=
Cyc_Position_loc_to_seg(_TC40);{void*t=Cyc_Parse_speclist2typ(_TC3C,_TC41);_TC42=yyyvsp;_TC43=& _TC42[1].v;_TC44=(union Cyc_YYSTYPE*)_TC43;_TC45=
Cyc_yyget_YY31(_TC44);{struct Cyc_List_List*tms=_TC45.tms;


@@ 3202,310 3202,310 @@ Cyc_Position_loc_to_seg(_TC4B);_TC4D=_tag_fat("bad type params, ignoring",sizeof
if(_TC50==0)goto _TL2E6;_TC51=yyyvsp;_TC52=_TC51[1];_TC53=_TC52.l;_TC54=_TC53.first_line;_TC55=
Cyc_Position_loc_to_seg(_TC54);_TC56=_tag_fat("bad specifiers, ignoring",sizeof(char),25U);_TC57=_tag_fat(0U,sizeof(void*),0);Cyc_Warn_warn(_TC55,_TC56,_TC57);goto _TL2E7;_TL2E6: _TL2E7:{struct _tuple8*_T18AF=_cycalloc(sizeof(struct _tuple8));
_T18AF->f0=0;_TC59=t_info;_T18AF->f1=_TC59.f0;_TC5A=t_info;_T18AF->f2=_TC5A.f1;_TC