Skip to content
Snippets Groups Projects
for-arxiv-template.cls 81 KiB
Newer Older
Nitschke, Ingo's avatar
Nitschke, Ingo committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000
%%
%% Copyright 2021 OXFORD UNIVERSITY PRESS
%%
%% This file is part of the 'ima-authoring-template Bundle'.
%% ---------------------------------------------
%%
%% It may be distributed under the conditions of the LaTeX Project Public
%% License, either version 1.2 of this license or (at your option) any
%% later version.  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.2 or later is part of all distributions of LaTeX
%% version 1999/12/01 or later.
%%
%% The list of all files belonging to the 'ima-authoring-template Bundle' is
%% given in the file `manifest.txt'.
%%
%% Template article for OXFORD UNIVERSITY PRESS's document class `ima-authoring-template'
%% with bibliographic references
%%

\newcommand\classname{for-arxiv-template}
\newcommand\lastmodifieddate{2021/12/18}
\newcommand\versionnumber{1.0}

\NeedsTeXFormat{LaTeX2e}[2001/06/01]
\ProvidesClass{\classname}[\lastmodifieddate\space\versionnumber]

% Are we printing crop marks?
\newif\if@cropmarkson \@cropmarksontrue
%
\newif\if@imaiai\global\@imaiaifalse
\newif\if@imaman\global\@imamanfalse
\newif\if@imamat\global\@imamatfalse
\newif\if@imamci\global\@imamcifalse
\newif\if@imammb\global\@imammbfalse
\newif\if@imanum\global\@imanumfalse
\newif\if@imatrm\global\@imatrmfalse

\newif\if@unnumsec\global\@unnumsecfalse
\newif\if@final\global\@finalfalse
\newif\if@weblink\@weblinkfalse
\newif\if@proof\global\@prooffalse%

\if@compatibility\else
\DeclareOption{namedate}{\PassOptionsToPackage{authoryear,round}{natbib}}
\DeclareOption{numbers}{\PassOptionsToPackage{numbers,sort}{natbib}}
\DeclareOption{draft}{\PassOptionsToPackage{draft}{graphicx}}
\DeclareOption{b4paper}{\PassOptionsToPackage{b4}{crop}}
\DeclareOption{centre}{\PassOptionsToPackage{center}{crop}}
\DeclareOption{crop}{\PassOptionsToPackage{cam}{crop}\global\@cropmarksontrue}
\DeclareOption{nocrop}{\PassOptionsToPackage{off}{crop}\global\@cropmarksonfalse}
\DeclareOption{info}{\PassOptionsToPackage{info}{crop}}
\DeclareOption{noinfo}{\PassOptionsToPackage{noinfo}{crop}}
\DeclareOption{final}{\global\@finaltrue}
\DeclareOption{unnumsec}{\global\@unnumsectrue}
%
\DeclareOption{webpdf}{\@weblinktrue}
%
\DeclareOption{imaiai}{\global\@imaiaitrue}
\DeclareOption{imaman}{\global\@imamantrue}
\DeclareOption{imamat}{\global\@imamattrue}
\DeclareOption{imamci}{\global\@imamcitrue}
\DeclareOption{imammb}{\global\@imammbtrue}
\DeclareOption{imanum}{\global\@imanumtrue}
\DeclareOption{imatrm}{\global\@imatrmtrue}

\def\newsymbols#1{
\let\symb=#1
}

\DeclareOption{mathptmx}{\AtEndOfClass{\RequirePackage[subscriptcorrection,nofontinfo]{mathptmx}}
\DeclareMathSymbol\Gamma  {\mathord}{letters}{48}
\ifx Y\symb
\DeclareMathSymbol\Delta  {\mathord}{letters}{49}
\fi
\DeclareMathSymbol\Theta  {\mathord}{letters}{50}
\DeclareMathSymbol\Lambda {\mathord}{letters}{51}
\DeclareMathSymbol\Xi     {\mathord}{letters}{52}
\DeclareMathSymbol\Pi     {\mathord}{letters}{53}
\DeclareMathSymbol\Sigma  {\mathord}{letters}{54}
\DeclareMathSymbol\Upsilon{\mathord}{letters}{55}
\DeclareMathSymbol\Phi    {\mathord}{letters}{56}
\DeclareMathSymbol\Psi    {\mathord}{letters}{57}
\DeclareMathSymbol\Omega  {\mathord}{letters}{127}
}
\DeclareOption{mathptmx}{%
    \g@addto@macro{\@greeksetup}{%
        \DeclareMathSymbol\varGamma    {\mathord}{letters}{0}
    \ifx Y\symb
       \DeclareMathSymbol\varDelta    {\mathord}{letters}{1}
     \fi
       \DeclareMathSymbol\varTheta    {\mathord}{letters}{2}
       \DeclareMathSymbol\varLambda   {\mathord}{letters}{3}
       \DeclareMathSymbol\varXi       {\mathord}{letters}{4}
       \DeclareMathSymbol\varPi       {\mathord}{letters}{5}
       \DeclareMathSymbol\varSigma    {\mathord}{letters}{6}
       \DeclareMathSymbol\varUpsilon  {\mathord}{letters}{7}
       \DeclareMathSymbol\varPhi      {\mathord}{letters}{8}
       \DeclareMathSymbol\varPsi      {\mathord}{letters}{9}
       \DeclareMathSymbol\varOmega    {\mathord}{letters}{10}
      }
}
\DeclareOption{slantedgreek}{\def\@greeksetup{\AtBeginDocument{%
\renewcommand{\Gamma}{{\mit\varGamma}}
\ifx Y\symb
\renewcommand{\Delta}{{\mit\varDelta}}
\fi
\renewcommand{\Theta}{{\mit\varTheta}}
\renewcommand{\Lambda}{{\mit\varLambda}}
\renewcommand{\Xi}{{\mit\varXi}}
\renewcommand{\Pi}{{\mit\varPi}}
\renewcommand{\Sigma}{{\mit\varSigma}}
\renewcommand{\Upsilon}{{\mit\varUpsilon}}
\renewcommand{\Phi}{{\mit\varPhi}}
\renewcommand{\Psi}{{\mit\varPsi}}
\renewcommand{\Omega}{{\mit\varOmega}}
}}}
\newsymbols{Y}

\DeclareOption{uprightgreek}{\def\@greeksetup{}}

\fi
\ExecuteOptions{b4paper,centre,info,slantedgreek,times,mathptmx}%
\ProcessOptions

\setlength{\paperheight}{245.96truemm}
\setlength{\paperwidth}{188.88truemm}

% Load all necessary packages
\RequirePackage{crop}
\RequirePackage{graphicx}
\RequirePackage{caption}
\RequirePackage{amsmath}
\RequirePackage{array}
\RequirePackage{color}
\RequirePackage{xcolor}
\RequirePackage{amssymb}
\RequirePackage{flushend}
\RequirePackage{stfloats}
\RequirePackage[figuresright]{rotating}
\RequirePackage{chngpage}
\RequirePackage{totcount}
\RequirePackage{fix-cm}
\RequirePackage{times}
\RequirePackage{mathptmx}

%\RequirePackage[LY1,mtbold]{mathtime}2015
\def\sffamilyfont{\sffamily}
\def\sffamilyfontitalic{\sffamily\itshape\selectfont}
\def\sffamilyfontbold{\sffamily\bfseries\selectfont}
\def\sffamilyfontbolditalic{\sffamily\bfseries\itshape\selectfont}
\def\sffamilyfontcn{\sffamily\fontseries{m}\fontshape{n}\selectfont}
\def\sffamilyfontcnitalic{\sffamily\fontseries{m}\fontshape{it}\selectfont}
\def\sffamilyfontcnbold{\sffamily\bfseries\selectfont}
\def\sffamilyfontcnbolditalic{\sffamily\fontseries{b}\fontshape{it}\selectfont}

% Not sure if needed.
\newcommand\@ptsize{0}

% Set twoside printing
\@twosidetrue

% Marginal notes are on the outside edge
\@mparswitchfalse

\reversemarginpar

        \renewcommand\normalsize{%
           \@setfontsize\normalsize{10bp}{12pt}%
           \abovedisplayskip 11\p@ \@plus2\p@ \@minus5\p@
           \abovedisplayshortskip \z@ \@plus3\p@
           \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
           \belowdisplayskip \abovedisplayskip
           \let\@listi\@listI}
\normalsize
\let\@bls\baselineskip

\newcommand\small{%
    \@setfontsize\small{7}{10}%
    \abovedisplayskip 10\p@ minus 3\p@
    \belowdisplayskip \abovedisplayskip
    \abovedisplayshortskip \z@ plus 2\p@
    \belowdisplayshortskip 4\p@ plus 2\p@ minus2\p@
    \def\@listi{\topsep 4.5\p@ plus 2\p@ minus 1\p@
       \itemsep \parsep
       \topsep 4\p@ plus 2\p@ minus 2\p@}}

\newcommand\footnotesize{%
    \@setfontsize\footnotesize{8}{10}%
    \abovedisplayskip 6\p@ minus 3\p@
    \belowdisplayskip\abovedisplayskip
    \abovedisplayshortskip \z@ plus 3\p@
    \belowdisplayshortskip 6\p@ plus 3\p@ minus 3\p@
    \def\@listi{\topsep 3\p@ plus 1\p@ minus 1\p@
       \parsep 2\p@ plus 1\p@ minus 1\p@\itemsep \parsep}}

