||||||||-----------------------------------||------------
||-----||------------------------------------------------
||------||-||--||--||||--|||||----|||||----||---||||-----
|||||||||--||||---||--||-||---||--||---||--||--||--||----
||------||-|||---|||||||-||----||-||----||-||-|||||||----
||-----||--||-----||-----||----||-||----||-||--||--------
|||||||----||------|||||-||----||-||----||-||---|||||----
---------------------------------------------------------
---------------------------------------------------------
-------------------||------------------------------------
------------------------|||||----------------------------
-------------------||--||--------------------------------
-------------------||----||||----------------------------
-------------------||-------||---------------------------
-------------------||--||||||----------------------------
---------------------------------------------------------
---------------------------------------------------------
-------|||---||----------|||||----------------------------
--------||--------||||---||-------------------------------
--------||---||--||--||--||-------------------------------
--------||---||-|||||||--||||-----------------------------
--------||---||--||------||-------------------------------
--------||---||---|||||--||-------------------------------
-------------------------||-------------------------------
--------------------------------------------------------