------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------E------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------oo---------------------------------o-o---------ooooo-----XXX----ooo-------------------------------
--------------------------------------XXX-----------------------------------------------------------------------XXX-------------XXXXXXX----------------------E---E---------X--------
-------------------------XXXoo-------------------XXX----------------E---------------------------------------------------------------------------------------------------------------
--------------------------------X---------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------ooooo-------------------------------------------------------------------------------------------------------
--------------------------------------------XXX-------XXXXX------------XXXXXXX-------?--------------XXXX---XXX-------XXX----------------------------------------------X-------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------E--------------------------------------------
XXXXXXXXXXX--------XXXX------------------------------------------------------XXX-XXX--------XXXXXX-------------------------XXXXXXXXXXXXXXXX---------XXXXXXXXXXXXXX------------------