\def\scriptsize{\@setfontsize\scriptsize{6.5pt}{9.5pt}}
\def\tiny{\@setfontsize\tiny{5pt}{7pt}}
\def\large{\@setfontsize\large{11.5pt}{12pt}}
\def\Large{\@setfontsize\Large{14pt}{16}}
\def\LARGE{\@setfontsize\LARGE{15pt}{17pt}}
\def\huge{\@setfontsize\huge{22pt}{22pt}}
\def\Huge{\@setfontsize\Huge{30pt}{30pt}}

\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
\DeclareOldFontCommand{\sf}{\normalfont\sffamilyfont}{\mathsf}
\DeclareOldFontCommand{\sfit}{\normalfont\sffamily\itshape}{\mathsf}
\DeclareOldFontCommand{\sfb}{\normalfont\sffamilyfontbold}{\mathsf}
\DeclareOldFontCommand{\sfbi}{\normalfont\sffamily\bfseries\itshape}{\mathsf}
\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}

% Crop Here
\def\oddsideskip{48pt}%
\def\evensideskip{56pt}%

\newdimen\croppaperwidth
\newdimen\croppaperheight
\setlength{\croppaperwidth}{\paperwidth}
\setlength{\croppaperheight}{\paperheight}
\if@weblink%%
\else%
    \addtolength{\croppaperwidth}{28truemm}%
    \addtolength{\croppaperheight}{28truemm}%
\fi%
    \CROP@size{\croppaperwidth}{\croppaperheight}%
%
\if@weblink%%
\else
\renewcommand*\CROP@@ulc{%
    \begin{picture}(0,0)
        \unitlength\p@\thinlines
        \put(-40,0){\line(1,0){30.65}}
        \put(0,42){\line(0,-1){30.65}}
    \end{picture}%
}
\renewcommand*\CROP@@urc{%
    \begin{picture}(0,0)
        \unitlength\p@\thinlines
        \put(41,0){\line(-1,0){30.65}}
        \put(0,42){\line(0,-1){30.65}}
    \end{picture}%
}
\renewcommand*\CROP@@llc{%
    \begin{picture}(0,0)
        \unitlength\p@\thinlines
        \put(-40,0){\line(1,0){30.65}}
        \put(0,-40){\line(0,1){30.65}}
    \end{picture}%
}
\renewcommand*\CROP@@lrc{%
    \begin{picture}(0,0)
        \unitlength\p@\thinlines
        \put(41,0){\line(-1,0){30.65}}
        \put(0,-40){\line(0,1){30.65}}
    \end{picture}%
}
%
\renewcommand*\CROP@@info{{%
    \global\advance\CROP@index\@ne
    \def\x{\discretionary{}{}{\hbox{\kern.5em--\kern.5em}}}%
    \advance\paperwidth-20\p@
    \dimen@10pt
    \ifx\CROP@pagecolor\@empty
    \else
        \advance\dimen@\CROP@overlap
    \fi
    \hb@xt@\z@{%
        \hss
        \vbox to\z@{%
            %\centering
            \hsize\paperwidth
            \vss
            \normalfont
            \normalsize
            \expandafter\csname\CROP@font\endcsname{\ifodd\c@page\hfill\else\hspace*{\evensideskip}\fi\if@proof\noindent\fboxsep1\p@\fbox{\fboxsep2\p@\fbox{\@oupdraftcopy}}\else\fi\ifodd\c@page\hspace*{\oddsideskip}\else\fi}%\noindent\fbox{\fboxsep2\p@\fbox{\@oupdraftcopy}}
            \vskip\dimen@
        }%
        \hss
    }%
}}
%
\crop[cam]%
\fi%
%
\newdimen\Croppdfwidth
\newdimen\Croppdfheight
\newdimen\Trimpdfwidth
\newdimen\Trimpdfheight
\Croppdfwidth=\croppaperwidth
\Croppdfheight=\croppaperheight
\advance\Croppdfwidth by -0.71mm
\advance\Croppdfheight by -0.92mm
\Trimpdfwidth=\paperwidth
\Trimpdfheight=\paperheight
\advance\Trimpdfwidth by -0.59mm
\advance\Trimpdfheight by -0.88mm
%
\newdimen\CP@toff@wd
\newdimen\CP@toff@ht
%
\newdimen\CP@boff@wd
\newdimen\CP@boff@ht
%
\newdimen\CP@crop@wd
\newdimen\CP@crop@ht
%
\newdimen\CP@bled@wd
\newdimen\CP@bled@ht
%
\newdimen\CP@trim@wd
\newdimen\CP@trim@ht
%
\def\str@yes{yes}
\def\SetCrop#1#2{%
    \gdef\IsCropSet{yes}
    \global\CP@crop@wd=#1\relax
    \global\CP@crop@ht=#2\relax}
\def\SetTrim#1#2{%
    \gdef\IsTrimSet{yes}
    \global\CP@trim@wd=#1\relax
    \global\CP@trim@ht=#2\relax}
\def\SetBleed#1#2{%
    \gdef\IsBleedSet{yes}
    \global\CP@bled@wd=#1\relax
    \global\CP@bled@ht=#2\relax}
%
\everyjob\expandafter{%
    \the\everyjob
    \typeout{%
        \filename\space <\filedate>^^J
        Version: v\fileversion^^J
        LaTeX macros for setting Page Box parameters
    }%
  \IfFileExists{\filename.cfg}{%
        \begingroup\@@input\@filef@und\endgroup
    }{%
        \typeout{No File: \filename.cfg}%
    }%
  \IfFileExists{\jobname.cfg}{%
        \begingroup\@@input\@filef@und\endgroup
    }{%
        \typeout{No File: \jobname.cfg}%
    }%
}
%
\if@weblink%%%
    \SetCrop{\Trimpdfwidth}{\Trimpdfheight}%
    \SetTrim{\Trimpdfwidth}{\Trimpdfheight}%
    \SetBleed{0mm}{0mm}%
\else%
    \SetCrop{\Croppdfwidth}{\Croppdfheight}%
    \SetTrim{\Trimpdfwidth}{\Trimpdfheight}%
    \SetBleed{3mm}{3mm}%
