/*
-- ANSI C code generated by :
-- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.79)      --
-- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
-- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
--                 http://www.loria.fr/SmallEiffel              --
*/
#include "finder.h"
T29 M29=NULL;
T26 M26=NULL;
T10 M10=NULL;
T41 M41={NULL,0,0};
T30 M30={NULL,NULL,NULL};
T28 M28={0};
T40 M40={NULL,NULL,0,NULL,NULL,0,0,0,0};
T38 M38={NULL,0,0};
T7 M7={NULL,0,0};
T33 M33={NULL,0,0,0};
T20 M20=NULL;
T27 M27={NULL,0};
T31 M31={0,NULL,0,0};


T7*se_ms(int c,char*e){
T7*s=malloc(sizeof(T7));
s->_count=c;
s->_capacity=c+1;
s->_storage=malloc(c+2);
memcpy(s->_storage,e,c);
return s;}


T7*e2s(char*e){
return se_ms(strlen(e),e);}


char*s2e(T7*s){
char*e=malloc(1+s->_count);
memcpy(e,s->_storage,s->_count);
e[s->_count]='\0';
return e;}
/*
-- This file is  free  software, which  comes  along  with  SmallEiffel. This
-- software  is  distributed  in the hope that it will be useful, but WITHOUT 
-- ANY  WARRANTY;  without  even  the  implied warranty of MERCHANTABILITY or
-- FITNESS  FOR A PARTICULAR PURPOSE. You can modify it as you want, provided
-- this header is kept unaltered, and a notification of the changes is added.
-- You  are  allowed  to  redistribute  it and sell it, alone or as a part of 
-- another product.
--          Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE
--            Dominique COLNET and Suzanne COLLIN - colnet@loria.fr 
--                       http://www.loria.fr/SmallEiffel
--
*/

/*
  This file (boost.c) is automatically included when `run_control.boost' is
  true (ie. only for mode -boost).
*/

void se_print_run_time_stack (void) {
  fprintf(SE_ERR,"Eiffel program crash at run time.\n");
  fprintf(SE_ERR,"No trace when using option \"-boost\"\n");
}

void sigrsp(int sig) {
  printf("Received signal %d (man signal).\n",sig);
  se_print_run_time_stack();
  exit(1);
}


T3 r3to_upper(T3 C){
T3 R=0;
/*[IF*/
if((((unsigned char)C))<(97)){
R=C;
}
 else if((((unsigned char)C))>(122)){
R=C;
}
else{
R=((T3)((((unsigned char)C))-(32)));
}
/*FI]*/
return R;
}


T6 r3is_separator(T3 C){
T6 R=0;
{int z1=C;

if((0==z1)||((9<=z1)&&(z1<=10))||(13==z1)||(32==z1)){
R=1;
}
}
return R;
}


T3 r3to_lower(T3 C){
T3 R=0;
/*[IF*/
if((((unsigned char)C))<(65)){
R=C;
}
 else if((((unsigned char)C))>(90)){
R=C;
}
else{
R=((T3)((((unsigned char)C))+(32)));
}
/*FI]*/
return R;
}


T6 r6_ix_not(T6 C){
T6 R=0;
/*[IF*/
if(C){
}
else{
R=1;
}
/*FI]*/
return R;
}


T36 r36realloc(T36 C,T2 a1,T2 a2){
T36 R=NULL;
R=calloc(a2,sizeof(T0*));
r36copy_from(R,C,(a1)-(1));
return R;
}


void r36set_all_with(T36 C,T0* a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=(a1);
_i=(_i)-(1);
}
}


T6 r36equal_like(T0* a1,T0* a2){
T6 R=0;
/*[IF*/
/*AF*//*AF*/if((a1)==((void*)(a2))){
R=1;
}
 else if(((a1)==((void*)(NULL)))||((a2)==((void*)(NULL)))){
}
else{
R=r7is_equal(((T7*)a1),a2);
}
/*FI]*/
return R;
}


void r36copy_from(T36 C,T36 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=((a1)[_i]);
_i=(_i)-(1);
}
}


T2 r36index_of(T36 C,T0* a1,T2 a2){
T2 R=0;
while (!(((R)>(a2))||(r36equal_like(a1,(C)[R])))) {
R=(R)+(1);
}
return R;
}


T6 r9fast_memcmp(T9 C,T9 a1,T2 a2){
T6 R=0;
T2 _i=0;
R=1;
_i=(a2)-(1);
while (!(((_i)<(0))||(!(R)))) {
R=((C)[_i])==((a1)[_i]);
_i=(_i)-(1);
}
return R;
}


T9 r9realloc(T9 C,T2 a1,T2 a2){
T9 R=NULL;
R=calloc(a2,sizeof(T3));
r9copy_from(R,C,(a1)-(1));
return R;
}


void r9copy_at(T9 C,T2 a1,T9 a2,T2 a3){
T2 _i2=0;
T2 _i1=0;
_i1=a1;
while (!((_i2)==(a3))) {
(C)[_i1]=((a2)[_i2]);
_i2=(_i2)+(1);
_i1=(_i1)+(1);
}
}


T2 r9fast_index_of(T9 C,T3 a1,T2 a2){
T2 R=0;
while (!(((R)>(a2))||((a1)==((C)[R])))) {
R=(R)+(1);
}
return R;
}


void r9copy_from(T9 C,T9 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=((a1)[_i]);
_i=(_i)-(1);
}
}


T42 r42realloc(T42 C,T2 a1,T2 a2){
T42 R=NULL;
R=calloc(a2,sizeof(T2));
r42copy_from(R,C,(a1)-(1));
return R;
}


void r42set_all_with(T42 C,T2 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=(a1);
_i=(_i)-(1);
}
}


void r42copy_from(T42 C,T42 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=((a1)[_i]);
_i=(_i)-(1);
}
}


T6 r7has(T7* C,T3 a1){
T6 R=0;
R=(r7index_of(C,a1))!=(((C)->_count/*4*/)+(1));
return R;
}


T8 r7to_external(T7* C){
T8 R=0;
/*[IF*/
if(((C)->_capacity/*8*/)>((C)->_count/*4*/)){
C->_count=((C)->_count/*4*/)+(1);
/*[IF*/
if((/*(IRF4.6item*/((C)->_storage/*0*/)[((C)->_count/*4*/)-(1)]/*)*/)!=('\0')){
/*[IRF3.5put*/((C)->_storage/*0*/)[((C)->_count/*4*/)-(1)]=('\0');
/*]*/
}
/*FI]*/
}
else{
r7extend(C,'\0');
}
/*FI]*/
C->_count=((C)->_count/*4*/)-(1);
R=((void*)(C)->_storage/*0*/);
return R;
}


void r7to_upper(T7* C){
T2 _i=0;
_i=(C)->_count/*4*/;
while (!((_i)==(0))) {
/*[IRF3.5put*/((C)->_storage/*0*/)[(_i)-(1)]=(r3to_upper(/*(IRF4.6item*/((C)->_storage/*0*/)[(_i)-(1)]/*)*/));
/*]*/
_i=(_i)-(1);
}
}
/*No:STRING.remove_suffix*/


T0* r7twin(T7* C){
T0* R=NULL;
R=malloc(sizeof(*C));
*((T7*)R)=M7;
r7copy(((T7*)R),((T0*)C));
return R;
}


void r7set_last(T7* C,T3 a1){
/*[IF*/
if((((C)->_count/*4*/)==(0))||((/*(IRF4.6item*/((C)->_storage/*0*/)[((C)->_count/*4*/)-(1)]/*)*/)!=(a1))){
r7extend(C,a1);
}
/*FI]*/
}


void r7remove_last(T7* C,T2 a1){
C->_count=((C)->_count/*4*/)-(a1);
}


void r7to_lower(T7* C){
T2 _i=0;
_i=(C)->_count/*4*/;
while (!((_i)==(0))) {
/*[IRF3.5put*/((C)->_storage/*0*/)[(_i)-(1)]=(r3to_lower(/*(IRF4.6item*/((C)->_storage/*0*/)[(_i)-(1)]/*)*/));
/*]*/
_i=(_i)-(1);
}
}


T6 r7is_equal(T7* C,T0* a1){
T6 R=0;
/*[IF*/
if((C)==((void*)(a1))){
R=1;
}
 else if(((C)->_count/*4*/)==((((T7*)a1))->_count/*4*/)){
R=r9fast_memcmp((C)->_storage/*0*/,(((T7*)a1))->_storage/*0*/,(C)->_count/*4*/);
}
/*FI]*/
return R;
}


