texlive[65499] Master/texmf-dist/doc/metapost/mcf2graph: mcf2graph

commits+karl at tug.org commits+karl at tug.org
Mon Jan 9 21:52:41 CET 2023


Revision: 65499
          http://tug.org/svn/texlive?view=revision&revision=65499
Author:   karl
Date:     2023-01-09 21:52:40 +0100 (Mon, 09 Jan 2023)
Log Message:
-----------
mcf2graph (9jan23)

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_manual.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,6 +1,14 @@
 *******************************************************************************
- Changelog of mcf2graph software package          by Akira Yamaji 2022-11-12
+ Changelog of mcf2graph software package          by Akira Yamaji 2023-01-09
 *******************************************************************************
+[ver. 4.91  / 2023-01-09]
+  -update MCF manual
+   from this version typeset with LuaTeX
+   include mcf_man_soc.mp,mcf_mplib_exa.tex
+  -delete mcf_man_soc.mp
+  -delete mcf_mplib_exa.tex
+  -delete mcf_mplib_exa.pdf
+
 [ver. 4.90  / 2022-11-12]
   -change syntax of fused ring
    {a--b}=?n  => a--b=?n (n:4,5,6)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,7 +1,7 @@
 ********************************************************************************
  mcf2graph  : Convert Molecular Coding Format to graphics with MetaPost
  Author     : Akira Yamaji
- version    : 4.90 2022-11-12
+ version    : 4.91 2023-01-09
  E-mail     : mcf2graph at gmail.com
  Located at : http://www.ctan.org/pkg/mcf2graph
 ********************************************************************************
@@ -20,17 +20,12 @@
  ( 3) mcf2graph.mp        Main macro of Metapost
  ( 4) mcf_library.mcf     Molecular data library
  ( 5) mcf_exa_soc.mp      Molecular difinition file example
- ( 6) mcf_manual.tex      MCF syntax manual(LaTeX file)
-                            make files 'mcf_man_soc-***.mps' before typeset
-                              >mpost mcf_man_soc.mf
- ( 7) mcf_man_soc.mp      Molecular definition file for mcf_manual.tex
- ( 8) mcf_manual.pdf      PDF of (6) (typeset with pdftex(LaTeX),makeindex)
- ( 9) mcf_example.tex     MCF example
- (10) mcf_example.pdf     PDF of (9) typeset with LuaLaTeX
- (11) mcf_exa_code.tex    MCF example include code
- (12) mcf_exa_code.pdf    PDF of (11) typeset with LuaLaTeX 
- (13) mcf_mplib_exa.tex   luamplib(LuaLaTeX) example
- (14) mcf_mplib_exa.pdf   PDF of (13) typeset with LuaLaTeX
+ ( 6) mcf_manual.tex      MCF syntax manual
+ ( 7) mcf_manual.pdf      PDF of ( 6) typeset with LuaLaTeX,makeindex
+ ( 8) mcf_example.tex     MCF example
+ ( 9) mcf_example.pdf     PDF of ( 8) typeset with LuaLaTeX
+ (10) mcf_exa_code.tex    MCF example include code
+ (11) mcf_exa_code.pdf    PDF of (10) typeset with LuaLaTeX 
 
 3. How to use mcf2graph with MetaPost
  Minimum requirement to use mcf2graph : mpost.exe,mpost.dll,mpost.mp,plain.mp
@@ -48,7 +43,7 @@
  (11) >mpost -s ahlength=7 filename => output report file
 
 4. License
- mcf2graph ver 4.88    Copyright (c) 2013-2022   Akira Yamaji
+ mcf2graph ver 4.91    Copyright (c) 2013-2023   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	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.90    Copyright (c) 2013-2022   Akira Yamaji
+% mcf2graph ver 4.91    Copyright (c) 2013-2023   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.90  2022.11.12";
+message "* This is mcf2graph ver 4.91  2023.01.09";
 tracingstats:=1; prologues:=3; warningcheck:=0;
 %-------------------------------------------------------------------------------------------------
 newinternal string EN_;

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	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Print out mcf data list                           by A.Yamaji   2022.11.12
+% Print out mcf data list                           by A.Yamaji   2023.01.09
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.90
+% ** mcf2graph.mf must be version 4.91
 % ** use mcf_library.mcf
 % ** typeset by LuaLaTeX(luamplib)
 \documentclass{article}

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,8 +1,8 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format                      by Akira Yamaji  2022.11.12
+% Molecular Coding Format                      by Akira Yamaji  2023.01.09
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph;   %%% it must be version 4.90
-message "* mcf_exa_soc 2022.11.12";
+if unknown Ph1: input mcf2graph; fi  %%% it must be version 4.91
+message "* mcf_exa_soc 2023.01.09";
 message "";
 %------------------------------------------------------------------------------
 %%%%sw_frame:=Outside;

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	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF   Typeset with LuaLaTeX(luamplib)   by A.Yamaji   2022.11.12
+% Example of MCF   Typeset with LuaLaTeX(luamplib)   by A.Yamaji   2023.01.09
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.90
+% ** mcf2graph.mf must be version 4.91
 % ** use mcf_library.mcf
 % ** typeset by LuaLaTeX(luamplib)
 \documentclass{article}

