Let \(T^* = \{P^*_1, \ldots , P^*_N\}\) be a polygonal tiling of a simply connected region \(R^*\) in the plane, and let \(T = \{P_1, \ldots , P_N\}\) be a noisy version of \(T^*\) obtained by making small perturbations to the coordinates of the vertices of the polygons in \(T^*\) . In general, T will only be an approximate tiling of a simply connected region R that closely approximates \(R^*\) , due to the presence of gaps and overlaps between the perturbed polygons in T. The areas of these gaps and overlaps are typically small relative to the areas of the polygons themselves. Suppose that we are given the approximate tiling T and we wish to recover the tiling \(T^*\) . To address this problem, we introduce a new algorithm, called smart_repair, to modify the polygons in T to produce a tiling \(\widetilde{T} = \{\widetilde{P}_1, \ldots , \widetilde{P}_N\}\) of R that closely approximates \(T^*\) , with special attention given to reproducing the adjacency relations between the polygons in \(T^*\) as closely as possible. The motivation for this algorithm comes from computational redistricting, where algorithms are used to build districts from smaller geographic units (e.g., voting precincts). Because districts in most U.S. states are required to be contiguous, these algorithms are fundamentally based on adjacency relations between units. Unfortunately, the best available map data for unit boundaries is often noisy, containing gaps and overlaps between units that can lead to substantial inaccuracies in the adjacency relations. Simple repair algorithms commonly included in geographical software packages can actually exacerbate these inaccuracies, with the result that algorithmically drawn districts based on the “repaired" units may be discontiguous, and hence not legally compliant. The algorithm presented here is specifically designed to avoid such problems to the greatest extent possible. A Python implementation of the smart_repair algorithm is publicly available as part of the Data and Democracy Lab’s Maup package, available at https://github.com/mggg/maup.