What problem does it solve? Shrinking an existing Littleman .man program's footprint without changing its behavior is tedious and error-prone by hand. This Skill automates layout compression by rigidly translating room/display components and re-routing pipes with preserved connection points, orientations, and cell counts, while verifying per-case ticks stay identical when the problem is known. ## Core Features & Use Cases - Simulated-annealing placement: Moves rigid components into smaller target bounding boxes using optimize-layout.mjs with tunable cluster thresholds, seeds, iterations, and restarts. - Exact-length pipe re-routing: Reuses pipes that survive translation and re-routes the rest with equal cell counts, including parity repair and local short-pipe repair passes. - Iterative compression chains: Feeds each successful candidate into the next round, stepping target side down gradually instead of jumping to the theoretical lower bound. - Performance verification: Judges candidates with judge.mjs --no-save --no-submit to confirm suite fingerprints and per-case ticks match the baseline before reporting score reduction. - Use Case: Given a working but oversized .man solution, repeatedly compress it from side 40 down toward the lower bound, verifying each candidate still passes all public cases with identical ticks. ## Quick Start Use the icfpc-layout-optimizer skill to compress this Littleman .man file to a smaller footprint while preserving its structure and per-case ticks.