don't assume everything has a guard :(