         case .secondsSince1990(let seconds):
 
             // first convert double value to integer/fraction tuple
-            let tuple = secondsToTuple(seconds)
+            let tuple = convertDoubleTo64bitFixPoint(seconds)
 
             // them make bytes out of them
             let b0 = typetobinary(tuple.integer)


import Foundation

internal func secondsToTuple(_ seconds: Double) -> (integer: UInt32, fraction: UInt32) {
    let fraction: UInt32 = UInt32( (seconds-floor(seconds))*4_294_967_296 )
    let integer: UInt32 = UInt32(seconds)

    return (integer: integer, fraction: fraction)
}

internal func tupleToSeconds(integer: UInt32, fraction: UInt32) -> Double {
    return Double(integer) + Double(fraction)/4_294_967_296

}

extension OSCTimeTag: OSCType {


            let frac = binarytotype([Byte](data.suffix(4)), UInt32.self)

            // convert to double
            let seconds = conver64bitFixPointToDouble(integer: secs, fraction: frac)

            self = .secondsSince1990(seconds)
        }
