mirror of
https://github.com/alexandrebobkov/CanadianPayroll.git
synced 2025-08-07 13:57:17 +00:00
rates 2025
This commit is contained in:
BIN
docs/build/doctrees/environment.pickle
vendored
BIN
docs/build/doctrees/environment.pickle
vendored
Binary file not shown.
BIN
docs/build/doctrees/rates_2025.doctree
vendored
BIN
docs/build/doctrees/rates_2025.doctree
vendored
Binary file not shown.
4
docs/build/html/.buildinfo
vendored
4
docs/build/html/.buildinfo
vendored
@@ -1,4 +0,0 @@
|
||||
# Sphinx build info version 1
|
||||
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: 66658998729e692494c3a76de7314435
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
3
docs/build/html/_sources/errata.rst.txt
vendored
3
docs/build/html/_sources/errata.rst.txt
vendored
@@ -1,3 +0,0 @@
|
||||
#######################
|
||||
Errors and Errata
|
||||
#######################
|
29
docs/build/html/_sources/index.rst.txt
vendored
29
docs/build/html/_sources/index.rst.txt
vendored
@@ -1,29 +0,0 @@
|
||||
.. Canadian Payroll Administration documentation master file, created by
|
||||
sphinx-quickstart on Fri Jun 20 18:50:25 2025.
|
||||
You can adapt this file completely to your liking, but it should at least
|
||||
contain the root `toctree` directive.
|
||||
|
||||
Canadian Payroll Administration documentation
|
||||
=============================================
|
||||
|
||||
.. program-output:: python --version
|
||||
|
||||
.. program-output:: python -c "print(2+3)"
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
:caption: Table of Contents:
|
||||
:numbered:
|
||||
|
||||
introduction
|
||||
payroll_accounting
|
||||
review_questions
|
||||
rates_2025
|
||||
references
|
||||
errata
|
||||
|
||||
Glossary
|
||||
=========
|
||||
|
||||
* :ref:`genindex`
|
||||
|
14
docs/build/html/_sources/introduction.rst.txt
vendored
14
docs/build/html/_sources/introduction.rst.txt
vendored
@@ -1,14 +0,0 @@
|
||||
############
|
||||
INTRODUCTION
|
||||
############
|
||||
|
||||
***********************
|
||||
Payroll Legal Framework
|
||||
***********************
|
||||
|
||||
The Canadian Payroll Administration system is designed to ensure compliance with the legal framework governing payroll in Canada. This includes adherence to federal and provincial regulations regarding employee compensation, deductions, and reporting requirements.
|
||||
The system is built to handle various payroll scenarios, including different employment types, tax calculations, and benefit deductions, while ensuring that all transactions are accurately recorded and reported in accordance with the law.
|
||||
|
||||
***************
|
||||
Network Diagram
|
||||
***************
|
@@ -1,42 +0,0 @@
|
||||
.. |trial_balance| replace:: :math:`\Sigma \text{ Total Debits} = \Sigma \text{ Total Credits}`
|
||||
|
||||
.. |accounting_equation| replace:: :math:`\text{Assets} = \text{Liabilities} + \text{Equity}`
|
||||
|
||||
##################
|
||||
Payroll Accounting
|
||||
##################
|
||||
|
||||
***************
|
||||
Journal Entries
|
||||
***************
|
||||
|
||||
Accounting Recap
|
||||
-----------------
|
||||
|
||||
.. centered:: |trial_balance|
|
||||
|
||||
.. centered:: |accounting_equation|
|
||||
|
||||
.. math:: Assets = Liabilities + Equity
|
||||
:label: AccountingEquation
|
||||
|
||||
Furthermore, we know that:
|
||||
|
||||
.. centered:: :math:`\text{Equity = Revenue - Expenses}`
|
||||
, which leads us to:
|
||||
|
||||
.. centered:: :math:`\text{Assets = Liabilities + (Revenues - Expenses)}`
|
||||
|
||||
Accounting equation :math:numref:`AccountingEquation`
|
||||
|
||||
Payroll accounting is a critical component of the Canadian Payroll Administration system. It involves the systematic recording, analysis, and reporting of payroll transactions to ensure that all financial aspects of employee compensation are accurately reflected in the organization's financial statements.
|
||||
Payroll accounting includes the management of employee wages, tax withholdings, benefit deductions, and other payroll-related expenses. The system is designed to automate these processes, ensuring accuracy and compliance with Canadian payroll regulations.
|
||||
|
||||
Journal Entries
|
||||
-----------------
|
||||
|
||||
Journal entries are a key part of payroll accounting, as they document the financial impact of payroll transactions on the organization's accounts. Each payroll run generates a series of journal entries that reflect the distribution of wages, taxes, and deductions across various accounts.
|
||||
These entries are essential for maintaining accurate financial records and ensuring that the organization's financial statements reflect the true cost of employee compensation. The Canadian Payroll Administration system automates the generation of these journal entries, reducing the risk of errors and ensuring compliance with accounting standards.
|
||||
|
||||
| DR Payroll Expenses $10,500.00
|
||||
| CR Payroll Payable $10,500.00
|
40
docs/build/html/_sources/rates_2025.rst.txt
vendored
40
docs/build/html/_sources/rates_2025.rst.txt
vendored
@@ -1,40 +0,0 @@
|
||||
######################
|
||||
RATES FOR 2025
|
||||
######################
|
||||
|
||||
CANADA / QUEBEC PENSION PLAN (QPP / CPP)
|
||||
------------------------------------------
|
||||
|
||||
.. csv-table:: CANADA / QUEBEC PENSION PLAN (QPP / CPP)
|
||||
:header: "Description", "CPP", "QPP"
|
||||
:widths: 130, 30, 30
|
||||
:align: left
|
||||
:file: rates/rates_cpp-qpp_2025.csv
|
||||
:delim: ,
|
||||
|
||||
CPP2 CONTRIBUTION RATES MAXIMUMS
|
||||
------------------------------------------
|
||||
|
||||
.. csv-table:: CPP2 Contribution Rates Maximums
|
||||
:header: "Description", "Ammount"
|
||||
:widths: 130, 30
|
||||
:align: left
|
||||
:file: rates/rates_cpp2_2025.csv
|
||||
:delim: ,
|
||||
|
||||
|
||||
.. comment
|
||||
"Yearly maximum pensionable earnings", "$66,600", "$66,600"
|
||||
"Annual maximum contributory earnings", "$66,600", "$66,600"
|
||||
"Annual maximum contribution", "$3,754.45", "$3,754.45"
|
||||
"Employee contribution rate", "5.95%", "5.95%"
|
||||
"Employer contribution rate", "5.95%", "5.95%"
|
||||
"Maximum pensionable earnings", "$66,600", "$66,600"
|
||||
"Basic exemption (Annual)", "$3,500", "$3,500"
|
||||
" Basic exemption (Monthly, 12)", "$291.67", "$291.67"
|
||||
" Basic exemption (Weekly, 52)", "$673.08", "$673.08"
|
||||
" Basic exemption (Weekly, 53)", "$634.91", "$634.91"
|
||||
" Basic exemption (Semi-monthly, 24)", "$1,250.00", "$1,250.00"
|
||||
" Basic exemption (Bi-weekly, 26)", "$1,346.15", "$1,346.15"
|
||||
"Maximum contribution", "$3,754.45", "$3,754.45"
|
||||
|
3
docs/build/html/_sources/references.rst.txt
vendored
3
docs/build/html/_sources/references.rst.txt
vendored
@@ -1,3 +0,0 @@
|
||||
##########
|
||||
REFERENCES
|
||||
##########
|
@@ -1,14 +0,0 @@
|
||||
==================
|
||||
REVIEW QUESTIONS
|
||||
==================
|
||||
|
||||
This section contains review questions for the material covered in the course. These questions are designed to test your understanding and help reinforce the concepts learned.
|
||||
|
||||
************************
|
||||
New Employee Information
|
||||
************************
|
||||
|
||||
Which one of the following is correct?
|
||||
a. Choice A
|
||||
b. Choice B
|
||||
c. Choice C
|
906
docs/build/html/_static/basic.css
vendored
906
docs/build/html/_static/basic.css
vendored
@@ -1,906 +0,0 @@
|
||||
/*
|
||||
* Sphinx stylesheet -- basic theme.
|
||||
*/
|
||||
|
||||
/* -- main layout ----------------------------------------------------------- */
|
||||
|
||||
div.clearer {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
div.section::after {
|
||||
display: block;
|
||||
content: '';
|
||||
clear: left;
|
||||
}
|
||||
|
||||
/* -- relbar ---------------------------------------------------------------- */
|
||||
|
||||
div.related {
|
||||
width: 100%;
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
div.related h3 {
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.related ul {
|
||||
margin: 0;
|
||||
padding: 0 0 0 10px;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
div.related li {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
div.related li.right {
|
||||
float: right;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
/* -- sidebar --------------------------------------------------------------- */
|
||||
|
||||
div.sphinxsidebarwrapper {
|
||||
padding: 10px 5px 0 10px;
|
||||
}
|
||||
|
||||
div.sphinxsidebar {
|
||||
float: left;
|
||||
width: 230px;
|
||||
margin-left: -100%;
|
||||
font-size: 90%;
|
||||
word-wrap: break-word;
|
||||
overflow-wrap : break-word;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul ul,
|
||||
div.sphinxsidebar ul.want-points {
|
||||
margin-left: 20px;
|
||||
list-style: square;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul ul {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
div.sphinxsidebar form {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
div.sphinxsidebar input {
|
||||
border: 1px solid #98dbcc;
|
||||
font-family: sans-serif;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
div.sphinxsidebar #searchbox form.search {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
div.sphinxsidebar #searchbox input[type="text"] {
|
||||
float: left;
|
||||
width: 80%;
|
||||
padding: 0.25em;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
div.sphinxsidebar #searchbox input[type="submit"] {
|
||||
float: left;
|
||||
width: 20%;
|
||||
border-left: none;
|
||||
padding: 0.25em;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
|
||||
img {
|
||||
border: 0;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
/* -- search page ----------------------------------------------------------- */
|
||||
|
||||
ul.search {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
ul.search li {
|
||||
padding: 5px 0;
|
||||
}
|
||||
|
||||
ul.search li a {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
ul.search li p.context {
|
||||
color: #888;
|
||||
margin: 2px 0 0 30px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
ul.keywordmatches li.goodmatch a {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* -- index page ------------------------------------------------------------ */
|
||||
|
||||
table.contentstable {
|
||||
width: 90%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
table.contentstable p.biglink {
|
||||
line-height: 150%;
|
||||
}
|
||||
|
||||
a.biglink {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
span.linkdescr {
|
||||
font-style: italic;
|
||||
padding-top: 5px;
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
/* -- general index --------------------------------------------------------- */
|
||||
|
||||
table.indextable {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
table.indextable td {
|
||||
text-align: left;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
table.indextable ul {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
table.indextable > tbody > tr > td > ul {
|
||||
padding-left: 0em;
|
||||
}
|
||||
|
||||
table.indextable tr.pcap {
|
||||
height: 10px;
|
||||
}
|
||||
|
||||
table.indextable tr.cap {
|
||||
margin-top: 10px;
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
|
||||
img.toggler {
|
||||
margin-right: 3px;
|
||||
margin-top: 3px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
div.modindex-jumpbox {
|
||||
border-top: 1px solid #ddd;
|
||||
border-bottom: 1px solid #ddd;
|
||||
margin: 1em 0 1em 0;
|
||||
padding: 0.4em;
|
||||
}
|
||||
|
||||
div.genindex-jumpbox {
|
||||
border-top: 1px solid #ddd;
|
||||
border-bottom: 1px solid #ddd;
|
||||
margin: 1em 0 1em 0;
|
||||
padding: 0.4em;
|
||||
}
|
||||
|
||||
/* -- domain module index --------------------------------------------------- */
|
||||
|
||||
table.modindextable td {
|
||||
padding: 2px;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
/* -- general body styles --------------------------------------------------- */
|
||||
|
||||
div.body {
|
||||
min-width: 360px;
|
||||
max-width: 800px;
|
||||
}
|
||||
|
||||
div.body p, div.body dd, div.body li, div.body blockquote {
|
||||
-moz-hyphens: auto;
|
||||
-ms-hyphens: auto;
|
||||
-webkit-hyphens: auto;
|
||||
hyphens: auto;
|
||||
}
|
||||
|
||||
a.headerlink {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #551A8B;
|
||||
}
|
||||
|
||||
h1:hover > a.headerlink,
|
||||
h2:hover > a.headerlink,
|
||||
h3:hover > a.headerlink,
|
||||
h4:hover > a.headerlink,
|
||||
h5:hover > a.headerlink,
|
||||
h6:hover > a.headerlink,
|
||||
dt:hover > a.headerlink,
|
||||
caption:hover > a.headerlink,
|
||||
p.caption:hover > a.headerlink,
|
||||
div.code-block-caption:hover > a.headerlink {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
div.body p.caption {
|
||||
text-align: inherit;
|
||||
}
|
||||
|
||||
div.body td {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.first {
|
||||
margin-top: 0 !important;
|
||||
}
|
||||
|
||||
p.rubric {
|
||||
margin-top: 30px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
img.align-left, figure.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
img.align-right, figure.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em;
|
||||
}
|
||||
|
||||
img.align-center, figure.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
img.align-default, figure.align-default, .figure.align-default {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.align-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.align-default {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.align-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* -- sidebars -------------------------------------------------------------- */
|
||||
|
||||
div.sidebar,
|
||||
aside.sidebar {
|
||||
margin: 0 0 0.5em 1em;
|
||||
border: 1px solid #ddb;
|
||||
padding: 7px;
|
||||
background-color: #ffe;
|
||||
width: 40%;
|
||||
float: right;
|
||||
clear: right;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
p.sidebar-title {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
nav.contents,
|
||||
aside.topic,
|
||||
div.admonition, div.topic, blockquote {
|
||||
clear: left;
|
||||
}
|
||||
|
||||
/* -- topics ---------------------------------------------------------------- */
|
||||
|
||||
nav.contents,
|
||||
aside.topic,
|
||||
div.topic {
|
||||
border: 1px solid #ccc;
|
||||
padding: 7px;
|
||||
margin: 10px 0 10px 0;
|
||||
}
|
||||
|
||||
p.topic-title {
|
||||
font-size: 1.1em;
|
||||
font-weight: bold;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/* -- admonitions ----------------------------------------------------------- */
|
||||
|
||||
div.admonition {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
div.admonition dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
p.admonition-title {
|
||||
margin: 0px 10px 5px 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
div.body p.centered {
|
||||
text-align: center;
|
||||
margin-top: 25px;
|
||||
}
|
||||
|
||||
/* -- content of sidebars/topics/admonitions -------------------------------- */
|
||||
|
||||
div.sidebar > :last-child,
|
||||
aside.sidebar > :last-child,
|
||||
nav.contents > :last-child,
|
||||
aside.topic > :last-child,
|
||||
div.topic > :last-child,
|
||||
div.admonition > :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
div.sidebar::after,
|
||||
aside.sidebar::after,
|
||||
nav.contents::after,
|
||||
aside.topic::after,
|
||||
div.topic::after,
|
||||
div.admonition::after,
|
||||
blockquote::after {
|
||||
display: block;
|
||||
content: '';
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/* -- tables ---------------------------------------------------------------- */
|
||||
|
||||
table.docutils {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
border: 0;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
table.align-center {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
table.align-default {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
table caption span.caption-number {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
table caption span.caption-text {
|
||||
}
|
||||
|
||||
table.docutils td, table.docutils th {
|
||||
padding: 1px 8px 1px 5px;
|
||||
border-top: 0;
|
||||
border-left: 0;
|
||||
border-right: 0;
|
||||
border-bottom: 1px solid #aaa;
|
||||
}
|
||||
|
||||
th {
|
||||
text-align: left;
|
||||
padding-right: 5px;
|
||||
}
|
||||
|
||||
table.citation {
|
||||
border-left: solid 1px gray;
|
||||
margin-left: 1px;
|
||||
}
|
||||
|
||||
table.citation td {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
th > :first-child,
|
||||
td > :first-child {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
th > :last-child,
|
||||
td > :last-child {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
/* -- figures --------------------------------------------------------------- */
|
||||
|
||||
div.figure, figure {
|
||||
margin: 0.5em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
div.figure p.caption, figcaption {
|
||||
padding: 0.3em;
|
||||
}
|
||||
|
||||
div.figure p.caption span.caption-number,
|
||||
figcaption span.caption-number {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
div.figure p.caption span.caption-text,
|
||||
figcaption span.caption-text {
|
||||
}
|
||||
|
||||
/* -- field list styles ----------------------------------------------------- */
|
||||
|
||||
table.field-list td, table.field-list th {
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
.field-list ul {
|
||||
margin: 0;
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
.field-list p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.field-name {
|
||||
-moz-hyphens: manual;
|
||||
-ms-hyphens: manual;
|
||||
-webkit-hyphens: manual;
|
||||
hyphens: manual;
|
||||
}
|
||||
|
||||
/* -- hlist styles ---------------------------------------------------------- */
|
||||
|
||||
table.hlist {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
table.hlist td {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
/* -- object description styles --------------------------------------------- */
|
||||
|
||||
.sig {
|
||||
font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
|
||||
}
|
||||
|
||||
.sig-name, code.descname {
|
||||
background-color: transparent;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.sig-name {
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
code.descname {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
.sig-prename, code.descclassname {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.optional {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
.sig-paren {
|
||||
font-size: larger;
|
||||
}
|
||||
|
||||
.sig-param.n {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/* C++ specific styling */
|
||||
|
||||
.sig-inline.c-texpr,
|
||||
.sig-inline.cpp-texpr {
|
||||
font-family: unset;
|
||||
}
|
||||
|
||||
.sig.c .k, .sig.c .kt,
|
||||
.sig.cpp .k, .sig.cpp .kt {
|
||||
color: #0033B3;
|
||||
}
|
||||
|
||||
.sig.c .m,
|
||||
.sig.cpp .m {
|
||||
color: #1750EB;
|
||||
}
|
||||
|
||||
.sig.c .s, .sig.c .sc,
|
||||
.sig.cpp .s, .sig.cpp .sc {
|
||||
color: #067D17;
|
||||
}
|
||||
|
||||
|
||||
/* -- other body styles ----------------------------------------------------- */
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal;
|
||||
}
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha;
|
||||
}
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha;
|
||||
}
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman;
|
||||
}
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman;
|
||||
}
|
||||
|
||||
:not(li) > ol > li:first-child > :first-child,
|
||||
:not(li) > ul > li:first-child > :first-child {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
:not(li) > ol > li:last-child > :last-child,
|
||||
:not(li) > ul > li:last-child > :last-child {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
ol.simple ol p,
|
||||
ol.simple ul p,
|
||||
ul.simple ol p,
|
||||
ul.simple ul p {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
ol.simple > li:not(:first-child) > p,
|
||||
ul.simple > li:not(:first-child) > p {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
ol.simple p,
|
||||
ul.simple p {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
aside.footnote > span,
|
||||
div.citation > span {
|
||||
float: left;
|
||||
}
|
||||
aside.footnote > span:last-of-type,
|
||||
div.citation > span:last-of-type {
|
||||
padding-right: 0.5em;
|
||||
}
|
||||
aside.footnote > p {
|
||||
margin-left: 2em;
|
||||
}
|
||||
div.citation > p {
|
||||
margin-left: 4em;
|
||||
}
|
||||
aside.footnote > p:last-of-type,
|
||||
div.citation > p:last-of-type {
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
aside.footnote > p:last-of-type:after,
|
||||
div.citation > p:last-of-type:after {
|
||||
content: "";
|
||||
clear: both;
|
||||
}
|
||||
|
||||
dl.field-list {
|
||||
display: grid;
|
||||
grid-template-columns: fit-content(30%) auto;
|
||||
}
|
||||
|
||||
dl.field-list > dt {
|
||||
font-weight: bold;
|
||||
word-break: break-word;
|
||||
padding-left: 0.5em;
|
||||
padding-right: 5px;
|
||||
}
|
||||
|
||||
dl.field-list > dd {
|
||||
padding-left: 0.5em;
|
||||
margin-top: 0em;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
dl {
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
dd > :first-child {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
dd ul, dd table {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
dd {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 10px;
|
||||
margin-left: 30px;
|
||||
}
|
||||
|
||||
.sig dd {
|
||||
margin-top: 0px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.sig dl {
|
||||
margin-top: 0px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
dl > dd:last-child,
|
||||
dl > dd:last-child > :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
dt:target, span.highlighted {
|
||||
background-color: #fbe54e;
|
||||
}
|
||||
|
||||
rect.highlighted {
|
||||
fill: #fbe54e;
|
||||
}
|
||||
|
||||
dl.glossary dt {
|
||||
font-weight: bold;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
.versionmodified {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.system-message {
|
||||
background-color: #fda;
|
||||
padding: 5px;
|
||||
border: 3px solid red;
|
||||
}
|
||||
|
||||
.footnote:target {
|
||||
background-color: #ffa;
|
||||
}
|
||||
|
||||
.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
.line-block .line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em;
|
||||
}
|
||||
|
||||
.guilabel, .menuselection {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
.accelerator {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.classifier {
|
||||
font-style: oblique;
|
||||
}
|
||||
|
||||
.classifier:before {
|
||||
font-style: normal;
|
||||
margin: 0 0.5em;
|
||||
content: ":";
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
abbr, acronym {
|
||||
border-bottom: dotted 1px;
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
/* -- code displays --------------------------------------------------------- */
|
||||
|
||||
pre {
|
||||
overflow: auto;
|
||||
overflow-y: hidden; /* fixes display issues on Chrome browsers */
|
||||
}
|
||||
|
||||
pre, div[class*="highlight-"] {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
span.pre {
|
||||
-moz-hyphens: none;
|
||||
-ms-hyphens: none;
|
||||
-webkit-hyphens: none;
|
||||
hyphens: none;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
div[class*="highlight-"] {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
td.linenos pre {
|
||||
border: 0;
|
||||
background-color: transparent;
|
||||
color: #aaa;
|
||||
}
|
||||
|
||||
table.highlighttable {
|
||||
display: block;
|
||||
}
|
||||
|
||||
table.highlighttable tbody {
|
||||
display: block;
|
||||
}
|
||||
|
||||
table.highlighttable tr {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
table.highlighttable td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
table.highlighttable td.linenos {
|
||||
padding-right: 0.5em;
|
||||
}
|
||||
|
||||
table.highlighttable td.code {
|
||||
flex: 1;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.highlight .hll {
|
||||
display: block;
|
||||
}
|
||||
|
||||
div.highlight pre,
|
||||
table.highlighttable pre {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div.code-block-caption + div {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
div.code-block-caption {
|
||||
margin-top: 1em;
|
||||
padding: 2px 5px;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
div.code-block-caption code {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table.highlighttable td.linenos,
|
||||
span.linenos,
|
||||
div.highlight span.gp { /* gp: Generic.Prompt */
|
||||
user-select: none;
|
||||
-webkit-user-select: text; /* Safari fallback only */
|
||||
-webkit-user-select: none; /* Chrome/Safari */
|
||||
-moz-user-select: none; /* Firefox */
|
||||
-ms-user-select: none; /* IE10+ */
|
||||
}
|
||||
|
||||
div.code-block-caption span.caption-number {
|
||||
padding: 0.1em 0.3em;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
div.code-block-caption span.caption-text {
|
||||
}
|
||||
|
||||
div.literal-block-wrapper {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
code.xref, a code {
|
||||
background-color: transparent;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.viewcode-link {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.viewcode-back {
|
||||
float: right;
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
div.viewcode-block:target {
|
||||
margin: -1px -10px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
/* -- math display ---------------------------------------------------------- */
|
||||
|
||||
img.math {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
div.body div.math p {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
span.eqno {
|
||||
float: right;
|
||||
}
|
||||
|
||||
span.eqno a.headerlink {
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
div.math:hover a.headerlink {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
/* -- printout stylesheet --------------------------------------------------- */
|
||||
|
||||
@media print {
|
||||
div.document,
|
||||
div.documentwrapper,
|
||||
div.bodywrapper {
|
||||
margin: 0 !important;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
div.sphinxsidebar,
|
||||
div.related,
|
||||
div.footer,
|
||||
#top-link {
|
||||
display: none;
|
||||
}
|
||||
}
|
262
docs/build/html/_static/classic.css
vendored
262
docs/build/html/_static/classic.css
vendored
@@ -1,262 +0,0 @@
|
||||
/*
|
||||
* Sphinx stylesheet -- classic theme.
|
||||
*/
|
||||
|
||||
@import url("basic.css");
|
||||
|
||||
/* -- page layout ----------------------------------------------------------- */
|
||||
|
||||
html {
|
||||
/* CSS hack for macOS's scrollbar (see #1125) */
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: sans-serif;
|
||||
font-size: 100%;
|
||||
background-color: #11303d;
|
||||
color: #000;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.document {
|
||||
display: flex;
|
||||
background-color: #1c4e63;
|
||||
}
|
||||
|
||||
div.documentwrapper {
|
||||
float: left;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
div.bodywrapper {
|
||||
margin: 0 0 0 230px;
|
||||
}
|
||||
|
||||
div.body {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
padding: 0 20px 30px 20px;
|
||||
}
|
||||
|
||||
div.footer {
|
||||
color: #ffffff;
|
||||
width: 100%;
|
||||
padding: 9px 0 9px 0;
|
||||
text-align: center;
|
||||
font-size: 75%;
|
||||
}
|
||||
|
||||
div.footer a {
|
||||
color: #ffffff;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
div.related {
|
||||
background-color: #133f52;
|
||||
line-height: 30px;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
div.related a {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
div.sphinxsidebar {
|
||||
}
|
||||
|
||||
div.sphinxsidebar h3 {
|
||||
font-family: 'Trebuchet MS', sans-serif;
|
||||
color: #ffffff;
|
||||
font-size: 1.4em;
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.sphinxsidebar h3 a {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
div.sphinxsidebar h4 {
|
||||
font-family: 'Trebuchet MS', sans-serif;
|
||||
color: #ffffff;
|
||||
font-size: 1.3em;
|
||||
font-weight: normal;
|
||||
margin: 5px 0 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.sphinxsidebar p {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
div.sphinxsidebar p.topless {
|
||||
margin: 5px 10px 10px 10px;
|
||||
}
|
||||
|
||||
div.sphinxsidebar ul {
|
||||
margin: 10px;
|
||||
padding: 0;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
div.sphinxsidebar a {
|
||||
color: #98dbcc;
|
||||
}
|
||||
|
||||
div.sphinxsidebar input {
|
||||
border: 1px solid #98dbcc;
|
||||
font-family: sans-serif;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* -- hyperlink styles ------------------------------------------------------ */
|
||||
|
||||
a {
|
||||
color: #355f7c;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #551a8b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* -- body styles ----------------------------------------------------------- */
|
||||
|
||||
div.body h1,
|
||||
div.body h2,
|
||||
div.body h3,
|
||||
div.body h4,
|
||||
div.body h5,
|
||||
div.body h6 {
|
||||
font-family: 'Trebuchet MS', sans-serif;
|
||||
background-color: #f2f2f2;
|
||||
font-weight: normal;
|
||||
color: #20435c;
|
||||
border-bottom: 1px solid #ccc;
|
||||
margin: 20px -20px 10px -20px;
|
||||
padding: 3px 0 3px 10px;
|
||||
}
|
||||
|
||||
div.body h1 { margin-top: 0; font-size: 200%; }
|
||||
div.body h2 { font-size: 160%; }
|
||||
div.body h3 { font-size: 140%; }
|
||||
div.body h4 { font-size: 120%; }
|
||||
div.body h5 { font-size: 110%; }
|
||||
div.body h6 { font-size: 100%; }
|
||||
|
||||
a.headerlink {
|
||||
color: #c60f0f;
|
||||
font-size: 0.8em;
|
||||
padding: 0 4px 0 4px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a.headerlink:hover {
|
||||
background-color: #c60f0f;
|
||||
color: white;
|
||||
}
|
||||
|
||||
div.body p, div.body dd, div.body li, div.body blockquote {
|
||||
text-align: justify;
|
||||
line-height: 130%;
|
||||
}
|
||||
|
||||
div.admonition p.admonition-title + p {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
div.admonition p {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
div.admonition pre {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
div.admonition ul, div.admonition ol {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
div.note {
|
||||
background-color: #eee;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
|
||||
div.seealso {
|
||||
background-color: #ffc;
|
||||
border: 1px solid #ff6;
|
||||
}
|
||||
|
||||
nav.contents,
|
||||
aside.topic,
|
||||
div.topic {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
div.warning {
|
||||
background-color: #ffe4e4;
|
||||
border: 1px solid #f66;
|
||||
}
|
||||
|
||||
p.admonition-title {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
p.admonition-title:after {
|
||||
content: ":";
|
||||
}
|
||||
|
||||
pre {
|
||||
padding: 5px;
|
||||
background-color: unset;
|
||||
color: unset;
|
||||
line-height: 120%;
|
||||
border: 1px solid #ac9;
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
code {
|
||||
background-color: #ecf0f3;
|
||||
padding: 0 1px 0 1px;
|
||||
font-size: 0.95em;
|
||||
}
|
||||
|
||||
th, dl.field-list > dt {
|
||||
background-color: #ede;
|
||||
}
|
||||
|
||||
.warning code {
|
||||
background: #efc2c2;
|
||||
}
|
||||
|
||||
.note code {
|
||||
background: #d6d6d6;
|
||||
}
|
||||
|
||||
.viewcode-back {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
div.viewcode-block:target {
|
||||
background-color: #f4debf;
|
||||
border-top: 1px solid #ac9;
|
||||
border-bottom: 1px solid #ac9;
|
||||
}
|
||||
|
||||
div.code-block-caption {
|
||||
color: #efefef;
|
||||
background-color: #1c4e63;
|
||||
}
|
149
docs/build/html/_static/doctools.js
vendored
149
docs/build/html/_static/doctools.js
vendored
@@ -1,149 +0,0 @@
|
||||
/*
|
||||
* Base JavaScript utilities for all Sphinx HTML documentation.
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([
|
||||
"TEXTAREA",
|
||||
"INPUT",
|
||||
"SELECT",
|
||||
"BUTTON",
|
||||
]);
|
||||
|
||||
const _ready = (callback) => {
|
||||
if (document.readyState !== "loading") {
|
||||
callback();
|
||||
} else {
|
||||
document.addEventListener("DOMContentLoaded", callback);
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Small JavaScript module for the documentation.
|
||||
*/
|
||||
const Documentation = {
|
||||
init: () => {
|
||||
Documentation.initDomainIndexTable();
|
||||
Documentation.initOnKeyListeners();
|
||||
},
|
||||
|
||||
/**
|
||||
* i18n support
|
||||
*/
|
||||
TRANSLATIONS: {},
|
||||
PLURAL_EXPR: (n) => (n === 1 ? 0 : 1),
|
||||
LOCALE: "unknown",
|
||||
|
||||
// gettext and ngettext don't access this so that the functions
|
||||
// can safely bound to a different name (_ = Documentation.gettext)
|
||||
gettext: (string) => {
|
||||
const translated = Documentation.TRANSLATIONS[string];
|
||||
switch (typeof translated) {
|
||||
case "undefined":
|
||||
return string; // no translation
|
||||
case "string":
|
||||
return translated; // translation exists
|
||||
default:
|
||||
return translated[0]; // (singular, plural) translation tuple exists
|
||||
}
|
||||
},
|
||||
|
||||
ngettext: (singular, plural, n) => {
|
||||
const translated = Documentation.TRANSLATIONS[singular];
|
||||
if (typeof translated !== "undefined")
|
||||
return translated[Documentation.PLURAL_EXPR(n)];
|
||||
return n === 1 ? singular : plural;
|
||||
},
|
||||
|
||||
addTranslations: (catalog) => {
|
||||
Object.assign(Documentation.TRANSLATIONS, catalog.messages);
|
||||
Documentation.PLURAL_EXPR = new Function(
|
||||
"n",
|
||||
`return (${catalog.plural_expr})`
|
||||
);
|
||||
Documentation.LOCALE = catalog.locale;
|
||||
},
|
||||
|
||||
/**
|
||||
* helper function to focus on search bar
|
||||
*/
|
||||
focusSearchBar: () => {
|
||||
document.querySelectorAll("input[name=q]")[0]?.focus();
|
||||
},
|
||||
|
||||
/**
|
||||
* Initialise the domain index toggle buttons
|
||||
*/
|
||||
initDomainIndexTable: () => {
|
||||
const toggler = (el) => {
|
||||
const idNumber = el.id.substr(7);
|
||||
const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`);
|
||||
if (el.src.substr(-9) === "minus.png") {
|
||||
el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`;
|
||||
toggledRows.forEach((el) => (el.style.display = "none"));
|
||||
} else {
|
||||
el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`;
|
||||
toggledRows.forEach((el) => (el.style.display = ""));
|
||||
}
|
||||
};
|
||||
|
||||
const togglerElements = document.querySelectorAll("img.toggler");
|
||||
togglerElements.forEach((el) =>
|
||||
el.addEventListener("click", (event) => toggler(event.currentTarget))
|
||||
);
|
||||
togglerElements.forEach((el) => (el.style.display = ""));
|
||||
if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler);
|
||||
},
|
||||
|
||||
initOnKeyListeners: () => {
|
||||
// only install a listener if it is really needed
|
||||
if (
|
||||
!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS &&
|
||||
!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS
|
||||
)
|
||||
return;
|
||||
|
||||
document.addEventListener("keydown", (event) => {
|
||||
// bail for input elements
|
||||
if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return;
|
||||
// bail with special keys
|
||||
if (event.altKey || event.ctrlKey || event.metaKey) return;
|
||||
|
||||
if (!event.shiftKey) {
|
||||
switch (event.key) {
|
||||
case "ArrowLeft":
|
||||
if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break;
|
||||
|
||||
const prevLink = document.querySelector('link[rel="prev"]');
|
||||
if (prevLink && prevLink.href) {
|
||||
window.location.href = prevLink.href;
|
||||
event.preventDefault();
|
||||
}
|
||||
break;
|
||||
case "ArrowRight":
|
||||
if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break;
|
||||
|
||||
const nextLink = document.querySelector('link[rel="next"]');
|
||||
if (nextLink && nextLink.href) {
|
||||
window.location.href = nextLink.href;
|
||||
event.preventDefault();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// some keyboard layouts may need Shift to get /
|
||||
switch (event.key) {
|
||||
case "/":
|
||||
if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break;
|
||||
Documentation.focusSearchBar();
|
||||
event.preventDefault();
|
||||
}
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
// quick alias for translations
|
||||
const _ = Documentation.gettext;
|
||||
|
||||
_ready(Documentation.init);
|
13
docs/build/html/_static/documentation_options.js
vendored
13
docs/build/html/_static/documentation_options.js
vendored
@@ -1,13 +0,0 @@
|
||||
const DOCUMENTATION_OPTIONS = {
|
||||
VERSION: 'HR',
|
||||
LANGUAGE: 'en',
|
||||
COLLAPSE_INDEX: false,
|
||||
BUILDER: 'html',
|
||||
FILE_SUFFIX: '.html',
|
||||
LINK_SUFFIX: '.html',
|
||||
HAS_SOURCE: true,
|
||||
SOURCELINK_SUFFIX: '.txt',
|
||||
NAVIGATION_WITH_KEYS: false,
|
||||
SHOW_SEARCH_SUMMARY: true,
|
||||
ENABLE_SEARCH_SHORTCUTS: true,
|
||||
};
|
BIN
docs/build/html/_static/file.png
vendored
BIN
docs/build/html/_static/file.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 286 B |
192
docs/build/html/_static/language_data.js
vendored
192
docs/build/html/_static/language_data.js
vendored
@@ -1,192 +0,0 @@
|
||||
/*
|
||||
* This script contains the language-specific data used by searchtools.js,
|
||||
* namely the list of stopwords, stemmer, scorer and splitter.
|
||||
*/
|
||||
|
||||
var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"];
|
||||
|
||||
|
||||
/* Non-minified version is copied as a separate JS file, if available */
|
||||
|
||||
/**
|
||||
* Porter Stemmer
|
||||
*/
|
||||
var Stemmer = function() {
|
||||
|
||||
var step2list = {
|
||||
ational: 'ate',
|
||||
tional: 'tion',
|
||||
enci: 'ence',
|
||||
anci: 'ance',
|
||||
izer: 'ize',
|
||||
bli: 'ble',
|
||||
alli: 'al',
|
||||
entli: 'ent',
|
||||
eli: 'e',
|
||||
ousli: 'ous',
|
||||
ization: 'ize',
|
||||
ation: 'ate',
|
||||
ator: 'ate',
|
||||
alism: 'al',
|
||||
iveness: 'ive',
|
||||
fulness: 'ful',
|
||||
ousness: 'ous',
|
||||
aliti: 'al',
|
||||
iviti: 'ive',
|
||||
biliti: 'ble',
|
||||
logi: 'log'
|
||||
};
|
||||
|
||||
var step3list = {
|
||||
icate: 'ic',
|
||||
ative: '',
|
||||
alize: 'al',
|
||||
iciti: 'ic',
|
||||
ical: 'ic',
|
||||
ful: '',
|
||||
ness: ''
|
||||
};
|
||||
|
||||
var c = "[^aeiou]"; // consonant
|
||||
var v = "[aeiouy]"; // vowel
|
||||
var C = c + "[^aeiouy]*"; // consonant sequence
|
||||
var V = v + "[aeiou]*"; // vowel sequence
|
||||
|
||||
var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0
|
||||
var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1
|
||||
var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1
|
||||
var s_v = "^(" + C + ")?" + v; // vowel in stem
|
||||
|
||||
this.stemWord = function (w) {
|
||||
var stem;
|
||||
var suffix;
|
||||
var firstch;
|
||||
var origword = w;
|
||||
|
||||
if (w.length < 3)
|
||||
return w;
|
||||
|
||||
var re;
|
||||
var re2;
|
||||
var re3;
|
||||
var re4;
|
||||
|
||||
firstch = w.substr(0,1);
|
||||
if (firstch == "y")
|
||||
w = firstch.toUpperCase() + w.substr(1);
|
||||
|
||||
// Step 1a
|
||||
re = /^(.+?)(ss|i)es$/;
|
||||
re2 = /^(.+?)([^s])s$/;
|
||||
|
||||
if (re.test(w))
|
||||
w = w.replace(re,"$1$2");
|
||||
else if (re2.test(w))
|
||||
w = w.replace(re2,"$1$2");
|
||||
|
||||
// Step 1b
|
||||
re = /^(.+?)eed$/;
|
||||
re2 = /^(.+?)(ed|ing)$/;
|
||||
if (re.test(w)) {
|
||||
var fp = re.exec(w);
|
||||
re = new RegExp(mgr0);
|
||||
if (re.test(fp[1])) {
|
||||
re = /.$/;
|
||||
w = w.replace(re,"");
|
||||
}
|
||||
}
|
||||
else if (re2.test(w)) {
|
||||
var fp = re2.exec(w);
|
||||
stem = fp[1];
|
||||
re2 = new RegExp(s_v);
|
||||
if (re2.test(stem)) {
|
||||
w = stem;
|
||||
re2 = /(at|bl|iz)$/;
|
||||
re3 = new RegExp("([^aeiouylsz])\\1$");
|
||||
re4 = new RegExp("^" + C + v + "[^aeiouwxy]$");
|
||||
if (re2.test(w))
|
||||
w = w + "e";
|
||||
else if (re3.test(w)) {
|
||||
re = /.$/;
|
||||
w = w.replace(re,"");
|
||||
}
|
||||
else if (re4.test(w))
|
||||
w = w + "e";
|
||||
}
|
||||
}
|
||||
|
||||
// Step 1c
|
||||
re = /^(.+?)y$/;
|
||||
if (re.test(w)) {
|
||||
var fp = re.exec(w);
|
||||
stem = fp[1];
|
||||
re = new RegExp(s_v);
|
||||
if (re.test(stem))
|
||||
w = stem + "i";
|
||||
}
|
||||
|
||||
// Step 2
|
||||
re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;
|
||||
if (re.test(w)) {
|
||||
var fp = re.exec(w);
|
||||
stem = fp[1];
|
||||
suffix = fp[2];
|
||||
re = new RegExp(mgr0);
|
||||
if (re.test(stem))
|
||||
w = stem + step2list[suffix];
|
||||
}
|
||||
|
||||
// Step 3
|
||||
re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;
|
||||
if (re.test(w)) {
|
||||
var fp = re.exec(w);
|
||||
stem = fp[1];
|
||||
suffix = fp[2];
|
||||
re = new RegExp(mgr0);
|
||||
if (re.test(stem))
|
||||
w = stem + step3list[suffix];
|
||||
}
|
||||
|
||||
// Step 4
|
||||
re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;
|
||||
re2 = /^(.+?)(s|t)(ion)$/;
|
||||
if (re.test(w)) {
|
||||
var fp = re.exec(w);
|
||||
stem = fp[1];
|
||||
re = new RegExp(mgr1);
|
||||
if (re.test(stem))
|
||||
w = stem;
|
||||
}
|
||||
else if (re2.test(w)) {
|
||||
var fp = re2.exec(w);
|
||||
stem = fp[1] + fp[2];
|
||||
re2 = new RegExp(mgr1);
|
||||
if (re2.test(stem))
|
||||
w = stem;
|
||||
}
|
||||
|
||||
// Step 5
|
||||
re = /^(.+?)e$/;
|
||||
if (re.test(w)) {
|
||||
var fp = re.exec(w);
|
||||
stem = fp[1];
|
||||
re = new RegExp(mgr1);
|
||||
re2 = new RegExp(meq1);
|
||||
re3 = new RegExp("^" + C + v + "[^aeiouwxy]$");
|
||||
if (re.test(stem) || (re2.test(stem) && !(re3.test(stem))))
|
||||
w = stem;
|
||||
}
|
||||
re = /ll$/;
|
||||
re2 = new RegExp(mgr1);
|
||||
if (re.test(w) && re2.test(w)) {
|
||||
re = /.$/;
|
||||
w = w.replace(re,"");
|
||||
}
|
||||
|
||||
// and turn initial Y back to y
|
||||
if (firstch == "y")
|
||||
w = firstch.toLowerCase() + w.substr(1);
|
||||
return w;
|
||||
}
|
||||
}
|
||||
|
BIN
docs/build/html/_static/minus.png
vendored
BIN
docs/build/html/_static/minus.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 90 B |
BIN
docs/build/html/_static/plus.png
vendored
BIN
docs/build/html/_static/plus.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 90 B |
75
docs/build/html/_static/pygments.css
vendored
75
docs/build/html/_static/pygments.css
vendored
@@ -1,75 +0,0 @@
|
||||
pre { line-height: 125%; }
|
||||
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||
.highlight .hll { background-color: #ffffcc }
|
||||
.highlight { background: #eeffcc; }
|
||||
.highlight .c { color: #408090; font-style: italic } /* Comment */
|
||||
.highlight .err { border: 1px solid #F00 } /* Error */
|
||||
.highlight .k { color: #007020; font-weight: bold } /* Keyword */
|
||||
.highlight .o { color: #666 } /* Operator */
|
||||
.highlight .ch { color: #408090; font-style: italic } /* Comment.Hashbang */
|
||||
.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */
|
||||
.highlight .cp { color: #007020 } /* Comment.Preproc */
|
||||
.highlight .cpf { color: #408090; font-style: italic } /* Comment.PreprocFile */
|
||||
.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */
|
||||
.highlight .cs { color: #408090; background-color: #FFF0F0 } /* Comment.Special */
|
||||
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
|
||||
.highlight .gr { color: #F00 } /* Generic.Error */
|
||||
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||
.highlight .go { color: #333 } /* Generic.Output */
|
||||
.highlight .gp { color: #C65D09; font-weight: bold } /* Generic.Prompt */
|
||||
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||
.highlight .gt { color: #04D } /* Generic.Traceback */
|
||||
.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
|
||||
.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
|
||||
.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
|
||||
.highlight .kp { color: #007020 } /* Keyword.Pseudo */
|
||||
.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
|
||||
.highlight .kt { color: #902000 } /* Keyword.Type */
|
||||
.highlight .m { color: #208050 } /* Literal.Number */
|
||||
.highlight .s { color: #4070A0 } /* Literal.String */
|
||||
.highlight .na { color: #4070A0 } /* Name.Attribute */
|
||||
.highlight .nb { color: #007020 } /* Name.Builtin */
|
||||
.highlight .nc { color: #0E84B5; font-weight: bold } /* Name.Class */
|
||||
.highlight .no { color: #60ADD5 } /* Name.Constant */
|
||||
.highlight .nd { color: #555; font-weight: bold } /* Name.Decorator */
|
||||
.highlight .ni { color: #D55537; font-weight: bold } /* Name.Entity */
|
||||
.highlight .ne { color: #007020 } /* Name.Exception */
|
||||
.highlight .nf { color: #06287E } /* Name.Function */
|
||||
.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */
|
||||
.highlight .nn { color: #0E84B5; font-weight: bold } /* Name.Namespace */
|
||||
.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */
|
||||
.highlight .nv { color: #BB60D5 } /* Name.Variable */
|
||||
.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */
|
||||
.highlight .w { color: #BBB } /* Text.Whitespace */
|
||||
.highlight .mb { color: #208050 } /* Literal.Number.Bin */
|
||||
.highlight .mf { color: #208050 } /* Literal.Number.Float */
|
||||
.highlight .mh { color: #208050 } /* Literal.Number.Hex */
|
||||
.highlight .mi { color: #208050 } /* Literal.Number.Integer */
|
||||
.highlight .mo { color: #208050 } /* Literal.Number.Oct */
|
||||
.highlight .sa { color: #4070A0 } /* Literal.String.Affix */
|
||||
.highlight .sb { color: #4070A0 } /* Literal.String.Backtick */
|
||||
.highlight .sc { color: #4070A0 } /* Literal.String.Char */
|
||||
.highlight .dl { color: #4070A0 } /* Literal.String.Delimiter */
|
||||
.highlight .sd { color: #4070A0; font-style: italic } /* Literal.String.Doc */
|
||||
.highlight .s2 { color: #4070A0 } /* Literal.String.Double */
|
||||
.highlight .se { color: #4070A0; font-weight: bold } /* Literal.String.Escape */
|
||||
.highlight .sh { color: #4070A0 } /* Literal.String.Heredoc */
|
||||
.highlight .si { color: #70A0D0; font-style: italic } /* Literal.String.Interpol */
|
||||
.highlight .sx { color: #C65D09 } /* Literal.String.Other */
|
||||
.highlight .sr { color: #235388 } /* Literal.String.Regex */
|
||||
.highlight .s1 { color: #4070A0 } /* Literal.String.Single */
|
||||
.highlight .ss { color: #517918 } /* Literal.String.Symbol */
|
||||
.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
|
||||
.highlight .fm { color: #06287E } /* Name.Function.Magic */
|
||||
.highlight .vc { color: #BB60D5 } /* Name.Variable.Class */
|
||||
.highlight .vg { color: #BB60D5 } /* Name.Variable.Global */
|
||||
.highlight .vi { color: #BB60D5 } /* Name.Variable.Instance */
|
||||
.highlight .vm { color: #BB60D5 } /* Name.Variable.Magic */
|
||||
.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */
|
635
docs/build/html/_static/searchtools.js
vendored
635
docs/build/html/_static/searchtools.js
vendored
@@ -1,635 +0,0 @@
|
||||
/*
|
||||
* Sphinx JavaScript utilities for the full-text search.
|
||||
*/
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Simple result scoring code.
|
||||
*/
|
||||
if (typeof Scorer === "undefined") {
|
||||
var Scorer = {
|
||||
// Implement the following function to further tweak the score for each result
|
||||
// The function takes a result array [docname, title, anchor, descr, score, filename]
|
||||
// and returns the new score.
|
||||
/*
|
||||
score: result => {
|
||||
const [docname, title, anchor, descr, score, filename, kind] = result
|
||||
return score
|
||||
},
|
||||
*/
|
||||
|
||||
// query matches the full name of an object
|
||||
objNameMatch: 11,
|
||||
// or matches in the last dotted part of the object name
|
||||
objPartialMatch: 6,
|
||||
// Additive scores depending on the priority of the object
|
||||
objPrio: {
|
||||
0: 15, // used to be importantResults
|
||||
1: 5, // used to be objectResults
|
||||
2: -5, // used to be unimportantResults
|
||||
},
|
||||
// Used when the priority is not in the mapping.
|
||||
objPrioDefault: 0,
|
||||
|
||||
// query found in title
|
||||
title: 15,
|
||||
partialTitle: 7,
|
||||
// query found in terms
|
||||
term: 5,
|
||||
partialTerm: 2,
|
||||
};
|
||||
}
|
||||
|
||||
// Global search result kind enum, used by themes to style search results.
|
||||
class SearchResultKind {
|
||||
static get index() { return "index"; }
|
||||
static get object() { return "object"; }
|
||||
static get text() { return "text"; }
|
||||
static get title() { return "title"; }
|
||||
}
|
||||
|
||||
const _removeChildren = (element) => {
|
||||
while (element && element.lastChild) element.removeChild(element.lastChild);
|
||||
};
|
||||
|
||||
/**
|
||||
* See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping
|
||||
*/
|
||||
const _escapeRegExp = (string) =>
|
||||
string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string
|
||||
|
||||
const _displayItem = (item, searchTerms, highlightTerms) => {
|
||||
const docBuilder = DOCUMENTATION_OPTIONS.BUILDER;
|
||||
const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX;
|
||||
const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX;
|
||||
const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY;
|
||||
const contentRoot = document.documentElement.dataset.content_root;
|
||||
|
||||
const [docName, title, anchor, descr, score, _filename, kind] = item;
|
||||
|
||||
let listItem = document.createElement("li");
|
||||
// Add a class representing the item's type:
|
||||
// can be used by a theme's CSS selector for styling
|
||||
// See SearchResultKind for the class names.
|
||||
listItem.classList.add(`kind-${kind}`);
|
||||
let requestUrl;
|
||||
let linkUrl;
|
||||
if (docBuilder === "dirhtml") {
|
||||
// dirhtml builder
|
||||
let dirname = docName + "/";
|
||||
if (dirname.match(/\/index\/$/))
|
||||
dirname = dirname.substring(0, dirname.length - 6);
|
||||
else if (dirname === "index/") dirname = "";
|
||||
requestUrl = contentRoot + dirname;
|
||||
linkUrl = requestUrl;
|
||||
} else {
|
||||
// normal html builders
|
||||
requestUrl = contentRoot + docName + docFileSuffix;
|
||||
linkUrl = docName + docLinkSuffix;
|
||||
}
|
||||
let linkEl = listItem.appendChild(document.createElement("a"));
|
||||
linkEl.href = linkUrl + anchor;
|
||||
linkEl.dataset.score = score;
|
||||
linkEl.innerHTML = title;
|
||||
if (descr) {
|
||||
listItem.appendChild(document.createElement("span")).innerHTML =
|
||||
" (" + descr + ")";
|
||||
// highlight search terms in the description
|
||||
if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js
|
||||
highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted"));
|
||||
}
|
||||
else if (showSearchSummary)
|
||||
fetch(requestUrl)
|
||||
.then((responseData) => responseData.text())
|
||||
.then((data) => {
|
||||
if (data)
|
||||
listItem.appendChild(
|
||||
Search.makeSearchSummary(data, searchTerms, anchor)
|
||||
);
|
||||
// highlight search terms in the summary
|
||||
if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js
|
||||
highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted"));
|
||||
});
|
||||
Search.output.appendChild(listItem);
|
||||
};
|
||||
const _finishSearch = (resultCount) => {
|
||||
Search.stopPulse();
|
||||
Search.title.innerText = _("Search Results");
|
||||
if (!resultCount)
|
||||
Search.status.innerText = Documentation.gettext(
|
||||
"Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories."
|
||||
);
|
||||
else
|
||||
Search.status.innerText = Documentation.ngettext(
|
||||
"Search finished, found one page matching the search query.",
|
||||
"Search finished, found ${resultCount} pages matching the search query.",
|
||||
resultCount,
|
||||
).replace('${resultCount}', resultCount);
|
||||
};
|
||||
const _displayNextItem = (
|
||||
results,
|
||||
resultCount,
|
||||
searchTerms,
|
||||
highlightTerms,
|
||||
) => {
|
||||
// results left, load the summary and display it
|
||||
// this is intended to be dynamic (don't sub resultsCount)
|
||||
if (results.length) {
|
||||
_displayItem(results.pop(), searchTerms, highlightTerms);
|
||||
setTimeout(
|
||||
() => _displayNextItem(results, resultCount, searchTerms, highlightTerms),
|
||||
5
|
||||
);
|
||||
}
|
||||
// search finished, update title and status message
|
||||
else _finishSearch(resultCount);
|
||||
};
|
||||
// Helper function used by query() to order search results.
|
||||
// Each input is an array of [docname, title, anchor, descr, score, filename, kind].
|
||||
// Order the results by score (in opposite order of appearance, since the
|
||||
// `_displayNextItem` function uses pop() to retrieve items) and then alphabetically.
|
||||
const _orderResultsByScoreThenName = (a, b) => {
|
||||
const leftScore = a[4];
|
||||
const rightScore = b[4];
|
||||
if (leftScore === rightScore) {
|
||||
// same score: sort alphabetically
|
||||
const leftTitle = a[1].toLowerCase();
|
||||
const rightTitle = b[1].toLowerCase();
|
||||
if (leftTitle === rightTitle) return 0;
|
||||
return leftTitle > rightTitle ? -1 : 1; // inverted is intentional
|
||||
}
|
||||
return leftScore > rightScore ? 1 : -1;
|
||||
};
|
||||
|
||||
/**
|
||||
* Default splitQuery function. Can be overridden in ``sphinx.search`` with a
|
||||
* custom function per language.
|
||||
*
|
||||
* The regular expression works by splitting the string on consecutive characters
|
||||
* that are not Unicode letters, numbers, underscores, or emoji characters.
|
||||
* This is the same as ``\W+`` in Python, preserving the surrogate pair area.
|
||||
*/
|
||||
if (typeof splitQuery === "undefined") {
|
||||
var splitQuery = (query) => query
|
||||
.split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu)
|
||||
.filter(term => term) // remove remaining empty strings
|
||||
}
|
||||
|
||||
/**
|
||||
* Search Module
|
||||
*/
|
||||
const Search = {
|
||||
_index: null,
|
||||
_queued_query: null,
|
||||
_pulse_status: -1,
|
||||
|
||||
htmlToText: (htmlString, anchor) => {
|
||||
const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html');
|
||||
for (const removalQuery of [".headerlink", "script", "style"]) {
|
||||
htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() });
|
||||
}
|
||||
if (anchor) {
|
||||
const anchorContent = htmlElement.querySelector(`[role="main"] ${anchor}`);
|
||||
if (anchorContent) return anchorContent.textContent;
|
||||
|
||||
console.warn(
|
||||
`Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.`
|
||||
);
|
||||
}
|
||||
|
||||
// if anchor not specified or not found, fall back to main content
|
||||
const docContent = htmlElement.querySelector('[role="main"]');
|
||||
if (docContent) return docContent.textContent;
|
||||
|
||||
console.warn(
|
||||
"Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template."
|
||||
);
|
||||
return "";
|
||||
},
|
||||
|
||||
init: () => {
|
||||
const query = new URLSearchParams(window.location.search).get("q");
|
||||
document
|
||||
.querySelectorAll('input[name="q"]')
|
||||
.forEach((el) => (el.value = query));
|
||||
if (query) Search.performSearch(query);
|
||||
},
|
||||
|
||||
loadIndex: (url) =>
|
||||
(document.body.appendChild(document.createElement("script")).src = url),
|
||||
|
||||
setIndex: (index) => {
|
||||
Search._index = index;
|
||||
if (Search._queued_query !== null) {
|
||||
const query = Search._queued_query;
|
||||
Search._queued_query = null;
|
||||
Search.query(query);
|
||||
}
|
||||
},
|
||||
|
||||
hasIndex: () => Search._index !== null,
|
||||
|
||||
deferQuery: (query) => (Search._queued_query = query),
|
||||
|
||||
stopPulse: () => (Search._pulse_status = -1),
|
||||
|
||||
startPulse: () => {
|
||||
if (Search._pulse_status >= 0) return;
|
||||
|
||||
const pulse = () => {
|
||||
Search._pulse_status = (Search._pulse_status + 1) % 4;
|
||||
Search.dots.innerText = ".".repeat(Search._pulse_status);
|
||||
if (Search._pulse_status >= 0) window.setTimeout(pulse, 500);
|
||||
};
|
||||
pulse();
|
||||
},
|
||||
|
||||
/**
|
||||
* perform a search for something (or wait until index is loaded)
|
||||
*/
|
||||
performSearch: (query) => {
|
||||
// create the required interface elements
|
||||
const searchText = document.createElement("h2");
|
||||
searchText.textContent = _("Searching");
|
||||
const searchSummary = document.createElement("p");
|
||||
searchSummary.classList.add("search-summary");
|
||||
searchSummary.innerText = "";
|
||||
const searchList = document.createElement("ul");
|
||||
searchList.setAttribute("role", "list");
|
||||
searchList.classList.add("search");
|
||||
|
||||
const out = document.getElementById("search-results");
|
||||
Search.title = out.appendChild(searchText);
|
||||
Search.dots = Search.title.appendChild(document.createElement("span"));
|
||||
Search.status = out.appendChild(searchSummary);
|
||||
Search.output = out.appendChild(searchList);
|
||||
|
||||
const searchProgress = document.getElementById("search-progress");
|
||||
// Some themes don't use the search progress node
|
||||
if (searchProgress) {
|
||||
searchProgress.innerText = _("Preparing search...");
|
||||
}
|
||||
Search.startPulse();
|
||||
|
||||
// index already loaded, the browser was quick!
|
||||
if (Search.hasIndex()) Search.query(query);
|
||||
else Search.deferQuery(query);
|
||||
},
|
||||
|
||||
_parseQuery: (query) => {
|
||||
// stem the search terms and add them to the correct list
|
||||
const stemmer = new Stemmer();
|
||||
const searchTerms = new Set();
|
||||
const excludedTerms = new Set();
|
||||
const highlightTerms = new Set();
|
||||
const objectTerms = new Set(splitQuery(query.toLowerCase().trim()));
|
||||
splitQuery(query.trim()).forEach((queryTerm) => {
|
||||
const queryTermLower = queryTerm.toLowerCase();
|
||||
|
||||
// maybe skip this "word"
|
||||
// stopwords array is from language_data.js
|
||||
if (
|
||||
stopwords.indexOf(queryTermLower) !== -1 ||
|
||||
queryTerm.match(/^\d+$/)
|
||||
)
|
||||
return;
|
||||
|
||||
// stem the word
|
||||
let word = stemmer.stemWord(queryTermLower);
|
||||
// select the correct list
|
||||
if (word[0] === "-") excludedTerms.add(word.substr(1));
|
||||
else {
|
||||
searchTerms.add(word);
|
||||
highlightTerms.add(queryTermLower);
|
||||
}
|
||||
});
|
||||
|
||||
if (SPHINX_HIGHLIGHT_ENABLED) { // set in sphinx_highlight.js
|
||||
localStorage.setItem("sphinx_highlight_terms", [...highlightTerms].join(" "))
|
||||
}
|
||||
|
||||
// console.debug("SEARCH: searching for:");
|
||||
// console.info("required: ", [...searchTerms]);
|
||||
// console.info("excluded: ", [...excludedTerms]);
|
||||
|
||||
return [query, searchTerms, excludedTerms, highlightTerms, objectTerms];
|
||||
},
|
||||
|
||||
/**
|
||||
* execute search (requires search index to be loaded)
|
||||
*/
|
||||
_performSearch: (query, searchTerms, excludedTerms, highlightTerms, objectTerms) => {
|
||||
const filenames = Search._index.filenames;
|
||||
const docNames = Search._index.docnames;
|
||||
const titles = Search._index.titles;
|
||||
const allTitles = Search._index.alltitles;
|
||||
const indexEntries = Search._index.indexentries;
|
||||
|
||||
// Collect multiple result groups to be sorted separately and then ordered.
|
||||
// Each is an array of [docname, title, anchor, descr, score, filename, kind].
|
||||
const normalResults = [];
|
||||
const nonMainIndexResults = [];
|
||||
|
||||
_removeChildren(document.getElementById("search-progress"));
|
||||
|
||||
const queryLower = query.toLowerCase().trim();
|
||||
for (const [title, foundTitles] of Object.entries(allTitles)) {
|
||||
if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) {
|
||||
for (const [file, id] of foundTitles) {
|
||||
const score = Math.round(Scorer.title * queryLower.length / title.length);
|
||||
const boost = titles[file] === title ? 1 : 0; // add a boost for document titles
|
||||
normalResults.push([
|
||||
docNames[file],
|
||||
titles[file] !== title ? `${titles[file]} > ${title}` : title,
|
||||
id !== null ? "#" + id : "",
|
||||
null,
|
||||
score + boost,
|
||||
filenames[file],
|
||||
SearchResultKind.title,
|
||||
]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// search for explicit entries in index directives
|
||||
for (const [entry, foundEntries] of Object.entries(indexEntries)) {
|
||||
if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) {
|
||||
for (const [file, id, isMain] of foundEntries) {
|
||||
const score = Math.round(100 * queryLower.length / entry.length);
|
||||
const result = [
|
||||
docNames[file],
|
||||
titles[file],
|
||||
id ? "#" + id : "",
|
||||
null,
|
||||
score,
|
||||
filenames[file],
|
||||
SearchResultKind.index,
|
||||
];
|
||||
if (isMain) {
|
||||
normalResults.push(result);
|
||||
} else {
|
||||
nonMainIndexResults.push(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// lookup as object
|
||||
objectTerms.forEach((term) =>
|
||||
normalResults.push(...Search.performObjectSearch(term, objectTerms))
|
||||
);
|
||||
|
||||
// lookup as search terms in fulltext
|
||||
normalResults.push(...Search.performTermsSearch(searchTerms, excludedTerms));
|
||||
|
||||
// let the scorer override scores with a custom scoring function
|
||||
if (Scorer.score) {
|
||||
normalResults.forEach((item) => (item[4] = Scorer.score(item)));
|
||||
nonMainIndexResults.forEach((item) => (item[4] = Scorer.score(item)));
|
||||
}
|
||||
|
||||
// Sort each group of results by score and then alphabetically by name.
|
||||
normalResults.sort(_orderResultsByScoreThenName);
|
||||
nonMainIndexResults.sort(_orderResultsByScoreThenName);
|
||||
|
||||
// Combine the result groups in (reverse) order.
|
||||
// Non-main index entries are typically arbitrary cross-references,
|
||||
// so display them after other results.
|
||||
let results = [...nonMainIndexResults, ...normalResults];
|
||||
|
||||
// remove duplicate search results
|
||||
// note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept
|
||||
let seen = new Set();
|
||||
results = results.reverse().reduce((acc, result) => {
|
||||
let resultStr = result.slice(0, 4).concat([result[5]]).map(v => String(v)).join(',');
|
||||
if (!seen.has(resultStr)) {
|
||||
acc.push(result);
|
||||
seen.add(resultStr);
|
||||
}
|
||||
return acc;
|
||||
}, []);
|
||||
|
||||
return results.reverse();
|
||||
},
|
||||
|
||||
query: (query) => {
|
||||
const [searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms] = Search._parseQuery(query);
|
||||
const results = Search._performSearch(searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms);
|
||||
|
||||
// for debugging
|
||||
//Search.lastresults = results.slice(); // a copy
|
||||
// console.info("search results:", Search.lastresults);
|
||||
|
||||
// print the results
|
||||
_displayNextItem(results, results.length, searchTerms, highlightTerms);
|
||||
},
|
||||
|
||||
/**
|
||||
* search for object names
|
||||
*/
|
||||
performObjectSearch: (object, objectTerms) => {
|
||||
const filenames = Search._index.filenames;
|
||||
const docNames = Search._index.docnames;
|
||||
const objects = Search._index.objects;
|
||||
const objNames = Search._index.objnames;
|
||||
const titles = Search._index.titles;
|
||||
|
||||
const results = [];
|
||||
|
||||
const objectSearchCallback = (prefix, match) => {
|
||||
const name = match[4]
|
||||
const fullname = (prefix ? prefix + "." : "") + name;
|
||||
const fullnameLower = fullname.toLowerCase();
|
||||
if (fullnameLower.indexOf(object) < 0) return;
|
||||
|
||||
let score = 0;
|
||||
const parts = fullnameLower.split(".");
|
||||
|
||||
// check for different match types: exact matches of full name or
|
||||
// "last name" (i.e. last dotted part)
|
||||
if (fullnameLower === object || parts.slice(-1)[0] === object)
|
||||
score += Scorer.objNameMatch;
|
||||
else if (parts.slice(-1)[0].indexOf(object) > -1)
|
||||
score += Scorer.objPartialMatch; // matches in last name
|
||||
|
||||
const objName = objNames[match[1]][2];
|
||||
const title = titles[match[0]];
|
||||
|
||||
// If more than one term searched for, we require other words to be
|
||||
// found in the name/title/description
|
||||
const otherTerms = new Set(objectTerms);
|
||||
otherTerms.delete(object);
|
||||
if (otherTerms.size > 0) {
|
||||
const haystack = `${prefix} ${name} ${objName} ${title}`.toLowerCase();
|
||||
if (
|
||||
[...otherTerms].some((otherTerm) => haystack.indexOf(otherTerm) < 0)
|
||||
)
|
||||
return;
|
||||
}
|
||||
|
||||
let anchor = match[3];
|
||||
if (anchor === "") anchor = fullname;
|
||||
else if (anchor === "-") anchor = objNames[match[1]][1] + "-" + fullname;
|
||||
|
||||
const descr = objName + _(", in ") + title;
|
||||
|
||||
// add custom score for some objects according to scorer
|
||||
if (Scorer.objPrio.hasOwnProperty(match[2]))
|
||||
score += Scorer.objPrio[match[2]];
|
||||
else score += Scorer.objPrioDefault;
|
||||
|
||||
results.push([
|
||||
docNames[match[0]],
|
||||
fullname,
|
||||
"#" + anchor,
|
||||
descr,
|
||||
score,
|
||||
filenames[match[0]],
|
||||
SearchResultKind.object,
|
||||
]);
|
||||
};
|
||||
Object.keys(objects).forEach((prefix) =>
|
||||
objects[prefix].forEach((array) =>
|
||||
objectSearchCallback(prefix, array)
|
||||
)
|
||||
);
|
||||
return results;
|
||||
},
|
||||
|
||||
/**
|
||||
* search for full-text terms in the index
|
||||
*/
|
||||
performTermsSearch: (searchTerms, excludedTerms) => {
|
||||
// prepare search
|
||||
const terms = Search._index.terms;
|
||||
const titleTerms = Search._index.titleterms;
|
||||
const filenames = Search._index.filenames;
|
||||
const docNames = Search._index.docnames;
|
||||
const titles = Search._index.titles;
|
||||
|
||||
const scoreMap = new Map();
|
||||
const fileMap = new Map();
|
||||
|
||||
// perform the search on the required terms
|
||||
searchTerms.forEach((word) => {
|
||||
const files = [];
|
||||
// find documents, if any, containing the query word in their text/title term indices
|
||||
// use Object.hasOwnProperty to avoid mismatching against prototype properties
|
||||
const arr = [
|
||||
{ files: terms.hasOwnProperty(word) ? terms[word] : undefined, score: Scorer.term },
|
||||
{ files: titleTerms.hasOwnProperty(word) ? titleTerms[word] : undefined, score: Scorer.title },
|
||||
];
|
||||
// add support for partial matches
|
||||
if (word.length > 2) {
|
||||
const escapedWord = _escapeRegExp(word);
|
||||
if (!terms.hasOwnProperty(word)) {
|
||||
Object.keys(terms).forEach((term) => {
|
||||
if (term.match(escapedWord))
|
||||
arr.push({ files: terms[term], score: Scorer.partialTerm });
|
||||
});
|
||||
}
|
||||
if (!titleTerms.hasOwnProperty(word)) {
|
||||
Object.keys(titleTerms).forEach((term) => {
|
||||
if (term.match(escapedWord))
|
||||
arr.push({ files: titleTerms[term], score: Scorer.partialTitle });
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// no match but word was a required one
|
||||
if (arr.every((record) => record.files === undefined)) return;
|
||||
|
||||
// found search word in contents
|
||||
arr.forEach((record) => {
|
||||
if (record.files === undefined) return;
|
||||
|
||||
let recordFiles = record.files;
|
||||
if (recordFiles.length === undefined) recordFiles = [recordFiles];
|
||||
files.push(...recordFiles);
|
||||
|
||||
// set score for the word in each file
|
||||
recordFiles.forEach((file) => {
|
||||
if (!scoreMap.has(file)) scoreMap.set(file, new Map());
|
||||
const fileScores = scoreMap.get(file);
|
||||
fileScores.set(word, record.score);
|
||||
});
|
||||
});
|
||||
|
||||
// create the mapping
|
||||
files.forEach((file) => {
|
||||
if (!fileMap.has(file)) fileMap.set(file, [word]);
|
||||
else if (fileMap.get(file).indexOf(word) === -1) fileMap.get(file).push(word);
|
||||
});
|
||||
});
|
||||
|
||||
// now check if the files don't contain excluded terms
|
||||
const results = [];
|
||||
for (const [file, wordList] of fileMap) {
|
||||
// check if all requirements are matched
|
||||
|
||||
// as search terms with length < 3 are discarded
|
||||
const filteredTermCount = [...searchTerms].filter(
|
||||
(term) => term.length > 2
|
||||
).length;
|
||||
if (
|
||||
wordList.length !== searchTerms.size &&
|
||||
wordList.length !== filteredTermCount
|
||||
)
|
||||
continue;
|
||||
|
||||
// ensure that none of the excluded terms is in the search result
|
||||
if (
|
||||
[...excludedTerms].some(
|
||||
(term) =>
|
||||
terms[term] === file ||
|
||||
titleTerms[term] === file ||
|
||||
(terms[term] || []).includes(file) ||
|
||||
(titleTerms[term] || []).includes(file)
|
||||
)
|
||||
)
|
||||
break;
|
||||
|
||||
// select one (max) score for the file.
|
||||
const score = Math.max(...wordList.map((w) => scoreMap.get(file).get(w)));
|
||||
// add result to the result list
|
||||
results.push([
|
||||
docNames[file],
|
||||
titles[file],
|
||||
"",
|
||||
null,
|
||||
score,
|
||||
filenames[file],
|
||||
SearchResultKind.text,
|
||||
]);
|
||||
}
|
||||
return results;
|
||||
},
|
||||
|
||||
/**
|
||||
* helper function to return a node containing the
|
||||
* search summary for a given text. keywords is a list
|
||||
* of stemmed words.
|
||||
*/
|
||||
makeSearchSummary: (htmlText, keywords, anchor) => {
|
||||
const text = Search.htmlToText(htmlText, anchor);
|
||||
if (text === "") return null;
|
||||
|
||||
const textLower = text.toLowerCase();
|
||||
const actualStartPosition = [...keywords]
|
||||
.map((k) => textLower.indexOf(k.toLowerCase()))
|
||||
.filter((i) => i > -1)
|
||||
.slice(-1)[0];
|
||||
const startWithContext = Math.max(actualStartPosition - 120, 0);
|
||||
|
||||
const top = startWithContext === 0 ? "" : "...";
|
||||
const tail = startWithContext + 240 < text.length ? "..." : "";
|
||||
|
||||
let summary = document.createElement("p");
|
||||
summary.classList.add("context");
|
||||
summary.textContent = top + text.substr(startWithContext, 240).trim() + tail;
|
||||
|
||||
return summary;
|
||||
},
|
||||
};
|
||||
|
||||
_ready(Search.init);
|
64
docs/build/html/_static/sidebar.js
vendored
64
docs/build/html/_static/sidebar.js
vendored
@@ -1,64 +0,0 @@
|
||||
/*
|
||||
* This script makes the Sphinx sidebar collapsible.
|
||||
*
|
||||
* .sphinxsidebar contains .sphinxsidebarwrapper. This script adds
|
||||
* in .sphixsidebar, after .sphinxsidebarwrapper, the #sidebarbutton
|
||||
* used to collapse and expand the sidebar.
|
||||
*
|
||||
* When the sidebar is collapsed the .sphinxsidebarwrapper is hidden
|
||||
* and the width of the sidebar and the margin-left of the document
|
||||
* are decreased. When the sidebar is expanded the opposite happens.
|
||||
* This script saves a per-browser/per-session cookie used to
|
||||
* remember the position of the sidebar among the pages.
|
||||
* Once the browser is closed the cookie is deleted and the position
|
||||
* reset to the default (expanded).
|
||||
*
|
||||
*/
|
||||
|
||||
const initialiseSidebar = () => {
|
||||
|
||||
|
||||
|
||||
|
||||
// global elements used by the functions.
|
||||
const bodyWrapper = document.getElementsByClassName("bodywrapper")[0]
|
||||
const sidebar = document.getElementsByClassName("sphinxsidebar")[0]
|
||||
const sidebarWrapper = document.getElementsByClassName('sphinxsidebarwrapper')[0]
|
||||
const sidebarButton = document.getElementById("sidebarbutton")
|
||||
const sidebarArrow = sidebarButton.querySelector('span')
|
||||
|
||||
// for some reason, the document has no sidebar; do not run into errors
|
||||
if (typeof sidebar === "undefined") return;
|
||||
|
||||
const flipArrow = element => element.innerText = (element.innerText === "»") ? "«" : "»"
|
||||
|
||||
const collapse_sidebar = () => {
|
||||
bodyWrapper.style.marginLeft = ".8em";
|
||||
sidebar.style.width = ".8em"
|
||||
sidebarWrapper.style.display = "none"
|
||||
flipArrow(sidebarArrow)
|
||||
sidebarButton.title = _('Expand sidebar')
|
||||
window.localStorage.setItem("sidebar", "collapsed")
|
||||
}
|
||||
|
||||
const expand_sidebar = () => {
|
||||
bodyWrapper.style.marginLeft = ""
|
||||
sidebar.style.removeProperty("width")
|
||||
sidebarWrapper.style.display = ""
|
||||
flipArrow(sidebarArrow)
|
||||
sidebarButton.title = _('Collapse sidebar')
|
||||
window.localStorage.setItem("sidebar", "expanded")
|
||||
}
|
||||
|
||||
sidebarButton.addEventListener("click", () => {
|
||||
(sidebarWrapper.style.display === "none") ? expand_sidebar() : collapse_sidebar()
|
||||
})
|
||||
|
||||
if (!window.localStorage.getItem("sidebar")) return
|
||||
const value = window.localStorage.getItem("sidebar")
|
||||
if (value === "collapsed") collapse_sidebar();
|
||||
else if (value === "expanded") expand_sidebar();
|
||||
}
|
||||
|
||||
if (document.readyState !== "loading") initialiseSidebar()
|
||||
else document.addEventListener("DOMContentLoaded", initialiseSidebar)
|
154
docs/build/html/_static/sphinx_highlight.js
vendored
154
docs/build/html/_static/sphinx_highlight.js
vendored
@@ -1,154 +0,0 @@
|
||||
/* Highlighting utilities for Sphinx HTML documentation. */
|
||||
"use strict";
|
||||
|
||||
const SPHINX_HIGHLIGHT_ENABLED = true
|
||||
|
||||
/**
|
||||
* highlight a given string on a node by wrapping it in
|
||||
* span elements with the given class name.
|
||||
*/
|
||||
const _highlight = (node, addItems, text, className) => {
|
||||
if (node.nodeType === Node.TEXT_NODE) {
|
||||
const val = node.nodeValue;
|
||||
const parent = node.parentNode;
|
||||
const pos = val.toLowerCase().indexOf(text);
|
||||
if (
|
||||
pos >= 0 &&
|
||||
!parent.classList.contains(className) &&
|
||||
!parent.classList.contains("nohighlight")
|
||||
) {
|
||||
let span;
|
||||
|
||||
const closestNode = parent.closest("body, svg, foreignObject");
|
||||
const isInSVG = closestNode && closestNode.matches("svg");
|
||||
if (isInSVG) {
|
||||
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
|
||||
} else {
|
||||
span = document.createElement("span");
|
||||
span.classList.add(className);
|
||||
}
|
||||
|
||||
span.appendChild(document.createTextNode(val.substr(pos, text.length)));
|
||||
const rest = document.createTextNode(val.substr(pos + text.length));
|
||||
parent.insertBefore(
|
||||
span,
|
||||
parent.insertBefore(
|
||||
rest,
|
||||
node.nextSibling
|
||||
)
|
||||
);
|
||||
node.nodeValue = val.substr(0, pos);
|
||||
/* There may be more occurrences of search term in this node. So call this
|
||||
* function recursively on the remaining fragment.
|
||||
*/
|
||||
_highlight(rest, addItems, text, className);
|
||||
|
||||
if (isInSVG) {
|
||||
const rect = document.createElementNS(
|
||||
"http://www.w3.org/2000/svg",
|
||||
"rect"
|
||||
);
|
||||
const bbox = parent.getBBox();
|
||||
rect.x.baseVal.value = bbox.x;
|
||||
rect.y.baseVal.value = bbox.y;
|
||||
rect.width.baseVal.value = bbox.width;
|
||||
rect.height.baseVal.value = bbox.height;
|
||||
rect.setAttribute("class", className);
|
||||
addItems.push({ parent: parent, target: rect });
|
||||
}
|
||||
}
|
||||
} else if (node.matches && !node.matches("button, select, textarea")) {
|
||||
node.childNodes.forEach((el) => _highlight(el, addItems, text, className));
|
||||
}
|
||||
};
|
||||
const _highlightText = (thisNode, text, className) => {
|
||||
let addItems = [];
|
||||
_highlight(thisNode, addItems, text, className);
|
||||
addItems.forEach((obj) =>
|
||||
obj.parent.insertAdjacentElement("beforebegin", obj.target)
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* Small JavaScript module for the documentation.
|
||||
*/
|
||||
const SphinxHighlight = {
|
||||
|
||||
/**
|
||||
* highlight the search words provided in localstorage in the text
|
||||
*/
|
||||
highlightSearchWords: () => {
|
||||
if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight
|
||||
|
||||
// get and clear terms from localstorage
|
||||
const url = new URL(window.location);
|
||||
const highlight =
|
||||
localStorage.getItem("sphinx_highlight_terms")
|
||||
|| url.searchParams.get("highlight")
|
||||
|| "";
|
||||
localStorage.removeItem("sphinx_highlight_terms")
|
||||
url.searchParams.delete("highlight");
|
||||
window.history.replaceState({}, "", url);
|
||||
|
||||
// get individual terms from highlight string
|
||||
const terms = highlight.toLowerCase().split(/\s+/).filter(x => x);
|
||||
if (terms.length === 0) return; // nothing to do
|
||||
|
||||
// There should never be more than one element matching "div.body"
|
||||
const divBody = document.querySelectorAll("div.body");
|
||||
const body = divBody.length ? divBody[0] : document.querySelector("body");
|
||||
window.setTimeout(() => {
|
||||
terms.forEach((term) => _highlightText(body, term, "highlighted"));
|
||||
}, 10);
|
||||
|
||||
const searchBox = document.getElementById("searchbox");
|
||||
if (searchBox === null) return;
|
||||
searchBox.appendChild(
|
||||
document
|
||||
.createRange()
|
||||
.createContextualFragment(
|
||||
'<p class="highlight-link">' +
|
||||
'<a href="javascript:SphinxHighlight.hideSearchWords()">' +
|
||||
_("Hide Search Matches") +
|
||||
"</a></p>"
|
||||
)
|
||||
);
|
||||
},
|
||||
|
||||
/**
|
||||
* helper function to hide the search marks again
|
||||
*/
|
||||
hideSearchWords: () => {
|
||||
document
|
||||
.querySelectorAll("#searchbox .highlight-link")
|
||||
.forEach((el) => el.remove());
|
||||
document
|
||||
.querySelectorAll("span.highlighted")
|
||||
.forEach((el) => el.classList.remove("highlighted"));
|
||||
localStorage.removeItem("sphinx_highlight_terms")
|
||||
},
|
||||
|
||||
initEscapeListener: () => {
|
||||
// only install a listener if it is really needed
|
||||
if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) return;
|
||||
|
||||
document.addEventListener("keydown", (event) => {
|
||||
// bail for input elements
|
||||
if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return;
|
||||
// bail with special keys
|
||||
if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return;
|
||||
if (DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS && (event.key === "Escape")) {
|
||||
SphinxHighlight.hideSearchWords();
|
||||
event.preventDefault();
|
||||
}
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
_ready(() => {
|
||||
/* Do not call highlightSearchWords() when we are on the search page.
|
||||
* It will highlight words from the *previous* search query.
|
||||
*/
|
||||
if (typeof Search === "undefined") SphinxHighlight.highlightSearchWords();
|
||||
SphinxHighlight.initEscapeListener();
|
||||
});
|
94
docs/build/html/errata.html
vendored
94
docs/build/html/errata.html
vendored
@@ -1,94 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>6. Errors and Errata — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="prev" title="5. REFERENCES" href="references.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="references.html" title="5. REFERENCES"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">6. </span>Errors and Errata</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="errors-and-errata">
|
||||
<h1><span class="section-number">6. </span>Errors and Errata<a class="headerlink" href="#errors-and-errata" title="Link to this heading">¶</a></h1>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="references.html"
|
||||
title="previous chapter"><span class="section-number">5. </span>REFERENCES</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/errata.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="references.html" title="5. REFERENCES"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">6. </span>Errors and Errata</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
77
docs/build/html/genindex.html
vendored
77
docs/build/html/genindex.html
vendored
@@ -1,77 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Index — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="#" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="#" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Index</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
|
||||
<h1 id="index">Index</h1>
|
||||
|
||||
<div class="genindex-jumpbox">
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="#" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Index</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
139
docs/build/html/index.html
vendored
139
docs/build/html/index.html
vendored
@@ -1,139 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>Canadian Payroll Administration documentation — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="1. INTRODUCTION" href="introduction.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="introduction.html" title="1. INTRODUCTION"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="#">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Canadian Payroll Administration documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="canadian-payroll-administration-documentation">
|
||||
<h1>Canadian Payroll Administration documentation<a class="headerlink" href="#canadian-payroll-administration-documentation" title="Link to this heading">¶</a></h1>
|
||||
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>Python 3.12.3
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>5
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="toctree-wrapper compound">
|
||||
<p class="caption" role="heading"><span class="caption-text">Table of Contents:</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="introduction.html">1. INTRODUCTION</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="introduction.html#payroll-legal-framework">1.1. Payroll Legal Framework</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="introduction.html#network-diagram">1.2. Network Diagram</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="payroll_accounting.html">2. Payroll Accounting</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="payroll_accounting.html#journal-entries">2.1. Journal Entries</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="review_questions.html">3. REVIEW QUESTIONS</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="review_questions.html#new-employee-information">3.1. New Employee Information</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="rates_2025.html">4. RATES FOR 2025</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="rates_2025.html#canada-quebec-pension-plan-qpp-cpp">4.1. CANADA / QUEBEC PENSION PLAN (QPP / CPP)</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="rates_2025.html#cpp2-contribution-rates-maximums">4.2. CPP2 CONTRIBUTION RATES MAXIMUMS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="references.html">5. REFERENCES</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="errata.html">6. Errors and Errata</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section id="glossary">
|
||||
<h1>Glossary<a class="headerlink" href="#glossary" title="Link to this heading">¶</a></h1>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></p></li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h3><a href="#">Table of Contents</a></h3>
|
||||
<ul>
|
||||
<li><a class="reference internal" href="#">Canadian Payroll Administration documentation</a></li>
|
||||
<li><a class="reference internal" href="#glossary">Glossary</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="introduction.html"
|
||||
title="next chapter"><span class="section-number">1. </span>INTRODUCTION</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/index.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="introduction.html" title="1. INTRODUCTION"
|
||||
>next</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="#">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Canadian Payroll Administration documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
125
docs/build/html/introduction.html
vendored
125
docs/build/html/introduction.html
vendored
@@ -1,125 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>1. INTRODUCTION — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="2. Payroll Accounting" href="payroll_accounting.html" />
|
||||
<link rel="prev" title="Canadian Payroll Administration documentation" href="index.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="payroll_accounting.html" title="2. Payroll Accounting"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="index.html" title="Canadian Payroll Administration documentation"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">1. </span>INTRODUCTION</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="introduction">
|
||||
<h1><span class="section-number">1. </span>INTRODUCTION<a class="headerlink" href="#introduction" title="Link to this heading">¶</a></h1>
|
||||
<section id="payroll-legal-framework">
|
||||
<h2><span class="section-number">1.1. </span>Payroll Legal Framework<a class="headerlink" href="#payroll-legal-framework" title="Link to this heading">¶</a></h2>
|
||||
<p>The Canadian Payroll Administration system is designed to ensure compliance with the legal framework governing payroll in Canada. This includes adherence to federal and provincial regulations regarding employee compensation, deductions, and reporting requirements.
|
||||
The system is built to handle various payroll scenarios, including different employment types, tax calculations, and benefit deductions, while ensuring that all transactions are accurately recorded and reported in accordance with the law.</p>
|
||||
</section>
|
||||
<section id="network-diagram">
|
||||
<h2><span class="section-number">1.2. </span>Network Diagram<a class="headerlink" href="#network-diagram" title="Link to this heading">¶</a></h2>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h3><a href="index.html">Table of Contents</a></h3>
|
||||
<ul>
|
||||
<li><a class="reference internal" href="#">1. INTRODUCTION</a><ul>
|
||||
<li><a class="reference internal" href="#payroll-legal-framework">1.1. Payroll Legal Framework</a></li>
|
||||
<li><a class="reference internal" href="#network-diagram">1.2. Network Diagram</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="index.html"
|
||||
title="previous chapter">Canadian Payroll Administration documentation</a></p>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="payroll_accounting.html"
|
||||
title="next chapter"><span class="section-number">2. </span>Payroll Accounting</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/introduction.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="payroll_accounting.html" title="2. Payroll Accounting"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="index.html" title="Canadian Payroll Administration documentation"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">1. </span>INTRODUCTION</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
7
docs/build/html/objects.inv
vendored
7
docs/build/html/objects.inv
vendored
@@ -1,7 +0,0 @@
|
||||
# Sphinx inventory version 2
|
||||
# Project: Canadian Payroll Administration
|
||||
# Version: Fall 2025
|
||||
# The remainder of this file is compressed using zlib.
|
||||
xڅ<EFBFBD><EFBFBD>N<EFBFBD> <10><></<2F>F7<46><37>mS<6D>d<0F><><EFBFBD><EFBFBD><EFBFBD>A[
|
||||
+P<>o/-<2D><>&{<7B><><EFBFBD><EFBFBD>|3<03>PG<50>u<EFBFBD><75>k<EFBFBD>ww<06><>v<EFBFBD><76><EFBFBD>m,<2C><><EFBFBD>O/<2F>
|
||||
<EFBFBD>P<1C>B<>7<EFBFBD>=3<><33>:<3A>O<EFBFBD><4F><EFBFBD><EFBFBD>WU<><0B>pJ;<3B><><EFBFBD><07>%<25><>B+쉶冟<><E5869F><EFBFBD><EFBFBD>-<1B>M<EFBFBD>E<1F><>"K<1E>QqJb<4A>h<EFBFBD>Ϩ<EFBFBD>n7<19>y<EFBFBD>-$<24>C_<43><%eL<65><4C> U<><03><><EFBFBD>żŬ<C5BC>U̕<55><CC95>s<EFBFBD><73>k3<6B>?<03>r<72><7F>_<EFBFBD>/j <20>CAr|L2<4C>k<EFBFBD><6B>;P<0C><06><>"G<><47>8"<22>>|<7C>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7<EFBFBD>/'<27><><EFBFBD><EFBFBD>$<24>O<EFBFBD>#z<D4B0>a<EFBFBD><02>?<3F><15><1A>[
|
149
docs/build/html/payroll_accounting.html
vendored
149
docs/build/html/payroll_accounting.html
vendored
@@ -1,149 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>2. Payroll Accounting — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
<script async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="3. REVIEW QUESTIONS" href="review_questions.html" />
|
||||
<link rel="prev" title="1. INTRODUCTION" href="introduction.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="review_questions.html" title="3. REVIEW QUESTIONS"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="introduction.html" title="1. INTRODUCTION"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2. </span>Payroll Accounting</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="payroll-accounting">
|
||||
<h1><span class="section-number">2. </span>Payroll Accounting<a class="headerlink" href="#payroll-accounting" title="Link to this heading">¶</a></h1>
|
||||
<section id="journal-entries">
|
||||
<h2><span class="section-number">2.1. </span>Journal Entries<a class="headerlink" href="#journal-entries" title="Link to this heading">¶</a></h2>
|
||||
<section id="accounting-recap">
|
||||
<h3><span class="section-number">2.1.1. </span>Accounting Recap<a class="headerlink" href="#accounting-recap" title="Link to this heading">¶</a></h3>
|
||||
<p class="centered">
|
||||
<strong><span class="math notranslate nohighlight">\(\Sigma \text{ Total Debits} = \Sigma \text{ Total Credits}\)</span></strong></p><p class="centered">
|
||||
<strong><span class="math notranslate nohighlight">\(\text{Assets} = \text{Liabilities} + \text{Equity}\)</span></strong></p><div class="math notranslate nohighlight" id="equation-accountingequation">
|
||||
<span class="eqno">(1)<a class="headerlink" href="#equation-accountingequation" title="Link to this equation">¶</a></span>\[Assets = Liabilities + Equity\]</div>
|
||||
<p>Furthermore, we know that:</p>
|
||||
<p class="centered">
|
||||
<strong><span class="math notranslate nohighlight">\(\text{Equity = Revenue - Expenses}\)</span>
|
||||
, which leads us to:</strong></p><p class="centered">
|
||||
<strong><span class="math notranslate nohighlight">\(\text{Assets = Liabilities + (Revenues - Expenses)}\)</span></strong></p><p>Accounting equation <a class="reference internal" href="#equation-accountingequation">(1)</a></p>
|
||||
<p>Payroll accounting is a critical component of the Canadian Payroll Administration system. It involves the systematic recording, analysis, and reporting of payroll transactions to ensure that all financial aspects of employee compensation are accurately reflected in the organization’s financial statements.
|
||||
Payroll accounting includes the management of employee wages, tax withholdings, benefit deductions, and other payroll-related expenses. The system is designed to automate these processes, ensuring accuracy and compliance with Canadian payroll regulations.</p>
|
||||
</section>
|
||||
<section id="id1">
|
||||
<h3><span class="section-number">2.1.2. </span>Journal Entries<a class="headerlink" href="#id1" title="Link to this heading">¶</a></h3>
|
||||
<p>Journal entries are a key part of payroll accounting, as they document the financial impact of payroll transactions on the organization’s accounts. Each payroll run generates a series of journal entries that reflect the distribution of wages, taxes, and deductions across various accounts.
|
||||
These entries are essential for maintaining accurate financial records and ensuring that the organization’s financial statements reflect the true cost of employee compensation. The Canadian Payroll Administration system automates the generation of these journal entries, reducing the risk of errors and ensuring compliance with accounting standards.</p>
|
||||
<div class="line-block">
|
||||
<div class="line">DR Payroll Expenses $10,500.00</div>
|
||||
<div class="line-block">
|
||||
<div class="line">CR Payroll Payable $10,500.00</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h3><a href="index.html">Table of Contents</a></h3>
|
||||
<ul>
|
||||
<li><a class="reference internal" href="#">2. Payroll Accounting</a><ul>
|
||||
<li><a class="reference internal" href="#journal-entries">2.1. Journal Entries</a><ul>
|
||||
<li><a class="reference internal" href="#accounting-recap">2.1.1. Accounting Recap</a></li>
|
||||
<li><a class="reference internal" href="#id1">2.1.2. Journal Entries</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="introduction.html"
|
||||
title="previous chapter"><span class="section-number">1. </span>INTRODUCTION</a></p>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="review_questions.html"
|
||||
title="next chapter"><span class="section-number">3. </span>REVIEW QUESTIONS</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/payroll_accounting.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="review_questions.html" title="3. REVIEW QUESTIONS"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="introduction.html" title="1. INTRODUCTION"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2. </span>Payroll Accounting</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
224
docs/build/html/rates_2025.html
vendored
224
docs/build/html/rates_2025.html
vendored
@@ -1,224 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>4. RATES FOR 2025 — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="5. REFERENCES" href="references.html" />
|
||||
<link rel="prev" title="3. REVIEW QUESTIONS" href="review_questions.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="references.html" title="5. REFERENCES"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="review_questions.html" title="3. REVIEW QUESTIONS"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">4. </span>RATES FOR 2025</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="rates-for-2025">
|
||||
<h1><span class="section-number">4. </span>RATES FOR 2025<a class="headerlink" href="#rates-for-2025" title="Link to this heading">¶</a></h1>
|
||||
<section id="canada-quebec-pension-plan-qpp-cpp">
|
||||
<h2><span class="section-number">4.1. </span>CANADA / QUEBEC PENSION PLAN (QPP / CPP)<a class="headerlink" href="#canada-quebec-pension-plan-qpp-cpp" title="Link to this heading">¶</a></h2>
|
||||
<table class="docutils align-left" id="id1">
|
||||
<caption><span class="caption-text">CANADA / QUEBEC PENSION PLAN (QPP / CPP)</span><a class="headerlink" href="#id1" title="Link to this table">¶</a></caption>
|
||||
<colgroup>
|
||||
<col style="width: 68.4%" />
|
||||
<col style="width: 15.8%" />
|
||||
<col style="width: 15.8%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="row-odd"><th class="head"><p>Description</p></th>
|
||||
<th class="head"><p>CPP</p></th>
|
||||
<th class="head"><p>QPP</p></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="row-even"><td><p>Yearly maximum pensionable earnings</p></td>
|
||||
<td><p>$71,300</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>Annual maximum contributory earnings</p></td>
|
||||
<td><p>$67,800</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p>Annual maximum contribution</p></td>
|
||||
<td><p>$3,500</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>Employee contribution rate</p></td>
|
||||
<td><p>5.95%</p></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p>Employer contribution rate</p></td>
|
||||
<td><p>5.95%</p></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>Basic exemption (Annual)</p></td>
|
||||
<td><p>$3,500</p></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><blockquote>
|
||||
<div><p>Basic exemption (Monthly, 12)</p>
|
||||
</div></blockquote>
|
||||
</td>
|
||||
<td><p>$291.67</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><blockquote>
|
||||
<div><p>Basic exemption (Weekly, 52)</p>
|
||||
</div></blockquote>
|
||||
</td>
|
||||
<td><p>$67.31</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><blockquote>
|
||||
<div><p>Basic exemption (Weekly, 53)</p>
|
||||
</div></blockquote>
|
||||
</td>
|
||||
<td><p>$66.04</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><blockquote>
|
||||
<div><p>Basic exemption (Semi-monthly, 24)</p>
|
||||
</div></blockquote>
|
||||
</td>
|
||||
<td><p>$145.83</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><blockquote>
|
||||
<div><p>Basic exemption (Bi-weekly, 26)</p>
|
||||
</div></blockquote>
|
||||
</td>
|
||||
<td><p>$134.61</p></td>
|
||||
<td><p>$</p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
<section id="cpp2-contribution-rates-maximums">
|
||||
<h2><span class="section-number">4.2. </span>CPP2 CONTRIBUTION RATES MAXIMUMS<a class="headerlink" href="#cpp2-contribution-rates-maximums" title="Link to this heading">¶</a></h2>
|
||||
<table class="docutils align-left" id="id2">
|
||||
<caption><span class="caption-text">CPP2 Contribution Rates Maximums</span><a class="headerlink" href="#id2" title="Link to this table">¶</a></caption>
|
||||
<colgroup>
|
||||
<col style="width: 81.2%" />
|
||||
<col style="width: 18.8%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="row-odd"><th class="head"><p>Description</p></th>
|
||||
<th class="head"><p>Ammount</p></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="row-even"><td><p>Additional maximum annual pensionable earnings</p></td>
|
||||
<td><p>$81,200</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>Employee and employer contribution rate</p></td>
|
||||
<td><p>4%</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p>Maximum employee and employer contribution</p></td>
|
||||
<td><p>$396</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>Maimum annual self-employed contribution</p></td>
|
||||
<td><p>$792</p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h3><a href="index.html">Table of Contents</a></h3>
|
||||
<ul>
|
||||
<li><a class="reference internal" href="#">4. RATES FOR 2025</a><ul>
|
||||
<li><a class="reference internal" href="#canada-quebec-pension-plan-qpp-cpp">4.1. CANADA / QUEBEC PENSION PLAN (QPP / CPP)</a></li>
|
||||
<li><a class="reference internal" href="#cpp2-contribution-rates-maximums">4.2. CPP2 CONTRIBUTION RATES MAXIMUMS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="review_questions.html"
|
||||
title="previous chapter"><span class="section-number">3. </span>REVIEW QUESTIONS</a></p>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="references.html"
|
||||
title="next chapter"><span class="section-number">5. </span>REFERENCES</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/rates_2025.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="references.html" title="5. REFERENCES"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="review_questions.html" title="3. REVIEW QUESTIONS"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">4. </span>RATES FOR 2025</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
106
docs/build/html/references.html
vendored
106
docs/build/html/references.html
vendored
@@ -1,106 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>5. REFERENCES — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="6. Errors and Errata" href="errata.html" />
|
||||
<link rel="prev" title="4. RATES FOR 2025" href="rates_2025.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="errata.html" title="6. Errors and Errata"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="rates_2025.html" title="4. RATES FOR 2025"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">5. </span>REFERENCES</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="references">
|
||||
<h1><span class="section-number">5. </span>REFERENCES<a class="headerlink" href="#references" title="Link to this heading">¶</a></h1>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="rates_2025.html"
|
||||
title="previous chapter"><span class="section-number">4. </span>RATES FOR 2025</a></p>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="errata.html"
|
||||
title="next chapter"><span class="section-number">6. </span>Errors and Errata</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/references.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="errata.html" title="6. Errors and Errata"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="rates_2025.html" title="4. RATES FOR 2025"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">5. </span>REFERENCES</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
124
docs/build/html/review_questions.html
vendored
124
docs/build/html/review_questions.html
vendored
@@ -1,124 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>3. REVIEW QUESTIONS — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="4. RATES FOR 2025" href="rates_2025.html" />
|
||||
<link rel="prev" title="2. Payroll Accounting" href="payroll_accounting.html" />
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="rates_2025.html" title="4. RATES FOR 2025"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="payroll_accounting.html" title="2. Payroll Accounting"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">3. </span>REVIEW QUESTIONS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="review-questions">
|
||||
<h1><span class="section-number">3. </span>REVIEW QUESTIONS<a class="headerlink" href="#review-questions" title="Link to this heading">¶</a></h1>
|
||||
<p>This section contains review questions for the material covered in the course. These questions are designed to test your understanding and help reinforce the concepts learned.</p>
|
||||
<section id="new-employee-information">
|
||||
<h2><span class="section-number">3.1. </span>New Employee Information<a class="headerlink" href="#new-employee-information" title="Link to this heading">¶</a></h2>
|
||||
<p>Which one of the following is correct?
|
||||
a. Choice A
|
||||
b. Choice B
|
||||
c. Choice C</p>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<div>
|
||||
<h3><a href="index.html">Table of Contents</a></h3>
|
||||
<ul>
|
||||
<li><a class="reference internal" href="#">3. REVIEW QUESTIONS</a><ul>
|
||||
<li><a class="reference internal" href="#new-employee-information">3.1. New Employee Information</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="payroll_accounting.html"
|
||||
title="previous chapter"><span class="section-number">2. </span>Payroll Accounting</a></p>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="rates_2025.html"
|
||||
title="next chapter"><span class="section-number">4. </span>RATES FOR 2025</a></p>
|
||||
</div>
|
||||
<div role="note" aria-label="source link">
|
||||
<h3>This Page</h3>
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="_sources/review_questions.rst.txt"
|
||||
rel="nofollow">Show Source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<search id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</search>
|
||||
<script>document.getElementById('searchbox').style.display = "block"</script>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="rates_2025.html" title="4. RATES FOR 2025"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="payroll_accounting.html" title="2. Payroll Accounting"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href=""><span class="section-number">3. </span>REVIEW QUESTIONS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
94
docs/build/html/search.html
vendored
94
docs/build/html/search.html
vendored
@@ -1,94 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" data-content_root="./">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Search — Canadian Payroll Administration HR documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=03e43079" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=2bf1fcf8" />
|
||||
|
||||
|
||||
<script src="_static/documentation_options.js?v=e6081414"></script>
|
||||
<script src="_static/doctools.js?v=9bcbadda"></script>
|
||||
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
||||
|
||||
<script src="_static/searchtools.js"></script>
|
||||
<script src="_static/language_data.js"></script>
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="#" />
|
||||
<script src="searchindex.js" defer="defer"></script>
|
||||
<meta name="robots" content="noindex" />
|
||||
|
||||
|
||||
</head><body>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Search</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1 id="search-documentation">Search</h1>
|
||||
|
||||
<noscript>
|
||||
<div class="admonition warning">
|
||||
<p>
|
||||
Please activate JavaScript to enable the search
|
||||
functionality.
|
||||
</p>
|
||||
</div>
|
||||
</noscript>
|
||||
|
||||
|
||||
<p>
|
||||
Searching for multiple words only shows matches that contain
|
||||
all words.
|
||||
</p>
|
||||
|
||||
|
||||
<form action="" method="get">
|
||||
<input type="text" name="q" aria-labelledby="search-documentation" value="" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||||
<input type="submit" value="search" />
|
||||
<span id="search-progress" style="padding-left: 10px"></span>
|
||||
</form>
|
||||
|
||||
|
||||
<div id="search-results"></div>
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="Main">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="Related">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="nav-item nav-item-0"><a href="index.html">Canadian Payroll Administration HR documentation</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Search</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2025.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
1
docs/build/html/searchindex.js
vendored
1
docs/build/html/searchindex.js
vendored
@@ -1 +0,0 @@
|
||||
Search.setIndex({"alltitles":{"Accounting Recap":[[3,"accounting-recap"]],"CANADA / QUEBEC PENSION PLAN (QPP / CPP)":[[4,"canada-quebec-pension-plan-qpp-cpp"],[4,"id1"]],"CPP2 CONTRIBUTION RATES MAXIMUMS":[[4,"cpp2-contribution-rates-maximums"]],"CPP2 Contribution Rates Maximums":[[4,"id2"]],"Canadian Payroll Administration documentation":[[1,null]],"Errors and Errata":[[0,null]],"Glossary":[[1,"glossary"]],"INTRODUCTION":[[2,null]],"Journal Entries":[[3,"journal-entries"],[3,"id1"]],"Network Diagram":[[2,"network-diagram"]],"New Employee Information":[[6,"new-employee-information"]],"Payroll Accounting":[[3,null]],"Payroll Legal Framework":[[2,"payroll-legal-framework"]],"RATES FOR 2025":[[4,null]],"REFERENCES":[[5,null]],"REVIEW QUESTIONS":[[6,null]],"Table of Contents:":[[1,null]]},"docnames":["errata","index","introduction","payroll_accounting","rates_2025","references","review_questions"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["errata.rst","index.rst","introduction.rst","payroll_accounting.rst","rates_2025.rst","references.rst","review_questions.rst"],"indexentries":{},"objects":{},"objnames":{},"objtypes":{},"terms":{"":3,"00":3,"04":4,"08":[],"1":3,"10":3,"12":[1,4],"134":4,"145":4,"15":[],"200":4,"2025":1,"24":4,"250":[],"26":4,"291":4,"3":[1,4],"300":4,"31":4,"346":[],"396":4,"4":4,"45":[],"5":[1,4],"500":[3,4],"52":4,"53":4,"600":[],"61":4,"634":[],"66":4,"67":4,"673":[],"71":4,"754":[],"792":4,"800":4,"81":4,"83":4,"91":[],"95":4,"A":6,"FOR":1,"It":3,"The":[2,3],"These":[3,6],"accord":2,"account":1,"accur":[2,3],"accuraci":3,"across":3,"addit":4,"adher":2,"administr":[2,3],"all":[2,3],"ammount":4,"analysi":3,"annual":4,"ar":[2,3,6],"aspect":3,"asset":3,"autom":3,"b":6,"basic":4,"benefit":[2,3],"bi":4,"built":2,"c":6,"calcul":2,"canada":[1,2],"canadian":[2,3],"choic":6,"compens":[2,3],"complianc":[2,3],"compon":3,"concept":6,"contain":6,"contribut":1,"contributori":4,"correct":6,"cost":3,"cours":6,"cover":6,"cpp":1,"cpp2":1,"cr":3,"credit":3,"critic":3,"debit":3,"deduct":[2,3],"descript":4,"design":[2,3,6],"diagram":1,"differ":2,"distribut":3,"document":3,"dr":3,"each":3,"earn":4,"emploi":4,"employ":[2,4],"employe":[1,2,3,4],"ensur":[2,3],"entri":1,"equat":3,"equiti":3,"errata":1,"error":[1,3],"essenti":3,"exempt":4,"expens":3,"feder":2,"financi":3,"follow":6,"framework":1,"furthermor":3,"gener":3,"govern":2,"handl":2,"help":6,"i":[2,3,6],"impact":3,"includ":[2,3],"index":1,"inform":1,"introduct":1,"involv":3,"journal":1,"kei":3,"know":3,"law":2,"lead":3,"learn":6,"legal":1,"liabil":3,"maimum":4,"maintain":3,"manag":3,"materi":6,"maximum":1,"monthli":4,"network":1,"new":1,"one":6,"organ":3,"other":3,"part":3,"payabl":3,"pension":1,"plan":1,"process":3,"provinci":2,"python":1,"qpp":1,"quebec":1,"question":1,"rate":1,"record":[2,3],"reduc":3,"refer":1,"reflect":3,"regard":2,"regul":[2,3],"reinforc":6,"relat":3,"report":[2,3],"requir":2,"revenu":3,"review":1,"risk":3,"run":3,"scenario":2,"section":6,"self":4,"semi":4,"seri":3,"sigma":3,"standard":3,"statement":3,"system":[2,3],"systemat":3,"tax":[2,3],"test":6,"text":3,"thei":3,"thi":[2,6],"total":3,"transact":[2,3],"true":3,"type":2,"u":3,"understand":6,"variou":[2,3],"wage":3,"we":3,"weekli":4,"which":[3,6],"while":2,"withhold":3,"yearli":4,"your":6},"titles":["<span class=\"section-number\">6. </span>Errors and Errata","Canadian Payroll Administration documentation","<span class=\"section-number\">1. </span>INTRODUCTION","<span class=\"section-number\">2. </span>Payroll Accounting","<span class=\"section-number\">4. </span>RATES FOR 2025","<span class=\"section-number\">5. </span>REFERENCES","<span class=\"section-number\">3. </span>REVIEW QUESTIONS"],"titleterms":{"2025":4,"FOR":4,"account":3,"administr":1,"canada":4,"canadian":1,"content":1,"contribut":4,"cpp":4,"cpp2":4,"diagram":2,"document":1,"employe":6,"entri":3,"errata":0,"error":0,"framework":2,"glossari":1,"inform":6,"introduct":2,"journal":3,"legal":2,"maximum":4,"network":2,"new":6,"payrol":[1,2,3],"pension":4,"plan":4,"qpp":4,"quebec":4,"question":6,"rate":4,"recap":3,"refer":5,"review":6,"tabl":1}})
|
@@ -39,14 +39,16 @@
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{rates_2025:rates-for-2025}{{4}{9}{RATES FOR 2025}{chapter.4}{}}
|
||||
\newlabel{rates_2025::doc}{{4}{9}{RATES FOR 2025}{chapter.4}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.1}CANADA / QUEBEC PENSION PLAN (QPP / CPP)}{9}{section.4.1}\protected@file@percent }
|
||||
\newlabel{rates_2025:canada-quebec-pension-plan-qpp-cpp}{{4.1}{9}{CANADA / QUEBEC PENSION PLAN (QPP / CPP)}{section.4.1}{}}
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces CANADA / QUEBEC PENSION PLAN (QPP / CPP)}}{9}{table.4.1}\protected@file@percent }
|
||||
\newlabel{rates_2025:id1}{{1}{9}{CANADA / QUEBEC PENSION PLAN (QPP / CPP)}{table.4.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.1}CANADA / QUEBEC PENSION PLAN (CPP / QPP)}{9}{section.4.1}\protected@file@percent }
|
||||
\newlabel{rates_2025:canada-quebec-pension-plan-cpp-qpp}{{4.1}{9}{CANADA / QUEBEC PENSION PLAN (CPP / QPP)}{section.4.1}{}}
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces CANADA / QUEBEC PENSION PLAN (CPP / QPP)}}{9}{table.4.1}\protected@file@percent }
|
||||
\newlabel{rates_2025:id1}{{1}{9}{CANADA / QUEBEC PENSION PLAN (CPP / QPP)}{table.4.1}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.2}CPP2 CONTRIBUTION RATES MAXIMUMS}{9}{section.4.2}\protected@file@percent }
|
||||
\newlabel{rates_2025:cpp2-contribution-rates-maximums}{{4.2}{9}{CPP2 CONTRIBUTION RATES MAXIMUMS}{section.4.2}{}}
|
||||
\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces CPP2 Contribution Rates Maximums}}{9}{table.4.2}\protected@file@percent }
|
||||
\newlabel{rates_2025:id2}{{2}{9}{CPP2 CONTRIBUTION RATES MAXIMUMS}{table.4.2}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {4.3}References}{10}{section.4.3}\protected@file@percent }
|
||||
\newlabel{rates_2025:references}{{4.3}{10}{References}{section.4.3}{}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {5}REFERENCES}{11}{chapter.5}\protected@file@percent }
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
@@ -1,11 +1,11 @@
|
||||
# Fdb version 4
|
||||
["makeindex canadianpayrolladministration.idx"] 1750625254.43484 "canadianpayrolladministration.idx" "canadianpayrolladministration.ind" "canadianpayrolladministration" 1750626633.37504 0
|
||||
"canadianpayrolladministration.idx" 1750626633.18313 0 d41d8cd98f00b204e9800998ecf8427e "pdflatex"
|
||||
["makeindex Payroll-Administration_2025.idx"] 1750627274.73646 "Payroll-Administration_2025.idx" "Payroll-Administration_2025.ind" "Payroll-Administration_2025" 1750627275.33106 0
|
||||
"Payroll-Administration_2025.idx" 1750627275.13798 0 d41d8cd98f00b204e9800998ecf8427e "pdflatex"
|
||||
(generated)
|
||||
"canadianpayrolladministration.ilg"
|
||||
"canadianpayrolladministration.ind"
|
||||
"Payroll-Administration_2025.ilg"
|
||||
"Payroll-Administration_2025.ind"
|
||||
(rewritten before read)
|
||||
["pdflatex"] 1750626632.81852 "canadianpayrolladministration.tex" "canadianpayrolladministration.pdf" "canadianpayrolladministration" 1750626633.37531 0
|
||||
["pdflatex"] 1750627274.7549 "Payroll-Administration_2025.tex" "Payroll-Administration_2025.pdf" "Payroll-Administration_2025" 1750627275.33122 0
|
||||
"/etc/texmf/web2c/texmf.cnf" 1729307187.57985 475 c0e671620eb5563b2130f56340a5fde8 ""
|
||||
"/usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 ""
|
||||
"/usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1000.tfm" 1136768653 3584 adb004a0c8e7c46ee66cad73671f37b4 ""
|
||||
@@ -143,13 +143,13 @@
|
||||
"/usr/share/texmf/web2c/texmf.cnf" 1707919699 40399 f2c302f7d2af602abb742093540a5834 ""
|
||||
"/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map" 1729307339.56668 164740 5f02460f8e29b549a9ea60117f5f46e4 ""
|
||||
"/var/lib/texmf/web2c/pdftex/pdflatex.fmt" 1729307374 6831204 5735eed681e2db0697903be4f74d0da4 ""
|
||||
"canadianpayrolladministration.aux" 1750626633.30313 4886 ce6113339339eda70a363679b0dacdf7 "pdflatex"
|
||||
"canadianpayrolladministration.ind" 1750625254.51569 0 d41d8cd98f00b204e9800998ecf8427e "makeindex canadianpayrolladministration.idx"
|
||||
"canadianpayrolladministration.out" 1750626633.30413 2206 250db63ac3dfd88e91ce9f5fdb1f3b55 "pdflatex"
|
||||
"canadianpayrolladministration.tex" 1750626632.13913 9902 0695da75cd3dc8b3096bf33c19d42888 ""
|
||||
"canadianpayrolladministration.toc" 1750626633.30413 1200 5d7a533ca8260020b3e92cb411eed483 "pdflatex"
|
||||
"Payroll-Administration_2025.aux" 1750627275.25999 5069 032f1c073a479547813ab344ed063f49 "pdflatex"
|
||||
"Payroll-Administration_2025.ind" 1750627274.74898 0 d41d8cd98f00b204e9800998ecf8427e "makeindex Payroll-Administration_2025.idx"
|
||||
"Payroll-Administration_2025.out" 1750627275.26099 2311 16a1a6ed40a74d6d98b525b461b5e965 "pdflatex"
|
||||
"Payroll-Administration_2025.tex" 1750627274.07898 10242 1adf2fae6b6c5d88ebff296e4367f99c ""
|
||||
"Payroll-Administration_2025.toc" 1750627275.26099 1271 5a8cf8d5908f6446ab4b6344d587d609 "pdflatex"
|
||||
"sphinx.sty" 1750459726.26999 54203 ee7fe875437470f5328ee20661bb9f1d ""
|
||||
"sphinxhighlight.sty" 1750626632.10212 7553 83fb52292c17957d9f4aadcb28c57a87 ""
|
||||
"sphinxhighlight.sty" 1750627273.99498 7553 83fb52292c17957d9f4aadcb28c57a87 ""
|
||||
"sphinxlatexadmonitions.sty" 1750459726.26999 19111 5e67a0f91439018bceb7cadf319345e6 ""
|
||||
"sphinxlatexcontainers.sty" 1750459726.26999 900 d61f923db071a7b54d3cee8a1e6935d3 ""
|
||||
"sphinxlatexgraphics.sty" 1750459726.26999 4918 c9266041d02bc615d54b890e96e3acd3 ""
|
||||
@@ -164,16 +164,16 @@
|
||||
"sphinxlatexstyletext.sty" 1750459726.27199 6759 9e932c65374cfb62686485d331bc975c ""
|
||||
"sphinxlatextables.sty" 1750459726.27199 57643 7f1013c2fa11942370d867527bdda568 ""
|
||||
"sphinxmanual.cls" 1750459726.27199 4241 7b0d7a37df7b5715fb0dbd585c52ecdb ""
|
||||
"sphinxmessages.sty" 1750626632.14213 745 3f5fcd6cdd7964ed608767954a8ced6f ""
|
||||
"sphinxmessages.sty" 1750627274.08298 745 3f5fcd6cdd7964ed608767954a8ced6f ""
|
||||
"sphinxoptionsgeometry.sty" 1750459726.27199 2060 6c27b3eba37bde592ae8908ab2c1ac0f ""
|
||||
"sphinxoptionshyperref.sty" 1750459726.27199 1093 e468489bae7631a7f387b4b0f7bc15d4 ""
|
||||
"sphinxpackageboxes.sty" 1750459726.27299 36106 1be2053eb1cb9b083b3a75e3657bcb24 ""
|
||||
"sphinxpackagefootnote.sty" 1750459726.27299 15330 2fb656b6ce8cd1f6aba2d1c508fb51e5 ""
|
||||
(generated)
|
||||
"canadianpayrolladministration.aux"
|
||||
"canadianpayrolladministration.idx"
|
||||
"canadianpayrolladministration.log"
|
||||
"canadianpayrolladministration.out"
|
||||
"canadianpayrolladministration.pdf"
|
||||
"canadianpayrolladministration.toc"
|
||||
"Payroll-Administration_2025.aux"
|
||||
"Payroll-Administration_2025.idx"
|
||||
"Payroll-Administration_2025.log"
|
||||
"Payroll-Administration_2025.out"
|
||||
"Payroll-Administration_2025.pdf"
|
||||
"Payroll-Administration_2025.toc"
|
||||
(rewritten before read)
|
@@ -3,8 +3,8 @@ INPUT /etc/texmf/web2c/texmf.cnf
|
||||
INPUT /usr/share/texmf/web2c/texmf.cnf
|
||||
INPUT /usr/share/texlive/texmf-dist/web2c/texmf.cnf
|
||||
INPUT /var/lib/texmf/web2c/pdftex/pdflatex.fmt
|
||||
INPUT canadianpayrolladministration.tex
|
||||
OUTPUT canadianpayrolladministration.log
|
||||
INPUT Payroll-Administration_2025.tex
|
||||
OUTPUT Payroll-Administration_2025.log
|
||||
INPUT ./sphinxmanual.cls
|
||||
INPUT sphinxmanual.cls
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/report.cls
|
||||
@@ -25,7 +25,7 @@ INPUT /usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1000.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/t1.cmap
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/t1.cmap
|
||||
OUTPUT canadianpayrolladministration.pdf
|
||||
OUTPUT Payroll-Administration_2025.pdf
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/t1.cmap
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
|
||||
@@ -234,17 +234,17 @@ INPUT /usr/share/texlive/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty
|
||||
INPUT ./sphinxmessages.sty
|
||||
INPUT sphinxmessages.sty
|
||||
OUTPUT canadianpayrolladministration.idx
|
||||
OUTPUT Payroll-Administration_2025.idx
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/t1qtm.fd
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/t1qtm.fd
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/t1qtm.fd
|
||||
INPUT /usr/share/texmf/fonts/tfm/public/tex-gyre/ec-qtmr.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
|
||||
INPUT ./canadianpayrolladministration.aux
|
||||
INPUT ./canadianpayrolladministration.aux
|
||||
INPUT canadianpayrolladministration.aux
|
||||
OUTPUT canadianpayrolladministration.aux
|
||||
INPUT ./Payroll-Administration_2025.aux
|
||||
INPUT ./Payroll-Administration_2025.aux
|
||||
INPUT Payroll-Administration_2025.aux
|
||||
OUTPUT Payroll-Administration_2025.aux
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||
@@ -253,13 +253,13 @@ INPUT /usr/share/texlive/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
|
||||
INPUT ./canadianpayrolladministration.out
|
||||
INPUT ./canadianpayrolladministration.out
|
||||
INPUT canadianpayrolladministration.out
|
||||
INPUT canadianpayrolladministration.out
|
||||
INPUT ./canadianpayrolladministration.out
|
||||
INPUT ./canadianpayrolladministration.out
|
||||
OUTPUT canadianpayrolladministration.out
|
||||
INPUT ./Payroll-Administration_2025.out
|
||||
INPUT ./Payroll-Administration_2025.out
|
||||
INPUT Payroll-Administration_2025.out
|
||||
INPUT Payroll-Administration_2025.out
|
||||
INPUT ./Payroll-Administration_2025.out
|
||||
INPUT ./Payroll-Administration_2025.out
|
||||
OUTPUT Payroll-Administration_2025.out
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/t1qhv.fd
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/t1qhv.fd
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/t1qhv.fd
|
||||
@@ -307,9 +307,9 @@ INPUT /usr/share/texmf/fonts/enc/dvips/tex-gyre/q-ec.enc
|
||||
INPUT /usr/share/texmf/fonts/tfm/public/tex-gyre/ec-qtmr.tfm
|
||||
INPUT /usr/share/texmf/fonts/tfm/public/tex-gyre/ec-qhvr.tfm
|
||||
INPUT /usr/share/texmf/fonts/tfm/public/tex-gyre/ec-qhvb.tfm
|
||||
INPUT ./canadianpayrolladministration.toc
|
||||
INPUT ./canadianpayrolladministration.toc
|
||||
INPUT canadianpayrolladministration.toc
|
||||
INPUT ./Payroll-Administration_2025.toc
|
||||
INPUT ./Payroll-Administration_2025.toc
|
||||
INPUT Payroll-Administration_2025.toc
|
||||
INPUT /usr/share/texmf/fonts/tfm/public/tex-gyre/ec-qtmb.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm
|
||||
@@ -317,7 +317,7 @@ INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm
|
||||
OUTPUT canadianpayrolladministration.toc
|
||||
OUTPUT Payroll-Administration_2025.toc
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/txfonts/t1txtt.fd
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/txfonts/t1txtt.fd
|
||||
INPUT /usr/share/texlive/texmf-dist/tex/latex/txfonts/t1txtt.fd
|
||||
@@ -331,13 +331,13 @@ INPUT /usr/share/texmf/tex/latex/tex-gyre/ts1qtm.fd
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/ts1qtm.fd
|
||||
INPUT /usr/share/texmf/tex/latex/tex-gyre/ts1qtm.fd
|
||||
INPUT /usr/share/texmf/fonts/tfm/public/tex-gyre/ts1-qtmr.tfm
|
||||
INPUT ./canadianpayrolladministration.ind
|
||||
INPUT ./canadianpayrolladministration.ind
|
||||
INPUT canadianpayrolladministration.ind
|
||||
INPUT ./Payroll-Administration_2025.ind
|
||||
INPUT ./Payroll-Administration_2025.ind
|
||||
INPUT Payroll-Administration_2025.ind
|
||||
INPUT /usr/share/texmf/fonts/enc/dvips/tex-gyre/q-ts1.enc
|
||||
INPUT canadianpayrolladministration.aux
|
||||
INPUT ./canadianpayrolladministration.out
|
||||
INPUT ./canadianpayrolladministration.out
|
||||
INPUT Payroll-Administration_2025.aux
|
||||
INPUT ./Payroll-Administration_2025.out
|
||||
INPUT ./Payroll-Administration_2025.out
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb
|
||||
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb
|
||||
INPUT /usr/share/texmf/fonts/type1/public/tex-gyre/qhvb.pfb
|
5
docs/build/latex/Payroll-Administration_2025.ilg
vendored
Normal file
5
docs/build/latex/Payroll-Administration_2025.ilg
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
This is makeindex, version 2.17 [TeX Live 2023] (kpathsea + Thai support).
|
||||
Scanning style file ./python.ist.......done (7 attributes redefined, 0 ignored).
|
||||
Scanning input file Payroll-Administration_2025.idx...done (0 entries accepted, 0 rejected).
|
||||
Nothing written in Payroll-Administration_2025.ind.
|
||||
Transcript written in Payroll-Administration_2025.ilg.
|
@@ -1,9 +1,9 @@
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2024.10.18) 22 JUN 2025 17:10
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2024.10.18) 22 JUN 2025 17:21
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
%&-line parsing enabled.
|
||||
**canadianpayrolladministration.tex
|
||||
(./canadianpayrolladministration.tex
|
||||
**Payroll-Administration_2025.tex
|
||||
(./Payroll-Administration_2025.tex
|
||||
LaTeX2e <2023-11-01> patch level 1
|
||||
L3 programming layer <2024-01-22>
|
||||
(./sphinxmanual.cls
|
||||
@@ -724,10 +724,10 @@ Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO)
|
||||
Package: sphinxmessages 2019/01/04 v2.0 Localized LaTeX macros (Sphinx team)
|
||||
)
|
||||
\@indexfile=\write4
|
||||
\openout4 = `canadianpayrolladministration.idx'.
|
||||
\openout4 = `Payroll-Administration_2025.idx'.
|
||||
|
||||
|
||||
Writing index file canadianpayrolladministration.idx
|
||||
Writing index file Payroll-Administration_2025.idx
|
||||
LaTeX Font Info: Trying to load font information for T1+qtm on input line 73
|
||||
.
|
||||
(/usr/share/texmf/tex/latex/tex-gyre/t1qtm.fd
|
||||
@@ -738,8 +738,8 @@ File: l3backend-pdftex.def 2024-01-04 L3 backend support: PDF output (pdfTeX)
|
||||
\l__color_backend_stack_int=\count323
|
||||
\l__pdf_internal_box=\box120
|
||||
)
|
||||
(./canadianpayrolladministration.aux)
|
||||
\openout1 = `canadianpayrolladministration.aux'.
|
||||
(./Payroll-Administration_2025.aux)
|
||||
\openout1 = `Payroll-Administration_2025.aux'.
|
||||
|
||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 73.
|
||||
LaTeX Font Info: ... okay on input line 73.
|
||||
@@ -819,9 +819,9 @@ e
|
||||
* (1in=72.27pt=25.4mm, 1cm=28.453pt)
|
||||
|
||||
Package hyperref Info: Link coloring ON on input line 73.
|
||||
(./canadianpayrolladministration.out) (./canadianpayrolladministration.out)
|
||||
(./Payroll-Administration_2025.out) (./Payroll-Administration_2025.out)
|
||||
\@outlinefile=\write5
|
||||
\openout5 = `canadianpayrolladministration.out'.
|
||||
\openout5 = `Payroll-Administration_2025.out'.
|
||||
|
||||
Package hyperref Info: Option `pageanchor' set `false' on input line 81.
|
||||
LaTeX Font Info: Trying to load font information for T1+qhv on input line 81
|
||||
@@ -846,9 +846,9 @@ File: umsb.fd 2013/01/14 v3.01 AMS symbols B
|
||||
dvips/tex-gyre/q-ec.enc}] [2
|
||||
|
||||
|
||||
] (./canadianpayrolladministration.toc)
|
||||
] (./Payroll-Administration_2025.toc)
|
||||
\tf@toc=\write6
|
||||
\openout6 = `canadianpayrolladministration.toc'.
|
||||
\openout6 = `Payroll-Administration_2025.toc'.
|
||||
|
||||
[1
|
||||
|
||||
@@ -876,11 +876,11 @@ Chapter 3.
|
||||
|
||||
]
|
||||
Chapter 4.
|
||||
[9] [10
|
||||
|
||||
]
|
||||
[9] [10]
|
||||
Chapter 5.
|
||||
[11] [12
|
||||
[11
|
||||
|
||||
] [12
|
||||
|
||||
]
|
||||
Chapter 6.
|
||||
@@ -889,28 +889,28 @@ Chapter 6.
|
||||
]
|
||||
Chapter 7.
|
||||
LaTeX Font Info: Trying to load font information for TS1+qtm on input line 3
|
||||
87.
|
||||
96.
|
||||
(/usr/share/texmf/tex/latex/tex-gyre/ts1qtm.fd
|
||||
File: ts1qtm.fd 2009/09/25 v1.2 font definition file for TS1/qtm
|
||||
)
|
||||
(./canadianpayrolladministration.ind) [15{/usr/share/texmf/fonts/enc/dvips/tex-
|
||||
gyre/q-ts1.enc}] (./canadianpayrolladministration.aux)
|
||||
(./Payroll-Administration_2025.ind) [15{/usr/share/texmf/fonts/enc/dvips/tex-gy
|
||||
re/q-ts1.enc}] (./Payroll-Administration_2025.aux)
|
||||
***********
|
||||
LaTeX2e <2023-11-01> patch level 1
|
||||
L3 programming layer <2024-01-22>
|
||||
***********
|
||||
Package rerunfilecheck Info: File `canadianpayrolladministration.out' has not c
|
||||
hanged.
|
||||
(rerunfilecheck) Checksum: 250DB63AC3DFD88E91CE9F5FDB1F3B55;2206.
|
||||
Package rerunfilecheck Info: File `Payroll-Administration_2025.out' has not cha
|
||||
nged.
|
||||
(rerunfilecheck) Checksum: 16A1A6ED40A74D6D98B525B461B5E965;2311.
|
||||
)
|
||||
Here is how much of TeX's memory you used:
|
||||
16769 strings out of 476106
|
||||
284842 string characters out of 5793932
|
||||
16772 strings out of 476106
|
||||
284831 string characters out of 5793932
|
||||
1943975 words of memory out of 5000000
|
||||
38368 multiletter control sequences out of 15000+600000
|
||||
38370 multiletter control sequences out of 15000+600000
|
||||
611515 words of font info for 76 fonts, out of 8000000 for 9000
|
||||
60 hyphenation exceptions out of 8191
|
||||
72i,14n,83p,1218b,517s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||
72i,14n,83p,1216b,517s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||
</usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb></us
|
||||
r/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share
|
||||
/texmf/fonts/type1/public/tex-gyre/qhvb.pfb></usr/share/texmf/fonts/type1/publi
|
||||
@@ -918,10 +918,10 @@ c/tex-gyre/qhvbi.pfb></usr/share/texmf/fonts/type1/public/tex-gyre/qhvr.pfb></u
|
||||
sr/share/texmf/fonts/type1/public/tex-gyre/qtmb.pfb></usr/share/texmf/fonts/typ
|
||||
e1/public/tex-gyre/qtmr.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/t
|
||||
xfonts/t1xtt.pfb>
|
||||
Output written on canadianpayrolladministration.pdf (19 pages, 158182 bytes).
|
||||
Output written on Payroll-Administration_2025.pdf (19 pages, 158765 bytes).
|
||||
PDF statistics:
|
||||
220 PDF objects out of 1000 (max. 8388607)
|
||||
182 compressed objects within 2 object streams
|
||||
38 named destinations out of 1000 (max. 500000)
|
||||
141 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
227 PDF objects out of 1000 (max. 8388607)
|
||||
189 compressed objects within 2 object streams
|
||||
39 named destinations out of 1000 (max. 500000)
|
||||
149 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
@@ -8,8 +8,9 @@
|
||||
\BOOKMARK [0][-]{chapter.3}{\376\377\000R\000E\000V\000I\000E\000W\000\040\000Q\000U\000E\000S\000T\000I\000O\000N\000S}{}% 8
|
||||
\BOOKMARK [1][-]{section.3.1}{\376\377\000N\000e\000w\000\040\000E\000m\000p\000l\000o\000y\000e\000e\000\040\000I\000n\000f\000o\000r\000m\000a\000t\000i\000o\000n}{chapter.3}% 9
|
||||
\BOOKMARK [0][-]{chapter.4}{\376\377\000R\000A\000T\000E\000S\000\040\000F\000O\000R\000\040\0002\0000\0002\0005}{}% 10
|
||||
\BOOKMARK [1][-]{section.4.1}{\376\377\000C\000A\000N\000A\000D\000A\000\040\000/\000\040\000Q\000U\000E\000B\000E\000C\000\040\000P\000E\000N\000S\000I\000O\000N\000\040\000P\000L\000A\000N\000\040\000\050\000Q\000P\000P\000\040\000/\000\040\000C\000P\000P\000\051}{chapter.4}% 11
|
||||
\BOOKMARK [1][-]{section.4.1}{\376\377\000C\000A\000N\000A\000D\000A\000\040\000/\000\040\000Q\000U\000E\000B\000E\000C\000\040\000P\000E\000N\000S\000I\000O\000N\000\040\000P\000L\000A\000N\000\040\000\050\000C\000P\000P\000\040\000/\000\040\000Q\000P\000P\000\051}{chapter.4}% 11
|
||||
\BOOKMARK [1][-]{section.4.2}{\376\377\000C\000P\000P\0002\000\040\000C\000O\000N\000T\000R\000I\000B\000U\000T\000I\000O\000N\000\040\000R\000A\000T\000E\000S\000\040\000M\000A\000X\000I\000M\000U\000M\000S}{chapter.4}% 12
|
||||
\BOOKMARK [0][-]{chapter.5}{\376\377\000R\000E\000F\000E\000R\000E\000N\000C\000E\000S}{}% 13
|
||||
\BOOKMARK [0][-]{chapter.6}{\376\377\000E\000r\000r\000o\000r\000s\000\040\000a\000n\000d\000\040\000E\000r\000r\000a\000t\000a}{}% 14
|
||||
\BOOKMARK [0][-]{chapter.7}{\376\377\000G\000l\000o\000s\000s\000a\000r\000y}{}% 15
|
||||
\BOOKMARK [1][-]{section.4.3}{\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{chapter.4}% 13
|
||||
\BOOKMARK [0][-]{chapter.5}{\376\377\000R\000E\000F\000E\000R\000E\000N\000C\000E\000S}{}% 14
|
||||
\BOOKMARK [0][-]{chapter.6}{\376\377\000E\000r\000r\000o\000r\000s\000\040\000a\000n\000d\000\040\000E\000r\000r\000a\000t\000a}{}% 15
|
||||
\BOOKMARK [0][-]{chapter.7}{\376\377\000G\000l\000o\000s\000s\000a\000r\000y}{}% 16
|
Binary file not shown.
@@ -63,7 +63,7 @@
|
||||
|
||||
|
||||
|
||||
\title{Canadian Payroll Administration}
|
||||
\title{Canadian Payroll Administration (2025)}
|
||||
\date{Jun 22, 2025}
|
||||
\release{HR}
|
||||
\author{Alexandre Bobkov}
|
||||
@@ -178,15 +178,15 @@ c. Choice C
|
||||
\chapter{RATES FOR 2025}
|
||||
\label{\detokenize{rates_2025:rates-for-2025}}\label{\detokenize{rates_2025::doc}}
|
||||
|
||||
\section{CANADA / QUEBEC PENSION PLAN (QPP / CPP)}
|
||||
\label{\detokenize{rates_2025:canada-quebec-pension-plan-qpp-cpp}}
|
||||
\section{CANADA / QUEBEC PENSION PLAN (CPP / QPP)}
|
||||
\label{\detokenize{rates_2025:canada-quebec-pension-plan-cpp-qpp}}
|
||||
|
||||
\begin{savenotes}\sphinxattablestart
|
||||
\sphinxthistablewithglobalstyle
|
||||
\raggedright
|
||||
\sphinxcapstartof{table}
|
||||
\sphinxthecaptionisattop
|
||||
\sphinxcaption{CANADA / QUEBEC PENSION PLAN (QPP / CPP)}\label{\detokenize{rates_2025:id1}}
|
||||
\sphinxcaption{CANADA / QUEBEC PENSION PLAN (CPP / QPP)}\label{\detokenize{rates_2025:id1}}
|
||||
\sphinxaftertopcaption
|
||||
\begin{tabular}[t]{\X{130}{190}\X{30}{190}\X{30}{190}}
|
||||
\sphinxtoprule
|
||||
@@ -371,6 +371,15 @@ Maimum annual self\sphinxhyphen{}employed contribution
|
||||
\sphinxtableafterendhook\par
|
||||
\sphinxattableend\end{savenotes}
|
||||
|
||||
|
||||
\section{References}
|
||||
\label{\detokenize{rates_2025:references}}
|
||||
\sphinxAtStartPar
|
||||
\sphinxhref{https://laws-lois.justice.gc.ca/eng/acts/C-8/page-5.html\#docCont}{CPP Maximum contributory earnings}
|
||||
|
||||
\sphinxAtStartPar
|
||||
\sphinxhref{https://laws-lois.justice.gc.ca/eng/acts/C-8/page-3.html\#docCont}{Second additional CPP contributions}
|
||||
|
||||
\sphinxstepscope
|
||||
|
||||
|
@@ -9,8 +9,9 @@
|
||||
\contentsline {chapter}{\numberline {3}REVIEW QUESTIONS}{7}{chapter.3}%
|
||||
\contentsline {section}{\numberline {3.1}New Employee Information}{7}{section.3.1}%
|
||||
\contentsline {chapter}{\numberline {4}RATES FOR 2025}{9}{chapter.4}%
|
||||
\contentsline {section}{\numberline {4.1}CANADA / QUEBEC PENSION PLAN (QPP / CPP)}{9}{section.4.1}%
|
||||
\contentsline {section}{\numberline {4.1}CANADA / QUEBEC PENSION PLAN (CPP / QPP)}{9}{section.4.1}%
|
||||
\contentsline {section}{\numberline {4.2}CPP2 CONTRIBUTION RATES MAXIMUMS}{9}{section.4.2}%
|
||||
\contentsline {section}{\numberline {4.3}References}{10}{section.4.3}%
|
||||
\contentsline {chapter}{\numberline {5}REFERENCES}{11}{chapter.5}%
|
||||
\contentsline {chapter}{\numberline {6}Errors and Errata}{13}{chapter.6}%
|
||||
\contentsline {chapter}{\numberline {7}Glossary}{15}{chapter.7}%
|
@@ -1,5 +0,0 @@
|
||||
This is makeindex, version 2.17 [TeX Live 2023] (kpathsea + Thai support).
|
||||
Scanning style file ./python.ist.......done (7 attributes redefined, 0 ignored).
|
||||
Scanning input file canadianpayrolladministration.idx...done (0 entries accepted, 0 rejected).
|
||||
Nothing written in canadianpayrolladministration.ind.
|
||||
Transcript written in canadianpayrolladministration.ilg.
|
@@ -52,3 +52,7 @@ version = 'Fall 2025'
|
||||
#html_theme = 'alabaster'
|
||||
html_theme = 'classic'
|
||||
html_static_path = ['_static']
|
||||
|
||||
latex_documents = [
|
||||
('index', 'Payroll-Administration_2025.tex', 'Canadian Payroll Administration (2025)', 'Alexandre Bobkov', 'manual'),
|
||||
]
|
||||
|
@@ -2,10 +2,10 @@
|
||||
RATES FOR 2025
|
||||
######################
|
||||
|
||||
CANADA / QUEBEC PENSION PLAN (QPP / CPP)
|
||||
CANADA / QUEBEC PENSION PLAN (CPP / QPP)
|
||||
------------------------------------------
|
||||
|
||||
.. csv-table:: CANADA / QUEBEC PENSION PLAN (QPP / CPP)
|
||||
.. csv-table:: CANADA / QUEBEC PENSION PLAN (CPP / QPP)
|
||||
:header: "Description", "CPP", "QPP"
|
||||
:widths: 130, 30, 30
|
||||
:align: left
|
||||
@@ -22,6 +22,12 @@ CPP2 CONTRIBUTION RATES MAXIMUMS
|
||||
:file: rates/rates_cpp2_2025.csv
|
||||
:delim: ,
|
||||
|
||||
References
|
||||
----------
|
||||
|
||||
`CPP Maximum contributory earnings <https://laws-lois.justice.gc.ca/eng/acts/C-8/page-5.html#docCont>`_
|
||||
|
||||
`Second additional CPP contributions <https://laws-lois.justice.gc.ca/eng/acts/C-8/page-3.html#docCont>`_
|
||||
|
||||
.. comment
|
||||
"Yearly maximum pensionable earnings", "$66,600", "$66,600"
|
||||
|
Reference in New Issue
Block a user