<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">\ProvidesPackage{xpg-cyrillicnumbers}
        [2019/11/15 v0.2 %
         Formatting of Cyrillic alphabetic numbers]

%% This follows https://en.wikipedia.org/wiki/Cyrillic_numerals

% Numbers are often distinguished from text by centered dots.
% The commented code does this. We leave it deactivated until
% we get some expertise.
\newrobustcmd\cnw@print{}
\newrobustcmd\cnw@false{%
  \renewrobustcmd\cnw@print{}}
\newrobustcmd\cnw@true{%
%   \renewrobustcmd\cnw@print{$\cdot$}%
}
\cnw@true

\protected\def\cyr@alph#1{\expandafter\@cyr@alph\expandafter{\number#1}}
\def\@cyr@alph#1{%
  \ifnum#1&lt;\@ne\space\cyr@ill@value{#1}%
  \else
    \cnw@print
    \ifnum#1&lt;10\expandafter\cyr@num@i\number#1%
    \else
      \ifnum#1&lt;100\expandafter\cyr@num@ii\number#1%
      \else
        \ifnum#1&lt;\@m\expandafter\cyr@num@iii\number#1%
        \else
          \ifnum#1&lt;\@M\expandafter\cyr@num@iv\number#1%
          \else
            \ifnum#1&lt;100000\expandafter\cyr@num@v\number#1%
            \else
              \ifnum#1&lt;1000000\expandafter\cyr@num@vi\number#1%
              \else
                \space\cyr@ill@value{#1}%
              \fi
            \fi
          \fi
        \fi
      \fi
    \fi
  \fi
}

\protected\def\cyr@Alph#1{\expandafter\@cyr@Alph\expandafter{\number#1}}
\def\@cyr@Alph#1{%
  \ifnum#1&lt;\@ne\space\cyr@ill@value{#1}%
  \else
    \cnw@print
    \ifnum#1&lt;10\expandafter\cyr@Num@i\number#1%
    \else
      \ifnum#1&lt;100\expandafter\cyr@Num@ii\number#1%
      \else
        \ifnum#1&lt;\@m\expandafter\cyr@Num@iii\number#1%
        \else
          \ifnum#1&lt;\@M\expandafter\cyr@Num@iv\number#1%
          \else
            \ifnum#1&lt;100000\expandafter\cyr@Num@v\number#1%
            \else
              \ifnum#1&lt;1000000\expandafter\cyr@Num@vi\number#1%
              \else
                \space\cyr@ill@value{#1}%
              \fi
            \fi
          \fi
        \fi
      \fi
    \fi
  \fi
}

% Lowercase
\def\cyr@num@i#1{%
  \ifcase#1 \or Ð°\or Ð²\or Ð³\or Ð´\or Ðµ\or Ñ•\or Ð·\or Ð¸\or Ñ³\fi
  \ifnum#1=\z@\else\cnw@true\fi\cnw@print}
\def\cyr@num@ii#1{%
  \ifcase#1 \or Ñ–\or Ðº\or Ð»\or Ð¼\or Ð½\or Ñ¯\or Ð¾\or Ð¿\or Ñ‡\fi
  \ifnum#1=\z@\else\cnw@true\fi\cyr@num@i}
\def\cyr@num@iii#1{%
  \ifcase#1 \or Ñ€\or Ñ\or Ñ‚\or Ñƒ\or Ñ„\or Ñ…\or Ñ±\or Ñ¡\or Ñ†\fi
  \ifnum#1=\z@\cnw@false\else\cnw@true\fi\cyr@num@ii}
\def\cyr@num@iv#1{%
  \ifnum#1=\z@\else Ò‚\fi
  \ifcase#1 \or Ð°\or Ð²\or Ð³\or Ð´\or Ðµ\or Ñ•\or Ð·\or Ð¸\or Ñ³\fi
  \cyr@num@iii}
\def\cyr@num@v#1{%
  \ifnum#1=\z@\else Ò‚\fi
  \ifcase#1 \or Ñ–\or Ðº\or Ð»\or Ð¼\or Ð½\or Ñ¯\or Ð¾\or Ð¿\or Ñ‡\fi
  \cyr@num@iv}
\def\cyr@Num@vi#1{%
  \ifnum#1=\z@\else Ò‚\fi
  \ifcase#1 \or Ñ€\or Ñ\or Ñ‚\or Ñƒ\or Ñ„\or Ñ…\or Ñ±\or Ñ¡\or Ñ†\fi
  \cyr@num@v}

% Uppercase
\def\cyr@Num@i#1{%
  \ifcase#1 \or Ð\or Ð’\or Ð“\or Ð”\or Ð•\or Ð…\or Ð—\or Ð˜\or Ñ²\fi
  \ifnum#1=\z@\else\cnw@true\fi\cnw@print}
\def\cyr@Num@ii#1{%
  \ifcase#1 \or Ð†\or Ðš\or Ð›\or Ðœ\or Ð\or Ñ®\or Ðž\or ÐŸ\or Ð§\fi
  \ifnum#1=\z@\else\cnw@true\fi\cyr@Num@i}
\def\cyr@Num@iii#1{%
  \ifcase#1 \or Ð&nbsp;\or Ð¡\or Ð¢\or Ð£\or Ð¤\or Ð¥\or Ñ°\or Ñ&nbsp;\or Ð¦\fi
  \ifnum#1=\z@\cnw@false\else\cnw@true\fi\cyr@Num@ii}
\def\cyr@Num@iv#1{%
  \ifnum#1=\z@\else Ò‚\fi
  \ifcase#1 \or Ð\or Ð’\or Ð“\or Ð”\or Ð•\or Ð…\or Ð—\or Ð˜\or Ñ²\fi
  \cyr@Num@iii}
\def\cyr@Num@v#1{%
  \ifnum#1=\z@\else Ò‚\fi
  \ifcase#1 \or Ð†\or Ðš\or Ð›\or Ðœ\or Ð\or Ñ®\or Ðž\or ÐŸ\or Ð§\fi
  \cyr@Num@iv}
\def\cyr@Num@vi#1{%
  \ifnum#1=\z@\else Ò‚\fi
  \ifcase#1 \or Ð&nbsp;\or Ð¡\or Ð¢\or Ð£\or Ð¤\or Ð¥\or Ñ°\or Ñ&nbsp;\or Ð¦\fi
  \cyr@Num@v}
\def\cyr@ill@value#1{\xpg@warning{Illegal value (#1) for cyr numeral}[$#1$]}

\endinput
</pre></body></html>