Not sure what the `!!` is for; won't empty() always return a boolean?