如何解释kotlin的@Metadata注释内容?

我知道kotlin为每个编译的类生成@Metadata注释。 我也看到了这种types的评论:

此批注存在于Kotlin编译器生成的任何类文件中,并由编译器和reflection读取。

问题是编译器如何使用它(假设它是编译的结果)?

我会请求解释注释的内容。 例如,这一个:

@Metadata( mv = {1, 1, 9}, bv = {1, 0, 2}, k = 1, d1 = {"\u0000\f\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0003\u0018\u0000 \u00032\u00020\u0001:\u0001\u0003B\u0005¢\u0006\u0002\u0010\u0002¨\u0006\u0004"}, d2 = {"LMain;", "", "()V", "Companion", "production sources for module kotlin-examples"} ) 

提前致谢!