diff --git a/spec/duration.html b/spec/duration.html
index 0332b5cfb0..caa1abab0d 100644
--- a/spec/duration.html
+++ b/spec/duration.html
@@ -543,29 +543,7 @@
Temporal.Duration.prototype.total ( _totalOf_ )
1. If _balanceResult_ is ~negative overflow~, return *-∞*𝔽.
1. Assert: _balanceResult_ is a Time Duration Record.
1. Let _roundRecord_ be ? RoundDuration(_unbalanceResult_.[[Years]], _unbalanceResult_.[[Months]], _unbalanceResult_.[[Weeks]], _balanceResult_.[[Days]], _balanceResult_.[[Hours]], _balanceResult_.[[Minutes]], _balanceResult_.[[Seconds]], _balanceResult_.[[Milliseconds]], _balanceResult_.[[Microseconds]], _balanceResult_.[[Nanoseconds]], 1, _unit_, *"trunc"*, _plainRelativeTo_, _calendarRec_, _zonedRelativeTo_, _timeZoneRec_).
- 1. Let _roundResult_ be _roundRecord_.[[DurationRecord]].
- 1. If _unit_ is *"year"*, then
- 1. Let _whole_ be _roundResult_.[[Years]].
- 1. Else if _unit_ is *"month"*, then
- 1. Let _whole_ be _roundResult_.[[Months]].
- 1. Else if _unit_ is *"week"*, then
- 1. Let _whole_ be _roundResult_.[[Weeks]].
- 1. Else if _unit_ is *"day"*, then
- 1. Let _whole_ be _roundResult_.[[Days]].
- 1. Else if _unit_ is *"hour"*, then
- 1. Let _whole_ be _roundResult_.[[Hours]].
- 1. Else if _unit_ is *"minute"*, then
- 1. Let _whole_ be _roundResult_.[[Minutes]].
- 1. Else if _unit_ is *"second"*, then
- 1. Let _whole_ be _roundResult_.[[Seconds]].
- 1. Else if _unit_ is *"millisecond"*, then
- 1. Let _whole_ be _roundResult_.[[Milliseconds]].
- 1. Else if _unit_ is *"microsecond"*, then
- 1. Let _whole_ be _roundResult_.[[Microseconds]].
- 1. Else,
- 1. Assert: _unit_ is *"nanosecond"*.
- 1. Let _whole_ be _roundResult_.[[Nanoseconds]].
- 1. Return 𝔽(_whole_ + _roundRecord_.[[Remainder]]).
+ 1. Return 𝔽(_roundRecord_.[[Total]]).
@@ -1667,7 +1645,11 @@
1. Assert: If either of _plainRelativeTo_ or _zonedRelativeTo_ are present and not *undefined*, _calendarRec_ is not *undefined*.
@@ -1693,7 +1675,7 @@
1. Else,
1. Let _fractionalSeconds_ be _nanoseconds_ × 10-9 + _microseconds_ × 10-6 + _milliseconds_ × 10-3 + _seconds_.
1. Assert: _fractionalDays_ is not used below.
- 1. Let _remainder_ be *undefined*.
+ 1. Let _total_ be ~unset~.
1. If _unit_ is *"year"*, then
1. Let _yearsDuration_ be ! CreateTemporalDuration(_years_, 0, 0, 0, 0, 0, 0, 0, 0, 0).
1. Let _yearsLater_ be ? AddDate(_calendarRec_, _plainRelativeTo_, _yearsDuration_).
@@ -1720,7 +1702,7 @@
1. Let _oneYearDays_ be _moveResult_.[[Days]].
1. Let _fractionalYears_ be _years_ + _fractionalDays_ / abs(_oneYearDays_).
1. Set _years_ to RoundNumberToIncrement(_fractionalYears_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalYears_ - _years_.
+ 1. Set _total_ to _fractionalYears_.
1. Set _months_ and _weeks_ to 0.
1. Else if _unit_ is *"month"*, then
1. Let _yearsMonths_ be ! CreateTemporalDuration(_years_, _months_, 0, 0, 0, 0, 0, 0, 0, 0).
@@ -1748,7 +1730,7 @@
1. Let _oneMonthDays_ be _moveResult_.[[Days]].
1. Let _fractionalMonths_ be _months_ + _fractionalDays_ / abs(_oneMonthDays_).
1. Set _months_ to RoundNumberToIncrement(_fractionalMonths_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalMonths_ - _months_.
+ 1. Set _total_ to _fractionalMonths_.
1. Set _weeks_ to 0.
1. Else if _unit_ is *"week"*, then
1. Let _isoResult_ be ! AddISODate(_plainRelativeTo_.[[ISOYear]], _plainRelativeTo_.[[ISOMonth]], _plainRelativeTo_.[[ISODay]], 0, 0, 0, truncate(_fractionalDays_), *"constrain"*).
@@ -1769,43 +1751,42 @@
1. Let _oneWeekDays_ be _moveResult_.[[Days]].
1. Let _fractionalWeeks_ be _weeks_ + _fractionalDays_ / abs(_oneWeekDays_).
1. Set _weeks_ to RoundNumberToIncrement(_fractionalWeeks_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalWeeks_ - _weeks_.
+ 1. Set _total_ to _fractionalWeeks_.
1. Else if _unit_ is *"day"*, then
1. Set _days_ to RoundNumberToIncrement(_fractionalDays_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalDays_ - _days_.
+ 1. Set _total_ to _fractionalDays_.
1. Else if _unit_ is *"hour"*, then
1. Let _fractionalHours_ be (_fractionalSeconds_ / 60 + _minutes_) / 60 + _hours_.
1. Set _hours_ to RoundNumberToIncrement(_fractionalHours_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalHours_ - _hours_.
+ 1. Set _total_ to _fractionalHours_.
1. Set _minutes_, _seconds_, _milliseconds_, _microseconds_, and _nanoseconds_ to 0.
1. Else if _unit_ is *"minute"*, then
1. Let _fractionalMinutes_ be _fractionalSeconds_ / 60 + _minutes_.
1. Set _minutes_ to RoundNumberToIncrement(_fractionalMinutes_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalMinutes_ - _minutes_.
+ 1. Set _total_ to _fractionalMinutes_.
1. Set _seconds_, _milliseconds_, _microseconds_, and _nanoseconds_ to 0.
1. Else if _unit_ is *"second"*, then
1. Set _seconds_ to RoundNumberToIncrement(_fractionalSeconds_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalSeconds_ - _seconds_.
+ 1. Set _total_ to _fractionalSeconds_.
1. Set _milliseconds_, _microseconds_, and _nanoseconds_ to 0.
1. Else if _unit_ is *"millisecond"*, then
1. Let _fractionalMilliseconds_ be _nanoseconds_ × 10-6 + _microseconds_ × 10-3 + _milliseconds_.
1. Set _milliseconds_ to RoundNumberToIncrement(_fractionalMilliseconds_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalMilliseconds_ - _milliseconds_.
+ 1. Set _total_ to _fractionalMilliseconds_.
1. Set _microseconds_ and _nanoseconds_ to 0.
1. Else if _unit_ is *"microsecond"*, then
1. Let _fractionalMicroseconds_ be _nanoseconds_ × 10-3 + _microseconds_.
1. Set _microseconds_ to RoundNumberToIncrement(_fractionalMicroseconds_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _fractionalMicroseconds_ - _microseconds_.
+ 1. Set _total_ to _fractionalMicroseconds_.
1. Set _nanoseconds_ to 0.
1. Else,
1. Assert: _unit_ is *"nanosecond"*.
- 1. Set _remainder_ to _nanoseconds_.
+ 1. Set _total_ to _nanoseconds_.
1. Set _nanoseconds_ to RoundNumberToIncrement(_nanoseconds_, _increment_, _roundingMode_).
- 1. Set _remainder_ to _remainder_ - _nanoseconds_.
1. Let _duration_ be ? CreateDurationRecord(_years_, _months_, _weeks_, _days_, _hours_, _minutes_, _seconds_, _milliseconds_, _microseconds_, _nanoseconds_).
1. Return the Record {
[[DurationRecord]]: _duration_,
- [[Remainder]]: _remainder_
+ [[Total]]: _total_
}.