/*
-- 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 "pretty.h"
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].Default_size*/


void r361with_capacity(T361* C,T2 a1){
T2 _i=0;
{T23*n=malloc(sizeof(*n));
*n=M23;
r23make(n,a1);
C->_keys=(T0*)n;
}
{T362*n=malloc(sizeof(*n));
*n=M362;
r362make(n,a1);
C->_store=(T0*)n;
}
C->_modulus=(3)*(a1);
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,(C)->_modulus/*8*/);
C->_buckets=(T0*)n;
}
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,a1);
C->_chain=(T0*)n;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
C->_first_free_slot=_i;
while (!((_i)<(0))) {
/*[IRF3.5put*/(((T45*)((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 r361has(T361* C,T0* a1){
T6 R=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
}
/*FI]*/
R=((C)->_cache_keys_idx/*24*/)>=(0);
return R;
}
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].cache_keys_idx*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].cache_user_idx*/


void r361expand(T361* C){
T2 _i=0;
_i=/*(IRF4.6count*/(((T23*)((C)->_keys/*0*/))->_upper/*8*/)+(1)/*)*/;
r361resize_buckets(C,((_i)*(2))*(3));
while (!((_i)==(0))) {
r45add_last((T45*)((C)->_chain/*16*/),(C)->_first_free_slot/*20*/);
C->_first_free_slot=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
_i=(_i)-(1);
}
r23resize((T23*)((C)->_keys/*0*/),/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
r362resize((T362*)((C)->_store/*4*/),/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
}


void r361resize_buckets(T361* C,T2 a1){
T2 _i=0;
T2 _h=0;
C->_modulus=a1;
r45resize((T45*)((C)->_buckets/*12*/),a1);
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
while (!(((C)->_first_free_slot/*20*/)<(0))) {
_i=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(-(2));
/*]*/
C->_first_free_slot=_i;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
while (!((_i)<(0))) {
/*[IF*/
if((/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]/*)*/)==(-(2))){
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=((C)->_first_free_slot/*20*/);
/*]*/
C->_first_free_slot=_i;
}
else{
_h=(r7hash_code((T7*)(/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[_i]/*)*/)))%(a1);
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=(_i);
/*]*/
}
/*FI]*/
_i=(_i)-(1);
}
}
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].buckets_keys_ratio*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].first_free_slot*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].modulus*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].count*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].chain*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].make*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].store*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].buckets*/
/*No:DICTIONARY[TYPE_REF_TO_EXP,STRING].keys*/


