Anonymous avatar Anonymous committed 8250f30

don't distribute tkz-* since it's on CTAN and disabled in example file

Comments (0)

Files changed (8)

 include remote-sagetex.py
 include scripts.dtx
 include py-and-sty.dtx
-include tkz-berge.sty
-include tkz-graph.sty
-include tkz-arith.sty
 include Makefile
 include sagetex.pdf
 include example.pdf
 \end{sageblock}
 
 Now just do \verb|\sage{}| on it to plot it. You'll need to use the
-\href{http://altermundus.com/pages/graphtheory.html}{\texttt{tkz-berge}}
-package for this to work; that package in turn depends on
-\href{http://altermundus.com/pages/graph.html}{\texttt{tkz-graph}} and
-TikZ. Both of those files are distributed with Sage\TeX. See
+\texttt{tkz-berge} package for this to work; that package in turn
+depends on \texttt{tkz-graph} and TikZ. See
+\href{http://altermundus.fr/pages/tkz.html}{\texttt{altermundus.fr/pages/tkz.html}};
+if you're using a recent version of \TeX Live, you can use its package
+manager to install those packages, or get them from CTAN:
+\href{http://www.ctan.org/pkg/tkz-berge}{\texttt{www.ctan.org/pkg/tkz-berge}}.
+See
 \href{http://sagemath.org/doc/reference/sage/graphs/graph_latex.html}{``\LaTeX{}
   Options for Graphs''} in the Sage reference manual for more details.
 
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 02110-1301, USA.
 
-The files |tkz-{arith,berge,graph}.sty| are distributed with \ST, but
-are not part of \ST. They were written by Alain Matthes and are
-available from \url{http://www.altermundus.fr}. I couldn't find a clear
-license statement for them, but other \LTX things written by Alain are
-released under the LPPL, so I'm guessing that's the license for those
-files.
-
 The \emph{documentation} of the \ST package is licensed under the
 Creative Commons Attribution-Share Alike 3.0 License. To view a copy of
 this license, visit \url{http://creativecommons.org/licenses/by-sa/3.0/}
       py_modules=['sagetex'],
       data_files = [('share/texmf/tex/generic/sagetex',
         ['example.tex',
-         'tkz-berge.sty',
-         'tkz-graph.sty',
-         'tkz-arith.sty',
          'CONTRIBUTORS',
          'extractsagecode.py',
          'makestatic.py',
 
 # this runs Sage on the generated .sage files to see if they work ok
 
-# typesetting the example file requires TikZ version 2.00, as well as
-# tkz-berge.sty and tkz-graph.sty.
-
 typeset()
 {
     latex -interaction=nonstopmode $1
     if [ $? -ne 0 ]
     then
-        echo "Error typesetting $1! To fully test SageTeX, make sure"
-        echo "LaTeX can find sagetex.sty, and that TikZ (version 2.00"
-        echo "or newer), tkz-berge.sty and tkz-graph.sty are installed."
+        echo "Error typesetting $1!"
         exit 1
     fi
 }
 
 checkdotsage()
 {
-    sage $1.sage
+    sage $1.sagetex.sage
     if [ $? -ne 0 ]
     then
-        echo "Error running Sage on $1.sage!"
+        echo "Error running Sage on $1.sagetex.sage!"
         exit 1
     else
         echo "No problem that spkg-check can detect running Sage on $1.sage."
     exit 0
 fi
 
-kpsewhich tkz-berge.sty
-if [ $? -ne 0 ]
-then
-    echo "Could not find tkz-berge.sty. Skipping test of SageTeX spkg."
-    exit 0
-fi
-
 typeset example.tex
 checkdotsage example
 

tkz-arith.sty

-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    %                                                               %
-    %              tkz-arith.sty      encodage : utf8               %
-    %                                                               %
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    %                                                               %
-    %           Créé par Alain Matthes le 10-10-2007.               %
-    %                                                               %
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%<--------------------------------------------------------------------------–>
-%% Objet :  tools for arithmetic 
-% todo : remove latex stuff 
-% todo : change some names of macros
-%<--------------------------------------------------------------------------–>
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tkz-arith}[2010/04/16 v0.93c integers numbers]
-%<--------------------------------------------------------------------------–>
-
-
-%\input{tkz-arith.tex}
-
-
-\def\fileversion{0.999 c}
-\def\filedate{2010/08/21}
-%  Author Alain Matthes
-%<--------------------------------------------------------------------------–>
-%% Objet :  tools for arithmetic 
-
-%<--------------------------------------------------------------------------–>
-%    [2010/04/16 v0.99c integers numbers]
-%<--------------------------------------------------------------------------–>
-\newcount\tkz@prim@a
-\newcount\tkz@prim@b
-\newcount\tkzprim@a
-\newcount\tkzprim@b
-\newcount\tkzprim@r
-\newcount\tkzprim@q
-\newcount\tkzprim@n
-\newcount\tkzprim@d
-\newcount\tkzprim@last
-\newcount\NbOfPrimFactor
-
-\newif\iftkz@prime
-\newif\iftkz@unknown
-\newif\iftkz@test@
-\newif\iftkzIsAPrim 
-\newif\iftkzIsAFactor
-
-\NbOfPrimFactor0 %
-
-% tkz@loop (from plain.tex and pgf)
-
-\def\tkz@loop#1\tkz@repeat{\def\tkz@body{#1}\tkz@iterate}
-\def\tkz@iterate{\tkz@body \let\tkz@next\tkz@iterate \else\let\tkz@next\relax\fi \tkz@next}
-\let\tkz@repeat=\fi % this makes \loop...\if...\repeat skippable      
-%<--------------------------------------------------------------------------–>
-%                            arithmetic tools 
-%<--------------------------------------------------------------------------–>
-%                          Mod
-% ne sera plus nécessaire avec pgf 2 cvs
-\ifdefined\pgfmathdeclarefunction
-\else
-\def\pgfmath@parsefunction@Mod{%
-  \expandafter\pgfmath@parsefunction@Mod@}
-\def\pgfmath@parsefunction@Mod@(#1,{%
-  \pgfmathparse@{#1}\edef\pgfmath@firstoperand{\pgfmathresult}%
-  \let\pgfmath@parsepostgroup\pgfmath@parsefunction@Mod@@
-  \pgfmath@startparsegroup}
-\def\pgfmath@parsefunction@Mod@@{%
-  \edef\pgfmath@secondoperand{\pgfmathresult}%
-  \pgfmathMod@{\pgfmath@firstoperand}{\pgfmath@secondoperand}%
-  \pgfmath@postfunction}
-% \pgfmathmod
-% Calculate #1 Mod #2.
-\def\pgfmathMod#1#2{%
-  \edef\pgfmath@marshal{%
-    \noexpand\pgfmathparse{#2}
-    \noexpand\let\noexpand\pgfmath@arg\noexpand\pgfmathresult%
-    \noexpand\pgfmathparse{#1}%
-  }%
-  \pgfmath@marshal%
-  \pgfmathMod@{\pgfmathresult}{\pgfmath@arg}%
-}
-\def\pgfmathMod@#1#2{%
-  \begingroup
-    \pgfmath@xa#1pt%
-    \pgfmath@xb#2pt%
-    \pgfmath@x\pgfmath@xa%
-    \c@pgfmath@counta\pgfmath@xa%
-    \c@pgfmath@countb\pgfmath@xb%
-    \divide\c@pgfmath@counta\c@pgfmath@countb%
-    \multiply\pgfmath@xb\c@pgfmath@counta%
-    \advance\pgfmath@x-\pgfmath@xb%
-        \pgfmath@xb#2pt%
-        \ifdim\pgfmath@x<0pt\relax%
-       \advance\pgfmath@x\pgfmath@xb\relax%
-     \fi
-    \pgfmath@returnone\pgfmath@x%
-  \endgroup
-}
-\fi
-%<--------------------------------------------------------------------------–>
-%                    find factors of an integer
-%<--------------------------------------------------------------------------–>
-
-\newcommand*{\tkz@factors}[1]{%
-\tkzprim@b#1 
-\tkzprim@d2\relax
-%<--------------------------------------------------------------------------–>
-\tkz@test@true 
-\@whilesw\iftkz@test@ \fi{%
-\ifodd\tkzprim@b  \tkz@test@false 
-\else
- \divide\tkzprim@b by2 %
-  $\number\tkzprim@d\ $ 
-\fi}%
-\tkzprim@last=1 %
-  \loop  \ifnum\tkzprim@b>1  
-    \tkzprim@d\tkzprim@last\relax
-    \tkzprim@r1\relax
-%<--------------------------------------------------------------------------–>
-\tkz@loop\ifnum\tkzprim@r>0 % 
-            \tkzprim@last\tkzprim@d
-            \advance\tkzprim@d by2\relax% on commence par 3
-            \tkzprim@a\tkzprim@b% macro mod !!
-            \tkzprim@r\tkzprim@a%
-            \divide\tkzprim@a by \tkzprim@d
-            \multiply\tkzprim@a by\tkzprim@d %
-            \advance\tkzprim@r by-\tkzprim@a%
-     \tkz@repeat % fin du whiledo on a le reste
-    \divide\tkzprim@b by\tkzprim@d\relax
-    $\number\tkzprim@d\ $%  affiche le facteur
-\repeat% fin du premier whiledo
-}%    
-%<--------------------------------------------------------------------------–>
-%                  search factors   % if prime number tkzIsAPrimtrue        
-%<--------------------------------------------------------------------------–>
-\def\tkzfactors#1{%
-\tkzprim@b#1 
-\tkzIsAPrimfalse
-\tkz@primality{\tkzprim@b}% 
-\iftkzIsAPrim
-   \number\tkzprim@b\ % prime number
-\else we can found factors
-\tkz@factors{#1} 
-\fi
-}%
-%<--------------------------------------------------------------------------–>
-% \iftkzIsAPrim to test
-%<--------------------------------------------------------------------------–>
-\def\tkz@primality#1{%
-\tkz@unknowntrue
-\tkzprim@n =#1
-\ifnum\tkzprim@n =1 \tkz@primefalse\tkz@unknownfalse\fi
-\ifnum\tkzprim@n =2 \tkz@primetrue\tkz@unknownfalse\fi
-\ifnum\tkzprim@n =3 \tkz@primetrue\tkz@unknownfalse\fi
-\iftkz@unknown
-\tkzprim@d=2 
-\tkzprim@a=\tkzprim@n  %
-     \divide\tkzprim@a by\tkzprim@d %
-     \multiply\tkzprim@a by\tkzprim@d %
-\ifnum\tkzprim@a=\tkzprim@n  \global\tkz@primefalse\tkz@unknownfalse\fi
- \fi
-\iftkz@unknown
-\tkzprim@d=3 \global\tkz@primetrue
- \tkz@loop
- \tkzprim@a=\tkzprim@n  \divide\tkzprim@a by\tkzprim@d
-  \ifnum\tkzprim@a>\tkzprim@d \tkz@unknowntrue\else\tkz@unknownfalse\fi
-    \multiply\tkzprim@a by\tkzprim@d
-  \ifnum\tkzprim@a=\tkzprim@n  \global\tkz@primefalse\tkz@unknownfalse\fi
-  \iftkz@unknown\advance\tkzprim@d by 2 %
- \tkz@repeat
-\fi
-\iftkz@prime\tkzIsAPrimtrue\else\tkzIsAPrimfalse\fi
-}%
-%<--------------------------------------------------------------------------–>
-% #2 divide #1 ?
-%<--------------------------------------------------------------------------–>
-\def\tkzFindFactor#1#2{% 
-\tkzprim@a#1 \tkzprim@b#2
-\tkzprim@r#1    
-\divide\tkzprim@a by\tkzprim@b%
-\multiply\tkzprim@a by\tkzprim@b% 
-\advance\tkzprim@r by-\tkzprim@a%
-\ifnum\tkzprim@r=0 \tkzIsAFactortrue\else\tkzIsAFactorfalse\fi}% 
-%<--------------------------------------------------------------------------–>
-% find pgcd of #1 and #2 result in \tkz@mathresult and \theprim@a
-%<--------------------------------------------------------------------------–>
-\def\tkz@pgcd#1#2{%   test si l'un est nul
-
-\tkzprim@a#1 \tkzprim@b#2
-\tkz@test@true
-\ifnum\tkzprim@a=0 \tkz@test@false\tkzprim@a\tkzprim@b\fi
-\ifnum\tkzprim@b=0 \tkz@test@false\tkzprim@b\tkzprim@a\fi  
-\@whilesw\iftkz@test@ \fi{%
-\ifnum\tkzprim@a=\tkzprim@b\tkz@test@false
-\else
- \ifnum\tkzprim@a>\tkzprim@b%
- \advance \tkzprim@a by-\tkzprim@b
-\else \advance \tkzprim@b by-\tkzprim@a\fi
-\fi}%
-\edef\tkz@mathresult{\number\tkzprim@a}}%
-%<--------------------------------------------------------------------------–>
-%                   Simplification d'une fraction
-% #2 if #2<>1 then frac with pi
-%<--------------------------------------------------------------------------–>
-\def\tkz@reducfrac#1#2{%
-\ifnum#1<0\relax%
-   \tkz@prim@a 0 
-   \advance\tkz@prim@a by -#1
- \else
-    \tkz@prim@a#1 %
- \fi
-  \tkz@prim@b#2 %
-  \tkz@pgcd{\tkz@prim@a}{\tkz@prim@b}% 
- \ifnum\tkz@prim@a=0%
-   \tkz@prim@a#1 %
-   \tkz@prim@b#2 %
- \else 
-   \tkz@prim@a#1 
-   \tkz@prim@b#2 
-   \divide \tkz@prim@a by\tkz@mathresult   
-   \divide \tkz@prim@b by\tkz@mathresult  
-\fi
-\def\tkz@rfrac{$\frac{\the\tkz@prim@a\pi}{\the\tkz@prim@b}$}
-% modif for pi
- \ifnum\tkz@prim@a=0%
-    \global\def\tkz@rfrac{}%
- \else
- \ifnum\tkz@prim@b=1 %
-    \ifnum\tkz@prim@a=1 %
-      \global\def\tkz@rfrac{$\scriptstyle{\pi}$}%
-      \else
-       \ifnum\tkz@prim@a=-1%
-          \global\def\tkz@rfrac{$\scriptstyle{-\pi}$}%
-        \else
-          \global\def\tkz@rfrac{$\scriptstyle{\the\tkz@prim@a\pi}$}%
-       \fi\fi
- \else 
-   \ifnum\tkz@prim@a=1 %
-       \global\def\tkz@rfrac{$\frac{\pi}{\the\tkz@prim@b}$}%
-     \else
-       \ifnum\tkz@prim@a=-1 %
-          \global\def\tkz@rfrac{$\frac{-\pi}{\the\tkz@prim@b}$}%
-        \else 
-           \global\def\tkz@rfrac{$\frac{\the\tkz@prim@a\pi}{\the\tkz@prim@b}$}%
- \fi\fi\fi\fi
-}%
-
-
-
-\endinput

tkz-berge.sty

-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    %                                                               %
-    %              tkz-berge.sty      encodage : utf8               %
-    %                                                               %
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    %                                                               %
-    %           Créé par Alain Matthes le 08-05-2007.               %
-    %        contribution :  Rafael Villarroel 2007   (RV)          %
-    %                                                               %
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%% Objet :  Création de graphes
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tkz-berge}[13/01/2009 v 2.8 tkz-berge for named graphs]
-% modif Doyle form 1
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\RequirePackage{tkz-graph,tkz-arith}
-%                             NAMED GRAPHS
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                         Graphes cls
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\define@cmdkey  [GR] {cl} {L}{}
-\define@boolkey [GR] {cl} {Math}[true]{}
-\define@boolkey [GR] {cl} {inv}[true]{}
-\define@cmdkey  [GR] {cl} {RA}{}
-\define@cmdkey  [GR] {cl} {RB}{}
-\define@cmdkey  [GR] {cl} {RC}{}
-\define@cmdkey  [GR] {cl} {RD}{}
-\define@cmdkey  [GR] {cl} {RE}{}
-\define@cmdkey  [GR] {cl} {RS}{}
-\define@cmdkey  [GR] {cl} {prefix}{}
-\define@cmdkey  [GR] {cl} {prefixx}{}
-\define@cmdkey  [GR] {cl} {prefixxx}{}
-\define@cmdkey  [GR] {cl} {prefixxxx}{}
-\define@cmdkey  [GR] {cl} {prefixxxxx}{}
-\define@cmdkey  [GR] {cl} {form}{}
-\define@cmdkey  [GR] {cl} {num}{}
-\presetkeys     [GR] {cl} {RA         = 4,%
-                           RB         = 3,%
-                           RC         = 2,%
-                           RD         = 1,%
-                           RE         = 0.5,%
-                           RS         = 0,%
-                           form       = 1,%
-                           prefix     = a,%
-                           prefixx    = b,%
-                           prefixxx   = c,%
-                           prefixxxx  = d,%
-                           prefixxxxx = e,%
-                           num        = {},%
-                           Math       = false}{}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                      Tools Graphes particuliers
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                           Some tools
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\def\gr@math@sep{_}
-
-\newcommand*{\write@math}[3]{%
-            \Vertex[x = #1,y = #2,%
-                    L = \cmdGR@cl@prefix\gr@math@sep{#3}]{\cmdGR@cl@prefix#3}}
-\newcommand*{\write@nomath}[3]{%
-            \Vertex[x = #1,y = #2]{\cmdGR@cl@prefix#3}}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                           Empty graphs
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%
-\newcommand*{\grEmptyCycle}[2][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \pgfmathsetcounter{tkzb@temp}{#2-1}
-   \foreach \x in  {0,...,\thetkzb@temp}{%
-       \pgfmathparse{360/#2*\x}
-       \let\tkz@angle\pgfmathresult%
-       \ifGR@cl@Math%
-           \presetkeys [GR] {vertex} {Math = true}{}%
-           \Vertex[a = \tkz@angle,%
-                   d = \cmdGR@cl@RA,%
-                   L = \cmdGR@cl@prefix\gr@math@sep{\x}]{\cmdGR@cl@prefix\x}%
-       \else%
-           \Vertex[a = \tkz@angle,%
-                   d = \cmdGR@cl@RA]{\cmdGR@cl@prefix\x}%
-       \fi%
-       }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                         grEmptyPath  from (RV)
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-
-\newcommand*{\grEmptyPath}[2][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \pgfmathsetcounter{tkzb@ca}{#2-1} 
-    \ifcase\cmdGR@cl@form
-    \or
-      \def\tkzb@result{0}
-       \foreach \x in  {0,...,\thetkzb@ca}{%
-         \pgfmathparse{\cmdGR@cl@RA*(\x)}
-         \let\tkzb@result\pgfmathresult
-         \ifGR@cl@Math%
-           \presetkeys [GR] {vertex} {Math = true}{}%
-           \ifthenelse{\equal{\cmdGR@cl@num}{}}{%
-             \write@math{\tkzb@result}{\cmdGR@cl@RS}{\x}}{%
-             \write@math{\tkzb@result}{\cmdGR@cl@RS}{\x;\cmdGR@cl@num}}%
-         \else
-           \ifthenelse{\equal{\cmdGR@cl@num}{}}{%
-             \write@nomath{\tkzb@result}{\cmdGR@cl@RS}{\x}}{%
-             \write@nomath{\tkzb@result}{\cmdGR@cl@RS}{\x;\cmdGR@cl@num}}%
-         \fi}%
-    \or
-    \foreach \x in  {0,...,\thetkzb@ca}{%
-       \pgfmathparse{\cmdGR@cl@RA*(\x)}
-       \let\tkzb@result\pgfmathresult
-       \ifGR@cl@Math%
-           \presetkeys [GR] {vertex} {Math = true}{}%
-           \ifthenelse{\equal{\cmdGR@cl@num}{}}{%
-           \write@math{\cmdGR@cl@RS}{\tkzb@result}{\x}}{%
-           \write@math{\cmdGR@cl@RS}{\tkzb@result}{\cmdGR@cl@num;\x}}%
-       \else
-           \ifthenelse{\equal{\cmdGR@cl@num}{}}{%
-           \write@nomath{\cmdGR@cl@RS}{\tkzb@result}{\x}}{%
-           \write@nomath{\cmdGR@cl@RS}{\tkzb@result}{\cmdGR@cl@num;\x}}%
-       \fi}%
-    \fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grEmptyStar
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grEmptyStar}[2][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \pgfmathsetcounter{tkzb@ca}{#2-1}
-   \ifGR@cl@Math\presetkeys [GR] {vertex} {Math = true}{}%
-     \write@math{0}{0}{\thetkzb@ca}%
-   \else
-     \write@nomath{0}{0}{\thetkzb@ca}%
-   \fi
-   \grEmptyCycle[#1]{\thetkzb@ca}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grEmptyGrid
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand{\grEmptyGrid}[3][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \pgfmathsetcounter{tkzb@ca}{#2-1}
-   \pgfmathsetcounter{tkzb@cb}{#3-1}
-   \foreach \x in {0,...,\thetkzb@ca}{%
-      \foreach \y in {0,...,\thetkzb@cb}{%
-      \ifGR@cl@Math\presetkeys [GR] {vertex} {Math = true}{}%
-         \write@math{\cmdGR@cl@RA*\x}{\cmdGR@cl@RB*\y}{\x;\y}%
-      \else
-         \write@nomath{\cmdGR@cl@RA*\x}{\cmdGR@cl@RB*\y}{\x;\y}%
-      \fi}%
-   }
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                             grEmptyLadder
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grEmptyLadder}[2][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \grEmptyPath[#1,RS=0]{#2}
-  \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-  \edef\tkzb@rtemp{\cmdGR@cl@RB}
-  \grEmptyPath[#1,prefix=\tkzb@ptemp,RS=\tkzb@rtemp]{#2}
-\endgroup%
-}
-
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 Edges 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeInGraphFromOneToComp}[3]{% #4 
-\begingroup%
-   \pgfmathsetcounter{tkzb@ta}{#2-1}
-   \foreach \cx in  {0,...,\thetkzb@ta}{%
-        \ifthenelse{\equal{\cx}{#3}}{}{\Edge(#1#3)(#1\cx)}%
-        }%
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% new tool EdgeInGraphLoop loop 0--1--2.........n--0
-% star 0--1--2.........n-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeInGraphLoop}{\@ifstar%
-                              \EdgeInGraphLoopStar%
-                              \EdgeInGraphLoopNoStar}
-\newcommand*{\EdgeInGraphLoopNoStar}[2]{% #4 
-\begingroup%
-    \pgfmathsetcounter{tkzb@ta}{#2-1}
-    \setcounter{tkzb@next}{0}
-    \Edge(#1\thetkzb@ta)(#1\thetkzb@next)
-    \pgfmathaddtocounter{tkzb@ta}{-1}
-    \foreach \x in  {0,...,\thetkzb@ta}{%
-        \stepcounter{tkzb@next}
-        \Edge(#1\x)(#1\thetkzb@next)%
-       }%
-\endgroup%
-}
-\newcommand*{\EdgeInGraphLoopStar}[2]{% #4 
-\begingroup%
-    \pgfmathsetcounter{tkzb@ta}{#2-2}
-    \setcounter{tkzb@next}{0}
-    \foreach \x in  {0,...,\thetkzb@ta}{%
-        \stepcounter{tkzb@next}
-        \Edge(#1\x)(#1\thetkzb@next)%
-       }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% new tool EdgeInGraphSeq sequence  i--i+1--.....--j
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeInGraphSeq}[3]{% #4 
-\begingroup%
-    \pgfmathsetcounter{tkzb@ta}{#2}
-    \pgfmathsetcounter{tkzb@tb}{#3-1}
-    \setcounter{tkzb@next}{#2}
-    \foreach \x in  {\thetkzb@ta,...,\thetkzb@tb}{%
-        \stepcounter{tkzb@next}
-        \Edge(#1\x)(#1\thetkzb@next)%
-       }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% new tool EdgeInGraphMod replace nextmod
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeInGraphMod}{\@ifstar%
-                              \EdgeInGraphModStar%
-                              \EdgeInGraphModNoStar}
-\newcommand*{\EdgeInGraphModNoStar}[3]{% #2 order
-\begingroup%
-    \pgfmathsetcounter{tkzb@ta}{#2-1}
-    \foreach \x in  {0,...,\thetkzb@ta}{%
-        \pgfmathsetcounter{tkzb@tb}{modI(\x+#3,#2)}
-        \Edge(#1\thetkzb@tb)(#1\x)%
-        }%
-\endgroup%
-}
-%#1 prefix #2 order #3 add #4 start #5 décalage
-\newcommand*{\EdgeInGraphModStar}[5]{% 
-\begingroup%
- \pgfmathsetcounter{tkzb@ta}{#4}
-  \whiledo{\value{tkzb@ta}<#2}{%
-     \pgfmathsetcounter{tkzb@next}{modI(\thetkzb@ta+#3,#2)}
-     \Edge(#1\thetkzb@ta)(#1\thetkzb@next)
-     \pgfmathaddtocounter{tkzb@ta}{#5}%
-    }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%             EdgeInGraphModLoop dep #4 add #3 mod #2 until #4
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand*{\EdgeInGraphModLoop}[4]{% #2 order
-\begingroup%
-    \setcounter{tkzb@ta}{#4}
-    \setcounter{tkzb@next}{#2}
-    \whiledo{\not\equal{\value{tkzb@next}}{#4}}{%
-        \pgfmathsetcounter{tkzb@next}{modI(\thetkzb@ta+#3,#2)}
-        \Edge(#1\thetkzb@ta)(#1\thetkzb@next)%
-        \setcounter{tkzb@ta}{\thetkzb@next}
-        }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               EdgeIdentity
-%  la version étoilée permet d'utliser une sélection
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeIdentity}{\@ifstar%
-                              \EdgeIdentityStar%
-                              \EdgeIdentityNoStar}
-\newcommand*{\EdgeIdentityNoStar}[3]{%
-\begingroup%
- \pgfmathsetcounter{tkzb@v}{#3-1}
-    \foreach \x in  {0,...,\thetkzb@v}{%
-       \Edge(#1\x)(#2\x)%
-       }%
-\endgroup%
-}
-\newcommand*{\EdgeIdentityStar}[3]{%
-\begingroup%
-    \foreach \x in  {#3}{%
-       \Edge(#1\x)(#2\x)%
-       }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%  EdgeFromOneToAll  vertex #1#3 through #2 0...#2 n-1 #5 order of the graph
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeFromOneToAll}[4]{% #4  = order of the graph
-\begingroup%
-     \pgfmathsetcounter{tkzb@v}{#4-1}
-     \foreach \x in  {0,...,\thetkzb@v}{%
-        \Edge(#1#3)(#2\x)%
-        }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%  EdgeFromOneToSeq  vertex #1#3 through #2#4...#2#5
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeFromOneToSeq}[5]{% #4 
-\begingroup%
-    \foreach \x in  {#4,...,#5}{%
-        \Edge(#1#3)(#2\x)%
-        }%
-\endgroup%
-} %<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%  EdgeFromOneToSel vertex #1#3 through #2#4...#2#5
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeFromOneToSel}[4]{% #4 
-\begingroup%
-    \foreach \x in  {#4}{%
-        \Edge(#1#3)(#2\x)%
-        }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%  EdgeFromOneToComplement  vertex #1#3 through #2#4...#2#5
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeFromOneToComp}[4]{%
-\begingroup%
-   \pgfmathsetcounter{tkzb@v}{#4-1}
-   \foreach \cx in  {0,...,\thetkzb@v}{%
-        \ifthenelse{\equal{\cx}{#3}}{}{\Edge(#1#3)(#2\cx)}%
-        }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% new tool EdgeMod replace nextmod
-% identity with step like nextmod ???
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeMod}{\@ifstar%
-                                 \EdgeModStar%
-                                 \EdgeModNoStar}
-\newcommand*{\EdgeModNoStar}[4]{%#3 order #4 step
-\begingroup%
-    \pgfmathsetcounter{tkzb@v}{#3-1}
-    \foreach \x in  {0,...,\thetkzb@v}{%
-        \pgfmathsetcounter{tkzb@tb}{modI(\x+#4,#3)}
-        \Edge(#1\x)(#2\thetkzb@tb)%
-        }%
-\endgroup%
-}
-%#1 prefix #2 prefix #3 order #4 order inf #5 step
-\newcommand*{\EdgeModStar}[5]{%
-\begingroup%
-     \setcounter{tkzb@ta}{0}
-     \whiledo{\value{tkzb@ta}<#3}{%
-        \pgfmathsetcounter{tkzb@tb}{modI(\thetkzb@ta+#4,#3)}
-        \Edge(#1\thetkzb@ta)(#2\thetkzb@tb)%
-        \pgfmathaddtocounter{tkzb@ta}{#5}}%
-\endgroup%
-}%
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     EdgeDoubleMod by RV
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\EdgeDoubleMod}[9]{
- \begingroup%
-   \foreach \x in {0,...,#9}{%
-      \pgfmathsetcounter{tkzb@cc}{modI(#3+(#4*\x),#2)}
-      \pgfmathsetcounter{tkzb@next}{modI(#7+(#8*\x),#6)}
-      \Edge(#1\thetkzb@cc)(#5\thetkzb@next)
-    }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grPath
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grPath}[2][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-     \grEmptyPath[#1]{#2}
-     \ifthenelse{\equal{\cmdGR@cl@num}{}}{%
-      \ifthenelse{\equal{#2}{1}}{}{\EdgeInGraphLoop*{\cmdGR@cl@prefix}{#2}}}{%
-        \ifthenelse{\equal{#2}{1}}{}{%
-        \ifcase\cmdGR@cl@form
-        \or
-          \pgfmathsetcounter{tkzb@ta}{#2-2}
-          \setcounter{tkzb@next}{0}
-          \foreach \x in  {0,...,\thetkzb@ta}{%
-              \stepcounter{tkzb@next}
-              \Edge(\cmdGR@cl@prefix\x;\cmdGR@cl@num)%
-                   (\cmdGR@cl@prefix\thetkzb@next;\cmdGR@cl@num)%
-              }%
-           \or
-          \EdgeInGraphLoop*{\cmdGR@cl@prefix\cmdGR@cl@num;}{#2}
-          \fi%
-}}
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grGrid
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grGrid}[3][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-   \grEmptyGrid[#1]{#2}{#3}
-   \pgfmathsetcounter{tkzb@ca}{#2-2}
-   \pgfmathsetcounter{tkzb@cb}{#3-2}
-   \foreach \x in {0,...,\thetkzb@ca}{%
-       \foreach \y in {0,...,\thetkzb@cb}{%
-          \pgfmathsetcounter{tkzb@cc}{\x+1}
-          \pgfmathsetcounter{tkzb@cd}{\y+1}
-          \Edge(\cmdGR@cl@prefix\x;\y)%
-               (\cmdGR@cl@prefix\x;\thetkzb@cd)
-          \Edge(\cmdGR@cl@prefix\x;\y)%
-               (\cmdGR@cl@prefix\thetkzb@cc;\y)%
-          }%
-      }%
-   \pgfmathsetcounter{tkzb@ca}{#2-2}
-   \pgfmathsetcounter{tkzb@cb}{#3-1}
-
-  \foreach \x in {0,...,\thetkzb@ca}{%
-      \pgfmathsetcounter{tkzb@cc}{\x+1}
-      \Edge(\cmdGR@cl@prefix\x;\thetkzb@cb)%
-           (\cmdGR@cl@prefix\thetkzb@cc;\thetkzb@cb)%
-      }%
-   \pgfmathsetcounter{tkzb@ca}{#2-1}
-   \pgfmathsetcounter{tkzb@cb}{#3-2}
-  \foreach \y in {0,...,\thetkzb@cb}{%
-      \pgfmathsetcounter{tkzb@cd}{\y+1}
-      \Edge(\cmdGR@cl@prefix\thetkzb@ca;\y)%
-           (\cmdGR@cl@prefix\thetkzb@ca;\thetkzb@cd)%
-   }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                             grComplete  
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grComplete}[2][]{% #1 options #2 ordre du graphe
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \grEmptyCycle[#1]{#2}%
-  \pgfmathsetcounter{tkzb@ca}{#2-1}
-  \foreach \ia in {0,...,\thetkzb@ca}%
-     {\foreach \ib in {\ia,...,\thetkzb@ca}
-     {\Edge(\cmdGR@cl@prefix\ia)(\cmdGR@cl@prefix\ib)}%
-      }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grCycle
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grCycle}[2][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}
-   \grEmptyCycle[#1]{#2}
-   \EdgeInGraphLoop{\cmdGR@cl@prefix}{#2}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grLCF
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand{\grLCF}[3][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \setcounter{tkzb@ca}{#3}
-   \setcounter{tkzb@cb}{0} 
-   \foreach \x in {#2}{\stepcounter{tkzb@cb}}
-   \pgfmathsetcounter{tkzb@cc}{\thetkzb@ca * \thetkzb@cb}
-   \setcounter{tkzb@cb}{\thetkzb@cc}
-   \grCycle[#1]{\thetkzb@cc}
-%<––––––––––––––––––––––––– End   Vertex ––––––––––––––––––––––––––––––––––––>
-   \pgfmathsetcounter{tkzb@ca}{#3-1}
-   \setcounter{tkzb@v}{0}
-   \foreach \k in  {0,...,\thetkzb@ca}{%
-     \foreach \n in  {#2}{%
-         \ifthenelse{\n < 0}{%
-            \pgfmathsetcounter{tkzb@cb}{\n+\thetkzb@cc}}{%
-            \pgfmathsetcounter{tkzb@cb}{\n}}
-         \pgfmathsetcounter{tkzb@next}%
-                           {modI(\thetkzb@v+\thetkzb@cb,\thetkzb@cc)}
-         \Edge(\cmdGR@cl@prefix\thetkzb@v)(\cmdGR@cl@prefix\thetkzb@next)
-         \stepcounter{tkzb@v}%
-         }%
-      }%
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grStar
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grStar}[2][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \grEmptyStar[#1]{#2}
-   \pgfmathsetcounter{tkzb@temp}{#2-1}
-   \EdgeInGraphFromOneToComp{\cmdGR@cl@prefix}{#2}{\thetkzb@temp}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grWheel
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grWheel}[2][]{
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \grStar[#1]{#2}
-    \pgfmathsetcounter{tkzb@v}{#2-1}
-    \EdgeInGraphLoop{\cmdGR@cl@prefix}{\thetkzb@v}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                grSQCircle
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grSQCycle}[2][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \grCycle[#1]{#2}%
-    \EdgeInGraphMod{\cmdGR@cl@prefix}{#2}{2}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                             grLadder
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grLadder}[2][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \grPath[#1,RS=0]{#2}{0}
-  \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-  \edef\tkzb@rtemp{\cmdGR@cl@RS}
-  \grPath[#1,prefix=\tkzb@ptemp,RS=\tkzb@rtemp]{#2}
-  \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{#2}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grPrism
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grPrism}[2][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \begin{scope}[rotate=45]
-        \grCycle[#1]{#2}
-        \edef\tkzb@rtemp{\cmdGR@cl@RB}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \grCycle[#1,RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{#2}
-        \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{#2}
-    \end{scope}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grCompleteBipartite 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grCompleteBipartite}[3][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \pgfmathsetcounter{tkzb@ca}{#2-1} 
-  \pgfmathparse{(\cmdGR@cl@RA * \thetkzb@ca) /2}
-  \let\tkzRAxpos\pgfmathresult%
-  \pgfmathsetcounter{tkzb@ca}{#3-1} 
-  \pgfmathparse{(\cmdGR@cl@RB * \thetkzb@ca) /2}
- \let\tkzRBxpos\pgfmathresult%
-  \ifdim\tkzRBxpos pt > \tkzRAxpos pt\relax%
-   \pgfmathadd{\tkzRBxpos}{-\tkzRAxpos}
-   \let\tkzaxpos\pgfmathresult%
-   \def\tkzbxpos{0}
-   \else%
-    \pgfmathadd{\tkzRAxpos}{-\tkzRBxpos}
-    \let\tkzbxpos\pgfmathresult%
-    \def\tkzaxpos{0}
-   \fi%
-   \begin{scope}[xshift=\tkzaxpos cm]
-     \grEmptyPath[#1,RS=0]{#2}
-   \end{scope}
-   \begin{scope}[xshift=\tkzbxpos cm]
-     \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-     \edef\tkzb@rtemp{\cmdGR@cl@RS}
-     \edef\tkzb@stemp{\cmdGR@cl@RB}
-     \grEmptyPath[#1,RA=\tkzb@stemp,prefix=\tkzb@ptemp,RS=\tkzb@rtemp]{#3}
-   \end{scope}
-   \pgfmathsetcounter{tkzb@temp}{#2-1}
-   \pgfmathsetcounter{tkzb@v}{#3-1}
-   \foreach \cpx in {0,...,\thetkzb@v}{%
-     \EdgeFromOneToAll{\cmdGR@cl@prefixx}{\cmdGR@cl@prefix}{\cpx}{#2}
-     }%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grTriangularGrid 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grTriangularGrid}[2][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}
-    \ifcase\cmdGR@cl@form
-      \or
-%<––––––––––––––––––––– form 1 equilateral triangle ––––––––––––––––––––––––>
-     \pgfmathsetcounter{tkzb@ca}{#2-1}
-     \pgfmathsetcounter{tkzb@cb}{#2}
-     \foreach \lg in {0,...,\thetkzb@ca}{%
-        \pgfmathsetcounter{tkzb@cb}{#2-\lg}
-        \setcounter{tkzb@cb}{\thetkzb@cb}
-        \edef\tkzb@rtemp{\cmdGR@cl@RA}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefix}
-        \pgfmathmultiply{\cmdGR@cl@RA}{\lg}
-        \let\myresult\pgfmathresult
-        \pgfmathparse{\cmdGR@cl@RA*\lg/2}
-        \let\tkzaxpos\pgfmathresult
-        \begin{scope}[xshift=\tkzaxpos cm]
-           \grPath[#1,%
-                   RA     = \tkzb@rtemp,%
-                   RS     = \myresult,%
-                   prefix = \tkzb@ptemp,%
-                   num    = \lg]{\thetkzb@cb}%
-        \end{scope}%
-     }
-    \or
-%<––––––––––––––––––––––––––– form 2 right triangle ––––––––––––––––––––––––>
-    \pgfmathsetcounter{tkzb@ca}{#2-1}
-    \pgfmathsetcounter{tkzb@cb}{#2}
-    \foreach \lg in {0,...,\thetkzb@ca}{%
-       \pgfmathsetcounter{tkzb@cb}{#2-\lg}
-       \setcounter{tkzb@cb}{\thetkzb@cb}
-       \edef\tkzb@rtemp{\cmdGR@cl@RA}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefix}
-       \pgfmathmultiply{\cmdGR@cl@RA}{\lg}
-       \let\myresult\pgfmathresult
-       \grPath[#1,%
-               RA     = \tkzb@rtemp,%
-               RS     = \myresult,%
-               prefix = \tkzb@ptemp,%
-               num    = \lg,form=1]{\thetkzb@cb}%
-    }
-    \or
-     \pgfmathsetcounter{tkzb@ca}{#2-1}
-     \pgfmathsetcounter{tkzb@cb}{#2}
-     \foreach \lg in {0,...,\thetkzb@ca}{%
-        \pgfmathsetcounter{tkzb@cb}{#2-\lg}
-        \setcounter{tkzb@cb}{\thetkzb@cb}
-        \edef\tkzb@rtemp{\cmdGR@cl@RA}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefix}
-        \pgfmathmultiply{\cmdGR@cl@RA}{\lg}
-        \let\myresult\pgfmathresult
-        \begin{scope}[xshift=\myresult cm]
-           \grPath[#1,%
-                   RA     = \tkzb@rtemp,%
-                   RS     = \myresult,%
-                   prefix = \tkzb@ptemp,%
-                   num    = \lg,form=1]{\thetkzb@cb}%
-        \end{scope}%
-     }
-  \fi%
-    \pgfmathsetcounter{tkzb@ca}{#2-2}
-    \foreach \x in  {0,...,\thetkzb@ca}{%
-       \pgfmathsetcounter{tkzb@v}{\thetkzb@ca-\x}
-       \foreach \y in  {0,...,\thetkzb@v}{%
-          \pgfmathsetcounter{tkzb@cb}{\y+1}
-          \Edge(\cmdGR@cl@prefix\x;\y)(\cmdGR@cl@prefix\x;\thetkzb@cb)
-          \pgfmathsetcounter{tkzb@temp}{\x+1}
-          \Edge(\cmdGR@cl@prefix\x;\thetkzb@cb)%
-               (\cmdGR@cl@prefix\thetkzb@temp;\y)
-       }%
-    }
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grHeawood
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grHeawood}[1][]{% #1 options #2 ordre du graphe
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \grCycle[#1]{14}
-  \EdgeInGraphMod*{\cmdGR@cl@prefix}{14}{5}{0}{2}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grCirculant #1 option #2 vertex #3 add k
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grCirculant}[3][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}
-    \grEmptyCycle[#1]{#2}%
-    \primality{#2}%
-    \ifthenelse{\boolean{tkzaIsAPrim}}{%
-       \foreach \kci in {#3}{%
-          \EdgeInGraphMod{\cmdGR@cl@prefix}{#2}{\kci}
-          }}{%
-       \foreach \kci in {#3}{%
-          \tkzFindFactor{#2}{\kci}%
-          \ifthenelse{\boolean{tkzaIsAFactor}}{%
-             \pgfmathsetcounter{tkzb@ca}{\kci-1}
-             \foreach \start in {0,...,\thetkzb@ca}{%
-                \setcounter{tkzb@int}{\start}%
-                \setcounter{tkzb@next}{#2}%
-                \whiledo{\not\equal{\value{tkzb@next}}{\start}}{%
-                  \pgfmathsetcounter{tkzb@next}{modI(\thetkzb@int+\kci,#2)}
-                  \Edge(\cmdGR@cl@prefix\thetkzb@int)%
-                       (\cmdGR@cl@prefix\thetkzb@next)%
-                  \pgfmathsetcounter{tkzb@int}{\thetkzb@next}%
-                  }%
-               }}{%
-       \EdgeInGraphMod{\cmdGR@cl@prefix}{#2}{\kci}}
-       }}%
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grPetersenG
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grGeneralizedPetersen}[3][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \grCycle[#1]{#2}
-   \edef\tkzb@rtemp{\cmdGR@cl@RB}
-   \edef\tkzb@pptemp{\cmdGR@cl@prefixx}
-   \edef\tkzb@ptemp{\cmdGR@cl@prefix}
-   \grCirculant[#1,RA=\tkzb@rtemp,prefix=\tkzb@pptemp]{#2}{#3}
-   \EdgeIdentity{\tkzb@ptemp}{\cmdGR@cl@prefixx}{#2}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grPetersen
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grStartwo}[2][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \pgfmathsetcounter{tkzb@v}{3*#2-2}
-   \pgfmathsetcounter{tkzb@ca}{3*#2-1}
-   \grEmptyCycle[#1]{\thetkzb@ca}
-   \EdgeInGraphMod{\cmdGR@cl@prefix}{\thetkzb@ca}{#2}%
-\endgroup%
-}
-
-\newcommand*{\grPetersen}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-      \or
-        \grCycle[#1]{5}%
-        \edef\tkzb@rtemp{\cmdGR@cl@RB}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \grStartwo[#1,RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{2}
-        \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{5}
-      \or
-         \grCycle[#1]{6}
-         \begin{scope}[rotate=30]
-            \edef\tkzb@rtemp{\cmdGR@cl@RB}
-            \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-            \grStar[#1,RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{4}
-          \end{scope}
-          \setcounter{tkzb@ca}{2}
-          \foreach \x in  {0,...,5}{%
-             \ifthenelse{\equal{\thetkzb@ca}{-1}}{%
-                \setcounter{tkzb@ca}{2}}{%
-                }%
-                \Edge(\cmdGR@cl@prefix\x)(\cmdGR@cl@prefixx\thetkzb@ca)
-                \addtocounter{tkzb@ca}{-1}%
-             }%
-     \or
-       \grEmptyStar[#1]{10}
-       \EdgeInGraphLoop{\cmdGR@cl@prefix}{9}
-       \EdgeInGraphMod*{\cmdGR@cl@prefix}{9}{4}{0}{3}
-       \foreach \x in  {2,5,8}{%
-         \Edge(\cmdGR@cl@prefix\x)(\cmdGR@cl@prefix 9)}%
-     \fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               grPlatonic
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grTetrahedral}[1][]{% 
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \begin{scope}[rotate=90]
-    \grWheel[#1]{4}%
-  \end{scope}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                       grOctahedral
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grOctahedral}[1][]{% 
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \grComplete[#1]{3}%
-   \begin{scope}[rotate=-60]
-          \edef\tkzb@rtemp{\cmdGR@cl@RB}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-          \grComplete[#1,RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{3}%
-   \end{scope}
-   \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{3}
-   \EdgeMod{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{3}{1}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                           grCubicalGraph
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grCubicalGraph}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-       \grCycle[#1]{4}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \grCycle[#1,RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{4}
-    \ifcase\cmdGR@cl@form
-      \or
-        \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{4}
-      \or
-        \EdgeMod*{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{4}{1}{2}
-        \EdgeMod*{\cmdGR@cl@prefixx}{\cmdGR@cl@prefix}{4}{1}{2}
-     \fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                         grIcosahedral
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grIcosahedral}[1][]{% 
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-      \or
-       \grCycle[#1]{6}%
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-       \grCirculant[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{6}{2}
-       \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{6}
-      \EdgeMod{\cmdGR@cl@prefixx}{\cmdGR@cl@prefix}{6}{1}
-       \EdgeMod{\cmdGR@cl@prefixx}{\cmdGR@cl@prefix}{6}{-1}
-      \or
-       \grCycle[#1]{3}
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-       \grCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{6}%
-       \begin{scope}[rotate=60]
-         \edef\tkzb@rtemp{\cmdGR@cl@RC}
-         \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-         \grCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{3}%
-       \end{scope}
-       \setcounter{tkzb@ca}{2}
-       \foreach \st in  {5,0,1}{%
-         \foreach \v in  {0,1,2}{%
-           \pgfmathsetcounter{tkzb@next}{modI((\thetkzb@ca*\v)+\st,6)}%
-           \Edge(\cmdGR@cl@prefix\v)(\cmdGR@cl@prefixx\thetkzb@next)
-           }%
-         }%
-       \setcounter{tkzb@ca}{2}
-       \foreach \v in  {0,1,2}{%
-         \foreach \st in  {0,1,2}{%
-           \pgfmathsetcounter{tkzb@next}{modI(\thetkzb@ca*\v+\st,6)}%
-           \Edge(\cmdGR@cl@prefixxx\v)(\cmdGR@cl@prefixx\thetkzb@next)
-           }%
-        }%
-    \fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                       grDodecahedral
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grDodecahedral}[1][]{% 
-\begingroup%
-\setkeys[GR]{cl}{#1}%
-   \ifcase\cmdGR@cl@form
-     \or
-       \grCycle[#1]{10}
-        \edef\tkzb@rtemp{\cmdGR@cl@RB}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \grCirculant[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{10}{2}
-        \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{10}
-      \or
-       \grCycle[#1]{5}
-       \begin{scope}[rotate=36]
-          \edef\tkzb@rtemp{\cmdGR@cl@RC}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-          \grEmptyCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{5}
-       \end{scope}
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \grEmptyCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{5}
-        \begin{scope}[rotate=36]
-          \edef\tkzb@rtemp{\cmdGR@cl@RD}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixxxx}
-          \grCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{5}%
-        \end{scope}
-        \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{5}
-        \EdgeIdentity{\cmdGR@cl@prefixxx}{\cmdGR@cl@prefixxxx}{5}
-        \EdgeIdentity{\cmdGR@cl@prefixx}{\cmdGR@cl@prefixxx}{5}
-        \EdgeMod{\cmdGR@cl@prefixx}{\cmdGR@cl@prefixxx}{5}{-1}
-     \or
-       \grCycle[#1]{5}
-       \begin{scope}[rotate=36]
-         \edef\tkzb@rtemp{\cmdGR@cl@RC}
-         \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-         \grEmptyCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{5}
-       \end{scope}
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-       \grCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{10}
-       \EdgeInGraphLoop{\cmdGR@cl@prefixxx}{5}
-       \EdgeDoubleMod{\cmdGR@cl@prefix}{5}{0}{1}%
-                     {\cmdGR@cl@prefixx}{10}{0}{2}{5}
-       \EdgeDoubleMod{\cmdGR@cl@prefixxx}{5}{0}{1}%
-                     {\cmdGR@cl@prefixx}{10}{1}{2}{5}
-     \or
-       \grLCF[#1]{10,7,4,-4,-7,10,-4,7,-7,4}{2}
-     \or
-        \grCycle[#1]{10}
-        \edef\tkzb@rtemp{\cmdGR@cl@RB}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \grEmptyCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{6}
-        \begin{scope}[rotate=45]
-          \edef\tkzb@rtemp{\cmdGR@cl@RC}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-          \grEmptyCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{4}%
-        \end{scope}
-       \setcounter{tkzb@ca}{0}
-       \foreach \v in  {1,4,6,9}{%
-           \Edge(\cmdGR@cl@prefix\v)(\cmdGR@cl@prefixxx\thetkzb@ca)
-           \stepcounter{tkzb@ca}
-           }%
-       \setcounter{tkzb@ca}{0}
-       \foreach \v in  {2,1,5,4}{%
-           \Edge(\cmdGR@cl@prefixx\v)(\cmdGR@cl@prefixxx\thetkzb@ca)
-           \stepcounter{tkzb@ca}
-           }%
-       \setcounter{tkzb@ca}{0}
-       \foreach \v in  {0,2,3,5,7,8}{%
-           \Edge(\cmdGR@cl@prefix\v)(\cmdGR@cl@prefixx\thetkzb@ca)
-           \stepcounter{tkzb@ca}
-           }%
-       \Edge(\cmdGR@cl@prefixxx0)(\cmdGR@cl@prefixxx3)
-       \Edge(\cmdGR@cl@prefixxx1)(\cmdGR@cl@prefixxx2)
-       \Edge(\cmdGR@cl@prefixx0)(\cmdGR@cl@prefixx1)
-       \Edge(\cmdGR@cl@prefixx0)(\cmdGR@cl@prefixx5)
-       \Edge(\cmdGR@cl@prefixx3)(\cmdGR@cl@prefixx2)
-       \Edge(\cmdGR@cl@prefixx3)(\cmdGR@cl@prefixx4)
-\fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grMobiusKantor
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grMobiusKantor}[1][]{% #1 options #2 ordre du graphe
-\begingroup%
-  \setkeys[GR]{cl}{#1}
-   \ifcase\cmdGR@cl@form
-     \or
-       \grCycle[#1]{16}
-       \EdgeInGraphMod*{\cmdGR@cl@prefix}{16}{5}{0}{2}
-     \or
-       \grCycle[#1]{8}
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-       \grCirculant[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{8}{3}
-       \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{8}
-     \or
-       \grCirculant[#1]{8}{3} 
-       \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-       \grCycle[#1,RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{8}
-       \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{8}
-     \fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grMoebiusLadder
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grMobiusLadder}[2][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}
-  \grEmptyCycle[#1]{#2}
-  \pgfmathsetcounter{tkzb@temp}{#2-1}
-  \edef\tkzb@rtemp{\cmdGR@cl@RB}
-  \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-  \grEmptyCycle[RA=\tkzb@rtemp,prefix=\tkzb@ptemp]{#2}%
-  \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{#2}
-  \EdgeInGraphLoop*{\cmdGR@cl@prefix}{#2}
-  \EdgeInGraphLoop*{\cmdGR@cl@prefixx}{#2}
-  \Edge(\cmdGR@cl@prefix0)(\cmdGR@cl@prefixx\thetkzb@temp)
-  \Edge(\cmdGR@cl@prefixx0)(\cmdGR@cl@prefix\thetkzb@temp)
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grCocktailParty 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grCocktailParty}[2][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \pgfmathsetcounter{tkzb@temp}{#2-1}
-  \grPath[#1,RS=0]{#2}
-  \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-  \edef\tkzb@rtemp{\cmdGR@cl@RS}
-  \grPath[#1,prefix=\tkzb@ptemp,RS=\tkzb@rtemp]{#2}
-  \foreach \cpx in {0,...,\thetkzb@temp}{%
-      \EdgeFromOneToComp{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{\cpx}{#2}
-      }
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grCrown 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grCrown}[2][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \pgfmathsetcounter{tkzb@temp}{#2-1}
-  \grEmptyPath[#1,RS=0]{#2}
-  \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-  \edef\tkzb@rtemp{\cmdGR@cl@RS}
-  \grEmptyPath[#1,prefix=\tkzb@ptemp,RS=\tkzb@rtemp]{#2}
-  \foreach \cpx in {0,...,\thetkzb@temp}{%
-      \EdgeFromOneToComp{\cmdGR@cl@prefix}{\cmdGR@cl@prefixx}{\cpx}{#2}
-      }
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grMcGee 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grMcGee}[1][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \grLCF[#1]{-12,7,-7}{8}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grRobertson 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grRobertson}[1][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \grLCF[#1]{8,4,7,4,8,5,7,4,7,8,4,5,7,8,4,8,4,8,4}{1}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grRobertsonWegner 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grRobertsonWegner}[1][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-    \grLCF[#1]{6,12}{15}
-    \EdgeInGraphMod{\cmdGR@cl@prefix}{30}{9}{1}{6}
-    \EdgeInGraphMod*{\cmdGR@cl@prefix}{30}{15}{2}{6}
-    \EdgeInGraphMod*{\cmdGR@cl@prefix}{30}{9}{3}{6}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grDoyle 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grDoyle}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-      \or
-        \grCycle[#1]{9}
-        \begin{scope}[rotate=18]
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RB}
-          \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{9}{2}
-        \end{scope}
-        \EdgeMod{\cmdGR@cl@prefixx}{\cmdGR@cl@prefix}{9}{1}
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-        \edef\tkzb@rtemp{\cmdGR@cl@RC}
-        \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{9}{4}
-        \EdgeIdentity{\cmdGR@cl@prefix}{\cmdGR@cl@prefixxx}{9}
-        \EdgeMod{\cmdGR@cl@prefixx}{\cmdGR@cl@prefixxx}{9}{1}
-      \or
-        \grCycle[#1]{27}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{0}{3}
-                      {\cmdGR@cl@prefix}{27}{13}{3}{9}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{1}{3}
-                      {\cmdGR@cl@prefix}{27}{5}{3}{9}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{0}{3}
-                      {\cmdGR@cl@prefix}{27}{20}{3}{9}
-      \or
-        \grCycle[#1]{27}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{17}{1}
-                      {\cmdGR@cl@prefix}{27}{10}{-2}{4}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{26}{1}
-                      {\cmdGR@cl@prefix}{27}{19}{-2}{4}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{8}{1}
-                      {\cmdGR@cl@prefix}{27}{1}{-2}{4}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{4}{1}
-                      {\cmdGR@cl@prefix}{27}{27}{-2}{3}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{8}{1}
-                      {\cmdGR@cl@prefix}{27}{1}{-2}{4}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{14}{1}
-                      {\cmdGR@cl@prefix}{27}{7}{-2}{2}
-        \EdgeDoubleMod{\cmdGR@cl@prefix}{27}{23}{1}
-                      {\cmdGR@cl@prefix}{27}{16}{-2}{2}
-        \Edge(\cmdGR@cl@prefix9)(\cmdGR@cl@prefix13)%
-        \Edge(\cmdGR@cl@prefix18)(\cmdGR@cl@prefix22)%
-    \fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grDesargues 
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grDesargues}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-      \or
-        \grLCF[#1]{5,-5,9,-9}{5}
-      \or
-         \grGeneralizedPetersen[#1]{10}{3}
-     \fi
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grKonisberg
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% #1 prefix  #2 indice #2 prefix #3 indice choisie entre #4 et #5 ...
-\newcommand{\grKonisberg}[1][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-   \grCycle[#1]{4}
-   \Edge[style={bend left}](\cmdGR@cl@prefix1)(\cmdGR@cl@prefix2)
-   \Edge[style={bend left}](\cmdGR@cl@prefix2)(\cmdGR@cl@prefix3) 
-   \Edge(\cmdGR@cl@prefix0)(\cmdGR@cl@prefix2)
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grWong
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand{\grWong}[1][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-    \grLCF[#1]{8,4,12,4,8,4}{5}
-    \EdgeInGraphMod*{\cmdGR@cl@prefix}{30}{15}{0}{3}
-    \EdgeInGraphMod*{\cmdGR@cl@prefix}{30}{16}{1}{6}
-    \EdgeInGraphMod*{\cmdGR@cl@prefix}{30}{18}{4}{6}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grTutte
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand{\grTutteCoxeter}[1][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-    \grLCF[#1]{-13,-9,7,-7,9,13}{5}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grFoster
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand{\grFoster}[1][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-    \grLCF[#1]{17,-9,37,-37,9,-17}{15}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grFolkman
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand{\grFolkman}[1][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-  \grLCF[#1]{5,-7,-7,5}{5}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grFranklin
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand{\grFranklin}[1][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-  \grLCF[#1]{5,-5}{6}
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grAndrasfai
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-\newcommand{\grAndrasfai}[2][]{%
-\begingroup%
-   \setkeys[GR]{cl}{#1}%
-   \pgfmathsetcounter{tkza@int}{3*#2-1}
-   \grEmptyCycle[#1]{\thetkza@int}
-   \pgfmathsetcounter{tkza@tmp}{\thetkza@int/2}
-   \pgfmathsetcounter{tkza@tmp}{\thetkza@int+1}
-   \pgfmathsetcounter{tkzb@temp}{1}
-   \whiledo{\value{tkzb@temp} < \value{tkza@tmp}}{%
-      \EdgeInGraphMod*{\cmdGR@cl@prefix}{\thetkza@int}{\thetkzb@temp}{0}{1}
-      \pgfmathsetcounter{tkzb@temp}{\thetkzb@temp+3}
-      }
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grGrotzsch
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grGrotzsch}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-      \or
-     \begin{scope}[rotate=18]%
-       \grStar[#1]{6}%
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \grCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{5}%
-       \Edges(\cmdGR@cl@prefix0,\cmdGR@cl@prefixx1,%
-              \cmdGR@cl@prefix2,\cmdGR@cl@prefixx3,%
-              \cmdGR@cl@prefix4,\cmdGR@cl@prefixx0,%
-              \cmdGR@cl@prefix1,\cmdGR@cl@prefixx2,%
-              \cmdGR@cl@prefix3,\cmdGR@cl@prefixx4,\cmdGR@cl@prefix0)
-     \end{scope}
-      \or
-     \begin{scope}[rotate=18]%
-       \grStar[#1]{6}%
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RB}
-       \begin{scope}[rotate=-36]%
-          \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{5}{2}%
-       \end{scope}
-     \EdgeDoubleMod{a}{5}{0}{1}%
-                   {b}{5}{1}{1}{4}
-     \EdgeIdentity{a}{b}{5}
-     \end{scope}
-\fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grLevi
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grLevi}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-      \or
-         \grLCF[#1]{-13,-9,7,-7,9,13}{5}
-      \or
-    \grCycle[#1]{10}
-    \EdgeInGraphMod{\cmdGR@cl@prefix}{10}{5}
-    \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-    \edef\tkzb@rtemp{\cmdGR@cl@RB}
-    \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}
-    \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-    \edef\tkzb@rtemp{\cmdGR@cl@RC}
-    \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}
-    \EdgeInGraphMod{\cmdGR@cl@prefixxx}{10}{4}
-\fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grPappus
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grPappus}[1][]{%
-\begingroup%
-    \setkeys[GR]{cl}{#1}%
-    \ifcase\cmdGR@cl@form
-\or
-    \grLCF[#1]{5,7,-7,7,-7,-5}{3}
-\or
- \begin{scope}[rotate=30]%
-   \grCycle[#1]{6}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RB}
-   \grCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{6}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RC}
-   \grCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{6}
-   \EdgeDoubleMod{\cmdGR@cl@prefixxx}{6}{0}{2}%
-                 {\cmdGR@cl@prefixx}{6}{5}{2}{2}
-   \EdgeDoubleMod{\cmdGR@cl@prefixxx}{6}{5}{2}%
-                 {\cmdGR@cl@prefix}{6}{1}{2}{2}
-   \EdgeDoubleMod{\cmdGR@cl@prefixx}{6}{0}{2}%
-                 {\cmdGR@cl@prefix}{6}{0}{2}{2}
-\end{scope}
-\or
- \begin{scope}[rotate=30]
-   \grCycle[#1]{6}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RB}
-   \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{6}{2}
-          \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-          \edef\tkzb@rtemp{\cmdGR@cl@RC}
-   \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{6}
-   \EdgeIdentity{\cmdGR@cl@prefixx}{\cmdGR@cl@prefix}{6}
-   \EdgeInGraphMod{\cmdGR@cl@prefixxx}{6}{3}   
-\end{scope} 
-\fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grChvatal
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grChvatal}[1][]{%
-\begingroup%
-\setkeys[GR]{cl}{#1}%
-\ifcase\cmdGR@cl@form
-\or
-  \begin{scope}[rotate=45]
-    \grCycle[#1]{4}
-    \end{scope}
-    \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-    \edef\tkzb@rtemp{\cmdGR@cl@RB}
-  \begin{scope}[rotate=22.25]
-    \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{8}
-  \end{scope}
-  \EdgeInGraphMod{\cmdGR@cl@prefixx}{8}{4}
-  \EdgeInGraphMod*{\cmdGR@cl@prefixx}{8}{1}{1}{2}
-  \EdgeInGraphMod*{\cmdGR@cl@prefixx}{8}{3}{1}{2}
-   \EdgeDoubleMod{\cmdGR@cl@prefix}{4}{0}{1}%
-                 {\cmdGR@cl@prefixx}{8}{1}{2}{3}
-   \EdgeDoubleMod{\cmdGR@cl@prefix}{4}{0}{1}%
-                 {\cmdGR@cl@prefixx}{8}{0}{2}{3} 
-\or
-   \begin{scope}[rotate=18]
-     \grCycle[#1]{5}
-     \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-     \edef\tkzb@rtemp{\cmdGR@cl@RB}
-     \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{5}
-   \end{scope} 
-   \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-   \edef\tkzb@rtemp{\cmdGR@cl@RC} 
-   \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{2}
-   \EdgeDoubleMod{\cmdGR@cl@prefix}{5}{0}{1}%
-                 {\cmdGR@cl@prefixx}{5}{1}{1}{4}
-   \EdgeDoubleMod{\cmdGR@cl@prefix}{5}{0}{1}%
-                 {\cmdGR@cl@prefixx}{5}{4}{1}{4}
-   \EdgeFromOneToSel{\cmdGR@cl@prefixxx}{\cmdGR@cl@prefixx}{0}{4,0,1}
-   \EdgeFromOneToSel{\cmdGR@cl@prefixxx}{\cmdGR@cl@prefixx}{1}{1,2,3}
-   \Edge(\cmdGR@cl@prefixx3)(\cmdGR@cl@prefixx4)
-   \Edge(\cmdGR@cl@prefixx0)(\cmdGR@cl@prefixxx1)
-   \Edge(\cmdGR@cl@prefixx2)(\cmdGR@cl@prefixxx0)
-\or
-  \grCycle[#1]{12}
-  \Edges(\cmdGR@cl@prefix0,\cmdGR@cl@prefix6,\cmdGR@cl@prefix3,%
-         \cmdGR@cl@prefix8,\cmdGR@cl@prefix11,\cmdGR@cl@prefix5,%
-         \cmdGR@cl@prefix2,\cmdGR@cl@prefix9,\cmdGR@cl@prefix0)
-  \Edges(\cmdGR@cl@prefix1,\cmdGR@cl@prefix7,\cmdGR@cl@prefix10,%
-         \cmdGR@cl@prefix4,\cmdGR@cl@prefix1)  
-\fi  
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                 grBalaban
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\grBalaban}[1][]{%
-\begingroup%
-\setkeys[GR]{cl}{#1}%
-\ifcase\cmdGR@cl@form
-\or
-     \grCycle[#1]{50}
-     \EdgeInGraphMod*{\cmdGR@cl@prefix}{50}{9}{3}{5}
-     \EdgeInGraphMod*{\cmdGR@cl@prefix}{50}{25}{0}{5}
-     \begin{scope}[rotate=12]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \edef\tkzb@rtemp{\cmdGR@cl@RB}
-        \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}{3}
-     \end{scope}
-     \begin{scope}[rotate=24]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-        \edef\tkzb@rtemp{\cmdGR@cl@RC}
-       \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}{3}
-     \end{scope}
-     \EdgeDoubleMod{\cmdGR@cl@prefix}{50}{1}{5}%
-                   {\cmdGR@cl@prefixx}{10}{0}{1}{10}
-     \EdgeDoubleMod{\cmdGR@cl@prefix}{50}{4}{5}%
-                   {\cmdGR@cl@prefixxx}{10}{0}{1}{10}
-\or
- \begin{scope}[rotate=9]
-   \grCycle[#1]{10}
- \end{scope}
- \begin{scope}[rotate=-9]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-        \edef\tkzb@rtemp{\cmdGR@cl@RB}
-   \grCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}
- \end{scope}
- \begin{scope}[rotate=6]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-        \edef\tkzb@rtemp{\cmdGR@cl@RC}
-   \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{30}
-   \EdgeInGraphMod*{\cmdGR@cl@prefixxx}{30}{1}{0}{3}
-   \EdgeInGraphMod*{\cmdGR@cl@prefixxx}{30}{1}{1}{3}
-   \EdgeInGraphMod*{\cmdGR@cl@prefixxx}{30}{15}{1}{3}
- \end{scope}
- \begin{scope}[rotate=9]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxxx}
-        \edef\tkzb@rtemp{\cmdGR@cl@RD}
-   \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{20}
-   \EdgeInGraphMod*{\cmdGR@cl@prefixxxx}{20}{7}{0}{2}
-   \EdgeInGraphMod*{\cmdGR@cl@prefixxxx}{20}{5}{1}{2}
- \end{scope}
- \EdgeDoubleMod{\cmdGR@cl@prefix}{10}{0}{1}
-               {\cmdGR@cl@prefixxx}{30}{0}{3}{9}
- \EdgeDoubleMod{\cmdGR@cl@prefixx}{10}{0}{1}%
-               {\cmdGR@cl@prefixxx}{30}{29}{3}{9}
- \EdgeDoubleMod{\cmdGR@cl@prefixxx}{30}{0}{3}%
-               {\cmdGR@cl@prefixxxx}{20}{0}{2}{9}
- \EdgeDoubleMod{\cmdGR@cl@prefixxx}{30}{2}{3}%
-               {\cmdGR@cl@prefixxxx}{20}{1}{2}{9}
-\or
-\grEmptyCycle[#1]{10}
-\begin{scope}[rotate=9]
-      \edef\tkzb@ptemp{\cmdGR@cl@prefixx}
-      \edef\tkzb@rtemp{\cmdGR@cl@RB}
-  \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{20}
-\end{scope}
-\begin{scope}[rotate=13]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxx}
-      \edef\tkzb@rtemp{\cmdGR@cl@RC}
-  \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}
-\end{scope}
-\begin{scope}[rotate=-13]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxxx}
-      \edef\tkzb@rtemp{\cmdGR@cl@RD}
-  \grEmptyCycle[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{10}
-\end{scope}
-\begin{scope}[rotate=9]
-        \edef\tkzb@ptemp{\cmdGR@cl@prefixxxxx}
-      \edef\tkzb@rtemp{\cmdGR@cl@RE}
-  \grCirculant[#1,prefix=\tkzb@ptemp,RA=\tkzb@rtemp]{20}{6}
-\end{scope}
-   \EdgeIdentity{\cmdGR@cl@prefixx}{\cmdGR@cl@prefixxxxx}{20}
-   \EdgeDoubleMod{\cmdGR@cl@prefix}{10}{0}{1}%
-                 {\cmdGR@cl@prefixx}{20}{0}{2}{10}
-   \EdgeDoubleMod{\cmdGR@cl@prefix}{10}{0}{1}%
-                 {\cmdGR@cl@prefixx}{20}{19}{2}{10}
-   \EdgeInGraphMod{\cmdGR@cl@prefix}{10}{5}
-   \EdgeDoubleMod{\cmdGR@cl@prefixxx}{10}{0}{1}%
-                 {\cmdGR@cl@prefixx}{20}{0}{2}{10}
-   \EdgeDoubleMod{\cmdGR@cl@prefixxxx}{10}{0}{1}%
-                 {\cmdGR@cl@prefixx}{20}{19}{2}{10}
-   \EdgeDoubleMod{\cmdGR@cl@prefixxxx}{10}{0}{1}%
-                 {\cmdGR@cl@prefixxx}{10}{1}{1}{10}
-   \EdgeDoubleMod{\cmdGR@cl@prefixxxx}{10}{1}{1}%
-                 {\cmdGR@cl@prefixxx}{10}{0}{1}{10}
-\fi
-\endgroup%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     Labels
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-
-% #2 label/prefix/num
-\define@cmdkey [GR] {WL} {color}[black]{}
-\define@cmdkey [GR] {WL} {labelstyle}{}
-\define@cmdkey [GR] {WL} {size}{}
-\define@cmdkey [GR] {WL} {style}{}
-\presetkeys    [GR] {WL} {color       = black,%
-                          labelstyle  = {},%
-                          size        = {},%
-                          style       = {}}{}
-\newcommand{\grWriteExplicitLabels}[2][]{%
-\begingroup%
-  \setkeys[GR]{WL}{#1}%
-  \foreach \text/\where in {#2}{%
-      \node at (\where) {\text};
-      }%
-\endgroup%
-}
-\newcommand{\grWriteExplicitLabel}[2][]{%
-\begingroup%
-  \setkeys[GR]{cl}{#1}%
-  \node at (\where) {\text};
-\endgroup%
-}%
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                               AssignVertexLabel
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\tikzset{AssignStyle/.style={}}
-\define@cmdkey [GR] {AVL} {color}{}
-\define@cmdkey [GR] {AVL} {size}{}
-\define@cmdkey [GR] {AVL} {pos}{}
-\define@boolkey[GR] {AVL} {Math}[true]{}
-\presetkeys    [GR] {AVL} {size       = \normalsize,%
-                           color      = black,%
-                           pos        = {},%
-                           Math       = false}{} \newcommand*{\AssignVertexLabel}[4][]{%
-\begingroup%
-  \setkeys[GR]{AVL}{#1}
-  \setcounter{tkzb@ta}{0}
-  \foreach \name in {#4}{%
-  \ifGR@AVL@Math%
-     \node at (#2\thetkzb@ta) {$\textcolor{\cmdGR@AVL@color}{\cmdGR@AVL@size\name}$};
-  \else%
- \node[AssignStyle] at (#2\thetkzb@ta) {\textcolor{\cmdGR@AVL@color}{\cmdGR@AVL@size\name}};
-  \fi%
-     \stepcounter{tkzb@ta}}
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                     grEdgeForTree
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% #1 prefix  #2 indice #2 prefix #3 indice choisie entre #4 et #5 ...
-\newcommand{\grEdgeForTree}[5]{%
-\begingroup%
-  \foreach \x in {#4,...,#5}{%
-      \Edge(#1#2)(#3\x)%
-      }%
-\endgroup%
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                  The End
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\endinput

tkz-graph.sty

-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    %                                                               %
-    %     tk-graphes.sty    encodage : utf8                         %
-    %                                                               %
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    %                                                               %
-    %           Créé par Alain Matthes le 09-10-2007.               %
-    %        contribution :  Rafael Villarroel 2007   (RV)          %
-    %                                                               %
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%% Objet :  Création de graphes
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tkz-graph}[18/11/2008 v 2.7d base for graphs]
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\RequirePackage{etex}
-\RequirePackage{ifthen}
-\RequirePackage{xkeyval}[2005/11/25]
-\RequirePackage{tikz}[2008/01/15]
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcounter{tkzb@ca}
-\newcounter{tkzb@cb}
-\newcounter{tkzb@cc}
-\newcounter{tkzb@v}
-\newcounter{tkzb@cd}
-\newcounter{tkzb@ce}
-\newcounter{tkzb@cf}
-\newcounter{tkzb@temp}
-\newcounter{tkzb@int}
-\newcounter{tkzb@next}
-\newcounter{tkzb@ta}
-\newcounter{tkzb@tb}
-\newdimen\node@distance
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                           Init vertex  
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\ifdefined\twoptoff
-\else
-\newboolean{@twopt} \setboolean{@twopt}{false} 
-\newcommand*{\twoptoff}{\ifnum \catcode`\:=13 \catcode`\:=12 \setboolean{@twopt}{true} \fi}
-\newcommand*{\twopton}{\if@twopt \catcode`\:=13 \setboolean{@twopt}{false}  \fi}
-\fi
-
-\ifdefined\activoff
-\else
-\newboolean{@activ} \setboolean{@activ}{false}%
-\newcommand*{\activoff}{\ifnum\catcode`\:=13\catcode`\:=12\catcode`\!=12%
- \setboolean{@activ}{true} \fi}%
-\newcommand*{\activon}{\if@activ\catcode`\:=13\catcode`\!=13%
- \setboolean{@activ}{false}  \fi}
-\fi
-\newcommand*{\VertexDistance}{3cm}
-\newcommand*{\VertexShape}{circle}
-\newcommand*{\VertexLineWidth}{1pt}
-\newcommand*{\VertexLineColor}{black}
-\newcommand*{\VertexLightFillColor}{white}
-\newcommand*{\VertexDarkFillColor}{black}
-\newcommand*{\VertexTextColor}{black}
-\newcommand*{\VertexFillColor}{black}
-\newcommand*{\VertexBallColor}{orange}
-\newcommand*{\VertexBigMinSize}{24pt}
-\newcommand*{\VertexInterMinSize}{18pt}
-\newcommand*{\VertexSmallMinSize}{12pt}
-\newcommand*{\VertexInnerSep}{4pt}
-\newcommand*{\EdgeFillColor}{orange}
-\newcommand*{\EdgeColor}{black}
-\newcommand*{\EdgeDoubleDistance}{1pt}
-\newcommand*{\EdgeLineWidth}{0.8pt}
-
-\tikzset{pre/.style={<-,shorten <=1pt,>=stealth',semithick}}
-\tikzset{post/.style={->,shorten <=1pt,>=stealth',semithick}}
-
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%   Simple Vertex
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\define@cmdkey [GR] {SVS} {Shape}{}
-\define@cmdkey [GR] {SVS} {MinSize}{}
-\define@cmdkey [GR] {SVS} {LineWidth}{}
-\define@cmdkey [GR] {SVS} {LineColor}{}
-\define@cmdkey [GR] {SVS} {FillColor}{}
-\presetkeys    [GR] {SVS} {Shape          = \VertexShape,
-                           MinSize        = \VertexSmallMinSize,
-                           LineWidth      = \VertexLineWidth,
-                           LineColor      = \VertexLineColor,
-                           FillColor      = \VertexFillColor}{}
-\newcommand*{\SetVertexSimple}[1][]{\GR@SetVertexSimple[#1]}%
-\def\GR@SetVertexSimple[#1]{%
-\setkeys[GR]{SVS}{#1}% 
-\presetkeys[GR]{vertex}{NoLabel           = true}{}%
-\tikzset{VertexStyle/.style = {draw,
-                               shape          = \cmdGR@SVS@Shape,
-                               color          = \cmdGR@SVS@LineColor,
-                               fill           = \cmdGR@SVS@FillColor,
-                               inner sep      = 0pt,
-                               outer sep      = 0pt,
-                               minimum size   = \cmdGR@SVS@MinSize,
-                               line width     = \cmdGR@SVS@LineWidth}}}
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%   Normal Vertex
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\define@cmdkey [GR] {SVN} {Shape}{}
-\define@cmdkey [GR] {SVN} {MinSize}{}
-\define@cmdkey [GR] {SVN} {LineWidth}{}
-\define@cmdkey [GR] {SVN} {LineColor}{}
-\define@cmdkey [GR] {SVN} {FillColor}{}
-\define@cmdkey [GR] {SVN} {TextColor}{}
-\presetkeys    [GR] {SVN} {Shape              = \VertexShape,
-                           MinSize            = \VertexInterMinSize,
-                           LineWidth          = \VertexLineWidth,
-                           LineColor          = \VertexLineColor,
-                           FillColor          = \VertexLightFillColor,
-                           TextColor          = \VertexTextColor}{}
-\newcommand*{\SetVertexNormal}[1][]{\GR@SetVertexNormal[#1]}%
-\def\GR@SetVertexNormal[#1]{%
-\setkeys[GR]{SVN}{#1}% 
-\tikzset{VertexStyle/.style = {shape          = \cmdGR@SVN@Shape,
-                               minimum size   = \cmdGR@SVN@MinSize,
-                               line width     = \cmdGR@SVN@LineWidth,
-                               color          = \cmdGR@SVN@LineColor,
-                               fill           = \cmdGR@SVN@FillColor,
-                               text           = \cmdGR@SVN@TextColor,
-                               draw}}}
-\SetVertexNormal% default
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\define@choicekey*[GR]{init}{vstyle}[\val\nr]{Simple,
-                                              Classic,
-                                              Normal,
-                                              Shade,
-                                              Dijkstra,
-                                              Welsh,
-                                              Art}{%
-\edef\GR@init@vstyle{\nr}
-\ifcase\nr\relax
-% Simple
-\presetkeys [GR] {vertex} {NoLabel            = true}{}%
-\tikzset{VertexStyle/.style = {draw,
-                               shape          = \VertexShape,
-                               color          = \VertexLineColor,
-                               fill           = \VertexDarkFillColor,
-                               inner sep      = 0pt,
-                               outer sep      = 0.5\pgflinewidth,
-                               text           = \VertexTextColor,
-                               minimum size   = \VertexSmallMinSize,
-                               line width     = \VertexLineWidth}}
-\tikzset{EdgeStyle/.style   = {line width = \EdgeLineWidth,\EdgeColor}}
-\tikzset{LabelStyle/.style={}}
-% Classic
-\or
-\presetkeys [GR] {vertex} {LabelOut           = true}{}%
-\tikzset{VertexStyle/.style = {draw,
-                               shape          = \VertexShape,
-                               color          = \VertexLineColor,
-                               fill           = \VertexDarkFillColor,
-                               inner sep      = 0pt,
-                               outer sep      = 0.5\pgflinewidth,
-                               text           = \VertexTextColor,
-                               minimum size   = \VertexSmallMinSize,
-                               line width     = \VertexLineWidth}}
-\tikzset{EdgeStyle/.style   = {line width     = \EdgeLineWidth,\EdgeColor}}
-\tikzset{LabelStyle/.style={}}
-% Normal 
-\or
-\presetkeys [GR] {vertex} {LabelOut           = false}{}%
-\tikzset{VertexStyle/.style = {draw,
-                               shape          = \VertexShape,
-                               minimum size   = \VertexInterMinSize,
-                               line width     = \VertexLineWidth,
-                               color          = \VertexLineColor,
-                               outer sep      = 0.5\pgflinewidth,
-                               fill           = \VertexLightFillColor,
-                               text           = \VertexTextColor}}
-\tikzset{EdgeStyle/.style   = {line width     = \EdgeLineWidth,\EdgeColor}}
-\tikzset{LabelStyle/.style={}}
-% Shade
-\or
-\presetkeys [GR] {vertex} {LabelOut           = false}{}%
-\tikzset{VertexStyle/.style = {shape          = \VertexShape,
-                               ball color     = \VertexBallColor,
-                               text           = \VertexTextColor,
-                               inner sep      = 2pt,
-                               outer sep      = 0pt,
-                               minimum size   = \VertexBigMinSize}}
-\tikzset{EdgeStyle/.style   = {line width     = \EdgeLineWidth,\EdgeColor,
-                               double          = \EdgeFillColor,
-                               double distance = \EdgeDoubleDistance}} 
-\tikzset{LabelStyle/.style={}}
-% Dijkstra
-\or
-\presetkeys [GR] {vertex} {LabelOut           = false}{}%
-\tikzset{VertexStyle/.style = {draw,
-                               shape          = \VertexShape,
-                               color          = \VertexLineColor,
-                               fill           = \VertexLightFillColor,
-                               inner sep      = 0pt,
-                               outer sep      = 0.5\pgflinewidth,
-                               text           = \VertexTextColor,
-                               minimum size   = \VertexInterMinSize,
-                               line width     = \VertexLineWidth}}
-\tikzset{EdgeStyle/.style   = {line width     = \EdgeLineWidth,\EdgeColor}}
-\tikzset{LabelStyle/.style={}}
-% Welsh
-\or
-\presetkeys [GR] {vertex} {LabelOut           = true}{}%
-\tikzset{VertexStyle/.style = {draw,
-                               shape          = \VertexShape,
-                               color          = \VertexLineColor,
-                               fill           = \VertexLightFillColor,
-                               inner sep      = 0pt,
-                               outer sep      = 0pt,
-                               text           = \VertexTextColor,
-                               minimum size   = \VertexSmallMinSize,
-                               line width     = \VertexLineWidth}}
-\tikzset{EdgeStyle/.style   = {line width     = \EdgeLineWidth,\EdgeColor}}
-\tikzset{LabelStyle/.style={}}
-% Art
-\or
-\presetkeys [GR] {vertex} {NoLabel            = true}{}%
-\tikzset{VertexStyle/.style = {shape          = \VertexShape,
-                               ball color     = \VertexBallColor,
-                               text           = \VertexTextColor,
-                               inner sep      = \VertexInnerSep,
-                               outer sep      = 0pt}}
-\tikzset{EdgeStyle/.style   = {line width     =\EdgeLineWidth,\EdgeFillColor}} 
-\tikzset{LabelStyle/.style  = {}}
-\fi%
-}
-
-\presetkeys    [GR] {init} {vstyle     = Normal}{} 
-
-\newcommand*{\GraphInit}[1][]{\GR@GraphInit[#1]}%
-\def\GR@GraphInit[#1]{\setkeys[GR]{init}{#1}}
-
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\SetVertexNoLabel}{%
-    \presetkeys [GR] {vertex} {NoLabel = true}{}%
-}
-% add  RV
-\newcommand*{\SetVertexLabel}{%
-   \presetkeys [GR] {vertex} {NoLabel = false}{}%
-}
-%<––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\SetVertexLabelOut}{%
-    \presetkeys [GR] {vertex} {LabelOut = true}{}%
-}
-\newcommand*{\SetVertexLabelIn}{%
-    \presetkeys [GR] {vertex} {LabelOut = false}{}%
-} 
-\newcommand*{\SetVertexMath}{%
-    \presetkeys [GR] {vertex} {Math = true}{}%
-    \presetkeys [GR] {cl} {Math = true}{}%
-}
-\newcommand*{\SetVertexNoMath}{%
-    \presetkeys [GR] {vertex} {Math = false}{}%
-    \presetkeys [GR] {cl} {Math = false}{}%
-} 
-% %<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-% \tikzstyle{every node}        = [node distance  = 2cm,
-%                                  line width     = 0.8pt]%
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                          Init    SetUpVertex
-% todo math
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\define@cmdkey  [GR] {SUV} {Lpos}{}
-\define@cmdkey  [GR] {SUV} {Ldist}{}
-\define@cmdkey  [GR] {SUV} {style}{}
-\define@boolkey [GR] {SUV} {NoLabel} [true]{}
-\define@boolkey [GR] {SUV} {LabelOut}[true]{}
-\define@boolkey [GR] {SUV} {Math}[true]{}
-\presetkeys     [GR] {SUV} {Ldist     = 0cm,%
-                            Lpos      = 0,%
-                            style     = {},%
-                            LabelOut  = false,%
-                            NoLabel   = false,
-                            Math      = false}{}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                             SetUpVertex
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\SetUpVertex}[1][]{\GR@SetUpVertex[#1]}%
-\def\GR@SetUpVertex[#1]{%
-\setkeys[GR]{SUV}{#1}%
-\presetkeys     [GR] {vertex} {Lpos     = \cmdGR@SUV@Lpos,%
-                               Ldist    = \cmdGR@SUV@Ldist}{}%
-\ifGR@SUV@NoLabel%
-    \presetkeys [GR] {vertex} {NoLabel  = true}{}%
-\fi%
-\ifGR@SUV@LabelOut%
-    \presetkeys [GR] {vertex} {LabelOut = true}{}%
-\fi%
-\ifGR@SUV@Math%
-    \presetkeys [GR] {vertex} {Math = true}{}%
-\fi%
-}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                             Colors
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\SetGraphShadeColor}[3]{%
-  \tikzset{VertexStyle/.append style = {ball color=#1}}
-  \tikzset{EdgeStyle/.append style   = {color=#2,double=#3}}
-}
-\newcommand*{\SetGraphArtColor}[2]{%
-  \tikzset{VertexStyle/.append style = {ball color=#1}}
-  \tikzset{EdgeStyle/.append style   = {color=#2}}
-}
-\newcommand*{\SetGraphColor}[2]{%
-  \tikzset{VertexStyle/.append style = {fill=#1}}
-  \tikzset{EdgeStyle/.append style   = {color=#2}}
-}
-\newcommand*{\AddVertexColor}[2]{%
-\begingroup
-  \tikzset{VertexStyle/.append style  = {fill=#1}}
-  \foreach \v in {#2}
-    {\Vertex[Node,NoLabel]{\v}}
-\endgroup
-}
-
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                           Init Vertex
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\define@boolkey [GR] {vertex} {empty}[true]{}
-\define@cmdkey  [GR] {vertex} {x}{}
-\define@cmdkey  [GR] {vertex} {y}{}
-\define@cmdkey  [GR] {vertex} {a}{}
-\define@cmdkey  [GR] {vertex} {d}{}
-\define@boolkey [GR] {vertex} {Node}[true]{}
-\define@cmdkey  [GR] {vertex} {dir}{}
-\define@cmdkey  [GR] {vertex} {style}{}
-\define@cmdkey  [GR] {vertex} {position}{}
-\define@cmdkey  [GR] {vertex} {L}{}
-\define@cmdkey  [GR] {vertex} {Lpos}{}
-\define@cmdkey  [GR] {vertex} {Ldist}{}
-\define@boolkey [GR] {vertex} {NoLabel}[true]{}
-\define@boolkey [GR] {vertex} {Math}[true]{}
-\define@boolkey [GR] {vertex} {LabelOut}[true]{}
-\presetkeys     [GR] {vertex} {Node     = false,
-                               NoLabel  = false,
-                               LabelOut = false,
-                               empty    = false,
-                               Math     = false,
-                               x        = {},
-                               y        = {},
-                               a        = {},
-                               d        = {},
-                               dir      = \EA,
-                               position = {},
-                               style    = {},
-                               L        = {},
-                               Ldist    = 0cm,
-                               Lpos     = 0}{}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-%                                  Vertex
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\newcommand*{\Vertex}[1][]{\@vertex[#1]}%
-\def\@vertex[#1]#2{%
-    \setkeys[GR]{vertex}{#1}%
-    \@@vertex{#2}%
-}
-% coord rect todo coord polar and pos relative
-\def\@@vertex#1{%
-         \def\nstyle{VertexStyle}
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\ifGR@vertex@Node%
-   \pgfextractx{\pgf@x}{\pgfpointanchor{#1}{center}}
-   \pgfextracty{\pgf@y}{\pgfpointanchor{#1}{center}}
-   \edef\cmdGR@vertex@x{\pgf@x}
-   \edef\cmdGR@vertex@y{\pgf@y}
-\fi%
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-\ifGR@vertex@empty%
-   \begin{scope}
-      \ifthenelse{\not\equal{\cmdGR@vertex@x}{}}{%
-           \protected@edef\@tempa{%
-               \noexpand\node[inner sep = 0pt](#1)%
-                  at (\cmdGR@vertex@x,\cmdGR@vertex@y){}}%
-           \@tempa;}{%
-       \ifthenelse{\not\equal{\cmdGR@vertex@d}{}}{%
-           \protected@edef\@tempa{%
-               \noexpand\node[inner sep = 0pt](#1)%
-                  at (\cmdGR@vertex@a:\cmdGR@vertex@d){}}%
-           \@tempa;}{%
-           \protected@edef\@tempa{%
-               \noexpand \node[inner sep = 0pt](#1)%
-                  [\cmdGR@vertex@position]{}}%
-           \@tempa;}}%
-    \end{scope}
-\else
- \begin{scope}[label distance = \cmdGR@vertex@Ldist]
-  \ifGR@vertex@NoLabel
-       \def\vertex@Label{}%
-       \def\cmdGR@vertex@L{}%
-       \def\vertex@Name{}
-  \else%
-     \ifGR@vertex@Math
-     \ifthenelse{\equal{\cmdGR@vertex@L}{}}{%
-       \def\vertex@Name{$#1$}}{\def\vertex@Name{$\cmdGR@vertex@L$}}
-    \else
-       \ifthenelse{\equal{\cmdGR@vertex@L}{}}{%
-       \def\vertex@Name{#1}}{\def\vertex@Name{\cmdGR@vertex@L}}
-    \fi%
-      \ifGR@vertex@LabelOut%
-        \def\nstyle{VertexStyle,%
-                    label=\cmdGR@vertex@Lpos:\vertex@Name}
-        \def\vertex@Label{}
-      \else%
-      \def\vertex@Label{\vertex@Name}
-      \fi
-  \fi
-%<–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––>
-  \ifthenelse{\not\equal{\cmdGR@vertex@x}{}}{%
-    \protected@edef\@tempa{%
-      \noexpand\node[outer sep=0pt,\nstyle,\cmdGR@vertex@style](#1)