docs: @Override
    public <T> Streamlet<T> applyOperator(IStreamletOperator<R, T> operator, StreamGrouping grouper) {
      checkNotNull(operator, "operator can't be null");
      checkNotNull(grouper, "grouper can't be null");
  
      StreamletImpl<T> customStreamlet = new CustomStreamlet<>(this, operator, grouper);
      addChild(customStreamlet);
      return customStreamlet;
    }