         }
     }
     
-    mutating func set(httoAcceptCharsets acceptCharsets: [Quality<String.Encoding>]) {
+    mutating func set(httpAcceptCharsets acceptCharsets: [Quality<String.Encoding>]) {
         self.setValue(nil, forHTTPHeaderField: "Accept-Charset")
         for charset in acceptCharsets.sorted(by: { $0.quality > $1.quality }) {
             self.addValue(charset.stringifed, forHTTPHeaderField: "Accept-Charset")

        guard let credential = credential else { return }
        switch type {
        case .basic:
            let authStr = "\(credential.user ?? ""):\(credential.password ?? "")"
            if let base64Auth = authStr.data(using: .utf8)?.base64EncodedString() {
                self.setValue("Basic \(base64Auth)", forHTTPHeaderField: "Authorization")
            }

        }
    }
    
    mutating func set(httpAcceptCharset acceptCharset: String.Encoding) {
        let cfEncoding = CFStringConvertNSStringEncodingToEncoding(acceptCharset.rawValue)
        if let charsetString = CFStringConvertEncodingToIANACharSetName(cfEncoding) as String? {
            self.addValue(charsetString, forHTTPHeaderField: "Accept-Charset")
        }
    }
    
    mutating func set(httpAcceptCharset acceptCharset: Quality<String.Encoding>) {
        self.addValue(acceptCharset.stringifed, forHTTPHeaderField: "Accept-Charset")
    }
    
    mutating func set(httpAcceptCharsets acceptCharsets: [String.Encoding]) {
        self.setValue(nil, forHTTPHeaderField: "Accept-Charset")
        for charset in acceptCharsets {
            let cfEncoding = CFStringConvertNSStringEncodingToEncoding(charset.rawValue)
