this was annoying me for a while