#include "opendylan/run-time.h"

/* Generated by Open Dylan 2014.1 for x86_64-linux */

/* Typedefs for referenced classes */

#define  define__KLsimple_object_vectorGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    dylan_value vector_element_[nrepeated+1]; \
  } _KLsimple_object_vectorGVKd_##nrepeated;
define__KLsimple_object_vectorGVKd(5);
define__KLsimple_object_vectorGVKd(1);
define__KLsimple_object_vectorGVKd(0);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(10);
define__KLsimple_object_vectorGVKd(8);

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

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

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

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

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

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value command_info_name_;
  dylan_value command_info_title_;
  dylan_value command_info_summary_;
  dylan_value command_info_documentation_;
  dylan_value command_info_contents_;
} _KLcommand_groupGYcommand_linesVenvironment_commands;

typedef struct {
  dylan_value wrapper;
} _KLobjectGVKd;

typedef struct {
  dylan_value wrapper;
} _KLunboundGVKe;

typedef struct {
  dylan_value wrapper;
} _KLbooleanGVKd;

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

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

typedef struct {
  dylan_value wrapper;
} _KLcharacterGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value context_server_;
  dylan_value context_banner_;
  dylan_value context_notification_;
  dylan_value context_project_contexts_;
} _KLenvironment_contextGVenvironment_commands;

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(6);
define__KLbyte_stringGVKd(12);
define__KLbyte_stringGVKd(17);
define__KLbyte_stringGVKd(7);
define__KLbyte_stringGVKd(13);
define__KLbyte_stringGVKd(5);
define__KLbyte_stringGVKd(8);
define__KLbyte_stringGVKd(43);
define__KLbyte_stringGVKd(19);
define__KLbyte_stringGVKd(11);

typedef struct {
  dylan_value wrapper;
} _KLstreamGYcommon_extensionsVcommon_dylan;

typedef struct {
  dylan_value wrapper;
  dylan_value server_context_;
  dylan_value server_input_stream_;
  dylan_value server_output_stream_;
  dylan_value server_incomplete_command_line_;
  dylan_value server_last_command_;
  dylan_value server_debuggerQ_;
  dylan_value server_echo_inputQ_;
  dylan_value server_profile_commandsQ_;
} _KLcommand_line_serverGYcommand_linesVenvironment_commands;

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

typedef struct {
  dylan_value wrapper;
} _KLstringGVKd;

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

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

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


/* Typedefs for defined classes */


/* Referenced object declarations */

extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
dylan_value Kas_uppercaseVKdMM1I (dylan_value);
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
dylan_value KasVKdMM8I (dylan_value, dylan_value);
extern _KLclassGVKd KLstretchy_object_vectorGVKe;
extern _KLmm_wrapperGVKi_0 KLstretchy_object_vectorGVKeW;
extern _KLsymbolGVKd KJname_;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
extern _KLincremental_generic_functionGVKe KmakeVKd;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLclassGVKd KLcommand_groupGYcommand_linesVenvironment_commands;
extern _KLmm_wrapperGVKi_0 KLcommand_groupGYcommand_linesVenvironment_commandsW;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
extern _KLclassGVKd KLsignatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesGVKiW;
extern _KLclassGVKd KLcharacterGVKd;
extern _KLmm_wrapperGVKi_0 KLcharacterGVKdW;
extern _KLclassGVKd KLenvironment_contextGVenvironment_commands;
extern _KLmm_wrapperGVKi_0 KLenvironment_contextGVenvironment_commandsW;
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLclassGVKd KLstreamGYcommon_extensionsVcommon_dylan;
extern _KLmm_wrapperGVKi_0 KLstreamGYcommon_extensionsVcommon_dylanW;
extern _KLclassGVKd KLcommand_line_serverGYcommand_linesVenvironment_commands;
extern _KLmm_wrapperGVKi_0 KLcommand_line_serverGYcommand_linesVenvironment_commandsW;
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
dylan_value Kunion_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLstringGVKd;
extern _KLmm_wrapperGVKi_0 KLstringGVKdW;
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
dylan_value Ksingleton_pointer_idQ_instanceQVKiI (dylan_value, dylan_value);
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_0 KPempty_vectorVKi;
extern dylan_value Dbasic_command_groupYcommand_linesVenvironment_commands;
extern dylan_value Dproperty_command_groupYcommand_linesVenvironment_commands;
extern dylan_value Dsystem_command_groupYcommand_linesVenvironment_commands;
extern dylan_value Dlibrary_packs_command_groupVenvironment_commands;
extern dylan_value Dproject_command_groupVenvironment_commands;
extern dylan_value Dbrowsing_command_groupVenvironment_commands;
extern dylan_value Dreports_command_groupVenvironment_commands;
extern dylan_value Dbuild_command_groupVenvironment_commands;

