object Test extends App { println(implicitly[ConcreteTypeTag[Byte]] eq ConcreteTypeTag.Byte) println(implicitly[ConcreteTypeTag[Byte]]) println(implicitly[ConcreteTypeTag[Short]] eq ConcreteTypeTag.Short) println(implicitly[ConcreteTypeTag[Short]]) println(implicitly[ConcreteTypeTag[Char]] eq ConcreteTypeTag.Char) println(implicitly[ConcreteTypeTag[Char]]) println(implicitly[ConcreteTypeTag[Int]] eq ConcreteTypeTag.Int) println(implicitly[ConcreteTypeTag[Int]]) println(implicitly[ConcreteTypeTag[Long]] eq ConcreteTypeTag.Long) println(implicitly[ConcreteTypeTag[Long]]) println(implicitly[ConcreteTypeTag[Float]] eq ConcreteTypeTag.Float) println(implicitly[ConcreteTypeTag[Float]]) println(implicitly[ConcreteTypeTag[Double]] eq ConcreteTypeTag.Double) println(implicitly[ConcreteTypeTag[Double]]) println(implicitly[ConcreteTypeTag[Boolean]] eq ConcreteTypeTag.Boolean) println(implicitly[ConcreteTypeTag[Boolean]]) println(implicitly[ConcreteTypeTag[Unit]] eq ConcreteTypeTag.Unit) println(implicitly[ConcreteTypeTag[Unit]]) println(implicitly[ConcreteTypeTag[Any]] eq ConcreteTypeTag.Any) println(implicitly[ConcreteTypeTag[Any]]) println(implicitly[ConcreteTypeTag[Object]] eq ConcreteTypeTag.Object) println(implicitly[ConcreteTypeTag[Object]]) println(implicitly[ConcreteTypeTag[AnyVal]] eq ConcreteTypeTag.AnyVal) println(implicitly[ConcreteTypeTag[AnyVal]]) println(implicitly[ConcreteTypeTag[AnyRef]] eq ConcreteTypeTag.AnyRef) println(implicitly[ConcreteTypeTag[AnyRef]]) println(implicitly[ConcreteTypeTag[Null]] eq ConcreteTypeTag.Null) println(implicitly[ConcreteTypeTag[Null]]) println(implicitly[ConcreteTypeTag[Nothing]] eq ConcreteTypeTag.Nothing) println(implicitly[ConcreteTypeTag[Nothing]]) println(implicitly[ConcreteTypeTag[String]] eq ConcreteTypeTag.String) println(implicitly[ConcreteTypeTag[String]]) }