  % Handle batch mode
  % to overcome problems with too many open files
  \let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}
  % Set document class depending on configuration
  \documentclass[twoside]{book}
  %% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package
  \usepackage{ifthen}
  \ifx\requestedLaTeXdate\undefined
    \usepackage{array}
  \else
    \usepackage{array}[=2016-10-06]
  \fi
  %%
  % Packages required by doxygen
  \usepackage{fixltx2e} % for \textsubscript
  \usepackage{doxygen}
  \usepackage{graphicx}
  \usepackage[utf8]{inputenc}
  \usepackage{makeidx}
  \PassOptionsToPackage{warn}{textcomp}
  \usepackage{textcomp}
  \usepackage[nointegrals]{wasysym}
  \usepackage{ifxetex}
  % NLS support packages
  % Define default fonts
  % Font selection
  \usepackage[T1]{fontenc}
  % set main and monospaced font
  \usepackage[scaled=.90]{helvet}
\usepackage{courier}
\renewcommand{\familydefault}{\sfdefault}
  \usepackage{sectsty}
  \allsectionsfont{%
    \fontseries{bc}\selectfont%
    \color{darkgray}%
  }
  \renewcommand{\DoxyLabelFont}{%
    \fontseries{bc}\selectfont%
    \color{darkgray}%
  }
  \newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
   % Arguments of doxygenemoji:
   % 1) ':<text>:' form of the emoji, already LaTeX-escaped
   % 2) file with the name of the emoji without the .png extension
   % in case image exist use this otherwise use the ':<text>:' form
   \newcommand{\doxygenemoji}[2]{%
     \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}%
   }
  % Page & text layout
  \usepackage{geometry}
  \geometry{%
    a4paper,%
    top=2.5cm,%
    bottom=2.5cm,%
    left=2.5cm,%
    right=2.5cm%
  }
  % Allow a bit of overflow to go unnoticed by other means
  \tolerance=750
  \hfuzz=15pt
  \hbadness=750
  \setlength{\emergencystretch}{15pt}
  \setlength{\parindent}{0cm}
  \newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
  \newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
  \doxynormalparskip
  % Redefine paragraph/subparagraph environments, using sectsty fonts
  \makeatletter
  \renewcommand{\paragraph}{%
    \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
      \normalfont\normalsize\bfseries\SS@parafont%
    }%
  }
  \renewcommand{\subparagraph}{%
    \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
      \normalfont\normalsize\bfseries\SS@subparafont%
    }%
  }
  \makeatother
  \makeatletter
  \newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
  \makeatother
  % Headers & footers
  \usepackage{fancyhdr}
  \pagestyle{fancyplain}
  \renewcommand{\footrulewidth}{0.4pt}
  \fancypagestyle{fancyplain}{
    \fancyhf{}
    \fancyhead[LE, RO]{\bfseries\thepage}
    \fancyhead[LO]{\bfseries\rightmark}
    \fancyhead[RE]{\bfseries\leftmark}
    \fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
  }
  \fancypagestyle{plain}{
    \fancyhf{}
    \fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
    \renewcommand{\headrulewidth}{0pt}
  }
  \pagestyle{fancyplain}
  \renewcommand{\chaptermark}[1]{%
    \markboth{#1}{}%
  }
  \renewcommand{\sectionmark}[1]{%
    \markright{\thesection\ #1}%
  }
  % ToC, LoF, LoT, bibliography, and index
  % Indices & bibliography
  \usepackage{natbib}
  \usepackage[titles]{tocloft}
  \setcounter{tocdepth}{3}
  \setcounter{secnumdepth}{5}
  % creating indexes
  \makeindex
  \usepackage{newunicodechar}
  \newunicodechar{⁻}{${}^{-}$}% Superscript minus
  \newunicodechar{²}{${}^{2}$}% Superscript two
  \newunicodechar{³}{${}^{3}$}% Superscript three
  % Hyperlinks
  % Custom commands used by the header
  % Custom commands
  \newcommand{\clearemptydoublepage}{%
    \newpage{\pagestyle{empty}\cleardoublepage}%
  }
  % caption style definition
  \usepackage{caption}
  \captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
  % in page table of contents
  \usepackage{etoc}
  \etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
  % prevent numbers overlap the titles in toc
  \renewcommand{\numberline}[1]{#1~}
% End of preamble, now comes the document contents
%===== C O N T E N T S =====
\begin{document}
  \raggedbottom
  % Titlepage & ToC
  \pagenumbering{alph}
  \begin{titlepage}
  \vspace*{7cm}
  \begin{center}%
  {\Large libosmogsm}\\
  \vspace*{1cm}
  {\large Generated by Doxygen 1.9.4}\\
  \end{center}
  \end{titlepage}
  \clearemptydoublepage
  \pagenumbering{roman}
  \tableofcontents
  \clearemptydoublepage
  \pagenumbering{arabic}
%--- Begin generated contents ---
\chapter{libosmogsm Documentation}
\label{index}\input{index}
\chapter{Module Index}
\input{modules}
\chapter{Data Structure Index}
\input{annotated}
\chapter{File Index}
\input{files}
\chapter{Module Documentation}
\input{group__a5}
\input{group__oml}
\input{group__bitvec}
\input{group__gea}
\input{group__sms}
\input{group__gsm0502}
\input{group__gsm0808}
\input{group__gsm29205}
\input{group__gsup}
\input{group__lapdm}
\input{group__oap}
\input{group__gad}
\input{group__bsslap}
\input{group__bssmap__le}
\input{group__rlp}
\input{group__rsl}
\input{group__tlv}
\input{group__auth}
\input{group__kdf}
\input{group__crypto}
\input{group__gsm0408}
\input{group__ipa}
\chapter{Data Structure Documentation}
\input{structabis__nm__channel}
\input{structabis__nm__ipacc__att__bssgp__cfg}
\input{structabis__nm__ipacc__att__ns__cfg}
\input{structabis__nm__ipacc__att__rlc__cfg}
\input{structabis__nm__ipacc__att__rlc__cfg__2}
\input{structabis__nm__ipacc__att__rlc__cfg__3}
\input{structabis__nm__sw__desc}
\input{structabis__om__fom__hdr}
\input{structabis__om__hdr}
\input{structabis__om__obj__inst}
\input{structabis__rsl__cchan__hdr}
\input{unionabis__rsl__chan__nr}
\input{structabis__rsl__common__hdr}
\input{structabis__rsl__dchan__hdr}
\input{unionabis__rsl__link__id}
\input{structabis__rsl__osmo__rep__acch__cap}
\input{structabis__rsl__osmo__temp__ovp__acch__cap}
\input{structabis__rsl__rll__hdr}
\input{structbssap__le__pdu}
\input{structbsslap__pdu}
\input{structbsslap__reset}
\input{structbsslap__ta__layer3}
\input{structbsslap__ta__response}
\input{structbssmap__header}
\input{structbssmap__le__conn__oriented__info}
\input{structbssmap__le__location__type}
\input{structbssmap__le__pdu}
\input{structbssmap__le__perform__loc__req}
\input{structbssmap__le__perform__loc__resp}
\input{structcbsp__header}
\input{structdtap__header}
\input{structegprs__cps}
\input{structfn__remap__table}
\input{uniongad__raw}
\input{structgad__raw__ell__arc}
\input{structgad__raw__ell__point}
\input{structgad__raw__ell__point__alt}
\input{structgad__raw__ell__point__alt__unc__ell}
\input{structgad__raw__ell__point__unc__circle}
\input{structgad__raw__ell__point__unc__ellipse}
\input{structgad__raw__ha__ell__point__alt__unc__ell}
\input{structgad__raw__ha__ell__point__unc__ell}
\input{structgad__raw__head}
\input{structgad__raw__polygon}
\input{structgan__cch__desc__ie}
\input{structgan__rc__csr__hdr}
\input{structgprs__cipher__impl}
\input{structgprs__cs__desc}
\input{structgprs__ra__id}
\input{structgprs__rlc__dl__header__egprs__1}
\input{structgprs__rlc__dl__header__egprs__2}
\input{structgprs__rlc__dl__header__egprs__3}
\input{structgprs__rlc__ul__header__egprs__1}
\input{structgprs__rlc__ul__header__egprs__2}
\input{structgprs__rlc__ul__header__egprs__3}
\input{structgsm0408__vgcs__ul__grant}
\input{structgsm0808__application__data}
\input{structgsm0808__cell__id}
\input{structgsm0808__cell__id__list}
\input{structgsm0808__cell__id__list2}
\input{structgsm0808__cell__id__list__segment}
\input{uniongsm0808__cell__id__u}
\input{structgsm0808__channel__type}
\input{structgsm0808__cipher__mode__command}
\input{structgsm0808__circuit__pool__list}
\input{structgsm0808__data__identity}
\input{structgsm0808__diagnostics}
\input{structgsm0808__encrypt__info}
\input{structgsm0808__group__callref}
\input{structgsm0808__handover__command}
\input{structgsm0808__handover__complete}
\input{structgsm0808__handover__failure}
\input{structgsm0808__handover__performed}
\input{structgsm0808__handover__request}
\input{structgsm0808__handover__request__ack}
\input{structgsm0808__handover__required}
\input{structgsm0808__handover__required__reject}
\input{structgsm0808__layer__3__information}
\input{structgsm0808__notification__data}
\input{structgsm0808__old__bss__to__new__bss__info}
\input{structgsm0808__perform__location__request}
\input{structgsm0808__perform__location__response}
\input{structgsm0808__priority}
\input{structgsm0808__sms__to__vgcs}
\input{structgsm0808__speech__codec}
\input{structgsm0808__speech__codec__list}
\input{structgsm0808__talker__identity}
\input{structgsm0808__uplink__app__data}
\input{structgsm0808__uplink__reject__cmd}
\input{structgsm0808__uplink__release__ind}
\input{structgsm0808__uplink__request}
\input{structgsm0808__uplink__request__ack}
\input{structgsm0808__uplink__request__cnf}
\input{structgsm0808__uplink__seized__cmd}
\input{structgsm0808__vgcs__feature__flags}
\input{structgsm0808__vgcs__vbs__area__cell__info}
\input{structgsm0808__vgcs__vbs__assign__fail}
\input{structgsm0808__vgcs__vbs__assign__req}
\input{structgsm0808__vgcs__vbs__assign__res}
\input{structgsm0808__vgcs__vbs__assign__stat}
\input{structgsm0808__vgcs__vbs__setup}
\input{structgsm0808__vgcs__vbs__setup__ack}
\input{structgsm23041__etws__primary__gsm}
\input{structgsm23041__msg__param__gsm}
\input{structgsm23041__msg__param__umts}
\input{structgsm29118__paging__req}
\input{structgsm29118__reset__msg}
\input{structgsm341__etws__message}
\input{structgsm341__ms__message}
\input{structgsm411__rp__hdr}
\input{structgsm411__smc__inst}
\input{structgsm411__smr__inst}
\input{structgsm412__block__type}
\input{structgsm412__sched__msg}
\input{structgsm414__close__mslot__loop__ack}
\input{structgsm414__close__mslot__loop__cmd}
\input{structgsm414__egprs__st__sb__loop__cmd}
\input{structgsm414__gprs__test__mode__cmd}
\input{structgsm48__act__pdp__ctx__req}
\input{structgsm48__add__ass}
\input{structgsm48__ass__cmd}
\input{structgsm48__ass__cpl}
\input{structgsm48__ass__fail}
\input{structgsm48__attach__ack}
\input{structgsm48__auth__ciph__req}
\input{structgsm48__auth__ciph__resp}
\input{structgsm48__auth__req}
\input{structgsm48__auth__resp}
\input{structgsm48__cell__desc}
\input{structgsm48__cell__options}
\input{structgsm48__cell__sel__par}
\input{structgsm48__chan__desc}
\input{structgsm48__chan__mode__modify}
\input{structgsm48__chan__rel}
\input{structgsm48__cip__mode__cmd}
\input{structgsm48__classmark1}
\input{structgsm48__classmark2}
\input{structgsm48__classmark3}
\input{structgsm48__cm__change}
\input{structgsm48__control__channel__descr}
\input{structgsm48__frq__redef}
\input{structgsm48__gprs__susp__req}
\input{structgsm48__hdr}
\input{structgsm48__hdr__sh}
\input{structgsm48__ho__cmd}
\input{structgsm48__ho__cpl}
\input{structgsm48__ho__fail}
\input{structgsm48__imm__ass}
\input{structgsm48__imm__ass__ext}
\input{structgsm48__imm__ass__rej}
\input{structgsm48__imsi__detach__ind}
\input{structgsm48__loc__area__id}
\input{structgsm48__loc__upd__req}
\input{structgsm48__meas__res}
\input{structgsm48__multi__rate__conf}
\input{structgsm48__notification__nch}
\input{structgsm48__pag__resp}
\input{structgsm48__pag__rsp}
\input{structgsm48__paging1}
\input{structgsm48__paging2}
\input{structgsm48__paging3}
\input{structgsm48__pdp__address}
\input{structgsm48__power__cmd}
\input{structgsm48__qos}
\input{structgsm48__ra__id}
\input{structgsm48__ra__upd__ack}
\input{structgsm48__rach__control}
\input{structgsm48__range__1024}
\input{structgsm48__range__128}
\input{structgsm48__range__256}
\input{structgsm48__range__512}
\input{structgsm48__req__ref}
\input{structgsm48__rr__status}
\input{structgsm48__service__request}
\input{structgsm48__start__time}
\input{structgsm48__sync__ind}
\input{structgsm48__system__information__type__1}
\input{structgsm48__system__information__type__10}
\input{structgsm48__system__information__type__13}
\input{structgsm48__system__information__type__2}
\input{structgsm48__system__information__type__2bis}
\input{structgsm48__system__information__type__2quater}
\input{structgsm48__system__information__type__2ter}
\input{structgsm48__system__information__type__3}
\input{structgsm48__system__information__type__4}
\input{structgsm48__system__information__type__5}
\input{structgsm48__system__information__type__5bis}
\input{structgsm48__system__information__type__5ter}
\input{structgsm48__system__information__type__6}
\input{structgsm48__system__information__type__header}
\input{structgsm48__talker__indication}
\input{structgsm48__uplink__release}
\input{structgsm48__var__bit}
\input{structgsm__freq__range}
\input{structgsm__meas__rep__unidir}
\input{structgsm__mncc__bearer__cap}
\input{structgsm__mncc__cause}
\input{structgsm__mncc__cccap}
\input{structgsm__mncc__facility}
\input{structgsm__mncc__number}
\input{structgsm__mncc__progress}
\input{structgsm__mncc__ssversion}
\input{structgsm__mncc__useruser}
\input{structgsm__rx__lev__qual}
\input{structgsm__sacch__l1__hdr}
\input{structgsm__sysinfo__freq}
\input{structgsm__time}
\input{structinfo__act__cnf__param}
\input{structinfo__act__req__param}
\input{structinfo__ciph__req__param}
\input{structinfo__meas__ind__param}
\input{structinfo__time__ind__param}
\input{structinfo__ulacc__req__param}
\input{structipac__preproc__ave__cfg}
\input{structipac__preproc__cfg}
\input{structipac__preproc__ho__candidates}
\input{structipac__preproc__ho__comp}
\input{structipac__preproc__ho__ctl__param}
\input{structipac__preproc__ho__thresh}
\input{structipac__preproc__ncell__dflts}
\input{structipac__preproc__pc__comp}
\input{structipac__preproc__pc__comp__field}
\input{structipac__preproc__pc__thresh}
\input{structipaccess__head}
\input{structipaccess__head__ext}
\input{structipaccess__unit}
\input{structiuup__ctrl__ack}
\input{structiuup__ctrl__error__event}
\input{structiuup__ctrl__init__hdr}
\input{structiuup__ctrl__init__rfci__hdr}
\input{structiuup__ctrl__init__tail}
\input{structiuup__ctrl__nack}
\input{structiuup__pdutype0__hdr}
\input{structiuup__pdutype14__hdr}
\input{structiuup__pdutype1__hdr}
\input{structlapdm__channel}
\input{structlapdm__datalink}
\input{structlapdm__entity}
\input{structlapdm__msg__ctx}
\input{structlcs__cause__ie}
\input{structmph__info__param}
\input{structnch__pos}
\input{structosmo__auth__impl}
\input{structosmo__auth__vector}
\input{structosmo__bssap__le__err}
\input{structosmo__bssap__le__header}
\input{structosmo__bsslap__err}
\input{structosmo__bssmap__le__err}
\input{structosmo__bssmap__le__lcs__qos}
\input{structosmo__cbsp__cell__ent}
\input{structosmo__cbsp__cell__list}
\input{structosmo__cbsp__content}
\input{structosmo__cbsp__decoded}
\input{structosmo__cbsp__error__ind}
\input{structosmo__cbsp__fail__ent}
\input{structosmo__cbsp__failure}
\input{structosmo__cbsp__keep__alive}
\input{structosmo__cbsp__keep__alive__complete}
\input{structosmo__cbsp__kill}
\input{structosmo__cbsp__kill__complete}
\input{structosmo__cbsp__kill__failure}
\input{structosmo__cbsp__load__query}
\input{structosmo__cbsp__load__query__complete}
\input{structosmo__cbsp__load__query__failure}
\input{structosmo__cbsp__loading__ent}
\input{structosmo__cbsp__loading__list}
\input{structosmo__cbsp__msg__status__query}
\input{structosmo__cbsp__msg__status__query__complete}
\input{structosmo__cbsp__msg__status__query__failure}
\input{structosmo__cbsp__num__compl__ent}
\input{structosmo__cbsp__num__compl__list}
\input{structosmo__cbsp__reset}
\input{structosmo__cbsp__reset__complete}
\input{structosmo__cbsp__reset__failure}
\input{structosmo__cbsp__restart}
\input{structosmo__cbsp__write__replace}
\input{structosmo__cbsp__write__replace__complete}
\input{structosmo__cbsp__write__replace__failure}
\input{structosmo__cell__global__id}
\input{structosmo__cell__global__id__ps}
\input{structosmo__earfcn__si2q}
\input{structosmo__eutran__cell__global__id}
\input{structosmo__gad}
\input{structosmo__gad__ell__arc}
\input{structosmo__gad__ell__point}
\input{structosmo__gad__ell__point__alt}
\input{structosmo__gad__ell__point__alt__unc__ell}
\input{structosmo__gad__ell__point__unc__circle}
\input{structosmo__gad__ell__point__unc__ellipse}
\input{structosmo__gad__err}
\input{structosmo__gad__ha__ell__point__alt__unc__ell}
\input{structosmo__gad__polygon}
\input{structosmo__gcr__parsed}
\input{structosmo__gprs__cell__options}
\input{structosmo__gprs__power__ctrl__pars}
\input{structosmo__gsm48__classmark}
\input{structosmo__gsm48__lsa__params}
\input{structosmo__gsm48__si13__info}
\input{structosmo__gsm48__si3__gprs__ind}
\input{structosmo__gsm48__si6__ro__info}
\input{structosmo__gsm48__si__dtm__support}
\input{structosmo__gsm48__si__gprs__ms__txpwr__max__ccch}
\input{structosmo__gsm48__si__pch__nch__info}
\input{structosmo__gsm48__si__power__offset}
\input{structosmo__gsm48__si__ro__info}
\input{structosmo__gsm48__si__selection__params}
\input{structosmo__gsm48__si__vbs__vgcs__options}
\input{structosmo__gsn__address}
\input{structosmo__gsup__an__apdu}
\input{structosmo__gsup__message}
\input{structosmo__gsup__pdp__info}
\input{structosmo__gummei}
\input{structosmo__guti}
\input{structosmo__iuup__instance}
\input{structosmo__iuup__rfci}
\input{structosmo__iuup__rnl__config}
\input{structosmo__iuup__rnl__config__timer}
\input{structosmo__iuup__rnl__data}
\input{structosmo__iuup__rnl__prim}
\input{structosmo__iuup__rnl__status}
\input{structosmo__iuup__tnl__prim}
\input{structosmo__lac__and__ci__id}
\input{structosmo__lcls}
\input{structosmo__location__area__id}
\input{structosmo__mme__id}
\input{structosmo__nri__range}
\input{structosmo__nri__ranges}
\input{structosmo__oap__client__config}
\input{structosmo__oap__client__state}
\input{structosmo__oap__message}
\input{structosmo__phsap__prim}
\input{structosmo__plmn__id}
\input{structosmo__preproc__ave__cfg}
\input{structosmo__preproc__ave__cfg__field}
\input{structosmo__preproc__pc__comp}
\input{structosmo__preproc__pc__thresh}
\input{structosmo__rlp__frame__decoded}
\input{structosmo__routing__area__id}
\input{structosmo__service__area__id}
\input{structosmo__shared__network__area__id}
\input{structosmo__sub__auth__data}
\input{structosmo__sub__auth__data2}
\input{structosmo__timer__nt}
\input{structosmo__tlv__prot__def}
\input{structosmo__tlv__prot__ie__def}
\input{structosmo__tlv__prot__msg__def}
\input{structosmo__tracking__area__id}
\input{structph__conn__ind__param}
\input{structph__data__param}
\input{structph__rach__ind__param}
\input{structph__rach__req__param}
\input{structph__tch__param}
\input{structrsl__ie__cb__cmd__type}
\input{structrsl__ie__chan__ident}
\input{structrsl__ie__chan__mode}
\input{structrsl__ie__nch__drx__info}
\input{structrsl__l1__info}
\input{structrsl__mrpci}
\input{structrxlev__stats}
\input{structsdp__firmware}
\input{structsdp__header__entry}
\input{structSHA1Context}
\input{structsha256__state}
\input{structsmcdatastate}
\input{structsmcdownstate}
\input{structsmrdatastate}
\input{structsmrdownstate}
\input{structss__request}
\input{structtlv__def}
\input{structtlv__definition}
\input{structtlv__p__entry}
\input{structtlv__parsed}
\input{structussd__request}
\chapter{File Documentation}
\input{auth_8h}
\input{auth_8h_source}
\input{gprs__cipher_8h}
\input{gprs__cipher_8h_source}
\input{kdf_8h}
\input{kdf_8h_source}
\input{utran__cipher_8h}
\input{utran__cipher_8h_source}
\input{a5_8h}
\input{a5_8h_source}
\input{abis__nm_8h}
\input{abis__nm_8h_source}
\input{apn_8h}
\input{apn_8h_source}
\input{bitvec__gsm_8h}
\input{bitvec__gsm_8h_source}
\input{bsslap_8h}
\input{bsslap_8h_source}
\input{bssmap__le_8h}
\input{bssmap__le_8h_source}
\input{bts__features_8h}
\input{bts__features_8h_source}
\input{cbsp_8h}
\input{cbsp_8h_source}
\input{comp128_8h}
\input{comp128_8h_source}
\input{comp128v23_8h}
\input{comp128v23_8h_source}
\input{gad_8h}
\input{gad_8h_source}
\input{gan_8h}
\input{gan_8h_source}
\input{gea_8h}
\input{gea_8h_source}
\input{gsm0341_8h}
\input{gsm0341_8h_source}
\input{gsm0411__smc_8h}
\input{gsm0411__smc_8h_source}
\input{gsm0411__smr_8h}
\input{gsm0411__smr_8h_source}
\input{gsm0411__utils_8h}
\input{gsm0411__utils_8h_source}
\input{gsm0480_8h}
\input{gsm0480_8h_source}
\input{gsm0502_8h}
\input{gsm0502_8h_source}
\input{gsm0503_8h}
\input{gsm0503_8h_source}
\input{gsm0808_8h}
\input{gsm0808_8h_source}
\input{gsm0808__lcs_8h}
\input{gsm0808__lcs_8h_source}
\input{gsm0808__utils_8h}
\input{gsm0808__utils_8h_source}
\input{gsm23003_8h}
\input{gsm23003_8h_source}
\input{gsm23236_8h}
\input{gsm23236_8h_source}
\input{gsm29118_8h}
\input{gsm29118_8h_source}
\input{gsm29205_8h}
\input{gsm29205_8h_source}
\input{gsm44021_8h}
\input{gsm44021_8h_source}
\input{gsm48_8h}
\input{gsm48_8h_source}
\input{gsm48__arfcn__range__encode_8h}
\input{gsm48__arfcn__range__encode_8h_source}
\input{gsm48__ie_8h}
\input{gsm48__ie_8h_source}
\input{gsm48__rest__octets_8h}
\input{gsm48__rest__octets_8h_source}
\input{gsm__utils_8h}
\input{gsm__utils_8h_source}
\input{gsup_8h}
\input{gsup_8h_source}
\input{gsup__sms_8h}
\input{gsup__sms_8h_source}
\input{i460__mux_8h}
\input{i460__mux_8h_source}
\input{ipa_8h}
\input{ipa_8h_source}
\input{iuup_8h}
\input{iuup_8h_source}
\input{kasumi_8h}
\input{kasumi_8h_source}
\input{l1sap_8h}
\input{l1sap_8h_source}
\input{lapd__core_8h}
\input{lapd__core_8h_source}
\input{lapdm_8h}
\input{lapdm_8h_source}
\input{meas__rep_8h}
\input{meas__rep_8h_source}
\input{mncc_8h}
\input{mncc_8h_source}
\input{oap_8h}
\input{oap_8h_source}
\input{oap__client_8h}
\input{oap__client_8h_source}
\input{prim_8h}
\input{prim_8h_source}
\input{gsm__03__40_8h}
\input{gsm__03__40_8h_source}
\input{gsm__03__41_8h}
\input{gsm__03__41_8h_source}
\input{gsm__04__08_8h}
\input{gsm__04__08_8h_source}
\input{gsm__04__08__gprs_8h}
\input{gsm__04__08__gprs_8h_source}
\input{gsm__04__11_8h}
\input{gsm__04__11_8h_source}
\input{gsm__04__12_8h}
\input{gsm__04__12_8h_source}
\input{gsm__04__14_8h}
\input{gsm__04__14_8h_source}
\input{gsm__04__80_8h}
\input{gsm__04__80_8h_source}
\input{gsm__08__08_8h}
\input{gsm__08__08_8h_source}
\input{gsm__08__58_8h}
\input{gsm__08__58_8h_source}
\input{gsm__09__02_8h}
\input{gsm__09__02_8h_source}
\input{gsm__12__21_8h}
\input{gsm__12__21_8h_source}
\input{gsm__23__003_8h}
\input{gsm__23__003_8h_source}
\input{gsm__23__032_8h}
\input{gsm__23__032_8h_source}
\input{gsm__23__041_8h}
\input{gsm__23__041_8h_source}
\input{gsm__25__415_8h}
\input{gsm__25__415_8h_source}
\input{gsm__29__118_8h}
\input{gsm__29__118_8h_source}
\input{gsm__44__004_8h}
\input{gsm__44__004_8h_source}
\input{gsm__44__060_8h}
\input{gsm__44__060_8h_source}
\input{gsm__44__068_8h}
\input{gsm__44__068_8h_source}
\input{gsm__44__318_8h}
\input{gsm__44__318_8h_source}
\input{gsm__48__049_8h}
\input{gsm__48__049_8h_source}
\input{gsm__48__071_8h}
\input{gsm__48__071_8h_source}
\input{gsm__49__031_8h}
\input{gsm__49__031_8h_source}
\input{ipaccess_8h}
\input{ipaccess_8h_source}
\input{smpp34__osmocom_8h}
\input{smpp34__osmocom_8h_source}
\input{rlp_8h}
\input{rlp_8h_source}
\input{rsl_8h}
\input{rsl_8h_source}
\input{rxlev__stat_8h}
\input{rxlev__stat_8h_source}
\input{sysinfo_8h}
\input{sysinfo_8h_source}
\input{tlv_8h}
\input{tlv_8h_source}
\input{a5_8c}
\input{abis__nm_8c}
\input{apn_8c}
\input{auth__comp128v1_8c}
\input{auth__comp128v23_8c}
\input{auth__core_8c}
\input{auth__milenage_8c}
\input{auth__tuak_8c}
\input{auth__xor_8c}
\input{auth__xor__2g_8c}
\input{bsslap_8c}
\input{bssmap__le_8c}
\input{bts__features_8c}
\input{cbsp_8c}
\input{comp128_8c}
\input{comp128v23_8c}
\input{gad_8c}
\input{gan_8c}
\input{gea_8c}
\input{gprs__cipher__core_8c}
\input{gprs__gea_8c}
\input{gprs__rlc_8c}
\input{gsm0341_8c}
\input{gsm0411__smc_8c}
\input{gsm0411__smr_8c}
\input{gsm0411__utils_8c}
\input{gsm0414_8c}
\input{gsm0480_8c}
\input{gsm0502_8c}
\input{gsm0503__conv_8c}
\input{gsm0808_8c}
\input{gsm0808__utils_8c}
\input{gsm23003_8c}
\input{gsm23236_8c}
\input{gsm29118_8c}
\input{gsm29205_8c}
\input{gsm44021_8c}
\input{gsm44068_8c}
\input{gsm48_8c}
\input{gsm48049_8c}
\input{gsm48__arfcn__range__encode_8c}
\input{gsm48__ie_8c}
\input{gsm48__rest__octets_8c}
\input{gsm__04__08__gprs_8c}
\input{gsm__utils_8c}
\input{gsup_8c}
\input{gsup__sms_8c}
\input{ipa_8c}
\input{iuup_8c}
\input{kasumi_8c}
\input{kdf_8c}
\input{sha1-internal_8c}
\input{sha1_8c}
\input{sha1_8h}
\input{sha1_8h_source}
\input{sha1__i_8h}
\input{sha1__i_8h_source}
\input{sha256-internal_8c}
\input{sha256_8c}
\input{sha256_8h}
\input{sha256_8h_source}
\input{sha256__i_8h}
\input{sha256__i_8h_source}
\input{lapdm_8c}
\input{aes-encblock_8c}
\input{aes-internal-enc_8c}
\input{aes-internal_8c}
\input{aes_8h}
\input{aes_8h_source}
\input{aes__i_8h}
\input{aes__i_8h_source}
\input{aes__wrap_8h}
\input{aes__wrap_8h_source}
\input{kdf_2common_8h}
\input{kdf_2common_8h_source}
\input{milenage_2common_8h}
\input{milenage_2common_8h_source}
\input{kdf_2crypto_8h}
\input{kdf_2crypto_8h_source}
\input{milenage_2crypto_8h}
\input{milenage_2crypto_8h_source}
\input{includes_8h}
\input{includes_8h_source}
\input{milenage_8c}
\input{milenage_8h}
\input{milenage_8h_source}
\input{mncc_8c}
\input{oap_8c}
\input{oap__client_8c}
\input{rlp_8c}
\input{rsl_8c}
\input{rxlev__stat_8c}
\input{sysinfo_8c}
\input{tlv__parser_8c}
\input{KeccakP-1600-3gpp_8c}
\input{KeccakP-1600-3gpp_8h}
\input{KeccakP-1600-3gpp_8h_source}
\input{tuak_8c}
\input{tuak_8h}
\input{tuak_8h_source}
%--- End generated contents ---
% Index
  \backmatter
  \newpage
  \phantomsection
  \clearemptydoublepage
  \addcontentsline{toc}{chapter}{\indexname}
  \printindex
% Required for some languages (in combination with latexdocumentpre from the header)
\end{document}
