(---------------------------------------------------------------)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(-------------------------------------------------------------------------------)