version 2 with spheres