proving for the 4th time that I can overload the streaming operator