code: function longestPositiveIncreasingSubsequence(ns, newStart) {
    let seq = [],
      is = [],
      l = -1,
      pre = new Array(ns.length);
  
    for (let i = newStart, len = ns.length; i < len; i++) {
      let n = ns[i];
      if (n < 0) continue;
      let j = findGreatestIndexLEQ(seq, n);
      if (j !== -1) pre[i] = is[j];
      if (j === l) {
        l++;
        seq[l] = n;
        is[l]  = i;
      } else if (n < seq[j + 1]) {
        seq[j + 1] = n;
        is[j + 1] = i;
      }
    }
  
    for (let i = is[l]; l >= 0; i = pre[i], l--) {
      seq[l] = i;
    }
  
    return seq;
  }
docs: Picked from https://github.com/adamhaile/surplus/blob/master/src/runtime/content.ts#L368 return an array of the indices of ns that comprise the longest increasing subsequence within ns