pub fn new<InputValue: Send, InputError: Send, OutputValueA: Send, OutputErrorA: Send, OutputValueB: Send, OutputErrorB: Send>(
name: &str,
output_a_q_size: usize,
output_b_q_size: usize,
ysplit: Box<YSplit<InputValue = InputValue, InputError = InputError, OutputValueA = OutputValueA, OutputErrorA = OutputErrorA, OutputValueB = OutputValueB, OutputErrorB = OutputErrorB> + Send>
) -> (Box<YSplitWrap<InputValue, InputError, OutputValueA, OutputErrorA, OutputValueB, OutputErrorB>>, Box<ChannelWrapper<OutputValueA, OutputErrorA>>, Box<ChannelWrapper<OutputValueB, OutputErrorB>>)