public long add(long millis, long value) {
        int year = get(millis);
        int newYear = year + FieldUtils.safeToInt(value);
        if (year < 0) {
            if (newYear >= 0) {
                newYear++;
            }
        } else {
            if (newYear <= 0) {
                newYear--;
            }
        }
        return set(millis, newYear);
    }