1000000: 6465 780a 3033 3800     |magic: "dex\n038\0"
2000008: 590b 1a16               |checksum
300000c: 8798 f7ff b191 97b1 2e9c|signature
4000016: f739 ab2b 8ae4 9ef9 73a8|
5000020: 3c07 0000               |file_size:       0000073c
6000024: 7000 0000               |header_size:     00000070
7000028: 7856 3412               |endian_tag:      12345678
800002c: 0000 0000               |link_size:       0
9000030: 0000 0000               |link_off:        0
10000034: 5406 0000               |map_off:         00000654
11000038: 2c00 0000               |string_ids_size: 0000002c
1200003c: 7000 0000               |string_ids_off:  00000070
13000040: 1100 0000               |type_ids_size:   00000011
14000044: 2001 0000               |type_ids_off:    00000120
15000048: 0900 0000               |proto_ids_size:  00000009
1600004c: 6401 0000               |proto_ids_off:   00000164
17000050: 0200 0000               |field_ids_size:  00000002
18000054: d001 0000               |field_ids_off:   000001d0
19000058: 0b00 0000               |method_ids_size: 0000000b
2000005c: e001 0000               |method_ids_off:  000001e0
21000060: 0300 0000               |class_defs_size: 00000003
22000064: 3802 0000               |class_defs_off:  00000238
23000068: 8c04 0000               |data_size:       0000048c
2400006c: b002 0000               |data_off:        000002b0
25                                |
26                                |string_ids:
27                                |[0] "(TT;)V"
28000070: be03 0000               |  string_data_off: 000003be
29                                |[1] "<T:"
30000074: c603 0000               |  string_data_off: 000003c6
31                                |[2] "<init>"
32000078: cb03 0000               |  string_data_off: 000003cb
33                                |[3] ">"
3400007c: d303 0000               |  string_data_off: 000003d3
35                                |[4] "I"
36000080: d603 0000               |  string_data_off: 000003d6
37                                |[5] "LConsumer;"
38000084: d903 0000               |  string_data_off: 000003d9
39                                |[6] "LFoo;"
40000088: e503 0000               |  string_data_off: 000003e5
41                                |[7] "LI"
4200008c: ec03 0000               |  string_data_off: 000003ec
43                                |[8] "LLI"
44000090: f003 0000               |  string_data_off: 000003f0
45                                |[9] "LLLLLLL"
46000094: f503 0000               |  string_data_off: 000003f5
47                                |[a] "LMain;"
48000098: fe03 0000               |  string_data_off: 000003fe
49                                |[b] "Ldalvik/annotation/Signature;"
5000009c: 0604 0000               |  string_data_off: 00000406
51                                |[c] "Ljava/io/PrintStream;"
520000a0: 2504 0000               |  string_data_off: 00000425
53                                |[d] "Ljava/lang/Integer;"
540000a4: 3c04 0000               |  string_data_off: 0000043c
55                                |[e] "Ljava/lang/Object;"
560000a8: 5104 0000               |  string_data_off: 00000451
57                                |[f] "Ljava/lang/String;"
580000ac: 6504 0000               |  string_data_off: 00000465
59                                |[10] "Ljava/lang/System;"
600000b0: 7904 0000               |  string_data_off: 00000479
61                                |[11] "Ljava/lang/invoke/CallSite;"
620000b4: 8d04 0000               |  string_data_off: 0000048d
63                                |[12] "Ljava/lang/invoke/LambdaMetafactory;"
640000b8: aa04 0000               |  string_data_off: 000004aa
65                                |[13] "Ljava/lang/invoke/MethodHandle;"
660000bc: d004 0000               |  string_data_off: 000004d0
67                                |[14] "Ljava/lang/invoke/MethodHandles$Lookup;"
680000c0: f104 0000               |  string_data_off: 000004f1
69                                |[15] "Ljava/lang/invoke/MethodType;"
700000c4: 1a05 0000               |  string_data_off: 0000051a
71                                |[16] "Main.java"
720000c8: 3905 0000               |  string_data_off: 00000539
73                                |[17] "V"
740000cc: 4405 0000               |  string_data_off: 00000544
75                                |[18] "VI"
760000d0: 4705 0000               |  string_data_off: 00000547
77                                |[19] "VIL"
780000d4: 4b05 0000               |  string_data_off: 0000054b
79                                |[1a] "VL"
800000d8: 5005 0000               |  string_data_off: 00000550
81                                |[1b] "[Ljava/lang/String;"
820000dc: 5405 0000               |  string_data_off: 00000554
83                                |[1c] "accept"
840000e0: 6905 0000               |  string_data_off: 00000569
85                                |[1d] "args"
860000e4: 7105 0000               |  string_data_off: 00000571
87                                |[1e] "bar"
880000e8: 7705 0000               |  string_data_off: 00000577
89                                |[1f] "consumer"
900000ec: 7c05 0000               |  string_data_off: 0000057c
91                                |[20] "i"
920000f0: 8605 0000               |  string_data_off: 00000586
93                                |[21] "intValue"
940000f4: 8905 0000               |  string_data_off: 00000589
95                                |[22] "j"
960000f8: 9305 0000               |  string_data_off: 00000593
97                                |[23] "k"
980000fc: 9605 0000               |  string_data_off: 00000596
99                                |[24] "lambda$bar$0"
100000100: 9905 0000               |  string_data_off: 00000599
101                                |[25] "main"
102000104: a705 0000               |  string_data_off: 000005a7
103                                |[26] "metafactory"
104000108: ad05 0000               |  string_data_off: 000005ad
105                                |[27] "out"
10600010c: ba05 0000               |  string_data_off: 000005ba
107                                |[28] "println"
108000110: bf05 0000               |  string_data_off: 000005bf
109                                |[29] "this"
110000114: c805 0000               |  string_data_off: 000005c8
111                                |[2a] "value"
112000118: ce05 0000               |  string_data_off: 000005ce
113                                |[2b] "valueOf"
11400011c: d505 0000               |  string_data_off: 000005d5
115                                |
116                                |type_ids:
117                                |[0] I
118000120: 0400 0000               |  descriptor_idx: 00000004
119                                |[1] LConsumer;
120000124: 0500 0000               |  descriptor_idx: 00000005
121                                |[2] LFoo;
122000128: 0600 0000               |  descriptor_idx: 00000006
123                                |[3] LMain;
12400012c: 0a00 0000               |  descriptor_idx: 0000000a
125                                |[4] Ldalvik/annotation/Signature;
126000130: 0b00 0000               |  descriptor_idx: 0000000b
127                                |[5] Ljava/io/PrintStream;
128000134: 0c00 0000               |  descriptor_idx: 0000000c
129                                |[6] Ljava/lang/Integer;
130000138: 0d00 0000               |  descriptor_idx: 0000000d
131                                |[7] Ljava/lang/Object;
13200013c: 0e00 0000               |  descriptor_idx: 0000000e
133                                |[8] Ljava/lang/String;
134000140: 0f00 0000               |  descriptor_idx: 0000000f
135                                |[9] Ljava/lang/System;
136000144: 1000 0000               |  descriptor_idx: 00000010
137                                |[a] Ljava/lang/invoke/CallSite;
138000148: 1100 0000               |  descriptor_idx: 00000011
139                                |[b] Ljava/lang/invoke/LambdaMetafactory;
14000014c: 1200 0000               |  descriptor_idx: 00000012
141                                |[c] Ljava/lang/invoke/MethodHandle;
142000150: 1300 0000               |  descriptor_idx: 00000013
143                                |[d] Ljava/lang/invoke/MethodHandles$Lookup;
144000154: 1400 0000               |  descriptor_idx: 00000014
145                                |[e] Ljava/lang/invoke/MethodType;
146000158: 1500 0000               |  descriptor_idx: 00000015
147                                |[f] V
14800015c: 1700 0000               |  descriptor_idx: 00000017
149                                |[10] [Ljava/lang/String;
150000160: 1b00 0000               |  descriptor_idx: 0000001b
151                                |
152                                |proto_ids:
153                                |[0] int proto()
154000164: 0400 0000               |  shorty_idx:      00000004 // "I"
155000168: 0000 0000               |  return_type_idx: 00000000 // int
15600016c: 0000 0000               |  parameters_off:  00000000
157                                |[1] Consumer proto(Foo, int)
158000170: 0800 0000               |  shorty_idx:      00000008 // "LLI"
159000174: 0100 0000               |  return_type_idx: 00000001 // Consumer
160000178: 8803 0000               |  parameters_off:  00000388
161                                |[2] java.lang.Integer proto(int)
16200017c: 0700 0000               |  shorty_idx:      00000007 // "LI"
163000180: 0600 0000               |  return_type_idx: 00000006 // java.lang.Integer
164000184: 9003 0000               |  parameters_off:  00000390
165                                |[3] java.lang.invoke.CallSite proto(java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.invoke.MethodType, java.lang.invoke.MethodType, java.lang.invoke.MethodHandle, java.lang.invoke.MethodType)
166000188: 0900 0000               |  shorty_idx:      00000009 // "LLLLLLL"
16700018c: 0a00 0000               |  return_type_idx: 0000000a // java.lang.invoke.CallSite
168000190: 9803 0000               |  parameters_off:  00000398
169                                |[4] void proto()
170000194: 1700 0000               |  shorty_idx:      00000017 // "V"
171000198: 0f00 0000               |  return_type_idx: 0000000f // void
17200019c: 0000 0000               |  parameters_off:  00000000
173                                |[5] void proto(int)
1740001a0: 1800 0000               |  shorty_idx:      00000018 // "VI"
1750001a4: 0f00 0000               |  return_type_idx: 0000000f // void
1760001a8: 9003 0000               |  parameters_off:  00000390
177                                |[6] void proto(int, java.lang.Object)
1780001ac: 1900 0000               |  shorty_idx:      00000019 // "VIL"
1790001b0: 0f00 0000               |  return_type_idx: 0000000f // void
1800001b4: a803 0000               |  parameters_off:  000003a8
181                                |[7] void proto(java.lang.Object)
1820001b8: 1a00 0000               |  shorty_idx:      0000001a // "VL"
1830001bc: 0f00 0000               |  return_type_idx: 0000000f // void
1840001c0: b003 0000               |  parameters_off:  000003b0
185                                |[8] void proto(java.lang.String[])
1860001c4: 1a00 0000               |  shorty_idx:      0000001a // "VL"
1870001c8: 0f00 0000               |  return_type_idx: 0000000f // void
1880001cc: b803 0000               |  parameters_off:  000003b8
189                                |
190                                |field_ids:
191                                |[0] Foo.i:I
1920001d0: 0200                    |  class_idx: 0002
1930001d2: 0000                    |  type_idx:  0000
1940001d4: 2000 0000               |  name_idx:  00000020
195                                |[1] java.lang.System.out:Ljava/io/PrintStream;
1960001d8: 0900                    |  class_idx: 0009
1970001da: 0500                    |  type_idx:  0005
1980001dc: 2700 0000               |  name_idx:  00000027
199                                |
200                                |method_ids:
201                                |[0] Consumer.accept:(Ljava/lang/Object;)V
2020001e0: 0100                    |  class_idx: 0001
2030001e2: 0700                    |  proto_idx: 0007
2040001e4: 1c00 0000               |  name_idx:  0000001c
205                                |[1] Foo.<init>:()V
2060001e8: 0200                    |  class_idx: 0002
2070001ea: 0400                    |  proto_idx: 0004
2080001ec: 0200 0000               |  name_idx:  00000002
209                                |[2] Foo.bar:(I)V
2100001f0: 0200                    |  class_idx: 0002
2110001f2: 0500                    |  proto_idx: 0005
2120001f4: 1e00 0000               |  name_idx:  0000001e
213                                |[3] Foo.lambda$bar$0:(ILjava/lang/Object;)V
2140001f8: 0200                    |  class_idx: 0002
2150001fa: 0600                    |  proto_idx: 0006
2160001fc: 2400 0000               |  name_idx:  00000024
217                                |[4] Main.<init>:()V
218000200: 0300                    |  class_idx: 0003
219000202: 0400                    |  proto_idx: 0004
220000204: 0200 0000               |  name_idx:  00000002
221                                |[5] Main.main:([Ljava/lang/String;)V
222000208: 0300                    |  class_idx: 0003
22300020a: 0800                    |  proto_idx: 0008
22400020c: 2500 0000               |  name_idx:  00000025
225                                |[6] java.io.PrintStream.println:(I)V
226000210: 0500                    |  class_idx: 0005
227000212: 0500                    |  proto_idx: 0005
228000214: 2800 0000               |  name_idx:  00000028
229                                |[7] java.lang.Integer.intValue:()I
230000218: 0600                    |  class_idx: 0006
23100021a: 0000                    |  proto_idx: 0000
23200021c: 2100 0000               |  name_idx:  00000021
233                                |[8] java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
234000220: 0600                    |  class_idx: 0006
235000222: 0200                    |  proto_idx: 0002
236000224: 2b00 0000               |  name_idx:  0000002b
237                                |[9] java.lang.Object.<init>:()V
238000228: 0700                    |  class_idx: 0007
23900022a: 0400                    |  proto_idx: 0004
24000022c: 0200 0000               |  name_idx:  00000002
241                                |[a] java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
242000230: 0b00                    |  class_idx: 000b
243000232: 0300                    |  proto_idx: 0003
244000234: 2600 0000               |  name_idx:  00000026
245                                |
246                                |class_defs:
247                                |[0] Consumer
248000238: 0100 0000               |  class_idx:           00000001
24900023c: 0006 0000               |  access_flags:        interface|abstract
250000240: 0700 0000               |  superclass_idx:      00000007 // java.lang.Object
251000244: 0000 0000               |  interfaces_off:      00000000
252000248: 1600 0000               |  source_file_idx:     00000016 // Main.java
25300024c: 7003 0000               |  annotations_off:     00000370
254000250: 2906 0000               |  class_data_off:      00000629
255000254: 0000 0000               |  static_values_off:   00000000
256                                |[1] Foo
257000258: 0200 0000               |  class_idx:           00000002
25800025c: 0000 0000               |  access_flags:        0000
259000260: 0700 0000               |  superclass_idx:      00000007 // java.lang.Object
260000264: 0000 0000               |  interfaces_off:      00000000
261000268: 1600 0000               |  source_file_idx:     00000016 // Main.java
26200026c: 0000 0000               |  annotations_off:     00000000
263000270: 3106 0000               |  class_data_off:      00000631
264000274: 0000 0000               |  static_values_off:   00000000
265                                |[2] Main
266000278: 0300 0000               |  class_idx:           00000003
26700027c: 0000 0000               |  access_flags:        0000
268000280: 0700 0000               |  superclass_idx:      00000007 // java.lang.Object
269000284: 0000 0000               |  interfaces_off:      00000000
270000288: 1600 0000               |  source_file_idx:     00000016 // Main.java
27100028c: 0000 0000               |  annotations_off:     00000000
272000290: 4606 0000               |  class_data_off:      00000646
273000294: 0000 0000               |  static_values_off:   00000000
274                                |
275                                |call_site_ids:
276                                |[0] call site{method-handle{invoke-static,method{java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;}}, string{"accept"}, proto{(LFoo;I)LConsumer;}, proto{(Ljava/lang/Object;)V}, method-handle{invoke-direct,method{Foo.lambda$bar$0:(ILjava/lang/Object;)V}}, proto{(Ljava/lang/Object;)V}}
277000298: 1c06 0000               |call_site_off: 0000061c
27800029c: 0000 0000               |
279                                |
280                                |method_handles:
281                                |[0] method-handle{invoke-static,method{java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;}}
2820002a0: 0400                    |type:     0004 // invoke-static
2830002a2: 0000                    |reserved: 0000
2840002a4: 0a00                    |methodId: 000a // method{java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;}
2850002a6: 0000                    |reserved: 0000
286                                |[1] method-handle{invoke-direct,method{Foo.lambda$bar$0:(ILjava/lang/Object;)V}}
2870002a8: 0700                    |type:     0007 // invoke-direct
2880002aa: 0000                    |reserved: 0000
2890002ac: 0300                    |methodId: 0003 // method{Foo.lambda$bar$0:(ILjava/lang/Object;)V}
2900002ae: 0000                    |reserved: 0000
291                                |
292                                |word_data:
293                                |[2b0] annotation set
2940002b0: 0100 0000               |  size: 00000001
2950002b4: 0606 0000               |  entries[0]: 00000606
296                                |    visibility: system
297                                |    type: dalvik.annotation.Signature
298                                |    value: array {<T:, Ljava/lang/Object;, >, Ljava/lang/Object;}
299                                |
300                                |[2b8] annotation set
3010002b8: 0100 0000               |  size: 00000001
3020002bc: 1406 0000               |  entries[0]: 00000614
303                                |    visibility: system
304                                |    type: dalvik.annotation.Signature
305                                |    value: array {(TT;)V}
306                                |
307                                |[2c0] Foo.<init>:()V
3080002c0: 0100                    |  registers_size: 0001
3090002c2: 0100                    |  ins_size:       0001
3100002c4: 0100                    |  outs_size:      0001
3110002c6: 0000                    |  tries_size:     0000
3120002c8: de05 0000               |  debug_off:      000005de
3130002cc: 0400 0000               |  insns_size:     00000004
3140002d0: 7010 0900 0000          |  0000: invoke-direct {v0}, java.lang.Object.<init>:()V // method@0009
3150002d6: 0e00                    |  0003: return-void
316                                |  debug info
317                                |    line_start: 21
318                                |    parameters_size: 0000
319                                |    0000: prologue end
320                                |    0000: line 21
321                                |    end sequence
322                                |
323                                |[2d8] Foo.lambda$bar$0:(ILjava/lang/Object;)V
3240002d8: 0600                    |  registers_size: 0006
3250002da: 0300                    |  ins_size:       0003
3260002dc: 0200                    |  outs_size:      0002
3270002de: 0000                    |  tries_size:     0000
3280002e0: e305 0000               |  debug_off:      000005e3
3290002e4: 1000 0000               |  insns_size:     00000010
3300002e8: 6200 0100               |  0000: sget-object v0, java.lang.System.out:Ljava/io/PrintStream; // field@0001
3310002ec: 5231 0000               |  0002: iget v1, v3, Foo.i:I // field@0000
3320002f0: b041                    |  0004: add-int/2addr v1, v4
3330002f2: 1f05 0600               |  0005: check-cast v5, java.lang.Integer // type@0006
3340002f6: 6e10 0700 0500          |  0007: invoke-virtual {v5}, java.lang.Integer.intValue:()I // method@0007
3350002fc: 0a02                    |  000a: move-result v2
3360002fe: b021                    |  000b: add-int/2addr v1, v2
337000300: 6e20 0600 1000          |  000c: invoke-virtual {v0, v1}, java.io.PrintStream.println:(I)V // method@0006
338000306: 0e00                    |  000f: return-void
339                                |  debug info
340                                |    line_start: 24
341                                |    parameters_size: 0002
342                                |    parameter j v4
343                                |    parameter k v5
344                                |    0000: prologue end
345                                |    0000: line 24
346                                |    0007: advance pc
347                                |    0007: -local v5 k java.lang.Object
348                                |    end sequence
349                                |
350                                |[308] Foo.bar:(I)V
351000308: 0400                    |  registers_size: 0004
35200030a: 0200                    |  ins_size:       0002
35300030c: 0200                    |  outs_size:      0002
35400030e: 0000                    |  tries_size:     0000
355000310: ee05 0000               |  debug_off:      000005ee
356000314: 0d00 0000               |  insns_size:     0000000d
357000318: fc20 0000 3200          |  0000: invoke-custom {v2, v3}, {invoke-static,method{java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;}, accept, (LFoo;I)LConsumer;, (Ljava/lang/Object;)V, invoke-direct,method{Foo.lambda$bar$0:(ILjava/lang/Object;)V}, (Ljava/lang/Object;)V} // CallSiteRef@0000
35800031e: 0c00                    |  0003: move-result-object v0
359000320: 1211                    |  0004: const/4 v1, #int 1 // #1
360000322: 7110 0800 0100          |  0005: invoke-static {v1}, java.lang.Integer.valueOf:(I)Ljava/lang/Integer; // method@0008
361000328: 0c01                    |  0008: move-result-object v1
36200032a: 7220 0000 1000          |  0009: invoke-interface {v0, v1}, Consumer.accept:(Ljava/lang/Object;)V // method@0000
363000330: 0e00                    |  000c: return-void
364                                |  debug info
365                                |    line_start: 24
366                                |    parameters_size: 0001
367                                |    parameter j v3
368                                |    0000: prologue end
369                                |    0000: line 24
370                                |    0004: line 25
371                                |    0004: +local v0 consumer Consumer
372                                |    000c: line 26
373                                |    end sequence
374                                |
375000332: 0000                    |
376                                |[334] Main.<init>:()V
377000334: 0100                    |  registers_size: 0001
378000336: 0100                    |  ins_size:       0001
379000338: 0100                    |  outs_size:      0001
38000033a: 0000                    |  tries_size:     0000
38100033c: fa05 0000               |  debug_off:      000005fa
382000340: 0400 0000               |  insns_size:     00000004
383000344: 7010 0900 0000          |  0000: invoke-direct {v0}, java.lang.Object.<init>:()V // method@0009
38400034a: 0e00                    |  0003: return-void
385                                |  debug info
386                                |    line_start: 29
387                                |    parameters_size: 0000
388                                |    0000: prologue end
389                                |    0000: line 29
390                                |    end sequence
391                                |
392                                |[34c] Main.main:([Ljava/lang/String;)V
39300034c: 0300                    |  registers_size: 0003
39400034e: 0100                    |  ins_size:       0001
395000350: 0200                    |  outs_size:      0002
396000352: 0000                    |  tries_size:     0000
397000354: ff05 0000               |  debug_off:      000005ff
398000358: 0a00 0000               |  insns_size:     0000000a
39900035c: 2200 0200               |  0000: new-instance v0, Foo // type@0002
400000360: 7010 0100 0000          |  0002: invoke-direct {v0}, Foo.<init>:()V // method@0001
401000366: 1251                    |  0005: const/4 v1, #int 5 // #5
402000368: 6e20 0200 1000          |  0006: invoke-virtual {v0, v1}, Foo.bar:(I)V // method@0002
40300036e: 0e00                    |  0009: return-void
404                                |  debug info
405                                |    line_start: 31
406                                |    parameters_size: 0001
407                                |    parameter args v2
408                                |    0000: prologue end
409                                |    0000: line 31
410                                |    0009: line 32
411                                |    end sequence
412                                |
413                                |[370] annotations directory
414000370: b002 0000               |  class_annotations_off: 000002b0
415000374: 0000 0000               |  fields_size:           00000000
416000378: 0100 0000               |  methods_size:          00000001
41700037c: 0000 0000               |  parameters_size:       00000000
418                                |  methods:
419                                |    Consumer.accept:(Ljava/lang/Object;)V
420000380: 0000 0000               |      method_idx:      00000000
421000384: b802 0000               |      annotations_off: 000002b8
422                                |
423                                |[388] type_list
424000388: 0200 0000               |  size: 00000002
42500038c: 0200                    |  0002 // Foo
42600038e: 0000                    |  0000 // int
427                                |
428                                |[390] type_list
429000390: 0100 0000               |  size: 00000001
430000394: 0000                    |  0000 // int
431                                |
432000396: 0000                    |
433                                |[398] type_list
434000398: 0600 0000               |  size: 00000006
43500039c: 0d00                    |  000d // java.lang.invoke.MethodHandles$Lookup
43600039e: 0800                    |  0008 // java.lang.String
4370003a0: 0e00                    |  000e // java.lang.invoke.MethodType
4380003a2: 0e00                    |  000e // java.lang.invoke.MethodType
4390003a4: 0c00                    |  000c // java.lang.invoke.MethodHandle
4400003a6: 0e00                    |  000e // java.lang.invoke.MethodType
441                                |
442                                |[3a8] type_list
4430003a8: 0200 0000               |  size: 00000002
4440003ac: 0000                    |  0000 // int
4450003ae: 0700                    |  0007 // java.lang.Object
446                                |
447                                |[3b0] type_list
4480003b0: 0100 0000               |  size: 00000001
4490003b4: 0700                    |  0007 // java.lang.Object
450                                |
4510003b6: 0000                    |
452                                |[3b8] type_list
4530003b8: 0100 0000               |  size: 00000001
4540003bc: 1000                    |  0010 // java.lang.String[]
455                                |
456                                |string_data:
4570003be: 06                      |utf16_size: 00000006
4580003bf: 2854 543b 2956 00       |"(TT;)V"
459                                |
4600003c6: 03                      |utf16_size: 00000003
4610003c7: 3c54 3a00               |"<T:"
462                                |
4630003cb: 06                      |utf16_size: 00000006
4640003cc: 3c69 6e69 743e 00       |"<init>"
465                                |
4660003d3: 01                      |utf16_size: 00000001
4670003d4: 3e00                    |">"
468                                |
4690003d6: 01                      |utf16_size: 00000001
4700003d7: 4900                    |"I"
471                                |
4720003d9: 0a                      |utf16_size: 0000000a
4730003da: 4c43 6f6e 7375 6d65 723b|"LConsumer;"
4740003e4: 00                      |
475                                |
4760003e5: 05                      |utf16_size: 00000005
4770003e6: 4c46 6f6f 3b00          |"LFoo;"
478                                |
4790003ec: 02                      |utf16_size: 00000002
4800003ed: 4c49 00                 |"LI"
481                                |
4820003f0: 03                      |utf16_size: 00000003
4830003f1: 4c4c 4900               |"LLI"
484                                |
4850003f5: 07                      |utf16_size: 00000007
4860003f6: 4c4c 4c4c 4c4c 4c00     |"LLLLLLL"
487                                |
4880003fe: 06                      |utf16_size: 00000006
4890003ff: 4c4d 6169 6e3b 00       |"LMain;"
490                                |
491000406: 1d                      |utf16_size: 0000001d
492000407: 4c64 616c 7669 6b2f 616e|"Ldalvik/annotation/Signature;"
493000411: 6e6f 7461 7469 6f6e 2f53|
49400041b: 6967 6e61 7475 7265 3b00|
495                                |
496000425: 15                      |utf16_size: 00000015
497000426: 4c6a 6176 612f 696f 2f50|"Ljava/io/PrintStream;"
498000430: 7269 6e74 5374 7265 616d|
49900043a: 3b00                    |
500                                |
50100043c: 13                      |utf16_size: 00000013
50200043d: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/Integer;"
503000447: 2f49 6e74 6567 6572 3b00|
504                                |
505000451: 12                      |utf16_size: 00000012
506000452: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/Object;"
50700045c: 2f4f 626a 6563 743b 00  |
508                                |
509000465: 12                      |utf16_size: 00000012
510000466: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/String;"
511000470: 2f53 7472 696e 673b 00  |
512                                |
513000479: 12                      |utf16_size: 00000012
51400047a: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/System;"
515000484: 2f53 7973 7465 6d3b 00  |
516                                |
51700048d: 1b                      |utf16_size: 0000001b
51800048e: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/invoke/CallSite;"
519000498: 2f69 6e76 6f6b 652f 4361|
5200004a2: 6c6c 5369 7465 3b00     |
521                                |
5220004aa: 24                      |utf16_size: 00000024
5230004ab: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/invoke/LambdaMetafactory;"
5240004b5: 2f69 6e76 6f6b 652f 4c61|
5250004bf: 6d62 6461 4d65 7461 6661|
5260004c9: 6374 6f72 793b 00       |
527                                |
5280004d0: 1f                      |utf16_size: 0000001f
5290004d1: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/invoke/MethodHandle;"
5300004db: 2f69 6e76 6f6b 652f 4d65|
5310004e5: 7468 6f64 4861 6e64 6c65|
5320004ef: 3b00                    |
533                                |
5340004f1: 27                      |utf16_size: 00000027
5350004f2: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/invoke/MethodHandles$Lookup;"
5360004fc: 2f69 6e76 6f6b 652f 4d65|
537000506: 7468 6f64 4861 6e64 6c65|
538000510: 7324 4c6f 6f6b 7570 3b00|
539                                |
54000051a: 1d                      |utf16_size: 0000001d
54100051b: 4c6a 6176 612f 6c61 6e67|"Ljava/lang/invoke/MethodType;"
542000525: 2f69 6e76 6f6b 652f 4d65|
54300052f: 7468 6f64 5479 7065 3b00|
544                                |
545000539: 09                      |utf16_size: 00000009
54600053a: 4d61 696e 2e6a 6176 6100|"Main.java"
547                                |
548000544: 01                      |utf16_size: 00000001
549000545: 5600                    |"V"
550                                |
551000547: 02                      |utf16_size: 00000002
552000548: 5649 00                 |"VI"
553                                |
55400054b: 03                      |utf16_size: 00000003
55500054c: 5649 4c00               |"VIL"
556                                |
557000550: 02                      |utf16_size: 00000002
558000551: 564c 00                 |"VL"
559                                |
560000554: 13                      |utf16_size: 00000013
561000555: 5b4c 6a61 7661 2f6c 616e|"[Ljava/lang/String;"
56200055f: 672f 5374 7269 6e67 3b00|
563                                |
564000569: 06                      |utf16_size: 00000006
56500056a: 6163 6365 7074 00       |"accept"
566                                |
567000571: 04                      |utf16_size: 00000004
568000572: 6172 6773 00            |"args"
569                                |
570000577: 03                      |utf16_size: 00000003
571000578: 6261 7200               |"bar"
572                                |
57300057c: 08                      |utf16_size: 00000008
57400057d: 636f 6e73 756d 6572 00  |"consumer"
575                                |
576000586: 01                      |utf16_size: 00000001
577000587: 6900                    |"i"
578                                |
579000589: 08                      |utf16_size: 00000008
58000058a: 696e 7456 616c 7565 00  |"intValue"
581                                |
582000593: 01                      |utf16_size: 00000001
583000594: 6a00                    |"j"
584                                |
585000596: 01                      |utf16_size: 00000001
586000597: 6b00                    |"k"
587                                |
588000599: 0c                      |utf16_size: 0000000c
58900059a: 6c61 6d62 6461 2462 6172|"lambda$bar$0"
5900005a4: 2430 00                 |
591                                |
5920005a7: 04                      |utf16_size: 00000004
5930005a8: 6d61 696e 00            |"main"
594                                |
5950005ad: 0b                      |utf16_size: 0000000b
5960005ae: 6d65 7461 6661 6374 6f72|"metafactory"
5970005b8: 7900                    |
598                                |
5990005ba: 03                      |utf16_size: 00000003
6000005bb: 6f75 7400               |"out"
601                                |
6020005bf: 07                      |utf16_size: 00000007
6030005c0: 7072 696e 746c 6e00     |"println"
604                                |
6050005c8: 04                      |utf16_size: 00000004
6060005c9: 7468 6973 00            |"this"
607                                |
6080005ce: 05                      |utf16_size: 00000005
6090005cf: 7661 6c75 6500          |"value"
610                                |
6110005d5: 07                      |utf16_size: 00000007
6120005d6: 7661 6c75 654f 6600     |"valueOf"
613                                |
614                                |byte_data:
615                                |[5de] debug info
6160005de: 15                      |line_start: 21
6170005df: 00                      |parameters_size: 0000
6180005e0: 07                      |0000: prologue end
6190005e1: 0e                      |0000: line 21
6200005e2: 00                      |end sequence
621                                |
622                                |[5e3] debug info
6230005e3: 18                      |line_start: 24
6240005e4: 02                      |parameters_size: 0002
6250005e5: 23                      |parameter j v4
6260005e6: 24                      |parameter k v5
6270005e7: 07                      |0000: prologue end
6280005e8: 0e                      |0000: line 24
6290005e9: 0107                    |0007: advance pc
6300005eb: 0505                    |0007: -local v5 k java.lang.Object
6310005ed: 00                      |end sequence
632                                |
633                                |[5ee] debug info
6340005ee: 18                      |line_start: 24
6350005ef: 01                      |parameters_size: 0001
6360005f0: 23                      |parameter j v3
6370005f1: 07                      |0000: prologue end
6380005f2: 0e                      |0000: line 24
6390005f3: 4b                      |0004: line 25
6400005f4: 0300 2002               |0004: +local v0 consumer Consumer
6410005f8: 87                      |000c: line 26
6420005f9: 00                      |end sequence
643                                |
644                                |[5fa] debug info
6450005fa: 1d                      |line_start: 29
6460005fb: 00                      |parameters_size: 0000
6470005fc: 07                      |0000: prologue end
6480005fd: 0e                      |0000: line 29
6490005fe: 00                      |end sequence
650                                |
651                                |[5ff] debug info
6520005ff: 1f                      |line_start: 31
653000600: 01                      |parameters_size: 0001
654000601: 1e                      |parameter args v2
655000602: 07                      |0000: prologue end
656000603: 0e                      |0000: line 31
657000604: 96                      |0009: line 32
658000605: 00                      |end sequence
659                                |
660                                |[606] annotation
661000606: 02                      |  visibility: VISBILITY_SYSTEM
662000607: 04                      |  type_idx: 00000004 // dalvik.annotation.Signature
663000608: 01                      |  size: 00000001
664                                |  elements[0]:
665000609: 2a                      |    name_idx: 0000002a // value
66600060a: 1c04 1701 170e 1703 170e|    value: array {<T:, Ljava/lang/Object;, >, Ljava/lang/Object;}
667                                |
668                                |[614] annotation
669000614: 02                      |  visibility: VISBILITY_SYSTEM
670000615: 04                      |  type_idx: 00000004 // dalvik.annotation.Signature
671000616: 01                      |  size: 00000001
672                                |  elements[0]:
673000617: 2a                      |    name_idx: 0000002a // value
674000618: 1c01 1700               |    value: array {(TT;)V}
675                                |
676                                |[61c] call site
67700061c: 06                      |  size: 00000006
67800061d: 1600                    |  [0] method handle invoke-static,method{java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;}
67900061f: 171c                    |  [1] utf8 accept
680000621: 1501                    |  [2] proto (LFoo;I)LConsumer;
681000623: 1507                    |  [3] proto (Ljava/lang/Object;)V
682000625: 1601                    |  [4] method handle invoke-direct,method{Foo.lambda$bar$0:(ILjava/lang/Object;)V}
683000627: 1507                    |  [5] proto (Ljava/lang/Object;)V
684                                |
685                                |[629] class data for Consumer
686000629: 00                      |  static_fields_size:   00000000
68700062a: 00                      |  instance_fields_size: 00000000
68800062b: 00                      |  direct_methods_size:  00000000
68900062c: 01                      |  virtual_methods_size: 00000001
690                                |  virtual_methods:
691                                |  [0] Consumer.accept:(Ljava/lang/Object;)V
69200062d: 00                      |    method_idx:   00000000
69300062e: 8108                    |    access_flags: public|abstract
694000630: 00                      |    code_off:     00000000
695                                |
696                                |[631] class data for Foo
697000631: 00                      |  static_fields_size:   00000000
698000632: 01                      |  instance_fields_size: 00000001
699000633: 02                      |  direct_methods_size:  00000002
700000634: 01                      |  virtual_methods_size: 00000001
701                                |  instance_fields:
702                                |  [0] Foo.i:I
703000635: 00                      |    field_idx:    00000000
704000636: 00                      |    access_flags: 0000
705                                |  direct_methods:
706                                |  [0] Foo.<init>:()V
707000637: 01                      |    method_idx:   00000001
708000638: 8080 04                 |    access_flags: constructor
70900063b: c005                    |    code_off:     000002c0
710                                |  [1] Foo.lambda$bar$0:(ILjava/lang/Object;)V
71100063d: 02                      |    method_idx:   00000003
71200063e: 8220                    |    access_flags: private|synthetic
713000640: d805                    |    code_off:     000002d8
714                                |  virtual_methods:
715                                |  [0] Foo.bar:(I)V
716000642: 02                      |    method_idx:   00000002
717000643: 00                      |    access_flags: 0000
718000644: 8806                    |    code_off:     00000308
719                                |
720                                |[646] class data for Main
721000646: 00                      |  static_fields_size:   00000000
722000647: 00                      |  instance_fields_size: 00000000
723000648: 02                      |  direct_methods_size:  00000002
724000649: 00                      |  virtual_methods_size: 00000000
725                                |  direct_methods:
726                                |  [0] Main.<init>:()V
72700064a: 04                      |    method_idx:   00000004
72800064b: 8080 04                 |    access_flags: constructor
72900064e: b406                    |    code_off:     00000334
730                                |  [1] Main.main:([Ljava/lang/String;)V
731000650: 01                      |    method_idx:   00000005
732000651: 09                      |    access_flags: public|static
733000652: cc06                    |    code_off:     0000034c
734                                |
735                                |map:
736                                |[654] map list
737000654: 1300 0000               |  size: 00000013
738                                |[658] header_item map
739000658: 0000                    |  type:   0000 // TYPE_HEADER_ITEM
74000065a: 0000                    |  unused: 0
74100065c: 0100 0000               |  size:   00000001
742000660: 0000 0000               |  offset: 00000000
743                                |[664] string_id_item map
744000664: 0100                    |  type:   0001 // TYPE_STRING_ID_ITEM
745000666: 0000                    |  unused: 0
746000668: 2c00 0000               |  size:   0000002c
74700066c: 7000 0000               |  offset: 00000070
748                                |[670] type_id_item map
749000670: 0200                    |  type:   0002 // TYPE_TYPE_ID_ITEM
750000672: 0000                    |  unused: 0
751000674: 1100 0000               |  size:   00000011
752000678: 2001 0000               |  offset: 00000120
753                                |[67c] proto_id_item map
75400067c: 0300                    |  type:   0003 // TYPE_PROTO_ID_ITEM
75500067e: 0000                    |  unused: 0
756000680: 0900 0000               |  size:   00000009
757000684: 6401 0000               |  offset: 00000164
758                                |[688] field_id_item map
759000688: 0400                    |  type:   0004 // TYPE_FIELD_ID_ITEM
76000068a: 0000                    |  unused: 0
76100068c: 0200 0000               |  size:   00000002
762000690: d001 0000               |  offset: 000001d0
763                                |[694] method_id_item map
764000694: 0500                    |  type:   0005 // TYPE_METHOD_ID_ITEM
765000696: 0000                    |  unused: 0
766000698: 0b00 0000               |  size:   0000000b
76700069c: e001 0000               |  offset: 000001e0
768                                |[6a0] class_def_item map
7690006a0: 0600                    |  type:   0006 // TYPE_CLASS_DEF_ITEM
7700006a2: 0000                    |  unused: 0
7710006a4: 0300 0000               |  size:   00000003
7720006a8: 3802 0000               |  offset: 00000238
773                                |[6ac] call_site_id_item map
7740006ac: 0700                    |  type:   0007 // TYPE_CALL_SITE_ID_ITEM
7750006ae: 0000                    |  unused: 0
7760006b0: 0100 0000               |  size:   00000001
7770006b4: 9802 0000               |  offset: 00000298
778                                |[6b8] method_handle_item map
7790006b8: 0800                    |  type:   0008 // TYPE_METHOD_HANDLE_ITEM
7800006ba: 0000                    |  unused: 0
7810006bc: 0200 0000               |  size:   00000002
7820006c0: a002 0000               |  offset: 000002a0
783                                |[6c4] annotation_set_item map
7840006c4: 0310                    |  type:   1003 // TYPE_ANNOTATION_SET_ITEM
7850006c6: 0000                    |  unused: 0
7860006c8: 0200 0000               |  size:   00000002
7870006cc: b002 0000               |  offset: 000002b0
788                                |[6d0] code_item map
7890006d0: 0120                    |  type:   2001 // TYPE_CODE_ITEM
7900006d2: 0000                    |  unused: 0
7910006d4: 0500 0000               |  size:   00000005
7920006d8: c002 0000               |  offset: 000002c0
793                                |[6dc] annotations_directory_item map
7940006dc: 0620                    |  type:   2006 // TYPE_ANNOTATIONS_DIRECTORY_ITEM
7950006de: 0000                    |  unused: 0
7960006e0: 0100 0000               |  size:   00000001
7970006e4: 7003 0000               |  offset: 00000370
798                                |[6e8] type_list map
7990006e8: 0110                    |  type:   1001 // TYPE_TYPE_LIST
8000006ea: 0000                    |  unused: 0
8010006ec: 0600 0000               |  size:   00000006
8020006f0: 8803 0000               |  offset: 00000388
803                                |[6f4] string_data_item map
8040006f4: 0220                    |  type:   2002 // TYPE_STRING_DATA_ITEM
8050006f6: 0000                    |  unused: 0
8060006f8: 2c00 0000               |  size:   0000002c
8070006fc: be03 0000               |  offset: 000003be
808                                |[700] debug_info_item map
809000700: 0320                    |  type:   2003 // TYPE_DEBUG_INFO_ITEM
810000702: 0000                    |  unused: 0
811000704: 0500 0000               |  size:   00000005
812000708: de05 0000               |  offset: 000005de
813                                |[70c] annotation_item map
81400070c: 0420                    |  type:   2004 // TYPE_ANNOTATION_ITEM
81500070e: 0000                    |  unused: 0
816000710: 0200 0000               |  size:   00000002
817000714: 0606 0000               |  offset: 00000606
818                                |[718] encoded_array_item map
819000718: 0520                    |  type:   2005 // TYPE_ENCODED_ARRAY_ITEM
82000071a: 0000                    |  unused: 0
82100071c: 0100 0000               |  size:   00000001
822000720: 1c06 0000               |  offset: 0000061c
823                                |[724] class_data_item map
824000724: 0020                    |  type:   2000 // TYPE_CLASS_DATA_ITEM
825000726: 0000                    |  unused: 0
826000728: 0300 0000               |  size:   00000003
82700072c: 2906 0000               |  offset: 00000629
828                                |[730] map_list map
829000730: 0010                    |  type:   1000 // TYPE_MAP_LIST
830000732: 0000                    |  unused: 0
831000734: 0100 0000               |  size:   00000001
832000738: 5406 0000               |  offset: 00000654
833                                |
834                                |method code index:
835                                |
836                                |[2c0] Foo.<init>:()V
837                                |[308] Foo.bar:(I)V
838                                |[2d8] Foo.lambda$bar$0:(ILjava/lang/Object;)V
839                                |[334] Main.<init>:()V
840                                |[34c] Main.main:([Ljava/lang/String;)V
841                                |
842                                |statistics:
843                                |  annotation: 2 items; 22 bytes total
844                                |    8..14 bytes/item; average 11
845                                |  annotation set: 2 items; 16 bytes total
846                                |    8 bytes/item
847                                |  annotations directory: 1 item; 24 bytes total
848                                |    24 bytes/item
849                                |  call site id: 1 item; 4 bytes total
850                                |    4 bytes/item
851                                |  class data: 3 items; 43 bytes total
852                                |    8..21 bytes/item; average 14
853                                |  class def: 3 items; 96 bytes total
854                                |    32 bytes/item
855                                |  code: 5 items; 176 bytes total
856                                |    24..48 bytes/item; average 35
857                                |  debug info: 5 items; 40 bytes total
858                                |    5..12 bytes/item; average 8
859                                |  encoded array: 1 item; 13 bytes total
860                                |    13 bytes/item
861                                |  field id: 2 items; 16 bytes total
862                                |    8 bytes/item
863                                |  header: 1 item; 112 bytes total
864                                |    112 bytes/item
865                                |  map list: 1 item; 232 bytes total
866                                |    232 bytes/item
867                                |  method handle: 2 items; 16 bytes total
868                                |    8 bytes/item
869                                |  method id: 11 items; 88 bytes total
870                                |    8 bytes/item
871                                |  proto id: 9 items; 108 bytes total
872                                |    12 bytes/item
873                                |  string data: 44 items; 544 bytes total
874                                |    3..41 bytes/item; average 12
875                                |  string id: 44 items; 176 bytes total
876                                |    4 bytes/item
877                                |  type id: 17 items; 68 bytes total
878                                |    4 bytes/item
879                                |  type list: 6 items; 50 bytes total
880                                |    6..16 bytes/item; average 8
881