------------------------------------------------------------------------------|
----0--0--0--0--1--0-----------3--0-----0--0--0--0--1--0-----------0-----0----|
-0--------------------2--2--2--------0--------------------2--2--0-----0-------|
------------------------------------------------------------------------------|
------------------------------------------------------------------------------|
------------------------------------------------------------------------------|
----------------------------------------------------0-------------------------|
-0--0--0--1--0-----------3--0-----0--0--0--0--1--1-----3--0--3-----0--0--0----|
----------------2--2--2--------0--------------------------------0-------------|
------------------------------------------------------------------------------|
------------------------------------------------------------------------------|
------------------------------------------------------------------------------|
-------------------------3----------------------------------------------------|
-0--1--0-----------3--0--3----------------------------------------------------|
----------2--2--2--------0----------------------------------------------------|
-------------------------0----------------------------------------------------|
------------------------------------------------------------------------------|
------------------------------------------------------------------------------|
|