%% LaTeX package xassoccnt - version 2.0 (2021/11/21 -- 12:14:58)
%% Example file for periodic counters file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
%% Copyright (c) 2016 -- 2021 by Dr. Christian Hupfer <>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%%   http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
%%
%%
%% This work has the LPPL maintenance status `unmaintained`
%%
%%

\documentclass{article}

\usepackage{xassoccnt}

\usepackage{blindtext}

\usepackage{pgffor}

\DeclarePeriodicCounter{section}{10}

\newcounter{foocntr}

\begin{document}


\setcounter{foocntr}{3}% 
\AddPeriodicCounter{foocntr}{8}% 

Value of foocntr is: \thefoocntr  % Should be 3

\addtocounter{foocntr}{20} % Is it 23? No, it is 23 % 8 = 7
Value of foocntr is \thefoocntr\ now! 

Adding a value of 4 again: 
\addtocounter{foocntr}{4} % Is it 11? No, it is 11 % 8 = 3
Value of foocntr is \thefoocntr\ now! 

Now prevent the wrapping
\addtocounter{foocntr}{10}[wrap=false] % Is it 13? Yes, it is, since wrapping is prevented. 
Value of foocntr is \thefoocntr\ now! 



\foreach \x in {1,...,22} {%
  \section{My nice section \x}
}

\clearpage

\ChangePeriodicCounterCondition[reset=false]{section}{5}%

\foreach \x in {1,...,22} {%
  \section{My nice section \x}
}
\clearpage

\ChangePeriodicCounterCondition{section}{7}%

\foreach \x in {1,...,22} {%
  \section{My nice section \x}
}


\clearpage

Now removing all periodic counters, but don't reset them
\RemoveAllPeriodicCounters[reset=false]%

\foreach \x in {1,...,22} {%
  \section{Section after removing  periodic counters \x}
}



\end{document}