     }
 }
 
-// MARK: Arithmetic Operators
+// MARK: - Arithmetic Operators
 
 /// Returns new `Timestamp` which is a result of adding `baseValues`
 /// of both parameters. New `Timestamp` has the same `Unit` as `lhs`.

        return Int(round(baseValue / unit.baseValueMultiplier))
    }

    /// Returns a new instance of `Timestamp` with given `Unit`.
    ///
    /// - Parameter otherUnit: Specified in which `Unit` 
    ///   new `Timestamp` should be represented.
    func converted(to otherUnit: Unit) -> Timestamp {
        return Timestamp(value: baseValue / otherUnit.baseValueMultiplier, unit: otherUnit)
    }
}


    let value: Double

    /// Represnts a unit in which `Timestamp` calculates `baseValue`.
    var unit: Unit {
        didSet {
            baseValue = value * unit.baseValueMultiplier
        }
    }

    /// Represents a value which doesn't depend on any unit
    /// or unit's value. It can be treated as a base unit
    /// which all `Unit`s can be calculated from or stored in.
    /// Its value depends on a multiplier specified for each `Unit`.
    private(set) var baseValue: Double

    /// Creates a new instance with given `value` in specified
    /// `unit`. `baseValue` is calculaed based on `value` and `unit`.
    ///
    /// - Parameter:
    ///     - value: Number of units.
    ///     - unit:  Unit in which `Timestamp` is represented.
    init(value: Double, unit: Unit) {
        self.value = value
        self.unit = unit
