This seems to have added some random disconnects, but there doesn't seem to be a reason for this in the code.