object Test {
type S = scala.Predef.Set
val z: S[_] = ???
type Pair[T] = (T, T)
val x = (1, 2)
val xx: Pair[Int] = x
val xxx = xx
type Config[T] = (T => T, String)
val y = ((x: String) => x, "a")
val yy: Config[String] = y
val yyy = yy
type RMap[K, V] = Map[V, K]
type RRMap[KK, VV] = RMap[VV, KK]
val rm: RMap[Int, String] = Map[String, Int]()
val rrm: RRMap[Int, String] = Map[Int, String]()
val zz: RMap[_, Int] = Map[Int, String]()
val m = Map[Int, String]()
val ts: RMap[_, Int] = m
val us: RMap[String, _] = m
val vs: RMap[_, _] = m
}