diff --git a/docs/enzymes.rst b/docs/enzymes.rst
index 7a0c337a19724d27fb0f41c652d90b11f8049dcb..62ce46f5ad6437210ac2ac102fefb4b206bdbf2b 100644
--- a/docs/enzymes.rst
+++ b/docs/enzymes.rst
@@ -38,7 +38,7 @@ Available enzymes
 34: :ref:`peps2`    35: :ref:`prol`     36: :ref:`protk`
 37: :ref:`staphI`   38: :ref:`therm`    39: :ref:`throm`
 40: :ref:`thromsg`  41: :ref:`tev`      42: :ref:`tryps`
-43: :ref:`asp-n2`
+43: :ref:`asp-n2`   44: :ref:`proa`
 ==================  ==================  ==================
 
 .. _arg-c:
@@ -881,3 +881,20 @@ cleaving rule:
 * ``(,D)``
 
 More information: https://web.expasy.org/peptide_cutter/peptidecutter_enzymes.html#AspN
+
+
+
+.. _proa:
+
+ProAlanase
+..........
+
+ProAlanase Sequencing Grade preferentially cleaves after A or P (`P1`).
+
+**RPG definition:**
+
+cleaving rule:
+
+* ``(A or P,)``
+
+More information: https://france.promega.com/products/mass-spectrometry/proteases-and-surfactants/proalanase-mass-spec-grade?catNum=VA2161
diff --git a/docs/userguide.rst b/docs/userguide.rst
index 9bd5640d510d0c5af328ee9d4b1f33566cc9ffa8..fb0cc32124f4b3c445aebdd0f69cf8a52fc5d8d4 100644
--- a/docs/userguide.rst
+++ b/docs/userguide.rst
@@ -172,6 +172,11 @@ Here are all available options in **RPG**:
 
 **-m, -\\-miscleavage**: Percentage of miscleavage, between 0 and 100, by enzyme(s). It should be in the same order as the -\\-enzymes options (*e.g.* -m 15 5.2 10). It works only for sequential digestion (default: 0). See :ref:`miscleavage` for more information.
 
+
+
+**-t, -\\-theoretical**: Maximum number of miscleavages, by enzyme(s). RPG will produce all theoretical peptides allowing at most -t miscleavages. It should be in the same order than -\\-enzymes options (*e.g.* -t 1 3 2). Only for sequential digestion (default: 0). See :ref:`theoretical` for more information.
+
+
 **-n, -\\-noninteractive**: Non-interactive mode. No standard output, only error(s) (-\\-quiet enable, overwrite -v). If output filename already exists, output file will be overwritten. See :ref:`nointer` for more information.
 
 **-x, -\\-cleave**: Cleavage site(s) when adding enzyme in non-interactive mode (*e.g.* -x "(D or E,)", similar to -x "(D,)" "(E,)". See :ref:`addenzyme` for more information.
@@ -269,6 +274,38 @@ For example, using:
 will assign a miscleavage probability of `1.4%` to enzyme `1`, a miscleavage probability of `2.6%` to enzyme `2` and a miscleavage probability of `0%` to enzyme `3` (default behavior). For enzyme `1`, each cleavage will then have a probability of 0.014 to **not** occur.
 
 
+.. _theoretical:
+
+All theoretical miscleavage
+===========================
+
+You can compute all theoretical peptides with at most **n** miscleavages. **RPG** will then produce all peptides without any miscleavage, with 1 miscleavage, with 2 miscleavage, etc, up to **n**.
+
+For example:
+
+.. code-block:: shell
+
+    $ rpg -s AAWBBBWCCCWD -e 3 -t 1
+    >Input_0_BNPS-Skatole_3_3_346.38608_5.46
+    AAW
+    >Input_1_BNPS-Skatole_7_4_204.22848_5.46
+    BBBW
+    >Input_2_BNPS-Skatole_11_4_513.64488_5.45
+    CCCW
+    >Input_3_BNPS-Skatole_12_1_133.10388_3.48
+    D
+    >Input_4_BNPS-Skatole_7_7_532.59928_5.46
+    AAWBBBW
+    >Input_5_BNPS-Skatole_11_8_699.85808_5.45
+    BBBWCCCW
+    >Input_6_BNPS-Skatole_12_5_628.73348_3.48
+    CCCWD
+    >Input_7_BNPS-Skatole_11_11_1028.22888_5.45
+    AAWBBBWCCCW
+    >Input_8_BNPS-Skatole_12_9_814.94668_3.48
+    BBBWCCCWD
+
+
 .. _nointer:
 
 Non-interactive mode