Changeset 2730


Ignore:
Timestamp:
Apr 24, 2007, 6:59:18 AM (14 years ago)
Author:
orlov
Message:
  • Fresh-generated compiler sources in C++.
Location:
to-imperative/trunk/c++/compiler
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • to-imperative/trunk/c++/compiler/rfp_as2as.cc

    r2636 r2730  
    6060RF_DECL (Build_Subst);
    6161
     62RF_DECL (Del_Pragmas);
     63
     64}
     65
     66namespace refal {
     67
     68namespace Table {
     69
     70RF_DECL (Lookup);
     71
     72}
     73
     74}
     75
     76namespace refal {
     77
     78namespace List {
     79
     80RF_DECL (Split);
     81
     82}
     83
     84}
     85
     86namespace rfp_as2as {
     87
    6288RF_DECL (Generate_In_Vars);
    6389
     90RF_DECL (Rename);
     91
     92RF_DECL (RFP_As2As_Transform);
     93
     94RF_DECL (IsOld_Var);
     95
    6496RF_DECL (Flatten_Result);
    6597
     98RF_DECL (Rename_Vars);
     99
     100RF_DECL (Rename_Vars_0);
     101
     102RF_DECL (Var_Subst);
     103
     104RF_DECL (Unstick_Blocks);
     105
     106RF_DECL (Transform);
     107
    66108}
    67109
    68 namespace refal {
    69 
    70 namespace Table {
    71 
    72 RF_DECL (Lookup);
     110namespace rfp_format {
     111
     112RF_DECL (IsSubformat);
     113
     114RF_DECL (Format_Exp);
    73115
    74116}
    75117
     118namespace rfp_helper {
     119
     120RF_DECL (Subst);
     121
    76122}
    77123
    78 namespace refal {
    79 
    80 namespace List {
    81 
    82 RF_DECL (Split);
     124namespace rfp_vars {
     125
     126RF_DECL (Vars);
     127
     128RF_DECL (Gener_Var_Indices);
    83129
    84130}
    85131
     132namespace rfp_format {
     133
     134RF_DECL (MSG);
     135
    86136}
    87137
     138namespace rfp_helper {
     139
     140extern Expr RFP_Options;
     141
     142}
     143
     144namespace rfp_debug {
     145
     146RF_DECL (Add_Debug);
     147
     148}
     149
    88150namespace rfp_as2as {
    89151
    90 RF_DECL (RFP_As2As_Transform);
    91 
    92 RF_DECL (Rename_Vars);
    93 
    94 RF_DECL (Rename_Vars_0);
    95 
    96 RF_DECL (Rename);
    97 
    98 RF_DECL (IsOld_Var);
    99 
    100 RF_DECL (Unstick_Blocks);
     152RF_DECL (Rename_0);
    101153
    102154}
    103155
    104 namespace rfp_debug {
    105 
    106 RF_DECL (Add_Debug);
    107 
    108 }
    109 
    110156namespace rfp_as2as {
    111157
    112 RF_DECL (Var_Subst);
    113 
    114 }
    115 
    116 namespace rfp_format {
    117 
    118 RF_DECL (IsSubformat);
    119 
    120 }
    121 
    122 namespace rfp_helper {
    123 
    124 RF_DECL (Subst);
    125 
    126 }
    127 
    128 namespace rfp_format {
    129 
    130 RF_DECL (MSG);
    131 
    132 RF_DECL (Format_Exp);
    133 
    134 }
    135 
    136 namespace rfp_vars {
    137 
    138 RF_DECL (Vars);
    139 
    140 }
    141 
    142 namespace rfp_helper {
    143 
    144 extern Expr RFP_Options;
    145 
    146 }
    147 
    148 namespace rfp_vars {
    149 
    150 RF_DECL (Gener_Var_Indices);
    151 
    152 }
    153 
    154 namespace rfp_as2as {
    155 
    156 RF_DECL (Transform);
    157 
    158 }
    159 
    160 namespace rfp_as2as {
    161 
    162158static Expr Free_Idx;
    163159
     
    168164static Expr _c_2;
    169165
     166static Expr _c_3;
     167
     168static Expr _c_28;
     169
     170static Expr _c_4;
     171
     172static Expr _c_5;
     173
     174static Expr _c_6;
     175
     176static Expr _c_7;
     177
     178static Expr _c_8;
     179
     180static Expr _c_9;
     181
     182static Expr _c_10;
     183
     184static Expr _c_11;
     185
     186static Expr _c_12;
     187
     188static Expr _c_13;
     189
     190static Expr _c_14;
     191
     192static Expr _c_15;
     193
     194static Expr _c_16;
     195
     196static Expr _c_17;
     197
     198static Expr _c_18;
     199
     200static Expr _c_19;
     201
     202static Expr _c_20;
     203
     204static Expr _c_21;
     205
     206static Expr _c_22;
     207
     208static Expr _c_23;
     209
     210static Expr _c_24;
     211
     212static Expr _c_25;
     213
     214static Expr _c_26;
     215
     216static Expr _c_27;
     217
     218static Expr _c_29;
     219
     220static Expr _c_30;
     221
     222static Expr _c_31;
     223
     224static Expr _c_32;
     225
     226static Expr _c_33;
     227
    170228static Expr _c_34;
    171229
    172 static Expr _c_12;
    173 
    174 static Expr _c_3;
    175 
    176 static Expr _c_4;
    177 
    178 static Expr _c_5;
    179 
    180 static Expr _c_6;
    181 
    182 static Expr _c_7;
    183 
    184 static Expr _c_8;
    185 
    186 static Expr _c_9;
    187 
    188 static Expr _c_10;
    189 
    190 static Expr _c_11;
    191 
    192 static Expr _c_13;
    193 
    194 static Expr _c_14;
    195 
    196 static Expr _c_15;
    197 
    198 static Expr _c_16;
    199 
    200 static Expr _c_17;
    201 
    202 static Expr _c_18;
    203 
    204 static Expr _c_19;
    205 
    206 static Expr _c_20;
    207 
    208 static Expr _c_21;
    209 
    210 static Expr _c_22;
    211 
    212 static Expr _c_23;
    213 
    214 static Expr _c_24;
    215 
    216 static Expr _c_25;
    217 
    218 static Expr _c_26;
    219 
    220 static Expr _c_27;
    221 
    222 static Expr _c_28;
    223 
    224 static Expr _c_29;
    225 
    226 static Expr _c_30;
    227 
    228 static Expr _c_31;
    229 
    230 static Expr _c_32;
    231 
    232 static Expr _c_33;
     230static Expr _c_35;
    233231
    234232RF_FUNC (RFP_As2As_Transform, (RF_ARG _ve_Items;;), (RF_RES _v_res1;;))
     
    266264      Expr _ve_rest;
    267265      _ve_rest = Expr (_ve_Items, (0 + 1), _v_len__rest);
    268       Expr _gt_item__3;
     266      Expr _ge_item__3;
    269267      {
    270268        {
     
    287285                goto _block2__branch1;
    288286              }
    289               if (_vt_item.symbol_at (0))
    290               {
    291                 goto _block2__branch1;
    292               }
    293               Expr _v_deref__item;
    294               _v_deref__item = Expr (_vt_item, 0);
    295               int _v_len5;
    296               _v_len5 = _v_deref__item.get_len ();
    297               int _v_len6;
    298               _v_len6 = 4;
    299               if (_v_len5 < _v_len6)
    300               {
    301                 goto _block2__branch1;
    302               }
    303               int _v_len___dollar_tmp_m_52_m_33;
    304               _v_len___dollar_tmp_m_52_m_33 = (_v_len5 - _v_len6);
    305               Expr _vt__dollar_tmp_m_52_m_20;
    306               _vt__dollar_tmp_m_52_m_20 = Expr (_v_deref__item, 0, 1);
    307               Expr _vt__dollar_tmp_m_52_m_22;
    308               _vt__dollar_tmp_m_52_m_22 = Expr (_v_deref__item, (0 + 1), 1);
    309               Expr _vt__dollar_tmp_m_52_m_24;
    310               _vt__dollar_tmp_m_52_m_24 = Expr (_v_deref__item, (0 + 1 + 1), 1);
    311               Expr _vt_name;
    312               _vt_name = Expr (_v_deref__item, (0 + 1 + 1 + 1), 1);
    313               Expr _ve__dollar_tmp_m_52_m_33;
    314               _ve__dollar_tmp_m_52_m_33 = Expr (_v_deref__item, (0 + 1 + 1 + 1 + 1), _v_len___dollar_tmp_m_52_m_33);
    315287              RF_lsplit (_ve_targets, 0, _ve__dollar_tmp_m_51_m_22, _v_lsplit__targets);
    316288              for ( ; ; RF_iter(_ve_targets)++)
     
    321293                    goto _block2__branch1;
    322294                  }
    323                   int _v_len7;
    324                   _v_len7 = _v_lsplit__targets.get_len ();
    325                   int _v_len8;
    326                   _v_len8 = 1;
    327                   if (_v_len7 < _v_len8)
     295                  int _v_len5;
     296                  _v_len5 = _v_lsplit__targets.get_len ();
     297                  int _v_len6;
     298                  _v_len6 = 1;
     299                  if (_v_len5 < _v_len6)
    328300                  {
    329301                    goto _block2__branch1;
    330302                  }
    331303                  int _v_len___dollar_tmp_m_51_m_31;
    332                   _v_len___dollar_tmp_m_51_m_31 = (_v_len7 - _v_len8);
    333                   if (!_vt_name.term_eq (_v_lsplit__targets, 0))
    334                   {
    335                     goto _continue1;
    336                   }
     304                  _v_len___dollar_tmp_m_51_m_31 = (_v_len5 - _v_len6);
     305                  Expr _vt_name;
     306                  _vt_name = Expr (_v_lsplit__targets, 0, 1);
    337307                  Expr _ve__dollar_tmp_m_51_m_31;
    338308                  _ve__dollar_tmp_m_51_m_31 = Expr (_v_lsplit__targets, (0 + 1), _v_len___dollar_tmp_m_51_m_31);
     309                  {
     310                    {
     311                      if (_vt_item.symbol_at (0))
     312                      {
     313                        goto _block4__branch1;
     314                      }
     315                      Expr _v_deref__item;
     316                      _v_deref__item = Expr (_vt_item, 0);
     317                      int _v_len7;
     318                      _v_len7 = _v_deref__item.get_len ();
     319                      int _v_len8;
     320                      _v_len8 = 4;
     321                      if (_v_len7 < _v_len8)
     322                      {
     323                        goto _block4__branch1;
     324                      }
     325                      int _v_len___dollar_tmp_m_53_m_51;
     326                      _v_len___dollar_tmp_m_53_m_51 = (_v_len7 - _v_len8);
     327                      if (_v_deref__item.symbol_at ((0 + 1 + 1)))
     328                      {
     329                        goto _block4__branch1;
     330                      }
     331                      Expr _v_deref__deref__item;
     332                      _v_deref__deref__item = Expr (_v_deref__item, (0 + 1 + 1));
     333                      if (_v_deref__deref__item.get_len () != 3)
     334                      {
     335                        goto _block4__branch1;
     336                      }
     337                      if (_v_deref__deref__item.symbol_at ((0 + 1)))
     338                      {
     339                        goto _block4__branch1;
     340                      }
     341                      if (_v_deref__deref__item.symbol_at ((0 + 1 + 1)))
     342                      {
     343                        goto _block4__branch1;
     344                      }
     345                      Expr _v_deref__deref__deref__item;
     346                      _v_deref__deref__deref__item = Expr (_v_deref__deref__item, (0 + 1));
     347                      Expr _v_deref__deref__deref__item2;
     348                      _v_deref__deref__deref__item2 = Expr (_v_deref__deref__item, (0 + 1 + 1));
     349                      int _v_len9;
     350                      _v_len9 = _v_deref__deref__deref__item2.get_len ();
     351                      int _v_len10;
     352                      _v_len10 = 0;
     353                      if (_v_len9 < _v_len10)
     354                      {
     355                        goto _block4__branch1;
     356                      }
     357                      int _v_len__line;
     358                      _v_len__line = (_v_len9 - _v_len10);
     359                      int _v_len11;
     360                      _v_len11 = _v_deref__deref__deref__item.get_len ();
     361                      int _v_len12;
     362                      _v_len12 = 0;
     363                      if (_v_len11 < _v_len12)
     364                      {
     365                        goto _block4__branch1;
     366                      }
     367                      int _v_len__file;
     368                      _v_len__file = (_v_len11 - _v_len12);
     369                      if (!_vt_name.term_eq (_v_deref__item, (0 + 1 + 1 + 1)))
     370                      {
     371                        goto _block4__branch1;
     372                      }
     373                      if (!_c_1.term_eq (_v_deref__deref__item, 0))
     374                      {
     375                        goto _block4__branch1;
     376                      }
     377                      Expr _vt__dollar_tmp_m_53_m_13;
     378                      _vt__dollar_tmp_m_53_m_13 = Expr (_v_deref__item, 0, 1);
     379                      Expr _vt__dollar_tmp_m_53_m_15;
     380                      _vt__dollar_tmp_m_53_m_15 = Expr (_v_deref__item, (0 + 1), 1);
     381                      Expr _ve__dollar_tmp_m_53_m_51;
     382                      _ve__dollar_tmp_m_53_m_51 = Expr (_v_deref__item, (0 + 1 + 1 + 1 + 1), _v_len___dollar_tmp_m_53_m_51);
     383                      Expr _ve_file;
     384                      _ve_file = Expr (_v_deref__deref__deref__item, 0, _v_len__file);
     385                      Expr _ve_line;
     386                      _ve_line = Expr (_v_deref__deref__deref__item2, 0, _v_len__line);
     387                      goto _block4;
     388                    }
     389                  _block4__branch1: {}
     390                    if (_vt_item.symbol_at (0))
     391                    {
     392                      goto _continue1;
     393                    }
     394                    Expr _v_deref__item2;
     395                    _v_deref__item2 = Expr (_vt_item, 0);
     396                    int _v_len13;
     397                    _v_len13 = _v_deref__item2.get_len ();
     398                    int _v_len14;
     399                    _v_len14 = 3;
     400                    if (_v_len13 < _v_len14)
     401                    {
     402                      goto _continue1;
     403                    }
     404                    int _v_len___dollar_tmp_m_54_m_24;
     405                    _v_len___dollar_tmp_m_54_m_24 = (_v_len13 - _v_len14);
     406                    if (!_vt_name.term_eq (_v_deref__item2, (0 + 1 + 1)))
     407                    {
     408                      goto _continue1;
     409                    }
     410                    Expr _vt__dollar_tmp_m_54_m_13;
     411                    _vt__dollar_tmp_m_54_m_13 = Expr (_v_deref__item2, 0, 1);
     412                    Expr _vt__dollar_tmp_m_54_m_15;
     413                    _vt__dollar_tmp_m_54_m_15 = Expr (_v_deref__item2, (0 + 1), 1);
     414                    Expr _ve__dollar_tmp_m_54_m_24;
     415                    _ve__dollar_tmp_m_54_m_24 = Expr (_v_deref__item2, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_54_m_24);
     416                  }
     417                _block4: {}
    339418                  goto _exit1;
    340419                }
     
    351430            goto _block2__branch1;
    352431          }
    353           Expr _v_deref__item2;
    354           _v_deref__item2 = Expr (_vt_item, 0);
    355           if (_v_deref__item2.get_len () != 7)
     432          Expr _v_deref__item3;
     433          _v_deref__item3 = Expr (_vt_item, 0);
     434          int _v_len15;
     435          _v_len15 = _v_deref__item3.get_len ();
     436          int _v_len16;
     437          _v_len16 = 6;
     438          if (_v_len15 < _v_len16)
    356439          {
    357440            goto _block2__branch1;
    358441          }
    359           if (_v_deref__item2.symbol_at ((0 + 1 + 1 + 1 + 1)))
     442          int _v_len__pragma;
     443          _v_len__pragma = (_v_len15 - _v_len16);
     444          if (_v_deref__item3.symbol_at ((0 + 1 + 1 + _v_len__pragma + 1)))
    360445          {
    361446            goto _block2__branch1;
    362447          }
    363           if (_v_deref__item2.symbol_at ((0 + 1 + 1 + 1 + 1 + 1)))
     448          if (_v_deref__item3.symbol_at ((0 + 1 + 1 + _v_len__pragma + 1 + 1)))
    364449          {
    365450            goto _block2__branch1;
    366451          }
    367           if (_v_deref__item2.symbol_at ((0 + 1 + 1 + 1 + 1 + 1 + 1)))
     452          if (_v_deref__item3.symbol_at ((0 + 1 + 1 + _v_len__pragma + 1 + 1 + 1)))
    368453          {
    369454            goto _block2__branch1;
    370455          }
    371           Expr _v_deref__deref__item2;
    372           _v_deref__deref__item2 = Expr (_v_deref__item2, (0 + 1 + 1 + 1 + 1));
    373           Expr _v_deref__deref__item22;
    374           _v_deref__deref__item22 = Expr (_v_deref__item2, (0 + 1 + 1 + 1 + 1 + 1));
    375           Expr _v_deref__deref__item23;
    376           _v_deref__deref__item23 = Expr (_v_deref__item2, (0 + 1 + 1 + 1 + 1 + 1 + 1));
    377           int _v_len9;
    378           _v_len9 = _v_deref__deref__item2.get_len ();
    379           int _v_len10;
    380           _v_len10 = 0;
    381           if (_v_len9 < _v_len10)
     456          Expr _v_deref__deref__item3;
     457          _v_deref__deref__item3 = Expr (_v_deref__item3, (0 + 1 + 1 + _v_len__pragma + 1));
     458          Expr _v_deref__deref__item32;
     459          _v_deref__deref__item32 = Expr (_v_deref__item3, (0 + 1 + 1 + _v_len__pragma + 1 + 1));
     460          Expr _v_deref__deref__item33;
     461          _v_deref__deref__item33 = Expr (_v_deref__item3, (0 + 1 + 1 + _v_len__pragma + 1 + 1 + 1));
     462          int _v_len17;
     463          _v_len17 = _v_deref__deref__item3.get_len ();
     464          int _v_len18;
     465          _v_len18 = 0;
     466          if (_v_len17 < _v_len18)
    382467          {
    383468            goto _block2__branch1;
    384469          }
    385470          int _v_len__in;
    386           _v_len__in = (_v_len9 - _v_len10);
    387           int _v_len11;
    388           _v_len11 = _v_deref__deref__item23.get_len ();
    389           int _v_len12;
    390           _v_len12 = 2;
    391           if (_v_len11 < _v_len12)
     471          _v_len__in = (_v_len17 - _v_len18);
     472          int _v_len19;
     473          _v_len19 = _v_deref__deref__item33.get_len ();
     474          int _v_len20;
     475          _v_len20 = 1;
     476          if (_v_len19 < _v_len20)
    392477          {
    393478            goto _block2__branch1;
    394479          }
    395480          int _v_len__branch;
    396           _v_len__branch = (_v_len11 - _v_len12);
    397           int _v_len13;
    398           _v_len13 = _v_deref__deref__item22.get_len ();
    399           int _v_len14;
    400           _v_len14 = 0;
    401           if (_v_len13 < _v_len14)
     481          _v_len__branch = (_v_len19 - _v_len20);
     482          int _v_len21;
     483          _v_len21 = _v_deref__deref__item32.get_len ();
     484          int _v_len22;
     485          _v_len22 = 0;
     486          if (_v_len21 < _v_len22)
    402487          {
    403488            goto _block2__branch1;
    404489          }
    405490          int _v_len__out;
    406           _v_len__out = (_v_len13 - _v_len14);
    407           if (!_v_deref__item2.symbol_at (0))
     491          _v_len__out = (_v_len21 - _v_len22);
     492          if (!_v_deref__item3.symbol_at (0))
    408493          {
    409494            goto _block2__branch1;
    410495          }
    411           if (!_v_deref__item2.symbol_at ((0 + 1)))
     496          if (!_v_deref__item3.symbol_at ((0 + 1)))
    412497          {
    413498            goto _block2__branch1;
    414499          }
    415           if (!_c_1.term_eq (_v_deref__deref__item23, 0))
     500          if (!_c_2.term_eq (_v_deref__deref__item33, 0))
    416501          {
    417502            goto _block2__branch1;
    418503          }
    419504          Expr _vs_link;
    420           _vs_link = Expr (_v_deref__item2, 0, 1);
     505          _vs_link = Expr (_v_deref__item3, 0, 1);
    421506          Expr _vs_tag;
    422           _vs_tag = Expr (_v_deref__item2, (0 + 1), 1);
    423           Expr _vt_pragma;
    424           _vt_pragma = Expr (_v_deref__item2, (0 + 1 + 1), 1);
     507          _vs_tag = Expr (_v_deref__item3, (0 + 1), 1);
     508          Expr _ve_pragma;
     509          _ve_pragma = Expr (_v_deref__item3, (0 + 1 + 1), _v_len__pragma);
    425510          Expr _vt_name;
    426           _vt_name = Expr (_v_deref__item2, (0 + 1 + 1 + 1), 1);
     511          _vt_name = Expr (_v_deref__item3, (0 + 1 + 1 + _v_len__pragma), 1);
    427512          Expr _ve_in;
    428           _ve_in = Expr (_v_deref__deref__item2, 0, _v_len__in);
     513          _ve_in = Expr (_v_deref__deref__item3, 0, _v_len__in);
    429514          Expr _ve_out;
    430           _ve_out = Expr (_v_deref__deref__item22, 0, _v_len__out);
    431           Expr _vt_p;
    432           _vt_p = Expr (_v_deref__deref__item23, (0 + 1), 1);
     515          _ve_out = Expr (_v_deref__deref__item32, 0, _v_len__out);
    433516          Expr _ve_branch;
    434           _ve_branch = Expr (_v_deref__deref__item23, (0 + 1 + 1), _v_len__branch);
    435           Expr _ge_in__5;
     517          _ve_branch = Expr (_v_deref__deref__item33, (0 + 1), _v_len__branch);
     518          Expr _ve_p;
    436519          Expr _ge_branch__5;
    437520          {
    438521            {
    439               Expr _v_Vars1;
    440               RF_CALL (rfp_vars::Vars, _ve_in, _v_Vars1);
     522              if (_v_len__pragma != 1)
    441523              {
    442                 {
    443                   if (_v_Vars1.get_len () != 0)
    444                   {
    445                     goto _block5__branch1;
    446                   }
    447                   goto _block5;
    448                 }
    449               _block5__branch1: {}
    450                 if (_v_Vars1.get_len () < 1)
    451                 {
    452                   goto _block4__branch1;
    453                 }
    454                 RF_lsplit (_v_Vars1, 0, _ve__dollar_tmp_m_58_m_12, _v_lsplit__Vars1);
    455                 for ( ; ; RF_iter(_v_Vars1)++)
    456                 {
    457                   {
    458                     if (!RF_iter(_v_Vars1))
    459                     {
    460                       goto _block4__branch1;
    461                     }
    462                     int _v_len15;
    463                     _v_len15 = _v_lsplit__Vars1.get_len ();
    464                     int _v_len16;
    465                     _v_len16 = 1;
    466                     if (_v_len15 < _v_len16)
    467                     {
    468                       goto _block4__branch1;
    469                     }
    470                     int _v_len___dollar_tmp_m_58_m_25;
    471                     _v_len___dollar_tmp_m_58_m_25 = (_v_len15 - _v_len16);
    472                     if (_v_lsplit__Vars1.symbol_at (0))
    473                     {
    474                       goto _continue2;
    475                     }
    476                     Expr _v_deref__lsplit__Vars1;
    477                     _v_deref__lsplit__Vars1 = Expr (_v_lsplit__Vars1, 0);
    478                     if (_v_deref__lsplit__Vars1.get_len () != 1)
    479                     {
    480                       goto _continue2;
    481                     }
    482                     if (!_v_deref__lsplit__Vars1.symbol_at (0))
    483                     {
    484                       goto _continue2;
    485                     }
    486                     Expr _ve__dollar_tmp_m_58_m_25;
    487                     _ve__dollar_tmp_m_58_m_25 = Expr (_v_lsplit__Vars1, (0 + 1), _v_len___dollar_tmp_m_58_m_25);
    488                     Expr _vs_VarTag;
    489                     _vs_VarTag = Expr (_v_deref__lsplit__Vars1, 0, 1);
    490                     goto _exit2;
    491                   }
    492               _continue2: {}
    493                 }
    494               _exit2: {}
     524                goto _block5__branch1;
    495525              }
    496             _block5: {}
    497               Expr _ge_auxcall1;
    498               RF_CALL (rfp_format::Format_Exp, _ve_in, _ge_auxcall1);
    499               RF_CALL (Generate_In_Vars, (_ge_auxcall1, _ve_branch), (_ge_in__5, _ge_branch__5));
    500               goto _block4;
    501             }
    502           _block4__branch1: {}
    503             _ge_in__5 = _ve_in;
     526              if (_ve_pragma.symbol_at (0))
     527              {
     528                goto _block5__branch1;
     529              }
     530              Expr _v_deref__pragma;
     531              _v_deref__pragma = Expr (_ve_pragma, 0);
     532              int _v_len23;
     533              _v_len23 = _v_deref__pragma.get_len ();
     534              int _v_len24;
     535              _v_len24 = 1;
     536              if (_v_len23 < _v_len24)
     537              {
     538                goto _block5__branch1;
     539              }
     540              int _v_len___dollar_tmp_m_59_m_29;
     541              _v_len___dollar_tmp_m_59_m_29 = (_v_len23 - _v_len24);
     542              if (!_c_1.term_eq (_v_deref__pragma, 0))
     543              {
     544                goto _block5__branch1;
     545              }
     546              Expr _ve__dollar_tmp_m_59_m_29;
     547              _ve__dollar_tmp_m_59_m_29 = Expr (_v_deref__pragma, (0 + 1), _v_len___dollar_tmp_m_59_m_29);
     548              int _v_len25;
     549              _v_len25 = _v_len__branch;
     550              int _v_len26;
     551              _v_len26 = 1;
     552              if (_v_len25 < _v_len26)
     553              {
     554                goto _block1__branch1;
     555              }
     556              int _v_len__br;
     557              _v_len__br = (_v_len25 - _v_len26);
     558              Expr _gt_p__6;
     559              _gt_p__6 = Expr (_ve_branch, 0, 1);
     560              Expr _ve_br;
     561              _ve_br = Expr (_ve_branch, (0 + 1), _v_len__br);
     562              _ve_p = _gt_p__6;
     563              _ge_branch__5 = _ve_br;
     564              goto _block5;
     565            }
     566          _block5__branch1: {}
     567            _ve_p = empty;
    504568            _ge_branch__5 = _ve_branch;
    505569          }
    506         _block4: {}
     570        _block5: {}
     571          Expr _ge_in__6;
    507572          Expr _ge_branch__5__6;
    508           {
    509             {
    510               if (!RF_CALL (refal::Table::IsInTable, (rfp_helper::RFP_Options, _c_2), /*void*/))
     573          Expr _ge_auxcall1;
     574          RF_CALL (rfp_format::Format_Exp, _ve_in, _ge_auxcall1);
     575          RF_CALL (Generate_In_Vars, (_ge_auxcall1, _ge_branch__5), (_ge_in__6, _ge_branch__5__6));
     576          Expr _ge_in__6__7;
     577          Expr _ge_branch__5__6__7;
     578          {
     579            {
     580              if (!RF_CALL (refal::Table::IsInTable, (rfp_helper::RFP_Options, _c_3), /*void*/))
    511581              {
    512                 goto _block6__branch1;
     582                goto _block7__branch1;
    513583              }
    514               RF_CALL (rfp_debug::Add_Debug, ((_c_3 + _vt_p + _ge_in__5) () + _ge_branch__5), _ge_branch__5__6);
    515               goto _block6;
    516             }
    517           _block6__branch1: {}
    518             _ge_branch__5__6 = _ge_branch__5;
    519           }
    520         _block6: {}
    521           RF_CALL (refal::Box::Store, (Free_Idx, _c_4), /*void*/);
     584              int _v_len27;
     585              _v_len27 = _ve_p.get_len ();
     586              int _v_len28;
     587              _v_len28 = 0;
     588              if (_v_len27 < (_v_len28 + 1))
     589              {
     590                goto _block7__branch1;
     591              }
     592              int _v_len___dollar_tmp_m_72_m_46;
     593              _v_len___dollar_tmp_m_72_m_46 = (_v_len27 - _v_len28);
     594              Expr _vv__dollar_tmp_m_72_m_46;
     595              _vv__dollar_tmp_m_72_m_46 = Expr (_ve_p, 0, _v_len___dollar_tmp_m_72_m_46);
     596              Expr _ge_auxcall2;
     597              RF_CALL (Del_Pragmas, _ge_in__6, _ge_auxcall2);
     598              Expr _ge_auxcall3;
     599              RF_CALL (rfp_debug::Add_Debug, ((_c_4 + _ve_p + _ge_in__6) () + _ge_branch__5__6), _ge_auxcall3);
     600              RF_CALL (Del_Pragmas, _ge_auxcall3, _ge_branch__5__6__7);
     601              _ge_in__6__7 = _ge_auxcall2;
     602              goto _block7;
     603            }
     604          _block7__branch1: {}
     605            {
     606              int _v_len29;
     607              _v_len29 = _ve_p.get_len ();
     608              int _v_len30;
     609              _v_len30 = 0;
     610              if (_v_len29 < (_v_len30 + 1))
     611              {
     612                goto _block7__branch2;
     613              }
     614              int _v_len___dollar_tmp_m_74_m_16;
     615              _v_len___dollar_tmp_m_74_m_16 = (_v_len29 - _v_len30);
     616              Expr _vv__dollar_tmp_m_74_m_16;
     617              _vv__dollar_tmp_m_74_m_16 = Expr (_ve_p, 0, _v_len___dollar_tmp_m_74_m_16);
     618              Expr _ge_auxcall4;
     619              RF_CALL (Del_Pragmas, _ge_in__6, _ge_auxcall4);
     620              RF_CALL (Del_Pragmas, _ge_branch__5__6, _ge_branch__5__6__7);
     621              _ge_in__6__7 = _ge_auxcall4;
     622              goto _block7;
     623            }
     624          _block7__branch2: {}
     625            _ge_in__6__7 = _ge_in__6;
     626            _ge_branch__5__6__7 = _ge_branch__5__6;
     627          }
     628        _block7: {}
     629          RF_CALL (refal::Box::Store, (Free_Idx, _c_5), /*void*/);
    522630          Expr _v_Unstick__Blocks1;
    523           RF_CALL (Unstick_Blocks, _ge_branch__5__6, (_ge_branch__5__6, _v_Unstick__Blocks1));
    524           Expr _vt__dollar_tmp_m_69_m_46;
    525           _vt__dollar_tmp_m_69_m_46 = _v_Unstick__Blocks1 ();
    526           Expr _ge_auxcall2;
    527           RF_CALL (rfp_vars::Vars, _ge_in__5, _ge_auxcall2);
    528           RF_CALL (Rename_Vars, (_c_5, _ge_auxcall2, empty, _ge_branch__5__6), _ge_branch__5__6);
    529           _gt_item__3 = (_vs_link + _vs_tag + _vt_pragma + _vt_name + _ge_in__5 () + _ve_out () + (_c_1 + _vt_p + _ge_branch__5__6) ()) ();
     631          RF_CALL (Unstick_Blocks, _ge_branch__5__6__7, (_ge_branch__5__6__7, _v_Unstick__Blocks1));
     632          Expr _vt__dollar_tmp_m_79_m_46;
     633          _vt__dollar_tmp_m_79_m_46 = _v_Unstick__Blocks1 ();
     634          Expr _ge_auxcall5;
     635          RF_CALL (rfp_vars::Vars, _ge_in__6__7, _ge_auxcall5);
     636          RF_CALL (Rename_Vars, (_c_6, _ge_auxcall5, empty, _ge_branch__5__6__7), _ge_branch__5__6__7);
     637          _ge_item__3 = (_vs_link + _vs_tag + _vt_name + _ge_in__6__7 () + _ve_out () + (_c_2 + _ge_branch__5__6__7) ()) ();
    530638          goto _block2;
    531639        }
    532640      _block2__branch1: {}
    533         _gt_item__3 = _vt_item;
     641        RF_CALL (Del_Pragmas, _vt_item, _ge_item__3);
    534642      }
    535643    _block2: {}
    536644      Expr _v_Transform1;
    537645      RF_CALL (Transform, (_ve_targets, _ve_rest), _v_Transform1);
    538       _v_res1 = (_gt_item__3 + _v_Transform1);
     646      _v_res1 = (_ge_item__3 + _v_Transform1);
    539647      goto _block1;
    540648    }
     
    583691          _v_len3 = _v_deref__Snt.get_len ();
    584692          int _v_len4;
    585           _v_len4 = 2;
     693          _v_len4 = 1;
    586694          if (_v_len3 < _v_len4)
    587695          {
     
    598706          Expr _vs_block;
    599707          _vs_block = Expr (_v_deref__Snt, 0, 1);
    600           Expr _vt_Pragma;
    601           _vt_Pragma = Expr (_v_deref__Snt, (0 + 1), 1);
    602708          Expr _ve_branches;
    603           _ve_branches = Expr (_v_deref__Snt, (0 + 1 + 1), _v_len__branches);
    604           {
    605             {
    606               if (!_vs_block.term_eq (_c_6, 0))
     709          _ve_branches = Expr (_v_deref__Snt, (0 + 1), _v_len__branches);
     710          {
     711            {
     712              if (!_vs_block.term_eq (_c_7, 0))
    607713              {
    608714                goto _block2__branch1;
     
    611717            }
    612718          _block2__branch1: {}
    613             if (!_vs_block.term_eq (_c_7, 0))
     719            if (!_vs_block.term_eq (_c_8, 0))
    614720            {
    615721              goto _block1__branch1;
     
    640746                        goto _block4__branch1;
    641747                      }
    642                       int _v_len___dollar_tmp_m_97_m_45;
    643                       _v_len___dollar_tmp_m_97_m_45 = (_v_len5 - _v_len6);
     748                      int _v_len___dollar_tmp_m_107_m_41;
     749                      _v_len___dollar_tmp_m_107_m_41 = (_v_len5 - _v_len6);
    644750                      if (_ve_R.symbol_at (0))
    645751                      {
     
    651757                      _v_len7 = _v_deref__R.get_len ();
    652758                      int _v_len8;
    653                       _v_len8 = 3;
     759                      _v_len8 = 2;
    654760                      if (_v_len7 < _v_len8)
    655761                      {
    656762                        goto _block4__branch1;
    657763                      }
    658                       int _v_len___dollar_tmp_m_97_m_42;
    659                       _v_len___dollar_tmp_m_97_m_42 = (_v_len7 - _v_len8);
    660                       if (_v_deref__R.symbol_at ((0 + 1 + 1)))
     764                      int _v_len___dollar_tmp_m_107_m_38;
     765                      _v_len___dollar_tmp_m_107_m_38 = (_v_len7 - _v_len8);
     766                      if (_v_deref__R.symbol_at ((0 + 1)))
    661767                      {
    662768                        goto _block4__branch1;
    663769                      }
    664770                      Expr _v_deref__deref__R;
    665                       _v_deref__deref__R = Expr (_v_deref__R, (0 + 1 + 1));
     771                      _v_deref__deref__R = Expr (_v_deref__R, (0 + 1));
    666772                      int _v_len9;
    667773                      _v_len9 = _v_deref__deref__R.get_len ();
    668774                      int _v_len10;
    669                       _v_len10 = 3;
     775                      _v_len10 = 2;
    670776                      if (_v_len9 < _v_len10)
    671777                      {
    672778                        goto _block4__branch1;
    673779                      }
    674                       int _v_len___dollar_tmp_m_97_m_39;
    675                       _v_len___dollar_tmp_m_97_m_39 = (_v_len9 - _v_len10);
    676                       if (_v_deref__deref__R.symbol_at ((0 + 1 + 1)))
     780                      int _v_len___dollar_tmp_m_107_m_35;
     781                      _v_len___dollar_tmp_m_107_m_35 = (_v_len9 - _v_len10);
     782                      if (_v_deref__deref__R.symbol_at ((0 + 1)))
    677783                      {
    678784                        goto _block4__branch1;
    679785                      }
    680786                      Expr _v_deref__deref__deref__R;
    681                       _v_deref__deref__deref__R = Expr (_v_deref__deref__R, (0 + 1 + 1));
     787                      _v_deref__deref__deref__R = Expr (_v_deref__deref__R, (0 + 1));
    682788                      int _v_len11;
    683789                      _v_len11 = _v_deref__deref__deref__R.get_len ();
     
    688794                        goto _block4__branch1;
    689795                      }
    690                       int _v_len___dollar_tmp_m_97_m_36;
    691                       _v_len___dollar_tmp_m_97_m_36 = (_v_len11 - _v_len12);
    692                       if (!_c_6.term_eq (_v_deref__R, 0))
     796                      int _v_len___dollar_tmp_m_107_m_32;
     797                      _v_len___dollar_tmp_m_107_m_32 = (_v_len11 - _v_len12);
     798                      if (!_c_7.term_eq (_v_deref__R, 0))
    693799                      {
    694800                        goto _block4__branch1;
    695801                      }
    696                       if (!_c_1.term_eq (_v_deref__deref__R, 0))
     802                      if (!_c_2.term_eq (_v_deref__deref__R, 0))
    697803                      {
    698804                        goto _block4__branch1;
    699805                      }
    700                       if (!_c_8.term_eq (_v_deref__deref__deref__R, 0))
     806                      if (!_c_9.term_eq (_v_deref__deref__deref__R, 0))
    701807                      {
    702808                        goto _block4__branch1;
    703809                      }
    704                       Expr _ve__dollar_tmp_m_97_m_45;
    705                       _ve__dollar_tmp_m_97_m_45 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_97_m_45);
    706                       Expr _vt__dollar_tmp_m_97_m_18;
    707                       _vt__dollar_tmp_m_97_m_18 = Expr (_v_deref__R, (0 + 1), 1);
    708                       Expr _ve__dollar_tmp_m_97_m_42;
    709                       _ve__dollar_tmp_m_97_m_42 = Expr (_v_deref__R, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_97_m_42);
    710                       Expr _vt__dollar_tmp_m_97_m_28;
    711                       _vt__dollar_tmp_m_97_m_28 = Expr (_v_deref__deref__R, (0 + 1), 1);
    712                       Expr _ve__dollar_tmp_m_97_m_39;
    713                       _ve__dollar_tmp_m_97_m_39 = Expr (_v_deref__deref__R, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_97_m_39);
    714                       Expr _ve__dollar_tmp_m_97_m_36;
    715                       _ve__dollar_tmp_m_97_m_36 = Expr (_v_deref__deref__deref__R, (0 + 1), _v_len___dollar_tmp_m_97_m_36);
     810                      Expr _ve__dollar_tmp_m_107_m_41;
     811                      _ve__dollar_tmp_m_107_m_41 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_107_m_41);
     812                      Expr _ve__dollar_tmp_m_107_m_38;
     813                      _ve__dollar_tmp_m_107_m_38 = Expr (_v_deref__R, (0 + 1 + 1), _v_len___dollar_tmp_m_107_m_38);
     814                      Expr _ve__dollar_tmp_m_107_m_35;
     815                      _ve__dollar_tmp_m_107_m_35 = Expr (_v_deref__deref__R, (0 + 1 + 1), _v_len___dollar_tmp_m_107_m_35);
     816                      Expr _ve__dollar_tmp_m_107_m_32;
     817                      _ve__dollar_tmp_m_107_m_32 = Expr (_v_deref__deref__deref__R, (0 + 1), _v_len___dollar_tmp_m_107_m_32);
    716818                      goto _block4;
    717819                    }
     
    726828                        goto _block4__branch2;
    727829                      }
    728                       int _v_len___dollar_tmp_m_98_m_46;
    729                       _v_len___dollar_tmp_m_98_m_46 = (_v_len13 - _v_len14);
     830                      int _v_len___dollar_tmp_m_108_m_42;
     831                      _v_len___dollar_tmp_m_108_m_42 = (_v_len13 - _v_len14);
    730832                      if (_ve_R.symbol_at (0))
    731833                      {
     
    737839                      _v_len15 = _v_deref__R2.get_len ();
    738840                      int _v_len16;
    739                       _v_len16 = 3;
     841                      _v_len16 = 2;
    740842                      if (_v_len15 < _v_len16)
    741843                      {
    742844                        goto _block4__branch2;
    743845                      }
    744                       int _v_len___dollar_tmp_m_98_m_43;
    745                       _v_len___dollar_tmp_m_98_m_43 = (_v_len15 - _v_len16);
    746                       if (_v_deref__R2.symbol_at ((0 + 1 + 1)))
     846                      int _v_len___dollar_tmp_m_108_m_39;
     847                      _v_len___dollar_tmp_m_108_m_39 = (_v_len15 - _v_len16);
     848                      if (_v_deref__R2.symbol_at ((0 + 1)))
    747849                      {
    748850                        goto _block4__branch2;
    749851                      }
    750852                      Expr _v_deref__deref__R2;
    751                       _v_deref__deref__R2 = Expr (_v_deref__R2, (0 + 1 + 1));
     853                      _v_deref__deref__R2 = Expr (_v_deref__R2, (0 + 1));
    752854                      int _v_len17;
    753855                      _v_len17 = _v_deref__deref__R2.get_len ();
    754856                      int _v_len18;
    755                       _v_len18 = 3;
     857                      _v_len18 = 2;
    756858                      if (_v_len17 < _v_len18)
    757859                      {
    758860                        goto _block4__branch2;
    759861                      }
    760                       int _v_len___dollar_tmp_m_98_m_40;
    761                       _v_len___dollar_tmp_m_98_m_40 = (_v_len17 - _v_len18);
    762                       if (_v_deref__deref__R2.symbol_at ((0 + 1 + 1)))
     862                      int _v_len___dollar_tmp_m_108_m_36;
     863                      _v_len___dollar_tmp_m_108_m_36 = (_v_len17 - _v_len18);
     864                      if (_v_deref__deref__R2.symbol_at ((0 + 1)))
    763865                      {
    764866                        goto _block4__branch2;
    765867                      }
    766868                      Expr _v_deref__deref__deref__R2;
    767                       _v_deref__deref__deref__R2 = Expr (_v_deref__deref__R2, (0 + 1 + 1));
     869                      _v_deref__deref__deref__R2 = Expr (_v_deref__deref__R2, (0 + 1));
    768870                      int _v_len19;
    769871                      _v_len19 = _v_deref__deref__deref__R2.get_len ();
     
    774876                        goto _block4__branch2;
    775877                      }
    776                       int _v_len___dollar_tmp_m_98_m_37;
    777                       _v_len___dollar_tmp_m_98_m_37 = (_v_len19 - _v_len20);
    778                       if (!_c_6.term_eq (_v_deref__R2, 0))
     878                      int _v_len___dollar_tmp_m_108_m_33;
     879                      _v_len___dollar_tmp_m_108_m_33 = (_v_len19 - _v_len20);
     880                      if (!_c_7.term_eq (_v_deref__R2, 0))
    779881                      {
    780882                        goto _block4__branch2;
    781883                      }
    782                       if (!_c_1.term_eq (_v_deref__deref__R2, 0))
     884                      if (!_c_2.term_eq (_v_deref__deref__R2, 0))
    783885                      {
    784886                        goto _block4__branch2;
    785887                      }
    786                       if (!_c_9.term_eq (_v_deref__deref__deref__R2, 0))
     888                      if (!_c_10.term_eq (_v_deref__deref__deref__R2, 0))
    787889                      {
    788890                        goto _block4__branch2;
    789891                      }
    790                       Expr _ve__dollar_tmp_m_98_m_46;
    791                       _ve__dollar_tmp_m_98_m_46 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_98_m_46);
    792                       Expr _vt__dollar_tmp_m_98_m_18;
    793                       _vt__dollar_tmp_m_98_m_18 = Expr (_v_deref__R2, (0 + 1), 1);
    794                       Expr _ve__dollar_tmp_m_98_m_43;
    795                       _ve__dollar_tmp_m_98_m_43 = Expr (_v_deref__R2, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_98_m_43);
    796                       Expr _vt__dollar_tmp_m_98_m_28;
    797                       _vt__dollar_tmp_m_98_m_28 = Expr (_v_deref__deref__R2, (0 + 1), 1);
    798                       Expr _ve__dollar_tmp_m_98_m_40;
    799                       _ve__dollar_tmp_m_98_m_40 = Expr (_v_deref__deref__R2, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_98_m_40);
    800                       Expr _ve__dollar_tmp_m_98_m_37;
    801                       _ve__dollar_tmp_m_98_m_37 = Expr (_v_deref__deref__deref__R2, (0 + 1), _v_len___dollar_tmp_m_98_m_37);
     892                      Expr _ve__dollar_tmp_m_108_m_42;
     893                      _ve__dollar_tmp_m_108_m_42 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_108_m_42);
     894                      Expr _ve__dollar_tmp_m_108_m_39;
     895                      _ve__dollar_tmp_m_108_m_39 = Expr (_v_deref__R2, (0 + 1 + 1), _v_len___dollar_tmp_m_108_m_39);
     896                      Expr _ve__dollar_tmp_m_108_m_36;
     897                      _ve__dollar_tmp_m_108_m_36 = Expr (_v_deref__deref__R2, (0 + 1 + 1), _v_len___dollar_tmp_m_108_m_36);
     898                      Expr _ve__dollar_tmp_m_108_m_33;
     899                      _ve__dollar_tmp_m_108_m_33 = Expr (_v_deref__deref__deref__R2, (0 + 1), _v_len___dollar_tmp_m_108_m_33);
    802900                      goto _block4;
    803901                    }
     
    812910                        goto _block4__branch3;
    813911                      }
    814                       int _v_len___dollar_tmp_m_99_m_47;
    815                       _v_len___dollar_tmp_m_99_m_47 = (_v_len21 - _v_len22);
     912                      int _v_len___dollar_tmp_m_109_m_41;
     913                      _v_len___dollar_tmp_m_109_m_41 = (_v_len21 - _v_len22);
    816914                      if (_ve_R.symbol_at (0))
    817915                      {
     
    823921                      _v_len23 = _v_deref__R3.get_len ();
    824922                      int _v_len24;
    825                       _v_len24 = 3;
     923                      _v_len24 = 2;
    826924                      if (_v_len23 < _v_len24)
    827925                      {
    828926                        goto _block4__branch3;
    829927                      }
    830                       int _v_len___dollar_tmp_m_99_m_44;
    831                       _v_len___dollar_tmp_m_99_m_44 = (_v_len23 - _v_len24);
    832                       if (_v_deref__R3.symbol_at ((0 + 1 + 1)))
     928                      int _v_len___dollar_tmp_m_109_m_38;
     929                      _v_len___dollar_tmp_m_109_m_38 = (_v_len23 - _v_len24);
     930                      if (_v_deref__R3.symbol_at ((0 + 1)))
    833931                      {
    834932                        goto _block4__branch3;
    835933                      }
    836934                      Expr _v_deref__deref__R3;
    837                       _v_deref__deref__R3 = Expr (_v_deref__R3, (0 + 1 + 1));
     935                      _v_deref__deref__R3 = Expr (_v_deref__R3, (0 + 1));
    838936                      int _v_len25;
    839937                      _v_len25 = _v_deref__deref__R3.get_len ();
    840938                      int _v_len26;
    841                       _v_len26 = 3;
     939                      _v_len26 = 2;
    842940                      if (_v_len25 < _v_len26)
    843941                      {
    844942                        goto _block4__branch3;
    845943                      }
    846                       int _v_len___dollar_tmp_m_99_m_41;
    847                       _v_len___dollar_tmp_m_99_m_41 = (_v_len25 - _v_len26);
    848                       if (_v_deref__deref__R3.symbol_at ((0 + 1 + 1)))
     944                      int _v_len___dollar_tmp_m_109_m_35;
     945                      _v_len___dollar_tmp_m_109_m_35 = (_v_len25 - _v_len26);
     946                      if (_v_deref__deref__R3.symbol_at ((0 + 1)))
    849947                      {
    850948                        goto _block4__branch3;
    851949                      }
    852950                      Expr _v_deref__deref__deref__R3;
    853                       _v_deref__deref__deref__R3 = Expr (_v_deref__deref__R3, (0 + 1 + 1));
     951                      _v_deref__deref__deref__R3 = Expr (_v_deref__deref__R3, (0 + 1));
    854952                      int _v_len27;
    855953                      _v_len27 = _v_deref__deref__deref__R3.get_len ();
     
    860958                        goto _block4__branch3;
    861959                      }
    862                       int _v_len___dollar_tmp_m_99_m_38;
    863                       _v_len___dollar_tmp_m_99_m_38 = (_v_len27 - _v_len28);
    864                       if (!_c_7.term_eq (_v_deref__R3, 0))
     960                      int _v_len___dollar_tmp_m_109_m_32;
     961                      _v_len___dollar_tmp_m_109_m_32 = (_v_len27 - _v_len28);
     962                      if (!_c_8.term_eq (_v_deref__R3, 0))
    865963                      {
    866964                        goto _block4__branch3;
    867965                      }
    868                       if (!_c_1.term_eq (_v_deref__deref__R3, 0))
     966                      if (!_c_2.term_eq (_v_deref__deref__R3, 0))
    869967                      {
    870968                        goto _block4__branch3;
    871969                      }
    872                       if (!_c_8.term_eq (_v_deref__deref__deref__R3, 0))
     970                      if (!_c_9.term_eq (_v_deref__deref__deref__R3, 0))
    873971                      {
    874972                        goto _block4__branch3;
    875973                      }
    876                       Expr _ve__dollar_tmp_m_99_m_47;
    877                       _ve__dollar_tmp_m_99_m_47 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_99_m_47);
    878                       Expr _vt__dollar_tmp_m_99_m_20;
    879                       _vt__dollar_tmp_m_99_m_20 = Expr (_v_deref__R3, (0 + 1), 1);
    880                       Expr _ve__dollar_tmp_m_99_m_44;
    881                       _ve__dollar_tmp_m_99_m_44 = Expr (_v_deref__R3, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_99_m_44);
    882                       Expr _vt__dollar_tmp_m_99_m_30;
    883                       _vt__dollar_tmp_m_99_m_30 = Expr (_v_deref__deref__R3, (0 + 1), 1);
    884                       Expr _ve__dollar_tmp_m_99_m_41;
    885                       _ve__dollar_tmp_m_99_m_41 = Expr (_v_deref__deref__R3, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_99_m_41);
    886                       Expr _ve__dollar_tmp_m_99_m_38;
    887                       _ve__dollar_tmp_m_99_m_38 = Expr (_v_deref__deref__deref__R3, (0 + 1), _v_len___dollar_tmp_m_99_m_38);
     974                      Expr _ve__dollar_tmp_m_109_m_41;
     975                      _ve__dollar_tmp_m_109_m_41 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_109_m_41);
     976                      Expr _ve__dollar_tmp_m_109_m_38;
     977                      _ve__dollar_tmp_m_109_m_38 = Expr (_v_deref__R3, (0 + 1 + 1), _v_len___dollar_tmp_m_109_m_38);
     978                      Expr _ve__dollar_tmp_m_109_m_35;
     979                      _ve__dollar_tmp_m_109_m_35 = Expr (_v_deref__deref__R3, (0 + 1 + 1), _v_len___dollar_tmp_m_109_m_35);
     980                      Expr _ve__dollar_tmp_m_109_m_32;
     981                      _ve__dollar_tmp_m_109_m_32 = Expr (_v_deref__deref__deref__R3, (0 + 1), _v_len___dollar_tmp_m_109_m_32);
    888982                      goto _block4;
    889983                    }
     
    898992                        goto _block4__branch4;
    899993                      }
    900                       int _v_len___dollar_tmp_m_100_m_48;
    901                       _v_len___dollar_tmp_m_100_m_48 = (_v_len29 - _v_len30);
     994                      int _v_len___dollar_tmp_m_110_m_42;
     995                      _v_len___dollar_tmp_m_110_m_42 = (_v_len29 - _v_len30);
    902996                      if (_ve_R.symbol_at (0))
    903997                      {
     
    9091003                      _v_len31 = _v_deref__R4.get_len ();
    9101004                      int _v_len32;
    911                       _v_len32 = 3;
     1005                      _v_len32 = 2;
    9121006                      if (_v_len31 < _v_len32)
    9131007                      {
    9141008                        goto _block4__branch4;
    9151009                      }
    916                       int _v_len___dollar_tmp_m_100_m_45;
    917                       _v_len___dollar_tmp_m_100_m_45 = (_v_len31 - _v_len32);
    918                       if (_v_deref__R4.symbol_at ((0 + 1 + 1)))
     1010                      int _v_len___dollar_tmp_m_110_m_39;
     1011                      _v_len___dollar_tmp_m_110_m_39 = (_v_len31 - _v_len32);
     1012                      if (_v_deref__R4.symbol_at ((0 + 1)))
    9191013                      {
    9201014                        goto _block4__branch4;
    9211015                      }
    9221016                      Expr _v_deref__deref__R4;
    923                       _v_deref__deref__R4 = Expr (_v_deref__R4, (0 + 1 + 1));
     1017                      _v_deref__deref__R4 = Expr (_v_deref__R4, (0 + 1));
    9241018                      int _v_len33;
    9251019                      _v_len33 = _v_deref__deref__R4.get_len ();
    9261020                      int _v_len34;
    927                       _v_len34 = 3;
     1021                      _v_len34 = 2;
    9281022                      if (_v_len33 < _v_len34)
    9291023                      {
    9301024                        goto _block4__branch4;
    9311025                      }
    932                       int _v_len___dollar_tmp_m_100_m_42;
    933                       _v_len___dollar_tmp_m_100_m_42 = (_v_len33 - _v_len34);
    934                       if (_v_deref__deref__R4.symbol_at ((0 + 1 + 1)))
     1026                      int _v_len___dollar_tmp_m_110_m_36;
     1027                      _v_len___dollar_tmp_m_110_m_36 = (_v_len33 - _v_len34);
     1028                      if (_v_deref__deref__R4.symbol_at ((0 + 1)))
    9351029                      {
    9361030                        goto _block4__branch4;
    9371031                      }
    9381032                      Expr _v_deref__deref__deref__R4;
    939                       _v_deref__deref__deref__R4 = Expr (_v_deref__deref__R4, (0 + 1 + 1));
     1033                      _v_deref__deref__deref__R4 = Expr (_v_deref__deref__R4, (0 + 1));
    9401034                      int _v_len35;
    9411035                      _v_len35 = _v_deref__deref__deref__R4.get_len ();
     
    9461040                        goto _block4__branch4;
    9471041                      }
    948                       int _v_len___dollar_tmp_m_100_m_39;
    949                       _v_len___dollar_tmp_m_100_m_39 = (_v_len35 - _v_len36);
    950                       if (!_c_7.term_eq (_v_deref__R4, 0))
     1042                      int _v_len___dollar_tmp_m_110_m_33;
     1043                      _v_len___dollar_tmp_m_110_m_33 = (_v_len35 - _v_len36);
     1044                      if (!_c_8.term_eq (_v_deref__R4, 0))
    9511045                      {
    9521046                        goto _block4__branch4;
    9531047                      }
    954                       if (!_c_1.term_eq (_v_deref__deref__R4, 0))
     1048                      if (!_c_2.term_eq (_v_deref__deref__R4, 0))
    9551049                      {
    9561050                        goto _block4__branch4;
    9571051                      }
    958                       if (!_c_9.term_eq (_v_deref__deref__deref__R4, 0))
     1052                      if (!_c_10.term_eq (_v_deref__deref__deref__R4, 0))
    9591053                      {
    9601054                        goto _block4__branch4;
    9611055                      }
    962                       Expr _ve__dollar_tmp_m_100_m_48;
    963                       _ve__dollar_tmp_m_100_m_48 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_100_m_48);
    964                       Expr _vt__dollar_tmp_m_100_m_20;
    965                       _vt__dollar_tmp_m_100_m_20 = Expr (_v_deref__R4, (0 + 1), 1);
    966                       Expr _ve__dollar_tmp_m_100_m_45;
    967                       _ve__dollar_tmp_m_100_m_45 = Expr (_v_deref__R4, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_100_m_45);
    968                       Expr _vt__dollar_tmp_m_100_m_30;
    969                       _vt__dollar_tmp_m_100_m_30 = Expr (_v_deref__deref__R4, (0 + 1), 1);
    970                       Expr _ve__dollar_tmp_m_100_m_42;
    971                       _ve__dollar_tmp_m_100_m_42 = Expr (_v_deref__deref__R4, (0 + 1 + 1 + 1), _v_len___dollar_tmp_m_100_m_42);
    972                       Expr _ve__dollar_tmp_m_100_m_39;
    973                       _ve__dollar_tmp_m_100_m_39 = Expr (_v_deref__deref__deref__R4, (0 + 1), _v_len___dollar_tmp_m_100_m_39);
     1056                      Expr _ve__dollar_tmp_m_110_m_42;
     1057                      _ve__dollar_tmp_m_110_m_42 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_110_m_42);
     1058                      Expr _ve__dollar_tmp_m_110_m_39;
     1059                      _ve__dollar_tmp_m_110_m_39 = Expr (_v_deref__R4, (0 + 1 + 1), _v_len___dollar_tmp_m_110_m_39);
     1060                      Expr _ve__dollar_tmp_m_110_m_36;
     1061                      _ve__dollar_tmp_m_110_m_36 = Expr (_v_deref__deref__R4, (0 + 1 + 1), _v_len___dollar_tmp_m_110_m_36);
     1062                      Expr _ve__dollar_tmp_m_110_m_33;
     1063                      _ve__dollar_tmp_m_110_m_33 = Expr (_v_deref__deref__deref__R4, (0 + 1), _v_len___dollar_tmp_m_110_m_33);
    9741064                      goto _block4;
    9751065                    }
     
    9841074                        goto _block4__branch5;
    9851075                      }
    986                       int _v_len___dollar_tmp_m_101_m_19;
    987                       _v_len___dollar_tmp_m_101_m_19 = (_v_len37 - _v_len38);
     1076                      int _v_len___dollar_tmp_m_111_m_20;
     1077                      _v_len___dollar_tmp_m_111_m_20 = (_v_len37 - _v_len38);
    9881078                      if (_ve_R.symbol_at (0))
    9891079                      {
     
    10001090                        goto _block4__branch5;
    10011091                      }
    1002                       int _v_len___dollar_tmp_m_101_m_16;
    1003                       _v_len___dollar_tmp_m_101_m_16 = (_v_len39 - _v_len40);
    1004                       if (!_c_8.term_eq (_v_deref__R5, 0))
     1092                      int _v_len___dollar_tmp_m_111_m_17;
     1093                      _v_len___dollar_tmp_m_111_m_17 = (_v_len39 - _v_len40);
     1094                      if (!_c_9.term_eq (_v_deref__R5, 0))
    10051095                      {
    10061096                        goto _block4__branch5;
    10071097                      }
    1008                       Expr _ve__dollar_tmp_m_101_m_19;
    1009                       _ve__dollar_tmp_m_101_m_19 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_101_m_19);
    1010                       Expr _ve__dollar_tmp_m_101_m_16;
    1011                       _ve__dollar_tmp_m_101_m_16 = Expr (_v_deref__R5, (0 + 1), _v_len___dollar_tmp_m_101_m_16);
     1098                      Expr _ve__dollar_tmp_m_111_m_20;
     1099                      _ve__dollar_tmp_m_111_m_20 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_111_m_20);
     1100                      Expr _ve__dollar_tmp_m_111_m_17;
     1101                      _ve__dollar_tmp_m_111_m_17 = Expr (_v_deref__R5, (0 + 1), _v_len___dollar_tmp_m_111_m_17);
    10121102                      goto _block4;
    10131103                    }
     
    10211111                      goto _block3__branch1;
    10221112                    }
    1023                     int _v_len___dollar_tmp_m_102_m_20;
    1024                     _v_len___dollar_tmp_m_102_m_20 = (_v_len41 - _v_len42);
     1113                    int _v_len___dollar_tmp_m_112_m_20;
     1114                    _v_len___dollar_tmp_m_112_m_20 = (_v_len41 - _v_len42);
    10251115                    if (_ve_R.symbol_at (0))
    10261116                    {
     
    10371127                      goto _block3__branch1;
    10381128                    }
    1039                     int _v_len___dollar_tmp_m_102_m_17;
    1040                     _v_len___dollar_tmp_m_102_m_17 = (_v_len43 - _v_len44);
    1041                     if (!_c_9.term_eq (_v_deref__R6, 0))
     1129                    int _v_len___dollar_tmp_m_112_m_17;
     1130                    _v_len___dollar_tmp_m_112_m_17 = (_v_len43 - _v_len44);
     1131                    if (!_c_10.term_eq (_v_deref__R6, 0))
    10421132                    {
    10431133                      goto _block3__branch1;
    10441134                    }
    1045                     Expr _ve__dollar_tmp_m_102_m_20;
    1046                     _ve__dollar_tmp_m_102_m_20 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_102_m_20);
    1047                     Expr _ve__dollar_tmp_m_102_m_17;
    1048                     _ve__dollar_tmp_m_102_m_17 = Expr (_v_deref__R6, (0 + 1), _v_len___dollar_tmp_m_102_m_17);
     1135                    Expr _ve__dollar_tmp_m_112_m_20;
     1136                    _ve__dollar_tmp_m_112_m_20 = Expr (_ve_R, (0 + 1), _v_len___dollar_tmp_m_112_m_20);
     1137                    Expr _ve__dollar_tmp_m_112_m_17;
     1138                    _ve__dollar_tmp_m_112_m_17 = Expr (_v_deref__R6, (0 + 1), _v_len___dollar_tmp_m_112_m_17);
    10491139                  }
    10501140                _block4: {}
     
    10641154                  RF_CALL (rfp_format::MSG, _ve_Fes, _ge_auxcall1);
    10651155                  Expr _ve_aux;
    1066                   RF_CALL (rfp_vars::Gener_Var_Indices, (_vs_N, _ge_auxcall1, _c_10), (_ve_aux, _vs_N));
     1156                  RF_CALL (rfp_vars::Gener_Var_Indices, (_vs_N, _ge_auxcall1, _c_11), (_ve_aux, _vs_N));
    10671157                  RF_CALL (refal::Box::Store, (Free_Idx, _vs_N), /*void*/);
     1158                  RF_CALL (Del_Pragmas, _ve_aux, _ve_aux);
    10681159                  Expr _v_Unstick__Blocks1;
    10691160                  RF_CALL (Unstick_Blocks, _ve_R, (_v_Unstick__Blocks1, _v_res2));
    1070                   _v_res1 = (_ve_L + (_vs_block + _vt_Pragma + _ve_br) () + (_c_11 + _ve_aux) () + (_c_12 + _ve_aux) () + _v_Unstick__Blocks1);
     1161                  _v_res1 = (_ve_L + (_vs_block + _ve_br) () + (_c_12 + _ve_aux) () + (_c_4 + _ve_aux) () + _v_Unstick__Blocks1);
    10711162                  goto _block3;
    10721163                }
     
    10791170                  Expr _ge_auxcall2;
    10801171                  RF_CALL (rfp_format::MSG, _ve_Fes, _ge_auxcall2);
    1081                   _v_res1 = (_ve_L + (_vs_block + _vt_Pragma + _ve_br) ());
     1172                  _v_res1 = (_ve_L + (_vs_block + _ve_br) ());
    10821173                  _v_res2 = _ge_auxcall2;
    10831174                  goto _block3;
     
    10861177                Expr _v_Unstick__Blocks2;
    10871178                RF_CALL (Unstick_Blocks, _ve_R, (_v_Unstick__Blocks2, _v_res2));
    1088                 _v_res1 = (_ve_L + (_vs_block + _vt_Pragma + _ve_br) () + _v_Unstick__Blocks2);
     1179                _v_res1 = (_ve_L + (_vs_block + _ve_br) () + _v_Unstick__Blocks2);
    10891180              }
    10901181            _block3: {}
     
    11111202            _v_len47 = _v_deref__branches.get_len ();
    11121203            int _v_len48;
    1113             _v_len48 = 2;
     1204            _v_len48 = 1;
    11141205            if (_v_len47 < _v_len48)
    11151206            {
     
    11181209            int _v_len__branch;
    11191210            _v_len__branch = (_v_len47 - _v_len48);
    1120             if (!_c_1.term_eq (_v_deref__branches, 0))
     1211            if (!_c_2.term_eq (_v_deref__branches, 0))
    11211212            {
    11221213              RF_FUNC_ERROR (unexpected_fail);
     
    11241215            Expr _ve_rest;
    11251216            _ve_rest = Expr (_ve_branches, (0 + 1), _v_len__rest);
    1126             Expr _vt_p;
    1127             _vt_p = Expr (_v_deref__branches, (0 + 1), 1);
    11281217            Expr _ve_branch;
    1129             _ve_branch = Expr (_v_deref__branches, (0 + 1 + 1), _v_len__branch);
     1218            _ve_branch = Expr (_v_deref__branches, (0 + 1), _v_len__branch);
    11301219            Expr _ve_new__branch;
    11311220            Expr _ve_Fe;
    11321221            RF_CALL (Unstick_Blocks, _ve_branch, (_ve_new__branch, _ve_Fe));
    11331222            _ve_branches = _ve_rest;
    1134             _ve_br = (_ve_br + (_c_1 + _vt_p + _ve_new__branch) ());
     1223            _ve_br = (_ve_br + (_c_2 + _ve_new__branch) ());
    11351224            _ve_Fes = (_ve_Fes + _ve_Fe ());
    11361225          }
     
    11561245          Expr _v_deref__Snt2;
    11571246          _v_deref__Snt2 = Expr (_ve_Snt, 0);
    1158           if (_v_deref__Snt2.get_len () != 3)
     1247          if (_v_deref__Snt2.get_len () != 2)
    11591248          {
    11601249            goto _block1__branch2;
    11611250          }
    1162           if (_v_deref__Snt2.symbol_at ((0 + 1 + 1)))
     1251          if (_v_deref__Snt2.symbol_at ((0 + 1)))
    11631252          {
    11641253            goto _block1__branch2;
    11651254          }
    11661255          Expr _v_deref__deref__Snt2;
    1167           _v_deref__deref__Snt2 = Expr (_v_deref__Snt2, (0 + 1 + 1));
     1256          _v_deref__deref__Snt2 = Expr (_v_deref__Snt2, (0 + 1));
    11681257          int _v_len51;
    11691258          _v_len51 = _v_deref__deref__Snt2.get_len ();
     
    11761265          int _v_len__branches2;
    11771266          _v_len__branches2 = (_v_len51 - _v_len52);
    1178           if (!_c_3.term_eq (_v_deref__Snt2, 0))
     1267          if (!_c_4.term_eq (_v_deref__Snt2, 0))
    11791268          {
    11801269            goto _block1__branch2;
     
    11861275          Expr _ve_R;
    11871276          _ve_R = Expr (_ve_Snt, (0 + 1), _v_len__R2);
    1188           Expr _vt_Pragma;
    1189           _vt_Pragma = Expr (_v_deref__Snt2, (0 + 1), 1);
    11901277          Expr _vs_block;
    11911278          _vs_block = Expr (_v_deref__deref__Snt2, 0, 1);
     
    11941281          {
    11951282            {
    1196               if (!_vs_block.term_eq (_c_6, 0))
     1283              if (!_vs_block.term_eq (_c_7, 0))
    11971284              {
    11981285                goto _block6__branch1;
     
    12011288            }
    12021289          _block6__branch1: {}
    1203             if (!_vs_block.term_eq (_c_7, 0))
     1290            if (!_vs_block.term_eq (_c_8, 0))
    12041291            {
    12051292              goto _block1__branch2;
     
    12331320          _v_len55 = _v_deref__Snt3.get_len ();
    12341321          int _v_len56;
    1235           _v_len56 = 2;
     1322          _v_len56 = 1;
    12361323          if (_v_len55 < _v_len56)
    12371324          {
     
    12401327          int _v_len__Re;
    12411328          _v_len__Re = (_v_len55 - _v_len56);
    1242           if (!_c_3.term_eq (_v_deref__Snt3, 0))
     1329          if (!_c_4.term_eq (_v_deref__Snt3, 0))
    12431330          {
    12441331            goto _block1__branch3;
     
    12461333          Expr _ve_R;
    12471334          _ve_R = Expr (_ve_Snt, (0 + 1), _v_len__R3);
    1248           Expr _vt_Pragma;
    1249           _vt_Pragma = Expr (_v_deref__Snt3, (0 + 1), 1);
    12501335          Expr _ve_Re;
    1251           _ve_Re = Expr (_v_deref__Snt3, (0 + 1 + 1), _v_len__Re);
     1336          _ve_Re = Expr (_v_deref__Snt3, (0 + 1), _v_len__Re);
    12521337          Expr _ve_assigns;
    12531338          RF_CALL (Flatten_Result, (_c_13, empty, _ve_Re), (_ve_assigns, _ve_Re));
     
    12891374              Expr _ve_2;
    12901375              _ve_2 = Expr (_v_deref__Re, (0 + 1), _v_len__2);
    1291               _ve_Result = ((_c_3 + _vt_Pragma + _ve_1) () + _ve_2);
     1376              _ve_Result = ((_c_4 + _ve_1) () + _ve_2);
    12921377              goto _block7;
    12931378            }
    12941379          _block7__branch1: {}
    1295             _ve_Result = (_c_3 + _vt_Pragma + _ve_Re) ();
     1380            _ve_Result = (_c_4 + _ve_Re) ();
    12961381          }
    12971382        _block7: {}
     
    13061391                goto _block8__branch1;
    13071392              }
    1308               int _v_len___dollar_tmp_m_122_m_13;
    1309               _v_len___dollar_tmp_m_122_m_13 = (_v_len61 - _v_len62);
    1310               Expr _vv__dollar_tmp_m_122_m_13;
    1311               _vv__dollar_tmp_m_122_m_13 = Expr (_ve_R, 0, _v_len___dollar_tmp_m_122_m_13);
     1393              int _v_len___dollar_tmp_m_133_m_13;
     1394              _v_len___dollar_tmp_m_133_m_13 = (_v_len61 - _v_len62);
     1395              Expr _vv__dollar_tmp_m_133_m_13;
     1396              _vv__dollar_tmp_m_133_m_13 = Expr (_ve_R, 0, _v_len___dollar_tmp_m_133_m_13);
    13121397              Expr _v_Unstick__Blocks4;
    13131398              RF_CALL (Unstick_Blocks, _ve_R, (_v_Unstick__Blocks4, _v_res2));
     
    13561441          _v_len65 = _v_deref__deref__Snt4.get_len ();
    13571442          int _v_len66;
    1358           _v_len66 = 2;
     1443          _v_len66 = 1;
    13591444          if (_v_len65 < _v_len66)
    13601445          {
     
    13671452            goto _block1__branch4;
    13681453          }
    1369           if (!_c_1.term_eq (_v_deref__deref__Snt4, 0))
     1454          if (!_c_2.term_eq (_v_deref__deref__Snt4, 0))
    13701455          {
    13711456            goto _block1__branch4;
     
    13731458          Expr _ve_R;
    13741459          _ve_R = Expr (_ve_Snt, (0 + 1), _v_len__R4);
    1375           Expr _vt_p1;
    1376           _vt_p1 = Expr (_v_deref__deref__Snt4, (0 + 1), 1);
    13771460          Expr _ve_body;
    1378           _ve_body = Expr (_v_deref__deref__Snt4, (0 + 1 + 1), _v_len__body);
     1461          _ve_body = Expr (_v_deref__deref__Snt4, (0 + 1), _v_len__body);
    13791462          Expr _v_Unstick__Blocks5;
    13801463          RF_CALL (Unstick_Blocks, _ve_body, (_ve_body, _v_Unstick__Blocks5));
     
    13831466          Expr _v_Unstick__Blocks6;
    13841467          RF_CALL (Unstick_Blocks, _ve_R, (_v_Unstick__Blocks6, _v_res2));
    1385           _v_res1 = (_ve_L + (_c_15 + (_c_1 + _vt_p1 + _ve_body) ()) () + _v_Unstick__Blocks6);
     1468          _v_res1 = (_ve_L + (_c_15 + (_c_2 + _ve_body) ()) () + _v_Unstick__Blocks6);
    13861469          goto _block1;
    13871470        }
     
    14171500          _v_len67 = _v_deref__deref__Snt52.get_len ();
    14181501          int _v_len68;
    1419           _v_len68 = 2;
     1502          _v_len68 = 1;
    14201503          if (_v_len67 < _v_len68)
    14211504          {
     
    14271510          _v_len69 = _v_deref__deref__Snt5.get_len ();
    14281511          int _v_len70;
    1429           _v_len70 = 2;
     1512          _v_len70 = 1;
    14301513          if (_v_len69 < _v_len70)
    14311514          {
     
    14381521            goto _block1__branch5;
    14391522          }
    1440           if (!_c_1.term_eq (_v_deref__deref__Snt5, 0))
     1523          if (!_c_2.term_eq (_v_deref__deref__Snt5, 0))
    14411524          {
    14421525            goto _block1__branch5;
    14431526          }
    1444           if (!_c_1.term_eq (_v_deref__deref__Snt52, 0))
     1527          if (!_c_2.term_eq (_v_deref__deref__Snt52, 0))
    14451528          {
    14461529            goto _block1__branch5;
     
    14481531          Expr _vt_IterVars;
    14491532          _vt_IterVars = Expr (_v_deref__Snt5, (0 + 1 + 1), 1);
    1450           Expr _vt_p1;
    1451           _vt_p1 = Expr (_v_deref__deref__Snt5, (0 + 1), 1);
    14521533          Expr _ve_body;
    1453           _ve_body = Expr (_v_deref__deref__Snt5, (0 + 1 + 1), _v_len__body2);
    1454           Expr _vt_p2;
    1455           _vt_p2 = Expr (_v_deref__deref__Snt52, (0 + 1), 1);
     1534          _ve_body = Expr (_v_deref__deref__Snt5, (0 + 1), _v_len__body2);
    14561535          Expr _ve_condition;
    1457           _ve_condition = Expr (_v_deref__deref__Snt52, (0 + 1 + 1), _v_len__condition);
     1536          _ve_condition = Expr (_v_deref__deref__Snt52, (0 + 1), _v_len__condition);
    14581537          Expr _v_Unstick__Blocks7;
    14591538          RF_CALL (Unstick_Blocks, _ve_body, (_ve_body, _v_Unstick__Blocks7));
    1460           Expr _vt__dollar_tmp_m_132_m_40;
    1461           _vt__dollar_tmp_m_132_m_40 = _v_Unstick__Blocks7 ();
     1539          Expr _vt__dollar_tmp_m_143_m_40;
     1540          _vt__dollar_tmp_m_143_m_40 = _v_Unstick__Blocks7 ();
    14621541          Expr _ve_Format;
    14631542          RF_CALL (Unstick_Blocks, _ve_condition, (_ve_condition, _ve_Format));
    1464           _v_res1 = (_ve_L + (_c_16 + (_c_1 + _vt_p1 + _ve_body) () + _vt_IterVars + (_c_1 + _vt_p2 + _ve_condition) ()) ());
     1543          _v_res1 = (_ve_L + (_c_16 + (_c_2 + _ve_body) () + _vt_IterVars + (_c_2 + _ve_condition) ()) ());
    14651544          _v_res2 = _ve_Format;
    14661545          goto _block1;
     
    14971576          _v_len73 = _v_deref__deref__Snt6.get_len ();
    14981577          int _v_len74;
    1499           _v_len74 = 2;
     1578          _v_len74 = 1;
    15001579          if (_v_len73 < _v_len74)
    15011580          {
     
    15081587            goto _block1__branch6;
    15091588          }
    1510           if (!_c_1.term_eq (_v_deref__deref__Snt6, 0))
     1589          if (!_c_2.term_eq (_v_deref__deref__Snt6, 0))
    15111590          {
    15121591            goto _block1__branch6;
     
    15161595          Expr _vt_CatchBlock;
    15171596          _vt_CatchBlock = Expr (_v_deref__Snt6, (0 + 1 + 1 + _v_len__NOFAIL), 1);
    1518           Expr _vt_p1;
    1519           _vt_p1 = Expr (_v_deref__deref__Snt6, (0 + 1), 1);
    15201597          Expr _ve_TrySnt;
    1521           _ve_TrySnt = Expr (_v_deref__deref__Snt6, (0 + 1 + 1), _v_len__TrySnt);
     1598          _ve_TrySnt = Expr (_v_deref__deref__Snt6, (0 + 1), _v_len__TrySnt);
    15221599          Expr _v_Unstick__Blocks8;
    15231600          RF_CALL (Unstick_Blocks, _ve_TrySnt, (_ve_TrySnt, _v_Unstick__Blocks8));
     
    15311608          Expr _ge_auxcall3;
    15321609          RF_CALL (rfp_format::MSG, (_vt_Try__Fe + _vt_Catch__Fe), _ge_auxcall3);
    1533           _v_res1 = (_ve_L + (_c_17 + (_c_1 + _vt_p1 + _ve_TrySnt) () + _ve_NOFAIL + _ve_CatchBlock) ());
     1610          _v_res1 = (_ve_L + (_c_17 + (_c_2 + _ve_TrySnt) () + _ve_NOFAIL + _ve_CatchBlock) ());
    15341611          _v_res2 = _ge_auxcall3;
    15351612          goto _block1;
     
    15411618            goto _block1__branch7;
    15421619          }
    1543           if (_ve_Snt.symbol_at (0))
     1620          if (!_c_18.term_eq (_ve_Snt, 0))
    15441621          {
    15451622            goto _block1__branch7;
    15461623          }
    1547           Expr _v_deref__Snt7;
    1548           _v_deref__Snt7 = Expr (_ve_Snt, 0);
     1624          _v_res1 = _ve_Sentence;
     1625          _v_res2 = _c_18;
     1626          goto _block1;
     1627        }
     1628      _block1__branch7: {}
     1629        {
    15491630          int _v_len75;
    1550           _v_len75 = _v_deref__Snt7.get_len ();
     1631          _v_len75 = _ve_Snt.get_len ();
    15511632          int _v_len76;
    15521633          _v_len76 = 1;
    15531634          if (_v_len75 < _v_len76)
    15541635          {
    1555             goto _block1__branch7;
    1556           }
    1557           int _v_len___dollar_tmp_m_139_m_10;
    1558           _v_len___dollar_tmp_m_139_m_10 = (_v_len75 - _v_len76);
    1559           if (!_c_14.term_eq (_v_deref__Snt7, 0))
    1560           {
    1561             goto _block1__branch7;
    1562           }
    1563           Expr _ve__dollar_tmp_m_139_m_10;
    1564           _ve__dollar_tmp_m_139_m_10 = Expr (_v_deref__Snt7, (0 + 1), _v_len___dollar_tmp_m_139_m_10);
    1565           _v_res1 = _ve_Sentence;
    1566           _v_res2 = _c_18;
    1567           goto _block1;
    1568         }
    1569       _block1__branch7: {}
    1570         {
    1571           int _v_len77;
    1572           _v_len77 = _ve_Snt.get_len ();
    1573           int _v_len78;
    1574           _v_len78 = 1;
    1575           if (_v_len77 < _v_len78)
    1576           {
    15771636            goto _block1__branch8;
    15781637          }
    15791638          int _v_len__R5;
    1580           _v_len__R5 = (_v_len77 - _v_len78);
    1581           if (_ve_Snt.symbol_at (0))
    1582           {
    1583             goto _block1__branch8;
    1584           }
    1585           Expr _v_deref__Snt8;
    1586           _v_deref__Snt8 = Expr (_ve_Snt, 0);
    1587           if (_v_deref__Snt8.get_len () != 2)
    1588           {
    1589             goto _block1__branch8;
    1590           }
    1591           if (!_c_19.term_eq (_v_deref__Snt8, 0))
     1639          _v_len__R5 = (_v_len75 - _v_len76);
     1640          if (!_c_19.term_eq (_ve_Snt, 0))
    15921641          {
    15931642            goto _block1__branch8;
     
    15951644          Expr _ve_R;
    15961645          _ve_R = Expr (_ve_Snt, (0 + 1), _v_len__R5);
    1597           Expr _vt_Pragma;
    1598           _vt_Pragma = Expr (_v_deref__Snt8, (0 + 1), 1);
    15991646          Expr _v_Unstick__Blocks10;
    16001647          RF_CALL (Unstick_Blocks, _ve_R, (_ve_R, _v_Unstick__Blocks10));
    1601           Expr _vt__dollar_tmp_m_141_m_32;
    1602           _vt__dollar_tmp_m_141_m_32 = _v_Unstick__Blocks10 ();
    1603           _v_res1 = (_ve_L + (_c_19 + _vt_Pragma) () + _ve_R);
     1648          Expr _vt__dollar_tmp_m_152_m_32;
     1649          _vt__dollar_tmp_m_152_m_32 = _v_Unstick__Blocks10 ();
     1650          _v_res1 = (_ve_L + _c_19 + _ve_R);
    16041651          _v_res2 = _c_18;
    16051652          goto _block1;
     
    16541701            goto _block2__branch1;
    16551702          }
    1656           int _v_len___dollar_tmp_m_147_m_30;
    1657           _v_len___dollar_tmp_m_147_m_30 = (_v_len3 - _v_len4);
    1658           if (!_c_6.term_eq (_v_deref__1, 0))
     1703          int _v_len___dollar_tmp_m_158_m_28;
     1704          _v_len___dollar_tmp_m_158_m_28 = (_v_len3 - _v_len4);
     1705          if (!_c_7.term_eq (_v_deref__1, 0))
    16591706          {
    16601707            goto _block2__branch1;
    16611708          }
    1662           Expr _ve__dollar_tmp_m_147_m_30;
    1663           _ve__dollar_tmp_m_147_m_30 = Expr (_v_deref__1, (0 + 1), _v_len___dollar_tmp_m_147_m_30);
     1709          Expr _ve__dollar_tmp_m_158_m_28;
     1710          _ve__dollar_tmp_m_158_m_28 = Expr (_v_deref__1, (0 + 1), _v_len___dollar_tmp_m_158_m_28);
    16641711          goto _block2;
    16651712        }
     
    16791726          goto _block1__branch1;
    16801727        }
    1681         int _v_len___dollar_tmp_m_147_m_44;
    1682         _v_len___dollar_tmp_m_147_m_44 = (_v_len5 - _v_len6);
    1683         if (!_c_7.term_eq (_v_deref__12, 0))
     1728        int _v_len___dollar_tmp_m_158_m_40;
     1729        _v_len___dollar_tmp_m_158_m_40 = (_v_len5 - _v_len6);
     1730        if (!_c_8.term_eq (_v_deref__12, 0))
    16841731        {
    16851732          goto _block1__branch1;
    16861733        }
    1687         Expr _ve__dollar_tmp_m_147_m_44;
    1688         _ve__dollar_tmp_m_147_m_44 = Expr (_v_deref__12, (0 + 1), _v_len___dollar_tmp_m_147_m_44);
     1734        Expr _ve__dollar_tmp_m_158_m_40;
     1735        _ve__dollar_tmp_m_158_m_40 = Expr (_v_deref__12, (0 + 1), _v_len___dollar_tmp_m_158_m_40);
    16891736      }
    16901737    _block2: {}
     
    17221769        RF_CALL (rfp_vars::Gener_Var_Indices, (_vs_N, _ve_Format, _c_20), (_ve_aux, _vs_N));
    17231770        RF_CALL (refal::Box::Store, (Free_Idx, _vs_N), /*void*/);
     1771        RF_CALL (Del_Pragmas, _ve_aux, _ve_aux);
    17241772        Expr _v_Flatten__Result1;
    17251773        RF_CALL (Flatten_Result, (_vs_Istail, (_ve_Re + _ve_aux), _ve_rest), (_v_Flatten__Result1, _v_res2));
    1726         _v_res1 = (_ve_1 + (_c_11 + _ve_aux) () + _v_Flatten__Result1);
     1774        _v_res1 = (_ve_1 + (_c_12 + _ve_aux) () + _v_Flatten__Result1);
    17271775      }
    17281776    _block3: {}
     
    17501798      _v_len9 = _v_deref__items.get_len ();
    17511799      int _v_len10;
    1752       _v_len10 = 3;
     1800      _v_len10 = 2;
    17531801      if (_v_len9 < _v_len10)
    17541802      {
     
    17631811      Expr _ve_rest;
    17641812      _ve_rest = Expr (_ve_items, (0 + 1), _v_len__rest2);
    1765       Expr _vt_p;
    1766       _vt_p = Expr (_v_deref__items, (0 + 1), 1);
    17671813      Expr _vt_name;
    1768       _vt_name = Expr (_v_deref__items, (0 + 1 + 1), 1);
     1814      _vt_name = Expr (_v_deref__items, (0 + 1), 1);
    17691815      Expr _ve_r;
    1770       _ve_r = Expr (_v_deref__items, (0 + 1 + 1 + 1), _v_len__r);
     1816      _ve_r = Expr (_v_deref__items, (0 + 1 + 1), _v_len__r);
    17711817      Expr _ve_assigns;
    17721818      RF_CALL (Flatten_Result, (_c_22, empty, _ve_r), (_ve_assigns, _ve_r));
    17731819      Expr _vt_1;
    1774       _vt_1 = (_c_21 + _vt_p + _vt_name + _ve_r) ();
     1820      _vt_1 = (_c_21 + _vt_name + _ve_r) ();
    17751821      {
    17761822        {
     
    18051851        RF_CALL (rfp_vars::Gener_Var_Indices, (_vs_N, _ge_auxcall1, _c_23), (_ve_aux1, _vs_N));
    18061852        RF_CALL (refal::Box::Store, (Free_Idx, _vs_N), /*void*/);
     1853        RF_CALL (Del_Pragmas, _ve_aux1, _ve_aux1);
    18071854        Expr _v_Flatten__Result2;
    18081855        RF_CALL (Flatten_Result, (_vs_Istail, (_ve_Re + _ve_aux1), _ve_rest), (_v_Flatten__Result2, _v_res2));
    1809         _v_res1 = (_ve_assigns + (_c_12 + _vt_1) () + (_c_11 + _ve_aux1) () + _v_Flatten__Result2);
     1856        _v_res1 = (_ve_assigns + (_c_4 + _vt_1) () + (_c_12 + _ve_aux1) () + _v_Flatten__Result2);
    18101857      }
    18111858    _block4: {}
     
    18921939      Expr _ve_Pe;
    18931940      Expr _ve_Snt;
     1941      Expr _vs_pragmas;
    18941942      {
    18951943        {
     
    19201968          int _v_len__Pe__4;
    19211969          _v_len__Pe__4 = (_v_len3 - _v_len4);
    1922           if (!_c_8.term_eq (_v_deref__Sentence, 0))
     1970          if (_v_deref__Sentence.symbol_at ((0 + 1)))
     1971          {
     1972            goto _block2__branch1;
     1973          }
     1974          Expr _v_deref__deref__Sentence;
     1975          _v_deref__deref__Sentence = Expr (_v_deref__Sentence, (0 + 1));
     1976          int _v_len5;
     1977          _v_len5 = _v_deref__deref__Sentence.get_len ();
     1978          int _v_len6;
     1979          _v_len6 = 1;
     1980          if (_v_len5 < _v_len6)
     1981          {
     1982            goto _block2__branch1;
     1983          }
     1984          int _v_len___dollar_tmp_m_205_m_20;
     1985          _v_len___dollar_tmp_m_205_m_20 = (_v_len5 - _v_len6);
     1986          if (!_c_9.term_eq (_v_deref__Sentence, 0))
     1987          {
     1988            goto _block2__branch1;
     1989          }
     1990          if (!_c_1.term_eq (_v_deref__deref__Sentence, 0))
    19231991          {
    19241992            goto _block2__branch1;
     
    19261994          Expr _ge_Snt__4;
    19271995          _ge_Snt__4 = Expr (_ve_Sentence, (0 + 1), _v_len__Snt__4);
    1928           Expr _vt__dollar_tmp_m_192_m_12;
    1929           _vt__dollar_tmp_m_192_m_12 = Expr (_v_deref__Sentence, (0 + 1), 1);
    19301996          Expr _ge_Pe__4;
    19311997          _ge_Pe__4 = Expr (_v_deref__Sentence, (0 + 1 + 1), _v_len__Pe__4);
     1998          Expr _ve__dollar_tmp_m_205_m_20;
     1999          _ve__dollar_tmp_m_205_m_20 = Expr (_v_deref__deref__Sentence, (0 + 1), _v_len___dollar_tmp_m_205_m_20);
    19322000          _ve_Pe = _ge_Pe__4;
    19332001          _ve_Snt = _ge_Snt__4;
     2002          _vs_pragmas = _c_25;
    19342003          goto _block2;
    19352004        }
    19362005      _block2__branch1: {}
    1937         int _v_len5;
    1938         _v_len5 = _ve_Sentence.get_len ();
    1939         int _v_len6;
    1940         _v_len6 = 1;
    1941         if (_v_len5 < _v_len6)
     2006        {
     2007          int _v_len7;
     2008          _v_len7 = _ve_Sentence.get_len ();
     2009          int _v_len8;
     2010          _v_len8 = 1;
     2011          if (_v_len7 < _v_len8)
     2012          {
     2013            goto _block2__branch2;
     2014          }
     2015          int _v_len__Snt__42;
     2016          _v_len__Snt__42 = (_v_len7 - _v_len8);
     2017          if (_ve_Sentence.symbol_at (0))
     2018          {
     2019            goto _block2__branch2;
     2020          }
     2021          Expr _v_deref__Sentence2;
     2022          _v_deref__Sentence2 = Expr (_ve_Sentence, 0);
     2023          int _v_len9;
     2024          _v_len9 = _v_deref__Sentence2.get_len ();
     2025          int _v_len10;
     2026          _v_len10 = 2;
     2027          if (_v_len9 < _v_len10)
     2028          {
     2029            goto _block2__branch2;
     2030          }
     2031          int _v_len__Pe__42;
     2032          _v_len__Pe__42 = (_v_len9 - _v_len10);
     2033          if (_v_deref__Sentence2.symbol_at ((0 + 1)))
     2034          {
     2035            goto _block2__branch2;
     2036          }
     2037          Expr _v_deref__deref__Sentence2;
     2038          _v_deref__deref__Sentence2 = Expr (_v_deref__Sentence2, (0 + 1));
     2039          int _v_len11;
     2040          _v_len11 = _v_deref__deref__Sentence2.get_len ();
     2041          int _v_len12;
     2042          _v_len12 = 1;
     2043          if (_v_len11 < _v_len12)
     2044          {
     2045            goto _block2__branch2;
     2046          }
     2047          int _v_len___dollar_tmp_m_206_m_21;
     2048          _v_len___dollar_tmp_m_206_m_21 = (_v_len11 - _v_len12);
     2049          if (!_c_10.term_eq (_v_deref__Sentence2, 0))
     2050          {
     2051            goto _block2__branch2;
     2052          }
     2053          if (!_c_1.term_eq (_v_deref__deref__Sentence2, 0))
     2054          {
     2055            goto _block2__branch2;
     2056          }
     2057          Expr _ge_Snt__4;
     2058          _ge_Snt__4 = Expr (_ve_Sentence, (0 + 1), _v_len__Snt__42);
     2059          Expr _ge_Pe__4;
     2060          _ge_Pe__4 = Expr (_v_deref__Sentence2, (0 + 1 + 1), _v_len__Pe__42);
     2061          Expr _ve__dollar_tmp_m_206_m_21;
     2062          _ve__dollar_tmp_m_206_m_21 = Expr (_v_deref__deref__Sentence2, (0 + 1), _v_len___dollar_tmp_m_206_m_21);
     2063          _ve_Pe = _ge_Pe__4;
     2064          _ve_Snt = _ge_Snt__4;
     2065          _vs_pragmas = _c_25;
     2066          goto _block2;
     2067        }
     2068      _block2__branch2: {}
     2069        {
     2070          int _v_len13;
     2071          _v_len13 = _ve_Sentence.get_len ();
     2072          int _v_len14;
     2073          _v_len14 = 1;
     2074          if (_v_len13 < _v_len14)
     2075          {
     2076            goto _block2__branch3;
     2077          }
     2078          int _v_len__Snt__43;
     2079          _v_len__Snt__43 = (_v_len13 - _v_len14);
     2080          if (_ve_Sentence.symbol_at (0))
     2081          {
     2082            goto _block2__branch3;
     2083          }
     2084          Expr _v_deref__Sentence3;
     2085          _v_deref__Sentence3 = Expr (_ve_Sentence, 0);
     2086          int _v_len15;
     2087          _v_len15 = _v_deref__Sentence3.get_len ();
     2088          int _v_len16;
     2089          _v_len16 = 1;
     2090          if (_v_len15 < _v_len16)
     2091          {
     2092            goto _block2__branch3;
     2093          }
     2094          int _v_len__Pe__43;
     2095          _v_len__Pe__43 = (_v_len15 - _v_len16);
     2096          if (!_c_9.term_eq (_v_deref__Sentence3, 0))
     2097          {
     2098            goto _block2__branch3;
     2099          }
     2100          Expr _ge_Snt__4;
     2101          _ge_Snt__4 = Expr (_ve_Sentence, (0 + 1), _v_len__Snt__43);
     2102          Expr _ge_Pe__4;
     2103          _ge_Pe__4 = Expr (_v_deref__Sentence3, (0 + 1), _v_len__Pe__43);
     2104          _ve_Pe = _ge_Pe__4;
     2105          _ve_Snt = _ge_Snt__4;
     2106          _vs_pragmas = _c_26;
     2107          goto _block2;
     2108        }
     2109      _block2__branch3: {}
     2110        int _v_len17;
     2111        _v_len17 = _ve_Sentence.get_len ();
     2112        int _v_len18;
     2113        _v_len18 = 1;
     2114        if (_v_len17 < _v_len18)
    19422115        {
    19432116          goto _block1__branch1;
    19442117        }
    1945         int _v_len__Snt__42;
    1946         _v_len__Snt__42 = (_v_len5 - _v_len6);
     2118        int _v_len__Snt__44;
     2119        _v_len__Snt__44 = (_v_len17 - _v_len18);
    19472120        if (_ve_Sentence.symbol_at (0))
    19482121        {
    19492122          goto _block1__branch1;
    19502123        }
    1951         Expr _v_deref__Sentence2;
    1952         _v_deref__Sentence2 = Expr (_ve_Sentence, 0);
    1953         int _v_len7;
    1954         _v_len7 = _v_deref__Sentence2.get_len ();
    1955         int _v_len8;
    1956         _v_len8 = 2;
    1957         if (_v_len7 < _v_len8)
     2124        Expr _v_deref__Sentence4;
     2125        _v_deref__Sentence4 = Expr (_ve_Sentence, 0);
     2126        int _v_len19;
     2127        _v_len19 = _v_deref__Sentence4.get_len ();
     2128        int _v_len20;
     2129        _v_len20 = 1;
     2130        if (_v_len19 < _v_len20)
    19582131        {
    19592132          goto _block1__branch1;
    19602133        }
    1961         int _v_len__Pe__42;
    1962         _v_len__Pe__42 = (_v_len7 - _v_len8);
    1963         if (!_c_9.term_eq (_v_deref__Sentence2, 0))
     2134        int _v_len__Pe__44;
     2135        _v_len__Pe__44 = (_v_len19 - _v_len20);
     2136        if (!_c_10.term_eq (_v_deref__Sentence4, 0))
    19642137        {
    19652138          goto _block1__branch1;
    19662139        }
    19672140        Expr _ge_Snt__4;
    1968         _ge_Snt__4 = Expr (_ve_Sentence, (0 + 1), _v_len__Snt__42);
    1969         Expr _vt__dollar_tmp_m_193_m_13;
    1970         _vt__dollar_tmp_m_193_m_13 = Expr (_v_deref__Sentence2, (0 + 1), 1);
     2141        _ge_Snt__4 = Expr (_ve_Sentence, (0 + 1), _v_len__Snt__44);
    19712142        Expr _ge_Pe__4;
    1972         _ge_Pe__4 = Expr (_v_deref__Sentence2, (0 + 1 + 1), _v_len__Pe__42);
     2143        _ge_Pe__4 = Expr (_v_deref__Sentence4, (0 + 1), _v_len__Pe__44);
    19732144        _ve_Pe = _ge_Pe__4;
    19742145        _ve_Snt = _ge_Snt__4;
     2146        _vs_pragmas = _c_26;
    19752147      }
    19762148    _block2: {}
     
    19902162              goto _negation1;
    19912163            }
    1992             RF_lsplit (_ve_args, 0, _ve__dollar_tmp_m_198_m_24, _v_lsplit__args);
     2164            RF_lsplit (_ve_args, 0, _ve__dollar_tmp_m_213_m_24, _v_lsplit__args);
    19932165            for ( ; ; RF_iter(_ve_args)++)
    19942166            {
     
    20082180                Expr _v_deref__lsplit__args;
    20092181                _v_deref__lsplit__args = Expr (_v_lsplit__args, 0);
    2010                 int _v_len9;
    2011                 _v_len9 = _v_deref__lsplit__args.get_len ();
    2012                 int _v_len10;
    2013                 _v_len10 = 1;
    2014                 if (_v_len9 < _v_len10)
     2182                int _v_len21;
     2183                _v_len21 = _v_deref__lsplit__args.get_len ();
     2184                int _v_len22;
     2185                _v_len22 = 1;
     2186                if (_v_len21 < _v_len22)
    20152187                {
    20162188                  goto _continue1;
    20172189                }
    2018                 int _v_len___dollar_tmp_m_198_m_27;
    2019                 _v_len___dollar_tmp_m_198_m_27 = (_v_len9 - _v_len10);
    2020                 Expr _ve__dollar_tmp_m_198_m_27;
    2021                 _ve__dollar_tmp_m_198_m_27 = Expr (_v_deref__lsplit__args, 0, _v_len___dollar_tmp_m_198_m_27);
     2190                int _v_len___dollar_tmp_m_213_m_27;
     2191                _v_len___dollar_tmp_m_213_m_27 = (_v_len21 - _v_len22);
     2192                Expr _ve__dollar_tmp_m_213_m_27;
     2193                _ve__dollar_tmp_m_213_m_27 = Expr (_v_deref__lsplit__args, 0, _v_len___dollar_tmp_m_213_m_27);
    20222194                Expr _vt_1;
    2023                 _vt_1 = Expr (_v_deref__lsplit__args, (0 + _v_len___dollar_tmp_m_198_m_27), 1);
     2195                _vt_1 = Expr (_v_deref__lsplit__args, (0 + _v_len___dollar_tmp_m_213_m_27), 1);
    20242196                Expr _v_subexpr__lsplit__args;
    20252197                _v_subexpr__lsplit__args = Expr (_v_lsplit__args, (0 + 1), (_v_lsplit__args.get_len () - (0 + 1 + 0)));
    2026                 RF_lsplit (_v_subexpr__lsplit__args, 0, _ve__dollar_tmp_m_198_m_33, _v_lsplit__lsplit__args);
     2198                RF_lsplit (_v_subexpr__lsplit__args, 0, _ve__dollar_tmp_m_213_m_33, _v_lsplit__lsplit__args);
    20272199                for ( ; ; RF_iter(_v_subexpr__lsplit__args)++)
    20282200                {
     
    20322204                      goto _continue1;
    20332205                    }
    2034                     int _v_len11;
    2035                     _v_len11 = _v_lsplit__lsplit__args.get_len ();
    2036                     int _v_len12;
    2037                     _v_len12 = 1;
    2038                     if (_v_len11 < _v_len12)
     2206                    int _v_len23;
     2207                    _v_len23 = _v_lsplit__lsplit__args.get_len ();
     2208                    int _v_len24;
     2209                    _v_len24 = 1;
     2210                    if (_v_len23 < _v_len24)
    20392211                    {
    20402212                      goto _continue1;
    20412213                    }
    2042                     int _v_len___dollar_tmp_m_198_m_42;
    2043                     _v_len___dollar_tmp_m_198_m_42 = (_v_len11 - _v_len12);
     2214                    int _v_len___dollar_tmp_m_213_m_42;
     2215                    _v_len___dollar_tmp_m_213_m_42 = (_v_len23 - _v_len24);
    20442216                    if (_v_lsplit__lsplit__args.symbol_at (0))
    20452217                    {
     
    20482220                    Expr _v_deref__lsplit__lsplit__args;
    20492221                    _v_deref__lsplit__lsplit__args = Expr (_v_lsplit__lsplit__args, 0);
    2050                     int _v_len13;
    2051                     _v_len13 = _v_deref__lsplit__lsplit__args.get_len ();
    2052                     int _v_len14;
    2053                     _v_len14 = 1;
    2054                     if (_v_len13 < _v_len14)
     2222                    int _v_len25;
     2223                    _v_len25 = _v_deref__lsplit__lsplit__args.get_len ();
     2224                    int _v_len26;
     2225                    _v_len26 = 1;
     2226                    if (_v_len25 < _v_len26)
    20552227                    {
    20562228                      goto _continue2;
    20572229                    }
    2058                     int _v_len___dollar_tmp_m_198_m_36;
    2059                     _v_len___dollar_tmp_m_198_m_36 = (_v_len13 - _v_len14);
    2060                     if (!_vt_1.term_eq (_v_deref__lsplit__lsplit__args, (0 + _v_len___dollar_tmp_m_198_m_36)))
     2230                    int _v_len___dollar_tmp_m_213_m_36;
     2231                    _v_len___dollar_tmp_m_213_m_36 = (_v_len25 - _v_len26);
     2232                    if (!_vt_1.term_eq (_v_deref__lsplit__lsplit__args, (0 + _v_len___dollar_tmp_m_213_m_36)))
    20612233                    {
    20622234                      goto _continue2;
    20632235                    }
    2064                     Expr _ve__dollar_tmp_m_198_m_42;
    2065                     _ve__dollar_tmp_m_198_m_42 = Expr (_v_lsplit__lsplit__args, (0 + 1), _v_len___dollar_tmp_m_198_m_42);
    2066                     Expr _ve__dollar_tmp_m_198_m_36;
    2067                     _ve__dollar_tmp_m_198_m_36 = Expr (_v_deref__lsplit__lsplit__args, 0, _v_len___dollar_tmp_m_198_m_36);
     2236                    Expr _ve__dollar_tmp_m_213_m_42;
     2237                    _ve__dollar_tmp_m_213_m_42 = Expr (_v_lsplit__lsplit__args, (0 + 1), _v_len___dollar_tmp_m_213_m_42);
     2238                    Expr _ve__dollar_tmp_m_213_m_36;
     2239                    _ve__dollar_tmp_m_213_m_36 = Expr (_v_deref__lsplit__lsplit__args, 0, _v_len___dollar_tmp_m_213_m_36);
    20682240                    goto _exit2;
    20692241                  }
     
    20852257      _block3__branch1: {}
    20862258        Expr _ve_in__expr;
    2087         Expr _vs__dollar_tmp_m_200_m_56;
    2088         RF_CALL (rfp_vars::Gener_Var_Indices, (_c_4, _ve_in, _c_25), (_ve_in__expr, _vs__dollar_tmp_m_200_m_56));
    2089         _ge_in__1 = _ve_in__expr;
    2090         _ge_Sentence__1 = ((_c_12 + _ve_in__expr) () + _ve_Sentence);
     2259        Expr _vs__dollar_tmp_m_215_m_56;
     2260        RF_CALL (rfp_vars::Gener_Var_Indices, (_c_5, _ve_in, _c_27), (_ve_in__expr, _vs__dollar_tmp_m_215_m_56));
     2261        {
     2262          {
     2263            if (!_vs_pragmas.term_eq (_c_26, 0))
     2264            {
     2265              goto _block5__branch1;
     2266            }
     2267            Expr _ge_in__expr__7;
     2268            RF_CALL (Del_Pragmas, _ve_in__expr, _ge_in__expr__7);
     2269            _ge_in__1 = _ge_in__expr__7;
     2270            _ge_Sentence__1 = ((_c_4 + _ge_in__expr__7) () + _ve_Sentence);
     2271            goto _block5;
     2272          }
     2273        _block5__branch1: {}
     2274          _ge_in__1 = _ve_in__expr;
     2275          _ge_Sentence__1 = ((_c_28 + _ve_in__expr) () + _ve_Sentence);
     2276        }
     2277      _block5: {}
    20912278      }
    20922279    _block3: {}
     
    20952282  _block1__branch1: {}
    20962283    {
    2097       int _v_len15;
    2098       _v_len15 = _ve_Sentence.get_len ();
    2099       int _v_len16;
    2100       _v_len16 = 1;
    2101       if (_v_len15 < _v_len16)
     2284      int _v_len27;
     2285      _v_len27 = _ve_Sentence.get_len ();
     2286      int _v_len28;
     2287      _v_len28 = 1;
     2288      if (_v_len27 < _v_len28)
    21022289      {
    21032290        goto _block1__branch2;
    21042291      }
    21052292      int _v_len__Snt;
    2106       _v_len__Snt = (_v_len15 - _v_len16);
     2293      _v_len__Snt = (_v_len27 - _v_len28);
    21072294      if (_ve_Sentence.symbol_at (0))
    21082295      {
    21092296        goto _block1__branch2;
    21102297      }
    2111       Expr _v_deref__Sentence3;
    2112       _v_deref__Sentence3 = Expr (_ve_Sentence, 0);
    2113       int _v_len17;
    2114       _v_len17 = _v_deref__Sentence3.get_len ();
    2115       int _v_len18;
    2116       _v_len18 = 2;
    2117       if (_v_len17 < _v_len18)
     2298      Expr _v_deref__Sentence5;
     2299      _v_deref__Sentence5 = Expr (_ve_Sentence, 0);
     2300      int _v_len29;
     2301      _v_len29 = _v_deref__Sentence5.get_len ();
     2302      int _v_len30;
     2303      _v_len30 = 2;
     2304      if (_v_len29 < _v_len30)
    21182305      {
    21192306        goto _block1__branch2;
    21202307      }
    21212308      int _v_len__branches;
    2122       _v_len__branches = (_v_len17 - _v_len18);
    2123       if (!_v_deref__Sentence3.symbol_at (0))
     2309      _v_len__branches = (_v_len29 - _v_len30);
     2310      if (_v_deref__Sentence5.symbol_at ((0 + 1)))
     2311      {
     2312        goto _block1__branch2;
     2313      }
     2314      Expr _v_deref__deref__Sentence5;
     2315      _v_deref__deref__Sentence5 = Expr (_v_deref__Sentence5, (0 + 1));
     2316      int _v_len31;
     2317      _v_len31 = _v_deref__deref__Sentence5.get_len ();
     2318      int _v_len32;
     2319      _v_len32 = 1;
     2320      if (_v_len31 < _v_len32)
     2321      {
     2322        goto _block1__branch2;
     2323      }
     2324      int _v_len__Pragma;
     2325      _v_len__Pragma = (_v_len31 - _v_len32);
     2326      if (!_v_deref__Sentence5.symbol_at (0))
     2327      {
     2328        goto _block1__branch2;
     2329      }
     2330      if (!_c_1.term_eq (_v_deref__deref__Sentence5, 0))
    21242331      {
    21252332        goto _block1__branch2;
     
    21282335      _ve_Snt = Expr (_ve_Sentence, (0 + 1), _v_len__Snt);
    21292336      Expr _vs_block;
    2130       _vs_block = Expr (_v_deref__Sentence3, 0, 1);
    2131       Expr _vt_Pragma;
    2132       _vt_Pragma = Expr (_v_deref__Sentence3, (0 + 1), 1);
     2337      _vs_block = Expr (_v_deref__Sentence5, 0, 1);
    21332338      Expr _ve_branches;
    2134       _ve_branches = Expr (_v_deref__Sentence3, (0 + 1 + 1), _v_len__branches);
    2135       {
    2136         {
    2137           if (!_vs_block.term_eq (_c_6, 0))
    2138           {
    2139             goto _block5__branch1;
    2140           }
    2141           goto _block5;
    2142         }
    2143       _block5__branch1: {}
    2144         if (!_vs_block.term_eq (_c_7, 0))
     2339      _ve_branches = Expr (_v_deref__Sentence5, (0 + 1 + 1), _v_len__branches);
     2340      Expr _ve_Pragma;
     2341      _ve_Pragma = Expr (_v_deref__deref__Sentence5, (0 + 1), _v_len__Pragma);
     2342      {
     2343        {
     2344          if (!_vs_block.term_eq (_c_7, 0))
     2345          {
     2346            goto _block6__branch1;
     2347          }
     2348          goto _block6;
     2349        }
     2350      _block6__branch1: {}
     2351        if (!_vs_block.term_eq (_c_8, 0))
    21452352        {
    21462353          goto _block1__branch2;
    21472354        }
    21482355      }
    2149     _block5: {}
     2356    _block6: {}
    21502357      Expr _ve_in__expr;
    2151       Expr _vs__dollar_tmp_m_211_m_54;
    2152       RF_CALL (rfp_vars::Gener_Var_Indices, (_c_4, _ve_in, _c_25), (_ve_in__expr, _vs__dollar_tmp_m_211_m_54));
     2358      Expr _vs__dollar_tmp_m_231_m_54;
     2359      RF_CALL (rfp_vars::Gener_Var_Indices, (_c_5, _ve_in, _c_27), (_ve_in__expr, _vs__dollar_tmp_m_231_m_54));
    21532360      Expr _ve_in__vars;
    21542361      RF_CALL (rfp_vars::Vars, _ve_in__expr, _ve_in__vars);
     
    21632370          }
    21642371          _ge_in__1 = _ve_in__expr;
    2165           _ge_Sentence__1 = ((_vs_block + _vt_Pragma + _ve_br) () + _ve_Snt);
     2372          _ge_Sentence__1 = ((_vs_block + (_c_1 + _ve_Pragma) () + _ve_br) () + _ve_Snt);
    21662373          goto _exit__iter1;
    21672374        }
    21682375      _iter1: {}
    2169         int _v_len19;
    2170         _v_len19 = _ve_branches.get_len ();
    2171         int _v_len20;
    2172         _v_len20 = 1;
    2173         if (_v_len19 < _v_len20)
     2376        int _v_len33;
     2377        _v_len33 = _ve_branches.get_len ();
     2378        int _v_len34;
     2379        _v_len34 = 1;
     2380        if (_v_len33 < _v_len34)
    21742381        {
    21752382          RF_FUNC_ERROR (unexpected_fail);
    21762383        }
    21772384        int _v_len__rest;
    2178         _v_len__rest = (_v_len19 - _v_len20);
     2385        _v_len__rest = (_v_len33 - _v_len34);
    21792386        if (_ve_branches.symbol_at (0))
    21802387        {
     
    21832390        Expr _v_deref__branches;
    21842391        _v_deref__branches = Expr (_ve_branches, 0);
    2185         int _v_len21;
    2186         _v_len21 = _v_deref__branches.get_len ();
    2187         int _v_len22;
    2188         _v_len22 = 3;
    2189         if (_v_len21 < _v_len22)
     2392        int _v_len35;
     2393        _v_len35 = _v_deref__branches.get_len ();
     2394        int _v_len36;
     2395        _v_len36 = 3;
     2396        if (_v_len35 < _v_len36)
    21902397        {
    21912398          RF_FUNC_ERROR (unexpected_fail);
    21922399        }
    21932400        int _v_len__br__snt;
    2194         _v_len__br__snt = (_v_len21 - _v_len22);
     2401        _v_len__br__snt = (_v_len35 - _v_len36);
    21952402        if (_v_deref__branches.symbol_at ((0 + 1 + 1)))
    21962403        {
     
    21992406        Expr _v_deref__deref__branches;
    22002407        _v_deref__deref__branches = Expr (_v_deref__branches, (0 + 1 + 1));
    2201         int _v_len23;
    2202         _v_len23 = _v_deref__deref__branches.get_len ();
    2203         int _v_len24;
    2204         _v_len24 = 2;
    2205         if (_v_len23 < _v_len24)
     2408        int _v_len37;
     2409        _v_len37 = _v_deref__deref__branches.get_len ();
     2410        int _v_len38;
     2411        _v_len38 = 2;
     2412        if (_v_len37 < _v_len38)
    22062413        {
    22072414          RF_FUNC_ERROR (unexpected_fail);
    22082415        }
    22092416        int _v_len__Pe;
    2210         _v_len__Pe = (_v_len23 - _v_len24);
    2211         if (!_c_1.term_eq (_v_deref__branches, 0))
     2417        _v_len__Pe = (_v_len37 - _v_len38);
     2418        if (!_c_2.term_eq (_v_deref__branches, 0))
    22122419        {
    22132420          RF_FUNC_ERROR (unexpected_fail);
     
    22352442            if (!RF_CALL (rfp_format::IsSubformat, (_ge_auxcall2, _ve_in), /*void*/))
    22362443            {
    2237               goto _block7__branch1;
     2444              goto _block8__branch1;
    22382445            }
    22392446            Expr _ve_vars;
     
    22442451                goto _negation2;
    22452452              }
    2246               RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_217_m_26, _v_lsplit__vars);
     2453              RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_237_m_26, _v_lsplit__vars);
    22472454              for ( ; ; RF_iter(_ve_vars)++)
    22482455              {
     
    22622469                  Expr _v_deref__lsplit__vars;
    22632470                  _v_deref__lsplit__vars = Expr (_v_lsplit__vars, 0);
    2264                   int _v_len25;
    2265                   _v_len25 = _v_deref__lsplit__vars.get_len ();
    2266                   int _v_len26;
    2267                   _v_len26 = 1;
    2268                   if (_v_len25 < _v_len26)
     2471                  int _v_len39;
     2472                  _v_len39 = _v_deref__lsplit__vars.get_len ();
     2473                  int _v_len40;
     2474                  _v_len40 = 1;
     2475                  if (_v_len39 < _v_len40)
    22692476                  {
    22702477                    goto _continue3;
    22712478                  }
    2272                   int _v_len___dollar_tmp_m_217_m_29;
    2273                   _v_len___dollar_tmp_m_217_m_29 = (_v_len25 - _v_len26);
    2274                   Expr _ve__dollar_tmp_m_217_m_29;
    2275                   _ve__dollar_tmp_m_217_m_29 = Expr (_v_deref__lsplit__vars, 0, _v_len___dollar_tmp_m_217_m_29);
     2479                  int _v_len___dollar_tmp_m_237_m_29;
     2480                  _v_len___dollar_tmp_m_237_m_29 = (_v_len39 - _v_len40);
     2481                  Expr _ve__dollar_tmp_m_237_m_29;
     2482                  _ve__dollar_tmp_m_237_m_29 = Expr (_v_deref__lsplit__vars, 0, _v_len___dollar_tmp_m_237_m_29);
    22762483                  Expr _vt_1;
    2277                   _vt_1 = Expr (_v_deref__lsplit__vars, (0 + _v_len___dollar_tmp_m_217_m_29), 1);
     2484                  _vt_1 = Expr (_v_deref__lsplit__vars, (0 + _v_len___dollar_tmp_m_237_m_29), 1);
    22782485                  Expr _v_subexpr__lsplit__vars;
    22792486                  _v_subexpr__lsplit__vars = Expr (_v_lsplit__vars, (0 + 1), (_v_lsplit__vars.get_len () - (0 + 1 + 0)));
    2280                   RF_lsplit (_v_subexpr__lsplit__vars, 0, _ve__dollar_tmp_m_217_m_35, _v_lsplit__lsplit__vars);
     2487                  RF_lsplit (_v_subexpr__lsplit__vars, 0, _ve__dollar_tmp_m_237_m_35, _v_lsplit__lsplit__vars);
    22812488                  for ( ; ; RF_iter(_v_subexpr__lsplit__vars)++)
    22822489                  {
     
    22862493                        goto _continue3;
    22872494                      }
    2288                       int _v_len27;
    2289                       _v_len27 = _v_lsplit__lsplit__vars.get_len ();
    2290                       int _v_len28;
    2291                       _v_len28 = 1;
    2292                       if (_v_len27 < _v_len28)
     2495                      int _v_len41;
     2496                      _v_len41 = _v_lsplit__lsplit__vars.get_len ();
     2497                      int _v_len42;
     2498                      _v_len42 = 1;
     2499                      if (_v_len41 < _v_len42)
    22932500                      {
    22942501                        goto _continue3;
    22952502                      }
    2296                       int _v_len___dollar_tmp_m_217_m_44;
    2297                       _v_len___dollar_tmp_m_217_m_44 = (_v_len27 - _v_len28);
     2503                      int _v_len___dollar_tmp_m_237_m_44;
     2504                      _v_len___dollar_tmp_m_237_m_44 = (_v_len41 - _v_len42);
    22982505                      if (_v_lsplit__lsplit__vars.symbol_at (0))
    22992506                      {
     
    23022509                      Expr _v_deref__lsplit__lsplit__vars;
    23032510                      _v_deref__lsplit__lsplit__vars = Expr (_v_lsplit__lsplit__vars, 0);
    2304                       int _v_len29;
    2305                       _v_len29 = _v_deref__lsplit__lsplit__vars.get_len ();
    2306                       int _v_len30;
    2307                       _v_len30 = 1;
    2308                       if (_v_len29 < _v_len30)
     2511                      int _v_len43;
     2512                      _v_len43 = _v_deref__lsplit__lsplit__vars.get_len ();
     2513                      int _v_len44;
     2514                      _v_len44 = 1;
     2515                      if (_v_len43 < _v_len44)
    23092516                      {
    23102517                        goto _continue4;
    23112518                      }
    2312                       int _v_len___dollar_tmp_m_217_m_38;
    2313                       _v_len___dollar_tmp_m_217_m_38 = (_v_len29 - _v_len30);
    2314                       if (!_vt_1.term_eq (_v_deref__lsplit__lsplit__vars, (0 + _v_len___dollar_tmp_m_217_m_38)))
     2519                      int _v_len___dollar_tmp_m_237_m_38;
     2520                      _v_len___dollar_tmp_m_237_m_38 = (_v_len43 - _v_len44);
     2521                      if (!_vt_1.term_eq (_v_deref__lsplit__lsplit__vars, (0 + _v_len___dollar_tmp_m_237_m_38)))
    23152522                      {
    23162523                        goto _continue4;
    23172524                      }
    2318                       Expr _ve__dollar_tmp_m_217_m_44;
    2319                       _ve__dollar_tmp_m_217_m_44 = Expr (_v_lsplit__lsplit__vars, (0 + 1), _v_len___dollar_tmp_m_217_m_44);
    2320                       Expr _ve__dollar_tmp_m_217_m_38;
    2321                       _ve__dollar_tmp_m_217_m_38 = Expr (_v_deref__lsplit__lsplit__vars, 0, _v_len___dollar_tmp_m_217_m_38);
     2525                      Expr _ve__dollar_tmp_m_237_m_44;
     2526                      _ve__dollar_tmp_m_237_m_44 = Expr (_v_lsplit__lsplit__vars, (0 + 1), _v_len___dollar_tmp_m_237_m_44);
     2527                      Expr _ve__dollar_tmp_m_237_m_38;
     2528                      _ve__dollar_tmp_m_237_m_38 = Expr (_v_deref__lsplit__lsplit__vars, 0, _v_len___dollar_tmp_m_237_m_38);
    23222529                      goto _exit4;
    23232530                    }
     
    23302537              }
    23312538            _exit3: {}
    2332               goto _block7__branch1;
     2539              goto _block8__branch1;
    23332540            }
    23342541          _negation2: {}
     
    23382545            Expr _ge_auxcall3;
    23392546            RF_CALL (rfp_helper::Subst, (_ve_pats, _ve_repls, _ve_br__snt), _ge_auxcall3);
    2340             _ve_br = (_ve_br + (_c_1 + _vt_p + _ge_auxcall3) ());
     2547            _ve_br = (_ve_br + (_c_2 + _vt_p + _ge_auxcall3) ());
    23412548            _ve_branches = _ve_rest;
    2342             goto _block7;
    2343           }
    2344         _block7__branch1: {}
    2345           _ve_br = (_ve_br + (_c_1 + _vt_p + (_vs_dir + _vt_pp + _ve_Pe) () + _ve_br__snt) ());
     2549            goto _block8;
     2550          }
     2551        _block8__branch1: {}
     2552          _ve_br = (_ve_br + (_c_2 + _vt_p + (_vs_dir + _vt_pp + _ve_Pe) () + _ve_br__snt) ());
    23462553          _ve_branches = _ve_rest;
    23472554        }
    2348       _block7: {}
     2555      _block8: {}
    23492556      }
    23502557    _exit__iter1: {}
     
    23522559    }
    23532560  _block1__branch2: {}
     2561    {
     2562      int _v_len45;
     2563      _v_len45 = _ve_Sentence.get_len ();
     2564      int _v_len46;
     2565      _v_len46 = 1;
     2566      if (_v_len45 < _v_len46)
     2567      {
     2568        goto _block1__branch3;
     2569      }
     2570      int _v_len__Snt2;
     2571      _v_len__Snt2 = (_v_len45 - _v_len46);
     2572      if (_ve_Sentence.symbol_at (0))
     2573      {
     2574        goto _block1__branch3;
     2575      }
     2576      Expr _v_deref__Sentence6;
     2577      _v_deref__Sentence6 = Expr (_ve_Sentence, 0);
     2578      int _v_len47;
     2579      _v_len47 = _v_deref__Sentence6.get_len ();
     2580      int _v_len48;
     2581      _v_len48 = 1;
     2582      if (_v_len47 < _v_len48)
     2583      {
     2584        goto _block1__branch3;
     2585      }
     2586      int _v_len__branches2;
     2587      _v_len__branches2 = (_v_len47 - _v_len48);
     2588      if (!_v_deref__Sentence6.symbol_at (0))
     2589      {
     2590        goto _block1__branch3;
     2591      }
     2592      Expr _ve_Snt;
     2593      _ve_Snt = Expr (_ve_Sentence, (0 + 1), _v_len__Snt2);
     2594      Expr _vs_block;
     2595      _vs_block = Expr (_v_deref__Sentence6, 0, 1);
     2596      Expr _ve_branches;
     2597      _ve_branches = Expr (_v_deref__Sentence6, (0 + 1), _v_len__branches2);
     2598      {
     2599        {
     2600          if (!_vs_block.term_eq (_c_7, 0))
     2601          {
     2602            goto _block10__branch1;
     2603          }
     2604          goto _block10;
     2605        }
     2606      _block10__branch1: {}
     2607        if (!_vs_block.term_eq (_c_8, 0))
     2608        {
     2609          goto _block1__branch3;
     2610        }
     2611      }
     2612    _block10: {}
     2613      Expr _ve_in__expr;
     2614      Expr _vs__dollar_tmp_m_249_m_54;
     2615      RF_CALL (rfp_vars::Gener_Var_Indices, (_c_5, _ve_in, _c_27), (_ve_in__expr, _vs__dollar_tmp_m_249_m_54));
     2616      RF_CALL (Del_Pragmas, _ve_in__expr, _ve_in__expr);
     2617      Expr _ve_in__vars;
     2618      RF_CALL (rfp_vars::Vars, _ve_in__expr, _ve_in__vars);
     2619      Expr _ve_br;
     2620      _ve_br = empty;
     2621      for ( ; ; )
     2622      {
     2623        {
     2624          if (_ve_branches.get_len () != 0)
     2625          {
     2626            goto _iter2;
     2627          }
     2628          _ge_in__1 = _ve_in__expr;
     2629          _ge_Sentence__1 = ((_vs_block + _ve_br) () + _ve_Snt);
     2630          goto _exit__iter2;
     2631        }
     2632      _iter2: {}
     2633        int _v_len49;
     2634        _v_len49 = _ve_branches.get_len ();
     2635        int _v_len50;
     2636        _v_len50 = 1;
     2637        if (_v_len49 < _v_len50)
     2638        {
     2639          RF_FUNC_ERROR (unexpected_fail);
     2640        }
     2641        int _v_len__rest2;
     2642        _v_len__rest2 = (_v_len49 - _v_len50);
     2643        if (_ve_branches.symbol_at (0))
     2644        {
     2645          RF_FUNC_ERROR (unexpected_fail);
     2646        }
     2647        Expr _v_deref__branches2;
     2648        _v_deref__branches2 = Expr (_ve_branches, 0);
     2649        int _v_len51;
     2650        _v_len51 = _v_deref__branches2.get_len ();
     2651        int _v_len52;
     2652        _v_len52 = 2;
     2653        if (_v_len51 < _v_len52)
     2654        {
     2655          RF_FUNC_ERROR (unexpected_fail);
     2656        }
     2657        int _v_len__br__snt2;
     2658        _v_len__br__snt2 = (_v_len51 - _v_len52);
     2659        if (_v_deref__branches2.symbol_at ((0 + 1)))
     2660        {
     2661          RF_FUNC_ERROR (unexpected_fail);
     2662        }
     2663        Expr _v_deref__deref__branches2;
     2664        _v_deref__deref__branches2 = Expr (_v_deref__branches2, (0 + 1));
     2665        int _v_len53;
     2666        _v_len53 = _v_deref__deref__branches2.get_len ();
     2667        int _v_len54;
     2668        _v_len54 = 1;
     2669        if (_v_len53 < _v_len54)
     2670        {
     2671          RF_FUNC_ERROR (unexpected_fail);
     2672        }
     2673        int _v_len__Pe2;
     2674        _v_len__Pe2 = (_v_len53 - _v_len54);
     2675        if (!_c_2.term_eq (_v_deref__branches2, 0))
     2676        {
     2677          RF_FUNC_ERROR (unexpected_fail);
     2678        }
     2679        if (!_v_deref__deref__branches2.symbol_at (0))
     2680        {
     2681          RF_FUNC_ERROR (unexpected_fail);
     2682        }
     2683        Expr _ve_rest;
     2684        _ve_rest = Expr (_ve_branches, (0 + 1), _v_len__rest2);
     2685        Expr _ve_br__snt;
     2686        _ve_br__snt = Expr (_v_deref__branches2, (0 + 1 + 1), _v_len__br__snt2);
     2687        Expr _vs_dir;
     2688        _vs_dir = Expr (_v_deref__deref__branches2, 0, 1);
     2689        Expr _ve_Pe;
     2690        _ve_Pe = Expr (_v_deref__deref__branches2, (0 + 1), _v_len__Pe2);
     2691        {
     2692          {
     2693            Expr _ge_auxcall4;
     2694            RF_CALL (rfp_format::Format_Exp, _ve_Pe, _ge_auxcall4);
     2695            if (!RF_CALL (rfp_format::IsSubformat, (_ge_auxcall4, _ve_in), /*void*/))
     2696            {
     2697              goto _block12__branch1;
     2698            }
     2699            Expr _ve_vars;
     2700            RF_CALL (rfp_vars::Vars, _ve_Pe, _ve_vars);
     2701            {
     2702              if (_ve_vars.get_len () < 2)
     2703              {
     2704                goto _negation3;
     2705              }
     2706              RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_256_m_26, _v_lsplit__vars2);
     2707              for ( ; ; RF_iter(_ve_vars)++)
     2708              {
     2709                {
     2710                  if (!RF_iter(_ve_vars))
     2711                  {
     2712                    goto _negation3;
     2713                  }
     2714                  if (_v_lsplit__vars2.get_len () < 2)
     2715                  {
     2716                    goto _negation3;
     2717                  }
     2718                  if (_v_lsplit__vars2.symbol_at (0))
     2719                  {
     2720                    goto _continue5;
     2721                  }
     2722                  Expr _v_deref__lsplit__vars2;
     2723                  _v_deref__lsplit__vars2 = Expr (_v_lsplit__vars2, 0);
     2724                  int _v_len55;
     2725                  _v_len55 = _v_deref__lsplit__vars2.get_len ();
     2726                  int _v_len56;
     2727                  _v_len56 = 1;
     2728                  if (_v_len55 < _v_len56)
     2729                  {
     2730                    goto _continue5;
     2731                  }
     2732                  int _v_len___dollar_tmp_m_256_m_29;
     2733                  _v_len___dollar_tmp_m_256_m_29 = (_v_len55 - _v_len56);
     2734                  Expr _ve__dollar_tmp_m_256_m_29;
     2735                  _ve__dollar_tmp_m_256_m_29 = Expr (_v_deref__lsplit__vars2, 0, _v_len___dollar_tmp_m_256_m_29);
     2736                  Expr _vt_1;
     2737                  _vt_1 = Expr (_v_deref__lsplit__vars2, (0 + _v_len___dollar_tmp_m_256_m_29), 1);
     2738                  Expr _v_subexpr__lsplit__vars2;
     2739                  _v_subexpr__lsplit__vars2 = Expr (_v_lsplit__vars2, (0 + 1), (_v_lsplit__vars2.get_len () - (0 + 1 + 0)));
     2740                  RF_lsplit (_v_subexpr__lsplit__vars2, 0, _ve__dollar_tmp_m_256_m_35, _v_lsplit__lsplit__vars2);
     2741                  for ( ; ; RF_iter(_v_subexpr__lsplit__vars2)++)
     2742                  {
     2743                    {
     2744                      if (!RF_iter(_v_subexpr__lsplit__vars2))
     2745                      {
     2746                        goto _continue5;
     2747                      }
     2748                      int _v_len57;
     2749                      _v_len57 = _v_lsplit__lsplit__vars2.get_len ();
     2750                      int _v_len58;
     2751                      _v_len58 = 1;
     2752                      if (_v_len57 < _v_len58)
     2753                      {
     2754                        goto _continue5;
     2755                      }
     2756                      int _v_len___dollar_tmp_m_256_m_44;
     2757                      _v_len___dollar_tmp_m_256_m_44 = (_v_len57 - _v_len58);
     2758                      if (_v_lsplit__lsplit__vars2.symbol_at (0))
     2759                      {
     2760                        goto _continue6;
     2761                      }
     2762                      Expr _v_deref__lsplit__lsplit__vars2;
     2763                      _v_deref__lsplit__lsplit__vars2 = Expr (_v_lsplit__lsplit__vars2, 0);
     2764                      int _v_len59;
     2765                      _v_len59 = _v_deref__lsplit__lsplit__vars2.get_len ();
     2766                      int _v_len60;
     2767                      _v_len60 = 1;
     2768                      if (_v_len59 < _v_len60)
     2769                      {
     2770                        goto _continue6;
     2771                      }
     2772                      int _v_len___dollar_tmp_m_256_m_38;
     2773                      _v_len___dollar_tmp_m_256_m_38 = (_v_len59 - _v_len60);
     2774                      if (!_vt_1.term_eq (_v_deref__lsplit__lsplit__vars2, (0 + _v_len___dollar_tmp_m_256_m_38)))
     2775                      {
     2776                        goto _continue6;
     2777                      }
     2778                      Expr _ve__dollar_tmp_m_256_m_44;
     2779                      _ve__dollar_tmp_m_256_m_44 = Expr (_v_lsplit__lsplit__vars2, (0 + 1), _v_len___dollar_tmp_m_256_m_44);
     2780                      Expr _ve__dollar_tmp_m_256_m_38;
     2781                      _ve__dollar_tmp_m_256_m_38 = Expr (_v_deref__lsplit__lsplit__vars2, 0, _v_len___dollar_tmp_m_256_m_38);
     2782                      goto _exit6;
     2783                    }
     2784                _continue6: {}
     2785                  }
     2786                _exit6: {}
     2787                  goto _exit5;
     2788                }
     2789            _continue5: {}
     2790              }
     2791            _exit5: {}
     2792              goto _block12__branch1;
     2793            }
     2794          _negation3: {}
     2795            Expr _ve_pats;
     2796            Expr _ve_repls;
     2797            RF_CALL (Build_Subst, (_ve_vars, _ve_in__vars, _ve_br__snt), (_ve_pats, _ve_repls));
     2798            Expr _ge_auxcall5;
     2799            RF_CALL (rfp_helper::Subst, (_ve_pats, _ve_repls, _ve_br__snt), _ge_auxcall5);
     2800            _ve_br = (_ve_br + (_c_2 + _ge_auxcall5) ());
     2801            _ve_branches = _ve_rest;
     2802            goto _block12;
     2803          }
     2804        _block12__branch1: {}
     2805          _ve_br = (_ve_br + (_c_2 + (_vs_dir + _ve_Pe) () + _ve_br__snt) ());
     2806          _ve_branches = _ve_rest;
     2807        }
     2808      _block12: {}
     2809      }
     2810    _exit__iter2: {}
     2811      goto _block1;
     2812    }
     2813  _block1__branch3: {}
    23542814    _ge_in__1 = _ve_in;
    23552815    _ge_Sentence__1 = _ve_Sentence;
     
    24062866            _v_len3 = _v_deref__Statement.get_len ();
    24072867            int _v_len4;
    2408             _v_len4 = 2;
     2868            _v_len4 = 1;
    24092869            if (_v_len3 < _v_len4)
    24102870            {
     
    24132873            int _v_len__Pe__6;
    24142874            _v_len__Pe__6 = (_v_len3 - _v_len4);
    2415             if (!_c_8.term_eq (_v_deref__Statement, 0))
     2875            if (!_c_9.term_eq (_v_deref__Statement, 0))
    24162876            {
    24172877              goto _block3__branch1;
    24182878            }
    2419             Expr _vt__dollar_tmp_m_250_m_16;
    2420             _vt__dollar_tmp_m_250_m_16 = Expr (_v_deref__Statement, (0 + 1), 1);
    24212879            Expr _ge_Pe__6;
    2422             _ge_Pe__6 = Expr (_v_deref__Statement, (0 + 1 + 1), _v_len__Pe__6);
     2880            _ge_Pe__6 = Expr (_v_deref__Statement, (0 + 1), _v_len__Pe__6);
    24232881            _ve_Pe = _ge_Pe__6;
    24242882            goto _block3;
     
    24342892          _v_len5 = _v_deref__Statement2.get_len ();
    24352893          int _v_len6;
    2436           _v_len6 = 2;
     2894          _v_len6 = 1;
    24372895          if (_v_len5 < _v_len6)
    24382896          {
     
    24412899          int _v_len__Pe__62;
    24422900          _v_len__Pe__62 = (_v_len5 - _v_len6);
    2443           if (!_c_9.term_eq (_v_deref__Statement2, 0))
     2901          if (!_c_10.term_eq (_v_deref__Statement2, 0))
    24442902          {
    24452903            goto _block2__branch1;
    24462904          }
    2447           Expr _vt__dollar_tmp_m_251_m_17;
    2448           _vt__dollar_tmp_m_251_m_17 = Expr (_v_deref__Statement2, (0 + 1), 1);
    24492905          Expr _ge_Pe__6;
    2450           _ge_Pe__6 = Expr (_v_deref__Statement2, (0 + 1 + 1), _v_len__Pe__62);
     2906          _ge_Pe__6 = Expr (_v_deref__Statement2, (0 + 1), _v_len__Pe__62);
    24512907          _ve_Pe = _ge_Pe__6;
    24522908        }
     
    24562912        Expr _ve_old__vars;
    24572913        Expr _ve_new__vars;
    2458         RF_CALL (refal::List::Split, (_c_26, _ve_res__vars, _ge_auxcall1), (_ve_old__vars, _ve_new__vars));
     2914        RF_CALL (refal::List::Split, (_c_29, _ve_res__vars, _ge_auxcall1), (_ve_old__vars, _ve_new__vars));
    24592915        Expr _ve_renames;
    2460         if (!RF_CALL (refal::List::Map, (_c_27, _vs_num, _ve_old__vars), _ve_renames))
     2916        if (!RF_CALL (refal::List::Map, (_c_30, _vs_num, _ve_old__vars), _ve_renames))
    24612917        {
    24622918          RF_FUNC_ERROR (unexpected_fail);
     
    24862942        _v_len9 = _v_deref__Subst1.get_len ();
    24872943        int _v_len10;
    2488         _v_len10 = 2;
     2944        _v_len10 = 1;
    24892945        if (_v_len9 < _v_len10)
    24902946        {
     
    25012957        Expr _vs_tag;
    25022958        _vs_tag = Expr (_v_deref__Subst1, 0, 1);
    2503         Expr _vt_p;
    2504         _vt_p = Expr (_v_deref__Subst1, (0 + 1), 1);
    25052959        Expr _ve_Pe1;
    2506         _ve_Pe1 = Expr (_v_deref__Subst1, (0 + 1 + 1), _v_len__Pe1);
     2960        _ve_Pe1 = Expr (_v_deref__Subst1, (0 + 1), _v_len__Pe1);
    25072961        Expr _ge_auxcall2;
    25082962        RF_CALL (rfp_vars::Vars, _ve_Pe1, _ge_auxcall2);
     
    25102964        RF_CALL (refal::List::Or, (_ve_vars, _ge_auxcall2), _ge_auxcall3);
    25112965        _ve_vars = _ge_auxcall3;
    2512         _ve_new__Snt = (_ve_new__Snt + (_vs_tag + _vt_p + _ve_Pe1) ());
     2966        _ve_new__Snt = (_ve_new__Snt + (_vs_tag + _ve_Pe1) ());
    25132967        _ge_Snt__0 = _ve_rest__Snt;
    25142968        goto _block2;
     
    25252979        _v_len11 = _v_deref__Statement3.get_len ();
    25262980        int _v_len12;
    2527         _v_len12 = 2;
     2981        _v_len12 = 1;
    25282982        if (_v_len11 < _v_len12)
    25292983        {
     
    25322986        int _v_len__He;
    25332987        _v_len__He = (_v_len11 - _v_len12);
    2534         if (!_c_28.term_eq (_v_deref__Statement3, 0))
     2988        if (!_c_12.term_eq (_v_deref__Statement3, 0))
    25352989        {
    25362990          goto _block2__branch2;
    25372991        }
    2538         Expr _vt__dollar_tmp_m_262_m_30;
    2539         _vt__dollar_tmp_m_262_m_30 = Expr (_v_deref__Statement3, (0 + 1), 1);
    25402992        Expr _ve_He;
    2541         _ve_He = Expr (_v_deref__Statement3, (0 + 1 + 1), _v_len__He);
     2993        _ve_He = Expr (_v_deref__Statement3, (0 + 1), _v_len__He);
    25422994        Expr _ge_auxcall4;
    25432995        RF_CALL (rfp_vars::Vars, _ve_He, _ge_auxcall4);
    25442996        Expr _ve_old__vars;
    25452997        Expr _ve_new__vars;
    2546         RF_CALL (refal::List::Split, (_c_26, (_ve_upper__vars + _ve_res__vars), _ge_auxcall4), (_ve_old__vars, _ve_new__vars));
     2998        RF_CALL (refal::List::Split, (_c_29, (_ve_upper__vars + _ve_res__vars), _ge_auxcall4), (_ve_old__vars, _ve_new__vars));
    25472999        Expr _ve_renames;
    2548         if (!RF_CALL (refal::List::Map, (_c_27, _vs_num, _ve_old__vars), _ve_renames))
     3000        if (!RF_CALL (refal::List::Map, (_c_30, _vs_num, _ve_old__vars), _ve_renames))
    25493001        {
    25503002          RF_FUNC_ERROR (unexpected_fail);
     
    25743026        _v_len15 = _v_deref__Subst2.get_len ();
    25753027        int _v_len16;
    2576         _v_len16 = 2;
     3028        _v_len16 = 1;
    25773029        if (_v_len15 < _v_len16)
    25783030        {
     
    25813033        int _v_len__He1;
    25823034        _v_len__He1 = (_v_len15 - _v_len16);
    2583         if (!_c_28.term_eq (_v_deref__Subst2, 0))
     3035        if (!_c_12.term_eq (_v_deref__Subst2, 0))
    25843036        {
    25853037          RF_FUNC_ERROR (unexpected_fail);
     
    25873039        Expr _ve_rest__Snt;
    25883040        _ve_rest__Snt = Expr (_v_Subst2, (0 + 1), _v_len__rest__Snt2);
    2589         Expr _vt_p;
    2590         _vt_p = Expr (_v_deref__Subst2, (0 + 1), 1);
    25913041        Expr _ve_He1;
    2592         _ve_He1 = Expr (_v_deref__Subst2, (0 + 1 + 1), _v_len__He1);
     3042        _ve_He1 = Expr (_v_deref__Subst2, (0 + 1), _v_len__He1);
    25933043        Expr _ge_auxcall5;
    25943044        RF_CALL (rfp_vars::Vars, _ve_He1, _ge_auxcall5);
     
    25963046        RF_CALL (refal::List::Or, (_ve_vars, _ge_auxcall5), _ge_auxcall6);
    25973047        _ve_vars = _ge_auxcall6;
    2598         _ve_new__Snt = (_ve_new__Snt + (_c_28 + _vt_p + _ve_He1) ());
     3048        _ve_new__Snt = (_ve_new__Snt + (_c_12 + _ve_He1) ());
    25993049        _ge_Snt__0 = _ve_rest__Snt;
    26003050        goto _block2;
     
    26113061        _v_len17 = _v_deref__Statement4.get_len ();
    26123062        int _v_len18;
    2613         _v_len18 = 2;
     3063        _v_len18 = 1;
    26143064        if (_v_len17 < _v_len18)
    26153065        {
     
    26243074        Expr _vs_block;
    26253075        _vs_block = Expr (_v_deref__Statement4, 0, 1);
    2626         Expr _vt_Pragma;
    2627         _vt_Pragma = Expr (_v_deref__Statement4, (0 + 1), 1);
    26283076        Expr _ve_branches;
    2629         _ve_branches = Expr (_v_deref__Statement4, (0 + 1 + 1), _v_len__branches);
    2630         {
    2631           {
    2632             if (!_vs_block.term_eq (_c_6, 0))
     3077        _ve_branches = Expr (_v_deref__Statement4, (0 + 1), _v_len__branches);
     3078        {
     3079          {
     3080            if (!_vs_block.term_eq (_c_7, 0))
    26333081            {
    26343082              goto _block4__branch1;
     
    26373085          }
    26383086        _block4__branch1: {}
    2639           if (!_vs_block.term_eq (_c_7, 0))
     3087          if (!_vs_block.term_eq (_c_8, 0))
    26403088          {
    26413089            goto _block2__branch3;
     
    26543102              goto _block5__branch1;
    26553103            }
    2656             int _v_len___dollar_tmp_m_281_m_26;
    2657             _v_len___dollar_tmp_m_281_m_26 = (_v_len19 - _v_len20);
     3104            int _v_len___dollar_tmp_m_320_m_24;
     3105            _v_len___dollar_tmp_m_320_m_24 = (_v_len19 - _v_len20);
    26583106            if (_ve_rest.symbol_at (0))
    26593107            {
     
    26653113            _v_len21 = _v_deref__rest.get_len ();
    26663114            int _v_len22;
    2667             _v_len22 = 2;
     3115            _v_len22 = 1;
    26683116            if (_v_len21 < _v_len22)
    26693117            {
     
    26723120            int _v_len__Pe;
    26733121            _v_len__Pe = (_v_len21 - _v_len22);
    2674             if (!_c_8.term_eq (_v_deref__rest, 0))
     3122            if (!_c_9.term_eq (_v_deref__rest, 0))
    26753123            {
    26763124              goto _block5__branch1;
    26773125            }
    2678             Expr _ve__dollar_tmp_m_281_m_26;
    2679             _ve__dollar_tmp_m_281_m_26 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_281_m_26);
    2680             Expr _vt__dollar_tmp_m_281_m_18;
    2681             _vt__dollar_tmp_m_281_m_18 = Expr (_v_deref__rest, (0 + 1), 1);
     3126            Expr _ve__dollar_tmp_m_320_m_24;
     3127            _ve__dollar_tmp_m_320_m_24 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_320_m_24);
    26823128            Expr _ve_Pe;
    2683             _ve_Pe = Expr (_v_deref__rest, (0 + 1 + 1), _v_len__Pe);
     3129            _ve_Pe = Expr (_v_deref__rest, (0 + 1), _v_len__Pe);
    26843130            RF_CALL (rfp_vars::Vars, _ve_Pe, _ve_bl__res__vars);
    26853131            goto _block5;
     
    26953141              goto _block5__branch2;
    26963142            }
    2697             int _v_len___dollar_tmp_m_282_m_27;
    2698             _v_len___dollar_tmp_m_282_m_27 = (_v_len23 - _v_len24);
     3143            int _v_len___dollar_tmp_m_321_m_25;
     3144            _v_len___dollar_tmp_m_321_m_25 = (_v_len23 - _v_len24);
    26993145            if (_ve_rest.symbol_at (0))
    27003146            {
     
    27063152            _v_len25 = _v_deref__rest2.get_len ();
    27073153            int _v_len26;
    2708             _v_len26 = 2;
     3154            _v_len26 = 1;
    27093155            if (_v_len25 < _v_len26)
    27103156            {
     
    27133159            int _v_len__Pe2;
    27143160            _v_len__Pe2 = (_v_len25 - _v_len26);
    2715             if (!_c_9.term_eq (_v_deref__rest2, 0))
     3161            if (!_c_10.term_eq (_v_deref__rest2, 0))
    27163162            {
    27173163              goto _block5__branch2;
    27183164            }
    2719             Expr _ve__dollar_tmp_m_282_m_27;
    2720             _ve__dollar_tmp_m_282_m_27 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_282_m_27);
    2721             Expr _vt__dollar_tmp_m_282_m_19;
    2722             _vt__dollar_tmp_m_282_m_19 = Expr (_v_deref__rest2, (0 + 1), 1);
     3165            Expr _ve__dollar_tmp_m_321_m_25;
     3166            _ve__dollar_tmp_m_321_m_25 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_321_m_25);
    27233167            Expr _ve_Pe;
    2724             _ve_Pe = Expr (_v_deref__rest2, (0 + 1 + 1), _v_len__Pe2);
     3168            _ve_Pe = Expr (_v_deref__rest2, (0 + 1), _v_len__Pe2);
    27253169            RF_CALL (rfp_vars::Vars, _ve_Pe, _ve_bl__res__vars);
    27263170            goto _block5;
     
    27363180              goto _block5__branch3;
    27373181            }
    2738             int _v_len___dollar_tmp_m_283_m_28;
    2739             _v_len___dollar_tmp_m_283_m_28 = (_v_len27 - _v_len28);
     3182            int _v_len___dollar_tmp_m_322_m_26;
     3183            _v_len___dollar_tmp_m_322_m_26 = (_v_len27 - _v_len28);
    27403184            if (_ve_rest.symbol_at (0))
    27413185            {
     
    27473191            _v_len29 = _v_deref__rest3.get_len ();
    27483192            int _v_len30;
    2749             _v_len30 = 2;
     3193            _v_len30 = 1;
    27503194            if (_v_len29 < _v_len30)
    27513195            {
     
    27543198            int _v_len__He2;
    27553199            _v_len__He2 = (_v_len29 - _v_len30);
    2756             if (!_c_28.term_eq (_v_deref__rest3, 0))
     3200            if (!_c_12.term_eq (_v_deref__rest3, 0))
    27573201            {
    27583202              goto _block5__branch3;
    27593203            }
    2760             Expr _ve__dollar_tmp_m_283_m_28;
    2761             _ve__dollar_tmp_m_283_m_28 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_283_m_28);
    2762             Expr _vt__dollar_tmp_m_283_m_20;
    2763             _vt__dollar_tmp_m_283_m_20 = Expr (_v_deref__rest3, (0 + 1), 1);
     3204            Expr _ve__dollar_tmp_m_322_m_26;
     3205            _ve__dollar_tmp_m_322_m_26 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_322_m_26);
    27643206            Expr _ve_He;
    2765             _ve_He = Expr (_v_deref__rest3, (0 + 1 + 1), _v_len__He2);
     3207            _ve_He = Expr (_v_deref__rest3, (0 + 1), _v_len__He2);
    27663208            RF_CALL (rfp_vars::Vars, _ve_He, _ve_bl__res__vars);
    27673209            goto _block5;
     
    27853227            RF_FUNC_ERROR (unexpected_fail);
    27863228          }
    2787           int _v_len___dollar_tmp_m_285_m_12;
    2788           _v_len___dollar_tmp_m_285_m_12 = (_v_len31 - _v_len32);
    2789           Expr _ve__dollar_tmp_m_285_m_12;
    2790           _ve__dollar_tmp_m_285_m_12 = Expr (_ve_rest, 0, _v_len___dollar_tmp_m_285_m_12);
     3229          int _v_len___dollar_tmp_m_324_m_12;
     3230          _v_len___dollar_tmp_m_324_m_12 = (_v_len31 - _v_len32);
     3231          Expr _ve__dollar_tmp_m_324_m_12;
     3232          _ve__dollar_tmp_m_324_m_12 = Expr (_ve_rest, 0, _v_len___dollar_tmp_m_324_m_12);
    27913233          _ve_bl__res__vars = empty;
    27923234        }
     
    28023244            }
    28033245            Expr _gs_auxcall7;
    2804             RF_CALL (refal::Arithm::Add, (_vs_num, _c_29), _gs_auxcall7);
     3246            RF_CALL (refal::Arithm::Add, (_vs_num, _c_31), _gs_auxcall7);
    28053247            Expr _ge_branches__5;
    2806             if (!RF_CALL (refal::List::Map, (_c_30, (_gs_auxcall7 + _ve_vars () + _ve_brv ()), _ve_branches), _ge_branches__5))
     3248            if (!RF_CALL (refal::List::Map, (_c_32, (_gs_auxcall7 + _ve_vars () + _ve_brv ()), _ve_branches), _ge_branches__5))
    28073249            {
    28083250              RF_FUNC_ERROR (unexpected_fail);
     
    28183260                  goto _block6__branch1;
    28193261                }
    2820                 int _v_len___dollar_tmp_m_306_m_32;
    2821                 _v_len___dollar_tmp_m_306_m_32 = (_v_len33 - _v_len34);
     3262                int _v_len___dollar_tmp_m_345_m_32;
     3263                _v_len___dollar_tmp_m_345_m_32 = (_v_len33 - _v_len34);
    28223264                if (_ve_rest.symbol_at (0))
    28233265                {
     
    28343276                  goto _block6__branch1;
    28353277                }
    2836                 int _v_len___dollar_tmp_m_306_m_29;
    2837                 _v_len___dollar_tmp_m_306_m_29 = (_v_len35 - _v_len36);
    2838                 if (!_c_28.term_eq (_v_deref__rest4, 0))
     3278                int _v_len___dollar_tmp_m_345_m_29;
     3279                _v_len___dollar_tmp_m_345_m_29 = (_v_len35 - _v_len36);
     3280                if (!_c_12.term_eq (_v_deref__rest4, 0))
    28393281                {
    28403282                  goto _block6__branch1;
    28413283                }
    2842                 Expr _ve__dollar_tmp_m_306_m_32;
    2843                 _ve__dollar_tmp_m_306_m_32 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_306_m_32);
    2844                 Expr _ve__dollar_tmp_m_306_m_29;
    2845                 _ve__dollar_tmp_m_306_m_29 = Expr (_v_deref__rest4, (0 + 1), _v_len___dollar_tmp_m_306_m_29);
     3284                Expr _ve__dollar_tmp_m_345_m_32;
     3285                _ve__dollar_tmp_m_345_m_32 = Expr (_ve_rest, (0 + 1), _v_len___dollar_tmp_m_345_m_32);
     3286                Expr _ve__dollar_tmp_m_345_m_29;
     3287                _ve__dollar_tmp_m_345_m_29 = Expr (_v_deref__rest4, (0 + 1), _v_len___dollar_tmp_m_345_m_29);
    28463288                Expr _gs_auxcall8;
    2847                 RF_CALL (refal::Arithm::Add, (_vs_num, _c_4), _gs_auxcall8);
     3289                RF_CALL (refal::Arithm::Add, (_vs_num, _c_5), _gs_auxcall8);
    28483290                Expr _ge_auxcall9;
    28493291                RF_CALL (Rename_Vars, (_gs_auxcall8, _ve_vars, _ve_res__vars, _ve_rest), _ge_auxcall9);
    28503292                _ve_vars = empty;
    2851                 _ve_new__Snt = (_ve_new__Snt + (_vs_block + _vt_Pragma + _ge_branches__5) () + _ge_auxcall9);
     3293                _ve_new__Snt = (_ve_new__Snt + (_vs_block + _ge_branches__5) () + _ge_auxcall9);
    28523294                _ge_Snt__0 = empty;
    28533295                goto _block6;
    28543296              }
    28553297            _block6__branch1: {}
    2856               _ve_new__Snt = (_ve_new__Snt + (_vs_block + _vt_Pragma + _ge_branches__5) ());
     3298              _ve_new__Snt = (_ve_new__Snt + (_vs_block + _ge_branches__5) ());
    28573299              _ge_Snt__0 = _ve_rest;
    28583300            }
     
    29033345                    goto _continue1;
    29043346                  }
    2905                   int _v_len___dollar_tmp_m_293_m_32;
    2906                   _v_len___dollar_tmp_m_293_m_32 = (_v_len39 - _v_len40);
     3347                  int _v_len___dollar_tmp_m_332_m_32;
     3348                  _v_len___dollar_tmp_m_332_m_32 = (_v_len39 - _v_len40);
    29073349                  Expr _ve_2;
    29083350                  _ve_2 = Expr (_v_lsplit__bl__res__vars, (0 + 1), _v_len__2);
    2909                   Expr _ve__dollar_tmp_m_293_m_32;
    2910                   _ve__dollar_tmp_m_293_m_32 = Expr (_v_deref__lsplit__bl__res__vars, 0, _v_len___dollar_tmp_m_293_m_32);
     3351                  Expr _ve__dollar_tmp_m_332_m_32;
     3352                  _ve__dollar_tmp_m_332_m_32 = Expr (_v_deref__lsplit__bl__res__vars, 0, _v_len___dollar_tmp_m_332_m_32);
    29113353                  Expr _vt_name;
    2912                   _vt_name = Expr (_v_deref__lsplit__bl__res__vars, (0 + _v_len___dollar_tmp_m_293_m_32), 1);
    2913                   RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_293_m_55, _v_lsplit__vars);
     3354                  _vt_name = Expr (_v_deref__lsplit__bl__res__vars, (0 + _v_len___dollar_tmp_m_332_m_32), 1);
     3355                  RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_332_m_55, _v_lsplit__vars);
    29143356                  for ( ; ; RF_iter(_ve_vars)++)
    29153357                  {
     
    29273369                        goto _continue1;
    29283370                      }
    2929                       int _v_len___dollar_tmp_m_293_m_68;
    2930                       _v_len___dollar_tmp_m_293_m_68 = (_v_len41 - _v_len42);
     3371                      int _v_len___dollar_tmp_m_332_m_68;
     3372                      _v_len___dollar_tmp_m_332_m_68 = (_v_len41 - _v_len42);
    29313373                      if (_v_lsplit__vars.symbol_at (0))
    29323374                      {
     
    29433385                        goto _continue2;
    29443386                      }
    2945                       int _v_len___dollar_tmp_m_293_m_58;
    2946                       _v_len___dollar_tmp_m_293_m_58 = (_v_len43 - _v_len44);
    2947                       if (!_vt_name.term_eq (_v_deref__lsplit__vars, (0 + _v_len___dollar_tmp_m_293_m_58)))
     3387                      int _v_len___dollar_tmp_m_332_m_58;
     3388                      _v_len___dollar_tmp_m_332_m_58 = (_v_len43 - _v_len44);
     3389                      if (!_vt_name.term_eq (_v_deref__lsplit__vars, (0 + _v_len___dollar_tmp_m_332_m_58)))
    29483390                      {
    29493391                        goto _continue2;
    29503392                      }
    2951                       Expr _ve__dollar_tmp_m_293_m_68;
    2952                       _ve__dollar_tmp_m_293_m_68 = Expr (_v_lsplit__vars, (0 + 1), _v_len___dollar_tmp_m_293_m_68);
    2953                       Expr _ve__dollar_tmp_m_293_m_58;
    2954                       _ve__dollar_tmp_m_293_m_58 = Expr (_v_deref__lsplit__vars, 0, _v_len___dollar_tmp_m_293_m_58);
     3393                      Expr _ve__dollar_tmp_m_332_m_68;
     3394                      _ve__dollar_tmp_m_332_m_68 = Expr (_v_lsplit__vars, (0 + 1), _v_len___dollar_tmp_m_332_m_68);
     3395                      Expr _ve__dollar_tmp_m_332_m_58;
     3396                      _ve__dollar_tmp_m_332_m_58 = Expr (_v_deref__lsplit__vars, 0, _v_len___dollar_tmp_m_332_m_58);
    29553397                      _ve_brv = (_ve_brv + _ve_1);
    29563398                      _ve_bl__res__vars = _ve_2;
     
    29873429        _v_len45 = _v_deref__Statement5.get_len ();
    29883430        int _v_len46;
    2989         _v_len46 = 2;
     3431        _v_len46 = 1;
    29903432        if (_v_len45 < _v_len46)
    29913433        {
     
    29943436        int _v_len__Sentence;
    29953437        _v_len__Sentence = (_v_len45 - _v_len46);
    2996         if (!_c_1.term_eq (_v_deref__Statement5, 0))
     3438        if (!_c_2.term_eq (_v_deref__Statement5, 0))
    29973439        {
    29983440          goto _block2__branch4;
    29993441        }
    3000         Expr _vt_Pragma;
    3001         _vt_Pragma = Expr (_v_deref__Statement5, (0 + 1), 1);
    30023442        Expr _ve_Sentence;
    3003         _ve_Sentence = Expr (_v_deref__Statement5, (0 + 1 + 1), _v_len__Sentence);
     3443        _ve_Sentence = Expr (_v_deref__Statement5, (0 + 1), _v_len__Sentence);
    30043444        Expr _ge_auxcall10;
    30053445        RF_CALL (Rename_Vars, (_vs_num, _ve_vars, _ve_res__vars, _ve_Sentence), _ge_auxcall10);
    30063446        _ve_vars = empty;
    3007         _ve_new__Snt = (_ve_new__Snt + (_c_1 + _vt_Pragma + _ge_auxcall10) ());
     3447        _ve_new__Snt = (_ve_new__Snt + (_c_2 + _ge_auxcall10) ());
    30083448        _ge_Snt__0 = empty;
    30093449        goto _block2;
     
    30373477          RF_FUNC_ERROR (unexpected_fail);
    30383478        }
    3039         Expr _vt__dollar_tmp_m_317_m_14;
    3040         _vt__dollar_tmp_m_317_m_14 = Expr (_v_Rename__Vars1, 0, 1);
     3479        Expr _vt__dollar_tmp_m_356_m_14;
     3480        _vt__dollar_tmp_m_356_m_14 = Expr (_v_Rename__Vars1, 0, 1);
    30413481        Expr _vt_NewBody;
    30423482        _vt_NewBody = Expr (_v_Rename__Vars1, (0 + 1), 1);
     
    31433583    RF_RETFAIL;
    31443584  }
    3145   int _v_len___dollar_tmp_m_338_m_20;
    3146   _v_len___dollar_tmp_m_338_m_20 = (_v_len3 - _v_len4);
     3585  int _v_len___dollar_tmp_m_377_m_20;
     3586  _v_len___dollar_tmp_m_377_m_20 = (_v_len3 - _v_len4);
    31473587  Expr _ve_vars;
    31483588  _ve_vars = Expr (_ge_arg1, 0, _v_len__vars);
    3149   Expr _ve__dollar_tmp_m_338_m_20;
    3150   _ve__dollar_tmp_m_338_m_20 = Expr (_v_deref__arg1, 0, _v_len___dollar_tmp_m_338_m_20);
     3589  Expr _ve__dollar_tmp_m_377_m_20;
     3590  _ve__dollar_tmp_m_377_m_20 = Expr (_v_deref__arg1, 0, _v_len___dollar_tmp_m_377_m_20);
    31513591  Expr _vt_name;
    3152   _vt_name = Expr (_v_deref__arg1, (0 + _v_len___dollar_tmp_m_338_m_20), 1);
     3592  _vt_name = Expr (_v_deref__arg1, (0 + _v_len___dollar_tmp_m_377_m_20), 1);
    31533593  if (_v_len__vars < 1)
    31543594  {
    31553595    RF_RETFAIL;
    31563596  }
    3157   RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_338_m_41, _v_lsplit__vars);
     3597  RF_lsplit (_ve_vars, 0, _ve__dollar_tmp_m_377_m_41, _v_lsplit__vars);
    31583598  for ( ; ; RF_iter(_ve_vars)++)
    31593599  {
     
    31713611        RF_RETFAIL;
    31723612      }
    3173       int _v_len___dollar_tmp_m_338_m_54;
    3174       _v_len___dollar_tmp_m_338_m_54 = (_v_len5 - _v_len6);
     3613      int _v_len___dollar_tmp_m_377_m_54;
     3614      _v_len___dollar_tmp_m_377_m_54 = (_v_len5 - _v_len6);
    31753615      if (_v_lsplit__vars.symbol_at (0))
    31763616      {
     
    31873627        goto _continue1;
    31883628      }
    3189       int _v_len___dollar_tmp_m_338_m_44;
    3190       _v_len___dollar_tmp_m_338_m_44 = (_v_len7 - _v_len8);
    3191       if (!_vt_name.term_eq (_v_deref__lsplit__vars, (0 + _v_len___dollar_tmp_m_338_m_44)))
     3629      int _v_len___dollar_tmp_m_377_m_44;
     3630      _v_len___dollar_tmp_m_377_m_44 = (_v_len7 - _v_len8);
     3631      if (!_vt_name.term_eq (_v_deref__lsplit__vars, (0 + _v_len___dollar_tmp_m_377_m_44)))
    31923632      {
    31933633        goto _continue1;
    31943634      }
    3195       Expr _ve__dollar_tmp_m_338_m_54;
    3196       _ve__dollar_tmp_m_338_m_54 = Expr (_v_lsplit__vars, (0 + 1), _v_len___dollar_tmp_m_338_m_54);
    3197       Expr _ve__dollar_tmp_m_338_m_44;
    3198       _ve__dollar_tmp_m_338_m_44 = Expr (_v_deref__lsplit__vars, 0, _v_len___dollar_tmp_m_338_m_44);
     3635      Expr _ve__dollar_tmp_m_377_m_54;
     3636      _ve__dollar_tmp_m_377_m_54 = Expr (_v_lsplit__vars, (0 + 1), _v_len___dollar_tmp_m_377_m_54);
     3637      Expr _ve__dollar_tmp_m_377_m_44;
     3638      _ve__dollar_tmp_m_377_m_44 = Expr (_v_deref__lsplit__vars, 0, _v_len___dollar_tmp_m_377_m_44);
    31993639      _v_res1 = empty;
    32003640      goto _exit1;
     
    32053645RF_END
    32063646
    3207 RF_FUNC (Rename, (RF_ARG _ge_arg1;;), (RF_RES _v_res1;;))
    3208   if (_ge_arg1.get_len () != 2)
    3209   {
    3210     RF_FUNC_ERROR (unexpected_fail);
    3211   }
    3212   if (_ge_arg1.symbol_at ((0 + 1)))
    3213   {
    3214     RF_FUNC_ERROR (unexpected_fail);
    3215   }
    3216   Expr _v_deref__arg1;
    3217   _v_deref__arg1 = Expr (_ge_arg1, (0 + 1));
    3218   if (_v_deref__arg1.get_len () != 3)
    3219   {
    3220     RF_FUNC_ERROR (unexpected_fail);
    3221   }
    3222   if (_v_deref__arg1.symbol_at ((0 + 1 + 1)))
    3223   {
    3224     RF_FUNC_ERROR (unexpected_fail);
    3225   }
    3226   Expr _v_deref__deref__arg1;
    3227   _v_deref__deref__arg1 = Expr (_v_deref__arg1, (0 + 1 + 1));
    3228   int _v_len1;
    3229   _v_len1 = _v_deref__deref__arg1.get_len ();
    3230   int _v_len2;
    3231   _v_len2 = 0;
    3232   if (_v_len1 < _v_len2)
    3233   {
    3234     RF_FUNC_ERROR (unexpected_fail);
    3235   }
    3236   int _v_len__QualifiedName;
    3237   _v_len__QualifiedName = (_v_len1 - _v_len2);
    3238   if (!_ge_arg1.symbol_at (0))
    3239   {
    3240     RF_FUNC_ERROR (unexpected_fail);
    3241   }
    3242   if (!_v_deref__arg1.symbol_at (0))
    3243   {
    3244     RF_FUNC_ERROR (unexpected_fail);
    3245   }
    3246   Expr _vs_num;
    3247   _vs_num = Expr (_ge_arg1, 0, 1);
    3248   Expr _vs_tag;
    3249   _vs_tag = Expr (_v_deref__arg1, 0, 1);
    3250   Expr _vt_p;
    3251   _vt_p = Expr (_v_deref__arg1, (0 + 1), 1);
    3252   Expr _ve_QualifiedName;
    3253   _ve_QualifiedName = Expr (_v_deref__deref__arg1, 0, _v_len__QualifiedName);
    3254   _v_res1 = (_vs_tag + _vt_p + (_ve_QualifiedName + _c_31 + _vs_num) ()) ();
     3647RF_FUNC (Rename, (RF_ARG _vs_num, _vs_tag, _ve_name;;), (RF_RES _v_res1, _v_res2, _v_res3;;))
     3648  _v_res1 = _vs_tag;
     3649  _v_res2 = _ve_name;
     3650  _v_res3 = _vs_num;
    32553651RF_END
    32563652
     
    33143710      Expr _v_deref__deref__compose12;
    33153711      _v_deref__deref__compose12 = Expr (_v_deref__compose12, 0);
    3316       if (_v_deref__deref__compose12.get_len () != 3)
     3712      int _v_len7;
     3713      _v_len7 = _v_deref__deref__compose12.get_len ();
     3714      int _v_len8;
     3715      _v_len8 = 2;
     3716      if (_v_len7 < _v_len8)
    33173717      {
    33183718        goto _block1__branch1;
    33193719      }
    3320       if (_v_deref__deref__compose1.get_len () != 3)
     3720      int _v_len___dollar_tmp_m_385_m_34;
     3721      _v_len___dollar_tmp_m_385_m_34 = (_v_len7 - _v_len8);
     3722      int _v_len9;
     3723      _v_len9 = _v_deref__deref__compose1.get_len ();
     3724      int _v_len10;
     3725      _v_len10 = 2;
     3726      if (_v_len9 < _v_len10)
    33213727      {
    33223728        goto _block1__branch1;
    33233729      }
     3730      int _v_len___dollar_tmp_m_385_m_12;
     3731      _v_len___dollar_tmp_m_385_m_12 = (_v_len9 - _v_len10);
    33243732      if (!_v_deref__deref__compose1.symbol_at (0))
    33253733      {
     
    33383746      Expr _vs_tag;
    33393747      _vs_tag = Expr (_v_deref__deref__compose1, 0, 1);
    3340       Expr _vt__dollar_tmp_m_347_m_12;
    3341       _vt__dollar_tmp_m_347_m_12 = Expr (_v_deref__deref__compose1, (0 + 1), 1);
     3748      Expr _ve__dollar_tmp_m_385_m_12;
     3749      _ve__dollar_tmp_m_385_m_12 = Expr (_v_deref__deref__compose1, (0 + 1), _v_len___dollar_tmp_m_385_m_12);
    33423750      Expr _vt_name;
    3343       _vt_name = Expr (_v_deref__deref__compose1, (0 + 1 + 1), 1);
    3344       Expr _vs__dollar_tmp_m_347_m_32;
    3345       _vs__dollar_tmp_m_347_m_32 = Expr (_v_deref__deref__compose12, 0, 1);
    3346       Expr _vt__dollar_tmp_m_347_m_34;
    3347       _vt__dollar_tmp_m_347_m_34 = Expr (_v_deref__deref__compose12, (0 + 1), 1);
     3751      _vt_name = Expr (_v_deref__deref__compose1, (0 + 1 + _v_len___dollar_tmp_m_385_m_12), 1);
     3752      Expr _vs__dollar_tmp_m_385_m_32;
     3753      _vs__dollar_tmp_m_385_m_32 = Expr (_v_deref__deref__compose12, 0, 1);
     3754      Expr _ve__dollar_tmp_m_385_m_34;
     3755      _ve__dollar_tmp_m_385_m_34 = Expr (_v_deref__deref__compose12, (0 + 1), _v_len___dollar_tmp_m_385_m_34);
    33483756      Expr _vt_s;
    3349       _vt_s = Expr (_v_deref__deref__compose12, (0 + 1 + 1), 1);
     3757      _vt_s = Expr (_v_deref__deref__compose12, (0 + 1 + _v_len___dollar_tmp_m_385_m_34), 1);
    33503758      Expr _ve_var__pats;
    33513759      Expr _ve_var__repls;
     
    33593767    }
    33603768  _block1__branch1: {}
    3361     int _v_len7;
    3362     _v_len7 = (_ge_arg3.get_len () + 2);
    3363     int _v_len8;
    3364     _v_len8 = 2;
    3365     if (_v_len7 < _v_len8)
     3769    int _v_len11;
     3770    _v_len11 = (_ge_arg3.get_len () + 2);
     3771    int _v_len12;
     3772    _v_len12 = 2;
     3773    if (_v_len11 < _v_len12)
    33663774    {
    33673775      RF_FUNC_ERROR (unexpected_fail);
    33683776    }
    3369     int _v_len___dollar_tmp_m_351_m_10;
    3370     _v_len___dollar_tmp_m_351_m_10 = (_v_len7 - _v_len8);
     3777    int _v_len___dollar_tmp_m_389_m_10;
     3778    _v_len___dollar_tmp_m_389_m_10 = (_v_len11 - _v_len12);
    33713779    Expr _v_compose2;
    33723780    _v_compose2 = (_ge_arg1 () + _ge_arg2 () + _ge_arg3);
    3373     if (!_c_32.eq (_v_compose2, 0))
     3781    if (!_c_33.eq (_v_compose2, 0))
    33743782    {
    33753783      RF_FUNC_ERROR (unexpected_fail);
    33763784    }
    3377     Expr _ve__dollar_tmp_m_351_m_10;
    3378     _ve__dollar_tmp_m_351_m_10 = Expr (_v_compose2, (0 + 1 + 1), _v_len___dollar_tmp_m_351_m_10);
     3785    Expr _ve__dollar_tmp_m_389_m_10;
     3786    _ve__dollar_tmp_m_389_m_10 = Expr (_v_compose2, (0 + 1 + 1), _v_len___dollar_tmp_m_389_m_10);
    33793787    _v_res1 = empty;
    33803788    _v_res2 = empty;
     
    34043812      {
    34053813        {
    3406           if (_vt_Statement.symbol_at (0))
    3407           {
    3408             goto _block2__branch1;
    3409           }
    3410           Expr _v_deref__Statement;
    3411           _v_deref__Statement = Expr (_vt_Statement, 0);
    3412           if (_v_deref__Statement.get_len () != 3)
    3413           {
    3414             goto _block2__branch1;
    3415           }
    3416           if (!_vs_tag.term_eq (_v_deref__Statement, 0))
    3417           {
    3418             goto _block2__branch1;
    3419           }
    3420           Expr _vt_p;
    3421           _vt_p = Expr (_v_deref__Statement, (0 + 1), 1);
     3814          Expr _ve_p;
    34223815          Expr _vt_name;
    3423           _vt_name = Expr (_v_deref__Statement, (0 + 1 + 1), 1);
    3424           {
    3425             {
    3426               if (!_vt_n.term_eq (_vt_name, 0))
     3816          {
     3817            {
     3818              if (_vt_Statement.symbol_at (0))
    34273819              {
    34283820                goto _block3__branch1;
    34293821              }
    3430               _ve_st__pats = (_vs_tag + _vt_p + _vt_name) ();
    3431               _ve_st__repls = (_vs_tag + _vt_p + _vt_s) () ();
     3822              Expr _v_deref__Statement;
     3823              _v_deref__Statement = Expr (_vt_Statement, 0);
     3824              if (_v_deref__Statement.get_len () != 3)
     3825              {
     3826                goto _block3__branch1;
     3827              }
     3828              if (!_vs_tag.term_eq (_v_deref__Statement, 0))
     3829              {
     3830                goto _block3__branch1;
     3831              }
     3832              Expr _gt_p__6;
     3833              _gt_p__6 = Expr (_v_deref__Statement, (0 + 1), 1);
     3834              Expr _gt_name__6;
     3835              _gt_name__6 = Expr (_v_deref__Statement, (0 + 1 + 1), 1);
     3836              _ve_p = _gt_p__6;
     3837              _vt_name = _gt_name__6;
    34323838              goto _block3;
    34333839            }
    34343840          _block3__branch1: {}
     3841            if (_vt_Statement.symbol_at (0))
     3842            {
     3843              goto _block2__branch1;
     3844            }
     3845            Expr _v_deref__Statement2;
     3846            _v_deref__Statement2 = Expr (_vt_Statement, 0);
     3847            if (_v_deref__Statement2.get_len () != 2)
     3848            {
     3849              goto _block2__branch1;
     3850            }
     3851            if (!_vs_tag.term_eq (_v_deref__Statement2, 0))
     3852            {
     3853              goto _block2__branch1;
     3854            }
     3855            Expr _gt_name__6;
     3856            _gt_name__6 = Expr (_v_deref__Statement2, (0 + 1), 1);
     3857            _ve_p = empty;
     3858            _vt_name = _gt_name__6;
     3859          }
     3860        _block3: {}
     3861          {
     3862            {
     3863              if (!_vt_n.term_eq (_vt_name, 0))
     3864              {
     3865                goto _block4__branch1;
     3866              }
     3867              _ve_st__pats = _vt_Statement;
     3868              _ve_st__repls = (_vs_tag + _ve_p + _vt_s) () ();
     3869              goto _block4;
     3870            }
     3871          _block4__branch1: {}
    34353872            _ve_st__pats = empty;
    34363873            _ve_st__repls = empty;
    34373874          }
    3438         _block3: {}
     3875        _block4: {}
    34393876          goto _block2;
    34403877        }
     
    34453882            goto _block2__branch2;
    34463883          }
    3447           Expr _v_deref__Statement2;
    3448           _v_deref__Statement2 = Expr (_vt_Statement, 0);
     3884          Expr _v_deref__Statement3;
     3885          _v_deref__Statement3 = Expr (_vt_Statement, 0);
    34493886          int _v_len3;
    3450           _v_len3 = _v_deref__Statement2.get_len ();
     3887          _v_len3 = _v_deref__Statement3.get_len ();
    34513888          int _v_len4;
    34523889          _v_len4 = 0;
     
    34583895          _v_len__xpr = (_v_len3 - _v_len4);
    34593896          Expr _ve_xpr;
    3460           _ve_xpr = Expr (_v_deref__Statement2, 0, _v_len__xpr);
     3897          _ve_xpr = Expr (_v_deref__Statement3, 0, _v_len__xpr);
    34613898          RF_CALL (Var_Subst, (_vs_tag, _vt_n, _vt_s, _ve_xpr), (_ve_st__pats, _ve_st__repls));
    34623899          goto _block2;
     
    34813918RF_END
    34823919
     3920RF_FUNC (Del_Pragmas, (RF_ARG _ge_arg1;;), (RF_RES _v_res1;;))
     3921  {
     3922    {
     3923      if (_ge_arg1.get_len () < 1)
     3924      {
     3925        goto _block1__branch1;
     3926      }
     3927      RF_lsplit (_ge_arg1, 0, _ve_L, _v_lsplit__arg1);
     3928      for ( ; ; RF_iter(_ge_arg1)++)
     3929      {
     3930        {
     3931          if (!RF_iter(_ge_arg1))
     3932          {
     3933            goto _block1__branch1;
     3934          }
     3935          int _v_len1;
     3936          _v_len1 = _v_lsplit__arg1.get_len ();
     3937          int _v_len2;
     3938          _v_len2 = 1;
     3939          if (_v_len1 < _v_len2)
     3940          {
     3941            goto _block1__branch1;
     3942          }
     3943          int _v_len__R;
     3944          _v_len__R = (_v_len1 - _v_len2);
     3945          Expr _vt_Item;
     3946          _vt_Item = Expr (_v_lsplit__arg1, 0, 1);
     3947          Expr _ve_R;
     3948          _ve_R = Expr (_v_lsplit__arg1, (0 + 1), _v_len__R);
     3949          {
     3950            {
     3951              if (_vt_Item.symbol_at (0))
     3952              {
     3953                goto _block2__branch1;
     3954              }
     3955              Expr _v_deref__Item;
     3956              _v_deref__Item = Expr (_vt_Item, 0);
     3957              int _v_len3;
     3958              _v_len3 = _v_deref__Item.get_len ();
     3959              int _v_len4;
     3960              _v_len4 = 1;
     3961              if (_v_len3 < _v_len4)
     3962              {
     3963                goto _block2__branch1;
     3964              }
     3965              int _v_len___dollar_tmp_m_415_m_14;
     3966              _v_len___dollar_tmp_m_415_m_14 = (_v_len3 - _v_len4);
     3967              if (!_c_1.term_eq (_v_deref__Item, 0))
     3968              {
     3969                goto _block2__branch1;
     3970              }
     3971              Expr _ve__dollar_tmp_m_415_m_14;
     3972              _ve__dollar_tmp_m_415_m_14 = Expr (_v_deref__Item, (0 + 1), _v_len___dollar_tmp_m_415_m_14);
     3973              Expr _v_Del__Pragmas1;
     3974              RF_CALL (Del_Pragmas, _ve_R, _v_Del__Pragmas1);
     3975              _v_res1 = (_ve_L + _v_Del__Pragmas1);
     3976              goto _block2;
     3977            }
     3978          _block2__branch1: {}
     3979            if (_vt_Item.symbol_at (0))
     3980            {
     3981              goto _continue1;
     3982            }
     3983            Expr _v_deref__Item2;
     3984            _v_deref__Item2 = Expr (_vt_Item, 0);
     3985            int _v_len5;
     3986            _v_len5 = _v_deref__Item2.get_len ();
     3987            int _v_len6;
     3988            _v_len6 = 0;
     3989            if (_v_len5 < _v_len6)
     3990            {
     3991              goto _continue1;
     3992            }
     3993            int _v_len__xpr;
     3994            _v_len__xpr = (_v_len5 - _v_len6);
     3995            Expr _ve_xpr;
     3996            _ve_xpr = Expr (_v_deref__Item2, 0, _v_len__xpr);
     3997            Expr _ge_auxcall1;
     3998            RF_CALL (Del_Pragmas, _ve_xpr, _ge_auxcall1);
     3999            Expr _v_Del__Pragmas2;
     4000            RF_CALL (Del_Pragmas, _ve_R, _v_Del__Pragmas2);
     4001            _v_res1 = (_ve_L + _ge_auxcall1 () + _v_Del__Pragmas2);
     4002          }
     4003        _block2: {}
     4004          goto _exit1;
     4005        }
     4006    _continue1: {}
     4007      }
     4008    _exit1: {}
     4009      goto _block1;
     4010    }
     4011  _block1__branch1: {}
     4012    _v_res1 = _ge_arg1;
     4013  }
     4014_block1: {}
     4015RF_END
     4016
    34834017RF_FUNC (Rename_Vars_0, (RF_ARG _ge_arg1;;), (RF_RES _v_res1;;))
    34844018  int _v_len1;
     
    34884022  if (_v_len1 < _v_len2)
    34894023  {
    3490     RF_ERROR (_c_33);
     4024    RF_ERROR (_c_34);
    34914025  }
    34924026  int _v_len__stub1;
     
    34944028  if (_ge_arg1.symbol_at ((0 + 1)))
    34954029  {
    3496     RF_ERROR (_c_33);
     4030    RF_ERROR (_c_34);
    34974031  }
    34984032  if (_ge_arg1.symbol_at ((0 + 1 + 1)))
    34994033  {
    3500     RF_ERROR (_c_33);
     4034    RF_ERROR (_c_34);
    35014035  }
    35024036  Expr _v_deref__arg1;
     
    35104044  if (_v_len3 < _v_len4)
    35114045  {
    3512     RF_ERROR (_c_33);
     4046    RF_ERROR (_c_34);
    35134047  }
    35144048  int _v_len__stub2;
     
    35204054  if (_v_len5 < _v_len6)
    35214055  {
    3522     RF_ERROR (_c_33);
     4056    RF_ERROR (_c_34);
    35234057  }
    35244058  int _v_len__stub3;
     
    35264060  if (!_ge_arg1.symbol_at (0))
    35274061  {
    3528     RF_ERROR (_c_33);
     4062    RF_ERROR (_c_34);
    35294063  }
    35304064  Expr _v_stub4;
     
    35394073RF_END
    35404074
     4075RF_FUNC (Rename_0, (RF_ARG _ge_arg1;;), (RF_RES _v_res1;;))
     4076  if (_ge_arg1.get_len () != 2)
     4077  {
     4078    RF_ERROR (_c_34);
     4079  }
     4080  if (_ge_arg1.symbol_at ((0 + 1)))
     4081  {
     4082    RF_ERROR (_c_34);
     4083  }
     4084  Expr _v_deref__arg1;
     4085  _v_deref__arg1 = Expr (_ge_arg1, (0 + 1));
     4086  if (_v_deref__arg1.get_len () != 2)
     4087  {
     4088    RF_ERROR (_c_34);
     4089  }
     4090  if (_v_deref__arg1.symbol_at ((0 + 1)))
     4091  {
     4092    RF_ERROR (_c_34);
     4093  }
     4094  Expr _v_deref__deref__arg1;
     4095  _v_deref__deref__arg1 = Expr (_v_deref__arg1, (0 + 1));
     4096  int _v_len1;
     4097  _v_len1 = _v_deref__deref__arg1.get_len ();
     4098  int _v_len2;
     4099  _v_len2 = 0;
     4100  if (_v_len1 < _v_len2)
     4101  {
     4102    RF_ERROR (_c_34);
     4103  }
     4104  int _v_len__stub1;
     4105  _v_len__stub1 = (_v_len1 - _v_len2);
     4106  if (!_ge_arg1.symbol_at (0))
     4107  {
     4108    RF_ERROR (_c_34);
     4109  }
     4110  if (!_v_deref__arg1.symbol_at (0))
     4111  {
     4112    RF_ERROR (_c_34);
     4113  }
     4114  Expr _v_stub2;
     4115  _v_stub2 = Expr (_ge_arg1, 0, 1);
     4116  Expr _v_stub3;
     4117  _v_stub3 = Expr (_v_deref__arg1, 0, 1);
     4118  Expr _v_stub1;
     4119  _v_stub1 = Expr (_v_deref__deref__arg1, 0, _v_len__stub1);
     4120  Expr _v_Rename1;
     4121  Expr _v_Rename2;
     4122  Expr _v_Rename3;
     4123  RF_CALL (Rename, (_v_stub2, _v_stub3, _v_stub1), (_v_Rename1, _v_Rename2, _v_Rename3));
     4124  _v_res1 = (_v_Rename1 + (_v_Rename2 + _c_35 + _v_Rename3) ()) ();
     4125RF_END
     4126
    35414127}
    35424128
     
    35464132  Free_Idx = Expr::create_sym< rftype::NamedObject<rftype::BoxContents> >(L"Free_Idx");
    35474133  _c_0 = Expr::create<rftype::Word>("ITEMS");
    3548   _c_1 = Expr::create<rftype::Word>("BRANCH");
    3549   _c_2 = Expr::create<rftype::Word>("DBG");
    3550   _c_34 = Expr::create<rftype::Word>("PRAGMA");
    3551   _c_12 = Expr::create<rftype::Word>("RESULT") + (_c_34) ();
    3552   _c_3 = Expr (_c_12, 0, 1);
    3553   _c_4 = Expr::create<rftype::Integer>("1");
    3554   _c_5 = Expr::create<rftype::Integer>("0");
    3555   _c_6 = Expr::create<rftype::Word>("BLOCK");
    3556   _c_7 = Expr::create<rftype::Word>("BLOCK?");
    3557   _c_8 = Expr::create<rftype::Word>("LEFT");
    3558   _c_9 = Expr::create<rftype::Word>("RIGHT");
    3559   _c_10 = Expr::create<rftype::Word>("aux") + Expr::create<rftype::Word>("alt");
    3560   _c_11 = Expr::create<rftype::Word>("FORMAT") + (_c_34) ();
     4134  _c_1 = Expr::create<rftype::Word>("PRAGMA");
     4135  _c_2 = Expr::create<rftype::Word>("BRANCH");
     4136  _c_3 = Expr::create<rftype::Word>("DBG");
     4137  _c_28 = Expr::create<rftype::Word>("RESULT") + (_c_1) ();
     4138  _c_4 = Expr (_c_28, 0, 1);
     4139  _c_5 = Expr::create<rftype::Integer>("1");
     4140  _c_6 = Expr::create<rftype::Integer>("0");
     4141  _c_7 = Expr::create<rftype::Word>("ALT");
     4142  _c_8 = Expr::create<rftype::Word>("ALT?");
     4143  _c_9 = Expr::create<rftype::Word>("LEFT");
     4144  _c_10 = Expr::create<rftype::Word>("RIGHT");
     4145  _c_11 = Expr::create<rftype::Word>("aux") + Expr::create<rftype::Word>("alt");
     4146  _c_12 = Expr::create<rftype::Word>("FORMAT");
    35614147  _c_13 = Expr::create<rftype::Word>("Tail");
    35624148  _c_14 = Expr::create<rftype::Word>("FAIL");
     
    35654151  _c_17 = Expr::create<rftype::Word>("TRY");
    35664152  _c_18 = (_c_14) ();
    3567   _c_19 = Expr::create<rftype::Word>("ERROR");
     4153  _c_19 = (Expr::create<rftype::Word>("ERROR")) ();
    35684154  _c_20 = Expr::create<rftype::Word>("aux") + Expr::create<rftype::Word>("block");
    35694155  _c_21 = Expr::create<rftype::Word>("CALL");
     
    35714157  _c_23 = Expr::create<rftype::Word>("aux") + Expr::create<rftype::Word>("call");
    35724158  _c_24 = Expr::create<rftype::Word>("PAREN");
    3573   _c_25 = Expr::create<rftype::Word>("arg");
    3574   _c_26 = Expr::create_sym<rftype::Func> (IsOld_Var);
    3575   _c_27 = Expr::create_sym<rftype::Func> (Rename);
    3576   _c_28 = Expr (_c_11, 0, 1);
    3577   _c_29 = Expr::create<rftype::Integer>("2");
    3578   _c_30 = Expr::create_sym<rftype::Func> (Rename_Vars_0);
    3579   _c_31 = Expr::create<rftype::Word>("_");
    3580   _c_32 = (empty) () + (empty) ();
    3581   _c_33 = Expr::create<rftype::Word>("Apply") + Expr::create<rftype::Word>("Apply") + Expr::create<rftype::Word>("Unexpected fail");
     4159  _c_25 = Expr::create<rftype::Word>("With_pragmas");
     4160  _c_26 = Expr::create<rftype::Word>("Without_pragmas");
     4161  _c_27 = Expr::create<rftype::Word>("arg");
     4162  _c_29 = Expr::create_sym<rftype::Func> (IsOld_Var);
     4163  _c_30 = Expr::create_sym<rftype::Func> (Rename_0);
     4164  _c_31 = Expr::create<rftype::Integer>("2");
     4165  _c_32 = Expr::create_sym<rftype::Func> (Rename_Vars_0);
     4166  _c_33 = (empty) () + (empty) ();
     4167  _c_34 = Expr::create<rftype::Word>("Apply") + Expr::create<rftype::Word>("Apply") + Expr::create<rftype::Word>("Unexpected fail");
     4168  _c_35 = Expr::create<rftype::Word>("_");
    35824169}
    35834170
  • to-imperative/trunk/c++/compiler/rfp_asail_java.cc

    r2667 r2730  
    5050RF_DECL (Put);
    5151
     52RF_DECL (Get);
     53
    5254}
    5355
     
    7072namespace refal {
    7173
     74namespace Convert {
     75
     76RF_DECL (ToLower);
     77
     78RF_DECL (ToChars);
     79
     80}
     81
     82}
     83
     84namespace refal {
     85
    7286namespace Box {
    7387
    7488RF_DECL (Store);
    7589
    76 RF_DECL (Get);
    77 
    7890}
    7991
     
    8294namespace refal {
    8395
     96namespace List {
     97
     98RF_DECL (Concat);
     99
     100}
     101
     102}
     103
     104namespace refal {
     105
     106namespace JavaMangle {
     107
     108RF_DECL (Rfp2Java);
     109
     110}
     111
     112}
     113
     114namespace refal {
     115
     116namespace List {
     117
     118RF_DECL (Paren);
     119
     120}
     121
     122}
     123
     124namespace refal {
     125
     126namespace Table {
     127
     128RF_DECL (Bind);
     129
     130}
     131
     132}
     133
     134namespace refal {
     135
     136namespace List {
     137
     138RF_DECL (Intersperse);
     139
     140}
     141
     142}
     143
     144namespace refal {
     145
    84146namespace Convert {
    85147
    86 RF_DECL (ToLower);
     148RF_DECL (ToWord);
    87149
    88150}
     
    92154namespace refal {
    93155
    94 namespace List {
    95 
    96 RF_DECL (Concat);
     156namespace Table {
     157
     158RF_DECL (IsInTable);
     159
     160RF_DECL (Unbind);
     161
     162RF_DECL (Lookup);
    97163
    98164}
     
    100166}
    101167
     168namespace rfp_asail_java {
     169
     170RF_DECL (Access_Mode);
     171
     172RF_DECL (ASAIL_To_Java);
     173
     174RF_DECL (Const_Expr_Aux);
     175
     176RF_DECL (Const_Expr_To_Java);
     177
     178RF_DECL (Expr_Args_To_Java);
     179
     180RF_DECL (Expr_Int_To_Java);
     181
     182RF_DECL (Declare_Results);
     183
     184RF_DECL (Cond_To_Java);
     185
     186RF_DECL (Expr_Ref_To_Java);
     187
     188RF_DECL (Infix_To_Java);
     189
     190RF_DECL (Name_To_Java);
     191
     192RF_DECL (Int_Args_To_Java);
     193
     194RF_DECL (Free_Index);
     195
     196RF_DECL (ReplaceQuotes);
     197
     198RF_DECL (Symbol_To_Java);
     199
     200RF_DECL (Term_Ref_To_Java);
     201
     202RF_DECL (Step_To_Java);
     203
     204RF_DECL (RFP_ASAIL_To_Java);
     205
     206RF_DECL (Expr_Int_To_Java_0);
     207
     208}
     209
    102210namespace refal {
    103211
    104 namespace JavaMangle {
    105 
    106 RF_DECL (Rfp2Java);
     212namespace Table {
     213
     214RF_DECL (ClearTable);
    107215
    108216}
     
    110218}
    111219
    112 namespace refal {
    113 
    114 namespace List {
    115 
    116 RF_DECL (Paren);
     220namespace rfp_asail_java {
     221
     222RF_DECL (Var_Args_To_Java);
    117223
    118224}
    119225
     226namespace rfp_helper {
     227
     228RF_DECL (PrintConstDefinition);
     229
    120230}
    121231
    122 namespace refal {
    123 
    124 namespace Table {
    125 
    126 RF_DECL (Bind);
     232namespace rfp_asail_java {
     233
     234RF_DECL (Var_To_Java);
    127235
    128236}
    129237
     238namespace rfp_helper {
     239
     240RF_DECL (PrintObjectDefinition);
     241
     242RF_DECL (PrintFunctionFormat);
     243
    130244}
    131245
    132 namespace refal {
    133 
    134 namespace List {
    135 
    136 RF_DECL (Intersperse);
     246namespace rfpc {
     247
     248extern Expr RFP_Trace;
    137249
    138250}
    139251
     252namespace rfp_helper {
     253
     254extern Expr RFP_Options;
     255
    140256}
    141257
    142 namespace refal {
    143 
    144 namespace Convert {
    145 
    146 RF_DECL (ToWord);
    147 
    148 RF_DECL (ToChars);
     258namespace rfp_asail_java {
     259
     260RF_DECL (Term_Ref_To_Java_0);
    149261
    150262}
    151263
    152 }
    153 
    154 namespace refal {
    155 
    156 namespace Table {
    157 
    158 RF_DECL (IsInTable);
    159 
    160 RF_DECL (Unbind);
    161 
    162 RF_DECL (Lookup);
    163 
    164 }
    165 
    166 }
    167 
    168264namespace rfp_asail_java {
    169265
    170 RF_DECL (Access_Mode);
    171 
    172 RF_DECL (ASAIL_To_Java);
    173 
    174 RF_DECL (Const_Expr_Aux);
    175 
    176 RF_DECL (Const_Expr_To_Java);
    177 
    178 RF_DECL (Expr_Args_To_Java);
    179 
    180 RF_DECL (Expr_Int_To_Java);
    181 
    182 RF_DECL (Declare_Results);
    183 
    184 RF_DECL (Cond_To_Java);
    185 
    186 RF_DECL (Expr_Ref_To_Java);
    187 
    188 RF_DECL (Infix_To_Java);
    189 
    190 RF_DECL (Name_To_Java);
    191 
    192 RF_DECL (Int_Args_To_Java);
    193 
    194 RF_DECL (Free_Index);
    195 
    196 RF_DECL (Step_To_Java);
    197 
    198 RF_DECL (Term_Ref_To_Java);
    199 
    200 RF_DECL (Symbol_To_Java);
    201 
    202 RF_DECL (RFP_ASAIL_To_Java);
    203 
    204 RF_DECL (Expr_Int_To_Java_0);
    205 
    206 }
    207 
    208 namespace refal {
    209 
    210 namespace Table {
    211 
    212 RF_DECL (ClearTable);
    213 
    214 }
    215 
    216 }
    217 
    218 namespace rfp_asail_java {
    219 
    220 RF_DECL (Var_Args_To_Java);
    221 
    222 RF_DECL (Var_To_Java);
    223 
    224 }
    225 
    226 namespace rfpc {
    227 
    228 extern Expr RFP_Trace;
    229 
    230 }
    231 
    232 namespace rfp_helper {
    233 
    234 extern Expr RFP_Options;
    235 
    236 }
    237 
    238 namespace rfp_asail_java {
    239 
    240 RF_DECL (Term_Ref_To_Java_0);
    241 
    242 }
    243 
    244 namespace rfp_asail_java {
    245 
    246266static Expr Int;
    247267
     
    288308static Expr _c_10;
    289309
     310static Expr _c_172;
     311
     312static Expr _c_173;
     313
     314static Expr _c_11;
     315
     316static Expr _c_12;
     317
     318static Expr _c_13;
     319
     320static Expr _c_14;
     321
     322static Expr _c_15;
     323
     324static Expr _c_16;
     325
     326static Expr _c_17;
     327
     328static Expr _c_18;
     329
     330static Expr _c_19;
     331
     332static Expr _c_20;
     333
     334static Expr _c_22;
     335
     336static Expr _c_21;
     337
     338static Expr _c_23;
     339
     340static Expr _c_24;
     341
     342static Expr _c_25;
     343
     344static Expr _c_26;
     345
     346static Expr _c_151;
     347
     348static Expr _c_27;
     349
     350static Expr _c_174;
     351
     352static Expr _c_28;
     353
     354static Expr _c_56;
     355
     356static Expr _c_29;
     357
     358static Expr _c_30;
     359
     360static Expr _c_31;
     361
     362static Expr _c_32;
     363
     364static Expr _c_33;
     365
     366static Expr _c_34;
     367
     368static Expr _c_35;
     369
     370static Expr _c_36;
     371
     372static Expr _c_37;
     373
     374static Expr _c_38;
     375
     376static Expr _c_39;
     377
     378static Expr _c_40;
     379
     380static Expr _c_59;
     381
     382static Expr _c_41;
     383
     384static Expr _c_42;
     385
     386static Expr _c_43;
     387
     388static Expr _c_44;
     389
     390static Expr _c_45;
     391
     392static Expr _c_46;
     393
     394static Expr _c_47;
     395
     396static Expr _c_48;
     397
     398static Expr _c_49;
     399
     400static Expr _c_175;
     401
     402static Expr _c_50;
     403
     404static Expr _c_51;
     405
     406static Expr _c_52;
     407
     408static Expr _c_53;
     409
     410static Expr _c_54;
     411
     412static Expr _c_55;
     413
     414static Expr _c_57;
     415
     416static Expr _c_58;
     417
     418static Expr _c_60;
     419
     420static Expr _c_61;
     421
     422static Expr _c_62;
     423
     424static Expr _c_63;
     425
     426static Expr _c_64;
     427
     428static Expr _c_176;
     429
     430static Expr _c_100;
     431
     432static Expr _c_65;
     433
     434static Expr _c_66;
     435
     436static Expr _c_67;
     437
     438static Expr _c_68;
     439
     440static Expr _c_69;
     441
     442static Expr _c_70;
     443
     444static Expr _c_71;
     445
     446static Expr _c_72;
     447
     448static Expr _c_73;
     449
     450static Expr _c_74;
     451
     452static Expr _c_75;
     453
     454static Expr _c_76;
     455
     456static Expr _c_77;
     457
     458static Expr _c_78;
     459
     460static Expr _c_79;
     461
     462static Expr _c_80;
     463
     464static Expr _c_81;
     465
     466static Expr _c_82;
     467
     468static Expr _c_83;
     469
     470static Expr _c_84;
     471
     472static Expr _c_85;
     473
     474static Expr _c_86;
     475
     476static Expr _c_87;
     477
     478static Expr _c_88;
     479
     480static Expr _c_89;
     481
     482static Expr _c_90;
     483
     484static Expr _c_91;
     485
     486static Expr _c_92;
     487
     488static Expr _c_93;
     489
     490static Expr _c_94;
     491
     492static Expr _c_95;
     493
     494static Expr _c_96;
     495
     496static Expr _c_97;
     497
     498static Expr _c_98;
     499
     500static Expr _c_99;
     501
     502static Expr _c_101;
     503
     504static Expr _c_102;
     505
     506static Expr _c_103;
     507
     508static Expr _c_104;
     509
     510static Expr _c_105;
     511
     512static Expr _c_106;
     513
     514static Expr _c_107;
     515
     516static Expr _c_108;
     517
     518static Expr _c_109;
     519
     520static Expr _c_147;
     521
     522static Expr _c_110;
     523
     524static Expr _c_111;
     525
     526static Expr _c_112;
     527
     528static Expr _c_113;
     529
     530static Expr _c_114;
     531
     532static Expr _c_115;
     533
     534static Expr _c_116;
     535
     536static Expr _c_117;
     537
     538static Expr _c_118;
     539
     540static Expr _c_119;
     541
     542static Expr _c_120;
     543
     544static Expr _c_121;
     545
     546static Expr _c_122;
     547
     548static Expr _c_123;
     549
     550static Expr _c_124;
     551
     552static Expr _c_125;
     553
     554static Expr _c_126;
     555
     556static Expr _c_127;
     557
     558static Expr _c_128;
     559
     560static Expr _c_129;
     561
     562static Expr _c_130;
     563
     564static Expr _c_131;
     565
     566static Expr _c_132;
     567
     568static Expr _c_133;
     569
     570static Expr _c_134;
     571
     572static Expr _c_135;
     573
     574static Expr _c_136;
     575
     576static Expr _c_137;
     577
     578static Expr _c_138;
     579
     580static Expr _c_139;
     581
     582static Expr _c_140;
     583
     584static Expr _c_141;
     585
     586static Expr _c_142;
     587
     588static Expr _c_143;
     589
     590static Expr _c_144;
     591
     592static Expr _c_145;
     593
     594static Expr _c_146;
     595
     596static Expr _c_148;
     597
     598static Expr _c_149;
     599
     600static Expr _c_150;
     601
     602static Expr _c_152;
     603
     604static Expr _c_153;
     605
     606static Expr _c_154;
     607
     608static Expr _c_155;
     609
     610static Expr _c_156;
     611
     612static Expr _c_157;
     613
     614static Expr _c_158;
     615
     616static Expr _c_159;
     617
     618static Expr _c_160;
     619
     620static Expr _c_161;
     621
     622static Expr _c_162;
     623
     624static Expr _c_163;
     625
     626static Expr _c_164;
     627
     628static Expr _c_165;
     629
     630static Expr _c_166;
     631
     632static Expr _c_167;
     633
     634static Expr _c_168;
     635
    290636static Expr _c_169;
    291637
    292638static Expr _c_170;
    293639
    294 static Expr _c_11;
    295 
    296 static Expr _c_12;
    297 
    298 static Expr _c_13;
    299 
    300 static Expr _c_14;
    301 
    302 static Expr _c_15;
    303 
    304 static Expr _c_16;
    305 
    306 static Expr _c_17;
    307 
    308 static Expr _c_18;
    309 
    310 static Expr _c_19;
    311 
    312 static Expr _c_20;
    313 
    314 static Expr _c_21;
    315 
    316 static Expr _c_22;
    317 
    318 static Expr _c_146;
    319 
    320 static Expr _c_23;
    321 
    322640static Expr _c_171;
    323 
    324 static Expr _c_24;
    325 
    326 static Expr _c_25;
    327 
    328 static Expr _c_26;
    329 
    330 static Expr _c_27;
    331 
    332 static Expr _c_28;
    333 
    334 static Expr _c_29;
    335 
    336 static Expr _c_30;
    337 
    338 static Expr _c_31;
    339 
    340 static Expr _c_32;
    341 
    342 static Expr _c_33;
    343 
    344 static Expr _c_34;
    345 
    346 static Expr _c_53;
    347 
    348 static Expr _c_35;
    349 
    350 static Expr _c_36;
    351 
    352 static Expr _c_37;
    353 
    354 static Expr _c_38;
    355 
    356 static Expr _c_39;
    357 
    358 static Expr _c_40;
    359 
    360 static Expr _c_41;
    361 
    362 static Expr _c_42;
    363 
    364 static Expr _c_43;
    365 
    366 static Expr _c_172;
    367 
    368 static Expr _c_44;
    369 
    370 static Expr _c_45;
    371 
    372 static Expr _c_46;
    373 
    374 static Expr _c_47;
    375 
    376 static Expr _c_48;
    377 
    378 static Expr _c_49;
    379 
    380 static Expr _c_50;
    381 
    382 static Expr _c_51;
    383 
    384 static Expr _c_52;
    385 
    386 static Expr _c_54;
    387 
    388 static Expr _c_55;
    389 
    390 static Expr _c_56;
    391 
    392 static Expr _c_57;
    393 
    394 static Expr _c_58;
    395 
    396 static Expr _c_173;
    397 
    398 static Expr _c_94;
    399 
    400 static Expr _c_59;
    401 
    402 static Expr _c_60;
    403 
    404 static Expr _c_61;
    405 
    406 static Expr _c_62;
    407 
    408 static Expr _c_63;
    409 
    410 static Expr _c_64;
    411 
    412 static Expr _c_65;
    413 
    414 static Expr _c_66;
    415 
    416 static Expr _c_67;
    417 
    418 static Expr _c_68;
    419 
    420 static Expr _c_69;
    421 
    422 static Expr _c_70;
    423 
    424 static Expr _c_71;
    425 
    426 static Expr _c_72;
    427 
    428 static Expr _c_73;
    429 
    430 static Expr _c_74;
    431 
    432 static Expr _c_75;
    433 
    434 static Expr _c_76;
    435 
    436 static Expr _c_77;
    437 
    438 static Expr _c_78;
    439 
    440 static Expr _c_79;
    441 
    442 static Expr _c_80;
    443 
    444 static Expr _c_81;
    445 
    446 static Expr _c_82;
    447 
    448 static Expr _c_83;
    449 
    450 static Expr _c_84;
    451 
    452 static Expr _c_85;
    453 
    454 static Expr _c_86;
    455 
    456 static Expr _c_87;
    457 
    458 static Expr _c_88;
    459 
    460 static Expr _c_89;
    461 
    462 static Expr _c_90;
    463 
    464 static Expr _c_91;
    465 
    466 static Expr _c_92;
    467 
    468 static Expr _c_93;
    469 
    470 static Expr _c_95;
    471 
    472 static Expr _c_96;
    473 
    474 static Expr _c_97;
    475 
    476 static Expr _c_98;
    477 
    478 static Expr _c_99;
    479 
    480 static Expr _c_100;
    481 
    482 static Expr _c_101;
    483 
    484 static Expr _c_102;
    485 
    486 static Expr _c_103;
    487 
    488 static Expr _c_141;
    489 
    490 static Expr _c_104;
    491 
    492 static Expr _c_105;
    493 
    494 static Expr _c_106;
    495 
    496 static Expr _c_107;
    497 
    498 static Expr _c_108;
    499 
    500 static Expr _c_109;
    501 
    502 static Expr _c_110;
    503 
    504 static Expr _c_111;
    505 
    506 static Expr _c_112;
    507 
    508 static Expr _c_113;
    509 
    510 static Expr _c_114;
    511 
    512 static Expr _c_115;
    513 
    514 static Expr _c_116;
    515 
    516 static Expr _c_117;
    517 
    518 static Expr _c_118;
    519 
    520 static Expr _c_119;
    521 
    522 static Expr _c_120;
    523 
    524 static Expr _c_121;
    525 
    526 static Expr _c_122;
    527 
    528 static Expr _c_123;
    529 
    530 static Expr _c_124;
    531 
    532 static Expr _c_125;
    533 
    534 static Expr _c_126;
    535 
    536 static Expr _c_127;
    537 
    538 static Expr _c_128;
    539 
    540 static Expr _c_129;
    541 
    542 static Expr _c_130;
    543 
    544 static Expr _c_131;
    545 
    546 static Expr _c_132;
    547 
    548 static Expr _c_133;
    549 
    550 static Expr _c_134;
    551 
    552 static Expr _c_135;
    553 
    554 static Expr _c_136;
    555 
    556 static Expr _c_137;
    557 
    558 static Expr _c_138;
    559 
    560 static Expr _c_139;
    561 
    562 static Expr _c_140;
    563 
    564 static Expr _c_142;
    565 
    566 static Expr _c_143;
    567 
    568 static Expr _c_144;
    569 
    570 static Expr _c_145;
    571 
    572 static Expr _c_147;
    573 
    574 static Expr _c_148;
    575 
    576 static Expr _c_149;
    577 
    578 static Expr _c_150;
    579 
    580 static Expr _c_151;
    581 
    582 static Expr _c_152;
    583 
    584 static Expr _c_153;
    585 
    586 static Expr _c_155;
    587 
    588 static Expr _c_154;
    589 
    590 static Expr _c_156;
    591 
    592 static Expr _c_157;
    593 
    594 static Expr _c_158;
    595 
    596 static Expr _c_159;
    597 
    598 static Expr _c_160;
    599 
    600 static Expr _c_161;
    601 
    602 static Expr _c_162;
    603 
    604 static Expr _c_163;
    605 
    606 static Expr _c_164;
    607 
    608 static Expr _c_165;
    609 
    610 static Expr _c_166;
    611 
    612 static Expr _c_167;
    613 
    614 static Expr _c_168;
    615641
    616642RF_FUNC (RFP_ASAIL_To_Java, (RF_ARG _gt_arg1;;), (RF_RES _v_res1, _v_res2;;))
     
    802828RF_END
    803829
     830RF_FUNC (ReplaceQuotes, (RF_ARG _vs_expr;;), (RF_RES _v_res1;;))
     831  Expr _ge_auxcall1;
     832  RF_CALL (refal::Convert::ToChars, _vs_expr, _ge_auxcall1);
     833  Expr _ve_items;
     834  _ve_items = empty;
     835  Expr _ge_expr__0;
     836  _ge_expr__0 = _ge_auxcall1;
     837  for ( ; ; )
     838  {
     839    {
     840      if (_ge_expr__0.get_len () != 0)
     841      {
     842        goto _iter1;
     843      }
     844      Expr _ge_items__0;
     845      _ge_items__0 = empty;
     846      Expr _ge_expr__0__0;
     847      _ge_expr__0__0 = _ve_items;
     848      for ( ; ; )
     849      {
     850        {
     851          if (_ge_expr__0__0.get_len () != 0)
     852          {
     853            goto _iter2;
     854          }
     855          RF_TAILCALL (refal::Convert::ToWord, _ge_items__0, _v_res1);
     856          goto _exit__iter2;
     857        }
     858      _iter2: {}
     859        {
     860          {
     861            if (_ge_expr__0__0.get_len () < 1)
     862            {
     863              goto _block1__branch1;
     864            }
     865            RF_lsplit (_ge_expr__0__0, 0, _ve_head, _v_lsplit__expr__0__0);
     866            for ( ; ; RF_iter(_ge_expr__0__0)++)
     867            {
     868              {
     869                if (!RF_iter(_ge_expr__0__0))
     870                {
     871                  goto _block1__branch1;
     872                }
     873                int _v_len1;
     874                _v_len1 = _v_lsplit__expr__0__0.get_len ();
     875                int _v_len2;
     876                _v_len2 = 1;
     877                if (_v_len1 < _v_len2)
     878                {
     879                  goto _block1__branch1;
     880                }
     881                int _v_len__tail;
     882                _v_len__tail = (_v_len1 - _v_len2);
     883                if (!_c_19.term_eq (_v_lsplit__expr__0__0, 0))
     884                {
     885                  goto _continue1;
     886                }
     887                Expr _ve_tail;
     888                _ve_tail = Expr (_v_lsplit__expr__0__0, (0 + 1), _v_len__tail);
     889                _ge_items__0 = (_ge_items__0 + _ve_head + _c_20);
     890                _ge_expr__0__0 = _ve_tail;
     891                goto _exit1;
     892              }
     893          _continue1: {}
     894            }
     895          _exit1: {}
     896            goto _block1;
     897          }
     898        _block1__branch1: {}
     899          _ge_items__0 = (_ge_items__0 + _ge_expr__0__0);
     900          _ge_expr__0__0 = empty;
     901        }
     902      _block1: {}
     903      }
     904    _exit__iter2: {}
     905      goto _exit__iter1;
     906    }
     907  _iter1: {}
     908    {
     909      {
     910        if (_ge_expr__0.get_len () < 1)
     911        {
     912          goto _block2__branch1;
     913        }
     914        RF_lsplit (_ge_expr__0, 0, _ve_head, _v_lsplit__expr__0);
     915        for ( ; ; RF_iter(_ge_expr__0)++)
     916        {
     917          {
     918            if (!RF_iter(_ge_expr__0))
     919            {
     920              goto _block2__branch1;
     921            }
     922            int _v_len3;
     923            _v_len3 = _v_lsplit__expr__0.get_len ();
     924            int _v_len4;
     925            _v_len4 = 1;
     926            if (_v_len3 < _v_len4)
     927            {
     928              goto _block2__branch1;
     929            }
     930            int _v_len__tail2;
     931            _v_len__tail2 = (_v_len3 - _v_len4);
     932            if (!_c_21.term_eq (_v_lsplit__expr__0, 0))
     933            {
     934              goto _continue2;
     935            }
     936            Expr _ve_tail;
     937            _ve_tail = Expr (_v_lsplit__expr__0, (0 + 1), _v_len__tail2);
     938            _ve_items = (_ve_items + _ve_head + _c_22);
     939            _ge_expr__0 = _ve_tail;
     940            goto _exit2;
     941          }
     942      _continue2: {}
     943        }
     944      _exit2: {}
     945        goto _block2;
     946      }
     947    _block2__branch1: {}
     948      _ve_items = (_ve_items + _ge_expr__0);
     949      _ge_expr__0 = empty;
     950    }
     951  _block2: {}
     952  }
     953_exit__iter1: {}
     954RF_END
     955
    804956RF_FUNC (ASAIL_To_Java, (RF_ARG _ve_asail;;), (RF_RES _v_res1;;))
    805957  {
     
    836988            goto _block2__branch1;
    837989          }
    838           int _v_len___dollar_tmp_m_100_m_20;
    839           _v_len___dollar_tmp_m_100_m_20 = (_v_len3 - _v_len4);
     990          int _v_len___dollar_tmp_m_113_m_20;
     991          _v_len___dollar_tmp_m_113_m_20 = (_v_len3 - _v_len4);
    840992          if (!_v_deref__item.symbol_at (0))
    841993          {
    842994            goto _block2__branch1;
    843995          }
    844           if (!_c_19.term_eq (_v_deref__item, (0 + 1)))
     996          if (!_c_23.term_eq (_v_deref__item, (0 + 1)))
    845997          {
    846998            goto _block2__branch1;
     
    8481000          Expr _vs_tag;
    8491001          _vs_tag = Expr (_v_deref__item, 0, 1);
    850           Expr _ve__dollar_tmp_m_100_m_20;
    851           _ve__dollar_tmp_m_100_m_20 = Expr (_v_deref__item, (0 + 1 + 1), _v_len___dollar_tmp_m_100_m_20);
     1002          Expr _ve__dollar_tmp_m_113_m_20;
     1003          _ve__dollar_tmp_m_113_m_20 = Expr (_v_deref__item, (0 + 1 + 1), _v_len___dollar_tmp_m_113_m_20);
    8521004          _ve_java__item = empty;
    8531005          goto _block2;
     
    9271079          {
    9281080            {
    929               if (!_vs_tag.term_eq (_c_20, 0))
     1081              if (!_vs_tag.term_eq (_c_24, 0))
    9301082              {
    9311083                goto _block3__branch1;
    9321084              }
    933               _ve_return__type = _c_21;
     1085              _ve_return__type = _c_25;
    9341086              _ve_return = empty;
    9351087              goto _block3;
    9361088            }
    9371089          _block3__branch1: {}
    938             if (!_vs_tag.term_eq (_c_22, 0))
     1090            if (!_vs_tag.term_eq (_c_26, 0))
    9391091            {
    9401092              goto _block2__branch2;
    9411093            }
    942             _ve_return__type = _c_23;
    943             _ve_return = _c_24;
     1094            _ve_return__type = _c_27;
     1095            _ve_return = _c_28;
    9441096          }
    9451097        _block3: {}
     
    9541106                goto _block4__branch1;
    9551107              }
    956               RF_lsplit (_v_Get1, 0, _ve__dollar_tmp_m_108_m_25, _v_lsplit__Get1);
     1108              RF_lsplit (_v_Get1, 0, _ve__dollar_tmp_m_121_m_25, _v_lsplit__Get1);
    9571109              for ( ; ; RF_iter(_v_Get1)++)
    9581110              {
     
    9701122                    goto _block4__branch1;
    9711123                  }
    972                   int _v_len___dollar_tmp_m_108_m_34;
    973                   _v_len___dollar_tmp_m_108_m_34 = (_v_len11 - _v_len12);
     1124                  int _v_len___dollar_tmp_m_121_m_34;
     1125                  _v_len___dollar_tmp_m_121_m_34 = (_v_len11 - _v_len12);
    9741126                  if (!_vt_name.term_eq (_v_lsplit__Get1, 0))
    9751127                  {
    9761128                    goto _continue1;
    9771129                  }
    978                   Expr _ve__dollar_tmp_m_108_m_34;
    979                   _ve__dollar_tmp_m_108_m_34 = Expr (_v_lsplit__Get1, (0 + 1), _v_len___dollar_tmp_m_108_m_34);
     1130                  Expr _ve__dollar_tmp_m_121_m_34;
     1131                  _ve__dollar_tmp_m_121_m_34 = Expr (_v_lsplit__Get1, (0 + 1), _v_len___dollar_tmp_m_121_m_34);
    9801132                  RF_CALL (refal::Box::Store, (Entry_Name, _vt_name), /*void*/);
    9811133                  goto _exit1;
     
    9921144          RF_CALL (Name_To_Java, _vt_name, _ge_auxcall1);
    9931145          RF_CALL (refal::Box::Store, (Func_Name, _ge_auxcall1), /*void*/);
    994           Expr _ge_auxcall2;
    995           RF_CALL (Access_Mode, _vs_linkage, _ge_auxcall2);
    996           Expr _ge_auxcall3;
    997           RF_CALL (refal::Box::Get, Func_Name, _ge_auxcall3);
     1146          Expr _ve_refalFormat;
     1147          {
     1148            {
     1149              Expr _gs_auxcall2;
     1150              if (!RF_CALL (rfp_helper::PrintFunctionFormat, _vt_name, _gs_auxcall2))
     1151              {
     1152                goto _block5__branch1;
     1153              }
     1154              Expr _gs_auxcall3;
     1155              RF_CALL (ReplaceQuotes, _gs_auxcall2, _gs_auxcall3);
     1156              _ve_refalFormat = (_c_30 + _gs_auxcall3 + _c_29) ();
     1157              goto _block5;
     1158            }
     1159          _block5__branch1: {}
     1160            _ve_refalFormat = empty;
     1161          }
     1162        _block5: {}
    9981163          Expr _ge_auxcall4;
    999           RF_CALL (Var_Args_To_Java, (_c_26 + _ve_args + _c_25 + _ve_ress), _ge_auxcall4);
     1164          RF_CALL (Access_Mode, _vs_linkage, _ge_auxcall4);
    10001165          Expr _ge_auxcall5;
    1001           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall5);
    1002           _ve_java__item = (_c_15 + (_c_30 + _ge_auxcall2 + _c_29 + _ve_return__type + _c_29 + _ge_auxcall3 + _c_28 + _ge_auxcall4 + _c_27) () + (_c_31 + (_ge_auxcall5 + _ve_return) () + _c_11) ());
     1166          RF_CALL (refal::Box::Get, Func_Name, _ge_auxcall5);
     1167          Expr _ge_auxcall6;
     1168          RF_CALL (Var_Args_To_Java, (_c_32 + _ve_args + _c_31 + _ve_ress), _ge_auxcall6);
     1169          Expr _ge_auxcall7;
     1170          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall7);
     1171          _ve_java__item = (_c_15 + _ve_refalFormat + (_c_36 + _ge_auxcall4 + _c_35 + _ve_return__type + _c_35 + _ge_auxcall5 + _c_34 + _ge_auxcall6 + _c_33) () + (_c_37 + (_ge_auxcall7 + _ve_return) () + _c_11) ());
    10031172          goto _block2;
    10041173        }
     
    10151184            goto _block2__branch3;
    10161185          }
    1017           if (!_c_32.term_eq (_v_deref__item3, 0))
     1186          if (!_c_38.term_eq (_v_deref__item3, 0))
    10181187          {
    10191188            goto _block2__branch3;
     
    10751244          int _v_len__arg1;
    10761245          _v_len__arg1 = (_v_len17 - _v_len18);
    1077           if (!_c_33.term_eq (_v_deref__item4, 0))
     1246          if (!_c_39.term_eq (_v_deref__item4, 0))
    10781247          {
    10791248            goto _block2__branch4;
     
    10931262          Expr _vs_acc;
    10941263          RF_CALL (refal::Box::Box, empty, _vs_acc);
    1095           Expr _ge_auxcall6;
    1096           RF_CALL (Expr_Int_To_Java, (_vs_acc, _ve_arg1), _ge_auxcall6);
     1264          Expr _ge_auxcall8;
     1265          RF_CALL (Expr_Int_To_Java, (_vs_acc, _ve_arg1), _ge_auxcall8);
    10971266          Expr _v_Expr__Int__To__Java1;
    10981267          RF_CALL (Expr_Int_To_Java, (_vs_acc, _ve_arg2), _v_Expr__Int__To__Java1);
    10991268          Expr _ve_cond;
    1100           _ve_cond = (_ge_auxcall6 + _c_29 + _vs_op + _c_29 + _v_Expr__Int__To__Java1);
    1101           Expr _ge_auxcall7;
    1102           RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall7);
    1103           Expr _ge_auxcall8;
    1104           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall8);
    1105           _ve_java__item = (_ge_auxcall7 + (_c_35 + _ve_cond + _c_34) () + (_c_31 + _ge_auxcall8 () + _c_11) ());
     1269          _ve_cond = (_ge_auxcall8 + _c_35 + _vs_op + _c_35 + _v_Expr__Int__To__Java1);
     1270          Expr _ge_auxcall9;
     1271          RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall9);
     1272          Expr _ge_auxcall10;
     1273          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall10);
     1274          _ve_java__item = (_ge_auxcall9 + (_c_41 + _ve_cond + _c_40) () + (_c_37 + _ge_auxcall10 () + _c_11) ());
    11061275          goto _block2;
    11071276        }
     
    11241293          int _v_len__body3;
    11251294          _v_len__body3 = (_v_len19 - _v_len20);
    1126           if (!_c_36.term_eq (_v_deref__item5, 0))
     1295          if (!_c_42.term_eq (_v_deref__item5, 0))
    11271296          {
    11281297            goto _block2__branch5;
     
    11421311              if (_vt_cond.symbol_at (0))
    11431312              {
    1144                 goto _block5__branch1;
     1313                goto _block6__branch1;
    11451314              }
    11461315              Expr _v_deref__cond;
     
    11521321              if (_v_len21 < _v_len22)
    11531322              {
    1154                 goto _block5__branch1;
     1323                goto _block6__branch1;
    11551324              }
    1156               int _v_len___dollar_tmp_m_126_m_33;
    1157               _v_len___dollar_tmp_m_126_m_33 = (_v_len21 - _v_len22);
    1158               if (!_c_37.term_eq (_v_deref__cond, 0))
     1325              int _v_len___dollar_tmp_m_141_m_33;
     1326              _v_len___dollar_tmp_m_141_m_33 = (_v_len21 - _v_len22);
     1327              if (!_c_43.term_eq (_v_deref__cond, 0))
    11591328              {
    1160                 goto _block5__branch1;
     1329                goto _block6__branch1;
    11611330              }
    1162               Expr _ve__dollar_tmp_m_126_m_33;
    1163               _ve__dollar_tmp_m_126_m_33 = Expr (_v_deref__cond, (0 + 1), _v_len___dollar_tmp_m_126_m_33);
    1164               Expr _ge_auxcall9;
    1165               RF_CALL (refal::Box::Get, Res_Assigns, _ge_auxcall9);
     1331              Expr _ve__dollar_tmp_m_141_m_33;
     1332              _ve__dollar_tmp_m_141_m_33 = Expr (_v_deref__cond, (0 + 1), _v_len___dollar_tmp_m_141_m_33);
     1333              Expr _ge_auxcall11;
     1334              RF_CALL (refal::Box::Get, Res_Assigns, _ge_auxcall11);
    11661335              RF_CALL (refal::Box::Store, (Res_Assigns, empty), /*void*/);
    11671336              _ve_if__yes__assigns = empty;
    1168               _ve_if__not__assigns = _ge_auxcall9;
    1169               goto _block5;
     1337              _ve_if__not__assigns = _ge_auxcall11;
     1338              goto _block6;
    11701339            }
    1171           _block5__branch1: {}
    1172             Expr _ge_auxcall10;
    1173             RF_CALL (refal::Box::Get, Res_Assigns, _ge_auxcall10);
     1340          _block6__branch1: {}
     1341            Expr _ge_auxcall12;
     1342            RF_CALL (refal::Box::Get, Res_Assigns, _ge_auxcall12);
    11741343            RF_CALL (refal::Box::Store, (Res_Assigns, empty), /*void*/);
    1175             _ve_if__yes__assigns = _ge_auxcall10;
     1344            _ve_if__yes__assigns = _ge_auxcall12;
    11761345            _ve_if__not__assigns = empty;
    11771346          }
    1178         _block5: {}
    1179           Expr _ge_auxcall11;
    1180           RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall11);
    1181           Expr _ge_auxcall12;
    1182           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall12);
    1183           _ve_java__item = (_ge_auxcall11 + (_c_35 + _ve_j__cond + _c_34) () + (_c_31 + (_ve_if__yes__assigns + _ge_auxcall12) () + _c_11) () + _ve_if__not__assigns);
     1347        _block6: {}
     1348          Expr _ge_auxcall13;
     1349          RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall13);
     1350          Expr _ge_auxcall14;
     1351          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall14);
     1352          _ve_java__item = (_ge_auxcall13 + (_c_41 + _ve_j__cond + _c_40) () + (_c_37 + (_ve_if__yes__assigns + _ge_auxcall14) () + _c_11) () + _ve_if__not__assigns);
    11841353          goto _block2;
    11851354        }
     
    12501419          int _v_len__break__label;
    12511420          _v_len__break__label = (_v_len29 - _v_len30);
    1252           if (!_c_38.term_eq (_v_deref__item6, 0))
     1421          if (!_c_44.term_eq (_v_deref__item6, 0))
    12531422          {
    12541423            goto _block2__branch6;
     
    12711440              if (_v_len__cont__label != 1)
    12721441              {
    1273                 goto _block6__branch1;
     1442                goto _block7__branch1;
    12741443              }
    1275               Expr _vt__dollar_tmp_m_139_m_25;
    1276               _vt__dollar_tmp_m_139_m_25 = Expr (_ve_cont__label, 0, 1);
    1277               Expr _ge_auxcall13;
    1278               RF_CALL (refal::JavaMangle::Rfp2Java, (_c_39 + _ve_cont__label) (), _ge_auxcall13);
    1279               _ve_cont = (_ge_auxcall13 + _c_40);
    1280               goto _block6;
     1444              Expr _vt__dollar_tmp_m_154_m_25;
     1445              _vt__dollar_tmp_m_154_m_25 = Expr (_ve_cont__label, 0, 1);
     1446              Expr _ge_auxcall15;
     1447              RF_CALL (refal::JavaMangle::Rfp2Java, (_c_45 + _ve_cont__label) (), _ge_auxcall15);
     1448              _ve_cont = (_ge_auxcall15 + _c_46);
     1449              goto _block7;
    12811450            }
    1282           _block6__branch1: {}
     1451          _block7__branch1: {}
    12831452            _ve_cont = empty;
    12841453          }
    1285         _block6: {}
     1454        _block7: {}
    12861455          Expr _ve_break;
    12871456          {
     
    12891458              if (_v_len__break__label != 1)
    12901459              {
    1291                 goto _block7__branch1;
     1460                goto _block8__branch1;
    12921461              }
    1293               Expr _vt__dollar_tmp_m_142_m_26;
    1294               _vt__dollar_tmp_m_142_m_26 = Expr (_ve_break__label, 0, 1);
    1295               Expr _ge_auxcall14;
    1296               RF_CALL (refal::JavaMangle::Rfp2Java, (_c_39 + _ve_break__label) (), _ge_auxcall14);
    1297               _ve_break = (_ge_auxcall14 + _c_40);
    1298               goto _block7;
     1462              Expr _vt__dollar_tmp_m_157_m_26;
     1463              _vt__dollar_tmp_m_157_m_26 = Expr (_ve_break__label, 0, 1);
     1464              Expr _ge_auxcall16;
     1465              RF_CALL (refal::JavaMangle::Rfp2Java, (_c_45 + _ve_break__label) (), _ge_auxcall16);
     1466              _ve_break = (_ge_auxcall16 + _c_46);
     1467              goto _block8;
    12991468            }
    1300           _block7__branch1: {}
     1469          _block8__branch1: {}
    13011470            _ve_break = empty;
    13021471          }
    1303         _block7: {}
     1472        _block8: {}
    13041473          Expr _ve_split__vars;
    13051474          {
     
    13071476              if (_v_len__step != 1)
    13081477              {
    1309                 goto _block8__branch1;
     1478                goto _block9__branch1;
    13101479              }
    13111480              if (_ve_step.symbol_at (0))
    13121481              {
    1313                 goto _block8__branch1;
     1482                goto _block9__branch1;
    13141483              }
    13151484              Expr _v_deref__step;
     
    13211490              if (_v_len31 < _v_len32)
    13221491              {
    1323                 goto _block8__branch1;
     1492                goto _block9__branch1;
    13241493              }
    13251494              int _v_len__var;
     
    13271496              if (!_v_deref__step.symbol_at (0))
    13281497              {
    1329                 goto _block8__branch1;
     1498                goto _block9__branch1;
    13301499              }
    13311500              Expr _vs_d;
     
    13351504              {
    13361505                {
    1337                   if (!_vs_d.term_eq (_c_41, 0))
     1506                  if (!_vs_d.term_eq (_c_47, 0))
    13381507                  {
    1339                     goto _block9__branch1;
     1508                    goto _block10__branch1;
    13401509                  }
    1341                   goto _block9;
     1510                  goto _block10;
    13421511                }
    1343               _block9__branch1: {}
    1344                 if (!_vs_d.term_eq (_c_42, 0))
     1512              _block10__branch1: {}
     1513                if (!_vs_d.term_eq (_c_48, 0))
    13451514                {
    1346                   goto _block8__branch1;
     1515                  goto _block9__branch1;
    13471516                }
    13481517              }
    1349             _block9: {}
     1518            _block10: {}
    13501519              Expr _v_Lookup1;
    13511520              if (!RF_CALL (refal::Table::Lookup, (Iter_Vars, _ve_var), _v_Lookup1))
     
    13691538              Expr _vt_var2;
    13701539              _vt_var2 = Expr (_v_Lookup1, (0 + _v_len__new__var + 1), 1);
    1371               Expr _ge_auxcall15;
    1372               RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var1, _ge_auxcall15);
    1373               Expr _ge_auxcall16;
    1374               RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var2, _ge_auxcall16);
    1375               _ve_split__vars = ((_c_45 + _ge_auxcall15 + _c_44 + _ve_new__var + _c_43) () + (_c_45 + _ge_auxcall16 + _c_44 + _ve_new__var + _c_46) ());
    1376               goto _block8;
     1540              Expr _ge_auxcall17;
     1541              RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var1, _ge_auxcall17);
     1542              Expr _ge_auxcall18;
     1543              RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var2, _ge_auxcall18);
     1544              _ve_split__vars = ((_c_51 + _ge_auxcall17 + _c_50 + _ve_new__var + _c_49) () + (_c_51 + _ge_auxcall18 + _c_50 + _ve_new__var + _c_52) ());
     1545              goto _block9;
    13771546            }
    1378           _block8__branch1: {}
     1547          _block9__branch1: {}
    13791548            _ve_split__vars = empty;
    13801549          }
    1381         _block8: {}
    1382           Expr _ge_auxcall17;
    1383           RF_CALL (Step_To_Java, _ve_step, _ge_auxcall17);
    1384           Expr _ge_auxcall18;
    1385           RF_CALL (refal::Box::Get, Res_Assigns, _ge_auxcall18);
     1550        _block9: {}
     1551          Expr _ge_auxcall19;
     1552          RF_CALL (Step_To_Java, _ve_step, _ge_auxcall19);
     1553          Expr _ge_auxcall20;
     1554          RF_CALL (refal::Box::Get, Res_Assigns, _ge_auxcall20);
    13861555          RF_CALL (refal::Box::Store, (Res_Assigns, empty), /*void*/);
    1387           Expr _ge_auxcall19;
    1388           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall19);
    1389           _ve_java__item = ((_ve_break + _ve_cont + _c_47 + _ge_auxcall17 + _c_34) () + (_c_31 + (_ve_split__vars + _ge_auxcall18 + _ge_auxcall19) () + _c_11) ());
     1556          Expr _ge_auxcall21;
     1557          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall21);
     1558          _ve_java__item = ((_ve_break + _ve_cont + _c_53 + _ge_auxcall19 + _c_40) () + (_c_37 + (_ve_split__vars + _ge_auxcall20 + _ge_auxcall21) () + _c_11) ());
    13901559          goto _block2;
    13911560        }
     
    14241593          int _v_len__label;
    14251594          _v_len__label = (_v_len37 - _v_len38);
    1426           if (!_c_39.term_eq (_v_deref__item7, 0))
     1595          if (!_c_45.term_eq (_v_deref__item7, 0))
    14271596          {
    14281597            goto _block2__branch7;
     
    14321601          Expr _ve_label;
    14331602          _ve_label = Expr (_v_deref__deref__item7, 0, _v_len__label);
    1434           Expr _ge_auxcall20;
    1435           RF_CALL (refal::JavaMangle::Rfp2Java, (_c_39 + _ve_label) (), _ge_auxcall20);
    1436           Expr _ge_auxcall21;
    1437           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall21);
    1438           _ve_java__item = (_ge_auxcall20 + _c_48 + _ge_auxcall21 () + _c_11) ();
     1603          Expr _ge_auxcall22;
     1604          RF_CALL (refal::JavaMangle::Rfp2Java, (_c_45 + _ve_label) (), _ge_auxcall22);
     1605          Expr _ge_auxcall23;
     1606          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall23);
     1607          _ve_java__item = (_ge_auxcall22 + _c_54 + _ge_auxcall23 () + _c_11) ();
    14391608          goto _block2;
    14401609        }
     
    14571626          int _v_len__body6;
    14581627          _v_len__body6 = (_v_len39 - _v_len40);
    1459           if (!_c_49.term_eq (_v_deref__item8, 0))
     1628          if (!_c_55.term_eq (_v_deref__item8, 0))
    14601629          {
    14611630            goto _block2__branch8;
     
    14631632          Expr _ve_body;
    14641633          _ve_body = Expr (_v_deref__item8, (0 + 1), _v_len__body6);
    1465           Expr _ge_auxcall22;
    1466           RF_CALL (refal::Box::Get, Module_Name, _ge_auxcall22);
    1467           Expr _ge_auxcall23;
    1468           RF_CALL (refal::Box::Get, Func_Name, _ge_auxcall23);
    14691634          Expr _ge_auxcall24;
    1470           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall24);
    1471           _ve_java__item = (_c_54 + (_c_31 + ((_c_53 + (_c_52 + _ge_auxcall22 + _c_51 + _ge_auxcall23 + _c_50) ()) () + _ge_auxcall24) () + _c_11) ());
     1635          RF_CALL (refal::Box::Get, Module_Name, _ge_auxcall24);
     1636          Expr _ge_auxcall25;
     1637          RF_CALL (refal::Box::Get, Func_Name, _ge_auxcall25);
     1638          Expr _ge_auxcall26;
     1639          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall26);
     1640          _ve_java__item = (_c_60 + (_c_37 + ((_c_59 + (_c_58 + _ge_auxcall24 + _c_57 + _ge_auxcall25 + _c_56) ()) () + _ge_auxcall26) () + _c_11) ());
    14721641          goto _block2;
    14731642        }
     
    14901659          int _v_len__body7;
    14911660          _v_len__body7 = (_v_len41 - _v_len42);
    1492           if (!_c_55.term_eq (_v_deref__item9, 0))
     1661          if (!_c_61.term_eq (_v_deref__item9, 0))
    14931662          {
    14941663            goto _block2__branch9;
     
    14961665          Expr _ve_body;
    14971666          _ve_body = Expr (_v_deref__item9, (0 + 1), _v_len__body7);
    1498           Expr _ge_auxcall25;
    1499           RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall25);
    1500           _ve_java__item = (_c_57 + (_c_56 + _ge_auxcall25 ()) () + _c_11) ();
     1667          Expr _ge_auxcall27;
     1668          RF_CALL (ASAIL_To_Java, _ve_body, _ge_auxcall27);
     1669          _ve_java__item = (_c_63 + (_c_62 + _ge_auxcall27 ()) () + _c_11) ();
    15011670          goto _block2;
    15021671        }
    15031672      _block2__branch9: {}
    15041673        {
    1505           if (!_vt_item.term_eq (_c_58, 0))
     1674          if (!_vt_item.term_eq (_c_64, 0))
    15061675          {
    15071676            goto _block2__branch10;
    15081677          }
    1509           _ve_java__item = _c_59;
     1678          _ve_java__item = _c_65;
    15101679          goto _block2;
    15111680        }
    15121681      _block2__branch10: {}
    15131682        {
    1514           if (!_vt_item.term_eq (_c_60, 0))
     1683          if (!_vt_item.term_eq (_c_66, 0))
    15151684          {
    15161685            goto _block2__branch11;
    15171686          }
    1518           Expr _ge_auxcall26;
    1519           RF_CALL (refal::Box::Get, Module_Name, _ge_auxcall26);
    1520           Expr _ge_auxcall27;
    1521           RF_CALL (refal::Box::Get, Func_Name, _ge_auxcall27);
    1522           _ve_java__item = (_c_52 + _ge_auxcall26 + _c_51 + _ge_auxcall27 + _c_61) ();
     1687          Expr _ge_auxcall28;
     1688          RF_CALL (refal::Box::Get, Module_Name, _ge_auxcall28);
     1689          Expr _ge_auxcall29;
     1690          RF_CALL (refal::Box::Get, Func_Name, _ge_auxcall29);
     1691          _ve_java__item = (_c_58 + _ge_auxcall28 + _c_57 + _ge_auxcall29 + _c_67) ();
    15231692          goto _block2;
    15241693        }
     
    15511720          int _v_len__min;
    15521721          _v_len__min = (_v_len43 - _v_len44);
    1553           if (!_c_62.term_eq (_v_deref__item10, 0))
     1722          if (!_c_68.term_eq (_v_deref__item10, 0))
    15541723          {
    15551724            goto _block2__branch12;
     
    15691738          RF_CALL (Free_Index, /*void*/, _v_Free__Index1);
    15701739          Expr _ve_new__var;
    1571           _ve_new__var = (_c_63 + _v_Free__Index1);
     1740          _ve_new__var = (_c_69 + _v_Free__Index1);
    15721741          RF_CALL (refal::Table::Bind, (Iter_Vars, _vt_name, (_ve_new__var + _vt_var1 + _vt_var2)), /*void*/);
    15731742          Expr _vs_acc;
    15741743          RF_CALL (refal::Box::Box, empty, _vs_acc);
    15751744          RF_CALL (Expr_Int_To_Java, (_vs_acc, _ve_min), _ve_min);
    1576           Expr _ge_auxcall28;
    1577           RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall28);
    1578           _ve_java__item = (_ve_a + _ge_auxcall28 + (_c_66 + _ve_new__var + _c_44 + _ve_n + _c_65 + _ve_min + _c_64) ());
     1745          Expr _ge_auxcall30;
     1746          RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall30);
     1747          _ve_java__item = (_ve_a + _ge_auxcall30 + (_c_72 + _ve_new__var + _c_50 + _ve_n + _c_71 + _ve_min + _c_70) ());
    15791748          goto _block2;
    15801749        }
     
    16071776          int _v_len__min2;
    16081777          _v_len__min2 = (_v_len45 - _v_len46);
    1609           if (!_c_67.term_eq (_v_deref__item11, 0))
     1778          if (!_c_73.term_eq (_v_deref__item11, 0))
    16101779          {
    16111780            goto _block2__branch13;
     
    16251794          RF_CALL (Free_Index, /*void*/, _v_Free__Index2);
    16261795          Expr _ve_new__var;
    1627           _ve_new__var = (_c_63 + _v_Free__Index2);
     1796          _ve_new__var = (_c_69 + _v_Free__Index2);
    16281797          RF_CALL (refal::Table::Bind, (Iter_Vars, _vt_name, (_ve_new__var + _vt_var1 + _vt_var2)), /*void*/);
    16291798          Expr _vs_acc;
    16301799          RF_CALL (refal::Box::Box, empty, _vs_acc);
    16311800          RF_CALL (Expr_Int_To_Java, (_vs_acc, _ve_min), _ve_min);
    1632           Expr _ge_auxcall29;
    1633           RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall29);
    1634           _ve_java__item = (_ve_a + _ge_auxcall29 + (_c_66 + _ve_new__var + _c_44 + _ve_n + _c_68 + _ve_min + _c_64) ());
     1801          Expr _ge_auxcall31;
     1802          RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall31);
     1803          _ve_java__item = (_ve_a + _ge_auxcall31 + (_c_72 + _ve_new__var + _c_50 + _ve_n + _c_74 + _ve_min + _c_70) ());
    16351804          goto _block2;
    16361805        }
     
    16571826            goto _block2__branch14;
    16581827          }
    1659           if (!_c_69.term_eq (_v_deref__item12, 0))
     1828          if (!_c_75.term_eq (_v_deref__item12, 0))
    16601829          {
    16611830            goto _block2__branch14;
     
    16671836          Expr _vt_var;
    16681837          _vt_var = Expr (_v_deref__deref__item12, (0 + 1), 1);
    1669           Expr _ge_auxcall30;
    1670           RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var, _ge_auxcall30);
    1671           _ve_java__item = (_c_70 + _ge_auxcall30 + _c_6) ();
     1838          Expr _ge_auxcall32;
     1839          RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var, _ge_auxcall32);
     1840          _ve_java__item = (_c_76 + _ge_auxcall32 + _c_6) ();
    16721841          goto _block2;
    16731842        }
     
    17001869            goto _block2__branch15;
    17011870          }
    1702           if (!_c_71.term_eq (_v_deref__item13, 0))
     1871          if (!_c_77.term_eq (_v_deref__item13, 0))
    17031872          {
    17041873            goto _block2__branch15;
     
    17151884          RF_CALL (refal::Box::Box, empty, _vs_acc);
    17161885          RF_CALL (Expr_Int_To_Java, (_vs_acc, _ve_expr), _ve_expr);
    1717           Expr _ge_auxcall31;
    1718           RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall31);
    1719           Expr _ge_auxcall32;
    1720           RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var, _ge_auxcall32);
    1721           _ve_java__item = (_ge_auxcall31 + (_ge_auxcall32 + _c_44 + _ve_expr + _c_6) ());
     1886          Expr _ge_auxcall33;
     1887          RF_CALL (refal::Box::Get, _vs_acc, _ge_auxcall33);
     1888          Expr _ge_auxcall34;
     1889          RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var, _ge_auxcall34);
     1890          _ve_java__item = (_ge_auxcall33 + (_ge_auxcall34 + _c_50 + _ve_expr + _c_6) ());
    17221891          goto _block2;
    17231892        }
     
    17401909          int _v_len__expr2;
    17411910          _v_len__expr2 = (_v_len49 - _v_len50);
    1742           if (!_c_71.term_eq (_v_deref__item14, 0))
     1911          if (!_c_77.term_eq (_v_deref__item14, 0))
    17431912          {
    17441913            goto _block2__branch16;
     
    17571926              if (_v_Get2.get_len () < 1)
    17581927              {
    1759                 goto _block10__branch1;
     1928                goto _block11__branch1;
    17601929              }
    1761               RF_lsplit (_v_Get2, 0, _ve__dollar_tmp_m_197_m_24, _v_lsplit__Get2);
     1930              RF_lsplit (_v_Get2, 0, _ve__dollar_tmp_m_212_m_24, _v_lsplit__Get2);
    17621931              for ( ; ; RF_iter(_v_Get2)++)
    17631932              {
     
    17651934                  if (!RF_iter(_v_Get2))
    17661935                  {
    1767                     goto _block10__branch1;
     1936                    goto _block11__branch1;
    17681937                  }
    17691938                  int _v_len51;
     
    17731942                  if (_v_len51 < _v_len52)
    17741943                  {
    1775                     goto _block10__branch1;
     1944                    goto _block11__branch1;
    17761945                  }
    1777                   int _v_len___dollar_tmp_m_197_m_32;
    1778                   _v_len___dollar_tmp_m_197_m_32 = (_v_len51 - _v_len52);
     1946                  int _v_len___dollar_tmp_m_212_m_32;
     1947                  _v_len___dollar_tmp_m_212_m_32 = (_v_len51 - _v_len52);
    17791948                  if (!_vt_var.term_eq (_v_lsplit__Get2, 0))
    17801949                  {
    17811950                    goto _continue2;
    17821951                  }
    1783                   Expr _ve__dollar_tmp_m_197_m_32;
    1784                   _ve__dollar_tmp_m_197_m_32 = Expr (_v_lsplit__Get2, (0 + 1), _v_len___dollar_tmp_m_197_m_32);
    1785                   Expr _ge_auxcall33;
    1786                   RF_CALL (refal::JavaMangle::Rfp2Java, _vt_var, _ge_auxcall33);
    1787                   _ve_java__item = (_ve_a + (_ge_auxcall33 + _c_72 + _ve_j__expr + _c_64) ());
     1952                  Expr _ve__dollar_tmp_m_212_m_32;
     1953                  _ve__dollar_tmp_m_212_m_32 = Expr (_v_lsplit__Get2, (0 + 1), _v_len___dollar_tmp_m_212_m_32);
     1954                  Expr _ge_auxcall35;
     1955      &