T6 r7has_suffix(T7* C,T0* a1){
T6 R=0;
T2 _i2=0;
T2 _i1=0;
/*[IF*/
if(((((T7*)a1))->_count/*4*/)<=((C)->_count/*4*/)){
_i1=(((C)->_count/*4*/)-((((T7*)a1))->_count/*4*/))+(1);
_i2=1;
while (!((((_i1)>((C)->_count/*4*/))||((_i2)>((((T7*)a1))->_count/*4*/)))||((/*(IRF4.6item*/((C)->_storage/*0*/)[(_i1)-(1)]/*)*/)!=(/*(IRF4.6item*/((((T7*)a1))->_storage/*0*/)[(_i2)-(1)]/*)*/)))) {
_i1=(_i1)+(1);
_i2=(_i2)+(1);
}
R=(_i1)>((C)->_count/*4*/);
}
/*FI]*/
return R;
}
/*No:STRING.item*/


void r7prepend(T7* C,T0* a1){
T2 _old_count=0;
T2 _i=0;
_old_count=(C)->_count/*4*/;
_i=(((T7*)a1))->_count/*4*/;
while (!((_i)==(0))) {
r7extend(C,'\40');
_i=(_i)-(1);
}
_i=(C)->_count/*4*/;
while (!((_old_count)==(0))) {
/*[IRF3.5put*/((C)->_storage/*0*/)[(_i)-(1)]=(/*(IRF4.6item*/((C)->_storage/*0*/)[(_old_count)-(1)]/*)*/);
/*]*/
_i=(_i)-(1);
_old_count=(_old_count)-(1);
}
_i=(((T7*)a1))->_count/*4*/;
while (!((_i)==(0))) {
/*[IRF3.5put*/((C)->_storage/*0*/)[(_i)-(1)]=(/*(IRF4.6item*/((((T7*)a1))->_storage/*0*/)[(_i)-(1)]/*)*/);
/*]*/
_i=(_i)-(1);
}
}


T3 r7last(T7* C){
T3 R=0;
R=/*(IRF4.6item*/((C)->_storage/*0*/)[((C)->_count/*4*/)-(1)]/*)*/;
return R;
}
/*No:STRING.count*/


void r7make(T7* C,T2 a1){
/*[IF*/
if((a1)>(0)){
/*[IF*/
if(((C)->_capacity/*8*/)<(a1)){
C->_storage=calloc(a1,sizeof(T3));
C->_capacity=a1;
}
/*FI]*/
}
/*FI]*/
C->_count=0;
}


void r7append(T7* C,T0* a1){
T2 _needed_capacity=0;
T2 _other_count=0;
_other_count=(((T7*)a1))->_count/*4*/;
_needed_capacity=((C)->_count/*4*/)+(_other_count);
/*[IF*/
if(((C)->_capacity/*8*/)<(_needed_capacity)){
/*[IF*/
if(((C)->_capacity/*8*/)==(0)){
C->_capacity=_needed_capacity;
C->_storage=calloc((C)->_capacity/*8*/,sizeof(T3));
}
else{
C->_storage=r9realloc((C)->_storage/*0*/,(C)->_capacity/*8*/,_needed_capacity);
C->_capacity=_needed_capacity;
}
/*FI]*/
}
/*FI]*/
r9copy_at((C)->_storage/*0*/,(C)->_count/*4*/,(((T7*)a1))->_storage/*0*/,_other_count);
C->_count=_needed_capacity;
}


void r7extend(T7* C,T3 a1){
T2 _new_capacity=0;
/*[IF*/
if(((C)->_capacity/*8*/)>((C)->_count/*4*/)){
}
 else if(((C)->_capacity/*8*/)==(0)){
C->_capacity=32;
C->_storage=calloc((C)->_capacity/*8*/,sizeof(T3));
}
else{
_new_capacity=(2)*((C)->_capacity/*8*/);
C->_storage=r9realloc((C)->_storage/*0*/,(C)->_capacity/*8*/,_new_capacity);
C->_capacity=_new_capacity;
}
/*FI]*/
C->_count=((C)->_count/*4*/)+(1);
/*[IRF3.5put*/((C)->_storage/*0*/)[((C)->_count/*4*/)-(1)]=(a1);
/*]*/
}
/*No:STRING.clear*/


void r7copy(T7* C,T0* a1){
C->_count=(((T7*)a1))->_count/*4*/;
/*[IF*/
if(((C)->_count/*4*/)>(0)){
/*[IF*/
if(((C)->_capacity/*8*/)<((C)->_count/*4*/)){
C->_storage=calloc((C)->_count/*4*/,sizeof(T3));
C->_capacity=(C)->_count/*4*/;
}
/*FI]*/
r9copy_from((C)->_storage/*0*/,(((T7*)a1))->_storage/*0*/,((C)->_count/*4*/)-(1));
}
/*FI]*/
}
/*No:STRING.empty*/


T2 r7hash_code(T7* C){
T2 R=0;
T2 _i=0;
_i=(C)->_count/*4*/;
/*[IF*/
if((_i)>(5)){
R=(_i)*(((unsigned char)/*(IRF4.6item*/((C)->_storage/*0*/)[(_i)-(1)]/*)*/));
_i=5;
}
/*FI]*/
while (!((_i)<=(0))) {
R=((R)+(_i))+(((unsigned char)/*(IRF4.6item*/((C)->_storage/*0*/)[(_i)-(1)]/*)*/));
_i=(_i)-(1);
}
R=(R)*((C)->_count/*4*/);
return R;
}


T2 r7index_of(T7* C,T3 a1){
T2 R=0;
R=(1)+(r9fast_index_of((C)->_storage/*0*/,a1,((C)->_count/*4*/)-(1)));
return R;
}
/*No:STRING.capacity*/
/*No:STRING.put*/
/*No:STRING.storage*/
/*No:FIXED_ARRAY[INTEGER].clear_all*/


void r41add_last(T41* C,T2 a1){
T2 _new_capacity=0;
/*[IF*/
if((((C)->_upper/*8*/)+(1))<=(((C)->_capacity/*4*/)-(1))){
C->_upper=((C)->_upper/*8*/)+(1);
}
 else if(((C)->_capacity/*4*/)==(0)){
C->_storage=calloc(2,sizeof(T2));
C->_capacity=2;
C->_upper=0;
}
else{
_new_capacity=(2)*((C)->_capacity/*4*/);
C->_storage=r42realloc((C)->_storage/*0*/,(C)->_capacity/*4*/,_new_capacity);
C->_capacity=_new_capacity;
C->_upper=((C)->_upper/*8*/)+(1);
}
/*FI]*/
/*[IRF3.5put*/((C)->_storage/*0*/)[(C)->_upper/*8*/]=(a1);
/*]*/
}
/*No:FIXED_ARRAY[INTEGER].item*/
/*No:FIXED_ARRAY[INTEGER].set_all_with*/
/*No:FIXED_ARRAY[INTEGER].count*/


void r41resize(T41* C,T2 a1){
T2 _elt_default=0;
T2 _i=0;
T2 _new_capacity=0;
/*[IF*/
if((a1)<=(/*(IRF4.6count*/((C)->_upper/*8*/)+(1)/*)*/)){
C->_upper=(a1)-(1);
}
else{
_new_capacity=a1;
/*[IF*/
if(((C)->_capacity/*4*/)<(_new_capacity)){
/*[IF*/
if(((C)->_capacity/*4*/)==(0)){
C->_storage=calloc(_new_capacity,sizeof(T2));
}
else{
C->_storage=r42realloc((C)->_storage/*0*/,(C)->_capacity/*4*/,_new_capacity);
}
/*FI]*/
C->_capacity=_new_capacity;
}
/*FI]*/
_new_capacity=(C)->_upper/*8*/;
C->_upper=(a1)-(1);
_i=(C)->_upper/*8*/;
while (!((_i)==(_new_capacity))) {
/*[IRF3.5put*/((C)->_storage/*0*/)[_i]=(_elt_default);
/*]*/
_i=(_i)-(1);
}
}
/*FI]*/
}