/* Defined object declarations */

static _KLbyte_stringGVKd_11 K1;
static _KLsymbolGVKd KJsummary_;
static _KLbyte_stringGVKd_19 K3;
static _KLsymbolGVKd KJdocumentation_;
static _KLbyte_stringGVKd_43 K5;
static _KLsymbolGVKd KJenvironment_;
static _KLsymbolGVKd KJtitle_;
static _KLsymbolGVKd KJcontents_;
extern _KLsimple_methodGVKe Kcontext_command_groupYcommand_linesVenvironment_commandsMM0;
dylan_value Kcontext_command_groupYcommand_linesVenvironment_commandsMM0I (dylan_value);
extern _KLsimple_methodGVKe Kcontext_command_prefixYcommand_linesVenvironment_commandsMM0;
dylan_value Kcontext_command_prefixYcommand_linesVenvironment_commandsMM0I (dylan_value);
static _KLsignatureAvaluesGVKi K13;
static _KLsimple_object_vectorGVKd_1 K14;
static _KLsimple_object_vectorGVKd_1 K15;
static _KLsignatureAvaluesGVKi K16;
static _KLsimple_object_vectorGVKd_1 K17;
static _KLbyte_stringGVKd_8 K18;
static _KLbyte_stringGVKd_5 K19;
static _KLbyte_stringGVKd_13 K20;
static _KLbyte_stringGVKd_7 K21;
extern _KLkeyword_methodGVKe Kmake_environment_command_line_serverVenvironment_commandsMM0;
dylan_value Kmake_environment_command_line_serverVenvironment_commandsMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
static _KLunionGVKe K24;
static _KLsymbolGVKd KJbanner_;
static _KLsymbolGVKd KJcontext_;
static _KLsymbolGVKd KJinput_stream_;
static _KLsymbolGVKd KJoutput_stream_;
static _KLsymbolGVKd KJecho_inputQ_;
static _KLsymbolGVKd KJprofile_commandsQ_;
static _KLbyte_stringGVKd_17 K31;
static _KLbyte_stringGVKd_11 K32;
static _KLbyte_stringGVKd_13 K33;
static _KLbyte_stringGVKd_12 K34;
static _KLbyte_stringGVKd_7 K35;
static _KLbyte_stringGVKd_6 K36;
static _KLsingletonGVKd K37;
static _KLkeyword_signatureAvaluesGVKi K38;
static _KLsimple_object_vectorGVKd_10 K39;
static _KLsimple_object_vectorGVKd_5 K40;
static _KLsimple_object_vectorGVKd_5 K41;
static _KLsimple_object_vectorGVKd_1 K42;

/* Indirection variables */

static dylan_value IKJsummary_ = &KJsummary_;
static dylan_value IKJdocumentation_ = &KJdocumentation_;
static dylan_value IKJenvironment_ = &KJenvironment_;
static dylan_value IKJtitle_ = &KJtitle_;
static dylan_value IKJcontents_ = &KJcontents_;
static dylan_value IKJbanner_ = &KJbanner_;
static dylan_value IKJcontext_ = &KJcontext_;
static dylan_value IKJinput_stream_ = &KJinput_stream_;
static dylan_value IKJoutput_stream_ = &KJoutput_stream_;
static dylan_value IKJecho_inputQ_ = &KJecho_inputQ_;
static dylan_value IKJprofile_commandsQ_ = &KJprofile_commandsQ_;

