empty messages now include length if it’s not zero