void r41make(T41* C,T2 a1){
/*[IF*/
if((a1)==(0)){
C->_upper=-(1);
}
 else if(((C)->_capacity/*4*/)==(0)){
C->_storage=calloc(a1,sizeof(T2));
C->_capacity=a1;
C->_upper=(a1)-(1);
}
 else if(((C)->_capacity/*4*/)<(a1)){
C->_storage=calloc(a1,sizeof(T2));
C->_capacity=a1;
C->_upper=(a1)-(1);
}
else{
C->_upper=(a1)-(1);
/*[IRF3.6clear_all*/{T41* C1=C;
T2 __value=0;
/*[IRF3.6set_all_with*/{T41* C2=C1;
T2 c1=__value;
r42set_all_with((C2)->_storage/*0*/,c1,(C2)->_upper/*8*/);
}/*]*/
}/*]*/
}
/*FI]*/
}
/*No:FIXED_ARRAY[INTEGER].upper*/
/*No:FIXED_ARRAY[INTEGER].capacity*/
/*No:FIXED_ARRAY[INTEGER].put*/
/*No:FIXED_ARRAY[INTEGER].storage*/


void r38with_capacity(T38* C,T2 a1){
/*[IF*/
if(((C)->_capacity/*4*/)<(a1)){
C->_storage=calloc(a1,sizeof(T0*));
C->_capacity=a1;
}
/*FI]*/
C->_upper=-(1);
}
/*No:FIXED_ARRAY[STRING].clear_all*/


void r38add_last(T38* C,T0* a1){
T2 _new_capacity=0;
/*[IF*/
if((((C)->_upper/*8*/)+(1))<=(((C)->_capacity/*4*/)-(1))){
C->_upper=((C)->_upper/*8*/)+(1);
}
 else if(((C)->_capacity/*4*/)==(0)){
C->_storage=calloc(2,sizeof(T0*));
C->_capacity=2;
C->_upper=0;
}
else{
_new_capacity=(2)*((C)->_capacity/*4*/);
C->_storage=r36realloc((C)->_storage/*0*/,(C)->_capacity/*4*/,_new_capacity);
C->_capacity=_new_capacity;
C->_upper=((C)->_upper/*8*/)+(1);
}
/*FI]*/
/*[IRF3.5put*/((C)->_storage/*0*/)[(C)->_upper/*8*/]=(a1);
/*]*/
}
/*No:FIXED_ARRAY[STRING].set_all_with*/
/*No:FIXED_ARRAY[STRING].item*/
/*No:FIXED_ARRAY[STRING].count*/


void r38resize(T38* C,T2 a1){
T0* _elt_default=NULL;
T2 _i=0;
T2 _new_capacity=0;
/*[IF*/
if((a1)<=(/*(IRF4.6count*/((C)->_upper/*8*/)+(1)/*)*/)){
C->_upper=(a1)-(1);
}
else{
_new_capacity=a1;
/*[IF*/
if(((C)->_capacity/*4*/)<(_new_capacity)){
/*[IF*/
if(((C)->_capacity/*4*/)==(0)){
C->_storage=calloc(_new_capacity,sizeof(T0*));
}
else{
C->_storage=r36realloc((C)->_storage/*0*/,(C)->_capacity/*4*/,_new_capacity);
}
/*FI]*/
C->_capacity=_new_capacity;
}
/*FI]*/
_new_capacity=(C)->_upper/*8*/;
C->_upper=(a1)-(1);
_i=(C)->_upper/*8*/;
while (!((_i)==(_new_capacity))) {
/*[IRF3.5put*/((C)->_storage/*0*/)[_i]=(_elt_default);
/*]*/
_i=(_i)-(1);
}
}
/*FI]*/
}


void r38make(T38* C,T2 a1){
/*[IF*/
if((a1)==(0)){
C->_upper=-(1);
}
 else if(((C)->_capacity/*4*/)==(0)){
C->_storage=calloc(a1,sizeof(T0*));
C->_capacity=a1;
C->_upper=(a1)-(1);
}
 else if(((C)->_capacity/*4*/)<(a1)){
C->_storage=calloc(a1,sizeof(T0*));
C->_capacity=a1;
C->_upper=(a1)-(1);
}
else{
C->_upper=(a1)-(1);
/*[IRF3.6clear_all*/{T38* C1=C;
T0* __value=NULL;
/*[IRF3.6set_all_with*/{T38* C2=C1;
T0* c1=__value;
r36set_all_with((C2)->_storage/*0*/,c1,(C2)->_upper/*8*/);
}/*]*/
}/*]*/
}
/*FI]*/
}
/*No:FIXED_ARRAY[STRING].upper*/
/*No:FIXED_ARRAY[STRING].capacity*/
/*No:FIXED_ARRAY[STRING].put*/
/*No:FIXED_ARRAY[STRING].storage*/


void r33with_capacity(T33* C,T2 a1,T2 a2){
/*[IF*/
if(((C)->_capacity/*4*/)<(a1)){
C->_storage=calloc(a1,sizeof(T0*));
C->_capacity=a1;
}
/*FI]*/
C->_lower=a2;
C->_upper=(a2)-(1);
}


void r33add_last(T33* C,T0* a1){
T2 _new_capacity=0;
/*[IF*/
if(((C)->_capacity/*4*/)<((r33count(C))+(1))){
/*[IF*/
if(((C)->_capacity/*4*/)==(0)){
C->_capacity=16;
C->_storage=calloc((C)->_capacity/*4*/,sizeof(T0*));
}
else{
_new_capacity=(2)*((C)->_capacity/*4*/);
C->_storage=r36realloc((C)->_storage/*0*/,(C)->_capacity/*4*/,_new_capacity);
C->_capacity=_new_capacity;
}
/*FI]*/
}
/*FI]*/
C->_upper=((C)->_upper/*8*/)+(1);
/*[IRF3.6put*/{T33* C1=C;
T0* b1=a1;
T2 b2=(C)->_upper/*8*/;
((C1)->_storage/*0*/)[(b2)-((C1)->_lower/*12*/)]=(b1);
}/*]*/
}


T0* r33item(T33* C,T2 a1){
T0* R=NULL;
R=((C)->_storage/*0*/)[(a1)-((C)->_lower/*12*/)];
return R;
}


T2 r33count(T33* C){
T2 R=0;
R=(((C)->_upper/*8*/)-((C)->_lower/*12*/))+(1);
return R;
}
/*No:ARRAY[STRING].lower*/
/*No:ARRAY[STRING].upper*/


T2 r33index_of(T33* C,T0* a1){
T2 R=0;
R=((C)->_lower/*12*/)+(r36index_of((C)->_storage/*0*/,a1,((C)->_upper/*8*/)-((C)->_lower/*12*/)));
return R;
}
/*No:ARRAY[STRING].capacity*/
/*No:ARRAY[STRING].put*/
/*No:ARRAY[STRING].storage*/
/*No:DICTIONARY[STRING,STRING].Default_size*/


void r40with_capacity(T40* C,T2 a1){
T2 _i=0;
{T38*n=malloc(sizeof(*n));
*n=M38;
r38make(n,a1);
C->_keys=(T0*)n;
}
{T38*n=malloc(sizeof(*n));
*n=M38;
r38make(n,a1);
C->_store=(T0*)n;
}
C->_modulus=(3)*(a1);
{T41*n=malloc(sizeof(*n));
*n=M41;
r41make(n,(C)->_modulus/*8*/);
C->_buckets=(T0*)n;
}
/*[IRF3.6set_all_with*/{T41* C1=(T41*)((C)->_buckets/*12*/);
T2 b1=-(1);
r42set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
{T41*n=malloc(sizeof(*n));
*n=M41;
r41make(n,a1);
C->_chain=(T0*)n;
}
_i=((T41*)((C)->_chain/*16*/))->_upper/*8*/;
C->_first_free_slot=_i;
while (!((_i)<(0))) {
/*[IRF3.5put*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=((_i)-(1));
/*]*/
_i=(_i)-(1);
}
C->_cache_keys_idx=-(1);
C->_cache_user_idx=-(1);
C->_count=0;
}


T6 r40has(T40* C,T0* a1){
T6 R=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
C->_cache_keys_idx=/*(IRF4.6item*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[(r7hash_code(((T7*)a1)))%((C)->_modulus/*8*/)]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
}
/*FI]*/
R=((C)->_cache_keys_idx/*24*/)>=(0);
return R;
}
/*No:DICTIONARY[STRING,STRING].cache_keys_idx*/
/*No:DICTIONARY[STRING,STRING].cache_user_idx*/