void r361put(T361* C,T0* a1,T0* a2){
T2 _h=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T23*)((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*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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)){
r361expand(C);
_h=(r7hash_code(((T7*)a2)))%((C)->_modulus/*8*/);
}
/*FI]*/
/*[IRF3.5put*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(a2);
/*]*/
/*[IRF3.5put*/(((T362*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_first_free_slot/*20*/]=(a1);
/*]*/
C->_cache_keys_idx=(C)->_first_free_slot/*20*/;
C->_first_free_slot=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=((C)->_cache_keys_idx/*24*/);
/*]*/
C->_count=((C)->_count/*32*/)+(1);
}
else{
/*[IRF3.5put*/(((T362*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
else{
/*[IRF3.5put*/(((T362*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
/*No:DICTIONARY[MANIFEST_STRING,STRING].Default_size*/


void r357with_capacity(T357* C,T2 a1){
T2 _i=0;
{T23*n=malloc(sizeof(*n));
*n=M23;
r23make(n,a1);
C->_keys=(T0*)n;
}
{T192*n=malloc(sizeof(*n));
*n=M192;
r192make(n,a1);
C->_store=(T0*)n;
}
C->_modulus=(3)*(a1);
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,(C)->_modulus/*8*/);
C->_buckets=(T0*)n;
}
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,a1);
C->_chain=(T0*)n;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
C->_first_free_slot=_i;
while (!((_i)<(0))) {
/*[IRF3.5put*/(((T45*)((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 r357has(T357* C,T0* a1){
T6 R=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
}
/*FI]*/
R=((C)->_cache_keys_idx/*24*/)>=(0);
return R;
}
/*No:DICTIONARY[MANIFEST_STRING,STRING].cache_keys_idx*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].cache_user_idx*/


void r357expand(T357* C){
T2 _i=0;
_i=/*(IRF4.6count*/(((T23*)((C)->_keys/*0*/))->_upper/*8*/)+(1)/*)*/;
r357resize_buckets(C,((_i)*(2))*(3));
while (!((_i)==(0))) {
r45add_last((T45*)((C)->_chain/*16*/),(C)->_first_free_slot/*20*/);
C->_first_free_slot=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
_i=(_i)-(1);
}
r23resize((T23*)((C)->_keys/*0*/),/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
r192resize((T192*)((C)->_store/*4*/),/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
}


void r357resize_buckets(T357* C,T2 a1){
T2 _i=0;
T2 _h=0;
C->_modulus=a1;
r45resize((T45*)((C)->_buckets/*12*/),a1);
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
while (!(((C)->_first_free_slot/*20*/)<(0))) {
_i=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(-(2));
/*]*/
C->_first_free_slot=_i;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
while (!((_i)<(0))) {
/*[IF*/
if((/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]/*)*/)==(-(2))){
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=((C)->_first_free_slot/*20*/);
/*]*/
C->_first_free_slot=_i;
}
else{
_h=(r7hash_code((T7*)(/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[_i]/*)*/)))%(a1);
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=(_i);
/*]*/
}
/*FI]*/
_i=(_i)-(1);
}
}
/*No:DICTIONARY[MANIFEST_STRING,STRING].buckets_keys_ratio*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].first_free_slot*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].modulus*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].count*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].chain*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].make*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].store*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].buckets*/
/*No:DICTIONARY[MANIFEST_STRING,STRING].keys*/


void r357put(T357* C,T0* a1,T0* a2){
T2 _h=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T23*)((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*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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)){
r357expand(C);
_h=(r7hash_code(((T7*)a2)))%((C)->_modulus/*8*/);
}
/*FI]*/
/*[IRF3.5put*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(a2);
/*]*/
/*[IRF3.5put*/(((T192*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_first_free_slot/*20*/]=(a1);
/*]*/
C->_cache_keys_idx=(C)->_first_free_slot/*20*/;
C->_first_free_slot=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=((C)->_cache_keys_idx/*24*/);
/*]*/
C->_count=((C)->_count/*32*/)+(1);
}
else{
/*[IRF3.5put*/(((T192*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
else{
/*[IRF3.5put*/(((T192*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
/*No:MEMO[COMMENT].set_item*/
/*No:MEMO[COMMENT].item*/
/*No:MEMO[COMMENT].clear*/
/*No:DICTIONARY[TYPE,INTEGER].Default_size*/


void r351with_capacity(T351* C,T2 a1){
T2 _i=0;
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,a1);
C->_keys=(T0*)n;
}
{T352*n=malloc(sizeof(*n));
*n=M352;
r352make(n,a1);
C->_store=(T0*)n;
}
C->_modulus=(3)*(a1);
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,(C)->_modulus/*8*/);
C->_buckets=(T0*)n;
}
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,a1);
C->_chain=(T0*)n;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
C->_first_free_slot=_i;
while (!((_i)<(0))) {
/*[IRF3.5put*/(((T45*)((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 r351has(T351* C,T2 a1){
T6 R=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!((a1)==(/*(IRF4.6item*/(((T45*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[(r2hash_code(a1))%((C)->_modulus/*8*/)]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||((a1)==(/*(IRF4.6item*/(((T45*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
}
/*FI]*/
R=((C)->_cache_keys_idx/*24*/)>=(0);
return R;
}
/*No:DICTIONARY[TYPE,INTEGER].cache_keys_idx*/
/*No:DICTIONARY[TYPE,INTEGER].cache_user_idx*/


void r351expand(T351* C){
T2 _i=0;
_i=/*(IRF4.6count*/(((T45*)((C)->_keys/*0*/))->_upper/*8*/)+(1)/*)*/;
r351resize_buckets(C,((_i)*(2))*(3));
while (!((_i)==(0))) {
r45add_last((T45*)((C)->_chain/*16*/),(C)->_first_free_slot/*20*/);
C->_first_free_slot=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
_i=(_i)-(1);
}
r45resize((T45*)((C)->_keys/*0*/),/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
X352resize((C)->_store/*4*/,/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
}


void r351resize_buckets(T351* C,T2 a1){
T2 _i=0;
T2 _h=0;
C->_modulus=a1;
r45resize((T45*)((C)->_buckets/*12*/),a1);
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
while (!(((C)->_first_free_slot/*20*/)<(0))) {
_i=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(-(2));
/*]*/
C->_first_free_slot=_i;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
while (!((_i)<(0))) {
/*[IF*/
if((/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]/*)*/)==(-(2))){
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=((C)->_first_free_slot/*20*/);
/*]*/
C->_first_free_slot=_i;
}
else{
_h=(r2hash_code(/*(IRF4.6item*/(((T45*)((C)->_keys/*0*/))->_storage/*0*/)[_i]/*)*/))%(a1);
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[_i]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=(_i);
/*]*/
}
/*FI]*/
_i=(_i)-(1);
}
}
/*No:DICTIONARY[TYPE,INTEGER].buckets_keys_ratio*/
/*No:DICTIONARY[TYPE,INTEGER].first_free_slot*/
/*No:DICTIONARY[TYPE,INTEGER].modulus*/
/*No:DICTIONARY[TYPE,INTEGER].count*/
/*No:DICTIONARY[TYPE,INTEGER].chain*/
/*No:DICTIONARY[TYPE,INTEGER].make*/
/*No:DICTIONARY[TYPE,INTEGER].store*/
/*No:DICTIONARY[TYPE,INTEGER].buckets*/
/*No:DICTIONARY[TYPE,INTEGER].keys*/


void r351put(T351* C,T0* a1,T2 a2){
T2 _h=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!((a2)==(/*(IRF4.6item*/(((T45*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
_h=(r2hash_code(a2))%((C)->_modulus/*8*/);
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||((a2)==(/*(IRF4.6item*/(((T45*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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)){
r351expand(C);
_h=(r2hash_code(a2))%((C)->_modulus/*8*/);
}
/*FI]*/
/*[IRF3.5put*/(((T45*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(a2);
/*]*/
/*X352put*//*[IRF3.5put*/(((T327*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_first_free_slot/*20*/]=(a1);
/*]*/
C->_cache_keys_idx=(C)->_first_free_slot/*20*/;
C->_first_free_slot=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=((C)->_cache_keys_idx/*24*/);
/*]*/
C->_count=((C)->_count/*32*/)+(1);
}
else{
/*X352put*//*[IRF3.5put*/(((T327*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
else{
/*X352put*//*[IRF3.5put*/(((T327*)((C)->_store/*4*/))->_storage/*4*/)[(C)->_cache_keys_idx/*24*/]=(a1);
/*]*/
}
/*FI]*/
}
/*No:DICTIONARY[RUN_FEATURE,STRING].Default_size*/


void r315with_capacity(T315* C,T2 a1){
T2 _i=0;
{T23*n=malloc(sizeof(*n));
*n=M23;
r23make(n,a1);
C->_keys=(T0*)n;
}
{T316*n=malloc(sizeof(*n));
*n=M316;
r316make(n,a1);
C->_store=(T0*)n;
}
C->_modulus=(3)*(a1);
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,(C)->_modulus/*8*/);
C->_buckets=(T0*)n;
}
/*[IRF3.6set_all_with*/{T45* C1=(T45*)((C)->_buckets/*12*/);
T2 b1=-(1);
r46set_all_with((C1)->_storage/*0*/,b1,(C1)->_upper/*8*/);
}/*]*/
{T45*n=malloc(sizeof(*n));
*n=M45;
r45make(n,a1);
C->_chain=(T0*)n;
}
_i=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
C->_first_free_slot=_i;
while (!((_i)<(0))) {
/*[IRF3.5put*/(((T45*)((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 r315has(T315* C,T0* a1){
T6 R=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a1),/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))){
C->_cache_user_idx=-(1);
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/;
}
}
/*FI]*/
R=((C)->_cache_keys_idx/*24*/)>=(0);
return R;
}
/*No:DICTIONARY[RUN_FEATURE,STRING].cache_user_idx*/
/*No:DICTIONARY[RUN_FEATURE,STRING].cache_keys_idx*/


void r315expand(T315* C){
T2 _i=0;
_i=/*(IRF4.6count*/(((T23*)((C)->_keys/*0*/))->_upper/*8*/)+(1)/*)*/;
r315resize_buckets(C,((_i)*(2))*(3));
while (!((_i)==(0))) {
r45add_last((T45*)((C)->_chain/*16*/),(C)->_first_free_slot/*20*/);
C->_first_free_slot=((T45*)((C)->_chain/*16*/))->_upper/*8*/;
_i=(_i)-(1);
}
r23resize((T23*)((C)->_keys/*0*/),/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
X316resize((C)->_store/*4*/,/*(IRF4.6count*/(((T45*)((C)->_chain/*16*/))->_upper/*8*/)+(1)/*)*/);
}


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


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


void r315put(T315* C,T0* a1,T0* a2){
T2 _h=0;
/*[IF*/
if((((C)->_cache_keys_idx/*24*/)<(0))||(!(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T23*)((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*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/;
while (!((((C)->_cache_keys_idx/*24*/)<(0))||(r7is_equal(((T7*)a2),/*(IRF4.6item*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]/*)*/)))) {
C->_cache_keys_idx=/*(IRF4.6item*/(((T45*)((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)){
r315expand(C);
_h=(r7hash_code(((T7*)a2)))%((C)->_modulus/*8*/);
}
/*FI]*/
/*[IRF3.5put*/(((T23*)((C)->_keys/*0*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]=(a2);
/*]*/
/*X316put*//*[IRF3.6put*/{T316* C1=(T316*)((C)->_store/*4*/);
T0* b1=a1;
T2 b2=(C)->_first_free_slot/*20*/;
((C1)->_storage/*4*/)[b2]=(b1);
}/*]*/
C->_cache_keys_idx=(C)->_first_free_slot/*20*/;
C->_first_free_slot=/*(IRF4.6item*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_first_free_slot/*20*/]/*)*/;
/*[IRF3.5put*/(((T45*)((C)->_chain/*16*/))->_storage/*0*/)[(C)->_cache_keys_idx/*24*/]=(/*(IRF4.6item*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]/*)*/);
/*]*/
/*[IRF3.5put*/(((T45*)((C)->_buckets/*12*/))->_storage/*0*/)[_h]=((C)->_cache_keys_idx/*24*/);
/*]*/
C->_count=((C)->_count/*32*/)+(1);
}
else{
/*X316put*//*[IRF3.6put*/{T316* C1=(T316*)((C)->_store/*4*/);
T0* b1=a1;
T2 b2=(C)->_cache_keys_idx/*24*/;
((C1)->_storage/*4*/)[b2]=(b1);
}/*]*/
}
/*FI]*/
}
else{
/*X316put*//*[IRF3.6put*/{T316* C1=(T316*)((C)->_store/*4*/);
T0* b1=a1;
T2 b2=(C)->_cache_keys_idx/*24*/;
((C1)->_storage/*4*/)[b2]=(b1);
}/*]*/
}
/*FI]*/
}
/*No:BIT_CONSTANT.hexa*/
/*No:BIT_CONSTANT.start_position*/


T0* r156add_comment(T156* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r32count(((T32*)((((T64*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T214*n=malloc(sizeof(*n));
*n=M214;
r214make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}


T2 r156to_integer(T156* C){
T2 R=0;
r156error((C)->_start_position/*4*/,((T0*)ms12_45846));
return R;
}


void r156print_as_target(T156* C){
r310put_character((T310*)(oBC11fmt),'\50');
r156pretty_print(C);
r310put_character((T310*)(oBC11fmt),'\51');
r310put_character((T310*)(oBC11fmt),'\56');
}


void r156bracketed_pretty_print(T156* C){
r310put_string((T310*)(oBC11fmt),(C)->_value/*8*/);
r310put_character((T310*)(oBC11fmt),'B');
}
T0*oBC11eh=NULL;


T0* r156to_runnable(T156* C,T0* a1){
T0* R=NULL;
T0* _ic=NULL;
/*[IF*/
if(((C)->_result_type/*12*/)==((void*)(NULL))){
{T158*n=malloc(sizeof(*n));
*n=M158;
r158make(n,((T7*)((C)->_value/*8*/))->_count/*4*/,(C)->_start_position/*4*/);
_ic=(T0*)n;
}
{T260*n=malloc(sizeof(*n));
*n=M260;
r260make(n,(C)->_start_position/*4*/,_ic);
C->_result_type=(T0*)n;
}
r313set_at_run_time((T313*)(r260run_class((T260*)((C)->_result_type/*12*/))));
C->_hexa=r7twin((T7*)((C)->_value/*8*/));
r7to_hexadecimal((T7*)((C)->_hexa/*16*/));
}
/*FI]*/
R=(T0*)C;
return R;
}
T0*oBC11fmt=NULL;
/*No:BIT_CONSTANT.fz_iinaiv*/
/*No:BIT_CONSTANT.result_type*/


void r156error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
/*No:BIT_CONSTANT.precedence*/


void r156make(T156* C,T0* a1,T0* a2){
C->_start_position=a1;
C->_value=a2;
}
/*No:BIT_CONSTANT.is_current*/


void r156pretty_print(T156* C){
r310put_string((T310*)(oBC11fmt),(C)->_value/*8*/);
r310put_character((T310*)(oBC11fmt),'B');
}
/*No:BIT_CONSTANT.is_void*/
/*No:BIT_CONSTANT.value*/
/*No:BIT_CONSTANT.atomic_precedence*/
/*No:TAG_NAME.start_position*/
/*No:TAG_NAME.to_string*/
T0*oBC11unique_string=NULL;


void r90make(T90* C,T0* a1,T0* a2){
C->_to_string=r66item(a1);
C->_start_position=a2;
}
/*No:INFIX_NAME.is_frozen*/


void r121declaration_pretty_print(T121* C){
r310keyword((T310*)(oBC11fmt),((T0*)ms12_2785));
r310put_character((T310*)(oBC11fmt),'\42');
r310put_string((T310*)(oBC11fmt),(C)->_to_string/*4*/);
r310put_character((T310*)(oBC11fmt),'\42');
}


void r121undefine_in(T121* C,T0* a1){
/*[IF*/
/*AF*//*AE*/
/*FI]*/
}


T0* r121origin_base_class(T121* C){
T0* R=NULL;
T0* _sp=NULL;
_sp=(C)->_start_position/*8*/;
/*[IF*/
if((_sp)!=((void*)(NULL))){
R=r39base_class(((T39*)_sp));
}
/*FI]*/
return R;
}
/*No:INFIX_NAME.start_position*/
/*No:INFIX_NAME.to_string*/


void r121declaration_in(T121* C,T0* a1){
r7append(((T7*)a1),((T0*)ms12_2785));
r7extend(((T7*)a1),'\40');
r7extend(((T7*)a1),'\42');
r7append(((T7*)a1),(C)->_to_string/*4*/);
r7extend(((T7*)a1),'\42');
}
/*No:INFIX_NAME.to_key*/


void r121error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}


void r121make(T121* C,T0* a1,T0* a2){
C->_to_string=r66item(a1);
C->_start_position=a2;
C->_to_key=r66for_infix((C)->_to_string/*4*/);
}
/*No:INFIX_NAME.pretty_print*/
/*No:INFIX_NAME.fz_infix*/
/*No:E_ENSURE.start_position*/
/*No:E_ENSURE.header_comment*/
/*No:E_ENSURE.is_ensure_then*/
/*No:E_ENSURE.current_type*/
/*No:E_ENSURE.set_ensure_then*/


void r199add_into(T199* C,T0* a1){
T0* _a=NULL;
T2 _i=0;
/*[IF*/
if(((C)->_list/*8*/)!=((void*)(NULL))){
_i=1;
while (!((_i)>(((T88*)((C)->_list/*8*/))->_upper/*8*/))) {
_a=r88item((T88*)((C)->_list/*8*/),_i);
/*[IF*/
if(!(r88fast_has(((T88*)a1),_a))){
r88add_last(((T88*)a1),_a);
}
/*FI]*/
_i=(_i)+(1);
}
}
/*FI]*/
}
/*No:E_ENSURE.run_feature*/


void r199make(T199* C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_header_comment=a2;
C->_list=a3;
}


void r199pretty_print(T199* C){
T2 _i=0;
r310indent((T310*)(oBC11fmt));
r310keyword((T310*)(oBC11fmt),r199name(C));
r310level_incr((T310*)(oBC11fmt));
/*[IF*/
if(((C)->_header_comment/*4*/)!=((void*)(NULL))){
r64pretty_print((T64*)((C)->_header_comment/*4*/));
}
else{
r310indent((T310*)(oBC11fmt));
}
/*FI]*/
/*[IF*/
if(((C)->_list/*8*/)!=((void*)(NULL))){
_i=1;
while (!((_i)>(((T88*)((C)->_list/*8*/))->_upper/*8*/))) {
/*[IF*/
if(r6_px_and(r310zen_mode((T310*)(oBC11fmt)),(_i)==(((T88*)((C)->_list/*8*/))->_upper/*8*/))){
/*[IRF3.3set_semi_colon_flag*/((((T310*)((T310*)(oBC11fmt))))->_semi_colon_flag)=(0);
/*]*/
}
else{
/*[IRF3.3set_semi_colon_flag*/((((T310*)((T310*)(oBC11fmt))))->_semi_colon_flag)=(1);
/*]*/
}
/*FI]*/
r310indent((T310*)(oBC11fmt));
r85pretty_print((T85*)(r88item((T88*)((C)->_list/*8*/),_i)));
_i=(_i)+(1);
}
}
/*FI]*/
r310level_decr((T310*)(oBC11fmt));
r310indent((T310*)(oBC11fmt));
}


void r199make_runnable(T199* C,T0* a1,T0* a2,T0* a3){
C->_list=a1;
C->_current_type=a2;
C->_run_feature=a3;
}


T0* r199name(T199* C){
T0* R=NULL;
/*[IF*/
if((C)->_is_ensure_then/*20*/){
R=((T0*)ms199_19602);
}
else{
R=((T0*)ms199_7068);
}
/*FI]*/
return R;
}
/*No:E_ENSURE.set_header_comment*/
/*No:E_ENSURE.list*/


T0* r66for_infix(T0* a1){
T0* R=NULL;
R=r66key_for_prefix_infix(((T0*)ms66_1728),a1);
return R;
}
/*No:UNIQUE_STRING.us_fclose*/
/*No:UNIQUE_STRING.us_shift_left*/
/*No:UNIQUE_STRING.us_put_1*/
/*No:UNIQUE_STRING.us_maximum_character_code*/
T0*oBC66memory=NULL;
/*No:UNIQUE_STRING.us_real_ref*/
/*No:UNIQUE_STRING.us_die_with_code*/
/*No:UNIQUE_STRING.us_is_equal*/
/*No:UNIQUE_STRING.us_boolean_ref*/
/*No:UNIQUE_STRING.us_item*/
/*No:UNIQUE_STRING.us_integer*/
/*No:UNIQUE_STRING.us_with_capacity*/
/*No:UNIQUE_STRING.us_minimum_integer*/
/*No:UNIQUE_STRING.us_double*/
/*No:UNIQUE_STRING.us_stdin*/
/*No:UNIQUE_STRING.us_maximum_double*/
/*No:UNIQUE_STRING.us_realloc*/
/*No:UNIQUE_STRING.us_se_argc*/
/*No:UNIQUE_STRING.us_se_system*/
/*No:UNIQUE_STRING.us_general*/
/*No:UNIQUE_STRING.us_native_array*/
/*No:UNIQUE_STRING.us_standard_is_equal*/
/*No:UNIQUE_STRING.us_std_neq*/
/*No:UNIQUE_STRING.us_integer_ref*/
/*No:UNIQUE_STRING.us_and_then*/


T0* r66read(T0* a1){
T0* R=NULL;
R=r53at((T53*)(oBC66memory),a1);
return R;
}
/*No:UNIQUE_STRING.us_double_floor*/
/*No:UNIQUE_STRING.us_pointer*/
/*No:UNIQUE_STRING.make*/
/*No:UNIQUE_STRING.us_implies*/
/*No:UNIQUE_STRING.us_platform*/
/*No:UNIQUE_STRING.us_std_output*/
/*No:UNIQUE_STRING.us_memory*/
/*No:UNIQUE_STRING.us_compile_to_jvm*/
/*No:UNIQUE_STRING.us_precursor*/
/*No:UNIQUE_STRING.us_floor*/
/*No:UNIQUE_STRING.us_real_bits*/
/*No:UNIQUE_STRING.us_std_file_read*/
/*No:UNIQUE_STRING.us_standard_copy*/
/*No:UNIQUE_STRING.us_twin*/
/*No:UNIQUE_STRING.us_se_string2double*/
/*No:UNIQUE_STRING.us_minimum_character_code*/


T0* r66item(T0* a1){
T0* R=NULL;
r66initialize();
/*[IF*/
if(r53has((T53*)(oBC66memory),a1)){
R=r66read(a1);
}
else{
R=r7twin(((T7*)a1));
/*[IRF3.6add1*/{T0* b1=R;
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
}
/*FI]*/
return R;
}
/*No:UNIQUE_STRING.us_from_pointer*/
/*No:UNIQUE_STRING.us_minimum_double*/
/*No:UNIQUE_STRING.us_std_error*/
/*No:UNIQUE_STRING.us_pointer_ref*/
/*No:UNIQUE_STRING.us_sfr_open*/
/*No:UNIQUE_STRING.us_sfw_open*/
/*No:UNIQUE_STRING.us_character_bits*/
/*No:UNIQUE_STRING.us_maximum_real*/
/*No:UNIQUE_STRING.us_lower*/
/*No:UNIQUE_STRING.us_character_ref*/
/*No:UNIQUE_STRING.us_raise_exception*/
/*No:UNIQUE_STRING.us_current*/
/*No:UNIQUE_STRING.us_minus*/


T0* r66for_precursor(T2 a1,T0* a2){
T0* R=NULL;
r7copy((T7*)(oBC66tmp_string),((T0*)ms66_356));
r2append_in(a1,oBC66tmp_string);
r7append((T7*)(oBC66tmp_string),a2);
R=r66item(oBC66tmp_string);
return R;
}
/*No:UNIQUE_STRING.us_is_expanded_type*/
int fBC66initialize=0;


void r66initialize(void){
if (fBC66initialize==0){
fBC66initialize=1;
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_714);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1990);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_687);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2055);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_9369);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6510);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_12694);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_9936);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_16588);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_12700);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_4818);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_10890);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_12180);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_14982);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6412);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6748);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_12760);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_5598);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_17628);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1256);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_8048);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6881);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_12969);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1208);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_7696);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_5046);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_16887);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_19334);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_939);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_10800);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_65);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_374);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_62);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_252);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_63);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_9513);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_248);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_61);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_46);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_43);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_222);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1029);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_456);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_8316);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_44);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_95);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_570);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_582);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_48);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_194);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_36);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1053a);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2675);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2695);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
r66add2(((T0*)ms13_22704));
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6792);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_11896);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
r66add2(((T0*)ms13_29456));
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13554);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_20868);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_29078);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2840a);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1684);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_19459);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1812);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_15220);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_15720);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_19602);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_23004a);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_24024);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_27482);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_10648);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13842);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6936);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1704);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2805a);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_22428);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1712);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_22968);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_30885);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_14130);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_438);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
r66add2(((T0*)ms13_22776));
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_60434);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_34672);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_11264);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_18161);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1764);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2840);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_6852);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1696);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
r66add2(((T0*)ms13_60346));
r66add2(((T0*)ms13_27090));
r66add2(((T0*)ms13_33465));
r66add2(((T0*)ms13_21804));
r66add2(((T0*)ms13_60390));
r66add2(((T0*)ms13_27118));
r66add2(((T0*)ms13_33495));
r66add2(((T0*)ms13_21828));
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_18051);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_23004);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_21372);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2860);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_11616);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_54240);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1053);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2515);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2520);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_32955);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_12879);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13797);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_8652);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_8610);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_9541);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_14328);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13050a);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13050);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_34768);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13887);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_11456);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_26351);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_11496);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_27790);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_34215);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_27638);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_40613);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_25779);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_7470);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2805);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_7620);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_14112);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_14310);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_17120);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_8925);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_7416);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_22896);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13113);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_16920);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_17000);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_9156);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_21480);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_57020);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1840);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_2855);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_27651);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_15800);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_9380);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_58420);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_22320);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_13968);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_7404);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
/*[IRF3.6add1*/{T0* b1=((T0*)ms13_1648);
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
}}
/*No:UNIQUE_STRING.us_conforms_to*/
/*No:UNIQUE_STRING.us_generating_type*/
/*No:UNIQUE_STRING.us_count*/
/*No:UNIQUE_STRING.us_exception*/
/*No:UNIQUE_STRING.us_sprintf_pointer*/
/*No:UNIQUE_STRING.us_double_bits*/
/*No:UNIQUE_STRING.us_make*/
/*No:UNIQUE_STRING.us_upper*/
/*No:UNIQUE_STRING.us_boolean_bits*/
/*No:UNIQUE_STRING.us_plus*/
/*No:UNIQUE_STRING.us_print_on*/
/*No:UNIQUE_STRING.us_to_real*/
/*No:UNIQUE_STRING.us_code*/
/*No:UNIQUE_STRING.us_feof*/
/*No:UNIQUE_STRING.us_is_basic_expanded_type*/
/*No:UNIQUE_STRING.us_boolean*/
/*No:UNIQUE_STRING.us_minimum_real*/
/*No:UNIQUE_STRING.us_to_character*/
/*No:UNIQUE_STRING.us_muls*/
/*No:UNIQUE_STRING.us_free*/
/*No:UNIQUE_STRING.us_or_else*/
/*No:UNIQUE_STRING.us_slash*/
/*No:UNIQUE_STRING.us_ge*/
/*No:UNIQUE_STRING.us_integer_bits*/
/*No:UNIQUE_STRING.us_none*/
/*No:UNIQUE_STRING.us_string*/
/*No:UNIQUE_STRING.us_element_sizeof*/
/*No:UNIQUE_STRING.us_print*/
/*No:UNIQUE_STRING.us_void*/
/*No:UNIQUE_STRING.us_le*/


