{
  "typeNames": ["\u003cno-type\u003e", "javaemul.InternalType", "vmbootstrap.InternalType2", "libraryinfo.Main", "libraryinfo.Main.FunctionImpl", "libraryinfo.Main.$1", "libraryinfo.Main.Foo", "libraryinfo.Main.FunctionnalInterface.$LambdaAdaptor", "libraryinfo.Main.FunctionnalInterface", "libraryinfo.Main.JsAccessibleFunctionnalInterface.$LambdaAdaptor", "libraryinfo.Main.JsAccessibleFunctionnalInterface", "libraryinfo.Main.JsTypeInterface", "libraryinfo.Main.MyEnum", "java.lang.Enum", "libraryinfo.Main.MyJsType", "libraryinfo.Main.MyJsEnum.$Overlay"],
  "types": [{
    "typeId": 1,
    "members": [{
      "name": "constructor",
      "jsAccessible": true,
      "position": {
        "start": 6,
        "end": 10
      }
    }, {
      "name": "$create__",
      "static": true,
      "jsAccessible": true,
      "position": {
        "start": 10,
        "end": 17
      }
    }, {
      "name": "$ctor__javaemul_InternalType__void_$i",
      "jsAccessible": true,
      "position": {
        "start": 17,
        "end": 21
      }
    }, {
      "name": "foo_$i",
      "jsAccessible": true,
      "position": {
        "start": 21,
        "end": 23
      }
    }, {
      "name": "$clinit",
      "static": true,
      "jsAccessible": true,
      "position": {
        "start": 23,
        "end": 29
      }
    }],
    "headerSourceFilePath": "javaemul/InternalType.java.js",
    "implSourceFilePath": "javaemul/InternalType.impl.java.js"
  }, {
    "typeId": 2,
    "members": [{
      "name": "constructor",
      "jsAccessible": true,
      "position": {
        "start": 6,
        "end": 10
      }
    }, {
      "name": "$create__",
      "static": true,
      "jsAccessible": true,
      "position": {
        "start": 10,
        "end": 17
      }
    }, {
      "name": "$ctor__vmbootstrap_InternalType2__void_$i",
      "jsAccessible": true,
      "position": {
        "start": 17,
        "end": 21
      }
    }, {
      "name": "foo_$i",
      "jsAccessible": true,
      "position": {
        "start": 21,
        "end": 23
      }
    }, {
      "name": "$clinit",
      "static": true,
      "jsAccessible": true,
      "position": {
        "start": 23,
        "end": 29
      }
    }],
    "headerSourceFilePath": "vmbootstrap/InternalType2.java.js",
    "implSourceFilePath": "vmbootstrap/InternalType2.impl.java.js"
  }, {
    "typeId": 3,
    "members": [{
      "name": "constructor",
      "position": {
        "start": 12,
        "end": 16
      }
    }, {
      "name": "$create__",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 3
      }, {
        "method": "$ctor__libraryinfo_Main__void_$i",
        "enclosingType": 3
      }],
      "position": {
        "start": 16,
        "end": 23
      }
    }, {
      "name": "$ctor__libraryinfo_Main__void_$i",
      "position": {
        "start": 23,
        "end": 27
      }
    }, {
      "name": "entryPoint",
      "static": true,
      "jsAccessible": true,
      "invokedMethods": [{
        "method": "$create__",
        "enclosingType": 3
      }, {
        "method": "m_execute__void_$p_libraryinfo_Main_$i",
        "enclosingType": 3
      }, {
        "method": "$create__",
        "enclosingType": 4
      }, {
        "method": "$create__",
        "enclosingType": 5
      }],
      "position": {
        "start": 27,
        "end": 39
      }
    }, {
      "name": "m_execute__void_$p_libraryinfo_Main_$i",
      "position": {
        "start": 39,
        "end": 43
      }
    }, {
      "name": "toString_$i",
      "jsAccessible": true,
      "position": {
        "start": 43,
        "end": 47
      }
    }, {
      "name": "main",
      "static": true,
      "jsAccessible": true,
      "invokedMethods": [{
        "method": "m_instanceMethod__void_$pp_libraryinfo_$i",
        "enclosingType": 6
      }],
      "referencedTypes": [6],
      "position": {
        "start": 47,
        "end": 54
      }
    }, {
      "name": "$static_STATIC_FIELD__libraryinfo_Main",
      "static": true,
      "position": {
        "start": 83,
        "end": 85
      }
    }, {
      "name": "f_STATIC_FIELD__libraryinfo_Main",
      "static": true,
      "invokedMethods": [{
        "method": "$static_STATIC_FIELD__libraryinfo_Main",
        "enclosingType": 3
      }],
      "position": {
        "start": 54,
        "end": 58
      }
    }, {
      "name": "$clinit",
      "static": true,
      "invokedMethods": [{
        "method": "$static_STATIC_FIELD__libraryinfo_Main",
        "enclosingType": 3
      }],
      "position": {
        "start": 62,
        "end": 69
      }
    }, {
      "name": "$js_entry$",
      "static": true,
      "jsAccessible": true
    }],
    "headerSourceFilePath": "libraryinfo/Main.java.js",
    "implSourceFilePath": "libraryinfo/Main.impl.java.js"
  }, {
    "typeId": 7,
    "implementsTypes": [8],
    "members": [{
      "name": "constructor",
      "invokedMethods": [{
        "method": "$ctor__libraryinfo_Main_FunctionnalInterface_$LambdaAdaptor__libraryinfo_Main_FunctionnalInterface_$JsFunction__void_$i",
        "enclosingType": 7
      }],
      "position": {
        "start": 10,
        "end": 18
      }
    }, {
      "name": "$ctor__libraryinfo_Main_FunctionnalInterface_$LambdaAdaptor__libraryinfo_Main_FunctionnalInterface_$JsFunction__void_$i",
      "position": {
        "start": 18,
        "end": 23
      }
    }, {
      "name": "m_foo__void_$i",
      "position": {
        "start": 23,
        "end": 30
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 30,
        "end": 36
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$FunctionnalInterface$$LambdaAdaptor.java.js",
    "implSourceFilePath": "libraryinfo/Main$FunctionnalInterface$$LambdaAdaptor.impl.java.js"
  }, {
    "typeId": 9,
    "implementsTypes": [10],
    "members": [{
      "name": "constructor",
      "invokedMethods": [{
        "method": "$ctor__libraryinfo_Main_JsAccessibleFunctionnalInterface_$LambdaAdaptor__libraryinfo_Main_JsAccessibleFunctionnalInterface_$JsFunction__void_$i",
        "enclosingType": 9
      }],
      "position": {
        "start": 10,
        "end": 18
      }
    }, {
      "name": "$ctor__libraryinfo_Main_JsAccessibleFunctionnalInterface_$LambdaAdaptor__libraryinfo_Main_JsAccessibleFunctionnalInterface_$JsFunction__void_$i",
      "position": {
        "start": 18,
        "end": 23
      }
    }, {
      "name": "accessibleFunctionalInterfaceMethod_$i",
      "jsAccessible": true,
      "position": {
        "start": 23,
        "end": 30
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 30,
        "end": 36
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$JsAccessibleFunctionnalInterface$$LambdaAdaptor.java.js",
    "implSourceFilePath": "libraryinfo/Main$JsAccessibleFunctionnalInterface$$LambdaAdaptor.impl.java.js"
  }, {
    "typeId": 5,
    "members": [{
      "name": "constructor",
      "position": {
        "start": 6,
        "end": 10
      }
    }, {
      "name": "$create__",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 5
      }, {
        "method": "$ctor__libraryinfo_Main_1__void_$i",
        "enclosingType": 5
      }],
      "position": {
        "start": 10,
        "end": 17
      }
    }, {
      "name": "$ctor__libraryinfo_Main_1__void_$i",
      "position": {
        "start": 17,
        "end": 21
      }
    }, {
      "name": "foo_$i",
      "jsAccessible": true,
      "position": {
        "start": 21,
        "end": 23
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 23,
        "end": 29
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$1.java.js",
    "implSourceFilePath": "libraryinfo/Main$1.impl.java.js"
  }, {
    "typeId": 11,
    "members": [{
      "name": "foo_$i",
      "jsAccessible": true,
      "position": {
        "start": 8,
        "end": 10
      }
    }, {
      "name": "bar_$i",
      "jsAccessible": true,
      "position": {
        "start": 10,
        "end": 12
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 12,
        "end": 17
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$JsTypeInterface.java.js",
    "implSourceFilePath": "libraryinfo/Main$JsTypeInterface.impl.java.js",
    "jstypeInterface": true
  }, {
    "typeId": 8,
    "members": [{
      "name": "m_foo__void_$i",
      "position": {
        "start": 10,
        "end": 12
      }
    }, {
      "name": "$adapt",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 7
      }],
      "position": {
        "start": 12,
        "end": 17
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 17,
        "end": 22
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$FunctionnalInterface.java.js",
    "implSourceFilePath": "libraryinfo/Main$FunctionnalInterface.impl.java.js"
  }, {
    "typeId": 10,
    "members": [{
      "name": "accessibleFunctionalInterfaceMethod_$i",
      "jsAccessible": true,
      "position": {
        "start": 10,
        "end": 12
      }
    }, {
      "name": "$adapt",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 9
      }],
      "position": {
        "start": 12,
        "end": 17
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 17,
        "end": 22
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$JsAccessibleFunctionnalInterface.java.js",
    "implSourceFilePath": "libraryinfo/Main$JsAccessibleFunctionnalInterface.impl.java.js"
  }, {
    "typeId": 4,
    "members": [{
      "name": "constructor",
      "position": {
        "start": 10,
        "end": 14
      }
    }, {
      "name": "$create__",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 4
      }, {
        "method": "$ctor__libraryinfo_Main_FunctionImpl__void_$i",
        "enclosingType": 4
      }],
      "position": {
        "start": 14,
        "end": 21
      }
    }, {
      "name": "$ctor__libraryinfo_Main_FunctionImpl__void_$i",
      "position": {
        "start": 21,
        "end": 25
      }
    }, {
      "name": "m_apply__java_lang_String__void_$i",
      "jsAccessible": true,
      "position": {
        "start": 25,
        "end": 27
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 27,
        "end": 33
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$FunctionImpl.java.js",
    "implSourceFilePath": "libraryinfo/Main$FunctionImpl.impl.java.js"
  }, {
    "typeId": 12,
    "extendsType": 13,
    "members": [{
      "name": "constructor",
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 13
      }],
      "position": {
        "start": 14,
        "end": 18
      }
    }, {
      "name": "$create__java_lang_String__int",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 12
      }, {
        "method": "$ctor__libraryinfo_Main_MyEnum__java_lang_String__int__void_$i",
        "enclosingType": 12
      }],
      "position": {
        "start": 18,
        "end": 24
      }
    }, {
      "name": "$ctor__libraryinfo_Main_MyEnum__java_lang_String__int__void_$i",
      "invokedMethods": [{
        "method": "$ctor__java_lang_Enum__java_lang_String__int__void_$i",
        "enclosingType": 13
      }],
      "position": {
        "start": 24,
        "end": 30
      }
    }, {
      "name": "m_valueOf__java_lang_String__libraryinfo_Main_MyEnum",
      "static": true,
      "invokedMethods": [{
        "method": "f_namesToValuesMap__libraryinfo_Main_MyEnum_",
        "enclosingType": 12
      }, {
        "method": "m_values__arrayOf_libraryinfo_Main_MyEnum",
        "enclosingType": 12
      }],
      "position": {
        "start": 30,
        "end": 38
      }
    }, {
      "name": "m_values__arrayOf_libraryinfo_Main_MyEnum",
      "static": true,
      "invokedMethods": [{
        "method": "f_FOO__libraryinfo_Main_MyEnum",
        "enclosingType": 12
      }, {
        "method": "f_BAR__libraryinfo_Main_MyEnum",
        "enclosingType": 12
      }],
      "position": {
        "start": 38,
        "end": 43
      }
    }, {
      "name": "f_FOO__libraryinfo_Main_MyEnum",
      "static": true,
      "invokedMethods": [{
        "method": "$create__java_lang_String__int",
        "enclosingType": 12
      }],
      "position": {
        "start": 65,
        "end": 67
      }
    }, {
      "name": "f_BAR__libraryinfo_Main_MyEnum",
      "static": true,
      "invokedMethods": [{
        "method": "$create__java_lang_String__int",
        "enclosingType": 12
      }],
      "position": {
        "start": 67,
        "end": 69
      }
    }, {
      "name": "f_namesToValuesMap__libraryinfo_Main_MyEnum_",
      "static": true,
      "position": {
        "start": 69,
        "end": 71
      }
    }, {
      "name": "$clinit",
      "static": true,
      "invokedMethods": [{
        "method": "$clinit",
        "enclosingType": 13
      }],
      "position": {
        "start": 43,
        "end": 49
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$MyEnum.java.js",
    "implSourceFilePath": "libraryinfo/Main$MyEnum.impl.java.js"
  }, {
    "typeId": 14,
    "members": [{
      "name": "constructor",
      "jsAccessible": true,
      "invokedMethods": [{
        "method": "$ctor__libraryinfo_Main_MyJsType__void_$i",
        "enclosingType": 14
      }],
      "position": {
        "start": 8,
        "end": 16
      }
    }, {
      "name": "$ctor__libraryinfo_Main_MyJsType__void_$i",
      "invokedMethods": [{
        "method": "$create__",
        "enclosingType": 3
      }],
      "position": {
        "start": 16,
        "end": 21
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 21,
        "end": 27
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$MyJsType.java.js",
    "implSourceFilePath": "libraryinfo/Main$MyJsType.impl.java.js"
  }, {
    "typeId": 6,
    "members": [{
      "name": "constructor",
      "position": {
        "start": 8,
        "end": 14
      }
    }, {
      "name": "$create__libraryinfo_Main",
      "static": true,
      "invokedMethods": [{
        "method": "constructor",
        "enclosingType": 6
      }, {
        "method": "$ctor__libraryinfo_Main_Foo__libraryinfo_Main__void_$i",
        "enclosingType": 6
      }],
      "position": {
        "start": 14,
        "end": 21
      }
    }, {
      "name": "$ctor__libraryinfo_Main_Foo__libraryinfo_Main__void_$i",
      "position": {
        "start": 21,
        "end": 26
      }
    }, {
      "name": "m_instanceMethod__void_$pp_libraryinfo_$i",
      "position": {
        "start": 26,
        "end": 28
      }
    }, {
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 28,
        "end": 34
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$Foo.java.js",
    "implSourceFilePath": "libraryinfo/Main$Foo.impl.java.js"
  }, {
    "typeId": 15,
    "members": [{
      "name": "$clinit",
      "static": true,
      "position": {
        "start": 7,
        "end": 12
      }
    }],
    "headerSourceFilePath": "libraryinfo/Main$MyJsEnum$$Overlay.java.js",
    "implSourceFilePath": "libraryinfo/Main$MyJsEnum$$Overlay.impl.java.js"
  }]
}