handles multiple locations