           unstable_bodies: []
           bodies: JSON.parse JSON.stringify ({user: b.user, neighbors: b.neighbors, x: b.x, y: b.y, radius: b.radius, x_target: b.x_target} for b in laid_out)
           iteration: 0
-
+      true
 
     if save_snapshots
       current_cleanup = []
 
     if !layout_params.show_histogram_layout
       for o,idx in opinions 
-        place_body o,idx
+        success = place_body o,idx
+        if !success
+          return false
 
       if save_snapshots
         running_state.cleanup ?= []


  placer = Placer opts  
  nodes = placer.pixelated_layout()

  # sort so we can optimize by knowing that bodies are ordered by x_target
  nodes.sort (a,b) -> a.x_target - b.x_target


          if !placed && consider_only_prime_positions == false && move_within == width
            console.error("Could not place", xt, o)
            return false
        break if placed 

      if save_snapshots
