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

    fileprivate init(
        stream: OutputStream,
        configuration: Configuration,
        writeScalar: @escaping ((Unicode.Scalar) -> Void)) {
        
        self.stream = stream
        self.configuration = configuration

        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)
