docs: function distinct(parent$, fn = (a, b) => valuesChanged(a, b)) {
    let newStream = fork$(parent$, value => value);
    parent$.listeners.push(function deepSelectValue(value) {
      if (fn(newStream.value, value)) {
        newStream(value);
      }
    });
    return newStream;
  }