     }
 }
 
+/**
+ [Wikipedia]: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes "See full list"
+ 
+ A request that uses a city name and optional country code (use ISO 3166 country codes). For a full list, see [Wikipedia]
+*/
 public class CityNameRequest: WeatherRequest {
     public func parameters() -> [String : Any] {
         var param = self.cityName

import Foundation
import CoreLocation

public protocol WeatherRequest {
    func parameters() -> [String:Any]
}

public class LocationRequest: WeatherRequest {
    public func parameters() -> [String : Any] {
        return ["lat": coordinates.latitude,

    }
}

/**
 [OpenWeatherMap]: http://bulk.openweathermap.org/sample/ "See full list"
 
 A request that uses a city ID (see [OpenWeatherMap] for a full list of city IDs)
 
*/
public class CityIdRequest: WeatherRequest {
    public func parameters() -> [String : Any] {
        return ["id": self.cityId]
