texlive[62936] Master: mcf2graph (27mar22)

commits+karl at tug.org commits+karl at tug.org
Wed Apr 6 00:08:50 CEST 2022


Revision: 62936
          http://tug.org/svn/texlive?view=revision&revision=62936
Author:   karl
Date:     2022-04-06 00:08:50 +0200 (Wed, 06 Apr 2022)
Log Message:
-----------
mcf2graph (27mar22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
    trunk/Master/tlpkg/libexec/ctan2tds

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,6 +1,15 @@
 *******************************************************************************
- Changelog of mcf2graph software package          by Akira Yamaji 2022-03-13
+ Changelog of mcf2graph software package          by Akira Yamaji 2022-03-27
 *******************************************************************************
+[ver. 4.83  / 2022-03-27]
+  -fix bug in bond check
+  -change fuction name
+   check() => mc_check()
+   query() => mc_query()
+  -improve report output
+  -update mcf_library.mcf
+  -update MCF manual
+
 [ver. 4.82  / 2022-03-13]
   -add new example file
    mcf_exa_code.tex (example include code)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,7 +1,7 @@
 ********************************************************************************
  mcf2graph  : Convert Molecular Coding Format to graphics with MetaPost
  Author     : Akira Yamaji
- version    : 4.82 2022-03-13
+ version    : 4.83 2022-03-27
  E-mail     : mcf2graph at gmail.com
  Located at : http://www.ctan.org/pkg/mcf2graph
 ********************************************************************************
@@ -34,21 +34,21 @@
 
 3. How to use mcf2graph with MetaPost
  Minimum requirement to use mcf2graph : mpost.exe,mpost.dll,mpost.mp,plain.mp
- ( 1) >mpost                  FILENAME  => output eps(.mps) file
- ( 2) >mpost -s ahangle=1     FILENAME  => output png file (600dpi)
- ( 3) >mpost -s ahangle=11    FILENAME  => output png file (1200dpi)
- ( 4) >mpost -s ahangle=2     FILENAME  => output svg file 
- ( 5) >mpost -s ahangle=3     FILENAME  => output eps(.eps) file
- ( 6) >mpost -s ahlength=1    FILENAME  => output information-aux file(for tex)
- ( 7) >mpost -s ahlength=2    FILENAME  => output information-aux file
-                                                  (for spread sheet)
- ( 8) >mpost -s ahlength=3    FILENAME  => output library-aux file
- ( 9) >mpost -s ahlength=5    FILENAME  => output mol file(V2000)
- (10) >mpost -s ahlength=6    FILENAME  => output mol file(V3000)
- (11) >mpost -s ahlength=7    FILENAME  => output report file
+ ( 1) >mpost               FILENAME  => output eps(.mps) file
+ ( 2) >mpost -s ahangle=1  FILENAME  => output png file (600dpi)
+ ( 3) >mpost -s ahangle=11 FILENAME  => output png file (1200dpi)
+ ( 4) >mpost -s ahangle=2  FILENAME  => output svg file 
+ ( 5) >mpost -s ahangle=3  FILENAME  => output eps(.eps) file
+ ( 6) >mpost -s ahlength=1 FILENAME  => output information-aux file(for tex)
+ ( 7) >mpost -s ahlength=2 FILENAME  => output information-aux file
+                                               (for spread sheet)
+ ( 8) >mpost -s ahlength=3 FILENAME  => output library-aux file
+ ( 9) >mpost -s ahlength=5 FILENAME  => output mol file(V2000)
+ (10) >mpost -s ahlength=6 FILENAME  => output mol file(V3000)
+ (11) >mpost -s ahlength=7 FILENAME  => output report file
 
 4. License
- mcf2graph ver 4.82    Copyright (c) 2013-2022   Akira Yamaji
+ mcf2graph ver 4.83    Copyright (c) 2013-2022   Akira Yamaji
 
  Permission is hereby granted, free of charge, to any person obtaining a copy
  of this software and associated documentation files (the "Software"), to deal

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.82    Copyright (c) 2013-2022   Akira Yamaji
+% mcf2graph ver 4.83    Copyright (c) 2013-2022   Akira Yamaji
 %
 % Permission is hereby granted, free of charge, to any person obtaining a copy of this software
 % and associated documentation files (the "Software"), to deal in the Software without restriction,
@@ -33,7 +33,7 @@
 % Set output MOL file (V3000)                           : mpost -s ahlength=6     FILENAME
 % Set output report                                     : mpost -s ahlength=7     FILENAME
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-message "* This is mcf2graph ver 4.82  2022.03.13";
+message "* This is mcf2graph ver 4.83  2022.03.27";
 tracingstats:=1; prologues:=3; warningcheck:=0;
 %-------------------------------------------------------------------------------------------------
 numeric save_num[],parts_com[][],parts_par[][],parts_cnt[],tbl_atom[],tbl_group[][],tbl_atom_wt[],
@@ -162,25 +162,25 @@
 %--------------------------------------------------------------------------------------------------
 def init_par(text t)=
   nA:=nB:=nC:=0;
-  for list=t: if numeric list: nA:=nA+1; save_num[nA]:=list;
-              ef pair list:    nB:=nB+1; save_pair[nB]:=list;
-              ef string list:  nC:=nC+1; save_str[nC]:=list; fi
+  for list=t: if numeric list: save_num[incr nA]:=list;
+              ef pair list:    save_pair[incr nB]:=list;
+              ef string list:  save_str[incr nC]:=list; fi
   endfor
 enddef;
 %--------------------------------------------------------------------------------------------------
 def store_par(text t)=
   nA:=nB:=nC:=0;
-  for list=t: if numeric list: nA:=nA+1; if save_num[nA]<>list:  save_num[nA]:=list; fi
-              ef pair list:    nB:=nB+1; if save_pair[nB]<>list: save_pair[nB]:=list; fi
-              ef string list:  nC:=nC+1; if save_str[nC]<>list:  save_str[nC]:=list; fi fi
+  for list=t: if numeric list: if save_num[incr nA]<>list:  save_num[nA]:=list; fi
+              ef pair list:    if save_pair[incr nB]<>list: save_pair[nB]:=list; fi
+              ef string list:  if save_str[incr nC]<>list:  save_str[nC]:=list; fi fi
   endfor
 enddef;
 %--------------------------------------------------------------------------------------------------
 def restore_par(text t)=
   nA:=nB:=nC:=0;
-  forsuffixes list=t: if numeric list: nA:=nA+1; if list<>save_num[nA]:  list:=save_num[nA]; fi
-                      ef pair    list: nB:=nB+1; if list<>save_pair[nB]: list:=save_pair[nB]; fi
-                      ef string  list: nC:=nC+1; if list<>save_str[nC]:  list:=save_str[nC]; fi fi
+  forsuffixes list=t: if numeric list: if list<>save_num[incr nA]:  list:=save_num[nA]; fi
+                      ef pair    list: if list<>save_pair[incr nB]: list:=save_pair[nB]; fi
+                      ef string  list: if list<>save_str[incr nC]:  list:=save_str[nC]; fi fi
   endfor
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -201,15 +201,14 @@
   picture mol_pic[];
   color color_list[];
   %------------------------------------------------------------------------------------------------
+  store_par(parameter_list);
+  %------------------------------------------------------------------------------------------------
   let ext=ext_to_fig; let add=add_to_molecule; def '=read_ud enddef;
   %------------------------------------------------------------------------------------------------
   inf_NO:=inf_EN:=inf_JN:=inf_MW:=inf_FM:=inf_CAS:=inf_Cat:=inf_EXA:=inf_EXB:="-";
-  mc:=temps:=cal_MW:=cal_MI:=cal_FM:=filter_s:="";
-  file_input:=default_library;
+  mc:=temps:=cal_MW:=cal_MI:=cal_FM:=filter_s:=""; file_input:=default_library;
   %------------------------------------------------------------------------------------------------
   parts_num:=parts_usr_start; parts_int:=parts_int_start;
-  %------------------------------------------------------------------------------------------------
-  store_par(parameter_list);
   fig_num:=fig_num+1; f_ext:=cntM:=mc_row:=info_cnt:=f_EOF:=0;
   %------------------------------------------------------------------------------------------------
   for list=s:
@@ -216,10 +215,10 @@
     at_colon:=scan_char(":",list,0,1);
     if at_colon=1:
       fw_n:=scan_char(" ",list,1,2); bw_n:=scan_char(" ",list,-1,2);
-      mc_row:=mc_row+1; mc_indent[mc_row]:=fw_n-2;
+      mc_indent[incr mc_row]:=fw_n-2;
       mc[mc_row]:=substring(fw_n-1,bw_n) of list; mc:=mc&mc[mc_row];
     ef at_colon>=1:
-      info_cnt:=info_cnt+1; info_s[info_cnt]:=list;
+      info_s[incr info_cnt]:=list;
       sT:=substring(0,at_colon-1) of list; sV:=substring(at_colon,length(list)) of list;
       if sT="f": if scan_char(".",sV,0,1)=0: file_input:=sV&".mcf"; else: file_input:=sV; fi
       ef sT="t": temps:=sV;
@@ -307,7 +306,7 @@
           sS:=readfrom file_input; 
           if sS=EOF: f_EOF:=1; fi exitif f_EOF=1; exitif subc(1,sS)="+";
           if subc(1,sS)<>"%":
-            fw_n:=scan_char(" ",sS,1,1); mc_row:=mc_row+1; mc_indent[mc_row]:=fw_n-1;
+            fw_n:=scan_char(" ",sS,1,1); mc_indent[incr mc_row]:=fw_n-1;
             mc[mc_row]:=substring(fw_n-1,length(sS)) of sS; mc:=mc&mc[mc_row]; fi
         endfor
         for i=1 upto inf_num:
@@ -336,7 +335,6 @@
 enddef;
 %--------------------------------------------------------------------------------------------------
 vardef scan_bit(expr n,b)= if b>=1: odd(floor(n/b)) else: odd(floor((frac n)/b)) fi enddef;
-%--------------------------------------------------------------------------------------------------
 vardef scan_char(expr c,s,d,n)=
   nN:=0;
   if d=0:  for i=n upto length(s):   if subc(i,s)=c:  nN:=i; fi exitif nN>0; endfor
@@ -345,8 +343,10 @@
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 vardef '(text t)= parts_num:=parts_num+1; read_mcf(parts_num)(t); parts_num enddef;
-vardef read_id(text t)=read_mcf(incr parts_num)(|,#rate_cr,t,##,(_com,_rest)); parts_num enddef;
-vardef read_ud(text t)=read_mcf(incr parts_num)(dum,dum,|,t,(_com,_rest)); parts_num enddef;
+vardef read_id(text t)= parts_num:=parts_num+1;
+  read_mcf(parts_num)(|,#rate_cr,t,##,(_com,_rest)); parts_num enddef;
+vardef read_ud(text t)= parts_num:=parts_num+1;
+  read_mcf(parts_num)(dum,dum,|,t,(_com,_rest)); parts_num enddef;
 vardef abs_adress primary n = if n LT 0:: (n+360)-4095 else:: n-4095 fi enddef;
 primarydef a from_until b = (_from,a),(_until,b) enddef;
 tertiarydef a op_equ b = if (known a)and(known b):: change_bond(a,b) else:: _nop fi enddef; 
@@ -353,8 +353,8 @@
 tertiarydef a op_col b = if (known a)and(known b):: change_atom(a,b) else:: _nop fi enddef;
 tertiarydef a op_hat b = if known b:: (_tmp_rot,b),a  else:: _nop,a fi enddef;
 tertiarydef a op_til b = if known b:: (_tmp_line,b),a else:: _nop,a fi enddef;
-tertiarydef a op_lt  b = if known b:: (_tmp_env,b),a  else:: _nop,a fi enddef;
-tertiarydef a op_bq  b = if known b:: (_tmp_len,b),a  else:: _nop,a fi enddef;
+tertiarydef a op_lth b = if known b:: (_tmp_env,b),a  else:: _nop,a fi enddef;
+tertiarydef a op_bqu b = if known b:: (_tmp_len,b),a  else:: _nop,a fi enddef;
 def rot_angle primary n = (_rot_ang,n) enddef; def cyc_atom  primary n = (_cyc,n) enddef;
 def jump_atom_abs primary a =
   if numeric a:: (_jp_atom,$a) ef pair a:: (_jp_atom,$1),<$0,angle(a)~0`length(a),<$0 fi
@@ -367,21 +367,19 @@
 def group_dm secondary n = if known n:: (_group_dm,n) else:: _nop fi enddef;
 def group_wf secondary n = if known n:: (_group_wf,n) else:: _nop fi enddef;
 def group_zf secondary n = if known n:: (_group_zf,n) else:: _nop fi enddef;
-def group_wv secondary n = /n~wv enddef;
-def group_nb secondary n = /n~nb enddef;
-%-------------------------------------------------------------------------------------------------
-def CP = com_par enddef; def CPe = com_par_ex(0) enddef; def CPx = com_par_ex(1) enddef;
+def group_wv secondary n = /n~wv enddef;  def group_nb secondary n = /n~nb enddef;
 %=================================================================================================
 def read_mcf(expr n)(text t)=
   begingroup
   save nCP;
   if unknown inside_MC::
-    save /,//,/*,*/,**,*/*,~,^,',`,<,>,:,=,\,\\,*\,\*,*\*,@,@$,$,&,&$,#,##,{,},|,||,_,inside_MC;
+    save /,//,/*,*/,**,*/*,~,^,',`,<,>,:,=,\,\\,*\,\*,*\*,@,@$,$,&,&$,#,##,{,},|,||,_,CP,CA,
+         inside_MC;
     | :=mark_adress; || :=reset_adress; ##:=reset_length; _:=Me;
     \:=0; \\:=zero_dm; *\:=zero_wf; \*:=zero_zf; *\*:=zero_wv;
-    let = ==op_equ; let : ==op_col; let ^==op_hat; let ~==op_til; let > ==op_lt; let `==op_bq;
+    let = ==op_equ; let : ==op_col; let ^==op_hat; let ~==op_til; let > ==op_lth; let `==op_bqu;
     def $==abs_adress enddef; def &$==&.$ enddef; def '==read_id enddef; 
-    def {==read_number( enddef;
+    def {==read_number( enddef; def CP == com_par enddef; def CA == com_par_adr enddef;
     let }==); let @$==jump_atom_abs; let < ==rot_angle; let @==jump_atom; let &==cyc_atom;
     let #==chg_length; let /==group_si; let //==group_dm; let */==group_wf; let /*==group_zf;
     let */*==group_wv; let **==group_nb;
@@ -391,15 +389,14 @@
   nCP:=0;
   for list==t::
     if known list::
-      if pair list:: nCP:=nCP+1; parts_com[n][nCP]:=xpart(list); parts_par[n][nCP]:=ypart(list);
+      if pair list:: parts_com[n][incr nCP]:=xpart(list); parts_par[n][nCP]:=ypart(list);
       ef numeric list::
         if list==_nop:: message "unknown command in "AND decimal(n);
         ef list>=parts_emb_start::
           for i==1 upto parts_cnt[list]::
-            nCP:=nCP+1;
-            parts_com[n][nCP]:=parts_com[list][i]; parts_par[n][nCP]:=parts_par[list][i];
+            parts_com[n][incr nCP]:=parts_com[list][i]; parts_par[n][nCP]:=parts_par[list][i];
           endfor 
-        else:: nCP:=nCP+1; parts_com[n][nCP]:=_mk_bond; parts_par[n][nCP]:=list; fi
+        else:: parts_com[n][incr nCP]:=_mk_bond; parts_par[n][nCP]:=list; fi
         fi
     else:: message "unknown command in "AND decimal(n);
     fi
@@ -416,16 +413,15 @@
     if known list::
       if numeric list::
         if list==_nop:: message "unknown command in "AND decimal(parts_int);
-        else:: nA:=nA+1; parts_com[parts_int][nA]:=_numeric; parts_par[parts_int][nA]:=list;
+        else:: parts_com[parts_int][incr nA]:=_numeric; parts_par[parts_int][nA]:=list;
         fi
       ef pair list::
         if xpart(list)==_from:: nB:=ypart(list);
         ef xpart(list)==_until:: nC:=ypart(list);
            for i==nB upto nC::
-             nA:=nA+1; parts_com[parts_int][nA]:=_numeric; parts_par[parts_int][nA]:=i;
+             parts_com[parts_int][incr nA]:=_numeric; parts_par[parts_int][nA]:=i;
            endfor
-        else:: nA:=nA+1;
-               parts_com[parts_int][nA]:=xpart(list); parts_par[parts_int][nA]:=ypart(list);
+        else:: parts_com[parts_int][incr nA]:=xpart(list); parts_par[parts_int][nA]:=ypart(list);
         fi
       fi
     else:: message "unknown command in "AND decimal(parts_int);
@@ -462,16 +458,18 @@
 vardef change_bond(expr a,b) =
   if known b:: parts_int:=parts_int+1; nC:=0;
     if numeric b::
-      if     (b>=si)and(b<=bd_)::
+      if (b>=si)and(b<=bd_)::
         if a>=parts_int_start::
           for i==1 upto parts_cnt[a]::
             if parts_com[a][i]==_numeric::
-              if frac parts_par[a][i]==0:: com_par(_set_adr,parts_par[a][i]) com_par(_set_line,b)
-              ef b==dl:: com_par(_set_adr,floor parts_par[a][i]) com_par(_set_line,dr)
-              ef b==dr:: com_par(_set_adr,floor parts_par[a][i]) com_par(_set_line,dl)
-              else::     com_par(_set_adr,floor parts_par[a][i]) com_par(_set_line,b) fi fi
+              if frac parts_par[a][i]==0:: CA(_set_line,b,parts_par[a][i])
+              ef b==dl:: CA(_set_line,dr,floor parts_par[a][i])
+              ef b==dr:: CA(_set_line,dl,floor parts_par[a][i])
+              else::     CA(_set_line,b,floor parts_par[a][i])
+              fi
+            fi
           endfor
-        else:: com_par(_set_adr,a) com_par(_set_line,b)
+        else:: CP(_set_adr,a) CP(_set_line,b)
         fi
       elseif (b>=?3)and(b<=?8[15])::
         if numeric a::
@@ -478,11 +476,9 @@
           if a>=parts_int_start::
             for i==1 upto parts_cnt[a]::
               if parts_com[a][i]==_numeric::
-                if b==Ph1:: fuse_ring(parts_par[a][i],6)
-                    CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
-                ef b==Ph2:: fuse_ring(parts_par[a][i],6)
-                    CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
-                    CP(_set_adr,-5) CP(_set_line,dl)
+                if b==Ph1:: fuse_ring(parts_par[a][i],6) CA(_set_line,dl,-2) CA(_set_line,dl,-4)
+                ef b==Ph2:: fuse_ring(parts_par[a][i],6) CA(_set_line,dl,-1) CA(_set_line,dl,-3)
+                                                         CA(_set_line,dl,-5)
                 ef (b>=?5[11])and(b<=?5[15]):: fuse_ring_size(a,5,b-?5[11]+11)
                 ef (b>=?6[11])and(b<=?6[15]):: fuse_ring_size(a,6,b-?6[11]+11)
                 ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
@@ -503,24 +499,21 @@
                   ef frac parts_com[a][i]==0::
                     fuse_ring_bonds((parts_com[a][i],floor parts_par[a][i]),5,2)
                   ef frac parts_par[a][i]==0::
-                    fuse_ring_bonds((floor parts_com[a][i],floor parts_par[a][i]),5,2)
-                  fi
+                    fuse_ring_bonds((floor parts_com[a][i],floor parts_par[a][i]),5,2) fi
                 ef b==?4::    fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),4,2)
                 ef b==?6[3]:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,3)
                 ef b==?6[2]:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,2)
                 ef b==?5[2]:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),5,2)
                 ef b==Ph1::   fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,4)
-                                CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
+                                CA(_set_line,dl,-1) CA(_set_line,dl,-3)
                 ef b==Ph2::   fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,4)
-                                CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
+                                CA(_set_line,dl,-2) CA(_set_line,dl,-4)
                 fi
               fi
             endfor
           else::
-            if b==Ph1:: fuse_ring(a,6) CP(_set_adr,-2) CP(_set_line,dl)
-                                       CP(_set_adr,-4) CP(_set_line,dl)
-            ef b==Ph2:: fuse_ring(a,6) CP(_set_adr,-1) CP(_set_line,dl)
-                          CP(_set_adr,-3) CP(_set_line,dl) CP(_set_adr,-5) CP(_set_line,dl)
+            if b==Ph1:: fuse_ring(a,6) CA(_set_line,dl,-2) CA(_set_line,dl,-4)
+            ef b==Ph2:: fuse_ring(a,6) CA(_set_line,dl,-1) CA(_set_line,dl,-3) CA(_set_line,dl,-5)
             ef (b>=?5[11])and(b<=?5[15]):: fuse_ring_size(a,5,b-?5[11]+11)
             ef (b>=?6[11])and(b<=?6[15]):: fuse_ring_size(a,6,b-?6[11]+11)
             ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
@@ -533,13 +526,12 @@
           ef b==?6[3]:: fuse_ring_bonds(a,6,3)
           ef b==?6[2]:: fuse_ring_bonds(a,6,2)
           ef b==?5[2]:: fuse_ring_bonds(a,5,2)
-          ef b==Ph1::   fuse_ring_bonds(a,6,4)
-                          CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
-          ef b==Ph2::   fuse_ring_bonds(a,6,4)
-                          CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl) fi
+          ef b==Ph1::   fuse_ring_bonds(a,6,4) CA(_set_line,dl,-1) CA(_set_line,dl,-3)
+          ef b==Ph2::   fuse_ring_bonds(a,6,4) CA(_set_line,dl,-2) CA(_set_line,dl,-4)
+          fi
         fi
       fi
-    elseif color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorB,cntC) fi
+    elseif color b:: color_list[incr cntC]:=b; CA(_set_colorB,cntC,a) fi
     parts_cnt[parts_int]:=nC; parts_int
   fi
 enddef;
@@ -547,16 +539,16 @@
 vardef change_atom(expr a,b)=
   if known b:: parts_int:=parts_int+1; nC:=0;
     if numeric b::
-      if (b GT parts_emb_start)and(b<=parts_atom_end):: CPe(a)(_chg_atom,b)
-      ef b==NH::  CPe(a)(_chg_atom,N) if NH<>xNH:: CP(_tmp_line,nl) fi
-                  CP(_com,_group_s) CPx(a)(_group_si,H) CP(_com,_group_e)
-      ef b==N!::  CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,_) CP(_com,_group_e)
-      ef b==N!2:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,!) CP(_com,_group_e)
-      ef b==??::  CP(_com,_group_s) CP(_tmp_rot,35)  CPx(a)(_group_si,_)
-                  CP(_tmp_rot,-35) CPx(a)(_group_si,_) CP(_com,_group_e)
-      ef b==SOO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CP(_tmp_rot,35)  CPx(a)(_group_dm,O)
-                  CP(_tmp_rot,-35) CPx(a)(_group_dm,O) CP(_com,_group_e)
-      ef b==SO::  CPe(a)(_chg_atom,S) CP(_com,_group_s) CPx(a)(_group_dm,O) CP(_com,_group_e)
+      if (b GT parts_emb_start)and(b<=parts_atom_end):: CA(_chg_atom,b,a)
+      ef b==NH::  CA(_chg_atom,N,a) if NH<>xNH:: CP(_tmp_line,nl) fi
+                  CP(_com,_group_s) CA(_group_si,H,a) CP(_com,_group_e)
+      ef b==N!::  CA(_chg_atom,N,a) CP(_com,_group_s) CA(_group_si,_,a) CP(_com,_group_e)
+      ef b==N!2:: CA(_chg_atom,N,a) CP(_com,_group_s) CA(_group_si,!,a) CP(_com,_group_e)
+      ef b==??::  CP(_com,_group_s) CP(_tmp_rot,35)  CA(_group_si,_,a)
+                  CP(_tmp_rot,-35) CA(_group_si,_,a) CP(_com,_group_e)
+      ef b==SOO:: CA(_chg_atom,S,a) CP(_com,_group_s) CP(_tmp_rot,35)  CA(_group_dm,O,a)
+                  CP(_tmp_rot,-35) CA(_group_dm,O,a) CP(_com,_group_e)
+      ef b==SO::  CA(_chg_atom,S,a) CP(_com,_group_s) CA(_group_dm,O,a) CP(_com,_group_e)
       ef b==n_::  CP(_com,_group_s) CP(_set_add,a_minus) CP(_chg_add,a) CP(_com,_group_e)
       ef b==p_::  CP(_com,_group_s) CP(_set_add,a_plus) CP(_chg_add,a) CP(_com,_group_e)
       fi
@@ -565,33 +557,27 @@
       if a>=parts_emb_start::
         for i==1 upto parts_cnt[a]::
           if parts_com[a][i]==_numeric::
-            if xpart(b)==_group_wf::
-              if frac parts_par[a][i]==0:: CP(_set_adr,parts_par[a][i]) CP(_group_wf,ypart(b))
-              else:: CP(_set_adr,floor parts_par[a][i]) CP(_group_zf,ypart(b)) fi
-            ef xpart(b)==_group_zf::
-              if frac parts_par[a][i]==0:: CP(_set_adr,parts_par[a][i]) CP(_group_zf,ypart(b))
-              else:: CP(_set_adr,floor parts_par[a][i]) CP(_group_wf,ypart(b)) fi
-            else:: CP(_set_adr,parts_par[a][i]) CP(xpart(b),ypart(b)) fi
+            if frac parts_par[a][i]==0:: CA(xpart(b),ypart(b),parts_par[a][i])
+            ef xpart(b)==_group_wf:: CA(_group_zf,ypart(b),floor parts_par[a][i])
+            ef xpart(b)==_group_zf:: CA(_group_wf,ypart(b),floor parts_par[a][i])
+            else:: CA(xpart(b),ypart(b),parts_par[a][i]) fi
           else:: CP(parts_com[a][i],parts_par[a][i]) fi
         endfor
-      else:: CP(_set_adr,a) CP(xpart(b),ypart(b))
-      fi
+      else:: CA(xpart(b),ypart(b),a) fi
       CP(_com,_group_e)
-    ef color b::  color_list[incr cntC]:=b; CPe(a)(_set_colorA,cntC)
-    fi
+    ef color b::  color_list[incr cntC]:=b; CA(_set_colorA,cntC,a) fi
     parts_cnt[parts_int]:=nC; parts_int
   fi
 enddef;
 %-------------------------------------------------------------------------------------------------
-def com_par(expr a,b)= nC:=nC+1; parts_com[parts_int][nC]:=a; parts_par[parts_int][nC]:=b; enddef;
-%-------------------------------------------------------------------------------------------------
-def com_par_ex(expr f)(expr c)(expr a,b)=
-  if c>=parts_emb_start::
-    for i==1 upto parts_cnt[c]::
-      if parts_com[c][i]==_numeric:: com_par(_set_adr,parts_par[c][i]) com_par(a,b)
-      ef f==1:: com_par(parts_com[c][i],parts_par[c][i]) fi
+def com_par(expr c,p)= parts_com[parts_int][incr nC]:=c; parts_par[parts_int][nC]:=p; enddef;
+def com_par_adr(expr c,p,a)=
+  if a>=parts_emb_start::
+    for i==1 upto parts_cnt[a]::
+      if parts_com[a][i]==_numeric:: com_par(_set_adr,parts_par[a][i]) com_par(c,p)
+      else:: com_par(parts_com[a][i],parts_par[a][i]) fi
     endfor
-  else:: com_par(_set_adr,c) com_par(a,b)
+  else:: com_par(_set_adr,a) com_par(c,p)
   fi
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -670,8 +656,7 @@
   path frameA[],zA,zL;
   %-----------------------------------------------------------------------------------------------
   if (sw_expand=1)or(scan_bit(sw_output,MOL2k))or(scan_bit(sw_output,MOL3k)):
-    expand_set; rate_cr:=1; else: rate_cr:=-ratio_chain_ring;
-  fi
+    expand_set; rate_cr:=1; else: rate_cr:=-ratio_chain_ring; fi
   cC:="C"; cH:="H"; cO:="O"; cN:="N"; cS:="S"; cF:="F"; cP:="P";
   cntA:=cntB:=cntC:=group_num:=0; str_tbl[0]:=cC; str_cnt:=2000;
   %-----------------------------------------------------------------------------------------------
@@ -693,12 +678,10 @@
       proc_skeleton(0); proc_scaling;
       if (mol_ht/mol_wd)>(m_ht/m_wd):
         if ypart(msize)>1: factor:=ypart(msize)/mol_ht;
-        else: factor:=((fig_ht-2margin_tb)*ypart(msize))/mol_ht;
-        fi
+        else: factor:=((fig_ht-2margin_tb)*ypart(msize))/mol_ht; fi
       else:
         if xpart(msize)>1: factor:=xpart(msize)/mol_wd;
-        else: factor:=((fig_wd-2margin_lr)*xpart(msize))/mol_wd;
-        fi
+        else: factor:=((fig_wd-2margin_lr)*xpart(msize))/mol_wd; fi
       fi
       exitif (factor>=1-eps)and(factor<=1+eps); blen:=blen*factor; proc_size_setup;
     endfor
@@ -722,8 +705,7 @@
         if addA[i]<>0:
           nA:=angX[i]+add_rot[i]; nC:=nA mod 90; 
           if strA[i]=0: nB:=.5atom_wd; else: nB:=atom_wd; fi
-          draw_char(char(addA[i]),sfrt(posA[i],nB,nA));
-        fi
+          draw_char(char(addA[i]),sfrt(posA[i],nB,nA)); fi
       endfor
     fi
     %-draw bond-----------------------------------------------------------------------------------
@@ -759,7 +741,7 @@
     else: nX:=margin_lr-minX+(fig_wd-mol_wd-2margin_lr)*xpart(mposition); fi
     if ypart(mposition)>1: nY:=ypart(mposition)-minY;
     else: nY:=margin_tb-minY+(fig_ht-mol_ht-2margin_tb)*ypart(mposition); fi
-    cntM:=cntM+1; posM[0][cntM]:=(nX,nY);
+    posM[0][incr cntM]:=(nX,nY);
     posM[1][cntM]:=(minX+nX,minY+nY); posM[2][cntM]:=(maxX+nX,maxY+nY);
     wdM[cntM]:=mol_wd; htM[cntM]:=mol_ht;
     mol_pic[cntM]:=currentpicture;
@@ -771,8 +753,7 @@
 %-------------------------------------------------------------------------------------------------
 def add_group=
   if f_at=1: nE:=getA(adrT); check_adrA(nE); else: nE:=cntA+1; fi
-  group_num:=group_num+1; group_cnt[group_num]:=0;
-  store_group(_jp_absA,nE) store_group(_com,_len_s)
+  group_cnt[incr group_num]:=0; store_group(_jp_absA,nE) store_group(_com,_len_s)
   if lineT<>nb: store_group(_tmp_line,lineT) fi
   if rotT<>0:   store_group(_rot_ang,rotT) fi
   if lenT<>rate_cr: store_group(_chg_len,lenT)
@@ -791,8 +772,8 @@
 enddef;
 %-------------------------------------------------------------------------------------------------
 def store_group(expr a,b)=
-  group_cnt[group_num]:=group_cnt[group_num]+1;
-  group_com[group_num][group_cnt[group_num]]:=a; group_par[group_num][group_cnt[group_num]]:=b;
+  group_com[group_num][incr group_cnt[group_num]]:=a;
+  group_par[group_num][group_cnt[group_num]]:=b;
 enddef;
 %=================================================================================================
 def read_group(expr a)(expr n)=
@@ -799,8 +780,8 @@
   save_group_cnt:=group_num; save_cntD:=parts_cnt[a];
   for i=n upto group_num:
     for j=1 upto group_cnt[i]:
-      parts_cnt[a]:=parts_cnt[a]+1;
-      parts_com[a][parts_cnt[a]]:=group_com[i][j]; parts_par[a][parts_cnt[a]]:=group_par[i][j];
+      parts_com[a][incr parts_cnt[a]]:=group_com[i][j];
+      parts_par[a][parts_cnt[a]]:=group_par[i][j];
     endfor
   endfor
   proc_bond_atom(a)(save_cntD+1);
@@ -834,8 +815,7 @@
         tempc:=subc(j,str_tbl[strA[i]]);
         if tempc="^": nU:=.5atom_wd;
         ef tempc="_": nD:=.5atom_wd;
-        ef (tempc<>"{")and(tempc<>"}"): nP:=nP+atom_wd*tbl_char_wd[ASCII(tempc)];
-        fi  
+        ef (tempc<>"{")and(tempc<>"}"): nP:=nP+atom_wd*tbl_char_wd[ASCII(tempc)]; fi  
       endfor
       if (angX[i]<=90)or(angX[i]>=270): nR:=nP; else: nL:=nP; fi
       if (nX-nL+.5atom_wd)<minX: minX:=nX-nL+.5atom_wd; fi
@@ -900,11 +880,11 @@
 enddef;
 %-------------------------------------------------------------------------------------------------
 def add_atom(expr n)=
-  cntB:=cntB+1; lineB[cntB]:=lineT; lineT:=si;
+  lineB[incr cntB]:=lineT; lineT:=si;
   if lenT=rate_cr: lenB[cntB]:=bondL; else: lenB[cntB]:=lenT; lenT:=rate_cr; fi
-  if f_bra=0:  cntA:=cntA+1; sB[cntB]:=cntA; strA[cntA]:=temp_strA;
-               addA[cntA]:=addAT; addAT:=temp_strA:=add_rot[cntA]:=0;
-               if rotT<>0: add_rot[cntA]:=rotT; rotT:=0; fi
+  if f_bra=0: sB[cntB]:=incr cntA; strA[cntA]:=temp_strA;
+              addA[cntA]:=addAT; addAT:=temp_strA:=add_rot[cntA]:=0;
+              if rotT<>0: add_rot[cntA]:=rotT; rotT:=0; fi
   else: f_bra:=0; fi
   if n=0: eB[cntB]:=cntA+1; f_term:=0; else: eB[cntB]:=n; f_term:=1; fi
 enddef;
@@ -978,7 +958,7 @@
 def termA=
   if f_term=0:
     if f_bra=0:
-      cntA:=cntA+1; strA[cntA]:=temp_strA; addA[cntA]:=addAT; add_rot[cntA]:=rotT; 
+      strA[incr cntA]:=temp_strA; addA[cntA]:=addAT; add_rot[cntA]:=rotT;
       addAT:=temp_strA:=rotT:=0;
     else: f_bra:=0; fi
     f_term:=1; fi
@@ -985,7 +965,7 @@
 enddef;
 %-------------------------------------------------------------------------------------------------
 def termB=
-  if f_term=0: if f_bra=0:cntA:=cntA+1; angX[cntA]:=angT mod 360; else:f_bra:=0; fi f_term:=1; fi
+  if f_term=0: if f_bra=0: angX[incr cntA]:=angT mod 360; else:f_bra:=0; fi f_term:=1; fi
 enddef;
 %-------------------------------------------------------------------------------------------------
 vardef glu_atom(expr n)=
@@ -1337,10 +1317,14 @@
     printf "---------------------------------------------------------------------------";
     for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blanks)&mc[i]; endfor
     printf "---------------------------------------------------------------------------";
-    printf " row="&fdr(3)(mc_row)&" / length="&fdr(4)(length(mc))&" / commands="&fdr(3)(cnt_cmm);
-    printf " {}=X ="&fdr(3)(cnt_chgB)&" / {}:X ="&fdr(3)(cnt_chgA)&
-           " / '() ="&fdr(3)(cnt_inline_def)&" / @ ="&fdr(3)(cnt_at)&
-           " / & ="&fdr(3)(cnt_and)&" / < ="&fdr(3)(cnt_gtn); fi
+    printf " row="&fdr(3)(mc_row)&" , length="&fdr(4)(length(mc))&
+           " , commands="&fdr(3)(cnt_cmm);
+    printf " {}=X["&decimal(cnt_chgB)&"],{}:X["&decimal(cnt_chgA)&
+           "],'()["&decimal(cnt_inline_def)&"],@["&decimal(cnt_at)&
+           "],&["&decimal(cnt_and)&"],<["&decimal(cnt_gtn)&"],=["&decimal(cnt_equ)&
+           "],|["&decimal(cnt_bar-cnt_bars)&"],||["&decimal(cnt_bars)&
+           "],#["&decimal(cnt_hsh-cnt_hshs)&"],##["&decimal(cnt_hshs)&"]";
+  fi
   printf "---------------------------------------------------------------------------";
   printf " Warnings = "&fdr(3)(warning_cnt)&" / Code= "&decimal(parts_cnt[0]);
   printf " Width * Height = " & fdr(10)(mol_wd)&" * "&fdr(10)(mol_ht);
@@ -1372,15 +1356,14 @@
     if sumA[i]>=1:
       printf " "&fsl(5)(erase_brace(tbl_atom_str[i]))&
         "("&fdr(9)(tbl_atom_wt[i])&")"&"["&fdr(9)(tbl_atom_mi[i])&"]"&" * "&fdr(4)(sumA[i])
-        &fdr(15)(tbl_atom_wt[i]*sumA[i])&"["&fdr(12)(tbl_atom_mi[i]*sumA[i])&"]";
-    fi
+        &fdr(15)(tbl_atom_wt[i]*sumA[i])&"["&fdr(12)(tbl_atom_mi[i]*sumA[i])&"]"; fi
   endfor
   printf " Molecular Weight [Mono Isotopic] =   "&fsr(12)(cal_MW)&"["&fsr(12)(cal_MI)&"]";
   printf "---------------------------------------------------------------------------";
   printf " Weight  Calc: " &cal_MW &" / Input: "
-    if inf_MW<>"-": &inf_MW &" / weight gap= " &decimal(num_MW-scantokens(inf_MW)) fi;
-  printf " Fomula  Calc: "&cal_FM&" / Input: "
-    if inf_FM<>"-": &inf_FM&" / "& iif(inf_FM=cal_FM,"MACTCH","NOT MACTCH") fi;
+         if inf_MW<>"-": &inf_MW &" / weight gap= " &decimal(num_MW-scantokens(inf_MW)) fi;
+  printf " Fomula  Calc: "&cal_FM &" / Input: "
+         if inf_FM<>"-": &inf_FM&" / "& iif(inf_FM=cal_FM,"MACTCH","NOT MACTCH") fi;
   printf "===========================================================================";
   if f=1: printf EOF; fi
 enddef;
@@ -1432,8 +1415,7 @@
     forever:
       for i=nN downto 1:
         if at_comma[i]<=nA+mc_length:
-          printf substring(nA,at_comma[i]) of mc; nA:=at_comma[i]; exitif true;
-        fi
+          printf substring(nA,at_comma[i]) of mc; nA:=at_comma[i]; exitif true; fi
       endfor
       if nL-nA<=mc_length: printf substring(nA,nL) of mc; exitif true; fi
     endfor
@@ -1444,7 +1426,9 @@
 enddef;
 %=================================================================================================
 vardef fit_zero(expr n)= if n<=9: "00" ef n<=99: "0" else: "" fi &decimal(n) enddef;
-vardef bond_type(expr n)= if (n>=dl)and(n<=dm_):2 ef n=tm:3 ef n=0: 0 else: 1 fi enddef;
+vardef bond_type(expr n)=
+  if (n>=dl)and(n<=dm_):2 ef n=tm:3 ef (n=0)or(n=vf)or(n=vb): 0 else: 1 fi
+enddef;
 vardef bond_charge(expr n)= if n=2: 1 ef n=1: 3 ef n=-1: 5 ef n=-2: 6 else: 0 fi enddef;
 vardef bond_stereo(expr n)=
  if (n=wf)or(n=zb)or(n=bd): 1 ef (n=zf)or(n=wb)or(n=dt): 6 ef n=wv: 4 else: 0 fi enddef;
@@ -1454,8 +1438,8 @@
 vardef STa(expr s,WT,MI)=
   str_cnt:=str_cnt+1; tbl_cnt:=tbl_cnt+1; parts_num:=parts_num+1;
   parts_com[parts_num][1]:=_set_atom; parts_par[parts_num][1]:=str_cnt; parts_cnt[parts_num]:=1;
-  str_tbl[str_cnt]:=tbl_atom_str[tbl_cnt]:=s;
-  tbl_atom[tbl_cnt]:=0; tbl_atom_wt[tbl_cnt]:=WT; tbl_atom_mi[tbl_cnt]:=MI;
+  str_tbl[str_cnt]:=tbl_atom_str[tbl_cnt]:=s; tbl_atom[tbl_cnt]:=0;
+  tbl_atom_wt[tbl_cnt]:=WT; tbl_atom_mi[tbl_cnt]:=MI;
   parts_num
 enddef;
 %-------------------------------------------------------------------------------------------------
@@ -1463,10 +1447,7 @@
   str_cnt:=str_cnt+1; tbl_cnt:=tbl_cnt+1; parts_num:=parts_num+1;
   parts_com[parts_num][1]:=_set_atom; parts_par[parts_num][1]:=str_cnt; parts_cnt[parts_num]:=1;
   str_tbl[str_cnt]:=tbl_atom_str[tbl_cnt]:=s; tbl_atom[tbl_cnt]:=0;
-  for list=t:
-    tbl_atom[tbl_cnt]:=tbl_atom[tbl_cnt]+1;
-    tbl_group[tbl_cnt][tbl_atom[tbl_cnt]]:=list-parts_emb_start;
-  endfor
+  for list=t: tbl_group[tbl_cnt][incr tbl_atom[tbl_cnt]]:=list-parts_emb_start; endfor
   parts_num
 enddef;
 %=================================================================================================
@@ -1486,9 +1467,9 @@
 Mg:=STa("{Mg}",24.305,    23.985041697);     Mn:=STa("{Mn}",54.938044, 54.93804391);
 N:= STa("N"   ,14.0067,   14.00307400443);   Na:=STa("{Na}",22.98977,  22.9897692820);
 Ni:=STa("{Ni}",58.693,    57.93534241);      O:= STa("O"   ,15.9994,   15.99491461957);
-P:= STa("P"   ,30.973762, 30.97376199842);   Pb:= STa("Pb" ,207.2,    205.974455);
-Pd:=STa("Pd"  ,106.4,    107.905075);
-S:= STa("S"   ,32.065,    31.9720711744);    Sb:= STa("Sb" ,121.75,   120.90381);
+P:= STa("P"   ,30.973762, 30.97376199842);   Pb:= STa("{Pb}",207.2,    205.974455);
+Pd:=STa("{Pd}",106.4,    107.905075);
+S:= STa("S"   ,32.065,    31.9720711744);    Sb:= STa("{Sb}",121.75,   120.90381);
 Se:=STa("{Se}",78.971,    79.9165218);       Si:=STa("{Si}",28.0855,   27.97692653465);
 Sn:=STa("{Sn}",118.71,   119.90220163);      Ti:=STa("{Ti}",47.867,    47.94794198);
 U:= STa("U",   238.0289, 238.05079);         V:= STa("V",   50.9415,   50.943957);
@@ -1504,7 +1485,7 @@
 tbl_group_end:=tbl_cnt; parts_atom_end:=parts_num;
 %=================================================================================================
 for i=3 upto 20: ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90)
-                 for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee)); endfor
+  for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee)); endfor
 Ph:=Ph1:='(?6,-2=dl,-4=dl,-6=dl); Ph2:='(?6,-1=dl,-3=dl,-5=dl);
 for i=4,5,6:   for j=2  upto i-2: ?[i][j]:='(); endfor endfor
 for i=5,6,7,8: for j=11 upto 15:  ?[i][j]:='(); endfor endfor
@@ -1563,7 +1544,7 @@
   !CH3:=!xCH3; !OH:=!xOH; !NH2:=!xNH2; !CHO:=!xCHO; !COOH:=!xCOOH; !CN:=!xCN; !NO2:=!xNO2;
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-vardef check(expr s)=
+vardef mc_check(expr s)=
   save mc_char,err_cnt,char_cnt,f_depth,cnt_prn_s,cnt_prn_e,cnt_brc_s,cnt_brc_e,cnt_brk_s,
        cnt_brk_e,cmm_adr;
   string err_str[],err_type[];
@@ -1575,15 +1556,16 @@
  %---------------------------------------------------------------------------------------------
   if mc_row>=1:
     for i=1 upto length(s):
-      tempc:=subc(i,s); if tempc<>" ": char_cnt:=char_cnt+1; mc_char[char_cnt]:=ASCII(tempc); fi
+      tempc:=subc(i,s); if tempc<>" ": mc_char[incr char_cnt]:=ASCII(tempc); fi
     endfor
     mc_char[0]:=mc_char[char_cnt+1]:=mc_char[char_cnt+2]:=a_cmm;
     %-- argument missing chkeck --------------------------------------------------------------
-    cnt_prn_s:=cnt_prn_e:=cnt_brc_s:=cnt_brc_e:=cnt_brk_s:=cnt_brk_e:=cnt_inline_def:=cnt_at:=0;
-    cnt_cmm:=cnt_and:=cnt_gtn:=cnt_gtn:=nA:=f_depth:=0;
+    cnt_prn_s:=cnt_prn_e:=cnt_brc_s:=cnt_brc_e:=cnt_brk_s:=cnt_brk_e:=cnt_inline_def:=0;
+    cnt_at:=cnt_cmm:=cnt_and:=cnt_gtn:=cnt_equ:=cnt_cln:=cnt_bar:=cnt_bars:=0;
+    cnt_hsh:=cnt_hshs:=f_depth:=nA:=0;
     forever:
       nA:=nA+1; nB:=mc_char[nA-1]; nC:=mc_char[nA]; nD:=mc_char[nA+1];
-      if  nC=a_cmm: if f_depth=0: cnt_cmm:=cnt_cmm+1; cmm_adr[cnt_cmm]:=nA; fi
+      if  nC=a_cmm: if f_depth=0: cmm_adr[incr cnt_cmm]:=nA; fi
       ef nC=a_ast:
         if nD=a_sls:
           if mc_char[nA+2]=a_ast: if mc_char[nA+3]=a_cmm: proc_err(7,nA) nA:=nA+2; fi  % */* x
@@ -1592,24 +1574,28 @@
       ef nC=a_sls: if nD=a_sls: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi    % // x
                    ef nD=a_ast: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi    % /* x
                    ef nD=a_cmm: proc_err(7,nA)                                   fi    % /  x
-      ef nC=a_hsh: if nD=a_hsh:   nA:=nA+1;                                            %  ##
+      ef nC=a_hsh: cnt_hsh:=cnt_hsh+1;                                                 % #+##
+                   if nD=a_hsh: cnt_hshs:=cnt_hshs+1; nA:=nA+1;                        %  ##
                    ef nD=a_cmm:   proc_err(7,nA) fi  if nB<>a_cmm:  proc_err(8,nA) fi  % a # x
       ef nC=a_dol: if nD=a_cmm:   proc_err(7,nA) fi                                    %  $ x
-      ef nC=a_equ: if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x = x
-      ef nC=a_cln: if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x : x
+      ef nC=a_equ: cnt_equ:=cnt_equ+1;
+                   if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x = x
+      ef nC=a_cln: cnt_cln:=cnt_cln+1;
+                   if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x : x
       ef nC=a_amk: cnt_at:=cnt_at+1;
                    if nD= a_cmm:  proc_err(7,nA) fi  if nB<>a_cmm:  proc_err(8,nA) fi  % a @ x
       ef nC=a_and: cnt_and:=cnt_and+1;
                    if nD= a_cmm:  proc_err(7,nA) fi  if nB<>a_cmm:  proc_err(8,nA) fi  % a & x
       ef nC=a_gtn: cnt_gtn:=cnt_gtn+1;
-      ef nC=a_ltn: if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x > x
-      ef nC=a_tld: if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x ~ x
-      ef nC=a_hat: if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x ^ x
-      ef nC=a_bqt: if nD= a_cmm:  proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x ` x
-      ef nC=a_bar: if nD= a_bar:  if mc_char[nA+2]=a_bar: nA:=nA+1;                    %  ||
-                                  ef mc_char[nA+2]<>a_cmm: proc_err(8,nA) fi           %  | a
-                                  if nB<>a_cmm: proc_err(8,nA) fi fi                   %  a |
-      ef nC=a_prn_s: if nD= a_cmm: proc_err(7,nA) fi                                   %  ( x
+      ef nC=a_ltn: if nD= a_cmm: proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x > x
+      ef nC=a_tld: if nD= a_cmm: proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x ~ x
+      ef nC=a_hat: if nD= a_cmm: proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x ^ x
+      ef nC=a_bqt: if nD= a_cmm: proc_err(7,nA) fi  if nB= a_cmm:  proc_err(7,nA) fi  % x ` x
+      ef nC=a_bar: cnt_bar:=cnt_bar+1;                                                   % |+||
+                   if nD= a_bar: cnt_bars:=cnt_bars+1; if mc_char[nA+2]=a_bar: nA:=nA+1; %  ||
+                                 ef mc_char[nA+2]<>a_cmm: proc_err(8,nA) fi              %  | a
+                                 if nB<>a_cmm: proc_err(8,nA) fi fi                      %  a |
+      ef nC=a_prn_s: if nD= a_cmm: proc_err(7,nA) fi                                     %  ( x
                      cnt_prn_s:=cnt_prn_s+1; f_depth:=1;
                      if nB=a_qut: cnt_inline_def:=cnt_inline_def+1; fi
       ef nC=a_prn_e: cnt_prn_e:=cnt_prn_e+1; f_depth:=0;
@@ -1635,11 +1621,11 @@
   err_cnt
 enddef;
 %-------------------------------------------------------------------------------------------------
-def proc_err(expr e,n)=  err_cnt:=err_cnt+1; err_adr[err_cnt]:=n; err_code[err_cnt]:=e;
+def proc_err(expr e,n)= err_adr[incr err_cnt]:=n; err_code[err_cnt]:=e;
   if e<=6: err_str[err_cnt]:="     "; else: err_str[err_cnt]:=substring(n-3,n+2) of mc; fi
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def query(text s)=
+def mc_query(text s)=
   begingroup
   save f_mcf,f_line,unit_row,unit_cnt,line_s,row_cnt,semic_cnt,info_cnt,order,min_n,key_cnt,
        info_s,sign_at,sign_n,filter_n,filter_tag,filter_var,filter_sign,filter_cnt,filter_p,
@@ -1665,9 +1651,9 @@
     if sign_n=0:
       if sT="f": if scan_char(".",sV,0,1)=0: file_input:=sV&".mcf";  else: file_input:=sV; fi
       ef sT="o": if scan_char(".",sV,0,1)=0: file_output:=sV&".aux"; else: file_output:=sV; fi
-      ef sT="s": key_cnt:=key_cnt+1; key_s[key_cnt]:=sV; fi
+      ef sT="s": key_s[incr key_cnt]:=sV; fi
     else:
-      filter_cnt:=filter_cnt+1; filter_tag[filter_cnt]:=sT; filter_sign[filter_cnt]:=sign_n;
+      filter_tag[incr filter_cnt]:=sT; filter_sign[filter_cnt]:=sign_n;
       if (sign_n>=3)and(is_num(sV)=1): filter_var[filter_cnt]:=fix_num(sV);
       else: filter_var[filter_cnt]:=sV; fi
     fi
@@ -1676,7 +1662,7 @@
   forever:
     temps:=readfrom file_input; exitif temps=EOF;
     if subc(1,temps)<>"%":
-      unit_row:=unit_row+1; line_s[unit_cnt][unit_row]:=temps;
+      line_s[unit_cnt][incr unit_row]:=temps;
       if (substring(0,2) of temps)="+-":
         row_cnt[unit_cnt]:=unit_row; f_mcf:=unit_row:=0; filter_n:=1;
         for i=1 upto filter_cnt: filter_p[i]:=0; endfor
@@ -1757,12 +1743,10 @@
 enddef;
 %-------------------------------------------------------------------------------------------------
 vardef split_semic(expr s)=
-  nN:=at_semic[0]:=0;
-  for i=1 upto length(s): if subc(i,s)=";": nN:=nN+1; at_semic[nN]:=i; fi endfor nN
+  nN:=at_semic[0]:=0; for i=1 upto length(s): if subc(i,s)=";": at_semic[incr nN]:=i; fi endfor nN
 enddef;
 %-------------------------------------------------------------------------------------------------
 vardef split_comma(expr s)=
-  nN:=at_comma[0]:=0;
-  for i=1 upto length(s): if subc(i,s)=",": nN:=nN+1; at_comma[nN]:=i; fi endfor nN
+  nN:=at_comma[0]:=0; for i=1 upto length(s): if subc(i,s)=",": at_comma[incr nN]:=i; fi endfor nN
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Print out mcf data list  (LuaLaTeX)                 by A.Yamaji   2022.03.13
+% Print out mcf data list                           by A.Yamaji   2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.82
+% ** mcf2graph.mf must be version 4.83
 % ** use mcf_library.mcf
 % ** typeset by LuaLaTeX(luamplib)
 \documentclass{article}
@@ -19,14 +19,14 @@
     fsize:=(35mm,34mm);
     max_blength:=4mm;
     row_h:=3.8mm;
+    header_h:=3.8mm;
     def make_frame=
       draw (0,0)--(185mm,0)--(185mm,h)--(0,h)--cycle wpcs thickness_frame;
-      draw (w,h-row_h)--(185mm,h-row_h) wpcs thickness_frame;
+      draw (w,h-header_h)--(185mm,h-header_h) wpcs thickness_frame;
       draw (w,h)--(w,0) wpcs thickness_frame;
-      draw ( 75mm,h)--( 75mm,h-row_h) wpcs thickness_frame;
-      draw (105mm,h)--(105mm,h-row_h) wpcs thickness_frame;
-      draw (130mm,h)--(130mm,h-row_h) wpcs thickness_frame;
-      draw (155mm,h)--(155mm,h-row_h) wpcs thickness_frame;
+      for col_w=75mm,105mm,130mm,155mm:
+        draw (col_w,h)--(col_w,h-header_h) wpcs thickness_frame;
+      endfor
     enddef;
   fi
 }%
@@ -48,7 +48,7 @@
 \noindent%
 \begin{mplibcode}
   beginfigm(":<0,0~nb")
-    if check(mc)=0:
+    if mc_check(mc)=0:
       MC(scantokens(mc))
       ext(
         defaultfont:="cmtt9";
@@ -78,7 +78,7 @@
 %%%%%%  beginfigm("t:EXA","v+:*")
 %%%%%%  beginfigm("t:EXA","v+:1")
   beginfigm("t:EXA","v+:2")
-    if check(mc)=0:
+    if mc_check(mc)=0:
       MC(scantokens(mc))
       ext(
         defaultfont:="cmtt9";
@@ -85,8 +85,8 @@
         label.lrt("["&decimal(fig_num)&"]",(0,h));
         label.llft(inf_EXA,(w,h));
         if length(inf_EN)>23:
-          nA:=defaultscale; defaultscale:=23/length(inf_EN);
-          label.lrt(inf_EN, (w,h));
+          nA:=defaultscale;
+          defaultscale:=23/length(inf_EN); label.lrt(inf_EN, (w,h));
           defaultscale:=nA;
         else:
           label.lrt(inf_EN, (w,h));

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,8 +1,8 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format                      by Akira Yamaji  2022.03.13
+% Molecular Coding Format                      by Akira Yamaji  2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph;   %%% it must be version 4.82
-message "* mcf_exa_soc 2022.03.13";
+input mcf2graph;   %%% it must be version 4.83
+message "* mcf_exa_soc 2022.03.27";
 message "";
 %------------------------------------------------------------------------------
 %%%%sw_frame:=Outside;
@@ -9,7 +9,7 @@
 %%%%sw_numbering:=Bond;
 %%%%sw_numbering:=Atom;
 %%%%sw_frame:=Atom;
-sw_expand:=1;
+%%%%sw_expand:=1;
 tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW";
 %------------------------------------------------------------------------------
 %% outputformat:="png"; hppp:=vppp:=0.1; outputtemplate:="%j-%3c.png";
@@ -20,9 +20,9 @@
 %ext(defaultfont:=mpfont; defaultscale:=.3;
 %label.rt(inf_EN&" / "&cal_MW&" / "&decimal(num_MW-scantokens(inf_MW)),(0,0));)
 %------------------------------------------------------------------------------
-%%%%query("Cat=biological","MW<200","s:MW");
-%%%%query("Cat=biological","MW<150.0","s:EN");
-%%%%query("MW>=150","MW<=250","s:MW");
+%%%%mc_query("Cat=biological","MW<200","s:MW");
+%%%%mc_query("Cat=biological","MW<150.0","s:EN");
+%%%%mc_query("MW>=150","MW<=250","s:MW");
 %******************************************************************************
 fsize:=(35mm,24mm);
 max_blength:=4mm;
@@ -33,7 +33,7 @@
 %%%%  beginfigm("f:temp","v+:*")              % use query output 'temp.mcf'
 %%%%  beginfigm("v+:*")                       % select all
   beginfigm("t:EXA","v+:1")                   % 'v+:1': select EXA=1
-    if f_EOF=0: if check(mc)=0: MC(scantokens(mc)) fi fi
+    if f_EOF=0: if mc_check(mc)=0: MC(scantokens(mc)) fi fi
   endfigm
   exitif f_EOF=1;                             % exit if file end
 endfor

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF   Typeset with LuaLaTeX(luamplib)   by A.Yamaji   2022.03.13
+% Example of MCF   Typeset with LuaLaTeX(luamplib)   by A.Yamaji   2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.82
+% ** mcf2graph.mf must be version 4.83
 % ** use mcf_library.mcf
 % ** typeset by LuaLaTeX(luamplib)
 \documentclass{article}
@@ -64,7 +64,7 @@
 \sbox{\fig at box}{%
 \begin{mplibcode}
   beginfigm("t:EXA","v+:1")
-    if check(mc)=0:
+    if mc_check(mc)=0:
       MC(scantokens(mc))
       VerbatimTeX("\gdef\EN{"&inf_EN&"}");
       VerbatimTeX("\gdef\MW{"&inf_MW&"}");

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% molecular library file    mcf_library.mcf   by Akira Yamaji   2022.03.13
+% molecular library file    mcf_library.mcf   by Akira Yamaji   2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %  tag1:var1;tag2:var2;tag3:var3 .....
 %  first character of line "%" comment out
@@ -394,7 +394,7 @@
 +------------------------------------------------------------------------------
 Cat:biological;EN:Flavanone;MW:224.25;EXA:1
 +
-<30,Ph,3=?6,10:O,7://O,8:/OH,9:/Ph,
+<30,Ph,3=?6,10:O,7://O,9:/Ph,
 +------------------------------------------------------------------------------
 Cat:biological;EN:Flavonol;MW:238.24;EXA:1
 +
@@ -2203,14 +2203,13 @@
 +------------------------------------------------------------------------------
 Cat:antibiotics;EN:Vancomycin;MW:1449.25;EXA:2
 +
-<-30,#1,!12,{1,3,12}=zf,7=wf,/H^-60,60,*/OH,60,
- Ph,-4:/Cl, at -3,\,O,!,Ph, at -4,\,O,!,Ph,-1^15:/Cl, at -3,\,/*OH,*/H^-60,&1,
- @7,&26,@$1,60,//O,60,NH,60,/*H,*/COOH^180,-60,
- Ph,{-2,-4}:/OH, at -1,\,Ph,-5:/OH, at -2,&4,##,
- {3^40,6,9,12}://O,{2,5,8,11}:NH,{1,4^180,7'^-60,10'^60,14'^60}:*/H,
+<-30,#1,!12,{1,3,12}=zf,7=wf,60,60,Ph, at -3,\,O,!,Ph, at -4,\,O,!,Ph, at -3,\,&1,
+ @7,&26,@$1,60,60,NH,60,-60,Ph, at -1,\,Ph, at -2,&4,##,
+ {36,3^40,6,9,12}://O,{2,5,8,11}:NH,{1,4^180,7'^-60,10'^60,14'^60,35^-60}:*/H,
+ {41,43,46}:/OH,{14,35'}:*/OH,{17,34^15}:/Cl,38^180:*/COOH,
  @10,*\^-60,60,//O,!,NH2, at 13,*\,NH,!,//O,!,/??!,*/H^60,!~zf,NH,!,
- @23,\,O,!,|,?6`.7,2:O,3^10:/!OH,{4,5}:/OH,
- @-1,\,O,!,|,?6`.7,6:O,{3^35,5}:/_,3^-35:/NH2,4:/OH
+ @23,\,O,!~zf,|,?6`.7,2:O,3^10:*/!OH,{4',5}:*/OH,
+ @-1,\*,O,!~wb,|,?6`.7,6:O,{3'^35,5}:*/_,3^-35:/NH2,4:/*OH,
 +------------------------------------------------------------------------------
 Cat:biological;EN:Maitotoxin;MW:3425.86;EXA:2
 +

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,9 +1,9 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex  by Akira.Yamaji 2022.03.13
+% MCF file for mcf_manual.tex  by Akira.Yamaji               2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph;   %% it must be version 4.82
+input mcf2graph;   %% it must be version 4.83
 % ** use library file 'mcf_library.mcf'
-message "mcf_man_soc 2022.03.13"; message "";
+message "mcf_man_soc 2022.03.27"; message "";
 %------------------------------------------------------------------------
 sw_mframe:=0;
 sw_expand:=0;
@@ -13,120 +13,120 @@
 blength:=6mm;
 %***********************************************************************
 beginfigm("EN:Glycine",":<30,NH2,!2,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Alanine",":<30,NH2,!~wb,/_,!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Valine",":<30,NH2,!~wb,/?!,!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Leucine",":<30,NH2,!~wb,/'(!,?!),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Isoleucine",":<30,NH2,!~wb,/'(/*_,!2),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Serine",":<30,NH2,!~wb,/!OH,!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Threonine",":<30,NH2,!~wb,/'(/_,!~wf,OH),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Cysteine",":<30,NH2,!~wb,/!SH,!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Methionine",":<30,NH2,!~wb,/'(!2,S,!),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Phenylalanine",":<30,NH2,!~wb,/!Ph,!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Tyrosine",":<30,NH2,!~wb,/'(!Ph,-3:/OH),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Triptophan",
   ":<30,NH2,!~wb,!,COOH, at 2,\,!,<24,|,?5,-4=Ph,2=dr,5=dl,4:NH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Prorine",":<18,?5,3:NH,4:*/COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Glutamine",
   ":<30,NH2,!~wb,!,COOH, at 2,\`1,!`1,!,//O,!,NH2")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Asparagine",":<30,NH2,!~wb,/'(!,//O,!,NH2),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Aspartic acid",":<30,NH2,!~wb,/!COOH,!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Glutamic acid",":<30,NH2,!~wb,/'(!2,COOH),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Lysine",":<30,NH2,!~wb,/'(!4,NH2),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Arginine",
   ":<30,NH2,!~wb,!,COOH, at 2,\`1,!`1,!2,NH,!,//NH,!,NH2")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Hystidine",
   ":<30,NH2,!~wb,!,COOH, at 2,\,!,|,?5,{1,3}=dl,3:N,5:NH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-DOPA",":<30,NH2,!~wb,!,COOH, at 2,\,!,Ph,{-3,-4}:/OH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:Ornithine",":<30,NH2,!~wb,/'(!3,NH2),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:Citrulline",":<30,NH2,!~wb,/'(!3,NH,!,//O,!,NH2),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:GABA",":<30,NH2,!4,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:amino Levulinic acid",":<30,NH2,!2,//O,!3,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:4-amino benzoic acid",":<30,Ph,1:/NH2,4:/COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Carboxyl glutamic acid",
   ":<30,NH2,!~wb,/'(!,/COOH,!,COOH),!,COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:L-Hydroxy Prorine",":<18,?5,1:/OH,3:NH,4:*/COOH")
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1085,13 +1085,13 @@
 beginfigm("EN:Pyridine",":<30,Ph,2:N")
   sw_trimming:=0;
   fsize:=(12mm,12mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %-----------------------------------------------------------------------
 beginfigm("EN:Pyridine",":<30,Ph,2):N")
   sw_trimming:=0;
   fsize:=(12mm,12mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:add() 1")
@@ -1216,7 +1216,7 @@
 %***************************************************************************
 beginfigm("t:EN","v:Luciferin")
   fsize:=(50mm,15mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***************************************************************************
 beginfigm("EN:Colchicine","MW:385.41",
@@ -1226,7 +1226,7 @@
   ": @9,\,NH,!,//O,!                  ")
   %---------------------------------------
   fsize:=(50mm,20mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***************************************************************************
 beginfigm("EN:Paclitaxel","MW:853.91",
@@ -1240,7 +1240,7 @@
   ": @12,\*^-15,O,60,//O,-60                            ")
   %------------------------------------------------------
   fsize:=(50mm,25mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***************************************************************************
 beginfigm("EN:Maltose","MW:342.3",
@@ -1252,7 +1252,7 @@
   ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH          ")
   %------------------------------------------------------
   fsize:=(50mm,20mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %***********************************************************************
 beginfigm("EN:Cellobiose","MW:342.3",
@@ -1264,7 +1264,7 @@
   ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH          ")
   %------------------------------------------------------
   fsize:=(50mm,20mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 bye

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%  Molecular Coding Format manual                by  Akira Yamaji 2022.03.13
+%  Molecular Coding Format manual                by  Akira Yamaji 2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \documentclass[a4paper]{article}
 \usepackage[pdftex]{graphicx}
@@ -1093,8 +1093,8 @@
 \end{verbatim}
 \MCFgraph
 %-----------------------------------------------------------------------------
-\subsection{Function check()}
-\index{check()}%
+\subsection{Function mc\_check()}
+\index{mc\_check()}%
 \begin{verbatim}
 (immediately compile)
 
@@ -1104,17 +1104,17 @@
 
 (check mcf and compile)
 
-** check(mc) : error count
+** mc_check(mc) : error count
 
 beginfigm("EN:Pyridine",
   ":<30,Ph,}2:N") % ** extra '}'
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 
 \end{verbatim}
 \MCFgraph\hspace{22mm}\MCFgraph
 \begin{verbatim}
-check(mc)=0   check(mc)>=1
+mc_check(mc)=0   mc_check(mc)>=1
 \end{verbatim}
 %===============================================================================
 \newpage
@@ -1382,13 +1382,13 @@
 \section{MCF example}
 %-----------------------------------------------------------------------------
 \subsection{Luciferin}
-\index{check()}%
+\index{mc\_check()}%
 \begin{verbatim}
 (use library file 'mcf_library')
 beginfigm("f:mcf_library",
           "t:EN","v:Luciferin")
   fsize:=(50mm,15mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
 \MCFgraph
@@ -1402,7 +1402,7 @@
   ": @9,\,NH,!,//O,!                  ")
   %-------------------------------------
   fsize:=(50mm,20mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
 \MCFgraph
@@ -1424,7 +1424,7 @@
   ": @12,\*^-15,O,60,//O,-60          ")
   %------------------------------------
   fsize:=(50mm,25mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
 \MCFgraph
@@ -1450,7 +1450,7 @@
   ": 6^$90:/!OH                           ")
   %-----------------------------------------
   fsize:=(50mm,20mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
 \MCFgraph
@@ -1476,7 +1476,7 @@
   ": 6^$90:/!OH                           ")
   %-----------------------------------------
   fsize:=(50mm,20mm);
-  if check(mc)=0: MC(scantokens(mc)) fi
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
 \MCFgraph
@@ -1516,29 +1516,29 @@
   ": {4,12}:*/_^60,                     ",              > mc3
   ": @-1,18,/*_,-60,!3,?!               ")              > mc4
   %----------------------------------------             >
-  if check(mc)=0: MC(scantokens(mc)) fi                 > mc=mc1 - mc4
+  if mc_check(mc)=0: MC(scantokens(mc)) fi                 > mc=mc1 - mc4
 endfigm                                                 >
 %------------------------------------------------------------------------------
 beginfigm("f:mcf_library.mcf","t:EN","v:Adenine")       > from mcf_library.mcf
-  if check(mc)=0: MC(scantokens(mc)) fi                 > select EN="Adenine"
+  if mc_check(mc)=0: MC(scantokens(mc)) fi                 > select EN="Adenine"
 endfigm                                                 >
 %------------------------------------------------------------------------------
 beginfigm("t:EN","v:Guanine")                           > select EN="Guanine"
-  if check(mc)=0: MC(scantokens(mc)) fi                 
+  if mc_check(mc)=0: MC(scantokens(mc)) fi                 
 endfigm
 %------------------------------------------------------------------------------
 beginfigm("t:EN","v:Cytosine")                          > select EN="Cytosine"
-  if check(mc)=0: MC(scantokens(mc)) fi                 >
+  if mc_check(mc)=0: MC(scantokens(mc)) fi                 >
 endfigm                                                 >
 %------------------------------------------------------------------------------
 beginfigm("t:n","v+:4")                                 > v+:4 = select No.4
-  if check(mc)=0: MC(scantokens(mc)) fi                 >        keep file open
+  if mc_check(mc)=0: MC(scantokens(mc)) fi                 >        keep file open
 endfigm                                                 >
 %------------------------------------------------------------------------------
 forever:
 %%%%%%%%%%  beginfigm("f:mcf_library","v+:*")            > select all
   beginfigm("f:mcf_library","t:EXA","v+:1")              > 'v+:1'= select EXA=1
-    if f_EOF=0: if check(mc)=0: MC(scantokens(mc)) fi fi >       keep file open
+    if f_EOF=0: if mc_check(mc)=0: MC(scantokens(mc)) fi fi >       keep file open
   endfigm                                                >    
   exitif f_EOF=1;                                        > exit if file end
 endfor
@@ -1609,12 +1609,12 @@
 %------------------------------------------------------------------------------
 \noindent%
 \newpage
-\subsection{Function query()}
-\index{query()}%
+\subsection{Function mc\_query()}
+\index{mc\_query()}%
 \paragraph{(Example)}
 \begin{verbatim}
 %--------------------------------------------------------------
-% query()
+% mc_query()
 %
 % "f:filename" : input file name  (default "mcf_library.mcf")
 % "o:filename" : output file name (default "temp.mcf")
@@ -1626,13 +1626,11 @@
 % filter 2  : MW>=285
 % filter 3  : MW<=295
 %--------------------------------------------------------------
-query("s:EN",
-%%%%%    "f:mcf_library.mcf","o:temp.mcf","s:EN",
-      "Cat=biological","MW>=285","MW<=295");
+mc_query("s:EN","Cat=biological","MW>=285","MW<=295");
 %--------------------------------------------------------------
 forever:
   beginfigm("f:temp","v+:*")    % use file temp.mcf / select all
-    if f_EOF=0: if check(mc)=0: MC(scantokens(mc)) fi fi
+    if f_EOF=0: if mc_check(mc)=0: MC(scantokens(mc)) fi fi
   endfigm
   exitif f_EOF=1;
 endfor
@@ -1952,7 +1950,7 @@
     ": {1^60,5^180,16^60}:/*H,             ",
     ": @14,\*,|,?5,{1,4}=dl,3:O            ")
     %----------------------------------------
-  if check(mc)=0: MC(scantokens(mc)) fi 
+  if mc_check(mc)=0: MC(scantokens(mc)) fi 
   endfigm
 \end{mplibcode}\\
 %--------------------------------------------------------------------
@@ -1965,7 +1963,7 @@
     ": {3,7,12,16}:/_,                        ",
     ": |,?6,6=dl,{6,2^35,2^-35}:/_            ")
     %------------------------------------------
-  if check(mc)=0: MC(scantokens(mc)) fi 
+  if mc_check(mc)=0: MC(scantokens(mc)) fi 
   endfigm
 \end{mplibcode}\\
 %--------------------------------------------------------------------
@@ -1979,7 +1977,7 @@
     ": 2:/COOH,7://_,13:*/OH,8:/*OH,   ",
     ": 14:*/_,{1^60,4^60}:*/H          ")
     %------------------------------------
-  if check(mc)=0: MC(scantokens(mc)) fi 
+  if mc_check(mc)=0: MC(scantokens(mc)) fi 
 endfigm;
 %--------------------------------------------------------------------
 \end{mplibcode}\\

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2022-04-05 22:08:50 UTC (rev 62936)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of  MCF typest with LuaLaTeX(luamplib)    by A.Yamaji    2022.03.13
+% Example of  MCF typest with LuaLaTeX(luamplib)    by A.Yamaji    2022.03.27
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mp must be version 4.82
+% ** mcf2graph.mp must be version 4.83
 % ** use mcf_library.mcf
 \documentclass{article}
 %------------------------------------------------------------------------------
@@ -85,7 +85,7 @@
   ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr              ")
   %---------------------------------------------------------------------
   fsize:=(140mm,30mm);
-  if check(mc)=0:       MCat(0,0.5)(scantokens(mc))
+  if mc_check(mc)=0:       MCat(0,0.5)(scantokens(mc))
     sw_numbering:=Atom; MCat(0.6,0.5)(scantokens(mc))
     sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc))
   fi
@@ -101,7 +101,7 @@
   ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr              ")
   %---------------------------------------------------------------------
   fsize:=(140mm,30mm);
-  if check(mc)=0:       MCat(0,0.5)(scantokens(mc))
+  if mc_check(mc)=0:       MCat(0,0.5)(scantokens(mc))
     sw_numbering:=Atom; MCat(0.6,0.5)(scantokens(mc))
     sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc))
   fi
@@ -116,7 +116,7 @@
 beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-")
   sw_output:=Fig+Calc+Mcode;                 %%%% output temp-mc.aux %%%%
   fsize:=(100mm,30mm);
-  if check(mc)=0:
+  if mc_check(mc)=0:
     MC(scantokens(mc))
     VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}");
     VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}");
@@ -130,7 +130,7 @@
 \begin{mplibcode}
 beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-")
   sw_output:=Fig+Calc+Mcode; fsize:=(100mm,30mm);
-  if check(mc)=0:
+  if mc_check(mc)=0:
     MC(scantokens(mc))
     VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}");
     VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}");
@@ -148,7 +148,7 @@
           "MW:819",":,38:*/_,65=red")  %%%% add methyl group (color red) %%%%
   sw_output:=Fig+Calc+Mcode;           %%%% output temp-mc.aux %%%%
   fsize:=(120mm,20mm);
-  if check(mc)=0: MC(scantokens(mc))
+  if mc_check(mc)=0: MC(scantokens(mc))
     VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}");
     VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}");
   fi
