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