diff --git a/modules/conop/doc/aminoacid.rst b/modules/conop/doc/aminoacid.rst
index de15eb98a91c3fe53a9008c20d314d4aa8954edc..a33104ca6b91085b63a3a0df02b100ebd1d9c2d7 100644
--- a/modules/conop/doc/aminoacid.rst
+++ b/modules/conop/doc/aminoacid.rst
@@ -79,63 +79,4 @@ Converter functions
     
   .. method:: Empty()
   
-    Whether the set is empty, i.e. doesn't contain any amino acids.
-
-
-Mapping functions
---------------------------------------------------------------------------------
-
-The following functions help to convert one residue into another by reusing as
-much as possible from the present atoms. They are mainly meant to map from
-standard amino acid to other standard amino acids or from modified amino acids
-to standard amino acids.
-
-.. function:: CopyResidue(src_res, dst_res, editor)
-
-  Copies the atoms of ``src_res`` to ``dst_res`` using the residue names
-  as guide to decide which of the atoms should be copied. If ``src_res`` and
-  ``dst_res`` have the same name, or ``src_res`` is a modified version of
-  ``dst_res`` (i.e. have the same single letter code), CopyConserved will be
-  called, otherwise CopyNonConserved will be called.
-
-  :param src_res: The source residue
-  :type src_res: :class:`~ost.mol.ResidueHandle`
-  :param dst_res: The destination residue
-  :type dst_res: :class:`~ost.mol.ResidueHandle`
-
-  :returns: true if the residue could be copied, false if not.
-
-.. function:: CopyConserved(src_res, dst_res, editor)
-
-  Copies the atoms of ``src_res`` to ``dst_res`` assuming that the parent
-  amino acid of ``src_res`` (or ``src_res`` itself) are identical to ``dst_res``.
-
-  If ``src_res`` and ``dst_res`` are identical, all heavy atoms are copied
-  to ``dst_res``. If ``src_res`` is a modified version of ``dst_res`` and the
-  modification is a pure addition (e.g. the phosphate group of phosphoserine),
-  the modification is stripped off and all other heavy atoms are copied to
-  ``dst_res``. If the modification is not a pure addition, only the backbone
-  heavy atoms are copied to ``dst_res``.
-
-  Additionally, the selenium atom of ``MSE`` is converted to sulphur.
-
-  :param src_res: The source residue
-  :type src_res: :class:`~ost.mol.ResidueHandle`
-  :param dst_res: The destination residue
-  :type dst_res: :class:`~ost.mol.ResidueHandle`
-
-  :returns: a tuple of bools stating whether the residue could be copied and
-    whether the Cbeta atom was inserted into the ``dst_res``.
-
-.. function:: CopyNonConserved(src_res, dst_res, editor)
-
-  Copies the heavy backbone atoms and Cbeta (except for ``GLY``) of ``src_res``
-  to ``dst_res``.
-
-  :param src_res: The source residue
-  :type src_res: :class:`~ost.mol.ResidueHandle`
-  :param dst_res: The destination residue
-  :type dst_res: :class:`~ost.mol.ResidueHandle`
-
-  :returns: a tuple of bools stating whether the residue could be copied and
-    whether the Cbeta atom was inserted into the ``dst_res``.
+    Whether the set is empty, i.e. doesn't contain any amino acids.
\ No newline at end of file
diff --git a/modules/mol/alg/doc/molalg.rst b/modules/mol/alg/doc/molalg.rst
index 1641b6b495143c263417018e8d86224bfadca955..842c5a8d8334aa99c997ccb66658018bdcc63b4b 100644
--- a/modules/mol/alg/doc/molalg.rst
+++ b/modules/mol/alg/doc/molalg.rst
@@ -1187,3 +1187,65 @@ used to skip frames in the analysis.
 .. automodule:: ost.mol.alg.structure_analysis
    :members:
 
+
+.. _mapping-functions:
+
+Mapping functions
+--------------------------------------------------------------------------------
+
+The following functions help to convert one residue into another by reusing as
+much as possible from the present atoms. They are mainly meant to map from
+standard amino acid to other standard amino acids or from modified amino acids
+to standard amino acids.
+
+.. function:: CopyResidue(src_res, dst_res, editor)
+
+  Copies the atoms of ``src_res`` to ``dst_res`` using the residue names
+  as guide to decide which of the atoms should be copied. If ``src_res`` and
+  ``dst_res`` have the same name, or ``src_res`` is a modified version of
+  ``dst_res`` (i.e. have the same single letter code), CopyConserved will be
+  called, otherwise CopyNonConserved will be called.
+
+  :param src_res: The source residue
+  :type src_res: :class:`~ost.mol.ResidueHandle`
+  :param dst_res: The destination residue
+  :type dst_res: :class:`~ost.mol.ResidueHandle`
+
+  :returns: true if the residue could be copied, false if not.
+
+.. function:: CopyConserved(src_res, dst_res, editor)
+
+  Copies the atoms of ``src_res`` to ``dst_res`` assuming that the parent
+  amino acid of ``src_res`` (or ``src_res`` itself) are identical to ``dst_res``.
+
+  If ``src_res`` and ``dst_res`` are identical, all heavy atoms are copied
+  to ``dst_res``. If ``src_res`` is a modified version of ``dst_res`` and the
+  modification is a pure addition (e.g. the phosphate group of phosphoserine),
+  the modification is stripped off and all other heavy atoms are copied to
+  ``dst_res``. If the modification is not a pure addition, only the backbone
+  heavy atoms are copied to ``dst_res``.
+
+  Additionally, the selenium atom of ``MSE`` is converted to sulphur.
+
+  :param src_res: The source residue
+  :type src_res: :class:`~ost.mol.ResidueHandle`
+  :param dst_res: The destination residue
+  :type dst_res: :class:`~ost.mol.ResidueHandle`
+
+  :returns: a tuple of bools stating whether the residue could be copied and
+    whether the Cbeta atom was inserted into the ``dst_res``.
+
+.. function:: CopyNonConserved(src_res, dst_res, editor)
+
+  Copies the heavy backbone atoms and Cbeta (except for ``GLY``) of ``src_res``
+  to ``dst_res``.
+
+  :param src_res: The source residue
+  :type src_res: :class:`~ost.mol.ResidueHandle`
+  :param dst_res: The destination residue
+  :type dst_res: :class:`~ost.mol.ResidueHandle`
+
+  :returns: a tuple of bools stating whether the residue could be copied and
+    whether the Cbeta atom was inserted into the ``dst_res``.
+
+