diff options
author | Karl Berry <karl@freefriends.org> | 2017-06-10 21:33:34 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-06-10 21:33:34 +0000 |
commit | c083335b46757ec9b33f5c7f30a2d5363b8aab7b (patch) | |
tree | 9dc865dd940177208897c93a9b9d46aee4d5393d /Master/texmf-dist/tex | |
parent | ad78003c27ccfa751f8d895d8fda3c4802f89d0f (diff) |
babel-ukrainian (10jun17)
git-svn-id: svn://tug.org/texlive/trunk@44550 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel-ukrainian/ukraineb.ldf | 317 |
1 files changed, 170 insertions, 147 deletions
diff --git a/Master/texmf-dist/tex/generic/babel-ukrainian/ukraineb.ldf b/Master/texmf-dist/tex/generic/babel-ukrainian/ukraineb.ldf index a6530806b7e..b8748ff7dd4 100644 --- a/Master/texmf-dist/tex/generic/babel-ukrainian/ukraineb.ldf +++ b/Master/texmf-dist/tex/generic/babel-ukrainian/ukraineb.ldf @@ -12,7 +12,7 @@ %% See http://www.latex-project.org/lppl.txt %% ---------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesLanguage{ukraineb}[2017/06/08 1.3i Ukrainian support for the Babel system] +\ProvidesLanguage{ukraineb}[2017/06/10 1.4 Ukrainian support for the Babel system] \LdfInit{ukrainian}{captionsukrainian} \ifdefined\if@ukr@uni@ode \PackageError{babel}{if@ukr@uni@ode already defined.\MessageBreak @@ -139,163 +139,166 @@ \ProvideTextCommandDefault{\cyrdash}{\iflanguage{ukrainian}% {\hbox to.8em{--\hss--}}{\textemdash}} \declare@shorthand{ukrainian}{",}{\nobreak\hskip.2em\ignorespaces} + % + % ---------------------- Caption Names --------------------------- + % \if@ukr@uni@ode - %\captionsukrainian - \addto\captionsukrainian{% - \def\prefacename{Вступ}% [babel] - \def\refname{Література}% [only article] - \def\abstractname{Анотація}% [only article, report] - \def\bibname{Бібліоґрафія}% [only book, report] - \def\chaptername{Глава}% [only book, report] - \def\appendixname{Додаток}% - \def\contentsname{Зміст}% - \let\tocname=\contentsname - \def\listfigurename{Перелік ілюстрацій}% - \def\listtablename{Перелік таблиць}% - \def\indexname{Предметний покажчик}% - \def\authorname{Іменний покажчик}% - \def\figurename{Рис.}% - \def\tablename{Таблиця}% - \def\partname{Частина}% - \def\enclname{вкл.}% - \def\ccname{вих.}% - \def\headtoname{вх.}% - \def\pagename{с.}% [letter] - \def\seename{див.}% - \def\alsoname{див.\ також}% - \def\proofname{Доведення}% [amsthm] - \def\glossaryname{Словник термінів}% - \def\acronymname{Абревіатури}% [glossaries] {Acronyms} - \def\lstlistingname{Лістинг}% [listings] (the environment) {Listing} - \def\lstlistlistingname{Лістинги}% [listings] (the "List of") {Listings} - \def\notesname{Нотатки}% [endnotes] {Notes} - }% - %% ========================================= - %% nomencl - \ifdefined\nomname +\PackageInfo{bulgarian.ldf}{Executing the 3.9 or latter} +\StartBabelCommands*{ukrainian}{captions}[unicode, fontenc=EU1 EU2, charset=utf8] + \SetString\prefacename{Вступ}% [babel] + \SetString\refname{Література}% [only article] + \SetString\abstractname{Анотація}% [only article, report] + \SetString\bibname{Бібліоґрафія}% [only book, report] + \SetString\chaptername{Розділ}% [only book, report] + \SetString\appendixname{Додаток}% + \SetString\contentsname{Зміст}% + \SetString\tocname{\contentsname}% + \SetString\listfigurename{Перелік ілюстрацій}% + \SetString\listtablename{Перелік таблиць}% + \SetString\indexname{Предметний покажчик}% + \SetString\authorname{Іменний покажчик}% + \SetString\figurename{Рис.}% + \SetString\tablename{Таблиця}% + \SetString\partname{Частина}% + \SetString\enclname{вкл.}% + \SetString\ccname{вих.}% + \SetString\headtoname{вх.}% + \SetString\pagename{с.}% [letter] + \SetString\seename{див.}% + \SetString\alsoname{див.\ також}% + \SetString\proofname{Доведення}% [amsthm] + \SetString\glossaryname{Словник термінів}% + \SetString\acronymname{Абревіатури}% [glossaries] {Acronyms} + \SetString\lstlistingname{Лістинг}% [listings] (the environment) {Listing} + \SetString\lstlistlistingname{Лістинги}% [listings] (the "List of") {Listings} + \SetString\nomname{Позначення} + \SetString\notesname{Нотатки}% [endnotes] {Notes} + % + % ------------------------- nomencl ------------------------------ + % + \ifdefined\nomname% \addto\captionsukrainian{% - \def\nomname{Позначення}% \def\eqdeclaration#1{, див.\nobreakspace(#1)}% \def\pagedeclaration#1{, стор.\nobreakspace#1}% }% \fi - %% ========================================= - %% RevTeX4 & RevTeX4-1 - %%\@ifclassloaded{revtex4-1} - %%{<true code>} - %%{<false coode>}% + % + % ------------------- RevTeX4 & RevTeX4-1 ------------------------ + % %\@ifclassloaded{revtex4-1} - %{% + %{<true code>} + %{<false coode>}% + % \ifnum\@ifclassloaded{revtex4}{1}{\@ifclassloaded{revtex4-1}{1}{0}}>0 - \addto\captionsukrainian{% - \def\lofname{\listfigurename} - \def\lotname{\listtablename} - \def\figuresname{Рисунки}%{Figures}% - \def\tablesname{Таблиці}%{Tables}% - \def\appendixesname{Додатки}%{Appendixes}% - \def\acknowledgmentsname{Подяки}%{Acknowledgments} - \def\andname{та}%{and} - \def\@pacs@name{PACS коди: }%{PACS numbers: }% - \def\@keys@name{Ключові слова: }%{Keywords: }% - \def\Dated@name{Дата: }%{Dated: }% - \def\Received@name{Отримано }%{Received }% - \def\Revised@name{Виправлена версія }%{Revised }% - \def\Accepted@name{Прийнято }%{Accepted }% - \def\Published@name{Опубліковано }%{Published }% - }% + \SetString\lofname{\listfigurename} + \SetString\lotname{\listtablename} + \SetString\figuresname{Рисунки} + \SetString\tablesname{Таблиці} + \SetString\appendixesname{Додатки} + \SetString\acknowledgmentsname{Подяки} + \SetString\andname{та}%{and} + \SetString\@pacs@name{PACS коди: } + \SetString\@keys@name{Ключові слова: } + \SetString\Dated@name{Дата: } + \SetString\Received@name{Отримано } + \SetString\Revised@name{Виправлена версія } + \SetString\Accepted@name{Прийнято } + \SetString\Published@name{Опубліковано } %}{}% \fi + \EndBabelCommands \else -\addto\captionsukrainian{% - \def\prefacename{{\cyr\CYRV\cyrs\cyrt\cyru\cyrp}}% - \def\refname{% +\StartBabelCommands*{ukrainian}{captions} + \SetString\prefacename{{\cyr\CYRV\cyrs\cyrt\cyru\cyrp}}% + \SetString\refname{% {\cyr\CYRL\cyrii\cyrt\cyre\cyrr\cyra\cyrt\cyru\cyrr\cyra}}% - \def\abstractname{% + \SetString\abstractname{% {\cyr\CYRA\cyrn\cyro\cyrt\cyra\cyrc\cyrii\cyrya}}% - \def\bibname{% + \SetString\bibname{% {\cyr\CYRB\cyrii\cyrb\cyrl\cyrii\cyro\cyrgup\cyrr\cyra\cyrf\cyrii\cyrya}}% - \def\chaptername{{\cyr\CYRR\cyro\cyrz\cyrd\cyrii\cyrl}}% - \def\appendixname{{\cyr\CYRD\cyro\cyrd\cyra\cyrt\cyro\cyrk}}% - \def\contentsname{{\cyr\CYRZ\cyrm\cyrii\cyrs\cyrt}}% - \let\tocname=\contentsname - \def\listfigurename{{\cyr\CYRP\cyre\cyrr\cyre\cyrl\cyrii\cyrk - \ \cyrii\cyrl\cyryu\cyrs\cyrt\cyrr\cyra\cyrc\cyrii\cyrishrt}}% - \def\listtablename{{\cyr\CYRP\cyre\cyrr\cyre\cyrl\cyrii\cyrk - \ \cyrt\cyra\cyrb\cyrl\cyri\cyrc\cyrsftsn}}% - \def\indexname{{\cyr\CYRP\cyrr\cyre\cyrd\cyrm\cyre\cyrt\cyrn\cyri\cyrishrt + \SetString\chaptername{{\cyr\CYRR\cyro\cyrz\cyrd\cyrii\cyrl}}% + \SetString\appendixname{{\cyr\CYRD\cyro\cyrd\cyra\cyrt\cyro\cyrk}}% + \SetString\contentsname{{\cyr\CYRZ\cyrm\cyrii\cyrs\cyrt}}% + \SetString\tocname{\contentsname} + \SetString\listfigurename{{\cyr\CYRP\cyre\cyrr\cyre\cyrl\cyrii\cyrk + \ \cyrii\cyrl\cyryu\cyrs\cyrt\cyrr\cyra\cyrc\cyrii\cyrishrt}}% + \SetString\listtablename{{\cyr\CYRP\cyre\cyrr\cyre\cyrl\cyrii\cyrk + \ \cyrt\cyra\cyrb\cyrl\cyri\cyrc\cyrsftsn}}% + \SetString\indexname{{\cyr\CYRP\cyrr\cyre\cyrd\cyrm\cyre\cyrt\cyrn\cyri\cyrishrt \ \cyrp\cyro\cyrk\cyra\cyrzh\cyrch\cyri\cyrk}}% - \def\authorname{{\cyr\CYRII\cyrm\cyre\cyrn\cyrn\cyri\cyrishrt - \ \cyrp\cyro\cyrk\cyra\cyrzh\cyrch\cyri\cyrk}}% - \def\figurename{{\cyr\CYRR\cyri\cyrs.}}% - \def\tablename{{\cyr\CYRT\cyra\cyrb\cyrl.}}% - \def\partname{{\cyr\CYRCH\cyra\cyrs\cyrt\cyri\cyrn\cyra}}% - \def\enclname{{\cyr\cyrv\cyrk\cyrl\cyra\cyrd\cyrk\cyra}}% - \def\ccname{{\cyr\cyrk\cyro\cyrp\cyrii\cyrya}}% - \def\headtoname{{\cyr\cyrv\cyrh.}}% - \def\pagename{{\cyr\cyrs.}}% - \def\seename{{\cyr\cyrd\cyri\cyrv.}}% - \def\alsoname{{\cyr\cyrd\cyri\cyrv.\ \cyrt\cyra\cyrk\cyro\cyrzh}} - \def\proofname{{\cyr\CYRD\cyro\cyrv\cyre\cyrd\cyre\cyrn\cyrn\cyrya}}% - \def\glossaryname{{\cyr\CYRS\cyrl\cyro\cyrv\cyrn\cyri\cyrk\ % - \cyrt\cyre\cyrr\cyrm\cyrii\cyrn\cyrii\cyrv}}% - \def\nomname{\CYRP\cyro\cyrz\cyrn\cyra\cyrch\cyre\cyrn\cyrn\cyrya}% - \def\notesname{\CYRN\cyro\cyrt\cyra\cyrt\cyrk\cyri}% - }% - %% ========================================= - %% RevTeX4 & RevTeX4-1 + \SetString\authorname{{\cyr\CYRII\cyrm\cyre\cyrn\cyrn\cyri\cyrishrt + \ \cyrp\cyro\cyrk\cyra\cyrzh\cyrch\cyri\cyrk}}% + \SetString\figurename{{\cyr\CYRR\cyri\cyrs.}}% + \SetString\tablename{{\cyr\CYRT\cyra\cyrb\cyrl.}}% + \SetString\partname{{\cyr\CYRCH\cyra\cyrs\cyrt\cyri\cyrn\cyra}}% + \SetString\enclname{{\cyr\cyrv\cyrk\cyrl\cyra\cyrd\cyrk\cyra}}% + \SetString\ccname{{\cyr\cyrk\cyro\cyrp\cyrii\cyrya}}% + \SetString\headtoname{{\cyr\cyrv\cyrh.}}% + \SetString\pagename{{\cyr\cyrs.}}% + \SetString\seename{{\cyr\cyrd\cyri\cyrv.}}% + \SetString\alsoname{{\cyr\cyrd\cyri\cyrv.\ \cyrt\cyra\cyrk\cyro\cyrzh}} + \SetString\proofname{{\cyr\CYRD\cyro\cyrv\cyre\cyrd\cyre\cyrn\cyrn\cyrya}}% + \SetString\glossaryname{{\cyr\CYRS\cyrl\cyro\cyrv\cyrn\cyri\cyrk + \ \cyrt\cyre\cyrr\cyrm\cyrii\cyrn\cyrii\cyrv}}% + \SetString\nomname{\CYRP\cyro\cyrz\cyrn\cyra\cyrch\cyre\cyrn\cyrn\cyrya}% + \SetString\notesname{\CYRN\cyro\cyrt\cyra\cyrt\cyrk\cyri}% + % + % ------------------- RevTeX4 & RevTeX4-1 ------------------------ + % \ifnum \@ifclassloaded{revtex4}{1}{\@ifclassloaded{revtex4-1}{1}{0}}>0 - \addto\captionsukrainian{% - \def\lofname{\listfigurename} - \def\lotname{\listtablename} - \def\figuresname{\CYRR\cyri\cyrs\cyru\cyrn\cyrk\cyri}%{Figures}% - \def\tablesname{\CYRT\cyra\cyrb\cyrl\cyri\cyrc\cyrii}%{Tables}% - \def\appendixesname{\CYRD\cyro\cyrd\cyra\cyrt\cyrk\cyri}%{Appendixes}% - \def\acknowledgmentsname{\CYRP\cyro\cyrd\cyrya\cyrk\cyri}%{Acknowledgments} - \def\andname{\cyrt\cyra}%{and} - \def\@pacs@name{PACS \cyrk\cyro\cyrd\cyri: }%{PACS numbers: }% - \def\@keys@name{\CYRK\cyrl\cyryu\cyrch\cyro\cyrv\cyrii - \ \cyrs\cyrl\cyro\cyrv\cyra: }%{Keywords: }% - \def\Dated@name{\CYRD\cyra\cyrt\cyra: }%{Dated: }% - \def\Received@name{\CYRO\cyrt\cyrr\cyri\cyrm\cyra\cyrn\cyro }%{Received }% - \def\Revised@name{\CYRV\cyri\cyrp\cyrr\cyra\cyrv\cyrl\cyre\cyrn\cyro }%{Revised }% - \def\Accepted@name{\CYRP\cyrr\cyri\cyrishrt\cyrn\cyrya\cyrt\cyro }%{Accepted }% - \def\Published@name{\CYRO\cyrp\cyru\cyrb\cyrl\cyrii\cyrk\cyro\cyrv\cyra\cyrn\cyro }%{Published }% - }% + \SetString\lofname{\listfigurename} + \SetString\lotname{\listtablename} + \SetString\figuresname{\CYRR\cyri\cyrs\cyru\cyrn\cyrk\cyri} + \SetString\tablesname{\CYRT\cyra\cyrb\cyrl\cyri\cyrc\cyrii} + \SetString\appendixesname{\CYRD\cyro\cyrd\cyra\cyrt\cyrk\cyri} + \SetString\acknowledgmentsname{\CYRP\cyro\cyrd\cyrya\cyrk\cyri} + \SetString\andname{\cyrt\cyra}%{and} + \SetString\@pacs@name{PACS \cyrk\cyro\cyrd\cyri: } + \SetString\@keys@name{\CYRK\cyrl\cyryu\cyrch\cyro\cyrv\cyrii + \ \cyrs\cyrl\cyro\cyrv\cyra: } + \SetString\Dated@name{\CYRD\cyra\cyrt\cyra: } + \SetString\Received@name{\CYRO\cyrt\cyrr\cyri\cyrm\cyra\cyrn\cyro } + \SetString\Revised@name{\CYRV\cyri\cyrp\cyrr\cyra\cyrv\cyrl\cyre\cyrn\cyro } + \SetString\Accepted@name{\CYRP\cyrr\cyri\cyrishrt\cyrn\cyrya\cyrt\cyro }% + \SetString\Published@name{\CYRO\cyrp\cyru\cyrb\cyrl\cyrii\cyrk\cyro\cyrv\cyra\cyrn\cyro } \fi + \EndBabelCommands \fi + % + % ---------------------- Date --------------------------- + % \if@ukr@uni@ode - \addto\dateukrainian{% - \def\today{\number\day~\ifcase\month\or - січня\or - лютого\or - березня\or - квітня\or - травня\or - червня\or - липня\or - серпня\or - вересня\or - жовтня\or - листопада\or - грудня\fi - \space \number\year~р.}} +\PackageInfo{bulgarian.ldf}{Executing the post 3.9 branch for dates} +\StartBabelCommands*{ukrainian}{date}[unicode, fontenc=EU1 EU2, charset=utf8] +\SetStringLoop{month#1name}{% +січня,лютого,березня,квітня,травня,червня,% +липня,серпня,вересня,жовтня,листопада,грудня} + +\SetStringLoop{weekday#1name}{% +понеділок,вівторок,середа,четвер,п'ятниця,субота,неділя} + +\SetString\abbgyear{р.} \else -\def\dateukrainian{% - \def\today{\number\day~\ifcase\month\or - \cyrs\cyrii\cyrch\cyrn\cyrya\or - \cyrl\cyryu\cyrt\cyro\cyrg\cyro\or - \cyrb\cyre\cyrr\cyre\cyrz\cyrn\cyrya\or - \cyrk\cyrv\cyrii\cyrt\cyrn\cyrya\or - \cyrt\cyrr\cyra\cyrv\cyrn\cyrya\or - \cyrch\cyre\cyrr\cyrv\cyrn\cyrya\or - \cyrl\cyri\cyrp\cyrn\cyrya\or - \cyrs\cyre\cyrr\cyrp\cyrn\cyrya\or - \cyrv\cyre\cyrr\cyre\cyrs\cyrn\cyrya\or - \cyrzh\cyro\cyrv\cyrt\cyrn\cyrya\or - \cyrl\cyri\cyrs\cyrt\cyro\cyrp\cyra\cyrd\cyra\or - \cyrg\cyrr\cyru\cyrd\cyrn\cyrya\fi - \space\number\year~\cyrr.}} +\StartBabelCommands*{ukrainian}{date} +\SetStringLoop{month#1name}{% +\cyrs\cyrii\cyrch\cyrn\cyrya,% +\cyrl\cyryu\cyrt\cyro\cyrg\cyro,% +\cyrb\cyre\cyrr\cyre\cyrz\cyrn\cyrya,% +\cyrk\cyrv\cyrii\cyrt\cyrn\cyrya,% +\cyrt\cyrr\cyra\cyrv\cyrn\cyrya,% +\cyrch\cyre\cyrr\cyrv\cyrn\cyrya,% +\cyrl\cyri\cyrp\cyrn\cyrya,% +\cyrs\cyre\cyrr\cyrp\cyrn\cyrya,% +\cyrv\cyre\cyrr\cyre\cyrs\cyrn\cyrya,% +\cyrzh\cyro\cyrv\cyrt\cyrn\cyrya,% +\cyrl\cyri\cyrs\cyrt\cyro\cyrp\cyra\cyrd\cyra,% +\cyrg\cyrr\cyru\cyrd\cyrn\cyrya% +}% +\SetString\abbgyear{\cyrr.} \fi +\SetString\today{\number\day\,\csname month\romannumeral\month name\endcsname\space +\number\year\,\abbgyear} +\EndBabelCommands \providehyphenmins{\CurrentOption}{\tw@\tw@} \providehyphenmins{ukrainian}{\tw@\tw@} \addto\extrasukrainian{\cyrillictext} @@ -305,39 +308,41 @@ \addto\noextrasukrainian{\bbl@deactivate{"}} \addto\extrasukrainian{\bbl@frenchspacing} \addto\noextrasukrainian{\bbl@nonfrenchspacing} -\def\Asbuk#1{\expandafter\ukrainian@Alph\csname c@#1\endcsname} + +\addto\extrasukrainian{ +\babel@save{\@Alph} \if@ukr@uni@ode - \def\ukrainian@Alph#1{\ifcase#1\or + \def\@Alph#1{\ifcase#1\or А\or Б\or В\or Г\or Д\or Е\or Ж\or И\or К\or Л\or М\or Н\or П\or Р\or С\or Т\or У\or Ф\or Х\or Ц\or Ш\or Щ\or Ю\or Я\else\@ctrerr\fi} \else - \def\ukrainian@Alph#1{\ifcase#1\or + \def\@Alph#1{\ifcase#1\or \CYRA\or\CYRB\or\CYRV\or\CYRG\or\CYRD\or\CYRE\or\CYRZH\or \CYRI\or\CYRK\or\CYRL\or\CYRM\or\CYRN\or\CYRP\or\CYRR\or \CYRS\or\CYRT\or\CYRU\or\CYRF\or\CYRH\or\CYRC\or\CYRSH\or \CYRSHCH\or\CYRYU\or\CYRYA\else\@ctrerr\fi} \fi -\def\asbuk#1{\expandafter\ukrainian@alph\csname c@#1\endcsname} +} +\addto\extrasukrainian{ +\babel@save{\@alph} \if@ukr@uni@ode - \def\ukrainian@alph#1{\ifcase#1\or + \def\@alph#1{\ifcase#1\or а\or б\or в\or г\or д\or е\or ж\or и\or к\or л\or м\or н\or п\or р\or с\or т\or у\or ф\or х\or ц\or ш\or щ\or ю\or я\else\@ctrerr\fi} \else - \def\ukrainian@alph#1{\ifcase#1\or + \def\@alph#1{\ifcase#1\or \cyra\or\cyrb\or\cyrv\or\cyrg\or\cyrd\or\cyre\or\cyrzh\or \cyri\or\cyrk\or\cyrl\or\cyrm\or\cyrn\or\cyrp\or\cyrr\or \cyrs\or\cyrt\or\cyru\or\cyrf\or\cyrh\or\cyrc\or\cyrsh\or \cyrshch\or\cyryu\or\cyrya\else\@ctrerr\fi} \fi -\bbl@declare@ttribute{ukrainian}{ancient}{% - \PackageInfo{babel}{ukrainian attribute set to ancient}% - \let\captionsukrainian=\captionsukrainian@ancient - \let\dateukrainian=\dateukrainian@ancient } +\DeclareRobustCommand{\No}{% + \ifmmode{\nfss@text{\textnumero}}\else\textnumero\fi} \def\sh{\mathop{\operator@font sh}\nolimits} \def\ch{\mathop{\operator@font ch}\nolimits} \def\tg{\mathop{\operator@font tg}\nolimits} @@ -353,6 +358,24 @@ \def\cth{\mathop{\operator@font cth}\nolimits} \def\cosec{\mathop{\operator@font cosec}\nolimits} \ldf@finish{ukrainian} +%% +%% \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 \~} +%% + %% ---------------------------------------------------------------- %% Copyright 2017 Sergiy М. Ponomarenko %% Copyright 2011-2017 Igor A. Kotelnikov. |