tiny bit of defensive coding