/* Variables */

dylan_value make_environment_command_line_serverVenvironment_commands = &Kmake_environment_command_line_serverVenvironment_commandsMM0;
dylan_value Denvironment_command_groupVenvironment_commands = &KPunboundVKi;

/* Objects */

static _KLbyte_stringGVKd_11 K1 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 45,
  "environment"
};

static _KLsymbolGVKd KJsummary_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K21
};

static _KLbyte_stringGVKd_19 K3 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 77,
  "Open Dylan commands"
};

static _KLsymbolGVKd KJdocumentation_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K20
};

static _KLbyte_stringGVKd_43 K5 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 173,
  "The set of commands provided by Open Dylan."
};

static _KLsymbolGVKd KJenvironment_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K1
};

static _KLsymbolGVKd KJtitle_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K19
};

static _KLsymbolGVKd KJcontents_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K18
};

_KLsimple_methodGVKe Kcontext_command_groupYcommand_linesVenvironment_commandsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K16,
  &Kcontext_command_groupYcommand_linesVenvironment_commandsMM0I
};

_KLsimple_methodGVKe Kcontext_command_prefixYcommand_linesVenvironment_commandsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K13,
  &Kcontext_command_prefixYcommand_linesVenvironment_commandsMM0I
};

static _KLsignatureAvaluesGVKi K13 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555461,
  &K14,
  &K15
};

static _KLsimple_object_vectorGVKd_1 K14 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLenvironment_contextGVenvironment_commands
};

static _KLsimple_object_vectorGVKd_1 K15 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLcharacterGVKd
};

static _KLsignatureAvaluesGVKi K16 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555461,
  &K14,
  &K17
};

static _KLsimple_object_vectorGVKd_1 K17 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLcommand_groupGYcommand_linesVenvironment_commands
};

static _KLbyte_stringGVKd_8 K18 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 33,
  "contents"
};

static _KLbyte_stringGVKd_5 K19 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 21,
  "title"
};

static _KLbyte_stringGVKd_13 K20 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 53,
  "documentation"
};

static _KLbyte_stringGVKd_7 K21 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 29,
  "summary"
};

_KLkeyword_methodGVKe Kmake_environment_command_line_serverVenvironment_commandsMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_6,
  &K38,
  &key_mep_6,
  &Kmake_environment_command_line_serverVenvironment_commandsMM0I,
  &K39
};

static _KLunionGVKe K24 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K37,
  &KLstringGVKd
};

static _KLsymbolGVKd KJbanner_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K36
};

static _KLsymbolGVKd KJcontext_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K35
};

static _KLsymbolGVKd KJinput_stream_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K34
};

static _KLsymbolGVKd KJoutput_stream_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K33
};

static _KLsymbolGVKd KJecho_inputQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K32
};

static _KLsymbolGVKd KJprofile_commandsQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K31
};

static _KLbyte_stringGVKd_17 K31 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 69,
  "profile-commands?"
};

static _KLbyte_stringGVKd_11 K32 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 45,
  "echo-input?"
};

static _KLbyte_stringGVKd_13 K33 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 53,
  "output-stream"
};

static _KLbyte_stringGVKd_12 K34 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 49,
  "input-stream"
};

static _KLbyte_stringGVKd_7 K35 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 29,
  "context"
};

static _KLbyte_stringGVKd_6 K36 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 25,
  "banner"
};

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

static _KLkeyword_signatureAvaluesGVKi K38 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33817601,
  &KPempty_vectorVKi,
  &K40,
  &K41,
  &K42
};

