public override List <DecodedFrame> GenerateFrames()
        {
            var res = new List <DecodedFrame>();

            int shift = 0;

            for (int k = 1; k <= 39; k++)
            {
                if (k > 12)
                {
                    shift++;
                }
                var f = new DecodedFrame();
                for (int i = -23 + k; i < -11 + k; i++)
                {
                    for (int j = 0; j < 12; j++)
                    {
                        PlaceSquare(f, (i + 2 * j) % 2 == 0 ? 1 : 2, i + j, j);
                    }
                }

                f.Layer1Color = LayerColor.BlackWhite;
                f.Layer2Color = LayerColor.Blue;
                f.SetImage(null, true);
                f.CreateThumbnail();
                res.Add(f);
            }
            return(res);
        }