     
     /// Should SSL verification be disabled
     private var disableSSLVerification = false
-    
+
+    /// Should HTTP/2 protocol be used
+    private var useHTTP2 = false
+
+    /// Data that represents the "HTTP/2 " header status line prefix
+    fileprivate static let Http2StatusLineVersion = "HTTP/2 ".data(using: .utf8)!
+
+    /// Data that represents the "HTTP/2.0 " (with a minor) header status line prefix
+    fileprivate static let Http2StatusLineVersionWithMinor = "HTTP/2.0 ".data(using: .utf8)!
+
     /// Client request option enum
     public enum Options {
         

        /// - Note: This is very useful when working with self signed certificates.
        case disableSSLVerification
        
    }
    
    /// Response callback closure type

        for option in options  {
            switch(option) {

                case .method, .headers, .maxRedirects, .disableSSLVerification, .useHTTP2:
                    // call set() for Options that do not construct the URL
                    set(option)
                case .schema(var schema):
