subchannelOf static method
The channel an added/removed line travelled on.
The one place such a line is taken apart, and it is safe because the line is the channel, a space and the title: the channel is everything before the first space, and a channel name never contains one.
Implementation
static String subchannelOf(String line) {
var space = line.indexOf(' ');
return space < 0 ? line : line.substring(0, space);
}