\fi
%
%
\def\do@pagebox@calc{%
    \CP@toff@wd=\CP@crop@wd
    \advance\CP@toff@wd     by -\CP@trim@wd
    \divide\CP@toff@wd  by \tw@
%
    \CP@toff@ht=\CP@crop@ht
    \advance\CP@toff@ht     by -\CP@trim@ht
    \divide\CP@toff@ht  by \tw@
%
    \advance\CP@trim@wd     by \CP@toff@wd
    \advance\CP@trim@ht     by \CP@toff@ht
%
    \CP@boff@wd=\CP@toff@wd
    \advance\CP@boff@wd     by -\CP@bled@wd
%
    \CP@boff@ht=\CP@toff@ht
    \advance\CP@boff@ht     by -\CP@bled@ht
%
    \advance\CP@bled@wd     by \CP@trim@wd
    \advance\CP@bled@ht     by \CP@trim@ht
}
%
\def\pdf@page@parameters{%
    \ifx\IsCropSet\str@yes
        [{ThisPage} << /CropBox [0 0 \strip@pt\CP@crop@wd\space \strip@pt\CP@crop@ht] >> /PUT pdfmark
        [{ThisPage} << /MediaBox[0 0 \strip@pt\CP@crop@wd\space \strip@pt\CP@crop@ht] >> /PUT pdfmark
    \fi
    \ifx\IsTrimSet\str@yes
        [{ThisPage} << /TrimBox [\strip@pt\CP@toff@wd\space \strip@pt\CP@toff@ht\space \strip@pt\CP@trim@wd\space \strip@pt\CP@trim@ht] >> /PUT pdfmark
    \fi
    \ifx\IsBleedSet\str@yes
        [{ThisPage} << /BleedBox[\strip@pt\CP@boff@wd\space \strip@pt\CP@boff@ht\space \strip@pt\CP@bled@wd\space \strip@pt\CP@bled@ht] >> /PUT pdfmark
    \fi
}
%
\def\shipout@PageObjects{%
    \special{ps: \pdf@page@parameters}%
}
%%
\AtBeginDocument{%
    \do@pagebox@calc
    \let\org@begindvi\@begindvi
    \def\@begindvi{%
        \shipout@PageObjects
        \org@begindvi
        \global\let\@begindvi\rest@dvi@pages
    }%
}
\let\rest@dvi@pages\shipout@PageObjects
% Crop End here

\setlength\lineskip{1\p@}
\setlength\normallineskip{1\p@}
\renewcommand\baselinestretch{}
\setlength\parskip{0\p@}
\setlength\parindent{15pt}
\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
\setlength\medskipamount{6\p@ \@plus 2\p@}
\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
\@lowpenalty   51
\@medpenalty  151
\@highpenalty 301
\clubpenalty 10000
\widowpenalty 10000
\displaywidowpenalty 100
\predisplaypenalty   10000
\postdisplaypenalty  2500
\interlinepenalty 0
\brokenpenalty 10000
\lefthyphenmin=3
\righthyphenmin=3

\setlength\headheight{16\p@}
\setlength\topmargin{2.44pc}
\addtolength\topmargin{-1in}
\addtolength\topmargin{14.7pt}
\setlength\topskip{10\p@}
\setlength\headsep{17.6\p@}
\setlength\footskip{0\p@}
\setlength\maxdepth{.5\topskip}
\setlength\textwidth{145mm}
\setlength\textheight{45\baselineskip}
\setlength\marginparsep{3\p@}
\setlength\marginparpush{3\p@}
\setlength\marginparwidth{35\p@}
\setlength\oddsidemargin{5.72pc}
\addtolength\oddsidemargin{-1in}
\setlength\@tempdima{\paperwidth}
\addtolength\@tempdima{-\textwidth}
\addtolength\@tempdima{-6.35pc}
\setlength\evensidemargin{\@tempdima}
\addtolength\evensidemargin{-.89in}
\setlength\columnsep{14.5pt}
\setlength\columnseprule{0\p@}

\addtolength\textheight{\topskip}
\setlength\footnotesep{7\p@}
\setlength{\skip\footins}{12\p@ \@plus 6\p@ \@minus 1\p@}
\setcounter{totalnumber}{10}
\setcounter{topnumber}{5}
\setcounter{bottomnumber}{5}
\renewcommand\topfraction{.9}
\renewcommand\bottomfraction{.9}
\renewcommand\textfraction{.06}
\renewcommand\floatpagefraction{.94}
\renewcommand\dbltopfraction{.9}
\renewcommand\dblfloatpagefraction{.9}
\setlength\floatsep    {12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
\setlength\intextsep   {18\p@ \@plus 2\p@ \@minus 2\p@}
\setlength\dblfloatsep    {12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}

\setlength\@fptop{0\p@}
\setlength\@fpsep{12\p@ \@plus 1fil}
\setlength\@fpbot{0\p@}

\setlength\@dblfptop{0\p@}
\setlength\@dblfpsep{12\p@ \@plus 1fil}
\setlength\@dblfpbot{0\p@}

\DeclareMathSizes{5}     {5}   {5}  {5}
\DeclareMathSizes{6}     {6}   {5}  {5}
\DeclareMathSizes{7}     {7}   {5}  {5}
\DeclareMathSizes{8}     {8}   {6}  {5}
\DeclareMathSizes{9}     {9}   {6.5}  {5}
\DeclareMathSizes{10}   {10}   {7.5}  {5}
\DeclareMathSizes{12}   {12}   {9}  {7}

\def\ps@headings
  {%
  \let\@oddfoot\@empty%
  \let\@evenfoot\@empty%
      \def\@evenhead{\vbox{\hbox to \textwidth{\fontsize{8bp}{10}\selectfont
            {\fontsize{10bp}{10}\selectfont\thepage}\hfil\MakeUppercase{\strut\leftmark}\hfil}}}%
      \def\@oddhead{\vbox{\hbox to \textwidth{\hfil\fontsize{8bp}{10}\selectfont
            {\MakeUppercase{\strut\rightmark}}\hfil{\fontsize{10bp}{10}\selectfont\thepage}}%
            }}%
  \def\titlemark##1{\markboth{##1}{##1}}%
  \def\authormark##1{\gdef\leftmark{##1}}%
  }

\def\@copyrightstatement{}
\def\copyrightstatement#1{\gdef\@copyrightstatement{#1}}

\def\ps@opening
  {%
      \def\@oddfoot{{%
            \hbox to \textwidth{\parbox{\textwidth}{\hspace*{1pt}\vspace*{20pt}\newline%
            \fontsize{7bp}{8}\fontshape{n}\selectfont\raggedleft \copyright\space The Author(s) \@copyrightyear. \@copyrightstatement%
              }}%
            }}%
      \def\@evenfoot{{%
            \hbox to \textwidth{\parbox{\textwidth}{\hspace*{1pt}\vspace*{20pt}\newline%
            \fontsize{7bp}{8}\fontshape{n}\selectfont\raggedleft \copyright\space The Author(s) \@copyrightyear. \@copyrightstatement%
              }}%
            }}%
  \let\@evenhead\relax
  \let\@oddhead\relax}

% Page range
\newif\iflastpagegiven   \lastpagegivenfalse
\newcommand\firstpage[1]{%
  \gdef\@firstpage{#1}%
  \ifnum\@firstpage>\c@page
    \setcounter{page}{#1}%
    \ClassWarning{BIO}{Increasing pagenumber to \@firstpage}%
  \else \ifnum\@firstpage<\c@page
    \ClassWarning{BIO}{Firstpage lower than pagenumber}\fi\fi
    \xdef\@firstpage{\the\c@page}%
    }
\def\@firstpage{1}
\def\pagenumbering#1{%
    \global\c@page \@ne
    \gdef\thepage{\csname @#1\endcsname \c@page}%
    \gdef\thefirstpage{%
            \csname @#1\endcsname \@firstpage}%
    \gdef\thelastpage{%
            \csname @#1\endcsname \@lastpage}%
    }

\newcommand\lastpage[1]{\xdef\@lastpage{#1}%
  \global\lastpagegiventrue}
\def\@lastpage{0}
\def\setlastpage{\iflastpagegiven\else
    \edef\@tempa{@lastpage@}%
    \expandafter
    \ifx \csname \@tempa \endcsname \relax
        \gdef\@lastpage{0}%
    \else
        \xdef\@lastpage{\@nameuse{@lastpage@}}%
        \fi
    \fi }
\def\writelastpage{%
    \iflastpagegiven \else
    \immediate\write\@auxout%
    {\string\global\string\@namedef{@lastpage@}{\the\c@page}}%
    \fi
    }
\def\thepagerange{%
  \ifnum\@lastpage =0 {\ \bf ???} \else
  \ifnum\@lastpage = \@firstpage \ \thefirstpage\else
  \thefirstpage--\thelastpage \fi\fi}

\AtBeginDocument{\setlastpage
     \pagenumbering{arabic}%
   }
\AtEndDocument{%
    \writelastpage
    \if@final
    \clearemptydoublepage
    \else
    \clearpage
    \fi}

\newcounter{section}
\newcounter{subsection}[section]
\newcounter{subsubsection}[subsection]
\newcounter{paragraph}[subsubsection]
\newcounter{subparagraph}[paragraph]
\newcounter{figure}
\newcounter{table}

\newenvironment{tablenotes}{\fontsize{8bp}{10}\selectfont\list{}{\setlength{\labelsep}{0pt}%
\setlength{\labelwidth}{0pt}%
\setlength{\leftmargin}{0pt}%
\setlength{\rightmargin}{0pt}%
\setlength{\topsep}{-6pt}%
\setlength{\itemsep}{0pt}%
\setlength{\partopsep}{0pt}%
\setlength{\listparindent}{0em}%
\setlength{\parsep}{0pt}}%
\item\relax%
}{\endlist\addvspace{0pt}}%

\newcommand\thepage{\arabic{page}}
\renewcommand\thesection{\arabic{section}}
\renewcommand\thesubsection{{\thesection.\arabic{subsection}}}
\renewcommand\thesubsubsection{{\thesubsection.\arabic{subsubsection}}}
\renewcommand\theparagraph{\thesubsubsection.\arabic{paragraph}}
\renewcommand\thesubparagraph{\theparagraph.\arabic{subparagraph}}
\renewcommand\theequation{\arabic{equation}}

\newcommand\contentsname{Contents}
\newcommand\listfigurename{List of Figures}
\newcommand\listtablename{List of Tables}
\newcommand\partname{Part}
\newcommand\appendixname{Appendix}
\newcommand\abstractname{Abstract}
\newcommand\keywordsname{Keywords:}
\newcommand\refname{References}
\newcommand\bibname{References}
\newcommand\indexname{Index}
\newcommand\figurename{\textsc{Fig.}}
\newcommand\tablename{Table}

\newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}\cleardoublepage}}

\newif\if@mainmatter \@mainmattertrue

\newcommand\frontmatter{%
  \clearpage
  \@mainmatterfalse
  \pagenumbering{roman}}

\newcommand\mainmatter{%
  \clearpage
  \@mainmattertrue
  \pagenumbering{arabic}}

\newcommand\backmatter{%
  \clearpage
  \@mainmatterfalse}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TITLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newlength{\dropfromtop}
\setlength{\dropfromtop}{\z@}

\newif\if@appnotes
\newcommand{\application}{%
  \global\@appnotestrue}

\long\def\title{\@ifnextchar[{\short@title}{\@@title}}
\def\short@title[#1]{\titlemark{#1}\@@@title}
\def\@@title#1{\authormark{#1}\@@@title{#1}}
\long\def\@@@title#1{\gdef\@title{#1}}
\def\@subtitle{}
\long\def\subtitle#1{\gdef\@subtitle{#1}}
%\subtitle{Genome analysis}

\newcounter{myauthcount}
\setcounter{myauthcount}{0}
\regtotcounter{myauthcount}

\def\authorandsep{\ifnum\arabic{myauthcount@totc}=\arabic{myauthcount}\ifnum\arabic{myauthcount@totc}=1\else \textsc{and}\par\addvspace{6pt} \fi\else\fi}
\def\authorcommasep{\ifnum\arabic{myauthcount@totc}=\arabic{myauthcount}\else\ifnum\arabic{myauthcount@totc}=200\ifnum\arabic{myauthcount}<199,\else\fi\else\ifnum\arabic{myauthcount@totc}=199\ifnum\arabic{myauthcount}<198,\else\fi\else\ifnum\arabic{myauthcount@totc}=198\ifnum\arabic{myauthcount}<197,\else\fi\else\ifnum\arabic{myauthcount@totc}=197\ifnum\arabic{myauthcount}<196,\else\fi\else\ifnum\arabic{myauthcount@totc}=196\ifnum\arabic{myauthcount}<195,\else\fi\else\ifnum\arabic{myauthcount@totc}=195\ifnum\arabic{myauthcount}<194,\else\fi\else\ifnum\arabic{myauthcount@totc}=194\ifnum\arabic{myauthcount}<193,\else\fi\else\ifnum\arabic{myauthcount@totc}=193\ifnum\arabic{myauthcount}<192,\else\fi\else\ifnum\arabic{myauthcount@totc}=192\ifnum\arabic{myauthcount}<191,\else\fi\else\ifnum\arabic{myauthcount@totc}=191\ifnum\arabic{myauthcount}<190,\else\fi\else\ifnum\arabic{myauthcount@totc}=190\ifnum\arabic{myauthcount}<189,\else\fi\else\ifnum\arabic{myauthcount@totc}=189\ifnum\arabic{myauthcount}<188,\else\fi\else\ifnum\arabic{myauthcount@totc}=188\ifnum\arabic{myauthcount}<187,\else\fi\else\ifnum\arabic{myauthcount@totc}=187\ifnum\arabic{myauthcount}<186,\else\fi\else\ifnum\arabic{myauthcount@totc}=186\ifnum\arabic{myauthcount}<185,\else\fi\else\ifnum\arabic{myauthcount@totc}=185\ifnum\arabic{myauthcount}<184,\else\fi\else\ifnum\arabic{myauthcount@totc}=184\ifnum\arabic{myauthcount}<183,\else\fi\else\ifnum\arabic{myauthcount@totc}=183\ifnum\arabic{myauthcount}<182,\else\fi\else\ifnum\arabic{myauthcount@totc}=182\ifnum\arabic{myauthcount}<181,\else\fi\else\ifnum\arabic{myauthcount@totc}=181\ifnum\arabic{myauthcount}<180,\else\fi\else\ifnum\arabic{myauthcount@totc}=180\ifnum\arabic{myauthcount}<179,\else\fi\else\ifnum\arabic{myauthcount@totc}=179\ifnum\arabic{myauthcount}<178,\else\fi\else\ifnum\arabic{myauthcount@totc}=178\ifnum\arabic{myauthcount}<177,\else\fi\else\ifnum\arabic{myauthcount@totc}=177\ifnum\arabic{myauthcount}<176,\else\fi\else\ifnum\arabic{myauthcount@totc}=176\ifnum\arabic{myauthcount}<175,\else\fi\else\ifnum\arabic{myauthcount@totc}=175\ifnum\arabic{myauthcount}<174,\else\fi\else\ifnum\arabic{myauthcount@totc}=174\ifnum\arabic{myauthcount}<173,\else\fi\else\ifnum\arabic{myauthcount@totc}=173\ifnum\arabic{myauthcount}<172,\else\fi\else\ifnum\arabic{myauthcount@totc}=172\ifnum\arabic{myauthcount}<171,\else\fi\else\ifnum\arabic{myauthcount@totc}=171\ifnum\arabic{myauthcount}<170,\else\fi\else\ifnum\arabic{myauthcount@totc}=170\ifnum\arabic{myauthcount}<169,\else\fi\else\ifnum\arabic{myauthcount@totc}=169\ifnum\arabic{myauthcount}<168,\else\fi\else\ifnum\arabic{myauthcount@totc}=168\ifnum\arabic{myauthcount}<167,\else\fi\else\ifnum\arabic{myauthcount@totc}=167\ifnum\arabic{myauthcount}<166,\else\fi\else\ifnum\arabic{myauthcount@totc}=166\ifnum\arabic{myauthcount}<165,\else\fi\else\ifnum\arabic{myauthcount@totc}=165\ifnum\arabic{myauthcount}<164,\else\fi\else\ifnum\arabic{myauthcount@totc}=164\ifnum\arabic{myauthcount}<163,\else\fi\else\ifnum\arabic{myauthcount@totc}=163\ifnum\arabic{myauthcount}<162,\else\fi\else\ifnum\arabic{myauthcount@totc}=162\ifnum\arabic{myauthcount}<161,\else\fi\else\ifnum\arabic{myauthcount@totc}=161\ifnum\arabic{myauthcount}<160,\else\fi\else\ifnum\arabic{myauthcount@totc}=160\ifnum\arabic{myauthcount}<159,\else\fi\else\ifnum\arabic{myauthcount@totc}=159\ifnum\arabic{myauthcount}<158,\else\fi\else\ifnum\arabic{myauthcount@totc}=158\ifnum\arabic{myauthcount}<157,\else\fi\else\ifnum\arabic{myauthcount@totc}=157\ifnum\arabic{myauthcount}<156,\else\fi\else\ifnum\arabic{myauthcount@totc}=156\ifnum\arabic{myauthcount}<155,\else\fi\else\ifnum\arabic{myauthcount@totc}=155\ifnum\arabic{myauthcount}<154,\else\fi\else\ifnum\arabic{myauthcount@totc}=154\ifnum\arabic{myauthcount}<153,\else\fi\else\ifnum\arabic{myauthcount@totc}=153\ifnum\arabic{myauthcount}<152,\else\fi\else\ifnum\arabic{myauthcount@totc}=152\ifnum\arabic{myauthcount}<151,\else\fi\else\ifnum\arabic{myauthcount@totc}=151\ifnum\arabic{myauthcount}<150,\else\fi\else\ifnum\arabic{myauthcount@totc}=150\ifnum\arabic{myauthcount}<149,\else\fi\else\ifnum\arabic{myauthcount@totc}=149\ifnum\arabic{myauthcount}<148,\else\fi\else\ifnum\arabic{myauthcount@totc}=148\ifnum\arabic{myauthcount}<147,\else\fi\else\ifnum\arabic{myauthcount@totc}=147\ifnum\arabic{myauthcount}<146,\else\fi\else\ifnum\arabic{myauthcount@totc}=146\ifnum\arabic{myauthcount}<145,\else\fi\else\ifnum\arabic{myauthcount@totc}=145\ifnum\arabic{myauthcount}<144,\else\fi\else\ifnum\arabic{myauthcount@totc}=144\ifnum\arabic{myauthcount}<143,\else\fi\else\ifnum\arabic{myauthcount@totc}=143\ifnum\arabic{myauthcount}<142,\else\fi\else\ifnum\arabic{myauthcount@totc}=142\ifnum\arabic{myauthcount}<141,\else\fi\else\ifnum\arabic{myauthcount@totc}=141\ifnum\arabic{myauthcount}<140,\else\fi\else\ifnum\arabic{myauthcount@totc}=140\ifnum\arabic{myauthcount}<139,\else\fi\else\ifnum\arabic{myauthcount@totc}=139\ifnum\arabic{myauthcount}<138,\else\fi\else\ifnum\arabic{myauthcount@totc}=138\ifnum\arabic{myauthcount}<137,\else\fi\else\ifnum\arabic{myauthcount@totc}=137\ifnum\arabic{myauthcount}<136,\else\fi\else\ifnum\arabic{myauthcount@totc}=136\ifnum\arabic{myauthcount}<135,\else\fi\else\ifnum\arabic{myauthcount@totc}=135\ifnum\arabic{myauthcount}<134,\else\fi\else\ifnum\arabic{myauthcount@totc}=134\ifnum\arabic{myauthcount}<133,\else\fi\else\ifnum\arabic{myauthcount@totc}=133\ifnum\arabic{myauthcount}<132,\else\fi\else\ifnum\arabic{myauthcount@totc}=132\ifnum\arabic{myauthcount}<131,\else\fi\else\ifnum\arabic{myauthcount@totc}=131\ifnum\arabic{myauthcount}<130,\else\fi\else\ifnum\arabic{myauthcount@totc}=130\ifnum\arabic{myauthcount}<129,\else\fi\else\ifnum\arabic{myauthcount@totc}=129\ifnum\arabic{myauthcount}<128,\else\fi\else\ifnum\arabic{myauthcount@totc}=128\ifnum\arabic{myauthcount}<127,\else\fi\else\ifnum\arabic{myauthcount@totc}=127\ifnum\arabic{myauthcount}<126,\else\fi\else\ifnum\arabic{myauthcount@totc}=126\ifnum\arabic{myauthcount}<125,\else\fi\else\ifnum\arabic{myauthcount@totc}=125\ifnum\arabic{myauthcount}<124,\else\fi\else\ifnum\arabic{myauthcount@totc}=124\ifnum\arabic{myauthcount}<123,\else\fi\else\ifnum\arabic{myauthcount@totc}=123\ifnum\arabic{myauthcount}<122,\else\fi\else\ifnum\arabic{myauthcount@totc}=122\ifnum\arabic{myauthcount}<121,\else\fi\else\ifnum\arabic{myauthcount@totc}=121\ifnum\arabic{myauthcount}<120,\else\fi\else\ifnum\arabic{myauthcount@totc}=120\ifnum\arabic{myauthcount}<119,\else\fi\else\ifnum\arabic{myauthcount@totc}=119\ifnum\arabic{myauthcount}<118,\else\fi\else\ifnum\arabic{myauthcount@totc}=118\ifnum\arabic{myauthcount}<117,\else\fi\else\ifnum\arabic{myauthcount@totc}=117\ifnum\arabic{myauthcount}<116,\else\fi\else\ifnum\arabic{myauthcount@totc}=116\ifnum\arabic{myauthcount}<115,\else\fi\else\ifnum\arabic{myauthcount@totc}=115\ifnum\arabic{myauthcount}<114,\else\fi\else\ifnum\arabic{myauthcount@totc}=114\ifnum\arabic{myauthcount}<113,\else\fi\else\ifnum\arabic{myauthcount@totc}=113\ifnum\arabic{myauthcount}<112,\else\fi\else\ifnum\arabic{myauthcount@totc}=112\ifnum\arabic{myauthcount}<111,\else\fi\else\ifnum\arabic{myauthcount@totc}=111\ifnum\arabic{myauthcount}<110,\else\fi\else\ifnum\arabic{myauthcount@totc}=110\ifnum\arabic{myauthcount}<109,\else\fi\else\ifnum\arabic{myauthcount@totc}=109\ifnum\arabic{myauthcount}<108,\else\fi\else\ifnum\arabic{myauthcount@totc}=108\ifnum\arabic{myauthcount}<107,\else\fi\else\ifnum\arabic{myauthcount@totc}=107\ifnum\arabic{myauthcount}<106,\else\fi\else\ifnum\arabic{myauthcount@totc}=106\ifnum\arabic{myauthcount}<105,\else\fi\else\ifnum\arabic{myauthcount@totc}=105\ifnum\arabic{myauthcount}<104,\else\fi\else\ifnum\arabic{myauthcount@totc}=104\ifnum\arabic{myauthcount}<103,\else\fi\else\ifnum\arabic{myauthcount@totc}=103\ifnum\arabic{myauthcount}<102,\else\fi\else\ifnum\arabic{myauthcount@totc}=102\ifnum\arabic{myauthcount}<101,\else\fi\else\ifnum\arabic{myauthcount@totc}=101\ifnum\arabic{myauthcount}<100,\else\fi\else\ifnum\arabic{myauthcount@totc}=100\ifnum\arabic{myauthcount}<99,\else\fi\else\ifnum\arabic{myauthcount@totc}=99\ifnum\arabic{myauthcount}<98,\else\fi\else\ifnum\arabic{myauthcount@totc}=98\ifnum\arabic{myauthcount}<97,\else\fi\else\ifnum\arabic{myauthcount@totc}=97\ifnum\arabic{myauthcount}<96,\else\fi\else\ifnum\arabic{myauthcount@totc}=96\ifnum\arabic{myauthcount}<95,\else\fi\else\ifnum\arabic{myauthcount@totc}=95\ifnum\arabic{myauthcount}<94,\else\fi\else\ifnum\arabic{myauthcount@totc}=94\ifnum\arabic{myauthcount}<93,\else\fi\else\ifnum\arabic{myauthcount@totc}=93\ifnum\arabic{myauthcount}<92,\else\fi\else\ifnum\arabic{myauthcount@totc}=92\ifnum\arabic{myauthcount}<91,\else\fi\else\ifnum\arabic{myauthcount@totc}=91\ifnum\arabic{myauthcount}<90,\else\fi\else\ifnum\arabic{myauthcount@totc}=90\ifnum\arabic{myauthcount}<89,\else\fi\else\ifnum\arabic{myauthcount@totc}=89\ifnum\arabic{myauthcount}<88,\else\fi\else\ifnum\arabic{myauthcount@totc}=88\ifnum\arabic{myauthcount}<87,\else\fi\else\ifnum\arabic{myauthcount@totc}=87\ifnum\arabic{myauthcount}<86,\else\fi\else\ifnum\arabic{myauthcount@totc}=86\ifnum\arabic{myauthcount}<85,\else\fi\else\ifnum\arabic{myauthcount@totc}=85\ifnum\arabic{myauthcount}<84,\else\fi\else\ifnum\arabic{myauthcount@totc}=84\ifnum\arabic{myauthcount}<83,\else\fi\else\ifnum\arabic{myauthcount@totc}=83\ifnum\arabic{myauthcount}<82,\else\fi\else\ifnum\arabic{myauthcount@totc}=82\ifnum\arabic{myauthcount}<81,\else\fi\else\ifnum\arabic{myauthcount@totc}=81\ifnum\arabic{myauthcount}<80,\else\fi\else\ifnum\arabic{myauthcount@totc}=80\ifnum\arabic{myauthcount}<79,\else\fi\else\ifnum\arabic{myauthcount@totc}=79\ifnum\arabic{myauthcount}<78,\else\fi\else\ifnum\arabic{myauthcount@totc}=78\ifnum\arabic{myauthcount}<77,\else\fi\else\ifnum\arabic{myauthcount@totc}=77\ifnum\arabic{myauthcount}<76,\else\fi\else\ifnum\arabic{myauthcount@totc}=76\ifnum\arabic{myauthcount}<75,\else\fi\else\ifnum\arabic{myauthcount@totc}=75\ifnum\arabic{myauthcount}<74,\else\fi\else\ifnum\arabic{myauthcount@totc}=74\ifnum\arabic{myauthcount}<73,\else\fi\else\ifnum\arabic{myauthcount@totc}=73\ifnum\arabic{myauthcount}<72,\else\fi\else\ifnum\arabic{myauthcount@totc}=72\ifnum\arabic{myauthcount}<71,\else\fi\else\ifnum\arabic{myauthcount@totc}=71\ifnum\arabic{myauthcount}<70,\else\fi\else\ifnum\arabic{myauthcount@totc}=70\ifnum\arabic{myauthcount}<69,\else\fi\else\ifnum\arabic{myauthcount@totc}=69\ifnum\arabic{myauthcount}<68,\else\fi\else\ifnum\arabic{myauthcount@totc}=68\ifnum\arabic{myauthcount}<67,\else\fi\else\ifnum\arabic{myauthcount@totc}=67\ifnum\arabic{myauthcount}<66,\else\fi\else\ifnum\arabic{myauthcount@totc}=66\ifnum\arabic{myauthcount}<65,\else\fi\else\ifnum\arabic{myauthcount@totc}=65\ifnum\arabic{myauthcount}<64,\else\fi\else\ifnum\arabic{myauthcount@totc}=64\ifnum\arabic{myauthcount}<63,\else\fi\else\ifnum\arabic{myauthcount@totc}=63\ifnum\arabic{myauthcount}<62,\else\fi\else\ifnum\arabic{myauthcount@totc}=62\ifnum\arabic{myauthcount}<61,\else\fi\else\ifnum\arabic{myauthcount@totc}=61\ifnum\arabic{myauthcount}<60,\else\fi\else\ifnum\arabic{myauthcount@totc}=60\ifnum\arabic{myauthcount}<59,\else\fi\else\ifnum\arabic{myauthcount@totc}=59\ifnum\arabic{myauthcount}<58,\else\fi\else\ifnum\arabic{myauthcount@totc}=58\ifnum\arabic{myauthcount}<57,\else\fi\else\ifnum\arabic{myauthcount@totc}=57\ifnum\arabic{myauthcount}<56,\else\fi\else\ifnum\arabic{myauthcount@totc}=56\ifnum\arabic{myauthcount}<55,\else\fi\else\ifnum\arabic{myauthcount@totc}=55\ifnum\arabic{myauthcount}<54,\else\fi\else\ifnum\arabic{myauthcount@totc}=54\ifnum\arabic{myauthcount}<53,\else\fi\else\ifnum\arabic{myauthcount@totc}=53\ifnum\arabic{myauthcount}<52,\else\fi\else\ifnum\arabic{myauthcount@totc}=52\ifnum\arabic{myauthcount}<51,\else\fi\else\ifnum\arabic{myauthcount@totc}=51\ifnum\arabic{myauthcount}<50,\else\fi\else\ifnum\arabic{myauthcount@totc}=50\ifnum\arabic{myauthcount}<49,\else\fi\else\ifnum\arabic{myauthcount@totc}=49\ifnum\arabic{myauthcount}<48,\else\fi\else\ifnum\arabic{myauthcount@totc}=48\ifnum\arabic{myauthcount}<47,\else\fi\else\ifnum\arabic{myauthcount@totc}=47\ifnum\arabic{myauthcount}<46,\else\fi\else\ifnum\arabic{myauthcount@totc}=46\ifnum\arabic{myauthcount}<45,\else\fi\else\ifnum\arabic{myauthcount@totc}=45\ifnum\arabic{myauthcount}<44,\else\fi\else\ifnum\arabic{myauthcount@totc}=44\ifnum\arabic{myauthcount}<43,\else\fi\else\ifnum\arabic{myauthcount@totc}=43\ifnum\arabic{myauthcount}<42,\else\fi\else\ifnum\arabic{myauthcount@totc}=42\ifnum\arabic{myauthcount}<41,\else\fi\else\ifnum\arabic{myauthcount@totc}=41\ifnum\arabic{myauthcount}<40,\else\fi\else\ifnum\arabic{myauthcount@totc}=40\ifnum\arabic{myauthcount}<39,\else\fi\else\ifnum\arabic{myauthcount@totc}=39\ifnum\arabic{myauthcount}<38,\else\fi\else\ifnum\arabic{myauthcount@totc}=38\ifnum\arabic{myauthcount}<37,\else\fi\else\ifnum\arabic{myauthcount@totc}=37\ifnum\arabic{myauthcount}<36,\else\fi\else\ifnum\arabic{myauthcount@totc}=36\ifnum\arabic{myauthcount}<35,\else\fi\else\ifnum\arabic{myauthcount@totc}=35\ifnum\arabic{myauthcount}<34,\else\fi\else\ifnum\arabic{myauthcount@totc}=34\ifnum\arabic{myauthcount}<33,\else\fi\else\ifnum\arabic{myauthcount@totc}=33\ifnum\arabic{myauthcount}<32,\else\fi\else\ifnum\arabic{myauthcount@totc}=32\ifnum\arabic{myauthcount}<31,\else\fi\else\ifnum\arabic{myauthcount@totc}=31\ifnum\arabic{myauthcount}<30,\else\fi\else\ifnum\arabic{myauthcount@totc}=30\ifnum\arabic{myauthcount}<29,\else\fi\else\ifnum\arabic{myauthcount@totc}=29\ifnum\arabic{myauthcount}<28,\else\fi\else\ifnum\arabic{myauthcount@totc}=28\ifnum\arabic{myauthcount}<27,\else\fi\else\ifnum\arabic{myauthcount@totc}=27\ifnum\arabic{myauthcount}<26,\else\fi\else\ifnum\arabic{myauthcount@totc}=26\ifnum\arabic{myauthcount}<25,\else\fi\else\ifnum\arabic{myauthcount@totc}=25\ifnum\arabic{myauthcount}<24,\else\fi\else\ifnum\arabic{myauthcount@totc}=24\ifnum\arabic{myauthcount}<23,\else\fi\else\ifnum\arabic{myauthcount@totc}=23\ifnum\arabic{myauthcount}<22,\else\fi\else\ifnum\arabic{myauthcount@totc}=22\ifnum\arabic{myauthcount}<21,\else\fi\else\ifnum\arabic{myauthcount@totc}=21\ifnum\arabic{myauthcount}<20,\else\fi\else\ifnum\arabic{myauthcount@totc}=20\ifnum\arabic{myauthcount}<19,\else\fi\else\ifnum\arabic{myauthcount@totc}=19\ifnum\arabic{myauthcount}<18,\else\fi\else\ifnum\arabic{myauthcount@totc}=18\ifnum\arabic{myauthcount}<17,\else\fi\else\ifnum\arabic{myauthcount@totc}=17\ifnum\arabic{myauthcount}<16,\else\fi\else\ifnum\arabic{myauthcount@totc}=16\ifnum\arabic{myauthcount}<15,\else\fi\else\ifnum\arabic{myauthcount@totc}=15\ifnum\arabic{myauthcount}<14,\else\fi\else\ifnum\arabic{myauthcount@totc}=14\ifnum\arabic{myauthcount}<13,\else\fi\else\ifnum\arabic{myauthcount@totc}=13\ifnum\arabic{myauthcount}<12,\else\fi\else\ifnum\arabic{myauthcount@totc}=12\ifnum\arabic{myauthcount}<11,\else\fi\else\ifnum\arabic{myauthcount@totc}=11\ifnum\arabic{myauthcount}<10,\else\fi\else\ifnum\arabic{myauthcount@totc}=10\ifnum\arabic{myauthcount}<9,\else\fi\else\ifnum\arabic{myauthcount@totc}=9\ifnum\arabic{myauthcount}<8,\else\fi\else\ifnum\arabic{myauthcount@totc}=8\ifnum\arabic{myauthcount}<7,\else\fi\else\ifnum\arabic{myauthcount@totc}=7\ifnum\arabic{myauthcount}<6,\else\fi\else\ifnum\arabic{myauthcount@totc}=6\ifnum\arabic{myauthcount}<5,\else\fi\else\ifnum\arabic{myauthcount@totc}=5\ifnum\arabic{myauthcount}<4,\else\fi\else\ifnum\arabic{myauthcount@totc}=4\ifnum\arabic{myauthcount}<3,\else\fi\else\ifnum\arabic{myauthcount@totc}=3\ifnum\arabic{myauthcount}<2,\else\fi\else\ifnum\arabic{myauthcount@totc}=2\else,\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}

\def\author#1{\gdef\@author{#1}}
\def\@author{}

\def\author{\@@author}%
\newcommand{\@@author}[2][]{%
  \g@addto@macro\@author{%
    \refstepcounter{myauthcount}%
      \hspace*{0.001pt}{\authorandsep#2\ifx#1\@empty\else\textsuperscript{#1}\fi}\par}
                        }%

\def\@vol{}
\def\vol#1{\global\def\@vol{#1}}
\def\@issue{}
\def\issue#1{\global\def\@issue{#1}}

\newcommand\defcase[1]{\@namedef{mycase@\the\numexpr#1\relax}}
\newcommand\myswitch[1]{\@nameuse{mycase@\the\numexpr#1\relax}}

\defcase{0}{Month}
\defcase{1}{January}
\defcase{2}{February}
\defcase{3}{March}
\defcase{4}{April}
\defcase{5}{May}
\defcase{6}{June}
\defcase{7}{July}
\defcase{8}{August}
\defcase{9}{September}
\defcase{10}{October}
\defcase{11}{November}
\defcase{12}{December}

\def\@history{}
\def\history#1{\global\def\@history{#1}}
\history{}

\newcounter{myhistorycount}
\setcounter{myhistorycount}{0}
\regtotcounter{myhistorycount}

\def\historycommasep{\ifnum\arabic{myhistorycount@totc}=\arabic{myhistorycount}\else;\ \fi}

\def\received#1#2#3{\g@addto@macro\@history{\refstepcounter{myhistorycount}Received on #1\ \myswitch{#2}\ #3\historycommasep}}
\def\revised#1#2#3{\g@addto@macro\@history{\refstepcounter{myhistorycount}revised on #1\ \myswitch{#2}\ #3\historycommasep}}
\def\accepted#1#2#3{\g@addto@macro\@history{\refstepcounter{myhistorycount}accepted on #1\ \myswitch{#2}\ #3\historycommasep}}

\def\abstract#1{\global\def\@abstract{#1}}

\def\keywords#1{\g@addto@macro\@abstract{%
    \vspace*{8pt}
\par%
\vbox{\fontsize{9bp}{11}\selectfont\textit{Keywords:}\ #1}%
}}%

\def\@editor{}
\def\editor#1{\global\def\@editor{#1}}
\def\pubyear#1{\global\def\@pubyear{#1}}
\def\copyrightyear#1{\global\def\@copyrightyear{#1}}
\def\journaltitle#1{\global\def\@journaltitle{#1}}
\if@imaiai
\journaltitle{Information and Inference: A Journal of the IMA}
\else
\if@imaman
\journaltitle{IMA Journal of Management Mathematics}
\else
\if@imamat
\journaltitle{}
\else
\if@imamci
\journaltitle{IMA Journal of Mathematical Control and Information}
\else
\if@imammb
\journaltitle{Mathematical Medicine and Biology: A Journal of the IMA}
\else
\if@imanum
\journaltitle{IMA Journal of Numerical Analysis}
\else
\if@imatrm
\journaltitle{Transactions of Mathematics and Its Applications}
\else
\fi\fi\fi\fi\fi\fi\fi

\def\@boxedtext{}
\def\boxedtext{\@@boxedtext}%
\newcommand{\@@boxedtext}[1]{\def\@boxedtext{\ifx#1\@empty\else\fbox{\parbox{.97\textwidth}{\textbf{Key Messages}\par#1\vspace{-8pt}}}\fi}}

\def\orgdiv#1{#1}
\def\orgname#1{#1}
\def\orgaddress#1{#1}
\def\street#1{#1}
\def\postcode#1{#1}
\def\state#1{#1}
\def\country#1{#1}

\newcounter{myaddcount}
\setcounter{myaddcount}{0}
\regtotcounter{myaddcount}

\def\addressandsep{\ifnum\arabic{myaddcount@totc}=\arabic{myaddcount}\ifnum\arabic{myaddcount@totc}=1\else\ and \fi\else\fi}
\def\addresscommasep{\ifnum\arabic{myaddcount@totc}=\arabic{myaddcount}\else\ifnum\arabic{myaddcount@totc}=200\ifnum\arabic{myaddcount}<199, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=199\ifnum\arabic{myaddcount}<198, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=198\ifnum\arabic{myaddcount}<197, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=197\ifnum\arabic{myaddcount}<196, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=196\ifnum\arabic{myaddcount}<195, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=195\ifnum\arabic{myaddcount}<194, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=194\ifnum\arabic{myaddcount}<193, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=193\ifnum\arabic{myaddcount}<192, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=192\ifnum\arabic{myaddcount}<191, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=191\ifnum\arabic{myaddcount}<190, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=190\ifnum\arabic{myaddcount}<189, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=189\ifnum\arabic{myaddcount}<188, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=188\ifnum\arabic{myaddcount}<187, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=187\ifnum\arabic{myaddcount}<186, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=186\ifnum\arabic{myaddcount}<185, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=185\ifnum\arabic{myaddcount}<184, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=184\ifnum\arabic{myaddcount}<183, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=183\ifnum\arabic{myaddcount}<182, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=182\ifnum\arabic{myaddcount}<181, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=181\ifnum\arabic{myaddcount}<180, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=180\ifnum\arabic{myaddcount}<179, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=179\ifnum\arabic{myaddcount}<178, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=178\ifnum\arabic{myaddcount}<177, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=177\ifnum\arabic{myaddcount}<176, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=176\ifnum\arabic{myaddcount}<175, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=175\ifnum\arabic{myaddcount}<174, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=174\ifnum\arabic{myaddcount}<173, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=173\ifnum\arabic{myaddcount}<172, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=172\ifnum\arabic{myaddcount}<171, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=171\ifnum\arabic{myaddcount}<170, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=170\ifnum\arabic{myaddcount}<169, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=169\ifnum\arabic{myaddcount}<168, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=168\ifnum\arabic{myaddcount}<167, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=167\ifnum\arabic{myaddcount}<166, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=166\ifnum\arabic{myaddcount}<165, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=165\ifnum\arabic{myaddcount}<164, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=164\ifnum\arabic{myaddcount}<163, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=163\ifnum\arabic{myaddcount}<162, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=162\ifnum\arabic{myaddcount}<161, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=161\ifnum\arabic{myaddcount}<160, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=160\ifnum\arabic{myaddcount}<159, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=159\ifnum\arabic{myaddcount}<158, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=158\ifnum\arabic{myaddcount}<157, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=157\ifnum\arabic{myaddcount}<156, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=156\ifnum\arabic{myaddcount}<155, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=155\ifnum\arabic{myaddcount}<154, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=154\ifnum\arabic{myaddcount}<153, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=153\ifnum\arabic{myaddcount}<152, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=152\ifnum\arabic{myaddcount}<151, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=151\ifnum\arabic{myaddcount}<150, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=150\ifnum\arabic{myaddcount}<149, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=149\ifnum\arabic{myaddcount}<148, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=148\ifnum\arabic{myaddcount}<147, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=147\ifnum\arabic{myaddcount}<146, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=146\ifnum\arabic{myaddcount}<145, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=145\ifnum\arabic{myaddcount}<144, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=144\ifnum\arabic{myaddcount}<143, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=143\ifnum\arabic{myaddcount}<142, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=142\ifnum\arabic{myaddcount}<141, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=141\ifnum\arabic{myaddcount}<140, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=140\ifnum\arabic{myaddcount}<139, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=139\ifnum\arabic{myaddcount}<138, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=138\ifnum\arabic{myaddcount}<137, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=137\ifnum\arabic{myaddcount}<136, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=136\ifnum\arabic{myaddcount}<135, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=135\ifnum\arabic{myaddcount}<134, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=134\ifnum\arabic{myaddcount}<133, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=133\ifnum\arabic{myaddcount}<132, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=132\ifnum\arabic{myaddcount}<131, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=131\ifnum\arabic{myaddcount}<130, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=130\ifnum\arabic{myaddcount}<129, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=129\ifnum\arabic{myaddcount}<128, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=128\ifnum\arabic{myaddcount}<127, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=127\ifnum\arabic{myaddcount}<126, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=126\ifnum\arabic{myaddcount}<125, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=125\ifnum\arabic{myaddcount}<124, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=124\ifnum\arabic{myaddcount}<123, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=123\ifnum\arabic{myaddcount}<122, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=122\ifnum\arabic{myaddcount}<121, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=121\ifnum\arabic{myaddcount}<120, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=120\ifnum\arabic{myaddcount}<119, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=119\ifnum\arabic{myaddcount}<118, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=118\ifnum\arabic{myaddcount}<117, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=117\ifnum\arabic{myaddcount}<116, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=116\ifnum\arabic{myaddcount}<115, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=115\ifnum\arabic{myaddcount}<114, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=114\ifnum\arabic{myaddcount}<113, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=113\ifnum\arabic{myaddcount}<112, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=112\ifnum\arabic{myaddcount}<111, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=111\ifnum\arabic{myaddcount}<110, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=110\ifnum\arabic{myaddcount}<109, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=109\ifnum\arabic{myaddcount}<108, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=108\ifnum\arabic{myaddcount}<107, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=107\ifnum\arabic{myaddcount}<106, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=106\ifnum\arabic{myaddcount}<105, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=105\ifnum\arabic{myaddcount}<104, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=104\ifnum\arabic{myaddcount}<103, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=103\ifnum\arabic{myaddcount}<102, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=102\ifnum\arabic{myaddcount}<101, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=101\ifnum\arabic{myaddcount}<100, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=100\ifnum\arabic{myaddcount}<99, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=99\ifnum\arabic{myaddcount}<98, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=98\ifnum\arabic{myaddcount}<97, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=97\ifnum\arabic{myaddcount}<96, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=96\ifnum\arabic{myaddcount}<95, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=95\ifnum\arabic{myaddcount}<94, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=94\ifnum\arabic{myaddcount}<93, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=93\ifnum\arabic{myaddcount}<92, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=92\ifnum\arabic{myaddcount}<91, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=91\ifnum\arabic{myaddcount}<90, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=90\ifnum\arabic{myaddcount}<89, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=89\ifnum\arabic{myaddcount}<88, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=88\ifnum\arabic{myaddcount}<87, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=87\ifnum\arabic{myaddcount}<86, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=86\ifnum\arabic{myaddcount}<85, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=85\ifnum\arabic{myaddcount}<84, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=84\ifnum\arabic{myaddcount}<83, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=83\ifnum\arabic{myaddcount}<82, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=82\ifnum\arabic{myaddcount}<81, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=81\ifnum\arabic{myaddcount}<80, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=80\ifnum\arabic{myaddcount}<79, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=79\ifnum\arabic{myaddcount}<78, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=78\ifnum\arabic{myaddcount}<77, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=77\ifnum\arabic{myaddcount}<76, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=76\ifnum\arabic{myaddcount}<75, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=75\ifnum\arabic{myaddcount}<74, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=74\ifnum\arabic{myaddcount}<73, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=73\ifnum\arabic{myaddcount}<72, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=72\ifnum\arabic{myaddcount}<71, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=71\ifnum\arabic{myaddcount}<70, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=70\ifnum\arabic{myaddcount}<69, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=69\ifnum\arabic{myaddcount}<68, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=68\ifnum\arabic{myaddcount}<67, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=67\ifnum\arabic{myaddcount}<66, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=66\ifnum\arabic{myaddcount}<65, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=65\ifnum\arabic{myaddcount}<64, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=64\ifnum\arabic{myaddcount}<63, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=63\ifnum\arabic{myaddcount}<62, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=62\ifnum\arabic{myaddcount}<61, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=61\ifnum\arabic{myaddcount}<60, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=60\ifnum\arabic{myaddcount}<59, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=59\ifnum\arabic{myaddcount}<58, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=58\ifnum\arabic{myaddcount}<57, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=57\ifnum\arabic{myaddcount}<56, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=56\ifnum\arabic{myaddcount}<55, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=55\ifnum\arabic{myaddcount}<54, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=54\ifnum\arabic{myaddcount}<53, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=53\ifnum\arabic{myaddcount}<52, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=52\ifnum\arabic{myaddcount}<51, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=51\ifnum\arabic{myaddcount}<50, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=50\ifnum\arabic{myaddcount}<49, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=49\ifnum\arabic{myaddcount}<48, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=48\ifnum\arabic{myaddcount}<47, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=47\ifnum\arabic{myaddcount}<46, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=46\ifnum\arabic{myaddcount}<45, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=45\ifnum\arabic{myaddcount}<44, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=44\ifnum\arabic{myaddcount}<43, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=43\ifnum\arabic{myaddcount}<42, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=42\ifnum\arabic{myaddcount}<41, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=41\ifnum\arabic{myaddcount}<40, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=40\ifnum\arabic{myaddcount}<39, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=39\ifnum\arabic{myaddcount}<38, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=38\ifnum\arabic{myaddcount}<37, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=37\ifnum\arabic{myaddcount}<36, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=36\ifnum\arabic{myaddcount}<35, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=35\ifnum\arabic{myaddcount}<34, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=34\ifnum\arabic{myaddcount}<33, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=33\ifnum\arabic{myaddcount}<32, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=32\ifnum\arabic{myaddcount}<31, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=31\ifnum\arabic{myaddcount}<30, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=30\ifnum\arabic{myaddcount}<29, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=29\ifnum\arabic{myaddcount}<28, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=28\ifnum\arabic{myaddcount}<27, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=27\ifnum\arabic{myaddcount}<26, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=26\ifnum\arabic{myaddcount}<25, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=25\ifnum\arabic{myaddcount}<24, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=24\ifnum\arabic{myaddcount}<23, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=23\ifnum\arabic{myaddcount}<22, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=22\ifnum\arabic{myaddcount}<21, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=21\ifnum\arabic{myaddcount}<20, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=20\ifnum\arabic{myaddcount}<19, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=19\ifnum\arabic{myaddcount}<18, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=18\ifnum\arabic{myaddcount}<17, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=17\ifnum\arabic{myaddcount}<16, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=16\ifnum\arabic{myaddcount}<15, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=15\ifnum\arabic{myaddcount}<14, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=14\ifnum\arabic{myaddcount}<13, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=13\ifnum\arabic{myaddcount}<12, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=12\ifnum\arabic{myaddcount}<11, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=11\ifnum\arabic{myaddcount}<10, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=10\ifnum\arabic{myaddcount}<9, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=9\ifnum\arabic{myaddcount}<8, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=8\ifnum\arabic{myaddcount}<7, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=7\ifnum\arabic{myaddcount}<6, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=6\ifnum\arabic{myaddcount}<5, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=5\ifnum\arabic{myaddcount}<4, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=4\ifnum\arabic{myaddcount}<3, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=3\ifnum\arabic{myaddcount}<2, \else\unskip\fi\else\ifnum\arabic{myaddcount@totc}=2\else,\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}

\def\address#1{\par\itshape#1\par\addvspace{6pt}}%
%\def\@address{}
%\def\address{\@@address}%
%\newcommand{\@@address}[2][]{%
%  \g@addto@macro\@address{%
%    \refstepcounter{myaddcount}%
%    \ifnum\arabic{myaddcount}=1\vspace*{5pt}\par\fi%
%      \addressandsep\ifx#1\@empty\else\textsuperscript{#1}\fi#2\addresscommasep}%
%                            }%
\def\@corresp{}
\def\corresp{\@@corresp}%
\newcommand{\@@corresp}[2][]{%
  \g@addto@macro\@corresp{%
      \ifx#1\@empty\else\textsuperscript{#1}\fi#2}}%

\def\@DOI{}
\def\DOI#1{\global\def\@DOI{#1}}

\definecolor{gray}{cmyk}{0, 0, 0, 0.15}
\definecolor{grayfifty}{cmyk}{0, 0, 0, 0.5}
\definecolor{graysixtyfive}{cmyk}{0, 0, 0, 0.65}
\newlength{\extraspace}
\setlength{\extraspace}{\z@}

\newcommand\maketitle{\par
  \begingroup
    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
    \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
    \long\def\@makefntext##1{\parindent 3mm\noindent
        \@textsuperscript{\normalfont\@thefnmark}
      ##1}%
    \if@twocolumn
      \ifnum \col@number=\@ne
        \@maketitle
      \else
        \twocolumn[\@maketitle]%
      \fi
    \else
      \newpage%
      \global\@topnum\z@   %
      \@maketitle
    \fi
    %\thispagestyle{opening}\@thanks
  \endgroup
  \setcounter{footnote}{0}%
  \global\let\thanks\relax
  \global\let\maketitle\relax
  \global\let\@maketitle\relax
  \global\let\@address\@empty
  \global\let\@corresp\@empty
  \global\let\@history\@empty
  \global\let\@editor\@empty
  \global\let\@thanks\@empty
  \global\let\@author\@empty
  \global\let\@date\@empty
  \global\let\@subtitle\@empty
  \global\let\@title\@empty
  \global\let\@boxedtext\@empty
  \global\let\@pubyear\@empty
  \global\let\address\relax
  \global\let\boxedtext\relax
  \global\let\history\relax
  \global\let\editor\relax
  \global\let\title\relax
  \global\let\author\relax
  \global\let\date\relax
  \global\let\pubyear\relax
  \global\let\@copyrightline\@empty
  \global\let\and\relax
  \@afterindentfalse\@afterheading
}

\newlength{\aboveskipchk}%
\setlength{\aboveskipchk}{\z@}%

\def\@access{}
\def\access#1{\gdef\@access{#1}}

\def\appnotes#1{\gdef\@appnotes{#1}}
\appnotes{}

\newlength{\titlepagewd}
    \setlength{\titlepagewd}{\textwidth}

\definecolor{linkclr}{cmyk}{0.973,0.957,0,0.04}
\definecolor{jnlclr}{cmyk}{.80,.29,.05,0}
\definecolor{jnlruleclr}{cmyk}{.45,.06,.05,0}

\def\@maketitle{%
  \let\footnote\thanks
  \clearemptydoublepage
    \checkoddpage\ifcpoddpage\setlength{\aboveskipchk}{-28.6pt}\else\setlength{\aboveskipchk}{-28.6pt}\fi%for checking oddpage or evenpage top skip%%
  \vspace*{\aboveskipchk}%
  \vspace{\dropfromtop}%
    \vspace*{21pt}
  \if@twocolumn\else\vspace*{-10pt}\fi
%          \hbox to \textwidth{%
%          \raisebox{-2pt}[0pt]{%
%          \parbox[b]{\textwidth}{{\hspace*{-.5pt}\fontsize{10bp}{12pt}\selectfont\itshape\@journaltitle\rm\ (\@copyrightyear) \textbf{\@vol}, \thepage--\thelastpage}\\
%          \hspace*{-.5pt}{\fontsize{10bp}{12pt}\selectfont\href{https://doi.org/\@DOI}{https://doi.org/\@DOI}}\\
%          %{\ifx\@access\@empty\else{\fontsize{10bp}{12pt}\selectfont\@access}\fi}
%          %\vskip-.9pt
%          %{\ifx\@appnotes\@empty\else{\fontsize{10bp}{12pt}\selectfont\@appnotes}\\[-.9pt]\fi}
%          }}}%
    \vspace*{21pt}\par%
  %
  %\sffamilyfont
  \hbox to \textwidth{%
  \parbox[t]{\titlepagewd}{%
    \ifx\@subtitle\@empty%
    \else%
    {\sffamilyfontcn\fontsize{14}{21}\selectfont\raggedright \@subtitle \par}%
    \vspace{7.5\p@}%
    \fi%
    % Title here
        %{\fontsize{9.8bp}{10}\selectfont \MakeUppercase{\@appnotes}}\\[6.5pt]
        {\fontsize{12bp}{14pt}\selectfont\bfseries\leftskip0pt plus1fill\rightskip0pt plus1fill {\@title} \par}%%
    % Title below space
    \vspace{12\p@}%
    % Author here
        {\fontsize{10bp}{12}\selectfont\scshape\leftskip0pt plus1fill\rightskip0pt plus1fill \@author \par}%
    % Author below space
    \vspace{4\p@}
    % Address here
        %{\itshape\selectfont\leftskip0pt plus1fill\rightskip0pt plus1fill \@address \par}%
    % Address below space
    \vspace{-10\p@}
    % Correspondence author here
        {\fontsize{10bp}{12}\selectfont\leftskip0pt plus1fill\rightskip0pt plus1fill\@corresp \par}%
    % Correspondence below space
    % Editor here
    % Editor below space
    \vspace{10\p@}
    % History here
        %{\fontsize{10bp}{12pt}\selectfont\leftskip0pt plus1fill\rightskip0pt plus1fill [\@history] \par}
    % History below space
    \vspace*{10.5pt}
    % Abstract here
    \begingroup
    \parindent=0pt
    {\fontsize{9bp}{11}\selectfont\leftskip18pt\rightskip18pt\@abstract\par}
    %\end{minipage}
    \endgroup
    %\vspace{20\p@}
    }%
  }
  %
  \vspace{13.5\p@}%
  \ifx\@boxedtext\@empty\else\vspace*{12pt}\par\fi%
  \@boxedtext
  \vspace{12\p@ plus 6\p@ minus 6\p@}%
  \vspace{\extraspace}
  \vspace*{-18pt}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%% Abstract %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\absection}[1]{%
  \par\noindent{\bfseries #1}\space\ignorespaces}

% Section macros

% Lowest level heading that takes a number by default
\setcounter{secnumdepth}{3}

\renewcommand{\@seccntformat}[1]{\if@unnumsec\else\csname the#1\endcsname.\space\fi}

\def\secsize{\fontsize{10bp}{12}\fontseries{b}\selectfont\leftskip0pt\rightskip0pt plus1fill}

\def\subsecsize{\fontsize{10bp}{12}\fontseries{m}\fontshape{it}\selectfont\leftskip0pt\rightskip0pt plus1fill}

\def\subsubsecsize{}

\def\section{\def\@seccntformat##1{\bf\csname the##1\endcsname.\enspace}%
  \@startsection{section}{1}{\z@}
  {-16\p@ plus -3\p@}{6\p@}
  {\reset@font\raggedright\secsize}}

\def\subsection{\def\@seccntformat##1{\rm\csname the##1\endcsname.\enspace}%
  \@startsection{subsection}{2}{\z@}
  {-11\p@ plus -2\p@}{4\p@}
  {\reset@font\raggedright\subsecsize}}

\def\subsubsection{%
  \@startsection{subsubsection}{3}{\z@}
  {-11\p@ plus -1\p@}{0.001em}
  {\reset@font\raggedright\subsubsecsize}}

\def\textcolon{\text{\rm :}}

 \def\paragraph{%
   \@startsection{paragraph}{4}{\z@}
   {-6\p@}
   {-.4em}
   {\reset@font\itshape}}

\def\@startsection#1#2#3#4#5#6{%
  \if@noskipsec \leavevmode \fi
  \par
  \@tempskipa #4\relax
  \@afterindenttrue
  \ifdim \@tempskipa <\z@
    \@tempskipa -\@tempskipa \@afterindentfalse
  \fi
  \if@nobreak
    \everypar{}%
    \ifnum#2=2\vspace*{0pt}\fi\ifnum#2=3\vspace*{1pt}\fi%%
  \else
    \addpenalty\@secpenalty\addvspace\@tempskipa
  \fi
  \@ifstar
    {\@ssect{#3}{#4}{#5}{#6}}%
    {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}

\def\@sect#1#2#3#4#5#6[#7]#8{%
  \ifnum #2>\c@secnumdepth
    \let\@svsec\@empty
  \else
    \refstepcounter{#1}%
    \protected@edef\@svsec{\@seccntformat{#1}\relax}%
  \fi
  \@tempskipa #5\relax
  \ifdim \@tempskipa>\z@
    \begingroup
      #6{%
        \@hangfrom{\hskip #3\relax\@svsec}%
          \interlinepenalty \@M #8\@@par}%
    \endgroup
    \csname #1mark\endcsname{#7}%
    \addcontentsline{toc}{#1}{%
      \ifnum #2>\c@secnumdepth \else
        \protect\numberline{\csname the#1\endcsname}%
      \fi
      #7}%
  \else
    \def\@svsechd{%
      #6{\hskip #3\relax
      \@svsec #8}%
      \csname #1mark\endcsname{#7}%
      \addcontentsline{toc}{#1}{%
        \ifnum #2>\c@secnumdepth \else
          \protect\numberline{\csname the#1\endcsname}%
        \fi