docs: protected Node findNextWrite() {
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
              Tr.debug(tc, "findNextWrite entry: on node " + this + "With status: " + status + "and positive ratio of: " + getPriorityRatioPositive());
          }
  
          if (status == NODE_STATUS.REQUESTING_WRITE) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "findNextWrite exit: node to write next is: " + this.toStringDetails());
              }
              return this;
          } else {
              // go through all dependents in order
              for (int i = 0; i < dependents.size(); i++) {
                  Node n = dependents.get(i);
  
                  Node nextWrite = n.findNextWrite();
                  if (nextWrite != null) {
                      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                          Tr.debug(tc, "findNextWrite exit: next write node found. stream-id: " + nextWrite.getStreamID() + " node hc: " + nextWrite.hashCode());
                      }
                      return nextWrite;
                  }
  
              }
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "findNextWrite exit: null");
              }
              return null;
          }
      }