I understood that invokevirtual is needed for ClassTag.unapply and then Option.get it is unfortunate. Let me think of some other way.