static _KLsimple_object_vectorGVKd_10 K39 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 41,
  &KJbanner_,
  &KPfalseVKi,
  &KJinput_stream_,
  &KPfalseVKi,
  &KJoutput_stream_,
  &KPfalseVKi,
  &KJecho_inputQ_,
  &KPfalseVKi,
  &KJprofile_commandsQ_,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_5 K40 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 21,
  &KJbanner_,
  &KJinput_stream_,
  &KJoutput_stream_,
  &KJecho_inputQ_,
  &KJprofile_commandsQ_
};

static _KLsimple_object_vectorGVKd_5 K41 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 21,
  &K24,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLbooleanGVKd,
  &KLbooleanGVKd
};

static _KLsimple_object_vectorGVKd_1 K42 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLcommand_line_serverGYcommand_linesVenvironment_commands
};

/* Code */

dylan_value Kcontext_command_groupYcommand_linesVenvironment_commandsMM0I (dylan_value context_) {
  dylan_value T2_0;
  dylan_value T3_0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:24
  T2_0 = Denvironment_command_groupVenvironment_commands;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:22
  T3_0 = T2_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T2_0);
    primitive_type_check(T3_0, &KLcommand_groupGYcommand_linesVenvironment_commands);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:22
  MV_SET_COUNT(1);
  return(T3_0);
}

dylan_value Kcontext_command_prefixYcommand_linesVenvironment_commandsMM0I (dylan_value context_) {
  dylan_value T2_0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:27
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:29
  T2_0 = C(':');
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:27
  MV_SET_COUNT(1);
  return(T2_0);
}

dylan_value Kmake_environment_command_line_serverVenvironment_commandsMM0I (dylan_value Urest_, dylan_value banner_, dylan_value input_stream_, dylan_value output_stream_, dylan_value echo_inputQ_, dylan_value profile_commandsQ_) {
  dylan_value bannerF7;
  dylan_value input_streamF8;
  dylan_value output_streamF9;
  dylan_value echo_inputQF10;
  dylan_value profile_commandsQF11;
  dylan_value context_;
  dylan_value T13_0;
  _KLsimple_object_vectorGVKd_2 T14 = {&KLsimple_object_vectorGVKdW, (dylan_value) 9};
  _KLsimple_object_vectorGVKd_10 T15 = {&KLsimple_object_vectorGVKdW, (dylan_value) 41};

  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  primitive_type_check(banner_, &K24);
  bannerF7 = banner_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  primitive_type_check(input_stream_, &KLstreamGYcommon_extensionsVcommon_dylan);
  input_streamF8 = input_stream_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  primitive_type_check(output_stream_, &KLstreamGYcommon_extensionsVcommon_dylan);
  output_streamF9 = output_stream_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  primitive_type_check(echo_inputQ_, &KLbooleanGVKd);
  echo_inputQF10 = echo_inputQ_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  primitive_type_check(profile_commandsQ_, &KLbooleanGVKd);
  profile_commandsQF11 = profile_commandsQ_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:39
  T14.vector_element_[0] = IKJbanner_;
  T14.vector_element_[1] = bannerF7;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:39
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  context_ = CONGRUENT_CALL2(&KLenvironment_contextGVenvironment_commands, &T14);
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:40
  T15.vector_element_[0] = IKJcontext_;
  T15.vector_element_[1] = context_;
  T15.vector_element_[2] = IKJinput_stream_;
  T15.vector_element_[3] = input_streamF8;
  T15.vector_element_[4] = IKJoutput_stream_;
  T15.vector_element_[5] = output_streamF9;
  T15.vector_element_[6] = IKJecho_inputQ_;
  T15.vector_element_[7] = echo_inputQF10;
  T15.vector_element_[8] = IKJprofile_commandsQ_;
  T15.vector_element_[9] = profile_commandsQF11;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:40
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T13_0 = CONGRUENT_CALL2(&KLcommand_line_serverGYcommand_linesVenvironment_commands, &T15);
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:32
  MV_SET_COUNT(1);
  return(T13_0);
}


/* SYSTEM INIT CODE */

