summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/rubik/rubiktwocube.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/rubik/rubiktwocube.sty')
-rw-r--r--Master/texmf-dist/tex/latex/rubik/rubiktwocube.sty1061
1 files changed, 1061 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/rubik/rubiktwocube.sty b/Master/texmf-dist/tex/latex/rubik/rubiktwocube.sty
new file mode 100644
index 00000000000..145175df8dd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/rubik/rubiktwocube.sty
@@ -0,0 +1,1061 @@
+%%
+%% This is file `rubiktwocube.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% rubiktwocube.dtx (with options: `rubiktwocube')
+%%
+%% -----------------------------------------------------------------
+%% Authors: RWD Nickalls (dick@nickalls.org)
+%% and Apostolos Syropoulos (asyropoulos@yahoo.com)
+%%
+%% Copyright February 25, 2018 RWD Nickalls and A Syropoulos
+%%
+%% VERSION 5.0
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any
+%% later version: <http://www.latex-project.org/lppl.txt>
+%%
+%% This work consists of the files listed in the README file.
+%% -----------------------------------------------------------------
+%%
+%% This is a LaTeX/TikZ package for drawing Rubik cubes
+%% Please report errors or suggestions for improvement to
+%%
+%% RWD Nickalls (dick@nickalls.org)
+%% Apostolos Syropoulos (asyropoulos@yahoo.com)
+%%
+%% This package requires the basic TikZ package to be loaded already
+%% ------------------------------------------------------------------
+%%% \CheckSum{2308}
+%%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+
+\def\RTCfileversion{5.0}%
+\def\RTCfiledate{2018/02/25}% February 25, 2018
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{rubiktwocube}[\RTCfiledate\space (v\RTCfileversion)]
+\@ifpackageloaded{tikz}{}{%
+ \typeout{---rubiktwocube requires the TikZ package.}%
+ \RequirePackage{tikz}}%
+\@ifpackageloaded{rubikcube}{}{%
+ \typeout{---rubiktwocube requires the rubikcube package.}%
+ }%
+\@ifpackageloaded{rubikrotation}{}{%
+ \typeout{---rubiktwocube requires the rubikrotation package.}%
+ }%
+\newcommand{\rubiktwocube}{\textsc{rubiktwocube}}%
+\newcommand{\@printTWOstate}{%
+ \@print{cubesize,two}%
+ \@print{\space \space up,\Ult,\Umt,\Urt,\Ulm,\Umm,\Urm,\Ulb,\Umb,\Urb}%
+ \@print{down,\Dlt,\Dmt,\Drt,\Dlm,\Dmm,\Drm,\Dlb,\Dmb,\Drb}%
+ \@print{left,\Llt,\Lmt,\Lrt,\Llm,\Lmm,\Lrm,\Llb,\Lmb,\Lrb}%
+ \@print{right,\Rlt,\Rmt,\Rrt,\Rlm,\Rmm,\Rrm,\Rlb,\Rmb,\Rrb}%
+ \@print{front,\Flt,\Fmt,\Frt,\Flm,\Fmm,\Frm,\Flb,\Fmb,\Frb}%
+ \@print{back,\Blt,\Bmt,\Brt,\Blm,\Bmm,\Brm,\Blb,\Bmb,\Brb}%
+}
+\newcommand{\SaveTwoState}{\SaveRubikState}
+\newcommand{\TwoRotation}[2][1]{%
+ \typeout{---TeX process}%
+ \typeout{---script = TwoRotation cmd (rubiktwocube.sty)%
+ v\RTCfileversion\space (\RTCfiledate)}%
+ \typeout{---NEW rotation command}%
+ \typeout{---command = TwoRotation[#1]{#2}}%
+ \typeout{---writing current TWOcube state to file rubikstate.dat}%
+ \@openstatefile% open data file
+ \@print{\@comment filename: rubikstate.dat}%
+ \@print{\@comment written by TwoRotation cmd (rubiktwocube.sty)%
+ v\RTCfileversion\space (\RTCfiledate)}%
+ \@printTWOstate%
+ %% countingloop code from Feuersaenger (2015)
+ \newcount\ourRRcounter%
+ \@countingloop{\ourRRcounter} in 1:{#1}{%
+ \immediate\write\outfile{rotation,#2}}%
+ \@closestatefile% close data file
+ \typeout{---CALLing Perl script (rubikrotation.pl)}%
+ \immediate\write18{\rubikperlcmd}%
+ \typeout{---inputting NEW datafile (data written by Perl script)}%
+ \input{rubikstateNEW.dat}%
+ \typeout{-----------------------------------------}%
+ }
+\newcommand{\TwoFaceUp}[4]{%
+ \def\Ult{#1}\def\Urt{#2}\def\Ulb{#3}\def\Urb{#4}}
+\newcommand{\TwoFaceFront}[4]{%
+ \def\Flt{#1}\def\Frt{#2}\def\Flb{#3}\def\Frb{#4}}
+\newcommand{\TwoFaceRight}[4]{%
+ \def\Rlt{#1}\def\Rrt{#2}\def\Rlb{#3}\def\Rrb{#4}}
+\newcommand{\TwoFaceDown}[4]{%
+ \def\Dlt{#1}\def\Drt{#2}\def\Dlb{#3}\def\Drb{#4}}
+\newcommand{\TwoFaceLeft}[4]{%
+ \def\Llt{#1}\def\Lrt{#2}\def\Llb{#3}\def\Lrb{#4}}
+\newcommand{\TwoFaceBack}[4]{%
+ \def\Blt{#1}\def\Brt{#2}\def\Blb{#3}\def\Brb{#4}}
+\newcommand{\TwoFaceUpAll}[1]{%
+ \def\Ult{#1}\def\Urt{#1}\def\Ulb{#1}\def\Urb{#1}}
+\newcommand{\TwoFaceFrontAll}[1]{%
+ \def\Flt{#1}\def\Frt{#1}\def\Flb{#1}\def\Frb{#1}}
+\newcommand{\TwoFaceRightAll}[1]{%
+ \def\Rlt{#1}\def\Rrt{#1}\def\Rlb{#1}\def\Rrb{#1}}
+\newcommand{\TwoFaceLeftAll}[1]{%
+ \def\Llt{#1}\def\Lrt{#1}\def\Llb{#1}\def\Lrb{#1}}
+\newcommand{\TwoFaceDownAll}[1]{%
+ \def\Dlt{#1}\def\Drt{#1}\def\Dlb{#1}\def\Drb{#1}}
+\newcommand{\TwoFaceBackAll}[1]{%
+ \def\Blt{#1}\def\Brt{#1}\def\Blb{#1}\def\Brb{#1}}
+%% set the default colour = grey = X
+\TwoFaceUpAll{X}%
+\TwoFaceDownAll{X}%
+\TwoFaceLeftAll{X}%
+\TwoFaceRightAll{X}%
+\TwoFaceFrontAll{X}%
+\TwoFaceBackAll{X}%
+\newcommand{\TwoSolvedConfig}[6]{%
+ \TwoFaceRightAll{#1}%
+ \TwoFaceLeftAll{#2}%
+ \TwoFaceUpAll{#3}%
+ \TwoFaceDownAll{#4}%
+ \TwoFaceFrontAll{#5}%
+ \TwoFaceBackAll{#6}%
+}
+\newcommand{\TwoCubeGrey}{\RubikCubeGreyAll\TwoSolvedConfig{X}{X}{X}{X}{X}{X}}%
+\newcommand{\TwoCubeGreyAll}{\TwoCubeGrey}
+\newcommand{\TwoCubeGray}{\TwoCubeGrey}
+\newcommand{\TwoCubeGrayAll}{\TwoCubeGrey}
+\newcommand{\TwoCubeSolvedWY}{\RubikCubeGreyAll\TwoSolvedConfig{G}{B}{W}{Y}{O}{R}}%
+\newcommand{\TwoCubeSolved}{\TwoCubeSolvedWY}%
+\newcommand{\TwoCubeSolvedWB}{\RubikCubeGreyAll\TwoSolvedConfig{R}{O}{W}{B}{G}{Y}}%
+\newcommand{\TwoSliceTopR}[4]{%
+ \def\Flt{#1}\def\Frt{#2}\def\Rlt{#3}\def\Rrt{#4}}
+\newcommand{\TwoSliceTopL}[4]{%
+ \def\Llt{#1}\def\Lrt{#2}\def\Flt{#3}\def\Frt{#4}}
+\newcommand{\TwoSliceBottomR}[4]{%
+ \def\Flb{#1}\def\Frb{#2}\def\Rlb{#3}\def\Rrb{#4}}
+\newcommand{\TwoSliceBottomL}[4]{%
+ \def\Llb{#1}\def\Lrb{#2}\def\Flb{#3}\def\Frb{#4}}
+%%---------------------
+\newcommand{\DrawTwoCubeFrontFace}{%
+\draw[line join=round,line cap=round,ultra thick,fill=\Flt]%
+(0,1) -- (0, 2) -- (1,2) -- (1,1) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Frt]%
+(1,1) -- (1, 2) -- (2,2) -- (2,1) -- cycle;
+%%
+\draw[line join=round,line cap=round,ultra thick,fill=\Flb]%
+(0,0) -- (0, 1) -- (1,1) -- (1,0) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Frb]%
+(1,0) -- (1, 1) -- (2,1) -- (2,0) -- cycle;
+}
+\newcommand{\DrawTwoCubeRU}{%
+%%-----------Front face----------
+\DrawTwoCubeFrontFace %% frontface
+%%-----------Up face----------
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Ult]%
+(0.33,2.33) -- (0.66,2.66) -- (1.66,2.66) -- (1.33,2.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Urt]%
+(1.33,2.33) -- (1.66,2.66) -- (2.66,2.66) -- (2.33,2.33) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Ulb]%
+(0,2) -- (0.33,2.33) -- (1.33,2.33) -- (1,2) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Urb]%
+(1,2) -- (1.33,2.33) -- (2.33,2.33) -- (2,2) -- cycle;
+%%-----------Right face----------
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Rlt]%
+(2,1) -- (2, 2) -- (2.33,2.33) -- (2.33,1.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Rrt]%
+(2.33,1.33) -- (2.33, 2.33) -- (2.66,2.66) -- (2.66,1.66) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Rlb]%
+(2,0) -- (2, 1) -- (2.33,1.33) -- (2.33,0.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Rrb]%
+(2.33,0.33) -- (2.33, 1.33) -- (2.66,1.66) -- (2.66,0.66) -- cycle;
+}
+%%
+\newcommand{\DrawTwoCube}{\DrawTwoCubeRU}
+%%
+\newcommand{\DrawTwoCubeRD}{%
+\DrawTwoCubeFrontFace %% frontface
+%%----------Right face--------
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Rlt]%
+(2,1) -- (2, 2) -- (2.33,1.66) -- (2.33,0.66) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Rrt]%
+(2.33,0.66) -- (2.33, 1.66) -- (2.66,1.33) -- (2.66,0.33) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Rlb]%
+(2,0) -- (2, 1) -- (2.33,0.66) -- (2.33,-0.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Rrb]%
+(2.33,-0.33) -- (2.33, 0.66) -- (2.66,0.33) -- (2.66,-0.66) -- cycle;
+%%-----------Down face---------
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Dlt]%
+(0.33,-0.33) -- (0, 0) -- (1,0) -- (1.33,-0.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Drt]%
+(1.33,-0.33) -- (1, 0) -- (2,0) -- (2.33,-0.33) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Dlb]%
+(0.66,-0.66) -- (0.33, -0.33) -- (1.33,-0.33) -- (1.66,-0.66) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Drb]%
+(1.66,-0.66) -- (1.33, -0.33) -- (2.33,-0.33) -- (2.66,-0.66) -- cycle;
+}
+%%
+\newcommand{\DrawTwoCubeLD}{%
+\DrawTwoCubeFrontFace %% frontface
+%%------------Left face--------
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Llt]%
+(-0.66,0.33) -- (-0.66, 1.33) -- (-0.33,1.66) -- (-0.33,0.66) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Lrt]%
+(-0.33,0.66) -- (-0.33, 1.66) -- (0,2) -- (0,1) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Llb]%
+(-0.66,-0.66) -- (-0.66, 0.33) -- (-0.33,0.66) -- (-0.33,-0.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Lrb]%
+(-0.33,-0.33) -- (-0.33, 0.66) -- (0,1) -- (0,0) -- cycle;
+%%------------Down face----------
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Dlt]%
+(-0.33,-0.33) -- (0, 0) -- (1,0) -- (0.66,-0.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Drt]%
+(0.66,-0.33) -- (1, 0) -- (2,0) -- (1.66,-0.33) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Dlb]%
+(-0.66,-0.66) -- (-0.33, -0.33) -- (0.66,-0.33) -- (0.33,-0.66) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Drb]%
+(0.33,-0.66) -- (0.66, -0.33) -- (1.66,-0.33) -- (1.33,-0.66) -- cycle;
+}
+%%
+\newcommand{\DrawTwoCubeLU}{%
+\DrawTwoCubeFrontFace %% frontface
+%%-----------Left face-----------
+%%------top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Llt]%
+(-0.66,1.66) -- (-0.66, 2.66) -- (-0.33,2.33) -- (-0.33,1.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Lrt]%
+(-0.33,1.33) -- (-0.33, 2.33) -- (0,2) -- (0,1) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Llb]%
+(-0.66,0.66) -- (-0.66, 1.66) -- (-0.33,1.33) -- (-0.33,0.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Lrb]%
+(-0.33,0.33) -- (-0.33, 1.33) -- (0,1) -- (0,0) -- cycle;
+%%-----------Up face---------
+\draw[line join=round,line cap=round,ultra thick,fill=\Ult]%
+(-0.33,2.33) -- (-0.66, 2.66) -- (0.33,2.66) -- (0.66,2.33) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Urt]%
+(0.66,2.33) -- (0.33, 2.66) -- (1.33,2.66) -- (1.66,2.33) -- cycle;
+%%---bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Ulb]%
+(0,2) -- (-0.33, 2.33) -- (0.66,2.33) -- (1,2) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Urb]%
+(1,2) -- (0.66, 2.33) -- (1.66,2.33) -- (2,2) -- cycle;
+}
+%%----------------------
+\newcommand{\DrawTwoFlatUp}[2]{%
+\pgfmathsetmacro{\ux}{#1}%
+\pgfmathsetmacro{\uy}{#2}%
+%%-----top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Ult]%
+(\ux + 0,\uy + 1) -- (\ux + 0,\uy + 2) -- (\ux + 1,\uy + 2)%
+ -- (\ux + 1,\uy + 1) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Urt]%
+(\ux + 1,\uy + 1) -- (\ux + 1,\uy + 2) -- (\ux + 2,\uy + 2)%
+ -- (\ux + 2,\uy + 1) -- cycle;
+%%----bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Ulb]%
+(\ux + 0,\uy + 0) -- (\ux + 0,\uy + 1) -- (\ux + 1,\uy + 1)%
+ -- (\ux + 1,\uy + 0) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Urb]%
+(\ux + 1,\uy + 0) -- (\ux + 1,\uy + 1) -- (\ux + 2,\uy + 1)%
+ -- (\ux + 2,\uy + 0) -- cycle;
+}
+%%-------------------------
+\newcommand{\DrawTwoFlatDown}[2]{%
+\pgfmathsetmacro{\ddx}{#1}%
+\pgfmathsetmacro{\ddy}{#2}%
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Dlt]%
+(\ddx + 0,\ddy + 1) -- (\ddx + 0,\ddy + 2) -- (\ddx + 1,\ddy + 2)%
+ -- (\ddx + 1,\ddy + 1) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Drt]%
+(\ddx + 1,\ddy + 1) -- (\ddx + 1,\ddy + 2) -- (\ddx + 2,\ddy + 2)%
+ -- (\ddx + 2,\ddy + 1) -- cycle;
+%%----bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Dlb]%
+(\ddx + 0,\ddy + 0) -- (\ddx + 0,\ddy + 1) -- (\ddx + 1,\ddy + 1)%
+ -- (\ddx + 1,\ddy + 0) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Drb]%
+(\ddx + 1,\ddy + 0) -- (\ddx + 1,\ddy + 1) -- (\ddx + 2,\ddy + 1)%
+ -- (\ddx + 2,\ddy + 0) -- cycle;
+}
+%%-------------------------
+\newcommand{\DrawTwoFlatLeft}[2]{%
+\pgfmathsetmacro{\lx}{#1}%
+\pgfmathsetmacro{\ly}{#2}%
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Llt]%
+(\lx + 0, \ly + 1) -- (\lx + 0, \ly + 2) -- (\lx + 1, \ly + 2)%
+ -- (\lx + 1, \ly + 1) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Lrt]%
+(\lx + 1, \ly + 1) -- (\lx + 1, \ly + 2) -- (\lx + 2, \ly + 2)%
+ -- (\lx + 2, \ly + 1) -- cycle;
+%%----bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Llb]%
+(\lx + 0, \ly + 0) -- (\lx + 0, \ly + 1) -- (\lx + 1, \ly + 1)%
+ -- (\lx + 1, \ly + 0) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Lrb]%
+(\lx + 1, \ly + 0) -- (\lx + 1, \ly + 1) -- (\lx + 2, \ly + 1)%
+ -- (\lx + 2, \ly + 0) -- cycle;
+}
+%%--------------------------
+\newcommand{\DrawTwoFlatRight}[2]{%
+\pgfmathsetmacro{\rx}{#1}%
+\pgfmathsetmacro{\ry}{#2}%
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Rlt]%
+(\rx + 0, \ry + 1) -- (\rx + 0, \ry + 2) -- (\rx + 1, \ry + 2)%
+ -- (\rx + 1, \ry + 1) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Rrt]%
+(\rx + 1, \ry + 1) -- (\rx + 1, \ry + 2) -- (\rx + 2, \ry + 2)%
+ -- (\rx + 2, \ry + 1) -- cycle;
+%%----bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Rlb]%
+(\rx + 0, \ry + 0) -- (\rx + 0, \ry + 1) -- (\rx + 1, \ry + 1)%
+ -- (\rx + 1, \ry + 0) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Rrb]%
+(\rx + 1, \ry + 0) -- (\rx + 1, \ry + 1) -- (\rx + 2, \ry + 1)%
+ -- (\rx + 2, \ry + 0) -- cycle;
+}
+%%--------------
+\newcommand{\DrawTwoFlatFront}{%
+%% This command is used /only/ by the \cmd{\DrawRubikFlat} command.
+%% NOTE: x, y variables not implemented as not required here
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Flt]%
+(0,1) -- (0, 2) -- (1,2) -- (1,1) -- cycle;
+%%
+\draw[line join=round,line cap=round,ultra thick,fill=\Frt]%
+(1,1) -- (1, 2) -- (2,2) -- (2,1) -- cycle;
+%%----bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Flb]%
+(0,0) -- (0, 1) -- (1,1) -- (1,0) -- cycle;
+%%
+\draw[line join=round,line cap=round,ultra thick,fill=\Frb]%
+(1,0) -- (1, 1) -- (2,1) -- (2,0) -- cycle;
+}
+%%--------------------------
+\newcommand{\DrawTwoFlatBack}[2]{%
+\pgfmathsetmacro{\bx}{#1}%
+\pgfmathsetmacro{\by}{#2}%
+%%---top row
+\draw[line join=round,line cap=round,ultra thick,fill=\Blt]%
+(\bx + 0,\by + 1) -- (\bx + 0,\by + 2) -- (\bx + 1,\by + 2)%
+ -- (\bx + 1,\by + 1) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Brt]%
+(\bx + 1,\by + 1) -- (\bx + 1,\by + 2) -- (\bx + 2,\by + 2)%
+ -- (\bx + 2,\by + 1) -- cycle;
+%%----bottom row
+\draw[line join=round,line cap=round,ultra thick,fill=\Blb]%
+(\bx + 0,\by + 0) -- (\bx + 0,\by + 1) -- (\bx + 1,\by + 1)%
+ -- (\bx + 1,\by + 0) -- cycle;
+\draw[line join=round,line cap=round,ultra thick,fill=\Brb]%
+(\bx + 1,\by + 0) -- (\bx + 1,\by + 1) -- (\bx + 2,\by + 1)%
+ -- (\bx + 2,\by + 0) -- cycle;
+}
+%%------------------------------
+\newcommand{\DrawTwoCubeF}{%
+ \DrawTwoFlatUp{0}{2}%
+ \DrawTwoFlatDown{0}{-2}%
+ \DrawTwoFlatLeft{-2}{0}%
+ \DrawTwoFlatFront%
+ \DrawTwoFlatRight{2}{0}%
+ \DrawTwoFlatBack{4}{0}%
+}
+%%
+\newcommand{\DrawTwoCubeSF}{%
+ \DrawTwoCubeRU% RU
+ \DrawTwoFlatDown{0}{-2}%
+ \DrawTwoFlatLeft{-2}{0}%
+ \DrawTwoFlatBack{2.666}{0.66}%
+}
+\newcommand{\TwoSidebarWidth}[1]{\pgfmathsetmacro{\tbw}{#1}}
+\newcommand{\TwoSidebarLength}[1]{\pgfmathsetmacro{\tbl}{#1}}
+\newcommand{\TwoSidebarSep}[1]{\pgfmathsetmacro{\tbs}{#1}}
+\TwoSidebarWidth{0.2}
+\TwoSidebarLength{1.0}
+\TwoSidebarSep{0.2}
+
+\newcommand{\TWOside@barL}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{0 - \tbs - \tbw}%
+ \pgfmathsetmacro{\tdy}{#1-1+0.5-\tblh}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbl)
+ -- (\tdx+\tbw,\tdy+\tbl) -- (\tdx+\tbw,\tdy) -- cycle;
+}}
+%% changed Rubik value (3 + \bs) --> (2 + \tbs) (as only TWO squares)
+\newcommand{\TWOside@barR}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{2 + \tbs}%
+ \pgfmathsetmacro{\tdy}{#1 -1+0.5-\tblh}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbl)
+ -- (\tdx+\tbw,\tdy+\tbl) -- (\tdx+\tbw,\tdy) -- cycle;
+}}
+%% changed Rubik value (3 + \bs) --> (2 + \tbs) (as only TWO squares)
+\newcommand{\TWOside@barT}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{#1 -1+0.5-\tblh}%
+ \pgfmathsetmacro{\tdy}{2 +\tbs}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbw)
+ -- (\tdx+\tbl,\tdy+\tbw) -- (\tdx+\tbl,\tdy) -- cycle;
+}}
+\newcommand{\TWOside@barB}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{#1 -1+0.5-\tblh}%
+ \pgfmathsetmacro{\tdy}{0 -\tbs-\tbw}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbw)
+ -- (\tdx+\tbl,\tdy+\tbw) -- (\tdx+\tbl,\tdy) -- cycle;
+}}
+
+\newcommand{\DrawTwoFaceUpSide}{%
+ \DrawTwoFlatUp{0}{0}%
+ \TWOside@barT{1}{\Brt}%
+ \TWOside@barT{2}{\Blt}%
+ \TWOside@barL{2}{\Llt}%
+ \TWOside@barL{1}{\Lrt}%
+ \TWOside@barR{2}{\Rrt}%
+ \TWOside@barR{1}{\Rlt}%
+ \TWOside@barB{1}{\Flt}%
+ \TWOside@barB{2}{\Frt}%
+}
+\newcommand{\DrawTwoFaceFrontSide}{%
+ \DrawTwoFlatFront{0}{0}%
+ \TWOside@barT{1}{\Ulb}%
+ \TWOside@barT{2}{\Urb}%
+ \TWOside@barL{2}{\Lrt}%
+ \TWOside@barL{1}{\Lrb}%
+ \TWOside@barR{2}{\Rlt}%
+ \TWOside@barR{1}{\Rlb}%
+ \TWOside@barB{1}{\Dlt}%
+ \TWOside@barB{2}{\Drt}%
+}
+\newcommand{\DrawTwoFaceRightSide}{%
+ \DrawTwoFlatRight{0}{0}%
+ \TWOside@barT{1}{\Urb}%
+ \TWOside@barT{2}{\Urt}%
+ \TWOside@barL{2}{\Frt}%
+ \TWOside@barL{1}{\Frb}%
+ \TWOside@barR{2}{\Blt}%
+ \TWOside@barR{1}{\Blb}%
+ \TWOside@barB{1}{\Drt}%
+ \TWOside@barB{2}{\Drb}%
+}
+\newcommand{\DrawTwoFaceLeftSide}{%
+ \DrawTwoFlatLeft{0}{0}%
+ \TWOside@barT{1}{\Ult}%
+ \TWOside@barT{2}{\Ulb}%
+ \TWOside@barL{2}{\Brt}%
+ \TWOside@barL{1}{\Brb}%
+ \TWOside@barR{2}{\Flt}%
+ \TWOside@barR{1}{\Flb}%
+ \TWOside@barB{1}{\Dlb}%
+ \TWOside@barB{2}{\Dlt}%
+}
+\newcommand{\DrawTwoFaceBackSide}{%
+ \DrawTwoFlatBack{0}{0}%
+ \TWOside@barT{1}{\Urt}%
+ \TWOside@barT{2}{\Ult}%
+ \TWOside@barL{2}{\Rrt}%
+ \TWOside@barL{1}{\Rrb}%
+ \TWOside@barR{2}{\Llt}%
+ \TWOside@barR{1}{\Llb}%
+ \TWOside@barB{1}{\Drb}%
+ \TWOside@barB{2}{\Dlb}%
+}
+\newcommand{\DrawTwoFaceDownSide}{%
+ \DrawTwoFlatDown{0}{0}%
+ \TWOside@barT{1}{\Flb}%
+ \TWOside@barT{2}{\Frb}%
+ \TWOside@barL{2}{\Lrb}%
+ \TWOside@barL{1}{\Llb}%
+ \TWOside@barR{2}{\Rlb}%
+ \TWOside@barR{1}{\Rrb}%
+ \TWOside@barB{1}{\Brb}%
+ \TWOside@barB{2}{\Blb}%
+}
+%%
+%% v5: made Face versions (for USER) without the (x,y) coordinates
+\newcommand{\DrawTwoFaceUp}{\DrawTwoFlatUp{0}{0}}
+\newcommand{\DrawTwoFaceDown}{\DrawTwoFlatDown{0}{0}}
+\newcommand{\DrawTwoFaceLeft}{\DrawTwoFlatLeft{0}{0}}
+\newcommand{\DrawTwoFaceRight}{\DrawTwoFlatRight{0}{0}}
+\newcommand{\DrawTwoFaceFront}{\DrawTwoFlatFront{0}{0}}
+\newcommand{\DrawTwoFaceBack}{\DrawTwoFlatBack{0}{0}}
+%%
+%% v5: made short forms --> abbreviations
+\newcommand{\DrawTwoFaceU}{\DrawTwoFlatUp{0}{0}}
+\newcommand{\DrawTwoFaceD}{\DrawTwoFlatDown{0}{0}}
+\newcommand{\DrawTwoFaceL}{\DrawTwoFlatLeft{0}{0}}
+\newcommand{\DrawTwoFaceR}{\DrawTwoFlatRight{0}{0}}
+\newcommand{\DrawTwoFaceF}{\DrawTwoFlatFront{0}{0}}
+\newcommand{\DrawTwoFaceB}{\DrawTwoFlatBack{0}{0}}
+%%
+%% v5: made short forms --> abbreviations
+\newcommand{\DrawTwoFaceUS}{\DrawTwoFaceUpSide}
+\newcommand{\DrawTwoFaceDS}{\DrawTwoFaceDownSide}
+\newcommand{\DrawTwoFaceLS}{\DrawTwoFaceLeftSide}
+\newcommand{\DrawTwoFaceRS}{\DrawTwoFaceRightSide}
+\newcommand{\DrawTwoFaceFS}{\DrawTwoFaceFrontSide}
+\newcommand{\DrawTwoFaceBS}{\DrawTwoFaceBackSide}
+\newcommand{\TWOside@barRbackRU}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ %% tdx --> tdx + (2/3)
+ %% tdy --> tdy + (2/3)
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{2 + \tbs +0.666}%
+ \pgfmathsetmacro{\tdy}{#1 -1+0.5-\tblh +0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbl)
+ -- (\tdx+\tbw,\tdy+\tbl) -- (\tdx+\tbw,\tdy) -- cycle;%
+}}
+\newcommand{\DrawTwoCubeSidebarRBRU}{%
+ \TWOside@barRbackRU{2}{\Blt}%
+ \TWOside@barRbackRU{1}{\Blb}%
+}
+\newcommand{\DrawTwoCubeSidebarBRRU}{\DrawTwoCubeSidebarRBRU}
+\newcommand{\DrawTwoCubeSidebarRB}[1]{\@join{\DrawTwoCubeSidebarRB}{#1}}
+\newcommand{\DrawTwoCubeSidebarBR}[1]{\@join{\DrawTwoCubeSidebarBR}{#1}}
+\newcommand{\TWOside@barTbackRU}[2]{%
+ %% #1 = cubie possn no; #2 = colour
+ %% tdx --> tdx + (2/3)
+ %% tdy --> tdy + (2/3)
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{#1 -1+0.5-\tblh +0.666}%
+ \pgfmathsetmacro{\tdy}{2 +\tbs +0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbw)
+ -- (\tdx+\tbl,\tdy+\tbw) -- (\tdx+\tbl,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarUBRU}{%
+ \TWOside@barTbackRU{1}{\Brt}%
+ \TWOside@barTbackRU{2}{\Blt}%
+}
+\newcommand{\DrawTwoCubeSidebarBURU}{\DrawTwoCubeSidebarUBRU}
+\newcommand{\DrawTwoCubeSidebarUB}[1]{\@join{\DrawTwoCubeSidebarUB}{#1}}
+\newcommand{\DrawTwoCubeSidebarBU}[1]{\@join{\DrawTwoCubeSidebarBU}{#1}}
+\newcommand{\DrawTwoCubeSidebarFLRU}{%
+ \TWOside@barL{2}{\Lrt}%
+ \TWOside@barL{1}{\Lrb}%
+}
+\newcommand{\DrawTwoCubeSidebarLFRU}{\DrawTwoCubeSidebarFLRU}
+\newcommand{\DrawTwoCubeSidebarFL}[1]{\@join{\DrawTwoCubeSidebarFL}{#1}}
+\newcommand{\DrawTwoCubeSidebarLF}[1]{\@join{\DrawTwoCubeSidebarLF}{#1}}
+\newcommand{\DrawTwoCubeSidebarFDRU}{%
+ \TWOside@barB{1}{\Dlt}%
+ \TWOside@barB{2}{\Drt}%
+}
+\newcommand{\DrawTwoCubeSidebarDFRU}{\DrawTwoCubeSidebarFDRU}
+\newcommand{\DrawTwoCubeSidebarFD}[1]{\@join{\DrawTwoCubeSidebarFD}{#1}}
+\newcommand{\DrawTwoCubeSidebarDF}[1]{\@join{\DrawTwoCubeSidebarDF}{#1}}
+\newcommand{\DrawTwoCubeSidebarDFLU}{\DrawTwoCubeSidebarDFRU}
+\newcommand{\DrawTwoCubeSidebarFDLU}{\DrawTwoCubeSidebarFDRU}
+\newcommand{\TWOside@barLbackLU}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ %% tdx --> tdx - 2/3
+ %% tdy --> tdy + 2/3
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{0 - \tbs -\tbw -0.666}%
+ \pgfmathsetmacro{\tdy}{#1 -1+0.5-\tblh +0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbl)
+ -- (\tdx+\tbw,\tdy+\tbl) -- (\tdx+\tbw,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarLBLU}{%
+ \TWOside@barLbackLU{2}{\Brt}%
+ \TWOside@barLbackLU{1}{\Brb}%
+}
+\newcommand{\DrawTwoCubeSidebarBLLU}{\DrawTwoCubeSidebarLBLU}
+\newcommand{\DrawTwoCubeSidebarLB}[1]{\@join{\DrawTwoCubeSidebarLB}{#1}}
+\newcommand{\DrawTwoCubeSidebarBL}[1]{\@join{\DrawTwoCubeSidebarBL}{#1}}
+\newcommand{\TWOside@barTbackLU}[2]{%
+ %% #1 = cubie possn no; #2 = colour
+ %% tdx --> tdx-2/3
+ %% tdy --> tdy+2/3
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{#1 -1+0.5-\tblh -0.666}%
+ \pgfmathsetmacro{\tdy}{2 +\tbs +0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbw)
+ -- (\tdx+\tbl,\tdy+\tbw) -- (\tdx+\tbl,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarUBLU}{%
+ \TWOside@barTbackLU{1}{\Brt}%
+ \TWOside@barTbackLU{2}{\Blt}%
+}
+\newcommand{\DrawTwoCubeSidebarBULU}{\DrawTwoCubeSidebarUBLU}
+\newcommand{\DrawTwoCubeSidebarFRLU}{%
+ \TWOside@barR{2}{\Rlt}%
+ \TWOside@barR{1}{\Rlb}%
+}
+\newcommand{\DrawTwoCubeSidebarRFLU}{\DrawTwoCubeSidebarFRLU}
+\newcommand{\DrawTwoCubeSidebarFR}[1]{\@join{\DrawTwoCubeSidebarFR}{#1}}
+\newcommand{\DrawTwoCubeSidebarRF}[1]{\@join{\DrawTwoCubeSidebarRF}{#1}}
+\newcommand{\DrawTwoCubeSidebarFURD}{%
+ \TWOside@barT{1}{\Ulb}%
+ \TWOside@barT{2}{\Urb}%
+}
+\newcommand{\DrawTwoCubeSidebarUFRD}{\DrawTwoCubeSidebarFURD}
+\newcommand{\DrawTwoCubeSidebarFU}[1]{\@join{\DrawTwoCubeSidebarFU}{#1}}
+\newcommand{\DrawTwoCubeSidebarUF}[1]{\@join{\DrawTwoCubeSidebarUF}{#1}}
+\newcommand{\DrawTwoCubeSidebarFLRD}{\DrawTwoCubeSidebarFLRU}
+\newcommand{\DrawTwoCubeSidebarLFRD}{\DrawTwoCubeSidebarLFRU}
+\newcommand{\TWOside@barRbackRD}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ %% tdx --> tdx + (2/3)
+ %% tdy --> tdy - (2/3)
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{2 + \tbs +0.666}%
+ \pgfmathsetmacro{\tdy}{#1 -1+0.5-\tblh -0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbl)
+ -- (\tdx+\tbw,\tdy+\tbl) -- (\tdx+\tbw,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarRBRD}{%
+\TWOside@barRbackRD{2}{\Blt}%
+\TWOside@barRbackRD{1}{\Blb}%
+}
+\newcommand{\DrawTwoCubeSidebarBRRD}{\DrawTwoCubeSidebarRBRD}
+\newcommand{\TWOside@barBbackRD}[2]{%
+ %% #1 = cubie possn no; #2 = colour
+ %% tdx --> tdx+2/3
+ %% tdy --> tdy-2/3
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{#1 -1+0.5-\tblh +0.666}%
+ \pgfmathsetmacro{\tdy}{0 -\tbs - \tbw -0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbw)
+ -- (\tdx+\tbl,\tdy+\tbw) -- (\tdx+\tbl,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarDBRD}{%
+ \TWOside@barBbackRD{1}{\Brb}%
+ \TWOside@barBbackRD{2}{\Blb}%
+}
+\newcommand{\DrawTwoCubeSidebarBDRD}{\DrawTwoCubeSidebarDBRD}
+%% Now make the join commands
+\newcommand{\DrawTwoCubeSidebarDB}[1]{\@join{\DrawTwoCubeSidebarDB}{#1}}
+\newcommand{\DrawTwoCubeSidebarBD}[1]{\@join{\DrawTwoCubeSidebarBD}{#1}}
+\newcommand{\DrawTwoCubeSidebarFULD}{\DrawTwoCubeSidebarFURD}
+\newcommand{\DrawTwoCubeSidebarUFLD}{\DrawTwoCubeSidebarUFRD}
+\newcommand{\DrawTwoCubeSidebarFRLD}{\DrawTwoCubeSidebarFRLU}
+\newcommand{\DrawTwoCubeSidebarRFLD}{\DrawTwoCubeSidebarRFLU}
+\newcommand{\TWOside@barLbackLD}[2]{%
+ %% #1 = cubie possn no, #2 = colour
+ %% tdx --> tdx-2/3
+ %% tdy --> tdy-2/3
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{0 - \tbs -\tbw -0.666}%
+ \pgfmathsetmacro{\tdy}{#1 -1+0.5-\tblh -0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbl)
+ -- (\tdx+\tbw,\tdy+\tbl) -- (\tdx+\tbw,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarLBLD}{%
+ \TWOside@barLbackLD{2}{\Brt}%
+ \TWOside@barLbackLD{1}{\Brb}%
+}
+\newcommand{\DrawTwoCubeSidebarBLLD}{\DrawTwoCubeSidebarLBLD}
+\newcommand{\TWOside@barBbackLD}[2]{%
+ %% #1 = cubie possn no; #2 = colour
+ %% tdx --> tdx-2/3
+ %% tdy --> tdy-2/3
+ \ifthenelse{\equal{#2}{\no@sidebar}}{}{%
+ \pgfmathsetmacro{\tblh}{\tbl*(0.5)}%
+ \pgfmathsetmacro{\tdx}{#1 -1+0.5-\tblh -0.666}%
+ \pgfmathsetmacro{\tdy}{0 -\tbs - \tbw -0.666}%
+ \draw[fill=#2] (\tdx,\tdy) -- (\tdx,\tdy + \tbw)
+ -- (\tdx+\tbl,\tdy+\tbw) -- (\tdx+\tbl,\tdy) -- cycle;
+}}
+\newcommand{\DrawTwoCubeSidebarDBLD}{%
+\TWOside@barBbackLD{1}{\Brb}%
+\TWOside@barBbackLD{2}{\Blb}%
+}
+\newcommand{\DrawTwoCubeSidebarBDLD}{\DrawTwoCubeSidebarDBLD}
+\pgfmathsetmacro{\@tx}{0.0833}
+\pgfmathsetmacro{\@ty}{0.0833}
+\newcommand{\@tr}[1]{{\@rubikfont #1}}
+\newcommand{\@trp}[1]{{\@rubikfont #1\@rubikprime}}
+\newcommand*{\tr}[1]{\@join{\tr}{#1}}
+\newcommand*{\trh}[1]{\@join{\trh}{#1}}
+\newcommand*{\Two}[1]{\@join{\Two}{#1}}
+\newcommand*{\textTwo}[1]{\@join{\textTwo}{#1}}
+\newcommand{\trB}{\rrB}
+\newcommand{\trBp}{\rrBp}
+\newcommand{\trhB}{\rrhB}
+\newcommand{\trhBp}{\rrhBp}
+\newcommand{\TwoB}{\RubikB}
+\newcommand{\TwoBp}{\RubikBp}
+\newcommand{\textTwoB}{\textRubikB}
+\newcommand{\textTwoBp}{\textRubikBp}
+%%
+\newcommand{\trD}{\@tr{D}}
+%%
+\newcommand{\SquaretD}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick] (\@sb,\@sddd - \@ty) -- (\@sbh, \@sddd - \@ty);
+\draw [thick, ->] (\@sb,\@sd + \@ty) -- (\@sbh, \@sd + \@ty);
+\end{tikzpicture}%
+}
+\newcommand{\trhD}{\raisebox{-0.333\height}{\@tlen\SquaretD\@tlen}}
+%%
+\newcommand{\TwoD}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretD\\
+\trD%
+\end{minipage}%
+}}
+\newcommand{\textTwoD}{\trD\,\trhD}
+\newcommand{\trDp}{\@trp{D}}
+%%
+\newcommand{\SquaretDp}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick] (\@sb,\@sddd - \@ty) -- (\@sbh, \@sddd - \@ty);
+\draw [thick, <-] (\@sb,\@sd + \@ty) -- (\@sbh, \@sd + \@ty);
+\end{tikzpicture}%
+}
+\newcommand{\trhDp}{\raisebox{-0.333\height}{\@tlen\SquaretDp\@tlen}}
+%%
+\newcommand{\TwoDp}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretDp\\
+\trDp%
+\end{minipage}%
+}}
+\newcommand{\textTwoDp}{\trDp\,\trhDp}
+\newcommand{\trF}{\rrF}
+\newcommand{\trFp}{\rrFp}
+\newcommand{\trhF}{\rrhF}
+\newcommand{\trhFp}{\rrhFp}
+\newcommand{\TwoF}{\RubikF}
+\newcommand{\TwoFp}{\RubikFp}
+\newcommand{\textTwoF}{\textRubikF}
+\newcommand{\textTwoFp}{\textRubikFp}
+\newcommand{\trL}{\@tr{L}}
+%%
+\newcommand{\SquaretL}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick, <-] (\@sd + \@tx, \@sb) -- (\@sd + \@tx, \@sbh);
+\draw [thick] (\@sddd - \@tx, \@sb) -- (\@sddd - \@tx, \@sbh);
+\end{tikzpicture}%
+}
+\newcommand{\trhL}{\raisebox{-0.333\height}{\@tlen\SquaretL\@tlen}}
+%%
+\newcommand{\TwoL}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretL\\
+\trL%
+\end{minipage}%
+}}
+\newcommand{\textTwoL}{\trL\,\trhL}
+\newcommand{\trLp}{\@trp{L}}
+%%
+\newcommand{\SquaretLp}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick,->] (\@sd + \@tx, \@sb) -- (\@sd + \@tx, \@sbh);
+\draw [thick] (\@sddd - \@tx, \@sb) -- (\@sddd - \@tx, \@sbh);
+\end{tikzpicture}%
+}
+\newcommand{\trhLp}{\raisebox{-0.333\height}{\@tlen\SquaretLp\@tlen}}
+%%
+\newcommand{\TwoLp}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretLp\\
+\trLp%
+\end{minipage}%
+}}
+\newcommand{\textTwoLp}{\trLp\,\trhLp}
+\newcommand{\trR}{\@tr{R}}
+%%
+\newcommand{\SquaretR}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+%% draw three lines in the square, one with an arrow
+\draw [thick] (\@sd + \@tx, \@sb) -- (\@sd + \@tx, \@sbh);
+\draw [thick, ->] (\@sddd - \@tx, \@sb) -- (\@sddd - \@tx, \@sbh);
+\end{tikzpicture}%
+}
+\newcommand{\trhR}{\raisebox{-0.333\height}{\@tlen\SquaretR\@tlen}}
+%%
+\newcommand{\TwoR}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretR\\
+\trR%
+\end{minipage}%
+}}
+\newcommand{\textTwoR}{\trR\,\trhR}
+\newcommand{\trRp}{\@trp{R}}
+%%
+\newcommand{\SquaretRp}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick] (\@sd + \@tx, \@sb) -- (\@sd + \@tx, \@sbh);
+\draw [thick, <-] (\@sddd - \@tx, \@sb) -- (\@sddd - \@tx, \@sbh);
+\end{tikzpicture}%
+}
+\newcommand{\trhRp}{\raisebox{-0.333\height}{\@tlen\SquaretRp\@tlen}}
+%%
+\newcommand{\TwoRp}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretRp\\
+\trRp%
+\end{minipage}%
+}}
+\newcommand{\textTwoRp}{\trRp\,\trhRp}
+\newcommand{\trU}{\@tr{U}}
+%%
+\newcommand{\SquaretU}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick, <-] (\@sb,\@sddd - \@ty) -- (\@sbh, \@sddd - \@ty);
+\draw [thick] (\@sb,\@sd + \@ty) -- (\@sbh, \@sd + \@ty);
+\end{tikzpicture}%
+}
+\newcommand{\trhU}{\raisebox{-0.333\height}{\@tlen\SquaretU\@tlen}}
+%%
+\newcommand{\TwoU}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretU\\
+\trU%
+\end{minipage}%%
+}}
+\newcommand{\textTwoU}{\trU\,\trhU}
+\newcommand{\trUp}{\@trp{U}}
+%%
+\newcommand{\SquaretUp}{%
+\begin{tikzpicture}[scale=0.5]
+\DrawNotationBox;
+\draw [thick, ->] (\@sb,\@sddd - \@ty) -- (\@sbh, \@sddd - \@ty);
+\draw [thick] (\@sb,\@sd + \@ty) -- (\@sbh, \@sd + \@ty);
+\end{tikzpicture}%
+}
+\newcommand{\trhUp}{\raisebox{-0.333\height}{\@tlen\SquaretUp\@tlen}}
+%%
+\newcommand{\TwoUp}{%
+{\@rubikfont%
+\begin{minipage}{0.6cm}
+\centering%
+\SquaretUp\\
+\trUp%
+\end{minipage}%%
+}}
+\newcommand{\textTwoUp}{\trUp\,\trhUp}
+\newcommand{\trx}{\rrx}
+\newcommand{\trxp}{\rrxp}
+\newcommand{\try}{\rry}
+\newcommand{\tryp}{\rryp}
+\newcommand{\trz}{\rrz}
+\newcommand{\trzp}{\rrzp}
+\newcommand{\trl}{\rrl}
+ \newcommand{\trlp}{\rrlp} %%new
+\newcommand{\trr}{\rrr}
+ \newcommand{\trrp}{\rrrp} %%new
+\newcommand{\tru}{\rru}
+ \newcommand{\trup}{\rrup} %%new
+\newcommand{\trd}{\rrd}
+ \newcommand{\trdp}{\rrdp} %%new
+\newcommand{\trf}{\rrf}
+ \newcommand{\trfp}{\rrfp} %%new
+\newcommand{\trb}{\rrb}
+ \newcommand{\trbp}{\rrbp} %%new
+\newcommand{\trLc}{\rrLc}
+\newcommand{\trLcp}{\rrLcp}
+\newcommand{\trRc}{\rrRc}
+\newcommand{\trRcp}{\rrRcp}
+\newcommand{\trUc}{\rrUc}
+\newcommand{\trUcp}{\rrUcp}
+\newcommand{\trDc}{\rrDc}
+\newcommand{\trDcp}{\rrDcp}
+\newcommand{\trFc}{\rrFc}
+\newcommand{\trFcp}{\rrFcp}
+\newcommand{\trBc}{\rrBc}
+\newcommand{\trBcp}{\rrBcp}
+\newcommand{\trCL}{\rrCL}
+\newcommand{\trCLp}{\rrCLp}
+\newcommand{\trCR}{\rrCR}
+\newcommand{\trCRp}{\rrCRp}
+\newcommand{\trCU}{\rrCU}
+\newcommand{\trCUp}{\rrCUp}
+\newcommand{\trCD}{\rrCD}
+\newcommand{\trCDp}{\rrCDp}
+\newcommand{\trCF}{\rrCF}
+\newcommand{\trCFp}{\rrCFp}
+\newcommand{\trCB}{\rrCB}
+\newcommand{\trCBp}{\rrCBp}
+\newcommand{\trhx}{\rrhx}
+\newcommand{\trhxp}{\rrhxp}
+\newcommand{\trhy}{\rrhy}
+\newcommand{\trhyp}{\rrhyp}
+\newcommand{\trhz}{\rrhz}
+\newcommand{\trhzp}{\rrhzp}
+\newcommand{\trhl}{\rrhl}
+ \newcommand{\trhlp}{\rrhlp} % new
+\newcommand{\trhr}{\rrhr}
+ \newcommand{\trhrp}{\rrhrp} % new
+\newcommand{\trhu}{\rrhu}
+ \newcommand{\trhup}{\rrhup} % new
+\newcommand{\trhd}{\rrhd}
+ \newcommand{\trhdp}{\rrhdp} % new
+\newcommand{\trhf}{\rrhf}
+ \newcommand{\trhfp}{\rrhfp} % new
+\newcommand{\trhb}{\rrhb}
+ \newcommand{\trhbp}{\rrhbp} % new
+\newcommand{\trhLc}{\rrhLc}
+\newcommand{\trhLcp}{\rrhLcp}
+\newcommand{\trhRc}{\rrhRc}
+\newcommand{\trhRcp}{\rrhRcp}
+\newcommand{\trhUc}{\rrhUc}
+\newcommand{\trhUcp}{\rrhUcp}
+\newcommand{\trhDc}{\rrhDc}
+\newcommand{\trhDcp}{\rrhDcp}
+\newcommand{\trhFc}{\rrhFc}
+\newcommand{\trhFcp}{\rrhFcp}
+\newcommand{\trhBc}{\rrhBc}
+\newcommand{\trhBcp}{\rrhBcp}
+\newcommand{\trhCL}{\rrhCL}
+\newcommand{\trhCLp}{\rrhCLp}
+\newcommand{\trhCR}{\rrhCR}
+\newcommand{\trhCRp}{\rrhCRp}
+\newcommand{\trhCU}{\rrhCU}
+\newcommand{\trhCUp}{\rrhCUp}
+\newcommand{\trhCD}{\rrhCD}
+\newcommand{\trhCDp}{\rrhCDp}
+\newcommand{\trhCF}{\rrhCF}
+\newcommand{\trhCFp}{\rrhCFp}
+\newcommand{\trhCB}{\rrhCB}
+\newcommand{\trhCBp}{\rrhCBp}
+\newcommand{\Twox}{\Rubikx}
+\newcommand{\Twoxp}{\Rubikxp}
+\newcommand{\Twoy}{\Rubiky}
+\newcommand{\Twoyp}{\Rubikyp}
+\newcommand{\Twoz}{\Rubikz}
+\newcommand{\Twozp}{\Rubikzp}
+\newcommand{\Twol}{\Rubikl}
+ \newcommand{\Twolp}{\Rubiklp} % new
+\newcommand{\Twor}{\Rubikr}
+ \newcommand{\Tworp}{\Rubikrp} % new
+\newcommand{\Twou}{\Rubiku}
+ \newcommand{\Twoup}{\Rubikup} % new
+\newcommand{\Twod}{\Rubikd}
+ \newcommand{\Twodp}{\Rubikdp} % new
+\newcommand{\Twof}{\Rubikf}
+ \newcommand{\Twofp}{\Rubikfp} % new
+\newcommand{\Twob}{\Rubikb}
+ \newcommand{\Twobp}{\Rubikbp} % new
+\newcommand{\TwoLc}{\RubikLc}
+\newcommand{\TwoLcp}{\RubikLcp}
+\newcommand{\TwoRc}{\RubikRc}
+\newcommand{\TwoRcp}{\RubikRcp}
+\newcommand{\TwoUc}{\RubikUc}
+\newcommand{\TwoUcp}{\RubikUcp}
+\newcommand{\TwoDc}{\RubikDc}
+\newcommand{\TwoDcp}{\RubikDcp}
+\newcommand{\TwoFc}{\RubikFc}
+\newcommand{\TwoFcp}{\RubikFcp}
+\newcommand{\TwoBc}{\RubikBc}
+\newcommand{\TwoBcp}{\RubikBcp}
+\newcommand{\TwoCL}{\RubikCL}
+\newcommand{\TwoCLp}{\RubikCLp}
+\newcommand{\TwoCR}{\RubikCR}
+\newcommand{\TwoCRp}{\RubikCRp}
+\newcommand{\TwoCU}{\RubikCU}
+\newcommand{\TwoCUp}{\RubikCUp}
+\newcommand{\TwoCD}{\RubikCD}
+\newcommand{\TwoCDp}{\RubikCDp}
+\newcommand{\TwoCF}{\RubikCF}
+\newcommand{\TwoCFp}{\RubikCFp}
+\newcommand{\TwoCB}{\RubikCB}
+\newcommand{\TwoCBp}{\RubikCBp}
+\newcommand{\textTwox}{\rrhx}
+\newcommand{\textTwoxp}{\rrhxp}
+\newcommand{\textTwoy}{\rrhy}
+\newcommand{\textTwoyp}{\rrhyp}
+\newcommand{\textTwoz}{\rrhz}
+\newcommand{\textTwozp}{\rrhzp}
+\newcommand{\textTwol}{\rrhl}
+ \newcommand{\textTwolp}{\rrhlp} %new
+\newcommand{\textTwor}{\rrhr}
+ \newcommand{\textTworp}{\rrhrp} %new
+\newcommand{\textTwou}{\rrhu}
+ \newcommand{\textTwoup}{\rrhup} %new
+\newcommand{\textTwod}{\rrhd}
+ \newcommand{\textTwodp}{\rrhdp} %new
+\newcommand{\textTwof}{\rrhf}
+ \newcommand{\textTwofp}{\rrhfp} %new
+\newcommand{\textTwob}{\rrhb}
+ \newcommand{\textTwobp}{\rrhbp} %new
+\newcommand{\textTwoLc}{\rrhLc}
+\newcommand{\textTwoLcp}{\rrhLcp}
+\newcommand{\textTwoRc}{\rrhRc}
+\newcommand{\textTwoRcp}{\rrhRcp}
+\newcommand{\textTwoUc}{\rrhUc}
+\newcommand{\textTwoUcp}{\rrhUcp}
+\newcommand{\textTwoDc}{\rrhDc}
+\newcommand{\textTwoDcp}{\rrhDcp}
+\newcommand{\textTwoFc}{\rrhFc}
+\newcommand{\textTwoFcp}{\rrhFcp}
+\newcommand{\textTwoBc}{\rrhBc}
+\newcommand{\textTwoBcp}{\rrhBcp}
+\newcommand{\textTwoCL}{\rrhCL}
+\newcommand{\textTwoCLp}{\rrhCLp}
+\newcommand{\textTwoCR}{\rrhCR}
+\newcommand{\textTwoCRp}{\rrhCRp}
+\newcommand{\textTwoCU}{\rrhCU}
+\newcommand{\textTwoCUp}{\rrhCUp}
+\newcommand{\textTwoCD}{\rrhCD}
+\newcommand{\textTwoCDp}{\rrhCDp}
+\newcommand{\textTwoCF}{\rrhCF}
+\newcommand{\textTwoCFp}{\rrhCFp}
+\newcommand{\textTwoCB}{\rrhCB}
+\newcommand{\textTwoCBp}{\rrhCBp}
+\endinput
+%%
+%% End of file `rubiktwocube.sty'.