T0* r66key_for_prefix_infix(T0* a1,T0* a2){
T0* R=NULL;
T3 _c=0;
T2 _i=0;
r7copy((T7*)(oBC66tmp_string),a1);
_i=1;
while (!((_i)>((((T7*)a2))->_count/*4*/))) {
_c=/*(IRF4.6item*/((((T7*)a2))->_storage/*0*/)[(_i)-(1)]/*)*/;
/*[IF*/
if(r3is_letter(_c)){
r7extend((T7*)(oBC66tmp_string),_c);
}
else{
r2append_in(((unsigned char)_c),oBC66tmp_string);
}
/*FI]*/
_i=(_i)+(1);
}
R=r66item(oBC66tmp_string);
return R;
}
/*No:UNIQUE_STRING.us_sprintf_double*/
/*No:UNIQUE_STRING.us_standard_twin*/
/*No:UNIQUE_STRING.us_storage*/
/*No:UNIQUE_STRING.us_at*/
/*No:UNIQUE_STRING.us_neq*/
/*No:UNIQUE_STRING.us_eq*/
/*No:UNIQUE_STRING.us_pointer_size*/
/*No:UNIQUE_STRING.us_blank*/
/*No:UNIQUE_STRING.us_se_argv*/
/*No:UNIQUE_STRING.us_io*/
/*No:UNIQUE_STRING.us_bit_n_ref*/
/*No:UNIQUE_STRING.us_trace_switch*/
/*No:UNIQUE_STRING.us_read_byte*/
/*No:UNIQUE_STRING.us_native_array_character*/
/*No:UNIQUE_STRING.us_gt*/
/*No:UNIQUE_STRING.us_truncated_to_integer*/
/*No:UNIQUE_STRING.us_se_remove*/
/*No:UNIQUE_STRING.us_se_rename*/
/*No:UNIQUE_STRING.us_lt*/
/*No:UNIQUE_STRING.us_std_file_write*/
/*No:UNIQUE_STRING.us_or*/
/*No:UNIQUE_STRING.us_bit*/
/*No:UNIQUE_STRING.us_std_input*/
/*No:UNIQUE_STRING.us_signal_number*/
/*No:UNIQUE_STRING.us_print_run_time_stack*/
/*No:UNIQUE_STRING.us_flush_stream*/
/*No:UNIQUE_STRING.us_to_integer*/
/*No:UNIQUE_STRING.us_to_pointer*/
/*No:UNIQUE_STRING.us_pointer_bits*/
T0*oBC66tmp_string=NULL;
/*No:UNIQUE_STRING.us_stderr*/
/*No:UNIQUE_STRING.us_calloc*/
/*No:UNIQUE_STRING.us_copy*/
/*No:UNIQUE_STRING.us_result*/
/*No:UNIQUE_STRING.us_is_not_void*/
/*No:UNIQUE_STRING.us_capacity*/


