 
     guard let data = data else {
       let networkError = self.networkServiceError(HTTPURLResponse: HTTPURLResponse, error: error) ?? NetworkServiceError.noDataProvided
-      return .failure(networkError, URLResponse as? HTTPURLResponse)
+      return .failure(networkError, HTTPURLResponse)
     }
 
     switch HTTPURLResponse.statusCode {

/// # Failure case
///
/// Defines a response that failed, contains:
///   - Contains the error produced when attempting to parse the Model
///   - A HTTPURLResponse if it exists
///   - A NetworkServiceError
///
/// ## Reasons for failure can be (in order):
///   1. No HTTPURLResponse with a URLSession error

        return .failure(.statusCodeError(statusCode: HTTPURLResponse.statusCode), HTTPURLResponse)
      }
    default:
      if let error = resource.error(from: data) {
        return .failure(.couldNotParseModel(error: error), HTTPURLResponse)
      } else {
        return .failure(.statusCodeError(statusCode: HTTPURLResponse.statusCode), HTTPURLResponse)
      }
