Damnit! This was difficult to get right!