#include "run-time.h"

/* Typedefs for referenced classes */

typedef struct {
  D wrapper;
  D xep_;
  D function_signature_;
  D Pgf_cache_;
  D debug_name_;
  D generic_function_methods_;
  D discriminator_;
  D incremental_gf_module_;
  D incremental_gf_domain_info_;
  D incremental_gf_method_libraries_;
  D incremental_gf_properties_;
} _KLincremental_generic_functionGVKe;

typedef struct {
  D wrapper;
  D instanceQ_iep_;
  D debug_name_;
  D class_implementation_class_;
  D class_subtype_bit_;
  D class_module_;
} _KLfunction_classGVKi;

typedef struct {
  D wrapper;
  D instanceQ_iep_;
  D debug_name_;
  D class_implementation_class_;
  D class_subtype_bit_;
  D class_module_;
} _KLclassGVKd;

#define  define__KLmm_wrapperGVKi(nrepeated) \
  typedef struct { \
    D wrapper; \
    D mm_wrapper_implementation_class_; \
    D mm_wrapper_subtype_mask_; \
    DWORD mm_wrapper_fixed_part_; \
    DWORD mm_wrapper_variable_part_; \
    D mm_wrapper_number_patterns_; \
    DWORD mm_wrapper_pattern_element_[nrepeated+1]; \
  } _KLmm_wrapperGVKi_##nrepeated;
define__KLmm_wrapperGVKi(1);
define__KLmm_wrapperGVKi(0);

#define  define__KLsimple_object_vectorGVKd(nrepeated) \
  typedef struct { \
    D wrapper; \
    D size_; \
    D vector_element_[nrepeated+1]; \
  } _KLsimple_object_vectorGVKd_##nrepeated;
define__KLsimple_object_vectorGVKd(11);
define__KLsimple_object_vectorGVKd(5);
define__KLsimple_object_vectorGVKd(7);
define__KLsimple_object_vectorGVKd(8);
define__KLsimple_object_vectorGVKd(6);
define__KLsimple_object_vectorGVKd(14);
define__KLsimple_object_vectorGVKd(3);
define__KLsimple_object_vectorGVKd(16);
define__KLsimple_object_vectorGVKd(12);
define__KLsimple_object_vectorGVKd(256);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(1);
define__KLsimple_object_vectorGVKd(0);
define__KLsimple_object_vectorGVKd(4);

typedef struct {
  D wrapper;
  D symbol_name_;
} _KLsymbolGVKd;

typedef struct {
  D wrapper;
  D namespace_name_;
  D library_major_version_;
  D library_minor_version_;
  D library_build_count_;
  D used_libraries_;
  D all_used_libraries_;
  D runtime_module_;
  D library_defined_generics_;
  D library_number_static_dispatches_;
  D library_number_dynamic_dispatches_;
} _KLlibraryGVKe;

typedef struct {
  D wrapper;
} _KLbooleanGVKd;

typedef struct {
  D wrapper;
} _KLobjectGVKd;

typedef struct {
  D wrapper;
} _KLunboundGVKe;

typedef struct {
  D wrapper;
  D class_properties_;
  D iclass_class_;
  D class_mm_wrapper_;
  D repeated_slot_descriptor_;
  D instance_slot_descriptors_;
  D iclass_dispatch_key_;
  D class_constructor_;
  D direct_superclasses_;
  D class_rcpl_vector_;
  D class_rcpl_position_;
  D class_rcpl_other_positions_;
  D class_known_joint_;
  D iclass_dependent_generics_;
  D iclass_subclass_dependent_generics_;
  D direct_subclasses_;
  D direct_methods_;
  D direct_slot_descriptors_;
  D slot_descriptors_;
  D direct_inherited_slot_descriptors_;
  D direct_initialization_argument_descriptors_;
  D class_slot_descriptors_;
  D defaulted_initialization_arguments_slot_;
  D class_slot_storage_;
} _KLimplementation_classGVKe;

typedef struct {
  D wrapper;
  D head_;
  D tail_;
} _KLempty_listGVKd;

typedef struct {
  D wrapper;
} _KLconditionGVKd;

typedef struct {
  D wrapper;
} _KLwarningGVKd;

typedef struct {
  D wrapper;
} _KLsequenceGVKd;

typedef struct {
  D wrapper;
} _KLintegerGVKd;

typedef struct {
  D wrapper;
  D instanceQ_iep_;
  D union_type1_;
  D union_type2_;
} _KLunionGVKe;

typedef struct {
  D wrapper;
  D instanceQ_iep_;
  D singleton_object_;
} _KLsingletonGVKd;

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    D wrapper; \
    D size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(22);
define__KLbyte_stringGVKd(29);
define__KLbyte_stringGVKd(26);
define__KLbyte_stringGVKd(33);
define__KLbyte_stringGVKd(45);
define__KLbyte_stringGVKd(31);
define__KLbyte_stringGVKd(7);
define__KLbyte_stringGVKd(12);
define__KLbyte_stringGVKd(19);
define__KLbyte_stringGVKd(15);
define__KLbyte_stringGVKd(13);
define__KLbyte_stringGVKd(4);
define__KLbyte_stringGVKd(3);
define__KLbyte_stringGVKd(9);
define__KLbyte_stringGVKd(14);
define__KLbyte_stringGVKd(11);
define__KLbyte_stringGVKd(17);
define__KLbyte_stringGVKd(24);
define__KLbyte_stringGVKd(21);
define__KLbyte_stringGVKd(28);
define__KLbyte_stringGVKd(20);
define__KLbyte_stringGVKd(16);
define__KLbyte_stringGVKd(18);
define__KLbyte_stringGVKd(25);
define__KLbyte_stringGVKd(27);
define__KLbyte_stringGVKd(8);
define__KLbyte_stringGVKd(10);
define__KLbyte_stringGVKd(5);
define__KLbyte_stringGVKd(6);
define__KLbyte_stringGVKd(23);

typedef struct {
  D wrapper;
  D xep_;
  D function_signature_;
  D mep_;
  D iep_;
  D keyword_specifiers_;
} _KLkeyword_methodGVKe;

typedef struct {
  D wrapper;
  D signature_properties_;
  D signature_required_;
  D signature_keys_;
  D signature_key_types_;
  D signature_values_;
} _KLkeyword_signatureAvaluesGVKi;

typedef struct {
  D wrapper;
  D slot_descriptor_properties_;
  D init_data_slot_;
  D slot_owner_;
  D init_keyword_;
  D slot_getter_;
  D slot_setter_;
  D slot_type_;
} _KLinstance_slot_descriptorGVKe;

typedef struct {
  D wrapper;
  D xep_;
  D function_signature_;
  D Pgf_cache_;
  D debug_name_;
  D generic_function_methods_;
  D discriminator_;
} _KLsealed_generic_functionGVKe;

typedef struct {
  D wrapper;
  D signature_properties_;
  D signature_required_;
} _KLobject_signatureGVKe;

typedef struct {
  D wrapper;
  D properties_;
  D engine_node_callback_;
  D engine_node_entry_point_;
} _KLabsent_engine_nodeGVKg;

typedef struct {
  D wrapper;
  D head_;
  D tail_;
} _KLpairGVKd;

typedef struct {
  D wrapper;
  D xep_;
  D method_slot_descriptor_;
} _KLgetter_methodGVKi;

typedef struct {
  D wrapper;
  D namespace_name_;
  D home_library_;
} _KLmoduleGVKe;

typedef struct {
  D wrapper;
  D head_;
  D tail_;
} _KLlistGVKd;

typedef struct {
  D wrapper;
  D xep_;
  D method_slot_descriptor_;
} _KLsetter_methodGVKi;

typedef struct {
  D wrapper;
  D instanceQ_iep_;
  D limited_integer_min_;
  D limited_integer_max_;
} _KLlimited_integerGVKe;

typedef struct {
  D wrapper;
  D xep_;
  D function_signature_;
  D mep_;
} _KLsimple_methodGVKe;

typedef struct {
  D wrapper;
  D synchronization_;
} _KLtimeout_expiredGYthreadsVdylan;

typedef struct {
  D wrapper;
  D signature_properties_;
  D signature_required_;
  D signature_values_;
} _KLsignatureAvaluesGVKi;

#define  define__KLsimple_closure_methodGVKi(nrepeated) \
  typedef struct { \
    D wrapper; \
    D xep_; \
    D function_signature_; \
    D mep_; \
    D environment_size_; \
    D environment_element_[nrepeated+1]; \
  } _KLsimple_closure_methodGVKi_##nrepeated;
define__KLsimple_closure_methodGVKi(0);

typedef struct {
  D wrapper;
  D signature_properties_;
  D signature_required_;
} _KLsignatureGVKe;

typedef struct {
  D wrapper;
  D condition_format_string_;
  D condition_format_arguments_;
  D type_error_value_;
  D type_error_expected_type_;
} _KLtype_errorGVKd;

typedef struct {
  D wrapper;
  D element_type_;
  D table_vector_;
  D initial_entries_;
  D grow_size_function_;
  D weakQ_;
} _KLobject_tableGVKd;

typedef struct {
  D wrapper;
  D set_elements_;
} _KLobject_setGVKe;

typedef struct {
  D wrapper;
  D instanceQ_iep_;
} _KLtypeGVKd;

typedef struct {
  D wrapper;
  D xep_;
} _KLfunctionGVKd;

typedef struct {
  D wrapper;
  D stretchy_representation_;
} _KLstretchy_object_vectorGVKe;

typedef struct {
  D wrapper;
} _KLobject_with_elementsGVKe;

typedef struct {
  D wrapper;
} _KLmutable_object_with_elementsGVKe;

typedef struct {
  D wrapper;
} _KLcollectionGVKd;

typedef struct {
  D wrapper;
  D element_type_;
} _KLlimited_collectionGVKe;

typedef struct {
  D wrapper;
} _KLstretchy_collectionGVKd;

typedef struct {
  D wrapper;
} _KLmutable_collectionGVKd;

typedef struct {
  D wrapper;
} _KLexplicit_key_collectionGVKd;

typedef struct {
  D wrapper;
} _KLmutable_explicit_key_collectionGVKd;

typedef struct {
  D wrapper;
  D element_type_;
  D table_vector_;
  D initial_entries_;
  D grow_size_function_;
  D weakQ_;
} _KLtableGVKd;

#define  define__KLstandalone_domainGVKe(nrepeated) \
  typedef struct { \
    D wrapper; \
    D domain_library_; \
    D domain_next_; \
    D domain_number_required_; \
    D domain_type_[nrepeated+1]; \
  } _KLstandalone_domainGVKe_##nrepeated;
define__KLstandalone_domainGVKe(1);

typedef struct {
  D wrapper;
  D instanceQ_iep_;
  D subclass_class_;
} _KLsubclassGVKe;

typedef struct {
  D wrapper;
  D signature_properties_;
  D signature_required_;
  D signature_keys_;
  D signature_key_types_;
} _KLkeyword_signatureGVKe;


/* Typedefs for defined classes */

typedef struct {
  D wrapper;
} _KLsealed_constructorGVgrammar_compiler;

typedef struct {
  D wrapper;
  D term_token_;
  D term_index_;
  D term_first_set_;
} _KLterminalGVgrammar_compiler;

typedef struct {
  D wrapper;
  D element_type_;
  D table_vector_;
  D initial_entries_;
  D grow_size_function_;
  D weakQ_;
} _KLitem_set_tableGVgrammar_compiler;

typedef struct {
  D wrapper;
  D grammar_conflict_terminal_;
  D grammar_conflict_action_1_;
  D grammar_conflict_rule_1_;
  D grammar_conflict_position_1_;
  D grammar_conflict_action_2_;
  D grammar_conflict_rule_2_;
  D grammar_conflict_position_2_;
} _KLgrammar_conflictGVgrammar_compiler;

typedef struct {
  D wrapper;
  D aentry_shiftQ_;
  D aentry_item_;
} _KLaction_entryGVgrammar_compiler;

typedef struct {
  D wrapper;
  D item_index_;
  D item_rule_;
  D item_lr1_closure_;
} _KLitemGVgrammar_compiler;

typedef struct {
  D wrapper;
  D rule_index_;
  D rule_lhs_;
  D rule_user_rule_;
  D rule_item_;
} _KLruleGVgrammar_compiler;

typedef struct {
  D wrapper;
  D term_token_;
  D term_index_;
  D term_first_set_;
  D nont_rules_;
  D nont_derivs_;
  D nont_epsilon_item_;
  D nont_error_rule_index_;
  D nont_deriv_first_set_;
} _KLnon_terminalGVgrammar_compiler;

typedef struct {
  D wrapper;
  D term_token_;
  D term_index_;
  D term_first_set_;
} _KLtermGVgrammar_compiler;

typedef struct {
  D wrapper;
  D pentry_from_key_;
  D pentry_goto_key_;
  D pentry_next_;
} _KLpropagation_entryGVgrammar_compiler;

typedef struct {
  D wrapper;
  D deriv_rule_to_;
  D deriv_rule_terminals_;
} _KLderiv_ruleGVgrammar_compiler;

typedef struct {
  D wrapper;
  D deriv_item_initial_;
  D deriv_item_result_;
  D deriv_item_terminal_;
} _KLderiv_itemGVgrammar_compiler;

typedef struct {
  D wrapper;
  D Pgrammar_user_rules_;
  D Pgrammar_user_error_rules_;
  D Pgrammar_terminal_tokens_;
  D Pgrammar_rules_;
  D Pgrammar_non_terminals_;
  D Pgrammar_items_;
  D Pgrammar_item_sets_;
  D Pgrammar_error_action_table_;
  D Pgrammar_lookaheads_;
  D Pgrammar_gotos_;
  D Pgrammar_actions_;
  D Pgrammar_propagation_queue_;
} _KLgvarsGVgrammar_compiler;

typedef struct {
  D wrapper;
  D grammar_rules_;
  D grammar_error_rules_;
  D grammar_terminals_;
  D grammar_goto_table_;
  D grammar_action_table_;
  D grammar_rule_reduction_table_;
} _KLgrammarGVgrammar_compiler;

typedef struct {
  D wrapper;
  D item_index_;
  D item_rule_;
  D item_lr1_closure_;
  D item_first_term_;
  D item_next_item_;
  D item_first_set_;
} _KLnon_empty_itemGVgrammar_compiler;

typedef struct {
  D wrapper;
  D item_index_;
  D item_rule_;
  D item_lr1_closure_;
} _KLempty_itemGVgrammar_compiler;


/* Referenced object declarations */

D KPadd_classVKeI (D);
D KPadd_nonsiblinged_domainVKnI (D, D);
extern _KLincremental_generic_functionGVKe KmakeVKd;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLincremental_generic_functionGVKe KinitializeVKd;
extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
extern _KLsymbolGVKd KJtoken_;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
D KPadd_a_methodVKnI (D, D, D, D, D, D);
extern _KLincremental_generic_functionGVKe Ktable_protocolVKd;
extern _KLlibraryGVKe Kgrammar_compiler_libraryYdylan_userVgrammar_compiler;
extern _KLclassGVKd KLlibraryGVKe;
extern _KLmm_wrapperGVKi_0 KLlibraryGVKeW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLclassGVKd KLimplementation_classGVKe;
extern _KLmm_wrapperGVKi_0 KLimplementation_classGVKeW;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
extern _KLclassGVKd KLconditionGVKd;
extern _KLmm_wrapperGVKi_0 KLconditionGVKdW;
extern _KLclassGVKd KLwarningGVKd;
extern _KLmm_wrapperGVKi_0 KLwarningGVKdW;
D KerrorVKdMM1I (D, D);
extern _KLclassGVKd KLsequenceGVKd;
extern _KLmm_wrapperGVKi_0 KLsequenceGVKdW;
extern _KLclassGVKd KLintegerGVKd;
extern _KLmm_wrapperGVKi_0 KLintegerGVKdW;
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
D Kunion_instanceQVKiI (D, D);
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
D Ksingleton_pointer_idQ_instanceQVKiI (D, D);
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLclassGVKd KLkeyword_signatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LclassG_typesVKi;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
extern _KLclassGVKd KLinstance_slot_descriptorGVKe;
extern _KLmm_wrapperGVKi_0 KLinstance_slot_descriptorGVKeW;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_1VKi;
extern _KLclassGVKd KLobject_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_signatureGVKeW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLclassGVKd KLpairGVKd;
extern _KLmm_wrapperGVKi_0 KLpairGVKdW;
extern _KLclassGVKd KLgetter_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLgetter_methodGVKiW;
D Kclass_instanceQ_initialVKiI (D, D);
extern _KLmoduleGVKe Kgrammar_compiler_moduleYdylan_userVgrammar_compiler;
extern _KLclassGVKd KLmoduleGVKe;
extern _KLmm_wrapperGVKi_0 KLmoduleGVKeW;
extern _KLkeyword_methodGVKe Kdefault_class_constructorVKi;
extern _KLclassGVKd KLlistGVKd;
extern _KLmm_wrapperGVKi_0 KLlistGVKdW;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_2VKi;
extern _KLclassGVKd KLsetter_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsetter_methodGVKiW;
D Kclass_instanceQ_rcpl_single_smallVKiI (D, D);
extern _KLclassGVKd KLlimited_integerGVKe;
extern _KLmm_wrapperGVKi_0 KLlimited_integerGVKeW;
D Kuninitialized_instanceQ_functionVKiI (D, D);
extern _KLsymbolGVKd KJnext_;
extern _KLsymbolGVKd KJto_;
D KasVKdMM41I (D, D);
D Kobject_classVKdI (D);
extern _KLsealed_generic_functionGVKe Kmap_as_oneVKi;
D KmakeVKdMM23I (D, D, D, D);
D Kmake_initial_stateVKiI (D);
D KmemberQVKdMM3I (D, D, D, D);
extern _KLsymbolGVKd KJlock_;
extern _KLsimple_methodGVKe KEEVKd;
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
D Klock_wait_result_errorYthreads_internalVdylanMM0I (D, D);
D Klock_release_result_errorYthreads_internalVdylanMM0I (D, D);
extern _KLsymbolGVKd KJsynchronization_;
extern _KLclassGVKd KLtimeout_expiredGYthreadsVdylan;
extern _KLmm_wrapperGVKi_0 KLtimeout_expiredGYthreadsVdylanW;
D KsignalVKdMM0I (D, D);
D Ktable_current_elementVKiI (D, D);
D Kexhausted_iterationVKiI (D);
D KgethashVKiI (D, D, D, D);
extern _KLsimple_methodGVKe KlognotVKd;
D KelementVKdMM11I (D, D, D, D);
extern _KLsealed_generic_functionGVKe Kunsupplied_objectVKi;
D Kelement_range_errorVKeI (D, D);
D Ktable_next_stateVKiI (D, D);
D KlistVKdI (D);
extern _KLincremental_generic_functionGVKe KconcatenateXYcommon_extensionsVcommon_dylan;
D KelementVKdMM25I (D, D, D, D);
extern _KLsealed_generic_functionGVKe KtailVKd;
D KEEVKdI (D, D);
D KsizeVKdMM30I (D);
extern _KLincremental_generic_functionGVKe KTVKd;
extern _KLclassGVKd KLsignatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_16 KDsignature_LintegerG_typesVKi;
D Kcurrent_threadYthreadsVdylanI ();
extern _KLfunction_classGVKi KLsimple_closure_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsimple_closure_methodGVKiW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLincremental_generic_functionGVKe KreverseXVKd;
extern _KLsymbolGVKd KJvalue_;
extern _KLsymbolGVKd KJtype_;
extern _KLclassGVKd KLtype_errorGVKd;
extern _KLmm_wrapperGVKi_0 KLtype_errorGVKdW;
extern _KLsealed_generic_functionGVKe KerrorVKd;
D KputhashVKiI (D, D, D);
extern _KLincremental_generic_functionGVKe KAVKd;
extern _KLincremental_generic_functionGVKe KchooseVKd;
extern _KLincremental_generic_functionGVKe KemptyQVKd;
extern _KLincremental_generic_functionGVKe Kforward_iteration_protocolVKd;
extern _KLincremental_generic_functionGVKe KmemberQVKd;
D Kconcatenate_asVKdMM4I (D, D, D);
extern _KLincremental_generic_functionGVKe Kremove_duplicatesVKd;
extern _KLsimple_object_vectorGVKd_16 KDsignature_LlistG_typesVKi;
extern _KLsealed_generic_functionGVKe KheadVKd;
extern _KLincremental_generic_functionGVKe KLVKd;
D Kadd_newVKdMM3I (D, D, D, D);
extern _KLsimple_object_vectorGVKd_16 KDsignature_LbooleanG_typesVKi;
extern _KLsimple_methodGVKe Kdefault_grow_sizeVKe;
D KLobject_tableGZ32ZconstructorVKiMM0I (D, D, D, D, D, D);
extern _KLclassGVKd KLobject_tableGVKd;
extern _KLmm_wrapperGVKi_0 KLobject_tableGVKdW;
extern _KLsealed_generic_functionGVKe KmapVKd;
D KLobject_setGZ32ZconstructorVKiMM0I (D, D);
extern _KLclassGVKd KLobject_setGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_setGVKeW;
D KaddXVKdMM14I (D, D);
D KmemberQVKdMM5I (D, D, D, D);
extern _KLsealed_generic_functionGVKe KconcatenateVKd;
extern _KLclassGVKd KLtypeGVKd;
extern _KLmm_wrapperGVKi_0 KLtypeGVKdW;
extern _KLinstance_slot_descriptorGVKe Ktable_vectorVKeHLtableG;
D Kinstall_and_return_make_method_init_dataVKiI (D);
extern _KLclassGVKd KLfunctionGVKd;
extern _KLmm_wrapperGVKi_0 KLfunctionGVKdW;
extern _KLkeyword_methodGVKe KinitializeVKdMM29;
extern _KLkeyword_methodGVKe KinitializeVKdMM1;
extern _KLsymbolGVKd KJkey_;
D KaddXVKdMM3I (D, D);
D KsortVKdMM0I (D, D, D, D);
D KreverseXVKdMM2I (D);
D KreduceVKdMM1I (D, D, D);
extern _KLsealed_generic_functionGVKe Ktail_setterVKd;
D Kmap_asVKdMM0I (D, D, D, D);
extern _KLsealed_generic_functionGVKe KsecondVKd;
extern _KLincremental_generic_functionGVKe KsizeVKd;
D Kassertion_failureVKiI (D, D);
D KLstretchy_object_vectorGZ32ZconstructorVKiMM0I (D, D);
extern _KLclassGVKd KLstretchy_object_vectorGVKe;
extern _KLmm_wrapperGVKi_0 KLstretchy_object_vectorGVKeW;
extern _KLsealed_generic_functionGVKe KfirstVKd;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LsequenceG_typesVKi;
extern _KLincremental_generic_functionGVKe KEVKd;
D Kmerge_hash_idsVKdI (D, D, D, D);
extern _KLsimple_object_vectorGVKd_2 KDsignature_LfunctionG_typesVKi;
extern _KLclassGVKd KLobject_with_elementsGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_with_elementsGVKeW;
extern _KLclassGVKd KLmutable_object_with_elementsGVKe;
extern _KLmm_wrapperGVKi_0 KLmutable_object_with_elementsGVKeW;
extern _KLclassGVKd KLcollectionGVKd;
extern _KLmm_wrapperGVKi_0 KLcollectionGVKdW;
extern _KLclassGVKd KLlimited_collectionGVKe;
extern _KLmm_wrapperGVKi_0 KLlimited_collectionGVKeW;
extern _KLclassGVKd KLstretchy_collectionGVKd;
extern _KLmm_wrapperGVKi_0 KLstretchy_collectionGVKdW;
extern _KLclassGVKd KLmutable_collectionGVKd;
extern _KLmm_wrapperGVKi_0 KLmutable_collectionGVKdW;
extern _KLclassGVKd KLexplicit_key_collectionGVKd;
extern _KLmm_wrapperGVKi_0 KLexplicit_key_collectionGVKdW;
extern _KLclassGVKd KLmutable_explicit_key_collectionGVKd;
extern _KLmm_wrapperGVKi_0 KLmutable_explicit_key_collectionGVKdW;
extern _KLclassGVKd KLtableGVKd;
extern _KLmm_wrapperGVKi_0 KLtableGVKdW;
extern _KLsymbolGVKd KJelement_type_;
extern _KLsymbolGVKd KJsize_;
extern _KLsymbolGVKd KJgrow_size_function_;
extern _KLsymbolGVKd KJweak_;
extern _KLinstance_slot_descriptorGVKe Kelement_typeVKeHLlimited_collectionG;
extern _KLinstance_slot_descriptorGVKe Kinitial_entriesVKiHLtableG;
extern _KLinstance_slot_descriptorGVKe Kgrow_size_functionVKeHLtableG;
extern _KLinstance_slot_descriptorGVKe KweakQVKiHLtableG;
extern _KLclassGVKd KLstandalone_domainGVKe;
extern _KLmm_wrapperGVKi_0 KLstandalone_domainGVKeW;
extern _KLclassGVKd KLsubclassGVKe;
extern _KLmm_wrapperGVKi_0 KLsubclassGVKeW;
D Ksubclass_instanceQVKiI (D, D);
extern _KLclassGVKd KLkeyword_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureGVKeW;
extern D TdebuggingQTVKi;
extern D Tdebug_partsTVKi;
extern D Tdebug_out_functionTVKi;
extern D Dtable_entry_emptyVKi;

/* Defined object declarations */

extern _KLclassGVKd KLsealed_constructorGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLsealed_constructorGVgrammar_compilerW;
extern _KLstandalone_domainGVKe_1 KmakeVKdRD_grammar_compilerRD_0;
extern _KLstandalone_domainGVKe_1 KinitializeVKdRD_grammar_compilerRD_0;
static _KLsymbolGVKd KJeoi_;
static _KLsymbolGVKd KJindex_;
D KLterminalGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
extern _KLclassGVKd KLterminalGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLterminalGVgrammar_compilerW;
extern _KLclassGVKd KLitem_set_tableGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLitem_set_tableGVgrammar_compilerW;
extern _KLsimple_methodGVKe Ktable_protocolVKdMgrammar_compilerM0;
D Ktable_protocolVKdMgrammar_compilerM0I (D);
extern _KLclassGVKd KLgrammar_conflictGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLgrammar_conflictGVgrammar_compilerW;
static _KLimplementation_classGVKe K22;
static _KLsimple_object_vectorGVKd_7 K23;
extern _KLkeyword_methodGVKe KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0;
D KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D, D, D, D, D);
static _KLsimple_object_vectorGVKd_2 K26;
static _KLsimple_object_vectorGVKd_6 K27;
static _KLsymbolGVKd KJterminal_;
static _KLbyte_stringGVKd_23 K29;
static _KLsymbolGVKd KJaction_1_;
static _KLsymbolGVKd KJrule_1_;
static _KLsymbolGVKd KJposition_1_;
static _KLsymbolGVKd KJaction_2_;
static _KLsymbolGVKd KJrule_2_;
static _KLsymbolGVKd KJposition_2_;
static _KLunionGVKe K36;
static _KLsingletonGVKd K37;
static _KLsingletonGVKd K38;
static _KLsymbolGVKd KJreduce_;
static _KLbyte_stringGVKd_6 K40;
static _KLsymbolGVKd KJshift_;
static _KLbyte_stringGVKd_5 K42;
static _KLbyte_stringGVKd_10 K43;
static _KLbyte_stringGVKd_6 K44;
static _KLbyte_stringGVKd_8 K45;
static _KLbyte_stringGVKd_10 K46;
static _KLbyte_stringGVKd_6 K47;
static _KLbyte_stringGVKd_8 K48;
static _KLbyte_stringGVKd_8 K49;
static _KLkeyword_signatureAvaluesGVKi K50;
static _KLsimple_object_vectorGVKd_14 K51;
static _KLsimple_object_vectorGVKd_7 K52;
static _KLsimple_object_vectorGVKd_1 K53;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_terminalVgrammar_compilerHLgrammar_conflictG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_action_1Vgrammar_compilerHLgrammar_conflictG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_rule_1Vgrammar_compilerHLgrammar_conflictG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_position_1Vgrammar_compilerHLgrammar_conflictG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_action_2Vgrammar_compilerHLgrammar_conflictG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_rule_2Vgrammar_compilerHLgrammar_conflictG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_conflict_position_2Vgrammar_compilerHLgrammar_conflictG;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_position_2Vgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_position_2Vgrammar_compilerMM0;
static _KLpairGVKd K63;
static _KLbyte_stringGVKd_27 K64;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_rule_2Vgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_rule_2Vgrammar_compilerMM0;
static _KLpairGVKd K67;
static _KLbyte_stringGVKd_23 K68;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_action_2Vgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_action_2Vgrammar_compilerMM0;
static _KLpairGVKd K71;
static _KLbyte_stringGVKd_25 K72;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_position_1Vgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_position_1Vgrammar_compilerMM0;
static _KLpairGVKd K75;
static _KLbyte_stringGVKd_27 K76;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_rule_1Vgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_rule_1Vgrammar_compilerMM0;
static _KLpairGVKd K79;
static _KLbyte_stringGVKd_23 K80;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_action_1Vgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_action_1Vgrammar_compilerMM0;
static _KLpairGVKd K83;
static _KLbyte_stringGVKd_25 K84;
extern _KLsealed_generic_functionGVKe Kgrammar_conflict_terminalVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_conflict_terminalVgrammar_compilerMM0;
static _KLpairGVKd K87;
static _KLbyte_stringGVKd_25 K88;
static _KLbyte_stringGVKd_18 K89;
extern _KLclassGVKd KLaction_entryGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLaction_entryGVgrammar_compilerW;
static _KLimplementation_classGVKe K92;
static _KLsimple_object_vectorGVKd_2 K93;
extern _KLkeyword_methodGVKe KLaction_entryGZ32ZconstructorVgrammar_compilerMM0;
D KLaction_entryGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
static _KLsimple_object_vectorGVKd_1 K96;
static _KLsimple_object_vectorGVKd_6 K97;
static _KLsymbolGVKd KJshiftQ_;
static _KLsymbolGVKd KJitem_;
extern _KLclassGVKd KLitemGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLitemGVgrammar_compilerW;
static _KLimplementation_classGVKe K102;
static _KLsimple_object_vectorGVKd_3 K103;
static _KLsimple_object_vectorGVKd_6 K104;
extern _KLinstance_slot_descriptorGVKe Kitem_indexVgrammar_compilerHLitemG;
extern _KLinstance_slot_descriptorGVKe Kitem_ruleVgrammar_compilerHLitemG;
extern _KLinstance_slot_descriptorGVKe Kitem_lr1_closureVgrammar_compilerHLitemG;
extern _KLsealed_generic_functionGVKe Kitem_lr1_closureVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Kitem_lr1_closure_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Kitem_lr1_closure_setterVgrammar_compilerMM0;
static _KLpairGVKd K111;
static _KLbyte_stringGVKd_23 K112;
extern _KLgetter_methodGVKi Kitem_lr1_closureVgrammar_compilerMM0;
static _KLpairGVKd K114;
static _KLbyte_stringGVKd_16 K115;
static _KLsymbolGVKd KJrule_;
extern _KLsealed_generic_functionGVKe Kitem_ruleVgrammar_compiler;
extern _KLclassGVKd KLruleGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLruleGVgrammar_compilerW;
static _KLimplementation_classGVKe K120;
static _KLsimple_object_vectorGVKd_4 K121;
extern _KLkeyword_methodGVKe KLruleGZ32ZconstructorVgrammar_compilerMM0;
D KLruleGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K124;
static _KLsymbolGVKd KJlhs_;
static _KLsymbolGVKd KJuser_rule_;
extern _KLlimited_integerGVKe KLindexGVgrammar_compiler;
extern _KLclassGVKd KLnon_terminalGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLnon_terminalGVgrammar_compilerW;
static _KLimplementation_classGVKe K130;
static _KLsimple_object_vectorGVKd_8 K131;
extern _KLkeyword_methodGVKe KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0;
D KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
static _KLsimple_object_vectorGVKd_1 K134;
static _KLsimple_object_vectorGVKd_6 K135;
static _KLsimple_object_vectorGVKd_5 K136;
extern _KLinstance_slot_descriptorGVKe Knont_rulesVgrammar_compilerHLnon_terminalG;
extern _KLinstance_slot_descriptorGVKe Knont_derivsVgrammar_compilerHLnon_terminalG;
extern _KLinstance_slot_descriptorGVKe Knont_epsilon_itemVgrammar_compilerHLnon_terminalG;
extern _KLinstance_slot_descriptorGVKe Knont_error_rule_indexVgrammar_compilerHLnon_terminalG;
extern _KLinstance_slot_descriptorGVKe Knont_deriv_first_setVgrammar_compilerHLnon_terminalG;
extern _KLsealed_generic_functionGVKe Knont_deriv_first_setVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Knont_deriv_first_set_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Knont_deriv_first_set_setterVgrammar_compilerMM0;
static _KLpairGVKd K145;
static _KLbyte_stringGVKd_27 K146;
extern _KLgetter_methodGVKi Knont_deriv_first_setVgrammar_compilerMM0;
static _KLpairGVKd K148;
static _KLbyte_stringGVKd_20 K149;
extern _KLsealed_generic_functionGVKe Knont_error_rule_indexVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Knont_error_rule_index_setterVgrammar_compiler;
static _KLunionGVKe K152;
static _KLsingletonGVKd K153;
extern _KLsetter_methodGVKi Knont_error_rule_index_setterVgrammar_compilerMM0;
static _KLpairGVKd K155;
static _KLbyte_stringGVKd_28 K156;
extern _KLgetter_methodGVKi Knont_error_rule_indexVgrammar_compilerMM0;
static _KLpairGVKd K158;
static _KLbyte_stringGVKd_21 K159;
extern _KLsealed_generic_functionGVKe Knont_epsilon_itemVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Knont_epsilon_item_setterVgrammar_compiler;
static _KLunionGVKe K162;
extern _KLsetter_methodGVKi Knont_epsilon_item_setterVgrammar_compilerMM0;
static _KLpairGVKd K164;
static _KLbyte_stringGVKd_24 K165;
extern _KLgetter_methodGVKi Knont_epsilon_itemVgrammar_compilerMM0;
static _KLpairGVKd K167;
static _KLbyte_stringGVKd_17 K168;
extern _KLsealed_generic_functionGVKe Knont_derivsVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Knont_derivs_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Knont_derivs_setterVgrammar_compilerMM0;
static _KLpairGVKd K172;
static _KLbyte_stringGVKd_18 K173;
extern _KLgetter_methodGVKi Knont_derivsVgrammar_compilerMM0;
static _KLpairGVKd K175;
static _KLbyte_stringGVKd_11 K176;
extern _KLsealed_generic_functionGVKe Knont_rulesVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Knont_rules_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Knont_rules_setterVgrammar_compilerMM0;
static _KLpairGVKd K180;
static _KLbyte_stringGVKd_17 K181;
extern _KLgetter_methodGVKi Knont_rulesVgrammar_compilerMM0;
static _KLpairGVKd K183;
static _KLbyte_stringGVKd_10 K184;
extern _KLclassGVKd KLtermGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLtermGVgrammar_compilerW;
static _KLimplementation_classGVKe K187;
static _KLsimple_object_vectorGVKd_3 K188;
extern _KLkeyword_methodGVKe KLtermGZ32ZconstructorVgrammar_compilerMM0;
D KLtermGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K191;
static _KLkeyword_signatureAvaluesGVKi K192;
static _KLsimple_object_vectorGVKd_4 K193;
static _KLsimple_object_vectorGVKd_2 K194;
extern _KLinstance_slot_descriptorGVKe Kterm_tokenVgrammar_compilerHLtermG;
extern _KLinstance_slot_descriptorGVKe Kterm_indexVgrammar_compilerHLtermG;
extern _KLinstance_slot_descriptorGVKe Kterm_first_setVgrammar_compilerHLtermG;
extern _KLsealed_generic_functionGVKe Kterm_first_setVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Kterm_first_set_setterVgrammar_compiler;
static _KLunionGVKe K200;
extern _KLsetter_methodGVKi Kterm_first_set_setterVgrammar_compilerMM0;
static _KLpairGVKd K202;
static _KLbyte_stringGVKd_21 K203;
extern _KLgetter_methodGVKi Kterm_first_setVgrammar_compilerMM0;
static _KLpairGVKd K205;
static _KLbyte_stringGVKd_14 K206;
extern _KLsealed_generic_functionGVKe Kterm_indexVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Kterm_index_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Kterm_index_setterVgrammar_compilerMM0;
static _KLpairGVKd K210;
static _KLbyte_stringGVKd_17 K211;
extern _KLgetter_methodGVKi Kterm_indexVgrammar_compilerMM0;
static _KLpairGVKd K213;
static _KLbyte_stringGVKd_10 K214;
extern _KLsealed_generic_functionGVKe Kterm_tokenVgrammar_compiler;
extern _KLgetter_methodGVKi Kterm_tokenVgrammar_compilerMM0;
static _KLpairGVKd K217;
static _KLbyte_stringGVKd_10 K218;
static _KLbyte_stringGVKd_6 K219;
static _KLkeyword_signatureAvaluesGVKi K220;
static _KLsimple_object_vectorGVKd_1 K221;
static _KLbyte_stringGVKd_14 K222;
static _KLbyte_stringGVKd_9 K223;
static _KLbyte_stringGVKd_3 K224;
static _KLkeyword_signatureAvaluesGVKi K225;
static _KLsimple_object_vectorGVKd_6 K226;
static _KLsimple_object_vectorGVKd_3 K227;
static _KLsimple_object_vectorGVKd_1 K228;
extern _KLinstance_slot_descriptorGVKe Krule_indexVgrammar_compilerHLruleG;
extern _KLinstance_slot_descriptorGVKe Krule_lhsVgrammar_compilerHLruleG;
extern _KLinstance_slot_descriptorGVKe Krule_user_ruleVgrammar_compilerHLruleG;
extern _KLinstance_slot_descriptorGVKe Krule_itemVgrammar_compilerHLruleG;
extern _KLsealed_generic_functionGVKe Krule_itemVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Krule_item_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Krule_item_setterVgrammar_compilerMM0;
static _KLpairGVKd K236;
static _KLbyte_stringGVKd_16 K237;
extern _KLgetter_methodGVKi Krule_itemVgrammar_compilerMM0;
static _KLpairGVKd K239;
static _KLbyte_stringGVKd_9 K240;
extern _KLsealed_generic_functionGVKe Krule_user_ruleVgrammar_compiler;
extern _KLgetter_methodGVKi Krule_user_ruleVgrammar_compilerMM0;
static _KLpairGVKd K243;
static _KLbyte_stringGVKd_14 K244;
extern _KLsealed_generic_functionGVKe Krule_lhsVgrammar_compiler;
extern _KLgetter_methodGVKi Krule_lhsVgrammar_compilerMM0;
static _KLpairGVKd K247;
static _KLbyte_stringGVKd_8 K248;
extern _KLsealed_generic_functionGVKe Krule_indexVgrammar_compiler;
extern _KLgetter_methodGVKi Krule_indexVgrammar_compilerMM0;
static _KLpairGVKd K251;
static _KLbyte_stringGVKd_10 K252;
static _KLbyte_stringGVKd_6 K253;
extern _KLgetter_methodGVKi Kitem_ruleVgrammar_compilerMM0;
static _KLpairGVKd K255;
static _KLbyte_stringGVKd_9 K256;
static _KLbyte_stringGVKd_4 K257;
extern _KLsealed_generic_functionGVKe Kitem_indexVgrammar_compiler;
extern _KLgetter_methodGVKi Kitem_indexVgrammar_compilerMM0;
static _KLpairGVKd K260;
static _KLbyte_stringGVKd_10 K261;
static _KLbyte_stringGVKd_6 K262;
static _KLbyte_stringGVKd_4 K263;
static _KLbyte_stringGVKd_6 K264;
static _KLkeyword_signatureAvaluesGVKi K265;
static _KLsimple_object_vectorGVKd_4 K266;
static _KLsimple_object_vectorGVKd_2 K267;
static _KLsimple_object_vectorGVKd_1 K268;
extern _KLinstance_slot_descriptorGVKe Kaentry_shiftQVgrammar_compilerHLaction_entryG;
extern _KLinstance_slot_descriptorGVKe Kaentry_itemVgrammar_compilerHLaction_entryG;
extern _KLsealed_generic_functionGVKe Kaentry_itemVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Kaentry_item_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Kaentry_item_setterVgrammar_compilerMM0;
static _KLpairGVKd K274;
static _KLbyte_stringGVKd_18 K275;
extern _KLgetter_methodGVKi Kaentry_itemVgrammar_compilerMM0;
static _KLpairGVKd K277;
static _KLbyte_stringGVKd_11 K278;
extern _KLsealed_generic_functionGVKe Kaentry_shiftQVgrammar_compiler;
extern _KLsealed_generic_functionGVKe Kaentry_shiftQ_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Kaentry_shiftQ_setterVgrammar_compilerMM0;
static _KLpairGVKd K282;
static _KLbyte_stringGVKd_20 K283;
extern _KLgetter_methodGVKi Kaentry_shiftQVgrammar_compilerMM0;
static _KLpairGVKd K285;
static _KLbyte_stringGVKd_13 K286;
static _KLbyte_stringGVKd_14 K287;
extern _KLclassGVKd KLpropagation_entryGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLpropagation_entryGVgrammar_compilerW;
static _KLimplementation_classGVKe K290;
static _KLsimple_object_vectorGVKd_3 K291;
extern _KLkeyword_methodGVKe KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0;
D KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K294;
static _KLsymbolGVKd KJfrom_key_;
static _KLsymbolGVKd KJgoto_key_;
static _KLunionGVKe K297;
static _KLbyte_stringGVKd_8 K298;
static _KLbyte_stringGVKd_8 K299;
static _KLkeyword_signatureAvaluesGVKi K300;
static _KLsimple_object_vectorGVKd_6 K301;
static _KLsimple_object_vectorGVKd_3 K302;
static _KLsimple_object_vectorGVKd_1 K303;
extern _KLinstance_slot_descriptorGVKe Kpentry_from_keyVgrammar_compilerHLpropagation_entryG;
extern _KLinstance_slot_descriptorGVKe Kpentry_goto_keyVgrammar_compilerHLpropagation_entryG;
extern _KLinstance_slot_descriptorGVKe Kpentry_nextVgrammar_compilerHLpropagation_entryG;
extern _KLsealed_generic_functionGVKe Kpentry_nextVgrammar_compiler;
extern _KLgetter_methodGVKi Kpentry_nextVgrammar_compilerMM0;
static _KLpairGVKd K309;
static _KLbyte_stringGVKd_11 K310;
extern _KLsealed_generic_functionGVKe Kpentry_goto_keyVgrammar_compiler;
extern _KLgetter_methodGVKi Kpentry_goto_keyVgrammar_compilerMM0;
static _KLpairGVKd K313;
static _KLbyte_stringGVKd_15 K314;
extern _KLsealed_generic_functionGVKe Kpentry_from_keyVgrammar_compiler;
extern _KLgetter_methodGVKi Kpentry_from_keyVgrammar_compilerMM0;
static _KLpairGVKd K317;
static _KLbyte_stringGVKd_15 K318;
static _KLbyte_stringGVKd_19 K319;
extern _KLclassGVKd KLderiv_ruleGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLderiv_ruleGVgrammar_compilerW;
static _KLimplementation_classGVKe K322;
static _KLsimple_object_vectorGVKd_2 K323;
extern _KLkeyword_methodGVKe KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0;
D KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K326;
static _KLsymbolGVKd KJterminals_;
static _KLbyte_stringGVKd_9 K328;
static _KLkeyword_signatureAvaluesGVKi K329;
static _KLsimple_object_vectorGVKd_4 K330;
static _KLsimple_object_vectorGVKd_2 K331;
static _KLsimple_object_vectorGVKd_1 K332;
extern _KLinstance_slot_descriptorGVKe Kderiv_rule_toVgrammar_compilerHLderiv_ruleG;
extern _KLinstance_slot_descriptorGVKe Kderiv_rule_terminalsVgrammar_compilerHLderiv_ruleG;
extern _KLsealed_generic_functionGVKe Kderiv_rule_terminalsVgrammar_compiler;
extern _KLgetter_methodGVKi Kderiv_rule_terminalsVgrammar_compilerMM0;
static _KLpairGVKd K337;
static _KLbyte_stringGVKd_20 K338;
extern _KLsealed_generic_functionGVKe Kderiv_rule_toVgrammar_compiler;
extern _KLgetter_methodGVKi Kderiv_rule_toVgrammar_compilerMM0;
static _KLpairGVKd K341;
static _KLbyte_stringGVKd_13 K342;
static _KLbyte_stringGVKd_12 K343;
extern _KLclassGVKd KLderiv_itemGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLderiv_itemGVgrammar_compilerW;
static _KLimplementation_classGVKe K346;
static _KLsimple_object_vectorGVKd_3 K347;
extern _KLkeyword_methodGVKe KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0;
D KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K350;
static _KLsymbolGVKd KJinitial_;
static _KLsymbolGVKd KJresult_;
static _KLunionGVKe K353;
static _KLbyte_stringGVKd_6 K354;
static _KLbyte_stringGVKd_7 K355;
static _KLkeyword_signatureAvaluesGVKi K356;
static _KLsimple_object_vectorGVKd_6 K357;
static _KLsimple_object_vectorGVKd_3 K358;
static _KLsimple_object_vectorGVKd_1 K359;
extern _KLinstance_slot_descriptorGVKe Kderiv_item_initialVgrammar_compilerHLderiv_itemG;
extern _KLinstance_slot_descriptorGVKe Kderiv_item_resultVgrammar_compilerHLderiv_itemG;
extern _KLinstance_slot_descriptorGVKe Kderiv_item_terminalVgrammar_compilerHLderiv_itemG;
extern _KLsealed_generic_functionGVKe Kderiv_item_terminalVgrammar_compiler;
extern _KLgetter_methodGVKi Kderiv_item_terminalVgrammar_compilerMM0;
static _KLpairGVKd K365;
static _KLbyte_stringGVKd_19 K366;
extern _KLsealed_generic_functionGVKe Kderiv_item_resultVgrammar_compiler;
extern _KLgetter_methodGVKi Kderiv_item_resultVgrammar_compilerMM0;
static _KLpairGVKd K369;
static _KLbyte_stringGVKd_17 K370;
extern _KLsealed_generic_functionGVKe Kderiv_item_initialVgrammar_compiler;
extern _KLgetter_methodGVKi Kderiv_item_initialVgrammar_compilerMM0;
static _KLpairGVKd K373;
static _KLbyte_stringGVKd_18 K374;
static _KLbyte_stringGVKd_12 K375;
extern _KLkeyword_methodGVKe Kcompile_grammar_rulesVgrammar_compiler;
D Kcompile_grammar_rulesVgrammar_compilerI (D, D, D);
static _KLsymbolGVKd KJuser_rules_;
static _KLsymbolGVKd KJuser_error_rules_;
D KLgvarsGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
extern _KLclassGVKd KLgvarsGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLgvarsGVgrammar_compilerW;
D Ksetup_symbolsVgrammar_compilerI (D);
D Ksetup_first_setsVgrammar_compilerI (D);
D Ksetup_derivsVgrammar_compilerI (D);
D Kcreate_parse_tableVgrammar_compilerI (D);
D Kdefine_actionsVgrammar_compilerI (D);
D Kmake_compiled_grammarVgrammar_compilerI (D);
extern _KLclassGVKd KLgrammarGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLgrammarGVgrammar_compilerW;
static _KLimplementation_classGVKe K391;
static _KLsimple_object_vectorGVKd_6 K392;
extern _KLkeyword_methodGVKe KLgrammarGZ32ZconstructorVgrammar_compilerMM0;
D KLgrammarGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K395;
static _KLsymbolGVKd KJrules_;
static _KLsymbolGVKd KJerror_rules_;
static _KLsymbolGVKd KJgoto_table_;
static _KLsymbolGVKd KJaction_table_;
static _KLsymbolGVKd KJrule_reduction_table_;
static _KLbyte_stringGVKd_20 K401;
static _KLbyte_stringGVKd_12 K402;
static _KLbyte_stringGVKd_10 K403;
static _KLbyte_stringGVKd_11 K404;
static _KLbyte_stringGVKd_5 K405;
static _KLkeyword_signatureAvaluesGVKi K406;
static _KLsimple_object_vectorGVKd_12 K407;
static _KLsimple_object_vectorGVKd_6 K408;
static _KLsimple_object_vectorGVKd_1 K409;
extern _KLinstance_slot_descriptorGVKe Kgrammar_rulesVgrammar_compilerHLgrammarG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_error_rulesVgrammar_compilerHLgrammarG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_terminalsVgrammar_compilerHLgrammarG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_goto_tableVgrammar_compilerHLgrammarG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_action_tableVgrammar_compilerHLgrammarG;
extern _KLinstance_slot_descriptorGVKe Kgrammar_rule_reduction_tableVgrammar_compilerHLgrammarG;
extern _KLsealed_generic_functionGVKe Kgrammar_rule_reduction_tableVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_rule_reduction_tableVgrammar_compilerMM0;
static _KLpairGVKd K418;
static _KLbyte_stringGVKd_28 K419;
extern _KLsealed_generic_functionGVKe Kgrammar_action_tableVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_action_tableVgrammar_compilerMM0;
static _KLpairGVKd K422;
static _KLbyte_stringGVKd_20 K423;
extern _KLsealed_generic_functionGVKe Kgrammar_goto_tableVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_goto_tableVgrammar_compilerMM0;
static _KLpairGVKd K426;
static _KLbyte_stringGVKd_18 K427;
extern _KLsealed_generic_functionGVKe Kgrammar_terminalsVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_terminalsVgrammar_compilerMM0;
static _KLpairGVKd K430;
static _KLbyte_stringGVKd_17 K431;
extern _KLsealed_generic_functionGVKe Kgrammar_error_rulesVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_error_rulesVgrammar_compilerMM0;
static _KLpairGVKd K434;
static _KLbyte_stringGVKd_19 K435;
extern _KLsealed_generic_functionGVKe Kgrammar_rulesVgrammar_compiler;
extern _KLgetter_methodGVKi Kgrammar_rulesVgrammar_compilerMM0;
static _KLpairGVKd K438;
static _KLbyte_stringGVKd_13 K439;
static _KLbyte_stringGVKd_9 K440;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_make_compiled_grammarF480;
static D Kanonymous_of_make_compiled_grammarF480I (D);
D Kexternalize_goto_tableVgrammar_compilerI (D);
D Kexternalize_action_tableVgrammar_compilerI (D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_action_tableF469;
static D Kanonymous_of_externalize_action_tableF469I ();
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_action_tableF467;
static D Kanonymous_of_externalize_action_tableF467I ();
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_action_tableF464;
static D Kanonymous_of_externalize_action_tableF464I ();
extern _KLsimple_methodGVKe Kkey_stateVgrammar_compiler;
D Kkey_stateVgrammar_compilerI (D key_);
extern _KLsimple_methodGVKe Kkey_valueVgrammar_compiler;
D Kkey_valueVgrammar_compilerI (D key_);
static _KLsymbolGVKd KJaccept_;
static _KLsymbolGVKd KJerror_;
static _KLbyte_stringGVKd_5 K457;
static _KLbyte_stringGVKd_6 K458;
static _KLsignatureAvaluesGVKi K459;
static _KLsimple_object_vectorGVKd_1 K460;
extern _KLlimited_integerGVKe KLstateGVgrammar_compiler;
static _KLsignatureAvaluesGVKi K462;
static _KLsimple_object_vectorGVKd_1 K463;
static _KLbyte_stringGVKd_31 K465;
static _KLsignatureGVKe K466;
static _KLbyte_stringGVKd_45 K468;
static _KLbyte_stringGVKd_33 K470;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_goto_tableF479;
static D Kanonymous_of_externalize_goto_tableF479I ();
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_goto_tableF478;
static D Kanonymous_of_externalize_goto_tableF478I ();
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_goto_tableF477;
static D Kanonymous_of_externalize_goto_tableF477I ();
static _KLsignatureGVKe K481;
D Kcompute_nont_deriv_first_setVgrammar_compilerI (D);
extern _KLsimple_methodGVKe Kmake_actionsVgrammar_compiler;
D Kmake_actionsVgrammar_compilerI (D, D);
extern _KLsimple_methodGVKe Kmake_actionVgrammar_compiler;
D Kmake_actionVgrammar_compilerI (D, D, D);
extern _KLclassGVKd KLnon_empty_itemGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLnon_empty_itemGVgrammar_compilerW;
extern _KLsealed_generic_functionGVKe Kitem_first_termVgrammar_compiler;
extern _KLsimple_methodGVKe Kset_shift_actionVgrammar_compiler;
D Kset_shift_actionVgrammar_compilerI (D, D, D, D);
extern _KLsimple_methodGVKe Kmake_derived_actionsVgrammar_compiler;
D Kmake_derived_actionsVgrammar_compilerI (D, D, D, D);
D Kmake_simple_reductionsVgrammar_compilerI (D, D, D);
D Kset_reduce_actionVgrammar_compilerI (D, D, D, D);
extern _KLsimple_methodGVKe Kset_actionVgrammar_compiler;
D Kset_actionVgrammar_compilerI (D, D, D, D, D);
static _KLunionGVKe K498;
extern _KLsimple_methodGVKe Kitem_rule_indexVgrammar_compiler;
D Kitem_rule_indexVgrammar_compilerI (D item_);
extern _KLsimple_methodGVKe Knote_conflictVgrammar_compiler;
D Knote_conflictVgrammar_compilerI (D, D, D, D, D);
static D Kitem_positionF504I (D);
extern _KLsealed_generic_functionGVKe Kitem_next_itemVgrammar_compiler;
extern _KLgetter_methodGVKi Kitem_next_itemVgrammar_compilerMM0;
static _KLpairGVKd K507;
static _KLbyte_stringGVKd_14 K508;
extern _KLinstance_slot_descriptorGVKe Kitem_next_itemVgrammar_compilerHLnon_empty_itemG;
static _KLsymbolGVKd KJnext_item_;
extern _KLsealed_generic_functionGVKe Kitem_next_item_setterVgrammar_compiler;
extern _KLsetter_methodGVKi Kitem_next_item_setterVgrammar_compilerMM0;
static _KLpairGVKd K513;
static _KLbyte_stringGVKd_21 K514;
static _KLbyte_stringGVKd_9 K515;
static _KLsignatureGVKe K516;
static _KLsimple_object_vectorGVKd_5 K517;
static _KLsignatureAvaluesGVKi K518;
static _KLsimple_object_vectorGVKd_1 K519;
static _KLsignatureGVKe K520;
static _KLsimple_object_vectorGVKd_5 K521;
D Kgenerate_shiftsVgrammar_compilerI (D, D, D, D);
D Kgenerate_errorsVgrammar_compilerI (D, D, D, D);
D Kgenerate_reductionsVgrammar_compilerI (D, D, D, D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_generate_reductionsF547;
static D Kanonymous_of_generate_reductionsF547I (D);
extern _KLsimple_methodGVKe Kitem_next_first_setVgrammar_compiler;
D Kitem_next_first_setVgrammar_compilerI (D);
extern _KLsealed_generic_functionGVKe Kitem_first_setVgrammar_compiler;
extern _KLsimple_methodGVKe Kcompute_item_first_setVgrammar_compiler;
D Kcompute_item_first_setVgrammar_compilerI (D);
extern _KLsealed_generic_functionGVKe Kitem_first_set_setterVgrammar_compiler;
static _KLpairGVKd K533;
extern _KLsetter_methodGVKi Kitem_first_set_setterVgrammar_compilerMM0;
static _KLpairGVKd K535;
static _KLbyte_stringGVKd_21 K536;
extern _KLinstance_slot_descriptorGVKe Kitem_first_setVgrammar_compilerHLnon_empty_itemG;
extern _KLsimple_methodGVKe Kcombine_first_setsVgrammar_compiler;
D Kcombine_first_setsVgrammar_compilerI (D, D);
static _KLunionGVKe K540;
static _KLsignatureAvaluesGVKi K541;
static _KLsignatureAvaluesGVKi K542;
static _KLsimple_object_vectorGVKd_1 K543;
extern _KLgetter_methodGVKi Kitem_first_setVgrammar_compilerMM0;
static _KLpairGVKd K545;
static _KLbyte_stringGVKd_14 K546;
extern _KLsimple_methodGVKe Kmaybe_set_error_actionVgrammar_compiler;
D Kmaybe_set_error_actionVgrammar_compilerI (D, D, D);
static _KLsignatureGVKe K550;
static _KLsimple_object_vectorGVKd_3 K551;
static _KLsignatureGVKe K552;
static _KLsimple_object_vectorGVKd_4 K553;
static _KLsignatureGVKe K554;
static _KLsimple_object_vectorGVKd_4 K555;
extern _KLgetter_methodGVKi Kitem_first_termVgrammar_compilerMM0;
static _KLpairGVKd K557;
static _KLbyte_stringGVKd_15 K558;
extern _KLinstance_slot_descriptorGVKe Kitem_first_termVgrammar_compilerHLnon_empty_itemG;
static _KLsymbolGVKd KJfirst_term_;
static _KLbyte_stringGVKd_10 K561;
static _KLimplementation_classGVKe K562;
static _KLsimple_object_vectorGVKd_6 K563;
extern _KLkeyword_methodGVKe KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0;
D KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D, D);
static _KLsimple_object_vectorGVKd_6 K566;
static _KLsimple_object_vectorGVKd_3 K567;
static _KLkeyword_signatureAvaluesGVKi K568;
static _KLsimple_object_vectorGVKd_8 K569;
static _KLsimple_object_vectorGVKd_4 K570;
static _KLbyte_stringGVKd_16 K571;
static _KLsignatureGVKe K572;
static _KLsimple_object_vectorGVKd_3 K573;
static _KLsignatureGVKe K574;
static _KLsimple_object_vectorGVKd_2 K575;
extern _KLsimple_methodGVKe Kitem_terminal_leftQVgrammar_compilerMM0;
D Kitem_terminal_leftQVgrammar_compilerMM0I (D item_);
static _KLsignatureGVKe K578;
D Kcompute_kernel_setsVgrammar_compilerI (D);
D Kinitialize_lookahead_tableVgrammar_compilerI (D);
D Kdetermine_lookaheadsVgrammar_compilerI (D);
D Kpropagate_the_lookaheadsVgrammar_compilerI (D);
extern _KLsimple_methodGVKe Kpropagate_a_lookaheadVgrammar_compiler;
D Kpropagate_a_lookaheadVgrammar_compilerI (D, D);
static _KLsignatureAvaluesGVKi K585;
static _KLsimple_object_vectorGVKd_2 K586;
D Kcompute_lr1_closureVgrammar_compilerI (D);
extern _KLsimple_methodGVKe Kadd_to_lookahead_tableVgrammar_compiler;
D Kadd_to_lookahead_tableVgrammar_compilerI (D, D, D, D);
extern _KLsimple_methodGVKe Kdetermine_state_lookaheadsVgrammar_compiler;
D Kdetermine_state_lookaheadsVgrammar_compilerI (D, D);
extern _KLsimple_methodGVKe Kgenerate_spontaneous_lookaheadVgrammar_compiler;
D Kgenerate_spontaneous_lookaheadVgrammar_compilerI (D gv_, D state_, D to_item_, D lookahead_);
extern _KLsimple_methodGVKe Kstate_item_lookaheads_setterVgrammar_compiler;
D Kstate_item_lookaheads_setterVgrammar_compilerI (D lookaheads_, D gv_, D state_, D item_);
static _KLsignatureGVKe K596;
static _KLsimple_object_vectorGVKd_4 K597;
static _KLsimple_closure_methodGVKi_0 Kintern_item_setF627;
static D Kintern_item_setF627I (D, D, D);
static _KLsimple_closure_methodGVKi_0 Kstate_transitionsF613;
static D Kstate_transitionsF613I (D);
D KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D, D, D);
static _KLsimple_closure_methodGVKi_0 KloopF605;
static D KloopF605I (D, D, D);
static _KLsignatureGVKe K606;
static _KLsimple_object_vectorGVKd_3 K607;
static _KLunionGVKe K608;
static _KLpairGVKd K609;
static _KLunionGVKe K610;
static _KLsingletonGVKd K611;
static _KLsingletonGVKd K612;
extern _KLsimple_methodGVKe Kstate_item_setVgrammar_compiler;
D Kstate_item_setVgrammar_compilerI (D gv_, D state_);
D Kmake_goto_tableVgrammar_compilerI (D, D);
extern _KLsimple_methodGVKe Kadd_to_goto_tableVgrammar_compiler;
D Kadd_to_goto_tableVgrammar_compilerI (D, D, D, D);
static _KLsignatureGVKe K619;
static _KLsimple_object_vectorGVKd_4 K620;
static _KLsimple_closure_methodGVKi_0 Kadd_gotoF623;
static D Kadd_gotoF623I (D, D, D);
static _KLsignatureGVKe K624;
static _KLsimple_object_vectorGVKd_3 K625;
static _KLsignatureAvaluesGVKi K626;
D Kmake_canonicalVgrammar_compilerI (D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_make_canonicalF631;
static D Kanonymous_of_make_canonicalF631I (D, D);
static _KLsignatureGVKe K632;
static _KLsimple_object_vectorGVKd_2 K633;
static _KLsignatureAvaluesGVKi K634;
D Kmake_deriv_rule_setVgrammar_compilerI (D);
D Kmake_initial_item_listVgrammar_compilerI (D);
extern _KLsimple_methodGVKe Kadd_derivVgrammar_compiler;
D Kadd_derivVgrammar_compilerI (D);
extern _KLsimple_methodGVKe Kapply_rulesVgrammar_compiler;
D Kapply_rulesVgrammar_compilerI (D, D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_apply_rulesF648;
static D Kanonymous_of_apply_rulesF648I (D, D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_apply_rulesF645;
static D Kanonymous_of_apply_rulesF645I (D, D, D);
static _KLsignatureGVKe K646;
static _KLsimple_object_vectorGVKd_3 K647;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_apply_rulesF651;
static D Kanonymous_of_apply_rulesF651I (D, D);
static _KLsignatureGVKe K652;
static _KLsimple_object_vectorGVKd_2 K653;
static _KLsignatureGVKe K654;
static _KLsimple_object_vectorGVKd_2 K655;
static _KLsignatureAvaluesGVKi K656;
static _KLsimple_object_vectorGVKd_2 K657;
D KassocVgrammar_compilerI (D, D);
static D KloopF662I (D, D, D, D);
static _KLunionGVKe K660;
static _KLsimple_closure_methodGVKi_0 KloopF662;
static _KLsignatureGVKe K663;
static _KLsimple_object_vectorGVKd_4 K664;
static _KLsignatureGVKe K665;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_make_initial_item_listF668;
static D Kanonymous_of_make_initial_item_listF668I (D);
static _KLsignatureGVKe K669;
D Kcompute_first_setVgrammar_compilerI (D, D, D);
static _KLsimple_closure_methodGVKi_0 Kdo_itemF673;
static D Kdo_itemF673I (D, D, D);
extern _KLsimple_methodGVKe Kcompute_first_setVgrammar_compiler;
static _KLsignatureAvaluesGVKi K675;
static _KLsimple_object_vectorGVKd_3 K676;
static _KLsignatureGVKe K677;
static _KLsimple_object_vectorGVKd_3 K678;
static _KLbyte_stringGVKd_31 K679;
extern _KLsealed_generic_functionGVKe KPgrammar_non_terminals_setterVgrammar_compiler;
static _KLbyte_stringGVKd_26 K681;
static _KLbyte_stringGVKd_27 K682;
D KLempty_itemGZ32ZconstructorVgrammar_compilerMM0I (D, D, D, D);
extern _KLclassGVKd KLempty_itemGVgrammar_compiler;
extern _KLmm_wrapperGVKi_0 KLempty_itemGVgrammar_compilerW;
static _KLbyte_stringGVKd_27 K686;
extern _KLsealed_generic_functionGVKe KPgrammar_terminal_tokens_setterVgrammar_compiler;
extern _KLsetter_methodGVKi KPgrammar_terminal_tokens_setterVgrammar_compilerMM0;
static _KLpairGVKd K689;
static _KLbyte_stringGVKd_31 K690;
extern _KLinstance_slot_descriptorGVKe KPgrammar_terminal_tokensVgrammar_compilerHLgvarsG;
extern _KLsealed_generic_functionGVKe KPgrammar_terminal_tokensVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_terminal_tokensVgrammar_compilerMM0;
static _KLpairGVKd K694;
static _KLbyte_stringGVKd_24 K695;
static _KLimplementation_classGVKe K696;
extern _KLkeyword_methodGVKe KLempty_itemGZ32ZconstructorVgrammar_compilerMM0;
static _KLsimple_object_vectorGVKd_6 K698;
static _KLkeyword_signatureAvaluesGVKi K699;
static _KLsimple_object_vectorGVKd_4 K700;
static _KLsimple_object_vectorGVKd_2 K701;
static _KLsimple_object_vectorGVKd_1 K702;
static _KLbyte_stringGVKd_12 K703;
extern _KLsetter_methodGVKi KPgrammar_non_terminals_setterVgrammar_compilerMM0;
static _KLpairGVKd K705;
static _KLbyte_stringGVKd_29 K706;
extern _KLinstance_slot_descriptorGVKe KPgrammar_non_terminalsVgrammar_compilerHLgvarsG;
extern _KLsealed_generic_functionGVKe KPgrammar_non_terminalsVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_non_terminalsVgrammar_compilerMM0;
static _KLpairGVKd K710;
static _KLbyte_stringGVKd_22 K711;
static _KLimplementation_classGVKe K712;
static _KLsimple_object_vectorGVKd_12 K713;
extern _KLkeyword_methodGVKe KLgvarsGZ32ZconstructorVgrammar_compilerMM0;
static _KLsimple_object_vectorGVKd_6 K715;
static _KLkeyword_signatureAvaluesGVKi K716;
static _KLsimple_object_vectorGVKd_4 K717;
static _KLsimple_object_vectorGVKd_2 K718;
static _KLsimple_object_vectorGVKd_1 K719;
extern _KLinstance_slot_descriptorGVKe KPgrammar_user_rulesVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_user_error_rulesVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_rulesVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_itemsVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_item_setsVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_error_action_tableVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_lookaheadsVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_gotosVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_actionsVgrammar_compilerHLgvarsG;
extern _KLinstance_slot_descriptorGVKe KPgrammar_propagation_queueVgrammar_compilerHLgvarsG;
extern _KLsealed_generic_functionGVKe KPgrammar_propagation_queueVgrammar_compiler;
extern _KLsealed_generic_functionGVKe KPgrammar_propagation_queue_setterVgrammar_compiler;
extern _KLsetter_methodGVKi KPgrammar_propagation_queue_setterVgrammar_compilerMM0;
static _KLpairGVKd K733;
static _KLbyte_stringGVKd_33 K734;
extern _KLgetter_methodGVKi KPgrammar_propagation_queueVgrammar_compilerMM0;
static _KLpairGVKd K736;
static _KLbyte_stringGVKd_26 K737;
static _KLsimple_closure_methodGVKi_0 K744;
static D K744I ();
extern _KLsealed_generic_functionGVKe KPgrammar_actionsVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_actionsVgrammar_compilerMM0;
static _KLpairGVKd K742;
static _KLbyte_stringGVKd_16 K743;
static _KLsignatureGVKe K745;
static _KLsimple_closure_methodGVKi_0 K752;
static D K752I ();
extern _KLsealed_generic_functionGVKe KPgrammar_gotosVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_gotosVgrammar_compilerMM0;
static _KLpairGVKd K750;
static _KLbyte_stringGVKd_14 K751;
static _KLsimple_closure_methodGVKi_0 K759;
static D K759I ();
extern _KLsealed_generic_functionGVKe KPgrammar_lookaheadsVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_lookaheadsVgrammar_compilerMM0;
static _KLpairGVKd K757;
static _KLbyte_stringGVKd_19 K758;
static _KLsimple_closure_methodGVKi_0 K766;
static D K766I ();
extern _KLsealed_generic_functionGVKe KPgrammar_error_action_tableVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_error_action_tableVgrammar_compilerMM0;
static _KLpairGVKd K764;
static _KLbyte_stringGVKd_27 K765;
static _KLsimple_closure_methodGVKi_0 K773;
static D K773I ();
extern _KLsealed_generic_functionGVKe KPgrammar_item_setsVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_item_setsVgrammar_compilerMM0;
static _KLpairGVKd K771;
static _KLbyte_stringGVKd_18 K772;
extern _KLsealed_generic_functionGVKe KPgrammar_itemsVgrammar_compiler;
extern _KLsealed_generic_functionGVKe KPgrammar_items_setterVgrammar_compiler;
extern _KLsetter_methodGVKi KPgrammar_items_setterVgrammar_compilerMM0;
static _KLpairGVKd K777;
static _KLbyte_stringGVKd_21 K778;
extern _KLgetter_methodGVKi KPgrammar_itemsVgrammar_compilerMM0;
static _KLpairGVKd K780;
static _KLbyte_stringGVKd_14 K781;
extern _KLsealed_generic_functionGVKe KPgrammar_rulesVgrammar_compiler;
extern _KLsealed_generic_functionGVKe KPgrammar_rules_setterVgrammar_compiler;
extern _KLsetter_methodGVKi KPgrammar_rules_setterVgrammar_compilerMM0;
static _KLpairGVKd K785;
static _KLbyte_stringGVKd_21 K786;
extern _KLgetter_methodGVKi KPgrammar_rulesVgrammar_compilerMM0;
static _KLpairGVKd K788;
static _KLbyte_stringGVKd_14 K789;
extern _KLsealed_generic_functionGVKe KPgrammar_user_error_rulesVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_user_error_rulesVgrammar_compilerMM0;
static _KLpairGVKd K792;
static _KLbyte_stringGVKd_25 K793;
extern _KLsealed_generic_functionGVKe KPgrammar_user_rulesVgrammar_compiler;
extern _KLgetter_methodGVKi KPgrammar_user_rulesVgrammar_compilerMM0;
static _KLpairGVKd K796;
static _KLbyte_stringGVKd_19 K797;
static _KLbyte_stringGVKd_7 K798;
static D K808I ();
static D K807I ();
static D K806I ();
static D K805I ();
static D K804I ();
static _KLbyte_stringGVKd_16 K809;
static _KLbyte_stringGVKd_10 K810;
static _KLkeyword_signatureAvaluesGVKi K811;
static _KLsimple_object_vectorGVKd_2 K812;
static _KLsimple_object_vectorGVKd_1 K813;
extern _KLsimple_methodGVKe Kitem_set_hashVgrammar_compiler;
D Kitem_set_hashVgrammar_compilerI (D, D);
static _KLsignatureAvaluesGVKi K816;
static _KLsimple_object_vectorGVKd_2 K817;
static _KLsignatureAvaluesGVKi K818;
static _KLsimple_object_vectorGVKd_1 K819;
static _KLimplementation_classGVKe K820;
static _KLsimple_object_vectorGVKd_5 K821;
extern _KLkeyword_methodGVKe KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0;
static _KLsimple_object_vectorGVKd_2 K823;
static _KLsimple_object_vectorGVKd_12 K824;
static _KLkeyword_signatureAvaluesGVKi K825;
static _KLsimple_object_vectorGVKd_8 K826;
static _KLsimple_object_vectorGVKd_4 K827;
static _KLbyte_stringGVKd_16 K828;
static _KLimplementation_classGVKe K829;
extern _KLkeyword_methodGVKe KLterminalGZ32ZconstructorVgrammar_compilerMM0;
static _KLsimple_object_vectorGVKd_6 K831;
static _KLkeyword_signatureAvaluesGVKi K832;
static _KLsimple_object_vectorGVKd_1 K833;
static _KLbyte_stringGVKd_10 K834;
D KinitializeVKdMgrammar_compilerM0I (D, D);
static _KLbyte_stringGVKd_5 K836;
static _KLbyte_stringGVKd_3 K837;
static _KLsubclassGVKe K838;
static _KLimplementation_classGVKe K839;
static _KLsimple_object_vectorGVKd_1 K840;
static _KLsimple_object_vectorGVKd_6 K841;
static _KLsimple_object_vectorGVKd_11 K842;
static _KLbyte_stringGVKd_20 K843;
extern _KLsimple_methodGVKe KemptyQVKdMgrammar_compilerM0;
D KemptyQVKdMgrammar_compilerM0I (D x_);
extern _KLkeyword_methodGVKe KinitializeVKdMgrammar_compilerM0;
static _KLkeyword_signatureGVKe K849;
static _KLsignatureAvaluesGVKi K850;
static _KLpairGVKd K851;
static _KLpairGVKd K852;
static _KLpairGVKd K853;
static _KLpairGVKd K854;
static _KLpairGVKd K855;
static _KLpairGVKd K856;
static _KLpairGVKd K857;
static _KLpairGVKd K858;
static _KLpairGVKd K859;
static _KLpairGVKd K860;
static _KLpairGVKd K861;
static _KLpairGVKd K862;
static _KLpairGVKd K863;
static _KLpairGVKd K864;
static _KLpairGVKd K865;

/* Indirection variables */

static D IKJeoi_ = &KJeoi_;
static D IKJindex_ = &KJindex_;
static D IKJterminal_ = &KJterminal_;
static D IKJaction_1_ = &KJaction_1_;
static D IKJrule_1_ = &KJrule_1_;
static D IKJposition_1_ = &KJposition_1_;
static D IKJaction_2_ = &KJaction_2_;
static D IKJrule_2_ = &KJrule_2_;
static D IKJposition_2_ = &KJposition_2_;
static D IKJreduce_ = &KJreduce_;
static D IKJshift_ = &KJshift_;
static D IKJshiftQ_ = &KJshiftQ_;
static D IKJitem_ = &KJitem_;
static D IKJrule_ = &KJrule_;
static D IKJlhs_ = &KJlhs_;
static D IKJuser_rule_ = &KJuser_rule_;
static D IKJfrom_key_ = &KJfrom_key_;
static D IKJgoto_key_ = &KJgoto_key_;
static D IKJterminals_ = &KJterminals_;
static D IKJinitial_ = &KJinitial_;
static D IKJresult_ = &KJresult_;
static D IKJuser_rules_ = &KJuser_rules_;
static D IKJuser_error_rules_ = &KJuser_error_rules_;
static D IKJrules_ = &KJrules_;
static D IKJerror_rules_ = &KJerror_rules_;
static D IKJgoto_table_ = &KJgoto_table_;
static D IKJaction_table_ = &KJaction_table_;
static D IKJrule_reduction_table_ = &KJrule_reduction_table_;
static D IKJaccept_ = &KJaccept_;
static D IKJerror_ = &KJerror_;
static D IKJnext_item_ = &KJnext_item_;
static D IKJfirst_term_ = &KJfirst_term_;

/* Variables */

D grammar_conflict_terminalVgrammar_compiler = &Kgrammar_conflict_terminalVgrammar_compiler;
D grammar_conflict_action_1Vgrammar_compiler = &Kgrammar_conflict_action_1Vgrammar_compiler;
D grammar_conflict_rule_1Vgrammar_compiler = &Kgrammar_conflict_rule_1Vgrammar_compiler;
D grammar_conflict_position_1Vgrammar_compiler = &Kgrammar_conflict_position_1Vgrammar_compiler;
D grammar_conflict_action_2Vgrammar_compiler = &Kgrammar_conflict_action_2Vgrammar_compiler;
D grammar_conflict_rule_2Vgrammar_compiler = &Kgrammar_conflict_rule_2Vgrammar_compiler;
D grammar_conflict_position_2Vgrammar_compiler = &Kgrammar_conflict_position_2Vgrammar_compiler;
D grammar_rulesVgrammar_compiler = &Kgrammar_rulesVgrammar_compiler;
D grammar_error_rulesVgrammar_compiler = &Kgrammar_error_rulesVgrammar_compiler;
D grammar_terminalsVgrammar_compiler = &Kgrammar_terminalsVgrammar_compiler;
D grammar_goto_tableVgrammar_compiler = &Kgrammar_goto_tableVgrammar_compiler;
D grammar_action_tableVgrammar_compiler = &Kgrammar_action_tableVgrammar_compiler;
D grammar_rule_reduction_tableVgrammar_compiler = &Kgrammar_rule_reduction_tableVgrammar_compiler;
D Lsealed_constructorGVgrammar_compiler = &KLsealed_constructorGVgrammar_compiler;
D LruleGVgrammar_compiler = &KLruleGVgrammar_compiler;
D LtermGVgrammar_compiler = &KLtermGVgrammar_compiler;
D LterminalGVgrammar_compiler = &KLterminalGVgrammar_compiler;
D Lnon_terminalGVgrammar_compiler = &KLnon_terminalGVgrammar_compiler;
D Deoi_termVgrammar_compiler = &KPunboundVKi;
D LitemGVgrammar_compiler = &KLitemGVgrammar_compiler;
D Litem_set_tableGVgrammar_compiler = &KLitem_set_tableGVgrammar_compiler;
D Lempty_itemGVgrammar_compiler = &KLempty_itemGVgrammar_compiler;
D Lnon_empty_itemGVgrammar_compiler = &KLnon_empty_itemGVgrammar_compiler;
D LgrammarGVgrammar_compiler = &KLgrammarGVgrammar_compiler;
D LgvarsGVgrammar_compiler = &KLgvarsGVgrammar_compiler;
D compile_grammar_rulesVgrammar_compiler = &Kcompile_grammar_rulesVgrammar_compiler;
D Lderiv_itemGVgrammar_compiler = &KLderiv_itemGVgrammar_compiler;
D Lderiv_ruleGVgrammar_compiler = &KLderiv_ruleGVgrammar_compiler;
D Lpropagation_entryGVgrammar_compiler = &KLpropagation_entryGVgrammar_compiler;
D Laction_entryGVgrammar_compiler = &KLaction_entryGVgrammar_compiler;
D Lgrammar_conflictGVgrammar_compiler = &KLgrammar_conflictGVgrammar_compiler;

/* Objects */

_KLclassGVKd KLsealed_constructorGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_rcpl_single_smallVKiI,
  &K843,
  &K839,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLsealed_constructorGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K839,
  (D) 1,
  1,
  33554439,
  (D) 1
};

_KLstandalone_domainGVKe_1 KmakeVKdRD_grammar_compilerRD_0 = {
  &KLstandalone_domainGVKeW /* wrapper */,
  &Kgrammar_compiler_libraryYdylan_userVgrammar_compiler,
  &KPfalseVKi,
  (D) 5,
  &K838
};

_KLstandalone_domainGVKe_1 KinitializeVKdRD_grammar_compilerRD_0 = {
  &KLstandalone_domainGVKeW /* wrapper */,
  &Kgrammar_compiler_libraryYdylan_userVgrammar_compiler,
  &KPfalseVKi,
  (D) 5,
  &KLsealed_constructorGVgrammar_compiler
};

static _KLsymbolGVKd KJeoi_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K837
};

static _KLsymbolGVKd KJindex_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K836
};

_KLclassGVKd KLterminalGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K834,
  &K829,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLterminalGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K829,
  (D) 1,
  13,
  33554439,
  (D) 1
};

_KLclassGVKd KLitem_set_tableGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K828,
  &K820,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLitem_set_tableGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K820,
  (D) 4097,
  21,
  33554439,
  (D) 1
};

_KLsimple_methodGVKe Ktable_protocolVKdMgrammar_compilerM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K818,
  &Ktable_protocolVKdMgrammar_compilerM0I
};

_KLclassGVKd KLgrammar_conflictGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K89,
  &K22,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLgrammar_conflictGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K22,
  (D) 1,
  29,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K22 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 477102109,
  &KLgrammar_conflictGVgrammar_compiler,
  &KLgrammar_conflictGVgrammar_compilerW,
  &KPfalseVKi,
  &K23,
  (D) -3,
  &KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0,
  &K26,
  &K27,
  (D) 17,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K23,
  &K23,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_7 K23 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 29,
  &Kgrammar_conflict_terminalVgrammar_compilerHLgrammar_conflictG,
  &Kgrammar_conflict_action_1Vgrammar_compilerHLgrammar_conflictG,
  &Kgrammar_conflict_rule_1Vgrammar_compilerHLgrammar_conflictG,
  &Kgrammar_conflict_position_1Vgrammar_compilerHLgrammar_conflictG,
  &Kgrammar_conflict_action_2Vgrammar_compilerHLgrammar_conflictG,
  &Kgrammar_conflict_rule_2Vgrammar_compilerHLgrammar_conflictG,
  &Kgrammar_conflict_position_2Vgrammar_compilerHLgrammar_conflictG
};

_KLkeyword_methodGVKe KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_9,
  &K50,
  &key_mep_2,
  &KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0I,
  &K51
};

static _KLsimple_object_vectorGVKd_2 K26 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLwarningGVKd,
  &KLsealed_constructorGVgrammar_compiler
};

static _KLsimple_object_vectorGVKd_6 K27 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLconditionGVKd,
  &KLwarningGVKd,
  &KLgrammar_conflictGVgrammar_compiler,
  &KPfalseVKi
};

static _KLsymbolGVKd KJterminal_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K49
};

static _KLbyte_stringGVKd_23 K29 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 93,
  "Missing init keyword %="
};

static _KLsymbolGVKd KJaction_1_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K48
};

static _KLsymbolGVKd KJrule_1_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K47
};

static _KLsymbolGVKd KJposition_1_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K46
};

static _KLsymbolGVKd KJaction_2_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K45
};

static _KLsymbolGVKd KJrule_2_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K44
};

static _KLsymbolGVKd KJposition_2_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K43
};

static _KLunionGVKe K36 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K37,
  &K38
};

static _KLsingletonGVKd K37 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KJshift_
};

static _KLsingletonGVKd K38 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KJreduce_
};

static _KLsymbolGVKd KJreduce_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K40
};

static _KLbyte_stringGVKd_6 K40 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "reduce"
};

static _KLsymbolGVKd KJshift_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K42
};

static _KLbyte_stringGVKd_5 K42 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "shift"
};

static _KLbyte_stringGVKd_10 K43 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "position-2"
};

static _KLbyte_stringGVKd_6 K44 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "rule-2"
};

static _KLbyte_stringGVKd_8 K45 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "action-2"
};

static _KLbyte_stringGVKd_10 K46 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "position-1"
};

static _KLbyte_stringGVKd_6 K47 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "rule-1"
};

static _KLbyte_stringGVKd_8 K48 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "action-1"
};

static _KLbyte_stringGVKd_8 K49 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "terminal"
};

static _KLkeyword_signatureAvaluesGVKi K50 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K52,
  &KDsignature_LobjectG_typesVKi,
  &K53
};

static _KLsimple_object_vectorGVKd_14 K51 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 57,
  &KJterminal_,
  &KPunboundVKi,
  &KJaction_1_,
  &KPunboundVKi,
  &KJrule_1_,
  &KPunboundVKi,
  &KJposition_1_,
  &KPunboundVKi,
  &KJaction_2_,
  &KPunboundVKi,
  &KJrule_2_,
  &KPunboundVKi,
  &KJposition_2_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_7 K52 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 29,
  &KJterminal_,
  &KJaction_1_,
  &KJrule_1_,
  &KJposition_1_,
  &KJaction_2_,
  &KJrule_2_,
  &KJposition_2_
};

static _KLsimple_object_vectorGVKd_1 K53 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLgrammar_conflictGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_terminalVgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJterminal_,
  &Kgrammar_conflict_terminalVgrammar_compiler,
  &KPfalseVKi,
  &KLobjectGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_action_1Vgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJaction_1_,
  &Kgrammar_conflict_action_1Vgrammar_compiler,
  &KPfalseVKi,
  &K36
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_rule_1Vgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJrule_1_,
  &Kgrammar_conflict_rule_1Vgrammar_compiler,
  &KPfalseVKi,
  &KLsequenceGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_position_1Vgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJposition_1_,
  &Kgrammar_conflict_position_1Vgrammar_compiler,
  &KPfalseVKi,
  &KLintegerGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_action_2Vgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJaction_2_,
  &Kgrammar_conflict_action_2Vgrammar_compiler,
  &KPfalseVKi,
  &K36
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_rule_2Vgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJrule_2_,
  &Kgrammar_conflict_rule_2Vgrammar_compiler,
  &KPfalseVKi,
  &KLsequenceGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_conflict_position_2Vgrammar_compilerHLgrammar_conflictG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammar_conflictGVgrammar_compiler,
  &KJposition_2_,
  &Kgrammar_conflict_position_2Vgrammar_compiler,
  &KPfalseVKi,
  &KLintegerGVKd
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_position_2Vgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K64,
  &K63,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_position_2Vgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_position_2Vgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K63 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_position_2Vgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_27 K64 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "grammar-conflict-position-2"
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_rule_2Vgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K68,
  &K67,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_rule_2Vgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_rule_2Vgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K67 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_rule_2Vgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_23 K68 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 93,
  "grammar-conflict-rule-2"
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_action_2Vgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K72,
  &K71,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_action_2Vgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_action_2Vgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K71 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_action_2Vgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_25 K72 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 101,
  "grammar-conflict-action-2"
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_position_1Vgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K76,
  &K75,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_position_1Vgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_position_1Vgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K75 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_position_1Vgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_27 K76 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "grammar-conflict-position-1"
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_rule_1Vgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K80,
  &K79,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_rule_1Vgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_rule_1Vgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K79 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_rule_1Vgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_23 K80 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 93,
  "grammar-conflict-rule-1"
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_action_1Vgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K84,
  &K83,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_action_1Vgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_action_1Vgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K83 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_action_1Vgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_25 K84 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 101,
  "grammar-conflict-action-1"
};

_KLsealed_generic_functionGVKe Kgrammar_conflict_terminalVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K88,
  &K87,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_conflict_terminalVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_conflict_terminalVgrammar_compilerHLgrammar_conflictG
};

static _KLpairGVKd K87 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_conflict_terminalVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_25 K88 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 101,
  "grammar-conflict-terminal"
};

static _KLbyte_stringGVKd_18 K89 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 73,
  "<grammar-conflict>"
};

_KLclassGVKd KLaction_entryGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K287,
  &K92,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLaction_entryGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K92,
  (D) 1,
  9,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K92 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433737,
  &KLaction_entryGVgrammar_compiler,
  &KLaction_entryGVgrammar_compilerW,
  &KPfalseVKi,
  &K93,
  (D) -3,
  &KLaction_entryGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K97,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K93,
  &K93,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_2 K93 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &Kaentry_shiftQVgrammar_compilerHLaction_entryG,
  &Kaentry_itemVgrammar_compilerHLaction_entryG
};

_KLkeyword_methodGVKe KLaction_entryGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K265,
  &key_mep_2,
  &KLaction_entryGZ32ZconstructorVgrammar_compilerMM0I,
  &K266
};

static _KLsimple_object_vectorGVKd_1 K96 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLsealed_constructorGVgrammar_compiler
};

static _KLsimple_object_vectorGVKd_6 K97 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLaction_entryGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsymbolGVKd KJshiftQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K264
};

static _KLsymbolGVKd KJitem_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K263
};

_KLclassGVKd KLitemGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_rcpl_single_smallVKiI,
  &K262,
  &K102,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLitemGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K102,
  (D) 1,
  13,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K102 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 460587021,
  &KLitemGVgrammar_compiler,
  &KLitemGVgrammar_compilerW,
  &KPfalseVKi,
  &K103,
  (D) -3,
  &Kdefault_class_constructorVKi,
  &K96,
  &K104,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &K864,
  &KPempty_vectorVKi,
  &K103,
  &K103,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_3 K103 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &Kitem_indexVgrammar_compilerHLitemG,
  &Kitem_ruleVgrammar_compilerHLitemG,
  &Kitem_lr1_closureVgrammar_compilerHLitemG
};

static _KLsimple_object_vectorGVKd_6 K104 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLitemGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

_KLinstance_slot_descriptorGVKe Kitem_indexVgrammar_compilerHLitemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLitemGVgrammar_compiler,
  &KJindex_,
  &Kitem_indexVgrammar_compiler,
  &KPfalseVKi,
  &KLindexGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kitem_ruleVgrammar_compilerHLitemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLitemGVgrammar_compiler,
  &KJrule_,
  &Kitem_ruleVgrammar_compiler,
  &KPfalseVKi,
  &KLruleGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kitem_lr1_closureVgrammar_compilerHLitemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_listVKi,
  &KLitemGVgrammar_compiler,
  &KPfalseVKi,
  &Kitem_lr1_closureVgrammar_compiler,
  &Kitem_lr1_closure_setterVgrammar_compiler,
  &KLlistGVKd
};

_KLsealed_generic_functionGVKe Kitem_lr1_closureVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K115,
  &K114,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kitem_lr1_closure_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K112,
  &K111,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Kitem_lr1_closure_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kitem_lr1_closureVgrammar_compilerHLitemG
};

static _KLpairGVKd K111 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_lr1_closure_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_23 K112 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 93,
  "item-lr1-closure-setter"
};

_KLgetter_methodGVKi Kitem_lr1_closureVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kitem_lr1_closureVgrammar_compilerHLitemG
};

static _KLpairGVKd K114 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_lr1_closureVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_16 K115 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "item-lr1-closure"
};

static _KLsymbolGVKd KJrule_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K257
};

_KLsealed_generic_functionGVKe Kitem_ruleVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K256,
  &K255,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLclassGVKd KLruleGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K253,
  &K120,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLruleGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K120,
  (D) 1,
  17,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K120 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433745,
  &KLruleGVgrammar_compiler,
  &KLruleGVgrammar_compilerW,
  &KPfalseVKi,
  &K121,
  (D) -3,
  &KLruleGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K124,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K121,
  &K121,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_4 K121 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &Krule_indexVgrammar_compilerHLruleG,
  &Krule_lhsVgrammar_compilerHLruleG,
  &Krule_user_ruleVgrammar_compilerHLruleG,
  &Krule_itemVgrammar_compilerHLruleG
};

_KLkeyword_methodGVKe KLruleGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_5,
  &K225,
  &key_mep_2,
  &KLruleGZ32ZconstructorVgrammar_compilerMM0I,
  &K226
};

static _KLsimple_object_vectorGVKd_6 K124 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLruleGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsymbolGVKd KJlhs_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K224
};

static _KLsymbolGVKd KJuser_rule_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K223
};

_KLlimited_integerGVKe KLindexGVgrammar_compiler = {
  &KLlimited_integerGVKeW /* wrapper */,
  &Kuninitialized_instanceQ_functionVKiI,
  (D) 1,
  (D) 65533
};

_KLclassGVKd KLnon_terminalGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K222,
  &K130,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLnon_terminalGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K130,
  (D) 1,
  33,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K130 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433761,
  &KLnon_terminalGVgrammar_compiler,
  &KLnon_terminalGVgrammar_compilerW,
  &KPfalseVKi,
  &K131,
  (D) -3,
  &KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0,
  &K134,
  &K135,
  (D) 13,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K136,
  &K131,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_8 K131 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 33,
  &Kterm_tokenVgrammar_compilerHLtermG,
  &Kterm_indexVgrammar_compilerHLtermG,
  &Kterm_first_setVgrammar_compilerHLtermG,
  &Knont_rulesVgrammar_compilerHLnon_terminalG,
  &Knont_derivsVgrammar_compilerHLnon_terminalG,
  &Knont_epsilon_itemVgrammar_compilerHLnon_terminalG,
  &Knont_error_rule_indexVgrammar_compilerHLnon_terminalG,
  &Knont_deriv_first_setVgrammar_compilerHLnon_terminalG
};

_KLkeyword_methodGVKe KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K220,
  &key_mep_2,
  &KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0I,
  &K193
};

static _KLsimple_object_vectorGVKd_1 K134 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLtermGVgrammar_compiler
};

static _KLsimple_object_vectorGVKd_6 K135 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLtermGVgrammar_compiler,
  &KLnon_terminalGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_5 K136 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 21,
  &Knont_rulesVgrammar_compilerHLnon_terminalG,
  &Knont_derivsVgrammar_compilerHLnon_terminalG,
  &Knont_epsilon_itemVgrammar_compilerHLnon_terminalG,
  &Knont_error_rule_indexVgrammar_compilerHLnon_terminalG,
  &Knont_deriv_first_setVgrammar_compilerHLnon_terminalG
};

_KLinstance_slot_descriptorGVKe Knont_rulesVgrammar_compilerHLnon_terminalG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_listVKi,
  &KLnon_terminalGVgrammar_compiler,
  &KPfalseVKi,
  &Knont_rulesVgrammar_compiler,
  &Knont_rules_setterVgrammar_compiler,
  &KLlistGVKd
};

_KLinstance_slot_descriptorGVKe Knont_derivsVgrammar_compilerHLnon_terminalG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_listVKi,
  &KLnon_terminalGVgrammar_compiler,
  &KPfalseVKi,
  &Knont_derivsVgrammar_compiler,
  &Knont_derivs_setterVgrammar_compiler,
  &KLlistGVKd
};

_KLinstance_slot_descriptorGVKe Knont_epsilon_itemVgrammar_compilerHLnon_terminalG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPfalseVKi,
  &KLnon_terminalGVgrammar_compiler,
  &KPfalseVKi,
  &Knont_epsilon_itemVgrammar_compiler,
  &Knont_epsilon_item_setterVgrammar_compiler,
  &K162
};

_KLinstance_slot_descriptorGVKe Knont_error_rule_indexVgrammar_compilerHLnon_terminalG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPfalseVKi,
  &KLnon_terminalGVgrammar_compiler,
  &KPfalseVKi,
  &Knont_error_rule_indexVgrammar_compiler,
  &Knont_error_rule_index_setterVgrammar_compiler,
  &K152
};

_KLinstance_slot_descriptorGVKe Knont_deriv_first_setVgrammar_compilerHLnon_terminalG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_listVKi,
  &KLnon_terminalGVgrammar_compiler,
  &KPfalseVKi,
  &Knont_deriv_first_setVgrammar_compiler,
  &Knont_deriv_first_set_setterVgrammar_compiler,
  &KLlistGVKd
};

_KLsealed_generic_functionGVKe Knont_deriv_first_setVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K149,
  &K148,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Knont_deriv_first_set_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K146,
  &K145,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Knont_deriv_first_set_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Knont_deriv_first_setVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K145 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_deriv_first_set_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_27 K146 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "nont-deriv-first-set-setter"
};

_KLgetter_methodGVKi Knont_deriv_first_setVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Knont_deriv_first_setVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K148 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_deriv_first_setVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_20 K149 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 81,
  "nont-deriv-first-set"
};

_KLsealed_generic_functionGVKe Knont_error_rule_indexVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K159,
  &K158,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Knont_error_rule_index_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K156,
  &K155,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLunionGVKe K152 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLindexGVgrammar_compiler
};

static _KLsingletonGVKd K153 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KPfalseVKi
};

_KLsetter_methodGVKi Knont_error_rule_index_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Knont_error_rule_indexVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K155 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_error_rule_index_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_28 K156 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 113,
  "nont-error-rule-index-setter"
};

_KLgetter_methodGVKi Knont_error_rule_indexVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Knont_error_rule_indexVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K158 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_error_rule_indexVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_21 K159 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "nont-error-rule-index"
};

_KLsealed_generic_functionGVKe Knont_epsilon_itemVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K168,
  &K167,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Knont_epsilon_item_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K165,
  &K164,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLunionGVKe K162 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLitemGVgrammar_compiler
};

_KLsetter_methodGVKi Knont_epsilon_item_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Knont_epsilon_itemVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K164 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_epsilon_item_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_24 K165 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 97,
  "nont-epsilon-item-setter"
};

_KLgetter_methodGVKi Knont_epsilon_itemVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Knont_epsilon_itemVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K167 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_epsilon_itemVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_17 K168 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 69,
  "nont-epsilon-item"
};

_KLsealed_generic_functionGVKe Knont_derivsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K176,
  &K175,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Knont_derivs_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K173,
  &K172,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Knont_derivs_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Knont_derivsVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K172 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_derivs_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_18 K173 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 73,
  "nont-derivs-setter"
};

_KLgetter_methodGVKi Knont_derivsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Knont_derivsVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K175 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_derivsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_11 K176 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  "nont-derivs"
};

_KLsealed_generic_functionGVKe Knont_rulesVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K184,
  &K183,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Knont_rules_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K181,
  &K180,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Knont_rules_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Knont_rulesVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K180 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_rules_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_17 K181 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 69,
  "nont-rules-setter"
};

_KLgetter_methodGVKi Knont_rulesVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Knont_rulesVgrammar_compilerHLnon_terminalG
};

static _KLpairGVKd K183 = {
  &KLpairGVKdW /* wrapper */,
  &Knont_rulesVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_10 K184 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "nont-rules"
};

_KLclassGVKd KLtermGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_rcpl_single_smallVKiI,
  &K219,
  &K187,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLtermGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K187,
  (D) 1,
  13,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K187 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433741,
  &KLtermGVgrammar_compiler,
  &KLtermGVgrammar_compilerW,
  &KPfalseVKi,
  &K188,
  (D) -3,
  &KLtermGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K191,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &K862,
  &KPempty_vectorVKi,
  &K188,
  &K188,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_3 K188 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &Kterm_tokenVgrammar_compilerHLtermG,
  &Kterm_indexVgrammar_compilerHLtermG,
  &Kterm_first_setVgrammar_compilerHLtermG
};

_KLkeyword_methodGVKe KLtermGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K192,
  &key_mep_2,
  &KLtermGZ32ZconstructorVgrammar_compilerMM0I,
  &K193
};

static _KLsimple_object_vectorGVKd_6 K191 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLtermGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLkeyword_signatureAvaluesGVKi K192 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K194,
  &KDsignature_LobjectG_typesVKi,
  &K134
};

static _KLsimple_object_vectorGVKd_4 K193 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJtoken_,
  &KPunboundVKi,
  &KJindex_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_2 K194 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJtoken_,
  &KJindex_
};

_KLinstance_slot_descriptorGVKe Kterm_tokenVgrammar_compilerHLtermG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLtermGVgrammar_compiler,
  &KJtoken_,
  &Kterm_tokenVgrammar_compiler,
  &KPfalseVKi,
  &KLobjectGVKd
};

_KLinstance_slot_descriptorGVKe Kterm_indexVgrammar_compilerHLtermG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLtermGVgrammar_compiler,
  &KJindex_,
  &Kterm_indexVgrammar_compiler,
  &Kterm_index_setterVgrammar_compiler,
  &KLindexGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kterm_first_setVgrammar_compilerHLtermG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPfalseVKi,
  &KLtermGVgrammar_compiler,
  &KPfalseVKi,
  &Kterm_first_setVgrammar_compiler,
  &Kterm_first_set_setterVgrammar_compiler,
  &K200
};

_KLsealed_generic_functionGVKe Kterm_first_setVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K206,
  &K205,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kterm_first_set_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K203,
  &K202,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLunionGVKe K200 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLlistGVKd
};

_KLsetter_methodGVKi Kterm_first_set_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kterm_first_setVgrammar_compilerHLtermG
};

static _KLpairGVKd K202 = {
  &KLpairGVKdW /* wrapper */,
  &Kterm_first_set_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_21 K203 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "term-first-set-setter"
};

_KLgetter_methodGVKi Kterm_first_setVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kterm_first_setVgrammar_compilerHLtermG
};

static _KLpairGVKd K205 = {
  &KLpairGVKdW /* wrapper */,
  &Kterm_first_setVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K206 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "term-first-set"
};

_KLsealed_generic_functionGVKe Kterm_indexVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K214,
  &K213,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kterm_index_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K211,
  &K210,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Kterm_index_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kterm_indexVgrammar_compilerHLtermG
};

static _KLpairGVKd K210 = {
  &KLpairGVKdW /* wrapper */,
  &Kterm_index_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_17 K211 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 69,
  "term-index-setter"
};

_KLgetter_methodGVKi Kterm_indexVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kterm_indexVgrammar_compilerHLtermG
};

static _KLpairGVKd K213 = {
  &KLpairGVKdW /* wrapper */,
  &Kterm_indexVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_10 K214 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "term-index"
};

_KLsealed_generic_functionGVKe Kterm_tokenVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K218,
  &K217,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kterm_tokenVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kterm_tokenVgrammar_compilerHLtermG
};

static _KLpairGVKd K217 = {
  &KLpairGVKdW /* wrapper */,
  &Kterm_tokenVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_10 K218 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "term-token"
};

static _KLbyte_stringGVKd_6 K219 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "<term>"
};

static _KLkeyword_signatureAvaluesGVKi K220 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K194,
  &KDsignature_LobjectG_typesVKi,
  &K221
};

static _KLsimple_object_vectorGVKd_1 K221 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLnon_terminalGVgrammar_compiler
};

static _KLbyte_stringGVKd_14 K222 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "<non-terminal>"
};

static _KLbyte_stringGVKd_9 K223 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "user-rule"
};

static _KLbyte_stringGVKd_3 K224 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 13,
  "lhs"
};

static _KLkeyword_signatureAvaluesGVKi K225 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K227,
  &KDsignature_LobjectG_typesVKi,
  &K228
};

static _KLsimple_object_vectorGVKd_6 K226 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KJindex_,
  &KPunboundVKi,
  &KJlhs_,
  &KPunboundVKi,
  &KJuser_rule_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_3 K227 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KJindex_,
  &KJlhs_,
  &KJuser_rule_
};

static _KLsimple_object_vectorGVKd_1 K228 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLruleGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Krule_indexVgrammar_compilerHLruleG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLruleGVgrammar_compiler,
  &KJindex_,
  &Krule_indexVgrammar_compiler,
  &KPfalseVKi,
  &KLindexGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Krule_lhsVgrammar_compilerHLruleG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLruleGVgrammar_compiler,
  &KJlhs_,
  &Krule_lhsVgrammar_compiler,
  &KPfalseVKi,
  &KLnon_terminalGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Krule_user_ruleVgrammar_compilerHLruleG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLruleGVgrammar_compiler,
  &KJuser_rule_,
  &Krule_user_ruleVgrammar_compiler,
  &KPfalseVKi,
  &KLsequenceGVKd
};

_KLinstance_slot_descriptorGVKe Krule_itemVgrammar_compilerHLruleG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 129,
  &KPfalseVKi,
  &KLruleGVgrammar_compiler,
  &KPfalseVKi,
  &Krule_itemVgrammar_compiler,
  &Krule_item_setterVgrammar_compiler,
  &KLitemGVgrammar_compiler
};

_KLsealed_generic_functionGVKe Krule_itemVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K240,
  &K239,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Krule_item_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K237,
  &K236,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Krule_item_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Krule_itemVgrammar_compilerHLruleG
};

static _KLpairGVKd K236 = {
  &KLpairGVKdW /* wrapper */,
  &Krule_item_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_16 K237 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "rule-item-setter"
};

_KLgetter_methodGVKi Krule_itemVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Krule_itemVgrammar_compilerHLruleG
};

static _KLpairGVKd K239 = {
  &KLpairGVKdW /* wrapper */,
  &Krule_itemVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_9 K240 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "rule-item"
};

_KLsealed_generic_functionGVKe Krule_user_ruleVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K244,
  &K243,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Krule_user_ruleVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Krule_user_ruleVgrammar_compilerHLruleG
};

static _KLpairGVKd K243 = {
  &KLpairGVKdW /* wrapper */,
  &Krule_user_ruleVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K244 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "rule-user-rule"
};

_KLsealed_generic_functionGVKe Krule_lhsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K248,
  &K247,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Krule_lhsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Krule_lhsVgrammar_compilerHLruleG
};

static _KLpairGVKd K247 = {
  &KLpairGVKdW /* wrapper */,
  &Krule_lhsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_8 K248 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "rule-lhs"
};

_KLsealed_generic_functionGVKe Krule_indexVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K252,
  &K251,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Krule_indexVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Krule_indexVgrammar_compilerHLruleG
};

static _KLpairGVKd K251 = {
  &KLpairGVKdW /* wrapper */,
  &Krule_indexVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_10 K252 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "rule-index"
};

static _KLbyte_stringGVKd_6 K253 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "<rule>"
};

_KLgetter_methodGVKi Kitem_ruleVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kitem_ruleVgrammar_compilerHLitemG
};

static _KLpairGVKd K255 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_ruleVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_9 K256 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "item-rule"
};

static _KLbyte_stringGVKd_4 K257 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 17,
  "rule"
};

_KLsealed_generic_functionGVKe Kitem_indexVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K261,
  &K260,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kitem_indexVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kitem_indexVgrammar_compilerHLitemG
};

static _KLpairGVKd K260 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_indexVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_10 K261 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "item-index"
};

static _KLbyte_stringGVKd_6 K262 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "<item>"
};

static _KLbyte_stringGVKd_4 K263 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 17,
  "item"
};

static _KLbyte_stringGVKd_6 K264 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "shift?"
};

static _KLkeyword_signatureAvaluesGVKi K265 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K267,
  &KDsignature_LobjectG_typesVKi,
  &K268
};

static _KLsimple_object_vectorGVKd_4 K266 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJshiftQ_,
  &KPunboundVKi,
  &KJitem_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_2 K267 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJshiftQ_,
  &KJitem_
};

static _KLsimple_object_vectorGVKd_1 K268 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLaction_entryGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kaentry_shiftQVgrammar_compilerHLaction_entryG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLaction_entryGVgrammar_compiler,
  &KJshiftQ_,
  &Kaentry_shiftQVgrammar_compiler,
  &Kaentry_shiftQ_setterVgrammar_compiler,
  &KLbooleanGVKd
};

_KLinstance_slot_descriptorGVKe Kaentry_itemVgrammar_compilerHLaction_entryG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLaction_entryGVgrammar_compiler,
  &KJitem_,
  &Kaentry_itemVgrammar_compiler,
  &Kaentry_item_setterVgrammar_compiler,
  &KLitemGVgrammar_compiler
};

_KLsealed_generic_functionGVKe Kaentry_itemVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K278,
  &K277,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kaentry_item_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K275,
  &K274,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Kaentry_item_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kaentry_itemVgrammar_compilerHLaction_entryG
};

static _KLpairGVKd K274 = {
  &KLpairGVKdW /* wrapper */,
  &Kaentry_item_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_18 K275 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 73,
  "aentry-item-setter"
};

_KLgetter_methodGVKi Kaentry_itemVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kaentry_itemVgrammar_compilerHLaction_entryG
};

static _KLpairGVKd K277 = {
  &KLpairGVKdW /* wrapper */,
  &Kaentry_itemVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_11 K278 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  "aentry-item"
};

_KLsealed_generic_functionGVKe Kaentry_shiftQVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K286,
  &K285,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kaentry_shiftQ_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K283,
  &K282,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Kaentry_shiftQ_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kaentry_shiftQVgrammar_compilerHLaction_entryG
};

static _KLpairGVKd K282 = {
  &KLpairGVKdW /* wrapper */,
  &Kaentry_shiftQ_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_20 K283 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 81,
  "aentry-shift?-setter"
};

_KLgetter_methodGVKi Kaentry_shiftQVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kaentry_shiftQVgrammar_compilerHLaction_entryG
};

static _KLpairGVKd K285 = {
  &KLpairGVKdW /* wrapper */,
  &Kaentry_shiftQVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_13 K286 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 53,
  "aentry-shift?"
};

static _KLbyte_stringGVKd_14 K287 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "<action-entry>"
};

_KLclassGVKd KLpropagation_entryGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K319,
  &K290,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLpropagation_entryGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K290,
  (D) 1,
  13,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K290 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433741,
  &KLpropagation_entryGVgrammar_compiler,
  &KLpropagation_entryGVgrammar_compilerW,
  &KPfalseVKi,
  &K291,
  (D) -3,
  &KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K294,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K291,
  &K291,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_3 K291 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &Kpentry_from_keyVgrammar_compilerHLpropagation_entryG,
  &Kpentry_goto_keyVgrammar_compilerHLpropagation_entryG,
  &Kpentry_nextVgrammar_compilerHLpropagation_entryG
};

_KLkeyword_methodGVKe KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_5,
  &K300,
  &key_mep_2,
  &KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0I,
  &K301
};

static _KLsimple_object_vectorGVKd_6 K294 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLpropagation_entryGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsymbolGVKd KJfrom_key_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K299
};

static _KLsymbolGVKd KJgoto_key_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K298
};

static _KLunionGVKe K297 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLpropagation_entryGVgrammar_compiler
};

static _KLbyte_stringGVKd_8 K298 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "goto-key"
};

static _KLbyte_stringGVKd_8 K299 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "from-key"
};

static _KLkeyword_signatureAvaluesGVKi K300 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K302,
  &KDsignature_LobjectG_typesVKi,
  &K303
};

static _KLsimple_object_vectorGVKd_6 K301 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KJfrom_key_,
  &KPunboundVKi,
  &KJgoto_key_,
  &KPunboundVKi,
  &KJnext_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_3 K302 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KJfrom_key_,
  &KJgoto_key_,
  &KJnext_
};

static _KLsimple_object_vectorGVKd_1 K303 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLpropagation_entryGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kpentry_from_keyVgrammar_compilerHLpropagation_entryG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLpropagation_entryGVgrammar_compiler,
  &KJfrom_key_,
  &Kpentry_from_keyVgrammar_compiler,
  &KPfalseVKi,
  &KLobjectGVKd
};

_KLinstance_slot_descriptorGVKe Kpentry_goto_keyVgrammar_compilerHLpropagation_entryG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLpropagation_entryGVgrammar_compiler,
  &KJgoto_key_,
  &Kpentry_goto_keyVgrammar_compiler,
  &KPfalseVKi,
  &KLobjectGVKd
};

_KLinstance_slot_descriptorGVKe Kpentry_nextVgrammar_compilerHLpropagation_entryG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLpropagation_entryGVgrammar_compiler,
  &KJnext_,
  &Kpentry_nextVgrammar_compiler,
  &KPfalseVKi,
  &K297
};

_KLsealed_generic_functionGVKe Kpentry_nextVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K310,
  &K309,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kpentry_nextVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kpentry_nextVgrammar_compilerHLpropagation_entryG
};

static _KLpairGVKd K309 = {
  &KLpairGVKdW /* wrapper */,
  &Kpentry_nextVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_11 K310 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  "pentry-next"
};

_KLsealed_generic_functionGVKe Kpentry_goto_keyVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K314,
  &K313,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kpentry_goto_keyVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kpentry_goto_keyVgrammar_compilerHLpropagation_entryG
};

static _KLpairGVKd K313 = {
  &KLpairGVKdW /* wrapper */,
  &Kpentry_goto_keyVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_15 K314 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "pentry-goto-key"
};

_KLsealed_generic_functionGVKe Kpentry_from_keyVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K318,
  &K317,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kpentry_from_keyVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kpentry_from_keyVgrammar_compilerHLpropagation_entryG
};

static _KLpairGVKd K317 = {
  &KLpairGVKdW /* wrapper */,
  &Kpentry_from_keyVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_15 K318 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "pentry-from-key"
};

static _KLbyte_stringGVKd_19 K319 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 77,
  "<propagation-entry>"
};

_KLclassGVKd KLderiv_ruleGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K343,
  &K322,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLderiv_ruleGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K322,
  (D) 1,
  9,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K322 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433737,
  &KLderiv_ruleGVgrammar_compiler,
  &KLderiv_ruleGVgrammar_compilerW,
  &KPfalseVKi,
  &K323,
  (D) -3,
  &KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K326,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K323,
  &K323,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_2 K323 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &Kderiv_rule_toVgrammar_compilerHLderiv_ruleG,
  &Kderiv_rule_terminalsVgrammar_compilerHLderiv_ruleG
};

_KLkeyword_methodGVKe KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K329,
  &key_mep_2,
  &KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0I,
  &K330
};

static _KLsimple_object_vectorGVKd_6 K326 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLderiv_ruleGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsymbolGVKd KJterminals_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K328
};

static _KLbyte_stringGVKd_9 K328 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "terminals"
};

static _KLkeyword_signatureAvaluesGVKi K329 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K331,
  &KDsignature_LobjectG_typesVKi,
  &K332
};

static _KLsimple_object_vectorGVKd_4 K330 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJto_,
  &KPunboundVKi,
  &KJterminals_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_2 K331 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJto_,
  &KJterminals_
};

static _KLsimple_object_vectorGVKd_1 K332 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLderiv_ruleGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kderiv_rule_toVgrammar_compilerHLderiv_ruleG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLderiv_ruleGVgrammar_compiler,
  &KJto_,
  &Kderiv_rule_toVgrammar_compiler,
  &KPfalseVKi,
  &KLnon_terminalGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kderiv_rule_terminalsVgrammar_compilerHLderiv_ruleG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLderiv_ruleGVgrammar_compiler,
  &KJterminals_,
  &Kderiv_rule_terminalsVgrammar_compiler,
  &KPfalseVKi,
  &KLlistGVKd
};

_KLsealed_generic_functionGVKe Kderiv_rule_terminalsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K338,
  &K337,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kderiv_rule_terminalsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kderiv_rule_terminalsVgrammar_compilerHLderiv_ruleG
};

static _KLpairGVKd K337 = {
  &KLpairGVKdW /* wrapper */,
  &Kderiv_rule_terminalsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_20 K338 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 81,
  "deriv-rule-terminals"
};

_KLsealed_generic_functionGVKe Kderiv_rule_toVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K342,
  &K341,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kderiv_rule_toVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kderiv_rule_toVgrammar_compilerHLderiv_ruleG
};

static _KLpairGVKd K341 = {
  &KLpairGVKdW /* wrapper */,
  &Kderiv_rule_toVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_13 K342 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 53,
  "deriv-rule-to"
};

static _KLbyte_stringGVKd_12 K343 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 49,
  "<deriv-rule>"
};

_KLclassGVKd KLderiv_itemGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K375,
  &K346,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLderiv_itemGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K346,
  (D) 1,
  13,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K346 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433741,
  &KLderiv_itemGVgrammar_compiler,
  &KLderiv_itemGVgrammar_compilerW,
  &KPfalseVKi,
  &K347,
  (D) -3,
  &KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K350,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K347,
  &K347,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_3 K347 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &Kderiv_item_initialVgrammar_compilerHLderiv_itemG,
  &Kderiv_item_resultVgrammar_compilerHLderiv_itemG,
  &Kderiv_item_terminalVgrammar_compilerHLderiv_itemG
};

_KLkeyword_methodGVKe KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_5,
  &K356,
  &key_mep_2,
  &KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0I,
  &K357
};

static _KLsimple_object_vectorGVKd_6 K350 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLderiv_itemGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsymbolGVKd KJinitial_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K355
};

static _KLsymbolGVKd KJresult_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K354
};

static _KLunionGVKe K353 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLterminalGVgrammar_compiler
};

static _KLbyte_stringGVKd_6 K354 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "result"
};

static _KLbyte_stringGVKd_7 K355 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 29,
  "initial"
};

static _KLkeyword_signatureAvaluesGVKi K356 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K358,
  &KDsignature_LobjectG_typesVKi,
  &K359
};

static _KLsimple_object_vectorGVKd_6 K357 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KJinitial_,
  &KPunboundVKi,
  &KJresult_,
  &KPunboundVKi,
  &KJterminal_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_3 K358 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KJinitial_,
  &KJresult_,
  &KJterminal_
};

static _KLsimple_object_vectorGVKd_1 K359 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLderiv_itemGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kderiv_item_initialVgrammar_compilerHLderiv_itemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLderiv_itemGVgrammar_compiler,
  &KJinitial_,
  &Kderiv_item_initialVgrammar_compiler,
  &KPfalseVKi,
  &KLnon_terminalGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kderiv_item_resultVgrammar_compilerHLderiv_itemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLderiv_itemGVgrammar_compiler,
  &KJresult_,
  &Kderiv_item_resultVgrammar_compiler,
  &KPfalseVKi,
  &KLnon_terminalGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kderiv_item_terminalVgrammar_compilerHLderiv_itemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLderiv_itemGVgrammar_compiler,
  &KJterminal_,
  &Kderiv_item_terminalVgrammar_compiler,
  &KPfalseVKi,
  &K353
};

_KLsealed_generic_functionGVKe Kderiv_item_terminalVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K366,
  &K365,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kderiv_item_terminalVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kderiv_item_terminalVgrammar_compilerHLderiv_itemG
};

static _KLpairGVKd K365 = {
  &KLpairGVKdW /* wrapper */,
  &Kderiv_item_terminalVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_19 K366 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 77,
  "deriv-item-terminal"
};

_KLsealed_generic_functionGVKe Kderiv_item_resultVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K370,
  &K369,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kderiv_item_resultVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kderiv_item_resultVgrammar_compilerHLderiv_itemG
};

static _KLpairGVKd K369 = {
  &KLpairGVKdW /* wrapper */,
  &Kderiv_item_resultVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_17 K370 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 69,
  "deriv-item-result"
};

_KLsealed_generic_functionGVKe Kderiv_item_initialVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K374,
  &K373,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kderiv_item_initialVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kderiv_item_initialVgrammar_compilerHLderiv_itemG
};

static _KLpairGVKd K373 = {
  &KLpairGVKdW /* wrapper */,
  &Kderiv_item_initialVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_18 K374 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 73,
  "deriv-item-initial"
};

static _KLbyte_stringGVKd_12 K375 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 49,
  "<deriv-item>"
};

_KLkeyword_methodGVKe Kcompile_grammar_rulesVgrammar_compiler = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_3,
  &K811,
  &key_mep_3,
  &Kcompile_grammar_rulesVgrammar_compilerI,
  &K812
};

static _KLsymbolGVKd KJuser_rules_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K810
};

static _KLsymbolGVKd KJuser_error_rules_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K809
};

_KLclassGVKd KLgvarsGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K798,
  &K712,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLgvarsGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K712,
  (D) 1,
  49,
  33554439,
  (D) 1
};

_KLclassGVKd KLgrammarGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K440,
  &K391,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLgrammarGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K391,
  (D) 1,
  25,
  33554439,
  (D) 1
};

static _KLimplementation_classGVKe K391 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 477102105,
  &KLgrammarGVgrammar_compiler,
  &KLgrammarGVgrammar_compilerW,
  &KPfalseVKi,
  &K392,
  (D) -3,
  &KLgrammarGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K395,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K392,
  &K392,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_6 K392 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &Kgrammar_rulesVgrammar_compilerHLgrammarG,
  &Kgrammar_error_rulesVgrammar_compilerHLgrammarG,
  &Kgrammar_terminalsVgrammar_compilerHLgrammarG,
  &Kgrammar_goto_tableVgrammar_compilerHLgrammarG,
  &Kgrammar_action_tableVgrammar_compilerHLgrammarG,
  &Kgrammar_rule_reduction_tableVgrammar_compilerHLgrammarG
};

_KLkeyword_methodGVKe KLgrammarGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_8,
  &K406,
  &key_mep_2,
  &KLgrammarGZ32ZconstructorVgrammar_compilerMM0I,
  &K407
};

static _KLsimple_object_vectorGVKd_6 K395 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLgrammarGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsymbolGVKd KJrules_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K405
};

static _KLsymbolGVKd KJerror_rules_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K404
};

static _KLsymbolGVKd KJgoto_table_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K403
};

static _KLsymbolGVKd KJaction_table_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K402
};

static _KLsymbolGVKd KJrule_reduction_table_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K401
};

static _KLbyte_stringGVKd_20 K401 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 81,
  "rule-reduction-table"
};

static _KLbyte_stringGVKd_12 K402 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 49,
  "action-table"
};

static _KLbyte_stringGVKd_10 K403 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "goto-table"
};

static _KLbyte_stringGVKd_11 K404 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  "error-rules"
};

static _KLbyte_stringGVKd_5 K405 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "rules"
};

static _KLkeyword_signatureAvaluesGVKi K406 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K408,
  &KDsignature_LobjectG_typesVKi,
  &K409
};

static _KLsimple_object_vectorGVKd_12 K407 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 49,
  &KJrules_,
  &KPunboundVKi,
  &KJerror_rules_,
  &KPunboundVKi,
  &KJterminals_,
  &KPunboundVKi,
  &KJgoto_table_,
  &KPunboundVKi,
  &KJaction_table_,
  &KPunboundVKi,
  &KJrule_reduction_table_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_6 K408 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KJrules_,
  &KJerror_rules_,
  &KJterminals_,
  &KJgoto_table_,
  &KJaction_table_,
  &KJrule_reduction_table_
};

static _KLsimple_object_vectorGVKd_1 K409 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLgrammarGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe Kgrammar_rulesVgrammar_compilerHLgrammarG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammarGVgrammar_compiler,
  &KJrules_,
  &Kgrammar_rulesVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_error_rulesVgrammar_compilerHLgrammarG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammarGVgrammar_compiler,
  &KJerror_rules_,
  &Kgrammar_error_rulesVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_terminalsVgrammar_compilerHLgrammarG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammarGVgrammar_compiler,
  &KJterminals_,
  &Kgrammar_terminalsVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_goto_tableVgrammar_compilerHLgrammarG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammarGVgrammar_compiler,
  &KJgoto_table_,
  &Kgrammar_goto_tableVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_action_tableVgrammar_compilerHLgrammarG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammarGVgrammar_compiler,
  &KJaction_table_,
  &Kgrammar_action_tableVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe Kgrammar_rule_reduction_tableVgrammar_compilerHLgrammarG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgrammarGVgrammar_compiler,
  &KJrule_reduction_table_,
  &Kgrammar_rule_reduction_tableVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLsealed_generic_functionGVKe Kgrammar_rule_reduction_tableVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K419,
  &K418,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_rule_reduction_tableVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_rule_reduction_tableVgrammar_compilerHLgrammarG
};

static _KLpairGVKd K418 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_rule_reduction_tableVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_28 K419 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 113,
  "grammar-rule-reduction-table"
};

_KLsealed_generic_functionGVKe Kgrammar_action_tableVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K423,
  &K422,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_action_tableVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_action_tableVgrammar_compilerHLgrammarG
};

static _KLpairGVKd K422 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_action_tableVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_20 K423 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 81,
  "grammar-action-table"
};

_KLsealed_generic_functionGVKe Kgrammar_goto_tableVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K427,
  &K426,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_goto_tableVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_goto_tableVgrammar_compilerHLgrammarG
};

static _KLpairGVKd K426 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_goto_tableVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_18 K427 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 73,
  "grammar-goto-table"
};

_KLsealed_generic_functionGVKe Kgrammar_terminalsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K431,
  &K430,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_terminalsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_terminalsVgrammar_compilerHLgrammarG
};

static _KLpairGVKd K430 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_terminalsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_17 K431 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 69,
  "grammar-terminals"
};

_KLsealed_generic_functionGVKe Kgrammar_error_rulesVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K435,
  &K434,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_error_rulesVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_error_rulesVgrammar_compilerHLgrammarG
};

static _KLpairGVKd K434 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_error_rulesVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_19 K435 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 77,
  "grammar-error-rules"
};

_KLsealed_generic_functionGVKe Kgrammar_rulesVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K439,
  &K438,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kgrammar_rulesVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kgrammar_rulesVgrammar_compilerHLgrammarG
};

static _KLpairGVKd K438 = {
  &KLpairGVKdW /* wrapper */,
  &Kgrammar_rulesVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_13 K439 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 53,
  "grammar-rules"
};

static _KLbyte_stringGVKd_9 K440 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "<grammar>"
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_make_compiled_grammarF480 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K481,
  &Kanonymous_of_make_compiled_grammarF480I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_action_tableF469 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K466,
  &Kanonymous_of_externalize_action_tableF469I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_action_tableF467 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K466,
  &Kanonymous_of_externalize_action_tableF467I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_action_tableF464 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K466,
  &Kanonymous_of_externalize_action_tableF464I,
  (D) 1
};

_KLsimple_methodGVKe Kkey_stateVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K462,
  &Kkey_stateVgrammar_compilerI
};

_KLsimple_methodGVKe Kkey_valueVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K459,
  &Kkey_valueVgrammar_compilerI
};

static _KLsymbolGVKd KJaccept_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K458
};

static _KLsymbolGVKd KJerror_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K457
};

static _KLbyte_stringGVKd_5 K457 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "error"
};

static _KLbyte_stringGVKd_6 K458 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "accept"
};

static _KLsignatureAvaluesGVKi K459 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555461,
  &KDsignature_LintegerG_typesVKi,
  &K460
};

static _KLsimple_object_vectorGVKd_1 K460 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLindexGVgrammar_compiler
};

_KLlimited_integerGVKe KLstateGVgrammar_compiler = {
  &KLlimited_integerGVKeW /* wrapper */,
  &Kuninitialized_instanceQ_functionVKiI,
  (D) 1,
  &KPfalseVKi
};

static _KLsignatureAvaluesGVKi K462 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555461,
  &KDsignature_LintegerG_typesVKi,
  &K463
};

static _KLsimple_object_vectorGVKd_1 K463 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLstateGVgrammar_compiler
};

static _KLbyte_stringGVKd_31 K465 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 125,
  "Releasing lock %= in thread %=\n"
};

static _KLsignatureGVKe K466 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040193,
  &KPempty_vectorVKi
};

static _KLbyte_stringGVKd_45 K468 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 181,
  "Waiting for lock %= in thread %= returned %=\n"
};

static _KLbyte_stringGVKd_33 K470 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 133,
  "Waiting for lock %= in thread %=\n"
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_goto_tableF479 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K466,
  &Kanonymous_of_externalize_goto_tableF479I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_goto_tableF478 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K466,
  &Kanonymous_of_externalize_goto_tableF478I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_externalize_goto_tableF477 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K466,
  &Kanonymous_of_externalize_goto_tableF477I,
  (D) 1
};

static _KLsignatureGVKe K481 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040197,
  &K228
};

_KLsimple_methodGVKe Kmake_actionsVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K574,
  &Kmake_actionsVgrammar_compilerI
};

_KLsimple_methodGVKe Kmake_actionVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K572,
  &Kmake_actionVgrammar_compilerI
};

_KLclassGVKd KLnon_empty_itemGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K571,
  &K562,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLnon_empty_itemGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K562,
  (D) 1,
  25,
  33554439,
  (D) 1
};

_KLsealed_generic_functionGVKe Kitem_first_termVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K558,
  &K557,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe Kset_shift_actionVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_4,
  &K554,
  &Kset_shift_actionVgrammar_compilerI
};

_KLsimple_methodGVKe Kmake_derived_actionsVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_4,
  &K552,
  &Kmake_derived_actionsVgrammar_compilerI
};

_KLsimple_methodGVKe Kset_actionVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_5,
  &K520,
  &Kset_actionVgrammar_compilerI
};

static _KLunionGVKe K498 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLaction_entryGVgrammar_compiler
};

_KLsimple_methodGVKe Kitem_rule_indexVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K518,
  &Kitem_rule_indexVgrammar_compilerI
};

_KLsimple_methodGVKe Knote_conflictVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_5,
  &K516,
  &Knote_conflictVgrammar_compilerI
};

_KLsealed_generic_functionGVKe Kitem_next_itemVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K508,
  &K507,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kitem_next_itemVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kitem_next_itemVgrammar_compilerHLnon_empty_itemG
};

static _KLpairGVKd K507 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_next_itemVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K508 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "item-next-item"
};

_KLinstance_slot_descriptorGVKe Kitem_next_itemVgrammar_compilerHLnon_empty_itemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLnon_empty_itemGVgrammar_compiler,
  &KJnext_item_,
  &Kitem_next_itemVgrammar_compiler,
  &Kitem_next_item_setterVgrammar_compiler,
  &KLitemGVgrammar_compiler
};

static _KLsymbolGVKd KJnext_item_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K515
};

_KLsealed_generic_functionGVKe Kitem_next_item_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K514,
  &K513,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi Kitem_next_item_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kitem_next_itemVgrammar_compilerHLnon_empty_itemG
};

static _KLpairGVKd K513 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_next_item_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_21 K514 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "item-next-item-setter"
};

static _KLbyte_stringGVKd_9 K515 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "next-item"
};

static _KLsignatureGVKe K516 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040213,
  &K517
};

static _KLsimple_object_vectorGVKd_5 K517 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 21,
  &KLterminalGVgrammar_compiler,
  &KLbooleanGVKd,
  &KLitemGVgrammar_compiler,
  &KLbooleanGVKd,
  &KLitemGVgrammar_compiler
};

static _KLsignatureAvaluesGVKi K518 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555461,
  &K519,
  &K460
};

static _KLsimple_object_vectorGVKd_1 K519 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLitemGVgrammar_compiler
};

static _KLsignatureGVKe K520 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040213,
  &K521
};

static _KLsimple_object_vectorGVKd_5 K521 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 21,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLitemGVgrammar_compiler,
  &KLterminalGVgrammar_compiler,
  &KLbooleanGVKd
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_generate_reductionsF547 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &Kanonymous_of_generate_reductionsF547I,
  (D) 1
};

_KLsimple_methodGVKe Kitem_next_first_setVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K542,
  &Kitem_next_first_setVgrammar_compilerI
};

_KLsealed_generic_functionGVKe Kitem_first_setVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K546,
  &K545,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe Kcompute_item_first_setVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K542,
  &Kcompute_item_first_setVgrammar_compilerI
};

_KLsealed_generic_functionGVKe Kitem_first_set_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K536,
  &K535,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLpairGVKd K533 = {
  &KLpairGVKdW /* wrapper */,
  &KPfalseVKi,
  &KPempty_listVKi
};

_KLsetter_methodGVKi Kitem_first_set_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &Kitem_first_setVgrammar_compilerHLnon_empty_itemG
};

static _KLpairGVKd K535 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_first_set_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_21 K536 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "item-first-set-setter"
};

_KLinstance_slot_descriptorGVKe Kitem_first_setVgrammar_compilerHLnon_empty_itemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPfalseVKi,
  &KLnon_empty_itemGVgrammar_compiler,
  &KPfalseVKi,
  &Kitem_first_setVgrammar_compiler,
  &Kitem_first_set_setterVgrammar_compiler,
  &K200
};

_KLsimple_methodGVKe Kcombine_first_setsVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K541,
  &Kcombine_first_setsVgrammar_compilerI
};

static _KLunionGVKe K540 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLtermGVgrammar_compiler
};

static _KLsignatureAvaluesGVKi K541 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555465,
  &KDsignature_LlistG_typesVKi,
  &KDsignature_LlistG_typesVKi
};

static _KLsignatureAvaluesGVKi K542 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555461,
  &K543,
  &KDsignature_LlistG_typesVKi
};

static _KLsimple_object_vectorGVKd_1 K543 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLnon_empty_itemGVgrammar_compiler
};

_KLgetter_methodGVKi Kitem_first_setVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kitem_first_setVgrammar_compilerHLnon_empty_itemG
};

static _KLpairGVKd K545 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_first_setVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K546 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "item-first-set"
};

_KLsimple_methodGVKe Kmaybe_set_error_actionVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K550,
  &Kmaybe_set_error_actionVgrammar_compilerI
};

static _KLsignatureGVKe K550 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040205,
  &K551
};

static _KLsimple_object_vectorGVKd_3 K551 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLnon_terminalGVgrammar_compiler
};

static _KLsignatureGVKe K552 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040209,
  &K553
};

static _KLsimple_object_vectorGVKd_4 K553 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLitemGVgrammar_compiler,
  &KLnon_terminalGVgrammar_compiler
};

static _KLsignatureGVKe K554 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040209,
  &K555
};

static _KLsimple_object_vectorGVKd_4 K555 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLitemGVgrammar_compiler,
  &KLtermGVgrammar_compiler
};

_KLgetter_methodGVKi Kitem_first_termVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kitem_first_termVgrammar_compilerHLnon_empty_itemG
};

static _KLpairGVKd K557 = {
  &KLpairGVKdW /* wrapper */,
  &Kitem_first_termVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_15 K558 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "item-first-term"
};

_KLinstance_slot_descriptorGVKe Kitem_first_termVgrammar_compilerHLnon_empty_itemG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLnon_empty_itemGVgrammar_compiler,
  &KJfirst_term_,
  &Kitem_first_termVgrammar_compiler,
  &KPfalseVKi,
  &KLtermGVgrammar_compiler
};

static _KLsymbolGVKd KJfirst_term_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K561
};

static _KLbyte_stringGVKd_10 K561 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "first-term"
};

static _KLimplementation_classGVKe K562 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433753,
  &KLnon_empty_itemGVgrammar_compiler,
  &KLnon_empty_itemGVgrammar_compilerW,
  &KPfalseVKi,
  &K563,
  (D) -3,
  &KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0,
  &K519,
  &K566,
  (D) 13,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K567,
  &K563,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_6 K563 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &Kitem_indexVgrammar_compilerHLitemG,
  &Kitem_ruleVgrammar_compilerHLitemG,
  &Kitem_lr1_closureVgrammar_compilerHLitemG,
  &Kitem_first_termVgrammar_compilerHLnon_empty_itemG,
  &Kitem_next_itemVgrammar_compilerHLnon_empty_itemG,
  &Kitem_first_setVgrammar_compilerHLnon_empty_itemG
};

_KLkeyword_methodGVKe KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_6,
  &K568,
  &key_mep_2,
  &KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0I,
  &K569
};

static _KLsimple_object_vectorGVKd_6 K566 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLitemGVgrammar_compiler,
  &KLnon_empty_itemGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_3 K567 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &Kitem_first_termVgrammar_compilerHLnon_empty_itemG,
  &Kitem_next_itemVgrammar_compilerHLnon_empty_itemG,
  &Kitem_first_setVgrammar_compilerHLnon_empty_itemG
};

static _KLkeyword_signatureAvaluesGVKi K568 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K570,
  &KDsignature_LobjectG_typesVKi,
  &K543
};

static _KLsimple_object_vectorGVKd_8 K569 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 33,
  &KJindex_,
  &KPunboundVKi,
  &KJrule_,
  &KPunboundVKi,
  &KJfirst_term_,
  &KPunboundVKi,
  &KJnext_item_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_4 K570 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJindex_,
  &KJrule_,
  &KJfirst_term_,
  &KJnext_item_
};

static _KLbyte_stringGVKd_16 K571 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "<non-empty-item>"
};

static _KLsignatureGVKe K572 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040205,
  &K573
};

static _KLsimple_object_vectorGVKd_3 K573 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLitemGVgrammar_compiler
};

static _KLsignatureGVKe K574 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040201,
  &K575
};

static _KLsimple_object_vectorGVKd_2 K575 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler
};

_KLsimple_methodGVKe Kitem_terminal_leftQVgrammar_compilerMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K578,
  &Kitem_terminal_leftQVgrammar_compilerMM0I
};

static _KLsignatureGVKe K578 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040197,
  &K519
};

_KLsimple_methodGVKe Kpropagate_a_lookaheadVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K585,
  &Kpropagate_a_lookaheadVgrammar_compilerI
};

static _KLsignatureAvaluesGVKi K585 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555465,
  &K586,
  &KDsignature_LbooleanG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K586 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLgvarsGVgrammar_compiler,
  &KLpropagation_entryGVgrammar_compiler
};

_KLsimple_methodGVKe Kadd_to_lookahead_tableVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_4,
  &K554,
  &Kadd_to_lookahead_tableVgrammar_compilerI
};

_KLsimple_methodGVKe Kdetermine_state_lookaheadsVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K574,
  &Kdetermine_state_lookaheadsVgrammar_compilerI
};

_KLsimple_methodGVKe Kgenerate_spontaneous_lookaheadVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_4,
  &K554,
  &Kgenerate_spontaneous_lookaheadVgrammar_compilerI
};

_KLsimple_methodGVKe Kstate_item_lookaheads_setterVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_4,
  &K596,
  &Kstate_item_lookaheads_setterVgrammar_compilerI
};

static _KLsignatureGVKe K596 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040209,
  &K597
};

static _KLsimple_object_vectorGVKd_4 K597 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KLlistGVKd,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLitemGVgrammar_compiler
};

static _KLsimple_closure_methodGVKi_0 Kintern_item_setF627 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_3,
  &K634,
  &Kintern_item_setF627I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kstate_transitionsF613 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &Kstate_transitionsF613I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 KloopF605 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_3,
  &K606,
  &KloopF605I,
  (D) 1
};

static _KLsignatureGVKe K606 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040205,
  &K607
};

static _KLsimple_object_vectorGVKd_3 K607 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLlistGVKd
};

static _KLunionGVKe K608 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K610,
  &K153
};

static _KLpairGVKd K609 = {
  &KLpairGVKdW /* wrapper */,
  &KinitializeVKdMM1,
  &KPempty_listVKi
};

static _KLunionGVKe K610 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K611,
  &K612
};

static _KLsingletonGVKd K611 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KJkey_
};

static _KLsingletonGVKd K612 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KJvalue_
};

_KLsimple_methodGVKe Kstate_item_setVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K626,
  &Kstate_item_setVgrammar_compilerI
};

_KLsimple_methodGVKe Kadd_to_goto_tableVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_4,
  &K619,
  &Kadd_to_goto_tableVgrammar_compilerI
};

static _KLsignatureGVKe K619 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040209,
  &K620
};

static _KLsimple_object_vectorGVKd_4 K620 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KLgvarsGVgrammar_compiler,
  &KLstateGVgrammar_compiler,
  &KLtermGVgrammar_compiler,
  &KLstateGVgrammar_compiler
};

static _KLsimple_closure_methodGVKi_0 Kadd_gotoF623 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_3,
  &K624,
  &Kadd_gotoF623I,
  (D) 1
};

static _KLsignatureGVKe K624 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040205,
  &K625
};

static _KLsimple_object_vectorGVKd_3 K625 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLnon_empty_itemGVgrammar_compiler
};

static _KLsignatureAvaluesGVKi K626 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555465,
  &K575,
  &KDsignature_LlistG_typesVKi
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_make_canonicalF631 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &K632,
  &Kanonymous_of_make_canonicalF631I,
  (D) 1
};

static _KLsignatureGVKe K632 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040201,
  &K633
};

static _KLsimple_object_vectorGVKd_2 K633 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLitemGVgrammar_compiler,
  &KLitemGVgrammar_compiler
};

static _KLsignatureAvaluesGVKi K634 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555469,
  &K607,
  &K463
};

_KLsimple_methodGVKe Kadd_derivVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K665,
  &Kadd_derivVgrammar_compilerI
};

_KLsimple_methodGVKe Kapply_rulesVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K656,
  &Kapply_rulesVgrammar_compilerI
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_apply_rulesF648 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &K654,
  &Kanonymous_of_apply_rulesF648I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_apply_rulesF645 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_3,
  &K646,
  &Kanonymous_of_apply_rulesF645I,
  (D) 1
};

static _KLsignatureGVKe K646 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040205,
  &K647
};

static _KLsimple_object_vectorGVKd_3 K647 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLderiv_ruleGVgrammar_compiler
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_apply_rulesF651 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &K652,
  &Kanonymous_of_apply_rulesF651I,
  (D) 1
};

static _KLsignatureGVKe K652 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040201,
  &K653
};

static _KLsimple_object_vectorGVKd_2 K653 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLlistGVKd,
  &KLobjectGVKd
};

static _KLsignatureGVKe K654 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040201,
  &K655
};

static _KLsimple_object_vectorGVKd_2 K655 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLlistGVKd,
  &KLderiv_ruleGVgrammar_compiler
};

static _KLsignatureAvaluesGVKi K656 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555465,
  &K657,
  &KDsignature_LlistG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K657 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLlistGVKd,
  &KLderiv_itemGVgrammar_compiler
};

static _KLunionGVKe K660 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K153,
  &KLpairGVKd
};

static _KLsimple_closure_methodGVKi_0 KloopF662 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_4,
  &K663,
  &KloopF662I,
  (D) 1
};

static _KLsignatureGVKe K663 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040209,
  &K664
};

static _KLsimple_object_vectorGVKd_4 K664 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLlistGVKd
};

static _KLsignatureGVKe K665 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41944069,
  &K359
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_make_initial_item_listF668 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K669,
  &Kanonymous_of_make_initial_item_listF668I,
  (D) 1
};

static _KLsignatureGVKe K669 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040197,
  &K221
};

static _KLsimple_closure_methodGVKi_0 Kdo_itemF673 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_3,
  &K677,
  &Kdo_itemF673I,
  (D) 1
};

_KLsimple_methodGVKe Kcompute_first_setVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K675,
  &Kcompute_first_setVgrammar_compilerI
};

static _KLsignatureAvaluesGVKi K675 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555469,
  &K676,
  &KDsignature_LlistG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K676 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLgvarsGVgrammar_compiler,
  &KLnon_terminalGVgrammar_compiler,
  &KLlistGVKd
};

static _KLsignatureGVKe K677 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040205,
  &K678
};

static _KLsimple_object_vectorGVKd_3 K678 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLitemGVgrammar_compiler
};

static _KLbyte_stringGVKd_31 K679 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 125,
  "Too many productions in grammar"
};

_KLsealed_generic_functionGVKe KPgrammar_non_terminals_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K706,
  &K705,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLbyte_stringGVKd_26 K681 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 105,
  "Error rule for terminal %s"
};

static _KLbyte_stringGVKd_27 K682 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "Multiple error rules for %s"
};

_KLclassGVKd KLempty_itemGVgrammar_compiler = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K703,
  &K696,
  (D) 1,
  &Kgrammar_compiler_moduleYdylan_userVgrammar_compiler
};

_KLmm_wrapperGVKi_0 KLempty_itemGVgrammar_compilerW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K696,
  (D) 1,
  13,
  33554439,
  (D) 1
};

static _KLbyte_stringGVKd_27 K686 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "Multiple empty rules for %s"
};

_KLsealed_generic_functionGVKe KPgrammar_terminal_tokens_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K690,
  &K689,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi KPgrammar_terminal_tokens_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &KPgrammar_terminal_tokensVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K689 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_terminal_tokens_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_31 K690 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 125,
  "%grammar-terminal-tokens-setter"
};

_KLinstance_slot_descriptorGVKe KPgrammar_terminal_tokensVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_vectorVKi,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_terminal_tokensVgrammar_compiler,
  &KPgrammar_terminal_tokens_setterVgrammar_compiler,
  &KLsimple_object_vectorGVKd
};

_KLsealed_generic_functionGVKe KPgrammar_terminal_tokensVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K695,
  &K694,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_terminal_tokensVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_terminal_tokensVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K694 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_terminal_tokensVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_24 K695 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 97,
  "%grammar-terminal-tokens"
};

static _KLimplementation_classGVKe K696 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 477102093,
  &KLempty_itemGVgrammar_compiler,
  &KLempty_itemGVgrammar_compilerW,
  &KPfalseVKi,
  &K103,
  (D) -3,
  &KLempty_itemGZ32ZconstructorVgrammar_compilerMM0,
  &K519,
  &K698,
  (D) 13,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K103,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

_KLkeyword_methodGVKe KLempty_itemGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K699,
  &key_mep_2,
  &KLempty_itemGZ32ZconstructorVgrammar_compilerMM0I,
  &K700
};

static _KLsimple_object_vectorGVKd_6 K698 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLitemGVgrammar_compiler,
  &KLempty_itemGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLkeyword_signatureAvaluesGVKi K699 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K701,
  &KDsignature_LobjectG_typesVKi,
  &K702
};

static _KLsimple_object_vectorGVKd_4 K700 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJindex_,
  &KPunboundVKi,
  &KJrule_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_2 K701 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJindex_,
  &KJrule_
};

static _KLsimple_object_vectorGVKd_1 K702 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLempty_itemGVgrammar_compiler
};

static _KLbyte_stringGVKd_12 K703 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 49,
  "<empty-item>"
};

_KLsetter_methodGVKi KPgrammar_non_terminals_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &KPgrammar_non_terminalsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K705 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_non_terminals_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_29 K706 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 117,
  "%grammar-non-terminals-setter"
};

_KLinstance_slot_descriptorGVKe KPgrammar_non_terminalsVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_vectorVKi,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_non_terminalsVgrammar_compiler,
  &KPgrammar_non_terminals_setterVgrammar_compiler,
  &KLsimple_object_vectorGVKd
};

_KLsealed_generic_functionGVKe KPgrammar_non_terminalsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K711,
  &K710,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_non_terminalsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_non_terminalsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K710 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_non_terminalsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_22 K711 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 89,
  "%grammar-non-terminals"
};

static _KLimplementation_classGVKe K712 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433777,
  &KLgvarsGVgrammar_compiler,
  &KLgvarsGVgrammar_compilerW,
  &KPfalseVKi,
  &K713,
  (D) -3,
  &KLgvarsGZ32ZconstructorVgrammar_compilerMM0,
  &K96,
  &K715,
  (D) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K713,
  &K713,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_12 K713 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 49,
  &KPgrammar_user_rulesVgrammar_compilerHLgvarsG,
  &KPgrammar_user_error_rulesVgrammar_compilerHLgvarsG,
  &KPgrammar_terminal_tokensVgrammar_compilerHLgvarsG,
  &KPgrammar_rulesVgrammar_compilerHLgvarsG,
  &KPgrammar_non_terminalsVgrammar_compilerHLgvarsG,
  &KPgrammar_itemsVgrammar_compilerHLgvarsG,
  &KPgrammar_item_setsVgrammar_compilerHLgvarsG,
  &KPgrammar_error_action_tableVgrammar_compilerHLgvarsG,
  &KPgrammar_lookaheadsVgrammar_compilerHLgvarsG,
  &KPgrammar_gotosVgrammar_compilerHLgvarsG,
  &KPgrammar_actionsVgrammar_compilerHLgvarsG,
  &KPgrammar_propagation_queueVgrammar_compilerHLgvarsG
};

_KLkeyword_methodGVKe KLgvarsGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K716,
  &key_mep_2,
  &KLgvarsGZ32ZconstructorVgrammar_compilerMM0I,
  &K717
};

static _KLsimple_object_vectorGVKd_6 K715 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLkeyword_signatureAvaluesGVKi K716 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K718,
  &KDsignature_LobjectG_typesVKi,
  &K719
};

static _KLsimple_object_vectorGVKd_4 K717 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJuser_rules_,
  &KPunboundVKi,
  &KJuser_error_rules_,
  &KPunboundVKi
};

static _KLsimple_object_vectorGVKd_2 K718 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJuser_rules_,
  &KJuser_error_rules_
};

static _KLsimple_object_vectorGVKd_1 K719 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLgvarsGVgrammar_compiler
};

_KLinstance_slot_descriptorGVKe KPgrammar_user_rulesVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgvarsGVgrammar_compiler,
  &KJuser_rules_,
  &KPgrammar_user_rulesVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_user_error_rulesVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 193,
  &KPfalseVKi,
  &KLgvarsGVgrammar_compiler,
  &KJuser_error_rules_,
  &KPgrammar_user_error_rulesVgrammar_compiler,
  &KPfalseVKi,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_rulesVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_vectorVKi,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_rulesVgrammar_compiler,
  &KPgrammar_rules_setterVgrammar_compiler,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_itemsVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPempty_vectorVKi,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_itemsVgrammar_compiler,
  &KPgrammar_items_setterVgrammar_compiler,
  &KLsimple_object_vectorGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_item_setsVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 149,
  &K773,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_item_setsVgrammar_compiler,
  &KPfalseVKi,
  &KLstretchy_object_vectorGVKe
};

_KLinstance_slot_descriptorGVKe KPgrammar_error_action_tableVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 149,
  &K766,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_error_action_tableVgrammar_compiler,
  &KPfalseVKi,
  &KLobject_tableGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_lookaheadsVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 149,
  &K759,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_lookaheadsVgrammar_compiler,
  &KPfalseVKi,
  &KLobject_tableGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_gotosVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 149,
  &K752,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_gotosVgrammar_compiler,
  &KPfalseVKi,
  &KLobject_tableGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_actionsVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 149,
  &K744,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_actionsVgrammar_compiler,
  &KPfalseVKi,
  &KLobject_tableGVKd
};

_KLinstance_slot_descriptorGVKe KPgrammar_propagation_queueVgrammar_compilerHLgvarsG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (D) 157,
  &KPfalseVKi,
  &KLgvarsGVgrammar_compiler,
  &KPfalseVKi,
  &KPgrammar_propagation_queueVgrammar_compiler,
  &KPgrammar_propagation_queue_setterVgrammar_compiler,
  &KLobjectGVKd
};

_KLsealed_generic_functionGVKe KPgrammar_propagation_queueVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K737,
  &K736,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe KPgrammar_propagation_queue_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K734,
  &K733,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi KPgrammar_propagation_queue_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &KPgrammar_propagation_queueVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K733 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_propagation_queue_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_33 K734 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 133,
  "%grammar-propagation-queue-setter"
};

_KLgetter_methodGVKi KPgrammar_propagation_queueVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_propagation_queueVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K736 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_propagation_queueVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_26 K737 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 105,
  "%grammar-propagation-queue"
};

static _KLsimple_closure_methodGVKi_0 K744 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K745,
  &K744I,
  (D) 1
};

_KLsealed_generic_functionGVKe KPgrammar_actionsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K743,
  &K742,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_actionsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_actionsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K742 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_actionsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_16 K743 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "%grammar-actions"
};

static _KLsignatureGVKe K745 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41944065,
  &KPempty_vectorVKi
};

static _KLsimple_closure_methodGVKi_0 K752 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K745,
  &K752I,
  (D) 1
};

_KLsealed_generic_functionGVKe KPgrammar_gotosVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K751,
  &K750,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_gotosVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_gotosVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K750 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_gotosVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K751 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "%grammar-gotos"
};

static _KLsimple_closure_methodGVKi_0 K759 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K745,
  &K759I,
  (D) 1
};

_KLsealed_generic_functionGVKe KPgrammar_lookaheadsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K758,
  &K757,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_lookaheadsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_lookaheadsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K757 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_lookaheadsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_19 K758 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 77,
  "%grammar-lookaheads"
};

static _KLsimple_closure_methodGVKi_0 K766 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K745,
  &K766I,
  (D) 1
};

_KLsealed_generic_functionGVKe KPgrammar_error_action_tableVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K765,
  &K764,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_error_action_tableVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_error_action_tableVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K764 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_error_action_tableVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_27 K765 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "%grammar-error-action-table"
};

static _KLsimple_closure_methodGVKi_0 K773 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K745,
  &K773I,
  (D) 1
};

_KLsealed_generic_functionGVKe KPgrammar_item_setsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K772,
  &K771,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_item_setsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_item_setsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K771 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_item_setsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_18 K772 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 73,
  "%grammar-item-sets"
};

_KLsealed_generic_functionGVKe KPgrammar_itemsVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K781,
  &K780,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe KPgrammar_items_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K778,
  &K777,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi KPgrammar_items_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &KPgrammar_itemsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K777 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_items_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_21 K778 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "%grammar-items-setter"
};

_KLgetter_methodGVKi KPgrammar_itemsVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_itemsVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K780 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_itemsVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K781 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "%grammar-items"
};

_KLsealed_generic_functionGVKe KPgrammar_rulesVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K789,
  &K788,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe KPgrammar_rules_setterVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &KPfalseVKi,
  &K786,
  &K785,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsetter_methodGVKi KPgrammar_rules_setterVgrammar_compilerMM0 = {
  &KLsetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_setter_xep,
  &KPgrammar_rulesVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K785 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_rules_setterVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_21 K786 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "%grammar-rules-setter"
};

_KLgetter_methodGVKi KPgrammar_rulesVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_rulesVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K788 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_rulesVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_14 K789 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "%grammar-rules"
};

_KLsealed_generic_functionGVKe KPgrammar_user_error_rulesVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K793,
  &K792,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_user_error_rulesVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_user_error_rulesVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K792 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_user_error_rulesVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_25 K793 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 101,
  "%grammar-user-error-rules"
};

_KLsealed_generic_functionGVKe KPgrammar_user_rulesVgrammar_compiler = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K797,
  &K796,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi KPgrammar_user_rulesVgrammar_compilerMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &KPgrammar_user_rulesVgrammar_compilerHLgvarsG
};

static _KLpairGVKd K796 = {
  &KLpairGVKdW /* wrapper */,
  &KPgrammar_user_rulesVgrammar_compilerMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_19 K797 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 77,
  "%grammar-user-rules"
};

static _KLbyte_stringGVKd_7 K798 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 29,
  "<gvars>"
};

static _KLbyte_stringGVKd_16 K809 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "user-error-rules"
};

static _KLbyte_stringGVKd_10 K810 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "user-rules"
};

static _KLkeyword_signatureAvaluesGVKi K811 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 33817605,
  &KDsignature_LsequenceG_typesVKi,
  &K813,
  &KDsignature_LsequenceG_typesVKi,
  &K409
};

static _KLsimple_object_vectorGVKd_2 K812 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJerror_rules_,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_1 K813 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KJerror_rules_
};

_KLsimple_methodGVKe Kitem_set_hashVgrammar_compiler = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K816,
  &Kitem_set_hashVgrammar_compilerI
};

static _KLsignatureAvaluesGVKi K816 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33556489,
  &K653,
  &K817
};

static _KLsimple_object_vectorGVKd_2 K817 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLintegerGVKd,
  &KLobjectGVKd
};

static _KLsignatureAvaluesGVKi K818 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33556485,
  &K819,
  &KDsignature_LfunctionG_typesVKi
};

static _KLsimple_object_vectorGVKd_1 K819 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLitem_set_tableGVgrammar_compiler
};

static _KLimplementation_classGVKe K820 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 477102101,
  &KLitem_set_tableGVgrammar_compiler,
  &KLitem_set_tableGVgrammar_compilerW,
  &KPfalseVKi,
  &K821,
  (D) -3,
  &KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0,
  &K823,
  &K824,
  (D) 45,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K821,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_5 K821 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 21,
  &Kelement_typeVKeHLlimited_collectionG,
  &Ktable_vectorVKeHLtableG,
  &Kinitial_entriesVKiHLtableG,
  &Kgrow_size_functionVKeHLtableG,
  &KweakQVKiHLtableG
};

_KLkeyword_methodGVKe KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_6,
  &K825,
  &key_mep_2,
  &KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0I,
  &K826
};

static _KLsimple_object_vectorGVKd_2 K823 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLtableGVKd,
  &KLsealed_constructorGVgrammar_compiler
};

static _KLsimple_object_vectorGVKd_12 K824 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 49,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLobject_with_elementsGVKe,
  &KLmutable_object_with_elementsGVKe,
  &KLcollectionGVKd,
  &KLlimited_collectionGVKe,
  &KLstretchy_collectionGVKd,
  &KLmutable_collectionGVKd,
  &KLexplicit_key_collectionGVKd,
  &KLmutable_explicit_key_collectionGVKd,
  &KLtableGVKd,
  &KLitem_set_tableGVgrammar_compiler
};

static _KLkeyword_signatureAvaluesGVKi K825 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K827,
  &KDsignature_LobjectG_typesVKi,
  &K819
};

static _KLsimple_object_vectorGVKd_8 K826 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 33,
  &KJelement_type_,
  &KLobjectGVKd,
  &KJsize_,
  (D) 41,
  &KJgrow_size_function_,
  &Kdefault_grow_sizeVKe,
  &KJweak_,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_4 K827 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJelement_type_,
  &KJsize_,
  &KJgrow_size_function_,
  &KJweak_
};

static _KLbyte_stringGVKd_16 K828 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "<item-set-table>"
};

static _KLimplementation_classGVKe K829 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 527433741,
  &KLterminalGVgrammar_compiler,
  &KLterminalGVgrammar_compilerW,
  &KPfalseVKi,
  &K188,
  (D) -3,
  &KLterminalGZ32ZconstructorVgrammar_compilerMM0,
  &K134,
  &K831,
  (D) 13,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K188,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

_KLkeyword_methodGVKe KLterminalGZ32ZconstructorVgrammar_compilerMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K832,
  &key_mep_2,
  &KLterminalGZ32ZconstructorVgrammar_compilerMM0I,
  &K193
};

static _KLsimple_object_vectorGVKd_6 K831 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KLtermGVgrammar_compiler,
  &KLterminalGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLkeyword_signatureAvaluesGVKi K832 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K194,
  &KDsignature_LobjectG_typesVKi,
  &K833
};

static _KLsimple_object_vectorGVKd_1 K833 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLterminalGVgrammar_compiler
};

static _KLbyte_stringGVKd_10 K834 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "<terminal>"
};

static _KLbyte_stringGVKd_5 K836 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "index"
};

static _KLbyte_stringGVKd_3 K837 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 13,
  "eoi"
};

static _KLsubclassGVKe K838 = {
  &KLsubclassGVKeW /* wrapper */,
  &Ksubclass_instanceQVKiI,
  &KLsealed_constructorGVgrammar_compiler
};

static _KLimplementation_classGVKe K839 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (D) 410255361,
  &KLsealed_constructorGVgrammar_compiler,
  &KLsealed_constructorGVgrammar_compilerW,
  &KPfalseVKi,
  &KPempty_vectorVKi,
  (D) -3,
  &Kdefault_class_constructorVKi,
  &K840,
  &K841,
  (D) 5,
  &KPempty_vectorVKi,
  &K842,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &K851,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_1 K840 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLobjectGVKd
};

static _KLsimple_object_vectorGVKd_6 K841 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 25,
  &KLobjectGVKd,
  &KLsealed_constructorGVgrammar_compiler,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_11 K842 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 45,
  &KLconditionGVKd,
  &KLwarningGVKd,
  &KLobject_with_elementsGVKe,
  &KLmutable_object_with_elementsGVKe,
  &KLcollectionGVKd,
  &KLlimited_collectionGVKe,
  &KLstretchy_collectionGVKd,
  &KLmutable_collectionGVKd,
  &KLexplicit_key_collectionGVKd,
  &KLmutable_explicit_key_collectionGVKd,
  &KLtableGVKd
};

static _KLbyte_stringGVKd_20 K843 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 81,
  "<sealed-constructor>"
};

_KLsimple_methodGVKe KemptyQVKdMgrammar_compilerM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K850,
  &KemptyQVKdMgrammar_compilerM0I
};

_KLkeyword_methodGVKe KinitializeVKdMgrammar_compilerM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_2,
  &K849,
  &key_mep_2,
  &KinitializeVKdMgrammar_compilerM0I,
  &KPempty_vectorVKi
};

static _KLkeyword_signatureGVKe K849 = {
  &KLkeyword_signatureGVKeW /* wrapper */,
  (D) 45350917,
  &K833,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsignatureAvaluesGVKi K850 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555461,
  &K519,
  &KDsignature_LbooleanG_typesVKi
};

static _KLpairGVKd K851 = {
  &KLpairGVKdW /* wrapper */,
  &KLgrammar_conflictGVgrammar_compiler,
  &K852
};

static _KLpairGVKd K852 = {
  &KLpairGVKdW /* wrapper */,
  &KLaction_entryGVgrammar_compiler,
  &K853
};

static _KLpairGVKd K853 = {
  &KLpairGVKdW /* wrapper */,
  &KLpropagation_entryGVgrammar_compiler,
  &K854
};

static _KLpairGVKd K854 = {
  &KLpairGVKdW /* wrapper */,
  &KLderiv_ruleGVgrammar_compiler,
  &K855
};

static _KLpairGVKd K855 = {
  &KLpairGVKdW /* wrapper */,
  &KLderiv_itemGVgrammar_compiler,
  &K856
};

static _KLpairGVKd K856 = {
  &KLpairGVKdW /* wrapper */,
  &KLgvarsGVgrammar_compiler,
  &K857
};

static _KLpairGVKd K857 = {
  &KLpairGVKdW /* wrapper */,
  &KLgrammarGVgrammar_compiler,
  &K858
};

static _KLpairGVKd K858 = {
  &KLpairGVKdW /* wrapper */,
  &KLitem_set_tableGVgrammar_compiler,
  &K859
};

static _KLpairGVKd K859 = {
  &KLpairGVKdW /* wrapper */,
  &KLitemGVgrammar_compiler,
  &K860
};

static _KLpairGVKd K860 = {
  &KLpairGVKdW /* wrapper */,
  &KLtermGVgrammar_compiler,
  &K861
};

static _KLpairGVKd K861 = {
  &KLpairGVKdW /* wrapper */,
  &KLruleGVgrammar_compiler,
  &KPempty_listVKi
};

static _KLpairGVKd K862 = {
  &KLpairGVKdW /* wrapper */,
  &KLnon_terminalGVgrammar_compiler,
  &K863
};

static _KLpairGVKd K863 = {
  &KLpairGVKdW /* wrapper */,
  &KLterminalGVgrammar_compiler,
  &KPempty_listVKi
};

static _KLpairGVKd K864 = {
  &KLpairGVKdW /* wrapper */,
  &KLnon_empty_itemGVgrammar_compiler,
  &K865
};

static _KLpairGVKd K865 = {
  &KLpairGVKdW /* wrapper */,
  &KLempty_itemGVgrammar_compiler,
  &KPempty_listVKi
};

/* Code */

D KLterminalGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_term_token_, D Uunique_term_index_) {
  D T5;
  D Uunique_term_tokenF6;
  D T7;
  D Uunique_term_indexF8;
  D T9;
  D Uunique_term_indexF10;
  D T11_0;
  D T12;
  _KLsimple_object_vectorGVKd_1 T13 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T14;
  D T15;
  _KLsimple_object_vectorGVKd_1 T16 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T17;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  T12 = primitive_idQ(Uunique_term_token_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  if (T12 != &KPfalseVKi) {
    T13.vector_element_[0] = &KJtoken_;
    T14 = KerrorVKdMM1I(&K29, &T13);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
    T5 = T14;
    Uunique_term_tokenF6 = T5;
  } else {
    Uunique_term_tokenF6 = Uunique_term_token_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  T15 = primitive_idQ(Uunique_term_index_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  if (T15 != &KPfalseVKi) {
    T16.vector_element_[0] = IKJindex_;
    T17 = KerrorVKdMM1I(&K29, &T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
    T7 = T17;
    Uunique_term_indexF8 = T7;
  } else {
    Uunique_term_indexF8 = Uunique_term_index_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  T9 = primitive_object_allocate_filled(4,&KLterminalGVgrammar_compilerW,3,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(Uunique_term_tokenF6, T9, 0);
  primitive_type_check(Uunique_term_indexF8, &KLindexGVgrammar_compiler);
  Uunique_term_indexF10 = Uunique_term_indexF8;
  SLOT_VALUE_SETTER(Uunique_term_indexF10, T9, 1);
  SLOT_VALUE_SETTER(&KPfalseVKi, T9, 2);
  KinitializeVKdMgrammar_compilerM0I(T9, init_args_);
  T11_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:52
  MV_SET_COUNT(1);
  return(T11_0);
}

D Ktable_protocolVKdMgrammar_compilerM0I (D table_) {
  D T2_0;
  D T2_1;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:92
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:94
  T2_0 = &KEVKd;
  T2_1 = &Kitem_set_hashVgrammar_compiler;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:92
  MV_SET_ELT(1, T2_1);
  MV_SET_COUNT(2);
  return(T2_0);
}

D KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_grammar_conflict_terminal_, D Uunique_grammar_conflict_action_1_, D Uunique_grammar_conflict_rule_1_, D Uunique_grammar_conflict_position_1_, D Uunique_grammar_conflict_action_2_, D Uunique_grammar_conflict_rule_2_, D Uunique_grammar_conflict_position_2_) {
  D T10;
  D Uunique_grammar_conflict_terminalF11;
  D T12;
  D Uunique_grammar_conflict_action_1F13;
  D T14;
  D Uunique_grammar_conflict_rule_1F15;
  D T16;
  D Uunique_grammar_conflict_position_1F17;
  D T18;
  D Uunique_grammar_conflict_action_2F19;
  D T20;
  D Uunique_grammar_conflict_rule_2F21;
  D T22;
  D Uunique_grammar_conflict_position_2F23;
  D T24;
  D Uunique_grammar_conflict_action_1F25;
  D Uunique_grammar_conflict_rule_1F26;
  D Uunique_grammar_conflict_position_1F27;
  D Uunique_grammar_conflict_action_2F28;
  D Uunique_grammar_conflict_rule_2F29;
  D Uunique_grammar_conflict_position_2F30;
  D T31_0;
  D T32;
  _KLsimple_object_vectorGVKd_1 T33 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T34;
  D T35;
  _KLsimple_object_vectorGVKd_1 T36 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T37;
  D T38;
  _KLsimple_object_vectorGVKd_1 T39 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T40;
  D T41;
  _KLsimple_object_vectorGVKd_1 T42 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T43;
  D T44;
  _KLsimple_object_vectorGVKd_1 T45 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T46;
  D T47;
  _KLsimple_object_vectorGVKd_1 T48 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T49;
  D T50;
  _KLsimple_object_vectorGVKd_1 T51 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T52;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T32 = primitive_idQ(Uunique_grammar_conflict_terminal_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T32 != &KPfalseVKi) {
    T33.vector_element_[0] = IKJterminal_;
    T34 = KerrorVKdMM1I(&K29, &T33);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T10 = T34;
    Uunique_grammar_conflict_terminalF11 = T10;
  } else {
    Uunique_grammar_conflict_terminalF11 = Uunique_grammar_conflict_terminal_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T35 = primitive_idQ(Uunique_grammar_conflict_action_1_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T35 != &KPfalseVKi) {
    T36.vector_element_[0] = IKJaction_1_;
    T37 = KerrorVKdMM1I(&K29, &T36);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T12 = T37;
    Uunique_grammar_conflict_action_1F13 = T12;
  } else {
    Uunique_grammar_conflict_action_1F13 = Uunique_grammar_conflict_action_1_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T38 = primitive_idQ(Uunique_grammar_conflict_rule_1_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T38 != &KPfalseVKi) {
    T39.vector_element_[0] = IKJrule_1_;
    T40 = KerrorVKdMM1I(&K29, &T39);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T14 = T40;
    Uunique_grammar_conflict_rule_1F15 = T14;
  } else {
    Uunique_grammar_conflict_rule_1F15 = Uunique_grammar_conflict_rule_1_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T41 = primitive_idQ(Uunique_grammar_conflict_position_1_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T41 != &KPfalseVKi) {
    T42.vector_element_[0] = IKJposition_1_;
    T43 = KerrorVKdMM1I(&K29, &T42);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T16 = T43;
    Uunique_grammar_conflict_position_1F17 = T16;
  } else {
    Uunique_grammar_conflict_position_1F17 = Uunique_grammar_conflict_position_1_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T44 = primitive_idQ(Uunique_grammar_conflict_action_2_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T44 != &KPfalseVKi) {
    T45.vector_element_[0] = IKJaction_2_;
    T46 = KerrorVKdMM1I(&K29, &T45);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T18 = T46;
    Uunique_grammar_conflict_action_2F19 = T18;
  } else {
    Uunique_grammar_conflict_action_2F19 = Uunique_grammar_conflict_action_2_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T47 = primitive_idQ(Uunique_grammar_conflict_rule_2_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T47 != &KPfalseVKi) {
    T48.vector_element_[0] = IKJrule_2_;
    T49 = KerrorVKdMM1I(&K29, &T48);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T20 = T49;
    Uunique_grammar_conflict_rule_2F21 = T20;
  } else {
    Uunique_grammar_conflict_rule_2F21 = Uunique_grammar_conflict_rule_2_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T50 = primitive_idQ(Uunique_grammar_conflict_position_2_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  if (T50 != &KPfalseVKi) {
    T51.vector_element_[0] = IKJposition_2_;
    T52 = KerrorVKdMM1I(&K29, &T51);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
    T22 = T52;
    Uunique_grammar_conflict_position_2F23 = T22;
  } else {
    Uunique_grammar_conflict_position_2F23 = Uunique_grammar_conflict_position_2_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T24 = primitive_object_allocate_filled(8,&KLgrammar_conflictGVgrammar_compilerW,7,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_terminalF11, T24, 0);
  primitive_type_check(Uunique_grammar_conflict_action_1F13, &K36);
  Uunique_grammar_conflict_action_1F25 = Uunique_grammar_conflict_action_1F13;
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_action_1F25, T24, 1);
  primitive_type_check(Uunique_grammar_conflict_rule_1F15, &KLsequenceGVKd);
  Uunique_grammar_conflict_rule_1F26 = Uunique_grammar_conflict_rule_1F15;
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_rule_1F26, T24, 2);
  primitive_type_check(Uunique_grammar_conflict_position_1F17, &KLintegerGVKd);
  Uunique_grammar_conflict_position_1F27 = Uunique_grammar_conflict_position_1F17;
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_position_1F27, T24, 3);
  primitive_type_check(Uunique_grammar_conflict_action_2F19, &K36);
  Uunique_grammar_conflict_action_2F28 = Uunique_grammar_conflict_action_2F19;
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_action_2F28, T24, 4);
  primitive_type_check(Uunique_grammar_conflict_rule_2F21, &KLsequenceGVKd);
  Uunique_grammar_conflict_rule_2F29 = Uunique_grammar_conflict_rule_2F21;
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_rule_2F29, T24, 5);
  primitive_type_check(Uunique_grammar_conflict_position_2F23, &KLintegerGVKd);
  Uunique_grammar_conflict_position_2F30 = Uunique_grammar_conflict_position_2F23;
  SLOT_VALUE_SETTER(Uunique_grammar_conflict_position_2F30, T24, 6);
  T31_0 = T24;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  MV_SET_COUNT(1);
  return(T31_0);
}

D KLaction_entryGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_aentry_shiftQ_, D Uunique_aentry_item_) {
  D T5;
  D Uunique_aentry_shiftQF6;
  D T7;
  D Uunique_aentry_itemF8;
  D T9;
  D Uunique_aentry_shiftQF10;
  D Uunique_aentry_itemF11;
  D T12_0;
  D T13;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T15;
  D T16;
  _KLsimple_object_vectorGVKd_1 T17 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T18;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  T13 = primitive_idQ(Uunique_aentry_shiftQ_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  if (T13 != &KPfalseVKi) {
    T14.vector_element_[0] = IKJshiftQ_;
    T15 = KerrorVKdMM1I(&K29, &T14);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
    T5 = T15;
    Uunique_aentry_shiftQF6 = T5;
  } else {
    Uunique_aentry_shiftQF6 = Uunique_aentry_shiftQ_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  T16 = primitive_idQ(Uunique_aentry_item_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  if (T16 != &KPfalseVKi) {
    T17.vector_element_[0] = IKJitem_;
    T18 = KerrorVKdMM1I(&K29, &T17);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
    T7 = T18;
    Uunique_aentry_itemF8 = T7;
  } else {
    Uunique_aentry_itemF8 = Uunique_aentry_item_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  T9 = primitive_object_allocate_filled(3,&KLaction_entryGVgrammar_compilerW,2,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_aentry_shiftQF6, &KLbooleanGVKd);
  Uunique_aentry_shiftQF10 = Uunique_aentry_shiftQF6;
  SLOT_VALUE_SETTER(Uunique_aentry_shiftQF10, T9, 0);
  primitive_type_check(Uunique_aentry_itemF8, &KLitemGVgrammar_compiler);
  Uunique_aentry_itemF11 = Uunique_aentry_itemF8;
  SLOT_VALUE_SETTER(Uunique_aentry_itemF11, T9, 1);
  T12_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:926
  MV_SET_COUNT(1);
  return(T12_0);
}

D KLruleGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_rule_index_, D Uunique_rule_lhs_, D Uunique_rule_user_rule_) {
  D T6;
  D Uunique_rule_indexF7;
  D T8;
  D Uunique_rule_lhsF9;
  D T10;
  D Uunique_rule_user_ruleF11;
  D T12;
  D Uunique_rule_indexF13;
  D Uunique_rule_lhsF14;
  D Uunique_rule_user_ruleF15;
  D T16_0;
  D T17;
  _KLsimple_object_vectorGVKd_1 T18 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T19;
  D T20;
  _KLsimple_object_vectorGVKd_1 T21 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T22;
  D T23;
  _KLsimple_object_vectorGVKd_1 T24 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T25;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  T17 = primitive_idQ(Uunique_rule_index_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  if (T17 != &KPfalseVKi) {
    T18.vector_element_[0] = IKJindex_;
    T19 = KerrorVKdMM1I(&K29, &T18);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
    T6 = T19;
    Uunique_rule_indexF7 = T6;
  } else {
    Uunique_rule_indexF7 = Uunique_rule_index_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  T20 = primitive_idQ(Uunique_rule_lhs_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  if (T20 != &KPfalseVKi) {
    T21.vector_element_[0] = IKJlhs_;
    T22 = KerrorVKdMM1I(&K29, &T21);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
    T8 = T22;
    Uunique_rule_lhsF9 = T8;
  } else {
    Uunique_rule_lhsF9 = Uunique_rule_lhs_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  T23 = primitive_idQ(Uunique_rule_user_rule_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  if (T23 != &KPfalseVKi) {
    T24.vector_element_[0] = IKJuser_rule_;
    T25 = KerrorVKdMM1I(&K29, &T24);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
    T10 = T25;
    Uunique_rule_user_ruleF11 = T10;
  } else {
    Uunique_rule_user_ruleF11 = Uunique_rule_user_rule_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  T12 = primitive_object_allocate_filled(5,&KLruleGVgrammar_compilerW,4,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_rule_indexF7, &KLindexGVgrammar_compiler);
  Uunique_rule_indexF13 = Uunique_rule_indexF7;
  SLOT_VALUE_SETTER(Uunique_rule_indexF13, T12, 0);
  primitive_type_check(Uunique_rule_lhsF9, &KLnon_terminalGVgrammar_compiler);
  Uunique_rule_lhsF14 = Uunique_rule_lhsF9;
  SLOT_VALUE_SETTER(Uunique_rule_lhsF14, T12, 1);
  primitive_type_check(Uunique_rule_user_ruleF11, &KLsequenceGVKd);
  Uunique_rule_user_ruleF15 = Uunique_rule_user_ruleF11;
  SLOT_VALUE_SETTER(Uunique_rule_user_ruleF15, T12, 2);
  SLOT_VALUE_SETTER(&KPunboundVKi, T12, 3);
  T16_0 = T12;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:39
  MV_SET_COUNT(1);
  return(T16_0);
}

D KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_term_token_, D Uunique_term_index_) {
  D T5;
  D Uunique_term_tokenF6;
  D T7;
  D Uunique_term_indexF8;
  D T9;
  D Uunique_term_indexF10;
  D T11_0;
  D T12;
  _KLsimple_object_vectorGVKd_1 T13 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T14;
  D T15;
  _KLsimple_object_vectorGVKd_1 T16 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T17;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  T12 = primitive_idQ(Uunique_term_token_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  if (T12 != &KPfalseVKi) {
    T13.vector_element_[0] = &KJtoken_;
    T14 = KerrorVKdMM1I(&K29, &T13);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
    T5 = T14;
    Uunique_term_tokenF6 = T5;
  } else {
    Uunique_term_tokenF6 = Uunique_term_token_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  T15 = primitive_idQ(Uunique_term_index_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  if (T15 != &KPfalseVKi) {
    T16.vector_element_[0] = IKJindex_;
    T17 = KerrorVKdMM1I(&K29, &T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
    T7 = T17;
    Uunique_term_indexF8 = T7;
  } else {
    Uunique_term_indexF8 = Uunique_term_index_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  T9 = primitive_object_allocate_filled(9,&KLnon_terminalGVgrammar_compilerW,8,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(Uunique_term_tokenF6, T9, 0);
  primitive_type_check(Uunique_term_indexF8, &KLindexGVgrammar_compiler);
  Uunique_term_indexF10 = Uunique_term_indexF8;
  SLOT_VALUE_SETTER(Uunique_term_indexF10, T9, 1);
  SLOT_VALUE_SETTER(&KPfalseVKi, T9, 2);
  SLOT_VALUE_SETTER(&KPempty_listVKi, T9, 3);
  SLOT_VALUE_SETTER(&KPempty_listVKi, T9, 4);
  SLOT_VALUE_SETTER(&KPfalseVKi, T9, 5);
  SLOT_VALUE_SETTER(&KPfalseVKi, T9, 6);
  SLOT_VALUE_SETTER(&KPempty_listVKi, T9, 7);
  T11_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:58
  MV_SET_COUNT(1);
  return(T11_0);
}

D KLtermGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_term_token_, D Uunique_term_index_) {
  D T5;
  D Uunique_term_tokenF6;
  D T7;
  D Uunique_term_indexF8;
  D T9;
  D Uunique_term_indexF10;
  D T11_0;
  D T12;
  _KLsimple_object_vectorGVKd_1 T13 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T14;
  D T15;
  _KLsimple_object_vectorGVKd_1 T16 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T17;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  T12 = primitive_idQ(Uunique_term_token_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  if (T12 != &KPfalseVKi) {
    T13.vector_element_[0] = &KJtoken_;
    T14 = KerrorVKdMM1I(&K29, &T13);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
    T5 = T14;
    Uunique_term_tokenF6 = T5;
  } else {
    Uunique_term_tokenF6 = Uunique_term_token_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  T15 = primitive_idQ(Uunique_term_index_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  if (T15 != &KPfalseVKi) {
    T16.vector_element_[0] = IKJindex_;
    T17 = KerrorVKdMM1I(&K29, &T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
    T7 = T17;
    Uunique_term_indexF8 = T7;
  } else {
    Uunique_term_indexF8 = Uunique_term_index_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  T9 = primitive_object_allocate_filled(4,&KLtermGVgrammar_compilerW,3,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(Uunique_term_tokenF6, T9, 0);
  primitive_type_check(Uunique_term_indexF8, &KLindexGVgrammar_compiler);
  Uunique_term_indexF10 = Uunique_term_indexF8;
  SLOT_VALUE_SETTER(Uunique_term_indexF10, T9, 1);
  SLOT_VALUE_SETTER(&KPfalseVKi, T9, 2);
  APPLY2(&KinitializeVKd, T9, init_args_);
  T11_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:46
  MV_SET_COUNT(1);
  return(T11_0);
}

D KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_pentry_from_key_, D Uunique_pentry_goto_key_, D Uunique_pentry_next_) {
  D T6;
  D Uunique_pentry_from_keyF7;
  D T8;
  D Uunique_pentry_goto_keyF9;
  D T10;
  D Uunique_pentry_nextF11;
  D T12;
  D Uunique_pentry_nextF13;
  D T14_0;
  D T15;
  _KLsimple_object_vectorGVKd_1 T16 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T17;
  D T18;
  _KLsimple_object_vectorGVKd_1 T19 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T20;
  D T21;
  _KLsimple_object_vectorGVKd_1 T22 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T23;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  T15 = primitive_idQ(Uunique_pentry_from_key_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  if (T15 != &KPfalseVKi) {
    T16.vector_element_[0] = IKJfrom_key_;
    T17 = KerrorVKdMM1I(&K29, &T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
    T6 = T17;
    Uunique_pentry_from_keyF7 = T6;
  } else {
    Uunique_pentry_from_keyF7 = Uunique_pentry_from_key_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  T18 = primitive_idQ(Uunique_pentry_goto_key_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  if (T18 != &KPfalseVKi) {
    T19.vector_element_[0] = IKJgoto_key_;
    T20 = KerrorVKdMM1I(&K29, &T19);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
    T8 = T20;
    Uunique_pentry_goto_keyF9 = T8;
  } else {
    Uunique_pentry_goto_keyF9 = Uunique_pentry_goto_key_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  T21 = primitive_idQ(Uunique_pentry_next_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  if (T21 != &KPfalseVKi) {
    T22.vector_element_[0] = &KJnext_;
    T23 = KerrorVKdMM1I(&K29, &T22);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
    T10 = T23;
    Uunique_pentry_nextF11 = T10;
  } else {
    Uunique_pentry_nextF11 = Uunique_pentry_next_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  T12 = primitive_object_allocate_filled(4,&KLpropagation_entryGVgrammar_compilerW,3,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(Uunique_pentry_from_keyF7, T12, 0);
  SLOT_VALUE_SETTER(Uunique_pentry_goto_keyF9, T12, 1);
  primitive_type_check(Uunique_pentry_nextF11, &K297);
  Uunique_pentry_nextF13 = Uunique_pentry_nextF11;
  SLOT_VALUE_SETTER(Uunique_pentry_nextF13, T12, 2);
  T14_0 = T12;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:742
  MV_SET_COUNT(1);
  return(T14_0);
}

D KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_deriv_rule_to_, D Uunique_deriv_rule_terminals_) {
  D T5;
  D Uunique_deriv_rule_toF6;
  D T7;
  D Uunique_deriv_rule_terminalsF8;
  D T9;
  D Uunique_deriv_rule_toF10;
  D Uunique_deriv_rule_terminalsF11;
  D T12_0;
  D T13;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T15;
  D T16;
  _KLsimple_object_vectorGVKd_1 T17 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T18;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  T13 = primitive_idQ(Uunique_deriv_rule_to_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  if (T13 != &KPfalseVKi) {
    T14.vector_element_[0] = &KJto_;
    T15 = KerrorVKdMM1I(&K29, &T14);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
    T5 = T15;
    Uunique_deriv_rule_toF6 = T5;
  } else {
    Uunique_deriv_rule_toF6 = Uunique_deriv_rule_to_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  T16 = primitive_idQ(Uunique_deriv_rule_terminals_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  if (T16 != &KPfalseVKi) {
    T17.vector_element_[0] = IKJterminals_;
    T18 = KerrorVKdMM1I(&K29, &T17);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
    T7 = T18;
    Uunique_deriv_rule_terminalsF8 = T7;
  } else {
    Uunique_deriv_rule_terminalsF8 = Uunique_deriv_rule_terminals_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  T9 = primitive_object_allocate_filled(3,&KLderiv_ruleGVgrammar_compilerW,2,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_deriv_rule_toF6, &KLnon_terminalGVgrammar_compiler);
  Uunique_deriv_rule_toF10 = Uunique_deriv_rule_toF6;
  SLOT_VALUE_SETTER(Uunique_deriv_rule_toF10, T9, 0);
  primitive_type_check(Uunique_deriv_rule_terminalsF8, &KLlistGVKd);
  Uunique_deriv_rule_terminalsF11 = Uunique_deriv_rule_terminalsF8;
  SLOT_VALUE_SETTER(Uunique_deriv_rule_terminalsF11, T9, 1);
  T12_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:448
  MV_SET_COUNT(1);
  return(T12_0);
}

D KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_deriv_item_initial_, D Uunique_deriv_item_result_, D Uunique_deriv_item_terminal_) {
  D T6;
  D Uunique_deriv_item_initialF7;
  D T8;
  D Uunique_deriv_item_resultF9;
  D T10;
  D Uunique_deriv_item_terminalF11;
  D T12;
  D Uunique_deriv_item_initialF13;
  D Uunique_deriv_item_resultF14;
  D Uunique_deriv_item_terminalF15;
  D T16_0;
  D T17;
  _KLsimple_object_vectorGVKd_1 T18 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T19;
  D T20;
  _KLsimple_object_vectorGVKd_1 T21 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T22;
  D T23;
  _KLsimple_object_vectorGVKd_1 T24 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T25;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  T17 = primitive_idQ(Uunique_deriv_item_initial_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  if (T17 != &KPfalseVKi) {
    T18.vector_element_[0] = IKJinitial_;
    T19 = KerrorVKdMM1I(&K29, &T18);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
    T6 = T19;
    Uunique_deriv_item_initialF7 = T6;
  } else {
    Uunique_deriv_item_initialF7 = Uunique_deriv_item_initial_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  T20 = primitive_idQ(Uunique_deriv_item_result_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  if (T20 != &KPfalseVKi) {
    T21.vector_element_[0] = IKJresult_;
    T22 = KerrorVKdMM1I(&K29, &T21);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
    T8 = T22;
    Uunique_deriv_item_resultF9 = T8;
  } else {
    Uunique_deriv_item_resultF9 = Uunique_deriv_item_result_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  T23 = primitive_idQ(Uunique_deriv_item_terminal_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  if (T23 != &KPfalseVKi) {
    T24.vector_element_[0] = IKJterminal_;
    T25 = KerrorVKdMM1I(&K29, &T24);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
    T10 = T25;
    Uunique_deriv_item_terminalF11 = T10;
  } else {
    Uunique_deriv_item_terminalF11 = Uunique_deriv_item_terminal_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  T12 = primitive_object_allocate_filled(4,&KLderiv_itemGVgrammar_compilerW,3,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_deriv_item_initialF7, &KLnon_terminalGVgrammar_compiler);
  Uunique_deriv_item_initialF13 = Uunique_deriv_item_initialF7;
  SLOT_VALUE_SETTER(Uunique_deriv_item_initialF13, T12, 0);
  primitive_type_check(Uunique_deriv_item_resultF9, &KLnon_terminalGVgrammar_compiler);
  Uunique_deriv_item_resultF14 = Uunique_deriv_item_resultF9;
  SLOT_VALUE_SETTER(Uunique_deriv_item_resultF14, T12, 1);
  primitive_type_check(Uunique_deriv_item_terminalF11, &K353);
  Uunique_deriv_item_terminalF15 = Uunique_deriv_item_terminalF11;
  SLOT_VALUE_SETTER(Uunique_deriv_item_terminalF15, T12, 2);
  T16_0 = T12;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:439
  MV_SET_COUNT(1);
  return(T16_0);
}

D Kcompile_grammar_rulesVgrammar_compilerI (D rules_, D Urest_, D error_rules_) {
  D error_rulesF4;
  D T5_0;
  D T6_0;
  D T7;
  D T8;
  D gv_;
  D T10_0;
  _KLsimple_object_vectorGVKd_4 T11 = {&KLsimple_object_vectorGVKdW, (D) 17};

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:234
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:234
  primitive_type_check(error_rules_, &KLsequenceGVKd);
  error_rulesF4 = error_rules_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:238
  T7 = KasVKdMM41I(&KLsimple_object_vectorGVKd, rules_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:239
  T8 = KasVKdMM41I(&KLsimple_object_vectorGVKd, error_rulesF4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:237
  T11.vector_element_[0] = IKJuser_rules_;
  T11.vector_element_[1] = T7;
  T11.vector_element_[2] = IKJuser_error_rules_;
  T11.vector_element_[3] = T8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:237
  T10_0 = KLgvarsGZ32ZconstructorVgrammar_compilerMM0I(&KLgvarsGVgrammar_compiler, &T11, T7, T8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:237
  gv_ = T10_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:240
  Ksetup_symbolsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:241
  Ksetup_first_setsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:242
  Ksetup_derivsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:243
  Kcreate_parse_tableVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:244
  Kdefine_actionsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:245
  T5_0 = Kmake_compiled_grammarVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:234
  T6_0 = T5_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T5_0);
    primitive_type_check(T6_0, &KLgrammarGVgrammar_compiler);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:234
  MV_SET_COUNT(1);
  return(T6_0);
}

D KLgvarsGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_Pgrammar_user_rules_, D Uunique_Pgrammar_user_error_rules_) {
  D T5;
  D Uunique_Pgrammar_user_rulesF6;
  D T7;
  D Uunique_Pgrammar_user_error_rulesF8;
  D T9;
  D Uunique_Pgrammar_user_rulesF10;
  D Uunique_Pgrammar_user_error_rulesF11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17_0;
  D T18;
  _KLsimple_object_vectorGVKd_1 T19 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T20;
  D T21;
  _KLsimple_object_vectorGVKd_1 T22 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T23;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  T18 = primitive_idQ(Uunique_Pgrammar_user_rules_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  if (T18 != &KPfalseVKi) {
    T19.vector_element_[0] = IKJuser_rules_;
    T20 = KerrorVKdMM1I(&K29, &T19);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
    T5 = T20;
    Uunique_Pgrammar_user_rulesF6 = T5;
  } else {
    Uunique_Pgrammar_user_rulesF6 = Uunique_Pgrammar_user_rules_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  T21 = primitive_idQ(Uunique_Pgrammar_user_error_rules_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  if (T21 != &KPfalseVKi) {
    T22.vector_element_[0] = IKJuser_error_rules_;
    T23 = KerrorVKdMM1I(&K29, &T22);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
    T7 = T23;
    Uunique_Pgrammar_user_error_rulesF8 = T7;
  } else {
    Uunique_Pgrammar_user_error_rulesF8 = Uunique_Pgrammar_user_error_rules_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  T9 = primitive_object_allocate_filled(13,&KLgvarsGVgrammar_compilerW,12,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_Pgrammar_user_rulesF6, &KLsimple_object_vectorGVKd);
  Uunique_Pgrammar_user_rulesF10 = Uunique_Pgrammar_user_rulesF6;
  SLOT_VALUE_SETTER(Uunique_Pgrammar_user_rulesF10, T9, 0);
  primitive_type_check(Uunique_Pgrammar_user_error_rulesF8, &KLsimple_object_vectorGVKd);
  Uunique_Pgrammar_user_error_rulesF11 = Uunique_Pgrammar_user_error_rulesF8;
  SLOT_VALUE_SETTER(Uunique_Pgrammar_user_error_rulesF11, T9, 1);
  SLOT_VALUE_SETTER(&KPempty_vectorVKi, T9, 2);
  SLOT_VALUE_SETTER(&KPempty_vectorVKi, T9, 3);
  SLOT_VALUE_SETTER(&KPempty_vectorVKi, T9, 4);
  SLOT_VALUE_SETTER(&KPempty_vectorVKi, T9, 5);
  T12 = K808I();
  SLOT_VALUE_SETTER(T12, T9, 6);
  T13 = K807I();
  SLOT_VALUE_SETTER(T13, T9, 7);
  T14 = K806I();
  SLOT_VALUE_SETTER(T14, T9, 8);
  T15 = K805I();
  SLOT_VALUE_SETTER(T15, T9, 9);
  T16 = K804I();
  SLOT_VALUE_SETTER(T16, T9, 10);
  SLOT_VALUE_SETTER(&KPfalseVKi, T9, 11);
  T17_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:142
  MV_SET_COUNT(1);
  return(T17_0);
}

D Ksetup_symbolsVgrammar_compilerI (D gv_) {
  DWORD T2T, T2;
  D tknF3;
  DWORD indexF4T, indexF4;
  D tknF5;
  D T6;
  DWORD rule_index_T, rule_index_;
  D T8;
  D ntF9;
  D seq_;
  D T11;
  D nseq_;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19T, T19;
  D T20;
  D T21;
  D T22;
  D indexF23T, indexF23;
  DWORD T24T, T24;
  D T25;
  D T26;
  D item_index_;
  D T28;
  D T29;
  D T30;
  D T31;
  D T32;
  D T33;
  D previous_;
  D T35;
  D T36;
  D T37;
  D T38;
  D result_T, result_;
  DWORD T40T, T40;
  DWORD T41;
  D T42;
  D T43;
  D T44;
  D T45;
  D T46;
  D T47;
  DWORD T48;
  D T49;
  D terms_;
  D T51_0;
  D T52_0;
  D nont_seq_;
  D T54;
  D T55;
  D T56_0;
  D UtmpF57;
  D T58;
  D T59_0;
  _KLsimple_object_vectorGVKd_4 T60 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T61;
  D T62;
  _KLsimple_object_vectorGVKd_4 T63 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T64;
  DWORD T65;
  D T66;
  D T67;
  D T68;
  DWORD T69;
  D T70;
  D T71;
  D T72;
  D T73_0;
  D ntF74;
  _KLsimple_object_vectorGVKd_1 T75 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T76;
  _KLsimple_object_vectorGVKd_1 T77 = {&KLsimple_object_vectorGVKdW, (D) 5};
  DWORD T78;
  D T79_0;
  D tkn_seq_;
  D rules_;
  D items_;
  D T83;
  D T84;
  D urule_;
  D T86;
  D T87_0;
  D T88;
  D rule_;
  D T90_0;
  _KLsimple_object_vectorGVKd_6 T91 = {&KLsimple_object_vectorGVKdW, (D) 25};
  D T92;
  D T93;
  D T94;
  DWORD T95;
  D T96;
  DWORD T97;
  DWORD T98;
  DWORD T99;
  DWORD T100;
  D T101;
  D empty_;
  D T103_0;
  _KLsimple_object_vectorGVKd_4 T104 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T105;
  D T106;
  D T107;
  D T108;
  _KLsimple_object_vectorGVKd_1 T109 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T110_0;
  D UtmpF111;
  D T112;
  D T113_0;
  _KLsimple_object_vectorGVKd_4 T114 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T115;
  D T116;
  _KLsimple_object_vectorGVKd_4 T117 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T118;
  D T119;
  D T120;
  D T121;
  DWORD T122;
  DWORD T123;
  D T124;
  D new_;
  D T126_0;
  _KLsimple_object_vectorGVKd_8 T127 = {&KLsimple_object_vectorGVKdW, (D) 33};
  D T128;
  DWORD T129;
  DWORD T130;
  D T131;
  DWORD T132;
  DWORD T133;
  D T134;
  D T135;
  D T136;
  DWORD T137;
  DWORD T138;
  D T139;
  DWORD T140;
  DWORD T141;
  D T142;
  DWORD T143;
  D T144;
  D T145;
  D T146;
  D T147;
  D T148;
  DWORD T149;
  D T150;
  D T151;
  DWORD T152;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:319
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:320
  T37 = SLOT_VALUE_INITD(gv_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:321
  T38 = SLOT_VALUE_INITD(T37, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
  T41 = primitive_cast_integer_as_raw(T38);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
  result_T = T38;
  T40T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
    result_ = result_T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
    T40 = T40T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
    T42 = primitive_machine_word_equalQ(T40,T41);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
    if (T42 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      T43 = REPEATED_D_SLOT_VALUE_TAGGED(T37, 1, T40);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      T44 = CALL1(&KsecondVKd, T43);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
      T45 = CONGRUENT_CALL1(T44);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T46 = CONGRUENT_CALL2(result_, T45);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      T47 = T46;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      T48 = primitive_machine_word_add_signal_overflow(T40,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
      result_T = T47;
      T40T = T48;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:322
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:323
  CONGRUENT_CALL_PROLOG(&KLVKd, 2);
  T49 = CONGRUENT_CALL2((D) 65533, result_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:323
  if (T49 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:323
    Kassertion_failureVKiI(&K679, &KPempty_vectorVKi);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:323
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:325
  T51_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:325
  terms_ = T51_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:326
  T52_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:326
  nont_seq_ = T52_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
  T2T = 1;
L1: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
    T2 = T2T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
    T54 = primitive_machine_word_equalQ(T2,T41);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
    if (T54 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
      T55 = REPEATED_D_SLOT_VALUE_TAGGED(T37, 1, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:328
      tknF3 = CALL1(&KfirstVKd, T55);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:329
      T56_0 = KgethashVKiI(terms_, tknF3, &KPfalseVKi, &KPtrueVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:329
      UtmpF57 = T56_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:329
      if (UtmpF57 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        T60.vector_element_[0] = &KJtoken_;
        T60.vector_element_[1] = tknF3;
        T60.vector_element_[2] = IKJindex_;
        T60.vector_element_[3] = (D) 1;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        T59_0 = KLnon_terminalGZ32ZconstructorVgrammar_compilerMM0I(&KLnon_terminalGVgrammar_compiler, &T60, tknF3, (D) 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        T58 = T59_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        T61 = SLOT_VALUE_INITD(terms_, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        T62 = primitive_instanceQ(T58,T61);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        if (T62 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
          T63.vector_element_[0] = &KJvalue_;
          T63.vector_element_[1] = T58;
          T63.vector_element_[2] = &KJtype_;
          T63.vector_element_[3] = T61;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
          CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
          T64 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T63);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
          CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
          CONGRUENT_CALL2(T64, &KPempty_vectorVKi);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        KputhashVKiI(T58, terms_, tknF3);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:330
        KaddXVKdMM3I(nont_seq_, T58);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:329
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
      T65 = primitive_machine_word_add_signal_overflow(T2,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
      T2T = T65;
      goto L1;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:327
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:332
  T66 = KasVKdMM41I(&KLsimple_object_vectorGVKd, nont_seq_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:332
  CALL2(&KPgrammar_non_terminals_setterVgrammar_compiler, T66, gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:333
  T67 = SLOT_VALUE_INITD(gv_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
  T68 = SLOT_VALUE_INITD(T67, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
  T69 = primitive_cast_integer_as_raw(T68);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
  indexF4T = 1;
L2: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
    indexF4 = indexF4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
    T71 = primitive_cast_raw_as_integer(indexF4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
    T70 = primitive_machine_word_less_thanQ(indexF4,T69);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
    if (T70 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:335
      T72 = KelementVKdMM11I(T67, T71, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:335
      tknF5 = CALL1(&KfirstVKd, T72);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:336
      T73_0 = KgethashVKiI(terms_, tknF5, &KPfalseVKi, &KPtrueVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:336
      ntF74 = T73_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:337
      if (ntF74 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:337
        T75.vector_element_[0] = tknF5;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:337
        Kassertion_failureVKiI(&K681, &T75);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:337
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:338
      T6 = CALL1(&Knont_error_rule_indexVgrammar_compiler, ntF74);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:338
      T76 = primitive_as_boolean(T6);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:338
      if (T76 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:338
        T77.vector_element_[0] = tknF5;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:338
        Kassertion_failureVKiI(&K682, &T77);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:338
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:339
      CALL2(&Knont_error_rule_index_setterVgrammar_compiler, T71, ntF74);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
      T78 = primitive_machine_word_add_signal_overflow(indexF4,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
      indexF4T = T78;
      goto L2;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:334
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:342
  T79_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:342
  tkn_seq_ = T79_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:352
  rules_ = KmakeVKdMM23I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, &KPfalseVKi, T38);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:353
  items_ = KmakeVKdMM23I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, &KPfalseVKi, result_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:354
  item_index_ = (D) 1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
  rule_index_T = 1;
L3: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
    rule_index_ = rule_index_T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
    T84 = primitive_cast_raw_as_integer(rule_index_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
    T83 = primitive_machine_word_less_thanQ(rule_index_,T41);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
    if (T83 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:356
      urule_ = KelementVKdMM11I(T37, T84, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:357
      T8 = CALL1(&KfirstVKd, urule_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:357
      T86 = Dtable_entry_emptyVKi;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:357
      T87_0 = KgethashVKiI(terms_, T8, T86, &KPtrueVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:357
      T88 = T87_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:357
      primitive_type_check(T88, &KLnon_terminalGVgrammar_compiler);
      ntF9 = T88;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:358
      seq_ = CALL1(&KsecondVKd, urule_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:359
      CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
      T11 = CONGRUENT_CALL1(seq_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:359
      primitive_type_check(T11, &KLintegerGVKd);
      nseq_ = T11;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:360
      T91.vector_element_[0] = IKJuser_rule_;
      T91.vector_element_[1] = urule_;
      T91.vector_element_[2] = IKJindex_;
      T91.vector_element_[3] = T84;
      T91.vector_element_[4] = IKJlhs_;
      T91.vector_element_[5] = ntF9;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:360
      T90_0 = KLruleGZ32ZconstructorVgrammar_compilerMM0I(&KLruleGVgrammar_compiler, &T91, T84, ntF9, urule_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:360
      rule_ = T90_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:361
      T92 = SLOT_VALUE_INITD(ntF9, 3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:361
      T93 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:361
      SLOT_VALUE_SETTER(rule_, T93, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:361
      SLOT_VALUE_SETTER(T92, T93, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:361
      SLOT_VALUE_SETTER(T93, ntF9, 3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
      T94 = SLOT_VALUE_INITD(rules_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
      T95 = primitive_cast_integer_as_raw(T94);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
      T96 = primitive_machine_word_unsigned_less_thanQ(rule_index_,T95);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
      if (T96 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
        REPEATED_D_SLOT_VALUE_TAGGED_SETTER(rule_, rules_, 1, rule_index_);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
        Kelement_range_errorVKeI(rules_, T84);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:363
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T33 = item_index_;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T97 = primitive_cast_integer_as_raw(T33);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T98 = primitive_cast_integer_as_raw(nseq_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T99 = primitive_machine_word_logxor(T98,1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T100 = primitive_machine_word_add_signal_overflow(T97,T99);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T101 = primitive_cast_raw_as_integer(T100);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T104.vector_element_[0] = IKJrule_;
      T104.vector_element_[1] = rule_;
      T104.vector_element_[2] = IKJindex_;
      T104.vector_element_[3] = T101;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      T103_0 = KLempty_itemGZ32ZconstructorVgrammar_compilerMM0I(&KLempty_itemGVgrammar_compiler, &T104, T101, rule_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:365
      empty_ = T103_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:366
      T105 = primitive_idQ(nseq_,(D) 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:366
      if (T105 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:367
        T106 = SLOT_VALUE_INITD(ntF9, 5);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:367
        T107 = primitive_as_boolean(T106);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:367
        if (T107 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:368
          T108 = SLOT_VALUE_INITD(ntF9, 0);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:367
          T109.vector_element_[0] = T108;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:367
          Kassertion_failureVKiI(&K686, &T109);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:367
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:369
        SLOT_VALUE_SETTER(empty_, ntF9, 5);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:370
        SLOT_VALUE_SETTER(empty_, rule_, 3);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:372
        previous_ = empty_;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T13 = CALL1(&Kforward_iteration_protocolVKd, seq_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T14 = T13;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T15 = MV_GET_ELT(1);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T16 = MV_GET_ELT(2);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T17 = MV_GET_ELT(3);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T18 = MV_GET_ELT(5);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
        T19T = T14;
      L4: ;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
          T19 = T19T;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
          T20 = CALL3(T17, seq_, T19, T15);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
          if (T20 == &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
            T21 = CALL2(T18, seq_, T19);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:344
            T110_0 = KgethashVKiI(terms_, T21, &KPfalseVKi, &KPtrueVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:344
            UtmpF111 = T110_0;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:344
            if (UtmpF111 != &KPfalseVKi) {
              T119 = UtmpF111;
            } else {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:346
              KaddXVKdMM3I(tkn_seq_, T21);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:349
              T120 = SLOT_VALUE_INITD(tkn_seq_, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:349
              T121 = SLOT_VALUE_INITD(T120, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:349
              T122 = primitive_cast_integer_as_raw(T121);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:349
              T123 = primitive_machine_word_subtract_signal_overflow(T122,4);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:349
              T124 = primitive_cast_raw_as_integer(T123);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              T114.vector_element_[0] = &KJtoken_;
              T114.vector_element_[1] = T21;
              T114.vector_element_[2] = IKJindex_;
              T114.vector_element_[3] = T124;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              T113_0 = KLterminalGZ32ZconstructorVgrammar_compilerMM0I(&KLterminalGVgrammar_compiler, &T114, T21, T124);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              T112 = T113_0;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              T115 = SLOT_VALUE_INITD(terms_, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              T116 = primitive_instanceQ(T112,T115);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              if (T116 == &KPfalseVKi) {
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
                T117.vector_element_[0] = &KJvalue_;
                T117.vector_element_[1] = T112;
                T117.vector_element_[2] = &KJtype_;
                T117.vector_element_[3] = T115;
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
                CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
                T118 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T117);
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
                CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
                CONGRUENT_CALL2(T118, &KPempty_vectorVKi);
              }
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:347
              KputhashVKiI(T112, terms_, T21);
              T119 = T112;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:344
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:374
            T32 = item_index_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:374
            T127.vector_element_[0] = IKJrule_;
            T127.vector_element_[1] = rule_;
            T127.vector_element_[2] = IKJindex_;
            T127.vector_element_[3] = T32;
            T127.vector_element_[4] = IKJfirst_term_;
            T127.vector_element_[5] = T119;
            T127.vector_element_[6] = IKJnext_item_;
            T127.vector_element_[7] = empty_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:374
            T126_0 = KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0I(&KLnon_empty_itemGVgrammar_compiler, &T127, T32, rule_, T119, empty_);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:374
            new_ = T126_0;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            T31 = item_index_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            T128 = SLOT_VALUE_INITD(items_, 0);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            T129 = primitive_cast_integer_as_raw(T31);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            T130 = primitive_cast_integer_as_raw(T128);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            T131 = primitive_machine_word_unsigned_less_thanQ(T129,T130);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            if (T131 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
              REPEATED_D_SLOT_VALUE_TAGGED_SETTER(new_, items_, 1, T129);
            } else {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
              Kelement_range_errorVKeI(items_, T31);
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:376
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:377
            T30 = item_index_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:377
            T132 = primitive_cast_integer_as_raw(T30);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:377
            T133 = primitive_machine_word_add_signal_overflow(T132,4);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:377
            T134 = primitive_cast_raw_as_integer(T133);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:377
            item_index_ = T134;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:378
            T36 = previous_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:378
            T135 = primitive_idQ(T36,empty_);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:378
            if (T135 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:379
              SLOT_VALUE_SETTER(new_, rule_, 3);
            } else {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:381
              T35 = previous_;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:381
              CALL2(&Kitem_next_item_setterVgrammar_compiler, new_, T35);
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:378
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:383
            previous_ = new_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
            T22 = CALL2(T16, seq_, T19);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
            T19T = T22;
            goto L4;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:373
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:366
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      T29 = item_index_;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      T136 = SLOT_VALUE_INITD(items_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      T137 = primitive_cast_integer_as_raw(T29);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      T138 = primitive_cast_integer_as_raw(T136);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      T139 = primitive_machine_word_unsigned_less_thanQ(T137,T138);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      if (T139 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
        REPEATED_D_SLOT_VALUE_TAGGED_SETTER(empty_, items_, 1, T137);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
        Kelement_range_errorVKeI(items_, T29);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:386
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:387
      T28 = item_index_;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:387
      T140 = primitive_cast_integer_as_raw(T28);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:387
      T141 = primitive_machine_word_add_signal_overflow(T140,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:387
      T142 = primitive_cast_raw_as_integer(T141);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:387
      item_index_ = T142;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
      T143 = primitive_machine_word_add_signal_overflow(rule_index_,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
      rule_index_T = T143;
      goto L3;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:355
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:389
  SLOT_VALUE_SETTER(items_, gv_, 5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:390
  SLOT_VALUE_SETTER(rules_, gv_, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:391
  T144 = KasVKdMM41I(&KLsimple_object_vectorGVKd, tkn_seq_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:391
  CALL2(&KPgrammar_terminal_tokens_setterVgrammar_compiler, T144, gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  T145 = SLOT_VALUE_INITD(tkn_seq_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  T146 = SLOT_VALUE_INITD(T145, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  T147 = SLOT_VALUE_INITD(gv_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  T148 = SLOT_VALUE_INITD(T147, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  T149 = primitive_cast_integer_as_raw(T148);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  indexF23T = T146;
  T24T = 1;
L5: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
    indexF23 = indexF23T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
    T24 = T24T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
    T150 = primitive_machine_word_equalQ(T24,T149);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
    if (T150 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
      T151 = REPEATED_D_SLOT_VALUE_TAGGED(T147, 1, T24);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:393
      CALL2(&Kterm_index_setterVgrammar_compiler, indexF23, T151);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T25 = CONGRUENT_CALL2(indexF23, (D) 5);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
      T152 = primitive_machine_word_add_signal_overflow(T24,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
      indexF23T = T25;
      T24T = T152;
      goto L5;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
    T26 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:392
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:319
  return(T26);
}

D Ksetup_first_setsVgrammar_compilerI (D gv_) {
  DWORD T1T, T1;
  D nt_;
  D T3;
  D T4;
  D T5;
  D T6;
  DWORD T7;
  D T8;
  D T9;
  D T10;
  DWORD T11;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:397
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
  T5 = SLOT_VALUE_INITD(gv_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
  T6 = SLOT_VALUE_INITD(T5, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
  T7 = primitive_cast_integer_as_raw(T6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
  T1T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
    T1 = T1T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
    T8 = primitive_machine_word_equalQ(T1,T7);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
    if (T8 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
      T9 = REPEATED_D_SLOT_VALUE_TAGGED(T5, 1, T1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
      primitive_type_check(T9, &KLnon_terminalGVgrammar_compiler);
      nt_ = T9;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:399
      T10 = SLOT_VALUE_INITD(nt_, 2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:399
      if (T10 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:400
        T3 = Kcompute_first_setVgrammar_compilerI(gv_, nt_, &KPempty_listVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:400
        SLOT_VALUE_SETTER(T3, nt_, 2);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:399
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
      T11 = primitive_machine_word_add_signal_overflow(T1,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
      T1T = T11;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
    T4 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:398
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:397
  return(T4);
}

D Ksetup_derivsVgrammar_compilerI (D gv_) {
  D rule_set_;
  D itemsF3;
  D T4T, T4;
  D T5;
  D T6;
  D T7;
  D T8_0;
  D T9_0;
  D T10;
  D undone_itemsF11;
  D T12;
  D T13;
  D T14T, T14;
  D T15;
  D T16;
  D T17;
  D undone_itemsF18;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24_0;
  D rules_;
  D T26;
  D T27;
  D T28;
  D T29;
  D T30_0;
  D T31_0;
  D T32;
  D T33;
  D itemsF34T, itemsF34;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:455
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:456
  rule_set_ = Kmake_deriv_rule_setVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:457
  itemsF3 = Kmake_initial_item_listVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
  T4T = itemsF3;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
    T4 = T4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
    T5 = primitive_idQ(T4,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
    if (T5 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      T6 = SLOT_VALUE_INITD(T4, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      CALL1(&Kadd_derivVgrammar_compiler, T6);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      T7 = SLOT_VALUE_INITD(T4, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      T8_0 = T7;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      T9_0 = T8_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T8_0);
        primitive_type_check(T9_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      T10 = T9_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
      T4T = T10;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:458
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:471
  itemsF34T = itemsF3;
L1: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:471
    itemsF34 = itemsF34T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:460
    T21 = primitive_idQ(itemsF34,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:460
    if (T21 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:460
      T16 = &KPfalseVKi;
      MV_SET_ELT(0, &KPfalseVKi);
      MV_SET_COUNT(1);
      T17 = T16;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:461
      T22 = SLOT_VALUE_INITD(itemsF34, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:462
      T23 = SLOT_VALUE_INITD(itemsF34, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:462
      primitive_type_check(T23, &KLlistGVKd);
      undone_itemsF11 = T23;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:462
      undone_itemsF18 = undone_itemsF11;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:463
      T12 = CALL1(&Kderiv_item_initialVgrammar_compiler, T22);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:463
      T24_0 = KgethashVKiI(rule_set_, T12, &KPfalseVKi, &KPtrueVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:463
      rules_ = T24_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:464
      if (rules_ != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
        T13 = CALL2(&Kapply_rulesVgrammar_compiler, rules_, T22);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
        T14T = T13;
      L2: ;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
          T14 = T14T;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
          T26 = primitive_idQ(T14,&KPempty_listVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
          if (T26 == &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
            T27 = SLOT_VALUE_INITD(T14, 0);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:466
            T15 = CALL1(&Kadd_derivVgrammar_compiler, T27);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:466
            if (T15 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:467
              T20 = undone_itemsF18;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:467
              T28 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:467
              SLOT_VALUE_SETTER(T27, T28, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:467
              SLOT_VALUE_SETTER(T20, T28, 1);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:467
              undone_itemsF18 = T28;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:466
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
            T29 = SLOT_VALUE_INITD(T14, 1);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
            T30_0 = T29;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
            T31_0 = T30_0;
            {
              MV_CHECK_TYPE_PROLOGUE(T30_0);
              primitive_type_check(T31_0, &KLlistGVKd);
              MV_CHECK_TYPE_EPILOGUE();
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
            T32 = T31_0;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
            T14T = T32;
            goto L2;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:465
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:464
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:471
      T19 = undone_itemsF18;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:471
      itemsF34T = T19;
      goto L1;
      T17 = T33;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:460
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:471
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:455
  return(T17);
}

D Kcreate_parse_tableVgrammar_compilerI (D gv_) {
  D T1;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:549
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:551
  Kcompute_kernel_setsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:552
  Kinitialize_lookahead_tableVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:553
  Kdetermine_lookaheadsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:554
  T1 = Kpropagate_the_lookaheadsVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:549
  return(T1);
}

D Kdefine_actionsVgrammar_compilerI (D gv_) {
  DWORD T2T, T2;
  D nt_;
  D T4;
  DWORD stateF5T, stateF5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  DWORD T12;
  D T13;
  D T14;
  DWORD T15;
  DWORD T16;
  D T17;
  D T18;
  DWORD T19;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:628
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:629
  T7 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:629
  T8 = SLOT_VALUE_INITD(T7, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:629
  T9 = SLOT_VALUE_INITD(T8, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
  T16 = primitive_cast_integer_as_raw(T9);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
  T10 = SLOT_VALUE_INITD(gv_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
  T11 = SLOT_VALUE_INITD(T10, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
  T12 = primitive_cast_integer_as_raw(T11);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
  T2T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
    T2 = T2T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
    T13 = primitive_machine_word_equalQ(T2,T12);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
    if (T13 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
      T14 = REPEATED_D_SLOT_VALUE_TAGGED(T10, 1, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
      primitive_type_check(T14, &KLnon_terminalGVgrammar_compiler);
      nt_ = T14;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:631
      T4 = Kcompute_nont_deriv_first_setVgrammar_compilerI(nt_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:631
      SLOT_VALUE_SETTER(T4, nt_, 7);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
      T15 = primitive_machine_word_add_signal_overflow(T2,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
      T2T = T15;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:630
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
  stateF5T = 1;
L1: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
    stateF5 = stateF5T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
    T18 = primitive_cast_raw_as_integer(stateF5);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
    T17 = primitive_machine_word_less_thanQ(stateF5,T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
    if (T17 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:634
      CALL2(&Kmake_actionsVgrammar_compiler, gv_, T18);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
      T19 = primitive_machine_word_add_signal_overflow(stateF5,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
      stateF5T = T19;
      goto L1;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
    T6 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:633
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:628
  return(T6);
}

D Kmake_compiled_grammarVgrammar_compilerI (D gv_) {
  D T1;
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8_0;
  D T9;
  D T10_0;
  _KLsimple_object_vectorGVKd_12 T11 = {&KLsimple_object_vectorGVKdW, (D) 49};

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:248
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:250
  T3 = SLOT_VALUE_INITD(gv_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:251
  T4 = SLOT_VALUE_INITD(gv_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:252
  T5 = SLOT_VALUE_INITD(gv_, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:254
  T6 = SLOT_VALUE_INITD(gv_, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  T8_0 = Kobject_classVKdI(T6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  T9 = T8_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  T7 = CALL3(&Kmap_as_oneVKi, T9, &Kanonymous_of_make_compiled_grammarF480, T6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:255
  T1 = Kexternalize_goto_tableVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:256
  T2 = Kexternalize_action_tableVgrammar_compilerI(gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:249
  T11.vector_element_[0] = IKJrules_;
  T11.vector_element_[1] = T3;
  T11.vector_element_[2] = IKJerror_rules_;
  T11.vector_element_[3] = T4;
  T11.vector_element_[4] = IKJterminals_;
  T11.vector_element_[5] = T5;
  T11.vector_element_[6] = IKJrule_reduction_table_;
  T11.vector_element_[7] = T7;
  T11.vector_element_[8] = IKJgoto_table_;
  T11.vector_element_[9] = T1;
  T11.vector_element_[10] = IKJaction_table_;
  T11.vector_element_[11] = T2;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:249
  T10_0 = KLgrammarGZ32ZconstructorVgrammar_compilerMM0I(&KLgrammarGVgrammar_compiler, &T11, T3, T4, T5, T1, T2, T7);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:248
  MV_SET_COUNT(1);
  return(T10_0);
}

D KLgrammarGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_grammar_rules_, D Uunique_grammar_error_rules_, D Uunique_grammar_terminals_, D Uunique_grammar_goto_table_, D Uunique_grammar_action_table_, D Uunique_grammar_rule_reduction_table_) {
  D T9;
  D Uunique_grammar_rulesF10;
  D T11;
  D Uunique_grammar_error_rulesF12;
  D T13;
  D Uunique_grammar_terminalsF14;
  D T15;
  D Uunique_grammar_goto_tableF16;
  D T17;
  D Uunique_grammar_action_tableF18;
  D T19;
  D Uunique_grammar_rule_reduction_tableF20;
  D T21;
  D Uunique_grammar_rulesF22;
  D Uunique_grammar_error_rulesF23;
  D Uunique_grammar_terminalsF24;
  D Uunique_grammar_goto_tableF25;
  D Uunique_grammar_action_tableF26;
  D Uunique_grammar_rule_reduction_tableF27;
  D T28_0;
  D T29;
  _KLsimple_object_vectorGVKd_1 T30 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T31;
  D T32;
  _KLsimple_object_vectorGVKd_1 T33 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T34;
  D T35;
  _KLsimple_object_vectorGVKd_1 T36 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T37;
  D T38;
  _KLsimple_object_vectorGVKd_1 T39 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T40;
  D T41;
  _KLsimple_object_vectorGVKd_1 T42 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T43;
  D T44;
  _KLsimple_object_vectorGVKd_1 T45 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T46;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T29 = primitive_idQ(Uunique_grammar_rules_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  if (T29 != &KPfalseVKi) {
    T30.vector_element_[0] = IKJrules_;
    T31 = KerrorVKdMM1I(&K29, &T30);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
    T9 = T31;
    Uunique_grammar_rulesF10 = T9;
  } else {
    Uunique_grammar_rulesF10 = Uunique_grammar_rules_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T32 = primitive_idQ(Uunique_grammar_error_rules_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  if (T32 != &KPfalseVKi) {
    T33.vector_element_[0] = IKJerror_rules_;
    T34 = KerrorVKdMM1I(&K29, &T33);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
    T11 = T34;
    Uunique_grammar_error_rulesF12 = T11;
  } else {
    Uunique_grammar_error_rulesF12 = Uunique_grammar_error_rules_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T35 = primitive_idQ(Uunique_grammar_terminals_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  if (T35 != &KPfalseVKi) {
    T36.vector_element_[0] = IKJterminals_;
    T37 = KerrorVKdMM1I(&K29, &T36);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
    T13 = T37;
    Uunique_grammar_terminalsF14 = T13;
  } else {
    Uunique_grammar_terminalsF14 = Uunique_grammar_terminals_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T38 = primitive_idQ(Uunique_grammar_goto_table_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  if (T38 != &KPfalseVKi) {
    T39.vector_element_[0] = IKJgoto_table_;
    T40 = KerrorVKdMM1I(&K29, &T39);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
    T15 = T40;
    Uunique_grammar_goto_tableF16 = T15;
  } else {
    Uunique_grammar_goto_tableF16 = Uunique_grammar_goto_table_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T41 = primitive_idQ(Uunique_grammar_action_table_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  if (T41 != &KPfalseVKi) {
    T42.vector_element_[0] = IKJaction_table_;
    T43 = KerrorVKdMM1I(&K29, &T42);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
    T17 = T43;
    Uunique_grammar_action_tableF18 = T17;
  } else {
    Uunique_grammar_action_tableF18 = Uunique_grammar_action_table_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T44 = primitive_idQ(Uunique_grammar_rule_reduction_table_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  if (T44 != &KPfalseVKi) {
    T45.vector_element_[0] = IKJrule_reduction_table_;
    T46 = KerrorVKdMM1I(&K29, &T45);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
    T19 = T46;
    Uunique_grammar_rule_reduction_tableF20 = T19;
  } else {
    Uunique_grammar_rule_reduction_tableF20 = Uunique_grammar_rule_reduction_table_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  T21 = primitive_object_allocate_filled(7,&KLgrammarGVgrammar_compilerW,6,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_grammar_rulesF10, &KLsimple_object_vectorGVKd);
  Uunique_grammar_rulesF22 = Uunique_grammar_rulesF10;
  SLOT_VALUE_SETTER(Uunique_grammar_rulesF22, T21, 0);
  primitive_type_check(Uunique_grammar_error_rulesF12, &KLsimple_object_vectorGVKd);
  Uunique_grammar_error_rulesF23 = Uunique_grammar_error_rulesF12;
  SLOT_VALUE_SETTER(Uunique_grammar_error_rulesF23, T21, 1);
  primitive_type_check(Uunique_grammar_terminalsF14, &KLsimple_object_vectorGVKd);
  Uunique_grammar_terminalsF24 = Uunique_grammar_terminalsF14;
  SLOT_VALUE_SETTER(Uunique_grammar_terminalsF24, T21, 2);
  primitive_type_check(Uunique_grammar_goto_tableF16, &KLsimple_object_vectorGVKd);
  Uunique_grammar_goto_tableF25 = Uunique_grammar_goto_tableF16;
  SLOT_VALUE_SETTER(Uunique_grammar_goto_tableF25, T21, 3);
  primitive_type_check(Uunique_grammar_action_tableF18, &KLsimple_object_vectorGVKd);
  Uunique_grammar_action_tableF26 = Uunique_grammar_action_tableF18;
  SLOT_VALUE_SETTER(Uunique_grammar_action_tableF26, T21, 4);
  primitive_type_check(Uunique_grammar_rule_reduction_tableF20, &KLsimple_object_vectorGVKd);
  Uunique_grammar_rule_reduction_tableF27 = Uunique_grammar_rule_reduction_tableF20;
  SLOT_VALUE_SETTER(Uunique_grammar_rule_reduction_tableF27, T21, 5);
  T28_0 = T21;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:127
  MV_SET_COUNT(1);
  return(T28_0);
}

static D Kanonymous_of_make_compiled_grammarF480I (D rule_) {
  D T1;
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  T1 = SLOT_VALUE_INITD(rule_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  T2 = SLOT_VALUE_INITD(T1, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  T6 = primitive_idQ(T2,(D) 65533);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  if (T6 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
    T3 = IKJeoi_;
    MV_SET_ELT(0, IKJeoi_);
    MV_SET_COUNT(1);
    T5 = T3;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
    T4 = T2;
    MV_SET_ELT(0, T2);
    MV_SET_COUNT(1);
    T5 = T4;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:253
  return(T5);
}

D Kexternalize_goto_tableVgrammar_compilerI (D gv_) {
  D T2T, T2;
  D T3;
  D T4;
  D term_index_;
  D T6;
  DWORD stateF7T, stateF7;
  D T8;
  D T9_0;
  D T10;
  D T11;
  D T12;
  D v_;
  D T14;
  D T15;
  D T16;
  DWORD T17;
  D T18;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24;
  D T25;
  D T26;
  D T27;
  D T28_0;
  D T29;
  D T30;
  D T31;
  D T32;
  D T33;
  D T34;
  D T35;
  D T36;
  D T37;
  D T38;
  D T39;
  D T40_0;
  D T41;
  D T42;
  D T43;
  D T44;
  D T45;
  D T46;
  D T47_0;
  D T48;
  D T49;
  D T50;
  D T51;
  D T52;
  D T53;
  D T54;
  D T55;
  D T56;
  D T57;
  D T58;
  D T59;
  D T60;
  D T61;
  D T62;
  D T63;
  D T64;
  D T65;
  D T66_0;
  D T67;
  D T68;
  D T69;
  D T70;
  D res_;
  D T72;
  _KLsimple_object_vectorGVKd_2 T73 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T74;
  D T75;
  D T76;
  D T77;
  D T78;
  DWORD T79;
  D T80;
  D T81;
  D T82;
  D T83;
  D T84;
  D T85;
  D T86;
  D T87;
  D T88;
  D T89;
  D T90;
  DWORD T91;
  DWORD T92;
  D T93;
  DWORD T94;
  D T95;
  D T96;
  D T97;
  D T98;
  D T99;
  DWORD T100;
  D T101;
  DWORD T102;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:305
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:306
  T10 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:306
  T11 = SLOT_VALUE_INITD(T10, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:306
  T12 = SLOT_VALUE_INITD(T11, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:307
  v_ = KmakeVKdMM23I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, &KPempty_listVKi, T12);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T14 = SLOT_VALUE_INITD(gv_, 9);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T15 = Kmake_initial_stateVKiI(T14);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T2T = T15;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T2 = T2T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T16 = SLOT_VALUE_INITD(T2, 3);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T17 = primitive_cast_integer_as_raw(T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T18 = primitive_machine_word_less_thanQ(T17,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    if (T18 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T77 = SLOT_VALUE_INITD(T14, 4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T19 = primitive_not(T77);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      if (T77 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T20 = SLOT_VALUE_INITD(T2, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T21 = SLOT_VALUE_INITD(T20, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T22 = TdebuggingQTVKi;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T22 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T23 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T24 = primitive_idQ(T23,&KPempty_listVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T25 = primitive_not(T24);
          T26 = T25;
        } else {
          T26 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T26 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T27 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T28_0 = KmemberQVKdMM3I(&KJlock_, T27, &KPempty_vectorVKi, &KEEVKd);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T29 = T28_0;
          T30 = T29;
        } else {
          T30 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T30 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T31 = Tdebug_out_functionTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T32 = MAKE_CLOSURE_INITD(&Kanonymous_of_externalize_goto_tableF479, 1, T21);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          CALL1(T31, T32);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T33 = primitive_wait_for_simple_lock(T21);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T34 = TdebuggingQTVKi;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T34 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T35 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T36 = primitive_idQ(T35,&KPempty_listVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T37 = primitive_not(T36);
          T38 = T37;
        } else {
          T38 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T38 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T39 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T40_0 = KmemberQVKdMM3I(&KJlock_, T39, &KPempty_vectorVKi, &KEEVKd);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T41 = T40_0;
          T42 = T41;
        } else {
          T42 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T42 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T43 = Tdebug_out_functionTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T44 = MAKE_CLOSURE_INITD(&Kanonymous_of_externalize_goto_tableF478, 2, T33, T21);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          CALL1(T43, T44);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T45 = primitive_idQ(T33,(D) 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T45 != &KPfalseVKi) {
          T50 = &KPtrueVKi;
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T46 = primitive_idQ(T33,(D) 5);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          if (T46 != &KPfalseVKi) {
            T49 = &KPfalseVKi;
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T47_0 = Klock_wait_result_errorYthreads_internalVdylanMM0I(T21, T33);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T48 = T47_0;
            T49 = T48;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T50 = T49;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        if (T50 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          ENTER_UNWIND_FRAME(T51);
          if (!nlx_setjmp(FRAME_DEST(T51))) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T52 = SLOT_VALUE_INITD(T2, 5);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T53 = SLOT_VALUE_INITD(T20, 4);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T54 = primitive_idQ(T52,T53);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            if (T54 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
              T55 = SLOT_VALUE_INITD(T2, 6);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
              T56 = SLOT_VALUE_INITD(T20, 6);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
              T57 = primitive_idQ(T55,T56);
              T58 = T57;
            } else {
              T58 = &KPfalseVKi;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            if (T58 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
              SLOT_VALUE_SETTER((D) 1, T20, 6);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
              T59 = SLOT_VALUE_INITD(T2, 4);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
              SLOT_VALUE_SETTER(T59, T20, 4);
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            FALL_THROUGH_UNWIND(&KPfalseVKi);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T60 = TdebuggingQTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          if (T60 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T61 = Tdebug_partsTVKi;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T62 = primitive_idQ(T61,&KPempty_listVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T63 = primitive_not(T62);
            T64 = T63;
          } else {
            T64 = &KPfalseVKi;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          if (T64 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T65 = Tdebug_partsTVKi;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T66_0 = KmemberQVKdMM3I(&KJlock_, T65, &KPempty_vectorVKi, &KEEVKd);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T67 = T66_0;
            T68 = T67;
          } else {
            T68 = &KPfalseVKi;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          if (T68 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T69 = Tdebug_out_functionTVKi;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            T70 = MAKE_CLOSURE_INITD(&Kanonymous_of_externalize_goto_tableF477, 1, T21);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            CALL1(T69, T70);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          res_ = primitive_release_simple_lock(T21);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T72 = primitive_idQ(res_,(D) 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          if (T72 == &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
            Klock_release_result_errorYthreads_internalVdylanMM0I(T21, res_);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          CONTINUE_UNWIND();
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          T73.vector_element_[0] = &KJsynchronization_;
          T73.vector_element_[1] = T21;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
          T74 = CONGRUENT_CALL2(&KLtimeout_expiredGYthreadsVdylan, &T73);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
          KsignalVKdMM0I(T74, &KPempty_vectorVKi);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T75 = &KPtrueVKi;
      } else {
        T75 = T19;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T76 = T75;
    } else {
      T76 = &KPfalseVKi;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    if (T76 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T3 = Ktable_current_elementVKiI(T14, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T78 = SLOT_VALUE_INITD(T2, 3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T79 = primitive_cast_integer_as_raw(T78);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T80 = primitive_machine_word_less_thanQ(T79,1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      if (T80 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T81 = Kexhausted_iterationVKiI(T14);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T83 = T81;
        T84 = T83;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
        T82 = SLOT_VALUE_INITD(T2, 2);
        T84 = T82;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:309
      T4 = CALL1(&Kkey_stateVgrammar_compiler, T84);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:310
      term_index_ = CALL1(&Kkey_valueVgrammar_compiler, T84);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T85 = primitive_idQ(term_index_,(D) 65533);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      if (T85 != &KPfalseVKi) {
        T86 = IKJeoi_;
      } else {
        T86 = term_index_;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T87 = KelementVKdMM11I(v_, T4, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T88 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      SLOT_VALUE_SETTER(T86, T88, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      SLOT_VALUE_SETTER(T87, T88, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T89 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      SLOT_VALUE_SETTER(T3, T89, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      SLOT_VALUE_SETTER(T88, T89, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T90 = SLOT_VALUE_INITD(v_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T91 = primitive_cast_integer_as_raw(T4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T92 = primitive_cast_integer_as_raw(T90);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      T93 = primitive_machine_word_unsigned_less_thanQ(T91,T92);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      if (T93 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
        REPEATED_D_SLOT_VALUE_TAGGED_SETTER(T89, v_, 1, T91);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
        Kelement_range_errorVKeI(v_, T4);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:311
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T6 = Ktable_next_stateVKiI(T14, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
      T2T = T6;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
  stateF7T = 1;
L1: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
    stateF7 = stateF7T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
    T96 = primitive_cast_raw_as_integer(stateF7);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
    T94 = primitive_cast_integer_as_raw(T12);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
    T95 = primitive_machine_word_less_thanQ(stateF7,T94);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
    if (T95 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      T97 = KelementVKdMM11I(v_, T96, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      T8 = CALL1(&KreverseXVKd, T97);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      T98 = KasVKdMM41I(&KLsimple_object_vectorGVKd, T8);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      T99 = SLOT_VALUE_INITD(v_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      T100 = primitive_cast_integer_as_raw(T99);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      T101 = primitive_machine_word_unsigned_less_thanQ(stateF7,T100);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      if (T101 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
        REPEATED_D_SLOT_VALUE_TAGGED_SETTER(T98, v_, 1, stateF7);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
        Kelement_range_errorVKeI(v_, T96);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:314
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
      T102 = primitive_machine_word_add_signal_overflow(stateF7,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
      stateF7T = T102;
      goto L1;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:313
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:316
  T9_0 = v_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:305
  MV_SET_COUNT(1);
  return(T9_0);
}

D Kexternalize_action_tableVgrammar_compilerI (D gv_) {
  D T2T, T2;
  D entry_;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  DWORD stateF12T, stateF12;
  D actionsF13;
  D T14;
  D T15;
  D T16;
  D rF17;
  D T18;
  D T19;
  D T20;
  D rF21;
  D T22;
  D T23;
  D T24;
  D T25;
  DWORD indexF26T, indexF26;
  D T27T, T27;
  D T28;
  D pair_;
  D T30_0;
  D actionsF31;
  D T32;
  D T33;
  D T34;
  D T35;
  D T36;
  D T37;
  D T38;
  D T39;
  D T40;
  D T41;
  D T42;
  D v_;
  D T44;
  D T45;
  D T46;
  DWORD T47;
  D T48;
  D T49;
  D T50;
  D T51;
  D T52;
  D T53;
  D T54;
  D T55;
  D T56;
  D T57;
  D T58_0;
  D T59;
  D T60;
  D T61;
  D T62;
  D T63;
  D T64;
  D T65;
  D T66;
  D T67;
  D T68;
  D T69;
  D T70_0;
  D T71;
  D T72;
  D T73;
  D T74;
  D T75;
  D T76;
  D T77_0;
  D T78;
  D T79;
  D T80;
  D T81;
  D T82;
  D T83;
  D T84;
  D T85;
  D T86;
  D T87;
  D T88;
  D T89;
  D T90;
  D T91;
  D T92;
  D T93;
  D T94;
  D T95;
  D T96_0;
  D T97;
  D T98;
  D T99;
  D T100;
  D res_;
  D T102;
  _KLsimple_object_vectorGVKd_2 T103 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T104;
  D T105;
  D T106;
  D T107;
  D T108;
  DWORD T109;
  D T110;
  D T111;
  D T112;
  D T113;
  D T114;
  D T115;
  D T116;
  D T117;
  D T118;
  D T119;
  D T120_0;
  D T121;
  D T122;
  D T123;
  D T124;
  DWORD T125;
  D T126;
  D T127;
  D T128;
  D T129;
  D T130;
  D T131;
  DWORD T132;
  DWORD T133;
  D T134;
  DWORD T135;
  D T136;
  D T137;
  D T138;
  D T139;
  D T140_0;
  D err_;
  D T142;
  _KLsimple_object_vectorGVKd_1 T143 = {&KLsimple_object_vectorGVKdW, (D) 5};
  _KLsimple_object_vectorGVKd_1 T144 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T145;
  D T146;
  D T147_0;
  D T148;
  D T149;
  DWORD T150;
  D T151;
  D T152T, T152;
  D result_T, result_;
  D T154;
  D T155;
  D T156;
  D T157_0;
  D T158_0;
  D T159;
  D T160;
  D T161;
  D T162;
  D T163;
  _KLsimple_object_vectorGVKd_1 T164 = {&KLsimple_object_vectorGVKdW, (D) 5};
  _KLsimple_object_vectorGVKd_1 T165 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T166;
  D plist_;
  D T168;
  DWORD T169;
  D T170;
  D T171;
  D T172;
  D T173;
  D T174;
  D T175;
  D T176;
  DWORD T177;
  D T178;
  D T179;
  DWORD T180;
  D T181;
  D T182_0;
  D T183_0;
  D T184;
  D T185;
  DWORD T186;
  D T187;
  DWORD T188;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:261
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:262
  T40 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:262
  T41 = SLOT_VALUE_INITD(T40, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:262
  T42 = SLOT_VALUE_INITD(T41, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:263
  v_ = KmakeVKdMM23I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, &KPempty_listVKi, T42);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T44 = SLOT_VALUE_INITD(gv_, 10);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T45 = Kmake_initial_stateVKiI(T44);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T2T = T45;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T2 = T2T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T46 = SLOT_VALUE_INITD(T2, 3);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T47 = primitive_cast_integer_as_raw(T46);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T48 = primitive_machine_word_less_thanQ(T47,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    if (T48 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T107 = SLOT_VALUE_INITD(T44, 4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T49 = primitive_not(T107);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      if (T107 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T50 = SLOT_VALUE_INITD(T2, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T51 = SLOT_VALUE_INITD(T50, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T52 = TdebuggingQTVKi;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T52 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T53 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T54 = primitive_idQ(T53,&KPempty_listVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T55 = primitive_not(T54);
          T56 = T55;
        } else {
          T56 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T56 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T57 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T58_0 = KmemberQVKdMM3I(&KJlock_, T57, &KPempty_vectorVKi, &KEEVKd);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T59 = T58_0;
          T60 = T59;
        } else {
          T60 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T60 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T61 = Tdebug_out_functionTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T62 = MAKE_CLOSURE_INITD(&Kanonymous_of_externalize_action_tableF469, 1, T51);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          CALL1(T61, T62);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T63 = primitive_wait_for_simple_lock(T51);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T64 = TdebuggingQTVKi;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T64 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T65 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T66 = primitive_idQ(T65,&KPempty_listVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T67 = primitive_not(T66);
          T68 = T67;
        } else {
          T68 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T68 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T69 = Tdebug_partsTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T70_0 = KmemberQVKdMM3I(&KJlock_, T69, &KPempty_vectorVKi, &KEEVKd);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T71 = T70_0;
          T72 = T71;
        } else {
          T72 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T72 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T73 = Tdebug_out_functionTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T74 = MAKE_CLOSURE_INITD(&Kanonymous_of_externalize_action_tableF467, 2, T63, T51);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          CALL1(T73, T74);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T75 = primitive_idQ(T63,(D) 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T75 != &KPfalseVKi) {
          T80 = &KPtrueVKi;
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T76 = primitive_idQ(T63,(D) 5);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          if (T76 != &KPfalseVKi) {
            T79 = &KPfalseVKi;
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T77_0 = Klock_wait_result_errorYthreads_internalVdylanMM0I(T51, T63);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T78 = T77_0;
            T79 = T78;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T80 = T79;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        if (T80 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          ENTER_UNWIND_FRAME(T81);
          if (!nlx_setjmp(FRAME_DEST(T81))) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T82 = SLOT_VALUE_INITD(T2, 5);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T83 = SLOT_VALUE_INITD(T50, 4);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T84 = primitive_idQ(T82,T83);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            if (T84 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
              T85 = SLOT_VALUE_INITD(T2, 6);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
              T86 = SLOT_VALUE_INITD(T50, 6);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
              T87 = primitive_idQ(T85,T86);
              T88 = T87;
            } else {
              T88 = &KPfalseVKi;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            if (T88 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
              SLOT_VALUE_SETTER((D) 1, T50, 6);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
              T89 = SLOT_VALUE_INITD(T2, 4);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
              SLOT_VALUE_SETTER(T89, T50, 4);
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            FALL_THROUGH_UNWIND(&KPfalseVKi);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T90 = TdebuggingQTVKi;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          if (T90 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T91 = Tdebug_partsTVKi;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T92 = primitive_idQ(T91,&KPempty_listVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T93 = primitive_not(T92);
            T94 = T93;
          } else {
            T94 = &KPfalseVKi;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          if (T94 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T95 = Tdebug_partsTVKi;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T96_0 = KmemberQVKdMM3I(&KJlock_, T95, &KPempty_vectorVKi, &KEEVKd);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T97 = T96_0;
            T98 = T97;
          } else {
            T98 = &KPfalseVKi;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          if (T98 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T99 = Tdebug_out_functionTVKi;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            T100 = MAKE_CLOSURE_INITD(&Kanonymous_of_externalize_action_tableF464, 1, T51);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            CALL1(T99, T100);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          res_ = primitive_release_simple_lock(T51);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T102 = primitive_idQ(res_,(D) 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          if (T102 == &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
            Klock_release_result_errorYthreads_internalVdylanMM0I(T51, res_);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          CONTINUE_UNWIND();
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          T103.vector_element_[0] = &KJsynchronization_;
          T103.vector_element_[1] = T51;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
          T104 = CONGRUENT_CALL2(&KLtimeout_expiredGYthreadsVdylan, &T103);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
          KsignalVKdMM0I(T104, &KPempty_vectorVKi);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T105 = &KPtrueVKi;
      } else {
        T105 = T49;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T106 = T105;
    } else {
      T106 = &KPfalseVKi;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    if (T106 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T4 = Ktable_current_elementVKiI(T44, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      primitive_type_check(T4, &KLaction_entryGVgrammar_compiler);
      entry_ = T4;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T108 = SLOT_VALUE_INITD(T2, 3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T109 = primitive_cast_integer_as_raw(T108);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T110 = primitive_machine_word_less_thanQ(T109,1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      if (T110 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T111 = Kexhausted_iterationVKiI(T44);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T113 = T111;
        T114 = T113;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
        T112 = SLOT_VALUE_INITD(T2, 2);
        T114 = T112;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:265
      T5 = CALL1(&Kkey_stateVgrammar_compiler, T114);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:266
      T6 = CALL1(&Kkey_valueVgrammar_compiler, T114);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:266
      T115 = primitive_idQ(T6,(D) 65533);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:266
      if (T115 != &KPfalseVKi) {
        T116 = IKJeoi_;
      } else {
        T116 = T6;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:266
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:268
      T117 = SLOT_VALUE_INITD(entry_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:268
      if (T117 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:269
        T118 = SLOT_VALUE_INITD(gv_, 9);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:269
        T119 = Dtable_entry_emptyVKi;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:269
        T120_0 = KgethashVKiI(T118, T114, T119, &KPtrueVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:269
        T121 = T120_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:269
        T7 = CALL1(&KlognotVKd, T121);
        T10 = T7;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:271
        T122 = SLOT_VALUE_INITD(entry_, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:271
        T123 = SLOT_VALUE_INITD(T122, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:271
        T124 = SLOT_VALUE_INITD(T123, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
        T125 = primitive_cast_integer_as_raw(T124);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
        T126 = primitive_machine_word_equalQ(T125,1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
        if (T126 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
          T127 = primitive_idQ(T116,IKJeoi_);
          T8 = T127;
        } else {
          T8 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
        if (T8 != &KPfalseVKi) {
          T9 = IKJaccept_;
        } else {
          T9 = T124;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:272
        T10 = T9;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:268
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      T128 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      SLOT_VALUE_SETTER(T116, T128, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      SLOT_VALUE_SETTER(T10, T128, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:278
      T129 = KelementVKdMM11I(v_, T5, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      T130 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      SLOT_VALUE_SETTER(T128, T130, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      SLOT_VALUE_SETTER(T129, T130, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      T131 = SLOT_VALUE_INITD(v_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      T132 = primitive_cast_integer_as_raw(T5);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      T133 = primitive_cast_integer_as_raw(T131);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      T134 = primitive_machine_word_unsigned_less_thanQ(T132,T133);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      if (T134 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
        REPEATED_D_SLOT_VALUE_TAGGED_SETTER(T130, v_, 1, T132);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
        Kelement_range_errorVKeI(v_, T5);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:267
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T11 = Ktable_next_stateVKiI(T44, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
      T2T = T11;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
  stateF12T = 1;
L1: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
    stateF12 = stateF12T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
    T137 = primitive_cast_raw_as_integer(stateF12);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
    T135 = primitive_cast_integer_as_raw(T42);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
    T136 = primitive_machine_word_less_thanQ(stateF12,T135);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
    if (T136 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:281
      T138 = KelementVKdMM11I(v_, T137, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:281
      primitive_type_check(T138, &KLlistGVKd);
      actionsF13 = T138;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:281
      actionsF31 = actionsF13;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:282
      T139 = SLOT_VALUE_INITD(gv_, 7);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:282
      T140_0 = KgethashVKiI(T139, T137, &KPfalseVKi, &KPtrueVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:282
      err_ = T140_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:283
      if (err_ != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        T142 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        SLOT_VALUE_SETTER(IKJerror_, T142, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        SLOT_VALUE_SETTER(err_, T142, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        T143.vector_element_[0] = T142;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        T14 = KlistVKdI(&T143);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        T38 = actionsF31;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        T144.vector_element_[0] = T14;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        CONGRUENT_CALL_PROLOG(&KconcatenateXYcommon_extensionsVcommon_dylan, 2);
        T15 = CONGRUENT_CALL2(T38, &T144);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        primitive_type_check(T15, &KLlistGVKd);
        T16 = T15;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:284
        actionsF31 = T16;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:283
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:286
      T37 = actionsF31;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:286
      T145 = primitive_idQ(T37,&KPempty_listVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:286
      if (T145 != &KPfalseVKi) {
        rF21 = &KPfalseVKi;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:287
        T36 = actionsF31;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:287
        T147_0 = KelementVKdMM25I(T36, (D) 1, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:287
        T146 = T147_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:287
        rF17 = CALL1(&KtailVKd, T146);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        T148 = primitive_instanceQ(rF17,&KLintegerGVKd);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        if (T148 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:256
          T39 = rF17;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
          T150 = primitive_cast_integer_as_raw(T39);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
          T151 = primitive_machine_word_less_thanQ(T150,1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
          T149 = primitive_not(T151);
          T18 = T149;
        } else {
          T18 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        if (T18 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
          T35 = actionsF31;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
          T152T = T35;
          result_T = &KPtrueVKi;
        L2: ;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
            T152 = T152T;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
            result_ = result_T;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
            T154 = primitive_idQ(T152,&KPempty_listVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
            if (T154 == &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
              T155 = SLOT_VALUE_INITD(T152, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
              if (result_ != &KPfalseVKi) {
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T156 = SLOT_VALUE_INITD(T152, 1);
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T157_0 = T156;
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T158_0 = T157_0;
                {
                  MV_CHECK_TYPE_PROLOGUE(T157_0);
                  primitive_type_check(T158_0, &KLlistGVKd);
                  MV_CHECK_TYPE_EPILOGUE();
                }
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T159 = T158_0;
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T160 = CALL1(&KtailVKd, T155);
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T161 = KEEVKdI(T160, rF17);
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T162 = T161;
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
                T152T = T159;
                result_T = T162;
                goto L2;
              }
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:289
          T19 = result_;
        } else {
          T19 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        if (T19 != &KPfalseVKi) {
          T20 = rF17;
        } else {
          T20 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:288
        rF21 = T20;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:286
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:292
      if (rF21 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        T163 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        SLOT_VALUE_SETTER((D) 262141, T163, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        SLOT_VALUE_SETTER(rF21, T163, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        T164.vector_element_[0] = T163;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        T22 = KlistVKdI(&T164);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        T34 = actionsF31;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        T165.vector_element_[0] = T34;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        CONGRUENT_CALL_PROLOG(&KconcatenateXYcommon_extensionsVcommon_dylan, 2);
        T23 = CONGRUENT_CALL2(T22, &T165);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        primitive_type_check(T23, &KLlistGVKd);
        T24 = T23;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:293
        actionsF31 = T24;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:292
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:295
      T33 = actionsF31;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:295
      T166 = KsizeVKdMM30I(T33);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:295
      CONGRUENT_CALL_PROLOG(&KTVKd, 2);
      T25 = CONGRUENT_CALL2((D) 9, T166);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:295
      plist_ = KmakeVKdMM23I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, &KPfalseVKi, T25);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
      T168 = SLOT_VALUE_INITD(plist_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
      T169 = primitive_cast_integer_as_raw(T168);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
      T32 = actionsF31;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
      indexF26T = 1;
      T27T = T32;
    L3: ;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        indexF26 = indexF26T;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        T171 = primitive_cast_raw_as_integer(indexF26);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        T27 = T27T;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        T170 = primitive_machine_word_less_thanQ(indexF26,T169);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        if (T170 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          actionsF31;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T172 = primitive_idQ(T27,&KPempty_listVKi);
          T28 = T172;
        } else {
          T28 = &KPtrueVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        if (T28 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          actionsF31;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T173 = SLOT_VALUE_INITD(T27, 0);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          primitive_type_check(T173, &KLpairGVKd);
          pair_ = T173;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:297
          T174 = SLOT_VALUE_INITD(pair_, 0);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:297
          T175 = primitive_machine_word_unsigned_less_thanQ(indexF26,T169);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:297
          if (T175 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:297
            REPEATED_D_SLOT_VALUE_TAGGED_SETTER(T174, plist_, 1, indexF26);
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:297
            Kelement_range_errorVKeI(plist_, T171);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:297
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
          T176 = SLOT_VALUE_INITD(pair_, 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
          T177 = primitive_machine_word_add_signal_overflow(indexF26,4);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
          T178 = primitive_cast_raw_as_integer(T177);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
          T179 = primitive_machine_word_unsigned_less_thanQ(T177,T169);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
          if (T179 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
            REPEATED_D_SLOT_VALUE_TAGGED_SETTER(T176, plist_, 1, T177);
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
            Kelement_range_errorVKeI(plist_, T178);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:298
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T180 = primitive_machine_word_add_signal_overflow(indexF26,8);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          actionsF31;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T181 = SLOT_VALUE_INITD(T27, 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T182_0 = T181;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T183_0 = T182_0;
          {
            MV_CHECK_TYPE_PROLOGUE(T182_0);
            primitive_type_check(T183_0, &KLlistGVKd);
            MV_CHECK_TYPE_EPILOGUE();
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          T184 = T183_0;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
          indexF26T = T180;
          T27T = T184;
          goto L3;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:296
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
      T185 = SLOT_VALUE_INITD(v_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
      T186 = primitive_cast_integer_as_raw(T185);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
      T187 = primitive_machine_word_unsigned_less_thanQ(stateF12,T186);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
      if (T187 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
        REPEATED_D_SLOT_VALUE_TAGGED_SETTER(plist_, v_, 1, stateF12);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
        Kelement_range_errorVKeI(v_, T137);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:300
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
      T188 = primitive_machine_word_add_signal_overflow(stateF12,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
      stateF12T = T188;
      goto L1;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:280
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:302
  T30_0 = v_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:261
  MV_SET_COUNT(1);
  return(T30_0);
}

static D Kanonymous_of_externalize_action_tableF469I () {
  D T0;
  D T1;
  D T2_0;
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_3 T5 = {&KLsimple_object_vectorGVKdW, (D) 13};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T0 = Kcurrent_threadYthreadsVdylanI();
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T1 = SLOT_VALUE_INITD(T0, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  if (T1 != &KPfalseVKi) {
    T4 = T1;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T2_0 = Kcurrent_threadYthreadsVdylanI();
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T3 = T2_0;
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T5.vector_element_[0] = &K470;
  T5.vector_element_[1] = CREF(0);
  T5.vector_element_[2] = T4;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T6 = primitive_copy_vector(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  MV_SET_COUNT(1);
  return(T7_0);
}

static D Kanonymous_of_externalize_action_tableF467I () {
  D T0;
  D T1;
  D T2_0;
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_4 T5 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T0 = Kcurrent_threadYthreadsVdylanI();
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T1 = SLOT_VALUE_INITD(T0, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  if (T1 != &KPfalseVKi) {
    T4 = T1;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T2_0 = Kcurrent_threadYthreadsVdylanI();
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T3 = T2_0;
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T5.vector_element_[0] = &K468;
  T5.vector_element_[1] = CREF(1);
  T5.vector_element_[2] = T4;
  T5.vector_element_[3] = CREF(0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T6 = primitive_copy_vector(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  MV_SET_COUNT(1);
  return(T7_0);
}

static D Kanonymous_of_externalize_action_tableF464I () {
  D T0;
  D T1;
  D T2_0;
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_3 T5 = {&KLsimple_object_vectorGVKdW, (D) 13};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T0 = Kcurrent_threadYthreadsVdylanI();
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T1 = SLOT_VALUE_INITD(T0, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  if (T1 != &KPfalseVKi) {
    T4 = T1;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T2_0 = Kcurrent_threadYthreadsVdylanI();
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
    T3 = T2_0;
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T5.vector_element_[0] = &K465;
  T5.vector_element_[1] = CREF(0);
  T5.vector_element_[2] = T4;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T6 = primitive_copy_vector(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:264
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kkey_stateVgrammar_compilerI (D key_) {
  D T1_0;
  DWORD T2;
  DWORD T3;
  DWORD T4;
  DWORD T5;
  D T6;
  D T7_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:194
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:195
  T2 = primitive_cast_integer_as_raw(key_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:195
  T3 = primitive_machine_word_shift_right(T2,14);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:195
  T4 = primitive_machine_word_logand(T3,-4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:195
  T5 = primitive_machine_word_logior(T4,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:195
  T6 = primitive_cast_raw_as_integer(T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:195
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:194
  T1_0 = T7_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T7_0);
    primitive_type_check(T1_0, &KLstateGVgrammar_compiler);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:194
  MV_SET_COUNT(1);
  return(T1_0);
}

D Kkey_valueVgrammar_compilerI (D key_) {
  D T1_0;
  D T2_0;
  DWORD T3;
  DWORD T4;
  D T5;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:198
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:199
  T3 = primitive_cast_integer_as_raw(key_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:199
  T4 = primitive_machine_word_logand(T3,65533);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:199
  T5 = primitive_cast_raw_as_integer(T4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:199
  T2_0 = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:198
  T1_0 = T2_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T2_0);
    primitive_type_check(T1_0, &KLindexGVgrammar_compiler);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:198
  MV_SET_COUNT(1);
  return(T1_0);
}

static D Kanonymous_of_externalize_goto_tableF479I () {
  D T0;
  D T1;
  D T2_0;
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_3 T5 = {&KLsimple_object_vectorGVKdW, (D) 13};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T0 = Kcurrent_threadYthreadsVdylanI();
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T1 = SLOT_VALUE_INITD(T0, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  if (T1 != &KPfalseVKi) {
    T4 = T1;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T2_0 = Kcurrent_threadYthreadsVdylanI();
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T3 = T2_0;
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T5.vector_element_[0] = &K470;
  T5.vector_element_[1] = CREF(0);
  T5.vector_element_[2] = T4;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T6 = primitive_copy_vector(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  MV_SET_COUNT(1);
  return(T7_0);
}

static D Kanonymous_of_externalize_goto_tableF478I () {
  D T0;
  D T1;
  D T2_0;
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_4 T5 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T0 = Kcurrent_threadYthreadsVdylanI();
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T1 = SLOT_VALUE_INITD(T0, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  if (T1 != &KPfalseVKi) {
    T4 = T1;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T2_0 = Kcurrent_threadYthreadsVdylanI();
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T3 = T2_0;
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T5.vector_element_[0] = &K468;
  T5.vector_element_[1] = CREF(1);
  T5.vector_element_[2] = T4;
  T5.vector_element_[3] = CREF(0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T6 = primitive_copy_vector(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  MV_SET_COUNT(1);
  return(T7_0);
}

static D Kanonymous_of_externalize_goto_tableF477I () {
  D T0;
  D T1;
  D T2_0;
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_3 T5 = {&KLsimple_object_vectorGVKdW, (D) 13};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T0 = Kcurrent_threadYthreadsVdylanI();
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T1 = SLOT_VALUE_INITD(T0, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  if (T1 != &KPfalseVKi) {
    T4 = T1;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T2_0 = Kcurrent_threadYthreadsVdylanI();
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
    T3 = T2_0;
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T5.vector_element_[0] = &K465;
  T5.vector_element_[1] = CREF(0);
  T5.vector_element_[2] = T4;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T6 = primitive_copy_vector(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:308
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kcompute_nont_deriv_first_setVgrammar_compilerI (D nt_) {
  D T1T, T1;
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10T, T10;
  D T11;
  D T12;
  D item_;
  D T14;
  D T15;
  D T16;
  D T17_0;
  D seen_;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24;
  D T25;
  D T26_0;
  D T27_0;
  D T28;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:639
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:641
  seen_ = &KPempty_listVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
  T21 = SLOT_VALUE_INITD(nt_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
  T1T = T21;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
    T1 = T1T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
    T22 = primitive_idQ(T1,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
    if (T22 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
      T23 = SLOT_VALUE_INITD(T1, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T2 = CALL1(&KheadVKd, T23);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T3 = CALL1(&Knont_rulesVgrammar_compiler, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T4 = CALL1(&Kforward_iteration_protocolVKd, T3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T5 = T4;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T6 = MV_GET_ELT(1);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T7 = MV_GET_ELT(2);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T8 = MV_GET_ELT(3);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T9 = MV_GET_ELT(5);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      T10T = T5;
    L1: ;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
        T10 = T10T;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
        T11 = CALL3(T8, T3, T10, T6);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
        if (T11 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
          T12 = CALL2(T9, T3, T10);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:644
          item_ = CALL1(&Krule_itemVgrammar_compiler, T12);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:645
          T14 = CALL1(&Kitem_terminal_leftQVgrammar_compilerMM0, item_);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:645
          if (T14 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:646
            T15 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:646
            T20 = seen_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:646
            T24 = Kadd_newVKdMM3I(T20, T15, &KPempty_vectorVKi, &KEEVKd);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:646
            seen_ = T24;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:645
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
          T16 = CALL2(T7, T3, T10);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
          T10T = T16;
          goto L1;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:643
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
      T25 = SLOT_VALUE_INITD(T1, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
      T26_0 = T25;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
      T27_0 = T26_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T26_0);
        primitive_type_check(T27_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
      T28 = T27_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
      T1T = T28;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:642
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:650
  T19 = seen_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:650
  T17_0 = T19;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:639
  MV_SET_COUNT(1);
  return(T17_0);
}

D Kmake_actionsVgrammar_compilerI (D gv_, D state_) {
  D T3T, T3;
  D T4;
  D T5;
  D T6;
  D T7;
  DWORD T8;
  DWORD T9;
  D T10;
  D T11;
  D T12_0;
  D T13_0;
  D T14_0;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21_0;
  D T22_0;
  D T23;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:653
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  T5 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  T6 = SLOT_VALUE_INITD(T5, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  T7 = SLOT_VALUE_INITD(T6, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  T8 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  T9 = primitive_cast_integer_as_raw(T7);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  T10 = primitive_machine_word_unsigned_less_thanQ(T8,T9);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  if (T10 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
    T11 = REPEATED_D_SLOT_VALUE_TAGGED(T6, 2, T8);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
    T12_0 = T11;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
    T14_0 = T12_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T12_0);
      primitive_type_check(T14_0, &KLlistGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
    T15 = T14_0;
    T17 = T15;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
    T13_0 = Kelement_range_errorVKeI(T5, state_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
    T16 = T13_0;
    T17 = T16;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:654
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
  T3T = T17;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
    T3 = T3T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
    T18 = primitive_idQ(T3,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
    if (T18 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      T19 = SLOT_VALUE_INITD(T3, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      CALL3(&Kmake_actionVgrammar_compiler, gv_, state_, T19);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      T20 = SLOT_VALUE_INITD(T3, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      T21_0 = T20;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      T22_0 = T21_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T21_0);
        primitive_type_check(T22_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      T23 = T22_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
      T3T = T23;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
    T4 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:655
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:653
  return(T4);
}

D Kmake_actionVgrammar_compilerI (D gv_, D state_, D item_) {
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:909
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:910
  T10 = primitive_instanceQ(item_,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:910
  if (T10 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:912
    T11 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:912
    T12 = primitive_instanceQ(T11,&KLterminalGVgrammar_compiler);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:910
    if (T12 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:913
      T4 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:913
      T5 = CALL4(&Kset_shift_actionVgrammar_compiler, gv_, state_, item_, T4);
      T8 = T5;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:915
      T6 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:915
      T7 = CALL4(&Kmake_derived_actionsVgrammar_compiler, gv_, state_, item_, T6);
      T8 = T7;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:910
    T9 = T8;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:911
    T3 = Kmake_simple_reductionsVgrammar_compilerI(gv_, state_, item_);
    T9 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:910
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:909
  return(T9);
}

D Kset_shift_actionVgrammar_compilerI (D gv_, D state_, D item_, D terminal_) {
  D T4;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:962
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:963
  T4 = CALL5(&Kset_actionVgrammar_compiler, gv_, state_, item_, terminal_, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:962
  return(T4);
}

D Kmake_derived_actionsVgrammar_compilerI (D gv_, D state_, D item_, D itemb_) {
  D T4;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:824
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:825
  Kgenerate_shiftsVgrammar_compilerI(gv_, state_, item_, itemb_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:826
  Kgenerate_errorsVgrammar_compilerI(gv_, state_, item_, itemb_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:827
  T4 = Kgenerate_reductionsVgrammar_compilerI(gv_, state_, item_, itemb_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:824
  return(T4);
}

D Kmake_simple_reductionsVgrammar_compilerI (D gv_, D state_, D item_) {
  D T4T, T4;
  D T5;
  D T6_0;
  D T7;
  D shiftF8;
  DWORD T9;
  DWORD T10;
  DWORD mx_;
  D T12;
  DWORD T13;
  D T14;
  D T15;
  DWORD T16;
  DWORD T17;
  DWORD T18;
  DWORD T19;
  D T20;
  DWORD T21;
  DWORD T22;
  DWORD T23;
  DWORD T24;
  DWORD T25;
  D T26;
  DWORD T27;
  DWORD T28;
  DWORD T29;
  D T30;
  D T31;
  D T32_0;
  D lookaheads_;
  D T34;
  D T35;
  D T36;
  D T37_0;
  D T38_0;
  D T39;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:919
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T7 = SLOT_VALUE_INITD(gv_, 8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  shiftF8 = (D) 57;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T9 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T10 = primitive_machine_word_logxor(T9,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  mx_ = T10;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T12 = shiftF8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T13 = primitive_cast_integer_as_raw(T12);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T14 = primitive_machine_word_equalQ(T13,129);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  if (T14 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    shiftF8 = (D) 65;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    T15 = shiftF8;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    T16 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    T17 = primitive_cast_integer_as_raw(T15);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    T18 = primitive_machine_word_shift_right(T17,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    T19 = primitive_machine_word_shift_left_signal_overflow(T16,T18);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
    mx_ = T19;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T20 = shiftF8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T21 = mx_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T22 = primitive_cast_integer_as_raw(T20);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T23 = primitive_machine_word_shift_right(T22,2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T24 = primitive_machine_word_shift_left_signal_overflow(T21,T23);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T25 = primitive_machine_word_logior(T24,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T26 = SLOT_VALUE_INITD(item_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T27 = primitive_cast_integer_as_raw(T26);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T28 = primitive_machine_word_logxor(T27,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T29 = primitive_machine_word_add_signal_overflow(T25,T28);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T30 = primitive_cast_raw_as_integer(T29);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T31 = Dtable_entry_emptyVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T32_0 = KgethashVKiI(T7, T30, T31, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  T6_0 = T32_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T32_0);
    primitive_type_check(T6_0, &KLlistGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:920
  lookaheads_ = T6_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
  T4T = lookaheads_;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
    T4 = T4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
    T34 = primitive_idQ(T4,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
    if (T34 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
      T35 = SLOT_VALUE_INITD(T4, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:922
      Kset_reduce_actionVgrammar_compilerI(gv_, state_, item_, T35);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
      T36 = SLOT_VALUE_INITD(T4, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
      T37_0 = T36;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
      T38_0 = T37_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T37_0);
        primitive_type_check(T38_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
      T39 = T38_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
      T4T = T39;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
    T5 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:921
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:919
  return(T5);
}

D Kset_reduce_actionVgrammar_compilerI (D gv_, D state_, D item_, D terminal_) {
  D T4;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:958
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:959
  T4 = CALL5(&Kset_actionVgrammar_compiler, gv_, state_, item_, terminal_, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:958
  return(T4);
}

D Kset_actionVgrammar_compilerI (D gv_, D state_, D item_, D terminal_, D shiftQ_) {
  D old_;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D old_item_;
  D old_shiftQ_;
  D old_rule_;
  D T18;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24;
  D T25;
  D T26;
  D T27;
  D T28;
  D shiftF29;
  DWORD T30;
  DWORD T31;
  DWORD mx_;
  D T33;
  DWORD T34;
  D T35;
  D T36;
  DWORD T37;
  DWORD T38;
  DWORD T39;
  DWORD T40;
  D T41;
  DWORD T42;
  DWORD T43;
  DWORD T44;
  DWORD T45;
  DWORD T46;
  D T47;
  DWORD T48;
  DWORD T49;
  DWORD T50;
  D T51;
  D T52;
  D T53_0;
  D T54;
  D T55;
  D T56_0;
  _KLsimple_object_vectorGVKd_4 T57 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T58;
  D T59;
  _KLsimple_object_vectorGVKd_4 T60 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T61;
  D T62;
  D T63;
  DWORD T64;
  DWORD T65;
  D T66;
  D T67;
  D T68;
  D T69;
  D T70;
  DWORD T71;
  DWORD T72;
  D T73;
  DWORD T74;
  D T75;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:984
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  shiftF29 = (D) 57;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T30 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T31 = primitive_machine_word_logxor(T30,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  mx_ = T31;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T33 = shiftF29;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T34 = primitive_cast_integer_as_raw(T33);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T35 = primitive_machine_word_equalQ(T34,129);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  if (T35 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    shiftF29 = (D) 65;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    T36 = shiftF29;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    T37 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    T38 = primitive_cast_integer_as_raw(T36);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    T39 = primitive_machine_word_shift_right(T38,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    T40 = primitive_machine_word_shift_left_signal_overflow(T37,T39);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
    mx_ = T40;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T41 = shiftF29;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T42 = mx_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T43 = primitive_cast_integer_as_raw(T41);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T44 = primitive_machine_word_shift_right(T43,2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T45 = primitive_machine_word_shift_left_signal_overflow(T42,T44);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T46 = primitive_machine_word_logior(T45,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T47 = SLOT_VALUE_INITD(terminal_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T48 = primitive_cast_integer_as_raw(T47);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T49 = primitive_machine_word_logxor(T48,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T50 = primitive_machine_word_add_signal_overflow(T46,T49);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:989
  T51 = primitive_cast_raw_as_integer(T50);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:991
  T52 = SLOT_VALUE_INITD(gv_, 10);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:991
  T53_0 = KgethashVKiI(T52, T51, &KPfalseVKi, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:991
  T54 = T53_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:990
  primitive_type_check(T54, &K498);
  old_ = T54;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:992
  if (old_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:996
    if (shiftQ_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:996
      T8 = CALL1(&Kaentry_shiftQVgrammar_compiler, old_);
      T9 = T8;
    } else {
      T9 = &KPfalseVKi;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:996
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:992
    if (T9 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T62 = SLOT_VALUE_INITD(item_, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T63 = SLOT_VALUE_INITD(T62, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T10 = CALL1(&Kaentry_itemVgrammar_compiler, old_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T11 = CALL1(&Kitem_rule_indexVgrammar_compiler, T10);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T64 = primitive_cast_integer_as_raw(T63);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T65 = primitive_cast_integer_as_raw(T11);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T66 = primitive_machine_word_less_thanQ(T64,T65);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      if (T66 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:999
        CALL2(&Kaentry_item_setterVgrammar_compiler, item_, old_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:999
        T12 = item_;
        MV_SET_ELT(0, item_);
        MV_SET_COUNT(1);
        T14 = T12;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
        T13 = &KPfalseVKi;
        MV_SET_ELT(0, &KPfalseVKi);
        MV_SET_COUNT(1);
        T14 = T13;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:998
      T27 = T14;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1002
      old_item_ = CALL1(&Kaentry_itemVgrammar_compiler, old_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1003
      old_shiftQ_ = CALL1(&Kaentry_shiftQVgrammar_compiler, old_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1004
      old_rule_ = CALL1(&Kitem_rule_indexVgrammar_compiler, old_item_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1005
      T67 = SLOT_VALUE_INITD(item_, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1005
      T68 = SLOT_VALUE_INITD(T67, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
      if (shiftQ_ != &KPfalseVKi) {
        T18 = &KPfalseVKi;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
        T69 = primitive_not(old_shiftQ_);
        T18 = T69;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
      if (T18 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
        T70 = primitive_idQ(T68,old_rule_);
        T19 = T70;
      } else {
        T19 = &KPfalseVKi;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
      if (T19 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
        T25 = &KPfalseVKi;
        MV_SET_ELT(0, &KPfalseVKi);
        MV_SET_COUNT(1);
        T26 = T25;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        T71 = primitive_cast_integer_as_raw(old_rule_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        T72 = primitive_cast_integer_as_raw(T68);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        T73 = primitive_machine_word_less_thanQ(T71,T72);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        if (T73 != &KPfalseVKi) {
          T21 = T73;
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
          T74 = primitive_cast_integer_as_raw(old_rule_);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
          T75 = primitive_machine_word_equalQ(T74,T72);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
          if (T75 != &KPfalseVKi) {
            T20 = shiftQ_;
          } else {
            T20 = &KPfalseVKi;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
          T21 = T20;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        if (T21 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1009
          T22 = CALL5(&Knote_conflictVgrammar_compiler, terminal_, old_shiftQ_, old_item_, shiftQ_, item_);
          T24 = T22;
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1011
          CALL5(&Knote_conflictVgrammar_compiler, terminal_, shiftQ_, item_, old_shiftQ_, old_item_);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1012
          CALL2(&Kaentry_shiftQ_setterVgrammar_compiler, shiftQ_, old_);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1013
          CALL2(&Kaentry_item_setterVgrammar_compiler, item_, old_);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1013
          T23 = item_;
          MV_SET_ELT(0, item_);
          MV_SET_COUNT(1);
          T24 = T23;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1008
        T26 = T24;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:1006
      T27 = T26;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:992
    T28 = T27;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    T57.vector_element_[0] = IKJshiftQ_;
    T57.vector_element_[1] = shiftQ_;
    T57.vector_element_[2] = IKJitem_;
    T57.vector_element_[3] = item_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    T56_0 = KLaction_entryGZ32ZconstructorVgrammar_compilerMM0I(&KLaction_entryGVgrammar_compiler, &T57, shiftQ_, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    T55 = T56_0;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    T58 = SLOT_VALUE_INITD(T52, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    T59 = primitive_instanceQ(T55,T58);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    if (T59 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
      T60.vector_element_[0] = &KJvalue_;
      T60.vector_element_[1] = T55;
      T60.vector_element_[2] = &KJtype_;
      T60.vector_element_[3] = T58;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
      CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
      T61 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T60);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
      CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
      CONGRUENT_CALL2(T61, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    KputhashVKiI(T55, T52, T51);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:993
    T7 = T55;
    MV_SET_ELT(0, T55);
    MV_SET_COUNT(1);
    T28 = T7;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:992
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:984
  return(T28);
}

D Kitem_rule_indexVgrammar_compilerI (D item_) {
  D T1;
  D T2;
  D T3_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:228
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:230
  T1 = SLOT_VALUE_INITD(item_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:230
  T2 = SLOT_VALUE_INITD(T1, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:230
  T3_0 = T2;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:228
  MV_SET_COUNT(1);
  return(T3_0);
}

D Knote_conflictVgrammar_compilerI (D terminal_, D shift_1Q_, D item_1_, D shift_2Q_, D item_2_) {
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15_0;
  _KLsimple_object_vectorGVKd_14 T16 = {&KLsimple_object_vectorGVKdW, (D) 57};
  D T17;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:966
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:976
  T9 = SLOT_VALUE_INITD(terminal_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:977
  if (shift_1Q_ != &KPfalseVKi) {
    T5 = IKJshift_;
  } else {
    T5 = IKJreduce_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:977
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:978
  T10 = SLOT_VALUE_INITD(item_1_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:978
  T11 = SLOT_VALUE_INITD(T10, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:979
  T6 = Kitem_positionF504I(item_1_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:980
  if (shift_2Q_ != &KPfalseVKi) {
    T7 = IKJshift_;
  } else {
    T7 = IKJreduce_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:980
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:981
  T12 = SLOT_VALUE_INITD(item_2_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:981
  T13 = SLOT_VALUE_INITD(T12, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:982
  T8 = Kitem_positionF504I(item_2_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:976
  T16.vector_element_[0] = IKJterminal_;
  T16.vector_element_[1] = T9;
  T16.vector_element_[2] = IKJaction_1_;
  T16.vector_element_[3] = T5;
  T16.vector_element_[4] = IKJrule_1_;
  T16.vector_element_[5] = T11;
  T16.vector_element_[6] = IKJposition_1_;
  T16.vector_element_[7] = T6;
  T16.vector_element_[8] = IKJaction_2_;
  T16.vector_element_[9] = T7;
  T16.vector_element_[10] = IKJrule_2_;
  T16.vector_element_[11] = T13;
  T16.vector_element_[12] = IKJposition_2_;
  T16.vector_element_[13] = T8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:976
  T15_0 = KLgrammar_conflictGZ32ZconstructorVgrammar_compilerMM0I(&KLgrammar_conflictGVgrammar_compiler, &T16, T9, T5, T11, T6, T7, T13, T8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:976
  T14 = T15_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:976
  T17 = KsignalVKdMM0I(T14, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:966
  return(T17);
}

static D Kitem_positionF504I (D item_) {
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D startF10T, startF10;
  D nF11T, nF11;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:971
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:972
  T2 = SLOT_VALUE_INITD(item_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:972
  T3 = SLOT_VALUE(T2, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
  startF10T = T3;
  nF11T = (D) 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
    startF10 = startF10T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
    nF11 = nF11T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
    T8 = primitive_idQ(item_,startF10);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
    if (T8 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
      T4 = nF11;
      MV_SET_ELT(0, nF11);
      MV_SET_COUNT(1);
      T7 = T4;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
      T5 = CALL1(&Kitem_next_itemVgrammar_compiler, startF10);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T6 = CONGRUENT_CALL2(nF11, (D) 5);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
      startF10T = T5;
      nF11T = T6;
      goto L0;
      T7 = T9;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:973
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:971
  return(T7);
}

D Kgenerate_shiftsVgrammar_compilerI (D gv_, D state_, D item_, D itemb_) {
  D T4T, T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10_0;
  D T11_0;
  D T12;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:830
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
  T6 = SLOT_VALUE_INITD(itemb_, 7);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
  T4T = T6;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
    T4 = T4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
    T7 = primitive_idQ(T4,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
    if (T7 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
      T8 = SLOT_VALUE_INITD(T4, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:832
      CALL4(&Kset_shift_actionVgrammar_compiler, gv_, state_, item_, T8);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
      T9 = SLOT_VALUE_INITD(T4, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
      T10_0 = T9;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
      T11_0 = T10_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T10_0);
        primitive_type_check(T11_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
      T12 = T11_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
      T4T = T12;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
    T5 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:831
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:830
  return(T5);
}

D Kgenerate_errorsVgrammar_compilerI (D gv_, D state_, D item_, D itemb_) {
  D T4T, T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11_0;
  D T12_0;
  D T13;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:836
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
  T7 = SLOT_VALUE_INITD(itemb_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
  T4T = T7;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
    T4 = T4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
    T8 = primitive_idQ(T4,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
    if (T8 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
      T9 = SLOT_VALUE_INITD(T4, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:838
      T5 = CALL1(&KheadVKd, T9);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:838
      CALL3(&Kmaybe_set_error_actionVgrammar_compiler, gv_, state_, T5);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
      T10 = SLOT_VALUE_INITD(T4, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
      T11_0 = T10;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
      T12_0 = T11_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T11_0);
        primitive_type_check(T12_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
      T13 = T12_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
      T4T = T13;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
    T6 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:837
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:836
  return(T6);
}

D Kgenerate_reductionsVgrammar_compilerI (D gv_, D state_, D item_, D nt_) {
  D possible_reductors_;
  D T6;
  D beta_lookaheads_;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14T, T14;
  D T15;
  D deriv_;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24;
  D T25;
  D T26T, T26;
  D T27;
  D T28;
  D T29;
  D T30;
  D T31;
  D T32;
  D T33;
  D T34;
  D reducing_input_;
  D T36;
  D T37;
  D T38;
  D T39;
  D T40_0;
  D T41;
  D shiftF42;
  DWORD T43;
  DWORD T44;
  DWORD mx_;
  D T46;
  DWORD T47;
  D T48;
  D T49;
  DWORD T50;
  DWORD T51;
  DWORD T52;
  DWORD T53;
  D T54;
  DWORD T55;
  DWORD T56;
  DWORD T57;
  DWORD T58;
  DWORD T59;
  D T60;
  DWORD T61;
  DWORD T62;
  DWORD T63;
  D T64;
  D T65;
  D T66_0;
  D lookaheads_;
  D T68;
  D T69;
  _KLsimple_object_vectorGVKd_1 T70 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T71_0;
  D T72;
  D T73;
  _KLsimple_object_vectorGVKd_1 T74 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T75_0;
  D T76;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:842
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:843
  T39 = SLOT_VALUE_INITD(nt_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:845
  CONGRUENT_CALL_PROLOG(&KchooseVKd, 2);
  possible_reductors_ = CONGRUENT_CALL2(&Kanonymous_of_generate_reductionsF547, T39);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:846
  CONGRUENT_CALL_PROLOG(&KemptyQVKd, 1);
  T6 = CONGRUENT_CALL1(possible_reductors_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:846
  if (T6 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:846
    T33 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T34 = T33;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T41 = SLOT_VALUE_INITD(gv_, 8);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    shiftF42 = (D) 57;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T43 = primitive_cast_integer_as_raw(state_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T44 = primitive_machine_word_logxor(T43,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    mx_ = T44;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T46 = shiftF42;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T47 = primitive_cast_integer_as_raw(T46);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T48 = primitive_machine_word_equalQ(T47,129);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    if (T48 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      shiftF42 = (D) 65;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      T49 = shiftF42;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      T50 = mx_;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      T51 = primitive_cast_integer_as_raw(T49);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      T52 = primitive_machine_word_shift_right(T51,2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      T53 = primitive_machine_word_shift_left_signal_overflow(T50,T52);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
      mx_ = T53;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T54 = shiftF42;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T55 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T56 = primitive_cast_integer_as_raw(T54);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T57 = primitive_machine_word_shift_right(T56,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T58 = primitive_machine_word_shift_left_signal_overflow(T55,T57);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T59 = primitive_machine_word_logior(T58,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T60 = SLOT_VALUE_INITD(item_, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T61 = primitive_cast_integer_as_raw(T60);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T62 = primitive_machine_word_logxor(T61,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T63 = primitive_machine_word_add_signal_overflow(T59,T62);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T64 = primitive_cast_raw_as_integer(T63);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T65 = Dtable_entry_emptyVKi;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T66_0 = KgethashVKiI(T41, T64, T65, &KPtrueVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    T40_0 = T66_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T66_0);
      primitive_type_check(T40_0, &KLlistGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:847
    lookaheads_ = T40_0;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:848
    beta_lookaheads_ = CALL1(&Kitem_next_first_setVgrammar_compiler, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    CONGRUENT_CALL_PROLOG(&Kforward_iteration_protocolVKd, 1);
    T8 = CONGRUENT_CALL1(possible_reductors_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T9 = T8;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T10 = MV_GET_ELT(1);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T11 = MV_GET_ELT(2);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T12 = MV_GET_ELT(3);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T13 = MV_GET_ELT(5);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T14T = T9;
  L0: ;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
      T14 = T14T;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
      T15 = CALL3(T12, possible_reductors_, T14, T10);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
      if (T15 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
        T17 = CALL2(T13, possible_reductors_, T14);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
        primitive_type_check(T17, &KLpairGVKd);
        deriv_ = T17;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:850
        T68 = SLOT_VALUE_INITD(deriv_, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:851
        reducing_input_ = T68;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:852
        T18 = CALL2(&KmemberQVKd, &KPfalseVKi, T68);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:852
        if (T18 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:853
          T38 = reducing_input_;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:853
          T70.vector_element_[0] = T38;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:853
          T71_0 = Kconcatenate_asVKdMM4I(&KLlistGVKd, beta_lookaheads_, &T70);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:853
          T69 = T71_0;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:853
          reducing_input_ = T69;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:854
          T72 = KmemberQVKdMM3I(&KPfalseVKi, beta_lookaheads_, &KPempty_vectorVKi, &KEEVKd);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:854
          if (T72 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:855
            T37 = reducing_input_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:855
            T74.vector_element_[0] = T37;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:855
            T75_0 = Kconcatenate_asVKdMM4I(&KLlistGVKd, lookaheads_, &T74);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:855
            T73 = T75_0;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:855
            reducing_input_ = T73;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:854
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:852
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T36 = reducing_input_;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T19 = CALL1(&Kremove_duplicatesVKd, T36);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        CONGRUENT_CALL_PROLOG(&Kforward_iteration_protocolVKd, 1);
        T20 = CONGRUENT_CALL1(T19);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T21 = T20;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T22 = MV_GET_ELT(1);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T23 = MV_GET_ELT(2);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T24 = MV_GET_ELT(3);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T25 = MV_GET_ELT(5);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        T26T = T21;
      L1: ;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
          T26 = T26T;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
          T27 = CALL3(T24, T19, T26, T22);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
          if (T27 == &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
            T28 = CALL2(T25, T19, T26);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:859
            if (T28 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:860
              T76 = SLOT_VALUE_INITD(deriv_, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:860
              T29 = CALL1(&Knont_epsilon_itemVgrammar_compiler, T76);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:860
              Kset_reduce_actionVgrammar_compilerI(gv_, state_, T29, T28);
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:859
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
            T30 = CALL2(T23, T19, T26);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
            T26T = T30;
            goto L1;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:858
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
        T31 = CALL2(T11, possible_reductors_, T14);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
        T14T = T31;
        goto L0;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
      T32 = &KPfalseVKi;
      MV_SET_ELT(0, &KPfalseVKi);
      MV_SET_COUNT(1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:849
    T34 = T32;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:846
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:842
  return(T34);
}

static D Kanonymous_of_generate_reductionsF547I (D d_) {
  D T1;
  D T2;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:845
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:845
  T1 = CALL1(&KheadVKd, d_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:845
  T2 = CALL1(&Knont_epsilon_itemVgrammar_compiler, T1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:845
  return(T2);
}

D Kitem_next_first_setVgrammar_compilerI (D item_) {
  D T2_0;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7_0;
  D Utmp_;
  D T9_0;
  D T10;
  D T11_0;
  D T12_0;
  D T13_0;
  D T14_0;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21_0;
  D T22_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:658
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:660
  T15 = SLOT_VALUE_INITD(item_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:661
  T16 = primitive_instanceQ(T15,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:661
  if (T16 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
    T18 = primitive_instanceQ(T15,&KLnon_empty_itemGVgrammar_compiler);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
    if (T18 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
      T17 = CALL1(&Kitem_first_termVgrammar_compiler, T15);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
      T19 = primitive_instanceQ(T17,&KLterminalGVgrammar_compiler);
      T20 = T19;
    } else {
      T20 = &KPfalseVKi;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
    if (T20 != &KPfalseVKi) {
      T5 = T20;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
      T3 = CALL1(&Kitem_next_itemVgrammar_compiler, T15);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
      CONGRUENT_CALL_PROLOG(&KemptyQVKd, 1);
      T4 = CONGRUENT_CALL1(T3);
      T5 = T4;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:663
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:661
    if (T5 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:664
      T6 = CALL1(&Kitem_first_termVgrammar_compiler, T15);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:664
      T7_0 = CALL1(&Kterm_first_setVgrammar_compiler, T6);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:664
      T21_0 = T7_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T7_0);
        primitive_type_check(T21_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      T13_0 = T21_0;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
      Utmp_ = CALL1(&Kitem_first_setVgrammar_compiler, T15);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
      if (Utmp_ != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
        T9_0 = Utmp_;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
        T22_0 = T9_0;
        {
          MV_CHECK_TYPE_PROLOGUE(T9_0);
          primitive_type_check(T22_0, &KLlistGVKd);
          MV_CHECK_TYPE_EPILOGUE();
        }
        T12_0 = T22_0;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
        T10 = CALL1(&Kcompute_item_first_setVgrammar_compiler, T15);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
        CALL2(&Kitem_first_set_setterVgrammar_compiler, T10, T15);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
        T11_0 = T10;
        T12_0 = T11_0;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:666
      T13_0 = T12_0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:661
    T14_0 = T13_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:662
    T2_0 = &K533;
    T14_0 = T2_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:661
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:658
  MV_SET_COUNT(1);
  return(T14_0);
}

D Kcompute_item_first_setVgrammar_compilerI (D item_) {
  D T2;
  D rest_of_first_set_;
  D T4_0;
  D T5_0;
  D T6_0;
  D T7;
  D T8;
  D T9_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:670
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:672
  T7 = SLOT_VALUE_INITD(item_, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:672
  T8 = SLOT_VALUE_INITD(T7, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:673
  T2 = CALL2(&KmemberQVKd, &KPfalseVKi, T8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:673
  if (T2 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:674
    rest_of_first_set_ = Kitem_next_first_setVgrammar_compilerI(item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:675
    T4_0 = CALL2(&Kcombine_first_setsVgrammar_compiler, T8, rest_of_first_set_);
    T6_0 = T4_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:677
    T5_0 = T8;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:677
    T9_0 = T5_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T5_0);
      primitive_type_check(T9_0, &KLlistGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T6_0 = T9_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:673
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:670
  MV_SET_COUNT(1);
  return(T6_0);
}

D Kcombine_first_setsVgrammar_compilerI (D alpha_, D beta_) {
  D T2_0;
  D T3T, T3;
  D la_;
  D T5;
  D T6_0;
  D T7_0;
  D result_;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18_0;
  D T19_0;
  D T20;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:709
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:711
  T11 = KmemberQVKdMM3I(&KPfalseVKi, alpha_, &KPempty_vectorVKi, &KEEVKd);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:711
  if (T11 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:714
    result_ = beta_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
    T3T = alpha_;
  L0: ;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
      T3 = T3T;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
      T12 = primitive_idQ(T3,&KPempty_listVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
      if (T12 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        T13 = SLOT_VALUE_INITD(T3, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        primitive_type_check(T13, &K540);
        la_ = T13;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:716
        if (la_ != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:716
          T14 = KmemberQVKdMM3I(la_, beta_, &KPempty_vectorVKi, &KEEVKd);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:716
          T15 = primitive_not(T14);
          T5 = T15;
        } else {
          T5 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:716
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:716
        if (T5 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:717
          T10 = result_;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:717
          T16 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:717
          SLOT_VALUE_SETTER(la_, T16, 0);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:717
          SLOT_VALUE_SETTER(T10, T16, 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:717
          result_ = T16;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:716
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        T17 = SLOT_VALUE_INITD(T3, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        T18_0 = T17;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        T19_0 = T18_0;
        {
          MV_CHECK_TYPE_PROLOGUE(T18_0);
          primitive_type_check(T19_0, &KLlistGVKd);
          MV_CHECK_TYPE_EPILOGUE();
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        T20 = T19_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
        T3T = T20;
        goto L0;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:715
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:720
    T9 = result_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:720
    T6_0 = T9;
    T7_0 = T6_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:712
    T2_0 = alpha_;
    T7_0 = T2_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:711
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:709
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kmaybe_set_error_actionVgrammar_compilerI (D gv_, D state_, D nt_) {
  D old_;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14_0;
  D T15;
  D T16;
  D T17;
  D T18;
  _KLsimple_object_vectorGVKd_4 T19 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T20;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:931
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:932
  T12 = SLOT_VALUE_INITD(nt_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:933
  if (T12 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:934
    T13 = SLOT_VALUE_INITD(gv_, 7);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:934
    T14_0 = KgethashVKiI(T13, state_, &KPfalseVKi, &KPtrueVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:934
    T15 = T14_0;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:934
    primitive_type_check(T15, &K152);
    old_ = T15;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
    T16 = primitive_not(old_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
    if (old_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
      CONGRUENT_CALL_PROLOG(&KLVKd, 2);
      T5 = CONGRUENT_CALL2(old_, T12);
      T6 = T5;
    } else {
      T6 = T16;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
    if (T6 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
      T17 = SLOT_VALUE_INITD(T13, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
      T18 = primitive_instanceQ(T12,T17);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
      if (T18 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
        T19.vector_element_[0] = &KJvalue_;
        T19.vector_element_[1] = T12;
        T19.vector_element_[2] = &KJtype_;
        T19.vector_element_[3] = T17;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
        CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
        T20 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T19);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
        CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
        CONGRUENT_CALL2(T20, &KPempty_vectorVKi);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
      KputhashVKiI(T12, T13, state_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:936
      T7 = T12;
      MV_SET_ELT(0, T12);
      MV_SET_COUNT(1);
      T9 = T7;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
      T8 = &KPfalseVKi;
      MV_SET_ELT(0, &KPfalseVKi);
      MV_SET_COUNT(1);
      T9 = T8;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:935
    T11 = T9;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:933
    T10 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T11 = T10;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:933
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:931
  return(T11);
}

D KLnon_empty_itemGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_item_index_, D Uunique_item_rule_, D Uunique_item_first_term_, D Uunique_item_next_item_) {
  D T7;
  D Uunique_item_indexF8;
  D T9;
  D Uunique_item_ruleF10;
  D T11;
  D Uunique_item_first_termF12;
  D T13;
  D Uunique_item_next_itemF14;
  D T15;
  D Uunique_item_indexF16;
  D Uunique_item_ruleF17;
  D Uunique_item_first_termF18;
  D Uunique_item_next_itemF19;
  D T20_0;
  D T21;
  _KLsimple_object_vectorGVKd_1 T22 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T23;
  D T24;
  _KLsimple_object_vectorGVKd_1 T25 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T26;
  D T27;
  _KLsimple_object_vectorGVKd_1 T28 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T29;
  D T30;
  _KLsimple_object_vectorGVKd_1 T31 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T32;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  T21 = primitive_idQ(Uunique_item_index_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  if (T21 != &KPfalseVKi) {
    T22.vector_element_[0] = IKJindex_;
    T23 = KerrorVKdMM1I(&K29, &T22);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
    T7 = T23;
    Uunique_item_indexF8 = T7;
  } else {
    Uunique_item_indexF8 = Uunique_item_index_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  T24 = primitive_idQ(Uunique_item_rule_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  if (T24 != &KPfalseVKi) {
    T25.vector_element_[0] = IKJrule_;
    T26 = KerrorVKdMM1I(&K29, &T25);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
    T9 = T26;
    Uunique_item_ruleF10 = T9;
  } else {
    Uunique_item_ruleF10 = Uunique_item_rule_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  T27 = primitive_idQ(Uunique_item_first_term_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  if (T27 != &KPfalseVKi) {
    T28.vector_element_[0] = IKJfirst_term_;
    T29 = KerrorVKdMM1I(&K29, &T28);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
    T11 = T29;
    Uunique_item_first_termF12 = T11;
  } else {
    Uunique_item_first_termF12 = Uunique_item_first_term_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  T30 = primitive_idQ(Uunique_item_next_item_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  if (T30 != &KPfalseVKi) {
    T31.vector_element_[0] = IKJnext_item_;
    T32 = KerrorVKdMM1I(&K29, &T31);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
    T13 = T32;
    Uunique_item_next_itemF14 = T13;
  } else {
    Uunique_item_next_itemF14 = Uunique_item_next_item_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  T15 = primitive_object_allocate_filled(7,&KLnon_empty_itemGVgrammar_compilerW,6,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_item_indexF8, &KLindexGVgrammar_compiler);
  Uunique_item_indexF16 = Uunique_item_indexF8;
  SLOT_VALUE_SETTER(Uunique_item_indexF16, T15, 0);
  primitive_type_check(Uunique_item_ruleF10, &KLruleGVgrammar_compiler);
  Uunique_item_ruleF17 = Uunique_item_ruleF10;
  SLOT_VALUE_SETTER(Uunique_item_ruleF17, T15, 1);
  SLOT_VALUE_SETTER(&KPempty_listVKi, T15, 2);
  primitive_type_check(Uunique_item_first_termF12, &KLtermGVgrammar_compiler);
  Uunique_item_first_termF18 = Uunique_item_first_termF12;
  SLOT_VALUE_SETTER(Uunique_item_first_termF18, T15, 3);
  primitive_type_check(Uunique_item_next_itemF14, &KLitemGVgrammar_compiler);
  Uunique_item_next_itemF19 = Uunique_item_next_itemF14;
  SLOT_VALUE_SETTER(Uunique_item_next_itemF19, T15, 4);
  SLOT_VALUE_SETTER(&KPfalseVKi, T15, 5);
  T20_0 = T15;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:112
  MV_SET_COUNT(1);
  return(T20_0);
}

D Kitem_terminal_leftQVgrammar_compilerMM0I (D item_) {
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:122
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
  T5 = primitive_instanceQ(item_,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
  if (T5 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
    T2 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
    T6 = primitive_instanceQ(T2,&KLterminalGVgrammar_compiler);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
    T7_0 = T6;
    T4 = T7_0;
    MV_SET_COUNT(1);
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
    T3 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T4 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:123
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:122
  return(T4);
}

D Kcompute_kernel_setsVgrammar_compilerI (D gv_) {
  D T2;
  DWORD T3T, T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10_0;
  D T11;
  D T12;
  D T13_0;
  D T14;
  D T15;
  DWORD T16;
  D T17;
  D T18;
  D T19;
  D T20;
  _KLsimple_object_vectorGVKd_4 T21 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T22;
  DWORD T23;
  D T24_0;
  D T25;
  D T26_0;
  D T27;
  _KLsimple_object_vectorGVKd_1 T28 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T29;
  D T30;
  D seen_states_;
  D T32_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:557
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:558
  T10_0 = KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0I(&KLitem_set_tableGVgrammar_compiler, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:558
  T9 = T10_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:559
  T11 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:560
  T2 = &Kintern_item_setF627;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:560
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:569
  T13_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:569
  T12 = T13_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  T14 = SLOT_VALUE_INITD(gv_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  T15 = SLOT_VALUE_INITD(T14, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  T16 = primitive_cast_integer_as_raw(T15);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  T3T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
    T3 = T3T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
    T17 = primitive_machine_word_equalQ(T3,T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
    if (T17 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
      T18 = REPEATED_D_SLOT_VALUE_TAGGED(T14, 1, T3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      T4 = CALL1(&Knont_derivsVgrammar_compiler, T18);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      T5 = CALL2(&KmapVKd, &KheadVKd, T4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      T19 = SLOT_VALUE_INITD(T12, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      T20 = primitive_instanceQ(T5,T19);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      if (T20 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
        T21.vector_element_[0] = &KJvalue_;
        T21.vector_element_[1] = T5;
        T21.vector_element_[2] = &KJtype_;
        T21.vector_element_[3] = T19;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
        CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
        T22 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T21);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
        CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
        CONGRUENT_CALL2(T22, &KPempty_vectorVKi);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:571
      KputhashVKiI(T5, T12, T18);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
      T23 = primitive_machine_word_add_signal_overflow(T3,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
      T3T = T23;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  T6 = MAKE_CLOSURE(&Kstate_transitionsF613, 5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  INIT_CLOSURE(T6, 5, T12, T11, T9, T2, gv_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T25 = SLOT_VALUE_INITD(gv_, 5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T26_0 = KelementVKdMM11I(T25, (D) 1, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T24_0 = T26_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T26_0);
    primitive_type_check(T24_0, &KLitemGVgrammar_compiler);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T27 = T24_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T28.vector_element_[0] = T27;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T7 = KlistVKdI(&T28);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T8 = Kintern_item_setF627I(T11, T9, T7);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T32_0 = KLobject_setGZ32ZconstructorVKiMM0I(&KLobject_setGVKe, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  seen_states_ = T32_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  KaddXVKdMM14I(seen_states_, T8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  get_teb()->function = T6;
  T29 = Kstate_transitionsF613I(T8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T30 = CALL3(&KloopF605, seen_states_, T6, T29);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:557
  return(T30);
}

D Kinitialize_lookahead_tableVgrammar_compilerI (D gv_) {
  DWORD T1T, T1;
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8T, T8;
  D T9;
  D item_;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  DWORD T17;
  D T18;
  D T19;
  D T20;
  D T21;
  DWORD T22;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:587
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
  T14 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
  T15 = SLOT_VALUE_INITD(T14, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
  T16 = SLOT_VALUE_INITD(T15, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
  T17 = primitive_cast_integer_as_raw(T16);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
  T1T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
    T1 = T1T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
    T19 = primitive_cast_raw_as_integer(T1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
    T18 = primitive_machine_word_equalQ(T1,T17);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
    if (T18 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
      T20 = SLOT_VALUE_INITD(T14, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
      T21 = REPEATED_D_SLOT_VALUE_TAGGED(T20, 2, T1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T2 = CALL1(&Kforward_iteration_protocolVKd, T21);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T3 = T2;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T4 = MV_GET_ELT(1);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T5 = MV_GET_ELT(2);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T6 = MV_GET_ELT(3);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T7 = MV_GET_ELT(5);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      T8T = T3;
    L1: ;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
        T8 = T8T;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
        T9 = CALL3(T6, T21, T8, T4);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
        if (T9 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
          T11 = CALL2(T7, T21, T8);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
          primitive_type_check(T11, &KLitemGVgrammar_compiler);
          item_ = T11;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:590
          CALL4(&Kstate_item_lookaheads_setterVgrammar_compiler, &KPempty_listVKi, gv_, T19, item_);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
          T12 = CALL2(T5, T21, T8);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
          T8T = T12;
          goto L1;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:589
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
      T22 = primitive_machine_word_add_signal_overflow(T1,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
      T1T = T22;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
    T13 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:588
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:587
  return(T13);
}

D Kdetermine_lookaheadsVgrammar_compilerI (D gv_) {
  DWORD T1T, T1;
  D item_;
  D T3;
  DWORD stateF4T, stateF4;
  D T5;
  D T6;
  D T7;
  DWORD T8;
  D T9;
  D T10;
  DWORD T11;
  D T12_0;
  D T13;
  D T14_0;
  D T15;
  D T16;
  D T17;
  D T18;
  DWORD T19;
  D T20;
  D T21;
  DWORD T22;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:597
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
  T6 = SLOT_VALUE_INITD(gv_, 5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
  T7 = SLOT_VALUE_INITD(T6, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
  T8 = primitive_cast_integer_as_raw(T7);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
  T1T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
    T1 = T1T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
    T9 = primitive_machine_word_equalQ(T1,T8);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
    if (T9 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
      T10 = REPEATED_D_SLOT_VALUE_TAGGED(T6, 1, T1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
      primitive_type_check(T10, &KLitemGVgrammar_compiler);
      item_ = T10;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:599
      T3 = Kcompute_lr1_closureVgrammar_compilerI(item_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:599
      SLOT_VALUE_SETTER(T3, item_, 2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
      T11 = primitive_machine_word_add_signal_overflow(T1,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
      T1T = T11;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:598
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:605
  T13 = SLOT_VALUE_INITD(gv_, 5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:605
  T14_0 = KelementVKdMM11I(T13, (D) 1, &KPempty_vectorVKi, &Kunsupplied_objectVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:605
  T12_0 = T14_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T14_0);
    primitive_type_check(T12_0, &KLitemGVgrammar_compiler);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:605
  T15 = T12_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:603
  CALL4(&Kadd_to_lookahead_tableVgrammar_compiler, gv_, (D) 1, T15, Deoi_termVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
  T16 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
  T17 = SLOT_VALUE_INITD(T16, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
  T18 = SLOT_VALUE_INITD(T17, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
  T19 = primitive_cast_integer_as_raw(T18);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
  stateF4T = 1;
L1: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
    stateF4 = stateF4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
    T21 = primitive_cast_raw_as_integer(stateF4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
    T20 = primitive_machine_word_less_thanQ(stateF4,T19);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
    if (T20 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:608
      CALL2(&Kdetermine_state_lookaheadsVgrammar_compiler, gv_, T21);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
      T22 = primitive_machine_word_add_signal_overflow(stateF4,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
      stateF4T = T22;
      goto L1;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
    T5 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:607
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:597
  return(T5);
}

D Kpropagate_the_lookaheadsVgrammar_compilerI (D gv_) {
  D pe_T, pe_;
  D Utmp_;
  D T3;
  D T4;
  D T5;
  D T6;
  D moreQ_;
  D T8;
  D T9;
  D T10;
  D T11;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:616
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:623
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:618
    moreQ_ = &KPfalseVKi;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
    T10 = SLOT_VALUE_INITD(gv_, 11);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
    pe_T = T10;
  L1: ;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
      pe_ = pe_T;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
      if (pe_ != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:620
        Utmp_ = CALL2(&Kpropagate_a_lookaheadVgrammar_compiler, gv_, pe_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:620
        if (Utmp_ != &KPfalseVKi) {
          T3 = Utmp_;
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:620
          T9 = moreQ_;
          T3 = T9;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:620
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:620
        moreQ_ = T3;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
        T4 = CALL1(&Kpentry_nextVgrammar_compiler, pe_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
        pe_T = T4;
        goto L1;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:619
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:622
    T8 = moreQ_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:622
    if (T8 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:623
      goto L0;
      T6 = T11;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:622
      T5 = &KPfalseVKi;
      MV_SET_ELT(0, &KPfalseVKi);
      MV_SET_COUNT(1);
      T6 = T5;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:622
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:623
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:616
  return(T6);
}

D Kpropagate_a_lookaheadVgrammar_compilerI (D gv_, D entry_) {
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9T, T9;
  D las_T, las_;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17_0;
  D T18_0;
  D T19_0;
  D T20;
  D T21;
  D T22;
  D T23_0;
  D from_las_;
  D T25;
  D T26;
  D T27_0;
  D goto_las_;
  D T29;
  D T30;
  D T31;
  _KLsimple_object_vectorGVKd_4 T32 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T33;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:778
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:784
  T20 = SLOT_VALUE_INITD(gv_, 8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:784
  T21 = SLOT_VALUE_INITD(entry_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:784
  T22 = Dtable_entry_emptyVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:784
  T23_0 = KgethashVKiI(T20, T21, T22, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:784
  from_las_ = T23_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:785
  T25 = SLOT_VALUE_INITD(entry_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:786
  T26 = Dtable_entry_emptyVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:786
  T27_0 = KgethashVKiI(T20, T25, T26, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:786
  goto_las_ = T27_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T3 = CALL1(&Kforward_iteration_protocolVKd, from_las_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T4 = T3;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T5 = MV_GET_ELT(1);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T6 = MV_GET_ELT(2);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T7 = MV_GET_ELT(3);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T8 = MV_GET_ELT(5);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  T9T = T4;
  las_T = goto_las_;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
    T9 = T9T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
    las_ = las_T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
    T11 = CALL3(T7, from_las_, T9, T5);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
    if (T11 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
      T12 = CALL2(T8, from_las_, T9);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
      T13 = CALL2(T6, from_las_, T9);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:789
      T14 = CALL2(&KmemberQVKd, T12, goto_las_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:789
      if (T14 != &KPfalseVKi) {
        T15 = las_;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:789
        T29 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:789
        SLOT_VALUE_SETTER(T12, T29, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:789
        SLOT_VALUE_SETTER(las_, T29, 1);
        T15 = T29;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:789
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
      T9T = T13;
      las_T = T15;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:791
    T16 = KEEVKdI(las_, goto_las_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:791
    if (T16 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:791
      T18_0 = &KPfalseVKi;
      T19_0 = T18_0;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
      T30 = SLOT_VALUE_INITD(T20, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
      T31 = primitive_instanceQ(las_,T30);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
      if (T31 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
        T32.vector_element_[0] = &KJvalue_;
        T32.vector_element_[1] = las_;
        T32.vector_element_[2] = &KJtype_;
        T32.vector_element_[3] = T30;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
        CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
        T33 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T32);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
        CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
        CONGRUENT_CALL2(T33, &KPempty_vectorVKi);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:792
      KputhashVKiI(las_, T20, T25);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:793
      T17_0 = &KPtrueVKi;
      T19_0 = T17_0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:791
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:788
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:778
  MV_SET_COUNT(1);
  return(T19_0);
}

D Kcompute_lr1_closureVgrammar_compilerI (D item_) {
  D T1;
  D T2_0;
  D beta_first_set_;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12T, T12;
  D T13;
  D deriv_;
  D T15;
  D zeta_beta_first_set_;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24T, T24;
  D T25;
  D T26;
  D T27;
  D T28;
  D T29;
  D T30_0;
  D T31_0;
  D result_;
  D T33;
  D T34;
  D T35;
  D T36;
  _KLsimple_object_vectorGVKd_1 T37 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T38;
  D T39;
  D T40;
  D T41;
  D T42;
  D T43;
  D T44;
  D T45;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:690
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:692
  T36 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:692
  SLOT_VALUE_SETTER(item_, T36, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:692
  SLOT_VALUE_SETTER(&K533, T36, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:692
  T37.vector_element_[0] = T36;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:692
  T1 = KlistVKdI(&T37);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:692
  result_ = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
  T39 = primitive_instanceQ(item_,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
  if (T39 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
    T38 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
    T40 = primitive_instanceQ(T38,&KLnon_terminalGVgrammar_compiler);
    T41 = T40;
  } else {
    T41 = &KPfalseVKi;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
  if (T41 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:696
    beta_first_set_ = CALL1(&Kitem_next_first_setVgrammar_compiler, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T4 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T5 = CALL1(&Knont_derivsVgrammar_compiler, T4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T6 = CALL1(&Kforward_iteration_protocolVKd, T5);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T7 = T6;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T8 = MV_GET_ELT(1);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T9 = MV_GET_ELT(2);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T10 = MV_GET_ELT(3);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T11 = MV_GET_ELT(5);
;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    T12T = T7;
  L0: ;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
      T12 = T12T;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
      T13 = CALL3(T10, T5, T12, T8);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
      if (T13 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
        T15 = CALL2(T11, T5, T12);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
        primitive_type_check(T15, &KLpairGVKd);
        deriv_ = T15;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:698
        T42 = SLOT_VALUE_INITD(deriv_, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:699
        T43 = SLOT_VALUE_INITD(deriv_, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:700
        zeta_beta_first_set_ = CALL2(&Kcombine_first_setsVgrammar_compiler, T43, beta_first_set_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T17 = CALL1(&Knont_rulesVgrammar_compiler, T42);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T18 = CALL1(&Kforward_iteration_protocolVKd, T17);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T19 = T18;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T20 = MV_GET_ELT(1);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T21 = MV_GET_ELT(2);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T22 = MV_GET_ELT(3);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T23 = MV_GET_ELT(5);
;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        T24T = T19;
      L1: ;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
          T24 = T24T;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
          T25 = CALL3(T22, T17, T24, T20);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
          if (T25 == &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
            T26 = CALL2(T23, T17, T24);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            T27 = CALL1(&Krule_itemVgrammar_compiler, T26);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            T44 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            SLOT_VALUE_SETTER(T27, T44, 0);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            SLOT_VALUE_SETTER(zeta_beta_first_set_, T44, 1);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            T34 = result_;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            T45 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            SLOT_VALUE_SETTER(T44, T45, 0);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            SLOT_VALUE_SETTER(T34, T45, 1);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:702
            result_ = T45;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
            T28 = CALL2(T21, T17, T24);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
            T24T = T28;
            goto L1;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:701
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
        T29 = CALL2(T9, T5, T12);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
        T12T = T29;
        goto L0;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:697
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:705
    T33 = result_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:705
    T30_0 = T33;
    T31_0 = T30_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:694
    T35 = result_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:694
    T2_0 = T35;
    T31_0 = T2_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:693
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:690
  MV_SET_COUNT(1);
  return(T31_0);
}

D Kadd_to_lookahead_tableVgrammar_compilerI (D gv_, D state_, D item_, D la_) {
  D las_;
  D T6;
  D T7;
  D T8;
  D shiftF9;
  DWORD T10;
  DWORD T11;
  DWORD mx_;
  D T13;
  DWORD T14;
  D T15;
  D T16;
  DWORD T17;
  DWORD T18;
  DWORD T19;
  DWORD T20;
  D T21;
  DWORD T22;
  DWORD T23;
  DWORD T24;
  DWORD T25;
  DWORD T26;
  D T27;
  DWORD T28;
  DWORD T29;
  DWORD T30;
  D T31;
  D T32;
  D T33;
  D T34_0;
  D T35;
  D T36;
  D T37;
  D T38;
  D T39;
  _KLsimple_object_vectorGVKd_4 T40 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T41;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:798
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  shiftF9 = (D) 57;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T10 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T11 = primitive_machine_word_logxor(T10,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  mx_ = T11;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T13 = shiftF9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T14 = primitive_cast_integer_as_raw(T13);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T15 = primitive_machine_word_equalQ(T14,129);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  if (T15 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    shiftF9 = (D) 65;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    T16 = shiftF9;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    T17 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    T18 = primitive_cast_integer_as_raw(T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    T19 = primitive_machine_word_shift_right(T18,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    T20 = primitive_machine_word_shift_left_signal_overflow(T17,T19);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
    mx_ = T20;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T21 = shiftF9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T22 = mx_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T23 = primitive_cast_integer_as_raw(T21);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T24 = primitive_machine_word_shift_right(T23,2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T25 = primitive_machine_word_shift_left_signal_overflow(T22,T24);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T26 = primitive_machine_word_logior(T25,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T27 = SLOT_VALUE_INITD(item_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T28 = primitive_cast_integer_as_raw(T27);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T29 = primitive_machine_word_logxor(T28,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T30 = primitive_machine_word_add_signal_overflow(T26,T29);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:800
  T31 = primitive_cast_raw_as_integer(T30);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:801
  T32 = SLOT_VALUE_INITD(gv_, 8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:801
  T33 = Dtable_entry_emptyVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:801
  T34_0 = KgethashVKiI(T32, T31, T33, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:801
  T35 = T34_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:801
  primitive_type_check(T35, &KLlistGVKd);
  las_ = T35;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:802
  T36 = KmemberQVKdMM3I(la_, las_, &KPempty_vectorVKi, &KEEVKd);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:802
  if (T36 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:802
    T7 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T8 = T7;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    T37 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    SLOT_VALUE_SETTER(la_, T37, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    SLOT_VALUE_SETTER(las_, T37, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    T38 = SLOT_VALUE_INITD(T32, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    T39 = primitive_instanceQ(T37,T38);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    if (T39 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
      T40.vector_element_[0] = &KJvalue_;
      T40.vector_element_[1] = T37;
      T40.vector_element_[2] = &KJtype_;
      T40.vector_element_[3] = T38;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
      CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
      T41 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T40);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
      CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
      CONGRUENT_CALL2(T41, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    KputhashVKiI(T37, T32, T31);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:803
    T6 = T37;
    MV_SET_ELT(0, T37);
    MV_SET_COUNT(1);
    T8 = T6;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:802
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:798
  return(T8);
}

D Kdetermine_state_lookaheadsVgrammar_compilerI (D gv_, D state_) {
  D T3T, T3;
  D kernel_item_;
  D T5T, T5;
  D lr1_item_;
  D itemF7;
  D lookaheads_;
  D T9T, T9;
  D la_;
  D T11;
  D T12;
  D T13;
  D T14;
  DWORD T15;
  DWORD T16;
  D T17;
  D T18;
  D T19_0;
  D T20_0;
  D T21_0;
  D T22;
  D T23;
  D T24;
  D T25;
  D T26;
  D T27;
  D T28;
  D T29;
  D T30;
  D T31;
  D T32;
  D T33;
  D to_itemF34;
  D T35;
  D shiftF36;
  DWORD T37;
  DWORD mxF38;
  D T39;
  DWORD T40;
  D T41;
  D T42;
  DWORD T43;
  DWORD T44;
  DWORD T45;
  DWORD T46;
  D T47;
  DWORD T48;
  DWORD T49;
  DWORD T50;
  DWORD T51;
  DWORD T52;
  D T53;
  DWORD T54;
  DWORD T55;
  DWORD T56;
  D T57;
  D T58;
  D T59_0;
  D T60;
  D shiftF61;
  DWORD mxF62;
  D T63;
  DWORD T64;
  D T65;
  D T66;
  DWORD T67;
  DWORD T68;
  DWORD T69;
  DWORD T70;
  D T71;
  DWORD T72;
  DWORD T73;
  DWORD T74;
  DWORD T75;
  DWORD T76;
  D T77;
  DWORD T78;
  DWORD T79;
  DWORD T80;
  D T81;
  D T82;
  D T83_0;
  D T84;
  D T85;
  D shiftF86;
  DWORD T87;
  DWORD T88;
  DWORD mxF89;
  D T90;
  DWORD T91;
  D T92;
  D T93;
  DWORD T94;
  DWORD T95;
  DWORD T96;
  DWORD T97;
  D T98;
  DWORD T99;
  DWORD T100;
  DWORD T101;
  DWORD T102;
  DWORD T103;
  D T104;
  DWORD T105;
  DWORD T106;
  DWORD T107;
  D T108;
  D T109;
  D T110;
  D T111_0;
  _KLsimple_object_vectorGVKd_6 T112 = {&KLsimple_object_vectorGVKdW, (D) 25};
  D T113;
  D T114_0;
  D T115_0;
  D T116;
  D T117;
  D T118_0;
  D T119_0;
  D T120;
  D T121;
  D T122_0;
  D T123_0;
  D T124;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:724
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  T12 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  T13 = SLOT_VALUE_INITD(T12, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  T14 = SLOT_VALUE_INITD(T13, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  T15 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  T16 = primitive_cast_integer_as_raw(T14);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  T17 = primitive_machine_word_unsigned_less_thanQ(T15,T16);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  if (T17 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
    T18 = REPEATED_D_SLOT_VALUE_TAGGED(T13, 2, T15);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
    T19_0 = T18;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
    T21_0 = T19_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T19_0);
      primitive_type_check(T21_0, &KLlistGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
    T22 = T21_0;
    T24 = T22;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
    T20_0 = Kelement_range_errorVKeI(T12, state_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
    T23 = T20_0;
    T24 = T23;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:725
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
  T3T = T24;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
    T3 = T3T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
    T25 = primitive_idQ(T3,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
    if (T25 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      T26 = SLOT_VALUE_INITD(T3, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      primitive_type_check(T26, &KLitemGVgrammar_compiler);
      kernel_item_ = T26;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
      T27 = SLOT_VALUE_INITD(kernel_item_, 2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
      T5T = T27;
    L1: ;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
        T5 = T5T;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
        T28 = primitive_idQ(T5,&KPempty_listVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
        if (T28 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          T29 = SLOT_VALUE_INITD(T5, 0);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          primitive_type_check(T29, &KLpairGVKd);
          lr1_item_ = T29;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:728
          T30 = SLOT_VALUE_INITD(lr1_item_, 0);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:728
          primitive_type_check(T30, &KLitemGVgrammar_compiler);
          itemF7 = T30;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:729
          T31 = SLOT_VALUE_INITD(lr1_item_, 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:729
          primitive_type_check(T31, &KLlistGVKd);
          lookaheads_ = T31;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
          T9T = lookaheads_;
        L2: ;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
            T9 = T9T;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
            T32 = primitive_idQ(T9,&KPempty_listVKi);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
            if (T32 == &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              T33 = SLOT_VALUE_INITD(T9, 0);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              primitive_type_check(T33, &K540);
              la_ = T33;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:731
              if (la_ != &KPfalseVKi) {
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:734
                CALL4(&Kgenerate_spontaneous_lookaheadVgrammar_compiler, gv_, state_, itemF7, la_);
              } else {
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                T35 = primitive_instanceQ(itemF7,&KLnon_empty_itemGVgrammar_compiler);
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                if (T35 != &KPfalseVKi) {
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  primitive_type_check(itemF7, &KLnon_empty_itemGVgrammar_compiler);
                  to_itemF34 = itemF7;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  shiftF36 = (D) 57;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T37 = primitive_machine_word_logxor(T15,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  mxF38 = T37;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T39 = shiftF36;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T40 = primitive_cast_integer_as_raw(T39);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T41 = primitive_machine_word_equalQ(T40,129);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  if (T41 != &KPfalseVKi) {
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    shiftF36 = (D) 65;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T42 = shiftF36;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T43 = mxF38;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T44 = primitive_cast_integer_as_raw(T42);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T45 = primitive_machine_word_shift_right(T44,2);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T46 = primitive_machine_word_shift_left_signal_overflow(T43,T45);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    mxF38 = T46;
                  }
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T47 = shiftF36;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T48 = mxF38;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T49 = primitive_cast_integer_as_raw(T47);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T50 = primitive_machine_word_shift_right(T49,2);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T51 = primitive_machine_word_shift_left_signal_overflow(T48,T50);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T52 = primitive_machine_word_logior(T51,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T53 = SLOT_VALUE_INITD(kernel_item_, 0);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T54 = primitive_cast_integer_as_raw(T53);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T55 = primitive_machine_word_logxor(T54,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T56 = primitive_machine_word_add_signal_overflow(T52,T55);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T57 = primitive_cast_raw_as_integer(T56);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T58 = SLOT_VALUE_INITD(to_itemF34, 3);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T60 = SLOT_VALUE_INITD(gv_, 9);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  shiftF61 = (D) 57;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  mxF62 = T37;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T63 = shiftF61;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T64 = primitive_cast_integer_as_raw(T63);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T65 = primitive_machine_word_equalQ(T64,129);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  if (T65 != &KPfalseVKi) {
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    shiftF61 = (D) 65;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T66 = shiftF61;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T67 = mxF62;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T68 = primitive_cast_integer_as_raw(T66);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T69 = primitive_machine_word_shift_right(T68,2);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T70 = primitive_machine_word_shift_left_signal_overflow(T67,T69);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    mxF62 = T70;
                  }
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T71 = shiftF61;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T72 = mxF62;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T73 = primitive_cast_integer_as_raw(T71);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T74 = primitive_machine_word_shift_right(T73,2);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T75 = primitive_machine_word_shift_left_signal_overflow(T72,T74);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T76 = primitive_machine_word_logior(T75,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T77 = SLOT_VALUE_INITD(T58, 1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T78 = primitive_cast_integer_as_raw(T77);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T79 = primitive_machine_word_logxor(T78,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T80 = primitive_machine_word_add_signal_overflow(T76,T79);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T81 = primitive_cast_raw_as_integer(T80);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T82 = Dtable_entry_emptyVKi;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T83_0 = KgethashVKiI(T60, T81, T82, &KPtrueVKi);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T59_0 = T83_0;
                  {
                    MV_CHECK_TYPE_PROLOGUE(T83_0);
                    primitive_type_check(T59_0, &KLstateGVgrammar_compiler);
                    MV_CHECK_TYPE_EPILOGUE();
                  }
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T84 = T59_0;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T85 = SLOT_VALUE_INITD(to_itemF34, 4);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  shiftF86 = (D) 57;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T87 = primitive_cast_integer_as_raw(T84);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T88 = primitive_machine_word_logxor(T87,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  mxF89 = T88;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T90 = shiftF86;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T91 = primitive_cast_integer_as_raw(T90);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T92 = primitive_machine_word_equalQ(T91,129);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  if (T92 != &KPfalseVKi) {
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    shiftF86 = (D) 65;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T93 = shiftF86;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T94 = mxF89;
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T95 = primitive_cast_integer_as_raw(T93);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T96 = primitive_machine_word_shift_right(T95,2);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    T97 = primitive_machine_word_shift_left_signal_overflow(T94,T96);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                    mxF89 = T97;
                  }
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T98 = shiftF86;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T99 = mxF89;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T100 = primitive_cast_integer_as_raw(T98);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T101 = primitive_machine_word_shift_right(T100,2);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T102 = primitive_machine_word_shift_left_signal_overflow(T99,T101);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T103 = primitive_machine_word_logior(T102,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T104 = SLOT_VALUE_INITD(T85, 0);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T105 = primitive_cast_integer_as_raw(T104);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T106 = primitive_machine_word_logxor(T105,1);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T107 = primitive_machine_word_add_signal_overflow(T103,T106);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T108 = primitive_cast_raw_as_integer(T107);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T109 = SLOT_VALUE_INITD(gv_, 11);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T112.vector_element_[0] = IKJfrom_key_;
                  T112.vector_element_[1] = T57;
                  T112.vector_element_[2] = IKJgoto_key_;
                  T112.vector_element_[3] = T108;
                  T112.vector_element_[4] = &KJnext_;
                  T112.vector_element_[5] = T109;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T111_0 = KLpropagation_entryGZ32ZconstructorVgrammar_compilerMM0I(&KLpropagation_entryGVgrammar_compiler, &T112, T57, T108, T109);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  T110 = T111_0;
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
                  SLOT_VALUE_SETTER(T110, gv_, 11);
                }
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:732
              }
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:731
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              T113 = SLOT_VALUE_INITD(T9, 1);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              T114_0 = T113;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              T115_0 = T114_0;
              {
                MV_CHECK_TYPE_PROLOGUE(T114_0);
                primitive_type_check(T115_0, &KLlistGVKd);
                MV_CHECK_TYPE_EPILOGUE();
              }
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              T116 = T115_0;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
              T9T = T116;
              goto L2;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:730
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          T117 = SLOT_VALUE_INITD(T5, 1);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          T118_0 = T117;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          T119_0 = T118_0;
          {
            MV_CHECK_TYPE_PROLOGUE(T118_0);
            primitive_type_check(T119_0, &KLlistGVKd);
            MV_CHECK_TYPE_EPILOGUE();
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          T120 = T119_0;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
          T5T = T120;
          goto L1;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:727
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      T121 = SLOT_VALUE_INITD(T3, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      T122_0 = T121;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      T123_0 = T122_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T122_0);
        primitive_type_check(T123_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      T124 = T123_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
      T3T = T124;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
    T11 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:726
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:724
  return(T11);
}

D Kgenerate_spontaneous_lookaheadVgrammar_compilerI (D gv_, D state_, D to_item_, D lookahead_) {
  D to_itemF4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10_0;
  D T11;
  D shiftF12;
  DWORD T13;
  DWORD T14;
  DWORD mx_;
  D T16;
  DWORD T17;
  D T18;
  D T19;
  DWORD T20;
  DWORD T21;
  DWORD T22;
  DWORD T23;
  D T24;
  DWORD T25;
  DWORD T26;
  DWORD T27;
  DWORD T28;
  DWORD T29;
  D T30;
  DWORD T31;
  DWORD T32;
  DWORD T33;
  D T34;
  D T35;
  D T36_0;
  D goto_state_;
  D T38;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:766
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:768
  T8 = primitive_instanceQ(to_item_,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:768
  if (T8 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:769
    primitive_type_check(to_item_, &KLnon_empty_itemGVgrammar_compiler);
    to_itemF4 = to_item_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:770
    T9 = SLOT_VALUE_INITD(to_itemF4, 3);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T11 = SLOT_VALUE_INITD(gv_, 9);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    shiftF12 = (D) 57;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T13 = primitive_cast_integer_as_raw(state_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T14 = primitive_machine_word_logxor(T13,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    mx_ = T14;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T16 = shiftF12;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T17 = primitive_cast_integer_as_raw(T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T18 = primitive_machine_word_equalQ(T17,129);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    if (T18 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      shiftF12 = (D) 65;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      T19 = shiftF12;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      T20 = mx_;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      T21 = primitive_cast_integer_as_raw(T19);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      T22 = primitive_machine_word_shift_right(T21,2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      T23 = primitive_machine_word_shift_left_signal_overflow(T20,T22);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
      mx_ = T23;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T24 = shiftF12;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T25 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T26 = primitive_cast_integer_as_raw(T24);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T27 = primitive_machine_word_shift_right(T26,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T28 = primitive_machine_word_shift_left_signal_overflow(T25,T27);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T29 = primitive_machine_word_logior(T28,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T30 = SLOT_VALUE_INITD(T9, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T31 = primitive_cast_integer_as_raw(T30);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T32 = primitive_machine_word_logxor(T31,1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T33 = primitive_machine_word_add_signal_overflow(T29,T32);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T34 = primitive_cast_raw_as_integer(T33);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T35 = Dtable_entry_emptyVKi;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T36_0 = KgethashVKiI(T11, T34, T35, &KPtrueVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    T10_0 = T36_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T36_0);
      primitive_type_check(T10_0, &KLstateGVgrammar_compiler);
      MV_CHECK_TYPE_EPILOGUE();
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:771
    goto_state_ = T10_0;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:772
    T38 = SLOT_VALUE_INITD(to_itemF4, 4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:773
    T5 = Kadd_to_lookahead_tableVgrammar_compilerI(gv_, goto_state_, T38, lookahead_);
    T7 = T5;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:768
    T6 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T7 = T6;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:768
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:766
  return(T7);
}

D Kstate_item_lookaheads_setterVgrammar_compilerI (D lookaheads_, D gv_, D state_, D item_) {
  D T4;
  D T5;
  D shiftF6;
  DWORD T7;
  DWORD T8;
  DWORD mx_;
  D T10;
  DWORD T11;
  D T12;
  D T13;
  DWORD T14;
  DWORD T15;
  DWORD T16;
  DWORD T17;
  D T18;
  DWORD T19;
  DWORD T20;
  DWORD T21;
  DWORD T22;
  DWORD T23;
  D T24;
  DWORD T25;
  DWORD T26;
  DWORD T27;
  D T28;
  D T29;
  D T30;
  _KLsimple_object_vectorGVKd_4 T31 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T32;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:207
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T5 = SLOT_VALUE_INITD(gv_, 8);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  shiftF6 = (D) 57;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T7 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T8 = primitive_machine_word_logxor(T7,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  mx_ = T8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T10 = shiftF6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T11 = primitive_cast_integer_as_raw(T10);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T12 = primitive_machine_word_equalQ(T11,129);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  if (T12 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    shiftF6 = (D) 65;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    T13 = shiftF6;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    T14 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    T15 = primitive_cast_integer_as_raw(T13);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    T16 = primitive_machine_word_shift_right(T15,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    T17 = primitive_machine_word_shift_left_signal_overflow(T14,T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    mx_ = T17;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T18 = shiftF6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T19 = mx_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T20 = primitive_cast_integer_as_raw(T18);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T21 = primitive_machine_word_shift_right(T20,2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T22 = primitive_machine_word_shift_left_signal_overflow(T19,T21);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T23 = primitive_machine_word_logior(T22,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T24 = SLOT_VALUE_INITD(item_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T25 = primitive_cast_integer_as_raw(T24);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T26 = primitive_machine_word_logxor(T25,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T27 = primitive_machine_word_add_signal_overflow(T23,T26);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T28 = primitive_cast_raw_as_integer(T27);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T29 = SLOT_VALUE_INITD(T5, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T30 = primitive_instanceQ(lookaheads_,T29);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  if (T30 == &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    T31.vector_element_[0] = &KJvalue_;
    T31.vector_element_[1] = lookaheads_;
    T31.vector_element_[2] = &KJtype_;
    T31.vector_element_[3] = T29;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
    T32 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T31);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
    CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
    CONGRUENT_CALL2(T32, &KPempty_vectorVKi);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  KputhashVKiI(lookaheads_, T5, T28);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:209
  T4 = lookaheads_;
  MV_SET_ELT(0, lookaheads_);
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:207
  return(T4);
}

static D Kintern_item_setF627I (D implicit_argumentF19, D implicit_argumentF18, D items_) {
  D itemsF4;
  D T5_0;
  D T6_0;
  D T7_0;
  D T8_0;
  D Utmp_;
  D T10;
  D T11;
  _KLsimple_object_vectorGVKd_4 T12 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T13;
  D T14_0;
  D T15_0;
  D T16;
  D T17;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:560
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:561
  itemsF4 = Kmake_canonicalVgrammar_compilerI(items_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:562
  T8_0 = KgethashVKiI(implicit_argumentF18, itemsF4, &KPfalseVKi, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:562
  Utmp_ = T8_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:562
  if (Utmp_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:562
    T5_0 = Utmp_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:562
    T14_0 = T5_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T5_0);
      primitive_type_check(T14_0, &KLstateGVgrammar_compiler);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T7_0 = T14_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:564
    T16 = SLOT_VALUE_INITD(implicit_argumentF19, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:564
    T17 = SLOT_VALUE_INITD(T16, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:565
    KaddXVKdMM3I(implicit_argumentF19, itemsF4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    T10 = SLOT_VALUE_INITD(implicit_argumentF18, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    T11 = primitive_instanceQ(T17,T10);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    if (T11 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
      T12.vector_element_[0] = &KJvalue_;
      T12.vector_element_[1] = T17;
      T12.vector_element_[2] = &KJtype_;
      T12.vector_element_[3] = T10;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
      CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
      T13 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T12);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
      CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
      CONGRUENT_CALL2(T13, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    KputhashVKiI(T17, implicit_argumentF18, itemsF4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    T6_0 = T17;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:566
    T15_0 = T6_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T6_0);
      primitive_type_check(T15_0, &KLstateGVgrammar_compiler);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T7_0 = T15_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:562
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:560
  MV_SET_COUNT(1);
  return(T7_0);
}

static D Kstate_transitionsF613I (D state_) {
  D item_set_;
  D goto_sets_;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11T, T11;
  D T12;
  D T13;
  D sym_;
  D goto_state_;
  D T16;
  D T17;
  D result_;
  D T19;
  D T20;
  D T21;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:574
  item_set_ = CALL2(&Kstate_item_setVgrammar_compiler, CREF(4), state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:575
  goto_sets_ = Kmake_goto_tableVgrammar_compilerI(CREF(0), item_set_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:576
  result_ = &KPempty_listVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T4 = CALL1(&Kforward_iteration_protocolVKd, goto_sets_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T5 = T4;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T6 = MV_GET_ELT(1);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T7 = MV_GET_ELT(2);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T8 = MV_GET_ELT(3);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T9 = MV_GET_ELT(4);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T10 = MV_GET_ELT(5);
;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  T11T = T5;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
    T11 = T11T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
    T12 = CALL3(T8, goto_sets_, T11, T6);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
    if (T12 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
      T13 = CALL2(T10, goto_sets_, T11);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
      sym_ = CALL2(T9, goto_sets_, T11);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:578
      goto_state_ = CALL3(CREF(3), CREF(1), CREF(2), T13);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:579
      CALL4(&Kadd_to_goto_tableVgrammar_compiler, CREF(4), state_, sym_, goto_state_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:580
      T20 = result_;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:580
      T21 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:580
      SLOT_VALUE_SETTER(goto_state_, T21, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:580
      SLOT_VALUE_SETTER(T20, T21, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:580
      result_ = T21;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
      T16 = CALL2(T7, goto_sets_, T11);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
      T11T = T16;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:577
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:582
  T19 = result_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:582
  T17 = T19;
  MV_SET_ELT(0, T19);
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:570
  return(T17);
}

D KLitem_set_tableGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_element_type_, D Uunique_initial_entries_, D Uunique_grow_size_function_, D Uunique_weakQ_) {
  D T7;
  D Uunique_element_typeF8;
  D Uunique_initial_entriesF9;
  D Uunique_grow_size_functionF10;
  D Uunique_weakQF11;
  D T12_0;
  D T13;
  DWORD T14;
  D T15;
  D T16;
  D T17_0;
  D T18;
  D T19;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:90
  T7 = primitive_object_allocate_filled(6,&KLitem_set_tableGVgrammar_compilerW,5,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_element_type_, &KLtypeGVKd);
  Uunique_element_typeF8 = Uunique_element_type_;
  SLOT_VALUE_SETTER(Uunique_element_typeF8, T7, 0);
  T13 = SLOT_VALUE_INITD(&Ktable_vectorVKeHLtableG, 0);
  T14 = primitive_cast_integer_as_raw(T13);
  T15 = primitive_machine_word_logbitQ(4,T14);
  if (T15 != &KPfalseVKi) {
    T16 = SLOT_VALUE_INITD(&Ktable_vectorVKeHLtableG, 1);
    T19 = T16;
  } else {
    T17_0 = Kinstall_and_return_make_method_init_dataVKiI(&Ktable_vectorVKeHLtableG);
    T18 = T17_0;
    T19 = T18;
  }
  SLOT_VALUE_SETTER(T19, T7, 1);
  primitive_type_check(Uunique_initial_entries_, &KLintegerGVKd);
  Uunique_initial_entriesF9 = Uunique_initial_entries_;
  SLOT_VALUE_SETTER(Uunique_initial_entriesF9, T7, 2);
  primitive_type_check(Uunique_grow_size_function_, &KLfunctionGVKd);
  Uunique_grow_size_functionF10 = Uunique_grow_size_function_;
  SLOT_VALUE_SETTER(Uunique_grow_size_functionF10, T7, 3);
  primitive_type_check(Uunique_weakQ_, &K608);
  Uunique_weakQF11 = Uunique_weakQ_;
  SLOT_VALUE_SETTER(Uunique_weakQF11, T7, 4);
  MEP_APPLY2(&KinitializeVKdMM29, &K609, T7, init_args_);
  T12_0 = T7;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:90
  MV_SET_COUNT(1);
  return(T12_0);
}

static D KloopF605I (D seen_states_, D f_, D states_) {
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  T11 = primitive_idQ(states_,&KPempty_listVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  if (T11 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
    T9 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T10 = T9;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
    T12 = SLOT_VALUE_INITD(states_, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
    T13 = KmemberQVKdMM5I(T12, seen_states_, &KPempty_vectorVKi, &KPfalseVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
    if (T13 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      T14 = SLOT_VALUE_INITD(states_, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      T4 = CALL3(&KloopF605, seen_states_, f_, T14);
      T8 = T4;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      KaddXVKdMM14I(seen_states_, T12);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      T5 = CALL1(f_, T12);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      T15 = SLOT_VALUE_INITD(states_, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      T6 = CALL2(&KconcatenateVKd, T5, T15);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
      T7 = CALL3(&KloopF605, seen_states_, f_, T6);
      T8 = T7;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
    T10 = T8;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:584
  return(T10);
}

D Kstate_item_setVgrammar_compilerI (D gv_, D state_) {
  D T2;
  D T3;
  D T4;
  DWORD T5;
  DWORD T6;
  D T7;
  D T8;
  D T9_0;
  D T10_0;
  D T11_0;
  D T12_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:218
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  T2 = SLOT_VALUE_INITD(gv_, 6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  T3 = SLOT_VALUE_INITD(T2, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  T4 = SLOT_VALUE_INITD(T3, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  T5 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  T6 = primitive_cast_integer_as_raw(T4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  T7 = primitive_machine_word_unsigned_less_thanQ(T5,T6);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  if (T7 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
    T8 = REPEATED_D_SLOT_VALUE_TAGGED(T3, 2, T5);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
    T9_0 = T8;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
    T12_0 = T9_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T9_0);
      primitive_type_check(T12_0, &KLlistGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T11_0 = T12_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
    T10_0 = Kelement_range_errorVKeI(T2, state_);
    T11_0 = T10_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:220
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:218
  MV_SET_COUNT(1);
  return(T11_0);
}

D Kmake_goto_tableVgrammar_compilerI (D reductions_, D item_set_) {
  D T3T, T3;
  D itemF4;
  D next_term_;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12T, T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21;
  D T22T, T22;
  D T23;
  D T24;
  D start_item_;
  D T26;
  D T27;
  D T28;
  D T29;
  D T30;
  D newstates_;
  D T32_0;
  D T33;
  D T34;
  D T35;
  D T36;
  D T37;
  D T38;
  D T39;
  D T40_0;
  D T41;
  D T42;
  D T43_0;
  D T44_0;
  D T45;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:867
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:872
  T32_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:872
  newstates_ = T32_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
  T3T = item_set_;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
    T3 = T3T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
    T33 = primitive_idQ(T3,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
    if (T33 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      T34 = SLOT_VALUE_INITD(T3, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      primitive_type_check(T34, &KLitemGVgrammar_compiler);
      itemF4 = T34;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:881
      T35 = primitive_instanceQ(itemF4,&KLnon_empty_itemGVgrammar_compiler);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:881
      if (T35 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:882
        next_term_ = CALL1(&Kitem_first_termVgrammar_compiler, itemF4);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:883
        CALL3(&Kadd_gotoF623, newstates_, next_term_, itemF4);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
        T37 = primitive_instanceQ(itemF4,&KLnon_empty_itemGVgrammar_compiler);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
        if (T37 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
          T36 = CALL1(&Kitem_first_termVgrammar_compiler, itemF4);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
          T38 = primitive_instanceQ(T36,&KLnon_terminalGVgrammar_compiler);
          T39 = T38;
        } else {
          T39 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
        if (T39 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T40_0 = KgethashVKiI(reductions_, next_term_, &KPempty_listVKi, &KPtrueVKi);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T41 = T40_0;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T6 = CALL1(&Kforward_iteration_protocolVKd, T41);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T7 = T6;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T8 = MV_GET_ELT(1);
;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T9 = MV_GET_ELT(2);
;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T10 = MV_GET_ELT(3);
;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T11 = MV_GET_ELT(5);
;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
          T12T = T7;
        L1: ;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
            T12 = T12T;
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
            T13 = CALL3(T10, T41, T12, T8);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
            if (T13 == &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
              T14 = CALL2(T11, T41, T12);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T15 = CALL1(&Knont_rulesVgrammar_compiler, T14);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T16 = CALL1(&Kforward_iteration_protocolVKd, T15);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T17 = T16;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T18 = MV_GET_ELT(1);
;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T19 = MV_GET_ELT(2);
;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T20 = MV_GET_ELT(3);
;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T21 = MV_GET_ELT(5);
;
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              T22T = T17;
            L2: ;
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                T22 = T22T;
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                T23 = CALL3(T20, T15, T22, T18);
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                if (T23 == &KPfalseVKi) {
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                  T24 = CALL2(T21, T15, T22);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:887
                  start_item_ = CALL1(&Krule_itemVgrammar_compiler, T24);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:888
                  CONGRUENT_CALL_PROLOG(&KemptyQVKd, 1);
                  T26 = CONGRUENT_CALL1(start_item_);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:888
                  if (T26 == &KPfalseVKi) {
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:889
                    T27 = CALL1(&Kitem_first_termVgrammar_compiler, start_item_);
                    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:889
                    CALL3(&Kadd_gotoF623, newstates_, T27, start_item_);
                  }
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:888
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                  T28 = CALL2(T19, T15, T22);
                  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                  T22T = T28;
                  goto L2;
                }
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
                // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:886
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
              T29 = CALL2(T9, T41, T12);
              // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
              T12T = T29;
              goto L1;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:885
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:884
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:881
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      T42 = SLOT_VALUE_INITD(T3, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      T43_0 = T42;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      T44_0 = T43_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T43_0);
        primitive_type_check(T44_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      T45 = T44_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
      T3T = T45;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:880
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:896
  T30 = newstates_;
  MV_SET_ELT(0, newstates_);
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:867
  return(T30);
}

D Kadd_to_goto_tableVgrammar_compilerI (D gv_, D state_, D term_, D newstate_) {
  D T4;
  D T5;
  D shiftF6;
  DWORD T7;
  DWORD T8;
  DWORD mx_;
  D T10;
  DWORD T11;
  D T12;
  D T13;
  DWORD T14;
  DWORD T15;
  DWORD T16;
  DWORD T17;
  D T18;
  DWORD T19;
  DWORD T20;
  DWORD T21;
  DWORD T22;
  DWORD T23;
  D T24;
  DWORD T25;
  DWORD T26;
  DWORD T27;
  D T28;
  D T29;
  D T30;
  _KLsimple_object_vectorGVKd_4 T31 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T32;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:682
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T5 = SLOT_VALUE_INITD(gv_, 9);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  shiftF6 = (D) 57;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T7 = primitive_cast_integer_as_raw(state_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T8 = primitive_machine_word_logxor(T7,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  mx_ = T8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T10 = shiftF6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T11 = primitive_cast_integer_as_raw(T10);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T12 = primitive_machine_word_equalQ(T11,129);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  if (T12 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    shiftF6 = (D) 65;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    T13 = shiftF6;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    T14 = mx_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    T15 = primitive_cast_integer_as_raw(T13);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    T16 = primitive_machine_word_shift_right(T15,2);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    T17 = primitive_machine_word_shift_left_signal_overflow(T14,T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    mx_ = T17;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T18 = shiftF6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T19 = mx_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T20 = primitive_cast_integer_as_raw(T18);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T21 = primitive_machine_word_shift_right(T20,2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T22 = primitive_machine_word_shift_left_signal_overflow(T19,T21);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T23 = primitive_machine_word_logior(T22,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T24 = SLOT_VALUE_INITD(term_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T25 = primitive_cast_integer_as_raw(T24);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T26 = primitive_machine_word_logxor(T25,1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T27 = primitive_machine_word_add_signal_overflow(T23,T26);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T28 = primitive_cast_raw_as_integer(T27);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T29 = SLOT_VALUE_INITD(T5, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T30 = primitive_instanceQ(newstate_,T29);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  if (T30 == &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    T31.vector_element_[0] = &KJvalue_;
    T31.vector_element_[1] = newstate_;
    T31.vector_element_[2] = &KJtype_;
    T31.vector_element_[3] = T29;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
    T32 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T31);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
    CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
    CONGRUENT_CALL2(T32, &KPempty_vectorVKi);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  KputhashVKiI(newstate_, T5, T28);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:686
  T4 = newstate_;
  MV_SET_ELT(0, newstate_);
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:682
  return(T4);
}

static D Kadd_gotoF623I (D newstates_, D sym_, D item_) {
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9_0;
  D old_;
  D T11;
  D T12;
  D T13;
  _KLsimple_object_vectorGVKd_4 T14 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T15;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:873
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:874
  T8 = SLOT_VALUE_INITD(item_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:875
  T9_0 = KgethashVKiI(newstates_, sym_, &KPempty_listVKi, &KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:875
  old_ = T9_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:876
  T4 = CALL2(&KmemberQVKd, T8, old_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:876
  if (T4 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:876
    T6 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T7 = T6;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    T11 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    SLOT_VALUE_SETTER(T8, T11, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    SLOT_VALUE_SETTER(old_, T11, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    T12 = SLOT_VALUE_INITD(newstates_, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    T13 = primitive_instanceQ(T11,T12);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    if (T13 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
      T14.vector_element_[0] = &KJvalue_;
      T14.vector_element_[1] = T11;
      T14.vector_element_[2] = &KJtype_;
      T14.vector_element_[3] = T12;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
      CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
      T15 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T14);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
      CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
      CONGRUENT_CALL2(T15, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    KputhashVKiI(T11, newstates_, sym_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:877
    T5 = T11;
    MV_SET_ELT(0, T11);
    MV_SET_COUNT(1);
    T7 = T5;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:876
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:873
  return(T7);
}

D Kmake_canonicalVgrammar_compilerI (D item_set_) {
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:899
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
  T5 = primitive_idQ(item_set_,&KPempty_listVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
  if (T5 != &KPfalseVKi) {
    T2 = T5;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
    T6 = SLOT_VALUE_INITD(item_set_, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
    T7 = primitive_idQ(T6,&KPempty_listVKi);
    T2 = T7;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
  if (T2 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:901
    T3 = item_set_;
    MV_SET_ELT(0, item_set_);
    MV_SET_COUNT(1);
    T4 = T3;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:903
    T8 = KsortVKdMM0I(item_set_, &KPempty_vectorVKi, &Kanonymous_of_make_canonicalF631, &KPtrueVKi);
    T4 = T8;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:900
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:899
  return(T4);
}

static D Kanonymous_of_make_canonicalF631I (D i_, D j_) {
  D T2;
  D T3;
  DWORD T4;
  DWORD T5;
  D T6;
  D T7_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:903
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:904
  T2 = SLOT_VALUE_INITD(i_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:904
  T3 = SLOT_VALUE_INITD(j_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:904
  T4 = primitive_cast_integer_as_raw(T2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:904
  T5 = primitive_cast_integer_as_raw(T3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:904
  T6 = primitive_machine_word_less_thanQ(T4,T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:904
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:903
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kmake_deriv_rule_setVgrammar_compilerI (D gv_) {
  DWORD T2T, T2;
  D rule_;
  D nt_;
  D T5;
  D T6_0;
  D rule_set_;
  D T8_0;
  D T9;
  D T10;
  DWORD T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D dr_;
  D T21_0;
  _KLsimple_object_vectorGVKd_4 T22 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T23_0;
  D T24;
  D T25;
  D T26;
  D T27;
  _KLsimple_object_vectorGVKd_4 T28 = {&KLsimple_object_vectorGVKdW, (D) 17};
  D T29;
  DWORD T30;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:476
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:478
  T8_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:478
  rule_set_ = T8_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
  T9 = SLOT_VALUE_INITD(gv_, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
  T10 = SLOT_VALUE_INITD(T9, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
  T11 = primitive_cast_integer_as_raw(T10);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
  T2T = 1;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
    T2 = T2T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
    T12 = primitive_machine_word_equalQ(T2,T11);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
    if (T12 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
      T13 = REPEATED_D_SLOT_VALUE_TAGGED(T9, 1, T2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
      primitive_type_check(T13, &KLruleGVgrammar_compiler);
      rule_ = T13;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:480
      T14 = SLOT_VALUE(rule_, 3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
      T16 = primitive_instanceQ(T14,&KLnon_empty_itemGVgrammar_compiler);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
      if (T16 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
        T15 = CALL1(&Kitem_first_termVgrammar_compiler, T14);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
        T17 = primitive_instanceQ(T15,&KLnon_terminalGVgrammar_compiler);
        T18 = T17;
      } else {
        T18 = &KPfalseVKi;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
      if (T18 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:482
        nt_ = CALL1(&Kitem_first_termVgrammar_compiler, T14);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:484
        T19 = SLOT_VALUE_INITD(rule_, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:485
        T5 = CALL1(&Kitem_next_first_setVgrammar_compiler, T14);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:483
        T22.vector_element_[0] = &KJto_;
        T22.vector_element_[1] = T19;
        T22.vector_element_[2] = IKJterminals_;
        T22.vector_element_[3] = T5;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:483
        T21_0 = KLderiv_ruleGZ32ZconstructorVgrammar_compilerMM0I(&KLderiv_ruleGVgrammar_compiler, &T22, T19, T5);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:483
        dr_ = T21_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        T23_0 = KgethashVKiI(rule_set_, nt_, &KPempty_listVKi, &KPtrueVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        T24 = T23_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        T25 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        SLOT_VALUE_SETTER(dr_, T25, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        SLOT_VALUE_SETTER(T24, T25, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        T26 = SLOT_VALUE_INITD(rule_set_, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        T27 = primitive_instanceQ(T25,T26);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        if (T27 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
          T28.vector_element_[0] = &KJvalue_;
          T28.vector_element_[1] = T25;
          T28.vector_element_[2] = &KJtype_;
          T28.vector_element_[3] = T26;
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
          CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
          T29 = CONGRUENT_CALL2(&KLtype_errorGVKd, &T28);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
          CONGRUENT_CALL_PROLOG(&KerrorVKd, 2);
          CONGRUENT_CALL2(T29, &KPempty_vectorVKi);
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:486
        KputhashVKiI(T25, rule_set_, nt_);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:481
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
      T30 = primitive_machine_word_add_signal_overflow(T2,4);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
      T2T = T30;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:479
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:489
  T6_0 = rule_set_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:476
  MV_SET_COUNT(1);
  return(T6_0);
}

D Kmake_initial_item_listVgrammar_compilerI (D gv_) {
  D T1_0;
  D T2;
  D T3_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:525
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:531
  T2 = SLOT_VALUE_INITD(gv_, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:527
  T3_0 = Kmap_asVKdMM0I(&KLlistGVKd, &Kanonymous_of_make_initial_item_listF668, T2, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:525
  T1_0 = T3_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T3_0);
    primitive_type_check(T1_0, &KLlistGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:525
  MV_SET_COUNT(1);
  return(T1_0);
}

D Kadd_derivVgrammar_compilerI (D item_) {
  D data_;
  D T3;
  D T4_0;
  D T5;
  D T6;
  D T7;
  D T8_0;
  D T9_0;
  D T10_0;
  D T11_0;
  D T12;
  D T13;
  D T14;
  D T15;
  _KLsimple_object_vectorGVKd_1 T16 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T17;
  D T18;
  D T19;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:534
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:535
  T12 = SLOT_VALUE_INITD(item_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:536
  T13 = SLOT_VALUE_INITD(item_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:537
  T14 = SLOT_VALUE_INITD(item_, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:538
  T15 = SLOT_VALUE_INITD(T12, 4);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:539
  data_ = KassocVgrammar_compilerI(T13, T15);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:540
  if (data_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:542
    T5 = CALL1(&KtailVKd, data_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:542
    T6 = CALL2(&KmemberQVKd, T14, T5);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:540
    if (T6 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:545
      T9_0 = &KPfalseVKi;
      T10_0 = T9_0;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:543
      T7 = CALL1(&KtailVKd, data_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:543
      T19 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:543
      SLOT_VALUE_SETTER(T14, T19, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:543
      SLOT_VALUE_SETTER(T7, T19, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:543
      CALL2(&Ktail_setterVKd, T19, data_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:543
      T8_0 = T19;
      T10_0 = T8_0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:540
    T11_0 = T10_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    T16.vector_element_[0] = T14;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    T3 = KlistVKdI(&T16);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    T17 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    SLOT_VALUE_SETTER(T13, T17, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    SLOT_VALUE_SETTER(T3, T17, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    T18 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    SLOT_VALUE_SETTER(T17, T18, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    SLOT_VALUE_SETTER(T15, T18, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    SLOT_VALUE_SETTER(T18, T12, 4);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:541
    T4_0 = T18;
    T11_0 = T4_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:540
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:534
  MV_SET_COUNT(1);
  return(T11_0);
}

D Kapply_rulesVgrammar_compilerI (D rules_, D item_) {
  D T3;
  D T4_0;
  D T5;
  D T6;
  D T7_0;
  D T8_0;
  D result_T, result_;
  D T10T, T10;
  D T11;
  D T12;
  D T13_0;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18_0;
  D T19_0;
  D T20;
  D T21_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:495
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:497
  T5 = SLOT_VALUE_INITD(item_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:498
  T6 = SLOT_VALUE_INITD(item_, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:499
  if (T6 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
    result_T = &KPempty_listVKi;
    T10T = rules_;
  L0: ;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
      result_ = result_T;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
      T10 = T10T;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
      T15 = primitive_idQ(T10,&KPempty_listVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
      if (T15 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T16 = SLOT_VALUE_INITD(T10, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T11 = CALL3(&Kanonymous_of_apply_rulesF645, T6, T5, T16);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T12 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        SLOT_VALUE_SETTER(T11, T12, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        SLOT_VALUE_SETTER(result_, T12, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T17 = SLOT_VALUE_INITD(T10, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T18_0 = T17;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T19_0 = T18_0;
        {
          MV_CHECK_TYPE_PROLOGUE(T18_0);
          primitive_type_check(T19_0, &KLlistGVKd);
          MV_CHECK_TYPE_EPILOGUE();
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        T20 = T19_0;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
        result_T = T12;
        T10T = T20;
        goto L0;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
      T13_0 = KreverseXVKdMM2I(result_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
    T14 = T13_0;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
    T8_0 = T14;
    T4_0 = T8_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:500
    T3 = MAKE_CLOSURE_INITD(&Kanonymous_of_apply_rulesF648, 1, T5);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:500
    T7_0 = KreduceVKdMM1I(T3, &KPempty_listVKi, rules_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:500
    T21_0 = T7_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T7_0);
      primitive_type_check(T21_0, &KLlistGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T4_0 = T21_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:499
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:495
  MV_SET_COUNT(1);
  return(T4_0);
}

static D Kanonymous_of_apply_rulesF648I (D so_far_, D rule_) {
  D T2;
  D T3;
  D T4;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:500
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:501
  T2 = MAKE_CLOSURE_INITD(&Kanonymous_of_apply_rulesF651, 2, CREF(0), rule_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:509
  T3 = SLOT_VALUE_INITD(rule_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:501
  T4 = KreduceVKdMM1I(T2, so_far_, T3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:500
  return(T4);
}

static D Kanonymous_of_apply_rulesF645I (D implicit_argumentF7, D implicit_argumentF6, D rule_) {
  D T3;
  D T4_0;
  _KLsimple_object_vectorGVKd_6 T5 = {&KLsimple_object_vectorGVKdW, (D) 25};

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:516
  T3 = SLOT_VALUE_INITD(rule_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:515
  T5.vector_element_[0] = IKJinitial_;
  T5.vector_element_[1] = T3;
  T5.vector_element_[2] = IKJresult_;
  T5.vector_element_[3] = implicit_argumentF6;
  T5.vector_element_[4] = IKJterminal_;
  T5.vector_element_[5] = implicit_argumentF7;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:515
  T4_0 = KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0I(&KLderiv_itemGVgrammar_compiler, &T5, T3, implicit_argumentF6, implicit_argumentF7);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:514
  MV_SET_COUNT(1);
  return(T4_0);
}

static D Kanonymous_of_apply_rulesF651I (D so_far_, D term_) {
  D T2;
  D T3;
  D T4_0;
  _KLsimple_object_vectorGVKd_6 T5 = {&KLsimple_object_vectorGVKdW, (D) 25};
  D T6;
  D T7_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:501
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:504
  T2 = SLOT_VALUE_INITD(CREF(1), 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:503
  T5.vector_element_[0] = IKJinitial_;
  T5.vector_element_[1] = T2;
  T5.vector_element_[2] = IKJresult_;
  T5.vector_element_[3] = CREF(0);
  T5.vector_element_[4] = IKJterminal_;
  T5.vector_element_[5] = term_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:503
  T4_0 = KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0I(&KLderiv_itemGVgrammar_compiler, &T5, T2, CREF(0), term_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:503
  T3 = T4_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:502
  T6 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:502
  SLOT_VALUE_SETTER(T3, T6, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:502
  SLOT_VALUE_SETTER(so_far_, T6, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:502
  T7_0 = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:501
  MV_SET_COUNT(1);
  return(T7_0);
}

D KassocVgrammar_compilerI (D item_, D list_) {
  D T2_0;
  D T3;
  D T4_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:21
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  T3 = KloopF662I(&KheadVKd, &KEEVKd, item_, list_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  T4_0 = T3;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:21
  T2_0 = T4_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T4_0);
    primitive_type_check(T2_0, &K660);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:21
  MV_SET_COUNT(1);
  return(T2_0);
}

static D KloopF662I (D key_, D test_, D obj_, D list_) {
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  T12 = primitive_idQ(list_,&KPempty_listVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  if (T12 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    T4 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T11 = T4;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    primitive_type_check(test_, &KLfunctionGVKd);
    T5 = test_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    primitive_type_check(key_, &KLfunctionGVKd);
    T6 = key_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    T13 = SLOT_VALUE_INITD(list_, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    T7 = CALL1(T6, T13);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    T8 = CALL2(T5, obj_, T7);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    if (T8 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
      T14 = SLOT_VALUE_INITD(list_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
      T15 = T14;
      MV_SET_ELT(0, T14);
      MV_SET_COUNT(1);
      T10 = T15;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
      T16 = SLOT_VALUE_INITD(list_, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
      T9 = CALL4(&KloopF662, key_, test_, obj_, T16);
      T10 = T9;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
    T11 = T10;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:22
  return(T11);
}

static D Kanonymous_of_make_initial_item_listF668I (D nt_) {
  D T2_0;
  _KLsimple_object_vectorGVKd_6 T3 = {&KLsimple_object_vectorGVKdW, (D) 25};

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:528
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:529
  T3.vector_element_[0] = IKJinitial_;
  T3.vector_element_[1] = nt_;
  T3.vector_element_[2] = IKJresult_;
  T3.vector_element_[3] = nt_;
  T3.vector_element_[4] = IKJterminal_;
  T3.vector_element_[5] = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:529
  T2_0 = KLderiv_itemGZ32ZconstructorVgrammar_compilerMM0I(&KLderiv_itemGVgrammar_compiler, &T3, nt_, nt_, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:528
  MV_SET_COUNT(1);
  return(T2_0);
}

D Kcompute_first_setVgrammar_compilerI (D gv_, D nt_, D visited_) {
  D T3;
  D T4T, T4;
  D rule_;
  D T6_0;
  D set_;
  D T8;
  D T9;
  D completeQ_;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17_0;
  D T18_0;
  D T19;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:405
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:409
  set_ = MAKE_D_CELL(&KPempty_listVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:410
  completeQ_ = MAKE_D_CELL(&KPtrueVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:411
  T3 = MAKE_CLOSURE(&Kdo_itemF673, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:411
  INIT_CLOSURE(T3, 3, completeQ_, set_, T3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
  T12 = SLOT_VALUE_INITD(nt_, 3);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
  T4T = T12;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
    T4 = T4T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
    T13 = primitive_idQ(T4,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
    if (T13 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      T14 = SLOT_VALUE_INITD(T4, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      primitive_type_check(T14, &KLruleGVgrammar_compiler);
      rule_ = T14;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:431
      T15 = SLOT_VALUE(rule_, 3);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:431
      get_teb()->function = T3;
      Kdo_itemF673I(visited_, gv_, T15);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      T16 = SLOT_VALUE_INITD(T4, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      T17_0 = T16;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      T18_0 = T17_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T17_0);
        primitive_type_check(T18_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      T19 = T18_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
      T4T = T19;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:430
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:433
  T11 = GET_D_CELL_VAL(completeQ_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:433
  if (T11 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:433
    T9 = GET_D_CELL_VAL(set_);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:433
    SLOT_VALUE_SETTER(T9, nt_, 2);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:433
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:434
  T8 = GET_D_CELL_VAL(set_);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:434
  T6_0 = T8;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:405
  MV_SET_COUNT(1);
  return(T6_0);
}

static D Kdo_itemF673I (D visited_, D gv_, D item_) {
  D T3;
  D T4;
  D t_;
  D T6;
  D initial_first_set_;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14T, T14;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21;
  D T22;
  D T23;
  D T24;
  D T25;
  D T26;
  D T27;
  D T28;
  D T29;
  D T30;
  D T31;
  D T32;
  D T33;
  D T34;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:411
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:412
  T28 = primitive_instanceQ(item_,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:412
  if (T28 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:414
    T30 = KmemberQVKdMM3I(item_, visited_, &KPempty_vectorVKi, &KEEVKd);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:412
    if (T30 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:427
      SET_D_CELL_VAL(CREF(0), &KPfalseVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:427
      T23 = &KPfalseVKi;
      MV_SET_ELT(0, &KPfalseVKi);
      MV_SET_COUNT(1);
      T24 = T23;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:415
      T4 = CALL1(&Kitem_first_termVgrammar_compiler, item_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:415
      primitive_type_check(T4, &KLtermGVgrammar_compiler);
      t_ = T4;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:417
      T31 = SLOT_VALUE_INITD(t_, 2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:417
      if (T31 != &KPfalseVKi) {
        initial_first_set_ = T31;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:418
        T32 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:418
        SLOT_VALUE_SETTER(item_, T32, 0);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:418
        SLOT_VALUE_SETTER(visited_, T32, 1);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:418
        T6 = CALL3(&Kcompute_first_setVgrammar_compiler, gv_, t_, T32);
        initial_first_set_ = T6;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:417
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:419
      T33 = SLOT_VALUE_INITD(t_, 2);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:419
      if (T33 == &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:419
        SET_D_CELL_VAL(CREF(0), &KPfalseVKi);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:419
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T8 = CALL1(&Kforward_iteration_protocolVKd, initial_first_set_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T9 = T8;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T10 = MV_GET_ELT(1);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T11 = MV_GET_ELT(2);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T12 = MV_GET_ELT(3);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T13 = MV_GET_ELT(5);
;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      T14T = T9;
    L0: ;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
        T14 = T14T;
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
        T15 = CALL3(T12, initial_first_set_, T14, T10);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
        if (T15 == &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
          T16 = CALL2(T13, initial_first_set_, T14);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:421
          if (T16 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:421
            T26 = GET_D_CELL_VAL(CREF(1));
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:421
            T34 = Kadd_newVKdMM3I(T26, T16, &KPempty_vectorVKi, &KEEVKd);
            // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:421
            SET_D_CELL_VAL(CREF(1), T34);
          }
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:421
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
          T17 = CALL2(T11, initial_first_set_, T14);
          // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
          T14T = T17;
          goto L0;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:420
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:423
      T18 = CALL2(&KmemberQVKd, &KPfalseVKi, initial_first_set_);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:423
      if (T18 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:424
        T19 = CALL1(&Kitem_next_itemVgrammar_compiler, item_);
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:424
        T20 = CALL3(CREF(2), visited_, gv_, T19);
        T22 = T20;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:423
        T21 = &KPfalseVKi;
        MV_SET_ELT(0, &KPfalseVKi);
        MV_SET_COUNT(1);
        T22 = T21;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:423
      T24 = T22;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:412
    T25 = T24;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:413
    T27 = GET_D_CELL_VAL(CREF(1));
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:413
    T29 = Kadd_newVKdMM3I(T27, &KPfalseVKi, &KPempty_vectorVKi, &KEEVKd);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:413
    SET_D_CELL_VAL(CREF(1), T29);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:413
    T3 = T29;
    MV_SET_ELT(0, T29);
    MV_SET_COUNT(1);
    T25 = T3;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:412
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:411
  return(T25);
}

D KLempty_itemGZ32ZconstructorVgrammar_compilerMM0I (D class_, D init_args_, D Uunique_item_index_, D Uunique_item_rule_) {
  D T5;
  D Uunique_item_indexF6;
  D T7;
  D Uunique_item_ruleF8;
  D T9;
  D Uunique_item_indexF10;
  D Uunique_item_ruleF11;
  D T12_0;
  D T13;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T15;
  D T16;
  _KLsimple_object_vectorGVKd_1 T17 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T18;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  T13 = primitive_idQ(Uunique_item_index_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  if (T13 != &KPfalseVKi) {
    T14.vector_element_[0] = IKJindex_;
    T15 = KerrorVKdMM1I(&K29, &T14);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
    T5 = T15;
    Uunique_item_indexF6 = T5;
  } else {
    Uunique_item_indexF6 = Uunique_item_index_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  T16 = primitive_idQ(Uunique_item_rule_,&KPunboundVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  if (T16 != &KPfalseVKi) {
    T17.vector_element_[0] = IKJrule_;
    T18 = KerrorVKdMM1I(&K29, &T17);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
    T7 = T18;
    Uunique_item_ruleF8 = T7;
  } else {
    Uunique_item_ruleF8 = Uunique_item_rule_;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  T9 = primitive_object_allocate_filled(4,&KLempty_itemGVgrammar_compilerW,3,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_item_indexF6, &KLindexGVgrammar_compiler);
  Uunique_item_indexF10 = Uunique_item_indexF6;
  SLOT_VALUE_SETTER(Uunique_item_indexF10, T9, 0);
  primitive_type_check(Uunique_item_ruleF8, &KLruleGVgrammar_compiler);
  Uunique_item_ruleF11 = Uunique_item_ruleF8;
  SLOT_VALUE_SETTER(Uunique_item_ruleF11, T9, 1);
  SLOT_VALUE_SETTER(&KPempty_listVKi, T9, 2);
  T12_0 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:105
  MV_SET_COUNT(1);
  return(T12_0);
}

static D K744I () {
  D T0_0;
  D T1;
  D T2_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:165
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:165
  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:165
  T1 = T2_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:165
  T0_0 = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:165
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K752I () {
  D T0_0;
  D T1;
  D T2_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:163
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:163
  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:163
  T1 = T2_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:163
  T0_0 = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:163
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K759I () {
  D T0_0;
  D T1;
  D T2_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:161
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:161
  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:161
  T1 = T2_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:161
  T0_0 = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:161
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K766I () {
  D T0_0;
  D T1;
  D T2_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:159
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:159
  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:159
  T1 = T2_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:159
  T0_0 = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:159
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K773I () {
  D T0_0;
  D T1;
  D T2_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:157
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:157
  T2_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:157
  T1 = T2_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:157
  T0_0 = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:157
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K808I () {
  D T0_0;
  D T1;
  D T2_0;

  T2_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  T1 = T2_0;
  T0_0 = T1;
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K807I () {
  D T0_0;
  D T1;
  D T2_0;

  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  T1 = T2_0;
  T0_0 = T1;
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K806I () {
  D T0_0;
  D T1;
  D T2_0;

  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  T1 = T2_0;
  T0_0 = T1;
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K805I () {
  D T0_0;
  D T1;
  D T2_0;

  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  T1 = T2_0;
  T0_0 = T1;
  MV_SET_COUNT(1);
  return(T0_0);
}

static D K804I () {
  D T0_0;
  D T1;
  D T2_0;

  T2_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (D) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
  T1 = T2_0;
  T0_0 = T1;
  MV_SET_COUNT(1);
  return(T0_0);
}

D Kitem_set_hashVgrammar_compilerI (D items_, D hash_state_) {
  D T2T, T2;
  D id_T, id_;
  D item_;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9_0;
  D T10_0;
  D T11;
  D T12;
  D T13_0;
  D T13_1;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:97
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
  T2T = items_;
  id_T = (D) 93;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
    T2 = T2T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
    id_ = id_T;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
    T6 = primitive_idQ(T2,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
    if (T6 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      T7 = SLOT_VALUE_INITD(T2, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      primitive_type_check(T7, &KLitemGVgrammar_compiler);
      item_ = T7;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      T8 = SLOT_VALUE_INITD(T2, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      T9_0 = T8;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      T10_0 = T9_0;
      {
        MV_CHECK_TYPE_PROLOGUE(T9_0);
        primitive_type_check(T10_0, &KLlistGVKd);
        MV_CHECK_TYPE_EPILOGUE();
      }
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      T11 = T10_0;
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:100
      T12 = SLOT_VALUE_INITD(item_, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:100
      T5 = Kmerge_hash_idsVKdI(id_, T12, &KPempty_vectorVKi, &KPtrueVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
      T2T = T11;
      id_T = T5;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:101
    T13_0 = id_;
    T13_1 = hash_state_;
    // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:99
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:97
  MV_SET_ELT(1, T13_1);
  MV_SET_COUNT(2);
  return(T13_0);
}

D KinitializeVKdMgrammar_compilerM0I (D t_, D keys_) {
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_1 T5 = {&KLsimple_object_vectorGVKdW, (D) 5};

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:54
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:55
  T5.vector_element_[0] = t_;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:55
  T3 = KlistVKdI(&T5);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:55
  SLOT_VALUE_SETTER(T3, t_, 2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:55
  T4 = T3;
  MV_SET_ELT(0, T3);
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:54
  return(T4);
}

D KemptyQVKdMgrammar_compilerM0I (D x_) {
  D T2;
  D T3;
  D T4_0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:107
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:108
  T2 = primitive_instanceQ(x_,&KLnon_empty_itemGVgrammar_compiler);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:108
  T3 = primitive_not(T2);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:108
  T4_0 = T3;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:107
  MV_SET_COUNT(1);
  return(T4_0);
}


/* SYSTEM INIT CODE */

void _Init_grammar_compiler__X_grammar_compiler_for_system () {
  extern D KPresolve_symbolVKiI(D);
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJeoi_);
    if (T0 != &KJeoi_) {
      IKJeoi_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJindex_);
    if (T0 != &KJindex_) {
      IKJindex_ = T0;
      primitive_repeated_slot_value_setter(T0, &K701, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K700, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K570, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K569, 1, 0);
      primitive_slot_value_setter(T0, &Kitem_indexVgrammar_compilerHLitemG, 3);
      primitive_slot_value_setter(T0, &Krule_indexVgrammar_compilerHLruleG, 3);
      primitive_repeated_slot_value_setter(T0, &K227, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K226, 1, 0);
      primitive_slot_value_setter(T0, &Kterm_indexVgrammar_compilerHLtermG, 3);
      primitive_repeated_slot_value_setter(T0, &K194, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K193, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJterminal_);
    if (T0 != &KJterminal_) {
      IKJterminal_ = T0;
      primitive_slot_value_setter(T0, &Kderiv_item_terminalVgrammar_compilerHLderiv_itemG, 3);
      primitive_repeated_slot_value_setter(T0, &K358, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K357, 1, 4);
      primitive_slot_value_setter(T0, &Kgrammar_conflict_terminalVgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJaction_1_);
    if (T0 != &KJaction_1_) {
      IKJaction_1_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_conflict_action_1Vgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJrule_1_);
    if (T0 != &KJrule_1_) {
      IKJrule_1_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_conflict_rule_1Vgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 4);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJposition_1_);
    if (T0 != &KJposition_1_) {
      IKJposition_1_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_conflict_position_1Vgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 6);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJaction_2_);
    if (T0 != &KJaction_2_) {
      IKJaction_2_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_conflict_action_2Vgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 4);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 8);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJrule_2_);
    if (T0 != &KJrule_2_) {
      IKJrule_2_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_conflict_rule_2Vgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 5);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 10);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJposition_2_);
    if (T0 != &KJposition_2_) {
      IKJposition_2_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_conflict_position_2Vgrammar_compilerHLgrammar_conflictG, 3);
      primitive_repeated_slot_value_setter(T0, &K52, 1, 6);
      primitive_repeated_slot_value_setter(T0, &K51, 1, 12);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJreduce_);
    if (T0 != &KJreduce_) {
      IKJreduce_ = T0;
      primitive_slot_value_setter(T0, &K38, 1);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJshift_);
    if (T0 != &KJshift_) {
      IKJshift_ = T0;
      primitive_slot_value_setter(T0, &K37, 1);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJshiftQ_);
    if (T0 != &KJshiftQ_) {
      IKJshiftQ_ = T0;
      primitive_slot_value_setter(T0, &Kaentry_shiftQVgrammar_compilerHLaction_entryG, 3);
      primitive_repeated_slot_value_setter(T0, &K267, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K266, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJitem_);
    if (T0 != &KJitem_) {
      IKJitem_ = T0;
      primitive_slot_value_setter(T0, &Kaentry_itemVgrammar_compilerHLaction_entryG, 3);
      primitive_repeated_slot_value_setter(T0, &K267, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K266, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJrule_);
    if (T0 != &KJrule_) {
      IKJrule_ = T0;
      primitive_repeated_slot_value_setter(T0, &K701, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K700, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K570, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K569, 1, 2);
      primitive_slot_value_setter(T0, &Kitem_ruleVgrammar_compilerHLitemG, 3);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJlhs_);
    if (T0 != &KJlhs_) {
      IKJlhs_ = T0;
      primitive_slot_value_setter(T0, &Krule_lhsVgrammar_compilerHLruleG, 3);
      primitive_repeated_slot_value_setter(T0, &K227, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K226, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJuser_rule_);
    if (T0 != &KJuser_rule_) {
      IKJuser_rule_ = T0;
      primitive_slot_value_setter(T0, &Krule_user_ruleVgrammar_compilerHLruleG, 3);
      primitive_repeated_slot_value_setter(T0, &K227, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K226, 1, 4);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJfrom_key_);
    if (T0 != &KJfrom_key_) {
      IKJfrom_key_ = T0;
      primitive_slot_value_setter(T0, &Kpentry_from_keyVgrammar_compilerHLpropagation_entryG, 3);
      primitive_repeated_slot_value_setter(T0, &K302, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K301, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJgoto_key_);
    if (T0 != &KJgoto_key_) {
      IKJgoto_key_ = T0;
      primitive_slot_value_setter(T0, &Kpentry_goto_keyVgrammar_compilerHLpropagation_entryG, 3);
      primitive_repeated_slot_value_setter(T0, &K302, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K301, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJterminals_);
    if (T0 != &KJterminals_) {
      IKJterminals_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_terminalsVgrammar_compilerHLgrammarG, 3);
      primitive_repeated_slot_value_setter(T0, &K408, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K407, 1, 4);
      primitive_slot_value_setter(T0, &Kderiv_rule_terminalsVgrammar_compilerHLderiv_ruleG, 3);
      primitive_repeated_slot_value_setter(T0, &K331, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K330, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJinitial_);
    if (T0 != &KJinitial_) {
      IKJinitial_ = T0;
      primitive_slot_value_setter(T0, &Kderiv_item_initialVgrammar_compilerHLderiv_itemG, 3);
      primitive_repeated_slot_value_setter(T0, &K358, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K357, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJresult_);
    if (T0 != &KJresult_) {
      IKJresult_ = T0;
      primitive_slot_value_setter(T0, &Kderiv_item_resultVgrammar_compilerHLderiv_itemG, 3);
      primitive_repeated_slot_value_setter(T0, &K358, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K357, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJuser_rules_);
    if (T0 != &KJuser_rules_) {
      IKJuser_rules_ = T0;
      primitive_slot_value_setter(T0, &KPgrammar_user_rulesVgrammar_compilerHLgvarsG, 3);
      primitive_repeated_slot_value_setter(T0, &K718, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K717, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJuser_error_rules_);
    if (T0 != &KJuser_error_rules_) {
      IKJuser_error_rules_ = T0;
      primitive_slot_value_setter(T0, &KPgrammar_user_error_rulesVgrammar_compilerHLgvarsG, 3);
      primitive_repeated_slot_value_setter(T0, &K718, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K717, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJrules_);
    if (T0 != &KJrules_) {
      IKJrules_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_rulesVgrammar_compilerHLgrammarG, 3);
      primitive_repeated_slot_value_setter(T0, &K408, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K407, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJerror_rules_);
    if (T0 != &KJerror_rules_) {
      primitive_repeated_slot_value_setter(T0, &K813, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K812, 1, 0);
      IKJerror_rules_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_error_rulesVgrammar_compilerHLgrammarG, 3);
      primitive_repeated_slot_value_setter(T0, &K408, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K407, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJgoto_table_);
    if (T0 != &KJgoto_table_) {
      IKJgoto_table_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_goto_tableVgrammar_compilerHLgrammarG, 3);
      primitive_repeated_slot_value_setter(T0, &K408, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K407, 1, 6);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJaction_table_);
    if (T0 != &KJaction_table_) {
      IKJaction_table_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_action_tableVgrammar_compilerHLgrammarG, 3);
      primitive_repeated_slot_value_setter(T0, &K408, 1, 4);
      primitive_repeated_slot_value_setter(T0, &K407, 1, 8);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJrule_reduction_table_);
    if (T0 != &KJrule_reduction_table_) {
      IKJrule_reduction_table_ = T0;
      primitive_slot_value_setter(T0, &Kgrammar_rule_reduction_tableVgrammar_compilerHLgrammarG, 3);
      primitive_repeated_slot_value_setter(T0, &K408, 1, 5);
      primitive_repeated_slot_value_setter(T0, &K407, 1, 10);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJaccept_);
    if (T0 != &KJaccept_) {
      IKJaccept_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJerror_);
    if (T0 != &KJerror_) {
      IKJerror_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJnext_item_);
    if (T0 != &KJnext_item_) {
      IKJnext_item_ = T0;
      primitive_repeated_slot_value_setter(T0, &K570, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K569, 1, 6);
      primitive_slot_value_setter(T0, &Kitem_next_itemVgrammar_compilerHLnon_empty_itemG, 3);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJfirst_term_);
    if (T0 != &KJfirst_term_) {
      IKJfirst_term_ = T0;
      primitive_repeated_slot_value_setter(T0, &K570, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K569, 1, 4);
      primitive_slot_value_setter(T0, &Kitem_first_termVgrammar_compilerHLnon_empty_itemG, 3);
    }
  }
{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:34
  T0 = KPadd_classVKeI(&KLsealed_constructorGVgrammar_compiler);
  goto I0;
}
I0:

{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:90
  T0 = KPadd_classVKeI(&KLitem_set_tableGVgrammar_compiler);
  goto I13;
}
I13:

{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:941
  T0 = KPadd_classVKeI(&KLgrammar_conflictGVgrammar_compiler);
  goto I19;
}
I19:

  return;
}

/* USER INIT CODE */

void _Init_grammar_compiler__X_grammar_compiler_for_user () {
{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:35
  T0 = KPadd_nonsiblinged_domainVKnI(&KmakeVKd, &KmakeVKdRD_grammar_compilerRD_0);
  goto I4;
}
I4:

{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:36
  T0 = KPadd_nonsiblinged_domainVKnI(&KinitializeVKd, &KinitializeVKdRD_grammar_compilerRD_0);
  goto I6;
}
I6:

{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:54
  T0 = KPadd_a_methodVKnI(&KinitializeVKd, &KinitializeVKdMgrammar_compilerM0, &Kgrammar_compiler_libraryYdylan_userVgrammar_compiler, &KPfalseVKi, &KPfalseVKi, &KPfalseVKi);
  goto I848;
}
I848:

{
  D T0;
  D T1;
  D T2_0;
  _KLsimple_object_vectorGVKd_4 T3 = {&KLsimple_object_vectorGVKdW, (D) 17};

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:69
  T3.vector_element_[0] = &KJtoken_;
  T3.vector_element_[1] = IKJeoi_;
  T3.vector_element_[2] = IKJindex_;
  T3.vector_element_[3] = (D) 65533;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:69
  T2_0 = KLterminalGZ32ZconstructorVgrammar_compilerMM0I(&KLterminalGVgrammar_compiler, &T3, IKJeoi_, (D) 65533);
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:69
  T1 = T2_0;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:69
  Deoi_termVgrammar_compiler = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:69
  T0 = &KPfalseVKi;
  goto I7;
}
I7:

{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:92
  T0 = KPadd_a_methodVKnI(&Ktable_protocolVKd, &Ktable_protocolVKdMgrammar_compilerM0, &Kgrammar_compiler_libraryYdylan_userVgrammar_compiler, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I18;
}
I18:

{
  D T0;

  // /Users/bruce/Development/dylan/opendylan/sources/lib/grammar-compiler/grammar-compiler.dylan:107
  T0 = KPadd_a_methodVKnI(&KemptyQVKd, &KemptyQVKdMgrammar_compilerM0, &Kgrammar_compiler_libraryYdylan_userVgrammar_compiler, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I846;
}
I846:

  return;
}


/* eof */
