docs: long getYearDifference(long minuendInstant, long subtrahendInstant) {
          int minuendYear = getYear(minuendInstant);
          int subtrahendYear = getYear(subtrahendInstant);
      
          // Inlined remainder method to avoid duplicate calls to get.
          long minuendRem = minuendInstant - getYearMillis(minuendYear);
          long subtrahendRem = subtrahendInstant - getYearMillis(subtrahendYear);
      
          // Balance leap year differences on remainders.
          if (subtrahendRem >= FEB_29) {
              if (isLeapYear(subtrahendYear)) {
                  if (!isLeapYear(minuendYear)) {
                      subtrahendRem -= DateTimeConstants.MILLIS_PER_DAY;
                  }
              } else if (minuendRem >= FEB_29 && isLeapYear(minuendYear)) {
                  minuendRem -= DateTimeConstants.MILLIS_PER_DAY;
              }
          }
      
          int difference = minuendYear - subtrahendYear;
          if (minuendRem < subtrahendRem) {
              difference--;
          }
          return difference;
      }