     
     fileprivate func box(_ date: Date) throws -> JSON {
         switch self.options.dateCodingStrategy {
-        case .deferredToDate:
-            // Must be called with a surrounding with(pushedKey:) call.
-            try date.encode(to: self)
-            return self.storage.popContainer()
+//        case .deferredToDate:
+//            // Must be called with a surrounding with(pushedKey:) call.
+//            try date.encode(to: self)
+//            return self.storage.popContainer()
             
         case .secondsSince1970:
             return .double(date.timeIntervalSince1970)

    public init(
        outputFormatting: OutputFormatting = .compact,
        fieldNamingPolicy: FieldNamingPolicy = .identity,
        dateCodingStrategy: DateCodingStrategy = .deferredToDate,
        dataCodingStrategy: DataCodingStrategy = .base64,
        nonConformingFloatCodingStrategy: NonConformingFloatCodingStrategy = .throw,
        userInfo: [CodingUserInfoKey: Any] = [:]

        }
        
        switch self.options.dateCodingStrategy {
//        case .deferredToDate:
//            self.storage.push(container: value)
//            let date = try Date(from: self)
//            self.storage.popContainer()
//            return date
            
        case .secondsSince1970:
            let double = try self.unbox(value, as: Double.self)!
