-----------11111--------------11111----------------------------------------11111--------------11111----------------------------------------11111--------------11111----------------------------------------1111111111111111111-----------------------------------------1111111111111111111-----------------------------------------11111--------------11111----------------------------------------11111--------------11111----------------------------------------11111--------------11111----------------------------------------11111--------------11111----------------------------------------11111--------------11111-----------------------------
----------------11111-----------------------------------------------------------11-----------111-----------------------------------------------111----------------111----------------------------------------------1111--------------111----------------------------------------------111---------------111----------------------------------------------11111111111111111---------------------------------------------111--------------111----------------------------------------------111---------------111----------------------------------------------111---------------111---------------------------------------------111-----------------111-------------------------------------------------------------------------------------------
----------11111111111111111111111111-------------------------------1111111111111111111111111-------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-----------------------------------------------------------1111111-------------------------------------------------------------------
----------------11111-----------------------------------------------------------11-----------111-----------------------------------------------111----------------111----------------------------------------------1111--------------111----------------------------------------------111---------------111----------------------------------------------11111111111111111---------------------------------------------111--------------111----------------------------------------------111---------------111----------------------------------------------111---------------111---------------------------------------------111-----------------111-------------------------------------------------------------------------------------------
----------------11111-----------------------------------------------------------11-----------111-----------------------------------------------111----------------111----------------------------------------------1111--------------111----------------------------------------------111---------------111----------------------------------------------11111111111111111---------------------------------------------111--------------111----------------------------------------------111---------------111----------------------------------------------111---------------111---------------------------------------------111-----------------111-------------------------------------------------------------------------------------------
----111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------111-------------11111-------------111---------------------------1111111111111111111111111111---------------------------1111111111111111111111111111--------------------------------------------------------------------------------------
*)