docs: public int defineTurnBits(int index, int shift) {
          if (maxTurnCosts == 0)
              return shift;
  
              // optimization for turn restrictions only
          else if (maxTurnCosts == 1) {
              turnRestrictionBit = 1L << shift;
              return shift + 1;
          }
  
          int turnBits = Helper.countBitValue(maxTurnCosts);
          turnCostEncoder = new EncodedValueOld("TurnCost", shift, turnBits, 1, 0, maxTurnCosts) {
              // override to avoid expensive Math.round
              @Override
              public final long getValue(long flags) {
                  // find value
                  flags &= mask;
                  flags >>>= shift;
                  return flags;
              }
          };
          return shift + turnBits;
      }