public char mergeTransmissions( Receiver receiver, List<Transmission> it, long bit, int Milliseconds) { assert it.size() > 0; Iterator<Transmission> i = it.iterator(); Transmission first = i.next(); int value = 0xff & first.getByteAtTime(bit); while (i.hasNext()) { Transmission next = i.next(); int nval = 0xff & next.getByteAtTime(bit); value |= (nval << 8) ^ (value << 8); // compute corrupted bits value |= nval; } return (char) value; }