Deleted: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,1270 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% MCF file for mcf_manual.tex  by Akira.Yamaji               2022.11.12
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph;   %% it must be version 4.90
-% ** use library file 'mcf_library.mcf'
-message "mcf_man_soc 2022.11.12"; message "";
-%------------------------------------------------------------------------
-sw_mframe:=0;
-sw_expand:=0;
-%%ext(defaultscale:=.5; label.bot(decimal(fig_num)&":"&inf_EN,(.5w,0));)
-%***********************************************************************
-fsize:=(40mm,25mm);
-blength:=6mm;
-%***********************************************************************
-beginfigm("EN:Glycine",":<30,NH2,!2,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Alanine",":<30,NH2,!~wb,/_,!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Valine",":<30,NH2,!~wb,/?!,!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Leucine",":<30,NH2,!~wb,/'(!,?!),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Isoleucine",":<30,NH2,!~wb,/'(/*_,!2),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Serine",":<30,NH2,!~wb,/!OH,!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Threonine",":<30,NH2,!~wb,/'(/_,!~wf,OH),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Cysteine",":<30,NH2,!~wb,/!SH,!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Methionine",":<30,NH2,!~wb,/'(!2,S,!),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Phenylalanine",":<30,NH2,!~wb,/!Ph,!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Tyrosine",":<30,NH2,!~wb,/'(!Ph,-3:/OH),!,COOH")
-  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 mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Prorine",":<18,?5,3:NH,4:*/COOH")
-  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 mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Asparagine",":<30,NH2,!~wb,/'(!,//O,!,NH2),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Aspartic acid",":<30,NH2,!~wb,/!COOH,!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Glutamic acid",":<30,NH2,!~wb,/'(!2,COOH),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Lysine",":<30,NH2,!~wb,/'(!4,NH2),!,COOH")
-  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 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 mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-DOPA",":<30,NH2,!~wb,!,COOH, at 2,\,!,Ph,{-3,-4}:/OH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:Ornithine",":<30,NH2,!~wb,/'(!3,NH2),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:Citrulline",":<30,NH2,!~wb,/'(!3,NH,!,//O,!,NH2),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:GABA",":<30,NH2,!4,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:amino Levulinic acid",":<30,NH2,!2,//O,!3,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:4-amino benzoic acid",":<30,Ph,1:/NH2,4:/COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Carboxyl glutamic acid",
-  ":<30,NH2,!~wb,/'(!,/COOH,!,COOH),!,COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:L-Hydroxy Prorine",":<18,?5,1:/OH,3:NH,4:*/COOH")
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-fsize:=(60mm,35mm);
-blength:=0mm;
-max_blength:=10mm;
-ratio_thickness_bond:=0.015;
-ratio_atom_bond:=0.36;
-sw_frame:=Outside;
-fmargin:=(2mm,1mm);
-%***********************************************************************
-beginfigm("EN:Chain 1")
-  fsize:=(60mm,17mm);
-  sw_numbering:=Bond;
-  numbering_end:=6;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<15,-30,45,-45,60,$300,$0,
-       {1^$15,2^$345,3^$30,4^$345}:/_~dt,{5,6}=vf,
-     )
-  add(
-    defaultscale:=0.5;
-    labeloffset:=2bp;
-    drawarrow B7/*.7{B7right}..{B1right}B1/*.7;   label.ulft("-30",B7/*.7);
-    drawarrow B8/*.7{B8left}..{B2left}B2/*.7;     label.llft("45",B8/*.7);
-    drawarrow B9/*.7{B9right}..{B3right}B3/*.7;   label.ulft("-45",B9/*.7);
-    drawarrow B10/*.7{B10left}..{B4left}B4/*.7;   label.llft("60",B10/*.7);
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:Chain 2")
-  fsize:=(60mm,17mm);
-  sw_numbering:=Bond;
-  numbering_end:=6;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<-30,!6,
-       {1^-120,2^60,3^-60,4^60,5^-60,6^60}:/_~dt
-     )
-  add(
-    defaultscale:=0.5;
-    labeloffset:=2bp;
-    drawarrow B7/*.7{B7right}..{B1right}B1/*.7;   label.ulft("-60",B7/*.7);
-    drawarrow B8/*.7{B8left}..{B2left}B2/*.7;     label.llft("60",B8/*.7);
-    drawarrow B9/*.7{B7right}..{B3right}B3/*.7;   label.ulft("-60",B9/*.7);
-    drawarrow B10/*.7{B10left}..{B4left}B4/*.7;   label.llft("60",B10/*.7);
-    drawarrow B11/*.7{B11right}..{B5right}B5/*.7; label.ulft("-60",B11/*.7);
-    drawarrow B12/*.7{B12left}..{B6left}B6/*.7;   label.llft("60",B12/*.7);
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:Jump and Branch")
-  fsize:=(60mm,16mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=1;
-  sw_numbering:=Atom;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<-30,!6, at 3,0,!, at 5,-30)
-endfigm
-%***********************************************************************
-beginfigm("EN:Jump and Branch")
-  fsize:=(60mm,16mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Atom;
-  sw_trimming:=1;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<-30,!6, at 3,\,!)
-endfigm
-%***********************************************************************
-beginfigm("EN:branch1")
-  fsize:=(60mm,16mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Atom;
-  sw_trimming:=1;
-  numbering_end:=10;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<30,!10, at 2,\,!, at 4,*\,!, at 6,\*,!, at 8,\\,!, at 10,*\*,!)
-endfigm
-%***********************************************************************
-beginfigm("EN:branch2")
-  fsize:=(60mm,20mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=1;
-  sw_numbering:=Atom;
-  numbering_end:=7;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<30,!6, at 2,\~dr,!, at 4,\`1.5,-90, at 6,15,-60)
-endfigm
-%***********************************************************************
-beginfigm("EN:Connect atom")
-  fsize:=(60mm,20mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=1;
-  sw_numbering:=Atom;
-  ratio_chain_ring:=1;
-%----------------------------------------------------------------------
-  MC(<-30,!6, at 3,\,!3,&6~bd, at 9,&4~bz)
-endfigm
-%***********************************************************************
-beginfigm("EN:ring")
-  fsize:=(60mm,20mm);
-  sw_trimming:=1;
-  fmargin:=(2mm,3mm);
-  sw_numbering:=Bond;
-%----------------------------------------------------------------------
-  MC(?6)
-endfigm
-%***********************************************************************
-beginfigm("EN:rotate 1")
-  fsize:=(60mm,20mm);
-  fmargin:=(2mm,3mm);
-  sw_trimming:=1;
-  sw_numbering:=Bond;
-  ratio_chain_ring:=1;
-  numbering_end:=7;
-    defaultscale:=0.5;
-    labeloffset:=2bp;
-  MC(#1,0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0,{1:7}=vf,
-      {3,4^180}:/_~dt)
-  add(
-    drawarrow B8/*.7{B8left}..{B3left}B3/*.7;   label.urt("90",B8/*.7);
-    drawarrow B9/*.7{B9right}..{B4right}B4/*.7; label.urt("-90",B9/*.7);
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:change bond 1")
-  fsize:=(70mm,10mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=0;
-  ratio_chain_ring:=1;
-  MC(<-30,!~dm,!,!~dl,!,!~dr,!~db,!~db,!,!~tm)
-  add(defaultscale:=0.6; labeloffset:=0;
-      label.rt("(dm)",A1+(0,-0.7l));
-      label.rt("(dl)",A3+(0,-0.7l));
-      label.rt("(dr)",A5+(0,-0.7l));
-      label.rt("(db)",A6+(0,-0.2l));
-      label.rt("(db)",A7+(0,-0.7l));
-      label.rt("(tm)",A9+(0,-0.7l));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:change bond 2")
-  fsize:=(70mm,10mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=0;
-  ratio_chain_ring:=1;
-  MC(<-30,!~wf,!,!~wb,!,!~zf,!,!~zb,!,!~vf,!,!~vb)
-  add(defaultscale:=0.6; labeloffset:=0;
-      label.rt("(wf)",A1+(0,-0.7l));
-      label.rt("(wb)",A3+(0,-0.7l));
-      label.rt("(zf)",A5+(0,-0.7l));
-      label.rt("(zb)",A7+(0,-0.7l));
-      label.rt("(vf)",A9+(0,-0.7l));
-      label.rt("(vb)",A11+(0,-0.7l));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:change bond 3")
-  fsize:=(70mm,10mm);
-  fmargin:=(2mm,2mm);
-  blength:=9mm;
-  sw_trimming:=1;
-  ratio_chain_ring:=1;
-  MC(<-30,!7,1=dt,3=wv,5=bd,7=bz)
-  add(defaultscale:=0.6; labeloffset:=0;
-      label.rt("(dt)",A1+(0,-0.6l));
-      label.rt("(wv)",A3+(0,-0.6l));
-      label.rt("(bd)",A5+(0,-0.6l));
-      label.rt("(bz)",A7+(0,-0.6l));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:over line")
-  sw_trimming:=1;
-  fsize:=(75mm,20mm);
-  ratio_chain_ring:=1;
-  MC(<30,!18,$90`1.5,90`15.5,
-     {2~si_,4~wf_,6~wb_,8~zf_,10~zb_,
-      12~bd_,14~dl_,16~dr_,18~dm_}:/_`2)
-endfigm
-%***********************************************************************
-beginfigm("EN:Steric ring")
-  fsize:=(75mm,16mm);
-  MCat(0.05,0.5)(#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,
-     #.5,{1^$-90,2^$90,3^$-90,4^$90}:/OH,6^$90:/!OH)
-  defaultscale:=0.6;
-  MCat(0.5,0.7)(0~wf_r)  add(label.lft("wf_r:",A1);)
-  MCat(0.5,0.2)(0~wf)    add(label.lft("wf:",A1);)
-  MCat(0.75,0.7)(0~bd_r) add(label.lft("bd_r:",A1);)
-  MCat(0.75,0.2)(0~bd)   add(label.lft("bd:",A1);)
-  MCat(1,0.7)(0~wb_r)    add(label.lft("wb_r:",A1);)
-  MCat(1,0.2)(0~wb)      add(label.lft("wb:",A1);)
-endfigm
-%***********************************************************************
-beginfigm("EN:change multi bond")
-  fsize:=(60mm,8mm);
-  fmargin:=(2mm,3mm);
-  ratio_chain_ring:=1;
-  MC(<30,!9,{2,4,6,8'}=dl)
-endfigm
-%***********************************************************************
-beginfigm("EN:change bond length1")
-  fsize:=(55mm,8mm);
-  sw_numbering:=Bond;
-  MC(<-30,!2,!4`1.2,!2)
-endfigm
-%***********************************************************************
-beginfigm("EN:change bond length2")
-  fsize:=(55mm,8mm);
-  sw_numbering:=Bond;
-  MC(<-30,!2,#1.2,!4,##,!2)
-endfigm
-%***********************************************************************
-beginfigm("EN:change ring length")
-  fsize:=(60mm,16mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=1;
-  sw_numbering:=Bond;
-  MC(?6, at 4,\,?6`1.2)
-endfigm
-%***********************************************************************
-beginfigm("EN:Insert atom")
-  sw_trimming:=1;
-  fsize:=(50mm,7mm);
-  MC(<-30,!2,O,!2,N,!2)
-endfigm
-%***********************************************************************
-beginfigm("EN:change atom",":<30,!5,2:O,{3:5}:N")
-  fsize:=(70mm,10mm);
-  msize:=(0.48,1);
-  MCat(0,0.5)(scantokens(mc))
-  sw_numbering:=Atom;
-  MCat(1,0.5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:change atom brock address 1",":?6, at 4,\,|,?6,2:O")
-  fsize:=(70mm,14mm);
-  fmargin:=(3mm,1.5mm);
-  MCat(0,.5)(scantokens(mc))
-  sw_numbering:=Atom;
-  msize:=(1,.88);
-  MCat(1,.5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:change atom brock address 2",":?6, at 4,\,|,?6,||,2:N")
-  fsize:=(70mm,14mm);
-  fmargin:=(3mm,1.5mm);
-  MCat(0,.5)(scantokens(mc))
-  sw_numbering:=Atom;
-  msize:=(1,.88);
-  MCat(1,.5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:change atom absolute address",":?6, at 4,\,?6,$2:N")
-  fsize:=(70mm,14mm);
-  fmargin:=(3mm,1.5mm);
-  MCat(0,.5)(scantokens(mc))
-  sw_numbering:=Atom;
-  msize:=(1,.88); 
-  MCat(1,.5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:change atom relative adress",":?6, at 4,\,?6,-2:N")
-  fsize:=(70mm,14mm);
-  fmargin:=(3mm,1.5mm);
-  MCat(0,.5)(scantokens(mc))
-  sw_numbering:=Atom;
-  msize:=(1,.88);
-  MCat(1,.5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:Charged atom")
-  sw_trimming:=1;
-  fsize:=(60mm,12mm);
-  MC(<-30,!2,N,??,p_,!2,S,n_^180,!6,7:N,7:??,9:S,7:p_,9:n_^180)
-endfigm
-%***********************************************************************
-beginfigm("EN:fused ring")
-  fsize:=(60mm,18mm);
-  fmargin:=(2mm,1.5mm);
-  sw_trimming:=1;
-  sw_numbering:=Bond;
-  MC(<30,?6,3=?6,3=dt,{7:11}=bd_r)
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:change ring length")
-  fsize:=(60mm,25mm);
-  fmargin:=(2mm,2mm);
-  sw_trimming:=1;
-  sw_numbering:=Bond;
-  MC(?6, at 4,\,?6`1.2,5=?6,11=?6,
-      {14:23}=bd_r,{5,11}=dt)
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:fused large 6 ring")
-  fsize:=(60mm,18mm);
-  fmargin:=(2mm,1.5mm);
-  margin_top_bottom:=1.5mm;
-  sw_numbering:=Bond;
-  sw_trimming:=1;
-  MC(<30,?6,3=?6[13],3=dt,{7:11}=bd_r)
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:fuse multi ring")
-  fsize:=(70mm,20mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Bond;
-  sw_trimming:=1;
-  MC(<30,?6,{-3,-4,-4,-2,-2,-4,-4}=?6,{4,8,13,20,25,28,33}=dt)
-endfigm
-%***********************************************************************
-beginfigm("EN:fused ring 2")
-  fsize:=(75mm,20mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Bond;
-  msize:=(1,.9);
-  MCat( 0,.5)(<30,?6,{3,11--4}=?6,{11,4}=dt,{12:15}=bd_r)
-  add(defaultscale:=0.4; label("(1)",p0);)
-  msize:=(1,.9);
-  MCat(.5,.5)(<30,?6,3=?6,{11--4}=?5,{11,4}=dt,{12:14}=bd_r)
-  add(defaultscale:=0.4; label("(2)",p0);)
-  msize:=(1,.9);
-  MCat( 1,.5)(<30,?6,3=?6,{11--4}=?4,{11,4}=dt,{12,13}=bd_r)
-  add(defaultscale:=0.4; label("(3)",p0);)
-endfigm
-%***********************************************************************
-beginfigm("EN:fused ring 3")
-  fsize:=(60mm,20mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Bond;
-  MCat(0,1)(?6,{3,10}=?6,16---4=?6,{16,4}=dt,{17:19}=bd_r)
-  add(defaultscale:=0.4; label("(1)",p0);)
-  MCat(1,0)(?6,{3,10}=?6,16---4=?5,{16,4}=dt,{17,18}=bd_r)
-  add(defaultscale:=0.4; label("(2)",p0);)
-endfigm
-%***********************************************************************
-beginfigm("EN:fused ring 4")
-  fsize:=(60mm,20mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Bond;
-  MC(<-30,?6,{3,10,15}=?6,21----4=?6,{21,4}=dt,{22,23}=bd_r)
-endfigm
-%***********************************************************************
-beginfigm("EN:Spiro ring ")
-  fsize:=(40mm,15mm);
-  sw_numbering:=Atom;
-  numbering_end:=7;
-  ratio_chain_ring:=1;
-  MC(<30,!6, at 4,?5)
-endfigm
-%***********************************************************************
-beginfigm("EN:group 1")
-  fsize:=(75mm,18mm);
-  MC(<30,!,/_,!2,/!,!2,/!,!4,/?!,!4,/??!,!2,/'(Ph`0.8)^-60,!)
-endfigm
-%***********************************************************************
-beginfigm("EN:group 2")
-  fsize:=(70mm,14mm);
-  MC(<30,!`1,//O,!2`1,*/H,!2`1,/*H,!2`1,*/*H,!2`1,**?3,!`1)
-  add(defaultscale:=0.75;
-      label("//",A2-(0,0.45l));
-      label("*/",A4-(0,0.45l));
-      label("/*",A6-(0,0.45l));
-      label("*/*",A8-(0,0.45l));
-      label("**",A10-(0,0.45l));
-     )
-endfigm
-%***********************************************************************
-beginfigm("EN:group 3")
-  fsize:=(60mm,16mm);
-  sw_trimming:=1;
-  MC(<-30,#1,!2,/_`2^30,!2,/!2>lr,!2,/!2>rl,!)
-endfigm
-%***********************************************************************
-beginfigm("EN:group 3")
-  fsize:=(75mm,25mm);
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Atom;
-  numbering_end:=17;
-  MC(<30,!17,2:/_,3:/!,4:/!2,7:/iPr,8:/tBu,10:/'(Ph`0.6)^-15,
-     {11,12,13'}:*/_,{15,16,17'}:/*_)
-endfigm
-%***********************************************************************
-beginfigm("EN:group 4")
-  fsize:=(60mm,18mm);
-  sw_trimming:=1;
-  fmargin:=(2mm,2mm);
-  sw_numbering:=Atom; numbering_end:=9;
-  MC(<30,!8`1,{2~wf,4~zf,6^-30,8^$120}:/_)
-endfigm
-%***********************************************************************
-beginfigm("EN:group 5")
-  fsize:=(60mm,16mm);
-  sw_trimming:=1;
-  sw_numbering:=Atom; numbering_end:=8;
-  MC(<-30,!7`1,3:/_`2^30,5:/!2>lr,7:/!2>rl)
-endfigm
-%***********************************************************************
-beginfigm("EN:chain strech direction mode 1")
-  fsize:=(50mm,25mm);
-  sw_trimming:=1;
-  ratio_chain_ring:=1;
-  MC(?4,{3^-90,3^-30,3^90}:/!3>hz,
-        {1^-60,1,1^60}:/!3>vt
-  )
-  add(defaultscale:=0.5; labeloffset:=2bp;
-      label.rt(">hz",A8);
-      label.top(">hz",A12);
-      label.top(">hz",A16);
-      label.rt(">vt",A20);
-      label.top(">vt",A24);
-      label.rt(">vt",A28);
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:chain strech direction mode 2")
-  fsize:=(60mm,20mm);
-  sw_trimming:=1;
-  ratio_chain_ring:=1;
-  MC(<-30,!6,{3^-30,3,3^30}:/!3>lr,
-             {5^-30,5,5^30}:/!3>rl
-  )
-  add(defaultscale:=0.6; labeloffset:=2bp;
-      label.lft(">lr",A11);
-      label.lft(">lr",A15);
-      label.top(">lr",A19);
-      label.top(">rl",A23);
-      label.rt(">rl",A27);
-      label.rt(">rl",A31);
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:chain strech direction mode 3")
-  fsize:=(40mm,20mm);
-  sw_trimming:=1;
-  MC(<30,!4,2:/!6>30,4:/!4>-45)
-endfigm
-%***********************************************************************
-beginfigm("EN:chain strech direction mode 4")
-  fsize:=(60mm,20mm);
-  sw_trimming:=1;
-  MC(<30,!6,6>'(90,-90,90,-90,90):/!5)
-endfigm
-%***********************************************************************
-beginfigm("EN:change atom and group")
-  fsize:=(60mm,12mm);
-  sw_trimming:=1;
-  MC(<-30,!2,NH,!2,N!,!2,N!2,!2,SO,!2,SOO,!)
-endfigm
-%***********************************************************************
-beginfigm("EN:methyl*2,isopropyl,tert-butyl")
-  fsize:=(60mm,12mm);
-  sw_trimming:=1;
-  MC(<30,!9`1,?!,!,??,!,2:??,4:/?!,6:/??!,8:/N?!)
-endfigm
-%***********************************************************************
-beginfigm("EN:User definition")
-  fsize:=(60mm,13mm);
-  sw_trimming:=1;
-  iBuOH:='(!,/_,!,OH);
-  MC(<30,?6,{4,6}:/iBuOH)
-endfigm
-%***********************************************************************
-beginfigm("EN:Inline definition")
-  fsize:=(60mm,13mm);
-  fmargin:=(2mm,1mm);
-  sw_trimming:=1;
-  MC(<30,!8,{2,6}:/'(!,/_,!,OH))
-endfigm
-%***********************************************************************
-beginfigm("EN:Move position")
-  fsize:=(70mm,16mm);
-  fmargin:=(2mm,1mm);
-  sw_trimming:=1;
-  MC(<30,?6, at 3,\,!3,//O,!,O,n_^60,@$(6,1),H,p_^15)
-  add(drawdot A1 withpen pencircle scaled 2bp;
-      pickup pencircle scaled 0.1bp;
-      for i=0 upto 6:
-        draw (A1+(l*i,l-3bp))--(l*i,l+3bp);
-      endfor
-      draw A1--(A1+(0,1l))--A1+(6l,1l);
-      draw (A1+(0,1l))--(A1+(-3bp,1l));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:Serial number")
-  fsize:=(75mm,14mm);
-  max_blength:=8mm;
-  sw_numbering:=Atom; numbering_end:=15;
-  MC(<30,!14,{2,6:10,14}:/_~bd_r`0.5)
-endfigm
-%***********************************************************************
-beginfigm("EN:Change color")
-  fsize:=(50mm,20mm);
-  max_blength:=8mm;
-  MC(
-    <30,Ph,{2,5}:N,3:/NH2,4:/COOH,
-    2:red,5:blue,3=green
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:Change font")
-  fsize:=(50mm,20mm);
-  max_blength:=8mm;
-  atomfont:="cmr8";
-  MC(<30,Ph,{2,5}:N,3:/NH2,4:/COOH)
-endfigm
-%***********************************************************************
-beginfigm("EN:mangle")
-  fsize:=(50mm,15mm);
-  blength:=6mm;
-  mangle:=0;
-  MCat(0.2,0.5)(Ph)
-  add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);)
-  mangle:=30;
-  MCat(0.8,0.5)(Ph)
-  add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);)
-endfigm
-%***********************************************************************
-beginfigm("EN:blength=0")
-  sw_frame:=Bothside;
-  fsize:=(40mm,15mm);
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:0<blength=<1")
-  sw_frame:=Bothside;
-  fsize:=(40mm,15mm);
-  blength:=0.1;
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:blength>1")
-  sw_frame:=Bothside;
-  fsize:=(40mm,15mm);
-  blength:=8mm;
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:msize=(1)")
-  sw_frame:=Bothside+Mol;
-  fsize:=(40mm,15mm);
-  msize:=(1,1);
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%------------------------------------------------------
-beginfigm("EN:msize=(0.25,1)")
-  sw_frame:=Bothside+Mol;
-  fsize:=(40mm,15mm);
-  msize:=(0.25,1);
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%------------------------------------------------------
-beginfigm("EN:msize=(11mm,11mm)")
-  sw_frame:=Bothside+Mol;
-  fsize:=(40mm,15mm);
-  msize:=(11mm,11mm);
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:mposition")
-  sw_frame:=Bothside+Mol;
-  fsize:=(40mm,15mm);
-  msize:=(1,0.8);
-  mposition:=(0.5,0.5);
-  MC(<30,Ph)
-endfigm
-%-----------------------------------------------------
-beginfigm("EN:mposition")
-  sw_frame:=Bothside+Mol;
-  fsize:=(40mm,15mm);
-  msize:=(1,0.8);
-  mposition:=(1,0);
-  MC(<30,Ph)
-endfigm
-%-----------------------------------------------------
-beginfigm("EN:mposition")
-  sw_frame:=sw_frame+Mol;
-  fsize:=(40mm,15mm);
-  msize:=(1,0.8);
-  mposition:=(10mm,4mm);
-  MC(<30,Ph)
-  ext(drawdot p1 withpen pencircle scaled 3pt;
-      pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:Figure size")
-  fsize:=(40mm,12mm);
-  sw_frame:=Outside;
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:fmargin")
-  fsize:=(40mm,12mm);
-  sw_frame:=Bothside+Mol;
-  fmargin:=(10mm,1mm);
-  MC(<30,Ph)
-  ext(pickup pencircle scaled 0.2pt; 
-      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
-      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
-      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
-      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
-      drawdot p0 withpen pencircle scaled 3pt;
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:offset_thickness",":<30,Ph") 
-  fsize:=(60mm,12mm);
-  offset_thickness:=0.0pt; MCat(0.1,0.5)(scantokens(mc))
-  offset_thickness:=0.2pt; MCat(0.55,0.5)(scantokens(mc))
-  offset_thickness:=0.5pt; MCat(1,0.5)(scantokens(mc))
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.0pt",(0,1bp));
-    label.urt("0.2pt",(0.36w,1bp));
-    label.urt("0.5pt",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:offset_bond_gap",":<30,Ph")
-  fsize:=(60mm,12mm);
-  offset_bond_gap:=0.0pt; MCat(0.1, 0.5)(scantokens(mc))
-  offset_bond_gap:=0.3pt; MCat(0.55,0.5)(scantokens(mc))  %<<== default
-  offset_bond_gap:=1.0pt; MCat(1,   0.5)(scantokens(mc))
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.0pt",(0,1bp));
-    label.urt("0.3pt",(0.36w,1bp));
-    label.urt("1.0pt",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:offset_atom")
-  fsize:=(60mm,12mm);
-  offset_atom:=0.0pt; MCat(0.1, .5)(<30,?6,3:O)
-  offset_atom:=0.8pt; MCat(.55, .5)(<30,?6,3:O)   %<<== default
-  offset_atom:=2.0pt; MCat(1,   .5)(<30,?6,3:O)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.0pt",(0,1bp));
-    label.urt("0.8pt",(0.36w,1bp));
-    label.urt("2.0pt",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:offset_wedge") 
-  fsize:=(60mm,12mm);
-  offset_wedge:=0.0pt; MCat(0.1,0.5)(<30,?6,5:*/_)
-  offset_wedge:=0.4pt; MCat(0.55,0.5)(<30,?6,5:*/_)  %<<== default
-  offset_wedge:=1.0pt; MCat(1, 0.5)(<30,?6,5:*/_)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.0pt",(0,1bp));
-    label.urt("0.4pt",(0.36w,1bp));
-    label.urt("1.0pt",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:max_blength")
-  fsize:=(60mm,20mm);
-  sw_frame:=sw_frame+Mol;
-  max_blength:=5mm;  MCat(0, .5)(<30,Ph)
-  max_blength:=8mm;  MCat(.4,.5)(<30,Ph)
-  max_blength:=10mm; MCat(1, .5)(<30,Ph)   %<<== default
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label("5mm", (0.1w,0.5h));
-    label("8mm", (0.42w,0.5h));
-    label("10mm",(0.82w,0.5h));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_thickness_bond")
-  fsize:=(60mm,12mm);
-  ratio_thickness_bond:=0.005;  MCat(0.1,0.5)(<30,Ph)
-  ratio_thickness_bond:=0.015;  MCat(.55,0.5)(<30,Ph)  %<<== default
-  ratio_thickness_bond:=0.03;   MCat(1, 0.5)(<30,Ph)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.005",(0,1bp));
-    label.urt("0.015",(0.36w,1bp));
-    label.urt("0.030",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_char_bond")
-  fsize:=(60mm,12mm);
-  ratio_char_bond:=1.0;  MCat(0, .5)(<30,?6,6:O,3:NH)
-  ratio_char_bond:=1.5;  MCat(.5, .5)(<30,?6,6:O,3:NH)   %<<== default
-  ratio_char_bond:=2.0;  MCat( 1, .5)(<30,?6,6:O,3:NH)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("1.0",(0,1bp));
-    label.urt("1.5",(0.36w,1bp));
-    label.urt("2.0",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_bondgap_bond")
-  fsize:=(60mm,12mm);
-  ratio_bondgap_bond:=0.10; MCat(0.1, .5)(<30,Ph)
-  ratio_bondgap_bond:=0.15; MCat(.55, .5)(<30,Ph)    %<<== default
-  ratio_bondgap_bond:=0.20; MCat(1  , .5)(<30,Ph)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.10",(0,1bp));
-    label.urt("0.15",(0.36w,1bp));
-    label.urt("0.20",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_atom_bond")
-  fsize:=(60mm,12mm);
-  ratio_atom_bond:=0.25;  MCat(0.1, .5)(<30,?6,3:O)
-  ratio_atom_bond:=0.33;  MCat(.55, .5)(<30,?6,3:O)   %<<== default
-  ratio_atom_bond:=0.45;  MCat(1, .5)(<30,?6,3:O)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.25",(0,1bp));
-    label.urt("0.33",(0.36w,1bp));
-    label.urt("0.45",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_wedge_bond")
-  fsize:=(70mm,12mm);
-  ratio_wedge_bond:=0.1;  MCat(0.05,.5)(?6,4:*/_)
-  ratio_wedge_bond:=0.12; MCat(.55, .5)(?6,4:*/_)   %<<== default
-  ratio_wedge_bond:=0.2;  MCat(1  , .5)(?6,4:*/_)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.10",(0,1bp));
-    label.urt("0.12",(0.36w,1bp));
-    label.urt("0.20",(0.7w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_atomgap_atom",":<30,!2`0.5,2:O")
-  fsize:=(70mm,12mm);
-  sw_frame:=sw_frame+Atom;
-  ratio_atomgap_atom:=0.00;  MCat(0, .5)(scantokens(mc))
-  ratio_atomgap_atom:=0.050; MCat(.5,.5)(scantokens(mc))  %<<== default
-  ratio_atomgap_atom:=0.12;  MCat(1, .5)(scantokens(mc))
-  ext(defaultscale:=0.75; labeloffset:=1bp;
-    label.urt("0.00",(0.05w,1bp));
-    label.urt("0.05",(0.45w,1bp));
-    label.urt("0.12",(0.85w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_chain_ring")
-  fsize:=(70mm,12mm);
-  ratio_chain_ring:= 0.4;  MCat(0.05,.5)(<30,?6,4:/!)
-  ratio_chain_ring:= 0.66; MCat(.45, .5)(<30,?6,4:/!)   %<<== default
-  ratio_chain_ring:= 1;    MCat(1,   .5)(<30,?6,4:/!)
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.40",(0,1bp));
-    label.urt("0.66",(0.3w,1bp));
-    label.urt("1.0" ,(0.62w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:ratio_hashgap_bond",":<30,!2,2:/*_`1.5")
-  fsize:=(70mm,15mm);
-  ratio_hashgap_bond:=0.06; MCat(0.08,.5)(scantokens(mc))
-  ratio_hashgap_bond:=0.12; MCat( .55,.5)(scantokens(mc)) %<<== default
-  ratio_hashgap_bond:=0.20; MCat(1,   .5)(scantokens(mc))
-  ext(defaultscale:=0.6; labeloffset:=1bp;
-    label.urt("0.06",(0,1bp));
-    label.urt("0.12",(0.4w,1bp));
-    label.urt("0.20",(0.77w,1bp));
-  )
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch numbering atom")
-  fsize:=(60mm,10mm);
-  ratio_chain_ring:=1;
-  numbering_start:=3; numbering_end:=8;
-  sw_numbering:=Atom; MC(<-30,!9)
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch numbering bond")
-  fsize:=(60mm,10mm);
-  ratio_chain_ring:=1;
-  numbering_start:=3; numbering_end:=8;
-  sw_numbering:=Bond; MC(<-30,!9)
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch trimming")
-  fsize:=(60mm,20mm);
-  sw_frame:=Bothside+Mol;
-  msize:=(1,.7); MCat(.2,.3)(Ph)
-                 MCat(.8,.7)(Ph)
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:Switwch trimming")
-  fsize:=(60mm,20mm);
-  sw_frame:=Bothside+Mol;
-  sw_trimming:=1;
-  msize:=(1,.7);
-  MCat(.2,.3)(Ph)
-  MCat(.8,.7)(Ph)
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch Expand",":<30,Ph,4:/COOH,3:/NH2")
-  fsize:=(60mm,20mm);
-  MCat(0, .5)(scantokens(mc))
-  sw_expand:=1;
-  MCat(1, .5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch abbreviate group",":<30,Ph,4:/Cl,3:/F")
-  fsize:=(60mm,12mm);
-  MCat(.15, .5)(scantokens(mc))
-  sw_abbreviate:=Group;
-  MCat(.85, .5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch abbreviate bondtype",":<30,Ph,4:/Cl,3:/F")
-  fsize:=(60mm,12mm);
-  MCat(.15, .5)(scantokens(mc))
-  sw_abbreviate:=Bond;
-  MCat(.85, .5)(scantokens(mc))
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch font frame 1")
-  fsize:=(30mm,10mm);
-  fmargin:=(5mm,1.5mm);
-  sw_frame:=Outside;
-  MC(<30,Ph)
-endfigm
-beginfigm("EN:Switwch font frame 2")
-  fsize:=(30mm,10mm);
-  fmargin:=(5mm,1.5mm);
-  sw_frame:=Inside;
-  MC(<30,Ph)
-endfigm
-beginfigm("EN:Switwch font frame 3")
-  fsize:=(30mm,10mm);
-  fmargin:=(5mm,1.5mm);
-  sw_frame:=Bothside;
-  MC(<30,Ph)
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch molecular frame")
-  sw_frame:=Outside;
-  fsize:=(40mm,11mm);
-  msize:=(1,1);
-  sw_frame:=sw_frame+Mol;
-  MC(<30,Ph)
-endfigm
-%***********************************************************************
-beginfigm("EN:Switwch atom frame")
-  fsize:=(60mm,10mm);
-  sw_frame:=sw_frame+Atom;
-  MC(<30,COOH,!,COOH)
-endfigm
-%***********************************************************************
-beginfigm("EN:Local setting 1")
-  fsize:=(15mm,12mm);
-  MC(Ph)
-endfigm
-beginfigm("EN:Local setting 2")
-  fsize:=(15mm,12mm);
-  ratio_thickness_bond:=0.05;
-  MC(Ph)
-endfigm
-beginfigm("EN:Local setting 3")
-  fsize:=(15mm,12mm);
-  MC(Ph)
-endfigm
-%***********************************************************************
-save_ratio:=ratio_thickness_bond;
-beginfigm("EN:Global setting 1")
-  fsize:=(15mm,12mm);
-  MC(Ph)
-endfigm
-ratio_thickness_bond:=0.05;
-beginfigm("EN:Global setting 2")
-  fsize:=(15mm,12mm);
-  MC(Ph)
-endfigm
-beginfigm("EN:Global setting 3")
-  fsize:=(15mm,12mm);
-  MC(Ph)
-endfigm
-ratio_thickness_bond:=save_ratio;
-%***********************************************************************
-beginfigm("EN:MC() ")
-  fmargin:=(0.5mm,0.5mm);
-  fsize:=(40mm,15mm);
-  sw_frame:=Outside+Mol;
-  MC(<30,Ph,4:/Cl,3:/F)
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:MCat()")
-  defaultscale:=0.6;
-  fsize:=(60mm,40mm);
-  fmargin:=(3mm,3mm);
-  blength:=0.07;
-  sw_frame:=Outside;
-  mangle:=0;
-  for i=1 step -0.5 until 0:
-    for j=0 step 0.33 until 1:
-      MCat(j,i)(Ph,4:N)
-      add(
-        drawarrow((A1+A1up**aw)..A1);
-        label(decimal(mangle),p0+(0.5w,0.5h));
-      )
-      mangle:=mangle+30;
-    endfor
-  endfor
-endfigm
-%***********************************************************************
-beginfigm("EN:Pyridine",":<30,Ph,2:N")
-  sw_trimming:=0;
-  fsize:=(12mm,12mm);
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:Pyridine",":<30,Ph,2):N")
-  sw_trimming:=0;
-  fsize:=(12mm,12mm);
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:add() 1")
- fsize:=(70mm,40mm);
- sw_frame:=sw_frame+Atom+Mol;
- max_blength:=10mm;
- msize:=(.91,.9);
- MCat(.5,.85)(<30,?6,{2,5}:O)
- add(
-  defaultscale:=.8;
-  labeloffset:=.3aw;
-  dotlabel.lft("p0",p0);
-  dotlabel.rt( "p0+(w,h)",p0+(w,h));
-  dotlabel.ulft("A1",A1);
-  drawarrow A1..A1+__*l<<A1ang;
-  dotlabel.lrt( "B3s",B3s);
-  dotlabel.rt("B3m",B3m);
-  drawarrow B3m..B3m+__*l<<(B3ang+90);
-  dotlabel.ulft("A6",A6);
-  drawarrow A1{A1down}..A6;
-  dotlabel.urt( "B3e",B3e);
-  label.rt( "An="&decimal(An)&
-           "  Bn="&decimal(Bn)&
-           "  aw="&decimal(aw)&
-           "  em="&decimal(em),
-           p0+(-9em,-1.5em));
-  label.rt( "w="&decimal(w)&
-           "  h="&decimal(h)&
-           "  l="&decimal(l),
-           p0+(-9em,-3em));
- )
-endfigm
-%***********************************************************************
-beginfigm("EN:add() 2")
-  fsize:=(70mm,20mm);
-  msize:=(1,0.85); MCat(0,0)(<30,Ph,3=dl,4:/NH2)
-  add(labeloffset:=.7aw;
-      label.top(lonepair 90,A7);
-      drawarrow (A7+up**1.2aw){A7left}..{B7right}B7/*0.3;
-      drawarrow B3m..A3+B2up**1.5aw..{A3down}A3;
-  )
-  MCat(1,0)(<30,?6,{1,5}=dl,4://NH2)
-  add(labeloffset:=.7aw;
-      label.top(plus,A7);
-      label.urt(minus,A3);
-      label(lonepair A3ang,A3+A3up**.7aw);
-  )
-  ext(drawdblarrow (0.4w,0.4h)..(0.55w,0.4h);)
-endfigm
-%***********************************************************************
-beginfigm("EN:ext()")
-  fsize:=(70mm,30mm);
-  blength:=0.065;
-  sw_label_emu:=1;
-  %
-  MCat(0.1,0.5)(<-210,60`1,60`1,60`1,{1,3}=dl,1:/R1,4:/R2^-60)
-  add(
-   defaultscale:=0.6;
-   label.bot("Diene",p0+(0.5w,0));
-  )
-  MCat(0.4,0.5)(<-30,-60`1,1=dl,1:/R3,2:/R4^60)
-  add(
-   defaultscale:=0.6;
-   label.bot("Dienophile",p0+(0.5w,0));
-  )
-  MCat(0.9,0.5)(<30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1)
-  ext(
-    drawarrow (0.52w,0.5h)..(0.6w,0.5h);
-    defaultscale:=0.7;
-    label("+",(0.25w,0.5h));
-    ratio_thickness_char:=0.125;
-    label.bot("Diels-Alder Reaction",(0.5w,h));
-  )
-endfigm
-%***********************************************************************
-% Global ext() setting 1
-save_defaultsize:=defaultsize;
-defaultsize:=5bp;
-beginfigm("EN:?3")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(<30,?3)
-endfigm
-beginfigm("EN:?4")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(?4)
-  %-------------------------------
-  ext(label.top(inf_EN,(0.5w,0));)
-  %-------------------------------
-endfigm
-beginfigm("EN:?5")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(?5)
-endfigm
-beginfigm("EN:?5")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(?6)
-endfigm
-%-----------------------------------------------------------------------
-beginfigm("EN:?3")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(<30,?3)
-endfigm
-%-------------------------------
-ext(label.top(inf_EN,(0.5w,0));)
-%-------------------------------
-beginfigm("EN:?4")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(?4)
-endfigm
-beginfigm("EN:?5")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(?5)
-endfigm
-%---------
-ext_clear;
-%---------
-beginfigm("EN:?6")
-  fsize:=(12mm,15mm);
-  MCat(0.5,1)(?6)
-endfigm
-defaultsize:=save_defaultsize;
-%***************************************************************************
-beginfigm("t:EN","v:Luciferin")
-  fsize:=(50mm,15mm);
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***************************************************************************
-beginfigm("EN:Colchicine","MW:385.41",
-  %---------------------------------------
-  ": <30,Ph,{1,2,6}:/O!,{-4,-5}=?7,   ",
-  ": {-1,-4,-6}=dl,-2://O,-3:/O!,     ",
-  ": @9,\,NH,!,//O,!                  ")
-  %---------------------------------------
-  fsize:=(50mm,20mm);
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***************************************************************************
-beginfigm("EN:Paclitaxel","MW:853.91",
-  %------------------------------------------------------
-  ": ?6,5=dl, at 3,#1,36,45,45,45,45,##,                   ",
-  ": &($5),-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||,             ",
-  ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,               ",
-  ": 9:*/_^60,10://O,                                   ",
-  ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,  ",
-  ": @7,\*,O,-45,//O,60,Ph, at 11,*\,O,-60,//O,60,         ",
-  ": @12,\*^-15,O,60,//O,-60                            ")
-  %------------------------------------------------------
-  fsize:=(50mm,25mm);
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***************************************************************************
-beginfigm("EN:Maltose","MW:342.3",
-  %------------------------------------------------------
-  ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,  ",
-  ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH,##,      ",
-  ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0,              ",
-  ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,",
-  ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH          ")
-  %------------------------------------------------------
-  fsize:=(50mm,20mm);
-  if mc_check(mc)=0: MC(scantokens(mc)) fi
-endfigm
-%***********************************************************************
-beginfigm("EN:Cellobiose","MW:342.3",
-  %------------------------------------------------------
-  ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,  ",
-  ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH,##,      ",
-  ": @4,$0~arc_ltr,O,$0~arc_lbr,                       ",
-  ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,",
-  ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH          ")
-  %------------------------------------------------------
-  fsize:=(50mm,20mm);
-  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	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,19 +1,37 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%  Molecular Coding Format manual                by  Akira Yamaji 2022.11.12
+%  Molecular Coding Format manual                by  Akira Yamaji 2023.01.09
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ** mcf2graph.mf must be version 4.91
+% ** use mcf_library.mcf
+% ** typeset by LuaLaTeX(luamplib)
+%----------------------------------------------------------------------------
 \documentclass[a4paper]{article}
-%%%\usepackage{graphicx}
-%%%\usepackage{hyperref}
-\usepackage[pdftex]{graphicx}
-\usepackage[pdftex]{hyperref}
-%%%\usepackage[dvipdfmx]{graphicx}
-%%%\usepackage[dvipdfmx]{hyperref}
+\usepackage{textcomp,verbatim}%
+\usepackage[luatex]{graphicx}
+\usepackage[luatex]{hyperref}
 \usepackage{makeidx}
+\usepackage{luamplib}
+\mplibnumbersystem{double}
 \makeindex
 \hypersetup{colorlinks=true,linkcolor=blue}
-\usepackage{mcf_setup}
-\edef\MCFjobname{mcf_man_soc}%
 %----------------------------------------------------------------------------
+\mplibcodeinherit{enable}%
+\mplibverbatim{enable}%
+\mpliblegacybehavior{disabled}%
+\everymplib{%
+  if unknown Ph1: input mcf2graph; fi
+  sw_output:=Fig+Calc;
+  tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW";
+  outputformat:="eps";
+  fsize:=(60mm,35mm);
+  blength:=0mm;
+  max_blength:=10mm;
+  ratio_thickness_bond:=0.015;
+  ratio_atom_bond:=0.36;
+  sw_frame:=Outside;
+  fmargin:=(2mm,1mm);
+}%
+%----------------------------------------------------------------------------
 \edef\fext{mps}%
 \topmargin=-18mm
 \textheight=254mm
@@ -23,33 +41,6 @@
 %%%%\evensidemargin=-7mm
 \unitlength=1mm%
 %----------------------------------------------------------------------------
-\newcount \fnum%
-\newdimen \htman%
-\newdimen \wdman%
-\newdimen \htmans%
-\newbox \fbox%
-%----------------------------------------------------------------------------
-\htman=45mm%
-\wdman=94mm%
-\htmans=42mm%
-\fnum=1%
-%----------------------------------------------------------------------------
-\makeatletter
-%----------------------------------------------------------------------------
-\def\MCFgraph{%
-\edef\file at name{\MCFjobname-\z at num\fnum.\fext}%
-\includegraphics{\file at name}%
-\global\advance\fnum\@ne\relax%
-}%
-%----------------------------------------------------------------------------
-\def\put at char{%
-  \begin{picture}(75,100)%
-     \put(0,95){\bf [\NO]\EN}%
-     \put(5,90){\small\tt FM:\fm{ }MW:\mw}%
-     \put(5,0){\MCFgraph}%
-  \end{picture}%
-}%
-%----------------------------------------------------------------------------
 \begin{document}
 \title{\Huge\sf Molecular Coding Format manual}
 \author{Akira Yamaji}
@@ -60,13 +51,123 @@
 %-----------------------------------------------------------------------------
 \thispagestyle{empty}
 \vspace{5mm}%
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph\\
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph
+\quad
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:Glycine",":<30,NH2,!2,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Alanine",":<30,NH2,!~wb,/_,!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Valine",":<30,NH2,!~wb,/?!,!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Leucine",":<30,NH2,!~wb,/'(!,?!),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+\\
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:L-Isoleucine",":<30,NH2,!~wb,/'(/*_,!2),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Serine",":<30,NH2,!~wb,/!OH,!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Threonine",":<30,NH2,!~wb,/'(/_,!~wf,OH),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Cysteine",":<30,NH2,!~wb,/!SH,!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+\\
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:L-Methionine",":<30,NH2,!~wb,/'(!2,S,!),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Phenylalanine",":<30,NH2,!~wb,/!Ph,!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Tyrosine",":<30,NH2,!~wb,/'(!Ph,-3:/OH),!,COOH")
+  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 mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+\\
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:L-Prorine",":<18,?5,3:NH,4:*/COOH")
+  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 mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Asparagine",":<30,NH2,!~wb,/'(!,//O,!,NH2),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Aspartic acid",":<30,NH2,!~wb,/!COOH,!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+\\
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:L-Glutamic acid",":<30,NH2,!~wb,/'(!2,COOH),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Lysine",":<30,NH2,!~wb,/'(!4,NH2),!,COOH")
+  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 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 mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+\\
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:L-DOPA",":<30,NH2,!~wb,!,COOH, at 2,\,!,Ph,{-3,-4}:/OH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:Ornithine",":<30,NH2,!~wb,/'(!3,NH2),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:Citrulline",":<30,NH2,!~wb,/'(!3,NH,!,//O,!,NH2),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:GABA",":<30,NH2,!4,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+\\
+\begin{mplibcode}
+fsize:=(40mm,25mm); blength:=6mm; sw_frame:=0;
+beginfigm("EN:amino Levulinic acid",":<30,NH2,!2,//O,!3,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:4-amino benzoic acid",":<30,Ph,1:/NH2,4:/COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Carboxyl glutamic acid",
+  ":<30,NH2,!~wb,/'(!,/COOH,!,COOH),!,COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:L-Hydroxy Prorine",":<18,?5,1:/OH,3:NH,4:*/COOH")
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \twocolumn
 \thispagestyle{empty}
@@ -95,9 +196,29 @@
 
 <10,-30,45,-45,60,$300,$0
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Chain 1")
+  fsize:=(60mm,17mm);
+  sw_numbering:=Bond;
+  numbering_end:=6;
+  ratio_chain_ring:=1;
+%----------------------------------------------------------------------
+  MC(<15,-30,45,-45,60,$300,$0,
+       {1^$15,2^$345,3^$30,4^$345}:/_~dt,{5,6}=vf,
+     )
+  add(
+    defaultscale:=0.5;
+    labeloffset:=2bp;
+    drawarrow B7/*.7{B7right}..{B1right}B1/*.7;   label.ulft("-30",B7/*.7);
+    drawarrow B8/*.7{B8left}..{B2left}B2/*.7;     label.llft("45",B8/*.7);
+    drawarrow B9/*.7{B9right}..{B3right}B3/*.7;   label.ulft("-45",B9/*.7);
+    drawarrow B10/*.7{B10left}..{B4left}B4/*.7;   label.llft("60",B10/*.7);
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
-\subsubsection{Chain use !,!n}
+\subsubsection{Chain with !,!n}
 \index{"!}%
 \begin{verbatim}
 !  : take value 60 or -60 depend on
@@ -106,7 +227,29 @@
 
 <-30,!6
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Chain 2")
+  fsize:=(60mm,17mm);
+  sw_numbering:=Bond;
+  numbering_end:=6;
+  ratio_chain_ring:=1;
+%----------------------------------------------------------------------
+  MC(<-30,!6,
+       {1^-120,2^60,3^-60,4^60,5^-60,6^60}:/_~dt
+     )
+  add(
+    defaultscale:=0.5;
+    labeloffset:=2bp;
+    drawarrow B7/*.7{B7right}..{B1right}B1/*.7;   label.ulft("-60",B7/*.7);
+    drawarrow B8/*.7{B8left}..{B2left}B2/*.7;     label.llft("60",B8/*.7);
+    drawarrow B9/*.7{B7right}..{B3right}B3/*.7;   label.ulft("-60",B9/*.7);
+    drawarrow B10/*.7{B10left}..{B4left}B4/*.7;   label.llft("60",B10/*.7);
+    drawarrow B11/*.7{B11right}..{B5right}B5/*.7; label.ulft("-60",B11/*.7);
+    drawarrow B12/*.7{B12left}..{B6left}B6/*.7;   label.llft("60",B12/*.7);
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Jump to atom}
 \index{"@}%
@@ -116,8 +259,18 @@
 
 <-30,!6, at 3,0,!, at 5,-30
 \end{verbatim}
-\MCFgraph
-%------------------------------------
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Jump and Branch")
+  fsize:=(60mm,16mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=1;
+  sw_numbering:=Atom;
+  ratio_chain_ring:=1;
+  MC(<-30,!6, at 3,0,!, at 5,-30)
+endfigm
+\end{mplibcode}
+%-----------------------------------------------------------------------------
 \subsubsection{Branch bond}
 \index{\textbackslash}%
 \begin{verbatim}
@@ -125,7 +278,17 @@
 
 <-30,!6, at 3,\,!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Jump and Branch")
+  fsize:=(60mm,16mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Atom;
+  sw_trimming:=1;
+  ratio_chain_ring:=1;
+  MC(<-30,!6, at 3,\,!)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Branch modified bond}
 \index{*\textbackslash}%
@@ -142,7 +305,18 @@
 <30,!8,
 @2,\,!, at 4,*\,!, at 6,\*,!, at 8,\\,!, at 10,*\*,!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:branch1")
+  fsize:=(60mm,16mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Atom;
+  sw_trimming:=1;
+  numbering_end:=10;
+  ratio_chain_ring:=1;
+  MC(<30,!10, at 2,\,!, at 4,*\,!, at 6,\*,!, at 8,\\,!, at 10,*\*,!)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \index{\textasciicircum}% ^
 \index{\textasciitilde}% ~
@@ -153,7 +327,19 @@
 \`1.5,-90 : 0`1.5,-90
 \^15,-60  : 0^15,-60
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:branch2")
+  fsize:=(60mm,20mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=1;
+  sw_numbering:=Atom;
+  numbering_end:=7;
+  ratio_chain_ring:=1;
+  %-------------------------
+  MC(<30,!6, at 2,\~dr,!, at 4,\`1.5,-90, at 6,15,-60)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Connect atom}
 \index{\&}%
@@ -162,7 +348,18 @@
 
 <-30,!6, at 3,\,!3,&6~bd, at 9,&4~bz
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Connect atom")
+  fsize:=(60mm,20mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=1;
+  sw_numbering:=Atom;
+  ratio_chain_ring:=1;
+  %----------------------------------
+  MC(<-30,!6, at 3,\,!3,&6~bd, at 9,&4~bz)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Ring}
 \index{?}%
@@ -171,7 +368,17 @@
 ?6 : <-120,60,60,60,60,60,&1
 ?6
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ring")
+  fsize:=(60mm,20mm);
+  sw_trimming:=1;
+  fmargin:=(2mm,3mm);
+  sw_numbering:=Bond;
+  %---------------------------
+  MC(?6)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Rotate current angle}
 \index{\textgreater}%
@@ -180,7 +387,25 @@
 
 0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0 
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:rotate 1")
+  fsize:=(60mm,20mm);
+  fmargin:=(2mm,3mm);
+  sw_trimming:=1;
+  sw_numbering:=Bond;
+  ratio_chain_ring:=1;
+  numbering_end:=7;
+    defaultscale:=0.5;
+    labeloffset:=2bp;
+  MC(#1,0,0,<90,0,<-90,0,<$315,0,<$90,0,<$0,0,{1:7}=vf,
+      {3,4^180}:/_~dt)
+  add(
+    drawarrow B8/*.7{B8left}..{B3left}B3/*.7;   label.urt("90",B8/*.7);
+    drawarrow B9/*.7{B9right}..{B4right}B4/*.7; label.urt("-90",B9/*.7);
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Change bond type}
 \subsubsection{Double,triple,wedge,vector}
@@ -206,7 +431,24 @@
 <-30,!~dm,!,!~dl,!,!~dr,!~db,!~db,!,!~tm
 <-30,!~dm,!,!~dl,!,!~dr,!!  ,!!  ,!,!!!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change bond 1")
+  fsize:=(70mm,10mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=0;
+  ratio_chain_ring:=1;
+  MC(<-30,!~dm,!,!~dl,!,!~dr,!~db,!~db,!,!~tm)
+  add(defaultscale:=0.6; labeloffset:=0;
+      label.rt("(dm)",A1+(0,-0.7l));
+      label.rt("(dl)",A3+(0,-0.7l));
+      label.rt("(dr)",A5+(0,-0.7l));
+      label.rt("(db)",A6+(0,-0.2l));
+      label.rt("(db)",A7+(0,-0.7l));
+      label.rt("(tm)",A9+(0,-0.7l));
+  )
+endfigm
+\end{mplibcode}
 \vspace{-3mm}%
 %-----------------------------------------------------------------------------
 %%\subsubsection{Wedge}
@@ -229,7 +471,24 @@
 <-30,
  !~wf,!,!~wb,!,!~zf,!,!~zb,!,!~vf,!~vb
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change bond 2")
+  fsize:=(70mm,10mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=0;
+  ratio_chain_ring:=1;
+  MC(<-30,!~wf,!,!~wb,!,!~zf,!,!~zb,!,!~vf,!,!~vb)
+  add(defaultscale:=0.6; labeloffset:=0;
+      label.rt("(wf)",A1+(0,-0.7l));
+      label.rt("(wb)",A3+(0,-0.7l));
+      label.rt("(zf)",A5+(0,-0.7l));
+      label.rt("(zb)",A7+(0,-0.7l));
+      label.rt("(vf)",A9+(0,-0.7l));
+      label.rt("(vb)",A11+(0,-0.7l));
+  )
+endfigm
+\end{mplibcode}
 \vspace{-3mm}%
 %-----------------------------------------------------------------------------
 %%\subsubsection{Dotted,wave}
@@ -246,7 +505,23 @@
 
 <-30,!7,1=dt,3=wv,5=bd,7=bz
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change bond 3")
+  fsize:=(70mm,10mm);
+  fmargin:=(2mm,2mm);
+  blength:=9mm;
+  sw_trimming:=1;
+  ratio_chain_ring:=1;
+  MC(<-30,!7,1=dt,3=wv,5=bd,7=bz)
+  add(defaultscale:=0.6; labeloffset:=0;
+      label.rt("(dt)",A1+(0,-0.6l));
+      label.rt("(wv)",A3+(0,-0.6l));
+      label.rt("(bd)",A5+(0,-0.6l));
+      label.rt("(bz)",A7+(0,-0.6l));
+  )
+endfigm
+\end{mplibcode}
 \vspace{-3mm}%
 %-----------------------------------------------------------------------------
 \subsubsection{Over line}
@@ -274,7 +549,17 @@
 {2~si_,4~wf_,6~wb_,8~zf_,10~zb_,
   12~bd_,14~dl_,16~dr_,18~dm_}:/_`2
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:over line")
+  sw_trimming:=1;
+  fsize:=(75mm,20mm);
+  ratio_chain_ring:=1;
+  MC(<30,!18,$90`1.5,90`15.5,
+     {2~si_,4~wf_,6~wb_,8~zf_,10~zb_,
+      12~bd_,14~dl_,16~dr_,18~dm_}:/_`2)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Steric ring}
 \index{wf\_r}%
@@ -289,7 +574,21 @@
  120,O,30,&1,##,#.5,6^$90:/!OH,
  {1^$-90,2^$90,3^$-90,4^$90}:/OH,
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Steric ring")
+  fsize:=(75mm,16mm);
+  MCat(0.05,0.5)(#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,
+     #.5,{1^$-90,2^$90,3^$-90,4^$90}:/OH,6^$90:/!OH)
+  defaultscale:=0.6;
+  MCat(0.5,0.7)(0~wf_r)  add(label.lft("wf_r:",A1);)
+  MCat(0.5,0.2)(0~wf)    add(label.lft("wf:",A1);)
+  MCat(0.75,0.7)(0~bd_r) add(label.lft("bd_r:",A1);)
+  MCat(0.75,0.2)(0~bd)   add(label.lft("bd:",A1);)
+  MCat(1,0.7)(0~wb_r)    add(label.lft("wb_r:",A1);)
+  MCat(1,0.2)(0~wb)      add(label.lft("wb:",A1);)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Change multiple bond type}
 \index{vf}%
@@ -298,7 +597,15 @@
 
 <30,!7,{2,4,6,8'}=dl
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change multi bond")
+  fsize:=(60mm,8mm);
+  fmargin:=(2mm,3mm);
+  ratio_chain_ring:=1;
+  MC(<30,!9,{2,4,6,8'}=dl)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Change bond length}
 \subsubsection{Chain length}
@@ -308,7 +615,14 @@
 
 <-30,!2,!4`1.2,!2
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change bond length1")
+  fsize:=(55mm,8mm);
+  sw_numbering:=Bond;
+  MC(<-30,!2,!4`1.2,!2)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \index{\#}%
 \index{\#\#}%
@@ -318,7 +632,14 @@
 
 <-30,!2,#1.2,!4,##,!2
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change bond length2")
+  fsize:=(55mm,8mm);
+  sw_numbering:=Bond;
+  MC(<-30,!2,#1.2,!4,##,!2)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Ring length}
 \begin{verbatim}
@@ -326,7 +647,16 @@
 
 ?6, at 4,\,?6`1.2
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change ring length")
+  fsize:=(60mm,16mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=1;
+  sw_numbering:=Bond;
+  MC(?6, at 4,\,?6`1.2)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Change atom}
 \subsubsection{Insert atom}
@@ -335,7 +665,14 @@
 
 <-30,!2,O,!2,N,!2
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Insert atom")
+  sw_trimming:=1;
+  fsize:=(50mm,7mm);
+  MC(<-30,!2,O,!2,N,!2)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Addressed atom}
 \index{:}%
@@ -345,7 +682,16 @@
 
 <30,!4,2:O,{3,4}:N
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change atom",":<30,!5,2:O,{3,4}:N")
+  fsize:=(70mm,10mm);
+  msize:=(0.48,1);
+  MCat(0,0.5)(scantokens(mc))
+  sw_numbering:=Atom;
+  MCat(1,0.5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Brock address}
 \index{\textbar}% |
@@ -354,7 +700,17 @@
 
 ?6, at 4,\,|,?6,2:O
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change atom brock address 1",":?6, at 4,\,|,?6,2:O")
+  fsize:=(70mm,14mm);
+  fmargin:=(3mm,1.5mm);
+  MCat(0,.5)(scantokens(mc))
+  sw_numbering:=Atom;
+  msize:=(1,.88);
+  MCat(1,.5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Reset brock address}
 \index{\textbar\textbar}% ||
@@ -363,7 +719,17 @@
 
 ?6, at 4,\,|,?6,||,2:N
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change atom brock address 2",":?6, at 4,\,|,?6,||,2:N")
+  fsize:=(70mm,14mm);
+  fmargin:=(3mm,1.5mm);
+  MCat(0,.5)(scantokens(mc))
+  sw_numbering:=Atom;
+  msize:=(1,.88);
+  MCat(1,.5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Absolute address}
 \index{\$}% $
@@ -372,7 +738,17 @@
 
 ?6, at 4,\,|,?6,$2:N
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change atom absolute address",":?6, at 4,\,?6,$2:N")
+  fsize:=(70mm,14mm);
+  fmargin:=(3mm,1.5mm);
+  MCat(0,.5)(scantokens(mc))
+  sw_numbering:=Atom;
+  msize:=(1,.88); 
+  MCat(1,.5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Relative address}
 \begin{verbatim}
@@ -380,7 +756,17 @@
 
 ?6, at 4,\,?6,-2:N
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change atom relative adress",":?6, at 4,\,?6,-2:N")
+  fsize:=(70mm,14mm);
+  fmargin:=(3mm,1.5mm);
+  MCat(0,.5)(scantokens(mc))
+  sw_numbering:=Atom;
+  msize:=(1,.88);
+  MCat(1,.5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Charged atom}
 \begin{verbatim}
@@ -389,7 +775,14 @@
 <-30,!2,N,??,p_,!2,S,n_^180,
 !6,7:N,7:??,9:S,7:n_,9:n_^180
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Charged atom")
+  sw_trimming:=1;
+  fsize:=(60mm,12mm);
+  MC(<-30,!2,N,??,p_,!2,S,n_^180,!6,7:N,7:??,9:S,7:p_,9:n_^180)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \newpage
 %-----------------------------------------------------------------------------
@@ -403,7 +796,16 @@
 
 ?6,3=?6
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fused ring")
+  fsize:=(60mm,18mm);
+  fmargin:=(2mm,1.5mm);
+  sw_trimming:=1;
+  sw_numbering:=Bond;
+  MC(<30,?6,3=?6,3=dt,{7:11}=bd_r)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \begin{verbatim}
 ** fused ring size depend on 
@@ -411,7 +813,17 @@
 
 ?6, at 4,\,?6`1.2,5=?6,11=?6
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change ring length")
+  fsize:=(60mm,25mm);
+  fmargin:=(2mm,2mm);
+  sw_trimming:=1;
+  sw_numbering:=Bond;
+  MC(?6, at 4,\,?6`1.2,5=?6,11=?6,
+      {14:23}=bd_r,{5,11}=dt)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \begin{verbatim}
 ?6,3=?6[13] : fuse ?6[13] at B3
@@ -420,15 +832,33 @@
 
 ?6,3=?6[13]
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fused large 6 ring")
+  fsize:=(60mm,18mm);
+  fmargin:=(2mm,1.5mm);
+  margin_top_bottom:=1.5mm;
+  sw_numbering:=Bond;
+  sw_trimming:=1;
+  MC(<30,?6,3=?6[13],3=dt,{7:11}=bd_r)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \begin{verbatim}
 ?6,{-3,-4,-4,-2,-2,-4,-4}=?6
 ?6,{4,8,13,20,25,28,33}=?6
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fuse multi ring")
+  fsize:=(70mm,20mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Bond;
+  sw_trimming:=1;
+  MC(<30,?6,{-3,-4,-4,-2,-2,-4,-4}=?6,{4,8,13,20,25,28,33}=dt)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
-%%%\subsubsection{Attached 2 bond}
 \index{--}%
 \begin{verbatim}
 (Attached 2 bond)
@@ -441,12 +871,25 @@
 2:<30,?6,3=?6,11--4=?5
 3:<30,?6,3=?6,11--4=?4
 \end{verbatim}
-\MCFgraph
-\vspace{-3mm}%
-\begin{verbatim}
-\end{verbatim}
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fused ring 2")
+  fsize:=(75mm,20mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Bond;
+  msize:=(1,.9);
+  MCat( 0,.5)(<30,?6,{3,11--4}=?6,{11,4}=dt,{12:15}=bd_r)
+  add(defaultscale:=0.4; label("(1)",p0);)
+  msize:=(1,.9);
+  MCat(.5,.5)(<30,?6,3=?6,{11--4}=?5,{11,4}=dt,{12:14}=bd_r)
+  add(defaultscale:=0.4; label("(2)",p0);)
+  msize:=(1,.9);
+  MCat( 1,.5)(<30,?6,3=?6,{11--4}=?4,{11,4}=dt,{12,13}=bd_r)
+  add(defaultscale:=0.4; label("(3)",p0);)
+endfigm
+\end{mplibcode}
+%%%%%%%\vspace{-3mm}%
 %-----------------------------------------------------------------------------
-%%%\subsubsection{Attached 3 bond}
 \index{---}%
 \begin{verbatim}
 (Attached 3 bond)
@@ -458,12 +901,20 @@
 2:?6,{3,10}=?6,16---4=?5
 
 \end{verbatim}
-\MCFgraph
-\vspace{-3mm}%
-\begin{verbatim}
-\end{verbatim}
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fused ring 3")
+  fsize:=(60mm,20mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Bond;
+  MCat(0,1)(?6,{3,10}=?6,16---4=?6,{16,4}=dt,{17:19}=bd_r)
+  add(defaultscale:=0.4; label("(1)",p0);)
+  MCat(1,0)(?6,{3,10}=?6,16---4=?5,{16,4}=dt,{17,18}=bd_r)
+  add(defaultscale:=0.4; label("(2)",p0);)
+endfigm
+\end{mplibcode}
+%%%%%%%%\vspace{-3mm}%
 %-----------------------------------------------------------------------------
-%%%%\subsubsection{Attached 4 bond}
 \index{----}%
 \begin{verbatim}
 (Attached 4 bond)
@@ -473,7 +924,15 @@
 <-30,?6,{3,10,15,21----4}=?6
 
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fused ring 4")
+  fsize:=(60mm,20mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Bond;
+  MC(<-30,?6,{3,10,15}=?6,21----4=?6,{21,4}=dt,{22,23}=bd_r)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Spiro ring}
 \begin{verbatim}
@@ -481,7 +940,16 @@
 
 <30,!6, at 4,?5
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Spiro ring ")
+  fsize:=(40mm,15mm);
+  sw_numbering:=Atom;
+  numbering_end:=7;
+  ratio_chain_ring:=1;
+  MC(<30,!6, at 4,?5)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Group}
 \subsubsection{Insert group}
@@ -490,14 +958,23 @@
 \begin{verbatim}
 / : group start single bond
 
-/_   : methyl      /!   : ethyl
-/!2  : propyl      /?!  : isopropyl
-/??! : tert-butyl  /Ph  : phenyl
+/_   : methyl
+/!   : ethyl
+/!2  : propyl
+/?!  : isopropyl
+/??! : tert-butyl
+/Ph  : phenyl
 
 <30,!,/_,!2,/!,!2,/!2,!4,/?!,
  !4,/??!,!2,/Ph^-60,!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:group 1")
+  fsize:=(75mm,18mm);
+  MC(<30,!,/_,!2,/!,!2,/!,!4,/?!,!4,/??!,!2,/'(Ph`0.8)^-60,!)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Insert modified group}
 \index{//}%
@@ -514,7 +991,20 @@
 
 <30,!,//O,!2,*/H,!2,/*H,!2,*/*H,!2,**?3,!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:group 2")
+  fsize:=(70mm,14mm);
+  MC(<30,!`1,//O,!2`1,*/H,!2`1,/*H,!2`1,*/*H,!2`1,**?3,!`1)
+  add(defaultscale:=0.75;
+      label("//",A2-(0,0.45l));
+      label("*/",A4-(0,0.45l));
+      label("/*",A6-(0,0.45l));
+      label("*/*",A8-(0,0.45l));
+      label("**",A10-(0,0.45l));
+     )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \index{\textasciicircum}% ^
 \index{\textasciitilde}% ~
@@ -529,7 +1019,14 @@
 <-30,``1,!,
   /_`2^30,!2,/!2>lr,!2,/!2>rl,!)
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:group 3")
+  fsize:=(60mm,16mm);
+  sw_trimming:=1;
+  MC(<-30,#1,!2,/_`2^30,!2,/!2>lr,!2,/!2>rl,!)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Add group}
 \begin{verbatim}
@@ -537,7 +1034,17 @@
  8:/tBu,10:/'(Ph`0.6)^-15,
  {11,12,13'}:*/_,{15,16,17'}:/*_
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:group 3")
+  fsize:=(75mm,25mm);
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Atom;
+  numbering_end:=17;
+  MC(<30,!17,2:/_,3:/!,4:/!2,7:/iPr,8:/tBu,10:/'(Ph`0.6)^-15,
+     {11,12,13'}:*/_,{15,16,17'}:/*_)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Add modified group}
 \begin{verbatim}
@@ -545,7 +1052,16 @@
 
 <30,!6,{2~wf,4~zf,6^-30,8^$120}:/_
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:group 4")
+  fsize:=(60mm,18mm);
+  sw_trimming:=1;
+  fmargin:=(2mm,2mm);
+  sw_numbering:=Atom; numbering_end:=9;
+  MC(<30,!8`1,{2~wf,4~zf,6^-30,8^$120}:/_)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \begin{verbatim}
 
@@ -553,7 +1069,16 @@
 
 <-30,!7`1,3:/_`2^30,5:/!2>lr,7:/!2>rl
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:group 5")
+  fsize:=(60mm,16mm);
+  sw_trimming:=1;
+  sw_numbering:=Atom;
+  numbering_end:=8;
+  MC(<-30,!7`1,3:/_`2^30,5:/!2>lr,7:/!2>rl)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \newpage
 %-----------------------------------------------------------------------------
@@ -570,7 +1095,25 @@
 {3^-90,3^-30,3^90}:/!3>hz,
 {1^-60,1,1^60}:/!3>vt
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:chain strech direction mode 1")
+  fsize:=(50mm,25mm);
+  sw_trimming:=1;
+  ratio_chain_ring:=1;
+  MC(?4,{3^-90,3^-30,3^90}:/!3>hz,
+        {1^-60,1,1^60}:/!3>vt
+  )
+  add(defaultscale:=0.5; labeloffset:=2bp;
+      label.rt(">hz",A8);
+      label.top(">hz",A12);
+      label.top(">hz",A16);
+      label.rt(">vt",A20);
+      label.top(">vt",A24);
+      label.rt(">vt",A28);
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Left-right,right-left}
 \index{lr}%
@@ -583,7 +1126,14 @@
 {3^-30,3,3^30}:/!3>lr,
 {5^-30,5,5^30}:/!3>rl
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Left-right_right-left")
+  fsize:=(40mm,20mm);
+  sw_trimming:=1;
+  MC(<30,!4,2:/!6>30,4:/!4>-45)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Fixed rotate angle}
 \index{\textgreater}%
@@ -595,7 +1145,14 @@
 4:/!4>-45  % 4:\,-45,-45,-45,-45
 
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Fixed rotate angle")
+  fsize:=(40mm,20mm);
+  sw_trimming:=1;
+  MC(<30,!4,2:/!6>30,4:/!4>-45)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Multiple rotate angle}
 \begin{verbatim}
@@ -603,7 +1160,14 @@
 
 <30,!6,6>'(90,-90,90,-90,90):/!5
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Multiple rotate angle")
+  fsize:=(60mm,20mm);
+  sw_trimming:=1;
+  MC(<30,!6,6>'(90,-90,90,-90,90):/!5)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \newpage
 \subsection{Miscellaneous}
@@ -620,7 +1184,15 @@
 
 <-30,!2,NH,!2,N!,!2,N!2,SO,!2,SOO,!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:change atom and group")
+  fsize:=(60mm,12mm);
+  sw_trimming:=1;
+  MC(<-30,!2,NH,!2,N!,!2,N!2,!2,SO,!2,SOO,!)
+endfigm
+\end{mplibcode}
+%-----------------------------------------------------------------------------
 \index{?"!}%
 \index{??}%
 \index{??"!}%
@@ -632,7 +1204,14 @@
 
 <30,!9`1,?!,!,??,!,2:??,4:/??,6:/??!,8:/N?!
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:methyl*2,isopropyl,tert-butyl")
+  fsize:=(60mm,12mm);
+  sw_trimming:=1;
+  MC(<30,!9`1,?!,!,??,!,2:??,4:/?!,6:/??!,8:/N?!)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Parts definition}
 \begin{verbatim}
@@ -641,13 +1220,29 @@
 iBuOH:='(!,/_,!,OH);
 MC(<30,?6,{4,6}:/iBuOH)
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:User definition")
+  fsize:=(60mm,13mm);
+  sw_trimming:=1;
+  iBuOH:='(!,/_,!,OH);
+  MC(<30,?6,{4,6}:/iBuOH)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Parts inline definition}
 \begin{verbatim}
 <30,!8,{2,6}:/'(!,/_,!,OH)
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Inline definition")
+  fsize:=(60mm,13mm);
+  fmargin:=(2mm,1mm);
+  sw_trimming:=1;
+  MC(<30,!8,{2,6}:/'(!,/_,!,OH))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Move position}
 \index{"@()}%
@@ -658,7 +1253,23 @@
 
 <30,?6, at 3,!4,//O,!,O,n_^60,@$(6,1),H,p_^15
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Move position")
+  fsize:=(70mm,16mm);
+  fmargin:=(2mm,1mm);
+  sw_trimming:=1;
+  MC(<30,?6, at 3,\,!3,//O,!,O,n_^60,@$(6,1),H,p_^15)
+  add(drawdot A1 withpen pencircle scaled 2bp;
+      pickup pencircle scaled 0.1bp;
+      for i=0 upto 6:
+        draw (A1+(l*i,l-3bp))--(l*i,l+3bp);
+      endfor
+      draw A1--(A1+(0,1l))--A1+(6l,1l);
+      draw (A1+(0,1l))--(A1+(-3bp,1l));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Serial number}
 \index{\-\-}%
@@ -666,9 +1277,17 @@
 6:10 : 6,7,8,9,10
 <30,!14,{2,6:10,14}:/_~bd_r`0.5
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Serial number")
+  fsize:=(75mm,14mm);
+  max_blength:=8mm;
+  sw_numbering:=Atom; numbering_end:=15;
+  MC(<30,!14,{2,6:10,14}:/_~bd_r`0.5)
+endfigm
+\end{mplibcode}
+%-----------------------------------------------------------------------------
 \newpage
-%-----------------------------------------------------------------------------
 \subsubsection{Change color}
 \index{red}%
 \index{blue}%
@@ -685,7 +1304,17 @@
   )
 endfigm
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Change color")
+  fsize:=(50mm,20mm);
+  max_blength:=8mm;
+  MC(
+    <30,Ph,{2,5}:N,3:/NH2,4:/COOH,
+    2:red,5:blue,3=green
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Change font}
 \index{atomfont}%
@@ -697,7 +1326,15 @@
   MC(<30,Ph,{2,5}:N,3:/NH2,4:/COOH)
 endfigm
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Change font")
+  fsize:=(50mm,20mm);
+  max_blength:=8mm;
+  atomfont:="cmr8";
+  MC(<30,Ph,{2,5}:N,3:/NH2,4:/COOH)
+endfigm
+\end{mplibcode}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Option parameter}
 %------------------------------------------------------------------------------
@@ -710,7 +1347,19 @@
 mangle:=30;
 MCat(0.8,0.5)(Ph)
 \end{verbatim}
-\MCFgraph
+%-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:mangle")
+  fsize:=(50mm,15mm);
+  blength:=6mm;
+  mangle:=0;
+  MCat(0.2,0.5)(Ph)
+  add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);)
+  mangle:=30;
+  MCat(0.8,0.5)(Ph)
+  add(drawarrow((A1 shifted (aw,0)) rotated A1ang..A1);)
+endfigm
+\end{mplibcode}
 %------------------------------------------------------------------------------
 \subsection{Size/Ratio parameter}
 %-----------------------------------------------------------------------------
@@ -720,14 +1369,41 @@
 (fit to figure size)
 blength=0   ** default
 \end{verbatim}
-\MCFgraph
 %-----------------------------------------
+\begin{mplibcode}
+beginfigm("EN:blength=0")
+  sw_frame:=Bothside;
+  fsize:=(40mm,15mm);
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
+%-----------------------------------------
 \begin{verbatim}
 (ratio bond/figure width)
 blength=0.1  ** (0<blength<=1)
 blength=60mm(width)*0.1=6mm
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:0<blength=<1")
+  sw_frame:=Bothside;
+  fsize:=(40mm,15mm);
+  blength:=0.1;
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------
 \begin{verbatim}
 (bond length)
@@ -734,7 +1410,21 @@
 blength=9mm
 ** (blength>1) ignore msize(w,h)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:blength>1")
+  sw_frame:=Bothside;
+  fsize:=(40mm,15mm);
+  blength:=8mm;
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %------------------------------------------------------------------------------
 \subsubsection{Molecular size}
 \index{msize}%
@@ -741,18 +1431,60 @@
 \begin{verbatim}
 msize=(1,1)  ** default
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:msize=(1)")
+  sw_frame:=Bothside+Mol;
+  fsize:=(40mm,15mm);
+  msize:=(1,1);
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------
 \begin{verbatim}
 msize=(0.25,1)
 msize=40mm-4mm*0.25=9mm
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:msize=(0.25,1)")
+  sw_frame:=Bothside+Mol;
+  fsize:=(40mm,15mm);
+  msize:=(0.25,1);
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------
 \begin{verbatim}
 msize=(11mm,11mm)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:msize=(11mm,11mm)")
+  sw_frame:=Bothside+Mol;
+  fsize:=(40mm,15mm);
+  msize:=(11mm,11mm);
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %------------------------------------------------------------------------------
 \subsubsection{Molecular position}
 \index{mposition}%
@@ -759,17 +1491,51 @@
 \begin{verbatim}
 mposition=(0.5,0.5) ** default
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:mposition")
+  sw_frame:=Bothside+Mol;
+  fsize:=(40mm,15mm);
+  msize:=(1,0.8);
+  mposition:=(0.5,0.5);
+  MC(<30,Ph)
+endfigm
+\end{mplibcode}
 %--------------------------------------------------------------
 \begin{verbatim}
 mposition=(1,0)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:mposition")
+  sw_frame:=Bothside+Mol;
+  fsize:=(40mm,15mm);
+  msize:=(1,0.8);
+  mposition:=(1,0);
+  MC(<30,Ph)
+endfigm
+\end{mplibcode}
 %--------------------------------------------------------------
 \begin{verbatim}
 mposition=(10mm,4mm)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:mposition")
+  sw_frame:=sw_frame+Mol;
+  fsize:=(40mm,15mm);
+  msize:=(1,0.8);
+  mposition:=(10mm,4mm);
+  MC(<30,Ph)
+  ext(drawdot p1 withpen pencircle scaled 3pt;
+      pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %------------------------------------------------------------------------------
 \subsection{Size parameter}
 %-----------------------------------------------------------------------------
@@ -781,7 +1547,20 @@
 
 fsize=(40mm,15mm)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Figure size")
+  fsize:=(40mm,12mm);
+  sw_frame:=Outside;
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Figure margin}
 \index{fmargin}%
@@ -791,7 +1570,22 @@
 
 fmargin=(10mm,2mm)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:fmargin")
+  fsize:=(40mm,12mm);
+  sw_frame:=Bothside+Mol;
+  fmargin:=(10mm,1mm);
+  MC(<30,Ph)
+  ext(pickup pencircle scaled 0.2pt; 
+      for i=0 upto w/mm: draw (i*mm,0)--(i*mm,-.5mm); endfor
+      for i=0 upto h/mm: draw (0,i*mm)--(-.5mm,i*mm); endfor
+      for i=0 upto w/cm: draw (i*cm,0)--(i*cm,-.8mm); endfor
+      for i=0 upto h/cm: draw (0,i*cm)--(-.8mm,i*cm); endfor
+      drawdot p0 withpen pencircle scaled 3pt;
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Offset thickness of bond}
 \index{offset\_thickness}%
@@ -798,7 +1592,20 @@
 \begin{verbatim}
 default: offset_thickness=0.2pt
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:offset_thickness",":<30,Ph") 
+  fsize:=(60mm,12mm);
+  offset_thickness:=0.0pt; MCat(0.1,0.5)(scantokens(mc))
+  offset_thickness:=0.2pt; MCat(0.55,0.5)(scantokens(mc))
+  offset_thickness:=0.5pt; MCat(1,0.5)(scantokens(mc))
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.0pt",(0,1bp));
+    label.urt("0.2pt",(0.36w,1bp));
+    label.urt("0.5pt",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Offset of double bond gap}
 \index{offset\_bond\_gap}%
@@ -805,7 +1612,20 @@
 \begin{verbatim}
 default: offset_bond_gap=0.3pt
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:offset_bond_gap",":<30,Ph")
+  fsize:=(60mm,12mm);
+  offset_bond_gap:=0.0pt; MCat(0.1, 0.5)(scantokens(mc))
+  offset_bond_gap:=0.3pt; MCat(0.55,0.5)(scantokens(mc))  %<<== default
+  offset_bond_gap:=1.0pt; MCat(1,   0.5)(scantokens(mc))
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.0pt",(0,1bp));
+    label.urt("0.3pt",(0.36w,1bp));
+    label.urt("1.0pt",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Offset of atom width}
 \index{offset\_atom}%
@@ -812,7 +1632,20 @@
 \begin{verbatim}
 default: offset_atom=0.8pt
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:offset_atom")
+  fsize:=(60mm,12mm);
+  offset_atom:=0.0pt; MCat(0.1, .5)(<30,?6,3:O)
+  offset_atom:=0.8pt; MCat(.55, .5)(<30,?6,3:O)   %<<== default
+  offset_atom:=2.0pt; MCat(1,   .5)(<30,?6,3:O)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.0pt",(0,1bp));
+    label.urt("0.8pt",(0.36w,1bp));
+    label.urt("2.0pt",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Offset of wedge width}
 \index{offset\_wedge}%
@@ -819,7 +1652,20 @@
 \begin{verbatim}
 default:  offset_wedge=0.4pt
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:offset_wedge") 
+  fsize:=(60mm,12mm);
+  offset_wedge:=0.0pt; MCat(0.1,0.5)(<30,?6,5:*/_)
+  offset_wedge:=0.4pt; MCat(0.55,0.5)(<30,?6,5:*/_)  %<<== default
+  offset_wedge:=1.0pt; MCat(1, 0.5)(<30,?6,5:*/_)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.0pt",(0,1bp));
+    label.urt("0.4pt",(0.36w,1bp));
+    label.urt("1.0pt",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Max bond length}
 \index{max\_blength}%
@@ -826,7 +1672,21 @@
 \begin{verbatim}
 default:  max_blength=10mm
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:max_blength")
+  fsize:=(60mm,20mm);
+  sw_frame:=sw_frame+Mol;
+  max_blength:=5mm;  MCat(0, .5)(<30,Ph)
+  max_blength:=8mm;  MCat(.4,.5)(<30,Ph)
+  max_blength:=10mm; MCat(1, .5)(<30,Ph)   %<<== default
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label("5mm", (0.1w,0.5h));
+    label("8mm", (0.42w,0.5h));
+    label("10mm",(0.82w,0.5h));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Ratio parameter}
 %-----------------------------------------------------------------------------
@@ -835,7 +1695,20 @@
 \begin{verbatim}
 default:  ratio_thickness_bond=0.015
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_thickness_bond")
+  fsize:=(60mm,12mm);
+  ratio_thickness_bond:=0.005;  MCat(0.1,0.5)(<30,Ph)
+  ratio_thickness_bond:=0.015;  MCat(.55,0.5)(<30,Ph)  %<<== default
+  ratio_thickness_bond:=0.03;   MCat(1, 0.5)(<30,Ph)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.005",(0,1bp));
+    label.urt("0.015",(0.36w,1bp));
+    label.urt("0.030",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Char/bond thickness}
 \index{ratio\_char\_bond}%
@@ -842,7 +1715,20 @@
 \begin{verbatim}
 default:  ratio_char_bond=1.5
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_char_bond")
+  fsize:=(60mm,12mm);
+  ratio_char_bond:=1.0;  MCat(0, .5)(<30,?6,6:O,3:NH)
+  ratio_char_bond:=1.5;  MCat(.5, .5)(<30,?6,6:O,3:NH)   %<<== default
+  ratio_char_bond:=2.0;  MCat( 1, .5)(<30,?6,6:O,3:NH)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("1.0",(0,1bp));
+    label.urt("1.5",(0.36w,1bp));
+    label.urt("2.0",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Bond gap/bond length}
 \index{ratio\_bondgap\_bond}%
@@ -849,7 +1735,20 @@
 \begin{verbatim}
 default:  ratio_bondgap_bond= 0.15
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_bondgap_bond")
+  fsize:=(60mm,12mm);
+  ratio_bondgap_bond:=0.10; MCat(0.1, .5)(<30,Ph)
+  ratio_bondgap_bond:=0.15; MCat(.55, .5)(<30,Ph)    %<<== default
+  ratio_bondgap_bond:=0.20; MCat(1  , .5)(<30,Ph)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.10",(0,1bp));
+    label.urt("0.15",(0.36w,1bp));
+    label.urt("0.20",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Atom/bond length}
 \index{ratio\_atom\_bond}%
@@ -856,7 +1755,20 @@
 \begin{verbatim}
 default:  ratio_atom_bond= 0.36
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_atom_bond")
+  fsize:=(60mm,12mm);
+  ratio_atom_bond:=0.25;  MCat(0.1, .5)(<30,?6,3:O)
+  ratio_atom_bond:=0.33;  MCat(.55, .5)(<30,?6,3:O)   %<<== default
+  ratio_atom_bond:=0.45;  MCat(1, .5)(<30,?6,3:O)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.25",(0,1bp));
+    label.urt("0.33",(0.36w,1bp));
+    label.urt("0.45",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Wedge/bond length}
 \index{ratio\_wedge\_bond}%
@@ -863,7 +1775,20 @@
 \begin{verbatim}
 default:  ratio_wedge_bond=0.12
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_wedge_bond")
+  fsize:=(70mm,12mm);
+  ratio_wedge_bond:=0.1;  MCat(0.05,.5)(?6,4:*/_)
+  ratio_wedge_bond:=0.12; MCat(.55, .5)(?6,4:*/_)   %<<== default
+  ratio_wedge_bond:=0.2;  MCat(1  , .5)(?6,4:*/_)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.10",(0,1bp));
+    label.urt("0.12",(0.36w,1bp));
+    label.urt("0.20",(0.7w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Figure atom gap/atom length}
 \index{ratio\_atomgap\_atom}%
@@ -870,7 +1795,21 @@
 \begin{verbatim}
 default:  ratio_atomgap_atom= 0.050
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_atomgap_atom",":<30,!2`0.5,2:O")
+  fsize:=(70mm,12mm);
+  sw_frame:=sw_frame+Atom;
+  ratio_atomgap_atom:=0.00;  MCat(0, .5)(scantokens(mc))
+  ratio_atomgap_atom:=0.050; MCat(.5,.5)(scantokens(mc))  %<<== default
+  ratio_atomgap_atom:=0.12;  MCat(1, .5)(scantokens(mc))
+  ext(defaultscale:=0.75; labeloffset:=1bp;
+    label.urt("0.00",(0.05w,1bp));
+    label.urt("0.05",(0.45w,1bp));
+    label.urt("0.12",(0.85w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Chain/ring length}
 \index{ratio\_chain\_ring}%
@@ -877,7 +1816,20 @@
 \begin{verbatim}
 default:  ratio_chain_ring= 0.66
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_chain_ring")
+  fsize:=(70mm,12mm);
+  ratio_chain_ring:= 0.4;  MCat(0.05,.5)(<30,?6,4:/!)
+  ratio_chain_ring:= 0.66; MCat(.45, .5)(<30,?6,4:/!)   %<<== default
+  ratio_chain_ring:= 1;    MCat(1,   .5)(<30,?6,4:/!)
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.40",(0,1bp));
+    label.urt("0.66",(0.3w,1bp));
+    label.urt("1.0" ,(0.62w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Hash gap/bond length}
 \index{ratio\_hashgap\_bond}%
@@ -884,7 +1836,20 @@
 \begin{verbatim}
 default:  ratio_hashgap_bond=0.12
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:ratio_hashgap_bond",":<30,!2,2:/*_`1.5")
+  fsize:=(70mm,15mm);
+  ratio_hashgap_bond:=0.06; MCat(0.08,.5)(scantokens(mc))
+  ratio_hashgap_bond:=0.12; MCat( .55,.5)(scantokens(mc)) %<<== default
+  ratio_hashgap_bond:=0.20; MCat(1,   .5)(scantokens(mc))
+  ext(defaultscale:=0.6; labeloffset:=1bp;
+    label.urt("0.06",(0,1bp));
+    label.urt("0.12",(0.4w,1bp));
+    label.urt("0.20",(0.77w,1bp));
+  )
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 %%%%\newpage
 %-----------------------------------------------------------------------------
@@ -904,7 +1869,15 @@
 sw_numbering:=Atom;
 MC(<-30,!9)
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch numbering atom")
+  fsize:=(60mm,10mm);
+  ratio_chain_ring:=1;
+  numbering_start:=3; numbering_end:=8;
+  sw_numbering:=Atom; MC(<-30,!9)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Numbering bond}
 \index{numbering\_start}%
@@ -919,7 +1892,15 @@
 sw_numbering:=Bond;
 MC(<-30,!9)
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch numbering bond")
+  fsize:=(60mm,10mm);
+  ratio_chain_ring:=1;
+  numbering_start:=3; numbering_end:=8;
+  sw_numbering:=Bond; MC(<-30,!9)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Trimming mode}
 \index{sw\_trimming}%
@@ -929,13 +1910,32 @@
 MCat(0.2,0.3)(Ph)
 MCat(0.8,0.7)(Ph)
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch trimming")
+  fsize:=(60mm,20mm);
+  sw_frame:=Bothside+Mol;
+  msize:=(1,.7); MCat(.2,.3)(Ph)
+                 MCat(.8,.7)(Ph)
+endfigm
+\end{mplibcode}
+%------------------------------------------------------
 \begin{verbatim}
 sw_trimming:=1;
 MCat(0.2,0.3)(Ph)
 MCat(0.8,0.7)(Ph)
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch trimming")
+  fsize:=(60mm,20mm);
+  sw_frame:=Bothside+Mol;
+  sw_trimming:=1;
+  msize:=(1,.7);
+  MCat(.2,.3)(Ph)
+  MCat(.8,.7)(Ph)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Expand mode}
 \index{sw\_expand}%
@@ -945,7 +1945,15 @@
 MCat(1, .5)(<30,Ph,4:/COOH,3:/NH2)
 ** default: sw_expand=0
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch Expand",":<30,Ph,4:/COOH,3:/NH2")
+  fsize:=(60mm,20mm);
+  MCat(0, .5)(scantokens(mc))
+  sw_expand:=1;
+  MCat(1, .5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Abbreviate group}
 \index{Group}%
@@ -953,7 +1961,15 @@
 \begin{verbatim}
 ** default: sw_abbreviate=Group
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch abbreviate group",":<30,Ph,4:/Cl,3:/F")
+  fsize:=(60mm,12mm);
+  MCat(.15, .5)(scantokens(mc))
+  sw_abbreviate:=Group;
+  MCat(.85, .5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Abbreviate bond type}
 \index{Bond}%
@@ -961,7 +1977,15 @@
 \begin{verbatim}
 ** default: sw_abbreviate=Bond
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch abbreviate bondtype",":<30,Ph,4:/Cl,3:/F")
+  fsize:=(60mm,12mm);
+  MCat(.15, .5)(scantokens(mc))
+  sw_abbreviate:=Bond;
+  MCat(.85, .5)(scantokens(mc))
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Frame}
 %-----------------------------------------------------------------------------
@@ -976,17 +2000,43 @@
 fmargin:=(5mm,2mm);
 sw_frame=Outside
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch font frame 1")
+  fsize:=(30mm,10mm);
+  fmargin:=(5mm,1.5mm);
+  sw_frame:=Outside;
+  MC(<30,Ph)
+endfigm
+\end{mplibcode}
+%------------------------------------------------------
 \begin{verbatim}
 (Frame inside margin)
 sw_frame=Inside
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch font frame 2")
+  fsize:=(30mm,10mm);
+  fmargin:=(5mm,1.5mm);
+  sw_frame:=Inside;
+  MC(<30,Ph)
+endfigm
+\end{mplibcode}
+%------------------------------------------------------
 \begin{verbatim}
 (Draw both frame)
 sw_frame=Bothside=Inside+Outside
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch font frame 3")
+  fsize:=(30mm,10mm);
+  fmargin:=(5mm,1.5mm);
+  sw_frame:=Bothside;
+  MC(<30,Ph)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Molecular frame}
 \index{Mol}%
@@ -994,7 +2044,16 @@
 sw_frame=Mol
 ** default:sw_frame=0
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch molecular frame")
+  sw_frame:=Outside;
+  fsize:=(40mm,11mm);
+  msize:=(1,1);
+  sw_frame:=sw_frame+Mol;
+  MC(<30,Ph)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Atom frame}
 \index{Atom}%
@@ -1004,7 +2063,14 @@
 
 MC(<30,COOH,!,COOH)
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Switwch atom frame")
+  fsize:=(60mm,10mm);
+  sw_frame:=sw_frame+Atom;
+  MC(<30,COOH,!,COOH)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Parameter setting}
 \subsubsection{Local parameter setting}
@@ -1024,7 +2090,21 @@
   MC(Ph)
 endfigm
 \end{verbatim}
-\MCFgraph\MCFgraph\MCFgraph
+%------------------------------------------------------
+\quad
+\begin{mplibcode}
+fsize:=(15mm,12mm);
+beginfigm("EN:Local setting 1")
+  MC(Ph)
+endfigm
+beginfigm("EN:Local setting 2")
+  ratio_thickness_bond:=0.05;
+  MC(Ph)
+endfigm
+beginfigm("EN:Local setting 3")
+  MC(Ph)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Global parameter setting}
 \begin{verbatim}
@@ -1041,7 +2121,23 @@
   MC(Ph)
 endfigm
 \end{verbatim}
-\MCFgraph\MCFgraph\MCFgraph
+%----------------------------------------------------
+\quad
+\begin{mplibcode}
+save_ratio:=ratio_thickness_bond;
+fsize:=(15mm,12mm);
+beginfigm("EN:Global setting 1")
+  MC(Ph)
+endfigm
+ratio_thickness_bond:=0.05;
+beginfigm("EN:Global setting 2")
+  MC(Ph)
+endfigm
+beginfigm("EN:Global setting 3")
+  MC(Ph)
+endfigm
+ratio_thickness_bond:=save_ratio;
+\end{mplibcode}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Function}
 %-----------------------------------------------------------------------------
@@ -1062,7 +2158,15 @@
   MC(<30,Ph,3:/F,4:/Cl)
 endfigm
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:MC() ")
+  fmargin:=(0.5mm,0.5mm);
+  fsize:=(40mm,15mm);
+  sw_frame:=Outside+Mol;
+  MC(<30,Ph,4:/Cl,3:/F)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Function MCat()}
 \index{MCat()}%
@@ -1092,7 +2196,27 @@
 endfor
 
 \end{verbatim}
-\MCFgraph
+%---------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:MCat()")
+  defaultscale:=0.6;
+  fsize:=(60mm,40mm);
+  fmargin:=(3mm,3mm);
+  blength:=0.07;
+  sw_frame:=Outside;
+  mangle:=0;
+  for i=1 step -0.5 until 0:
+    for j=0 step 0.33 until 1:
+      MCat(j,i)(Ph,4:N)
+      add(
+        drawarrow((A1+A1up**aw)..A1);
+        label(decimal(mangle),p0+(0.5w,0.5h));
+      )
+      mangle:=mangle+30;
+    endfor
+  endfor
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Function mc\_check()}
 \index{mc\_check()}%
@@ -1113,7 +2237,21 @@
 endfigm
 
 \end{verbatim}
-\MCFgraph\hspace{22mm}\MCFgraph
+%-----------------------------------------------------
+\quad
+\begin{mplibcode}
+beginfigm("EN:Pyridine",":<30,Ph,2:N")
+  sw_trimming:=0;
+  fsize:=(12mm,12mm);
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+beginfigm("EN:Pyridine",":<30,Ph,2):N")
+  sw_trimming:=0;
+  fsize:=(12mm,12mm);
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
+%-----------------------------------------------------
 \begin{verbatim}
 mc_check(mc)=0   mc_check(mc)>=1
 \end{verbatim}
@@ -1200,7 +2338,7 @@
 
 beginfigm("EN:add() 1")
  fsize:=(70mm,40mm);
- sw_frame:=Bothside;
+ sw_frame:=sw_frame+Atom+Mol;
  max_blength:=10mm;
  msize:=(.91,.9);
  MCat(.5,.85)(<30,?6,{2,5}:O)
@@ -1223,13 +2361,46 @@
            "  em="&decimal(em),
            p0+(-9em,-1.5em));
   label.rt(  "w="&decimal(w)&
-           "  h="&decimal(h)&
-           "  l="&decimal(l),
+    "  h="&substring (0,6)of decimal(h)&
+    "  l="&substring (0,6)of decimal(l),
            p0+(-9em,-3em));
  )
 endfigm
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:add() 1")
+ fsize:=(70mm,40mm);
+ sw_frame:=sw_frame+Atom+Mol;
+ max_blength:=10mm;
+ msize:=(.91,.9);
+ MCat(.5,.85)(<30,?6,{2,5}:O)
+ add(
+  defaultscale:=.8;
+  labeloffset:=.3aw;
+  dotlabel.lft("p0",p0);
+  dotlabel.rt( "p0+(w,h)",p0+(w,h));
+  dotlabel.ulft("A1",A1);
+  drawarrow A1..A1+__*l<<A1ang;
+  dotlabel.lrt( "B3s",B3s);
+  dotlabel.rt("B3m",B3m);
+  drawarrow B3m..B3m+__*l<<(B3ang+90);
+  dotlabel.ulft("A6",A6);
+  drawarrow A1{A1down}..A6;
+  dotlabel.urt( "B3e",B3e);
+  label.rt(  "An="&decimal(An)&
+           "  Bn="&decimal(Bn)&
+           "  aw="&decimal(aw)&
+           "  em="&decimal(em),
+           p0+(-9em,-1.5em));
+  label.rt(  "w="&substring (0,6)of decimal(w)&
+           "  h="&substring (0,6)of decimal(h)&
+           "  l="&substring (0,6)of decimal(l),
+           p0+(-9em,-3em));
+ )
+endfigm
+\end{mplibcode}
+%------------------------------------------------------------------------------
 \begin{verbatim}
 beginfigm("EN:add() 2")
  fsize:=(60mm,20mm);
@@ -1260,7 +2431,30 @@
  %---------------------------------------
 endfigm
 \end{verbatim}
-\MCFgraph
+%-------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:add() 2")
+  fsize:=(70mm,20mm);
+  msize:=(1,0.85);
+  %-------------------------------------------
+  MCat(0,0)(<30,Ph,3=dl,4:/NH2)
+  %-------------------------------------------
+  add(labeloffset:=.7aw;
+      label.top(lonepair 90,A7);
+      drawarrow (A7+up**1.2aw){A7left}..{B7right}B7/*0.3;
+      drawarrow B3m..A3+B2up**1.5aw..{A3down}A3;
+  )
+  %-------------------------------------------
+  MCat(1,0)(<30,?6,{1,5}=dl,4://NH2)
+  %-------------------------------------------
+  add(labeloffset:=.7aw;
+      label.top(plus,A7);
+      label.urt(minus,A3);
+      label(lonepair A3ang,A3+A3up**.7aw);
+  )
+  ext(drawdblarrow (0.4w,0.4h)..(0.55w,0.4h);)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \newpage
 \subsection{Function ext()}
@@ -1299,15 +2493,15 @@
    <-210,60`1,60`1,60`1,{1,3}=dl,
    1:/R1,4:/R2^-60
    )
-   add(
+ add(
      defaultscale:=0.6;
      label.bot("Diene",p0+(0.5w,0));
-   )
+ )
  MCat(0.4,0.5)(
    <-30,-60`1,1=dl,1:/R3,2:/R4^60)
    add(defaultscale:=0.6;
    label.bot("Dienophile",p0+(.5w,0));
-  )
+ )
  MCat(0.9,0.5)(
    <30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1
  )
@@ -1323,7 +2517,40 @@
  %---------------------------------------
 endfigm
 \end{verbatim}
-\MCFgraph
+%------------------------------------------------------------------------------
+\begin{mplibcode}
+beginfigm()
+  fsize:=(70mm,30mm);
+  blength:=0.065;
+ %---------------------------------------
+ MCat(0.1,0.5)(
+   <-210,60`1,60`1,60`1,{1,3}=dl,
+   1:/R1,4:/R2^-60
+ )
+ add(
+   defaultscale:=0.6;
+   label.bot("Diene",p0+(0.5w,0));
+ )
+ MCat(0.4,0.5)(
+   <-30,-60`1,1=dl,1:/R3,2:/R4^60)
+   add(defaultscale:=0.6;
+   label.bot("Dienophile",p0+(.5w,0));
+ )
+ MCat(0.9,0.5)(
+   <30,?6,6=dl,2:/R2,3:/R4,4:/R3,5:/R1
+ )
+ %---------------------------------------
+ ext(
+  drawarrow (.52w,.5h)..(.6w,.5h);
+  defaultscale:=0.7;
+  label("+",(0.25w,0.5h));
+  ratio_thickness_char:=0.125;
+  label.bot("Diels-Alder Reaction",
+            (.5w,h));
+ )
+ %---------------------------------------
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsubsection{Local ext() setting}
 \begin{verbatim}
@@ -1347,7 +2574,30 @@
   MCat(0.5,1)(?6)
 endfigm
 \end{verbatim}
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph
+%----------------------------------------------------
+\quad
+\begin{mplibcode}
+beginfigm("EN:?3")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(<30,?3)
+endfigm
+beginfigm("EN:?4")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(?4)
+  %-------------------------------
+  ext(label.top(inf_EN,(0.5w,0));)
+  %-------------------------------
+endfigm
+beginfigm("EN:?5")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(?5)
+endfigm
+beginfigm("EN:?5")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(?6)
+endfigm
+\end{mplibcode}
+%-----------------------------------------------------------------------------
 \subsubsection{Global ext() setting}
 \index{ext\_clear}%
 \begin{verbatim}
@@ -1376,10 +2626,36 @@
   MCat(0.5,1)(?6)
 endfigm
 \end{verbatim}
-\MCFgraph\MCFgraph\MCFgraph\MCFgraph
+%-------------------------------------
+\quad
+\begin{mplibcode}
+beginfigm("EN:?3")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(<30,?3)
+endfigm
+%-------------------------------
+ext(label.top(inf_EN,(0.5w,0));)
+%-------------------------------
+beginfigm("EN:?4")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(?4)
+endfigm
+beginfigm("EN:?5")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(?5)
+endfigm
+%---------
+ext_clear;
+%---------
+beginfigm("EN:?6")
+  fsize:=(12mm,15mm);
+  MCat(0.5,1)(?6)
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \newpage
 %-----------------------------------------------------------------------------
+\onecolumn
 \section{MCF example}
 %-----------------------------------------------------------------------------
 \subsection{Luciferin}
@@ -1392,7 +2668,13 @@
   if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
-\MCFgraph
+%-------------------------------------------
+\begin{mplibcode}
+beginfigm("t:EN","v:Luciferin")
+  fsize:=(50mm,15mm);
+  if mc_check(mc)=0: MC(scantokens(mc)) fi
+endfigm
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Colchicine}
 \begin{verbatim}
@@ -1406,29 +2688,18 @@
   if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
-\MCFgraph
-%-----------------------------------------------------------------------------
-\subsection{Paclitaxel}
-\begin{verbatim}
-beginfigm("EN:Paclitaxel","MW:853.91",
-  %------------------------------------
-  ": ?6,5=dl, at 3,#1,36,45,45,45,45,##, ",
-  ": &5",                             ",
-  ": -4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, ",
-  ": 4:??,6:/_,{3^-60,15}:*/OH,       ",
-  ": 8:/*H^-60,",                     ",
-  ": 9:*/_^60,10://O,                 ",
-  ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf, ",
-  ":   NH,-60,//O,60,Ph,              ",
-  ": @7,\*,O,-45,//O,60,Ph,           ",
-  ": @11,*\,O,-60,//O,60,             ",
-  ": @12,\*^-15,O,60,//O,-60          ")
-  %------------------------------------
-  fsize:=(50mm,25mm);
+%---------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Colchicine","MW:385.41",
+  %-------------------------------------
+  ": <30,Ph,{1,2,6}:/O!,{-4,-5}=?7,   ",
+  ": {-1,-4,-6}=dl,-2://O,-3:/O!,     ",
+  ": @9,\,NH,!,//O,!                  ")
+  %-------------------------------------
+  fsize:=(50mm,20mm);
   if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
-\end{verbatim}
-\MCFgraph
+\end{mplibcode}
 %-----------------------------------------------------------------------------
 \subsection{Maltose}
 \index{arc\_lb}
@@ -1439,50 +2710,323 @@
 arc_br : arc bottom right
 
 beginfigm("EN:Maltose","MW:342.3",
-  %-----------------------------------------
-  ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,    ",
-  ":  120,O,30,&1,##,                     ",
-  ": #.5,{1^$-90,2^$90,3^$-90}:/OH,       ",
-  ": 6^$90:/!OH,                          ",
-  ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0, ",
-  ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,  ",
-  ":    120,O,30,&1,##,                   ",
-  ": #.5,{2^$90,3^$-90,4^$-90}:/OH,       ",
-  ": 6^$90:/!OH                           ")
-  %-----------------------------------------
+  %-------------------------------------------------------
+  ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,   ",
+  ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH,          ",
+  ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0,               ",
+  ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ",
+  ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH           ")
+  %-------------------------------------------------------
   fsize:=(50mm,20mm);
   if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
 \end{verbatim}
-\MCFgraph
-%-----------------------------------------------------------------------------
-\subsection{Cellobiose}
-\index{arc\_lbr}
-\index{arc\_ltr}
-\begin{verbatim}
-(bond type for glycan)
-arc_lbr : arc left > bottom > right
-arc_ltr : arc left > top > right
-
-beginfigm("EN:Cellobiose","MW:342.3",
-  %-----------------------------------------
-  ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,    ",
-  ":  120,O,30,&1,##,                     ",
-  ": #.5,{1^$-90,2^$90,3^$-90}:/OH,       ",
-  ": 6^$90:/!OH,                          ",
-  ": @4,$0~arc_ltr,O,$0~arc_lbr,          ",
-  ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,  ",
-  ":    120,O,30,&1,##,                   ",
-  ": #.5,{2^$90,3^$-90,4^$-90}:/OH,       ",
-  ": 6^$90:/!OH                           ")
-  %-----------------------------------------
+%-------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Maltose","MW:342.3",
+  %-------------------------------------------------------
+  ": #1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##,   ",
+  ": #.5,{1^$-90,2^$90,3^$-90}:/OH,6^$90:/!OH,          ",
+  ": @4,$-50~arc_lb`1,O,$50~arc_br`1,<$0,               ",
+  ": |,#1.25,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##, ",
+  ": #.5,{2^$90,3^$-90,4^$-90}:/OH,6^$90:/!OH           ")
+  %-------------------------------------------------------
   fsize:=(50mm,20mm);
   if mc_check(mc)=0: MC(scantokens(mc)) fi
 endfigm
+\end{mplibcode}
+%-----------------------------------------------------------------------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\subsection{Erythromycin}
+\noindent%
+%----------------------------------------------------------------------------
+\begin{verbatim}
+beginfigm("EN:Erythromycin","MW:733.93")
+  fsize:=(120mm,30mm);
+  MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
+      14:O,13:/*Et,{1,9}://O,
+      {2',4,6^-35,8,10',12^35}:/*_,
+      {6^35,11,12^-35}:*/OH,
+      @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
+      @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!
+  )
+  ext(defaultscale:=0.8;
+      label.lrt("fm: "&cal_FM,(0,h-5mm));
+      label.lrt("mw: "&cal_MW,(0,h-9mm));
+      label.lrt("MW: "&inf_MW,(0,h-13mm));
+  )
+endfigm;
 \end{verbatim}
-\MCFgraph
+%----------------------------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Erythromycin","MW:733.93")
+  fsize:=(120mm,30mm);
+  MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
+      14:O,13:/*Et,{1,9}://O,
+      {2',4,6^-35,8,10',12^35}:/*_,
+      {6^35,11,12^-35}:*/OH,
+      @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
+      @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!)
+  ext(defaultscale:=0.8;
+      label.lrt("fm: "&cal_FM,(0,h-5mm));
+      label.lrt("mw: "&cal_MW,(0,h-9mm));
+      label.lrt("MW: "&inf_MW,(0,h-13mm));)
+endfigm;
+\end{mplibcode}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\subsection{Paclitaxel}
+\noindent%
+\begin{verbatim}
+beginfigm("EN:Paclitaxel","MW:853.918",
+  %---------------------------------------------------------------------
+  ": ?6,5=dl, at 3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ",
+  ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O,             ",
+  ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,                ",
+  ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr              ")
+  %---------------------------------------------------------------------
+  fsize:=(140mm,30mm);
+  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
+endfigm
+\end{verbatim}
+%----------------------------------------------------------------------------
+\begin{mplibcode}
+beginfigm("EN:Paclitaxel","MW:853.918",
+  %---------------------------------------------------------------------
+  ": ?6,5=dl, at 3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ",
+  ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O,             ",
+  ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,                ",
+  ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr              ")
+  %---------------------------------------------------------------------
+  fsize:=(160mm,40mm);
+  if mc_check(mc)=0:    MCat(0,0.5)(scantokens(mc))
+    sw_numbering:=Atom; MCat(0.5,0.5)(scantokens(mc))
+    sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc))
+  fi
+endfigm
+\end{mplibcode}
+%----------------------------------------------------------------------------
+\newpage
+\subsection{Chlorophyll a}
+\noindent%
+\begin{verbatim}
+beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-",
+          "= sw_output:=Fig+Calc+Mcode;",
+          "= fsize:=(100mm,30mm);")
+  if op_row>=1: scantokens(op) fi
+  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
+endfigm
+\end{mplibcode}
+\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
+{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
+\end{verbatim}
+%------------------------------------------------------------------------------------
+\begin{mplibcode}
+beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-",
+          "= sw_output:=Fig+Calc+Mcode;",
+          "= fsize:=(100mm,30mm);")
+  if op_row>=1: scantokens(op) fi
+  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
+endfigm
+\end{mplibcode}
+\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
+{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\subsection{Dinophysistoxin-1}
+\noindent%
+\begin{verbatim}
+beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1",
+          "MW:819",":,38:*/_,65=red")  %%%% add methyl group (color red) %%%%
+  sw_output:=Fig+Calc+Mcode;           %%%% output temp-mc.aux %%%%
+  fsize:=(120mm,20mm);
+  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
+endfigm;
+\end{mplibcode}
+\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
+{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
+\end{verbatim}
+%----------------------------------------------------------------------------
+\begin{mplibcode}
+beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1",
+          "MW:819",":,38:*/_,65=red")  %%%% add methyl group (color red) %%%%
+  sw_output:=Fig+Calc+Mcode;           %%%% output temp-mc.aux %%%%
+  fsize:=(120mm,20mm);
+  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
+endfigm;
+\end{mplibcode}
+\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
+{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+%----------------------------------------------------------------------------
+\subsection{Maitotoxin}
+\noindent%
+%--------------------------------------------------------------------------------
+\begin{verbatim}
+%--------------------------------------------------------------------------------
+\begin{mplibcode}
+  beginfigm("t:EN","v:Maitotoxin")
+    sw_output:=Fig+Calc+Mcode;         %%%% output temp-mc.aux %%%%
+    fsize:=(150mm,80mm);
+    fmargin:=(3mm,3mm);
+    sw_frame:=Outside;
+    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
+  endfigm
+\end{mplibcode}
+\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
+{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
+%--------------------------------------------------------------------------------
+\end{verbatim}
+%--------------------------------------------------------------------------------
+\begin{mplibcode}
+  beginfigm("t:EN","v:Maitotoxin")
+    sw_output:=Fig+Calc+Mcode;
+    fsize:=(150mm,80mm); fmargin:=(3mm,3mm); sw_frame:=Outside; %% mc_length:=40;
+    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
+  endfigm
+\end{mplibcode}
+\verbatiminput{temp-mc.aux}
+{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
+%--------------------------------------------------------------------------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newpage
+\subsection{TCA cycle}
+\noindent%
+\begin{mplibcode}
+beginfigm("EN:TCA cycle")
+fsize:=(160mm,75mm);
+max_blength:=5mm;
+%--------------------------------------------------------------------------------
+COOH:='(//O,!,OH);
+HOCO:='(OH,!,//O,);
+MCat(0.33,   1)(<30,HOCO,!,//O,!2,COOH)                    % Oxaloacetate
+MCat(0.66,   1)(<30,HOCO,!4,COOH, at -4`1,\,COOH,4:/OH^-165)  % Citrate
+MCat(1,      1)(<30,HOCO,!2,!~dr,!,COOH, at -4`1,\,COOH)      % cis-Aconitate
+MCat(1,   0.58)(<30,HOCO,!4,COOH, at -4,\`1,COOH,5:/OH)       % Isocitrate
+MCat(1,   0.05)(<30,HOCO,!3,//O,!,COOH, at -4,\`1,COOH)       % Oxalosuccinate
+MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH)                    % alfa-Ketoglutarate
+MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}")               % Succinyl-CoA
+MCat(0,   0.05)(<30,HOCO,!3,COOH)                          % Succinate
+MCat(0,   0.55)(<30,HOCO,!,!~dr,!,COOH)                    % Fumarate
+MCat(0,      1)(<30,HOCO,!3,COOH,3:/OH)                    % L-Malate
+%--------------------------------------------------------------------------------
+ext(
+defaultfont:="uhvr8r";
+defaultscale:=0.75;
+ext_setup;
+def sel_dir(expr rot)=
+  save tx; nA:=rot; if nA>=360: nA:=nA-360; fi
+  if     (nA<30)or(nA>330):   def tx=top enddef; elseif (nA>=30)and(nA<=150):  def tx=lft enddef;
+  elseif (nA>150)and(nA<210): def tx=bot enddef; elseif (nA>=210)and(nA<=330): def tx=rt enddef; fi
+enddef;
+def reaction_arrow(expr a)(expr r)(expr p)(expr sa,la)(expr sb,lb)(expr sc,lc)(expr sd,ld)=
+  drawarrow ((0,0)..(a,0)) rotated r shifted p;
+  if sa<>"": draw ((0.5a,0){dir 180}..{dir 90}(0,.5a*la)) rotated r shifted p;
+             sel_dir(r); label.tx(sa,p+((0,0.5a*la) rotated r)); fi
+  if sb<>"": draw ((0.5a,0){dir 0}..{dir 90}(a,.5a*lb)) rotated r shifted p;
+             sel_dir(r); label.tx(sb,p+((a,0.5a*lb) rotated r)); fi
+  if sc<>"": draw ((0.5a,0){dir 180}..{dir -90}(0,-.5a*lc)) rotated r shifted p;
+             sel_dir(r+180); label.tx(sc,p+((0,-0.5a*lc) rotated r)); fi
+  if sd<>"": draw ((0.5a,0){dir 0}..{dir -90}(a,-.5a*ld)) rotated r shifted p;
+             sel_dir(r+180); label.tx(sd,p+((a,-0.5a*ld) rotated r)); fi
+enddef;
+def r_arrow(expr a)(expr r)(expr p)(expr sc,lc)(expr sd,ld)=
+   reaction_arrow(a)(r)(p)("",0)("",0)(sc,lc)(sd,ld)
+enddef;
 %------------------------------------------------------------------------
-\onecolumn
+save dx; pair dx; dx:=(12mm,0);
+label.bot("Oxaloacetate",p1+dx);   label.bot("Citrate",p2+dx);
+label.bot("cis-Aconitate",p3+dx);  label.bot("Isocitrate",p4+dx);
+label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx);
+label.bot("Succinyl-CoA",p7+dx);   label.bot("Succinate",p8+dx);
+label.bot("Fumarate",p9+dx);       label.bot("L-Malate",p10+dx);
+sw_label_emu:=1;
+ext_setup;
+r_arrow(10mm)(  0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1);
+r_arrow(10mm)(  0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1);
+r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0);
+r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1);
+r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO2",1);
+r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1);
+r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1);
+r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1);
+r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0);
+r_arrow(10mm)(  0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5);
+defaultscale:=1.5;
+label("TCA-cycle",(0.5w,0.5h));
+)
+endfigm
+\end{mplibcode}
+%------------------------------------------------------------------------
+\begin{verbatim}
+beginfigmy"EN:TCA cycle")
+fsize:=(160mm,75mm);
+max_blength:=5mm;
+COOH:='(//O,!,OH); HOCO:='(OH,!,//O,);
+MCat(0.33,   1)(<30,HOCO,!,//O,!2,COOH)                    % Oxaloacetate
+MCat(0.66,   1)(<30,HOCO,!4,COOH, at -4`1,\,COOH,4:/OH^-165)  % Citrate
+MCat(1,      1)(<30,HOCO,!2,!~dr,!,COOH, at -4`1,\,COOH)      % cis-Aconitate
+MCat(1,   0.58)(<30,HOCO,!4,COOH, at -4,\`1,COOH,5:/OH)       % Isocitrate
+MCat(1,   0.05)(<30,HOCO,!3,//O,!,COOH, at -4,\`1,COOH)       % Oxalosuccinate
+MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH)                    % alfa-Ketoglutarate
+MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}")               % Succinyl-CoA
+MCat(0,   0.05)(<30,HOCO,!3,COOH)                          % Succinate
+MCat(0,   0.55)(<30,HOCO,!,!~dr,!,COOH)                    % Fumarate
+MCat(0,      1)(<30,HOCO,!3,COOH,3:/OH)                    % L-Malate
+ext(
+defaultfont:="uhvr8r";
+defaultscale:=0.75;
+ext_setup;
+save dx; pair dx; dx:=(12mm,0);
+label.bot("Oxaloacetate",p1+dx);   label.bot("Citrate",p2+dx);
+label.bot("cis-Aconitate",p3+dx);  label.bot("Isocitrate",p4+dx);
+label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx);
+label.bot("Succinyl-CoA",p7+dx);   label.bot("Succinate",p8+dx);
+label.bot("Fumarate",p9+dx);       label.bot("L-Malate",p10+dx);
+sw_label_emu:=1;
+ext_setup;
+r_arrow(10mm)(  0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1);
+r_arrow(10mm)(  0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1);
+r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0);
+r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1);
+r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO_2_",1);
+r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1);
+r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1);
+r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1);
+r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0);
+r_arrow(10mm)(  0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5);
+defaultscale:=1.5;
+label("TCA-cycle",(0.5w,0.5h));
+)
+endfigm
+\end{verbatim}
+%------------------------------------------------------------------------
 \section{Example to use mcf2graph}
 \subsection{MetaPost souce file}
 \index{mcf2graph.mp}%
@@ -1869,7 +3413,7 @@
  Weight  Calc: 111.1019 / Input: 111.10 / weight gap= 0.00195
  Fomula  Calc: C4H5N3O / Input: 
 ===========================================================================
-\end{verbatim}%
+\end{verbatim}
 \newpage
 %------------------------------------------------------------------------
 \noindent%
@@ -1924,7 +3468,7 @@
   9 14  1  0     0  0
 M  END
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\end{verbatim}%
+\end{verbatim}
 %----------------------------------------------------------------------------
 \newpage
 \subsection{LuaTeX file example}
@@ -1989,7 +3533,7 @@
 %--------------------------------------------------------------------
 \end{mplibcode}\\
 \end{document}
-\end{verbatim}%
+\end{verbatim}
 %############################################################################
 %------------------------------------------------------------------------
 \texttt{\printindex}

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

Deleted: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2023-01-09 00:49:39 UTC (rev 65498)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2023-01-09 20:52:40 UTC (rev 65499)
@@ -1,328 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of  MCF typest with LuaLaTeX(luamplib)    by A.Yamaji    2022.11.12
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mp must be version 4.90
-% ** use mcf_library.mcf
-\documentclass{article}
-%------------------------------------------------------------------------------
-\usepackage{luamplib}%
-\usepackage[T1]{fontenc}%
-\usepackage{textcomp,verbatim}%
-\mplibcodeinherit{enable}%
-\mplibverbatim{enable}%
-\mplibnumbersystem{double}%
-\mpliblegacybehavior{disabled}%
-\everymplib{%
-  if unknown Ph1: input mcf2graph; fi
-  outputformat:="eps";
-  sw_output:=Fig+Calc;
-  tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW";
-  max_blength:=4.5mm;
-  defaultsize:=8;
-  defaultscale:=1;
-}%
-%------------------------------------------------------------------------------
-\pagestyle{empty}
-\topmargin=-20mm
-\oddsidemargin=0mm
-\textwidth=170mm
-\textheight=280mm
-\unitlength=1mm
-%------------------------------------------------------------------------------------
-\begin{document}
-\begin{center}
- {\Huge\sf MCF example for luamplib(Lua\LaTeX)}\vspace{5mm}\\
- Author : Akira Yamaji \quad Date : \today\\
- Located at : http://www.ctan.org/pkg/mcf2graph\vspace{2mm}\\
-\end{center}
-%------------------------------------------------------------------------------------
-\section{MCF example}
-\noindent%
-%------------------------------------------------------------------------------------
- use molecular library file 'mcf\_library.mcf' \\
-{{\tt FM(fm) :} molecular formula (calculated) \\
-{{\tt MW(mw) :} molecular weight (calculated)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\subsection{Erythromycin}
-\noindent%
-%----------------------------------------------------------------------------
-( pass mcf to MC() )
-\begin{verbatim}
-beginfigm("EN:Erythromycin","MW:733.93")
-  fsize:=(120mm,30mm);
-  MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
-      14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_,
-      {6^35,11,12^-35}:*/OH,
-      @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
-      @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!)
-  ext(defaultscale:=0.8; label.lrt("fm: "&cal_FM,(0,h-5mm));
-      label.lrt("mw: "&cal_MW,(0,h-9mm)); label.lrt("MW: "&inf_MW,(0,h-13mm));)
-endfigm;
-\end{verbatim}
-%----------------------------------------------------------------------------
-\begin{mplibcode}
-beginfigm("EN:Erythromycin","MW:733.93")
-  fsize:=(120mm,30mm);
-  MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
-      14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_,
-      {6^35,11,12^-35}:*/OH,
-      @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
-      @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!)
-  ext(defaultscale:=0.8; label.lrt("fm: "&cal_FM,(0,h-5mm));
-      label.lrt("mw: "&cal_MW,(0,h-9mm)); label.lrt("MW: "&inf_MW,(0,h-13mm));)
-endfigm;
-\end{mplibcode}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\subsection{Paclitaxel}
-\noindent%
-( pass mcf to beginfigm() )
-\begin{verbatim}
-beginfigm("EN:Paclitaxel","MW:853.918",
-  %---------------------------------------------------------------------
-  ": ?6,5=dl, at 3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ",
-  ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O,             ",
-  ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,                ",
-  ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr              ")
-  %---------------------------------------------------------------------
-  fsize:=(140mm,30mm);
-  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
-endfigm
-\end{verbatim}
-%----------------------------------------------------------------------------
-\begin{mplibcode}
-beginfigm("EN:Paclitaxel","MW:853.918",
-  %---------------------------------------------------------------------
-  ": ?6,5=dl, at 3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, ",
-  ": 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O,             ",
-  ": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,                ",
-  ": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr              ")
-  %---------------------------------------------------------------------
-  fsize:=(140mm,30mm);
-  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
-endfigm
-\end{mplibcode}
-%----------------------------------------------------------------------------
-\newpage
-\subsection{Chlorophyll a}
-\noindent%
-( read library file )
-\begin{verbatim}
-beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-",
-          "= sw_output:=Fig+Calc+Mcode;",
-          "= fsize:=(100mm,30mm);")
-  if op_row>=1: scantokens(op) fi
-  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
-endfigm
-\end{mplibcode}
-\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
-{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
-\end{verbatim}
-%------------------------------------------------------------------------------------
-\begin{mplibcode}
-beginfigm("f:mcf_library.mcf","t:EN","v:Chlorophyll a","NO:-",
-          "= sw_output:=Fig+Calc+Mcode;",
-          "= fsize:=(100mm,30mm);")
-  if op_row>=1: scantokens(op) fi
-  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
-endfigm
-\end{mplibcode}
-\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
-{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\subsection{Dinophysistoxin-1}
-\noindent%
-( read library file + pass mcf to beginfigm() )
-\begin{verbatim}
-beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1",
-          "MW:819",":,38:*/_,65=red")  %%%% add methyl group (color red) %%%%
-  sw_output:=Fig+Calc+Mcode;           %%%% output temp-mc.aux %%%%
-  fsize:=(120mm,20mm);
-  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
-endfigm;
-\end{mplibcode}
-\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
-{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
-\end{verbatim}
-%----------------------------------------------------------------------------
-\begin{mplibcode}
-beginfigm("t:EN","v:Okadaic acid","EN:Dinophysistoxin-1",
-          "MW:819",":,38:*/_,65=red")  %%%% add methyl group (color red) %%%%
-  sw_output:=Fig+Calc+Mcode;           %%%% output temp-mc.aux %%%%
-  fsize:=(120mm,20mm);
-  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
-endfigm;
-\end{mplibcode}
-\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
-{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newpage
-%----------------------------------------------------------------------------
-\subsection{Maitotoxin}
-\noindent%
-( read library file )
-%--------------------------------------------------------------------------------
-\begin{verbatim}
-%--------------------------------------------------------------------------------
-\begin{mplibcode}
-  beginfigm("t:EN","v:Maitotoxin")
-    sw_output:=Fig+Calc+Mcode;         %%%% output temp-mc.aux %%%%
-    fsize:=(120mm,60mm); fmargin:=(0,3mm); sw_frame:=Outside;
-    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
-  endfigm
-\end{mplibcode}
-\verbatiminput{temp-mc.aux}            %%%% input temp-mc.aux %%%%
-{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
-%--------------------------------------------------------------------------------
-\end{verbatim}
-%--------------------------------------------------------------------------------
-\begin{mplibcode}
-  beginfigm("t:EN","v:Maitotoxin")
-    sw_output:=Fig+Calc+Mcode;
-    fsize:=(120mm,60mm); fmargin:=(0,3mm); sw_frame:=Outside; %% mc_length:=40;
-    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
-  endfigm
-\end{mplibcode}
-\verbatiminput{temp-mc.aux}
-{\tt ** EN:\EN \quad mw:\MW \quad MW:\mw \quad fm:\fm}%
-%--------------------------------------------------------------------------------
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newpage
-\subsection{TCA cycle}
-\noindent%
-\begin{mplibcode}
-beginfigm("EN:TCA cycle")
-fsize:=(160mm,75mm);
-max_blength:=5mm;
-%--------------------------------------------------------------------------------
-COOH:='(//O,!,OH);
-HOCO:='(OH,!,//O,);
-MCat(0.33,   1)(<30,HOCO,!,//O,!2,COOH)                    % Oxaloacetate
-MCat(0.66,   1)(<30,HOCO,!4,COOH, at -4`1,\,COOH,4:/OH^-165)  % Citrate
-MCat(1,      1)(<30,HOCO,!2,!~dr,!,COOH, at -4`1,\,COOH)      % cis-Aconitate
-MCat(1,   0.58)(<30,HOCO,!4,COOH, at -4,\`1,COOH,5:/OH)       % Isocitrate
-MCat(1,   0.05)(<30,HOCO,!3,//O,!,COOH, at -4,\`1,COOH)       % Oxalosuccinate
-MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH)                    % alfa-Ketoglutarate
-MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}")               % Succinyl-CoA
-MCat(0,   0.05)(<30,HOCO,!3,COOH)                          % Succinate
-MCat(0,   0.55)(<30,HOCO,!,!~dr,!,COOH)                    % Fumarate
-MCat(0,      1)(<30,HOCO,!3,COOH,3:/OH)                    % L-Malate
-%--------------------------------------------------------------------------------
-ext(
-defaultfont:="uhvr8r";
-defaultscale:=0.75;
-ext_setup;
-def sel_dir(expr rot)=
-  save tx; nA:=rot; if nA>=360: nA:=nA-360; fi
-  if     (nA<30)or(nA>330):   def tx=top enddef; elseif (nA>=30)and(nA<=150):  def tx=lft enddef;
-  elseif (nA>150)and(nA<210): def tx=bot enddef; elseif (nA>=210)and(nA<=330): def tx=rt enddef; fi
-enddef;
-def reaction_arrow(expr a)(expr r)(expr p)(expr sa,la)(expr sb,lb)(expr sc,lc)(expr sd,ld)=
-  drawarrow ((0,0)..(a,0)) rotated r shifted p;
-  if sa<>"": draw ((0.5a,0){dir 180}..{dir 90}(0,.5a*la)) rotated r shifted p;
-             sel_dir(r); label.tx(sa,p+((0,0.5a*la) rotated r)); fi
-  if sb<>"": draw ((0.5a,0){dir 0}..{dir 90}(a,.5a*lb)) rotated r shifted p;
-             sel_dir(r); label.tx(sb,p+((a,0.5a*lb) rotated r)); fi
-  if sc<>"": draw ((0.5a,0){dir 180}..{dir -90}(0,-.5a*lc)) rotated r shifted p;
-             sel_dir(r+180); label.tx(sc,p+((0,-0.5a*lc) rotated r)); fi
-  if sd<>"": draw ((0.5a,0){dir 0}..{dir -90}(a,-.5a*ld)) rotated r shifted p;
-             sel_dir(r+180); label.tx(sd,p+((a,-0.5a*ld) rotated r)); fi
-enddef;
-def r_arrow(expr a)(expr r)(expr p)(expr sc,lc)(expr sd,ld)=
-   reaction_arrow(a)(r)(p)("",0)("",0)(sc,lc)(sd,ld)
-enddef;
-%------------------------------------------------------------------------
-save dx; pair dx; dx:=(12mm,0);
-label.bot("Oxaloacetate",p1+dx);   label.bot("Citrate",p2+dx);
-label.bot("cis-Aconitate",p3+dx);  label.bot("Isocitrate",p4+dx);
-label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx);
-label.bot("Succinyl-CoA",p7+dx);   label.bot("Succinate",p8+dx);
-label.bot("Fumarate",p9+dx);       label.bot("L-Malate",p10+dx);
-sw_label_emu:=1;
-ext_setup;
-r_arrow(10mm)(  0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1);
-r_arrow(10mm)(  0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1);
-r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0);
-r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1);
-r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO2",1);
-r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1);
-r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1);
-r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1);
-r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0);
-r_arrow(10mm)(  0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5);
-defaultscale:=1.5;
-label("TCA-cycle",(0.5w,0.5h));
-)
-endfigm
-\end{mplibcode}
-%------------------------------------------------------------------------
-\begin{verbatim}
-beginfigmy"EN:TCA cycle")
-fsize:=(160mm,75mm);
-max_blength:=5mm;
-COOH:='(//O,!,OH);
-HOCO:='(OH,!,//O,);
-MCat(0.33,   1)(<30,HOCO,!,//O,!2,COOH)                    % Oxaloacetate
-MCat(0.66,   1)(<30,HOCO,!4,COOH, at -4`1,\,COOH,4:/OH^-165)  % Citrate
-MCat(1,      1)(<30,HOCO,!2,!~dr,!,COOH, at -4`1,\,COOH)      % cis-Aconitate
-MCat(1,   0.58)(<30,HOCO,!4,COOH, at -4,\`1,COOH,5:/OH)       % Isocitrate
-MCat(1,   0.05)(<30,HOCO,!3,//O,!,COOH, at -4,\`1,COOH)       % Oxalosuccinate
-MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH)                    % alfa-Ketoglutarate
-MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}")               % Succinyl-CoA
-MCat(0,   0.05)(<30,HOCO,!3,COOH)                          % Succinate
-MCat(0,   0.55)(<30,HOCO,!,!~dr,!,COOH)                    % Fumarate
-MCat(0,      1)(<30,HOCO,!3,COOH,3:/OH)                    % L-Malate
-ext(
-defaultfont:="uhvr8r";
-defaultscale:=0.75;
-ext_setup;
-save dx; pair dx; dx:=(12mm,0);
-label.bot("Oxaloacetate",p1+dx);   label.bot("Citrate",p2+dx);
-label.bot("cis-Aconitate",p3+dx);  label.bot("Isocitrate",p4+dx);
-label.bot("Oxalosuccinate",p5+dx); label.bot("alfa-Ketoglutarate",p6+dx);
-label.bot("Succinyl-CoA",p7+dx);   label.bot("Succinate",p8+dx);
-label.bot("Fumarate",p9+dx);       label.bot("L-Malate",p10+dx);
-sw_label_emu:=1;
-ext_setup;
-r_arrow(10mm)(  0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1);
-r_arrow(10mm)(  0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1);
-r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0);
-r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1);
-r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO_2_",1);
-r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1);
-r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1);
-r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1);
-r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0);
-r_arrow(10mm)(  0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5);
-defaultscale:=1.5;
-label("TCA-cycle",(0.5w,0.5h));
-)
-endfigm
-\end{verbatim}
-%----------------------------------------------------------------------------
-\end{document}



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