 /// - Returns: a boolean indicating whether the receiver is later than the given date
 ///
 public func >(ldate: JHDate, rdate: JHDate) -> Bool {
-    return ldate.timeIntervalSinceReferenceDate > rdate.timeIntervalSinceReferenceDate
+    return ldate.date.compare(rdate.date) == .OrderedDescending
 }
 
 

/// - Returns: a boolean indicating whether the receiver is earlier than the given date
///
public func <(ldate: JHDate, rdate: JHDate) -> Bool {
    return ldate.timeIntervalSinceReferenceDate < rdate.timeIntervalSinceReferenceDate
}

/// Returns whether the given date is earlier than the receiver.

/// - Returns: a boolean indicating whether the receiver is equal to the given date
///
public func ==(ldate: JHDate, rdate: JHDate) -> Bool {
    return ldate.date.isEqualToDate(rdate.date)
}

/// Returns whether the given date is later than the receiver.
