Changeset 3426


Ignore:
Timestamp:
Feb 23, 2008, 11:44:22 PM (13 years ago)
Author:
yura
Message:
  • First very alpha version of debugger.
  • CallListGenerator? collects line numbers of calls. It is used to generate LINENUMBER instruction in jbc back-end.
Location:
to-imperative/trunk/java/compiler/org/refal/plus/compiler
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • to-imperative/trunk/java/compiler/org/refal/plus/compiler/rfp_asail_jbc.java

    r3421 r3426  
     1
    12package org.refal.plus.compiler;
    23
     
    2627  @RefalFormat("$box CWbox;")
    2728  static  final Expr CWbox = new Expr (Symbol.newBox ("CWbox"));
     29  @RefalFormat("$box MethodCallList;")
     30  static  final Expr MethodCallList = new Expr (Symbol.newBox ("MethodCallList"));
    2831  @RefalFormat("$box Block_Tables;")
    2932  static  final Expr Block_Tables = new Expr (Symbol.newBox ("Block_Tables"));
     
    132135  static  final Expr _c_92 = new Expr (Symbol.newWord ("RSPLIT"));
    133136  static  final Expr _c_93 = new Expr (Symbol.newWord ("rightSplit"));
    134   static  final Expr _c_94 = new Expr ((Comparable) Expr.empty);
     137  static  final Expr _c_94 = new Expr ((Comparable<?>) Expr.empty);
    135138  static  final Expr _c_95 = new Expr (Symbol.newWord ("FOR"));
    136139  static  final Expr _c_96 = new Expr (Symbol.newWord ("INC-ITER"));
     
    292295  static  final Expr _c_247 = new Expr (Symbol.newWord (";"));
    293296  static  final Expr _c_248 = new Expr (Symbol.newWord ("L"));
    294   static  final Expr _c_249 = new Expr ((Comparable) _c_0);
     297  static  final Expr _c_249 = new Expr ((Comparable<?>) _c_0);
    295298  static  final Expr _c_250 = new Expr (Symbol.newInt ("180"));
    296299  static  final Expr _c_251 = new Expr (new Func () {
     
    344347    if (_v_Get1.getExpr ().length () != 1)
    345348    {
    346       throw new RefalException ("rfp_asail_jbc", "MV", "Unexpected fail");
     349      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "MV", "Unexpected fail");
    347350    }
    348351    if (!_v_Get1.getExpr ().isSymbolAt (0))
    349352    {
    350       throw new RefalException ("rfp_asail_jbc", "MV", "Unexpected fail");
     353      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "MV", "Unexpected fail");
    351354    }
    352355    Expr _vs_mv = Expr.empty;
     
    362365    if (_v_Get1.getExpr ().length () != 1)
    363366    {
    364       throw new RefalException ("rfp_asail_jbc", "CW", "Unexpected fail");
     367      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "CW", "Unexpected fail");
    365368    }
    366369    if (!_v_Get1.getExpr ().isSymbolAt (0))
    367370    {
    368       throw new RefalException ("rfp_asail_jbc", "CW", "Unexpected fail");
     371      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "CW", "Unexpected fail");
    369372    }
    370373    Expr _vs_cv = Expr.empty;
     
    378381    if (_gt_arg1.isSymbolAt (0))
    379382    {
    380       throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     383      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    381384    }
    382385    Expr _v_deref__arg1 = (Expr) _gt_arg1.at (0);
     
    385388    if (_v_len1 < _v_len2)
    386389    {
    387       throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     390      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    388391    }
    389392    int _v_len__module = (_v_len1 - _v_len2);
    390393    if (_v_deref__arg1.isSymbolAt ((0 + 1)))
    391394    {
    392       throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     395      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    393396    }
    394397    Expr _v_deref__deref__arg1 = (Expr) _v_deref__arg1.at ((0 + 1));
     
    397400    if (_v_len3 < _v_len4)
    398401    {
    399       throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     402      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    400403    }
    401404    int _v_len__moduleName = (_v_len3 - _v_len4);
    402405    if (!_c_1.termEquals (_v_deref__arg1, 0))
    403406    {
    404       throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     407      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    405408    }
    406409    Expr _ve_module = Expr.empty;
     
    421424        break _block1;
    422425      }
    423       refal.plus.Box.Store (Entry, new Expr ((Comparable) Expr.concat (_ve_moduleName, _c_3)));
     426      refal.plus.Box.Store (Entry, new Expr ((Comparable<?>) Expr.concat (_ve_moduleName, _c_3)));
    424427    }
    425428    refal.plus.Box.Store (EntryName, Expr.empty);
     
    548551      _exit1: _continue1: for ( ; ; _va_1.next ())
    549552      {
    550         Expr _ve__dollar_tmp_m_131_m_23 = _va_1.getLeft();
     553        Expr _ve__dollar_tmp_m_133_m_23 = _va_1.getLeft();
    551554        Expr _v_lsplit__Get2 = _va_1.getRight();
    552555        if (!_va_1.isValid ())
     
    560563          break _block5__branch1;
    561564        }
    562         int _v_len___dollar_tmp_m_131_m_40 = (_v_len5 - _v_len6);
     565        int _v_len___dollar_tmp_m_133_m_40 = (_v_len5 - _v_len6);
    563566        if (_v_lsplit__Get2.isSymbolAt (0))
    564567        {
     
    578581          continue _continue1;
    579582        }
    580         Expr _ve__dollar_tmp_m_131_m_40 = Expr.empty;
    581         _ve__dollar_tmp_m_131_m_40 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_131_m_40);
     583        Expr _ve__dollar_tmp_m_133_m_40 = Expr.empty;
     584        _ve__dollar_tmp_m_133_m_40 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_133_m_40);
    582585        Expr _vs_tag = Expr.empty;
    583586        _vs_tag = _v_deref__lsplit__Get2.subexpr (0, 1);
     
    591594        if (_v_len7 < _v_len8)
    592595        {
    593           throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     596          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    594597        }
    595598        int _v_len__2 = (_v_len7 - _v_len8);
    596599        if (!_v_ToChars1.getExpr ().isSymbolAt (0))
    597600        {
    598           throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     601          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    599602        }
    600603        Expr _vs_1 = Expr.empty;
     
    637640      _exit2: _continue2: for ( ; ; _va_3.next ())
    638641      {
    639         Expr _ve__dollar_tmp_m_142_m_25 = _va_3.getLeft();
     642        Expr _ve__dollar_tmp_m_144_m_25 = _va_3.getLeft();
    640643        Expr _v_lsplit__Get3 = _va_3.getRight();
    641644        if (!_va_3.isValid ())
     
    649652          break _block7__branch1;
    650653        }
    651         int _v_len___dollar_tmp_m_142_m_43 = (_v_len9 - _v_len10);
     654        int _v_len___dollar_tmp_m_144_m_43 = (_v_len9 - _v_len10);
    652655        if (_v_lsplit__Get3.isSymbolAt (0))
    653656        {
     
    666669          continue _continue2;
    667670        }
    668         Expr _ve__dollar_tmp_m_142_m_43 = Expr.empty;
    669         _ve__dollar_tmp_m_142_m_43 = _v_lsplit__Get3.subexpr ((0 + 1), _v_len___dollar_tmp_m_142_m_43);
     671        Expr _ve__dollar_tmp_m_144_m_43 = Expr.empty;
     672        _ve__dollar_tmp_m_144_m_43 = _v_lsplit__Get3.subexpr ((0 + 1), _v_len___dollar_tmp_m_144_m_43);
    670673        Expr _vs_name = Expr.empty;
    671674        _vs_name = _v_deref__lsplit__Get3.subexpr (0, 1);
     
    695698    org.refal.plus.wrappers.org.objectweb.asm.ClassWriter.CWtoByteArray (_gs_auxcall48.getExpr (), _gs_auxcall49);
    696699    Result _vs_res = new Result (Expr.empty);
    697     refal.plus.Box.Box (new Expr ((Comparable) Expr.concat (_gs_auxcall49.getExpr (), _ve_moduleName)), _vs_res);
     700    refal.plus.Box.Box (new Expr ((Comparable<?>) Expr.concat (_gs_auxcall49.getExpr (), _ve_moduleName)), _vs_res);
    698701    _block8__branch1: {
    699702      Result _v_Get4 = new Result (Expr.empty);
     
    706709      _exit3: _continue3: for ( ; ; _va_4.next ())
    707710      {
    708         Expr _ve__dollar_tmp_m_158_m_25 = _va_4.getLeft();
     711        Expr _ve__dollar_tmp_m_160_m_25 = _va_4.getLeft();
    709712        Expr _v_lsplit__Get4 = _va_4.getRight();
    710713        if (!_va_4.isValid ())
     
    718721          break _block8__branch1;
    719722        }
    720         int _v_len___dollar_tmp_m_158_m_69 = (_v_len13 - _v_len14);
     723        int _v_len___dollar_tmp_m_160_m_69 = (_v_len13 - _v_len14);
    721724        if (_v_lsplit__Get4.isSymbolAt (0))
    722725        {
     
    744747          continue _continue3;
    745748        }
    746         Expr _ve__dollar_tmp_m_158_m_69 = Expr.empty;
    747         _ve__dollar_tmp_m_158_m_69 = _v_lsplit__Get4.subexpr ((0 + 1), _v_len___dollar_tmp_m_158_m_69);
     749        Expr _ve__dollar_tmp_m_160_m_69 = Expr.empty;
     750        _ve__dollar_tmp_m_160_m_69 = _v_lsplit__Get4.subexpr ((0 + 1), _v_len___dollar_tmp_m_160_m_69);
    748751        Expr _vs_cl__name = Expr.empty;
    749752        _vs_cl__name = _v_deref__lsplit__Get4.subexpr (0, 1);
     
    787790          if (!_vs_type.termEquals (_c_44, 0))
    788791          {
    789             throw new RefalException ("rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
     792            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "RFP_ASAIL_To_JBC", "Unexpected fail");
    790793          }
    791794          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_vs_mv.getExpr (), _c_15, _vs_mod__name, _vs_func__name, _c_45);
     
    810813        Result _gs_auxcall57 = new Result (Expr.empty);
    811814        refal.plus.Convert.ToWord (Expr.getConcatenator ().toRight (_gt_auxcall56.getExpr ()).toRight (_c_35).toRight (_vs_cl__name).yield (), _gs_auxcall57);
    812         refal.plus.Box.Put (_vs_res.getExpr (), new Expr ((Comparable) Expr.getConcatenator ().toRight (_gs_auxcall54.getExpr ()).toRight (_ge_auxcall55.getExpr ()).toRight (_gs_auxcall57.getExpr ()).yield ()));
     815        refal.plus.Box.Put (_vs_res.getExpr (), new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_gs_auxcall54.getExpr ()).toRight (_ge_auxcall55.getExpr ()).toRight (_gs_auxcall57.getExpr ()).yield ()));
    813816      }
    814817    }
     
    834837    if (_v_len1 < (_v_len2 + java.lang.Math.max (0, 1)))
    835838    {
    836       throw new RefalException ("rfp_asail_jbc", "Push_Block_Table", "Unexpected fail");
     839      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Push_Block_Table", "Unexpected fail");
    837840    }
    838841    int _v_len__block__tables = (_v_len1 - _v_len2);
     
    841844    if (_v_len3 < _v_len4)
    842845    {
    843       throw new RefalException ("rfp_asail_jbc", "Push_Block_Table", "Unexpected fail");
    844     }
    845     int _v_len___dollar_tmp_m_201_m_21 = (_v_len3 - _v_len4);
     846      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Push_Block_Table", "Unexpected fail");
     847    }
     848    int _v_len___dollar_tmp_m_203_m_21 = (_v_len3 - _v_len4);
    846849    Expr _ve_block__tables = Expr.empty;
    847850    _ve_block__tables = _v_Get1.getExpr ().subexpr (0, _v_len__block__tables);
    848     if (!_ve_block__tables.isSymbolAt ((0 + _v_len___dollar_tmp_m_201_m_21)))
    849     {
    850       throw new RefalException ("rfp_asail_jbc", "Push_Block_Table", "Unexpected fail");
    851     }
    852     Expr _ve__dollar_tmp_m_201_m_21 = Expr.empty;
    853     _ve__dollar_tmp_m_201_m_21 = _ve_block__tables.subexpr (0, _v_len___dollar_tmp_m_201_m_21);
     851    if (!_ve_block__tables.isSymbolAt ((0 + _v_len___dollar_tmp_m_203_m_21)))
     852    {
     853      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Push_Block_Table", "Unexpected fail");
     854    }
     855    Expr _ve__dollar_tmp_m_203_m_21 = Expr.empty;
     856    _ve__dollar_tmp_m_203_m_21 = _ve_block__tables.subexpr (0, _v_len___dollar_tmp_m_203_m_21);
    854857    Expr _vs_block__table = Expr.empty;
    855     _vs_block__table = _ve_block__tables.subexpr ((0 + _v_len___dollar_tmp_m_201_m_21), 1);
     858    _vs_block__table = _ve_block__tables.subexpr ((0 + _v_len___dollar_tmp_m_203_m_21), 1);
    856859    Result _gs_auxcall1 = new Result (Expr.empty);
    857860    refal.plus.Table.TableCopy (_vs_block__table, _gs_auxcall1);
     
    868871    if (_v_len1 < _v_len2)
    869872    {
    870       throw new RefalException ("rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
     873      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
    871874    }
    872875    int _v_len__block__tables = (_v_len1 - _v_len2);
    873876    if (!_v_Get1.getExpr ().isSymbolAt ((0 + _v_len__block__tables)))
    874877    {
    875       throw new RefalException ("rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
     878      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
    876879    }
    877880    if (!_v_Get1.getExpr ().isSymbolAt ((0 + _v_len__block__tables + 1)))
    878881    {
    879       throw new RefalException ("rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
     882      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
    880883    }
    881884    Expr _ve_block__tables = Expr.empty;
     
    888891    if (!refal.plus.Table.Lookup (_vs_block__table2, _c_47, _v_Lookup1))
    889892    {
    890       throw new RefalException ("rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
     893      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
    891894    }
    892895    if (_v_Lookup1.getExpr ().length () != 1)
    893896    {
    894       throw new RefalException ("rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
     897      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
    895898    }
    896899    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    897900    {
    898       throw new RefalException ("rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
     901      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Block_Table", "Unexpected fail");
    899902    }
    900903    Expr _vs_i = Expr.empty;
     
    913916    if (_v_len1 < _v_len2)
    914917    {
    915       throw new RefalException ("rfp_asail_jbc", "Get_Block_Table", "Unexpected fail");
    916     }
    917     int _v_len___dollar_tmp_m_211_m_26 = (_v_len1 - _v_len2);
    918     if (!_v_Get1.getExpr ().isSymbolAt ((0 + _v_len___dollar_tmp_m_211_m_26)))
    919     {
    920       throw new RefalException ("rfp_asail_jbc", "Get_Block_Table", "Unexpected fail");
    921     }
    922     Expr _ve__dollar_tmp_m_211_m_26 = Expr.empty;
    923     _ve__dollar_tmp_m_211_m_26 = _v_Get1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_211_m_26);
     918      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Get_Block_Table", "Unexpected fail");
     919    }
     920    int _v_len___dollar_tmp_m_213_m_26 = (_v_len1 - _v_len2);
     921    if (!_v_Get1.getExpr ().isSymbolAt ((0 + _v_len___dollar_tmp_m_213_m_26)))
     922    {
     923      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Get_Block_Table", "Unexpected fail");
     924    }
     925    Expr _ve__dollar_tmp_m_213_m_26 = Expr.empty;
     926    _ve__dollar_tmp_m_213_m_26 = _v_Get1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_213_m_26);
    924927    Expr _vs_block__table = Expr.empty;
    925     _vs_block__table = _v_Get1.getExpr ().subexpr ((0 + _v_len___dollar_tmp_m_211_m_26), 1);
     928    _vs_block__table = _v_Get1.getExpr ().subexpr ((0 + _v_len___dollar_tmp_m_213_m_26), 1);
    926929    _v_res1.assign (_vs_block__table);
    927930  }
     
    938941      _exit1: _continue1: for ( ; ; _va_5.next ())
    939942      {
    940         Expr _ve__dollar_tmp_m_224_m_15 = _va_5.getLeft();
     943        Expr _ve__dollar_tmp_m_226_m_15 = _va_5.getLeft();
    941944        Expr _v_lsplit__vars = _va_5.getRight();
    942945        if (!_va_5.isValid ())
     
    950953          break _block1__branch1;
    951954        }
    952         int _v_len___dollar_tmp_m_224_m_23 = (_v_len1 - _v_len2);
     955        int _v_len___dollar_tmp_m_226_m_23 = (_v_len1 - _v_len2);
    953956        Expr _vt_var = Expr.empty;
    954957        _vt_var = _v_lsplit__vars.subexpr (0, 1);
    955         Expr _ve__dollar_tmp_m_224_m_23 = Expr.empty;
    956         _ve__dollar_tmp_m_224_m_23 = _v_lsplit__vars.subexpr ((0 + 1), _v_len___dollar_tmp_m_224_m_23);
     958        Expr _ve__dollar_tmp_m_226_m_23 = Expr.empty;
     959        _ve__dollar_tmp_m_226_m_23 = _v_lsplit__vars.subexpr ((0 + 1), _v_len___dollar_tmp_m_226_m_23);
    957960        Result _v_Bind__Var1 = new Result (Expr.empty);
    958961        Bind_Var (_vs_type, _vt_var, _v_Bind__Var1);
     
    963966          continue _continue1;
    964967        }
    965         int _v_len___dollar_tmp_m_225_m_34 = (_v_len3 - _v_len4);
    966         Expr _ve__dollar_tmp_m_225_m_34 = Expr.empty;
    967         _ve__dollar_tmp_m_225_m_34 = _v_Bind__Var1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_225_m_34);
     968        int _v_len___dollar_tmp_m_227_m_34 = (_v_len3 - _v_len4);
     969        Expr _ve__dollar_tmp_m_227_m_34 = Expr.empty;
     970        _ve__dollar_tmp_m_227_m_34 = _v_Bind__Var1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_227_m_34);
    968971      }
    969972    }
     
    978981    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), _c_47, _v_Lookup1))
    979982    {
    980       throw new RefalException ("rfp_asail_jbc", "Bind_Var", "Unexpected fail");
     983      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_Var", "Unexpected fail");
    981984    }
    982985    if (_v_Lookup1.getExpr ().length () != 1)
    983986    {
    984       throw new RefalException ("rfp_asail_jbc", "Bind_Var", "Unexpected fail");
     987      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_Var", "Unexpected fail");
    985988    }
    986989    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    987990    {
    988       throw new RefalException ("rfp_asail_jbc", "Bind_Var", "Unexpected fail");
     991      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_Var", "Unexpected fail");
    989992    }
    990993    Expr _vs_i = Expr.empty;
     
    10091012    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), Expr.concat (_c_48, _vt_var), _v_Lookup1))
    10101013    {
    1011       throw new RefalException ("rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
     1014      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
    10121015    }
    10131016    if (_v_Lookup1.getExpr ().length () != 2)
    10141017    {
    1015       throw new RefalException ("rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
     1018      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
    10161019    }
    10171020    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    10181021    {
    1019       throw new RefalException ("rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
     1022      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
    10201023    }
    10211024    if (!_v_Lookup1.getExpr ().isSymbolAt ((0 + 1)))
    10221025    {
    1023       throw new RefalException ("rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
     1026      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Var", "Unexpected fail");
    10241027    }
    10251028    Expr _vs_type = Expr.empty;
     
    10391042    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), _c_47, _v_Lookup1))
    10401043    {
    1041       throw new RefalException ("rfp_asail_jbc", "Bind_Iter_Var", "Unexpected fail");
     1044      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_Iter_Var", "Unexpected fail");
    10421045    }
    10431046    if (_v_Lookup1.getExpr ().length () != 1)
    10441047    {
    1045       throw new RefalException ("rfp_asail_jbc", "Bind_Iter_Var", "Unexpected fail");
     1048      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_Iter_Var", "Unexpected fail");
    10461049    }
    10471050    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    10481051    {
    1049       throw new RefalException ("rfp_asail_jbc", "Bind_Iter_Var", "Unexpected fail");
     1052      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_Iter_Var", "Unexpected fail");
    10501053    }
    10511054    Expr _vs_i = Expr.empty;
     
    10741077    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), Expr.concat (_c_50, _ve_expr), _v_Lookup1))
    10751078    {
    1076       throw new RefalException ("rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
     1079      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
    10771080    }
    10781081    if (_v_Lookup1.getExpr ().length () != 3)
    10791082    {
    1080       throw new RefalException ("rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
     1083      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
    10811084    }
    10821085    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    10831086    {
    1084       throw new RefalException ("rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
     1087      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
    10851088    }
    10861089    if (!_v_Lookup1.getExpr ().isSymbolAt ((0 + 1)))
    10871090    {
    1088       throw new RefalException ("rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
     1091      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
    10891092    }
    10901093    if (!_v_Lookup1.getExpr ().isSymbolAt ((0 + 1 + 1)))
    10911094    {
    1092       throw new RefalException ("rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
     1095      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Iter_Var", "Unexpected fail");
    10931096    }
    10941097    Expr _vs_i = Expr.empty;
     
    11111114    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), _c_47, _v_Lookup1))
    11121115    {
    1113       throw new RefalException ("rfp_asail_jbc", "Bind_TMP_Var", "Unexpected fail");
     1116      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_TMP_Var", "Unexpected fail");
    11141117    }
    11151118    if (_v_Lookup1.getExpr ().length () != 1)
    11161119    {
    1117       throw new RefalException ("rfp_asail_jbc", "Bind_TMP_Var", "Unexpected fail");
     1120      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_TMP_Var", "Unexpected fail");
    11181121    }
    11191122    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    11201123    {
    1121       throw new RefalException ("rfp_asail_jbc", "Bind_TMP_Var", "Unexpected fail");
     1124      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Bind_TMP_Var", "Unexpected fail");
    11221125    }
    11231126    Expr _vs_i = Expr.empty;
     
    11421145    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), Expr.concat (_c_51, _vt_var), _v_Lookup1))
    11431146    {
    1144       throw new RefalException ("rfp_asail_jbc", "Lookup_TMP_Var", "Unexpected fail");
     1147      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_TMP_Var", "Unexpected fail");
    11451148    }
    11461149    if (_v_Lookup1.getExpr ().length () != 1)
    11471150    {
    1148       throw new RefalException ("rfp_asail_jbc", "Lookup_TMP_Var", "Unexpected fail");
     1151      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_TMP_Var", "Unexpected fail");
    11491152    }
    11501153    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    11511154    {
    1152       throw new RefalException ("rfp_asail_jbc", "Lookup_TMP_Var", "Unexpected fail");
     1155      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_TMP_Var", "Unexpected fail");
    11531156    }
    11541157    Expr _vs_i = Expr.empty;
     
    11761179    if (!refal.plus.Table.Lookup (_gs_auxcall1.getExpr (), Expr.concat (_c_52, _vt_label), _v_Lookup1))
    11771180    {
    1178       throw new RefalException ("rfp_asail_jbc", "Lookup_Label", "Unexpected fail");
     1181      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Label", "Unexpected fail");
    11791182    }
    11801183    if (_v_Lookup1.getExpr ().length () != 1)
    11811184    {
    1182       throw new RefalException ("rfp_asail_jbc", "Lookup_Label", "Unexpected fail");
     1185      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Label", "Unexpected fail");
    11831186    }
    11841187    if (!_v_Lookup1.getExpr ().isSymbolAt (0))
    11851188    {
    1186       throw new RefalException ("rfp_asail_jbc", "Lookup_Label", "Unexpected fail");
     1189      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Lookup_Label", "Unexpected fail");
    11871190    }
    11881191    Expr _vs_l = Expr.empty;
     
    12051208    if (!refal.plus.Access.R (_c_14, _ge_auxcall1.getExpr (), _v_R1))
    12061209    {
    1207       throw new RefalException ("rfp_asail_jbc", "Get_Trap", "Unexpected fail");
     1210      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Get_Trap", "Unexpected fail");
    12081211    }
    12091212    if (!_v_R1.getExpr ().isSymbolAt (0))
    12101213    {
    1211       throw new RefalException ("rfp_asail_jbc", "Get_Trap", "Unexpected fail");
     1214      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Get_Trap", "Unexpected fail");
    12121215    }
    12131216    Expr _vs_handler = Expr.empty;
     
    12251228    if (_v_len1 < _v_len2)
    12261229    {
    1227       throw new RefalException ("rfp_asail_jbc", "Pop_Trap", "Unexpected fail");
     1230      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Trap", "Unexpected fail");
    12281231    }
    12291232    int _v_len__traps = (_v_len1 - _v_len2);
    12301233    if (!_v_Get1.getExpr ().isSymbolAt ((0 + _v_len__traps)))
    12311234    {
    1232       throw new RefalException ("rfp_asail_jbc", "Pop_Trap", "Unexpected fail");
     1235      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Trap", "Unexpected fail");
    12331236    }
    12341237    if (!_v_Get1.getExpr ().isSymbolAt ((0 + _v_len__traps + 1)))
    12351238    {
    1236       throw new RefalException ("rfp_asail_jbc", "Pop_Trap", "Unexpected fail");
     1239      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Pop_Trap", "Unexpected fail");
    12371240    }
    12381241    Expr _ve_traps = Expr.empty;
     
    12401243    Expr _vs_end = Expr.empty;
    12411244    _vs_end = _v_Get1.getExpr ().subexpr ((0 + _v_len__traps), 1);
    1242     Expr _vs__dollar_tmp_m_278_m_33 = Expr.empty;
    1243     _vs__dollar_tmp_m_278_m_33 = _v_Get1.getExpr ().subexpr ((0 + _v_len__traps + 1), 1);
     1245    Expr _vs__dollar_tmp_m_280_m_33 = Expr.empty;
     1246    _vs__dollar_tmp_m_280_m_33 = _v_Get1.getExpr ().subexpr ((0 + _v_len__traps + 1), 1);
    12441247    refal.plus.Box.Store (Traps, _ve_traps);
    12451248    _v_res1.assign (_vs_end);
     
    12611264
    12621265  @RefalFormat("$func Check_Name s = ;")
    1263   static  void Check_Name (Expr _vs__dollar_tmp_m_291_m_13) throws RefalException
     1266  static  void Check_Name (Expr _vs__dollar_tmp_m_293_m_13) throws RefalException
    12641267  {
    12651268
     
    12721275    if (!refal.plus.List.Map (_c_56, Expr.empty, _ve_module, _v_Map1))
    12731276    {
    1274       throw new RefalException ("rfp_asail_jbc", "Module_To_JBC", "Unexpected fail");
     1277      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_To_JBC", "Unexpected fail");
    12751278    }
    12761279    int _v_len1 = _v_Map1.getExpr ().length ();
     
    12781281    if (_v_len1 < _v_len2)
    12791282    {
    1280       throw new RefalException ("rfp_asail_jbc", "Module_To_JBC", "Unexpected fail");
    1281     }
    1282     int _v_len___dollar_tmp_m_294_m_65 = (_v_len1 - _v_len2);
    1283     Expr _ve__dollar_tmp_m_294_m_65 = Expr.empty;
    1284     _ve__dollar_tmp_m_294_m_65 = _v_Map1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_294_m_65);
     1283      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_To_JBC", "Unexpected fail");
     1284    }
     1285    int _v_len___dollar_tmp_m_296_m_65 = (_v_len1 - _v_len2);
     1286    Expr _ve__dollar_tmp_m_296_m_65 = Expr.empty;
     1287    _ve__dollar_tmp_m_296_m_65 = _v_Map1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_296_m_65);
    12851288  }
    12861289
     
    13011304          break _block1__branch1;
    13021305        }
    1303         int _v_len___dollar_tmp_m_297_m_18 = (_v_len1 - _v_len2);
     1306        int _v_len___dollar_tmp_m_299_m_18 = (_v_len1 - _v_len2);
    13041307        if (!_v_deref__arg1.isSymbolAt (0))
    13051308        {
     
    13121315        Expr _vs_tag = Expr.empty;
    13131316        _vs_tag = _v_deref__arg1.subexpr (0, 1);
    1314         Expr _ve__dollar_tmp_m_297_m_18 = Expr.empty;
    1315         _ve__dollar_tmp_m_297_m_18 = _v_deref__arg1.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_297_m_18);
     1317        Expr _ve__dollar_tmp_m_299_m_18 = Expr.empty;
     1318        _ve__dollar_tmp_m_299_m_18 = _v_deref__arg1.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_299_m_18);
    13161319        break _block1;
    13171320      }
     
    14611464        if (_vt_qname.isSymbolAt (0))
    14621465        {
    1463           throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1466          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    14641467        }
    14651468        Expr _v_deref__qname = (Expr) _vt_qname.at (0);
     
    14681471        if (_v_len15 < _v_len16)
    14691472        {
    1470           throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    1471         }
    1472         int _v_len___dollar_tmp_m_304_m_17 = (_v_len15 - _v_len16);
    1473         if (!_v_deref__qname.isSymbolAt ((0 + _v_len___dollar_tmp_m_304_m_17)))
    1474         {
    1475           throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    1476         }
    1477         Expr _ve__dollar_tmp_m_304_m_17 = Expr.empty;
    1478         _ve__dollar_tmp_m_304_m_17 = _v_deref__qname.subexpr (0, _v_len___dollar_tmp_m_304_m_17);
     1473          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1474        }
     1475        int _v_len___dollar_tmp_m_306_m_17 = (_v_len15 - _v_len16);
     1476        if (!_v_deref__qname.isSymbolAt ((0 + _v_len___dollar_tmp_m_306_m_17)))
     1477        {
     1478          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1479        }
     1480        Expr _ve__dollar_tmp_m_306_m_17 = Expr.empty;
     1481        _ve__dollar_tmp_m_306_m_17 = _v_deref__qname.subexpr (0, _v_len___dollar_tmp_m_306_m_17);
    14791482        Expr _vs_name = Expr.empty;
    1480         _vs_name = _v_deref__qname.subexpr ((0 + _v_len___dollar_tmp_m_304_m_17), 1);
     1483        _vs_name = _v_deref__qname.subexpr ((0 + _v_len___dollar_tmp_m_306_m_17), 1);
    14811484        Check_Name (_vs_name);
     1485        _block3: {
     1486          _block3__branch1: {
     1487            Result _v_Get1 = new Result (Expr.empty);
     1488            refal.plus.Box.Get (rfpc.CallList, _v_Get1);
     1489            if (_v_Get1.getExpr ().length () < 1)
     1490            {
     1491              break _block3__branch1;
     1492            }
     1493            Expr.SplitIterator _va_6 = _v_Get1.getExpr ().leftSplit(0);
     1494            _exit1: _continue1: for ( ; ; _va_6.next ())
     1495            {
     1496              Expr _ve__dollar_tmp_m_309_m_26 = _va_6.getLeft();
     1497              Expr _v_lsplit__Get1 = _va_6.getRight();
     1498              if (!_va_6.isValid ())
     1499              {
     1500                break _block3__branch1;
     1501              }
     1502              int _v_len17 = _v_lsplit__Get1.length ();
     1503              int _v_len18 = 1;
     1504              if (_v_len17 < _v_len18)
     1505              {
     1506                break _block3__branch1;
     1507              }
     1508              int _v_len___dollar_tmp_m_309_m_54 = (_v_len17 - _v_len18);
     1509              if (_v_lsplit__Get1.isSymbolAt (0))
     1510              {
     1511                continue _continue1;
     1512              }
     1513              Expr _v_deref__lsplit__Get1 = (Expr) _v_lsplit__Get1.at (0);
     1514              int _v_len19 = _v_deref__lsplit__Get1.length ();
     1515              int _v_len20 = 1;
     1516              if (_v_len19 < _v_len20)
     1517              {
     1518                continue _continue1;
     1519              }
     1520              int _v_len__methodCallList = (_v_len19 - _v_len20);
     1521              if (!_vs_name.termEquals (_v_deref__lsplit__Get1, 0))
     1522              {
     1523                continue _continue1;
     1524              }
     1525              Expr _ve__dollar_tmp_m_309_m_54 = Expr.empty;
     1526              _ve__dollar_tmp_m_309_m_54 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_309_m_54);
     1527              Expr _ve_methodCallList = Expr.empty;
     1528              _ve_methodCallList = _v_deref__lsplit__Get1.subexpr ((0 + 1), _v_len__methodCallList);
     1529              refal.plus.Box.Store (MethodCallList, _ve_methodCallList);
     1530              break _exit1;
     1531            }
     1532            break _block3;
     1533          }
     1534          refal.plus.Box.Store (MethodCallList, Expr.empty);
     1535        }
    14821536        Result _gs_auxcall2 = new Result (Expr.empty);
    14831537        Access_Mode (_vs_linkage, _gs_auxcall2);
     
    14931547        org.refal.plus.wrappers.org.objectweb.asm.ClassWriter.CWvisitMethod (_gs_auxcall3.getExpr (), _vs_access.getExpr (), _vs_name, _vs_desc.getExpr (), _gs_auxcall4.getExpr (), _c_40, _gs_auxcall5);
    14941548        refal.plus.Box.Store (MVbox, _gs_auxcall5.getExpr ());
    1495         _block3: {
    1496           _block3__branch1: {
     1549        _block4: {
     1550          _block4__branch1: {
    14971551            Result _vs_format = new Result (Expr.empty);
    14981552            if (!rfp_helper.PrintFunctionFormat (_vt_qname, _vs_format))
    14991553            {
    1500               break _block3__branch1;
     1554              break _block4__branch1;
    15011555            }
    15021556            Result _gs_auxcall6 = new Result (Expr.empty);
     
    15061560            org.refal.plus.wrappers.org.objectweb.asm.AnnotationVisitor.visit (_vs_aw.getExpr (), _c_63, _vs_format.getExpr ());
    15071561            org.refal.plus.wrappers.org.objectweb.asm.AnnotationVisitor.visitEnd (_vs_aw.getExpr ());
    1508             break _block3;
     1562            break _block4;
    15091563          }
    15101564        }
     
    15141568        Bind_Vars (_c_64, _ve_ress);
    15151569        Body_To_JBC (_ve_body);
    1516         _block4: {
    1517           _block4__branch1: {
     1570        _block5: {
     1571          _block5__branch1: {
    15181572            if (!_vs_tag.termEquals (_c_44, 0))
    15191573            {
    1520               break _block4__branch1;
     1574              break _block5__branch1;
    15211575            }
    15221576            Result _gs_auxcall7 = new Result (Expr.empty);
    15231577            MV (_gs_auxcall7);
    15241578            org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitInsn (_gs_auxcall7.getExpr (), _c_26);
    1525             break _block4;
     1579            break _block5;
    15261580          }
    15271581          if (!_vs_tag.termEquals (_c_42, 0))
    15281582          {
    1529             throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1583            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    15301584          }
    15311585          Result _gs_auxcall8 = new Result (Expr.empty);
     
    15421596        MV (_gs_auxcall11);
    15431597        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitEnd (_gs_auxcall11.getExpr ());
    1544         _block5: {
    1545           _block5__branch1: {
    1546             Result _v_Get1 = new Result (Expr.empty);
    1547             refal.plus.Box.Get (Entry, _v_Get1);
    1548             if (_v_Get1.getExpr ().length () < 1)
    1549             {
    1550               break _block5__branch1;
    1551             }
    1552             Expr.SplitIterator _va_6 = _v_Get1.getExpr ().leftSplit(0);
    1553             _exit1: _continue1: for ( ; ; _va_6.next ())
    1554             {
    1555               Expr _ve__dollar_tmp_m_323_m_23 = _va_6.getLeft();
    1556               Expr _v_lsplit__Get1 = _va_6.getRight();
    1557               if (!_va_6.isValid ())
     1598        _block6: {
     1599          _block6__branch1: {
     1600            Result _v_Get2 = new Result (Expr.empty);
     1601            refal.plus.Box.Get (Entry, _v_Get2);
     1602            if (_v_Get2.getExpr ().length () < 1)
     1603            {
     1604              break _block6__branch1;
     1605            }
     1606            Expr.SplitIterator _va_7 = _v_Get2.getExpr ().leftSplit(0);
     1607            _exit2: _continue2: for ( ; ; _va_7.next ())
     1608            {
     1609              Expr _ve__dollar_tmp_m_330_m_23 = _va_7.getLeft();
     1610              Expr _v_lsplit__Get2 = _va_7.getRight();
     1611              if (!_va_7.isValid ())
    15581612              {
    1559                 break _block5__branch1;
     1613                break _block6__branch1;
    15601614              }
    1561               int _v_len17 = _v_lsplit__Get1.length ();
    1562               int _v_len18 = 1;
    1563               if (_v_len17 < _v_len18)
     1615              int _v_len21 = _v_lsplit__Get2.length ();
     1616              int _v_len22 = 1;
     1617              if (_v_len21 < _v_len22)
    15641618              {
    1565                 break _block5__branch1;
     1619                break _block6__branch1;
    15661620              }
    1567               int _v_len___dollar_tmp_m_323_m_33 = (_v_len17 - _v_len18);
    1568               if (!_vt_qname.termEquals (_v_lsplit__Get1, 0))
     1621              int _v_len___dollar_tmp_m_330_m_33 = (_v_len21 - _v_len22);
     1622              if (!_vt_qname.termEquals (_v_lsplit__Get2, 0))
    15691623              {
    1570                 continue _continue1;
     1624                continue _continue2;
    15711625              }
    1572               Expr _ve__dollar_tmp_m_323_m_33 = Expr.empty;
    1573               _ve__dollar_tmp_m_323_m_33 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_323_m_33);
     1626              Expr _ve__dollar_tmp_m_330_m_33 = Expr.empty;
     1627              _ve__dollar_tmp_m_330_m_33 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_330_m_33);
    15741628              refal.plus.Box.Store (EntryName, _vs_name);
    1575               break _exit1;
    1576             }
    1577             break _block5;
     1629              break _exit2;
     1630            }
     1631            break _block6;
    15781632          }
    15791633        }
     
    15861640        }
    15871641        Expr _v_deref__arg14 = (Expr) _gt_arg1.at (0);
    1588         int _v_len19 = _v_deref__arg14.length ();
    1589         int _v_len20 = 4;
    1590         if (_v_len19 < _v_len20)
     1642        int _v_len23 = _v_deref__arg14.length ();
     1643        int _v_len24 = 4;
     1644        if (_v_len23 < _v_len24)
    15911645        {
    15921646          break _block1__branch4;
    15931647        }
    1594         int _v_len__expr = (_v_len19 - _v_len20);
     1648        int _v_len__expr = (_v_len23 - _v_len24);
    15951649        if (_v_deref__arg14.isSymbolAt ((0 + 1 + 1 + 1)))
    15961650        {
     
    15981652        }
    15991653        Expr _v_deref__deref__arg14 = (Expr) _v_deref__arg14.at ((0 + 1 + 1 + 1));
    1600         int _v_len21 = _v_deref__deref__arg14.length ();
    1601         int _v_len22 = 0;
    1602         if (_v_len21 < _v_len22)
     1654        int _v_len25 = _v_deref__deref__arg14.length ();
     1655        int _v_len26 = 0;
     1656        if (_v_len25 < _v_len26)
    16031657        {
    16041658          break _block1__branch4;
    16051659        }
    1606         int _v_len__comment = (_v_len21 - _v_len22);
     1660        int _v_len__comment = (_v_len25 - _v_len26);
    16071661        if (!_c_65.termEquals (_v_deref__arg14, 0))
    16081662        {
     
    16221676        _ve_comment = _v_deref__deref__arg14.subexpr (0, _v_len__comment);
    16231677        Expr _vs_name = Expr.empty;
    1624         _block6: {
    1625           _block6__branch1: {
     1678        _block7: {
     1679          _block7__branch1: {
    16261680            if (_vt_qname.isSymbolAt (0))
    16271681            {
    1628               break _block6__branch1;
     1682              break _block7__branch1;
    16291683            }
    16301684            Expr _v_deref__qname2 = (Expr) _vt_qname.at (0);
    16311685            if (_v_deref__qname2.length () != 2)
    16321686            {
    1633               break _block6__branch1;
     1687              break _block7__branch1;
    16341688            }
    16351689            if (_v_deref__qname2.isSymbolAt ((0 + 1)))
    16361690            {
    1637               break _block6__branch1;
     1691              break _block7__branch1;
    16381692            }
    16391693            Expr _v_deref__deref__qname2 = (Expr) _v_deref__qname2.at ((0 + 1));
    1640             int _v_len23 = _v_deref__deref__qname2.length ();
    1641             int _v_len24 = 0;
    1642             if (_v_len23 < _v_len24)
    1643             {
    1644               break _block6__branch1;
    1645             }
    1646             int _v_len___dollar_tmp_m_326_m_17 = (_v_len23 - _v_len24);
     1694            int _v_len27 = _v_deref__deref__qname2.length ();
     1695            int _v_len28 = 0;
     1696            if (_v_len27 < _v_len28)
     1697            {
     1698              break _block7__branch1;
     1699            }
     1700            int _v_len___dollar_tmp_m_333_m_17 = (_v_len27 - _v_len28);
    16471701            if (!_c_66.termEquals (_v_deref__qname2, 0))
    16481702            {
    1649               break _block6__branch1;
    1650             }
    1651             Expr _ve__dollar_tmp_m_326_m_17 = Expr.empty;
    1652             _ve__dollar_tmp_m_326_m_17 = _v_deref__deref__qname2.subexpr (0, _v_len___dollar_tmp_m_326_m_17);
    1653             Result _va_7 = new Result ();
    1654             GetJBCName (_vt_qname, _va_7);
    1655             _vs_name = _va_7.getExpr ();
    1656             break _block6;
     1703              break _block7__branch1;
     1704            }
     1705            Expr _ve__dollar_tmp_m_333_m_17 = Expr.empty;
     1706            _ve__dollar_tmp_m_333_m_17 = _v_deref__deref__qname2.subexpr (0, _v_len___dollar_tmp_m_333_m_17);
     1707            Result _va_8 = new Result ();
     1708            GetJBCName (_vt_qname, _va_8);
     1709            _vs_name = _va_8.getExpr ();
     1710            break _block7;
    16571711          }
    16581712          if (_vt_qname.isSymbolAt (0))
    16591713          {
    1660             throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1714            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    16611715          }
    16621716          Expr _v_deref__qname3 = (Expr) _vt_qname.at (0);
    1663           int _v_len25 = _v_deref__qname3.length ();
    1664           int _v_len26 = 1;
    1665           if (_v_len25 < _v_len26)
    1666           {
    1667             throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    1668           }
    1669           int _v_len___dollar_tmp_m_327_m_9 = (_v_len25 - _v_len26);
    1670           if (!_v_deref__qname3.isSymbolAt ((0 + _v_len___dollar_tmp_m_327_m_9)))
    1671           {
    1672             throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    1673           }
    1674           Expr _ve__dollar_tmp_m_327_m_9 = Expr.empty;
    1675           _ve__dollar_tmp_m_327_m_9 = _v_deref__qname3.subexpr (0, _v_len___dollar_tmp_m_327_m_9);
     1717          int _v_len29 = _v_deref__qname3.length ();
     1718          int _v_len30 = 1;
     1719          if (_v_len29 < _v_len30)
     1720          {
     1721            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1722          }
     1723          int _v_len___dollar_tmp_m_334_m_9 = (_v_len29 - _v_len30);
     1724          if (!_v_deref__qname3.isSymbolAt ((0 + _v_len___dollar_tmp_m_334_m_9)))
     1725          {
     1726            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1727          }
     1728          Expr _ve__dollar_tmp_m_334_m_9 = Expr.empty;
     1729          _ve__dollar_tmp_m_334_m_9 = _v_deref__qname3.subexpr (0, _v_len___dollar_tmp_m_334_m_9);
    16761730          Expr _gs_name__4 = Expr.empty;
    1677           _gs_name__4 = _v_deref__qname3.subexpr ((0 + _v_len___dollar_tmp_m_327_m_9), 1);
     1731          _gs_name__4 = _v_deref__qname3.subexpr ((0 + _v_len___dollar_tmp_m_334_m_9), 1);
    16781732          _vs_name = _gs_name__4;
    16791733        }
     
    16931747        Result _vs_fv = new Result (Expr.empty);
    16941748        org.refal.plus.wrappers.org.objectweb.asm.ClassWriter.CWvisitField (_gs_auxcall14.getExpr (), _vs_access.getExpr (), _vs_name, _c_34, _gs_auxcall15.getExpr (), _gs_auxcall16.getExpr (), _vs_fv);
    1695         _block7: {
    1696           _block7__branch1: {
     1749        _block8: {
     1750          _block8__branch1: {
    16971751            Result _vs_def = new Result (Expr.empty);
    16981752            if (!rfp_helper.PrintConstDefinition (_vt_qname, _vs_def))
    16991753            {
    1700               break _block7__branch1;
     1754              break _block8__branch1;
    17011755            }
    17021756            Result _vs_aw = new Result (Expr.empty);
     
    17041758            org.refal.plus.wrappers.org.objectweb.asm.AnnotationVisitor.visit (_vs_aw.getExpr (), _c_63, _vs_def.getExpr ());
    17051759            org.refal.plus.wrappers.org.objectweb.asm.AnnotationVisitor.visitEnd (_vs_aw.getExpr ());
    1706             break _block7;
     1760            break _block8;
    17071761          }
    17081762        }
    17091763        org.refal.plus.wrappers.org.objectweb.asm.FieldVisitor.FVvisitEnd (_vs_fv.getExpr ());
    1710         refal.plus.Box.Put (Constants, new Expr ((Comparable) Expr.concat (_vs_name, _ve_expr)));
     1764        refal.plus.Box.Put (Constants, new Expr ((Comparable<?>) Expr.concat (_vs_name, _ve_expr)));
    17111765        break _block1;
    17121766      }
     
    17411795        if (_vt_qname.isSymbolAt (0))
    17421796        {
    1743           throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1797          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    17441798        }
    17451799        Expr _v_deref__qname4 = (Expr) _vt_qname.at (0);
    1746         int _v_len27 = _v_deref__qname4.length ();
    1747         int _v_len28 = 1;
    1748         if (_v_len27 < _v_len28)
    1749         {
    1750           throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    1751         }
    1752         int _v_len___dollar_tmp_m_341_m_17 = (_v_len27 - _v_len28);
    1753         if (!_v_deref__qname4.isSymbolAt ((0 + _v_len___dollar_tmp_m_341_m_17)))
    1754         {
    1755           throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    1756         }
    1757         Expr _ve__dollar_tmp_m_341_m_17 = Expr.empty;
    1758         _ve__dollar_tmp_m_341_m_17 = _v_deref__qname4.subexpr (0, _v_len___dollar_tmp_m_341_m_17);
     1800        int _v_len31 = _v_deref__qname4.length ();
     1801        int _v_len32 = 1;
     1802        if (_v_len31 < _v_len32)
     1803        {
     1804          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1805        }
     1806        int _v_len___dollar_tmp_m_348_m_17 = (_v_len31 - _v_len32);
     1807        if (!_v_deref__qname4.isSymbolAt ((0 + _v_len___dollar_tmp_m_348_m_17)))
     1808        {
     1809          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1810        }
     1811        Expr _ve__dollar_tmp_m_348_m_17 = Expr.empty;
     1812        _ve__dollar_tmp_m_348_m_17 = _v_deref__qname4.subexpr (0, _v_len___dollar_tmp_m_348_m_17);
    17591813        Expr _vs_name = Expr.empty;
    1760         _vs_name = _v_deref__qname4.subexpr ((0 + _v_len___dollar_tmp_m_341_m_17), 1);
     1814        _vs_name = _v_deref__qname4.subexpr ((0 + _v_len___dollar_tmp_m_348_m_17), 1);
    17611815        Check_Name (_vs_name);
    17621816        Result _gs_auxcall17 = new Result (Expr.empty);
     
    17741828        Result _vs_fv = new Result (Expr.empty);
    17751829        org.refal.plus.wrappers.org.objectweb.asm.ClassWriter.CWvisitField (_gs_auxcall19.getExpr (), _vs_access.getExpr (), _vs_name, _c_34, _gs_auxcall20.getExpr (), _gs_auxcall21.getExpr (), _vs_fv);
    1776         _block8: {
    1777           _block8__branch1: {
     1830        _block9: {
     1831          _block9__branch1: {
    17781832            Result _vs_def = new Result (Expr.empty);
    17791833            if (!rfp_helper.PrintObjectDefinition (_vt_qname, _vs_def))
    17801834            {
    1781               break _block8__branch1;
     1835              break _block9__branch1;
    17821836            }
    17831837            Result _vs_aw = new Result (Expr.empty);
     
    17851839            org.refal.plus.wrappers.org.objectweb.asm.AnnotationVisitor.visit (_vs_aw.getExpr (), _c_63, _vs_def.getExpr ());
    17861840            org.refal.plus.wrappers.org.objectweb.asm.AnnotationVisitor.visitEnd (_vs_aw.getExpr ());
    1787             break _block8;
     1841            break _block9;
    17881842          }
    17891843        }
    17901844        org.refal.plus.wrappers.org.objectweb.asm.FieldVisitor.FVvisitEnd (_vs_fv.getExpr ());
    1791         refal.plus.Box.Put (Objects, new Expr ((Comparable) Expr.concat (_vs_tag, _vs_name)));
     1845        refal.plus.Box.Put (Objects, new Expr ((Comparable<?>) Expr.concat (_vs_tag, _vs_name)));
    17921846        break _block1;
    17931847      }
     
    18301884      if (_gt_arg1.isSymbolAt (0))
    18311885      {
    1832         throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1886        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    18331887      }
    18341888      Expr _v_deref__arg18 = (Expr) _gt_arg1.at (0);
    18351889      if (_v_deref__arg18.length () != 2)
    18361890      {
    1837         throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1891        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    18381892      }
    18391893      if (!_c_70.termEquals (_v_deref__arg18, 0))
    18401894      {
    1841         throw new RefalException ("rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
     1895        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Module_Item_To_JBC", "Unexpected fail");
    18421896      }
    18431897      Expr _vt_name = Expr.empty;
     
    18531907    if (!refal.plus.List.Map (_c_71, Expr.empty, _ve_body, _v_Map1))
    18541908    {
    1855       throw new RefalException ("rfp_asail_jbc", "Body_To_JBC", "Unexpected fail");
     1909      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_To_JBC", "Unexpected fail");
    18561910    }
    18571911    int _v_len1 = _v_Map1.getExpr ().length ();
     
    18591913    if (_v_len1 < _v_len2)
    18601914    {
    1861       throw new RefalException ("rfp_asail_jbc", "Body_To_JBC", "Unexpected fail");
    1862     }
    1863     int _v_len___dollar_tmp_m_359_m_57 = (_v_len1 - _v_len2);
    1864     Expr _ve__dollar_tmp_m_359_m_57 = Expr.empty;
    1865     _ve__dollar_tmp_m_359_m_57 = _v_Map1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_359_m_57);
     1915      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_To_JBC", "Unexpected fail");
     1916    }
     1917    int _v_len___dollar_tmp_m_366_m_57 = (_v_len1 - _v_len2);
     1918    Expr _ve__dollar_tmp_m_366_m_57 = Expr.empty;
     1919    _ve__dollar_tmp_m_366_m_57 = _v_Map1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_366_m_57);
    18661920  }
    18671921
     
    19462000        Expr _vt_var = Expr.empty;
    19472001        _vt_var = _v_deref__deref__arg12.subexpr ((0 + 1), 1);
    1948         Result _vs__dollar_tmp_m_367_m_28 = new Result (Expr.empty);
     2002        Result _vs__dollar_tmp_m_374_m_28 = new Result (Expr.empty);
    19492003        Result _vs_i = new Result (Expr.empty);
    1950         Lookup_Var (_vt_var, _vs__dollar_tmp_m_367_m_28, _vs_i);
     2004        Lookup_Var (_vt_var, _vs__dollar_tmp_m_374_m_28, _vs_i);
    19512005        Expr_Int_To_JBC (_ve_expr);
    19522006        Result _gs_auxcall2 = new Result (Expr.empty);
     
    20072061          if (!_vs_type.termEquals (_c_49, 0))
    20082062          {
    2009             throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2063            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    20102064          }
    20112065          Expr_Ref_To_JBC (_ve_expr);
     
    20572111          if (!_vs_type.getExpr ().termEquals (_c_49, 0))
    20582112          {
    2059             throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2113            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    20602114          }
    20612115          Expr_Ref_To_JBC (_ve_expr);
     
    21442198          if (!_vs_op.termEquals (_c_86, 0))
    21452199          {
    2146             throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2200            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    21472201          }
    21482202          _gs_op__3 = _c_87;
     
    23722426            Expr _vt_label = Expr.empty;
    23732427            _vt_label = _ve_cont__label.subexpr (0, 1);
    2374             Result _va_8 = new Result ();
    2375             Bind_Label (_vt_label, _va_8);
    2376             _gs_cont__label__3 = _va_8.getExpr ();
     2428            Result _va_9 = new Result ();
     2429            Bind_Label (_vt_label, _va_9);
     2430            _gs_cont__label__3 = _va_9.getExpr ();
    23772431            break _block6;
    23782432          }
    2379           Result _va_9 = new Result ();
    2380           org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_va_9);
    2381           _gs_cont__label__3 = _va_9.getExpr ();
     2433          Result _va_10 = new Result ();
     2434          org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_va_10);
     2435          _gs_cont__label__3 = _va_10.getExpr ();
    23822436        }
    23832437        Expr _gs_break__label__4 = Expr.empty;
     
    23902444            Expr _vt_label = Expr.empty;
    23912445            _vt_label = _ve_break__label.subexpr (0, 1);
    2392             Result _va_10 = new Result ();
    2393             Bind_Label (_vt_label, _va_10);
    2394             _gs_break__label__4 = _va_10.getExpr ();
     2446            Result _va_11 = new Result ();
     2447            Bind_Label (_vt_label, _va_11);
     2448            _gs_break__label__4 = _va_11.getExpr ();
    23952449            break _block7;
    23962450          }
    2397           Result _va_11 = new Result ();
    2398           org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_va_11);
    2399           _gs_break__label__4 = _va_11.getExpr ();
     2451          Result _va_12 = new Result ();
     2452          org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_va_12);
     2453          _gs_break__label__4 = _va_12.getExpr ();
    24002454        }
    24012455        Result _vs_for__label = new Result (Expr.empty);
     
    24502504            if (!_v_compose1.isSymbolAt (0))
    24512505            {
    2452               throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2506              throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    24532507            }
    24542508            if (!_v_compose1.isSymbolAt ((0 + 1)))
    24552509            {
    2456               throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2510              throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    24572511            }
    24582512            if (!_v_compose1.isSymbolAt ((0 + 1 + 1)))
    24592513            {
    2460               throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2514              throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    24612515            }
    24622516            Expr _vs_i = Expr.empty;
     
    26942748        if (_v_Get1.getExpr ().length () != 1)
    26952749        {
    2696           throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2750          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    26972751        }
    26982752        if (!_v_Get1.getExpr ().isSymbolAt (0))
    26992753        {
    2700           throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2754          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27012755        }
    27022756        Expr _vs_mod__name = Expr.empty;
     
    27092763        if (_v_Get2.getExpr ().length () != 1)
    27102764        {
    2711           throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2765          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27122766        }
    27132767        if (!_v_Get2.getExpr ().isSymbolAt (0))
    27142768        {
    2715           throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2769          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27162770        }
    27172771        Expr _vs_fname = Expr.empty;
     
    27672821      if (_gt_arg1.isSymbolAt (0))
    27682822      {
    2769         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2823        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27702824      }
    27712825      Expr _v_deref__arg115 = (Expr) _gt_arg1.at (0);
    27722826      if (_v_deref__arg115.length () != 4)
    27732827      {
    2774         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2828        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27752829      }
    27762830      if (_v_deref__arg115.isSymbolAt ((0 + 1)))
    27772831      {
    2778         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2832        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27792833      }
    27802834      if (_v_deref__arg115.isSymbolAt ((0 + 1 + 1)))
    27812835      {
    2782         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2836        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27832837      }
    27842838      if (_v_deref__arg115.isSymbolAt ((0 + 1 + 1 + 1)))
    27852839      {
    2786         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2840        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27872841      }
    27882842      Expr _v_deref__deref__arg115 = (Expr) _v_deref__arg115.at ((0 + 1));
     
    27932847      if (_v_len39 < _v_len40)
    27942848      {
    2795         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2849        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    27962850      }
    27972851      int _v_len__module = (_v_len39 - _v_len40);
     
    28002854      if (_v_len41 < _v_len42)
    28012855      {
    2802         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2856        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    28032857      }
    28042858      int _v_len__args = (_v_len41 - _v_len42);
     
    28072861      if (_v_len43 < _v_len44)
    28082862      {
    2809         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2863        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    28102864      }
    28112865      int _v_len__ress = (_v_len43 - _v_len44);
    28122866      if (!_v_deref__arg115.isSymbolAt (0))
    28132867      {
    2814         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2868        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    28152869      }
    28162870      if (!_v_deref__deref__arg115.isSymbolAt ((0 + _v_len__module)))
    28172871      {
    2818         throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2872        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    28192873      }
    28202874      Expr _vs_call = Expr.empty;
     
    28482902        if (!_vs_call.termEquals (_c_118, 0))
    28492903        {
    2850           throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     2904          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    28512905        }
    28522906        _vs_retType = _c_119;
     
    28592913          break _block12__branch1;
    28602914        }
    2861         Expr.SplitIterator _va_12 = _ve_args.leftSplit(0);
    2862         _exit1: _continue1: for ( ; ; _va_12.next ())
    2863         {
    2864           Expr _ve__dollar_tmp_m_510_m_17 = _va_12.getLeft();
    2865           Expr _v_lsplit__args = _va_12.getRight();
    2866           if (!_va_12.isValid ())
     2915        Expr.SplitIterator _va_13 = _ve_args.leftSplit(0);
     2916        _exit1: _continue1: for ( ; ; _va_13.next ())
     2917        {
     2918          Expr _ve__dollar_tmp_m_517_m_17 = _va_13.getLeft();
     2919          Expr _v_lsplit__args = _va_13.getRight();
     2920          if (!_va_13.isValid ())
    28672921          {
    28682922            break _block12__branch1;
     
    28742928            break _block12__branch1;
    28752929          }
    2876           int _v_len___dollar_tmp_m_510_m_27 = (_v_len45 - _v_len46);
     2930          int _v_len___dollar_tmp_m_517_m_27 = (_v_len45 - _v_len46);
    28772931          if (_v_lsplit__args.isSymbolAt (0))
    28782932          {
     
    28872941          }
    28882942          int _v_len__arg = (_v_len47 - _v_len48);
    2889           Expr _ve__dollar_tmp_m_510_m_27 = Expr.empty;
    2890           _ve__dollar_tmp_m_510_m_27 = _v_lsplit__args.subexpr ((0 + 1), _v_len___dollar_tmp_m_510_m_27);
     2943          Expr _ve__dollar_tmp_m_517_m_27 = Expr.empty;
     2944          _ve__dollar_tmp_m_517_m_27 = _v_lsplit__args.subexpr ((0 + 1), _v_len___dollar_tmp_m_517_m_27);
    28912945          Expr _ve_arg = Expr.empty;
    28922946          _ve_arg = _v_deref__lsplit__args.subexpr (0, _v_len__arg);
     
    28992953          break _block13__branch1;
    29002954        }
    2901         Expr.SplitIterator _va_13 = _ve_ress.leftSplit(0);
    2902         _exit2: _continue2: for ( ; ; _va_13.next ())
    2903         {
    2904           Expr _ve__dollar_tmp_m_515_m_17 = _va_13.getLeft();
    2905           Expr _v_lsplit__ress = _va_13.getRight();
    2906           if (!_va_13.isValid ())
     2955        Expr.SplitIterator _va_14 = _ve_ress.leftSplit(0);
     2956        _exit2: _continue2: for ( ; ; _va_14.next ())
     2957        {
     2958          Expr _ve__dollar_tmp_m_522_m_17 = _va_14.getLeft();
     2959          Expr _v_lsplit__ress = _va_14.getRight();
     2960          if (!_va_14.isValid ())
    29072961          {
    29082962            break _block13__branch1;
     
    29142968            break _block13__branch1;
    29152969          }
    2916           int _v_len___dollar_tmp_m_515_m_25 = (_v_len49 - _v_len50);
     2970          int _v_len___dollar_tmp_m_522_m_25 = (_v_len49 - _v_len50);
    29172971          Expr _vt_var = Expr.empty;
    29182972          _vt_var = _v_lsplit__ress.subexpr (0, 1);
    2919           Expr _ve__dollar_tmp_m_515_m_25 = Expr.empty;
    2920           _ve__dollar_tmp_m_515_m_25 = _v_lsplit__ress.subexpr ((0 + 1), _v_len___dollar_tmp_m_515_m_25);
     2973          Expr _ve__dollar_tmp_m_522_m_25 = Expr.empty;
     2974          _ve__dollar_tmp_m_522_m_25 = _v_lsplit__ress.subexpr ((0 + 1), _v_len___dollar_tmp_m_522_m_25);
    29212975          Result _v_Lookup__Var1 = new Result (Expr.empty);
    29222976          Result _v_Lookup__Var2 = new Result (Expr.empty);
     
    29332987                break _block14__branch1;
    29342988              }
    2935               Expr _vs__dollar_tmp_m_517_m_17 = Expr.empty;
    2936               _vs__dollar_tmp_m_517_m_17 = _v_compose2.subexpr ((0 + 1), 1);
     2989              Expr _vs__dollar_tmp_m_524_m_17 = Expr.empty;
     2990              _vs__dollar_tmp_m_524_m_17 = _v_compose2.subexpr ((0 + 1), 1);
    29372991              Result _vs_j = new Result (Expr.empty);
    29382992              Bind_TMP_Var (_vt_var, _vs_j);
     
    29573011            if (!_c_64.termEquals (_v_compose3, 0))
    29583012            {
    2959               throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     3013              throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    29603014            }
    29613015            if (!_v_compose3.isSymbolAt ((0 + 1)))
    29623016            {
    2963               throw new RefalException ("rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
     3017              throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Body_Item_To_JBC", "Unexpected fail");
    29643018            }
    29653019            Expr _vs_i = Expr.empty;
     
    29713025        }
    29723026      }
    2973       Result _gs_auxcall61 = new Result (Expr.empty);
    2974       MV (_gs_auxcall61);
    2975       Result _gs_auxcall62 = new Result (Expr.empty);
    2976       Result _gs_auxcall63 = new Result (Expr.empty);
    2977       GetJBCQName (_ve_module, _vs_name, _gs_auxcall62, _gs_auxcall63);
    2978       org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall61.getExpr (), _c_15, _gs_auxcall62.getExpr (), _gs_auxcall63.getExpr (), _vs_desc.getExpr ());
    29793027      _block15: {
    29803028        _block15__branch1: {
     3029          Result _v_Get3 = new Result (Expr.empty);
     3030          refal.plus.Box.Get (MethodCallList, _v_Get3);
     3031          int _v_len51 = _v_Get3.getExpr ().length ();
     3032          int _v_len52 = 1;
     3033          if (_v_len51 < _v_len52)
     3034          {
     3035            break _block15__branch1;
     3036          }
     3037          int _v_len__tail = (_v_len51 - _v_len52);
     3038          if (!_v_Get3.getExpr ().isSymbolAt (0))
     3039          {
     3040            break _block15__branch1;
     3041          }
     3042          Expr _vs_lineNumber = Expr.empty;
     3043          _vs_lineNumber = _v_Get3.getExpr ().subexpr (0, 1);
     3044          Expr _ve_tail = Expr.empty;
     3045          _ve_tail = _v_Get3.getExpr ().subexpr ((0 + 1), _v_len__tail);
     3046          refal.plus.Box.Store (MethodCallList, _ve_tail);
     3047          Result _vs_line = new Result (Expr.empty);
     3048          org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_vs_line);
     3049          Result _gs_auxcall61 = new Result (Expr.empty);
     3050          MV (_gs_auxcall61);
     3051          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitLabel (_gs_auxcall61.getExpr (), _vs_line.getExpr ());
     3052          Result _gs_auxcall62 = new Result (Expr.empty);
     3053          MV (_gs_auxcall62);
     3054          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitLineNumber (_gs_auxcall62.getExpr (), _vs_lineNumber, _vs_line.getExpr ());
     3055          break _block15;
     3056        }
     3057      }
     3058      Result _gs_auxcall63 = new Result (Expr.empty);
     3059      MV (_gs_auxcall63);
     3060      Result _gs_auxcall64 = new Result (Expr.empty);
     3061      Result _gs_auxcall65 = new Result (Expr.empty);
     3062      GetJBCQName (_ve_module, _vs_name, _gs_auxcall64, _gs_auxcall65);
     3063      org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall63.getExpr (), _c_15, _gs_auxcall64.getExpr (), _gs_auxcall65.getExpr (), _vs_desc.getExpr ());
     3064      _block16: {
     3065        _block16__branch1: {
    29813066          if (!_vs_call.termEquals (_c_118, 0))
    29823067          {
    2983             break _block15__branch1;
     3068            break _block16__branch1;
    29843069          }
    29853070          Result _vs_label = new Result (Expr.empty);
    29863071          org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_vs_label);
    2987           Result _gs_auxcall64 = new Result (Expr.empty);
    2988           MV (_gs_auxcall64);
    2989           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitJumpInsn (_gs_auxcall64.getExpr (), _c_120, _vs_label.getExpr ());
    2990           Result _gs_auxcall65 = new Result (Expr.empty);
    2991           MV (_gs_auxcall65);
    2992           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitInsn (_gs_auxcall65.getExpr (), _c_106);
    29933072          Result _gs_auxcall66 = new Result (Expr.empty);
    29943073          MV (_gs_auxcall66);
    2995           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitInsn (_gs_auxcall66.getExpr (), _c_43);
     3074          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitJumpInsn (_gs_auxcall66.getExpr (), _c_120, _vs_label.getExpr ());
    29963075          Result _gs_auxcall67 = new Result (Expr.empty);
    29973076          MV (_gs_auxcall67);
    2998           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitLabel (_gs_auxcall67.getExpr (), _vs_label.getExpr ());
    2999           break _block15;
    3000         }
    3001       }
    3002       _block16__branch1: {
     3077          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitInsn (_gs_auxcall67.getExpr (), _c_106);
     3078          Result _gs_auxcall68 = new Result (Expr.empty);
     3079          MV (_gs_auxcall68);
     3080          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitInsn (_gs_auxcall68.getExpr (), _c_43);
     3081          Result _gs_auxcall69 = new Result (Expr.empty);
     3082          MV (_gs_auxcall69);
     3083          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitLabel (_gs_auxcall69.getExpr (), _vs_label.getExpr ());
     3084          break _block16;
     3085        }
     3086      }
     3087      _block17__branch1: {
    30033088        if (_v_len__ress < 1)
    30043089        {
    3005           break _block16__branch1;
    3006         }
    3007         Expr.SplitIterator _va_14 = _ve_ress.leftSplit(0);
    3008         _exit3: _continue3: for ( ; ; _va_14.next ())
    3009         {
    3010           Expr _ve__dollar_tmp_m_538_m_17 = _va_14.getLeft();
    3011           Expr _v_lsplit__ress2 = _va_14.getRight();
    3012           if (!_va_14.isValid ())
    3013           {
    3014             break _block16__branch1;
    3015           }
    3016           int _v_len51 = _v_lsplit__ress2.length ();
    3017           int _v_len52 = 1;
    3018           if (_v_len51 < _v_len52)
    3019           {
    3020             break _block16__branch1;
    3021           }
    3022           int _v_len___dollar_tmp_m_538_m_25 = (_v_len51 - _v_len52);
     3090          break _block17__branch1;
     3091        }
     3092        Expr.SplitIterator _va_15 = _ve_ress.leftSplit(0);
     3093        _exit3: _continue3: for ( ; ; _va_15.next ())
     3094        {
     3095          Expr _ve__dollar_tmp_m_553_m_17 = _va_15.getLeft();
     3096          Expr _v_lsplit__ress2 = _va_15.getRight();
     3097          if (!_va_15.isValid ())
     3098          {
     3099            break _block17__branch1;
     3100          }
     3101          int _v_len53 = _v_lsplit__ress2.length ();
     3102          int _v_len54 = 1;
     3103          if (_v_len53 < _v_len54)
     3104          {
     3105            break _block17__branch1;
     3106          }
     3107          int _v_len___dollar_tmp_m_553_m_25 = (_v_len53 - _v_len54);
    30233108          Expr _vt_var = Expr.empty;
    30243109          _vt_var = _v_lsplit__ress2.subexpr (0, 1);
    3025           Expr _ve__dollar_tmp_m_538_m_25 = Expr.empty;
    3026           _ve__dollar_tmp_m_538_m_25 = _v_lsplit__ress2.subexpr ((0 + 1), _v_len___dollar_tmp_m_538_m_25);
     3110          Expr _ve__dollar_tmp_m_553_m_25 = Expr.empty;
     3111          _ve__dollar_tmp_m_553_m_25 = _v_lsplit__ress2.subexpr ((0 + 1), _v_len___dollar_tmp_m_553_m_25);
    30273112          Result _v_Lookup__Var3 = new Result (Expr.empty);
    30283113          Result _v_Lookup__Var4 = new Result (Expr.empty);
     
    30413126          Result _vs_j = new Result (Expr.empty);
    30423127          Lookup_TMP_Var (_vt_var, _vs_j);
    3043           Result _gs_auxcall68 = new Result (Expr.empty);
    3044           MV (_gs_auxcall68);
    3045           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall68.getExpr (), _c_13, _vs_j.getExpr ());
    3046           Result _gs_auxcall69 = new Result (Expr.empty);
    3047           MV (_gs_auxcall69);
    3048           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall69.getExpr (), _c_79, _c_20, _c_109, _c_100);
    30493128          Result _gs_auxcall70 = new Result (Expr.empty);
    30503129          MV (_gs_auxcall70);
    3051           org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall70.getExpr (), _c_78, _vs_i);
     3130          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall70.getExpr (), _c_13, _vs_j.getExpr ());
     3131          Result _gs_auxcall71 = new Result (Expr.empty);
     3132          MV (_gs_auxcall71);
     3133          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall71.getExpr (), _c_79, _c_20, _c_109, _c_100);
     3134          Result _gs_auxcall72 = new Result (Expr.empty);
     3135          MV (_gs_auxcall72);
     3136          org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall72.getExpr (), _c_78, _vs_i);
    30523137        }
    30533138      }
     
    30623147    if (!_v_Expr__Ref__To__JBC__With__Type1.getExpr ().isSymbolAt (0))
    30633148    {
    3064       throw new RefalException ("rfp_asail_jbc", "Expr_Ref_To_JBC", "Unexpected fail");
     3149      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Expr_Ref_To_JBC", "Unexpected fail");
    30653150    }
    30663151    Expr _vs_type = Expr.empty;
     
    31743259          break _block4__branch1;
    31753260        }
    3176         Expr.SplitIterator _va_15 = _ge_arg1.leftSplit(0);
    3177         _exit1: _continue1: for ( ; ; _va_15.next ())
    3178         {
    3179           Expr _ve__dollar_tmp_m_574_m_17 = _va_15.getLeft();
    3180           Expr _v_lsplit__arg1 = _va_15.getRight();
    3181           if (!_va_15.isValid ())
     3261        Expr.SplitIterator _va_16 = _ge_arg1.leftSplit(0);
     3262        _exit1: _continue1: for ( ; ; _va_16.next ())
     3263        {
     3264          Expr _ve__dollar_tmp_m_589_m_17 = _va_16.getLeft();
     3265          Expr _v_lsplit__arg1 = _va_16.getRight();
     3266          if (!_va_16.isValid ())
    31823267          {
    31833268            break _block4__branch1;
     
    31893274            break _block4__branch1;
    31903275          }
    3191           int _v_len___dollar_tmp_m_574_m_26 = (_v_len1 - _v_len2);
     3276          int _v_len___dollar_tmp_m_589_m_26 = (_v_len1 - _v_len2);
    31923277          Expr _vt_term = Expr.empty;
    31933278          _vt_term = _v_lsplit__arg1.subexpr (0, 1);
    3194           Expr _ve__dollar_tmp_m_574_m_26 = Expr.empty;
    3195           _ve__dollar_tmp_m_574_m_26 = _v_lsplit__arg1.subexpr ((0 + 1), _v_len___dollar_tmp_m_574_m_26);
     3279          Expr _ve__dollar_tmp_m_589_m_26 = Expr.empty;
     3280          _ve__dollar_tmp_m_589_m_26 = _v_lsplit__arg1.subexpr ((0 + 1), _v_len___dollar_tmp_m_589_m_26);
    31963281          Result _vs_type = new Result (Expr.empty);
    31973282          Term_Ref_To_JBC_With_Type (_vt_term, _vs_type);
     
    34113496            break _block1__branch4;
    34123497          }
    3413           int _v_len___dollar_tmp_m_598_m_15 = (_v_len15 - _v_len16);
     3498          int _v_len___dollar_tmp_m_613_m_15 = (_v_len15 - _v_len16);
    34143499          if (!_c_66.termEquals (_v_deref__arg15, 0))
    34153500          {
    34163501            break _block1__branch4;
    34173502          }
    3418           Expr _ve__dollar_tmp_m_598_m_15 = Expr.empty;
    3419           _ve__dollar_tmp_m_598_m_15 = _v_deref__deref__arg15.subexpr (0, _v_len___dollar_tmp_m_598_m_15);
     3503          Expr _ve__dollar_tmp_m_613_m_15 = Expr.empty;
     3504          _ve__dollar_tmp_m_613_m_15 = _v_deref__deref__arg15.subexpr (0, _v_len___dollar_tmp_m_613_m_15);
    34203505          Result _ge_auxcall4 = new Result (Expr.empty);
    34213506          refal.plus.Box.Get (Module_Name, _ge_auxcall4);
     
    34453530      if (_gt_arg1.isSymbolAt (0))
    34463531      {
    3447         throw new RefalException ("rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
     3532        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
    34483533      }
    34493534      Expr _v_deref__arg16 = (Expr) _gt_arg1.at (0);
     
    34523537      if (_v_len17 < _v_len18)
    34533538      {
    3454         throw new RefalException ("rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
    3455       }
    3456       int _v_len___dollar_tmp_m_602_m_32 = (_v_len17 - _v_len18);
     3539        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
     3540      }
     3541      int _v_len___dollar_tmp_m_617_m_32 = (_v_len17 - _v_len18);
    34573542      if (!_v_deref__arg16.isSymbolAt (0))
    34583543      {
    3459         throw new RefalException ("rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
     3544        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
    34603545      }
    34613546      Expr _vs_var__tag = Expr.empty;
    34623547      _vs_var__tag = _v_deref__arg16.subexpr (0, 1);
    3463       Expr _ve__dollar_tmp_m_602_m_32 = Expr.empty;
    3464       _ve__dollar_tmp_m_602_m_32 = _v_deref__arg16.subexpr ((0 + 1), _v_len___dollar_tmp_m_602_m_32);
     3548      Expr _ve__dollar_tmp_m_617_m_32 = Expr.empty;
     3549      _ve__dollar_tmp_m_617_m_32 = _v_deref__arg16.subexpr ((0 + 1), _v_len___dollar_tmp_m_617_m_32);
    34653550      _block3: {
    34663551        _block3__branch1: {
     
    34943579        if (!_vs_var__tag.termEquals (_c_150, 0))
    34953580        {
    3496           throw new RefalException ("rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
     3581          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Term_Ref_To_JBC_With_Type", "Unexpected fail");
    34973582        }
    34983583      }
     
    35303615            break _block2;
    35313616          }
    3532           throw new RefalException (new Expr ((Comparable) Expr.concat (_c_151, _vs_ObjectSymbol)));
     3617          throw new RefalException (new Expr ((Comparable<?>) Expr.concat (_c_151, _vs_ObjectSymbol)));
    35333618        }
    35343619        break _block1;
     
    37023787    if (_v_len1 < _v_len2)
    37033788    {
    3704       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3789      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37053790    }
    37063791    int _v_len__args = (_v_len1 - _v_len2);
     
    37083793    if (_v_compose1.isSymbolAt ((0 + 1 + 1)))
    37093794    {
    3710       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3795      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37113796    }
    37123797    Expr _v_deref__compose1 = (Expr) _v_compose1.at ((0 + 1 + 1));
     
    37153800    if (_v_len3 < _v_len4)
    37163801    {
    3717       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3802      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37183803    }
    37193804    int _v_len__arg = (_v_len3 - _v_len4);
    37203805    if (!_v_compose1.isSymbolAt (0))
    37213806    {
    3722       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3807      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37233808    }
    37243809    if (!_v_compose1.isSymbolAt ((0 + 1)))
    37253810    {
    3726       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3811      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37273812    }
    37283813    Expr _vs_arg2java = Expr.empty;
     
    37703855      if (!_vs_op.termEquals (_c_171, 0))
    37713856      {
    3772         throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3857        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37733858      }
    37743859      _vs_jbcop = _c_172;
     
    37773862    if (!refal.plus.Apply.Apply (_vs_arg2java, _ve_arg, _v_Apply1))
    37783863    {
    3779       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3864      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    37803865    }
    37813866    int _v_len5 = _v_Apply1.getExpr ().length ();
     
    37833868    if (_v_len5 < _v_len6)
    37843869    {
    3785       throw new RefalException ("rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
    3786     }
    3787     int _v_len___dollar_tmp_m_639_m_31 = (_v_len5 - _v_len6);
    3788     Expr _ve__dollar_tmp_m_639_m_31 = Expr.empty;
    3789     _ve__dollar_tmp_m_639_m_31 = _v_Apply1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_639_m_31);
     3870      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Infix_To_JBC", "Unexpected fail");
     3871    }
     3872    int _v_len___dollar_tmp_m_654_m_31 = (_v_len5 - _v_len6);
     3873    Expr _ve__dollar_tmp_m_654_m_31 = Expr.empty;
     3874    _ve__dollar_tmp_m_654_m_31 = _v_Apply1.getExpr ().subexpr (0, _v_len___dollar_tmp_m_654_m_31);
    37903875    _block2__branch1: {
    37913876      if (_v_len__args < 1)
     
    37933878        break _block2__branch1;
    37943879      }
    3795       Expr.SplitIterator _va_16 = _ve_args.leftSplit(0);
    3796       _exit1: _continue1: for ( ; ; _va_16.next ())
     3880      Expr.SplitIterator _va_17 = _ve_args.leftSplit(0);
     3881      _exit1: _continue1: for ( ; ; _va_17.next ())
    37973882      {
    3798         Expr _ve__dollar_tmp_m_641_m_15 = _va_16.getLeft();
    3799         Expr _v_lsplit__args = _va_16.getRight();
    3800         if (!_va_16.isValid ())
     3883        Expr _ve__dollar_tmp_m_656_m_15 = _va_17.getLeft();
     3884        Expr _v_lsplit__args = _va_17.getRight();
     3885        if (!_va_17.isValid ())
    38013886        {
    38023887          break _block2__branch1;
     
    38083893          break _block2__branch1;
    38093894        }
    3810         int _v_len___dollar_tmp_m_641_m_26 = (_v_len7 - _v_len8);
     3895        int _v_len___dollar_tmp_m_656_m_26 = (_v_len7 - _v_len8);
    38113896        if (_v_lsplit__args.isSymbolAt (0))
    38123897        {
     
    38213906        }
    38223907        int _v_len__arg2 = (_v_len9 - _v_len10);
    3823         Expr _ve__dollar_tmp_m_641_m_26 = Expr.empty;
    3824         _ve__dollar_tmp_m_641_m_26 = _v_lsplit__args.subexpr ((0 + 1), _v_len___dollar_tmp_m_641_m_26);
     3908        Expr _ve__dollar_tmp_m_656_m_26 = Expr.empty;
     3909        _ve__dollar_tmp_m_656_m_26 = _v_lsplit__args.subexpr ((0 + 1), _v_len___dollar_tmp_m_656_m_26);
    38253910        Expr _ve_arg2 = Expr.empty;
    38263911        _ve_arg2 = _v_deref__lsplit__args.subexpr (0, _v_len__arg2);
     
    38363921          continue _continue1;
    38373922        }
    3838         int _v_len___dollar_tmp_m_642_m_36 = (_v_len11 - _v_len12);
    3839         Expr _ve__dollar_tmp_m_642_m_36 = Expr.empty;
    3840         _ve__dollar_tmp_m_642_m_36 = _v_Apply2.getExpr ().subexpr (0, _v_len___dollar_tmp_m_642_m_36);
     3923        int _v_len___dollar_tmp_m_657_m_36 = (_v_len11 - _v_len12);
     3924        Expr _ve__dollar_tmp_m_657_m_36 = Expr.empty;
     3925        _ve__dollar_tmp_m_657_m_36 = _v_Apply2.getExpr ().subexpr (0, _v_len___dollar_tmp_m_657_m_36);
    38413926        Result _gs_auxcall1 = new Result (Expr.empty);
    38423927        MV (_gs_auxcall1);
     
    39324017            break _block2__branch1;
    39334018          }
    3934           Expr.SplitIterator _va_17 = _ve_args.leftSplit(0);
    3935           _exit1: _continue1: for ( ; ; _va_17.next ())
    3936           {
    3937             Expr _ve__dollar_tmp_m_651_m_17 = _va_17.getLeft();
    3938             Expr _v_lsplit__args = _va_17.getRight();
    3939             if (!_va_17.isValid ())
     4019          Expr.SplitIterator _va_18 = _ve_args.leftSplit(0);
     4020          _exit1: _continue1: for ( ; ; _va_18.next ())
     4021          {
     4022            Expr _ve__dollar_tmp_m_666_m_17 = _va_18.getLeft();
     4023            Expr _v_lsplit__args = _va_18.getRight();
     4024            if (!_va_18.isValid ())
    39404025            {
    39414026              break _block2__branch1;
     
    39474032              break _block2__branch1;
    39484033            }
    3949             int _v_len___dollar_tmp_m_651_m_27 = (_v_len7 - _v_len8);
     4034            int _v_len___dollar_tmp_m_666_m_27 = (_v_len7 - _v_len8);
    39504035            if (_v_lsplit__args.isSymbolAt (0))
    39514036            {
     
    39604045            }
    39614046            int _v_len__arg = (_v_len9 - _v_len10);
    3962             Expr _ve__dollar_tmp_m_651_m_27 = Expr.empty;
    3963             _ve__dollar_tmp_m_651_m_27 = _v_lsplit__args.subexpr ((0 + 1), _v_len___dollar_tmp_m_651_m_27);
     4047            Expr _ve__dollar_tmp_m_666_m_27 = Expr.empty;
     4048            _ve__dollar_tmp_m_666_m_27 = _v_lsplit__args.subexpr ((0 + 1), _v_len___dollar_tmp_m_666_m_27);
    39644049            Expr _ve_arg = Expr.empty;
    39654050            _ve_arg = _v_deref__lsplit__args.subexpr (0, _v_len__arg);
     
    39724057            break _block3__branch1;
    39734058          }
    3974           Expr.SplitIterator _va_18 = _ve_ress.leftSplit(0);
    3975           _exit2: _continue2: for ( ; ; _va_18.next ())
    3976           {
    3977             Expr _ve__dollar_tmp_m_656_m_17 = _va_18.getLeft();
    3978             Expr _v_lsplit__ress = _va_18.getRight();
    3979             if (!_va_18.isValid ())
     4059          Expr.SplitIterator _va_19 = _ve_ress.leftSplit(0);
     4060          _exit2: _continue2: for ( ; ; _va_19.next ())
     4061          {
     4062            Expr _ve__dollar_tmp_m_671_m_17 = _va_19.getLeft();
     4063            Expr _v_lsplit__ress = _va_19.getRight();
     4064            if (!_va_19.isValid ())
    39804065            {
    39814066              break _block3__branch1;
     
    39874072              break _block3__branch1;
    39884073            }
    3989             int _v_len___dollar_tmp_m_656_m_25 = (_v_len11 - _v_len12);
     4074            int _v_len___dollar_tmp_m_671_m_25 = (_v_len11 - _v_len12);
    39904075            Expr _vt_var = Expr.empty;
    39914076            _vt_var = _v_lsplit__ress.subexpr (0, 1);
    3992             Expr _ve__dollar_tmp_m_656_m_25 = Expr.empty;
    3993             _ve__dollar_tmp_m_656_m_25 = _v_lsplit__ress.subexpr ((0 + 1), _v_len___dollar_tmp_m_656_m_25);
     4077            Expr _ve__dollar_tmp_m_671_m_25 = Expr.empty;
     4078            _ve__dollar_tmp_m_671_m_25 = _v_lsplit__ress.subexpr ((0 + 1), _v_len___dollar_tmp_m_671_m_25);
    39944079            Result _v_Lookup__Var1 = new Result (Expr.empty);
    39954080            Result _v_Lookup__Var2 = new Result (Expr.empty);
     
    40064091                  break _block4__branch1;
    40074092                }
    4008                 Expr _vs__dollar_tmp_m_658_m_17 = Expr.empty;
    4009                 _vs__dollar_tmp_m_658_m_17 = _v_compose1.subexpr ((0 + 1), 1);
     4093                Expr _vs__dollar_tmp_m_673_m_17 = Expr.empty;
     4094                _vs__dollar_tmp_m_673_m_17 = _v_compose1.subexpr ((0 + 1), 1);
    40104095                Result _vs_j = new Result (Expr.empty);
    40114096                Bind_TMP_Var (_vt_var, _vs_j);
     
    40304115              if (!_c_64.termEquals (_v_compose2, 0))
    40314116              {
    4032                 throw new RefalException ("rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
     4117                throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
    40334118              }
    40344119              if (!_v_compose2.isSymbolAt ((0 + 1)))
    40354120              {
    4036                 throw new RefalException ("rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
     4121                throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
    40374122              }
    40384123              Expr _vs_i = Expr.empty;
     
    40444129          }
    40454130        }
    4046         Result _gs_auxcall7 = new Result (Expr.empty);
    4047         MV (_gs_auxcall7);
    4048         Result _gs_auxcall8 = new Result (Expr.empty);
    4049         Result _gs_auxcall9 = new Result (Expr.empty);
    4050         GetJBCQName (_ve_module, _vs_name, _gs_auxcall8, _gs_auxcall9);
    4051         org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall7.getExpr (), _c_15, _gs_auxcall8.getExpr (), _gs_auxcall9.getExpr (), _vs_desc.getExpr ());
    4052         _block5__branch1: {
    4053           if (_v_len__ress < 1)
    4054           {
    4055             break _block5__branch1;
    4056           }
    4057           Expr.SplitIterator _va_19 = _ve_ress.leftSplit(0);
    4058           _exit3: _continue3: for ( ; ; _va_19.next ())
    4059           {
    4060             Expr _ve__dollar_tmp_m_671_m_17 = _va_19.getLeft();
    4061             Expr _v_lsplit__ress2 = _va_19.getRight();
    4062             if (!_va_19.isValid ())
    4063             {
    4064               break _block5__branch1;
    4065             }
    4066             int _v_len13 = _v_lsplit__ress2.length ();
     4131        _block5: {
     4132          _block5__branch1: {
     4133            Result _v_Get1 = new Result (Expr.empty);
     4134            refal.plus.Box.Get (MethodCallList, _v_Get1);
     4135            int _v_len13 = _v_Get1.getExpr ().length ();
    40674136            int _v_len14 = 1;
    40684137            if (_v_len13 < _v_len14)
     
    40704139              break _block5__branch1;
    40714140            }
    4072             int _v_len___dollar_tmp_m_671_m_25 = (_v_len13 - _v_len14);
     4141            int _v_len__tail = (_v_len13 - _v_len14);
     4142            if (!_v_Get1.getExpr ().isSymbolAt (0))
     4143            {
     4144              break _block5__branch1;
     4145            }
     4146            Expr _vs_lineNumber = Expr.empty;
     4147            _vs_lineNumber = _v_Get1.getExpr ().subexpr (0, 1);
     4148            Expr _ve_tail = Expr.empty;
     4149            _ve_tail = _v_Get1.getExpr ().subexpr ((0 + 1), _v_len__tail);
     4150            refal.plus.Box.Store (MethodCallList, _ve_tail);
     4151            Result _vs_line = new Result (Expr.empty);
     4152            org.refal.plus.wrappers.org.objectweb.asm.Label.Label (_vs_line);
     4153            Result _gs_auxcall7 = new Result (Expr.empty);
     4154            MV (_gs_auxcall7);
     4155            org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitLabel (_gs_auxcall7.getExpr (), _vs_line.getExpr ());
     4156            Result _gs_auxcall8 = new Result (Expr.empty);
     4157            MV (_gs_auxcall8);
     4158            org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitLineNumber (_gs_auxcall8.getExpr (), _vs_lineNumber, _vs_line.getExpr ());
     4159            break _block5;
     4160          }
     4161        }
     4162        Result _gs_auxcall9 = new Result (Expr.empty);
     4163        MV (_gs_auxcall9);
     4164        Result _gs_auxcall10 = new Result (Expr.empty);
     4165        Result _gs_auxcall11 = new Result (Expr.empty);
     4166        GetJBCQName (_ve_module, _vs_name, _gs_auxcall10, _gs_auxcall11);
     4167        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall9.getExpr (), _c_15, _gs_auxcall10.getExpr (), _gs_auxcall11.getExpr (), _vs_desc.getExpr ());
     4168        _block6__branch1: {
     4169          if (_v_len__ress < 1)
     4170          {
     4171            break _block6__branch1;
     4172          }
     4173          Expr.SplitIterator _va_20 = _ve_ress.leftSplit(0);
     4174          _exit3: _continue3: for ( ; ; _va_20.next ())
     4175          {
     4176            Expr _ve__dollar_tmp_m_694_m_17 = _va_20.getLeft();
     4177            Expr _v_lsplit__ress2 = _va_20.getRight();
     4178            if (!_va_20.isValid ())
     4179            {
     4180              break _block6__branch1;
     4181            }
     4182            int _v_len15 = _v_lsplit__ress2.length ();
     4183            int _v_len16 = 1;
     4184            if (_v_len15 < _v_len16)
     4185            {
     4186              break _block6__branch1;
     4187            }
     4188            int _v_len___dollar_tmp_m_694_m_25 = (_v_len15 - _v_len16);
    40734189            Expr _vt_var = Expr.empty;
    40744190            _vt_var = _v_lsplit__ress2.subexpr (0, 1);
    4075             Expr _ve__dollar_tmp_m_671_m_25 = Expr.empty;
    4076             _ve__dollar_tmp_m_671_m_25 = _v_lsplit__ress2.subexpr ((0 + 1), _v_len___dollar_tmp_m_671_m_25);
     4191            Expr _ve__dollar_tmp_m_694_m_25 = Expr.empty;
     4192            _ve__dollar_tmp_m_694_m_25 = _v_lsplit__ress2.subexpr ((0 + 1), _v_len___dollar_tmp_m_694_m_25);
    40774193            Result _v_Lookup__Var3 = new Result (Expr.empty);
    40784194            Result _v_Lookup__Var4 = new Result (Expr.empty);
     
    40914207            Result _vs_j = new Result (Expr.empty);
    40924208            Lookup_TMP_Var (_vt_var, _vs_j);
    4093             Result _gs_auxcall10 = new Result (Expr.empty);
    4094             MV (_gs_auxcall10);
    4095             org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall10.getExpr (), _c_13, _vs_j.getExpr ());
    4096             Result _gs_auxcall11 = new Result (Expr.empty);
    4097             MV (_gs_auxcall11);
    4098             org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall11.getExpr (), _c_79, _c_20, _c_109, _c_100);
    40994209            Result _gs_auxcall12 = new Result (Expr.empty);
    41004210            MV (_gs_auxcall12);
    4101             org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall12.getExpr (), _c_78, _vs_i);
     4211            org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall12.getExpr (), _c_13, _vs_j.getExpr ());
     4212            Result _gs_auxcall13 = new Result (Expr.empty);
     4213            MV (_gs_auxcall13);
     4214            org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall13.getExpr (), _c_79, _c_20, _c_109, _c_100);
     4215            Result _gs_auxcall14 = new Result (Expr.empty);
     4216            MV (_gs_auxcall14);
     4217            org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall14.getExpr (), _c_78, _vs_i);
    41024218          }
    41034219        }
     
    41114227        }
    41124228        Expr _v_deref__arg12 = (Expr) _gt_arg1.at (0);
    4113         int _v_len15 = _v_deref__arg12.length ();
    4114         int _v_len16 = 1;
    4115         if (_v_len15 < _v_len16)
     4229        int _v_len17 = _v_deref__arg12.length ();
     4230        int _v_len18 = 1;
     4231        if (_v_len17 < _v_len18)
    41164232        {
    41174233          break _block1__branch2;
    41184234        }
    4119         int _v_len__expr = (_v_len15 - _v_len16);
     4235        int _v_len__expr = (_v_len17 - _v_len18);
    41204236        if (!_c_174.termEquals (_v_deref__arg12, 0))
    41214237        {
     
    41254241        _ve_expr = _v_deref__arg12.subexpr ((0 + 1), _v_len__expr);
    41264242        Result _vs_i = new Result (Expr.empty);
    4127         Result _vs__dollar_tmp_m_680_m_38 = new Result (Expr.empty);
    4128         Result _vs__dollar_tmp_m_680_m_40 = new Result (Expr.empty);
    4129         Lookup_Iter_Var (_ve_expr, _vs_i, _vs__dollar_tmp_m_680_m_38, _vs__dollar_tmp_m_680_m_40);
    4130         Result _gs_auxcall13 = new Result (Expr.empty);
    4131         MV (_gs_auxcall13);
    4132         org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall13.getExpr (), _c_13, _vs_i.getExpr ());
    4133         Result _gs_auxcall14 = new Result (Expr.empty);
    4134         MV (_gs_auxcall14);
    4135         org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall14.getExpr (), _c_79, _c_98, _c_175, _c_176);
     4243        Result _vs__dollar_tmp_m_703_m_38 = new Result (Expr.empty);
     4244        Result _vs__dollar_tmp_m_703_m_40 = new Result (Expr.empty);
     4245        Lookup_Iter_Var (_ve_expr, _vs_i, _vs__dollar_tmp_m_703_m_38, _vs__dollar_tmp_m_703_m_40);
     4246        Result _gs_auxcall15 = new Result (Expr.empty);
     4247        MV (_gs_auxcall15);
     4248        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitVarInsn (_gs_auxcall15.getExpr (), _c_13, _vs_i.getExpr ());
     4249        Result _gs_auxcall16 = new Result (Expr.empty);
     4250        MV (_gs_auxcall16);
     4251        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall16.getExpr (), _c_79, _c_98, _c_175, _c_176);
    41364252        _v_res1.assign (_c_120);
    41374253        break _block1;
     
    41434259        }
    41444260        Expr _v_deref__arg13 = (Expr) _gt_arg1.at (0);
    4145         int _v_len17 = _v_deref__arg13.length ();
    4146         int _v_len18 = 2;
    4147         if (_v_len17 < _v_len18)
     4261        int _v_len19 = _v_deref__arg13.length ();
     4262        int _v_len20 = 2;
     4263        if (_v_len19 < _v_len20)
    41484264        {
    41494265          break _block1__branch3;
    41504266        }
    4151         int _v_len__expr2 = (_v_len17 - _v_len18);
     4267        int _v_len__expr2 = (_v_len19 - _v_len20);
    41524268        if (_v_deref__arg13.isSymbolAt ((0 + 1 + _v_len__expr2)))
    41534269        {
     
    41554271        }
    41564272        Expr _v_deref__deref__arg13 = (Expr) _v_deref__arg13.at ((0 + 1 + _v_len__expr2));
    4157         int _v_len19 = _v_deref__deref__arg13.length ();
    4158         int _v_len20 = 0;
    4159         if (_v_len19 < _v_len20)
     4273        int _v_len21 = _v_deref__deref__arg13.length ();
     4274        int _v_len22 = 0;
     4275        if (_v_len21 < _v_len22)
    41604276        {
    41614277          break _block1__branch3;
    41624278        }
    4163         int _v_len__pos = (_v_len19 - _v_len20);
     4279        int _v_len__pos = (_v_len21 - _v_len22);
    41644280        if (!_c_177.termEquals (_v_deref__arg13, 0))
    41654281        {
     
    41724288        Expr_Ref_To_JBC (_ve_expr);
    41734289        Expr_Int_To_JBC (_ve_pos);
    4174         Result _gs_auxcall15 = new Result (Expr.empty);
    4175         MV (_gs_auxcall15);
    4176         org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall15.getExpr (), _c_79, _c_29, _c_178, _c_179);
     4290        Result _gs_auxcall17 = new Result (Expr.empty);
     4291        MV (_gs_auxcall17);
     4292        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall17.getExpr (), _c_79, _c_29, _c_178, _c_179);
    41774293        _v_res1.assign (_c_180);
    41784294        break _block1;
     
    41844300        }
    41854301        Expr _v_deref__arg14 = (Expr) _gt_arg1.at (0);
    4186         int _v_len21 = _v_deref__arg14.length ();
    4187         int _v_len22 = 3;
    4188         if (_v_len21 < _v_len22)
     4302        int _v_len23 = _v_deref__arg14.length ();
     4303        int _v_len24 = 3;
     4304        if (_v_len23 < _v_len24)
    41894305        {
    41904306          break _block1__branch4;
    41914307        }
    4192         int _v_len__expr1 = (_v_len21 - _v_len22);
     4308        int _v_len__expr1 = (_v_len23 - _v_len24);
    41934309        if (_v_deref__arg14.isSymbolAt ((0 + 1 + _v_len__expr1)))
    41944310        {
     
    42014317        Expr _v_deref__deref__arg14 = (Expr) _v_deref__arg14.at ((0 + 1 + _v_len__expr1));
    42024318        Expr _v_deref__deref__arg142 = (Expr) _v_deref__arg14.at ((0 + 1 + _v_len__expr1 + 1));
    4203         int _v_len23 = _v_deref__deref__arg14.length ();
    4204         int _v_len24 = 0;
    4205         if (_v_len23 < _v_len24)
    4206         {
    4207           break _block1__branch4;
    4208         }
    4209         int _v_len__expr22 = (_v_len23 - _v_len24);
    4210         int _v_len25 = _v_deref__deref__arg142.length ();
     4319        int _v_len25 = _v_deref__deref__arg14.length ();
    42114320        int _v_len26 = 0;
    42124321        if (_v_len25 < _v_len26)
     
    42144323          break _block1__branch4;
    42154324        }
    4216         int _v_len__pos2 = (_v_len25 - _v_len26);
     4325        int _v_len__expr22 = (_v_len25 - _v_len26);
     4326        int _v_len27 = _v_deref__deref__arg142.length ();
     4327        int _v_len28 = 0;
     4328        if (_v_len27 < _v_len28)
     4329        {
     4330          break _block1__branch4;
     4331        }
     4332        int _v_len__pos2 = (_v_len27 - _v_len28);
    42174333        if (!_c_181.termEquals (_v_deref__arg14, 0))
    42184334        {
     
    42284344        Expr_Ref_To_JBC (_ve_expr2);
    42294345        Expr_Int_To_JBC (_ve_pos);
    4230         Result _gs_auxcall16 = new Result (Expr.empty);
    4231         MV (_gs_auxcall16);
    4232         org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall16.getExpr (), _c_79, _c_29, _c_182, _c_183);
     4346        Result _gs_auxcall18 = new Result (Expr.empty);
     4347        MV (_gs_auxcall18);
     4348        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall18.getExpr (), _c_79, _c_29, _c_182, _c_183);
    42334349        _v_res1.assign (_c_180);
    42344350        break _block1;
     
    42404356        }
    42414357        Expr _v_deref__arg15 = (Expr) _gt_arg1.at (0);
    4242         int _v_len27 = _v_deref__arg15.length ();
    4243         int _v_len28 = 3;
    4244         if (_v_len27 < _v_len28)
     4358        int _v_len29 = _v_deref__arg15.length ();
     4359        int _v_len30 = 3;
     4360        if (_v_len29 < _v_len30)
    42454361        {
    42464362          break _block1__branch5;
    42474363        }
    4248         int _v_len__expr12 = (_v_len27 - _v_len28);
     4364        int _v_len__expr12 = (_v_len29 - _v_len30);
    42494365        if (_v_deref__arg15.isSymbolAt ((0 + 1 + _v_len__expr12)))
    42504366        {
     
    42574373        Expr _v_deref__deref__arg15 = (Expr) _v_deref__arg15.at ((0 + 1 + _v_len__expr12));
    42584374        Expr _v_deref__deref__arg152 = (Expr) _v_deref__arg15.at ((0 + 1 + _v_len__expr12 + 1));
    4259         int _v_len29 = _v_deref__deref__arg15.length ();
    4260         int _v_len30 = 0;
    4261         if (_v_len29 < _v_len30)
    4262         {
    4263           break _block1__branch5;
    4264         }
    4265         int _v_len__expr23 = (_v_len29 - _v_len30);
    4266         int _v_len31 = _v_deref__deref__arg152.length ();
     4375        int _v_len31 = _v_deref__deref__arg15.length ();
    42674376        int _v_len32 = 0;
    42684377        if (_v_len31 < _v_len32)
     
    42704379          break _block1__branch5;
    42714380        }
    4272         int _v_len__pos3 = (_v_len31 - _v_len32);
     4381        int _v_len__expr23 = (_v_len31 - _v_len32);
     4382        int _v_len33 = _v_deref__deref__arg152.length ();
     4383        int _v_len34 = 0;
     4384        if (_v_len33 < _v_len34)
     4385        {
     4386          break _block1__branch5;
     4387        }
     4388        int _v_len__pos3 = (_v_len33 - _v_len34);
    42734389        if (!_c_184.termEquals (_v_deref__arg15, 0))
    42744390        {
     
    42844400        Expr_Ref_To_JBC (_ve_expr2);
    42854401        Expr_Int_To_JBC (_ve_pos);
    4286         Result _gs_auxcall17 = new Result (Expr.empty);
    4287         MV (_gs_auxcall17);
    4288         org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall17.getExpr (), _c_79, _c_29, _c_185, _c_183);
     4402        Result _gs_auxcall19 = new Result (Expr.empty);
     4403        MV (_gs_auxcall19);
     4404        org.refal.plus.wrappers.org.objectweb.asm.MethodVisitor.MVvisitMethodInsn (_gs_auxcall19.getExpr (), _c_79, _c_29, _c_185, _c_183);
    42894405        _v_res1.assign (_c_180);
    42904406        break _block1;
     
    42924408      if (_gt_arg1.isSymbolAt (0))
    42934409      {
    4294         throw new RefalException ("rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
     4410        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
    42954411      }
    42964412      Expr _v_deref__arg16 = (Expr) _gt_arg1.at (0);
    42974413      if (_v_deref__arg16.length () != 2)
    42984414      {
    4299         throw new RefalException ("rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
     4415        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
    43004416      }
    43014417      if (!_c_186.termEquals (_v_deref__arg16, 0))
    43024418      {
    4303         throw new RefalException ("rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
     4419        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
    43044420      }
    43054421      Expr _vt_cond = Expr.empty;
     
    43074423      Result _v_Cond__To__JBC1 = new Result (Expr.empty);
    43084424      Cond_To_JBC (_vt_cond, _v_Cond__To__JBC1);
    4309       _block6: {
    4310         _block6__branch1: {
     4425      _block7: {
     4426        _block7__branch1: {
    43114427          if (!_v_Cond__To__JBC1.getExpr ().termEquals (org.refal.plus.wrappers.org.objectweb.asm.Opcodes.IFEQ, 0))
    43124428          {
    4313             break _block6__branch1;
     4429            break _block7__branch1;
    43144430          }
    43154431          _v_res1.assign (_c_120);
    4316           break _block6;
     4432          break _block7;
    43174433        }
    43184434        if (!_v_Cond__To__JBC1.getExpr ().termEquals (org.refal.plus.wrappers.org.objectweb.asm.Opcodes.IFNE, 0))
    43194435        {
    4320           throw new RefalException ("rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
     4436          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Cond_To_JBC", "Unexpected fail");
    43214437        }
    43224438        _v_res1.assign (_c_180);
     
    43384454      if (_ge_arg1.length () != 1)
    43394455      {
    4340         throw new RefalException ("rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
     4456        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
    43414457      }
    43424458      if (_ge_arg1.isSymbolAt (0))
    43434459      {
    4344         throw new RefalException ("rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
     4460        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
    43454461      }
    43464462      Expr _v_deref__arg1 = (Expr) _ge_arg1.at (0);
     
    43494465      if (_v_len1 < _v_len2)
    43504466      {
    4351         throw new RefalException ("rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
     4467        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
    43524468      }
    43534469      int _v_len__expr = (_v_len1 - _v_len2);
    43544470      if (!_v_deref__arg1.isSymbolAt (0))
    43554471      {
    4356         throw new RefalException ("rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
     4472        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
    43574473      }
    43584474      Expr _vs_tag = Expr.empty;
     
    43724488        if (!_vs_tag.termEquals (_c_97, 0))
    43734489        {
    4374           throw new RefalException ("rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
     4490          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Step_To_JBC", "Unexpected fail");
    43754491        }
    43764492        _vs_m = _c_188;
    43774493      }
    43784494      Result _vs_i = new Result (Expr.empty);
    4379       Result _vs__dollar_tmp_m_716_m_38 = new Result (Expr.empty);
    4380       Result _vs__dollar_tmp_m_716_m_40 = new Result (Expr.empty);
    4381       Lookup_Iter_Var (_ve_expr, _vs_i, _vs__dollar_tmp_m_716_m_38, _vs__dollar_tmp_m_716_m_40);
     4495      Result _vs__dollar_tmp_m_739_m_38 = new Result (Expr.empty);
     4496      Result _vs__dollar_tmp_m_739_m_40 = new Result (Expr.empty);
     4497      Lookup_Iter_Var (_ve_expr, _vs_i, _vs__dollar_tmp_m_739_m_38, _vs__dollar_tmp_m_739_m_40);
    43824498      Result _gs_auxcall1 = new Result (Expr.empty);
    43834499      MV (_gs_auxcall1);
     
    44814597          if (_vt_name.isSymbolAt (0))
    44824598          {
    4483             throw new RefalException ("rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
     4599            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
    44844600          }
    44854601          Expr _v_deref__name2 = (Expr) _vt_name.at (0);
    44864602          if (_v_deref__name2.length () != 2)
    44874603          {
    4488             throw new RefalException ("rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
     4604            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
    44894605          }
    44904606          if (_v_deref__name2.isSymbolAt ((0 + 1)))
    44914607          {
    4492             throw new RefalException ("rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
     4608            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
    44934609          }
    44944610          Expr _v_deref__deref__name2 = (Expr) _v_deref__name2.at ((0 + 1));
     
    44974613          if (_v_len3 < _v_len4)
    44984614          {
    4499             throw new RefalException ("rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
    4500           }
    4501           int _v_len___dollar_tmp_m_731_m_17 = (_v_len3 - _v_len4);
     4615            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
     4616          }
     4617          int _v_len___dollar_tmp_m_754_m_17 = (_v_len3 - _v_len4);
    45024618          if (!_c_66.termEquals (_v_deref__name2, 0))
    45034619          {
    4504             throw new RefalException ("rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
    4505           }
    4506           Expr _ve__dollar_tmp_m_731_m_17 = Expr.empty;
    4507           _ve__dollar_tmp_m_731_m_17 = _v_deref__deref__name2.subexpr (0, _v_len___dollar_tmp_m_731_m_17);
     4620            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Expr_To_JBC", "Unexpected fail");
     4621          }
     4622          Expr _ve__dollar_tmp_m_754_m_17 = Expr.empty;
     4623          _ve__dollar_tmp_m_754_m_17 = _v_deref__deref__name2.subexpr (0, _v_len___dollar_tmp_m_754_m_17);
    45084624          Result _ge_auxcall2 = new Result (Expr.empty);
    45094625          refal.plus.Box.Get (Module_Name, _ge_auxcall2);
     
    45494665          break _block3__branch1;
    45504666        }
    4551         Expr.SplitIterator _va_20 = _ge_arg1__2.getExpr ().leftSplit(0);
    4552         _exit1: _continue1: for ( ; ; _va_20.next ())
    4553         {
    4554           Expr _ve__dollar_tmp_m_744_m_17 = _va_20.getLeft();
    4555           Expr _v_lsplit__arg1__2 = _va_20.getRight();
    4556           if (!_va_20.isValid ())
     4667        Expr.SplitIterator _va_21 = _ge_arg1__2.getExpr ().leftSplit(0);
     4668        _exit1: _continue1: for ( ; ; _va_21.next ())
     4669        {
     4670          Expr _ve__dollar_tmp_m_767_m_17 = _va_21.getLeft();
     4671          Expr _v_lsplit__arg1__2 = _va_21.getRight();
     4672          if (!_va_21.isValid ())
    45574673          {
    45584674            break _block3__branch1;
     
    45644680            break _block3__branch1;
    45654681          }
    4566           int _v_len___dollar_tmp_m_744_m_26 = (_v_len5 - _v_len6);
     4682          int _v_len___dollar_tmp_m_767_m_26 = (_v_len5 - _v_len6);
    45674683          Expr _vt_term = Expr.empty;
    45684684          _vt_term = _v_lsplit__arg1__2.subexpr (0, 1);
    4569           Expr _ve__dollar_tmp_m_744_m_26 = Expr.empty;
    4570           _ve__dollar_tmp_m_744_m_26 = _v_lsplit__arg1__2.subexpr ((0 + 1), _v_len___dollar_tmp_m_744_m_26);
     4685          Expr _ve__dollar_tmp_m_767_m_26 = Expr.empty;
     4686          _ve__dollar_tmp_m_767_m_26 = _v_lsplit__arg1__2.subexpr ((0 + 1), _v_len___dollar_tmp_m_767_m_26);
    45714687          Const_Term_To_JBC (_vt_term);
    45724688          Result _gs_auxcall15 = new Result (Expr.empty);
     
    46554771            break _block2__branch1;
    46564772          }
    4657           int _v_len___dollar_tmp_m_774_m_20 = (_v_len1 - _v_len2);
    4658           Expr _vv__dollar_tmp_m_774_m_20 = Expr.empty;
    4659           _vv__dollar_tmp_m_774_m_20 = _ve_chars.getExpr ().subexpr (0, _v_len___dollar_tmp_m_774_m_20);
    4660           _ve_res = Expr.concat (_ve_res, (Comparable) Expr.concat (_c_194, _ve_chars.getExpr ()));
     4773          int _v_len___dollar_tmp_m_797_m_20 = (_v_len1 - _v_len2);
     4774          Expr _vv__dollar_tmp_m_797_m_20 = Expr.empty;
     4775          _vv__dollar_tmp_m_797_m_20 = _ve_chars.getExpr ().subexpr (0, _v_len___dollar_tmp_m_797_m_20);
     4776          _ve_res = Expr.concat (_ve_res, (Comparable<?>) Expr.concat (_c_194, _ve_chars.getExpr ()));
    46614777          _ge_expr__0 = _ge_expr__0__2.getExpr ();
    46624778          break _block2;
     
    46664782        if (_v_len3 < _v_len4)
    46674783        {
    4668           throw new RefalException ("rfp_asail_jbc", "Convert_Const_Expr", "Unexpected fail");
     4784          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Convert_Const_Expr", "Unexpected fail");
    46694785        }
    46704786        int _v_len__rest = (_v_len3 - _v_len4);
     
    48054921            break _block1__branch3;
    48064922          }
    4807           int _v_len___dollar_tmp_m_791_m_15 = (_v_len7 - _v_len8);
     4923          int _v_len___dollar_tmp_m_814_m_15 = (_v_len7 - _v_len8);
    48084924          if (!_c_66.termEquals (_v_deref__arg14, 0))
    48094925          {
    48104926            break _block1__branch3;
    48114927          }
    4812           Expr _ve__dollar_tmp_m_791_m_15 = Expr.empty;
    4813           _ve__dollar_tmp_m_791_m_15 = _v_deref__deref__arg14.subexpr (0, _v_len___dollar_tmp_m_791_m_15);
     4928          Expr _ve__dollar_tmp_m_814_m_15 = Expr.empty;
     4929          _ve__dollar_tmp_m_814_m_15 = _v_deref__deref__arg14.subexpr (0, _v_len___dollar_tmp_m_814_m_15);
    48144930          Result _ge_auxcall7 = new Result (Expr.empty);
    48154931          refal.plus.Box.Get (Module_Name, _ge_auxcall7);
     
    48895005        Result _gs_auxcall17 = new Result (Expr.empty);
    48905006        GetJBCQName (_ve_module, _vs_name, _gs_auxcall16, _gs_auxcall17);
    4891         refal.plus.Box.Put (Func_Refs, new Expr ((Comparable) Expr.getConcatenator ().toRight (_gs_auxcall15.getExpr ()).toRight (_gs_auxcall16.getExpr ()).toRight (_gs_auxcall17.getExpr ()).toRight (_vs_func).yield ()));
     5007        refal.plus.Box.Put (Func_Refs, new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_gs_auxcall15.getExpr ()).toRight (_gs_auxcall16.getExpr ()).toRight (_gs_auxcall17.getExpr ()).toRight (_vs_func).yield ()));
    48925008        Result _gs_auxcall18 = new Result (Expr.empty);
    48935009        MV (_gs_auxcall18);
     
    49125028      if (!_gt_arg1.isSymbolAt (0))
    49135029      {
    4914         throw new RefalException ("rfp_asail_jbc", "Const_Term_To_JBC", "Unexpected fail");
     5030        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Term_To_JBC", "Unexpected fail");
    49155031      }
    49165032      Expr _vs_sym = Expr.empty;
     
    49285044        if (!refal.plus.Class.IsWord (_vs_sym))
    49295045        {
    4930           throw new RefalException ("rfp_asail_jbc", "Const_Term_To_JBC", "Unexpected fail");
     5046          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Const_Term_To_JBC", "Unexpected fail");
    49315047        }
    49325048        _vs_meth = _c_198;
     
    49845100      if (!_vs_type.getExpr ().termEquals (_c_74, 0))
    49855101      {
    4986         throw new RefalException ("rfp_asail_jbc", "Var_To_JBC", "Unexpected fail");
     5102        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "Var_To_JBC", "Unexpected fail");
    49875103      }
    49885104      Result _gs_auxcall4 = new Result (Expr.empty);
     
    50175133    if (!refal.plus.Access.L (_vs_num, _ve_rfArgTypes, _v_L1))
    50185134    {
    5019       throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5135      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    50205136    }
    50215137    _block1: {
     
    50325148          break _block1__branch1;
    50335149        }
    5034         int _v_len___dollar_tmp_m_836_m_12 = (_v_len1 - _v_len2);
     5150        int _v_len___dollar_tmp_m_859_m_12 = (_v_len1 - _v_len2);
    50355151        if (!_c_147.termEquals (_v_deref__L1, 0))
    50365152        {
    50375153          break _block1__branch1;
    50385154        }
    5039         Expr _ve__dollar_tmp_m_836_m_12 = Expr.empty;
    5040         _ve__dollar_tmp_m_836_m_12 = _v_deref__L1.subexpr ((0 + 1), _v_len___dollar_tmp_m_836_m_12);
     5155        Expr _ve__dollar_tmp_m_859_m_12 = Expr.empty;
     5156        _ve__dollar_tmp_m_859_m_12 = _v_deref__L1.subexpr ((0 + 1), _v_len___dollar_tmp_m_859_m_12);
    50415157        Result _gs_auxcall2 = new Result (Expr.empty);
    50425158        MV (_gs_auxcall2);
     
    51275243              Expr _ve_intName = Expr.empty;
    51285244              _ve_intName = _v_ToChars1.getExpr ().subexpr ((0 + 1), _v_len__intName);
    5129               Result _va_21 = new Result ();
    5130               refal.plus.Convert.ToWord (_ve_intName, _va_21);
    5131               _vs_javaArgType2 = _va_21.getExpr ();
     5245              Result _va_22 = new Result ();
     5246              refal.plus.Convert.ToWord (_ve_intName, _va_22);
     5247              _vs_javaArgType2 = _va_22.getExpr ();
    51325248              break _block4;
    51335249            }
     
    51425258      if (_v_L1.getExpr ().isSymbolAt (0))
    51435259      {
    5144         throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5260        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    51455261      }
    51465262      Expr _v_deref__L12 = (Expr) _v_L1.getExpr ().at (0);
     
    51495265      if (_v_len5 < _v_len6)
    51505266      {
    5151         throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    5152       }
    5153       int _v_len___dollar_tmp_m_850_m_12 = (_v_len5 - _v_len6);
     5267        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5268      }
     5269      int _v_len___dollar_tmp_m_873_m_12 = (_v_len5 - _v_len6);
    51545270      if (!_c_149.termEquals (_v_deref__L12, 0))
    51555271      {
    5156         throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    5157       }
    5158       Expr _ve__dollar_tmp_m_850_m_12 = Expr.empty;
    5159       _ve__dollar_tmp_m_850_m_12 = _v_deref__L12.subexpr ((0 + 1), _v_len___dollar_tmp_m_850_m_12);
     5272        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5273      }
     5274      Expr _ve__dollar_tmp_m_873_m_12 = Expr.empty;
     5275      _ve__dollar_tmp_m_873_m_12 = _v_deref__L12.subexpr ((0 + 1), _v_len___dollar_tmp_m_873_m_12);
    51605276      Result _v_ToChars2 = new Result (Expr.empty);
    51615277      refal.plus.Convert.ToChars (_vs_javaArgType, _v_ToChars2);
     
    51645280      if (_v_len7 < _v_len8)
    51655281      {
    5166         throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5282        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    51675283      }
    51685284      int _v_len__elemType = (_v_len7 - _v_len8);
    51695285      if (!_c_218.termEquals (_v_ToChars2.getExpr (), 0))
    51705286      {
    5171         throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5287        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    51725288      }
    51735289      Expr _ve_elemType = Expr.empty;
     
    52485364              break _block7__branch1;
    52495365            }
    5250             int _v_len___dollar_tmp_m_859_m_45 = (_v_len9 - _v_len10);
     5366            int _v_len___dollar_tmp_m_882_m_45 = (_v_len9 - _v_len10);
    52515367            if (!_c_218.termEquals (_v_ToChars3.getExpr (), 0))
    52525368            {
    52535369              break _block7__branch1;
    52545370            }
    5255             Expr _ve__dollar_tmp_m_859_m_45 = Expr.empty;
    5256             _ve__dollar_tmp_m_859_m_45 = _v_ToChars3.getExpr ().subexpr ((0 + 1), _v_len___dollar_tmp_m_859_m_45);
     5371            Expr _ve__dollar_tmp_m_882_m_45 = Expr.empty;
     5372            _ve__dollar_tmp_m_882_m_45 = _v_ToChars3.getExpr ().subexpr ((0 + 1), _v_len___dollar_tmp_m_882_m_45);
    52575373            Result _gs_auxcall12 = new Result (Expr.empty);
    52585374            MV (_gs_auxcall12);
     
    52665382          if (_v_len11 < _v_len12)
    52675383          {
    5268             throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5384            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    52695385          }
    52705386          int _v_len__intName2 = (_v_len11 - _v_len12);
    52715387          if (!_c_217.termEquals (_v_ToChars4.getExpr (), 0))
    52725388          {
    5273             throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5389            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    52745390          }
    52755391          if (!_c_216.termEquals (_v_ToChars4.getExpr (), (0 + 1 + _v_len__intName2)))
    52765392          {
    5277             throw new RefalException ("rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
     5393            throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "PutArgToStack", "Unexpected fail");
    52785394          }
    52795395          Expr _ve_intName = Expr.empty;
     
    53105426            Expr _ve_intName = Expr.empty;
    53115427            _ve_intName = _v_ToChars5.getExpr ().subexpr ((0 + 1), _v_len__intName3);
    5312             Result _va_22 = new Result ();
    5313             refal.plus.Convert.ToWord (_ve_intName, _va_22);
    5314             _vs_javaArgType2 = _va_22.getExpr ();
     5428            Result _va_23 = new Result ();
     5429            refal.plus.Convert.ToWord (_ve_intName, _va_23);
     5430            _vs_javaArgType2 = _va_23.getExpr ();
    53155431            break _block8;
    53165432          }
     
    53585474            break _block2__branch1;
    53595475          }
    5360           int _v_len___dollar_tmp_m_880_m_14 = (_v_len1 - _v_len2);
     5476          int _v_len___dollar_tmp_m_903_m_14 = (_v_len1 - _v_len2);
    53615477          if (!_c_147.termEquals (_v_deref__rfResTypes, 0))
    53625478          {
    53635479            break _block2__branch1;
    53645480          }
    5365           Expr _ve__dollar_tmp_m_880_m_14 = Expr.empty;
    5366           _ve__dollar_tmp_m_880_m_14 = _v_deref__rfResTypes.subexpr ((0 + 1), _v_len___dollar_tmp_m_880_m_14);
     5481          Expr _ve__dollar_tmp_m_903_m_14 = Expr.empty;
     5482          _ve__dollar_tmp_m_903_m_14 = _v_deref__rfResTypes.subexpr ((0 + 1), _v_len___dollar_tmp_m_903_m_14);
    53675483          Result _gs_auxcall3 = new Result (Expr.empty);
    53685484          MV (_gs_auxcall3);
     
    53775493        if (_ve_rfResTypes.length () != 1)
    53785494        {
    5379           throw new RefalException ("rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
     5495          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
    53805496        }
    53815497        if (_ve_rfResTypes.isSymbolAt (0))
    53825498        {
    5383           throw new RefalException ("rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
     5499          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
    53845500        }
    53855501        Expr _v_deref__rfResTypes2 = (Expr) _ve_rfResTypes.at (0);
     
    53885504        if (_v_len3 < _v_len4)
    53895505        {
    5390           throw new RefalException ("rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
    5391         }
    5392         int _v_len___dollar_tmp_m_883_m_14 = (_v_len3 - _v_len4);
     5506          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
     5507        }
     5508        int _v_len___dollar_tmp_m_906_m_14 = (_v_len3 - _v_len4);
    53935509        if (!_c_149.termEquals (_v_deref__rfResTypes2, 0))
    53945510        {
    5395           throw new RefalException ("rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
    5396         }
    5397         Expr _ve__dollar_tmp_m_883_m_14 = Expr.empty;
    5398         _ve__dollar_tmp_m_883_m_14 = _v_deref__rfResTypes2.subexpr ((0 + 1), _v_len___dollar_tmp_m_883_m_14);
     5511          throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "GetResFromStack", "Unexpected fail");
     5512        }
     5513        Expr _ve__dollar_tmp_m_906_m_14 = Expr.empty;
     5514        _ve__dollar_tmp_m_906_m_14 = _v_deref__rfResTypes2.subexpr ((0 + 1), _v_len___dollar_tmp_m_906_m_14);
    53995515        Expr _gs_javaResType__5 = Expr.empty;
    54005516        _block3: {
     
    54085524              break _block3__branch1;
    54095525            }
    5410             int _v_len___dollar_tmp_m_885_m_42 = (_v_len5 - _v_len6);
     5526            int _v_len___dollar_tmp_m_908_m_42 = (_v_len5 - _v_len6);
    54115527            if (!_c_231.equals (_v_ToWord1.getExpr (), 0))
    54125528            {
    54135529              break _block3__branch1;
    54145530            }
    5415             Expr _ve__dollar_tmp_m_885_m_42 = Expr.empty;
    5416             _ve__dollar_tmp_m_885_m_42 = _v_ToWord1.getExpr ().subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_885_m_42);
     5531            Expr _ve__dollar_tmp_m_908_m_42 = Expr.empty;
     5532            _ve__dollar_tmp_m_908_m_42 = _v_ToWord1.getExpr ().subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_908_m_42);
    54175533            _gs_javaResType__5 = _c_232;
    54185534            break _block3;
     
    55765692    if (_v_len1 < _v_len2)
    55775693    {
    5578       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5694      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    55795695    }
    55805696    int _v_len__native = (_v_len1 - _v_len2);
    5581     Expr _v_compose1 = Expr.getConcatenator ().toRight (_gs_arg1).toRight (_gs_arg2).toRight (_gt_arg3).toRight ((Comparable) _ge_arg4).toRight ((Comparable) _ge_arg5).toRight (_ge_arg6).yield ();
     5697    Expr _v_compose1 = Expr.getConcatenator ().toRight (_gs_arg1).toRight (_gs_arg2).toRight (_gt_arg3).toRight ((Comparable<?>) _ge_arg4).toRight ((Comparable<?>) _ge_arg5).toRight (_ge_arg6).yield ();
    55825698    if (_v_compose1.isSymbolAt ((0 + 1 + 1 + 1)))
    55835699    {
    5584       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5700      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    55855701    }
    55865702    if (_v_compose1.isSymbolAt ((0 + 1 + 1 + 1 + 1)))
    55875703    {
    5588       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5704      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    55895705    }
    55905706    Expr _v_deref__compose1 = (Expr) _v_compose1.at ((0 + 1 + 1 + 1));
     
    55945710    if (_v_len3 < _v_len4)
    55955711    {
    5596       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5712      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    55975713    }
    55985714    int _v_len__in = (_v_len3 - _v_len4);
     
    56015717    if (_v_len5 < _v_len6)
    56025718    {
    5603       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5719      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    56045720    }
    56055721    int _v_len__out = (_v_len5 - _v_len6);
    56065722    if (!_v_compose1.isSymbolAt (0))
    56075723    {
    5608       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5724      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    56095725    }
    56105726    if (!_c_44.termEquals (_v_compose1, (0 + 1)))
    56115727    {
    5612       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5728      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    56135729    }
    56145730    Expr _vs_linkage = Expr.empty;
     
    56245740    if (_vt_qname.isSymbolAt (0))
    56255741    {
    5626       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5742      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    56275743    }
    56285744    Expr _v_deref__qname = (Expr) _vt_qname.at (0);
     
    56315747    if (_v_len7 < _v_len8)
    56325748    {
    5633       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
    5634     }
    5635     int _v_len___dollar_tmp_m_920_m_15 = (_v_len7 - _v_len8);
    5636     if (!_v_deref__qname.isSymbolAt ((0 + _v_len___dollar_tmp_m_920_m_15)))
    5637     {
    5638       throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
    5639     }
    5640     Expr _ve__dollar_tmp_m_920_m_15 = Expr.empty;
    5641     _ve__dollar_tmp_m_920_m_15 = _v_deref__qname.subexpr (0, _v_len___dollar_tmp_m_920_m_15);
     5749      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5750    }
     5751    int _v_len___dollar_tmp_m_943_m_15 = (_v_len7 - _v_len8);
     5752    if (!_v_deref__qname.isSymbolAt ((0 + _v_len___dollar_tmp_m_943_m_15)))
     5753    {
     5754      throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5755    }
     5756    Expr _ve__dollar_tmp_m_943_m_15 = Expr.empty;
     5757    _ve__dollar_tmp_m_943_m_15 = _v_deref__qname.subexpr (0, _v_len___dollar_tmp_m_943_m_15);
    56425758    Expr _vs_functionName = Expr.empty;
    5643     _vs_functionName = _v_deref__qname.subexpr ((0 + _v_len___dollar_tmp_m_920_m_15), 1);
     5759    _vs_functionName = _v_deref__qname.subexpr ((0 + _v_len___dollar_tmp_m_943_m_15), 1);
    56445760    _block1: {
    56455761      _block1__branch1: {
     
    56505766          break _block1__branch1;
    56515767        }
    5652         Expr.SplitIterator _va_23 = _v_Get1.getExpr ().leftSplit(0);
    5653         _exit1: _continue1: for ( ; ; _va_23.next ())
    5654         {
    5655           Expr _ve__dollar_tmp_m_921_m_21 = _va_23.getLeft();
    5656           Expr _v_lsplit__Get1 = _va_23.getRight();
    5657           if (!_va_23.isValid ())
     5768        Expr.SplitIterator _va_24 = _v_Get1.getExpr ().leftSplit(0);
     5769        _exit1: _continue1: for ( ; ; _va_24.next ())
     5770        {
     5771          Expr _ve__dollar_tmp_m_944_m_21 = _va_24.getLeft();
     5772          Expr _v_lsplit__Get1 = _va_24.getRight();
     5773          if (!_va_24.isValid ())
    56585774          {
    56595775            break _block1__branch1;
     
    56655781            break _block1__branch1;
    56665782          }
    5667           int _v_len___dollar_tmp_m_921_m_31 = (_v_len9 - _v_len10);
     5783          int _v_len___dollar_tmp_m_944_m_31 = (_v_len9 - _v_len10);
    56685784          if (!_vt_qname.termEquals (_v_lsplit__Get1, 0))
    56695785          {
    56705786            continue _continue1;
    56715787          }
    5672           Expr _ve__dollar_tmp_m_921_m_31 = Expr.empty;
    5673           _ve__dollar_tmp_m_921_m_31 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_921_m_31);
     5788          Expr _ve__dollar_tmp_m_944_m_31 = Expr.empty;
     5789          _ve__dollar_tmp_m_944_m_31 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_944_m_31);
    56745790          refal.plus.Box.Store (EntryName, _vs_functionName);
    56755791          break _exit1;
     
    57805896      if (_ve_javaArgTypes.getExpr ().length () != 1)
    57815897      {
    5782         throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5898        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    57835899      }
    57845900      if (_ve_javaArgTypes.getExpr ().isSymbolAt (0))
    57855901      {
    5786         throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5902        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    57875903      }
    57885904      Expr _v_deref__javaArgTypes = (Expr) _ve_javaArgTypes.getExpr ().at (0);
     
    57915907      if (_v_len11 < _v_len12)
    57925908      {
    5793         throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5909        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    57945910      }
    57955911      int _v_len__javaArgTypes2 = (_v_len11 - _v_len12);
     
    57995915      if (!refal.plus.List.Map (_c_251, Expr.empty, _ve_javaArgTypes2, _ge_javaArgTypes__3))
    58005916      {
    5801         throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5917        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    58025918      }
    58035919      _block6__branch1: {
     
    58065922          break _block6__branch1;
    58075923        }
    5808         Expr.SplitIterator _va_24 = _ge_javaArgTypes__3.getExpr ().leftSplit(0);
    5809         _exit2: _continue2: for ( ; ; _va_24.next ())
    5810         {
    5811           Expr _ve_head = _va_24.getLeft();
    5812           Expr _v_lsplit__javaArgTypes__3 = _va_24.getRight();
    5813           if (!_va_24.isValid ())
     5924        Expr.SplitIterator _va_25 = _ge_javaArgTypes__3.getExpr ().leftSplit(0);
     5925        _exit2: _continue2: for ( ; ; _va_25.next ())
     5926        {
     5927          Expr _ve_head = _va_25.getLeft();
     5928          Expr _v_lsplit__javaArgTypes__3 = _va_25.getRight();
     5929          if (!_va_25.isValid ())
    58145930          {
    58155931            break _block6__branch1;
     
    58215937            break _block6__branch1;
    58225938          }
    5823           int _v_len___dollar_tmp_m_955_m_48 = (_v_len13 - _v_len14);
     5939          int _v_len___dollar_tmp_m_978_m_48 = (_v_len13 - _v_len14);
    58245940          if (!_v_lsplit__javaArgTypes__3.isSymbolAt (0))
    58255941          {
     
    58285944          Expr _vs_javaArgType = Expr.empty;
    58295945          _vs_javaArgType = _v_lsplit__javaArgTypes__3.subexpr (0, 1);
    5830           Expr _ve__dollar_tmp_m_955_m_48 = Expr.empty;
    5831           _ve__dollar_tmp_m_955_m_48 = _v_lsplit__javaArgTypes__3.subexpr ((0 + 1), _v_len___dollar_tmp_m_955_m_48);
     5946          Expr _ve__dollar_tmp_m_978_m_48 = Expr.empty;
     5947          _ve__dollar_tmp_m_978_m_48 = _v_lsplit__javaArgTypes__3.subexpr ((0 + 1), _v_len___dollar_tmp_m_978_m_48);
    58325948          Result _gs_auxcall13 = new Result (Expr.empty);
    58335949          ConvertType (_vs_javaArgType, _gs_auxcall13);
     
    58665982      if (!refal.plus.List.Map (_c_252, Expr.empty, _ge_javaArgTypes__3.getExpr (), _ge_auxcall16))
    58675983      {
    5868         throw new RefalException ("rfp_asail_jbc", "WrapGen", "Unexpected fail");
     5984        throw new RefalException ("org.refal.plus.compiler.rfp_asail_jbc", "WrapGen", "Unexpected fail");
    58695985      }
    58705986      Result _gs_auxcall17 = new Result (Expr.empty);
  • to-imperative/trunk/java/compiler/org/refal/plus/compiler/rfpc.java

    r3370 r3426  
    88  static public final Expr RFP_Root = Expr.fromSequence ("/usr");
    99  @RefalFormat("$const RFP_Default_Boot_Path = (\'/usr/include/refal-plus\') (\'/usr/local/include/refal-plus\');")
    10   static public final Expr RFP_Default_Boot_Path = Expr.concat ((Comparable) Expr.fromSequence ("/usr/include/refal-plus"), (Comparable) Expr.fromSequence ("/usr/local/include/refal-plus"));
     10  static public final Expr RFP_Default_Boot_Path = Expr.concat ((Comparable<?>) Expr.fromSequence ("/usr/include/refal-plus"), (Comparable<?>) Expr.fromSequence ("/usr/local/include/refal-plus"));
    1111  @RefalFormat("$box RFP_Boot_Path;")
    1212  static public final Expr RFP_Boot_Path = new Expr (Symbol.newBox ("RFP_Boot_Path"));
     
    1717  @RefalFormat("$table RFP_Includes;")
    1818  static public final Expr RFP_Includes = new Expr (Symbol.newTable ("RFP_Includes"));
     19  @RefalFormat("$box CallList;")
     20  static public final Expr CallList = new Expr (Symbol.newBox ("CallList"));
    1921  @RefalFormat("$const RevDate = (\'$Revision$\') (\'$Date$\');")
    20   static  final Expr RevDate = Expr.concat ((Comparable) Expr.fromSequence ("$Revision$"), (Comparable) Expr.fromSequence ("$Date$"));
     22  static  final Expr RevDate = Expr.concat ((Comparable<?>) Expr.fromSequence ("$Revision$"), (Comparable<?>) Expr.fromSequence ("$Date$"));
    2123  @RefalFormat("$box Options;")
    2224  static  final Expr Options = new Expr (Symbol.newBox ("Options"));
     
    2729  static  final Expr _c_1 = Expr.fromSequence ("/");
    2830  static  final Expr _c_2 = new Expr (Symbol.newInt ("1"));
    29   static  final Expr _c_123 = Expr.fromSequence ("no-check");
    30   static  final Expr _c_124 = _c_123.subexpr (3, 5);
    31   static  final Expr _c_125 = Expr.fromSequence ("help");
    32   static  final Expr _c_126 = Expr.concat ((Comparable) Expr.concat ((Comparable) _c_124.subexpr (1, 1), (Comparable) _c_125), Symbol.newWord ("HELP"));
    33   static  final Expr _c_3 = _c_126.subexpr (1, 1);
     31  static  final Expr _c_123 = Expr.fromSequence ("bootpath");
     32  static  final Expr _c_124 = Expr.concat ((Comparable<?>) Expr.concat ((Comparable<?>) _c_123.subexpr (7, 1), (Comparable<?>) Expr.fromSequence ("help")), Symbol.newWord ("HELP"));
     33  static  final Expr _c_3 = _c_124.subexpr (1, 1);
    3434  static  final Expr _c_4 = Expr.fromSequence ("Refal+ compiler ");
    3535  static  final Expr _c_5 = Expr.fromSequence ("Usage: rfpc");
     
    4545  static  final Expr _c_15 = _c_13.subexpr (6, 1);
    4646  static  final Expr _c_16 = _c_13.subexpr (5, 2);
    47   static  final Expr _c_127 = Expr.fromSequence ("comp-item");
    48   static  final Expr _c_128 = _c_127.subexpr (0, 2);
    49   static  final Expr _c_129 = Expr.getConcatenator (5).toRight ((Comparable) new Expr ((Comparable) _c_128.subexpr (1, 1))).toRight (Symbol.newWord ("NAME")).toRight ((Comparable) new Expr (Symbol.newWord ("name| - "))).toRight (Symbol.newWord ("place outputs for file1 into files <name>.* or send")).toRight (Symbol.newWord ("them to stdout")).yield ();
    50   static  final Expr _c_17 = _c_129.subexpr (1, 1);
     47  static  final Expr _c_125 = Expr.getConcatenator (5).toRight ((Comparable<?>) new Expr ((Comparable<?>) _c_14.subexpr (1, 1))).toRight (Symbol.newWord ("NAME")).toRight ((Comparable<?>) new Expr (Symbol.newWord ("name| - "))).toRight (Symbol.newWord ("place outputs for file1 into files <name>.* or send")).toRight (Symbol.newWord ("them to stdout")).yield ();
     48  static  final Expr _c_17 = _c_125.subexpr (1, 1);
    5149  static  final Expr _c_19 = Expr.fromSequence (" .rfi");
    5250  static  final Expr _c_18 = _c_19.subexpr (0, 4);
     
    6159  static  final Expr _c_28 = new Expr (Symbol.newWord (" --- Warning: "));
    6260  static  final Expr _c_29 = new Expr (Symbol.newWord (": parsing finished"));
    63   static  final Expr _c_130 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("AS-REFAL"));
    64   static  final Expr _c_30 = _c_130.subexpr (1, 1);
     61  static  final Expr _c_126 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("AS-REFAL"));
     62  static  final Expr _c_30 = _c_126.subexpr (1, 1);
    6563  static  final Expr _c_31 = Expr.fromSequence (" .asr");
    6664  static  final Expr _c_32 = new Expr (Symbol.newWord ("R"));
     
    7472  static  final Expr _c_39 = new Expr (Symbol.newWord ("Error: unknown extension"));
    7573  static  final Expr _c_40 = _c_31.subexpr (1, 4);
    76   static  final Expr _c_131 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("NO-CHECK"));
    77   static  final Expr _c_41 = _c_131.subexpr (1, 1);
     74  static  final Expr _c_127 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("NO-CHECK"));
     75  static  final Expr _c_41 = _c_127.subexpr (1, 1);
    7876  static  final Expr _c_42 = new Expr (Symbol.newWord ("syntax check started"));
    7977  static  final Expr _c_43 = new Expr (Symbol.newWord ("syntax check finished"));
     
    8381    }
    8482  });
    85   static  final Expr _c_132 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("NO-TRANSFORM"));
    86   static  final Expr _c_46 = _c_132.subexpr (1, 1);
     83  static  final Expr _c_128 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("NO-TRANSFORM"));
     84  static  final Expr _c_46 = _c_128.subexpr (1, 1);
    8785  static  final Expr _c_47 = new Expr (Symbol.newWord ("as-to-as transformation started"));
    8886  static  final Expr _c_48 = new Expr (Symbol.newWord ("as-to-as transformation finished"));
     
    107105  static  final Expr _c_67 = new Expr (Symbol.newWord (".class"));
    108106  static  final Expr _c_68 = new Expr (Symbol.newWord ("compilation from as-ail to java-bytecode finished"));
    109   static  final Expr _c_133 = new Expr (Symbol.newWord ("dir"));
    110   static  final Expr _c_134 = Expr.getConcatenator (5).toRight ((Comparable) Expr.concat ((Comparable) Expr.fromSequence ("I"), (Comparable) Expr.fromSequence ("ipath"))).toRight (Symbol.newWord ("IPATH")).toRight ((Comparable) _c_133).toRight (Symbol.newWord ("add <dir> to the list of directories to be searched")).toRight (Symbol.newWord ("for .rfi files")).yield ();
    111   static  final Expr _c_135 = Expr.getConcatenator (5).toRight ((Comparable) Expr.concat ((Comparable) Expr.fromSequence ("B"), (Comparable) Expr.fromSequence ("bootpath"))).toRight (Symbol.newWord ("BPATH")).toRight ((Comparable) _c_133).toRight (Symbol.newWord ("add <dir> to the list of directories to be searched")).toRight (Symbol.newWord ("for standard library .rfi files")).yield ();
    112   static  final Expr _c_136 = Expr.fromSequence ("ne");
    113   static  final Expr _c_137 = Expr.fromSequence ("nc");
    114   static  final Expr _c_138 = Expr.fromSequence ("entry");
    115   static  final Expr _c_139 = _c_138.subexpr (1, 2);
    116   static  final Expr _c_140 = Expr.getConcatenator (5).toRight ((Comparable) Expr.concat ((Comparable) _c_14.subexpr (18, 2), (Comparable) _c_127)).toRight (Symbol.newWord ("COMP-ITEM")).toRight ((Comparable) new Expr (Symbol.newWord ("item"))).toRight (Symbol.newWord ("compile <item> only, not the whole source")).toRight (Symbol.newWord ("(may be used several times)")).yield ();
    117   static  final Expr _c_141 = Expr.getConcatenator (4).toRight ((Comparable) Expr.concat ((Comparable) _c_136.subexpr (1, 1), (Comparable) _c_138)).toRight (Symbol.newWord ("ENTRY")).toRight ((Comparable) new Expr (Symbol.newWord ("func"))).toRight (Symbol.newWord ("use function <func> as an entry to the program")).yield ();
    118   static  final Expr _c_142 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("VERBOSE"));
    119   static  final Expr _c_143 = Expr.getConcatenator (4).toRight ((Comparable) Expr.concat ((Comparable) _c_125.subexpr (3, 1), (Comparable) Expr.fromSequence ("package"))).toRight (Symbol.newWord ("PACKAGE")).toRight ((Comparable) new Expr (Symbol.newWord ("pack"))).toRight (Symbol.newWord ("place output in package <pack>")).yield ();
    120   static  final Expr _c_144 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("HH"));
    121   static  final Expr _c_145 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("AS-AIL"));
    122   static  final Expr _c_146 = Expr.getConcatenator (4).toRight ((Comparable) new Expr ((Comparable) Expr.fromSequence ("int"))).toRight (Symbol.newWord ("INT")).toRight ((Comparable) new Expr (Symbol.newWord ("class_name"))).toRight (Symbol.newWord ("class to use for literal integers")).yield ();
    123   static  final Expr _c_147 = Expr.fromSequence ("replace-module");
    124   static  final Expr _c_148 = Expr.getConcatenator (4).toRight ((Comparable) new Expr ((Comparable) _c_147)).toRight (Symbol.newWord ("REPLACE-MODULE")).toRight ((Comparable) Expr.concat (Symbol.newWord ("m1"), Symbol.newWord ("m2"))).toRight (Symbol.newWord ("use module <m2> instead of <m1>")).yield ();
    125   static  final Expr _c_149 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("DBG"));
    126   static  final Expr _c_150 = Expr.fromSequence ("traceall");
    127   static  final Expr _c_151 = Expr.getConcatenator (4).toRight ((Comparable) new Expr ((Comparable) _c_150.subexpr (0, 5))).toRight (Symbol.newWord ("TRACE")).toRight ((Comparable) new Expr (Symbol.newWord ("fname"))).toRight (Symbol.newWord ("trace function <fname> (may be used several times)")).yield ();
    128   static  final Expr _c_69 = Expr.getConcatenator (29).toRight ((Comparable) _c_134).toRight ((Comparable) _c_135).toRight ((Comparable) Expr.concat ((Comparable) Expr.concat ((Comparable) _c_136, (Comparable) Expr.fromSequence ("no-elaborate")), (Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("NO-ELABORATE")))).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_137, (Comparable) _c_123)).toRight ((Comparable) _c_131).toRight (Symbol.newWord ("don't perform syntax check")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_139, (Comparable) Expr.fromSequence ("no-transform"))).toRight ((Comparable) _c_132).toRight (Symbol.newWord ("don't perform AS-to-AS transformations")).yield ()).toRight ((Comparable) Expr.getConcatenator (4).toRight ((Comparable) Expr.concat ((Comparable) _c_137.subexpr (1, 1), (Comparable) _c_124)).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("CHECK"))).toRight (Symbol.newWord ("check only, causes no file creation in the absence")).toRight (Symbol.newWord ("of other output control options")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_123.subexpr (0, 2), (Comparable) Expr.fromSequence ("no-optim"))).toRight ((Comparable) _c_122).toRight (Symbol.newWord ("don't perform ASAIL-optimization")).yield ()).toRight ((Comparable) _c_140).toRight ((Comparable) _c_141).toRight ((Comparable) _c_126).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_63.subexpr (3, 1), (Comparable) Expr.fromSequence ("verbose"))).toRight ((Comparable) _c_142).toRight (Symbol.newWord ("display information about the stages of compilation")).yield ()).toRight ((Comparable) Expr.getConcatenator (4).toRight ((Comparable) new Expr ((Comparable) _c_14.subexpr (6, 1))).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("CASE-INSENSITIVE"))).toRight (Symbol.newWord ("convert all symbol-words without surrounding quotes")).toRight (Symbol.newWord ("to upper case")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) new Expr ((Comparable) _c_128)).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("IDENT-COMPATIBILITY"))).toRight (Symbol.newWord ("compatibility mode: assume old-style identificator names")).yield ()).toRight ((Comparable) _c_129).toRight ((Comparable) _c_143).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) new Expr ((Comparable) _c_59.subexpr (1, 2))).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("CC"))).toRight (Symbol.newWord ("output C++ code")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) new Expr ((Comparable) Expr.fromSequence ("hh"))).toRight ((Comparable) _c_144).toRight (Symbol.newWord ("generate header files")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_63.subexpr (1, 1), (Comparable) _c_63.subexpr (1, 4))).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("JAVA"))).toRight (Symbol.newWord ("output Java code")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) new Expr ((Comparable) Expr.fromSequence ("jbc"))).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("JBC"))).toRight (Symbol.newWord ("output Java byte-code")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_139.subexpr (1, 1), (Comparable) Expr.fromSequence ("t++"))).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("TPP"))).toRight (Symbol.newWord ("output T++ code")).yield ()).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) Expr.concat ((Comparable) _c_40.subexpr (1, 3), (Comparable) Expr.fromSequence ("as-refal"))).toRight ((Comparable) _c_130).toRight (Symbol.newWord ("output Refal Abstract Syntax")).yield ()).toRight ((Comparable) Expr.getConcatenator (4).toRight ((Comparable) Expr.concat ((Comparable) _c_49.subexpr (1, 3), (Comparable) Expr.fromSequence ("as-transformed"))).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("AS-TRANSFORMED"))).toRight (Symbol.newWord ("output Refal Abstract Syntax after AS-to-AS")).toRight (Symbol.newWord ("transformations")).yield ()).toRight ((Comparable) Expr.getConcatenator (4).toRight ((Comparable) Expr.concat ((Comparable) _c_55.subexpr (1, 3), (Comparable) Expr.fromSequence ("as-ail"))).toRight ((Comparable) _c_145).toRight (Symbol.newWord ("output Abstract Syntax of Abstract Imperative")).toRight (Symbol.newWord ("Language")).yield ()).toRight ((Comparable) _c_146).toRight ((Comparable) _c_148).toRight ((Comparable) Expr.concat ((Comparable) Expr.concat ((Comparable) _c_147.subexpr (10, 1), (Comparable) Expr.fromSequence ("debug")), (Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("DEBUG")))).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) new Expr ((Comparable) Expr.fromSequence ("dbg"))).toRight ((Comparable) _c_149).toRight (Symbol.newWord ("generate text for debugger")).yield ()).toRight ((Comparable) _c_151).toRight ((Comparable) Expr.getConcatenator (3).toRight ((Comparable) new Expr ((Comparable) _c_150)).toRight ((Comparable) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("TRACEALL"))).toRight (Symbol.newWord ("trace all functions")).yield ()).yield ();
     107  static  final Expr _c_129 = new Expr (Symbol.newWord ("dir"));
     108  static  final Expr _c_130 = Expr.getConcatenator (5).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) Expr.fromSequence ("I"), (Comparable<?>) Expr.fromSequence ("ipath"))).toRight (Symbol.newWord ("IPATH")).toRight ((Comparable<?>) _c_129).toRight (Symbol.newWord ("add <dir> to the list of directories to be searched")).toRight (Symbol.newWord ("for .rfi files")).yield ();
     109  static  final Expr _c_131 = Expr.getConcatenator (5).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) Expr.fromSequence ("B"), (Comparable<?>) _c_123)).toRight (Symbol.newWord ("BPATH")).toRight ((Comparable<?>) _c_129).toRight (Symbol.newWord ("add <dir> to the list of directories to be searched")).toRight (Symbol.newWord ("for standard library .rfi files")).yield ();
     110  static  final Expr _c_132 = Expr.fromSequence ("no-check");
     111  static  final Expr _c_133 = Expr.fromSequence ("entry");
     112  static  final Expr _c_134 = Expr.getConcatenator (5).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_14.subexpr (18, 2), (Comparable<?>) Expr.fromSequence ("comp-item"))).toRight (Symbol.newWord ("COMP-ITEM")).toRight ((Comparable<?>) new Expr (Symbol.newWord ("item"))).toRight (Symbol.newWord ("compile <item> only, not the whole source")).toRight (Symbol.newWord ("(may be used several times)")).yield ();
     113  static  final Expr _c_135 = Expr.getConcatenator (4).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_13.subexpr (4, 1), (Comparable<?>) _c_133)).toRight (Symbol.newWord ("ENTRY")).toRight ((Comparable<?>) new Expr (Symbol.newWord ("func"))).toRight (Symbol.newWord ("use function <func> as an entry to the program")).yield ();
     114  static  final Expr _c_136 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("VERBOSE"));
     115  static  final Expr _c_137 = Expr.getConcatenator (4).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_14.subexpr (5, 1), (Comparable<?>) Expr.fromSequence ("package"))).toRight (Symbol.newWord ("PACKAGE")).toRight ((Comparable<?>) new Expr (Symbol.newWord ("pack"))).toRight (Symbol.newWord ("place output in package <pack>")).yield ();
     116  static  final Expr _c_138 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("HH"));
     117  static  final Expr _c_139 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("AS-AIL"));
     118  static  final Expr _c_140 = Expr.getConcatenator (4).toRight ((Comparable<?>) new Expr ((Comparable<?>) Expr.fromSequence ("int"))).toRight (Symbol.newWord ("INT")).toRight ((Comparable<?>) new Expr (Symbol.newWord ("class_name"))).toRight (Symbol.newWord ("class to use for literal integers")).yield ();
     119  static  final Expr _c_141 = Expr.getConcatenator (4).toRight ((Comparable<?>) new Expr ((Comparable<?>) Expr.fromSequence ("replace-module"))).toRight (Symbol.newWord ("REPLACE-MODULE")).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("m1"), Symbol.newWord ("m2"))).toRight (Symbol.newWord ("use module <m2> instead of <m1>")).yield ();
     120  static  final Expr _c_142 = Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("DBG"));
     121  static  final Expr _c_143 = Expr.fromSequence ("traceall");
     122  static  final Expr _c_144 = Expr.getConcatenator (4).toRight ((Comparable<?>) new Expr ((Comparable<?>) _c_143.subexpr (0, 5))).toRight (Symbol.newWord ("TRACE")).toRight ((Comparable<?>) new Expr (Symbol.newWord ("fname"))).toRight (Symbol.newWord ("trace function <fname> (may be used several times)")).yield ();
     123  static  final Expr _c_69 = Expr.getConcatenator (29).toRight ((Comparable<?>) _c_130).toRight ((Comparable<?>) _c_131).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) Expr.concat ((Comparable<?>) Expr.fromSequence ("ne"), (Comparable<?>) Expr.fromSequence ("no-elaborate")), (Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("NO-ELABORATE")))).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) Expr.fromSequence ("nc"), (Comparable<?>) _c_132)).toRight ((Comparable<?>) _c_127).toRight (Symbol.newWord ("don't perform syntax check")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_133.subexpr (1, 2), (Comparable<?>) Expr.fromSequence ("no-transform"))).toRight ((Comparable<?>) _c_128).toRight (Symbol.newWord ("don't perform AS-to-AS transformations")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (4).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_59.subexpr (1, 1), (Comparable<?>) _c_132.subexpr (3, 5))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("CHECK"))).toRight (Symbol.newWord ("check only, causes no file creation in the absence")).toRight (Symbol.newWord ("of other output control options")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_132.subexpr (0, 2), (Comparable<?>) Expr.fromSequence ("no-optim"))).toRight ((Comparable<?>) _c_122).toRight (Symbol.newWord ("don't perform ASAIL-optimization")).yield ()).toRight ((Comparable<?>) _c_134).toRight ((Comparable<?>) _c_135).toRight ((Comparable<?>) _c_124).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_63.subexpr (3, 1), (Comparable<?>) Expr.fromSequence ("verbose"))).toRight ((Comparable<?>) _c_136).toRight (Symbol.newWord ("display information about the stages of compilation")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (4).toRight ((Comparable<?>) new Expr ((Comparable<?>) _c_14.subexpr (6, 1))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("CASE-INSENSITIVE"))).toRight (Symbol.newWord ("convert all symbol-words without surrounding quotes")).toRight (Symbol.newWord ("to upper case")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) new Expr ((Comparable<?>) _c_4.subexpr (7, 2))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("IDENT-COMPATIBILITY"))).toRight (Symbol.newWord ("compatibility mode: assume old-style identificator names")).yield ()).toRight ((Comparable<?>) _c_125).toRight ((Comparable<?>) _c_137).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) new Expr ((Comparable<?>) _c_59.subexpr (1, 2))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("CC"))).toRight (Symbol.newWord ("output C++ code")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) new Expr ((Comparable<?>) Expr.fromSequence ("hh"))).toRight ((Comparable<?>) _c_138).toRight (Symbol.newWord ("generate header files")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_63.subexpr (1, 1), (Comparable<?>) _c_63.subexpr (1, 4))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("JAVA"))).toRight (Symbol.newWord ("output Java code")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) new Expr ((Comparable<?>) Expr.fromSequence ("jbc"))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("JBC"))).toRight (Symbol.newWord ("output Java byte-code")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_33.subexpr (4, 1), (Comparable<?>) Expr.fromSequence ("t++"))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("TPP"))).toRight (Symbol.newWord ("output T++ code")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_31.subexpr (2, 3), (Comparable<?>) Expr.fromSequence ("as-refal"))).toRight ((Comparable<?>) _c_126).toRight (Symbol.newWord ("output Refal Abstract Syntax")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (4).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_33.subexpr (2, 3), (Comparable<?>) Expr.fromSequence ("as-transformed"))).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("AS-TRANSFORMED"))).toRight (Symbol.newWord ("output Refal Abstract Syntax after AS-to-AS")).toRight (Symbol.newWord ("transformations")).yield ()).toRight ((Comparable<?>) Expr.getConcatenator (4).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) _c_35.subexpr (2, 3), (Comparable<?>) Expr.fromSequence ("as-ail"))).toRight ((Comparable<?>) _c_139).toRight (Symbol.newWord ("output Abstract Syntax of Abstract Imperative")).toRight (Symbol.newWord ("Language")).yield ()).toRight ((Comparable<?>) _c_140).toRight ((Comparable<?>) _c_141).toRight ((Comparable<?>) Expr.concat ((Comparable<?>) Expr.concat ((Comparable<?>) _c_14.subexpr (23, 1), (Comparable<?>) Expr.fromSequence ("debug")), (Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("DEBUG")))).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) new Expr ((Comparable<?>) Expr.fromSequence ("dbg"))).toRight ((Comparable<?>) _c_142).toRight (Symbol.newWord ("generate text for debugger")).yield ()).toRight ((Comparable<?>) _c_144).toRight ((Comparable<?>) Expr.getConcatenator (3).toRight ((Comparable<?>) new Expr ((Comparable<?>) _c_143)).toRight ((Comparable<?>) Expr.concat (Symbol.newWord ("BIND"), Symbol.newWord ("TRACEALL"))).toRight (Symbol.newWord ("trace all functions")).yield ()).yield ();
    129124  static  final Expr _c_70 = new Expr (Symbol.newInt ("29"));
    130125  static  final Expr _c_71 = new Expr (Symbol.newWord ("Refal+ compiler "));
     
    135130  static  final Expr _c_76 = Expr.fromSequence (", -");
    136131  static  final Expr _c_77 = _c_7.subexpr (0, 1);
    137   static  final Expr _c_78 = _c_134.subexpr (1, 1);
    138   static  final Expr _c_79 = _c_135.subexpr (1, 1);
    139   static  final Expr _c_80 = _c_140.subexpr (1, 1);
     132  static  final Expr _c_78 = _c_130.subexpr (1, 1);
     133  static  final Expr _c_79 = _c_131.subexpr (1, 1);
     134  static  final Expr _c_80 = _c_134.subexpr (1, 1);
    140135  static  final Expr _c_81 = new Expr (Symbol.newWord ("ITEMS"));
    141   static  final Expr _c_82 = _c_141.subexpr (1, 1);
     136  static  final Expr _c_82 = _c_135.subexpr (1, 1);
    142137  static  final Expr _c_83 = new Expr (Symbol.newWord ("ENTRIES"));
    143   static  final Expr _c_84 = _c_151.subexpr (1, 1);
    144   static  final Expr _c_85 = _c_143.subexpr (1, 1);
    145   static  final Expr _c_86 = _c_146.subexpr (1, 1);
    146   static  final Expr _c_87 = _c_148.subexpr (1, 1);
     138  static  final Expr _c_84 = _c_144.subexpr (1, 1);
     139  static  final Expr _c_85 = _c_137.subexpr (1, 1);
     140  static  final Expr _c_86 = _c_140.subexpr (1, 1);
     141  static  final Expr _c_87 = _c_141.subexpr (1, 1);
    147142  static  final Expr _c_88 = new Expr (Symbol.newWord ("REPLACE-MODULE-2"));
    148   static  final Expr _c_89 = _c_145.subexpr (0, 1);
     143  static  final Expr _c_89 = _c_139.subexpr (0, 1);
    149144  static  final Expr _c_90 = new Expr (Symbol.newWord ("\""));
    150145  static  final Expr _c_91 = new Expr (Symbol.newWord ("Unknown option \"-"));
    151146  static  final Expr _c_92 = new Expr (Symbol.newWord ("Last option requires parameter"));
    152147  static  final Expr _c_93 = Expr.getConcatenator (9).toRight (Symbol.newWord ("CC")).toRight (Symbol.newWord ("HH")).toRight (Symbol.newWord ("TPP")).toRight (Symbol.newWord ("JAVA")).toRight (Symbol.newWord ("JBC")).toRight (Symbol.newWord ("AS-REFAL")).toRight (Symbol.newWord ("AS-TRANSFORMED")).toRight (Symbol.newWord ("AS-AIL")).toRight (Symbol.newWord ("CHECK")).yield ();
    153   static  final Expr _c_94 = _c_144.subexpr (1, 1);
     148  static  final Expr _c_94 = _c_138.subexpr (1, 1);
    154149  static  final Expr _c_95 = new Expr (new Func () {
    155150    public boolean eval (Expr arg, Result res) throws RefalException {
     
    159154  static  final Expr _c_96 = new Expr (Symbol.newWord ("PRAGMA"));
    160155  static  final Expr _c_97 = new Expr (Symbol.newWord ("NATIVE"));
    161   static  final Expr _c_152 = new Expr ((Comparable) new Expr (Symbol.newWord ("EVAR")));
    162   static  final Expr _c_109 = Expr.getConcatenator (4).toRight (Symbol.newWord ("IMPORT")).toRight (Symbol.newWord ("FUNC")).toRight ((Comparable) _c_152).toRight ((Comparable) Expr.empty).yield ();
     156  static  final Expr _c_145 = new Expr ((Comparable<?>) new Expr (Symbol.newWord ("EVAR")));
     157  static  final Expr _c_109 = Expr.getConcatenator (4).toRight (Symbol.newWord ("IMPORT")).toRight (Symbol.newWord ("FUNC")).toRight ((Comparable<?>) _c_145).toRight ((Comparable<?>) Expr.empty).yield ();
    163158  static  final Expr _c_98 = _c_109.subexpr (1, 1);
    164159  static  final Expr _c_99 = new Expr (Symbol.newInt ("2"));
    165160  static  final Expr _c_100 = new Expr (Symbol.newWord ("TFUNC"));
    166   static  final Expr _c_104 = Expr.getConcatenator (4).toRight (Symbol.newWord ("IMPORT")).toRight (Symbol.newWord ("FUNC?")).toRight ((Comparable) _c_152).toRight ((Comparable) _c_152).yield ();
     161  static  final Expr _c_104 = Expr.getConcatenator (4).toRight (Symbol.newWord ("IMPORT")).toRight (Symbol.newWord ("FUNC?")).toRight ((Comparable<?>) _c_145).toRight ((Comparable<?>) _c_145).yield ();
    167162  static  final Expr _c_101 = _c_104.subexpr (1, 1);
    168163  static  final Expr _c_102 = new Expr (Symbol.newWord ("CONST"));
    169164  static  final Expr _c_103 = new Expr (Symbol.newWord ("EXTERN"));
    170   static  final Expr _c_105 = _c_149.subexpr (1, 1);
    171   static  final Expr _c_106 = new Expr ((Comparable) Expr.getConcatenator (3).toRight (Symbol.newWord ("refal")).toRight (Symbol.newWord ("Debug")).toRight (Symbol.newWord ("ShouldStop")).yield ());
    172   static  final Expr _c_107 = Expr.getConcatenator (4).toRight (Symbol.newWord ("IMPORT")).toRight (Symbol.newWord ("FUNC?")).toRight ((Comparable) _c_152).toRight ((Comparable) Expr.empty).yield ();
    173   static  final Expr _c_108 = new Expr ((Comparable) Expr.getConcatenator (3).toRight (Symbol.newWord ("refal")).toRight (Symbol.newWord ("Debug")).toRight (Symbol.newWord ("Debug")).yield ());
     165  static  final Expr _c_105 = _c_142.subexpr (1, 1);
     166  static  final Expr _c_106 = new Expr ((Comparable<?>) Expr.getConcatenator (3).toRight (Symbol.newWord ("refal")).toRight (Symbol.newWord ("Debug")).toRight (Symbol.newWord ("ShouldStop")).yield ());
     167  static  final Expr _c_107 = Expr.getConcatenator (4).toRight (Symbol.newWord ("IMPORT")).toRight (Symbol.newWord ("FUNC?")).toRight ((Comparable<?>) _c_145).toRight ((Comparable<?>) Expr.empty).yield ();
     168  static  final Expr _c_108 = new Expr ((Comparable<?>) Expr.getConcatenator (3).toRight (Symbol.newWord ("refal")).toRight (Symbol.newWord ("Debug")).toRight (Symbol.newWord ("Debug")).yield ());
    174169  static  final Expr _c_110 = Expr.fromSequence ("(");
    175170  static  final Expr _c_111 = Expr.fromSequence ("  ");
    176171  static  final Expr _c_112 = Expr.fromSequence (")");
    177172  static  final Expr _c_113 = new Expr (Symbol.newWord ("LABEL"));
    178   static  final Expr _c_114 = _c_142.subexpr (1, 1);
     173  static  final Expr _c_114 = _c_136.subexpr (1, 1);
    179174  static  final Expr _c_115 = new Expr (Symbol.newWord ("W"));
    180175  static  final Expr _c_116 = new Expr (Symbol.newWord (" for writing"));
     
    402397  }
    403398
     399  @RefalFormat("$func CompileASToJBC2 s t t = ;")
     400  static public void CompileASToJBC2 (Expr _gs_arg1, Expr _gt_arg2, Expr _gt_arg3) throws RefalException
     401  {
     402    Expr _v_compose1 = Expr.getConcatenator ().toRight (_gs_arg1).toRight (_gt_arg2).toRight (_gt_arg3).yield ();
     403    if (_v_compose1.isSymbolAt ((0 + 1 + 1)))
     404    {
     405      throw new RefalException ("org.refal.plus.compiler.rfpc", "CompileASToJBC2", "Unexpected fail");
     406    }
     407    Expr _v_deref__compose1 = (Expr) _v_compose1.at ((0 + 1 + 1));
     408    int _v_len1 = _v_deref__compose1.length ();
     409    int _v_len2 = 0;
     410    if (_v_len1 < _v_len2)
     411    {
     412      throw new RefalException ("org.refal.plus.compiler.rfpc", "CompileASToJBC2", "Unexpected fail");
     413    }
     414    int _v_len__callList = (_v_len1 - _v_len2);
     415    if (!_v_compose1.isSymbolAt (0))
     416    {
     417      throw new RefalException ("org.refal.plus.compiler.rfpc", "CompileASToJBC2", "Unexpected fail");
     418    }
     419    Expr _vs_env = Expr.empty;
     420    _vs_env = _v_compose1.subexpr (0, 1);
     421    Expr _vt_as = Expr.empty;
     422    _vt_as = _v_compose1.subexpr ((0 + 1), 1);
     423    Expr _ve_callList = Expr.empty;
     424    _ve_callList = _v_deref__compose1.subexpr (0, _v_len__callList);
     425    refal.plus.Box.Store (CallList, _ve_callList);
     426    CompileASToJBC (_vs_env, _vt_as);
     427  }
     428
    404429  @RefalFormat("$func Main = e;")
    405430  static public void Main (Result _v_res1) throws RefalException
     
    457482            _exit1: _continue1: for ( ; ; _va_8.next ())
    458483            {
    459               Expr _ve__dollar_tmp_m_124_m_31 = _va_8.getLeft();
     484              Expr _ve__dollar_tmp_m_127_m_31 = _va_8.getLeft();
    460485              Expr _v_lsplit__Get2 = _va_8.getRight();
    461486              if (!_va_8.isValid ())
     
    469494                break _block3__branch1;
    470495              }
    471               int _v_len___dollar_tmp_m_124_m_58 = (_v_len1 - _v_len2);
     496              int _v_len___dollar_tmp_m_127_m_58 = (_v_len1 - _v_len2);
    472497              if (_v_lsplit__Get2.isSymbolAt (0))
    473498              {
     
    493518                continue _continue1;
    494519              }
    495               int _v_len___dollar_tmp_m_124_m_44 = (_v_len5 - _v_len6);
     520              int _v_len___dollar_tmp_m_127_m_44 = (_v_len5 - _v_len6);
    496521              if (_v_deref__deref__lsplit__Get2.isSymbolAt (0))
    497522              {
     
    506531              }
    507532              int _v_len__next = (_v_len7 - _v_len8);
    508               Expr _ve__dollar_tmp_m_124_m_58 = Expr.empty;
    509               _ve__dollar_tmp_m_124_m_58 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_124_m_58);
    510               Expr _vt__dollar_tmp_m_124_m_47 = Expr.empty;
    511               _vt__dollar_tmp_m_124_m_47 = _v_deref__lsplit__Get2.subexpr ((0 + 1), 1);
     533              Expr _ve__dollar_tmp_m_127_m_58 = Expr.empty;
     534              _ve__dollar_tmp_m_127_m_58 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_127_m_58);
     535              Expr _vt__dollar_tmp_m_127_m_47 = Expr.empty;
     536              _vt__dollar_tmp_m_127_m_47 = _v_deref__lsplit__Get2.subexpr ((0 + 1), 1);
    512537              Expr _ve_descr = Expr.empty;
    513538              _ve_descr = _v_deref__lsplit__Get2.subexpr ((0 + 1 + 1), _v_len__descr);
    514               Expr _ve__dollar_tmp_m_124_m_44 = Expr.empty;
    515               _ve__dollar_tmp_m_124_m_44 = _v_deref__deref__lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_124_m_44);
     539              Expr _ve__dollar_tmp_m_127_m_44 = Expr.empty;
     540              _ve__dollar_tmp_m_127_m_44 = _v_deref__deref__lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_127_m_44);
    516541              Expr _ve_next = Expr.empty;
    517542              _ve_next = _v_deref__deref__deref__lsplit__Get2.subexpr (0, _v_len__next);
     
    531556                    break _block4__branch1;
    532557                  }
    533                   int _v_len___dollar_tmp_m_127_m_36 = (_v_len9 - _v_len10);
     558                  int _v_len___dollar_tmp_m_130_m_36 = (_v_len9 - _v_len10);
    534559                  if (_ve_descr.isSymbolAt (0))
    535560                  {
     
    544569                  }
    545570                  int _v_len__arg = (_v_len11 - _v_len12);
    546                   Expr _ve__dollar_tmp_m_127_m_36 = Expr.empty;
    547                   _ve__dollar_tmp_m_127_m_36 = _ve_descr.subexpr ((0 + 1), _v_len___dollar_tmp_m_127_m_36);
     571                  Expr _ve__dollar_tmp_m_130_m_36 = Expr.empty;
     572                  _ve__dollar_tmp_m_130_m_36 = _ve_descr.subexpr ((0 + 1), _v_len___dollar_tmp_m_130_m_36);
    548573                  Expr _ve_arg = Expr.empty;
    549574                  _ve_arg = _v_deref__descr.subexpr (0, _v_len__arg);
     
    764789                _block12__branch1: {
    765790                  Result _va_13 = new Result ();
    766                   if (!rfp_parse.RFP_Parser (new Expr ((Comparable) _ve_file), _va_13))
     791                  if (!rfp_parse.RFP_Parser (new Expr ((Comparable<?>) _ve_file), _va_13))
    767792                  {
    768793                    break _block12__branch1;
     
    784809                  _exit5: _continue5: for ( ; ; _va_14.next ())
    785810                  {
    786                     Expr _ve__dollar_tmp_m_172_m_36 = _va_14.getLeft();
     811                    Expr _ve__dollar_tmp_m_175_m_36 = _va_14.getLeft();
    787812                    Expr _v_lsplit__RFP__Parser__Errors1 = _va_14.getRight();
    788813                    if (!_va_14.isValid ())
     
    796821                      break _block13__branch1;
    797822                    }
    798                     int _v_len___dollar_tmp_m_172_m_48 = (_v_len21 - _v_len22);
     823                    int _v_len___dollar_tmp_m_175_m_48 = (_v_len21 - _v_len22);
    799824                    if (_v_lsplit__RFP__Parser__Errors1.isSymbolAt (0))
    800825                    {
     
    809834                    }
    810835                    int _v_len__error = (_v_len23 - _v_len24);
    811                     Expr _ve__dollar_tmp_m_172_m_48 = Expr.empty;
    812                     _ve__dollar_tmp_m_172_m_48 = _v_lsplit__RFP__Parser__Errors1.subexpr ((0 + 1), _v_len___dollar_tmp_m_172_m_48);
     836                    Expr _ve__dollar_tmp_m_175_m_48 = Expr.empty;
     837                    _ve__dollar_tmp_m_175_m_48 = _v_lsplit__RFP__Parser__Errors1.subexpr ((0 + 1), _v_len___dollar_tmp_m_175_m_48);
    813838                    Expr _ve_error = Expr.empty;
    814839                    _ve_error = _v_deref__lsplit__RFP__Parser__Errors1.subexpr (0, _v_len__error);
     
    886911                        Expr _ve_efile = Expr.empty;
    887912                        _ve_efile = _v_deref__deref__error.subexpr (0, _v_len__efile);
    888                         Expr _vt__dollar_tmp_m_174_m_53 = Expr.empty;
    889                         _vt__dollar_tmp_m_174_m_53 = _v_deref__deref__error2.subexpr ((0 + 1), 1);
     913                        Expr _vt__dollar_tmp_m_177_m_53 = Expr.empty;
     914                        _vt__dollar_tmp_m_177_m_53 = _v_deref__deref__error2.subexpr ((0 + 1), 1);
    890915                        Expr _vs_row = Expr.empty;
    891916                        _vs_row = _v_deref__deref__deref__error2.subexpr (0, 1);
     
    9831008                      Expr _ve_efile = Expr.empty;
    9841009                      _ve_efile = _v_deref__deref__error3.subexpr (0, _v_len__efile2);
    985                       Expr _vt__dollar_tmp_m_177_m_55 = Expr.empty;
    986                       _vt__dollar_tmp_m_177_m_55 = _v_deref__deref__error32.subexpr ((0 + 1), 1);
     1010                      Expr _vt__dollar_tmp_m_180_m_55 = Expr.empty;
     1011                      _vt__dollar_tmp_m_180_m_55 = _v_deref__deref__error32.subexpr ((0 + 1), 1);
    9871012                      Expr _vs_row = Expr.empty;
    9881013                      _vs_row = _v_deref__deref__deref__error32.subexpr (0, 1);
     
    10981123                continue _continue2;
    10991124              }
    1100               _ge_auxalt11 = Expr.concat (_c_37, (Comparable) Expr.getConcatenator ().toRight (_c_36).toRight (_gt_auxcall9.getExpr ()).toRight (_gt_auxcall10.getExpr ()).yield ());
     1125              _ge_auxalt11 = Expr.concat (_c_37, (Comparable<?>) Expr.getConcatenator ().toRight (_c_36).toRight (_gt_auxcall9.getExpr ()).toRight (_gt_auxcall10.getExpr ()).yield ());
    11011126              break _block10;
    11021127            }
     
    11671192                    Result _vs_Isneed__close = new Result (Expr.empty);
    11681193                    Open_Channel (_ve_basename, _c_40, _vs_channel, _vs_Isneed__close);
    1169                     RFP_Pretty_Print (_vs_channel.getExpr (), Expr.empty, new Expr ((Comparable) Expr.getConcatenator ().toRight (_vs_tag).toRight (_vt_ModuleName).toRight (_ve_Items).yield ()));
     1194                    RFP_Pretty_Print (_vs_channel.getExpr (), Expr.empty, new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_vs_tag).toRight (_vt_ModuleName).toRight (_ve_Items).yield ()));
    11701195                    _block18: {
    11711196                      _block18__branch1: {
     
    12611286                    Result _vs_Isneed__close = new Result (Expr.empty);
    12621287                    Open_Channel (_ve_basename, _c_49, _vs_channel, _vs_Isneed__close);
    1263                     RFP_Pretty_Print (_vs_channel.getExpr (), Expr.empty, new Expr ((Comparable) Expr.getConcatenator ().toRight (_vs_tag).toRight (_vt_ModuleName).toRight (_ve_Items).yield ()));
     1288                    RFP_Pretty_Print (_vs_channel.getExpr (), Expr.empty, new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_vs_tag).toRight (_vt_ModuleName).toRight (_ve_Items).yield ()));
    12641289                    _block24: {
    12651290                      _block24__branch1: {
     
    14231448                _exit6: _continue6: for ( ; ; _va_19.next ())
    14241449                {
    1425                   Expr _ve__dollar_tmp_m_309_m_48 = _va_19.getLeft();
     1450                  Expr _ve__dollar_tmp_m_312_m_48 = _va_19.getLeft();
    14261451                  Expr _v_lsplit__RFP__ASAIL__To__JBC1 = _va_19.getRight();
    14271452                  if (!_va_19.isValid ())
     
    14351460                    break _block32__branch1;
    14361461                  }
    1437                   int _v_len___dollar_tmp_m_309_m_80 = (_v_len39 - _v_len40);
     1462                  int _v_len___dollar_tmp_m_312_m_80 = (_v_len39 - _v_len40);
    14381463                  if (_v_lsplit__RFP__ASAIL__To__JBC1.isSymbolAt (0))
    14391464                  {
     
    14521477                    continue _continue6;
    14531478                  }
    1454                   Expr _ve__dollar_tmp_m_309_m_80 = Expr.empty;
    1455                   _ve__dollar_tmp_m_309_m_80 = _v_lsplit__RFP__ASAIL__To__JBC1.subexpr ((0 + 1), _v_len___dollar_tmp_m_309_m_80);
     1479                  Expr _ve__dollar_tmp_m_312_m_80 = Expr.empty;
     1480                  _ve__dollar_tmp_m_312_m_80 = _v_lsplit__RFP__ASAIL__To__JBC1.subexpr ((0 + 1), _v_len___dollar_tmp_m_312_m_80);
    14561481                  Expr _vs_bytecode = Expr.empty;
    14571482                  _vs_bytecode = _v_deref__lsplit__RFP__ASAIL__To__JBC1.subexpr (0, 1);
     
    15221547      _exit1: _continue1: for ( ; ; _va_20.next ())
    15231548      {
    1524         Expr _ve__dollar_tmp_m_388_m_23 = _va_20.getLeft();
     1549        Expr _ve__dollar_tmp_m_391_m_23 = _va_20.getLeft();
    15251550        Expr _v_lsplit__Get1 = _va_20.getRight();
    15261551        if (!_va_20.isValid ())
     
    15341559          break _block1__branch1;
    15351560        }
    1536         int _v_len___dollar_tmp_m_388_m_53 = (_v_len1 - _v_len2);
     1561        int _v_len___dollar_tmp_m_391_m_53 = (_v_len1 - _v_len2);
    15371562        if (_v_lsplit__Get1.isSymbolAt (0))
    15381563        {
     
    15711596        }
    15721597        int _v_len__op = (_v_len7 - _v_len8);
    1573         Expr _ve__dollar_tmp_m_388_m_53 = Expr.empty;
    1574         _ve__dollar_tmp_m_388_m_53 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_388_m_53);
    1575         Expr _vt__dollar_tmp_m_388_m_42 = Expr.empty;
    1576         _vt__dollar_tmp_m_388_m_42 = _v_deref__lsplit__Get1.subexpr ((0 + 1), 1);
     1598        Expr _ve__dollar_tmp_m_391_m_53 = Expr.empty;
     1599        _ve__dollar_tmp_m_391_m_53 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_391_m_53);
     1600        Expr _vt__dollar_tmp_m_391_m_42 = Expr.empty;
     1601        _vt__dollar_tmp_m_391_m_42 = _v_deref__lsplit__Get1.subexpr ((0 + 1), 1);
    15771602        Expr _ve_descr = Expr.empty;
    15781603        _ve_descr = _v_deref__lsplit__Get1.subexpr ((0 + 1 + 1), _v_len__descr);
     
    15901615          _exit2: _continue2: for ( ; ; _va_21.next ())
    15911616          {
    1592             Expr _ve__dollar_tmp_m_391_m_19 = _va_21.getLeft();
     1617            Expr _ve__dollar_tmp_m_394_m_19 = _va_21.getLeft();
    15931618            Expr _v_lsplit__opts = _va_21.getRight();
    15941619            if (!_va_21.isValid ())
     
    16021627              break _block2__branch1;
    16031628            }
    1604             int _v_len___dollar_tmp_m_391_m_30 = (_v_len9 - _v_len10);
     1629            int _v_len___dollar_tmp_m_394_m_30 = (_v_len9 - _v_len10);
    16051630            if (_v_lsplit__opts.isSymbolAt (0))
    16061631            {
     
    16151640            }
    16161641            int _v_len__next = (_v_len11 - _v_len12);
    1617             Expr _ve__dollar_tmp_m_391_m_30 = Expr.empty;
    1618             _ve__dollar_tmp_m_391_m_30 = _v_lsplit__opts.subexpr ((0 + 1), _v_len___dollar_tmp_m_391_m_30);
     1642            Expr _ve__dollar_tmp_m_394_m_30 = Expr.empty;
     1643            _ve__dollar_tmp_m_394_m_30 = _v_lsplit__opts.subexpr ((0 + 1), _v_len___dollar_tmp_m_394_m_30);
    16191644            Expr _ve_next = Expr.empty;
    16201645            _ve_next = _v_deref__lsplit__opts.subexpr (0, _v_len__next);
     
    16561681              _exit3: _continue3: for ( ; ; _va_22.next ())
    16571682              {
    1658                 Expr _ve__dollar_tmp_m_398_m_25 = _va_22.getLeft();
     1683                Expr _ve__dollar_tmp_m_401_m_25 = _va_22.getLeft();
    16591684                Expr _v_lsplit__params = _va_22.getRight();
    16601685                if (!_va_22.isValid ())
     
    16681693                  break _block4__branch1;
    16691694                }
    1670                 int _v_len___dollar_tmp_m_398_m_33 = (_v_len17 - _v_len18);
     1695                int _v_len___dollar_tmp_m_401_m_33 = (_v_len17 - _v_len18);
    16711696                if (!_v_lsplit__params.isSymbolAt (0))
    16721697                {
     
    16751700                Expr _vs_par = Expr.empty;
    16761701                _vs_par = _v_lsplit__params.subexpr (0, 1);
    1677                 Expr _ve__dollar_tmp_m_398_m_33 = Expr.empty;
    1678                 _ve__dollar_tmp_m_398_m_33 = _v_lsplit__params.subexpr ((0 + 1), _v_len___dollar_tmp_m_398_m_33);
     1702                Expr _ve__dollar_tmp_m_401_m_33 = Expr.empty;
     1703                _ve__dollar_tmp_m_401_m_33 = _v_lsplit__params.subexpr ((0 + 1), _v_len___dollar_tmp_m_401_m_33);
    16791704                Result _ge_auxcall2 = new Result (Expr.empty);
    16801705                refal.plus.Convert.ToChars (_vs_par, _ge_auxcall2);
     
    16941719            break _block5__branch1;
    16951720          }
    1696           int _v_len___dollar_tmp_m_405_m_19 = (_v_len19 - _v_len20);
     1721          int _v_len___dollar_tmp_m_408_m_19 = (_v_len19 - _v_len20);
    16971722          if (!_ge_auxalt3.isSymbolAt (0))
    16981723          {
     
    17011726          Expr _vs_phrase = Expr.empty;
    17021727          _vs_phrase = _ge_auxalt3.subexpr (0, 1);
    1703           Expr _ve__dollar_tmp_m_405_m_19 = Expr.empty;
    1704           _ve__dollar_tmp_m_405_m_19 = _ge_auxalt3.subexpr ((0 + 1), _v_len___dollar_tmp_m_405_m_19);
     1728          Expr _ve__dollar_tmp_m_408_m_19 = Expr.empty;
     1729          _ve__dollar_tmp_m_408_m_19 = _ge_auxalt3.subexpr ((0 + 1), _v_len___dollar_tmp_m_408_m_19);
    17051730          Result _ge_auxcall4 = new Result (Expr.empty);
    17061731          refal.plus.Box.Get (_vs_line.getExpr (), _ge_auxcall4);
     
    17221747        _exit4: _continue4: for ( ; ; _va_23.next ())
    17231748        {
    1724           Expr _ve__dollar_tmp_m_412_m_10 = _va_23.getLeft();
     1749          Expr _ve__dollar_tmp_m_415_m_10 = _va_23.getLeft();
    17251750          Expr _v_lsplit__auxalt3 = _va_23.getRight();
    17261751          if (!_va_23.isValid ())
     
    17341759            continue _continue1;
    17351760          }
    1736           int _v_len___dollar_tmp_m_412_m_23 = (_v_len21 - _v_len22);
     1761          int _v_len___dollar_tmp_m_415_m_23 = (_v_len21 - _v_len22);
    17371762          if (!_v_lsplit__auxalt3.isSymbolAt (0))
    17381763          {
     
    17431768            continue _continue4;
    17441769          }
    1745           Expr _vs__dollar_tmp_m_412_m_12 = Expr.empty;
    1746           _vs__dollar_tmp_m_412_m_12 = _v_lsplit__auxalt3.subexpr (0, 1);
     1770          Expr _vs__dollar_tmp_m_415_m_12 = Expr.empty;
     1771          _vs__dollar_tmp_m_415_m_12 = _v_lsplit__auxalt3.subexpr (0, 1);
    17471772          Expr _vs_phrase = Expr.empty;
    17481773          _vs_phrase = _v_lsplit__auxalt3.subexpr ((0 + 1), 1);
    1749           Expr _ve__dollar_tmp_m_412_m_23 = Expr.empty;
    1750           _ve__dollar_tmp_m_412_m_23 = _v_lsplit__auxalt3.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_412_m_23);
     1774          Expr _ve__dollar_tmp_m_415_m_23 = Expr.empty;
     1775          _ve__dollar_tmp_m_415_m_23 = _v_lsplit__auxalt3.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_415_m_23);
    17511776          refal.plus.StdIO.PrintLn (Expr.concat (_ve_start2.getExpr (), _vs_phrase));
    17521777        }
     
    17811806              break _block2__branch1;
    17821807            }
    1783             int _v_len___dollar_tmp_m_422_m_20 = (_v_len3 - _v_len4);
    1784             Expr _vv__dollar_tmp_m_422_m_20 = Expr.empty;
    1785             _vv__dollar_tmp_m_422_m_20 = _ve_prevarg.subexpr (0, _v_len___dollar_tmp_m_422_m_20);
     1808            int _v_len___dollar_tmp_m_425_m_20 = (_v_len3 - _v_len4);
     1809            Expr _vv__dollar_tmp_m_425_m_20 = Expr.empty;
     1810            _vv__dollar_tmp_m_425_m_20 = _ve_prevarg.subexpr (0, _v_len___dollar_tmp_m_425_m_20);
    17861811            Expr _ge_prevarg__5 = Expr.empty;
    17871812            _block3: {
     
    17971822                Result _ge_auxcall1 = new Result (Expr.empty);
    17981823                refal.plus.Box.Get (RFP_Include_Path, _ge_auxcall1);
    1799                 refal.plus.Box.Store (RFP_Include_Path, Expr.concat (_ge_auxcall1.getExpr (), (Comparable) _vv_arg));
     1824                refal.plus.Box.Store (RFP_Include_Path, Expr.concat (_ge_auxcall1.getExpr (), (Comparable<?>) _vv_arg));
    18001825                _ge_prevarg__5 = Expr.empty;
    18011826                break _block3;
     
    18121837                Result _ge_auxcall2 = new Result (Expr.empty);
    18131838                refal.plus.Box.Get (RFP_Boot_Path, _ge_auxcall2);
    1814                 refal.plus.Box.Store (RFP_Boot_Path, Expr.concat (_ge_auxcall2.getExpr (), (Comparable) _vv_arg));
     1839                refal.plus.Box.Store (RFP_Boot_Path, Expr.concat (_ge_auxcall2.getExpr (), (Comparable<?>) _vv_arg));
    18151840                _ge_prevarg__5 = Expr.empty;
    18161841                break _block3;
     
    18401865                Result _ge_auxcall3 = new Result (Expr.empty);
    18411866                rfp_helper.Make_Name (_vv_arg, _ge_auxcall3);
    1842                 refal.plus.Table.Bind (rfp_helper.RFP_Options, _c_81, Expr.concat (_ve_items, (Comparable) _ge_auxcall3.getExpr ()));
     1867                refal.plus.Table.Bind (rfp_helper.RFP_Options, _c_81, Expr.concat (_ve_items, (Comparable<?>) _ge_auxcall3.getExpr ()));
    18431868                _ge_prevarg__5 = Expr.empty;
    18441869                break _block3;
     
    18681893                Result _ge_auxcall4 = new Result (Expr.empty);
    18691894                rfp_helper.Make_Name (_vv_arg, _ge_auxcall4);
    1870                 refal.plus.Table.Bind (rfp_helper.RFP_Options, _c_83, Expr.concat (_ve_entries, (Comparable) _ge_auxcall4.getExpr ()));
     1895                refal.plus.Table.Bind (rfp_helper.RFP_Options, _c_83, Expr.concat (_ve_entries, (Comparable<?>) _ge_auxcall4.getExpr ()));
    18711896                _ge_prevarg__5 = Expr.empty;
    18721897                break _block3;
     
    20012026                    _exit1: _continue1: for ( ; ; _va_26.next ())
    20022027                    {
    2003                       Expr _ve__dollar_tmp_m_460_m_31 = _va_26.getLeft();
     2028                      Expr _ve__dollar_tmp_m_463_m_31 = _va_26.getLeft();
    20042029                      Expr _v_lsplit__Get1 = _va_26.getRight();
    20052030                      if (!_va_26.isValid ())
     
    20132038                        break _block8__branch1;
    20142039                      }
    2015                       int _v_len___dollar_tmp_m_460_m_60 = (_v_len9 - _v_len10);
     2040                      int _v_len___dollar_tmp_m_463_m_60 = (_v_len9 - _v_len10);
    20162041                      if (_v_lsplit__Get1.isSymbolAt (0))
    20172042                      {
     
    20252050                        continue _continue1;
    20262051                      }
    2027                       int _v_len___dollar_tmp_m_460_m_57 = (_v_len11 - _v_len12);
     2052                      int _v_len___dollar_tmp_m_463_m_57 = (_v_len11 - _v_len12);
    20282053                      if (_v_deref__lsplit__Get1.isSymbolAt (0))
    20292054                      {
     
    20352060                        continue _continue1;
    20362061                      }
    2037                       Expr _ve__dollar_tmp_m_460_m_60 = Expr.empty;
    2038                       _ve__dollar_tmp_m_460_m_60 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_460_m_60);
     2062                      Expr _ve__dollar_tmp_m_463_m_60 = Expr.empty;
     2063                      _ve__dollar_tmp_m_463_m_60 = _v_lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_463_m_60);
    20392064                      Expr _vt_action = Expr.empty;
    20402065                      _vt_action = _v_deref__lsplit__Get1.subexpr ((0 + 1), 1);
    2041                       Expr _ve__dollar_tmp_m_460_m_57 = Expr.empty;
    2042                       _ve__dollar_tmp_m_460_m_57 = _v_deref__lsplit__Get1.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_460_m_57);
     2066                      Expr _ve__dollar_tmp_m_463_m_57 = Expr.empty;
     2067                      _ve__dollar_tmp_m_463_m_57 = _v_deref__lsplit__Get1.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_463_m_57);
    20432068                      Expr.SplitIterator _va_27 = _v_deref__deref__lsplit__Get1.leftSplit(0);
    20442069                      _exit2: _continue2: for ( ; ; _va_27.next ())
    20452070                      {
    2046                         Expr _ve__dollar_tmp_m_460_m_35 = _va_27.getLeft();
     2071                        Expr _ve__dollar_tmp_m_463_m_35 = _va_27.getLeft();
    20472072                        Expr _v_lsplit__deref__deref__lsplit__Get1 = _va_27.getRight();
    20482073                        if (!_va_27.isValid ())
     
    20562081                          continue _continue1;
    20572082                        }
    2058                         int _v_len___dollar_tmp_m_460_m_45 = (_v_len13 - _v_len14);
     2083                        int _v_len___dollar_tmp_m_463_m_45 = (_v_len13 - _v_len14);
    20592084                        if (_v_lsplit__deref__deref__lsplit__Get1.isSymbolAt (0))
    20602085                        {
     
    20702095                          continue _continue2;
    20712096                        }
    2072                         Expr _ve__dollar_tmp_m_460_m_45 = Expr.empty;
    2073                         _ve__dollar_tmp_m_460_m_45 = _v_lsplit__deref__deref__lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_460_m_45);
     2097                        Expr _ve__dollar_tmp_m_463_m_45 = Expr.empty;
     2098                        _ve__dollar_tmp_m_463_m_45 = _v_lsplit__deref__deref__lsplit__Get1.subexpr ((0 + 1), _v_len___dollar_tmp_m_463_m_45);
    20742099                        _gt_auxalt6 = _vt_action;
    20752100                        break _exit2;
     
    21012126                  _exit3: _continue3: for ( ; ; _va_28.next ())
    21022127                  {
    2103                     Expr _ve__dollar_tmp_m_462_m_33 = _va_28.getLeft();
     2128                    Expr _ve__dollar_tmp_m_465_m_33 = _va_28.getLeft();
    21042129                    Expr _v_lsplit__Get2 = _va_28.getRight();
    21052130                    if (!_va_28.isValid ())
     
    21132138                      break _block7__branch1;
    21142139                    }
    2115                     int _v_len___dollar_tmp_m_462_m_60 = (_v_len17 - _v_len18);
     2140                    int _v_len___dollar_tmp_m_465_m_60 = (_v_len17 - _v_len18);
    21162141                    if (_v_lsplit__Get2.isSymbolAt (0))
    21172142                    {
     
    21252150                      continue _continue3;
    21262151                    }
    2127                     int _v_len___dollar_tmp_m_462_m_57 = (_v_len19 - _v_len20);
     2152                    int _v_len___dollar_tmp_m_465_m_57 = (_v_len19 - _v_len20);
    21282153                    if (_v_deref__lsplit__Get2.isSymbolAt (0))
    21292154                    {
     
    21352160                      continue _continue3;
    21362161                    }
    2137                     Expr _ve__dollar_tmp_m_462_m_60 = Expr.empty;
    2138                     _ve__dollar_tmp_m_462_m_60 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_462_m_60);
     2162                    Expr _ve__dollar_tmp_m_465_m_60 = Expr.empty;
     2163                    _ve__dollar_tmp_m_465_m_60 = _v_lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_465_m_60);
    21392164                    Expr _vt_action = Expr.empty;
    21402165                    _vt_action = _v_deref__lsplit__Get2.subexpr ((0 + 1), 1);
    2141                     Expr _ve__dollar_tmp_m_462_m_57 = Expr.empty;
    2142                     _ve__dollar_tmp_m_462_m_57 = _v_deref__lsplit__Get2.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_462_m_57);
     2166                    Expr _ve__dollar_tmp_m_465_m_57 = Expr.empty;
     2167                    _ve__dollar_tmp_m_465_m_57 = _v_deref__lsplit__Get2.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_465_m_57);
    21432168                    Expr.SplitIterator _va_29 = _v_deref__deref__lsplit__Get2.leftSplit(0);
    21442169                    _exit4: _continue4: for ( ; ; _va_29.next ())
    21452170                    {
    2146                       Expr _ve__dollar_tmp_m_462_m_37 = _va_29.getLeft();
     2171                      Expr _ve__dollar_tmp_m_465_m_37 = _va_29.getLeft();
    21472172                      Expr _v_lsplit__deref__deref__lsplit__Get2 = _va_29.getRight();
    21482173                      if (!_va_29.isValid ())
     
    21562181                        continue _continue3;
    21572182                      }
    2158                       int _v_len___dollar_tmp_m_462_m_45 = (_v_len21 - _v_len22);
     2183                      int _v_len___dollar_tmp_m_465_m_45 = (_v_len21 - _v_len22);
    21592184                      if (_v_lsplit__deref__deref__lsplit__Get2.isSymbolAt (0))
    21602185                      {
     
    21702195                        continue _continue4;
    21712196                      }
    2172                       Expr _ve__dollar_tmp_m_462_m_45 = Expr.empty;
    2173                       _ve__dollar_tmp_m_462_m_45 = _v_lsplit__deref__deref__lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_462_m_45);
     2197                      Expr _ve__dollar_tmp_m_465_m_45 = Expr.empty;
     2198                      _ve__dollar_tmp_m_465_m_45 = _v_lsplit__deref__deref__lsplit__Get2.subexpr ((0 + 1), _v_len___dollar_tmp_m_465_m_45);
    21742199                      _gt_auxalt6 = _vt_action;
    21752200                      break _exit4;
     
    22302255            break _block2;
    22312256          }
    2232           Parse_Args (Expr.concat (_ve_files, (Comparable) _vv_arg), Expr.empty, _gs_index__2.getExpr (), _v_res1);
     2257          Parse_Args (Expr.concat (_ve_files, (Comparable<?>) _vv_arg), Expr.empty, _gs_index__2.getExpr (), _v_res1);
    22332258        }
    22342259        break _block1;
     
    22412266          break _block1__branch2;
    22422267        }
    2243         int _v_len___dollar_tmp_m_474_m_16 = (_v_len23 - _v_len24);
    2244         Expr _vv__dollar_tmp_m_474_m_16 = Expr.empty;
    2245         _vv__dollar_tmp_m_474_m_16 = _ve_prevarg.subexpr (0, _v_len___dollar_tmp_m_474_m_16);
     2268        int _v_len___dollar_tmp_m_477_m_16 = (_v_len23 - _v_len24);
     2269        Expr _vv__dollar_tmp_m_477_m_16 = Expr.empty;
     2270        _vv__dollar_tmp_m_477_m_16 = _ve_prevarg.subexpr (0, _v_len___dollar_tmp_m_477_m_16);
    22462271        refal.plus.StdIO.PrintLnCh (refal.plus.StdIO.StdErr, _c_92);
    22472272        refal.plus.Dos.Exit (_c_2);
     
    22722297    refal.plus.Box.Get (RFP_Boot_Path, _ge_auxcall2);
    22732298    Result _ge_auxcall3 = new Result (Expr.empty);
    2274     if (!refal.plus.List.MapIn (_c_95, new Expr ((Comparable) _ge_auxcall1.getExpr ()), Expr.concat (_ge_auxcall2.getExpr (), RFP_Default_Boot_Path), _ge_auxcall3))
     2299    if (!refal.plus.List.MapIn (_c_95, new Expr ((Comparable<?>) _ge_auxcall1.getExpr ()), Expr.concat (_ge_auxcall2.getExpr (), RFP_Default_Boot_Path), _ge_auxcall3))
    22752300    {
    22762301      throw new RefalException ("org.refal.plus.compiler.rfpc", "Set_Path", "Unexpected fail");
     
    22822307    refal.plus.Box.Get (RFP_Include_Path, _ge_auxcall5);
    22832308    Result _ge_auxcall6 = new Result (Expr.empty);
    2284     if (!refal.plus.List.MapIn (_c_95, new Expr ((Comparable) _ge_auxcall4.getExpr ()), _ge_auxcall5.getExpr (), _ge_auxcall6))
     2309    if (!refal.plus.List.MapIn (_c_95, new Expr ((Comparable<?>) _ge_auxcall4.getExpr ()), _ge_auxcall5.getExpr (), _ge_auxcall6))
    22852310    {
    22862311      throw new RefalException ("org.refal.plus.compiler.rfpc", "Set_Path", "Unexpected fail");
     
    23042329      _exit1: _continue1: for ( ; ; _va_30.next ())
    23052330      {
    2306         Expr _ve__dollar_tmp_m_494_m_16 = _va_30.getLeft();
     2331        Expr _ve__dollar_tmp_m_497_m_16 = _va_30.getLeft();
    23072332        Expr _v_lsplit__Items = _va_30.getRight();
    23082333        if (!_va_30.isValid ())
     
    23162341          break _block1__branch1;
    23172342        }
    2318         int _v_len___dollar_tmp_m_494_m_25 = (_v_len1 - _v_len2);
     2343        int _v_len___dollar_tmp_m_497_m_25 = (_v_len1 - _v_len2);
    23192344        Expr _vt_Item = Expr.empty;
    23202345        _vt_Item = _v_lsplit__Items.subexpr (0, 1);
    2321         Expr _ve__dollar_tmp_m_494_m_25 = Expr.empty;
    2322         _ve__dollar_tmp_m_494_m_25 = _v_lsplit__Items.subexpr ((0 + 1), _v_len___dollar_tmp_m_494_m_25);
     2346        Expr _ve__dollar_tmp_m_497_m_25 = Expr.empty;
     2347        _ve__dollar_tmp_m_497_m_25 = _v_lsplit__Items.subexpr ((0 + 1), _v_len___dollar_tmp_m_497_m_25);
    23232348        _block2: {
    23242349          _block2__branch1: {
     
    23492374                  break _block3__branch1;
    23502375                }
    2351                 int _v_len___dollar_tmp_m_496_m_51 = (_v_len5 - _v_len6);
     2376                int _v_len___dollar_tmp_m_499_m_51 = (_v_len5 - _v_len6);
    23522377                if (_v_deref__deref__Item.isSymbolAt ((0 + 1)))
    23532378                {
     
    23612386                  break _block3__branch1;
    23622387                }
    2363                 int _v_len___dollar_tmp_m_496_m_48 = (_v_len7 - _v_len8);
     2388                int _v_len___dollar_tmp_m_499_m_48 = (_v_len7 - _v_len8);
    23642389                if (!_c_97.termEquals (_v_deref__Item, 0))
    23652390                {
     
    23862411                Expr _ve_ItemBody = Expr.empty;
    23872412                _ve_ItemBody = _v_deref__Item.subexpr ((0 + 1 + 1 + 1 + 1 + 1), _v_len__ItemBody);
    2388                 Expr _ve__dollar_tmp_m_496_m_51 = Expr.empty;
    2389                 _ve__dollar_tmp_m_496_m_51 = _v_deref__deref__Item.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_496_m_51);
    2390                 Expr _ve__dollar_tmp_m_496_m_48 = Expr.empty;
    2391                 _ve__dollar_tmp_m_496_m_48 = _v_deref__deref__deref__Item.subexpr (0, _v_len___dollar_tmp_m_496_m_48);
    2392                 _gt_auxalt1 = new Expr ((Comparable) Expr.getConcatenator ().toRight (_vs_Linkage).toRight (_vs_ItemType).toRight (_vt_ItemName).toRight (_ve_ItemBody).yield ());
     2413                Expr _ve__dollar_tmp_m_499_m_51 = Expr.empty;
     2414                _ve__dollar_tmp_m_499_m_51 = _v_deref__deref__Item.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_499_m_51);
     2415                Expr _ve__dollar_tmp_m_499_m_48 = Expr.empty;
     2416                _ve__dollar_tmp_m_499_m_48 = _v_deref__deref__deref__Item.subexpr (0, _v_len___dollar_tmp_m_499_m_48);
     2417                _gt_auxalt1 = new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_vs_Linkage).toRight (_vs_ItemType).toRight (_vt_ItemName).toRight (_ve_ItemBody).yield ());
    23932418                break _block3;
    23942419              }
     
    24262451                Expr _ve_ItemBody = Expr.empty;
    24272452                _ve_ItemBody = _v_deref__Item2.subexpr ((0 + 1 + 1 + 1 + 1), _v_len__ItemBody2);
    2428                 _gt_auxalt1 = new Expr ((Comparable) Expr.getConcatenator ().toRight (_vs_Linkage).toRight (_vs_ItemType).toRight (_vt_ItemName).toRight (_ve_ItemBody).yield ());
     2453                _gt_auxalt1 = new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_vs_Linkage).toRight (_vs_ItemType).toRight (_vt_ItemName).toRight (_ve_ItemBody).yield ());
    24292454                break _block3;
    24302455              }
     
    24532478                  break _block3__branch3;
    24542479                }
    2455                 int _v_len___dollar_tmp_m_500_m_44 = (_v_len13 - _v_len14);
     2480                int _v_len___dollar_tmp_m_503_m_44 = (_v_len13 - _v_len14);
    24562481                if (_v_deref__deref__Item3.isSymbolAt ((0 + 1)))
    24572482                {
     
    24652490                  break _block3__branch3;
    24662491                }
    2467                 int _v_len___dollar_tmp_m_500_m_41 = (_v_len15 - _v_len16);
     2492                int _v_len___dollar_tmp_m_503_m_41 = (_v_len15 - _v_len16);
    24682493                if (!_v_deref__Item3.isSymbolAt (0))
    24692494                {
     
    24862511                Expr _ve_ItemBody = Expr.empty;
    24872512                _ve_ItemBody = _v_deref__Item3.subexpr ((0 + 1 + 1 + 1 + 1), _v_len__ItemBody3);
    2488                 Expr _ve__dollar_tmp_m_500_m_44 = Expr.empty;
    2489                 _ve__dollar_tmp_m_500_m_44 = _v_deref__deref__Item3.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_500_m_44);
    2490                 Expr _ve__dollar_tmp_m_500_m_41 = Expr.empty;
    2491                 _ve__dollar_tmp_m_500_m_41 = _v_deref__deref__deref__Item3.subexpr (0, _v_len___dollar_tmp_m_500_m_41);
    2492                 _gt_auxalt1 = new Expr ((Comparable) Expr.getConcatenator ().toRight (_vs_Linkage).toRight (_vs_ItemType).toRight (_vt_ItemName).toRight (_ve_ItemBody).yield ());
     2513                Expr _ve__dollar_tmp_m_503_m_44 = Expr.empty;
     2514                _ve__dollar_tmp_m_503_m_44 = _v_deref__deref__Item3.subexpr ((0 + 1 + 1), _v_len___dollar_tmp_m_503_m_44);
     2515                Expr _ve__dollar_tmp_m_503_m_41 = Expr.empty;
     2516                _ve__dollar_tmp_m_503_m_41 = _v_deref__deref__deref__Item3.subexpr (0, _v_len___dollar_tmp_m_503_m_41);
     2517                _gt_auxalt1 = new Expr ((Comparable<?>) Expr.getConcatenator ().toRight (_vs_Linkage).toRight (_vs_ItemType).toRight (_vt_ItemName).toRight (_ve_ItemBody).yield ());
    24932518                break _block3;
    24942519              }
    2495               Expr _vt__dollar_tmp_m_502_m_10 = Expr.empty;
    2496               _vt__dollar_tmp_m_502_m_10 = _vt_Item.subexpr (0, 1);
     2520              Expr _vt__dollar_tmp_m_505_m_10 = Expr.empty;
     2521              _vt__dollar_tmp_m_505_m_10 = _vt_Item.subexpr (0, 1);
    24972522              _gt_auxalt1 = _vt_Item;
    24982523            }
     
    25522577                Expr _v_deref__Left1 = (Expr) _v_Left1.getExpr ().at (0);
    25532578                Expr _v_deref__Left12 = (Expr) _v_Left1.getExpr ().at ((0 + 1));
    2554                 int _v_len19 = _v_deref__Left12.length ();
     2579                int _v_len19 = _v_deref__Left1.length ();
    25552580                int _v_len20 = 0;
    25562581                if (_v_len19 < _v_len20)
     
    25582583                  continue _continue1;
    25592584                }
    2560                 int _v_len__out = (_v_len19 - _v_len20);
    2561                 int _v_len21 = _v_deref__Left1.length ();
     2585                int _v_len__in = (_v_len19 - _v_len20);
     2586                int _v_len21 = _v_deref__Left12.length ();
    25622587                int _v_len22 = 0;
    25632588                if (_v_len21 < _v_len22)
     
    25652590                  continue _continue1;
    25662591                }
    2567                 int _v_len__in = (_v_len21 - _v_len22);
     2592                int _v_len__out = (_v_len21 - _v_len22);
    25682593                Expr _ve_in = Expr.empty;
    25692594                _ve_in = _v_deref__Left1.subexpr (0, _v_len__in);
     
    25752600                rfp_format.Format_Exp (_ve_out, _ge_auxcall3);
    25762601                _vs_tab = rfp_helper.Fun;
    2577                 _ve_ItemDef = Expr.concat ((Comparable) _ge_auxcall2.getExpr (), (Comparable) _ge_auxcall3.getExpr ());
     2602                _ve_ItemDef = Expr.concat ((Comparable<?>) _ge_auxcall2.getExpr (), (Comparable<?>) _ge_auxcall3.getExpr ());
    25782603                break _block4;
    25792604              }
     
    26022627                Expr _v_deref__Left2 = (Expr) _v_Left2.getExpr ().at (0);
    26032628                Expr _v_deref__Left22 = (Expr) _v_Left2.getExpr ().at ((0 + 1));
    2604                 int _v_len23 = _v_deref__Left22.length ();
     2629                int _v_len23 = _v_deref__Left2.length ();
    26052630                int _v_len24 = 0;
    26062631                if (_v_len23 < _v_len24)
     
    26082633                  continue _continue1;
    26092634                }
    2610                 int _v_len__out2 = (_v_len23 - _v_len24);
    2611                 int _v_len25 = _v_deref__Left2.length ();
     2635                int _v_len__in2 = (_v_len23 - _v_len24);
     2636                int _v_len25 = _v_deref__Left22.length ();
    26122637                int _v_len26 = 0;
    26132638                if (_v_len25 < _v_len26)
     
    26152640                  continue _continue1;
    26162641                }
    2617                 int _v_len__in2 = (_v_len25 - _v_len26);
     2642                int _v_len__out2 = (_v_len25 - _v_len26);
    26182643                Expr _ve_in = Expr.empty;
    26192644                _ve_in = _v_deref__Left2.subexpr (0, _v_len__in2);
     
    26252650                rfp_format.Format_Exp (_ve_out, _ge_auxcall5);
    26262651                _vs_tab = rfp_helper.Fun;
    2627                 _ve_ItemDef = Expr.concat ((Comparable) _ge_auxcall4.getExpr (), (Comparable) _ge_auxcall5.getExpr ());
     2652                _ve_ItemDef = Expr.concat ((Comparable<?>) _ge_auxcall4.getExpr (), (Comparable<?>) _ge_auxcall5.getExpr ());
    26282653                break _block4;
    26292654              }
     
    26522677                Expr _v_deref__Left3 = (Expr) _v_Left3.getExpr ().at (0);
    26532678                Expr _v_deref__Left32 = (Expr) _v_Left3.getExpr ().at ((0 + 1));
    2654                 int _v_len27 = _v_deref__Left32.length ();
     2679                int _v_len27 = _v_deref__Left3.length ();
    26552680                int _v_len28 = 0;
    26562681                if (_v_len27 < _v_len28)
     
    26582683                  continue _continue1;
    26592684                }
    2660                 int _v_len__out3 = (_v_len27 - _v_len28);
    2661                 int _v_len29 = _v_deref__Left3.length ();
     2685                int _v_len__in3 = (_v_len27 - _v_len28);
     2686                int _v_len29 = _v_deref__Left32.length ();
    26622687                int _v_len30 = 0;
    26632688                if (_v_len29 < _v_len30)
     
    26652690                  continue _continue1;
    26662691                }
    2667                 int _v_len__in3 = (_v_len29 - _v_len30);
     2692                int _v_len__out3 = (_v_len29 - _v_len30);
    26682693                Expr _ve_in = Expr.empty;
    26692694                _ve_in = _v_deref__Left3.subexpr (0, _v_len__in3);
     
    26752700                rfp_format.Format_Exp (_ve_out, _ge_auxcall7);
    26762701                _vs_tab = rfp_helper.IsFun;
    2677                 _ve_ItemDef = Expr.concat ((Comparable) _ge_auxcall6.getExpr (), (Comparable) _ge_auxcall7.getExpr ());
     2702                _ve_ItemDef = Expr.concat ((Comparable<?>) _ge_auxcall6.getExpr (), (Comparable<?>) _ge_auxcall7.getExpr ());
    26782703                break _block4;
    26792704              }
     
    26912716                throw new RefalException ("org.refal.plus.compiler.rfpc", "Get_Ready_For_Compilation", "Unexpected fail");
    26922717              }
    2693               Expr _vs__dollar_tmp_m_515_m_12 = Expr.empty;
    2694               _vs__dollar_tmp_m_515_m_12 = _vs_ItemType.subexpr (0, 1);
     2718              Expr _vs__dollar_tmp_m_518_m_12 = Expr.empty;
     2719              _vs__dollar_tmp_m_518_m_12 = _vs_ItemType.subexpr (0, 1);
    26952720              _vs_tab = rfp_helper.Object;
    26962721              _ve_ItemDef = _ve_ItemBody;
     
    27862811                break _block2__branch1;
    27872812              }
    2788               int _v_len___dollar_tmp_m_533_m_21 = (_v_len5 - _v_len6);
    2789               Expr _vv__dollar_tmp_m_533_m_21 = Expr.empty;
    2790               _vv__dollar_tmp_m_533_m_21 = _ve_indent.subexpr (0, _v_len___dollar_tmp_m_533_m_21);
     2813              int _v_len___dollar_tmp_m_536_m_21 = (_v_len5 - _v_len6);
     2814              Expr _vv__dollar_tmp_m_536_m_21 = Expr.empty;
     2815              _vv__dollar_tmp_m_536_m_21 = _ve_indent.subexpr (0, _v_len___dollar_tmp_m_536_m_21);
    27912816              refal.plus.StdIO.PrintLnCh (_vs_channel, Expr.empty);
    27922817              break _block2;
     
    28042829              _exit2: _continue2: for ( ; ; _va_32.next ())
    28052830              {
    2806                 Expr _ve__dollar_tmp_m_537_m_15 = _va_32.getLeft();
     2831                Expr _ve__dollar_tmp_m_540_m_15 = _va_32.getLeft();
    28072832                Expr _v_lsplit__1 = _va_32.getRight();
    28082833                if (!_va_32.isValid ())
     
    28162841                  break _block3__branch1;
    28172842                }
    2818                 int _v_len___dollar_tmp_m_537_m_21 = (_v_len7 - _v_len8);
     2843                int _v_len___dollar_tmp_m_540_m_21 = (_v_len7 - _v_len8);
    28192844                if (_v_lsplit__1.isSymbolAt (0))
    28202845                {
     
    28282853                  continue _continue2;
    28292854                }
    2830                 int _v_len___dollar_tmp_m_537_m_18 = (_v_len9 - _v_len10);
    2831                 Expr _ve__dollar_tmp_m_537_m_21 = Expr.empty;
    2832                 _ve__dollar_tmp_m_537_m_21 = _v_lsplit__1.subexpr ((0 + 1), _v_len___dollar_tmp_m_537_m_21);
    2833                 Expr _ve__dollar_tmp_m_537_m_18 = Expr.empty;
    2834                 _ve__dollar_tmp_m_537_m_18 = _v_deref__lsplit__1.subexpr (0, _v_len___dollar_tmp_m_537_m_18);
     2855                int _v_len___dollar_tmp_m_540_m_18 = (_v_len9 - _v_len10);
     2856                Expr _ve__dollar_tmp_m_540_m_21 = Expr.empty;
     2857                _ve__dollar_tmp_m_540_m_21 = _v_lsplit__1.subexpr ((0 + 1), _v_len___dollar_tmp_m_540_m_21);
     2858                Expr _ve__dollar_tmp_m_540_m_18 = Expr.empty;
     2859                _ve__dollar_tmp_m_540_m_18 = _v_deref__lsplit__1.subexpr (0, _v_len___dollar_tmp_m_540_m_18);
    28352860                refal.plus.StdIO.PrintLnCh (_vs_channel, Expr.empty);
    28362861                refal.plus.StdIO.PrintCh (_vs_channel, Expr.concat (_ve_indent, _c_112));
     
    28492874                break _block4__branch1;
    28502875              }
    2851               int _v_len___dollar_tmp_m_543_m_19 = (_v_len11 - _v_len12);
     2876              int _v_len___dollar_tmp_m_546_m_19 = (_v_len11 - _v_len12);
    28522877              if (_ve_2.isSymbolAt (0))
    28532878              {
     
    28612886                break _block4__branch1;
    28622887              }
    2863               int _v_len___dollar_tmp_m_543_m_16 = (_v_len13 - _v_len14);
    2864               Expr _ve__dollar_tmp_m_543_m_19 = Expr.empty;
    2865               _ve__dollar_tmp_m_543_m_19 = _ve_2.subexpr ((0 + 1), _v_len___dollar_tmp_m_543_m_19);
    2866               Expr _ve__dollar_tmp_m_543_m_16 = Expr.empty;
    2867               _ve__dollar_tmp_m_543_m_16 = _v_deref__2.subexpr (0, _v_len___dollar_tmp_m_543_m_16);
     2888              int _v_len___dollar_tmp_m_546_m_16 = (_v_len13 - _v_len14);
     2889              Expr _ve__dollar_tmp_m_546_m_19 = Expr.empty;
     2890              _ve__dollar_tmp_m_546_m_19 = _ve_2.subexpr ((0 + 1), _v_len___dollar_tmp_m_546_m_19);
     2891              Expr _ve__dollar_tmp_m_546_m_16 = Expr.empty;
     2892              _ve__dollar_tmp_m_546_m_16 = _v_deref__2.subexpr (0, _v_len___dollar_tmp_m_546_m_16);
    28682893              break _block4;
    28692894            }
     
    28792904                break _block4__branch2;
    28802905              }
    2881               int _v_len___dollar_tmp_m_544_m_28 = (_v_len15 - _v_len16);
    2882               Expr _vv__dollar_tmp_m_544_m_28 = Expr.empty;
    2883               _vv__dollar_tmp_m_544_m_28 = _ve_indent.subexpr (0, _v_len___dollar_tmp_m_544_m_28);
     2906              int _v_len___dollar_tmp_m_547_m_28 = (_v_len15 - _v_len16);
     2907              Expr _vv__dollar_tmp_m_547_m_28 = Expr.empty;
     2908              _vv__dollar_tmp_m_547_m_28 = _ve_indent.subexpr (0, _v_len___dollar_tmp_m_547_m_28);
    28842909              break _block4;
    28852910            }
     
    30133038            }
    30143039            refal.plus.StdIO.PrintLnCh (_vs_channel, Expr.concat (_ve_indent, _ve_0));
    3015             CPP_Pretty_Print (_c_2, _vs_channel, Expr.concat (_ve_indent, Tab), new Expr ((Comparable) _ve_1));
     3040            CPP_Pretty_Print (_c_2, _vs_channel, Expr.concat (_ve_indent, Tab), new Expr ((Comparable<?>) _ve_1));
    30163041          }
    30173042          CPP_Pretty_Print (_vs_Isinner__call, _vs_channel, _ve_indent, _ve_2);
     
    30663091          break _block1__branch1;
    30673092        }
    3068         Expr _v_compose1 = Expr.concat (_ge_arg1, (Comparable) _ge_arg2);
     3093        Expr _v_compose1 = Expr.concat (_ge_arg1, (Comparable<?>) _ge_arg2);
    30693094        if (_v_compose1.isSymbolAt ((0 + 1)))
    30703095        {
     
    30783103          break _block1__branch1;
    30793104        }
    3080         int _v_len___dollar_tmp_m_581_m_12 = (_v_len1 - _v_len2);
     3105        int _v_len___dollar_tmp_m_584_m_12 = (_v_len1 - _v_len2);
    30813106        if (!_v_compose1.isSymbolAt (0))
    30823107        {
     
    30853110        Expr _vs_ymbol = Expr.empty;
    30863111        _vs_ymbol = _v_compose1.subexpr (0, 1);
    3087         Expr _ve__dollar_tmp_m_581_m_12 = Expr.empty;
    3088         _ve__dollar_tmp_m_581_m_12 = _v_deref__compose1.subexpr (0, _v_len___dollar_tmp_m_581_m_12);
     3112        Expr _ve__dollar_tmp_m_584_m_12 = Expr.empty;
     3113        _ve__dollar_tmp_m_584_m_12 = _v_deref__compose1.subexpr (0, _v_len___dollar_tmp_m_584_m_12);
    30893114        if (!refal.plus.Class.IsChannel (_vs_ymbol))
    30903115        {
     
    31363161        Expr _v_deref__RevDate = (Expr) RevDate.at (0);
    31373162        Expr _v_deref__RevDate2 = (Expr) RevDate.at ((0 + 1));
     3163        if (_v_deref__RevDate.length () < 3)
     3164        {
     3165          break _block1__branch1;
     3166        }
     3167        if (_v_deref__RevDate.length () > ((_v_deref__RevDate.length () - 3) + (_v_deref__RevDate.length () - 2) + (_v_deref__RevDate.length () - 3) + 2))
     3168        {
     3169          break _block1__branch1;
     3170        }
    31383171        if (_v_deref__RevDate2.length () < 3)
    31393172        {
     
    31413174        }
    31423175        if (_v_deref__RevDate2.length () > ((_v_deref__RevDate2.length () - 3) + (_v_deref__RevDate2.length () - 2) + (_v_deref__RevDate2.length () - 3) + 2))
    3143         {
    3144           break _block1__branch1;
    3145         }
    3146         if (_v_deref__RevDate.length () < 3)
    3147         {
    3148           break _block1__branch1;
    3149         }
    3150         if (_v_deref__RevDate.length () > ((_v_deref__RevDate.length () - 3) + (_v_deref__RevDate.length () - 2) + (_v_deref__RevDate.length () - 3) + 2))
    31513176        {
    31523177          break _block1__branch1;
     
    31553180        _exit1: _continue1: for ( ; ; _va_34.next ())
    31563181        {
    3157           Expr _ve__dollar_tmp_m_595_m_16 = _va_34.getLeft();
     3182          Expr _ve__dollar_tmp_m_598_m_16 = _va_34.getLeft();
    31583183          Expr _v_lsplit__deref__RevDate = _va_34.getRight();
    31593184          if (!_va_34.isValid ())
     
    31853210              continue _continue1;
    31863211            }
    3187             int _v_len___dollar_tmp_m_595_m_32 = (_v_len1 - _v_len2);
     3212            int _v_len___dollar_tmp_m_598_m_32 = (_v_len1 - _v_len2);
    31883213            if (!_c_12.termEquals (_v_lsplit__lsplit__deref__RevDate, 0))
    31893214            {
    31903215              continue _continue2;
    31913216            }
    3192             Expr _ve__dollar_tmp_m_595_m_32 = Expr.empty;
    3193             _ve__dollar_tmp_m_595_m_32 = _v_lsplit__lsplit__deref__RevDate.subexpr ((0 + 1), _v_len___dollar_tmp_m_595_m_32);
     3217            Expr _ve__dollar_tmp_m_598_m_32 = Expr.empty;
     3218            _ve__dollar_tmp_m_598_m_32 = _v_lsplit__lsplit__deref__RevDate.subexpr ((0 + 1), _v_len___dollar_tmp_m_598_m_32);
    31943219            Expr.SplitIterator _va_36 = _v_deref__RevDate2.leftSplit(0);
    31953220            _exit3: _continue3: for ( ; ; _va_36.next ())
    31963221            {
    3197               Expr _ve__dollar_tmp_m_595_m_36 = _va_36.getLeft();
     3222              Expr _ve__dollar_tmp_m_598_m_36 = _va_36.getLeft();
    31983223              Expr _v_lsplit__deref__RevDate2 = _va_36.getRight();
    31993224              if (!_va_36.isValid ())
     
    32253250                  continue _continue3;
    32263251                }
    3227                 int _v_len___dollar_tmp_m_595_m_53 = (_v_len3 - _v_len4);
     3252                int _v_len___dollar_tmp_m_598_m_53 = (_v_len3 - _v_len4);
    32283253                if (!_c_12.termEquals (_v_lsplit__lsplit__deref__RevDate2, 0))
    32293254                {
    32303255                  continue _continue4;
    32313256                }
    3232                 Expr _ve__dollar_tmp_m_595_m_53 = Expr.empty;
    3233                 _ve__dollar_tmp_m_595_m_53 = _v_lsplit__lsplit__deref__RevDate2.subexpr ((0 + 1), _v_len___dollar_tmp_m_595_m_53);
     3257                Expr _ve__dollar_tmp_m_598_m_53 = Expr.empty;
     3258                _ve__dollar_tmp_m_598_m_53 = _v_lsplit__lsplit__deref__RevDate2.subexpr ((0 + 1), _v_len___dollar_tmp_m_598_m_53);
    32343259                _v_res1.assign (Expr.getConcatenator ().toRight (_c_119).toRight (_vv_rev).toRight (_c_118).toRight (_vv_date).yield ());
    32353260                break _exit4;
Note: See TracChangeset for help on using the changeset viewer.