void r40expand(T40* C){
T2 _i=0;
_i=/*(IRF4.6count*/(((T38*)((C)->_keys/*0*/))->_upper/*8*/)+(1)/*)*/;
r40resize_buckets(C,((_i)*(2))*(3));
while (!((_i)==(0))) {
r41add_last((T41*)((C)->_chain/*16*/),(C)->_first_free_slot/*20*/);
C->_first_free_slot=((T41*)((C)->_chain/*16*/))->_upper/*8*/;
_i=(_i)-(1);
}
r38resize((T38*)((C)->_keys/*0*/),/*(IRF4.6count*/(((T41*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
r38resize((T38*)((C)->_store/*4*/),/*(IRF4.6count*/(((T41*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
}


void r40resize_buckets(T40* C,T2 a1){
T2 _i=0;
T2 _h=0;
C->_modulus=a1;
r41resize((T41*)((C)->_buckets/*12*/),a1);
/*[IRF3.6set_all_with*/{T41* C1=(T41*)((C)->_buckets/*12*/);
T2 b1=-(1);
r42set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
while (!(((C)->_first_free_slot/*20*/)<(0))) {
_i=/*(IRF4.6item*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(-(2));
/*]*/
C->_first_free_slot=_i;
}
_i=((T41*)((C)->_chain/*16*/))->_upper/*8*/;
while (!((_i)<(0))) {
/*[IF*/
if((/*(IRF4.6item*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[_i]/*)*/)==(-(2))){
/*[IRF3.5put*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=((C)->_first_free_slot/*20*/);
/*]*/
C->_first_free_slot=_i;
}
else{
_h=(r7hash_code((T7*)(/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[_i]/*)*/)))%(a1);
/*[IRF3.5put*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=(/*(IRF4.6item*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=(_i);
/*]*/
}
/*FI]*/
_i=(_i)-(1);
}
}
/*No:DICTIONARY[STRING,STRING].buckets_keys_ratio*/
/*No:DICTIONARY[STRING,STRING].first_free_slot*/


T0* r40at(T40* C,T0* a1){
T0* R=NULL;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
C->_cache_keys_idx=/*(IRF4.6item*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[(r7hash_code(((T7*)a1)))%((C)->_modulus/*8*/)]/*)*/;
while (!(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
}
/*FI]*/
R=/*(IRF4.6item*/(((T38*)((C)->_store/*4*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
return R;
}
/*No:DICTIONARY[STRING,STRING].modulus*/
/*No:DICTIONARY[STRING,STRING].count*/
/*No:DICTIONARY[STRING,STRING].chain*/
/*No:DICTIONARY[STRING,STRING].make*/
/*No:DICTIONARY[STRING,STRING].store*/
/*No:DICTIONARY[STRING,STRING].buckets*/
/*No:DICTIONARY[STRING,STRING].keys*/


void r40put(T40* C,T0* a1,T0* a2){
T2 _h=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
_h=(r7hash_code(((T7*)a2)))%((C)->_modulus/*8*/);
C->_cache_keys_idx=/*(IRF4.6item*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
/*[IF*/
if(((C)->_cache_keys_idx/*24*/)<(0)){
/*[IF*/
if(((C)->_first_free_slot/*20*/)<(0)){
r40expand(C);
_h=(r7hash_code(((T7*)a2)))%((C)->_modulus/*8*/);
}
/*FI]*/
/*[IRF3.5put*/(((T38*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(a2);
/*]*/
/*[IRF3.5put*/(((T38*)((C)->_store/*4*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(a1);
/*]*/
C->_cache_keys_idx=(C)->_first_free_slot/*20*/;
C->_first_free_slot=/*(IRF4.6item*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T41*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(/*(IRF4.6item*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T41*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=((C)->_cache_keys_idx/*24*/);
/*]*/
C->_count=((C)->_count/*32*/)+(1);
}
else{
/*[IRF3.5put*/(((T38*)((C)->_store/*4*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
else{
/*[IRF3.5put*/(((T38*)((C)->_store/*4*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
/*No:STD_ERROR.flush*/


void r29put_string(T29* C,T0* a1){
T2 _i=0;
_i=1;
while (!((_i)>((((T7*)a1))->_count/*4*/))) {
/*[IRF3.6put_character*/{T29* C1=C;
T3 b1=/*(IRF4.6item*/((((T7*)a1))->_storage/*0*/)[(_i)-(1)]/*)*/;
putc(b1,((FILE*)(stderr)));
}/*]*/
_i=(_i)+(1);
}
}
/*No:STD_ERROR.make*/
/*No:STD_ERROR.put_character*/
int fBC26loading_path=0;
T0*oBC26loading_path=NULL;


T0* r26loading_path(void){
if(fBC26loading_path==0){
fBC26loading_path=1;
{T33*n=malloc(sizeof(*n));
*n=M33;
r33with_capacity(n,16,1);
oBC26loading_path=(T0*)n;
}
r30read_loading_path_in((T30*)(r26system_tools()),oBC26loading_path);
}
return oBC26loading_path;}


T0* r26find_path_for(T26* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(r26parser_buffer_for(C,a1)){
R=((T27*)(oBC11parser_buffer))->_path/*0*/;
}
/*FI]*/
/*[IRF3.3unset_is_ready*/((((T27*)((T27*)(oBC11parser_buffer))))->_path)=(NULL);
/*]*/
return R;
}


T6 r26parser_buffer_for(T26* C,T0* a1){
T6 R=0;
T2 _i=0;
r7copy((T7*)(oBC26tmp_tail),a1);
r7to_lower((T7*)(oBC26tmp_tail));
/*[IF*/
if(!(r7has_suffix((T7*)(oBC26tmp_tail),((T0*)ms11_300)))){
r7append((T7*)(oBC26tmp_tail),((T0*)ms11_300));
}
/*FI]*/
_i=((T33*)(r26loading_path()))->_lower/*12*/;
while (!(((_i)>(((T33*)(r26loading_path()))->_upper/*8*/))||(R))) {
r7copy((T7*)(oBC26parser_buffer_path),r33item((T33*)(r26loading_path()),_i));
r7append((T7*)(oBC26parser_buffer_path),oBC26tmp_tail);
r27load_file((T27*)(oBC11parser_buffer),oBC26parser_buffer_path);
R=/*(IRF4.7is_ready*/(((T27*)(oBC11parser_buffer))->_path/*0*/)!=(NULL)/*)*/;
_i=(_i)+(1);
}
/*[IF*/
if((!(R))&&(r40has((T40*)(r26rename_dictionary(C)),oBC26tmp_tail))){
r7copy((T7*)(oBC26parser_buffer_path),r40at((T40*)(r26rename_dictionary(C)),oBC26tmp_tail));
r27load_file((T27*)(oBC11parser_buffer),oBC26parser_buffer_path);
/*[IF*/
if(/*(IRF4.7is_ready*/(((T27*)(oBC11parser_buffer))->_path/*0*/)!=(NULL)/*)*/){
R=1;
}
else{
r28w_put_string(((T0*)ms26_53690));
r28w_put_string(oBC26parser_buffer_path);
r28w_put_string(((T0*)ms12_166));
exit(1);
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(R)){
r7copy((T7*)(oBC26tmp_tail),a1);
/*[IF*/
if(!(r7has_suffix((T7*)(oBC26tmp_tail),((T0*)ms11_300)))){
r7append((T7*)(oBC26tmp_tail),((T0*)ms11_300));
}
/*FI]*/
_i=((T33*)(r26loading_path()))->_lower/*12*/;
while (!(((_i)>(((T33*)(r26loading_path()))->_upper/*8*/))||(R))) {
r7copy((T7*)(oBC26parser_buffer_path),r33item((T33*)(r26loading_path()),_i));
r7append((T7*)(oBC26parser_buffer_path),oBC26tmp_tail);
r27load_file((T27*)(oBC11parser_buffer),oBC26parser_buffer_path);
R=/*(IRF4.7is_ready*/(((T27*)(oBC11parser_buffer))->_path/*0*/)!=(NULL)/*)*/;
_i=(_i)+(1);
}
}
/*FI]*/
/*[IF*/
if(!(R)){
r28w_put_string(((T0*)ms26_48577));
r28w_put_string(a1);
r28w_put_string(((T0*)ms26_354));
/*[IRF3.3clear*/((((T7*)((T7*)(oBC26parser_buffer_path))))->_count)=(0);
/*]*/
/*[IRF3.6append_loading_path_in*/{T0* b1=oBC26parser_buffer_path;
r30append_lp_in((T30*)(r26system_tools()),b1,r26loading_path());
}/*]*/
r28w_put_string(oBC26parser_buffer_path);
}
/*FI]*/
return R;
}
int fBC11system_tools=0;
T0*oBC11system_tools=NULL;


T0* r26system_tools(void){
if(fBC11system_tools==0){
fBC11system_tools=1;
{T30*n=malloc(sizeof(*n));
*n=M30;
r30make(n);
oBC11system_tools=(T0*)n;
}
}
return oBC11system_tools;}
T0*oBC11tmp_file_read=NULL;
/*No:SMALL_EIFFEL.eiffel_suffix*/
/*No:SMALL_EIFFEL.fz_03*/
/*No:SMALL_EIFFEL.make*/
T0*oBC11echo=NULL;
T0*oBC11parser_buffer=NULL;
/*No:SMALL_EIFFEL.exit_failure_code*/
T0*oBC26parser_buffer_path=NULL;
/*No:SMALL_EIFFEL.tmp_path*/
T0*oBC26tmp_tail=NULL;
/*No:SMALL_EIFFEL.append_loading_path_in*/
int fBC26rename_dictionary=0;
T0*oBC26rename_dictionary=NULL;


T0* r26rename_dictionary(T26* C){
if(fBC26rename_dictionary==0){
T0* _short_name=NULL;
T0* _full_name=NULL;
T2 _i=0;
fBC26rename_dictionary=1;
{T40*n=malloc(sizeof(*n));
*n=M40;
/*[IRF3.4make*/r40with_capacity(n,32);
/*]*/
oBC26rename_dictionary=(T0*)n;
}
_i=1;
while (!((_i)>(((T33*)(r26loading_path()))->_upper/*8*/))) {
r7copy((T7*)(((T0*)ms11_583550)),r33item((T33*)(r26loading_path()),_i));
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms26_13095));
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,((T0*)ms11_583550));
/*[IF*/
if(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/){
while (!(r31end_of_input((T31*)(oBC11tmp_file_read)))) {
r31read_word((T31*)(oBC11tmp_file_read));
_full_name=r7twin((T7*)(oBC32last_string));
r31read_word((T31*)(oBC11tmp_file_read));
_short_name=r7twin((T7*)(oBC32last_string));
r7prepend(((T7*)_short_name),r33item((T33*)(r26loading_path()),_i));
/*[IF*/
if(r40has(((T40*)oBC26rename_dictionary),_full_name)){
r28w_put_string(((T0*)ms26_24360));
r28w_put_string(_full_name);
r28w_put_string(((T0*)ms26_55872));
r28w_put_string(_short_name);
r28w_put_string(((T0*)ms26_5280));
r28w_put_string(r40at(((T40*)oBC26rename_dictionary),_full_name));
r28w_put_string(((T0*)ms26_118));
exit(1);
}
/*FI]*/
r40put(((T40*)oBC26rename_dictionary),_short_name,_full_name);
r31skip_separators((T31*)(oBC11tmp_file_read));
}
r31disconnect((T31*)(oBC11tmp_file_read));
}
/*FI]*/
_i=(_i)+(1);
}
}
return oBC26rename_dictionary;}
T0*oBC11small_eiffel=NULL;
T0*oBC1std_output=NULL;


T0* r10system_tools(void){
if(fBC11system_tools==0){
fBC11system_tools=1;
{T30*n=malloc(sizeof(*n));
*n=M30;
r30make(n);
oBC11system_tools=(T0*)n;
}
}
return oBC11system_tools;}


T0* r10argument(T2 a1){
T0* R=NULL;
R=/*(IRF4.6item*/(((T38*)(r10command_arguments()))->_storage/*0*/)[a1]/*)*/;
return R;
}


void r10make(T10* C){
T0* _file_name=NULL;
T0* _class_name=NULL;
/*[IF*/
if((/*(IRF4.9argument_count*/((T38*)(r10command_arguments()))->_upper/*8*//*)*/)!=(1)){
r30bad_use_exit((T30*)(r10system_tools()),((T0*)ms10_7302));
}
/*FI]*/
_class_name=r10argument(1);
_file_name=r26find_path_for((T26*)(oBC11small_eiffel),_class_name);
/*[IF*/
if((_file_name)==((void*)(NULL))){
r20put_string((T20*)(oBC1std_output),_class_name);
r20put_string((T20*)(oBC1std_output),((T0*)ms10_7436));
exit(1);
}
else{
r20put_string((T20*)(oBC1std_output),_file_name);
/*[IRF3.6put_character*/{T20* C1=(T20*)(oBC1std_output);
T3 b1='\n';
putc(b1,((FILE*)(stdout)));
}/*]*/
}
/*FI]*/
}
/*No:FINDER.argument_count*/
/*No:FINDER.exit_failure_code*/
int fBC1command_arguments=0;
T0*oBC1command_arguments=NULL;


T0* r10command_arguments(void){
if(fBC1command_arguments==0){
T0* _arg=NULL;
T2 _i=0;
fBC1command_arguments=1;
_i=se_argc;
{T38*n=malloc(sizeof(*n));
*n=M38;
r38make(n,_i);
oBC1command_arguments=(T0*)n;
}
while (!((_i)==(0))) {
_i=(_i)-(1);
_arg=((T0*)e2s(se_argv[_i]));
/*[IRF3.5put*/((((T38*)oBC1command_arguments))->_storage/*0*/)[_i]=(_arg);
/*]*/
}
}
return oBC1command_arguments;}


void r30loading_path_add(T30* C,T0* a1,T0* a2,T2 a3){
T0* _line=NULL;
T0* _file=NULL;
/*[IF*/
if(((a3)>(5))||((r33count(((T33*)a1)))>(1024))){
r28w_put_string(((T0*)ms30_83580));
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,1024);
_line=(T0*)n;
}
r30append_lp_in(C,_line,a1);
r28w_put_string(_line);
exit(1);
}
/*FI]*/
{T31*n=malloc(sizeof(*n));
*n=M31;
/*[IRF3.1make*//*]*/
_file=(T0*)n;
}
r28sfr_connect((T28*)(oBC11echo),_file,a2);
/*[IF*/
if(/*(IRF4.7is_connected*/((((T31*)_file))->_path/*4*/)!=(NULL)/*)*/){
r28put_string((T28*)(oBC11echo),((T0*)ms30_25809));
r28put_string((T28*)(oBC11echo),a2);
r28put_string((T28*)(oBC11echo),((T0*)ms30_10070));
while (!(r31end_of_input(((T31*)_file)))) {
r31read_line(((T31*)_file));
_line=r7twin((T7*)(oBC32last_string));
/*[IF*/
if(r7has_suffix(((T7*)_line),((T0*)ms30_18194))){
r30loading_path_add(C,a1,_line,(a3)+(1));
}
 else if(!(/*(IRF4.7empty*/((((T7*)_line))->_count/*4*/)==(0)/*)*/)){
r33add_last(((T33*)a1),_line);
}
/*FI]*/
}
r31disconnect(((T31*)_file));
}
/*FI]*/
}
/*No:SYSTEM_TOOLS.system_name*/


void r30parent_directory(T30* C,T0* a1){
/*[IF*/
if(r30slash_separator(C)){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\57'))) {
r7remove_last(((T7*)a1),1);
}
}
 else if(r30backslash_separator(C)){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\134'))) {
r7remove_last(((T7*)a1),1);
}
}
 else if(r30colon_separator(C)){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\72'))) {
r7remove_last(((T7*)a1),1);
}
}
 else if((((T0*)ms30_756))==((void*)((C)->_system_name/*0*/))){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\56'))) {
r7remove_last(((T7*)a1),1);
}
r7remove_last(((T7*)a1),1);
r7extend(((T7*)a1),'\135');
}
/*FI]*/
}
/*No:SYSTEM_TOOLS.windows_system*/
/*No:SYSTEM_TOOLS.help_suffix*/
/*No:SYSTEM_TOOLS.fz_03*/
/*No:SYSTEM_TOOLS.vms_system*/
/*No:SYSTEM_TOOLS.fz_se*/
/*No:SYSTEM_TOOLS.beos_system*/


T0* r30get_environment_variable(T30* C,T0* a1){
T0* R=NULL;
T8 _p=0;
_p=r7to_external(((T7*)a1));
R=(NULL==(_p=getenv((char*)_p)))?NULL:((T0*)e2s((char*)_p));
return R;
}
/*No:SYSTEM_TOOLS.fz_sys*/
/*No:SYSTEM_TOOLS.fz_system_se*/
/*No:SYSTEM_TOOLS.fz_bin*/
/*No:SYSTEM_TOOLS.fz_loadpath_se*/
/*No:SYSTEM_TOOLS.dos_system*/
/*No:SYSTEM_TOOLS.sys_directory*/
/*No:SYSTEM_TOOLS.fz_b0*/
T0*oBC30system_list=NULL;


void r30read_loading_path_in(T30* C,T0* a1){
r30loading_path_add(C,a1,((T0*)ms30_18194),1);
r7copy((T7*)(((T0*)ms11_583550)),(C)->_sys_directory/*4*/);
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms30_8613));
r7append((T7*)(((T0*)ms11_583550)),(C)->_system_name/*0*/);
r30loading_path_add(C,a1,((T0*)ms11_583550),1);
}


void r30bad_use_exit(T30* C,T0* a1){
r28w_put_string(((T0*)ms30_46940));
r28w_put_string(a1);
r28w_put_string(((T0*)ms30_303));
r7copy((T7*)(((T0*)ms11_583550)),(C)->_sys_directory/*4*/);
r30parent_directory(C,((T0*)ms11_583550));
r30add_directory(C,((T0*)ms11_583550),((T0*)ms30_966));
r7append((T7*)(((T0*)ms11_583550)),a1);
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms11_1632));
r28w_put_string(((T0*)ms30_39440));
r28w_put_string(((T0*)ms11_583550));
r28w_put_character('\n');
exit(1);
}
/*No:SYSTEM_TOOLS.amiga_system*/


void r30append_lp_in(T30* C,T0* a1,T0* a2){
T0* _sed=NULL;
T2 _i=0;
r7append(((T7*)a1),((T0*)ms30_12180));
_i=(((T33*)a2))->_lower/*12*/;
while (!((_i)>((((T33*)a2))->_upper/*8*/))) {
r7extend(((T7*)a1),'\40');
r7extend(((T7*)a1),'\42');
r7append(((T7*)a1),r33item(((T33*)a2),_i));
r7extend(((T7*)a1),'\42');
r7extend(((T7*)a1),'\n');
_i=(_i)+(1);
}
r7append(((T7*)a1),((T0*)ms30_33825));
_sed=r30get_environment_variable(C,((T0*)ms12_18788));
/*[IF*/
if((_sed)==((void*)(NULL))){
r7append(((T7*)a1),((T0*)ms30_5301));
}
else{
r7append(((T7*)a1),((T0*)ms30_138));
r7append(((T7*)a1),_sed);
r7append(((T7*)a1),((T0*)ms30_288));
}
/*FI]*/
}


void r30add_directory(T30* C,T0* a1,T0* a2){
/*[IF*/
if(r30slash_separator(C)){
r7set_last(((T7*)a1),'\57');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\57');
}
 else if(r30backslash_separator(C)){
r7set_last(((T7*)a1),'\134');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\134');
}
 else if(r30colon_separator(C)){
r7set_last(((T7*)a1),'\72');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\72');
}
 else if((((T0*)ms30_756))==((void*)((C)->_system_name/*0*/))){
r7set_last(((T7*)a1),'\135');
r7remove_last(((T7*)a1),1);
r7set_last(((T7*)a1),'\56');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\135');
}
/*FI]*/
}


void r30make(T30* C){
T2 _i=0;
T0* _system_se_path=NULL;
_system_se_path=r30get_environment_variable(C,((T0*)ms12_18788));
/*[IF*/
if((_system_se_path)==((void*)(NULL))){
_system_se_path=r7twin((T7*)(((T0*)ms12_18788)));
r7to_upper(((T7*)_system_se_path));
_system_se_path=r30get_environment_variable(C,_system_se_path);
/*[IF*/
if((_system_se_path)==((void*)(NULL))){
r28put_string((T28*)(oBC11echo),((T0*)ms30_226958));
_system_se_path=((T0*)ms30_132226);
r28put_string((T28*)(oBC11echo),_system_se_path);
r28put_string((T28*)(oBC11echo),((T0*)ms12_166));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r7has_suffix(((T7*)_system_se_path),((T0*)ms12_13428))){
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,_system_se_path);
}
else{
r28put_string((T28*)(oBC11echo),((T0*)ms30_852461));
/*[IF*/
if(r7has(((T7*)_system_se_path),'\57')){
r28put_string((T28*)(oBC11echo),((T0*)ms30_26690));
r7copy((T7*)(((T0*)ms11_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms11_583550)),'\57');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_1071));
r7extend((T7*)(((T0*)ms11_583550)),'\57');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_13428));
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,((T0*)ms11_583550));
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
/*[IF*/
if(r7has(((T7*)_system_se_path),'\134')){
r28put_string((T28*)(oBC11echo),((T0*)ms30_38940));
r7copy((T7*)(((T0*)ms11_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms11_583550)),'\134');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_1071));
r7extend((T7*)(((T0*)ms11_583550)),'\134');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_13428));
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,((T0*)ms11_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
/*[IF*/
if(r7has(((T7*)_system_se_path),'\72')){
r28put_string((T28*)(oBC11echo),((T0*)ms30_32565));
r7copy((T7*)(((T0*)ms11_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms11_583550)),'\72');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_1071));
r7extend((T7*)(((T0*)ms11_583550)),'\72');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_13428));
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,((T0*)ms11_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
/*[IF*/
if(r7has(((T7*)_system_se_path),'\135')){
r28put_string((T28*)(oBC11echo),((T0*)ms30_20300));
r7copy((T7*)(((T0*)ms11_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms11_583550)),'\135');
r7remove_last((T7*)(((T0*)ms11_583550)),1);
r7extend((T7*)(((T0*)ms11_583550)),'\56');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_1071));
r7extend((T7*)(((T0*)ms11_583550)),'\135');
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_13428));
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,((T0*)ms11_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
r28put_string((T28*)(oBC11echo),((T0*)ms30_8302));
r7copy((T7*)(((T0*)ms11_583550)),_system_se_path);
r7append((T7*)(((T0*)ms11_583550)),((T0*)ms12_13428));
r28sfr_connect((T28*)(oBC11echo),oBC11tmp_file_read,((T0*)ms11_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
r28w_put_string(((T0*)ms30_720532));
exit(1);
}
/*FI]*/
r31read_line((T31*)(oBC11tmp_file_read));
C->_system_name=oBC32last_string;
_i=r33index_of((T33*)(oBC30system_list),(C)->_system_name/*0*/);
/*[IF*/
if((_i)>(((T33*)(oBC30system_list))->_upper/*8*/)){
r28w_put_string(((T0*)ms30_44196));
r28w_put_string(((T31*)(oBC11tmp_file_read))->_path/*4*/);
r28w_put_string(((T0*)ms30_23364));
_i=1;
while (!((_i)>(((T33*)(oBC30system_list))->_upper/*8*/))) {
r28w_put_string(r33item((T33*)(oBC30system_list),_i));
r28w_put_character('\n');
_i=(_i)+(1);
}
exit(1);
}
else{
C->_system_name=r33item((T33*)(oBC30system_list),_i);
r28put_string((T28*)(oBC11echo),((T0*)ms30_10175));
r28put_string((T28*)(oBC11echo),(C)->_system_name/*0*/);
r28put_string((T28*)(oBC11echo),((T0*)ms12_288));
}
/*FI]*/
C->_sys_directory=r7twin((T7*)(((T31*)(oBC11tmp_file_read))->_path/*4*/));
/*[IRF3.6remove_suffix*/{T7* C1=(T7*)((C)->_sys_directory/*4*/);
T0* b1=((T0*)ms12_13428);
r7remove_last(C1,(((T7*)b1))->_count/*4*/);
}/*]*/
r31disconnect((T31*)(oBC11tmp_file_read));
C->_bin_directory=r7twin((T7*)((C)->_sys_directory/*4*/));
r30parent_directory(C,(C)->_bin_directory/*8*/);
r30add_directory(C,(C)->_bin_directory/*8*/,((T0*)ms12_957));
}
/*No:SYSTEM_TOOLS.os2_system*/


T6 r30colon_separator(T30* C){
T6 R=0;
/*[IF*/
if((((T0*)ms30_12951))==((void*)((C)->_system_name/*0*/))){
R=1;
}
 else if((((T0*)ms30_1356))==((void*)((C)->_system_name/*0*/))){
R=1;
}
/*FI]*/
return R;
}


T6 r30slash_separator(T30* C){
T6 R=0;
/*[IF*/
if((((T0*)ms30_1336))==((void*)((C)->_system_name/*0*/))){
R=1;
}
 else if((((T0*)ms30_2470))==((void*)((C)->_system_name/*0*/))){
R=1;
}
/*FI]*/
return R;
}


T6 r30backslash_separator(T30* C){
T6 R=0;
/*[IF*/
if((((T0*)ms30_9331))==((void*)((C)->_system_name/*0*/))){
R=1;
}
 else if((((T0*)ms30_708))==((void*)((C)->_system_name/*0*/))){
R=1;
}
 else if((((T0*)ms30_654))==((void*)((C)->_system_name/*0*/))){
R=1;
}
/*FI]*/
return R;
}
/*No:SYSTEM_TOOLS.unix_system*/
/*No:SYSTEM_TOOLS.exit_failure_code*/
/*No:SYSTEM_TOOLS.macintosh_system*/
/*No:SYSTEM_TOOLS.bin_directory*/
/*No:SYSTEM_TOOLS.tmp_path*/
/*No:ECHO.fz_b0*/
T0*oBC1std_error=NULL;


void r28sfr_connect(T28* C,T0* a1,T0* a2){
r28put_string(C,((T0*)ms28_26523));
r28put_string(C,a2);
r28put_string(C,((T0*)ms12_288));
r31connect_to(((T31*)a1),a2);
}
/*No:ECHO.verbose*/


void r28w_put_string(T0* a1){
r29put_string((T29*)(oBC1std_error),a1);
/*[IRF3.6flush*/{T29* C1=(T29*)(oBC1std_error);
fflush(stderr);
}/*]*/
}


void r28put_string(T28* C,T0* a1){
/*[IF*/
if((C)->_verbose/*0*/){
r20put_string((T20*)(oBC1std_output),a1);
/*[IRF3.6flush*/{T20* C1=(T20*)(oBC1std_output);
fflush(stdout);
}/*]*/
}
/*FI]*/
}
/*No:ECHO.make*/


void r28w_put_character(T3 a1){
/*[IRF3.6put_character*/{T29* C1=(T29*)(oBC1std_error);
T3 b1=a1;
putc(b1,((FILE*)(stderr)));
}/*]*/
/*[IRF3.6flush*/{T29* C1=(T29*)(oBC1std_error);
fflush(stderr);
}/*]*/
}
/*No:STD_OUTPUT.flush*/


void r20put_string(T20* C,T0* a1){
T2 _i=0;
_i=1;
while (!((_i)>((((T7*)a1))->_count/*4*/))) {
/*[IRF3.6put_character*/{T20* C1=C;
T3 b1=/*(IRF4.6item*/((((T7*)a1))->_storage/*0*/)[(_i)-(1)]/*)*/;
putc(b1,((FILE*)(stdout)));
}/*]*/
_i=(_i)+(1);
}
}
/*No:STD_OUTPUT.make*/
/*No:STD_OUTPUT.put_character*/
/*No:PARSER_BUFFER.is_ready*/


T0* r27get_line(T2 a1){
T0* R=NULL;
/*[IF*/
if((a1)<=(((T38*)(oBC27text))->_upper/*8*/)){
R=/*(IRF4.6item*/(((T38*)(oBC27text))->_storage/*0*/)[a1]/*)*/;
/*[IRF3.3clear*/((((T7*)(((T7*)R))))->_count)=(0);
/*]*/
}
else{
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,80);
R=(T0*)n;
}
r38add_last((T38*)(oBC27text),R);
}
/*FI]*/
return R;
}
T0*oBC27text=NULL;
/*No:PARSER_BUFFER.path*/
/*No:PARSER_BUFFER.medium_line_size*/


void r27load_file(T27* C,T0* a1){
T2 _i=0;
r31connect_to((T31*)(oBC11tmp_file_read),a1);
/*[IF*/
if(/*(IRF4.7is_connected*/(((T31*)(oBC11tmp_file_read))->_path/*4*/)!=(NULL)/*)*/){
C->_path=a1;
/*[IF*/
if((r27get_line(0))!=((void*)(NULL))){
}
/*FI]*/
_i=1;
r31read_line_in((T31*)(oBC11tmp_file_read),r27get_line(_i));
while (!(r31end_of_input((T31*)(oBC11tmp_file_read)))) {
_i=(_i)+(1);
r31read_line_in((T31*)(oBC11tmp_file_read),r27get_line(_i));
}
/*[IF*/
if(/*(IRF4.7empty*/(((T7*)(/*(IRF4.6item*/(((T38*)(oBC27text))->_storage/*0*/)[_i]/*)*/))->_count/*4*/)==(0)/*)*/){
C->_count=(_i)-(1);
}
else{
C->_count=_i;
}
/*FI]*/
r31disconnect((T31*)(oBC11tmp_file_read));
}
else{
C->_path=NULL;
}
/*FI]*/
}
/*No:PARSER_BUFFER.count*/
/*No:PARSER_BUFFER.make*/
/*No:PARSER_BUFFER.unset_is_ready*/


void r31read_line(T31* C){
/*[IRF3.3clear*/((((T7*)((T7*)(oBC32last_string))))->_count)=(0);
/*]*/
r31read_line_in(C,oBC32last_string);
}


void r31read_line_in(T31* C,T0* a1){
T2 _mem=0;
r31read_character(C);
_mem=(C)->_memory/*12*/;
while (!((((_mem)==((EOF)))||((_mem)==(((unsigned char)'\n'))))||((_mem)==(((unsigned char)'\15'))))) {
r7extend(((T7*)a1),((T3)(_mem)));
_mem=getc((FILE*)((C)->_input_stream/*8*/));
}
C->_memory=_mem;
/*[IF*/
if((_mem)==(((unsigned char)'\15'))){
r31read_character(C);
/*[IF*/
if((/*(IRF4.6last_character*/((T3)((C)->_memory/*12*/))/*)*/)!=('\n')){
/*[IRF3.3unread_character*/((((T31*)(C)))->_push_back_flag)=(1);
/*]*/
}
/*FI]*/
}
/*FI]*/
}
/*No:STD_FILE_READ.path*/


void r31read_word(T31* C){
r31skip_separators(C);
/*[IRF3.3clear*/((((T7*)((T7*)(oBC32last_string))))->_count)=(0);
/*]*/
while (!((r31end_of_input(C))||(r3is_separator(/*(IRF4.6last_character*/((T3)((C)->_memory/*12*/))/*)*/)))) {
r7extend((T7*)(oBC32last_string),/*(IRF4.6last_character*/((T3)((C)->_memory/*12*/))/*)*/);
r31read_character(C);
}
}


void r31skip_separators(T31* C){
while (!((r31end_of_input(C))||(!(r3is_separator(/*(IRF4.6last_character*/((T3)((C)->_memory/*12*/))/*)*/))))) {
r31read_character(C);
}
}
/*No:STD_FILE_READ.memory*/
/*No:STD_FILE_READ.unread_character*/
/*No:STD_FILE_READ.last_character*/
/*No:STD_FILE_READ.input_stream*/
T0*oBC32last_string=NULL;


T6 r31end_of_input(T31* C){
T6 R=0;
/*[IF*/
if(!((C)->_push_back_flag/*0*/)){
R=((C)->_memory/*12*/)==((EOF));
}
/*FI]*/
return R;
}


void r31connect_to(T31* C,T0* a1){
T8 _p=0;
_p=r7to_external(((T7*)a1));
C->_input_stream=fopen((char*)_p,"r");
/*[IF*/
if((NULL!=(C)->_input_stream/*8*/)){
C->_push_back_flag=0;
C->_memory=((unsigned char)'\40');
C->_path=a1;
}
/*FI]*/
}
/*No:STD_FILE_READ.is_connected*/


void r31disconnect(T31* C){
fclose((C)->_input_stream/*8*/);
C->_path=NULL;
}
/*No:STD_FILE_READ.push_back_flag*/
/*No:STD_FILE_READ.make*/


void r31read_character(T31* C){
/*[IF*/
if((C)->_push_back_flag/*0*/){
C->_push_back_flag=0;
}
else{
C->_memory=getc((FILE*)((C)->_input_stream/*8*/));
}
/*FI]*/
}
T10*eiffel_root_object=NULL;
int se_argc;
char**se_argv;


void initialize_eiffel_runtime(int argc,char*argv[]){
se_argc=argc;
se_argv=argv;
#ifdef SIGINT
signal(SIGINT,sigrsp);
#endif
#ifdef SIGQUIT
signal(SIGQUIT,sigrsp);
#endif
#ifdef SIGTERM
signal(SIGTERM,sigrsp);
#endif
#ifdef SIGBREAK
signal(SIGBREAK,sigrsp);
#endif
#ifdef SIGKILL
signal(SIGKILL,sigrsp);
#endif
se_msi1();
oBC32last_string=NULL;
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,256);
oBC32last_string=(T0*)n;
}
/*PCO*/
oBC11tmp_file_read=NULL;
{T31*n=malloc(sizeof(*n));
*n=M31;
/*[IRF3.1make*//*]*/
oBC11tmp_file_read=(T0*)n;
}
/*PCO*/
oBC27text=NULL;
{T38*n=malloc(sizeof(*n));
*n=M38;
r38with_capacity(n,4096);
oBC27text=(T0*)n;
}
/*PCO*/
oBC1std_output=NULL;
{T20*n=malloc(1);
/*[IRF3.1make*//*]*/
oBC1std_output=(T0*)n;
}
/*PCO*/
oBC1std_error=NULL;
{T29*n=malloc(1);
/*[IRF3.1make*//*]*/
oBC1std_error=(T0*)n;
}
/*PCO*/
oBC11echo=NULL;
{T28*n=malloc(sizeof(*n));
*n=M28;
/*[IRF3.1make*//*]*/
oBC11echo=(T0*)n;
}
/*PCO*/
oBC30system_list=NULL;
oBC30system_list=se_ma33(8,
((T0*)ms30_2470),
((T0*)ms30_1356),
((T0*)ms30_708),
((T0*)ms30_12951),
((T0*)ms30_654),
((T0*)ms30_1336),
((T0*)ms30_756),
((T0*)ms30_9331));
/*PCO*/
oBC11small_eiffel=NULL;
{T26*n=malloc(1);
/*[IRF3.1make*//*]*/
oBC11small_eiffel=(T0*)n;
}
/*PCO*/
oBC26tmp_tail=NULL;
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,64);
oBC26tmp_tail=(T0*)n;
}
/*PCO*/
oBC26parser_buffer_path=NULL;
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,256);
oBC26parser_buffer_path=(T0*)n;
}
/*PCO*/
oBC11parser_buffer=NULL;
{T27*n=malloc(sizeof(*n));
*n=M27;
/*[IRF3.1make*//*]*/
oBC11parser_buffer=(T0*)n;
}
/*PCO*/
eiffel_root_object=malloc(1);
}
int main(int argc,char*argv[]){
initialize_eiffel_runtime(argc,argv);
{T10*n=eiffel_root_object;
r10make(n);
}
exit(0);
}
T7*ms11_300;
T7*ms11_583550;
T7*ms30_303;
T7*ms30_966;
T7*ms12_166;
T7*ms30_756;
T7*ms30_12951;
T7*ms30_1356;
T7*ms30_1336;
T7*ms30_226958;
T7*ms30_33825;
T7*ms30_32565;
T7*ms30_10175;
T7*ms30_25809;
T7*ms10_7302;
T7*ms30_720532;
T7*ms11_1632;
T7*ms30_654;
T7*ms12_957;
T7*ms30_8302;
T7*ms26_13095;
T7*ms26_48577;
T7*ms28_26523;
T7*ms30_2470;
T7*ms30_46940;
T7*ms30_39440;
T7*ms30_83580;
T7*ms30_12180;
T7*ms30_10070;
T7*ms30_26690;
T7*ms30_38940;
T7*ms30_20300;
T7*ms26_354;
T7*ms30_18194;
T7*ms30_23364;
T7*ms30_44196;
T7*ms30_852461;
T7*ms30_138;
T7*ms30_288;
T7*ms12_288;
T7*ms30_708;
T7*ms12_18788;
T7*ms12_13428;
T7*ms26_5280;
T7*ms26_53690;
T7*ms26_24360;
T7*ms30_8613;
T7*ms30_132226;
T7*ms26_55872;
T7*ms26_118;
T7*ms30_5301;
T7*ms12_1071;
T7*ms30_9331;
T7*ms10_7436;


