 
     // for this unit test, the input is valid so we don't have to catch the exception
     let result = try! convertHexToBase64(input)
+    
+    print("expected\t\(output)\noutput\t\t\(result)")
 
     return (result == output)
 }

//
func convertHexToBase64(input: String) throws -> String {

    // an empty input string produces an empty Base64 string
    guard !input.isEmpty else {
        return ""
    }

    let bytes = try? convertHexToBytes(input)

    var result = ""

    // for each 6-bit chunk

        // map 6-bit chunk to Base64 index table

        // add encoded character to result

    return result
}

    }

    // extract raw bytes from input
    var result = [Int](count: input.characters.count / 2, repeatedValue: 0)
    var index = input.startIndex
    for i in 1...(input.characters.count / 2) {
        let str = String(input[index]) + String(input[index.successor()])
        if let digit = Int(str, radix: 16) {
            result[i-1] = digit
        } else {
            throw Parameter.InvalidHexString(str: str)
        }
        index = index.successor().successor()
    }

    return result
}

//
