Made protocols a bit more error resistant