         }
 //        print("categoriesHidden=\(categoriesHidden)")
 		
-        let request = Alamofire.request(feed, method: .get, parameters: ["includePaid": settings.includePaid, "APIKEY": settings.APIKEY, "deviceID": settings.deviceID, "appID": settings.appID, "jsonHideSections": categoriesHiddenParam])
+        let request = AF.request(feed, method: .get, parameters: ["includePaid": settings.includePaid, "APIKEY": settings.APIKEY, "deviceID": settings.deviceID, "appID": settings.appID, "jsonHideSections": categoriesHiddenParam])
 
             request.validate()
             request.responseJSON{ response in

	
	// make a silent HTTP GET request to the click tracking URL provided in the JSON's link field
    class func trackNewsClick(_ link: String) {
        #if DEBUG
            print("HighFiApi.trackNewsClick(\(link))")
        #endif
        let settings = Settings.sharedInstance
		
		DispatchQueue.global(qos: DispatchQoS.QoSClass.default).async {
			Alamofire.request(link, parameters: ["APIKEY": settings.APIKEY, "appID": settings.appID])
	            .response { response in
    	            #if DEBUG
        	            print("trackNewsClick, request: \(String(describing: response.request))")
            	        // print("trackNewsClick, response: \(response)")
                	    // print("trackNewsClick, error: \(error)")
                	#endif
	        }
		}
    }
	
	// e.g. https://fi.high.fi/api/?act=listCategories&usedLanguage=finnish

			#endif

            switch response.result {
                case .success(let value):
                    guard let json = value as? [String: AnyObject] else {
                        #if DEBUG
                            print("Error: \(#function)\n", "Did not get JSON dictionary in response")
                        #endif
