% \iffalse meta-comment -*- mode: doctex -*-
%
% Article class for The Canadian Journal of Statistics | La revue
% canadienne de statistique
%
% Copyright (C) 2023-2026 Statistical Society of Canada | Société
% statistique du Canada
%
% The class file and templates derived from this file are licenced
% under the LaTeX Project Public License, version 1.3c or (at your
% option) any later version. The latest version of this license is in:
%
%    https://www.latex-project.org/lppl.txt
%
% The documentation is also licensed under CC BY-SA 4.0 International.
% To view a copy of this license, visit:
%
%   https://creativecommons.org/licenses/by-sa/4.0/
%
% This work has the LPPL maintenance status `maintained'.
%
% The Current Maintainer of this work is Vincent Goulet
% <vincent.goulet@act.ulaval.ca>.
% \fi
%
% \iffalse
%<*driver>
\ProvidesFile{cjs-rcs-article.dtx}
%</driver>
%<class>\NeedsTeXFormat{LaTeX2e}[2021/06/01]
%<class>\ProvidesClass{cjs-rcs-article}%
%<*class>
[2026/03/05 v2.0 Article class for The Canadian Journal of
  Statistics | La revue canadienne de statistique]
%</class>
%<*driver>
\expandafter\ifx\csname ifenglish\endcsname\relax
  \expandafter\newif\csname ifenglish\endcsname
  \englishtrue
\fi
\ifenglish
  \documentclass[nocjs,x11names,french,english]{cjs-rcs-article}
\else
  \documentclass[nocjs,x11names,english,french]{cjs-rcs-article}
\fi
  \setlrmarginsandblock{40mm}{30mm}{*} % increase left margin
  \checkandfixthelayout

  %% Loading doc.sty creates some conflicts with the class and memoir.
  %% We need to:
  %%
  %% - keep a copy of the class' \maketitle command;
  %% - undefine the 'glossary' environment created by memoir;
  %% - restore the standard LaTeX commands for the index and glossary
  %%   that doc.sty relies upon.
  \let\makeCJStitle\maketitle   % keep class definition
  \let\theglossary\relax        % avoid conflict with doc.sty
  \let\endtheglossary\relax     % avoid conflict with doc.sty
  \makeatletter
  \def\makeindex{%
    \newwrite\@indexfile
    \immediate\openout\@indexfile=\jobname.idx
    \def\index{\@bsphack\begingroup
               \@sanitize
               \@wrindex}\typeout
      {Writing index file \jobname.idx}%
    \let\makeindex\@empty
  }
  \@onlypreamble\makeindex
  \def\@wrindex#1{%
     \protected@write\@indexfile{}%
        {\string\indexentry{#1}{\thepage}}%
   \endgroup
   \@esphack}
  \def\index{\@bsphack\begingroup \@sanitize\@index}
  \def\@index#1{\endgroup\@esphack}
  \def\makeglossary{%
    \newwrite\@glossaryfile
    \immediate\openout\@glossaryfile=\jobname.glo
    \def\glossary{\@bsphack\begingroup
                  \@sanitize
                  \@wrglossary}\typeout
      {Writing glossary file \jobname.glo }%
    \let\makeglossary\@empty
  }
  \@onlypreamble\makeglossary
  \def\@wrglossary#1{%
     \protected@write\@glossaryfile{}%
        {\string\glossaryentry{#1}{\thepage}}%
   \endgroup
   \@esphack}
  \def\glossary{\@bsphack\begingroup\@sanitize\@index}
  \@twosidefalse\@mparswitchfalse % turn off twoside option
  \makeatother
  \usepackage{doc}
  \def\changes#1#2#3{\glossary{#1>#3}} % simplified
  \usepackage{awesomebox}
  \usepackage{metalogo}
  \DisableCrossrefs
  \CodelineNumbered
  \RecordChanges
  \DontCheckModules

  %% Configuration of the glossary (English version only)
  \addto\extrasenglish{%
    \def\glossaryname{Version history}}
  \ifenglish
    \GlossaryPrologue{\section*{\glossaryname}%
      \addcontentsline{toc}{section}{\glossaryname}}
    \setlength{\GlossaryMin}{5cm}
  \else
    \OnlyDescription
    \usepackage{xr}             % for reference to English version
    \externaldocument{cjs-rcs-article}
  \fi

  %% Name of the journal (in English and French)
  \makeatletter
  \newcommand*\TheCJS{\@ifstar{\emph{The Journal}}{\emph{\CJS@journalname@en}}}
  \newcommand*\LaRevue{\@ifstar{\emph{La revue}}{\emph{\CJS@journalname@fr}}}
  \newcommand*\CJSname{cjs-rcs-article}
  \newcommand*\CJSclass{\class{\CJSname}}
  \newcommand*\CJSpkg{\pkg{\CJSname}}
  \newcommand*\CJSbsten{\code{cjs-rcs-en}}
  \newcommand*\CJSbstfr{\code{cjs-rcs-fr}}
  \newcommand*\SSCen{Statistical Society of Canada}
  \newcommand*\SSCfr{Société statistique du Canada}
  \makeatother

  \ifenglish
    \AtEndPreamble{%
      \hypersetup{%
        pdftitle = {Guide to the class cjs-rcs-article},
        pdfauthor = {\SSCen}}}
  \else
    \AtEndPreamble{%
      \hypersetup{%
        pdftitle = {Guide d'utilisation de la classe cjs-rcs-article},
        pdfauthor = {\SSCfr}}}
  \fi

  %% Additional colors
  \colorlet{codebg}{LightYellow1} % code background
  \colorlet{prompt}{Orchid4}      % command prompt

  %% New \DescribeMacro type environments for class options and lengths
  \NewDocElement[envlike,notoplevel,printtype=\emph{option}]{Option}{option}
  \NewDocElement[macrolike,notoplevel,printtype=$\ell$]{Length}{length}

  %% Additional semantic typesetting
  \let\class\textsf

  %% URL of the project web site
  \newcommand*\siteurl{https://cjs-rcs.gitlab.io}

  %% Redefine \year and define \isodate using information from
  %% \filedate instead of using compilation time
  \def\parsedate#1/#2/#3\relax{\def\year{#1}\def\isodate{#1-#2-#3}}

  %% Definition of a shorthand to either hyphenate a word or insert a
  %% regular dash. Use in the long names of Creative Commons licences.
  %% (Shorthands support provided by babel.)
  \useshorthands*{"}
  \defineshorthand{"-}{\discretionary{-}{}{-}}

  %% Source code
  \usepackage{listings}
  \lstset{%
    basicstyle=\ttfamily\NoAutoSpacing,
    moredelim=[is][\color{prompt}]{---}{-},
    escapeinside=`',
    showstringspaces=false,
    backgroundcolor=\color{codebg},
    frame=leftline,
    framerule=2pt,
    framesep=5pt,
    xleftmargin=7.4pt
  }

  %% The \meta command from memoir needs an additionnel \normalfont to
  %% use the document font in listings.
  \makeatletter
  \def\meta@font@select{\normalfont\itshape}
  \makeatother

  %% Suppress the hyperlink from a reference.
  \newcommand{\nolink}[1]{\begin{NoHyper}#1\end{NoHyper}}

\begin{document}
\DocInput{cjs-rcs-article.dtx}
\end{document}
%</driver>
%<*fr-doc>
%% Wrapper to set language to French
%% (https://tex.stackexchange.com/a/28646).
\expandafter\newif\csname ifenglish\endcsname
\englishfalse
\input{cjs-rcs-article.dtx}
%</fr-doc>
% \fi
% \GetFileInfo{cjs-rcs-article.dtx}
% \expandafter\parsedate\filedate\relax
%
% \changes{2.0}{2026-03-05}{After a switch to a single-blind peer
% review process, the class option \texttt{review} now only numbers
% lines and increases line spacing.}
% \changes{1.3}{2025-08-18}{Fix the display of the licensing
% information at the bottom of the first page, so that very long
% lists of authors or abstracts no longer push the information to the
% second page.}
% \changes{1.2}{2025-07-10}{Split the documentation between the
% actual class documentation and author guidelines.}
% \changes{1.1a}{2024-07-25}{Make the command \cs{proglang} robust.}
% \changes{1.1a}{2024-07-25}{Fix the command \cs{proglang} that would
% disable hyphenation for the rest of the document. With thanks to
% Enrico Gregorio (egreg) for the heads up in person at TUG 2024.}
% \changes{1.1}{2024-07-13}{Add the command \cs{matit} to typeset bold
% italic in math in a portable way.}
% \changes{1.1}{2024-07-02}{Add the References section to the table of
% contents of the PDF.}
% \changes{1.1}{2024-06-23}{Improve the documentation, in particular
% the installation instructions and access to the templates.}
% \changes{1.1}{2024-06-26}{Introduce new commands \cs{specialack} and
% \cs{specialackmark} for the editors.}
% \changes{1.1}{2024-06-26}{Provide support to acknowledge usage of
% data from the Alzheimer’s Disease Neuroimaging Initiative (ADNI) and
% the Alzheimer’s Disease Neuroimaging Metabolomics Consortium
% (ADMC).}
% \changes{1.0}{2023-11-29}{Fix various typos and cosmetic issues in
% the documentation.}
% \changes{1.0}{2023-11-29}{First official release distributed through
% CTAN.}
% \changes{0.92}{2023-10-27}{Relegate the \texttt{makebst} menu
% information to the complete master bibliographic style
% documentation.}
% \changes{0.92}{2023-10-27}{Proofread all the package documentation.}
% \changes{0.9}{2023-10-14}{Include bibliographic styles with the
% class.}
% \changes{0.5}{2023-09-12}{Improve the measuring and positioning of
% the space for licensing information at the bottom of the title
% page.}
% \changes{0.5}{2023-09-12}{Clarify the documentation as to what is
% displayed at the bottom of the first page and with which class
% option.}
% \changes{0.5}{2023-09-12}{Allow usage of \cs{licence} with option
% final. Editors or the publisher may now use the command to specify
% the official licence statement to display at the bottom of the title
% page.}
% \changes{0.4}{2023-08-30}{Replace old-style numbers by lining
% numbers throughout.}
% \changes{0.3}{2023-08-21}{Make Section 2 (Quick start) independent
% from the rest of the text, such that readers may either read only
% that section, or skip it entirely.}
% \changes{0.3}{2023-08-21}{Increase the visibility of the templates
% in the documentation, notably with a new subsection at the beginning
% of Section 4 (Usage).}
% \changes{0.3}{2023-08-21}{Condense the bibliography by cutting the
% spacing between the entries in half.}
% \changes{0.2}{2023-08-18}{Many revisions to the documentation,
% thanks mostly to Julie Falkner.}
% \changes{0.2}{2023-08-18}{Specify that CJS may provide an abstract
% in the second language, for French as well as for English.}
% \changes{0.2}{2023-08-18}{Change \cs{backmatter*} to
% \cs{makebackmatter}, to align with \cs{maketitle} and since
% \cs{appendix*} no longer exists.}
% \changes{0.2}{2023-08-18}{Appendices now appear between the back
% matter and the bibliography.}
% \changes{0.2}{2023-08-18}{The number of appendices is no longer
% limited to one. The command \cs{appendix*} becomes obsolete and is
% removed from the class.}
% \changes{0.1f}{2023-07-20}{The command to print the back matter
% material is now \cs{backmatter*}. The standard \cs{backmatter} is
% kept untouched.}
% \changes{0.1f}{2023-07-20}{The (author) documentation of
% \cs{appendix} and \cs{appendix*} is moved to its own subsection to
% the Usage section.}
% \changes{0.1f}{2023-07-20}{The author documentation now recommends
% where to use \cs{licence}.}
% \changes{0.1f}{2023-07-20}{The list of references is always an
% unnumbered section, even without \cs{backmatter}.}
% \changes{0.1f}{2023-07-20}{The package natbib is now loaded with the
% option \texttt{sectionbib}.}
% \changes{0.1f}{2023-07-20}{The article structure is modified to put
% the appendix before the back matter and the references.}
% \changes{0.1e}{2023-07-19}{In addition to the LPPL for the code,
% licence the documentation under CC BY-SA, if only to provide an
% example of \cs{licence}.}
% \changes{0.1e}{2023-07-19}{Introduce commands to typeset Creative
% Commons licence icons.}
% \changes{0.1e}{2023-07-19}{Introduce handling of licences depending
% on the type of document.}
% \changes{0.1e}{2023-07-19}{The command \cs{appendix} now indicates
% the start of the appendices like the standard command. A starred
% variant specially useful for CJS articles is introduced to also
% insert the sectional division and title in the article.}
% \changes{0.1d}{2023-07-13}{The user documentation is now available
% in English.}
% \changes{0.1d}{2023-07-13}{The role of the option
% \texttt{supplement} is now to typeset a document similar to a
% regular article, but with some unnecessary information hidden
% (abstracts, keywords, back matter, etc.).}
% \changes{0.1c}{2023-07-8}{The corresponding author mark * is
% replaced by an envelope. The marker positioned next to the
% corresponding author name is now a \texttt{mailto:} hyperlink.}
% \changes{0.1c}{2023-07-8}{Use Font Awesome for all symbols, instead
% of ccicons for the Creative Commons symbols and a solution based on
% TikZ to draw the ORCID icon. Therefore, ccicons and tikz are no
% longer loaded by the class.}
% \changes{0.1c}{2023-07-8}{Use a key-value interface in \cs{author} to
% specify not only the ORCID iD, but also the email and
% corresponding author status.}
% \changes{0.1b}{2023-07-06}{Documentation on the commands for editors
% moved in appendix.}
% \changes{0.1b}{2023-07-06}{The ornament in the journal information
% now uses the CJS colours.}
% \changes{0.1b}{2023-07-06}{Option \texttt{final} for the editors.}
% \changes{0.1b}{2023-07-06}{Support for hyperlinks.}
% \changes{0.1a}{2023-07-04}{Change the paper size from 7in x 10in to
% letter paper.}
% \changes{0.1a}{2023-07-04}{Support for \cs{firstpage} and automatic
% display of the last page number in the journal information.}
% \changes{0.1a}{2023-07-04}{Command \cs{surname} to enter the surname
% of an author and automatically populate the running authors list.}
% \changes{0.1a}{2023-07-04}{Funding information moved to the end of
% the paper with other back matter.}
% \changes{0.1a}{2023-07-04}{Support for ORCID iD.}
% \changes{0.1}{2023-06-20}{First test version for review by CJS editorial
% team.}
%
% \ifenglish%
% \title[Guide to the class {\CJSname}]{%
%   Guide to the class {\CJSclass} \\
%   for \TheCJS}
% \author{\SSCen}
% \affil{Class and documentation developed by Vincent Goulet}
% \else%
% \title[Guide d'utilisation de la classe {\CJSname}]{%
%   Guide d'utilisation de la classe {\CJSclass} \\
%   pour \LaRevue}
% \author{\SSCfr}
% \affil{Classe et documentation rédigées par Vincent Goulet}
% \fi
%
% \begin{englishabstract}
%   Authors submitting an article to {\TheCJS} should use the document
%   class {\CJSclass} and its companion bibliographic styles to
%   typeset their manuscript with {\LaTeX}. This guide provides a
%   complete description of the characteristics and features of the
%   class{\ifenglish,\else.\fi} %
%   \ifenglish%
%   as well as the details of its implementation and the version
%   history. A French version of this guide is also available, but
%   without these last two elements of documentation. %
%   \else%
%   The English version of this guide also contains the details of its
%   implementation and the version history. %
%   \fi
% \end{englishabstract}
% \begin{frenchabstract}
%   Les auteurs qui soumettent un article dans {\LaRevue} doivent
%   utiliser la classe {\CJSclass} et les styles bibliographiques qui
%   l'accompagnent pour préparer leur manuscript avec
%   {\LaTeX}. Ce guide fournit une description complète des
%   caractéristiques et fonctionnalités de la
%   classe{\ifenglish,\else.\fi} %
%   \ifenglish%
%   ainsi que les détails de sa mise en œuvre et l'historique des
%   versions. Une version française de ce guide est également
%   disponible, mais celle-ci ne contient pas ces deux derniers
%   éléments de documentation. %
%   \else%
%   La version anglaise du document contient en plus les détails de sa
%   mise en œuvre et l'historique des versions. %
%   \fi
% \end{frenchabstract}
%
% ^^A abusing the 'classification' environment. The final period is
% ^^A added by the environment.
% \begin{classification}[Version]
% \item[] %
%  \ifenglish%
%  This is the documentation for the class {\CJSclass}~{\fileversion},
%  dated {\filedate} %
%  \else%
%  Ce document décrit la classe {\CJSclass}~{\fileversion}, datée du
%  {\filedate} %
%  \fi
% \end{classification}
%
% \licence{{\ccbysa*} 2023--{\year}, {\SSCen}~{\textbar}~{\SSCfr}}
%
% \makeCJStitle
%
% \section{Introduction}
% \label{sec:introduction}
%
% \ifenglish%
% The {\LaTeX} document class {\CJSclass} and its companion bibliographic
% styles {\CJSbsten} and {\CJSbstfr} typeset manuscripts immediately
% in accordance with the presentation rules of {\TheCJS}. In
% particular, the dimensions of the typeblock, the page layout, the
% fonts and the list of references are identical to the final version
% of the article. But for a few modifications, the present guide uses
% the page layout of the class. %
% \else%
% La classe {\CJSclass} et les styles de bibliographie {\CJSbsten} et
% {\CJSbstfr} qui l'accompagnent permettent de composer des
% manuscripts conformes aux règles de présentation matérielle de
% {\LaRevue}. En particulier, la taille de la zone d'impression, la
% mise en page, les polices de caractères et la liste des références
% seront identiques à celles de la version finale de l'article. Le
% présent document reprend d'ailleurs, à quelques différences près,
% la mise en page de la classe. %
% \fi
%
% \ifenglish%
% Typesetting a manuscript with {\CJSclass} requires a recent and
% up-to-date {\TeX} distribution. We recommmend the distributions %
% \else%
% La composition d'un manuscript avec la classe
% {\CJSclass} requiert une distribution {\TeX} récente et
% à jour. Nous recommandons les distributions %
% \fi
% \href{https://tug.org/texlive}{{\TeX}~Live}\ifenglish---\else~--- \fi%
% \ifenglish or its variant for macOS \else ou sa variante pour macOS \fi%
% \href{https://tug.org/mactex}{Mac{\TeX}}\ifenglish---\else~--- \fi%
% \ifenglish and \else et \fi%
% \href{https://miktex.org}{MiK{\TeX}}. %
% \ifenglish%
% You may also use an online {\LaTeX} editor such as %
% \else%
% Vous pouvez également avoir recours à une plateforme de rédaction en
% ligne comme %
% \fi%
% \href{https://overleaf.com}{Overleaf}; %
% \ifenglish%
% their {\TeX} distributions usually satisfy the conditions
% above. %
% \else%
% leurs distributions {\TeX} satisfont généralement les conditions
% ci-dessus.
% \fi
%
% \ifenglish%
% The class {\CJSclass} is part of the standard {\TeX} distributions
% via the package {\CJSpkg}. If your distribution is up-to-date, you
% should be able to use the class without any special intervention. %
% \else%
% La classe {\CJSclass} fait partie des distributions {\TeX} standards
% via le paquetage {\CJSpkg}. Dans la mesure où votre distribution est
% à jour, vous devriez pouvoir l'utiliser sans autre intervention. %
% \fi
%
% \ifenglish%
% This guide is organized as follows. \autoref{sec:quick-start}
% explains how to get started quickly with the class, and
% \autoref{sec:installation} describes how to install the class if
% it is not already available on your system. \autoref{sec:usage}
% gives all the details of how to use the package for the various
% components of your article. \autoref{sec:hyperlinks} discusses
% hyperlinks and the creation of the table of contents of the PDF.
% Finally, \autoref{sec:supplement} explains how you can use the class
% to prepare supplementary material. For {\TeX} experts, we include
% two appendices. \autoref{sec:editors} discusses features that are
% primarily intended for editors rather than authors, and
% \autoref{sec:implementation} gives the details of the
% implementation. %
% \else
% Ce guide est structuré comme suit. La \autoref{sec:quick-start} décrit
% comment démarrer rapidement la préparation d'un article avec la
% classe, alors que la \autoref{sec:installation} explique comment
% l'installer si elle n'est pas déjà disponible sur votre système. La
% \autoref{sec:usage} passe en revue toutes les fonctionnalités de la
% classe pour les diverses composantes d'un article. La
% \autoref{sec:hyperlinks} traite des hyperliens et de la préparation
% de la table des matières du fichier PDF. Finalement, la
% \autoref{sec:supplement} explique comment préparer le matériel
% additionnel à l'aide de la classe. L'\autoref{sec:editors}
% s'adresse principalement aux éditeurs. Pour les experts {\TeX},
% l'\nolink{\autoref{sec:implementation}} de la version anglaise de la
% documentation contient les détails de mise en œuvre de la classe. %
% \fi
%
%
% \ifenglish%
% \section{Quick start}
% \else%
% \section{Démarrage rapide}
% \fi
% \label{sec:quick-start}
%
% \changes{1.1}{2024-06-05}{Documentation: add a link to obtain the
% templates in the \emph{Quick start} section.}
% \ifenglish%
% The class ships with templates for articles in English and in
% French. They are located with the documentation of the class in
% {\TeX} distributions. You may also obtain the templates from %
% \else%
% La classe est livrée avec des gabarits pour des articles en français
% et en anglais. Ceux-ci sont classés avec la documentation dans les
% distributions {\TeX}. Vous pouvez aussi les récupérer à partir de %
% \fi%
% \href{https://ctan.org/pkg/\CJSname}{CTAN}. %
% \ifenglish%
% To quickly start writing your article, copy the appropriate template
% to your working directory and follow the brief instructions and
% the examples therein. You should also review the author guidelines
% that ship along the present documentation. %
% \else%
% Pour débuter rapidement la rédaction de votre article, copiez le
% gabarit approprié dans votre dossier de travail et suivez les
% directives succinctes et les exemples qui s'y trouvent. Vous
% devriez également passer en revue les directives pour les
% auteurs qui sont livrées avec la présente documentation. %
% \fi
%
% \ifenglish%
% If your manuscript contains non-ASCII characters (such as accented
% letters), you have to save your file using the %
% \else%
% Dès que le texte contient des caractères non-ASCII (comme des lettres
% accentuées), vous devez enregistrer votre fichier dans le codage de
% caractères %
% \fi%
% \href{https://fr.wikipedia.org/wiki/UTF-8}{UTF-8}\ifenglish{} character encoding\fi. %
% \ifenglish%
% To take full advantage of the class, you should compile your manuscript using
% {\LuaLaTeX}. %
% \else%
% Pour tirer pleinement profit des caractéristiques de la classe, compilez
% votre manuscript avec {\LuaLaTeX}. %
% \fi
%
% \ifenglish%
% The remainder of this guide provides detailed information on the
% characteristics and features of the class. We recommend that you
% read at least \autoref{sec:usage:mathematics} on mathematical
% typesetting. %
% \else%
% Le reste de ce guide contient les informations détaillées sur les
% caractéristiques et fonctionnalités de la classe. Nous
% recommandons de lire au moins la \autoref{sec:usage:mathematics}
% sur la composition des mathématiques.%
% \fi
%
%
% \section{Installation}
% \label{sec:installation}
%
% \changes{1.1}{2024-06-05}{Documentation: provide a direct link to
% the release corresponding to the version of the documentation in the
% \emph{Installation} section.}
% \changes{0.91}{2023-10-16}{Revise the documentation, in particular
% the installation instructions of Section 3 and in the file
% \texttt{README.md}.}
% \changes{0.91}{2023-10-16}{Change the name of the archive containing
% a ``local'' installation of the class from
% \texttt{-no-local-tex.zip} to \texttt{-project-install.zip}.}
% \ifenglish%
% The class {\CJSclass} is distributed as the package %
% \else%
% La classe {\CJSclass} est distribuée dans le paquetage %
% \fi%
% \href{https://ctan.org/pkg/cjs-rcs-article}{\pkg{cjs-rcs-article}} %
% \ifenglish%
% through the Comprehensive {\TeX} Archive Network (CTAN). It is part
% of the standard {\TeX} distributions such as {TeX}~Live, Mac{\TeX}
% and MiK{\TeX}. We strongly recommend that you install or update the
% package using the package manager of your {\TeX} distribution. For
% example, with {\TeX}~Live, you may install or update from the
% graphical package manager, or using either of these commands from
% the command line: %
% \else%
% via le réseau de sites \emph{Comprehensive {\TeX} Archive Network}
% (CTAN). Celui-ci fait partie des distributions {\TeX} standards
% telles que {TeX}~Live, Mac{\TeX} et MiK{\TeX}. Nous recommandons
% fortement d'installer ou de mettre à jour le paquetage à l'aide du
% gestionnaire de paquetages de votre distribution {\TeX}. Par
% exemple, avec {\TeX}~Live, vous pouvez effectuer ces opérations
% dans l'assistant graphique, ou encore avec l'une ou l'autre des
% commandes ci-dessous: %
% \fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
---$- tlmgr install cjs-rcs-article
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \ifenglish or\else ou\fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
---$- tlmgr update cjs-rcs-article
\end{lstlisting}
% \iffalse
%</example>
% \fi
%
% \ifenglish%
% If you are not in position to install packages or update the {\TeX}
% distribution---notably when using an online editor---you may instead
% opt for a simplified installation of the class, but that will be
% limited in scope to your project. Download the archive %
% \else%
% S'il vous est impossible d'installer des paquetages ou de mettre à
% jour la distribution {\TeX}~--- notamment si vous utilisez une
% plateforme de rédaction en ligne~--- vous pouvez procéder à une
% installation simplifiée de la classe, mais dont la portée sera
% limitée à votre projet. Pour ce faire, téléchargez l'archive %
% \fi%
% \code{cjs-rcs-article-project-install.zip} %
% \ifenglish from the \else depuis le \fi%
% \href{\siteurl}{\ifenglish project website\else site web du projet\fi}, %
% \ifenglish%
% uncompress it and place its contents in the directory of your
% project. You will then have access to all the essential files of the
% class, including the templates, within this project. %
% \else%
% décompressez celle-ci et placez son contenu dans le répertoire de
% votre projet. Vous disposerez alors à l'intérieur de ce projet de
% tous les fichiers essentiels de la classe, y compris les gabarits. %
% \fi
%
% \ifenglish%
% Manual installation with full access to the source code is
% possible for {\TeX} experts. Please follow the instructions in the
% \code{README.md} file included in the package. %
% \else%
% Si votre expertise {\TeX} vous pousse à préférer une installation
% manuelle avec accès à l'intégralité du code source de la classe,
% consultez les instructions qui se trouvent dans le fichier
% \code{README.md} du paquetage. %
% \fi
%
%
% \ifenglish%
% \section{Usage} %
% \else%
% \section{Utilisation} %
% \fi
% \label{sec:usage}
%
% \ifenglish%
% The class {\CJSclass} relies on modern and advanced tools, all of
% which are available in recent {\TeX} distributions. In particular: %
% \else%
% La classe {\CJSclass} repose sur des outils modernes et évolués qui
% font tous partie des distributions {\TeX} récentes. En
% particulier: %
% \fi
% \begin{itemize}
% \item \ifenglish the class\else la classe\fi{} %
%   \href{https://ctan.org/pkg/memoir}{\class{memoir}} %
%   \ifenglish%
%   on which {\CJSclass} is based (therefore, {\CJSclass} inherits all
%   the features of \class{memoir}); %
%   \else%
%   sur laquelle est basée {\CJSclass} (par conséquent, {\CJSclass}
%   hérite de l'intégralité des fonctionnalités de \class{memoir}); %
%   \fi
% \item \ifenglish the fonts\else les polices\fi{} %
%   \href{https://ctan.org/pkg/stix2-otf}{STIX~Two} %
%   \ifenglish%
%   for text and mathematics; %
%   \else%
%   pour le texte et les mathématiques; %
%   \fi
% \item \ifenglish the fonts\else les polices\fi{} %
%   \href{https://ctan.org/pkg/fira}{Fira} %
%   \ifenglish%
%   for decorative elements (notably \textsf{Fira Sans} for section
%   titles and \texttt{Fira Mono} for computer code); %
%   \else%
%   pour divers éléments décoratifs (notamment \textsf{Fira Sans} pour
%   les titres de sections et \texttt{Fira Mono} pour le code
%   informatique); %
%   \fi
% \item \ifenglish the package\else le paquetage\fi{} %
%   \href{https://ctan.org/pkg/babel}{\pkg{babel}} %
%   \ifenglish%
%   to handle multiple languages in a single document. %
%   \else%
%   pour la prise en charge de multiples langues dans un même
%   document. %
%   \fi
% \end{itemize}
%
% \changes{1.2}{2025-05-09}{Recommend compilation with {\LuaLaTeX} ^^A
% instead of {\XeLaTeX}, to follow the official recommendation of the
% {\LaTeX} Team.}
% \ifenglish%
% The class is largely compatible with the engine {pdf\LaTeX}.
% However, to take full advantage of its characteristics\footnote{%
%   In particular when it comes to fonts. The engine {pdf\LaTeX} uses
%   the Type~1 versions of the fonts STIX~Two and Fira. Since the
%   PostScript Type~1 technology has been deprecated, the fonts are no
%   longer updated. The engine {\LuaLaTeX} uses the more modern---and
%   complete---OpenType versions of the fonts.} %
% we recommend that you compile your manuscript using the more
% modern engine {\LuaLaTeX}. %
% \else%
% La classe est en grande partie compatible avec le moteur
% {pdf\LaTeX}. Cependant, pour tirer pleinement profit de ses
% caractéristiques\footnote{%
%   Notamment au chapitre des polices de caractères. Le moteur
%   {pdf\LaTeX} utilise les versions Type~1 des polices STIX~Two et
%   Fira. Or, la technologie Type~1 PostScript étant aujourd'hui
%   obsolète, ces polices ne sont plus mises à jour. Le moteur
%   {\LuaLaTeX} utilise les plus modernes~--- et complètes~--- versions
%   OpenType des polices.}, %
% nous recommandons de compiler votre manuscript avec le plus moderne
% moteur {\LuaLaTeX}. %
% \fi
%
% \ifenglish%
% \subsection{Templates}
% \else%
% \subsection{Gabarits}
% \fi
% \label{sec:usage:templates}
%
% \changes{1.3}{2025-08-29}{Documentation: revise wording on the
% location of the templates (they are with the documentation in all
% distributions) and remove the obsolete link to download them from
% the project website.}
% \changes{1.1}{2024-06-05}{Documentation: add a link to the templates
% in the \emph{Templates} sub-section.}
% \ifenglish%
% The class is distributed with templates for articles in English
% and French. If you are using the version of the class included
% with your {\TeX} distribution, the templates are located with the
% documentation. You may also obtain them from %
% \else%
% La classe est distribuée avec des gabarits pour des articles en français
% et en anglais. Si vous utilisez la version de la classe fournie avec
% votre distribution {\TeX}, les gabarits sont classés avec la
% documentation. Vous pouvez aussi les récupérer à partir de %
% \fi%
% \href{https://ctan.org/pkg/\CJSname}{CTAN}. %
% \ifenglish
% If you followed the limited or manual installation instructions of
% \autoref{sec:installation}, the templates reside in your working
% directory. %
% \else%
% Si vous avez plutôt opté pour une installation limitée ou manuelle
% telles que décrites à la \autoref{sec:installation}, les gabarits se
% trouvent dans votre dossier de travail. %
% \fi%
%
% \ifenglish%
% We strongly encourage to start from a template to write your
% article. It may also help to follow a template while reading this
% section.
% \else%
% Nous recommandons fortement de rédiger votre article à partir d'un
% gabarit. Il peut aussi s'avérer utile de suivre un gabarit en lisant
% cette section.
% \fi
%
% \ifenglish%
% \subsection{Text encoding}
% \else%
% \subsection{Codage du code source}
% \fi
% \label{sec:usage:encoding}
%
% \ifenglish%
% When the text contains accented letters or any other non-ASCII
% symbol, you must save your manuscript using the %
% \else%
% Lorsqu'il contient du texte avec des accents ou tout autre symbole
% non-ASCII, le code source de votre manuscript doit obligatoirement
% être enregistré dans le codage de caractères %
% \fi%
% \href{https://fr.wikipedia.org/wiki/UTF-8}{UTF-8}\ifenglish{}
% character encoding.\footnote{%
%   Since UTF-8 is usually not the default encoding on Windows,
%   be particularly careful if you are using this
%   operating system.}\else.\footnote{%
%   L'UTF-8 n'étant pas le codage par défaut sous Windows, portez une
%   attention toute particulière à ce point si vous utilisez ce système
%   d'exploitation.} %
% \fi
%
% \ifenglish%
% \subsection{Class declaration and options}
% \else%
% \subsection{Déclaration de la classe et options}
% \fi
% \label{sec:usage:options}
%
% \ifenglish%
% The class is loaded with the command: %
% \else%
% On charge la classe avec la commande: %
% \fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\documentclass`\oarg{options}'{cjs-rcs-article}
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \ifenglish%
% Some \meta{options} of the class are intended for the authors,
% whereas others are instead intended for the editors of {\TheCJS*}.
% Presentation of the editor \meta{options} is deferred to
% \autoref{sec:editors}. Here, we concentrate on the author
% \meta{options}, that is: the languages of the article,
% \code{review}, \code{supplement}, and \code{nocjs}. %
% \else%
% La classe comporte des \meta{options} pour les auteurs et d'autres
% qui s'adressent plus spécifiquement aux éditeurs de {\LaRevue*}. La
% présentation des \meta{options} pour les éditeurs est repoussée à
% l'\autoref{sec:editors}. Pour l'instant, nous nous concentrons sur
% les \meta{options} pour les auteurs, soit: les langues de l'article,
% \code{review}, \code{supplement} et \code{nocjs}. %
% \fi%
%
% \begin{DescribeOption}{english}
% \begin{DescribeOption}{french}
%   \ifenglish%
%   {\TheCJS} asks for abstracts in English and French. Therefore,
%   \code{english} and \code{french} are required in the
%   \meta{options} of the class. You need to declare these options in
%   a specific order, because the \emph{last} one becomes the main
%   language of the article. %
%   \else%
%   {\LaRevue} exige des résumés en anglais et en français. Par
%   conséquent, \code{english} et \code{french} doivent figurer dans
%   les \meta{options} de la classe. Vous devez les déclarer dans un
%   ordre précis, car la \emph{dernière} langue mentionnée devient la
%   langue principale de l'article. %
%   \fi
% \end{DescribeOption}
% \end{DescribeOption}
%
% \begin{DescribeOption}{review}
%   \ifenglish%
%   The option \code{review} produces version of the manuscript
%   suitable for peer review. With this option, the lines are numbered
%   and the line spacing is increased. %
%   \else%
%   L'option \code{review} produit une version pour le processus
%   d'évaluation. Avec cette option, les lignes sont numérotées et
%   l'interligne est augmenté. %
%   \fi
% \end{DescribeOption}
%
% \begin{DescribeOption}{supplement}
%   \ifenglish%
%   The class option \code{supplement} allows you to use the class
%   {\CJSclass} to prepare your supplementary material. See
%   \autoref{sec:supplement} for additional details. %
%   \else%
%   L'option \code{supplement} vous permet d'utiliser la classe
%   {\CJSclass} pour préparer le matériel additionnel de l'article.
%   Consultez la \autoref{sec:supplement} pour de plus amples
%   informations. %
%   \fi
% \end{DescribeOption}
%
% \begin{DescribeOption}{nocjs}
%   \ifenglish%
%   If you wish to use the class {\CJSclass} to typeset documents
%   other than an article for {\TheCJS*}, use the option \code{nocjs}
%   to hide all journal-specific publication information.\footnote{%
%     This guide uses the option \code{nocjs}.} %
%   The option also allows you to specify a licence agreement in a
%   statement that will be displayed in the footer of the title page;
%   see \autoref{sec:usage:licensing} for additional details. %
%   \else%
%   Si vous souhaitez utiliser la classe {\CJSclass} pour tout autre
%   usage qu'un article de {\LaRevue*}, l'option \code{nocjs}
%   désactive l'affichage des informations de publication propres au
%   journal.\footnote{%
%     L'option \code{nocjs} est utilisée pour le présent guide.} %
%   L'option vous permet également de préciser un contrat de licence
%   via une déclaration qui sera affichée dans le pied de page de la
%   page de titre; consultez la \autoref{sec:usage:licensing} pour de
%   plus amples informations. %
%   \fi
% \end{DescribeOption}
%
% \ifenglish%
% \subsection{Titling information}
% \else%
% \subsection{Informations de la page de titre}
% \fi
% \label{sec:usage:titling}
%
% \ifenglish%
% The class {\CJSclass} defines a number of commands and environments
% to provide information for the title page. See \autoref{tab:titling}
% for a summary; the detailed descriptions follow. %
% \else%
% La classe {\CJSclass} définit un ensemble de commandes et
% d'environnements pour fournir les éléments de la page de titre. Le
% \autoref{tab:titling} en présente un sommaire; les descriptions
% détaillées suivent. %
% \fi
%
% \begin{table}[t]
%   \centering
%   \ifenglish%
%   \caption{Summary of the commands and environments of the class
%   {\CJSclass} to provide title-page information. Names starting with
%   the symbol ``\code{\bs}'' are commands, and the others are
%   environments. Items marked with $^\star$ are required.}
%   \else%
%   \caption{Sommaire des commandes et environnements de la classe
%   {\CJSclass} servant à spécifier les informations de la
%   page de titre. Les noms qui débutent par le symbole «\code{\bs}»
%   sont des noms de commandes, les autres sont des noms
%   d'environnements. Les éléments marqués de $^\star$ sont
%   obligatoires.}
%   \fi
%   \label{tab:titling}
%   \renewcommand*\arraystretch{1.1}
%   \begin{tabular}{ll}
%     \toprule
%     \ifenglish Name\else Nom\fi & Usage \\
%     \midrule
%     \cmd{\title}$^\star$ &
%     \ifenglish
%     main title of the article (with an abbreviated version as an option) \\
%     \else
%     titre principal de l'article (avec une version abrégée en option) \\
%     \fi
%     \cmd{\author}$^\star$ &
%     \ifenglish
%     name of an author (and metadata as an option) \\
%     \else
%     nom d'un auteur (et métadonnées en option) \\
%     \fi
%     \cmd{\surname}$^\star$ &
%     \ifenglish
%     surname of an author (used inside \cmdprint{\author}) \\
%     \else
%     nom de famille d'un auteur (utilisée à l'intérieur de \cmdprint{\author}) \\
%     \fi
%     \cmd{\affil}$^\star$ &
%     \ifenglish
%     affiliation of an author \\
%     \else
%     affiliation d'un auteur \\
%     \fi
%     \cmd{\runningauthor} &
%     \ifenglish
%     author identification for the running heads \\
%     \else
%     identification courte des auteurs pour les entêtes \\
%     \fi
%     \code{englishabstract}$^\star$ &
%     \ifenglish
%     English abstract \\
%     \else
%     résumé en anglais \\
%     \fi
%     \code{frenchabstract}$^\star$ &
%     \ifenglish
%     French abstract \\
%     \else
%     résumé en français \\
%     \fi
%     \code{keywords} &
%     \ifenglish
%     list of keywords \\
%     \else
%     liste des mots-clés \\
%     \fi
%     \code{classification}$^\star$ &
%     \ifenglish
%     mathematics subject classification MSC2020 \\
%     \else
%     classification mathématique par matières MSC2020 \\
%     \fi
%     \bottomrule
%   \end{tabular}
% \end{table}
%
% \ifenglish%
% \subsubsection{Main title}
% \else%
% \subsubsection{Titre de l'article}
% \fi
% \label{sec:usage:titling:title}
%
% \begin{DescribeMacro}{\title}
%   \ifenglish%
%   The command \cmd{\title} defines the title of the article. An
%   optional argument specifies an abbreviated version of the title
%   that will be used for the running head. Therefore, the syntax
%   of the command is: %
%   \else%
%   La commande \cmd{\title} sert à spécifier le titre de l'article.
%   Un argument optionnel permet de spécifier une version abrégée
%   du titre qui sera utilisée dans les entêtes. La syntaxe de la
%   commande est donc: %
%   \fi
% \iffalse
%<*example>
% \fi
\def\OPT{\ifenglish Short title\else Titre court\fi}
\def\ARG{\ifenglish Full title\else Titre complet\fi}
\begin{lstlisting}
\title`\oarg{\OPT}\marg{\ARG}'
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \ifenglish%
% Write the title in sentence style, that is, with only an initial
% capital. In English, also capitalize the first word after a colon.
% Break a long title needing more than one line using \code{\bs\bs}
% or \cmdprint{\newline}. %
% \else%
% Entrez le titre en minuscules (sauf pour la majuscule initiale).
% En anglais, utilisez toutefois une majuscule initiale après un
% deux-points. Vous devez couper manuellement avec \code{\bs\bs} ou
% \cmdprint{\newline} un titre qui nécessite plus d'une ligne.
% \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsubsection{Authors and affiliations}
% \else%
% \subsubsection{Auteurs et affiliations}
% \fi
% \label{sec:usage:titling:authors}
%
% \ifenglish%
% You must provide the names of all the authors and their persistent
% digital identifiers %
% \else%
% Vous devez fournir les noms de tous les auteurs et leurs
% identifiants numériques persistants %
% \fi%
% \href{https://orcid.org}{ORCID iD}; %
% \ifenglish%
% the affiliation for each author; the email address of the
% corresponding author; and the list of authors for the running head.
% The class {\CJSclass} uses an information entry system inspired by
% the package %
% \else%
% les affiliations de chacun; l'adresse courriel de l'auteur
% correspondant; la liste des auteurs pour l'entête. La classe
% {\CJSclass} utilise une méthode de saisie de l'information inspirée
% du paquetage %
% \fi%
% \href{https://ctan.org/pkg/authblk}{\pkg{authblk}} %
% \ifenglish%
% consisting of a series of pairs of commands \cmd{\author} and
% \cmd{\affil}, one per author. %
% \else%
% qui consiste en des paires de commandes \cmd{\author} et
% \cmd{\affil}, une par auteur. %
% \fi
%
% \begin{DescribeMacro}{\author}
% \begin{DescribeMacro}{\surname}
%   \ifenglish%
%   The command \cmd{\author} is the main component. Its general
%   syntax is the following: %
%   \else%
%   La commande \cmd{\author} permet d'entrer plusieurs des
%   informations relatives à un auteur de l'article. Sa syntaxe
%   générale est la suivante: %
%   \fi
% \iffalse
%<*example>
% \fi
\def\FORENAME{\ifenglish Forename\else Prénom\fi}
\def\SURNAME{\ifenglish Surname\else Nom\fi}
\begin{lstlisting}
\author`\oarg{options}'{`\meta{\FORENAME}' \surname`\marg{\SURNAME}'}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish%
%   The \meta{Surname} must be entered using the command
%   \cmd{\surname}. Write the \meta{Forename} and \meta{Surname} in
%   lowercase (except for the initial capital and initials). If
%   needed, the \meta{Forename} may include one or more initials, each
%   followed by a period. %
%   \else%
%   Le \meta{Nom} doit obligatoirement être saisi dans la commande
%   \cmd{\surname}. Entrez le \meta{Prénom} et le \meta{Nom} en
%   minuscules (sauf pour les premières lettres et les initiales). Le
%   cas échéant, une ou plusieurs initiales, chacune suivie d'un
%   point, peuvent faire partie du \meta{Prénom}. %
%   \fi
%
%   \ifenglish%
%   The \meta{options} are used to supply an author's metadata using a
%   \meta{key} = \meta{value} interface. \autoref{tab:author} shows
%   the currently available keys and the expected value for each. The
%   \meta{key}--\meta{value} pairs are separated by commas. %
%   \else%
%   Les \meta{options} permettent de fournir des métadonnées sur
%   l'auteur par le biais d'une interface \meta{clé} = \meta{valeur}.
%   Le \autoref{tab:author} présente les clés actuellement définies et
%   la valeur attendue pour chacune. Les paires
%   \meta{clé}--\meta{valeur} sont séparées les unes des autres par
%   une virgule. %
%   \fi
%
%   \begin{table}
%     \centering
%     \ifenglish%
%     \caption{Keys and values defined for the options of the command
%     \cmdprint{\author}}
%     \else%
%     \caption{Clés et valeurs définies pour les options de la
%     commande \cmdprint{\author}}
%     \fi
%     \label{tab:author}
%     \begin{tabular}{lll}
%       \toprule
%       \ifenglish Key\else Clé\fi & \ifenglish Value\else Valeur\fi & Description \\
%       \midrule
%       \code{orcid} & \meta{id} &
%       \ifenglish%
%       ORCID iD of the author \\
%       \else%
%       ORCID iD de l'auteur \\
%       \fi%
%       \code{email} & \meta{\ifenglish email\else courriel\fi} &
%       \ifenglish%
%       email address of the author \\
%       \else%
%       adresse courriel de l'auteur \\
%       \fi%
%       \code{corresponding} & \code{true}/\code{false} &
%       \ifenglish%
%       corresponding author \\
%       \else%
%       auteur correspondant \\
%       \fi%
%       \bottomrule
%     \end{tabular}
%   \end{table}
%
%   \ifenglish%
%   The key \code{orcid} provides the ORCID iD of the author, that is,
%   a 16-digit alphanumeric code of the form \code{0000-0000-0000-0000}. %
%   \else%
%   La clé \code{orcid} fournit l'identifiant numérique ORCID (ou
%   ORCID iD) de l'auteur, soit un code alphanumérique à 16
%   composantes de la forme \code{0000-0000-0000-0000}. %
%   \fi
%
%   \ifenglish%
%   The key \code{email} provides the email address of the author.
%   Currently, only the email address of the corresponding author
%   appears in the manuscript. Nevertheless, we recommend providing
%   this address for all authors. %
%   \else%
%   La clé \code{email} fournit l'adresse courriel de l'auteur.
%   Actuellement, seule l'adresse courriel de l'auteur correspondant
%   apparait dans le manuscript. Nous recommandons néanmoins
%   d'indiquer cette adresse pour tous les auteurs. %
%   \fi
%
%   \ifenglish%
%   The key \code{corresponding} identifies the corresponding author.
%   The value of the key is implicitly \code{true} when it appears in
%   the options, and \code{false} when not present. In other words,
%   instead of specifying \code{corresponding=true} and
%   \code{corresponding=false} for every author, you may simply
%   indicate \code{corresponding} for the corresponding author. This
%   key has no effect if the \code{email} key is missing for the
%   author. %
%   \else%
%   La clé \code{corresponding} identifie l'auteur correspondant. La
%   valeur de la clé est implicitement \code{true} quand celle-ci
%   apparait dans les options, et \code{false} lorsqu'elle n'y
%   apparait pas. Autrement dit, il n'est pas nécessaire d'indiquer
%   \code{corresponding=true} ou \code{corresponding=false} pour
%   chacun des auteurs, mais bien seulement \code{corresponding} pour
%   l'auteur correspondant. Cette clé est sans effet si la clé
%   \code{email} n'est pas aussi utilisée pour l'auteur. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\affil}
%   \ifenglish%
%   Second component of the author entry system, the command
%   \cmd{\affil} declares the affiliation of the author mentioned in
%   the immediately preceding \cmd{\author} command. The general form
%   of an affiliation is: %
%   \else%
%   Seconde composante du système de saisie des auteurs, la commande
%   \cmd{\affil} permet d'entrer l'affiliation de l'auteur mentionné
%   dans la commande \cmd{\author} qui la précède. La forme générale
%   de l'affiliation est: %
%   \fi
% \iffalse
%<*example>
% \fi
\def\AFFIL{\ifenglish Department, University, City, Country\else%
  Département, Université, Ville, Pays\fi}
\begin{lstlisting}
\affil`\marg{\AFFIL}'
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\runningauthor}
%   \ifenglish%
%   The running head contains the surnames of the authors as
%   automatically collected by the command \cmd{\surname}. If the list
%   is too long, you may use the command \cmd{\runningauthor} to
%   provide a shorter version: the first author's surname followed by
%   \emph{et al.} (in English) or \emph{et collab.} (in French): %
%   \else%
%   L'identification des auteurs qui apparait dans les entêtes de
%   l'article est normalement construite automatiquement à partir des
%   informations colligées par la commande \cmd{\surname}. Si la liste
%   s'avère trop longue, vous pouvez utiliser la commande
%   \cmd{\runningauthors} pour fournir une version écourtée: le nom du
%   premier auteur suivi de la locution «et collab.» (en français) ou
%   «et al.» (en anglais): %
%   \fi
% \iffalse
%<*example>
% \fi
\def\SURNAME{\ifenglish Surname\else Nom\fi}
\def\ETAL{\ifenglish et al.\else et collab.\fi}
\def\ETCOLLAB{\ifenglish et collab.\else et al.\fi}
\begin{lstlisting}
\runningauthor{`\meta{\SURNAME} \ETAL'}
\runningauthor{`\meta{\SURNAME} \ETCOLLAB'}
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsubsection{Abstracts}
% \else%
% \subsubsection{Résumés}
% \fi
% \label{sec:usage:titling:abstract}
%
% \begin{DescribeEnv}{englishabstract}
% \begin{DescribeEnv}{frenchabstract}
%   \ifenglish%
%   Articles in {\TheCJS} have both English and French abstracts.
%   Use the environments \code{englishabstract} and
%   \code{frenchabstract} to enter the abstracts. Their position on
%   the title page is set automatically by the class. %
%   \else%
%   Les articles dans {\LaRevue} proposent des résumés en français et
%   en anglais. Les environnements \code{frenchabstract} et
%   \code{englishabstract} permettent de saisir ceux-ci. Leur
%   positionnement dans la page de titre est déterminé automatiquement
%   par la classe. %
%   \fi
% \end{DescribeEnv}
% \end{DescribeEnv}
%
% \ifenglish%
% The standard environment \code{abstract} has no effect in the
% class {\CJSclass}. %
% \else%
% L'environnement \code{abstract} des classes standards est sans effet
% dans la classe {\CJSclass}. %
% \fi
%
% \ifenglish%
% \subsubsection{Keywords}
% \else%
% \subsubsection{Mots-clés}
% \fi
% \label{sec:usage:titling:keywords}
%
% \begin{DescribeEnv}{keywords}
%   \ifenglish%
%   The environment \code{keywords} is used to provide the list of
%   keywords for the article. Its usage is similar to an
%   \code{itemize} or \code{enumerate} list: %
%   \else%
%   L'environnement \code{keywords} permet de saisir la liste des
%   mots-clés de l'article. Il s'utilise comme une liste
%   \code{itemize} ou \code{enumerate}: %
%   \fi
% \iffalse
%<*example>
% \fi
\def\KEYWORDC{\ifenglish Keyword\else Mot-clé\fi}
\def\KEYWORD{\ifenglish keyword\else mot-clé\fi}
\begin{lstlisting}
\begin{keywords}
\item `\normalfont\itshape{\KEYWORDC} 1'
\item `\normalfont\itshape{\KEYWORD} 2'
...
\end{keywords}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish%
%   As shown above, an initial capital is needed for the first keyword
%   only. Punctuation is added automatically. %
%   \else%
%   Tel qu'illustré ci-dessus, une majuscule initiale est nécessaire
%   pour le premier mot-clé seulement. La ponctuation est ajoutée
%   automatiquement. %
%   \fi
% \end{DescribeEnv}
%
% \ifenglish%
% \subsubsection{Mathematics subject classification}
% \else%
% \subsubsection{Classification mathématique par matières}
% \fi
% \label{sec:usage:titling:classification}
%
% \begin{DescribeEnv}{classification}
%   \ifenglish%
%   The environment \code{classification} is used to enter the
%   mathematics subject classification of the article. Its interface
%   is the following: %
%   \else%
%   L'environnement \code{classification} sert à entrer la
%   classification mathématique par matières de l'article. Son
%   interface est la suivante: %
%   \fi
% \iffalse
%<*example>
% \fi
\def\LEVEL{\ifenglish level\else niveau\fi}
\def\CODE{\ifenglish code\else rubrique\fi}
\begin{lstlisting}
\begin{classification}`\oarg{type}'
\item`\oarg{\LEVEL} \normalfont\itshape{\CODE} 1, {\CODE} 2, \dots'
\item`\oarg{\LEVEL} \normalfont\itshape{\CODE} 1, {\CODE} 2, \dots'
...
\end{classification}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish%
%   The default classification system used is %
%   \else%
%   Le système de classification employé par défaut est %
%   \fi%
%   \href{https://msc2020.org}{MSC2020}. %
%   \ifenglish%
%   Should you need to use a different system for your manuscript that
%   would be published elsewhere than in {\TheCJS*}, you may provide
%   its name in the optional argument \meta{type}. The required
%   entries \meta{level} identify the classification levels, for
%   example \emph{Primary} and \emph{Secondary}. Insert commas between
%   the classification codes of a level, but no other punctuation. %
%   \else%
%   Si vous souhaitez utiliser un système différent pour votre
%   manuscrit qui sera publié ailleurs que dans {\LaRevue*},
%   vous pouvez inscrire son nom dans l'argument optionnel
%   \meta{type}. Les éléments obligatoires \meta{niveau} identifient
%   les niveaux de classification, par exemple «Primaire» et
%   «Secondaire». Insérez des virgules entre les rubriques d'un même
%   niveau, mais aucune autre ponctuation. %
%   \fi
% \end{DescribeEnv}
%
% \ifenglish%
% \subsubsection{Creation of the title page}
% \else%
% \subsubsection{Création de la page de titre}
% \fi
% \label{sec:usage:titling:maketitle}
%
% \begin{DescribeMacro}{\maketitle}
%   \ifenglish%
%   The aforementioned titling information may be provided in the
%   preamble or at the very beginning of the document body. The
%   standard command \cmd{\maketitle} typesets the title page at the
%   place where it appears. Therefore, you should issue this command
%   after \cmdprint{\begin}\code{\{document\}}, but before any
%   content. %
%   \else%
%   Les informations qui précèdent peuvent être fournies dans le
%   préambule ou au début du corps du document. La commande standard
%   \cmd{\maketitle} crée la page de titre à l'endroit où elle
%   apparait. Par conséquent, vous devez insérer cette commande après
%   \cmdprint{\begin}\code{\{document\}}, mais avant tout contenu. %
%   \fi
% \end{DescribeMacro}
%
% \ifenglish%
% The class reserves a space at the bottom of the title page for the
% licence statement that will be added by the publisher (Wiley) after
% acceptance of the paper. For the options \code{review},
% \code{supplement} and \code{nocjs}, the space is replaced by a
% footer with the page number. %
% \else%
% La classe réserve un espace au bas de la page de titre pour la
% déclaration de licence qui sera ajoutée par la maison d'édition
% (Wiley) lorsque votre article sera accepté pour publication. Pour
% les options \code{review}, \code{supplement} et \code{nocjs},
% l'espace est remplacé par un pied de page contenant le numéro de
% page. %
% \fi
%
% \ifenglish%
% \subsubsection{ADNI data use agreement}
% \else%
% \subsubsection{Contrat d'utilisation des données de l'ADNI}
% \fi
% \label{sec:usage:titling:adni}
%
% \begin{DescribeMacro}{\ADNIacknowledgement}
%   \ifenglish%
%   The Alzheimer’s Disease Neuroimaging Initiative (ADNI) %
%   \else%
%   Le %
%   \fi
%   \href{https://adni.loni.usc.edu/wp-content/uploads/how_to_apply/ADNI_DSP_Policy.pdf}{\ifenglish Data Sharing and Publication Policy\else contrat d'utilisation des données\fi} %
%   \ifenglish%
%   requires authors using their data to acknowledge ADNI in the list of
%   authors and give a specific statement on the title page. The
%   command \cmd{\ADNIacknowledgement} adds these two requirements.
%   The command has no arguments; simply insert it after the
%   declarations of the authors. %
% \else%
%   de l'Alzheimer’s Disease Neuroimaging Initiative (ADNI) stipule que
%   les auteurs qui ont recours à leurs données doivent reconnaitre la
%   contribution de l'ADNI parmi les auteurs et inclure une déclaration
%   spécifique sur la page de titre de l'article. La commande
%   \cmd{\ADNIacknowledgement} ajoute ces deux exigences. La commande
%   n'a aucun argument; insérez simplement celle-ci après toutes les
%   autres définitions des auteurs. %
% \fi
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\ADMCacknowledgement}
%   \ifenglish%
%   Similarly, the command \cmd{\ADMCacknowledgement} acknowledges the
%   Alzheimer’s Disease Meta\-bo\-lomics Consortium (ADMC). %
% \else%
%   De manière analogue, la commande \cmd{\ADMCacknowledgement}
%   reconnait la contribution du
%   Alzheimer’s Disease Metabolomics Consortium (ADMC). %
% \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsection{Back matter information}
% \else%
% \subsection{Informations des parties annexes}
% \fi
% \label{sec:usage:backmatter}
%
% \ifenglish%
% Articles in {\TheCJS} end with elements forming the so-called back
% matter information: supplementary material available online, data
% sharing statement, acknowledgements, etc. The class {\CJSclass}
% provides specialized environments to enter this information. See
% \autoref{tab:titling} for a summary; the detailed descriptions
% follow. %
% \else%
% Un article de {\LaRevue} se termine par la présentation d'un
% ensemble d'informations dans des parties annexes: matériel
% additionnel disponible en ligne, conditions de partage des données,
% remerciements, etc. La classe {\CJSclass} définit des environnements
% pour entrer ce type d'information de manière uniforme. Le
% \autoref{tab:backmatter} en présente un sommaire; les descriptions
% détaillées suivent. %
% \fi
%
% \begin{table}[t]
%   \centering
%   \ifenglish%
%   \caption{Summary of the environments of {\CJSclass} to provide the
%   back matter information} %
%   \else%
%   \caption{Sommaire des environnements de la classe {\CJSclass}
%   servant à spécifier les informations des parties annexes} %
%   \fi
%   \label{tab:backmatter}
%   \begin{tabular}{ll}
%     \toprule
%     \ifenglish Name\else Nom\fi & Usage \\
%     \midrule
%     \code{supplement} &
%     \ifenglish%
%     supplementary material \\
%     \else%
%     matériel additionnel \\
%     \fi%
%     \code{sharing} &
%     \ifenglish%
%     data sharing conditions \\
%     \else%
%     conditions de partage des données \\
%     \fi%
%     \code{acknowledgements} &
%     \ifenglish%
%     acknowledgements \\
%     \else%
%     remerciements \\
%     \fi%
%     \code{funding} &
%     \ifenglish%
%     funding information \\
%     \else%
%     informations sur le financement de la recherche \\
%     \fi%
%     \bottomrule
%   \end{tabular}
% \end{table}
%
% \ifenglish%
% The environments described in this section are optional. %
% \else%
% L'utilisation des environnements de cette section est facultative. %
% \fi
%
% \tipbox{%
%   \ifenglish%
%   Although it is displayed at the end, we recommend that you enter
%   the back matter information with the titling information, in the
%   preamble or at the beginning of the main body of the document. %
%   \else%
%   Bien qu'elles ne seront affichées qu'en fin d'article, nous
%   recommandons d'entrer les informations des parties annexes avec
%   celles de la page de titre, dans le préambule ou au début du corps
%   du document. %
%   \fi}
%
% \begin{DescribeEnv}{supplement}
%   \ifenglish%
%   Use the environment \code{supplement} to provide, as free form
%   text, information on any supplementary material: figures,
%   tables, computer code, long mathematical proofs, etc. This
%   material must be cited in the main article. %
%   \else%
%   L'environnement \code{supplement} permet d'inscrire, sous forme de
%   texte libre, les informations sur tout matériel additionnel:
%   figures, tableaux, code informatique, longues démonstrations, etc.
%   Ce matériel doit être cité dans l'article. %
%   \fi
% \end{DescribeEnv}
%
% \changes{1.1}{2024-01-23}{Documentation: revise the description of
% the \texttt{sharing} environment now that the CJS adhered to the
% Expects Data Sharing editorial policy of Wiley.}
% \begin{DescribeEnv}{sharing}
%   \def\POLICYNAME{\ifenglish Expects Data Sharing\else \emph{Expects Data Sharing}\fi}
%   \ifenglish%
%   {\TheCJS} adheres to the %
%   \else%
%   {\LaRevue} respecte la politique éditoriale %
%   \fi%
%   \href{https://authorservices.wiley.com/author-resources/Journal-Authors/open-access/data-sharing-citation/data-sharing-policy.html}{\POLICYNAME} %
%   \ifenglish%
%   editorial policy of Wiley. Therefore, you must use the environment
%   \code{sharing} to make a statement about the availability or
%   absence of shared data. You may also use the environment to
%   describe how to access shared computer code. %
%   \else%
%   de Wiley. Par conséquent, vous devez utiliser l'environnement
%   \code{sharing} pour préciser les conditions de partage des données
%   de recherche, ou encore leur absence, le cas échéant. Vous pouvez
%   aussi utiliser l'environnement pour indiquer comment accéder à du
%   code informatique partagé. %
%   \fi
% \end{DescribeEnv}
%
% \begin{DescribeEnv}{acknowledgements}
% \begin{DescribeEnv}{acknowledgments}
%   \ifenglish%
%   Use the environment \code{acknowledgements} (or its alias
%   \code{acknowledgments}) to write your acknowledgements in free
%   form text. Avoid funding information here. %
%   \else%
%   L'environnement \code{acknowledgements} (ou
%   \code{acknowledgments}) permet d'inscrire vos remerciements sous
%   forme de texte libre. Évitez les informations de financement dans
%   cette rubrique. %
%   \fi%
%   \makeatletter\ifenglish%
%   The environment accepts an optional argument to replace its
%   default name (``\CJS@ackname@en'' in English;
%   ``\emph{\CJS@ackname@fr}'' in French) by a name of your
%   choosing. %
%   \else%
%   L'environnement accepte un argument optionnel qui permet de
%   remplacer l'identifiant par défaut («\CJS@ackname@fr» en français;
%   «\emph{\CJS@ackname@en}» en anglais) par un terme de votre
%   choix. %
%   \fi\makeatother
% \end{DescribeEnv}
% \end{DescribeEnv}
%
% \begin{DescribeEnv}{funding}
%   \ifenglish%
%   The environment \code{funding} lets you provide, in free form
%   text, all pertinent funding information. %
%   \else%
%   L'environnement \code{funding} permet d'inscrire, sous forme de
%   texte libre, les informations sur le financement de la
%   recherche. %
%   \fi%
%   \makeatletter\ifenglish%
%   The environment accepts an optional argument to replace its
%   default name (``\CJS@fundingname@en'' in English;
%   ``\emph{\CJS@fundingname@fr}'' in French) by a name of your
%   choosing. %
%   \else%
%   L'environnement accepte un argument optionnel qui permet de
%   remplacer l'identifiant par défaut («\CJS@fundingname@fr» en
%   français; «\emph{\CJS@fundingname@en}» en anglais) par un terme de
%   votre choix. %
%   \fi\makeatother
% \end{DescribeEnv}
%
% \begin{DescribeMacro}{\makebackmatter}
%   \ifenglish%
%   Similar to \cmd{\maketitle}, the command \cmd{\makebackmatter}
%   typesets all the back matter information at the place where it
%   appears. The information is listed in the following order, when
%   available: %
%   \else%
%   Comme \cmd{\maketitle}, la commande \cmd{\makebackmatter} affiche
%   les parties annexes à l'endroit où elle apparait. Les rubriques
%   sont présentées dans l'ordre suivant, le cas échéant: %
%   \fi%
%   \ifenglish supplementary material\else matériel additionnel\fi; %
%   \ifenglish data sharing\else partage des données\fi; %
%   \ifenglish acknowledgements\else remerciements\fi; %
%   \ifenglish funding information\else financement de la
%   recherche\fi; %
%   \ifenglish full ORCID iD of the authors\else versions longues des
%   identifiants ORCID des auteurs\fi.%
%   \ifenglish%
%   The latter is built automatically by the class from the
%   information provided in the commands \cmd{\author}. %
%   \else%
%   Cette dernière rubrique est construite automatiquement par la
%   classe à partir des informations fournies dans les commandes
%   \cmd{\author}. %
%   \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsection{Licensing}
% \else%
% \subsection{Octroi de licence}
% \fi
% \label{sec:usage:licensing}
%
% \begin{DescribeMacro}{\licence}
% \begin{DescribeMacro}{\license}
%   \ifenglish%
%   You may specify a licence for the manuscript with the command
%   \cmd{\licence} (or its alias \cmd{\license}). We recommend that
%   you include this command with the title and back matter
%   information. %
%   \else%
%   Vous avez la possibilité de préciser un contrat de licence avec la
%   commande \cmd{\licence} (ou \cmd{\license}). Nous vous
%   recommandons d'employer cette commande avec les déclarations des
%   informations de la page de titre et des parties annexes. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \ifenglish%
% For articles accepted for publication in {\TheCJS}, the licence
% statement is added by the publisher. Therefore, any licensing
% information provided with either the default, \code{review} or
% \code{supplement} options is ignored by the class. %
% \else%
% Pour les articles acceptés pour publication dans {\LaRevue}, la
% déclaration de licence est ajoutée par la maison d'édition. Par
% conséquent, tout octroi de licence sera ignoré par la classe avec
% les options par défaut, \code{review} et \code{supplement}. %
% \fi%
%
% \ifenglish%
% On the other hand, for the option \code{nocjs}, the licence
% statement is displayed in the footer of the title page,
% right-aligned on an odd page, left-aligned on an even page. Make
% sure to keep the statement short, as the space is limited to a
% single line. %
% \else%
% En revanche, pour l'option \code{nocjs}, la déclaration de licence
% est affichée dans le pied de page de la page de titre, aligné à
% droite pour les pages impaires, ou à gauche pour les pages paires.
% L'espace étant limité à une seule ligne, veillez à utiliser une
% déclaration courte. %
% \fi
%
% \begin{DescribeMacro}{\ccby}
% \begin{DescribeMacro}{\ccbysa}
% \begin{DescribeMacro}{\ccbync}
% \begin{DescribeMacro}{\ccbyncsa}
% \begin{DescribeMacro}{\ccbynd}
% \begin{DescribeMacro}{\ccbyncnd}
%   \ifenglish%
%   You may use the commands from \autoref{tab:licencing} to
%   identify %
%   \else%
%   Vous pouvez utiliser les commandes du \autoref{tab:licencing} pour
%   identifier un contrat %
%   \fi%
%   \href{https://creativecommons.org}{Creative Commons} %
%   \ifenglish%
%   licences in your licence statement. All commands have a starred
%   variant (name followed by ``\code{*}'') that appends a matching
%   copyright icon to the licence symbols. See %
%   \else%
%   dans la déclaration de licence. Toutes les commandes comportent une
%   variante étoilée (nom suivi de «\code{*}») pour ajouter un symbole
%   de copyright coordonné aux autres symboles. Consultez %
%   \fi%
%   \href{https://creativecommons.org/about/cclicenses}{%
%     \emph{About CC Licenses}} %
%   \ifenglish%
%   for more information on Creative Commons licences and how to apply
%   them. %
%   \else%
%   (en anglais) pour en savoir plus sur les licences Creative Commons
%   et leur utilisation. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{table}
%   \centering
%   \ifenglish%
%   \caption{Commands to typeset the icons for the main Creative
%   Commons licences. All commands feature a starred variant that
%   appends a matching copyright icon.} %
%   \else%
%   \caption{Commandes pour afficher les logos des principales
%   licences Creative Commons. Toutes les commandes comportent une
%   variante étoilée qui ajoute un symbole de copyright coordonné.} %
%   \fi
%   \label{tab:licencing}
%   \begin{tabular}{lll}
%     \toprule
%     \ifenglish Command\else Commande\fi &
%     \ifenglish Output \else Résultat\fi &
%     \ifenglish Starred variant \else Variante étoilée\fi \\
%     \midrule
%     \cmd{\ccby}     & \ccby     & \ccby* \\
%     \cmd{\ccbysa}   & \ccbysa   & \ccbysa* \\
%     \cmd{\ccbync}   & \ccbync   & \ccbync* \\
%     \cmd{\ccbyncsa} & \ccbyncsa & \ccbyncsa* \\
%     \cmd{\ccbynd}   & \ccbynd   & \ccbynd* \\
%     \cmd{\ccbyncnd} & \ccbyncnd & \ccbyncnd* \\
%     \bottomrule
%   \end{tabular}
% \end{table}
%
% \ifenglish%
% For example, the licence statement that appears on the title page of
% this document was created with the following command:
% \else%
% À titre d'exemple, la déclaration de licence qui figure au pied de
% la page de titre du présent document a été composée avec la commande
% suivante: %
% \fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\licence{{\ccbysa*} `\year', `\SSCen' {\textbar}
  `\SSCfr'}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%
% \ifenglish%
% \subsection{Mathematics}
% \else%
% \subsection{Mathématiques}
% \fi
% \label{sec:usage:mathematics}
% \changes{1.1}{2024-01-23}{Documentation: specify that the class is
% not compatible with the package \textbf{amssymb}.}
%
% \ifenglish%
% The class automatically loads the packages %
% \else%
% La classe charge d'office les paquetages %
% \fi%
% \href{https://ctan.org/pkg/amsmath}{\pkg{amsmath}}, %
% \href{https://ctan.org/pkg/amsthm}{\pkg{amsthm}} %
% \ifenglish%
% and, when the document is compiled with {\LuaLaTeX}, %
% \else%
% et, lorsque le document est compilé avec {\LuaLaTeX}, %
% \fi%
% \href{https://ctan.org/pkg/unicode-math}{\pkg{unicode-math}}. %
% \ifenglish%
% Note that it is not compatible with the package \pkg{amssymb}. The
% class also defines a number of commands and environments to
% standardize the typesetting of mathematical content in {\TheCJS}. %
% \else%
% En revanche, elle n'est pas compatible avec le paquetage
% \pkg{amssymb}. La classe définit également des commandes et des
% environnements pour assurer une mise en forme standardisée des
% mathématiques dans {\LaRevue}. %
% \fi
%
% \ifenglish%
% \autoref{tab:math} provides a summary of the additional commands
% defined by the class. %
% \else%
% Le \autoref{tab:math} présente un sommaire des commandes
% additionnelles définies par la classe. %
% \fi
%
% \begin{table}
%   \ifenglish%
%   \caption{Additional commands for mathematical symbols and
%   operators defined by the class {\CJSclass}}
%   \else%
%   \caption{Commandes additionnelles pour les symboles et opérateurs
%   mathématiques définies par la classe {\CJSclass}}
%   \fi
%   \label{tab:math}
%   \centering
%   \begin{tabular}{llll}
%       \toprule
%       \ifenglish Command\else Commande\fi & Description &
%       \ifenglish Example\else Exemple\fi &
%       \ifenglish Output\else Résultat\fi \\
%       \midrule
%       \cmd{\Pr} &
%       \ifenglish probability \else probabilité \fi &
%       \cmdprint{\Pr}\code{[X = x]} & $\Pr[X = x]$ \\
%       \cmd{\E} &
%       \ifenglish expected value \else espérance \fi &
%       \cmdprint{\E}\code{[X]} & $\E[X]$ \\
%       \cmd{\Var} &
%       variance &
%       \cmdprint{\Var}\code{[X]} & $\Var[X]$ \\
%       \cmd{\Cov} &
%       covariance &
%       \cmdprint{\Cov}\code{(X, Y)} & $\Cov(X, Y)$ \\
%       \cmd{\corr} &
%       \ifenglish correlation \else corrélation \fi &
%       \cmdprint{\corr}\code{(X, Y)} & $\corr(X, Y)$ \\
%       \cmd{\prdist} &
%       \ifenglish probability distribution \else loi de probabilité \fi &
%       \cmdprint{\prdist}\code{\{N\}} & $\prdist{N}$ \\
%       \addlinespace
%       \cmd{\mat} &
%       \ifenglish matrix or vector \else matrice ou vecteur \fi &
%       \cmdprint{\mat}\code{\{A\}} & $\mat{A}$ \\
%       \cmd{\matit} &
%       \ifenglish matrix or vector (italic) \else matrice ou vecteur (italique) \fi &
%       \cmdprint{\matit}\code{\{x\}} & $\matit{x}$ \\
%       \cmd{\trsp} &
%       \ifenglish transposition \else transposée \fi &
%       \cmdprint{\mat}\code{\{A\}}\cmdprint{\trsp} & $\mat{A}\trsp$ \\
%       \cmd{\tr} &
%       trace &
%       \cmdprint{\tr}\code{(}\cmdprint{\mat}\code{\{A\})} & $\tr(\mat{A})$ \\
%       \cmd{\diag} &
%       \ifenglish diagonal \else diagonale \fi &
%       \cmdprint{\diag}\code{(}\cmdprint{\mat}\code{\{A\})} & $\diag(\mat{A})$ \\
%       \addlinespace
%       \cmd{\Nset} &
%       \ifenglish natural numbers \else nombres naturels \fi &
%       \cmdprint{\Nset} & $\Nset$ \\
%       \cmd{\Zset} &
%       \ifenglish integers \else nombres entiers \fi &
%       \cmdprint{\Zset} & $\Zset$ \\
%       \cmd{\Qset} &
%       \ifenglish rational numbers \else nombres rationnels \fi &
%       \cmdprint{\Qset} & $\Qset$ \\
%       \cmd{\Rset} &
%       \ifenglish real numbers \else nombres réels \fi &
%       \cmdprint{\Rset} & $\Rset$ \\
%       \cmd{\Cset} &
%       \ifenglish complex numbers \else nombres complexes \fi &
%       \cmdprint{\Cset} & $\Cset$ \\
%       \bottomrule
%     \end{tabular}
% \end{table}
%
% \begin{DescribeMacro}{\Pr}
% \begin{DescribeMacro}{\E}
% \begin{DescribeMacro}{\Var}
% \begin{DescribeMacro}{\Cov}
% \begin{DescribeMacro}{\corr}
%   \ifenglish%
%   {\LaTeX} provides a large number of commands to typeset the most
%   common (and many not so common) mathematical operators. In
%   addition, use the commands \cmd{\Pr}, \cmd{\E}, \cmd{\Var},
%   \cmd{\Cov} and \cmd{\corr} to uniformly typeset the operators for
%   probability\footnote{%
%     The class redefines the standard command \cmdprint{\Pr}.}, %
%   expected value, variance, covariance, and correlation. These
%   commands have no arguments, so it is your responsibility to
%   provide delimiters around the operands. %
%   \else%
%   {\LaTeX} définit plusieurs commandes pour les opérateurs
%   mathématiques usuels. Utilisez les commandes \cmd{\Pr}, \cmd{\E},
%   \cmd{\Var}, \cmd{\Cov} et \cmd{\corr} pour entrer de manière
%   uniforme les opérateurs de probabilité\footnote{%
%     La classe redéfinit la commande standard \cmdprint{\Pr}.}, %
%   d'espérance, de variance, de covariance et de corrélation. Ces
%   commandes ne prennent aucun argument. Il vous revient donc
%   d'employer les délimiteurs appropriés autour des opérandes. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\prdist}
%   \ifenglish%
%   The command \cmd{\prdist} typesets the symbol for a probability
%   distribution. For example: %
%   \else%
%   La commande \cmd{\prdist} permet de composer le symbole d'une
%   distribution de probabilité. Par exemple: %
%   \fi
%   \begin{tabbing}
%     \hspace*{2.5em}\=\cmd{\prdist}\code{\{G\}(\cmdprint{\alpha}, \cmdprint{\beta})}%
%     \quad\=$\rightarrow$ \quad\=$\prdist{N}(\mu, \sigma^2)$ \quad\=\kill
%     \>\cmd{\prdist}\code{\{N\}(\cmdprint{\mu}, \cmdprint{\sigma}\string^2)} %
%     \>$\rightarrow$ %
%     \>$\prdist{N}(\mu, \sigma^2)$ %
%     \>(\ifenglish Normal\else normale\fi) \\
%     \>\cmd{\prdist}\code{\{B\}(n, p)} %
%     \>$\rightarrow$ %
%     \>$\prdist{B}(n, p)$ %
%     \>(\ifenglish Binomial\else binomiale\fi) \\
%     \>\cmd{\prdist}\code{\{P\}(\cmdprint{\lambda})} %
%     \>$\rightarrow$ %
%     \>$\prdist{P}(\lambda)$ %
%     \>(Poisson) \\
%     \>\cmd{\prdist}\code{\{E\}(\cmdprint{\lambda})} %
%     \>$\rightarrow$ %
%     \>$\prdist{E}(\lambda)$ %
%     \>(\ifenglish Exponential\else exponentielle\fi) \\
%     \>\cmd{\prdist}\code{\{G\}(\cmdprint{\alpha}, \cmdprint{\beta})} %
%     \>$\rightarrow$ %
%     \>$\prdist{G}(\alpha, \beta)$ %
%     \>(\ifenglish Gamma\else gamma\fi)
%   \end{tabbing}
% \end{DescribeMacro}
%
% \changes{1.2}{2024-11-05}{Modify the statement about the effect of
% \cs{mat} on greek letters: they are not always in italic, it is
% rather that their shape is not modified.}
% \begin{DescribeMacro}{\mat}
% \begin{DescribeMacro}{\matit}
%   \ifenglish%
%   Bold in mathematics is a tricky issue. The commands \cmd{\mat} and
%   \cmd{\matit} generate bold symbols reliably across {\TeX}
%   engines. The first typesets a variable in roman bold, a style
%   often used for matrices and vectors (hence the name of the
%   command).  With {\LuaLaTeX}, \cmdprint{\mat} also works with Greek
%   letters, but their shape is not modified: $\mat{\mu}$,
%   $\mat{\Gamma}$. The command \cmd{\matit} explicitly typesets a
%   variable in bold italic.
%   \else%
%   La composition en gras en mathématiques est une opération
%   délicate. Les commandes \cmd{\mat} et \cmd{\matit} composent
%   automatiquement des symboles en gras quelque soit le moteur
%   {\TeX}. La première compose une variable en romain gras, ce qui
%   est souvent utilisé pour les matrices et les vecteurs (d'où le nom
%   de la commande). Avec {\LuaLaTeX}, \cmdprint{\mat} fonctionne aussi
%   avec les lettres grecques, sans toutefois modifier leur forme:
%   $\mat{\mu}$, $\mat{\Gamma}$. La commande \cmd{\matit} produit
%   plutôt une variable en gras italique. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\trsp}
%   \ifenglish%
%   To indicate matrix transposition, use only the command
%   \cmd{\trsp}. %
%   \else%
%   Pour indiquer la transposée d'une matrice, utilisez uniquement la
%   commande \cmd{\trsp}. %
%   \fi
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\tr}
% \begin{DescribeMacro}{\diag}
%   \ifenglish%
%   The commands \cmd{\tr} and \cmd{\diag} define two other common
%   linear algebra operators, the trace and the diagonal. %
%   \else%
%   Les commandes \cmd{\tr} et \cmd{\diag} définissent deux autres
%   opérateurs courants en algèbre linéaire, la trace et la
%   diagonale. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\Nset}
% \begin{DescribeMacro}{\Zset}
% \begin{DescribeMacro}{\Qset}
% \begin{DescribeMacro}{\Rset}
% \begin{DescribeMacro}{\Cset}
%   \ifenglish%
%   To ensure a uniform representation of number sets, use the class
%   commands %
%   \else%
%   Pour assurer représentation uniforme des ensembles de nombres,
%   utilisez les commandes de la classe %
%   \fi%
%   \cmd{\Nset}, %
%   \cmd{\Zset}, %
%   \cmd{\Qset}, %
%   \cmd{\Rset}, %
%   \ifenglish and \else et \fi %
%   \cmd{\Cset} %
%   \ifenglish%
%   to typeset the sets of natural numbers, integers, rational
%   numbers, real numbers and complex numbers, respectively. %
%   \else%
%   pour composer les symboles des ensembles des nombres naturels,
%   entiers, rationnels, réels et complexes, dans l'ordre. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \ifenglish%
% You may define new mathematical operators in the preamble of your
% document. To do so, use the command \cmd{\DeclareMathOperator} of
% \pkg{amsmath}; see Section~5 of the package documentation for more
% details. %
% \else%
% Vous pouvez définir de nouveaux opérateurs dans le préambule de
% votre document. Utilisez pour ce faire la commande
% \cmd{\DeclareMathOperator} de \pkg{amsmath}; consultez la section~5
% de la documentation du paquetage pour de plus amples informations. %
% \fi
%
% \ifenglish%
% \autoref{tab:theorem} lists the theorem-like environments defined by
% the class. The environment \code{proof} defined by \pkg{amsthm} is
% also available. All these environments accept an optional argument
% to provide additional information in the heading, such as the name of
% the theorem or its author. Here is a brief overview of the style of
% the environments: %
% \else%
% Le \autoref{tab:theorem} établit la liste des environnements de type
% théorème définis par la classe. À ceux-ci s'ajoute l'environnement
% \code{proof} déjà défini par \pkg{amsthm}. Ces environnements
% acceptent tous un argument optionnel pour de l'information à inclure
% entre parenthèses dans l'intitulé, tel que le nom du théorème ou
% celui de son auteur. Voici un bref aperçu du style de ces
% environnements: %
% \fi
%
% \begin{center}
%   \def\TEXT{\ifenglish Text\else Texte\fi}
%   \hfill
%   \begin{minipage}{0.45\linewidth}
%     \begin{theorem}
%       \label{thm} \TEXT.
%     \end{theorem}
%     \begin{lemma}[\ifenglish Famous lemma\else Lemme célèbre\fi]
%       \TEXT.
%     \end{lemma}
%     \begin{proposition}
%       \TEXT.
%     \end{proposition}
%     \begin{corollary}
%       \TEXT.
%     \end{corollary}
%   \end{minipage}
%   \hfill
%   \begin{minipage}{0.45\linewidth}
%   \begin{definition}
%       \TEXT.
%     \end{definition}
%     \begin{algorithm}
%       \TEXT.
%     \end{algorithm}
%     \begin{remark}
%       \TEXT.
%     \end{remark}
%     \begin{proof}
%       \TEXT.
%     \end{proof}
%   \end{minipage}
%   \hspace*{\fill}
% \end{center}
%
% \begin{table}
%   \ifenglish%
%   \caption{Theorem-like environments defined by the class
%   {\CJSclass}. The last column refers to the styles defined by
%   \pkg{amsthm}.} %
%   \else%
%   \caption{Environnements de type théorème définis dans la classe
%   {\CJSclass}. La dernière colonne fait référence aux
%   styles de théorèmes définis par \pkg{amsthm}.} %
%   \fi
%   \label{tab:theorem}
%   \centering
%   \begin{tabular}{>{\ttfamily}lll>{\texttt}l}
%     \toprule
%     {\normalfont \ifenglish Environment\else Environnement\fi} &
%     \ifenglish English title\else Titre anglais\fi &
%     \ifenglish French title\else Titre français\fi & Style \\
%       \midrule
%     theorem     & Theorem     & Théorème      & \code{plain} \\
%     lemma       & Lemma       & Lemme         & \code{plain} \\
%     proposition & Proposition & Proposition   & \code{plain} \\
%     corollary   & Corollary   & Corollaire    & \code{plain} \\
%     definition  & Definition  & Définition    & \code{definition} \\
%     algorithm   & Algorithm   & Algorithme    & \code{definition} \\
%     remark      & Remark      & Remarque      & \code{remark} \\
%     \bottomrule
%   \end{tabular}
% \end{table}
%
% \ifenglish%
% If you need to define additional theorem-like environments, use the
% features of \pkg{amsthm}, in particular the commands
% \cmd{\theoremstyle} and \cmd{\newtheorem}. %
% \else%
% Si vous devez définir un nouveau type de théorème, utilisez les
% fonctionnalités de \pkg{amsthm}, notamment les commandes
% \cmd{\theoremstyle} et \cmd{\newtheorem}. %
% \fi
%
%
% \ifenglish%
% \subsection{Computer code and software}
% \else%
% \subsection{Code informatique et logiciels}
% \fi
% \label{sec:usage:software}
%
% \ifenglish%
% The class does not offer any special features to typeset listings of
% computer code. If you need to display code, we recommend that you
% take advantage of specialized packages such as %
% \else%
% La classe ne propose aucune fonctionnalité particulière pour la
% présentation du code infor\-ma\-tique. Nous vous recommandons
% d'avoir recours à des paquetages spécialisés comme %
% \fi
% \href{https://ctan.org/pkg/fancyvrb}{\pkg{fancyvrb}} %
% \ifenglish or \else ou \fi%
% \href{https://ctan.org/pkg/listings}{\pkg{listings}}. %
% \ifenglish%
% If you use \proglang{R} for your statistical analysis, we suggest
% that you prepare the file using a literate programming system such
% as %
% \else%
% Si vous utilisez \proglang{R} pour effectuer votre analyse
% statistique, nous vous suggérons de rédiger l'article avec un
% système de programmation lettrée comme %
% \fi
% \href{https://en.wikipedia.org/wiki/Sweave}{Sweave} %
% \ifenglish or \else ou \fi%
% \href{https://en.wikipedia.org/wiki/Knitr}{knitr}.
%
% \ifenglish%
% That said, the class defines a few commands to ease and standardize
% the display of software names and code chunks. %
% \else%
% Cela dit, la classe fournit quelques commandes pour faciliter et
% uniformiser la présentation des noms de logiciels et d'extraits de
% code. %
% \fi
%
% \begin{DescribeMacro}{\proglang}
%   \ifenglish%
%   The command \cmd{\proglang} typesets the names of programming
%   languages and software. The class also provides shortcuts for the
%   most common cases; see \autoref{tab:proglang}. %
%   \else%
%   La commande \cmd{\proglang} sert à composer le nom des langages de
%   programmation et des logiciels. La classe compte aussi des
%   raccourcis pour les cas les plus usuels; la liste apparait au
%   \autoref{tab:proglang}. %
%   \fi
% \end{DescribeMacro}
%
% \begin{table}
%   \ifenglish%
%   \caption{List of shortcuts for the names of programming languages
%   and software.}
%   \else%
%   \caption{Liste des raccourcis pour les noms de langages de
%   programmation et de logiciels}
%   \fi
%   \label{tab:proglang}
%   \centering
%   \begin{tabular}{ll}
%     \toprule
%     \ifenglish Software\else Logiciel\fi & \ifenglish Command\else Commande\fi \\
%     \midrule
%     \Rlang     & \cmd{\Rlang} \\
%     \SASlang   & \cmd{\SASlang} \\
%     \SPSSlang  & \cmd{\SPSSlang} \\
%     \Statalang & \cmd{\Statalang} \\
%     \Pylang    & \cmd{\Pylang} \\
%     \Julialang & \cmd{\Julialang} \\
%     \Clang     & \cmd{\Clang} \\
%     \Cpplang   & \cmd{\Cpplang} \\
%     \bottomrule
%   \end{tabular}
% \end{table}
%
% \begin{DescribeMacro}{\pkg}
%   \ifenglish%
%   The command \cmd{\pkg} typesets the names of software packages,
%   extensions or modules. %
%   \else%
%   Utilisez la commande \cmd{\pkg} pour composer le nom des
%   paquetages, extensions ou modules logiciels. %
%   \fi
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\code}
%   \ifenglish%
%   The command \cmd{\code} typesets code chunks within the
%   text. The command escapes the {\LaTeX} special characters
%   \code{_}, \code{~} and \code{$}. Therefore, you may write, for
%   example, \cmdprint{\code}\code{\{var_name\}} to get
%   \code{var_name}. %
%   \else%
%   La commande \cmd{\code} sert à composer des extraits de code
%   au fil du texte. Les caractères spéciaux «\code{_}», «\code{~}» et
%   «\code{$}» de {\LaTeX} y sont désactivés. Vous pouvez donc
%   directement entrer, par exemple,
%   \cmdprint{\code}\code{\{var_name\}} pour obtenir
%   \code{var_name}. %
%   \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsection{Appendices}
% \else%
% \subsection{Annexes}
% \fi
% \label{sec:usage:appendices}
%
% \begin{DescribeMacro}{\appendix}
%   \ifenglish%
%   If needed, use the standard command \cmd{\appendix} to indicate
%   the start of the appendices. The command changes the numbering of
%   the following sections to an alphabetic form. %
%   \else%
%   Si votre article le nécessite, utilisez la commande standard
%   \cmd{\appendix} pour indiquer le début des annexes. La commande
%   change la numérotation des sections ultérieures pour un mode
%   alphabétique. %
%   \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsection{Citations and list of references}
% \else%
% \subsection{Citations et liste des références}
% \fi
% \label{sec:usage:references}
% \changes{0.9}{2023-10-14}{Document usage of the bibliographic
% styles.}
%
% \ifenglish%
% Use {\BibTeX} for citations and to generate the list of references.
% The class relies on the package %
% \else%
% Utilisez {\BibTeX} pour les citations et la liste des références. La
% classe confie la mise en forme des citations au paquetage %
% \fi%
% \href{https://ctan.org/pkg/natbib}{\pkg{natbib}}\ifenglish{ }\else. \fi %
% \ifenglish%
% to manage and typeset citations. %
% \fi
%
% \ifenglish%
% The class uses its own bibliography styles to typeset the list of
% references: {\CJSbsten} for articles in English, and {\CJSbstfr} for
% articles in French. These styles support all the standard {\BibTeX}
% entry types %
% \else%
% La classe a recours à ses propres styles de bibliographie pour
% composer la liste des références: {\CJSbstfr} pour les articles en
% français et {\CJSbsten} pour les articles en anglais. Ces deux
% styles prennent en charge tous les types d'entrées standards de
% {\BibTeX} %
% \fi%
% (\code{article}, \code{book}, \code{proceedings}, etc.) %
% \ifenglish%
% and all the standard fields %
% \else%
% et tous les champs standards %
% \fi%
% (\code{author}, \code{title}, \code{journal}, etc.). %
% \ifenglish%
% Furthermore, the styles introduce support for the following
% fields: %
% \else%
% De plus, ils ajoutent les champs suivants: %
% \fi%
% \begin{description}[font=\mdseries\ttfamily,style=nextline,leftmargin=3em]
% \item[doi] %
%   \ifenglish%
%   The Digital Object Identifier (DOI) of a resource. Enter the value
%   only as \meta{prefix}\code{/}\meta{suffix} (for example:
%   \code{10.1000/182}). The styles automatically create a hyperlink
%   to the resource. %
%   \else%
%   L'identificateur d'objet numérique (DOI) d'une ressource. Entrez
%   uniquement la valeur sous la forme
%   \meta{préfixe}\code{/}\meta{suffixe} (par exemple:
%   \code{10.1000/182}). Les styles créent automatiquement un
%   hyperlien vers la ressource. %
%   \fi%
% \item[isbn] %
%   \ifenglish%
%   The International Standard Book Number (ISBN) of a book. When
%   present, the ISBN is displayed in the list of references. %
%   \else%
%   Le numéro international normalisé du livre (ISBN) d'un ouvrage.
%   Lorsque disponible, le numéro est affiché dans la liste des
%   références. %
%   \fi%
% \item[issn] %
%   \ifenglish%
%   The International Standard Serial Number (ISSN) of a serial
%   publication, such as a magazine. Although allowed in the
%   bibliographic database, the number is not displayed in the list of
%   references. %
%   \else%
%   Le numéro international normalisé des publications en série (ISSN)
%   d'une publication en série, tel qu'un magazine. Bien que permis
%   dans la base de données bibliographiques, ce numéro n'est pas
%   affiché dans la liste des références.%
%   \fi%
% \item[language] %
%   \ifenglish%
%   The language of the reference. Including this information in an
%   entry allows to hyphenate the words in the title according to the
%   rules of its language. %
%   \else%
%   La langue de la référence. Inclure cette information dans une
%   entrée assure que la coupure des mots du titre sera effectuée
%   selon les règles de la langue de celui-ci. \fi%
% \item[url] %
%   \ifenglish%
%   A URL for the reference. If both a URL and a DOI are present in
%   the database, the latter takes precedence. %
%   \else%
%   L'adresse URL de la référence. Si une adresse URL et un
%   identificateur DOI sont tous deux présents dans la base de
%   données, ce dernier aura priorité. %
%   \fi%
% \end{description}
%
% \begin{DescribeMacro}{\bibliography}
%   \ifenglish%
%   The command \cmd{\bibliography} inserts the list of references at
%   the point where it appears. Its arguments are the root names,
%   separated by commas, of the bibliographic databases. Use this
%   command to generate your reference list. %
%   \else%
%   La commande \cmd{\bibliography} insère la liste des références à
%   l'endroit où celle-ci apparait. Elle prend en argument les noms de
%   base des fichiers de données bibliographiques, séparés par des
%   virgules. Utilisez cette commande pour produire la liste des
%   références de votre article. %
%   \fi
% \end{DescribeMacro}
%
% \ifenglish%
% \subsection{Writing in French}
% \else%
% \subsection{Rédaction en français}
% \fi
% \label{sec:usage:french}
%
% \changes{1.3}{2025-08-27}{Documentation (French version): fix
% the statement in \emph{Writing in French} about UTF-8 character
% encoding being recommended. It is rather mandatory.}
% \ifenglish%
% The class is also carefully configured to prepare manuscripts in
% French. If you are writing in this language, please read the
% corresponding \nolink{\autoref{sec:usage:french}} in the French
% version of the documentation for additional details. %
% \else%
% Un texte en français contiendra des lettres accentuées. Entrez
% celles-ci directement au clavier («\code{é}») sans passer par les
% commandes {\TeX} («\code{{\bs}'e}»), puis enregistrez le fichier
% dans le codage de caractères %
% \href{https://fr.wikipedia.org/wiki/UTF-8}{UTF-8}. %
% Il est ensuite fortement recommandé de compiler le document avec
% {\LuaLaTeX}.
%
% Lorsque le français est la langue principale, le module %
% \href{https://ctan.org/pkg/babel-french}{\pkg{babel-french}} %
% modifie plusieurs règles de présentation générale d'un document
% (listes, notes de bas de page, retrait des premiers paragraphes). La
% mise en page d'un article en français différera donc de celle d'un
% article en anglais.
%
% La classe {\CJSclass} comporte quelques éléments de
% configuration spéciaux pour le français:
% \begin{itemize}
% \item Une espace fine est utilisée comme séparateur des milliers
%   dans les nombres saisis avec la commande \cmdprint{\nombre} du
%   paquetage %
%   \href{https://ctan.org/pkg/numprint}{\pkg{numprint}} %
%   (qui est par ailleurs chargé par la classe avec l'option
%   \code{autolanguage}).
% \item Les guillemets français «~» peuvent être saisis directement
%   avec les touches corres\-pon\-dantes au clavier.
% \item Les intitulés des tableaux et des figures sont, dans l'ordre,
%   «Tableau» et «Figure», composés sans petites capitales.
% \end{itemize}
% \fi
%
% \ifenglish%
% \section{Hyperlinks}
% \else%
% \section{Hyperliens}
% \fi
% \label{sec:hyperlinks}
%
% \ifenglish%
% The class loads the package \pkg{hyperref} to insert internal and
% external hyperlinks into the PDF. You should use the command
% \cmd{\autoref} to create references to labeled text elements. The
% class defines the English and French description labels for all
% sectioning levels, for figures and tables, and for all the
% theorem-like environments introduced in
% \autoref{sec:usage:mathematics}. If you need to define a
% description label of a new environment \meta{env}, use the
% following command in the preamble of your document:%
% \else%
% La classe charge le paquetage \pkg{hyperref} pour insérer des
% hyperliens internes et externes dans le document PDF. Vous devez
% utiliser la commande  \cmd{\autoref} pour insérer des références à
% des éléments de texte étiquetés. La classe définit les descriptions
% pour les différents niveaux de sections, pour les figures et les
% tableaux, ainsi que pour tous les environnements de type théorème
% mentionnés à la \autoref{sec:usage:mathematics}. Si vous devez
% définir une description pour un nouvel environnement \meta{env},
% insérez la commande suivante dans le préambule de votre document: %
% \fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\addto\extras`\languagename'{\def\`\meta{env}'autorefname`\marg{description}'}
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \ifenglish%
% (If the main language of the article is French, replace
% \cmdprint{\extras}\code{\languagename} by
% \cmdprint{\extrasfrench}.\footnote{%
%   For further details, see Section~6 of the documentation of
%   \pkg{hyperref}.}) %
% \else%
% (Si la langue principale de l'article est l'anglais, remplacez
% \cmdprint{\extras}\code{\languagename} par
% \cmdprint{\extrasenglish}.\footnote{%
%   Consultez au besoin la section~6 de la documentation de
%   \pkg{hyperref}.}) %
% \fi
%
% \begin{DescribeMacro}{\texorpdfstring}
%   \changes{1.1}{2024-03-12}{Documentation: mention to also use
%   \cs{texorpdfstring} to fix \texttt{Token not allowed in a PDF
%   string} warnings.}
%   \changes{0.93}{2023-11-07}{Fix the name of a command from
%   \cs{textorpdfstring} to the correct \cs{texorpdfstring} in the
%   documentation.}%
%   \ifenglish%
%   The package \pkg{hyperref} builds the table of contents of the
%   PDF. If you use mathematical notation or symbols in a section
%   title, compilation of your manuscript may either result in
%   warnings of the form %
%   \else%
%   Le paquetage \pkg{hyperref} se charge de produire la table des
%   matières du fichier PDF. Si vous utilisez de la notation ou des
%   symboles mathématiques dans un titre de section, la compilation de
%   votre article pourrait soit résulter en des avertissements de la
%   forme %
%   \fi%
%   \begin{quote}
%     Token not allowed in a PDF string
%   \end{quote}
%   \ifenglish%
%   or halt with the error message %
%   \else%
%   ou échouer avec le message d'erreur %
%   \fi%
%   \begin{quote}
%     \code{Improper alphabetic constant}
%   \end{quote}
%   \ifenglish%
%   If you positively need the notation or symbol in the title, wrap
%   it in \cmd{\texorpdfstring}. This command takes two arguments: the
%   notation or symbol that should appear in the document, and the
%   replacement text for the table of contents of the PDF. For
%   example, you would replace %
%   \else%
%   Si vous ne pouvez vous passer de la notation ou du symbole dans le
%   titre, utilisez la commande \cmd{\texorpdfstring} dans celui-ci.
%   Cette commande requiert deux arguments: le texte qui doit
%   apparaitre dans le document et celui qui peut figurer dans la
%   table des matières du fichier PDF. Par exemple, vous devriez
%   remplacer %
%   \fi%
% \iffalse
%<*example>
% \fi
\def\TEXT{\ifenglish Algorithm for\else Algorithme pour\fi}
\begin{lstlisting}
\section{`\TEXT' $U_n$}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish%
%   by something along the lines of %
%   \else%
%   par quelque chose comme %
%   \fi%
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\section{`\TEXT' \texorpdfstring{$U_n$}{U[n]}}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish%
%   You would also replace %
%   \else
%   De même, vous devriez remplacer %
%   \fi%
% \iffalse
%<*example>
% \fi
\def\TEXT{Contribution \ifenglish of\else de\fi}
\begin{lstlisting}
\subsection{`\TEXT' $\beta$}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish by\else par\fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\subsection{`\TEXT' \texorpdfstring{$\beta$}{beta}}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish or even\else ou encore\fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\subsection{`\TEXT' \texorpdfstring{$\beta$}{`β'}}
\end{lstlisting}
% \iffalse
%</example>
% \fi
%   \ifenglish%
%   if you can enter Unicode characters on the keyboard. %
%   \else%
%   si vous êtes en mesure d'entrer des caractères Unicode au
%   clavier. %
%   \fi
% \end{DescribeMacro}
%
%
% \ifenglish%
% \section{Supplementary material}
% \else%
% \section{Matériel additionnel}
% \fi
% \label{sec:supplement}
%
% \ifenglish%
% The supplementary material is useful for additional results or
% information, such as tables and figures, computer code, long
% mathematical proofs, etc. This material must be cited in the
% main article, and it is peer reviewed. %
% \else%
% Le matériel additionnel sert à diffuser des résultats ou des
% renseignements supplémentaires, tels que des tableaux et des
% figures, du code informatique, des longues démonstrations, etc. Le
% matériel doit être cité dans l'article et il fait l'objet d'une
% évaluation par le comité de lecture.%
% \fi
%
% \begingroup
% \makeatletter
% \let\PREFIX\CJS@suppprefix
% \makeatother
% \ifenglish%
% You can use {\CJSclass} to prepare the supplementary material by
% specifying the class option \code{supplement}. The differences are
% as follows:
% \begin{itemize}
% \item a statement identifying the document as supplementary material
%   is added before the title;
% \item the abstracts, keywords and mathematics subject classification
% are hidden;
% \item the space for the licence statement is replaced by a footer
%   with the page number;
% \item the back matter is also hidden;
% \item the sections, equations, figures, etc., are numbered with a
%   prefix ``{\PREFIX}''.
% \end{itemize}
% The title and back matter material may still be present in
% the source code. In other words, you may create the supplementary
% material from the same template as your main article; just add
% \code{supplement} to the class options. %
% \else%
% En ajoutant l'option \code{supplement} lors de la déclaration de la
% classe, vous pouvez préparer le matériel additionnel avec
% {\CJSclass}. Les changements suivants sont apportés à la mise en page:
% \begin{itemize}
% \item un surtitre identifie le document comme du matériel
%   additionel;
% \item les résumés, la liste des mots-clés et la classification
%   mathématique par matières ne sont pas affichés sur la page de
%   titre;
% \item l'espace réservé à la déclaration de licence sur la page de
%   titre est remplacé par un pied de page contenant le numéro de
%   page;
% \item les parties annexes ne sont pas affichées;
% \item les numéros de sections, d'équations, de figures, etc., sont
%   précédés de «{\PREFIX}».
% \end{itemize}
% Les informations de la page de titre et des parties annexes peuvent
% toujours figurer dans le code source. Autrement dit, vous pouvez
% créer le matérial additionnel directement à partir du même
% préambule que votre article principal; il suffit d'ajouter
% \code{supplement} aux options de la classe. %
% \fi
% \endgroup
%
% \ifenglish%
% The option \code{supplement} is compatible with the option
% \code{review} to create a version of the supplementary material
% suitable for peer review. %
% \else%
% Vous pouvez combiner l'option \code{supplement} avec l'option
% \code{review} pour obtenir une version du matériel additionnel prête
% à être acheminée au comité de lecture. %
% \fi
%
% \vspace*{10pt}
% \hfill
% \ifenglish%
%   \emph{Have fun writing!}
% \else%
%   \emph{Bonne rédaction!}
% \fi%
%
% ^^A Start of the appendices
% \appendix
%
% \ifenglish%
% \section{Features for the editors}
% \else%
% \section{Fonctionnalités pour les éditeurs}
% \fi
% \label{sec:editors}
%
% \ifenglish%
% The options and commands presented in this appendix should mostly be
% of use to the editors of {\TheCJS} during the peer reviewing phase,
% and for the production of the final version before
% publication. %
% \else%
% Les options et commandes présentées dans cette annexe ne servent
% qu'aux éditeurs de {\LaRevue} durant la phase d'évaluation par le
% comité de lecture et lors de la préparation finale de l'article
% avant sa publication. %
% \fi
%
% \begin{DescribeOption}{review}
%   \ifenglish%
%   The option \code{review}, already mentioned in
%   \autoref{sec:usage:options}, typesets the version of the
%   manuscript for peer review. Line spacing is increased and the
%   lines are numbered. This option is compatible with
%   \code{supplement}. %
%   \else%
%   L'option \code{review}, déjà mentionnée à la
%   \autoref{sec:usage:options}, compose la version de l'article qui
%   sera acheminée au comité de lecture pour évaluation. L'interligne
%   est augmenté et les lignes sont numérotées. Cette option est
%   compatible avec \cmd{supplement}. %
%   \fi
% \end{DescribeOption}
%
% \tipbox{%
%   \ifenglish%
%   If the document was successfully compiled with the option
%   \code{review} and the option is later removed, you will need to
%   either delete the \code{.aux} file before compiling again or
%   compile the document at least twice. %
%   \else%
%   Si le document a été compilé avec l'option \code{review} et que
%   celle-ci est par la suite retirée, il faut soit supprimer le fichier
%   \code{.aux} avant de compiler de nouveau le document, soit compiler
%   à deux reprises.%
%   \fi}
%
% \begin{DescribeOption}{final}
%   \ifenglish%
%   The option \code{final}---which overrides
%   \code{review}---activates checks that the publication information
%   and article history are correctly defined. Furthermore, if
%   licensing information is provided using the commands of
%   \autoref{sec:usage:licensing}, the licence statement is displayed
%   at the bottom of the first page. The option has no other effect on
%   the rendering of the article. %
%   \else%
%   L'option \code{final}~--- qui a préséance sur \code{review}~---
%   active la vérification que les informations de publication et que
%   l'historique de révision sont fournis. De plus, si les
%   informations d'octroi de licence sont fournies à l'aide des
%   commandes de la \autoref{sec:usage:licensing}, la déclaration est
%   ajoutée au bas de la page de titre. L'option n'a aucun autre effet
%   sur la composition du document. %
%   \fi
% \end{DescribeOption}
%
% \begin{DescribeMacro}{\jvol}
% \begin{DescribeMacro}{\jissue}
% \begin{DescribeMacro}{\jyear}
% \begin{DescribeMacro}{\firstpage}
%   \ifenglish%
%   The commands \cmd{\jvol}, \cmd{\jissue} and \cmd{\jyear} provide
%   the publication information: volume, number and year of the issue
%   in which the article appears. The command \cmd{\firstpage}
%   specifies the number of the first page; the number of the last
%   page is determined automatically. This information appears on the
%   title page. %
%   \else%
%   Les commandes \cmd{\jvol}, \cmd{jissue} et \cmd{\jyear} servent à
%   indiquer les informations de publication: volume, numéro et année
%   de l'édition dans lequel l'article est publié. La commande
%   \cmd{\firstpage} permet de fixer le numéro de la première page de
%   l'article; le numéro de la dernière page est calculé
%   automatiquement. Ces informations apparaissent sur la page de
%   titre. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\received}
% \begin{DescribeMacro}{\accepted}
%   \ifenglish%
%   The commands \cmd{\received} and \cmd{\accepted} specify the
%   revision history that is displayed at the very end of the article.
%   Their argument is a date in the %
%   \else%
%   Les commandes \cmd{\received} et \cmd{\accepted} servent à
%   indiquer l'historique de révision qui est affiché à la toute fin
%   de l'article. Leur argument est une date dans le format %
%   \fi \href{https://fr.wikipedia.org/wiki/ISO_8601}{ISO~8601} %
%   \ifenglish%
%   format YYYY-MM-DD. For example: %
%   \else%
%   AAAA-MM-JJ. Par exemple: %
%   \fi
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
\received{`\isodate'}
\end{lstlisting}
% \iffalse
%</example>
% \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\specialack}
%   \ifenglish%
%   The command \cmd{\specialack} provides a generic interface to
%   give special acknowledgement on the title page, such as the one
%   required by ADNI (\autoref{sec:usage:titling:adni}). The
%   command takes two arguments: %
%   \else%
%   La commande \cmd{\specialack} permet de reconnaitre une
%   contribution spéciale sur la page de titre, telle que celle exigée
%   par l'ADNI (\autoref{sec:usage:titling:adni}). La commande requiert
%   deux arguments: %
%   \fi%
%   \begin{quote}
%     \cmdprint{\specialack}\marg{\ifenglish by-line\else signature\fi}\marg{\ifenglish statement\else déclaration\fi}
%   \end{quote}
%   \ifenglish%
%   The \meta{by-line} is inserted in the list of authors, whereas the
%   \meta{statement} is typeset at the bottom of the title page, with
%   the licensing information. Each argument may be empty, in which
%   case the corresponding information is not printed. For example,
%   the command \cmd{\ADNIacknowledgement} is effectively defined
%   as: %
%   \else%
%   La \meta{signature} est ajoutée à la liste des auteurs, alors que
%   la \meta{déclaration} est affichée au bas de la page de titre,
%   avec la déclaration de licence. Chaque argument peut être vide,
%   auquel cas l'information correspondante n'est pas affichée. À
%   titre d'exemple, la commande \cmd{\ADNIacknowledgement} est
%   définie ainsi: %
%   \fi%
%   \begin{quote}
%     \cmdprint{\specialack}\code{\{}\cmdprint{\CJS@adnibyline}\code{\}\{}\cmdprint{\CJS@adnistatement}\code{\}}
%   \end{quote}
%   \ifenglish%
%   (The internal commands \cmd{\CJS@adnibyline} and
%   \cmd{\CJS@adnistatement} typeset the official ADNI by-line and
%   statement. The analogous commands \cmd{\CJS@admcbyline} and
%   \cmd{\CJS@admcstatement} serve the same purpose for the
%   Alzheimer’s Disease Metabolomics Consortium.) %
%   \else%
%   (Les commandes internes \cmd{\CJS@adnibyline} et
%   \cmd{\CJS@adnistatement} contiennent le texte officiel de la
%   signature et de la déclaration de l'ADNI. Les commandes analogues
%   \cmd{\CJS@admcbyline} et \cmd{\CJS@admcstatement} pour
%   l'Alzheimer’s Disease Metabolomics Consortium sont également
%   définies dans la classe.) %
%   \fi%
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\specialackmark}
%   \ifenglish%
%   The command \cmd{\specialackmark} sets the footnote marker used by
%   \cmd{\specialack}. The default definition of the marker is: %
%   \else%
%   La commande \cmd{\specialackmark} permet de modifier l'appel de
%   note de bas de page utilisé par \cmd{\specialack}. La définition
%   par défaut de l'appel de note est: %
%   \fi%
%   \begin{quote}
%     \cmdprint{\textsuperscript}\code{\{}\cmdprint{\ensuremath}\code{\{*\}\}}
%   \end{quote}
% \end{DescribeMacro}
%
% \ifenglish%
% It may happen that the title material occupies too much space (or,
% rarely, too little). When this happens, the editors can tweak the
% typesetting of the title page using the following elements. %
% \else%
% Il peut arriver que les informations de la page de titre occupent trop
% d'espace (ou, plus rarement, trop peu). Les éditeurs peuvent modifier en
% partie l'apparence de la page de titre avec les éléments suivants. %
% \fi
%
% \begin{DescribeLength}{\titlingskip}
%   \ifenglish%
%   The distance between the elements of the title page (from the
%   abstracts to the corresponding author address) is
%   \cmd{\titlingskip}. This value may be changed as usual via
%   \cmd{\setlength}. The default value is \code{\the\titlingskip}. %
%   \else%
%   La distance entre les éléments de la page de titre (depuis les
%   résumés jusqu'à l'adresse de l'auteur correspondant) est
%   \cmd{\titlingskip}. Cette valeur peut être modifiée avec
%   \cmd{\setlength}. La valeur par défaut est
%   \code{\the\titlingskip}. %
%   \fi
% \end{DescribeLength}
%
% \begin{DescribeLength}{\fancybreaksep}
%   \ifenglish%
%   The decorative element between the title information and the body
%   of the article is surrounded by a vertical skip of length
%   \cmd{\fancybreaksep}.\footnote{%
%     The terminology \emph{fancy break} is taken from
%     \class{memoir}.} %
%   This value may be changed as usual via \cmd{\setlength}. The
%   default value is \code{\the\fancybreaksep}. %
%   \else%
%   La décoration entre les informations de la page de titre et le
%   corps de l'article est précédée et suivie d'une espace verticale
%   de longueur \cmd{\fancybreaksep}.\footnote{%
%     La terminologie «\emph{fancy break}» est empruntée à
%     \class{memoir}.} %
%   Cette valeur peut être modifiée avec \cmd{\setlength}. La valeur
%   par défaut est \code{\the\fancybreaksep}. %
%   \fi
% \end{DescribeLength}
%
% \begin{DescribeMacro}{\suppressfancybreak}
% \begin{DescribeMacro}{\showfancybreak}
%   \ifenglish%
%   The command \cmd{\suppressfancybreak} suppresses the decorative
%   element between the title information and the body of the article.
%   This will be useful if it appears at the bottom of the title page
%   or the top of the subsequent page. The command must appear
%   \emph{before} \cmd{\maketitle}. For the sake of symmetry, the
%   class also provides the command \cmd{\showfancybreak} to force the
%   display of the decorative element, although this is the default
%   behaviour. %
%   \else%
%   La commande \cmd{\suppressfancybreak} permet de supprimer la
%   décoration entre les informations de la page de titre et le corps
%   de l'article lorsque celle-ci apparait tout au bas de la page
%   de titre ou au haut de la page suivante. La commande doit
%   apparaitre \emph{avant} \cmd{\maketitle}. Par souci de symétrie,
%   la classe contient également la commande \cmd{\showfancybreak}
%   pour forcer l'affichage de la décoration, mais c'est là le
%   comportement par défaut de la classe. %
%   \fi
% \end{DescribeMacro}
% \end{DescribeMacro}
%
% \MaybeStop{%
% \ifenglish%
%   \PrintChanges
% \else%
%   \section*{Mise en œuvre et historique des versions}
%   Consultez la version anglaise de la documentation pour connaitre
%   les détails de mise en œuvre de la classe et l'historique des
%   versions. %
% \fi}
%
%
% ^^A >>>>> Start of the code of the class
% \section{Implementation}
% \label{sec:implementation}
%
% This appendix describes the {\TeX} and {\LaTeX} code of the class.
% It is likely to be of interest only to experts, bug hunters or casual
% readers curious to know how the class is implemented.
%
% \subsection{Class setup}
% \label{sec:implementation:setup}
%
% \subsubsection{Boolean values}
% \label{sec:implementation:setup:boolean}
%
% We start by defining the boolean values needed throughout the
% class. In the sequel, the booleans \cmd{\ifCJS@nocjs} and
% \cmd{\ifCJS@journalinfo} will be used as negation of one another.
%    \begin{macrocode}
%<*class>
\newif\ifCJS@review        \CJS@reviewfalse        % review version?
\newif\ifCJS@supplement    \CJS@supplementfalse    % supplementary material?
\newif\ifCJS@nocjs         \CJS@nocjsfalse         % not a CJS article?
\newif\ifCJS@final         \CJS@finalfalse         % final version?
\newif\ifCJS@licenceblock  \CJS@licenceblocktrue   % licence block on title page?
\newif\ifCJS@journalinfo   \CJS@journalinfotrue    % display journal info?
\newif\ifCJS@specialack    \CJS@specialackfalse    % special acknowledgement?
\newif\ifCJS@fancybreak    \CJS@fancybreaktrue     % display fancy break?
\newif\ifCJS@history       \CJS@historyfalse       % history present?
\newif\ifCJS@corrauth      \CJS@corrauthfalse      % corresponding author?
\newif\ifCJS@newauth       \CJS@newauthtrue        % internal; author blocks
%    \end{macrocode}
%
% \subsubsection{Options}
% \label{sec:implementation:setup:options}
%
% The class features options for authors and some others targeted more
% specifically to editors.
%
% \begin{option}{review}
%   The class option \code{review} composes a version of the article
%   (or the supplementary material) suitable for revision. The licence
%   block at the bottom of the title page is replaced by a standard
%   footer with the page folio.
%    \begin{macrocode}
\DeclareOption{review}{%
  \CJS@reviewtrue
  \CJS@licenceblockfalse}
%    \end{macrocode}
% \end{option}
%
% \begin{option}{supplement}
%   The class option \code{supplement} enables authors to use the
%   class to prepare the supplementary material to the article. The
%   licence block at the bottom of the title page is replaced by a
%   standard footer with the page folio.
%    \begin{macrocode}
\DeclareOption{supplement}{%
  \CJS@supplementtrue
  \CJS@licenceblockfalse}
%    \end{macrocode}
% \end{option}
%
% \begin{option}{nocjs}
%   The class option \code{nocjs} is a convenience feature for
%   authors who wish to use the class for something else than an
%   article in {\TheCJS}. It hides any journal-specific information
%   from the manuscript. It also replaces the licence block at the
%   bottom of the title page by a standard footer with the page folio.
%    \begin{macrocode}
\DeclareOption{nocjs}{%
  \CJS@nocjstrue
  \CJS@licenceblockfalse
  \CJS@journalinfofalse}
%    \end{macrocode}
% \end{option}
%
% \begin{option}{final}
%   The class option \code{final} activates sanity checks for the
%   preparation of the final copy of the article, and the display of
%   the licence statement on the title page (when available). The
%   option takes precedence over \code{review}.
%    \begin{macrocode}
\DeclareOption{final}{%
  \CJS@finaltrue
  \CJS@reviewfalse}
%    \end{macrocode}
% \end{option}
%
% \subsubsection{Underlying document class}
%
% The class {\CJSclass} is based on \class{memoir}. We
% force the options \code{letterpaper}, \code{10pt}, \code{article}
% and \code{twoside}.
%    \begin{macrocode}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{memoir}}
\ProcessOptions\relax
\LoadClass[letterpaper,10pt,article,twoside]{memoir}
%    \end{macrocode}
%
% \subsubsection{Required packages}
% \label{sec:implementation:setup:packages}
%
% The class tries to load as few packages as possible to avoid
% conflicts. Yet, some are required for standard features of a
% mathematics oriented journal, or else for internal processing.
% Useful packages like \pkg{iftex} and \pkg{etoolbox} are already
% loaded by \class{memoir}.
%
% We rely on \pkg{natbib} for author-year citations. This package must
% be loaded before \pkg{babel}. The option \code{sectionbib} ensures
% that the bibliography (or list of references) is typeset as a
% section, rather than as a chapter.
%    \begin{macrocode}
\RequirePackage[round,semicolon,authoryear,sectionbib]{natbib}
%    \end{macrocode}
%
% Articles in \emph{The Canadian Journal of Statistics} contain at
% least two languages, English and French, for the abstracts.
% Multilingual support is provided by \pkg{babel}. The languages are
% declared with \cmdprint{\documentclass} in the article source file.
% The package \pkg{numprint} prints numbers with a separator every
% three digits and convert numbers in scientific notation. The package
% alters its behaviour with the active language declared to
% \pkg{babel}. The option \code{np} activates the convenient shortcut
% \cmd{\np} for the command \cmd{\numprint}.
% \changes{1.2}{2024-11-06}{Load package numprint with the option
% \texttt{np} to activate the shortcut \cs{np} for \cs{numprint}.}
%    \begin{macrocode}
\RequirePackage{babel}
\RequirePackage[autolanguage,np]{numprint}
%    \end{macrocode}
%
% The required packages \pkg{bookmark} and \pkg{hyperref} must usually
% be loaded very last. To achieve this within the class, the packages
% are loaded with the \pkg{etoolbox} command
% \cmdprint{\AtEndPreamble}. Since they require \pkg{hyperref} to be
% loaded, it is also at this point that we define the English and
% French contextual labels for \cmd{\autoref} for all elements defined
% by the class.
% \changes{0.9}{2023-10-14}{Fix missing comment characters in
% \cs{extrasenglish} and \cs{extrasfrench}.}
%    \begin{macrocode}
\AtEndPreamble{%
  \RequirePackage{bookmark}     % loads hyperref
  \hypersetup{%
    colorlinks = true,
    urlcolor = {CJSurl},
    linkcolor = {CJSlink},
    citecolor = {CJScitation}}
  \bookmarksetup{%
    open = true,
    depth = 3,
    numbered = true}
  \addto\extrasenglish{%
    \def\sectionautorefname{Section}%
    \def\subsectionautorefname{Section}%
    \def\subsubsectionautorefname{Section}%
    \def\figureautorefname{Figure}%
    \def\tableautorefname{Table}%
    \def\theoremautorefname{Theorem}%
    \def\lemmaautorefname{Lemma}%
    \def\propositionautorefname{Proposition}%
    \def\corollaryautorefname{Corollary}%
    \def\definitionautorefname{Definition}%
    \def\algorithmautorefname{Algorithm}%
    \def\remarkautorefname{Remark}}
  \addto\extrasfrench{%
    \def\sectionautorefname{section}%
    \def\subsectionautorefname{section}%
    \def\subsubsectionautorefname{section}%
    \def\figureautorefname{figure}%
    \def\tableautorefname{tableau}%
    \def\theoremautorefname{théorème}%
    \def\lemmaautorefname{lemme}%
    \def\propositionautorefname{proposition}%
    \def\corollaryautorefname{corollaire}%
    \def\definitionautorefname{définition}%
    \def\algorithmautorefname{algorithme}%
    \def\remarkautorefname{remarque}}}
%    \end{macrocode}
%
% The next set of packages are mostly for internal purposes: %
% \pkg{keyval} provides the key-value interface used for
% \cmd{\author}; %
% \pkg{enumitem} and \pkg{environ} help to define new environments for
% the titling information; %
% \pkg{datetime2} is used to store and format dates from the article
% history; %
% \pkg{xcolor} provides {\LaTeX} extensions to colourize text; %
% \pkg{paracol} and \pkg{ragged2e} are used to typeset the
% abstracts in columns, ragged right and with proper hyphenation; %
% \pkg{url} is a fairly standard package to enter an URL or email
% address, used at least here for the corresponding author email; %
% \pkg{relsize} provides commands to set font sizes relatives to the
% current size, like \cmdprint{\smaller} or \cmdprint{\larger}; %
% \pkg{fontawesome5} provides a number of symbols, including the ORCID
% logo and the Creative Commons licence icons.
%    \begin{macrocode}
\RequirePackage{keyval}
\RequirePackage[shortlabels]{enumitem}
\RequirePackage{environ}
\RequirePackage[useregional,french,en-GB]{datetime2}
\RequirePackage{xcolor}
\RequirePackage{paracol}
\RequirePackage{ragged2e}
\RequirePackage{url}
\RequirePackage{relsize}
\RequirePackage{fontawesome5}
%    \end{macrocode}
%
% The \pkg{graphicx} package is not directly used by the class, but
% many authors may need it to display graphics and images, so we load
% it by default.
%    \begin{macrocode}
\RequirePackage{graphicx}
%    \end{macrocode}
%
% The \pkg{amsmath} and \pkg{amsthm} packages are standard
% requirements for mathematics papers. They are used in the class to
% define new commands for mathematical symbols and theorem-like
% environments.
%    \begin{macrocode}
\RequirePackage{amsmath}
\RequirePackage{amsthm}
%    \end{macrocode}
%
% Finally, \pkg{lineno} is loaded to number lines with option
% \code{review}.
%    \begin{macrocode}
\ifCJS@review
  \RequirePackage{lineno}
  \linenumbers
\fi
%    \end{macrocode}
%
% Note that some additional packages related to font management are
% loaded in \autoref{sec:implementation:layout:fonts}.
%
% \subsubsection{Incompatible package}
% \label{sec:implementation:setup:geometry}
%
% The package \pkg{geometry} is incompatible with \class{memoir} and
% should not be used in the first place to change the document layout.
% We issue an error message if users load it in their article.
%    \begin{macrocode}
\AtBeginDocument{%
  \@ifpackageloaded{geometry}{%
    \ClassError{cjs-rcs-article}%
      {Package geometry is incompatible with this class}%
      {You should not change the page layout.\MessageBreak%
       If absolutely needed, use the memoir class facilities.}}{\relax}}
%    \end{macrocode}
%
% \subsection{Document layout}
% \label{sec:implementation:layout}
%
% \changes{1.0}{2023-11-29}{Mention the inspiration for the layout of
% the class at the beginning of Section B.2 of the English
% documentation.}
% The document layout of the class is inspired by the layout of
% the newspaper \emph{Le Devoir} designed by Lucie Lacava in 2018.
%
% \subsubsection{Fonts and character encoding}
% \label{sec:implementation:layout:fonts}
%
% The class uses special fonts for the main text and mathematics, for
% decorative text (section titles, headers and such), and for text set in
% monospace (like computer code). The class also imposes Unicode UTF-8
% character encoding for the source files.
%
% We need two sets of commands to load the main document fonts
% depending on the engine used. For the modern engines {\LuaTeX} and
% {\XeTeX}, commands from \pkg{fontspec} and \pkg{unicode-math} load
% the OpenType variants of the fonts. The encoding is UTF-8 by default
% for these engines.
% \changes{1.1}{2024-03-06}{Implementation: explicitly set the option
% \texttt{bold-style!=TeX} when loading the math font with the modern
% engines.}
%    \begin{macrocode}
\iftutex
  \RequirePackage[babel=true]{microtype}
  \RequirePackage{fontspec}
  \RequirePackage{unicode-math}
  \setmainfont{STIXTwoText}
  [
    Extension = .otf,
    UprightFont = *-Regular,
    BoldFont = *-SemiBold,
    ItalicFont = *-Italic,
    BoldItalicFont = *-SemiBoldItalic,
    Scale = 1,
    Ligatures = TeX
  ]
  \setmathfont{STIXTwoMath-Regular}
  [
    Extension = .otf,
    Scale = 1,
    bold-style = TeX
  ]
  \setmathfont{FiraMath-Regular}
  [
    version = titles,
    Extension = .otf,
    Scale = 0.92
  ]
%    \end{macrocode}
% For the traditional engine {pdf\TeX}, we need to rely on ancillary
% packages and the Type~1 variants of the fonts. These are no longer
% updated, in contrast to their OpenType counterparts. Furthermore, the
% Type~1 variant of STIX~Two does not contain the semibold weight.
% \changes{0.93}{2023-11-07}{Disable old-style numbers in pdfLaTeX.}
% \changes{0.93}{2023-11-07}{Replace packages stickstoo and newtxmath
% by the simpler stix2 now that access to font features is no longer
% needed.}
%    \begin{macrocode}
\else
  \RequirePackage[babel=true]{microtype}
  \RequirePackage[utf8]{inputenc}
  \RequirePackage[T1]{fontenc}
  \RequirePackage{stix2}
\fi
%    \end{macrocode}
%
% For the sans serif font, the packages \pkg{FiraSans} and
% \pkg{FiraMono} provide a unified interface for the OpenType and
% Type~1 versions of the fonts.
%    \begin{macrocode}
\RequirePackage[book,medium,proportional,lining,scale=0.92]{FiraSans}
\RequirePackage[medium,lining,scale=0.90]{FiraMono}
%    \end{macrocode}
%
% With option \code{review}, we redefine the font for the line numbers
% and position them closer to the left margin (default is 10~pt) to
% avoid overlap in abstracts.
%    \begin{macrocode}
\ifCJS@review
  \renewcommand*\linenumberfont{\normalfont\firalining\tiny}
  \setlength\linenumbersep{5pt}
\fi
%    \end{macrocode}
%
% \subsubsection{Colours}
% \label{sec:implementation:layout:colours}
%
% We define some colours used by the class. First, the three main
% colours of {\TheCJS} logo, hand-picked from the SVG code of the
% latter: %
% \textcolor{CJSpink}{\rule{1.5em}{1.2ex}} %
% \textcolor{CJSred}{\rule{1.5em}{1.2ex}} %
% \textcolor{CJSyellow}{\rule{1.5em}{1.2ex}}\,.
%    \begin{macrocode}
\definecolor{CJSpink}{HTML}{E3038B}
\definecolor{CJSred}{HTML}{D10000}
\definecolor{CJSyellow}{HTML}{FEC70D}
%    \end{macrocode}
% Next, the colours for the hyperlinks (inspired by %
% \href{https://ctan.org/pkg/classicthesis}{\pkg{classicthesis}}):
% \textcolor{CJSlink}{\rule{1.5em}{1.2ex}} for internal links;%
% \textcolor{CJSurl}{\rule{1.5em}{1.2ex}} for external links;%
% \textcolor{CJScitation}{\rule{1.5em}{1.2ex}} for citations.
%    \begin{macrocode}
\definecolor{CJSlink}{rgb}{0,0.4,0.6}   % internal links
\definecolor{CJSurl}{rgb}{0.6,0,0}      % external links
\definecolor{CJScitation}{rgb}{0,0.5,0} % citations
%    \end{macrocode}
% Finally, the colour of the %
% \href{https://info.orcid.org/brand-guidelines}{ORCID icon}: %
% \textcolor{CJSorcid}{\rule{1.5em}{1.2ex}}\,.
%    \begin{macrocode}
\definecolor{CJSorcid}{HTML}{A6CE39}
%    \end{macrocode}
%
% \subsubsection{Page size and margins}
% \label{sec:implementation:layout:margins}
%
% The page size was set to letter paper in the options passed to
% \class{memoir}. We use the very nice commands of \class{memoir} to
% set the margins. Their size is determined such that the typeblock
% has a height to width aspect ratio of approximately $\sqrt{2}{:}1$, the
% same as %
% \href{https://en.wikipedia.org/wiki/ISO_216}{ISO A series} %
% paper.
%    \begin{macrocode}
\setlrmarginsandblock{24mm}{30mm}{*}
\setulmarginsandblock{24mm}{26mm}{*}
\setheadfoot{13.5pt}{9mm}
\checkandfixthelayout[nearest]
%    \end{macrocode}
%
% \subsubsection{Journal name and publication information}
% \label{sec:implementation:layout:journalinfo}
%
% The title page starts with the journal name and publication
% information set next to a decorative element (called ``ornament'' in
% the code).
%
% First, define macros containing the English and French names of the
% journal, and another one that displays both.
%    \begin{macrocode}
\def\CJS@journalname@en{The Canadian Journal of Statistics}
\def\CJS@journalname@fr{La revue canadienne de statistique}
\def\CJS@journalname{\CJS@journalname@en~{\textbar}~\CJS@journalname@fr}
%    \end{macrocode}
%
% The decorative element is created using plain {\TeX} rules. Its
% height and depth are identical to the journal information.
%    \begin{macrocode}
\newsavebox\CJS@journalornament
\setbox\CJS@journalornament=\vbox{%
  \setbox\z@=\vbox{\sffamily\hbox{\CJS@journalname}\hbox{\bfseries V,}}
  \setbox\tw@\hbox{\vrule \@width4pt\@height\ht\z@\@depth\dp\z@}
  \hbox{\textcolor{CJSpink}{\copy\tw@}\kern2pt
        \textcolor{CJSred}{\copy\tw@}\kern2pt
        \textcolor{CJSyellow}{\copy\tw@}\kern6pt}}
%    \end{macrocode}
%
% \begin{macro}{\makejournalinfo}
%   The command \cmd{\makejournalinfo} puts the journal information
%   together. The actual information is provided through the editor
%   commands defined in \autoref{sec:implementation:editors}. Although
%   a visible command, \cmdprint{\makejournalinfo} is actually called
%   by \cmd{\maketitle}.
%    \begin{macrocode}
\newcommand*\makejournalinfo{%
  \mbox{%
    \box\CJS@journalornament
    \vbox{%
      \sffamily
      \hbox{\CJS@journalname}
      \hbox{\bfseries Vol.~\CJS@vol, %
                      No.~\CJS@issue, %
                      \CJS@year, %
                      \CJS@firstpage--\thelastpage}}}}
%    \end{macrocode}
% \end{macro}
%
% \subsubsection{Headers and footers}
% \label{sec:implementation:layout:headers}
%
% We need to define headers and footers for the internal pages, and
% specific ones for the title page. They are built from scratch using
% \code{tabular} environments.
%
% First, a command to set the font.
%    \begin{macrocode}
\def\CJS@setheadfootfont{%
  \firalining\fontsize{9}{13}\selectfont}
%    \end{macrocode}
%
% Next, a command to draw the vertical rule that will be used as a
% separator between the header or footer content and the page folio.
%    \begin{macrocode}
\newlength\CJS@headdivheight
\settoheight\CJS@headdivheight{\CJS@setheadfootfont 1}
\setlength\CJS@headdivheight{0.9\CJS@headdivheight}
\def\CJS@headdivrule{%
  \rule[0.05\CJS@headdivheight]{0.75\normalrulethickness}{\CJS@headdivheight}}
%    \end{macrocode}
%
% Now, the page style \code{cjs} for the internal pages. The even
% header contains the names of the authors flush left. The odd header
% contains the article title (short version, if appropriate) flush
% right.
% \changes{2.0}{2026-02-23}{Implementation, headers and footers:
% the even header now displays the names of the authors in
% \texttt{review} mode.}
%    \begin{macrocode}
\newlength\CJS@pagenumwidth
\settowidth\CJS@pagenumwidth{9\qquad}
\makepagestyle{cjs}
\makeevenhead{cjs}{%
  \CJS@setheadfootfont
  \begin{tabular*}{\textwidth}%
    {@{}p{\CJS@pagenumwidth}@{\CJS@headdivrule\qquad}l@{\extracolsep\fill}}
    \thepage & \MakeTextUppercase{\CJS@runningauthor} \\ \hline
  \end{tabular*}}{}{}
\makeoddhead{cjs}{}{}{%
  \CJS@setheadfootfont
  \begin{tabular*}{\textwidth}%
    {l@{\extracolsep\fill}r@{\extracolsep{0pt}\qquad\CJS@headdivrule}p{\CJS@pagenumwidth}@{}}
    & \MakeTextUppercase{\CJS@shorttitle} & \hfill\thepage \\ \hline
  \end{tabular*}}
%    \end{macrocode}
% The footer for internal pages is empty.
%    \begin{macrocode}
\makeevenfoot{cjs}{}{}{} \makeoddfoot{cjs}{}{}{}
%    \end{macrocode}
% Use the \code{cjs} page style.
%    \begin{macrocode}
\pagestyle{cjs}
%    \end{macrocode}
%
% We need a special page style for the title page. The header of the
% title page is empty.
%    \begin{macrocode}
\makepagestyle{cjsfirstpage}
\makeevenhead{cjsfirstpage}{}{}{} \makeoddhead{cjsfirstpage}{}{}{}
%    \end{macrocode}
% The footer of the title page contains licensing information. By
% default, a notice indicates that the licence will appear here. With
% option \code{final}, the licence statement is displayed, if
% provided. With the \code{review}, \code{statement} and
% \code{nocjs} options, the title page rather features a standard
% footer with the page folio. With the latter option, the footer may
% also contain a licence statement specified with \cmd{\licence}. For
% additional details on licence statements, see
% \autoref{sec:implementation:licensing}.
% \changes{1.3}{2025-08-18}{Implementation: complete rewrite of
% the licensing information display at the bottom of the first page
% using a special footer rather than a bottom float.}
% \changes{1.1}{2024-06-19}{Implementation: fix the positioning of the
% licensing information at the bottom of the title page.}
% \changes{1.1}{2024-06-26}{Implementation: include the special
% acknowledgement statement in the licensing information, if
% required.}
%    \begin{macrocode}
\ifCJS@licenceblock
  \def\CJS@licenceblock{%
    \def\CJS@notice{%
      \iflanguage{french}{Futur emplacement de la déclaration de licence.}%
      {Licence statement to appear here.}}%
    \vbox{%
      \CJS@setlicencefont%
      \rule[\footruleskip]{\textwidth}{\normalrulethickness}
      \parbox[b][\CJS@licenceheight][t]{\textwidth}{%
        \ifCJS@specialack\CJS@specialackstatement\fi
        \ifCJS@final\CJS@licence \else\textit\CJS@notice \fi}}}
  \makeoddfoot{cjsfirstpage}{\CJS@licenceblock}{}{}
  \makeevenfoot{cjsfirstpage}{\CJS@licenceblock}{}{}
\else
  \makeevenfoot{cjsfirstpage}{%
    \CJS@setheadfootfont
    \begin{tabular*}{\textwidth}%
      {@{}p{\CJS@pagenumwidth}@{\CJS@headdivrule\qquad}l@{\extracolsep\fill}}
      \hline \thepage &
      \ifCJS@nocjs\CJS@licence\fi
    \end{tabular*}}{}{}
  \makeoddfoot{cjsfirstpage}{}{}{%
    \CJS@setheadfootfont
    \begin{tabular*}{\textwidth}%
      {l@{\extracolsep\fill}r@{\extracolsep{0pt}\qquad\CJS@headdivrule}p{\CJS@pagenumwidth}@{}}
      \hline &
      \ifCJS@nocjs\CJS@licence\fi &
      \hfill\thepage
    \end{tabular*}}
\fi
%    \end{macrocode}
%
% \subsubsection{Section titles}
% \label{sec:implementation:layout:titles}
%
% The \class{memoir} class assumes that sectioning starts at the
% chapter level---even with the \code{article} option. To get around
% this requirement, we disable the effect of \cmdprint{\chapter}. A
% desirable side effect is to make \cmd{\autoref} work correctly for
% appendices.
%    \begin{macrocode}
\let\chapter\relax
\counterwithout{section}{chapter}
%    \end{macrocode}
%
% The class uses a numbering system of at most three levels.
%    \begin{macrocode}
\setsecnumdepth{subsubsection}
\maxsecnumdepth{subsubsection}
%    \end{macrocode}
%
% We then define the style of section titles from level
% \cmdprint{\section} down to \cmdprint{\subparagraph}. With the
% {\LuaTeX} and {\XeTeX} engines, we make sure to use a matching font
% for mathematics in case some appear in the titles.
%    \begin{macrocode}
\iftutex
  \setsecheadstyle{\normalfont\Large\sffamily\mathversion{titles}\bfseries\raggedright}
  \setsubsecheadstyle{\normalfont\large\sffamily\mathversion{titles}\bfseries\raggedright}
  \setsubsubsecheadstyle{\normalfont\sffamily\mathversion{titles}\bfseries\raggedright}
  \setparaheadstyle{\normalfont\sffamily\mathversion{titles}\bfseries}
  \setsubparaheadstyle{\normalfont\mathversion{titles}\bfseries}
\else
  \setsecheadstyle{\normalfont\Large\sffamily\bfseries\raggedright}
  \setsubsecheadstyle{\normalfont\large\sffamily\bfseries\raggedright}
  \setsubsubsecheadstyle{\normalfont\sffamily\bfseries\raggedright}
  \setparaheadstyle{\normalfont\sffamily\bfseries}
  \setsubparaheadstyle{\normalfont\bfseries}
\fi
\setbeforesecskip{-1.75ex plus -0.5ex minus -0.1ex}
\setaftersecskip{1.2ex plus 0.1ex}
\setbeforesubsecskip{-1.5ex plus -0.5ex minus -0.1ex}
\setaftersubsecskip{0.75ex plus 0.1ex}
\setbeforesubsubsecskip{-1.5ex plus -0.5ex minus -0.1ex}
\setaftersubsubsecskip{0.75ex plus 0.1ex}
\setbeforeparaskip{0pt}
\setafterparaskip{-0.5em}
\setbeforesubparaskip{0pt}
\setaftersubparaskip{-0.25em}
%    \end{macrocode}
%
% \subsubsection{Line spacing}
% \label{sec:implementation:layout:linespacing}
%
% With option \code{review}, line spacing is increased using the
% command \cmdprint{\OnehalfSpacing} of \class{memoir}.
%    \begin{macrocode}
\ifCJS@review
  \OnehalfSpacing
\fi
%    \end{macrocode}
%
% \subsubsection{Captions}
% \label{sec:implementation:layout:captions}
%
% The caption name for tables and figures is typeset in bold.
%    \begin{macrocode}
\captionnamefont{\bfseries}
%    \end{macrocode}
%
% \subsubsection{Configuration for French}
% \label{sec:implementation:layout:french}
%
% \changes{1.3}{2025-08-23}{Implementation: configure the French
% quotes only for engines other than {\LuaTeX}.}
% We change some of the defaults of \pkg{babel-french} and allow
% French opening and closing quotes («~») to be entered directly with
% the keyboard (this is not needed with {\LuaTeX}).
%    \begin{macrocode}
\frenchsetup{%
  SmallCapsFigTabCaptions=false,
  ThinSpaceInFrenchNumbers=true}
\ifluatex\else
  \frenchsetup{og=«, fg=»}
\fi
\renewcommand*\frenchtablename{Tableau}
\renewcommand*\frenchfigurename{Figure}
%    \end{macrocode}
%
% \subsection{Titling material}
% \label{sec:implementation:titling}
%
% Before we dive into the definition of the commands to enter titling
% information, we first define the various lengths that will be needed
% to position the elements on the title page.
%
% \begin{length}{\journalinfoskip}
%   The length \cmd{\journalinfoskip} holds the distance between the
%   top of the typeblock and the journal information.
%    \begin{macrocode}
\newlength\journalinfoskip
\setlength\journalinfoskip{-4ex}
%    \end{macrocode}
% \end{length}
%
% \begin{length}{\maintitleskip}
%   The length \cmd{\maintitleskip} holds the distance between the
%   journal information and the start of the main title area.
%    \begin{macrocode}
\newlength\maintitleskip
\setlength\maintitleskip{6ex}
%    \end{macrocode}
% \end{length}
%
% \begin{length}{\supptitleskip}
%   The length \cmd{\supptitleskip} holds the distance between the
%   supplementary material statement and the main title of the
%   article.
%    \begin{macrocode}
\newlength\supptitleskip
\setlength\supptitleskip{2ex}
%    \end{macrocode}
% \end{length}
%
% \begin{length}{\authorskip}
%   The length \cmd{\authorskip} holds the distance between the main
%   title and the author block.
%    \begin{macrocode}
\newlength\authorskip
\setlength\authorskip{5ex}
%    \end{macrocode}
% \end{length}
%
% \begin{length}{\titlingskip}
%   The length \cmd{\titlingskip} holds the distance between the other
%   elements of the title page, that is, from the abstract to the
%   corresponding author.
%    \begin{macrocode}
\newlength\titlingskip
\setlength\titlingskip{2pt plus2pt minus0.8pt}
%    \end{macrocode}
% \end{length}
%
% \begin{length}{\fancybreaksep}
%   The length \cmd{\fancybreaksep} holds the distance between the
%   fancy break and the surrounding text.
%    \begin{macrocode}
\newlength\fancybreaksep
\setlength\fancybreaksep{6pt plus3pt minus1pt}
%    \end{macrocode}
% \end{length}
%
% \subsubsection{Article title}
% \label{sec:implementation:titling:title}
%
% The main title area is composed of two elements: the statement that
% the document is supplementary material to an article when the option
% \code{supplement} is specified, and the main title of the article.
%
% \begin{macro}{\supplementfont}
%   The public command \cmd{\supplementfont} defines the font of
%   the supplementary material title.
%    \begin{macrocode}
\def\CJS@supptitlename@en{supplementary material for the article}
\def\CJS@supptitlename@fr{matériel additionnel pour l'article}
\newcommand*\supplementfont{\normalfont\Large\scshape}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\maintitlefont}
%   The public command \cmd{\maintitlefont} defines the font of
%   the main title.
%    \begin{macrocode}
\newcommand*\maintitlefont{\raggedright\normalfont\huge\bfseries}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\title}
%   The implementation of \cmd{\title}, copied from
%   \class{amsart.cls}, allows an optional argument to provide the
%   short title that is displayed in the running head.
%    \begin{macrocode}
\renewcommand*\title[2][]{\gdef\CJS@shorttitle{#1}\gdef\@title{#2}}
\edef\title{\@nx\@dblarg
  \@xp\@nx\csname\string\title\endcsname}
%    \end{macrocode}
% \end{macro}
%
% \subsubsection{Author and affiliation information}
% \label{sec:implementation:titling:author}
%
% The mechanism to enter the author and affiliation information is inspired
% from \pkg{authblk}, but the implementation is rewritten more legibly
% using the tools from \pkg{etoolbox}.
%
% \begin{macro}{\authfont,\affilfont}
%   First, we define two public commands to control the visual style of
%   author names and affiliations, respectively.
%    \begin{macrocode}
\newcommand*\authfont{\normalfont\sffamily\bfseries\color{black}}
\newcommand*\affilfont{\normalfont\sffamily\color{gray}}
%    \end{macrocode}
% \end{macro}
%
% \begin{length}{\affilsep,\authsep}
%   Next, we define (and initialize) two lengths holding the space between
%   the author identification and the affiliation, and between author
%   blocks.
%    \begin{macrocode}
\newlength\affilsep \setlength\affilsep{\z@}
\newlength\authsep  \setlength\authsep{1ex}
%    \end{macrocode}
% \end{length}
%
% \changes{0.9}{2023-10-14}{Change the corresponding author symbol
% from an envelope to @.}
% \begin{macro}{\author}
%   We can now define a new version of \cmd{\author} that will inject the
%   author names into \cmd{\@author}, along with styling instructions and the
%   appropriate separator between the author blocks (none before the first
%   author, a space \cmd{\authsep} between the following ones).
%
%   The command also allows collection of the ORCID iD, email address and
%   corresponding author status through a now fairly standard
%   key-value interface.
%    \begin{macrocode}
\define@key{author}{orcid}{\def\CJS@orcid{#1}}
\define@key{author}{email}{\def\CJS@email{#1}}
\define@key{author}{corresponding}[true]{%
  \csname if#1\endcsname \CJS@corrauthtrue\fi}
\def\CJS@corrauthname@en{Corresponding author}
\def\CJS@corrauthname@fr{Auteur correspondant}
\newcommand*\CJS@corrauth{}
\newcommand*\CJS@orcidlist{}
\newcommand*\CJS@orcidname{ORCID}
\newcommand*\CJS@authsep{, }
\newcommand*\CJS@orcid@and{}
\newcommand*\CJS@blk@and{\protect\authfont}
\newcommand*\CJS@pand{\protect\\[\authsep] \protect\authfont}
\renewcommand\author{%
  \new@ifnextchar[{\author@}%
                  {\author@[]}}
\newcommand*\author@{}
\def\author@[#1]#2{%
  \begingroup
    \setkeys{author}{#1}
    \let\protect\@unexpandable@protect
    \ifCJS@newauth
      \xappto\@author{\CJS@blk@and#2}
    \else
      \xappto\@author{\CJS@authsep#2}
    \fi
    \ifCJS@corrauth
      \ifundef{\CJS@email}{\relax}{%
        \protected@xdef\CJS@corrauth{\protect\url{\CJS@email}}
        \xappto\@author{\;%
          \protect\href{mailto:\CJS@email}{\corrauthmark}}}
    \fi
    \ifundef{\CJS@orcid}{\relax}{%
      \xappto\@author{\;%
        \protect\href{https://orcid.org/\CJS@orcid}%
                     {\textcolor{CJSorcid}{\faOrcid}}}
      \xappto\CJS@orcidlist{\CJS@orcid@and#2: %
        \protect\href{https://orcid.org/\CJS@orcid}%
                     {\textcolor{CJSorcid}{\faOrcid}\, \protect\url{https://orcid.org/\CJS@orcid}}}
      \gdef\CJS@orcid@and{\protect\\}}
  \endgroup
  \CJS@newauthfalse}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\affil}
%   We immediately define the command \cmd{\affil} since it works in
%   tandem with \cmd{\author}. The command provides an affiliation for
%   the author previously mentioned in \cmd{\author}. Note how the
%   separator \cmd{\CJS@blk@and} is redefined here.
%    \begin{macrocode}
\newcommand*\affil[1]{%
  \CJS@newauthtrue
  \let\CJS@blk@and\CJS@pand
  \begingroup
    \let\protect\@unexpandable@protect
    \gappto\@author{\protect\\[\affilsep]\protect\affilfont #1}
  \endgroup}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\surname}
%   The command \cmd{\surname} defines the styling of the surname
%   (using \cmd{\CJS@printsurname}), but also collects the surnames in
%   the \cmd{\CJS@runningauthor} macro with the appropriate
%   separators. This will be printed in the running head.
%
%   The command \cmd{\surname} is expanded by \cmd{\maketitle}. We
%   need to take into account that \cmd{\runningauthors} (see below)
%   may be used in the document, in which case the command should not
%   collect the surnames in \cmd{\CJS@runningauthor}. When
%   \cmd{\runningauthors} is used, \cmd{\CJS@runningauthor} is not
%   empty when \cmd{\maketitle} is expanded and, therefore,
%   \cmd{\CJS@runningauthor@and} is never defined by \cmd{\surname}.
%   Hence the test with \cmd{\ifdefvoid} in the ``false'' branch of
%   \cmd{\ifdefempty}.
%    \begin{macrocode}
\newcommand*\CJS@runningauthor{}
\newcommand*\CJS@printsurname[1]{\MakeTextUppercase{#1}}
\newrobustcmd{\surname}[1]{%
  \ifdefempty{\CJS@runningauthor}{%
    \def\CJS@runningauthor@{#1}%
    \edef\CJS@runningauthor@and{\iflanguage{french}{ et }{ and }}%
    \gappto\CJS@runningauthor{#1}}{%
      \ifdefvoid{\CJS@runningauthor@and}{\relax}{%
        \global\let\CJS@runningauthor\CJS@runningauthor@
        \appto\CJS@runningauthor@{, #1}%
        \xappto\CJS@runningauthor{\CJS@runningauthor@and#1}%
        \edef\CJS@runningauthor@and{\iflanguage{french}{ et }{, and }}}}%
  \CJS@printsurname{#1}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\corrauthmark}
%   The command \cmd{\corrauthmark} contains the marker that is
%   used as a hyperlink next to the name of the corresponding author,
%   and as the mark next to the titling information.
%    \begin{macrocode}
\newcommand*\corrauthmark{{\small\faAt}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\runningauthor}
%   The command \cmd{\runningauthors} may be used to provide an
%   alternative (shorter) version of the author names for the running
%   head.
%    \begin{macrocode}
\newcommand*\runningauthor[1]{\renewcommand*\CJS@runningauthor{#1}}
%    \end{macrocode}
% \end{macro}
%
% Finally, we need to reset \cmd{\@author} to avoid %
% \code{No }\cmdprint{\author}\code{ given} warnings.
%    \begin{macrocode}
\def\@author{}
%    \end{macrocode}
%
% \subsubsection{Abstracts}
% \label{sec:implementation:titling:abstracts}
%
% \begin{environment}{englishabstract,frenchabstract}
%   The environments for the English and French abstracts are defined
%   using the facilities of the package \pkg{environ}. They each
%   merely collect their body into a macro whose content is later
%   typeset by \cmd{\maketitle}.
%    \begin{macrocode}
\def\CJS@englishabstract{}
\def\CJS@frenchabstract{}
\NewEnviron{englishabstract}{\global\let\CJS@englishabstract\BODY}
\NewEnviron{frenchabstract}{\global\let\CJS@frenchabstract\BODY}
%    \end{macrocode}
% \end{environment}
%
% \subsubsection{Keywords}
% \label{sec:implementation:titling:keywords}
%
% \begin{environment}{keywords}
%   The treatment of keywords involves two environments. The first,
%   \code{keywords}, is the visible one that collects the information
%   into a macro. The second, \code{CJS@keywordslist}, is the (inline)
%   environment based on \code{itemize} that actually typesets the
%   information inside \cmd{\maketitle}. (The command
%   \cmdprint{\newlist} comes from \pkg{enumitem}.)
%    \begin{macrocode}
\def\CJS@keywords{}
\def\CJS@keywordsname@en{Keywords}
\def\CJS@keywordsname@fr{Mots-clés}
\NewEnviron{keywords}{\global\let\CJS@keywords\BODY}
\newlist{CJS@keywordslist}{itemize*}{1}
\setlist[CJS@keywordslist]{%
  mode=unboxed,
  label={},
  afterlabel={},
  itemjoin={{; }},
  after={.}}
%    \end{macrocode}
% \end{environment}
%
% \subsubsection{Mathematics subject classification}
% \label{sec:implementation:titling:classifications}
%
% \begin{environment}{classification}
%   The implementation of the environment \code{environment} is
%   similar to \code{keywords}, the main difference being that this
%   environment has an optional argument with a default value stored
%   in the macro \cmdprint{\CJS@defclassifname}.
%    \begin{macrocode}
\def\CJS@classif{}
\def\CJS@classifname{}
\def\CJS@defclassifname{MSC2020}
\NewEnviron{classification}[1][%
  \CJS@defclassifname]{%
  \global\def\CJS@classifname{#1}
  \global\let\CJS@classif\BODY}
\newlist{CJS@classiflist}{itemize*}{1}
\setlist[CJS@classiflist]{%
  mode=unboxed,
  itemjoin={{; }},
  after={.}}
%    \end{macrocode}
% \end{environment}
%
% \subsubsection{Fancy break}
% \label{sec:implementation:titling:fancybreak}
%
% \begin{macro}{\pfbreakdisplay}
%   The fancy break is the three-rule separator between the titling
%   information and the body of the paper. Using the facilities of
%   \class{memoir}, we simply redefine the command
%   \cmd{\pfbreakdisplay}.
%    \begin{macrocode}
\renewcommand\pfbreakdisplay{%
  \vskip\fancybreaksep\par%
  \rule[\z@]{\linewidth}{\normalrulethickness}\hskip-\linewidth
  \rule[4\normalrulethickness]{\linewidth}{\normalrulethickness}\hskip-\linewidth
  \rule[8\normalrulethickness]{\linewidth}{\normalrulethickness}\par%
  \vskip\fancybreaksep}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\suppressfancybreak,\showfancybreak}
%   The command \cmd{\suppressfancybreak} allows suppression of the fancy
%   break should it appear at the very bottom of the title page or at
%   the very top of the second page. The converse
%   \cmd{\showfancybreak} forces display, although it should not be
%   needed as it is the default behaviour of the class.
%    \begin{macrocode}
\newcommand*\suppressfancybreak{\CJS@fancybreakfalse}
\newcommand*\showfancybreak{\CJS@fancybreaktrue}
%    \end{macrocode}
%
% \subsubsection{Typesetting of the titling material}
% \label{sec:implementation:titling:maketitle}
%
% \changes{2.0}{2026-02-23}{Implementation, titling material:
% the author block and corresponding author information are now
% displayed in \texttt{review} mode.}
% \begin{macro}{\maketitle}
%   The command \cmd{\maketitle} typesets the titling material. The
%   first duty is to use the specific page style and, unless
%   overridden by a class option, to allocate space in the footer for
%   the licence statement.
%    \begin{macrocode}
\renewcommand\maketitle{%
  \thispagestyle{cjsfirstpage}
  \ifCJS@licenceblock
    \CJS@measurelicence
    \changepage{-\CJS@adjustheight}{}{}{}{}{}{}{}{\CJS@adjustheight}%
  \fi
%    \end{macrocode}
%   Then really starts the composition of the title page. Single
%   spacing is turned on, top floats are suppressed from the title
%   page, and paragraph spacing and indentation are set to zero.
%    \begin{macrocode}
  \begingroup
    \SingleSpacing
    \suppressfloats[t]
    \setlength\parskip{\z@}
    \setlength\parindent{\z@}
    \setcounter{page}{\CJS@firstpage}
%    \end{macrocode}
%   If appropriate, display the decorative element and journal information.
%    \begin{macrocode}
    \ifCJS@journalinfo
      \vspace*{\journalinfoskip}
      \makejournalinfo\par
    \fi
    \vspace*{\maintitleskip}
%    \end{macrocode}
%   We need to know the height of the supplementary material statement
%   to replace it by a strut for regular articles.
%    \begin{macrocode}
    \setbox\z@=\vbox{\supplementfont%
      \iflanguage{french}{\CJS@supptitlename@fr}{\CJS@supptitlename@en}}
    \ifCJS@supplement
      \box\z@\par
    \else
      \rule{\z@}{\dimexpr\ht\z@}\par % strut
    \fi
    \vskip\supptitleskip
    \begin{minipage}{0.9\textwidth}
      \maintitlefont\@title\par
    \end{minipage}
    \vskip\authorskip
%    \end{macrocode}
%   Then comes the author block.
%    \begin{macrocode}
    \hrulefill
    \vskip\belowrulesep
    \begin{minipage}{0.9\textwidth}
      \@author
    \end{minipage}\par
    \vskip\aboverulesep
    \hrulefill\par
%    \end{macrocode}
%   Option \code{supplement} hides the rest of the titling material
%   (except the corresponding author address).
%    \begin{macrocode}
    \unless\ifCJS@supplement
      \vskip2\titlingskip
%    \end{macrocode}
%   The abstracts are positioned automatically depending on the main
%   language of the article.
%    \begin{macrocode}
      \begin{paracol}{2}
        \RaggedRight
        \switchcolumn[\iflanguage{english}{0}{1}]
        \begingroup
          \selectlanguage{english}\paragraph{\abstractname}\CJS@englishabstract
        \endgroup
        \switchcolumn[\iflanguage{french}{0}{1}]
        \begingroup
          \selectlanguage{french}\paragraph{\abstractname}\CJS@frenchabstract
        \endgroup
      \end{paracol}\par
%    \end{macrocode}
%   Start a group for the keywords and subject classification that are
%   typeset ragged right.
%    \begin{macrocode}
      \begingroup
        \sloppy\RaggedRight
        \ifdefempty{\CJS@keywords}{\relax}{%
          \vskip\titlingskip
          \paragraph{\iflanguage{french}{\CJS@keywordsname@fr}{\CJS@keywordsname@en}}
          \begin{CJS@keywordslist}
            \CJS@keywords
          \end{CJS@keywordslist}\par}
        \vskip\titlingskip
%    \end{macrocode}
%   The subject classification block is always shown, just with an
%   empty content if the information is not provided.
%    \begin{macrocode}
        \paragraph{{\CJS@classifname}}
        \ifdefempty{\CJS@classif}{\mbox{}}{%
          \begin{CJS@classiflist}
            \CJS@classif
          \end{CJS@classiflist}}\par
      \endgroup
    \fi
%    \end{macrocode}
%   Finally, display the corresponding author address, followed by the
%   fancy break (unless revoked by \cmd{\suppressfancybreak}).
%    \begin{macrocode}
    \ifdefempty{\CJS@corrauth}{\relax}{%
      \vskip\titlingskip
      \paragraph{\corrauthmark\;%
        \iflanguage{french}{\CJS@corrauthname@fr}{\CJS@corrauthname@en}}
      \CJS@corrauth\par}
    \ifCJS@fancybreak
      \fancybreak{\pfbreakdisplay}
    \fi
  \endgroup}
%    \end{macrocode}
% \end{macro}
%
% \subsubsection{ADNI data use agreement}
% \label{sec:implementation:titling:adni}
%
% \changes{1.1}{2024-06-26}{Implementation: define the new commands
% \cs{ADNIacknowledgement} and \cs{ADMCacknowledgement}.}
% \begin{macro}{\ADNIacknowledgement}
% \begin{macro}{\ADMCacknowledgement}
%   The commands \cmd{\ADNIacknowledgement} and
%   \cmd{\ADMCacknowledgement} automatically create special
%   acknowledgements for the Alzheimer’s Disease Neuroimaging
%   Initiative (ADNI) and the Alzheimer’s Disease Metabolomics
%   Consortium (ADMC), respectively.
%    \begin{macrocode}
\newcommand*\CJS@adnibyline{for the Alzheimer’s Disease Neuroimaging Initiative}
\newcommand*\CJS@adnistatement{%
  Data used in preparation of this article were obtained
  from the \href{https://adni.loni.usc.edu}{Alzheimer’s Disease Neuroimaging Initiative}
  (ADNI) database. As such, the investigators within the ADNI
  contributed to the design and implementation of ADNI and/or provided
  data but did not participate in the analysis or writing of this
  report. A complete listing of ADNI investigators can be found at:
  \url{https://adni.loni.usc.edu/wp-content/uploads/how_to_apply/ADNI_Acknowledgement_List.pdf}.}
\newcommand*\CJS@admcbyline{for the Alzheimer’s Disease Metabolomics Consortium}
\newcommand*\CJS@admcstatement{%
  Data used in preparation of this article were generated by the
  Alzheimer’s Disease Metabolomics Consortium (ADMC). As such, the
  investigators within the ADMC provided data but did not participate
  in analysis or writing of this report. A complete listing of ADMC
  investigators can be found at:
  \url{https://sites.duke.edu/adnimetab/team/}.}
\newcommand*\ADNIacknowledgement{%
  \specialack{\CJS@adnibyline}{\CJS@adnistatement}}
\newcommand*\ADMCacknowledgement{%
  \renewcommand*\CJS@specialackmark{\textsuperscript{\ensuremath{**}}}
  \specialack{\CJS@admcbyline}{\CJS@admcstatement}}
%    \end{macrocode}
% \end{macro}
% \end{macro}
%
% \subsection{Back matter}
% \label{sec:implementation:backmatter}
%
% Perhaps a word is in order to explain the presence of the back
% matter environments in the class. The funding information started
% its life on the title page. It was therefore natural to provide an
% environment \code{funding} along with the environments
% \code{keywords} and \code{classification}.
%
% It was later decided to move this information at the end of the
% article, where space is less at a premium. We could have just
% included the appropriate sectioning commands in the templates, but
% it turned out that providing a command \cmd{\makebackmatter} proved
% useful to impose the order of the back matter and, furthermore, to
% display the full ORCID iDs, when available. The other environments
% of this section followed.
%
% \begin{environment}{supplement,sharing}
%   The environments \code{supplement} and \code{sharing} only collect
%   their contents into macros.
%    \begin{macrocode}
\def\CJS@supplement{}
\def\CJS@supplementname@en{Supplementary material}
\def\CJS@supplementname@fr{Matériel additionnel}
\NewEnviron{supplement}{\global\let\CJS@supplement\BODY}
%    \end{macrocode}
%    \begin{macrocode}
\def\CJS@sharing{}
\def\CJS@sharingname@en{Data sharing}
\def\CJS@sharingname@fr{Partage des données}
\NewEnviron{sharing}{\global\let\CJS@sharing\BODY}
%    \end{macrocode}
% \end{environment}
%
% \begin{environment}{acknowledgements,acknowledgments,funding}
%   The environments \code{acknowledgements} (or its alias
%   \code{acknowledgments}) and \code{funding} are very similar,
%   except that they accept an optional argument to change the name of
%   the information provided.
%    \begin{macrocode}
\def\CJS@ack{}
\def\CJS@ackname@en{Acknowledgements}
\def\CJS@ackname@fr{Remerciements}
\NewEnviron{acknowledgements}{\global\let\CJS@ack\BODY}
\let\acknowledgments\acknowledgements
\let\endacknowledgments\endacknowledgements
%    \end{macrocode}
%    \begin{macrocode}
\def\CJS@funding{}
\def\CJS@fundingname{}
\def\CJS@fundingname@en{Funding information}
\def\CJS@fundingname@fr{Financement}
\NewEnviron{funding}[1][%
  \iflanguage{french}{\CJS@fundingname@fr}{\CJS@fundingname@en}]{%
    \global\def\CJS@fundingname{#1}
    \global\let\CJS@funding\BODY}
%    \end{macrocode}
% \end{environment}
%
% \changes{2.0}{2026-02-23}{Implementation, back matter: the
% acknowledgements, funding information, and ORCID iDs are now
% displayed in \texttt{review} mode.}
% \begin{macro}{\makebackmatter}
%   Similar to \cmd{\maketitle}, the command \cmd{\makebackmatter}
%   typesets all elements of the back matter that are available at the
%   point where the command appears.
%    \begin{macrocode}
\newcommand\makebackmatter{%
  \ifCJS@supplement\else
    \ifdefempty{\CJS@supplement}{\relax}{%
      \section*{\iflanguage{french}{\CJS@supplementname@fr}{\CJS@supplementname@en}}
      \CJS@supplement}
    \ifdefempty{\CJS@sharing}{\relax}{%
      \section*{\iflanguage{french}{\CJS@sharingname@fr}{\CJS@sharingname@en}}
      \CJS@sharing}
    \ifdefempty{\CJS@ack}{\relax}{%
      \section*{\iflanguage{french}{\CJS@ackname@fr}{\CJS@ackname@en}}
      \CJS@ack}
    \ifdefempty{\CJS@funding}{\relax}{%
      \section*{\CJS@fundingname}
      \CJS@funding}
    \ifdefempty{\CJS@orcidlist}{\relax}{%
      \section*{\CJS@orcidname}
      \begingroup
        \let\surname\relax
        \let\corrauth\@gobble
        \CJS@orcidlist
      \endgroup}
  \fi}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Licensing}
% \label{sec:implementation:licensing}
%
% The licensing information is used in two main ways by the class:
% either the licence statement provided by the publisher is inserted
% at the bottom of the title page with option \code{final}, or else
% the user provided licence statement is displayed in the footer of
% the title page with option \code{nocjs}. In all other cases the
% licensing information is ignored.
%
% In order to maintain the page layout as much as possible, we leave
% space by default at the bottom of the title page for the future
% licence statement.
%
% First, set the font for the licence statement.
%    \begin{macrocode}
\def\CJS@setlicencefont{%
  \firalining\fontsize{8pt}{9pt}\selectfont}
%    \end{macrocode}
%
% \changes{1.3}{2025-08-18}{Implementation: make the internal
% length for the height of the licence statement global.}
% \changes{1.3}{2025-08-18}{Implementation:
% \cs{CJS@measurelicence} now also creates a global length for the
% adjustment to make to \cs{textheight} and \cs{footskip} to fit the
% licensing information in the footer.}
% \changes{1.2}{2024-11-06}{Fix spurious Unicode (U+0301) characters
% that made their way in the code of the class and that halted
% compilation using pdflatex.}
% \begin{macro}{\CJS@measurelicence}
%   We need to compute the required space for a licence statement and,
%   possibly, the ADNI statement. The internal command
%   \cmd{\CJS@measurelicence} measures the total height required using
%   either the licence statement provided with \cmd{\licence}, or the
%   seemingly longest version of the license statement used by the
%   publisher. The command also computes the adjustment needed for
%   \cmd{\textheight} and \cmd{\footskip} to fit the information in
%   the footer (\cmd{\strutbox} is defined by \class{memoir}). We need
%   global definitions for the resulting lengths since the command is
%   issued inside \cmd{\maketitle}, whereas the lengths are used in
%   the definition of the footer.
%    \begin{macrocode}
\newlength\CJS@licenceheight
\newlength\CJS@adjustheight
\def\CJS@licencesample{%
  {\ccbyncnd*} 2023 The Authors. The Canadian Journal of
  Statistics~{\textbar}~La revue canadienne de statistique published
  by Wiley Periodicals LLC on behalf of Statistical Society of
  Canada~{\textbar}~Société statistique du Canada. This is an open
  access article under the terms of the Creative Commons
  Attribution-NonCommercial-NoDerivs License, which permits use and
  distribution in any medium, provided the original work is properly
  cited, the use is non-commercial and no modifications or adaptations
  are made.}
\newsavebox\CJS@licencebox
\newcommand\CJS@measurelicence{%
  \setbox\CJS@licencebox=\vbox{%
    \CJS@setlicencefont
    \ifCJS@specialack\CJS@specialackstatement\fi
    \ifdefempty{\CJS@licence}{\CJS@licencesample}{\CJS@licence}}%
  \global\setlength\CJS@licenceheight{\dimexpr\ht\CJS@licencebox+\dp\CJS@licencebox}
  \global\setlength\CJS@adjustheight{\dimexpr\CJS@licenceheight-\ht\strutbox}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\licence,\license}
%   The command \cmd{\licence} (alias \cmd{\license}) specifies the
%   licence statement for the manuscript. It may be used by the
%   editors or the publisher to insert the statement at the bottom of
%   the title page with option \code{final}. Otherwise, the statement
%   is only displayed in the footer with option \code{nocjs}.
%    \begin{macrocode}
\def\CJS@licence{}
\newcommand\licence[1]{\renewcommand*\CJS@licence{#1}}
\let\license\licence
%    \end{macrocode}
% \end{macro}
%
% For convenience, we define commands to display the icons of the
% most common Creative Commons licences. The starred versions add the
% Font Awesome copyright icon {\faCopyright[regular]} at the end.
% Inspired by the package \pkg{ccicons} (not used by the class since
% \pkg{fontawesome5} contains all the Creative Commons icons).
%
% \changes{1.1a}{2024-07-25}{Implementation: fix the generation of
% spacing in the \cs{ccby*} commands.}
% \begin{macro}{\ccby,\ccby*}
%   The command \cmd{\ccby} typesets the icons for the Attribution
%   licence: {\ccby}.
%    \begin{macrocode}
\newcommand*\ccby{\ccby@\@ifstar{~\faCopyright[regular]}\relax}
\def\CJS@fakern{\kern0.1em}
\def\ccby@{\mbox{%
    \faCreativeCommons\CJS@fakern
    \faCreativeCommonsBy\CJS@fakern}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\ccbysa,\ccbysa*}
%   The command \cmd{\ccbysa} typesets the icons for the
%   Attribution"-ShareAlike licence: {\ccbysa}.
%    \begin{macrocode}
\newcommand*\ccbysa{\ccbysa@\@ifstar{~\faCopyright[regular]}\relax}
\def\ccbysa@{\mbox{%
    \faCreativeCommons\CJS@fakern
    \faCreativeCommonsBy\CJS@fakern
    \faCreativeCommonsSa}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\ccbync,\ccbync*}
%   The command \cmd{\ccbync} typesets the icons for the
%   Attribution"-NonCommercial licence: {\ccbync}.
%    \begin{macrocode}
\newcommand*\ccbync{\ccbync@\@ifstar{~\faCopyright[regular]}\relax}
\def\ccbync@{\mbox{%
    \faCreativeCommons\CJS@fakern
    \faCreativeCommonsBy\CJS@fakern
    \faCreativeCommonsNc}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\ccbyncsa,\ccbyncsa*}
%   The command \cmd{\ccbyncsa} typesets the icons for the
%   Attribution"-NonCommercial"-ShareAlike licence:
%   {\ccbyncsa}.
%    \begin{macrocode}
\newcommand*\ccbyncsa{\ccbyncsa@\@ifstar{~\faCopyright[regular]}\relax}
\def\ccbyncsa@{\mbox{%
    \faCreativeCommons\CJS@fakern
    \faCreativeCommonsBy\CJS@fakern
    \faCreativeCommonsNc\CJS@fakern
    \faCreativeCommonsSa}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\ccbynd,\ccbynd*}
%   The command \cmd{\ccbynd} typesets the icons for the
%   Attribution"-NoDerivatives licence: {\ccbynd}.
%    \begin{macrocode}
\newcommand*\ccbynd{\ccbynd@\@ifstar{~\faCopyright[regular]}\relax}
\def\ccbynd@{\mbox{%
    \faCreativeCommons\CJS@fakern
    \faCreativeCommonsBy\CJS@fakern
    \faCreativeCommonsNd}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\ccbyncnd,\ccbyncnd*}
%   The command \cmd{\ccbyncnd} typesets the icons for the
%   Attribution"-NonCommercial"-NoDerivatives licence: {\ccbyncnd}.
%    \begin{macrocode}
\newcommand*\ccbyncnd{\ccbyncnd@\@ifstar{~\faCopyright[regular]}\relax}
\def\ccbyncnd@{\mbox{%
    \faCreativeCommons\CJS@fakern
    \faCreativeCommonsBy\CJS@fakern
    \faCreativeCommonsNc\CJS@fakern
    \faCreativeCommonsNd}}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Mathematics}
% \label{sec:implementation:mathematics}
%
% \begin{macro}{\Pr,\E,\Var,\Cov,\corr}
%   We provide a number of shortcuts for the more common mathematical
%   operators.
%    \begin{macrocode}
\let\Pr\relax
\DeclareMathOperator{\Pr}{P}
\DeclareMathOperator{\E}{E}
\DeclareMathOperator{\Var}{var}
\DeclareMathOperator{\Cov}{cov}
\DeclareMathOperator{\corr}{corr}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\prdist}
%   The command \cmd{\prdist} typesets the symbol or the name of a
%   probability distribution. With the newer {\TeX} engines that load
%   \pkg{unicode-math}, \cmd{\symcal} is recommended over
%   \cmdprint{\mathcal}.
%    \begin{macrocode}
\iftutex
  \let\prdist\symcal
\else
  \let\prdist\mathcal
\fi
%    \end{macrocode}
% \end{macro}
%
% \changes{1.1}{2024-07-13}{Implementation: simpler definition of
% \cs{mat} and \cs{matit} using \cs{let} instead of \cs{newcommand*}.}
% \begin{macro}{\mat,\matit,\trsp,\tr,\diag}
%   The class provides special commands to typeset matrix and vector
%   names, a carefully designed transpose symbol, and the most common
%   linear algebra operators.
%    \begin{macrocode}
\iftutex
  \let\mat\symbf
  \let\matit\symbfit
  \newcommand*\trsp{^{\mkern-1.5mu\symsfup{T}}}
\else
  \let\mat\mathbf
  \let\matit\mathbfit
  \newcommand*\trsp{^{\mkern-1.5mu\mathsf{T}}}
\fi
\DeclareMathOperator{\tr}{tr}
\DeclareMathOperator{\diag}{diag}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\Nset,\Zset,\Qset,\Rset,\Cset}
%   To ensure uniformity, the class provides commands to typeset the
%   sets of natural numbers, integers, rational numbers, real numbers,
%   and complex numbers.
%    \begin{macrocode}
\iftutex
  \newcommand*\Nset{\symbb{N}}
  \newcommand*\Zset{\symbb{Z}}
  \newcommand*\Qset{\symbb{Q}}
  \newcommand*\Rset{\symbb{R}}
  \newcommand*\Cset{\symbb{C}}
\else
  \newcommand*\Nset{\mathbb{N}}
  \newcommand*\Zset{\mathbb{Z}}
  \newcommand*\Qset{\mathbb{Q}}
  \newcommand*\Rset{\mathbb{R}}
  \newcommand*\Cset{\mathbb{C}}
\fi
%    \end{macrocode}
% \end{macro}
%
% The class defines a number of theorem-like environments using the
% \pkg{amsthm} styles.
%    \begin{macrocode}
\def\CJS@theoremname@en{Theorem}
\def\CJS@theoremname@fr{Théorème}
\def\CJS@lemmaname@en{Lemma}
\def\CJS@lemmaname@fr{Lemme}
\def\CJS@propositionname@en{Proposition}
\def\CJS@propositionname@fr{Proposition}
\def\CJS@corollaryname@en{Corollary}
\def\CJS@corollaryname@fr{Corollaire}
\def\CJS@definitionname@en{Definition}
\def\CJS@definitionname@fr{Définition}
\def\CJS@algorithmname@en{Algorithm}
\def\CJS@algorithmname@fr{Algorithme}
\def\CJS@remarkname@en{Remark}
\def\CJS@remarkname@fr{Remarque}
\theoremstyle{plain}
\newtheorem{theorem}{\iflanguage{french}{\CJS@theoremname@fr}{\CJS@theoremname@en}}
\newtheorem{lemma}{\iflanguage{french}{\CJS@lemmaname@fr}{\CJS@lemmaname@en}}
\newtheorem{proposition}{\iflanguage{french}{\CJS@propositionname@fr}{\CJS@propositionname@en}}
\newtheorem{corollary}{\iflanguage{french}{\CJS@corollaryname@fr}{\CJS@corollaryname@en}}
\theoremstyle{definition}
\newtheorem{definition}{\iflanguage{french}{\CJS@definitionname@fr}{\CJS@definitionname@en}}
\newtheorem{algorithm}{\iflanguage{french}{\CJS@algorithmname@fr}{\CJS@algorithmname@en}}
\theoremstyle{remark}
\newtheorem{remark}{\iflanguage{french}{\CJS@remarkname@fr}{\CJS@remarkname@en}}
%    \end{macrocode}
%
% \begin{macro}{\eqref}
%   The command \cmd{\eqref} from \pkg{amsmath} should be used to
%   refer to equations. We redefine it such that the parentheses are
%   part of the hyperlink, and that the command inherits
%   font changes, notably in titles.\footnote{%
%     With thanks to Heiko Oberdiek
%     (\url{https://tex.stackexchange.com/a/192754}) and David
%     Carlisle (\url{https://tex.stackexchange.com/a/631254}).}
%    \begin{macrocode}
\renewcommand*\eqref[1]{\hyperref[{#1}]{\textup{(\ref*{#1})}}}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Computer code and software}
% \label{sec:implementation:software}
%
% \changes{1.1a}{2024-07-25}{Implementation: prevent hyphenation in
% \cs{proglang} using a simple \cs{mbox}.}
% \begin{macro}{\proglang}
%   The command \cmd{\proglang} provides a means to uniformly typeset
%   the name of a software or programming language. The command also
%   prevents hyphenation within the name. The class also provides
%   shortcuts to the most common languages. Notice that the
%   \cmd{\Cpplang} case is specially crafted.
%    \begin{macrocode}
\newrobustcmd*\proglang[1]{\mbox{#1}}
\newcommand*\Rlang{\proglang{R}}
\newcommand*\SASlang{\proglang{SAS}}
\newcommand*\SPSSlang{\proglang{SPSS}}
\newcommand*\Statalang{\proglang{Stata}}
\newcommand*\Pylang{\proglang{Python}}
\newcommand*\Julialang{\proglang{Julia}}
\newcommand*\Clang{\proglang{C}}
\newcommand*\Cpplang{\proglang{C\CJS@plus\CJS@plus}}
\def\CJS@plus{%
  \ifx\f@family\sfdefault%
    \protect\hspace{-.04em}\protect\raisebox{-.125ex}{\larger+}%
  \else%
    \protect\hspace{-.03em}\protect\raisebox{.25ex}{\smaller+}%
  \fi}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\pkg}
%   The command \cmd{\pkg} typesets the name of software packages, extensions
%   or modules.
%    \begin{macrocode}
\let\pkg\textbf
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\code}
%   The following pretty smart implementation of \cmd{\code} allows
%   use of the active characters \code{_}, \code{~} and \code{$} as is
%   within the command. It is lifted from the class file of the
%   \emph{Journal of Statistical Software}.
%    \begin{macrocode}
\newcommand\code{\bgroup\@makeother\_\@makeother\~\@makeother\$\code@}
\def\code@#1{{\normalfont\ttfamily\hyphenchar\font=-1 #1}\egroup}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Appendices}
% \label{sec:implementation:appendices}
%
% \changes{1.3}{2025-08-23}{Implementation: set
% \cs{anappendixtrue} in the definition of \cs{appendix} like in the
% class \textsf{memoir}.}
% \begin{macro}{\appendix}
%   Given that appendices are sections in the class (instead of
%   chapters as with \class{memoir}), we redefine \cmd{\appendix}
%   based on the standard \class{article} class definition.
%    \begin{macrocode}
\renewcommand*\appendix{\par
  \setcounter{section}{0}
  \gdef\thesection{\@Alph\c@section}%
  \anappendixtrue}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Citations and references}
% \label{sec:implementation:references}
%
% Very little to do here, as most of the work on the citations front
% is handled by \pkg{natbib}. We loaded the package with the option
% \code{sectionbib} to obtain the list of references as a section, but
% \class{memoir} will use \cmd{\section} in such instances. We want an
% unnumbered section (yet showing in the virtual table of contents of
% the PDF). To achieve this efficiently, we redefine the internal
% command of \class{memoir}.
% \changes{1.1}{2024-07-02}{Implementation: add a
% \cs{addtocontentsline} command to the redefinition of
% \cs{@memb@bsec} to include the References section in the virtual
% table of contents of the PDF.}
%    \begin{macrocode}
\renewcommand{\@memb@bsec}{%
  \section*{\bibname}%
  \addcontentsline{toc}{section}{\bibname}%
  \prebibhook}
%    \end{macrocode}
%
% Furthermore, we need to redefine the title of the section, because
% \class{memoir} uses ``Bibliography'' by default. Due to the presence
% of \pkg{babel}, we have to use \cmd{\setlocalecaption} rather than
% redefine \cmd{\bibname} directly.
%    \begin{macrocode}
\setlocalecaption{english}{bib}{References}
\setlocalecaption{french}{bib}{Références}
%    \end{macrocode}
%
% The class uses its own bibliographic styles: {\CJSbsten} for
% articles in English, and {\CJSbstfr} for articles in French. For
% additional information on these styles, please refer to the
% documentation of the master bibliographic style in
% \code{cjs-rcs-merlin.pdf}.
%    \begin{macrocode}
\bibliographystyle{\iflanguage{french}{cjs-rcs-fr}{cjs-rcs-en}}
%    \end{macrocode}
%
% Finally, condense the bibliography. The default spacing between the
% entries defined by \pkg{natbib} is $\cmdprint{\itemsep} +
% \cmdprint{\parsep}$, which amounts to $2 \times \cmdprint{\itemsep}$.
% Reduce this to \cmdprint{\itemsep}.
%    \begin{macrocode}
\setlength{\bibsep}{\itemsep}
%    \end{macrocode}
%
% \subsection{Supplementary material}
%
% In order to easily distinguish them from their counterparts of the
% main article, sections, equations, theorems, figure, etc., are
% numbered with \makeatletter``\CJS@suppprefix''\makeatother in
% prefix. For document divisions, we only need to change
% \cmd{\thesection} as the lower level printing commands are based on
% the latter.
%    \begin{macrocode}
\def\CJS@suppprefix{S}          % required for the documentation
\ifCJS@supplement
  \renewcommand*\thesection{\CJS@suppprefix\arabic{section}}
  \renewcommand*\thefigure{\CJS@suppprefix\arabic{figure}}
  \renewcommand*\thetable{\CJS@suppprefix\arabic{table}}
  \renewcommand*\theequation{\CJS@suppprefix\arabic{equation}}
  \renewcommand*\thetheorem{\CJS@suppprefix\arabic{theorem}}
  \renewcommand*\thelemma{\CJS@suppprefix\arabic{lemma}}
  \renewcommand*\theproposition{\CJS@suppprefix\arabic{proposition}}
  \renewcommand*\thecorollary{\CJS@suppprefix\arabic{corollary}}
  \renewcommand*\thedefinition{\CJS@suppprefix\arabic{definition}}
  \renewcommand*\thealgorithm{\CJS@suppprefix\arabic{algorithm}}
  \renewcommand*\theremark{\CJS@suppprefix\arabic{remark}}
\fi
%    \end{macrocode}
%
% \subsection{Commands for the editors}
% \label{sec:implementation:editors}
%
% \begin{option}{final}
%   The class option \code{final} activates a number of sanity checks
%   on the document: the journal publication information (volume,
%   issue, year) is provided; the folio of the first page is set; the
%   article history (date received, date accepted) is provided. These
%   checks are conducted at the end of the document.
%    \begin{macrocode}
\AtEndDocument{%
  \ifCJS@final
    \ifdefempty{\CJS@vol}{%
      \ClassError{cjs-rcs-article}%
        {Unknown Journal volume}%
        {Use \string\jvol\space to specify the volume.}}{\relax}
    \ifdefempty{\CJS@issue}{%
      \ClassError{cjs-rcs-article}%
        {Unknown Journal issue}%
        {Use \string\jissue\space to specify the issue.}}{\relax}
    \ifdefempty{\CJS@year}{%
      \ClassError{cjs-rcs-article}%
        {Unknown Journal publication year}%
        {Use \string\jyear\space to specify the year.}}{\relax}
    \ifdefstring{\CJS@firstpage}{1}{%
      \ClassWarningNoLine{cjs-rcs-article}%
        {The first page number is not set.\MessageBreak%
         Using the default folio 1}}{\relax}
    \ifCJS@history\else
      \ClassError{cjs-rcs-article}%
        {Unknown article history}%
        {Use \string\received\space and \string\accepted\space to provide the article history.}
    \fi
  \fi}
%    \end{macrocode}
% \end{option}
%
% \begin{macro}{\jvol,\jissue,\jyear,\firstpage}
%   The editors use the commands \cmd{\jvol}, \cmd{\jissue},
%   \cmd{\jyear} and \cmd{\firstpage} to enter the publication
%   information of the journal.
%    \begin{macrocode}
\def\CJS@vol{}
\def\CJS@issue{}
\def\CJS@year{}
\def\CJS@firstpage{1}
\newcommand*\jvol[1]{\renewcommand*\CJS@vol{#1}}
\newcommand*\jissue[1]{\renewcommand*\CJS@issue{#1}}
\newcommand*\jyear[1]{\renewcommand*\CJS@year{#1}}
\newcommand*\firstpage[1]{\renewcommand*\CJS@firstpage{#1}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\received,\accepted}
%   The article history---dates when the article was received and
%   accepted---is printed at the very end of the article when present.
%   Its treatment involves a number of steps.
%
%   First, the dates themselves are input in ISO format YYYY-MM-DD and
%   converted in language dependent strings using the package
%   \pkg{datetime2}. In English, we want to use the British format
%   without the ordinal for the day: 1 January 1970. In French, we
%   can simply rely on the default format.
%    \begin{macrocode}
\DTMlangsetup[en-GB]{ord=omit}
%    \end{macrocode}
%
%   Next, we need interface commands, a special kind of list to
%   display the information, and a macro to actually typeset the
%   history. Providing a \emph{received} date marks the article
%   history as present. The dates are saved and printed using commands
%   from \pkg{datetime2}.
%    \begin{macrocode}
\def\CJS@receivedname@en{Received}
\def\CJS@receivedname@fr{Reçu le}
\def\CJS@acceptedname@en{Accepted}
\def\CJS@acceptedname@fr{Accepté le}
\newcommand*\received[1]{\CJS@historytrue\DTMsavedate{received}{#1}}
\newcommand*\accepted[1]{\DTMsavedate{accepted}{#1}}
\newlist{CJS@historylist}{itemize*}{1}
\setlist[CJS@historylist]{%
  mode=unboxed,
  font=\sffamily,
  itemjoin={{ --- }},
  after={}}
\newcommand*\CJS@history{%
  \small\sffamily%
  \begin{CJS@historylist}
  \item[\iflanguage{french}{\CJS@receivedname@fr}{\CJS@receivedname@en}]
    \DTMusedate{received}%
  \DTMifsaveddate{accepted}{%
  \item[\iflanguage{french}{\CJS@acceptedname@fr}{\CJS@acceptedname@en}]
    \DTMusedate{accepted}}{\relax}%
  \end{CJS@historylist}\par}
%    \end{macrocode}
% \end{macro}
%
% \changes{1.1a}{2024-07-25}{Implementation: replace box registers
% \cs{@ne} and \cs{thr@@} by \cs{z@} and \cs{tw@}.}
% We also define a decorative element similar to the one used on the
% title page, only adapted for a single line content. To create a
% balanced element, we use the height of a letter with an ascender and
% the depth of the old-style number 4.
%    \begin{macrocode}
\newsavebox\CJS@historyornament
\setbox\CJS@historyornament=\vbox{%
  \setbox\z@=\vbox{\hbox{\firaoldstyle\small l4}}
  \setbox\tw@\hbox{\vrule \@width1.5pt\@height\ht\z@\@depth\dp\z@}
  \hbox{\textcolor{CJSpink}{\copy\tw@}\kern.75pt
        \textcolor{CJSred}{\copy\tw@}\kern.75pt
        \textcolor{CJSyellow}{\copy\tw@}\kern3pt}}
%    \end{macrocode}
%
% Finally, the history information, when present, is printed at the
% end of the article.
%    \begin{macrocode}
\def\CJS@historybox{
  \par\addvspace{2\baselineskip}\noindent%
  \smash{\box\CJS@historyornament \CJS@history}\par%
  \vspace*{40pt}}
\AtEndDocument{\ifCJS@journalinfo\ifCJS@history\CJS@historybox\fi\fi}
%    \end{macrocode}
% \end{macro}
%
% \changes{1.1}{2024-06-26}{Implementation: define the new command
% \cs{specialack}.}
% \begin{macro}{\specialack}
%   The command \cmd{\specialack} is the generic interface to give
%   special acknowledgement on the title page. The command inserts its
%   first argument in the list of authors, and its second argument at
%   the bottom of the title page, with the licensing information. Each
%   argument may be empty, in which case the corresponding information
%   is not displayed.
%    \begin{macrocode}
\def\CJS@specialackstatement{}
\newcommand*\specialack[2]{%
  \ifstrempty{#1}{}{%
      \author{#1\CJS@specialackmark}}
  \ifstrempty{#2}{}{%
      \CJS@specialacktrue
      \renewcommand*\CJS@specialackstatement{\CJS@specialackmark\,#2\medskip\newline}}}
%    \end{macrocode}
% \end{macro}
%
% \changes{1.1}{2024-06-26}{Implementation: define the new command
% \cs{specialackmark}.}
% \begin{macro}{\specialackmark}
%   The command \cmd{\specialackmark} changes the footnote marker used
%   by \cmd{\specialack} from its default definition.
%    \begin{macrocode}
\def\CJS@specialackmark{\textsuperscript{\ensuremath{*}}}
\newcommand*\specialackmark[1]{%
  \renewcommand*\CJS@specialackmark{#1}}
%    \end{macrocode}
% \end{macro}
%
%</class>
% ^^A <<<<< End of the code of the class
%
% ^^A Change notes for the templates must appear before \Finale
% \changes{2.0}{2026-02-23}{Templates: delete the statements
% that the contents of the environments \texttt{acknowledgements} and
% \texttt{funding} are not displayed in \texttt{review} mode.}
% \changes{1.3}{2025-08-26}{Templates: add a statement for each
% of the environments \texttt{supplement}, \texttt{sharing},
% \texttt{acknowledgements} and \texttt{funding} that their
% content is displayed by the command \cs{makebackmatter} (except,
% for the last two, in \texttt{review} mode).}
% \changes{1.3}{2025-09-09}{Templates: capitalize all instances of
% mandatory/obligatoire.}
% \changes{1.2}{2024-11-06}{Templates: enhance the templates to
% provide more comments and sample code for various structures
% commonly used in articles.}
% \changes{1.1}{2024-01-23}{Templates: revise the description of the
% \texttt{sharing} environment.}
% \changes{0.93}{2023-11-07}{Templates: fix a missing closing brace in
% \cs{author} commands.}
% \Finale
%
% \iffalse
% ^^A English and French templates
%<*template>
%<en>%% ARTICLE TEMPLATE FOR THE CANADIAN JOURNAL OF STATISTICS
%<fr>%% GABARIT D'ARTICLE POUR LA REVUE CANADIENNE DE STATISTIQUE
%%
%<en>%% Please refer to the CJS author guidelines for general writing
%<en>%% instructions, and to the documentation of the class cjs-rcs-article
%<en>%% for a detailed description of the class.
%<fr>%% Consultez les directives pour les auteurs de la RCS pour la
%<fr>%% rédaction générale et la documentation de la classe cjs-rcs-article
%<fr>%% pour une description détaillée de la classe.
%%
%<en>%% [Do not hesitate to delete the comments once read.]
%<fr>%% [N'hésitez pas à supprimer les commentaires après les avoir lus.]
%%
%<en>%% Class declaration for an article in English. Submit your manuscript
%<en>%% with the 'review' option. Remove the option to prepare the final
%<en>%% version accepted for publication.
%<fr>%% Déclaration de la classe pour un article en français. Vous devez
%<fr>%% soumettre votre manuscript avec l'option 'review'. Supprimez
%<fr>%% l'option seulement une fois que votre article aura été accepté pour
%<fr>%% publication.
%<en>\documentclass[french,english,review]{cjs-rcs-article}
%<fr>\documentclass[english,french,review]{cjs-rcs-article}
%<en>  %% Reserved commands for the journal editors. Leave untouched
%<en>  %% and commented out.
%<fr>  %% Commandes réservées aux éditeurs de La revue. Laisser en
%<fr>  %% commentaires sans les supprimer.
  % \jvol{00}
  % \jissue{00}
  % \jyear{YYYY}
  % \firstpage{1}
  % \received{YYYY-MM-DD}
  % \accepted{YYYY-MM-DD}
  % \licence{}

%<en>  %% Load additional packages here. Avoid loading unnecessary
%<en>  %% packages.
%<fr>  %% Chargez ici les éventuels paquetages additionnels. Utilisez
%<fr>  %% uniquement des paquetages absolument requis pour le manuscript.
  % \usepackage{}

%<en>  %% Information for the title page and back matter. Replace the text
%<en>  %% between < >. Delete the symbols < >.
%<fr>  %% Informations de la page de titre et des parties annexes.
%<fr>  %% Remplacez le texte entre < >. Supprimez les caractères < >.
  %%
%<en>  %% TITLE OF THE ARTICLE. The title should be concise and
%<en>  %% descriptive; it should not exceed two lines. Insert a line break
%<en>  %% manually in a long title using \\ (before determinants and
%<en>  %% prepositions). If the full title does not fit in the running
%<en>  %% head, provide a shorter version in the optional argument (between
%<en>  %% the square brackets [ ]).
%<fr>  %% TITRE DE L'ARTICLE. Utiliser un titre concis et descriptif; il ne
%<fr>  %% doit pas excéder deux lignes. Insérez les changements de ligne
%<fr>  %% manuellement avec \\ (avant les déterminants et prépositions). Si
%<fr>  %% le titre est trop long pour l'entête, fournissez une version
%<fr>  %% courte en argument optionnel (entre les crochets [ ]).
%<en>  \title{<Title of the article>}
%<fr>  \title{<Titre de l'article>}
%<en>  % \title[Short version of the title]{Example of a long title \\
%<en>  %   with manual line break}
%<fr>  % \title[Version courte du titre]{Ceci est un exemple de long titre \\
%<fr>  %   avec saut de ligne manuel}

%<en>  %% AUTHORS AND AFFILIATIONS. The identification of the authors uses
%<en>  %% a series of pairs of commands \author and \affil, one per author.
%<en>  %% Enter the name entirely in lowercase (except for leading capitals
%<en>  %% and initials). The surname must be given inside \surname. Use the
%<en>  %% optional argument to specify the ORCID iD, email address, and
%<en>  %% corresponding author status of the author.
%<fr>  %% AUTEURS ET AFFILIATIONS. L'identification des auteurs se fait
%<fr>  %% par des paires de commandes \author et \affil, une par auteur.
%<fr>  %% Saisissez le nom de l'auteur entièrement en minuscules (sauf pour
%<fr>  %% les premières lettres et les initiales). Placez le nom (de
%<fr>  %% famille) dans une commande \surname. L'argument optionnel permet
%<fr>  %% d'indiquer l'identifiant ORCID de l'auteur, son adresse courriel
%<fr>  %% et son statut d'auteur correspondant.
%<en>  \author[orcid=<id>, email=<email>, corresponding]
%<en>         {<Forename> \surname{<Surname>}}
%<en>  \affil{<Department, University, City, Country>}
%<fr>  \author[orcid=<id>, email=<courriel>, corresponding]
%<fr>         {<Prénom> \surname{<Nom>}}
%<fr>  \affil{<Département, Université, Ville, Pays>}
%<en>  % \author[orcid=<id>, email=<email>]
%<en>  %        {<Forename> \surname{<Surname>}}
%<en>  % \affil{<Department, University, City, Country>}
%<en>  % \author[orcid=<id>, email=<email>]
%<en>  %        {<Forename> \surname{<Surname>}}
%<en>  % \affil{<Department, University, City, Country>}
%<fr>  % \author[orcid=<id>, email=<courriel>]
%<fr>  %        {<Prénom> \surname{<Nom>}}
%<fr>  % \affil{<Département, Université, Ville, Pays>}
%<fr>  % \author[orcid=<id>, email=<courriel>]
%<fr>  %        {<Prénom> \surname{<Nom>}}
%<fr>  % \affil{<Département, Université, Ville, Pays>}

%<en>  %% (Optional - uncomment to use) If the list of authors does not fit
%<en>  %% in the article header, use the command \runningauthor to provide
%<en>  %% a shorter identification of the form "Surname et al.".
%<fr>  %% (Optionnel - décommenter pour utiliser) Si la liste des auteurs
%<fr>  %% est trop longue pour l'entête de l'article, utilisez la commande
%<fr>  %% \runningauthor pour fournir une identification plus courte de la
%<fr>  %% forme «Nom et collab.»
%<en>  % \runningauthor{<Surname> et al.}
%<fr>  % \runningauthor{<Nom> et collab.}

%<en>  %% ABSTRACTS. You must provide an English and a French abstract.
%<en>  %% The order is not important; they will be positioned on the title
%<en>  %% page automatically.
%<fr>  %% RÉSUMÉS. Vous devez fournir un résumé en français et un résumé en
%<fr>  %% anglais. L'ordre est sans importance; ils seront positionnés sur
%<fr>  %% la page de titre automatiquement.
  \begin{englishabstract}
    <Insert your English abstract here. The abstract should be concise
    (up to 20 lines long) and descriptive. Avoid symbols as much as
    possible. Formulas are strongly discouraged, and citations should
    be avoided.>
%<fr>    [Nous fournirons un résumé en anglais pour un article en français
%<fr>    aux auteurs qui ne sont pas en mesure de le rédiger eux-mêmes.]
  \end{englishabstract}

  \begin{frenchabstract}
    <Insérez le texte du résumé en français ici. Le résumé doit être
    concis (20 lignes ou moins) et descriptif. Évitez autant que
    possible les symboles. Les équations mathématiques sont fortement
    déconseillées et les citations sont à éviter.>
%<en>    [We will supply a French abstract for an article in English for
%<en>    those authors who can't prepare it themselves.]
  \end{frenchabstract}

%<en>  %% KEYWORDS. Provide a list of keywords in alphabetical order.
%<en>  %% Capitalize only the first keyword. Do not use any punctuation.
%<fr>  %% MOTS-CLÉS. Fournissez une liste de mots-clés en ordre
%<fr>  %% alphabétique. Seul le premier mot-clé doit débuter par une
%<fr>  %% majuscule. N'utilisez aucune ponctuation.
  \begin{keywords}
%<en>  \item <Keyword 1>
%<fr>  \item <Mot-clé 1>
%<en>  \item <keyword 2>
%<fr>  \item <mot-clé 2>
%<en>  \item <keyword 3>
%<fr>  \item <mot-clé 3>
  \end{keywords}

%<en>  %% MATHEMATICS SUBJECT CLASSIFICATION. Provide a MSC2020 subject
%<en>  %% classification for the article (see https://msc2020.org). This is
%<en>  %% usually split into primary and secondary keys. Separate keys by
%<en>  %% commas, but do not use any other punctuation.
%<fr>  %% CLASSIFICATION MATHÉMATIQUE. Fournissez la classification
%<fr>  %% mathématique par matières de l'article selon le classement
%<fr>  %% MSC2020 (https://msc2020.org). Celle-ci est habituellement
%<fr>  %% divisée en niveaux primaire et secondaire. Séparez les matières
%<fr>  %% par des virgules, sans aucune autre ponctuation.
  \begin{classification}
%<en>  \item[Primary] <key 1>, <key 2>
%<fr>  \item[Primaire] <rubrique 1>, <rubrique 2>
%<en>  \item[Secondary] <key 1>, <key 2>
%<fr>  \item[Secondaire] <rubrique 1>, <rubrique 2>
  \end{classification}

%<en>  %% SUPPLEMENTARY MATERIAL (MANDATORY if the article is accompanied
%<en>  %% by supplementary material - comment out if unused). List material
%<en>  %% available online. This material must be cited in the main
%<en>  %% article. This content is displayed by the \makebackmatter
%<en>  %% command.
%<fr>  %% MATÉRIEL ADDITIONNEL (OBLIGATOIRE si l'article est accompagné de
%<fr>  %% matériel additionnel - commenter si inutilisé). Fournissez la
%<fr>  %% liste du matériel additionnel disponible en ligne. Ce matériel
%<fr>  %% doit être cité dans l'article. Ce contenu est affiché par la
%<fr>  %% commande \makebackmatter.
  \begin{supplement}
%<en>    <Briefly describe the supplementary material.>
%<fr>    <Décrivez brièvement le matériel additionnel.>
  \end{supplement}

%<en>  %% DATA SHARING (MANDATORY). In accordance with the Expect Data
%<en>  %% Sharing editorial policy of Wiley, make a statement about the
%<en>  %% availability or absence of shared data. Provide a permanent link
%<en>  %% such as a DOI or URL. This content is displayed by the
%<en>  %% \makebackmatter command.
%<fr>  %% PARTAGE DES DONNÉES (OBLIGATOIRE). Conformément à la politique
%<fr>  %% éditoriale «Expect Data Sharing» de Wiley, vous devez indiquer
%<fr>  %% les conditions de partage des données de recherche, ou l'absence
%<fr>  %% de celles-ci, le cas échéant. Fournir un lien permanent, comme un
%<fr>  %% identificateur d'objets numériques (DOI) ou une adresse URL. Ce
%<fr>  %% contenu est affiché par la commande \makebackmatter.
  \begin{sharing}
%<en>    <Insert the statement about the availability or absence of shared
%<en>    data.>
%<fr>    <Précisez les conditions de partage des données de recherche, ou
%<fr>    encore leur absence, le cas échéant.>
  \end{sharing}

%<en>  %% ACKNOWLEDGEMENTS (optional - comment out if unused). Place all
%<en>  %% acknowledgements here. Avoid duplicating the contents of the
%<en>  %% funding information, below. This content is displayed by the
%<en>  %% \makebackmatter command.
%<fr>  %% REMERCIEMENTS (optionnel - commenter si inutilisé). Inscrivez vos
%<fr>  %% remerciements ici. Attention de ne pas répéter la rubrique de
%<fr>  %% financement de la recherche, ci-dessous. Ce contenu est affiché
%<fr>  %% par la commande \makebackmatter.
  \begin{acknowledgements}
%<en>    <Place all acknowledgements here.>
%<fr>    <Insérez vos remerciements ici.>
  \end{acknowledgements}

%<en>  %% FUNDING INFORMATION (optional - comment out if unused). Provide
%<en>  %% any funding information as free form text. Do not abbreviate the
%<en>  %% name of granting agencies. This content is displayed by the
%<en>  %% \makebackmatter command.
%<fr>  %% FINANCEMENT DE LA RECHERCHE (optionnel - commenter si inutilisé).
%<fr>  %% Inscrivez les informations sur le financement de la recherche
%<fr>  %% sous forme de texte libre. Indiquez le nom des agences de
%<fr>  %% financement au long. Ce contenu est affiché par la commande
%<fr>  %% \makebackmatter.
  \begin{funding}
%<en>    <Place your funding information here.>
%<fr>    <Inscrivez les informations sur le financement ici.>
  \end{funding}

\begin{document}

%<en>%% Title page (MANDATORY - do not delete the following line!)
%<fr>%% Page de titre (OBLIGATOIRE - ne supprimez pas la ligne suivante!)
%<en>\maketitle                      % typeset the title page
%<fr>\maketitle                      % composer la page de titre

%<en>%% Numbered introduction (MANDATORY)
%<fr>%% Introduction numérotée (OBLIGATOIRE)
\section{Introduction}
%<en>\label{sec:introduction}        % example of a section label
%<fr>\label{sec:introduction}        % exemple d'étiquette de section

%<en><Start the article by an introduction.>
%<fr><Débutez l'article par une introduction.>

%<en>%% Additional sections
%<fr>%% Sections additionnelles
%<en>\section{<Section title>}
%<fr>\section{<Titre de section>}

%<en><Use the LaTeX sectioning commands to divide the articles in sections,
%<en>subsections, subsubsections, etc. Write the titles in sentence style,
%<en>that is, with only a leading capital.>
%<fr><Utilisez les commandes LaTeX pour diviser en sections, sous-sections,
%<fr>sous-sous-sections, etc. Écrivez les titres avec uniquement une
%<fr>majuscule initiale.>

%% >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
%<en>%% This block contains sample code for various structures commonly
%<en>%% used in articles. Use at will, and delete anything you don't need.
%<fr>%% Ce bloc contient des exemples de déclarations pour diverses
%<fr>%% structures fréquemment employées dans des articles. Utilisez-les
%<fr>%% comme bon vous semble et supprimez ce qui est inutile.
%<en>\section{Sample code}
%<fr>\section{Exemples de déclarations}

%<en>%% Cross-references.
%<fr>%% Références croisées.
%<en>Here are two examples of cross-references: first to
%<en>\autoref{sec:introduction}, second to equation~\eqref{eq:continuity}.
%<fr>Voici deux exemples de références croisées: d'abord à la
%<fr>\autoref{sec:introduction}, puis à l'équation~\eqref{eq:continuity}.

%<en>%% Theorem-like constructs. See also the documentation of the package
%<en>%% amsthm.
%<fr>%% Environnements de type théorème. Consultez aussi la documentation
%<fr>%% du paquetage amsthm.
\begin{definition}
  \label{def:cdf}
%<en>  A distribution function $F$ of a real-valued random variable $X$ is
%<en>  given, for all $x \in \Rset$, by $F(x) = \Pr(X \leq x)$.
%<fr>  La fonction de répartition $F$ d'une variable aléatoire réelle $X$
%<fr>  est définie, pour tout $x \in \Rset$, comme $F(x) = \Pr(X \leq x)$.
\end{definition}

\begin{theorem}
  \label{thm:continuity}
%<en>  Let $F$ be a distribution function of a real-valued random variable
%<en>  as in \autoref{def:cdf}. Then $F$ is nondecreasing and continuous from
%<en>  the right and satisfies
%<fr>  Soit $F$ la fonction de répartition d'une variable aléatoire réelle
%<fr>  tel qu'à la \autoref{def:cdf}. Alors $F$ est non décroissante,
%<fr>  continue par la droite et elle satisfait
  \begin{equation}
    \label{eq:continuity}
    \lim_{x \to -\infty} F(x) = 0, \quad \lim_{x \to \infty} F(x) = 1.
  \end{equation}
\end{theorem}

\begin{lemma}
  \label{lem:continuity}
%<en>  A technical lemma needed to prove \autoref{thm:continuity}.
%<fr>  Un lemme qui permet de démontrer le \autoref{thm:continuity}.
\end{lemma}

\begin{proof}
%<en>  Here is the proof of \autoref{lem:continuity}.
%<fr>  La démonstration du \autoref{lem:continuity}.
\end{proof}

%<en>\begin{proof}[Proof of the continuity of $F$]
%<fr>\begin{proof}[Démonstration de la continuité de $F$]
%<en>  Here is the proof of \autoref{thm:continuity}.
%<fr>  Démonstration du \autoref{thm:continuity}.
\end{proof}

\begin{corollary}
%<en>  An important corollary to \autoref{thm:continuity}.
%<fr>  Un corollaire important du \autoref{thm:continuity}.
\end{corollary}

\begin{proposition}
  \label{prop:foobar}
%<en>  A result of lesser importance can be formulated as a proposition.
%<fr>  Un résultat de moindre importance peut être présenté sous forme de
%<fr>  proposition.
\end{proposition}

%<en>\begin{algorithm}[Euclid's algorithm]
%<fr>\begin{algorithm}[Algorithme d'Euclide]
  \label{algo:euclid}
%<en>  Find the greatest common divisor of two positive integers $m$
%<en>  and $n$ with, without loss of generality, $n < m$.
%<en>  \begin{enumerate}
%<en>  \item Divide $m$ by $n$ et let $r$ be the remainder. (We will have
%<en>    $0 \leq r < n$.)
%<en>  \item If $r = 0$, the algorithm terminates, the answer is $n$.
%<en>  \item Set $m \leftarrow n$, $n \leftarrow r$, ang go back to step 1.
%<en>    \qed
%<en>  \end{enumerate}
%<fr>  Calculer le plus grand commun diviseur de deux entiers positifs $m$
%<fr>  et $n$ avec, sans perte de généralité, $n < m$.
%<fr>  \begin{enumerate}
%<fr>  \item Diviser $m$ par $n$ et poser $r$ égal au reste de la division.
%<fr>    (Nous avons alors $0 \leq r < n$.)
%<fr>  \item Si $r = 0$, retourner la valeur $n$.
%<fr>  \item Poser $m \leftarrow n$, $n \leftarrow r$, puis retourner à
%<fr>    l'étape 1. \qed
%<fr>  \end{enumerate}
\end{algorithm}

\begin{remark}
%<en>  This version of \autoref{algo:euclid} is adapted from Knuth, D. E.,
%<en>  \emph{The Art of Computer Programming}, vol.~1, 1997.
%<fr>  Cette version de \autoref{algo:euclid} est adaptée de Knuth, D. E.,
%<fr>  \emph{The Art of Computer Programming}, vol.~1, 1997.
\end{remark}

%<en>%% Figure. The included image here comes from the package mwe and
%<en>%% should be available on your system.
%<fr>%% Figure. L'image est tirée du paquetage mwe; elle devrait être
%<fr>%% disponible sur votre système.
\begin{figure}
  \centering
  \includegraphics[width=0.4\linewidth]{example-grid-100x100pt}
%<en>  \caption{A sample figure}
%<fr>  \caption{Un exemple de figure}
  \label{fig:example-grid}
\end{figure}

%<en>This is a reference to \autoref{fig:example-grid}.
%<fr>Allons-y d'une référence à la \autoref{fig:example-grid}.

%<en>%% Table. The command \np (shortcut for \numprint) from the package
%<en>%% numprint automatically inserts the correct language-dependent
%<en>%% separator every three digits. If you need table footnotes, use the
%<en>%% package threeparttable (as recommended in the TeX FAQ entry
%<en>%% https://texfaq.org/FAQ-footintab).
%<fr>%% Tableau. La commande \np (raccourci de \numprint) du paquetage
%<fr>%% numprint ajoute automatiquement le séparateur approprié selon la
%<fr>%% langue à tous les groupes de trois chiffres. Le séparateur décimal
%<fr>%% en français est la virgule. Si vous devez inscrire des notes
%<fr>%% de contenu dans un tableau, utilisez le paquetage
%<fr>%% threeparttable (tel que recommandé dans l'entrée de la Foire
%<fr>%% aux questions de TeX https://texfaq.org/FAQ-footintab).
\begin{table}
%<en>  \caption{Top 10 countries for gross national publication
%<en>    (\textsc{gnp}) of research in statistics. The ranks are based on
%<en>    variable \textsc{pag}$^{\star}$.}
%<fr>  \caption{Liste des dix pays ayant la plus grande publication
%<fr>    intérieure brute (\textsc{gnp}) de recherche en statistique. Le
%<fr>    classement est effectué selon la variable \textsc{pag}$^{\star}$.}
  \label{tab:gnp}
  \centering
  \begin{tabular}{rlrrrrrr}
    \toprule
%<en>    Rank & Country & \textsc{pag}$^{\star}$ & \textsc{pag}
%<fr>    Rang & Pays & \textsc{pag}$^{\star}$ & \textsc{pag}
    & \textsc{art}$^{\star}$ & \textsc{art} \\
    \midrule
%<en>    1  & United States  & \np{109338} & \np{60369} & \np{7240} & \np{4061} \\
%<en>    2  & United Kingdom & \np{ 12597} & \np{ 7504} & \np{ 884} & \np{ 538} \\
%<en>    3  & Canada         & \np{ 12407} & \np{ 6837} & \np{ 909} & \np{ 516} \\
%<en>    4  & Australia      & \np{  7872} & \np{ 4261} & \np{ 578} & \np{ 323} \\
%<en>    5  & Germany        & \np{  6782} & \np{ 4500} & \np{ 456} & \np{ 306} \\
%<en>    6  & France         & \np{  3647} & \np{ 1843} & \np{ 261} & \np{ 129} \\
%<en>    7  & Japan          & \np{  2865} & \np{ 1880} & \np{ 241} & \np{ 163} \\
%<en>    8  & Netherlands    & \np{  2864} & \np{ 1702} & \np{ 191} & \np{ 116} \\
%<en>    9  & India          & \np{  2559} & \np{ 1395} & \np{ 275} & \np{ 151} \\
%<en>    10 & Israel         & \np{  2097} & \np{ 1160} & \np{ 148} & \np{  83} \\
%<fr>    1  & États-Unis     & \np{109338} & \np{60369} & \np{7240} & \np{4061} \\
%<fr>    2  & Royaume-Uni    & \np{ 12597} & \np{ 7504} & \np{ 884} & \np{ 538} \\
%<fr>    4  & Australie      & \np{  7872} & \np{ 4261} & \np{ 578} & \np{ 323} \\
%<fr>    5  & Allemagne      & \np{  6782} & \np{ 4500} & \np{ 456} & \np{ 306} \\
%<fr>    7  & Japon          & \np{  2865} & \np{ 1880} & \np{ 241} & \np{ 163} \\
%<fr>    8  & Pays-Bas       & \np{  2864} & \np{ 1702} & \np{ 191} & \np{ 116} \\
%<fr>    9  & Inde           & \np{  2559} & \np{ 1395} & \np{ 275} & \np{ 151} \\
%<fr>    10 & Israël         & \np{  2097} & \np{ 1160} & \np{ 148} & \np{  83} \\
    \bottomrule
  \end{tabular}
\end{table}

%<en>This is a reference to \autoref{tab:gnp}.
%<fr>Voici une référence au \autoref{tab:gnp}.
%% <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

%% Conclusion (optional - comment out if unused)
\section{Conclusion}

%<en><You may end your article with a brief conclusion, but only if it
%<en>contains new material. There is no need to reiterate the content of
%<en>your paper.>
%<fr><Vous pouvez terminer votre article avec une conclusion dans la mesure
%<fr>où celle-ci propose quelque chose de nouveau. Il est inutile d'inclure
%<fr>une conclusion qui ne fait que répéter le contenu de l'article.>

%<en>%% Back matter (MANDATORY - do not delete the following line!)
%<fr>%% Parties annexes (OBLIGATOIRE - ne supprimez pas la ligne suivante!)
%<en>\makebackmatter                 % typeset the back matter
%<fr>\makebackmatter                 % composer les parties annexes

%<en>%% Appendices (optional - comment out if unused)
%<fr>%% Annexes (optionnel - commenter si inutilisé)
%<en>\appendix                       % start of appendices
%<fr>\appendix                       % début des annexes

%<en>\section{<Appendix title>}
%<fr>\section{<Titre de l'annexe>}

%<en><Appendices are reserved for proofs and longer mathematical
%<en>arguments. All appendices must be cited in the main article.>
%<fr><Les annexes sont dévolues aux démontrations de théorèmes ou autres
%<fr>longs développements mathématiques. Vous devez citer les annexes dans
%<fr>l'article.>

%<en>%% List of references. Cite using the commands of the natbib package.
%<en>%% Insert the filenames of the bibliography files (.bib files) inside
%<en>%% the command \bibliography, without the extension and separated by
%<en>%% commas.
%<fr>%% Liste des références. Citez avec les commandes du paquetage natbib.
%<fr>%% Insérez les noms des bases de données bibliographiques (fichiers
%<fr>%% .bib) dans la commande \bibliography, sans extension et séparés
%<fr>%% par des virgules.
\bibliography{}

\end{document}
%</template>
% \fi
