docs: void balance(
      int           kFactor,
      NodeStack     stack,
      GBSNode       fpoint,
      int           fpidx,
      int           maxBal)
    {
      /* Get parent of balance point           */
      GBSNode bparent = stack.node(fpidx - 1);
  
      switch (kFactor)
      {
        case 2:
          balance2(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 4:
          balance4(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 6:
          balance6(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 8:
          balance8(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 12:
          balance12(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 16:
          balance16(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 24:
          balance24(stack, bparent, fpoint, fpidx, maxBal);
          break;
        case 32:
          balance32(stack, bparent, fpoint, fpidx, maxBal);
          break;
        default:
          String x =
           "Unknown K factor in fringe balance: " + kFactor;
          error(x);
          break;
      }
    }