Rearrange a level into a new visual layout while keeping it the exact same level to play — the cover graph, tile types and order are byte-identical, so the original seeds stay valid and a bot completes it the same, and availability + cover-depth always read correctly. The board is split into rigid overlap-blobs (tiles that overlap each other) which are rotated/flipped and recomposed; every overlap inside a blob is preserved. Перекомпонуй рівень у нову візуальну розкладку, лишаючи його тим самим для гри — граф перекриття, типи й порядок плиток незмінні, тож оригінальні сіди валідні, бот проходить так само, а доступність і глибина завжди коректні. Дошка ділиться на жорсткі блоки перекриття, які обертаються/дзеркаляться й перекомпоновуються.
FACT (validated in the IL2CPP dump): gameplay, unlock order, fill order and seeds depend only on the stored cover graph + tile types + tile index — positions are purely visual; the blocker graph is authored, never derived from geometry. Moving rigid overlap-blobs preserves every overlap, so availability/depth stay exact. LIMIT: a level that is one connected blob (e.g. a ring) can only be rotated/mirrored — you can't honestly unroll it without misrepresenting depth. MISSING: final in-game check via the Unity round-trip. ФАКТ (з дампу IL2CPP): геймплей, розблокування, заповнення й сіди залежать лише від збереженого графа перекриття + типів + індексу; позиції суто візуальні, граф блокерів авторський, не з геометрії. Рух жорстких блоків зберігає кожне перекриття — доступність/глибина точні. ЛІМІТ: рівень з одного блоку (напр. кільце) можна лише обертати/дзеркалити. БРАКУЄ: перевірка в Unity.