void _Init_environment_commands__X_main_for_system () {
  extern dylan_value KPresolve_symbolVKiI(dylan_value);
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJsummary_);
    if (T0 != &KJsummary_) {
      IKJsummary_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJdocumentation_);
    if (T0 != &KJdocumentation_) {
      IKJdocumentation_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJenvironment_);
    if (T0 != &KJenvironment_) {
      IKJenvironment_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJtitle_);
    if (T0 != &KJtitle_) {
      IKJtitle_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJcontents_);
    if (T0 != &KJcontents_) {
      IKJcontents_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJbanner_);
    if (T0 != &KJbanner_) {
      primitive_repeated_slot_value_setter(T0, &K40, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K39, 1, 0);
      IKJbanner_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJcontext_);
    if (T0 != &KJcontext_) {
      IKJcontext_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJinput_stream_);
    if (T0 != &KJinput_stream_) {
      primitive_repeated_slot_value_setter(T0, &K40, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K39, 1, 2);
      IKJinput_stream_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJoutput_stream_);
    if (T0 != &KJoutput_stream_) {
      primitive_repeated_slot_value_setter(T0, &K40, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K39, 1, 4);
      IKJoutput_stream_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJecho_inputQ_);
    if (T0 != &KJecho_inputQ_) {
      primitive_repeated_slot_value_setter(T0, &K40, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K39, 1, 6);
      IKJecho_inputQ_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJprofile_commandsQ_);
    if (T0 != &KJprofile_commandsQ_) {
      primitive_repeated_slot_value_setter(T0, &K40, 1, 4);
      primitive_repeated_slot_value_setter(T0, &K39, 1, 8);
      IKJprofile_commandsQ_ = T0;
    }
  }
  return;
}

/* USER INIT CODE */

void _Init_environment_commands__X_main_for_user () {
{
  dylan_value T0;
  dylan_value T1;
  dylan_value T2;
  _KLsimple_object_vectorGVKd_8 T3 = {&KLsimple_object_vectorGVKdW, (dylan_value) 33};
  dylan_value T4;
  dylan_value T5;
  _KLsimple_object_vectorGVKd_10 T6 = {&KLsimple_object_vectorGVKdW, (dylan_value) 41};

  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  T2 = Kas_uppercaseVKdMM1I(&K1);
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  T3.vector_element_[0] = Dbasic_command_groupYcommand_linesVenvironment_commands;
  T3.vector_element_[1] = Dproperty_command_groupYcommand_linesVenvironment_commands;
  T3.vector_element_[2] = Dsystem_command_groupYcommand_linesVenvironment_commands;
  T3.vector_element_[3] = Dlibrary_packs_command_groupVenvironment_commands;
  T3.vector_element_[4] = Dproject_command_groupVenvironment_commands;
  T3.vector_element_[5] = Dbrowsing_command_groupVenvironment_commands;
  T3.vector_element_[6] = Dreports_command_groupVenvironment_commands;
  T3.vector_element_[7] = Dbuild_command_groupVenvironment_commands;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  T4 = primitive_copy_vector(&T3);
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  T5 = KasVKdMM8I(&KLstretchy_object_vectorGVKe, T4);
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  T6.vector_element_[0] = IKJsummary_;
  T6.vector_element_[1] = &K3;
  T6.vector_element_[2] = IKJdocumentation_;
  T6.vector_element_[3] = &K5;
  T6.vector_element_[4] = &KJname_;
  T6.vector_element_[5] = IKJenvironment_;
  T6.vector_element_[6] = IKJtitle_;
  T6.vector_element_[7] = T2;
  T6.vector_element_[8] = IKJcontents_;
  T6.vector_element_[9] = T5;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T0 = CONGRUENT_CALL2(&KLcommand_groupGYcommand_linesVenvironment_commands, &T6);
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  Denvironment_command_groupVenvironment_commands = T0;
  // /home/bruce/Development/dylan/opendylan/sources/environment/commands/main.dylan:9
  T1 = &KPfalseVKi;
  goto I0;
}
I0:

  return;
}


/* eof */