T0* r66for_prefix(T0* a1){
T0* R=NULL;
R=r66key_for_prefix_infix(((T0*)ms66_1700),a1);
return R;
}
/*No:UNIQUE_STRING.us_compile_to_c*/
/*No:UNIQUE_STRING.us_double_ref*/
/*No:UNIQUE_STRING.us_object_size*/
/*No:UNIQUE_STRING.us_xor*/
/*No:UNIQUE_STRING.us_like_current*/
/*No:UNIQUE_STRING.us_to_double*/
/*No:UNIQUE_STRING.us_clear_all*/
/*No:UNIQUE_STRING.us_shift_right*/
/*No:UNIQUE_STRING.us_exceptions*/
/*No:UNIQUE_STRING.us_not*/
/*No:UNIQUE_STRING.us_slash_slash*/
/*No:UNIQUE_STRING.us_array*/
/*No:UNIQUE_STRING.us_bit_n*/
/*No:UNIQUE_STRING.us_se_getenv*/
/*No:UNIQUE_STRING.us_eof_code*/
/*No:UNIQUE_STRING.add1*/
/*No:UNIQUE_STRING.us_c_inline_c*/


void r66add2(T0* a1){
/*[IF*/
if(((T51*)(oBC11eiffel_parser))->_case_insensitive/*0*/){
r7to_lower(((T7*)a1));
}
/*FI]*/
/*[IRF3.6add1*/{T0* b1=a1;
r53put((T53*)(oBC66memory),b1,b1);
}/*]*/
}
/*No:UNIQUE_STRING.us_malloc*/
/*No:UNIQUE_STRING.us_dictionary*/
/*No:UNIQUE_STRING.us_fixed_array*/
/*No:UNIQUE_STRING.us_character*/
/*No:UNIQUE_STRING.us_put*/
/*No:UNIQUE_STRING.us_to_bit*/
/*No:UNIQUE_STRING.us_generator*/
/*No:UNIQUE_STRING.us_backslash_backslash*/
/*No:UNIQUE_STRING.us_maximum_integer*/
/*No:UNIQUE_STRING.us_put_0*/
/*No:UNIQUE_STRING.us_stdout*/
/*No:UNIQUE_STRING.us_write_byte*/
/*No:UNIQUE_STRING.us_c_inline_h*/
/*No:UNIQUE_STRING.us_any*/
/*No:UNIQUE_STRING.us_real*/
/*No:UNIQUE_STRING.us_and*/
/*No:UNIQUE_STRING.us_bitn*/
T0*oBC11eiffel_parser=NULL;
/*No:UNIQUE_STRING.us_pow*/