@@ -163,7 +163,7 @@
           "MW:819",":,38:*/_,65=red")  %%%% add methyl group (color red) %%%%
   sw_output:=Fig+Calc+Mcode;           %%%% output temp-mc.aux %%%%
   fsize:=(120mm,20mm);
-  if check(mc)=0: MC(scantokens(mc))
+  if mc_check(mc)=0: MC(scantokens(mc))
     VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}");
     VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}");
   fi
@@ -184,7 +184,7 @@
   beginfigm("t:EN","v:Maitotoxin")
     sw_output:=Fig+Calc+Mcode;         %%%% output temp-mc.aux %%%%
     fsize:=(120mm,60mm); fmargin:=(0,3mm); sw_frame:=Outside;
-    if check(mc)=0: MC(scantokens(mc))
+    if mc_check(mc)=0: MC(scantokens(mc))
       VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}");
       VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}");
     fi
@@ -199,7 +199,7 @@
   beginfigm("t:EN","v:Maitotoxin")
     sw_output:=Fig+Calc+Mcode;
     fsize:=(120mm,60mm); fmargin:=(0,3mm); sw_frame:=Outside; %% mc_length:=40;
-    if check(mc)=0: MC(scantokens(mc))
+    if mc_check(mc)=0: MC(scantokens(mc))
       VerbatimTeX("\gdef\EN{"&inf_EN&"}\gdef\MW{"&inf_MW&"}");
       VerbatimTeX("\gdef\mw{"&cal_MW&"}\gdef\fm{"&cal_FM&"}");
     fi

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2022-04-05 22:06:33 UTC (rev 62935)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2022-04-05 22:08:50 UTC (rev 62936)
@@ -839,6 +839,7 @@
  'lucida-otf',          "die 'skipping, nonfree font'",
  'lucidabr',            "die 'skipping, nonfree font'",
  'lucold',              "die 'skipping, nonfree font'",
+ 'lug',		"skipping, specific script (with too-short name)",
  'lxfonts',     "&MAKEflatten",
  'ly1',         "&MAKEcopy",
  'lyx',         "die 'skipping, container directory'",



More information about the tex-live-commits mailing list.