GSF we do not need to return {} if the vector is already empty, we can just return it
GSF we do not need to return {} if the vector is already empty, we can just return it
GSF we do not need to return {} if the vector is already empty, we can just return it