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