void se_msi1(void){
ms11_300=se_ms(2,".e");
ms11_583550=se_ms(110,"..............................................................................................................");
ms30_303=se_ms(3,"\'.\n");
ms30_966=se_ms(3,"man");
ms12_166=se_ms(2,"\".");
ms30_756=se_ms(3,"VMS");
ms30_12951=se_ms(9,"Macintosh");
ms30_1356=se_ms(4,"BeOS");
ms30_1336=se_ms(4,"UNIX");
ms30_226958=se_ms(74,"System environment variable \"SmallEiffel\" not set.\nTrying default value: \"");
ms30_33825=se_ms(41,"]\nEnvironment Variable \"SmallEiffel\" is:\n");
ms30_32565=se_ms(39,"\"Hope this is a Macintosh like system.\n");
ms30_10175=se_ms(11,"System is \"");
ms30_25809=se_ms(21,"Append contents of  \"");
ms10_7302=se_ms(6,"finder");
ms30_720532=se_ms(244,"Unable to find file \"system.se\".\nPlease, set the environment variable \"SmallEiffel\" with the appropriate absolute path to this file.\nExample for Unix: \"/usr/lib/SmallEiffel/sys/system.se\"\nExample for DOS/Windows: \"C:\\SmallEiffel\\sys\\system.se\"\n");
ms11_1632=se_ms(4,".txt");
ms30_654=se_ms(3,"OS2");
ms12_957=se_ms(3,"bin");
ms30_8302=se_ms(14,"\"Last chance.\n");
ms26_13095=se_ms(9,"rename.se");
ms26_48577=se_ms(31,"Unable to find file for class \"");
ms28_26523=se_ms(21,"Trying to read file \"");
ms30_2470=se_ms(5,"Amiga");
ms30_46940=se_ms(20,"Bad use of command `");
ms30_39440=se_ms(29,"See docmentation in file:\n   ");
ms30_83580=se_ms(70,"Eiffel source loading path too long or infinite loadpath.se includes.\n");
ms30_12180=se_ms(20,"\nLoading path is:\n[\n");
ms30_10070=se_ms(19,"\" to loading path.\n");
ms30_26690=se_ms(34,"\"Hope this is a Unix like system.\n");
ms30_38940=se_ms(44,"\"Hope this is a DOS or Windows like system.\n");
ms30_20300=se_ms(28,"\"Hope this is a VMS system.\n");
ms26_354=se_ms(3,"\". ");
ms30_18194=se_ms(11,"loadpath.se");
ms30_23364=se_ms(36,"\".\nCurrently handled system names :\n");
ms30_44196=se_ms(29,"Unknown system name in file\n\"");
ms30_852461=se_ms(269,"You should update the value of the \"SmallEiffel\" system environment variable.\nSince release -0.79, the \"SmallEiffel\" system environment variable must be the absolute path of the \"system.se\" file.\nFor example \"/usr/lib/SmallEiffel/sys/system.se\" under Unix like system.\n");
ms30_138=se_ms(2," \"");
ms30_288=se_ms(3,"\".\n");
ms12_288=se_ms(3,"\".\n");
ms30_708=se_ms(3,"DOS");
ms12_18788=se_ms(11,"SmallEiffel");
ms12_13428=se_ms(9,"system.se");
ms26_5280=se_ms(8,"\" and \n\"");
ms26_53690=se_ms(35,"Bad \"rename.se\" file.\nCannot open \"");
ms26_24360=se_ms(20,"Multiple entry for \"");
ms30_8613=se_ms(9,"loadpath.");
ms30_132226=se_ms(34,"/usr/lib/SmallEiffel/sys/system.se");
ms26_55872=se_ms(36,"\" in \"rename.se\" files.\nClash for \n\"");
ms26_118=se_ms(2,".\n");
se_msi2();
}


void se_msi2(void){
ms30_5301=se_ms(9,"not set.\n");
ms12_1071=se_ms(3,"sys");
ms30_9331=se_ms(7,"Windows");
ms10_7436=se_ms(13,": not found.\n");
}


void*se_ma33(int argc,...){
T33*m;
va_list pa;
T0**s;
m=malloc(sizeof(*m));
*m=M33;
if(argc){
s=malloc(argc*sizeof(*s));
m->_storage=s;
m->_capacity=argc;
m->_lower=1;
m->_upper=argc;
va_start(pa,argc);
while(argc--){
*(s++)=((void*)(va_arg(pa,char*)));
}
va_end(pa);
}
else{
m->_storage=NULL;
m->_capacity=0;
m->_lower=1;
m->_upper=0;
}
return m;}

