finding empty spots should work better