class Country(private var info: Map<String, Any>) {
@Suppress("UNCHECKED_CAST")
operator fun <T> get(key: String): T? {
return info[key] as T?
}
}
val france = Country(mapOf(
"Name" to "France",
"Population" to 66_991_000))
val name: String? = france["Name"]
//name is "France"
val population: Int? = france["Population"]
//population is 66991000
println("name is $name")
println("population is $population")