     
     public let stream: OutputStream
     public let configuration: Configuration
-    fileprivate let writeScalar: ((Unicode.Scalar) -> Void)
+    fileprivate let writeScalar: ((UnicodeScalar) -> Void)
 
     fileprivate var isFirstRecord: Bool = true
     fileprivate var isFirstField: Bool = true

        configuration: Configuration = Configuration()
        ) where T.CodeUnit == UInt32 {
        
        self.init(stream: stream, configuration: configuration) { (scalar: Unicode.Scalar) in
            codecType.encode(scalar) { (code: UInt32) in
                var code = (endian == .big) ? code.bigEndian : code.littleEndian
                let count = withUnsafeBytes(of: &code) { (buffer) -> Int in

        configuration: Configuration = Configuration()
        ) where T.CodeUnit == UInt8 {
        
        self.init(stream: stream, configuration: configuration) { (scalar: UnicodeScalar) in
            codecType.encode(scalar) { (code: UInt8) in
                var code = code
                let count = stream.write(&code, maxLength: 1)
