• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2016 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.libcore;
18 
19 import android.perftests.utils.BenchmarkState;
20 import android.perftests.utils.PerfStatusReporter;
21 import android.test.suitebuilder.annotation.LargeTest;
22 
23 import androidx.test.runner.AndroidJUnit4;
24 
25 import org.junit.Before;
26 import org.junit.Rule;
27 import org.junit.Test;
28 import org.junit.runner.RunWith;
29 
30 /**
31  * This file is script-generated by ImtConflictPerfTestGen.py. It measures the performance impact of
32  * conflicts in interface method tables. Run `python ImtConflictPerfTestGen.py >
33  * ImtConflictPerfTest.java` to regenerate.
34  *
35  * <p>Each interface has 64 methods, which is the current size of an IMT. C0 implements one
36  * interface, C1 implements two, C2 implements three, and so on. The intent is that C0 has no
37  * conflicts in its IMT, C1 has depth-2 conflicts in its IMT, C2 has depth-3 conflicts, etc. This is
38  * currently guaranteed by the fact that we hash interface methods by taking their method index
39  * modulo 64. (Note that a "conflict depth" of 1 means no conflict at all.)
40  */
41 @RunWith(AndroidJUnit4.class)
42 @LargeTest
43 public class ImtConflictPerfTest {
44     @Rule public PerfStatusReporter mPerfStatusReporter = new PerfStatusReporter();
45 
46     @Before
setup()47     public void setup() {
48         C0 c0 = new C0();
49         callF0(c0);
50         C1 c1 = new C1();
51         callF0(c1);
52         callF19(c1);
53         C2 c2 = new C2();
54         callF0(c2);
55         callF19(c2);
56         callF38(c2);
57         C3 c3 = new C3();
58         callF0(c3);
59         callF19(c3);
60         callF38(c3);
61         callF57(c3);
62         C4 c4 = new C4();
63         callF0(c4);
64         callF19(c4);
65         callF38(c4);
66         callF57(c4);
67         callF76(c4);
68         C5 c5 = new C5();
69         callF0(c5);
70         callF19(c5);
71         callF38(c5);
72         callF57(c5);
73         callF76(c5);
74         callF95(c5);
75         C6 c6 = new C6();
76         callF0(c6);
77         callF19(c6);
78         callF38(c6);
79         callF57(c6);
80         callF76(c6);
81         callF95(c6);
82         callF114(c6);
83         C7 c7 = new C7();
84         callF0(c7);
85         callF19(c7);
86         callF38(c7);
87         callF57(c7);
88         callF76(c7);
89         callF95(c7);
90         callF114(c7);
91         callF133(c7);
92         C8 c8 = new C8();
93         callF0(c8);
94         callF19(c8);
95         callF38(c8);
96         callF57(c8);
97         callF76(c8);
98         callF95(c8);
99         callF114(c8);
100         callF133(c8);
101         callF152(c8);
102         C9 c9 = new C9();
103         callF0(c9);
104         callF19(c9);
105         callF38(c9);
106         callF57(c9);
107         callF76(c9);
108         callF95(c9);
109         callF114(c9);
110         callF133(c9);
111         callF152(c9);
112         callF171(c9);
113         C10 c10 = new C10();
114         callF0(c10);
115         callF19(c10);
116         callF38(c10);
117         callF57(c10);
118         callF76(c10);
119         callF95(c10);
120         callF114(c10);
121         callF133(c10);
122         callF152(c10);
123         callF171(c10);
124         callF190(c10);
125         C11 c11 = new C11();
126         callF0(c11);
127         callF19(c11);
128         callF38(c11);
129         callF57(c11);
130         callF76(c11);
131         callF95(c11);
132         callF114(c11);
133         callF133(c11);
134         callF152(c11);
135         callF171(c11);
136         callF190(c11);
137         callF209(c11);
138         C12 c12 = new C12();
139         callF0(c12);
140         callF19(c12);
141         callF38(c12);
142         callF57(c12);
143         callF76(c12);
144         callF95(c12);
145         callF114(c12);
146         callF133(c12);
147         callF152(c12);
148         callF171(c12);
149         callF190(c12);
150         callF209(c12);
151         callF228(c12);
152         C13 c13 = new C13();
153         callF0(c13);
154         callF19(c13);
155         callF38(c13);
156         callF57(c13);
157         callF76(c13);
158         callF95(c13);
159         callF114(c13);
160         callF133(c13);
161         callF152(c13);
162         callF171(c13);
163         callF190(c13);
164         callF209(c13);
165         callF228(c13);
166         callF247(c13);
167         C14 c14 = new C14();
168         callF0(c14);
169         callF19(c14);
170         callF38(c14);
171         callF57(c14);
172         callF76(c14);
173         callF95(c14);
174         callF114(c14);
175         callF133(c14);
176         callF152(c14);
177         callF171(c14);
178         callF190(c14);
179         callF209(c14);
180         callF228(c14);
181         callF247(c14);
182         callF266(c14);
183         C15 c15 = new C15();
184         callF0(c15);
185         callF19(c15);
186         callF38(c15);
187         callF57(c15);
188         callF76(c15);
189         callF95(c15);
190         callF114(c15);
191         callF133(c15);
192         callF152(c15);
193         callF171(c15);
194         callF190(c15);
195         callF209(c15);
196         callF228(c15);
197         callF247(c15);
198         callF266(c15);
199         callF285(c15);
200         C16 c16 = new C16();
201         callF0(c16);
202         callF19(c16);
203         callF38(c16);
204         callF57(c16);
205         callF76(c16);
206         callF95(c16);
207         callF114(c16);
208         callF133(c16);
209         callF152(c16);
210         callF171(c16);
211         callF190(c16);
212         callF209(c16);
213         callF228(c16);
214         callF247(c16);
215         callF266(c16);
216         callF285(c16);
217         callF304(c16);
218         C17 c17 = new C17();
219         callF0(c17);
220         callF19(c17);
221         callF38(c17);
222         callF57(c17);
223         callF76(c17);
224         callF95(c17);
225         callF114(c17);
226         callF133(c17);
227         callF152(c17);
228         callF171(c17);
229         callF190(c17);
230         callF209(c17);
231         callF228(c17);
232         callF247(c17);
233         callF266(c17);
234         callF285(c17);
235         callF304(c17);
236         callF323(c17);
237         C18 c18 = new C18();
238         callF0(c18);
239         callF19(c18);
240         callF38(c18);
241         callF57(c18);
242         callF76(c18);
243         callF95(c18);
244         callF114(c18);
245         callF133(c18);
246         callF152(c18);
247         callF171(c18);
248         callF190(c18);
249         callF209(c18);
250         callF228(c18);
251         callF247(c18);
252         callF266(c18);
253         callF285(c18);
254         callF304(c18);
255         callF323(c18);
256         callF342(c18);
257         C19 c19 = new C19();
258         callF0(c19);
259         callF19(c19);
260         callF38(c19);
261         callF57(c19);
262         callF76(c19);
263         callF95(c19);
264         callF114(c19);
265         callF133(c19);
266         callF152(c19);
267         callF171(c19);
268         callF190(c19);
269         callF209(c19);
270         callF228(c19);
271         callF247(c19);
272         callF266(c19);
273         callF285(c19);
274         callF304(c19);
275         callF323(c19);
276         callF342(c19);
277         callF361(c19);
278     }
279 
280     @Test
timeConflictDepth01()281     public void timeConflictDepth01() {
282         C0 c0 = new C0();
283         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
284         while (state.keepRunning()) {
285             callF0(c0);
286             callF0(c0);
287             callF0(c0);
288             callF0(c0);
289             callF0(c0);
290             callF0(c0);
291             callF0(c0);
292             callF0(c0);
293             callF0(c0);
294             callF0(c0);
295             callF0(c0);
296             callF0(c0);
297             callF0(c0);
298             callF0(c0);
299             callF0(c0);
300             callF0(c0);
301             callF0(c0);
302             callF0(c0);
303             callF0(c0);
304             callF0(c0);
305         }
306     }
307 
308     @Test
timeConflictDepth02()309     public void timeConflictDepth02() {
310         C1 c1 = new C1();
311         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
312         while (state.keepRunning()) {
313             callF0(c1);
314             callF19(c1);
315             callF0(c1);
316             callF19(c1);
317             callF0(c1);
318             callF19(c1);
319             callF0(c1);
320             callF19(c1);
321             callF0(c1);
322             callF19(c1);
323             callF0(c1);
324             callF19(c1);
325             callF0(c1);
326             callF19(c1);
327             callF0(c1);
328             callF19(c1);
329             callF0(c1);
330             callF19(c1);
331             callF0(c1);
332             callF19(c1);
333         }
334     }
335 
336     @Test
timeConflictDepth03()337     public void timeConflictDepth03() {
338         C2 c2 = new C2();
339         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
340         while (state.keepRunning()) {
341             callF0(c2);
342             callF19(c2);
343             callF38(c2);
344             callF0(c2);
345             callF19(c2);
346             callF38(c2);
347             callF0(c2);
348             callF19(c2);
349             callF38(c2);
350             callF0(c2);
351             callF19(c2);
352             callF38(c2);
353             callF0(c2);
354             callF19(c2);
355             callF38(c2);
356             callF0(c2);
357             callF19(c2);
358             callF38(c2);
359             callF0(c2);
360             callF19(c2);
361         }
362     }
363 
364     @Test
timeConflictDepth04()365     public void timeConflictDepth04() {
366         C3 c3 = new C3();
367         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
368         while (state.keepRunning()) {
369             callF0(c3);
370             callF19(c3);
371             callF38(c3);
372             callF57(c3);
373             callF0(c3);
374             callF19(c3);
375             callF38(c3);
376             callF57(c3);
377             callF0(c3);
378             callF19(c3);
379             callF38(c3);
380             callF57(c3);
381             callF0(c3);
382             callF19(c3);
383             callF38(c3);
384             callF57(c3);
385             callF0(c3);
386             callF19(c3);
387             callF38(c3);
388             callF57(c3);
389         }
390     }
391 
392     @Test
timeConflictDepth05()393     public void timeConflictDepth05() {
394         C4 c4 = new C4();
395         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
396         while (state.keepRunning()) {
397             callF0(c4);
398             callF19(c4);
399             callF38(c4);
400             callF57(c4);
401             callF76(c4);
402             callF0(c4);
403             callF19(c4);
404             callF38(c4);
405             callF57(c4);
406             callF76(c4);
407             callF0(c4);
408             callF19(c4);
409             callF38(c4);
410             callF57(c4);
411             callF76(c4);
412             callF0(c4);
413             callF19(c4);
414             callF38(c4);
415             callF57(c4);
416             callF76(c4);
417         }
418     }
419 
420     @Test
timeConflictDepth06()421     public void timeConflictDepth06() {
422         C5 c5 = new C5();
423         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
424         while (state.keepRunning()) {
425             callF0(c5);
426             callF19(c5);
427             callF38(c5);
428             callF57(c5);
429             callF76(c5);
430             callF95(c5);
431             callF0(c5);
432             callF19(c5);
433             callF38(c5);
434             callF57(c5);
435             callF76(c5);
436             callF95(c5);
437             callF0(c5);
438             callF19(c5);
439             callF38(c5);
440             callF57(c5);
441             callF76(c5);
442             callF95(c5);
443             callF0(c5);
444             callF19(c5);
445         }
446     }
447 
448     @Test
timeConflictDepth07()449     public void timeConflictDepth07() {
450         C6 c6 = new C6();
451         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
452         while (state.keepRunning()) {
453             callF0(c6);
454             callF19(c6);
455             callF38(c6);
456             callF57(c6);
457             callF76(c6);
458             callF95(c6);
459             callF114(c6);
460             callF0(c6);
461             callF19(c6);
462             callF38(c6);
463             callF57(c6);
464             callF76(c6);
465             callF95(c6);
466             callF114(c6);
467             callF0(c6);
468             callF19(c6);
469             callF38(c6);
470             callF57(c6);
471             callF76(c6);
472             callF95(c6);
473         }
474     }
475 
476     @Test
timeConflictDepth08()477     public void timeConflictDepth08() {
478         C7 c7 = new C7();
479         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
480         while (state.keepRunning()) {
481             callF0(c7);
482             callF19(c7);
483             callF38(c7);
484             callF57(c7);
485             callF76(c7);
486             callF95(c7);
487             callF114(c7);
488             callF133(c7);
489             callF0(c7);
490             callF19(c7);
491             callF38(c7);
492             callF57(c7);
493             callF76(c7);
494             callF95(c7);
495             callF114(c7);
496             callF133(c7);
497             callF0(c7);
498             callF19(c7);
499             callF38(c7);
500             callF57(c7);
501         }
502     }
503 
504     @Test
timeConflictDepth09()505     public void timeConflictDepth09() {
506         C8 c8 = new C8();
507         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
508         while (state.keepRunning()) {
509             callF0(c8);
510             callF19(c8);
511             callF38(c8);
512             callF57(c8);
513             callF76(c8);
514             callF95(c8);
515             callF114(c8);
516             callF133(c8);
517             callF152(c8);
518             callF0(c8);
519             callF19(c8);
520             callF38(c8);
521             callF57(c8);
522             callF76(c8);
523             callF95(c8);
524             callF114(c8);
525             callF133(c8);
526             callF152(c8);
527             callF0(c8);
528             callF19(c8);
529         }
530     }
531 
532     @Test
timeConflictDepth10()533     public void timeConflictDepth10() {
534         C9 c9 = new C9();
535         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
536         while (state.keepRunning()) {
537             callF0(c9);
538             callF19(c9);
539             callF38(c9);
540             callF57(c9);
541             callF76(c9);
542             callF95(c9);
543             callF114(c9);
544             callF133(c9);
545             callF152(c9);
546             callF171(c9);
547             callF0(c9);
548             callF19(c9);
549             callF38(c9);
550             callF57(c9);
551             callF76(c9);
552             callF95(c9);
553             callF114(c9);
554             callF133(c9);
555             callF152(c9);
556             callF171(c9);
557         }
558     }
559 
560     @Test
timeConflictDepth11()561     public void timeConflictDepth11() {
562         C10 c10 = new C10();
563         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
564         while (state.keepRunning()) {
565             callF0(c10);
566             callF19(c10);
567             callF38(c10);
568             callF57(c10);
569             callF76(c10);
570             callF95(c10);
571             callF114(c10);
572             callF133(c10);
573             callF152(c10);
574             callF171(c10);
575             callF190(c10);
576             callF0(c10);
577             callF19(c10);
578             callF38(c10);
579             callF57(c10);
580             callF76(c10);
581             callF95(c10);
582             callF114(c10);
583             callF133(c10);
584             callF152(c10);
585         }
586     }
587 
588     @Test
timeConflictDepth12()589     public void timeConflictDepth12() {
590         C11 c11 = new C11();
591         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
592         while (state.keepRunning()) {
593             callF0(c11);
594             callF19(c11);
595             callF38(c11);
596             callF57(c11);
597             callF76(c11);
598             callF95(c11);
599             callF114(c11);
600             callF133(c11);
601             callF152(c11);
602             callF171(c11);
603             callF190(c11);
604             callF209(c11);
605             callF0(c11);
606             callF19(c11);
607             callF38(c11);
608             callF57(c11);
609             callF76(c11);
610             callF95(c11);
611             callF114(c11);
612             callF133(c11);
613         }
614     }
615 
616     @Test
timeConflictDepth13()617     public void timeConflictDepth13() {
618         C12 c12 = new C12();
619         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
620         while (state.keepRunning()) {
621             callF0(c12);
622             callF19(c12);
623             callF38(c12);
624             callF57(c12);
625             callF76(c12);
626             callF95(c12);
627             callF114(c12);
628             callF133(c12);
629             callF152(c12);
630             callF171(c12);
631             callF190(c12);
632             callF209(c12);
633             callF228(c12);
634             callF0(c12);
635             callF19(c12);
636             callF38(c12);
637             callF57(c12);
638             callF76(c12);
639             callF95(c12);
640             callF114(c12);
641         }
642     }
643 
644     @Test
timeConflictDepth14()645     public void timeConflictDepth14() {
646         C13 c13 = new C13();
647         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
648         while (state.keepRunning()) {
649             callF0(c13);
650             callF19(c13);
651             callF38(c13);
652             callF57(c13);
653             callF76(c13);
654             callF95(c13);
655             callF114(c13);
656             callF133(c13);
657             callF152(c13);
658             callF171(c13);
659             callF190(c13);
660             callF209(c13);
661             callF228(c13);
662             callF247(c13);
663             callF0(c13);
664             callF19(c13);
665             callF38(c13);
666             callF57(c13);
667             callF76(c13);
668             callF95(c13);
669         }
670     }
671 
672     @Test
timeConflictDepth15()673     public void timeConflictDepth15() {
674         C14 c14 = new C14();
675         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
676         while (state.keepRunning()) {
677             callF0(c14);
678             callF19(c14);
679             callF38(c14);
680             callF57(c14);
681             callF76(c14);
682             callF95(c14);
683             callF114(c14);
684             callF133(c14);
685             callF152(c14);
686             callF171(c14);
687             callF190(c14);
688             callF209(c14);
689             callF228(c14);
690             callF247(c14);
691             callF266(c14);
692             callF0(c14);
693             callF19(c14);
694             callF38(c14);
695             callF57(c14);
696             callF76(c14);
697         }
698     }
699 
700     @Test
timeConflictDepth16()701     public void timeConflictDepth16() {
702         C15 c15 = new C15();
703         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
704         while (state.keepRunning()) {
705             callF0(c15);
706             callF19(c15);
707             callF38(c15);
708             callF57(c15);
709             callF76(c15);
710             callF95(c15);
711             callF114(c15);
712             callF133(c15);
713             callF152(c15);
714             callF171(c15);
715             callF190(c15);
716             callF209(c15);
717             callF228(c15);
718             callF247(c15);
719             callF266(c15);
720             callF285(c15);
721             callF0(c15);
722             callF19(c15);
723             callF38(c15);
724             callF57(c15);
725         }
726     }
727 
728     @Test
timeConflictDepth17()729     public void timeConflictDepth17() {
730         C16 c16 = new C16();
731         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
732         while (state.keepRunning()) {
733             callF0(c16);
734             callF19(c16);
735             callF38(c16);
736             callF57(c16);
737             callF76(c16);
738             callF95(c16);
739             callF114(c16);
740             callF133(c16);
741             callF152(c16);
742             callF171(c16);
743             callF190(c16);
744             callF209(c16);
745             callF228(c16);
746             callF247(c16);
747             callF266(c16);
748             callF285(c16);
749             callF304(c16);
750             callF0(c16);
751             callF19(c16);
752             callF38(c16);
753         }
754     }
755 
756     @Test
timeConflictDepth18()757     public void timeConflictDepth18() {
758         C17 c17 = new C17();
759         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
760         while (state.keepRunning()) {
761             callF0(c17);
762             callF19(c17);
763             callF38(c17);
764             callF57(c17);
765             callF76(c17);
766             callF95(c17);
767             callF114(c17);
768             callF133(c17);
769             callF152(c17);
770             callF171(c17);
771             callF190(c17);
772             callF209(c17);
773             callF228(c17);
774             callF247(c17);
775             callF266(c17);
776             callF285(c17);
777             callF304(c17);
778             callF323(c17);
779             callF0(c17);
780             callF19(c17);
781         }
782     }
783 
784     @Test
timeConflictDepth19()785     public void timeConflictDepth19() {
786         C18 c18 = new C18();
787         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
788         while (state.keepRunning()) {
789             callF0(c18);
790             callF19(c18);
791             callF38(c18);
792             callF57(c18);
793             callF76(c18);
794             callF95(c18);
795             callF114(c18);
796             callF133(c18);
797             callF152(c18);
798             callF171(c18);
799             callF190(c18);
800             callF209(c18);
801             callF228(c18);
802             callF247(c18);
803             callF266(c18);
804             callF285(c18);
805             callF304(c18);
806             callF323(c18);
807             callF342(c18);
808             callF0(c18);
809         }
810     }
811 
812     @Test
timeConflictDepth20()813     public void timeConflictDepth20() {
814         C19 c19 = new C19();
815         BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
816         while (state.keepRunning()) {
817             callF0(c19);
818             callF19(c19);
819             callF38(c19);
820             callF57(c19);
821             callF76(c19);
822             callF95(c19);
823             callF114(c19);
824             callF133(c19);
825             callF152(c19);
826             callF171(c19);
827             callF190(c19);
828             callF209(c19);
829             callF228(c19);
830             callF247(c19);
831             callF266(c19);
832             callF285(c19);
833             callF304(c19);
834             callF323(c19);
835             callF342(c19);
836             callF361(c19);
837         }
838     }
839 
callF0(I0 i)840     public void callF0(I0 i) {
841         i.f0();
842     }
843 
callF19(I1 i)844     public void callF19(I1 i) {
845         i.f19();
846     }
847 
callF38(I2 i)848     public void callF38(I2 i) {
849         i.f38();
850     }
851 
callF57(I3 i)852     public void callF57(I3 i) {
853         i.f57();
854     }
855 
callF76(I4 i)856     public void callF76(I4 i) {
857         i.f76();
858     }
859 
callF95(I5 i)860     public void callF95(I5 i) {
861         i.f95();
862     }
863 
callF114(I6 i)864     public void callF114(I6 i) {
865         i.f114();
866     }
867 
callF133(I7 i)868     public void callF133(I7 i) {
869         i.f133();
870     }
871 
callF152(I8 i)872     public void callF152(I8 i) {
873         i.f152();
874     }
875 
callF171(I9 i)876     public void callF171(I9 i) {
877         i.f171();
878     }
879 
callF190(I10 i)880     public void callF190(I10 i) {
881         i.f190();
882     }
883 
callF209(I11 i)884     public void callF209(I11 i) {
885         i.f209();
886     }
887 
callF228(I12 i)888     public void callF228(I12 i) {
889         i.f228();
890     }
891 
callF247(I13 i)892     public void callF247(I13 i) {
893         i.f247();
894     }
895 
callF266(I14 i)896     public void callF266(I14 i) {
897         i.f266();
898     }
899 
callF285(I15 i)900     public void callF285(I15 i) {
901         i.f285();
902     }
903 
callF304(I16 i)904     public void callF304(I16 i) {
905         i.f304();
906     }
907 
callF323(I17 i)908     public void callF323(I17 i) {
909         i.f323();
910     }
911 
callF342(I18 i)912     public void callF342(I18 i) {
913         i.f342();
914     }
915 
callF361(I19 i)916     public void callF361(I19 i) {
917         i.f361();
918     }
919 
920     static class C0 implements I0 {}
921 
922     static class C1 implements I0, I1 {}
923 
924     static class C2 implements I0, I1, I2 {}
925 
926     static class C3 implements I0, I1, I2, I3 {}
927 
928     static class C4 implements I0, I1, I2, I3, I4 {}
929 
930     static class C5 implements I0, I1, I2, I3, I4, I5 {}
931 
932     static class C6 implements I0, I1, I2, I3, I4, I5, I6 {}
933 
934     static class C7 implements I0, I1, I2, I3, I4, I5, I6, I7 {}
935 
936     static class C8 implements I0, I1, I2, I3, I4, I5, I6, I7, I8 {}
937 
938     static class C9 implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9 {}
939 
940     static class C10 implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10 {}
941 
942     static class C11 implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, I11 {}
943 
944     static class C12 implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, I11, I12 {}
945 
946     static class C13 implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, I11, I12, I13 {}
947 
948     static class C14 implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, I11, I12, I13, I14 {}
949 
950     static class C15
951             implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, I11, I12, I13, I14, I15 {}
952 
953     static class C16
954             implements I0, I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, I11, I12, I13, I14, I15, I16 {}
955 
956     static class C17
957             implements I0,
958                     I1,
959                     I2,
960                     I3,
961                     I4,
962                     I5,
963                     I6,
964                     I7,
965                     I8,
966                     I9,
967                     I10,
968                     I11,
969                     I12,
970                     I13,
971                     I14,
972                     I15,
973                     I16,
974                     I17 {}
975 
976     static class C18
977             implements I0,
978                     I1,
979                     I2,
980                     I3,
981                     I4,
982                     I5,
983                     I6,
984                     I7,
985                     I8,
986                     I9,
987                     I10,
988                     I11,
989                     I12,
990                     I13,
991                     I14,
992                     I15,
993                     I16,
994                     I17,
995                     I18 {}
996 
997     static class C19
998             implements I0,
999                     I1,
1000                     I2,
1001                     I3,
1002                     I4,
1003                     I5,
1004                     I6,
1005                     I7,
1006                     I8,
1007                     I9,
1008                     I10,
1009                     I11,
1010                     I12,
1011                     I13,
1012                     I14,
1013                     I15,
1014                     I16,
1015                     I17,
1016                     I18,
1017                     I19 {}
1018 
1019     interface I0 {
f0()1020         default void f0() {}
1021 
f1()1022         default void f1() {}
1023 
f2()1024         default void f2() {}
1025 
f3()1026         default void f3() {}
1027 
f4()1028         default void f4() {}
1029 
f5()1030         default void f5() {}
1031 
f6()1032         default void f6() {}
1033 
f7()1034         default void f7() {}
1035 
f8()1036         default void f8() {}
1037 
f9()1038         default void f9() {}
1039 
f10()1040         default void f10() {}
1041 
f11()1042         default void f11() {}
1043 
f12()1044         default void f12() {}
1045 
f13()1046         default void f13() {}
1047 
f14()1048         default void f14() {}
1049 
f15()1050         default void f15() {}
1051 
f16()1052         default void f16() {}
1053 
f17()1054         default void f17() {}
1055 
f18()1056         default void f18() {}
1057     }
1058 
1059     interface I1 {
f19()1060         default void f19() {}
1061 
f20()1062         default void f20() {}
1063 
f21()1064         default void f21() {}
1065 
f22()1066         default void f22() {}
1067 
f23()1068         default void f23() {}
1069 
f24()1070         default void f24() {}
1071 
f25()1072         default void f25() {}
1073 
f26()1074         default void f26() {}
1075 
f27()1076         default void f27() {}
1077 
f28()1078         default void f28() {}
1079 
f29()1080         default void f29() {}
1081 
f30()1082         default void f30() {}
1083 
f31()1084         default void f31() {}
1085 
f32()1086         default void f32() {}
1087 
f33()1088         default void f33() {}
1089 
f34()1090         default void f34() {}
1091 
f35()1092         default void f35() {}
1093 
f36()1094         default void f36() {}
1095 
f37()1096         default void f37() {}
1097     }
1098 
1099     interface I2 {
f38()1100         default void f38() {}
1101 
f39()1102         default void f39() {}
1103 
f40()1104         default void f40() {}
1105 
f41()1106         default void f41() {}
1107 
f42()1108         default void f42() {}
1109 
f43()1110         default void f43() {}
1111 
f44()1112         default void f44() {}
1113 
f45()1114         default void f45() {}
1115 
f46()1116         default void f46() {}
1117 
f47()1118         default void f47() {}
1119 
f48()1120         default void f48() {}
1121 
f49()1122         default void f49() {}
1123 
f50()1124         default void f50() {}
1125 
f51()1126         default void f51() {}
1127 
f52()1128         default void f52() {}
1129 
f53()1130         default void f53() {}
1131 
f54()1132         default void f54() {}
1133 
f55()1134         default void f55() {}
1135 
f56()1136         default void f56() {}
1137     }
1138 
1139     interface I3 {
f57()1140         default void f57() {}
1141 
f58()1142         default void f58() {}
1143 
f59()1144         default void f59() {}
1145 
f60()1146         default void f60() {}
1147 
f61()1148         default void f61() {}
1149 
f62()1150         default void f62() {}
1151 
f63()1152         default void f63() {}
1153 
f64()1154         default void f64() {}
1155 
f65()1156         default void f65() {}
1157 
f66()1158         default void f66() {}
1159 
f67()1160         default void f67() {}
1161 
f68()1162         default void f68() {}
1163 
f69()1164         default void f69() {}
1165 
f70()1166         default void f70() {}
1167 
f71()1168         default void f71() {}
1169 
f72()1170         default void f72() {}
1171 
f73()1172         default void f73() {}
1173 
f74()1174         default void f74() {}
1175 
f75()1176         default void f75() {}
1177     }
1178 
1179     interface I4 {
f76()1180         default void f76() {}
1181 
f77()1182         default void f77() {}
1183 
f78()1184         default void f78() {}
1185 
f79()1186         default void f79() {}
1187 
f80()1188         default void f80() {}
1189 
f81()1190         default void f81() {}
1191 
f82()1192         default void f82() {}
1193 
f83()1194         default void f83() {}
1195 
f84()1196         default void f84() {}
1197 
f85()1198         default void f85() {}
1199 
f86()1200         default void f86() {}
1201 
f87()1202         default void f87() {}
1203 
f88()1204         default void f88() {}
1205 
f89()1206         default void f89() {}
1207 
f90()1208         default void f90() {}
1209 
f91()1210         default void f91() {}
1211 
f92()1212         default void f92() {}
1213 
f93()1214         default void f93() {}
1215 
f94()1216         default void f94() {}
1217     }
1218 
1219     interface I5 {
f95()1220         default void f95() {}
1221 
f96()1222         default void f96() {}
1223 
f97()1224         default void f97() {}
1225 
f98()1226         default void f98() {}
1227 
f99()1228         default void f99() {}
1229 
f100()1230         default void f100() {}
1231 
f101()1232         default void f101() {}
1233 
f102()1234         default void f102() {}
1235 
f103()1236         default void f103() {}
1237 
f104()1238         default void f104() {}
1239 
f105()1240         default void f105() {}
1241 
f106()1242         default void f106() {}
1243 
f107()1244         default void f107() {}
1245 
f108()1246         default void f108() {}
1247 
f109()1248         default void f109() {}
1249 
f110()1250         default void f110() {}
1251 
f111()1252         default void f111() {}
1253 
f112()1254         default void f112() {}
1255 
f113()1256         default void f113() {}
1257     }
1258 
1259     interface I6 {
f114()1260         default void f114() {}
1261 
f115()1262         default void f115() {}
1263 
f116()1264         default void f116() {}
1265 
f117()1266         default void f117() {}
1267 
f118()1268         default void f118() {}
1269 
f119()1270         default void f119() {}
1271 
f120()1272         default void f120() {}
1273 
f121()1274         default void f121() {}
1275 
f122()1276         default void f122() {}
1277 
f123()1278         default void f123() {}
1279 
f124()1280         default void f124() {}
1281 
f125()1282         default void f125() {}
1283 
f126()1284         default void f126() {}
1285 
f127()1286         default void f127() {}
1287 
f128()1288         default void f128() {}
1289 
f129()1290         default void f129() {}
1291 
f130()1292         default void f130() {}
1293 
f131()1294         default void f131() {}
1295 
f132()1296         default void f132() {}
1297     }
1298 
1299     interface I7 {
f133()1300         default void f133() {}
1301 
f134()1302         default void f134() {}
1303 
f135()1304         default void f135() {}
1305 
f136()1306         default void f136() {}
1307 
f137()1308         default void f137() {}
1309 
f138()1310         default void f138() {}
1311 
f139()1312         default void f139() {}
1313 
f140()1314         default void f140() {}
1315 
f141()1316         default void f141() {}
1317 
f142()1318         default void f142() {}
1319 
f143()1320         default void f143() {}
1321 
f144()1322         default void f144() {}
1323 
f145()1324         default void f145() {}
1325 
f146()1326         default void f146() {}
1327 
f147()1328         default void f147() {}
1329 
f148()1330         default void f148() {}
1331 
f149()1332         default void f149() {}
1333 
f150()1334         default void f150() {}
1335 
f151()1336         default void f151() {}
1337     }
1338 
1339     interface I8 {
f152()1340         default void f152() {}
1341 
f153()1342         default void f153() {}
1343 
f154()1344         default void f154() {}
1345 
f155()1346         default void f155() {}
1347 
f156()1348         default void f156() {}
1349 
f157()1350         default void f157() {}
1351 
f158()1352         default void f158() {}
1353 
f159()1354         default void f159() {}
1355 
f160()1356         default void f160() {}
1357 
f161()1358         default void f161() {}
1359 
f162()1360         default void f162() {}
1361 
f163()1362         default void f163() {}
1363 
f164()1364         default void f164() {}
1365 
f165()1366         default void f165() {}
1367 
f166()1368         default void f166() {}
1369 
f167()1370         default void f167() {}
1371 
f168()1372         default void f168() {}
1373 
f169()1374         default void f169() {}
1375 
f170()1376         default void f170() {}
1377     }
1378 
1379     interface I9 {
f171()1380         default void f171() {}
1381 
f172()1382         default void f172() {}
1383 
f173()1384         default void f173() {}
1385 
f174()1386         default void f174() {}
1387 
f175()1388         default void f175() {}
1389 
f176()1390         default void f176() {}
1391 
f177()1392         default void f177() {}
1393 
f178()1394         default void f178() {}
1395 
f179()1396         default void f179() {}
1397 
f180()1398         default void f180() {}
1399 
f181()1400         default void f181() {}
1401 
f182()1402         default void f182() {}
1403 
f183()1404         default void f183() {}
1405 
f184()1406         default void f184() {}
1407 
f185()1408         default void f185() {}
1409 
f186()1410         default void f186() {}
1411 
f187()1412         default void f187() {}
1413 
f188()1414         default void f188() {}
1415 
f189()1416         default void f189() {}
1417     }
1418 
1419     interface I10 {
f190()1420         default void f190() {}
1421 
f191()1422         default void f191() {}
1423 
f192()1424         default void f192() {}
1425 
f193()1426         default void f193() {}
1427 
f194()1428         default void f194() {}
1429 
f195()1430         default void f195() {}
1431 
f196()1432         default void f196() {}
1433 
f197()1434         default void f197() {}
1435 
f198()1436         default void f198() {}
1437 
f199()1438         default void f199() {}
1439 
f200()1440         default void f200() {}
1441 
f201()1442         default void f201() {}
1443 
f202()1444         default void f202() {}
1445 
f203()1446         default void f203() {}
1447 
f204()1448         default void f204() {}
1449 
f205()1450         default void f205() {}
1451 
f206()1452         default void f206() {}
1453 
f207()1454         default void f207() {}
1455 
f208()1456         default void f208() {}
1457     }
1458 
1459     interface I11 {
f209()1460         default void f209() {}
1461 
f210()1462         default void f210() {}
1463 
f211()1464         default void f211() {}
1465 
f212()1466         default void f212() {}
1467 
f213()1468         default void f213() {}
1469 
f214()1470         default void f214() {}
1471 
f215()1472         default void f215() {}
1473 
f216()1474         default void f216() {}
1475 
f217()1476         default void f217() {}
1477 
f218()1478         default void f218() {}
1479 
f219()1480         default void f219() {}
1481 
f220()1482         default void f220() {}
1483 
f221()1484         default void f221() {}
1485 
f222()1486         default void f222() {}
1487 
f223()1488         default void f223() {}
1489 
f224()1490         default void f224() {}
1491 
f225()1492         default void f225() {}
1493 
f226()1494         default void f226() {}
1495 
f227()1496         default void f227() {}
1497     }
1498 
1499     interface I12 {
f228()1500         default void f228() {}
1501 
f229()1502         default void f229() {}
1503 
f230()1504         default void f230() {}
1505 
f231()1506         default void f231() {}
1507 
f232()1508         default void f232() {}
1509 
f233()1510         default void f233() {}
1511 
f234()1512         default void f234() {}
1513 
f235()1514         default void f235() {}
1515 
f236()1516         default void f236() {}
1517 
f237()1518         default void f237() {}
1519 
f238()1520         default void f238() {}
1521 
f239()1522         default void f239() {}
1523 
f240()1524         default void f240() {}
1525 
f241()1526         default void f241() {}
1527 
f242()1528         default void f242() {}
1529 
f243()1530         default void f243() {}
1531 
f244()1532         default void f244() {}
1533 
f245()1534         default void f245() {}
1535 
f246()1536         default void f246() {}
1537     }
1538 
1539     interface I13 {
f247()1540         default void f247() {}
1541 
f248()1542         default void f248() {}
1543 
f249()1544         default void f249() {}
1545 
f250()1546         default void f250() {}
1547 
f251()1548         default void f251() {}
1549 
f252()1550         default void f252() {}
1551 
f253()1552         default void f253() {}
1553 
f254()1554         default void f254() {}
1555 
f255()1556         default void f255() {}
1557 
f256()1558         default void f256() {}
1559 
f257()1560         default void f257() {}
1561 
f258()1562         default void f258() {}
1563 
f259()1564         default void f259() {}
1565 
f260()1566         default void f260() {}
1567 
f261()1568         default void f261() {}
1569 
f262()1570         default void f262() {}
1571 
f263()1572         default void f263() {}
1573 
f264()1574         default void f264() {}
1575 
f265()1576         default void f265() {}
1577     }
1578 
1579     interface I14 {
f266()1580         default void f266() {}
1581 
f267()1582         default void f267() {}
1583 
f268()1584         default void f268() {}
1585 
f269()1586         default void f269() {}
1587 
f270()1588         default void f270() {}
1589 
f271()1590         default void f271() {}
1591 
f272()1592         default void f272() {}
1593 
f273()1594         default void f273() {}
1595 
f274()1596         default void f274() {}
1597 
f275()1598         default void f275() {}
1599 
f276()1600         default void f276() {}
1601 
f277()1602         default void f277() {}
1603 
f278()1604         default void f278() {}
1605 
f279()1606         default void f279() {}
1607 
f280()1608         default void f280() {}
1609 
f281()1610         default void f281() {}
1611 
f282()1612         default void f282() {}
1613 
f283()1614         default void f283() {}
1615 
f284()1616         default void f284() {}
1617     }
1618 
1619     interface I15 {
f285()1620         default void f285() {}
1621 
f286()1622         default void f286() {}
1623 
f287()1624         default void f287() {}
1625 
f288()1626         default void f288() {}
1627 
f289()1628         default void f289() {}
1629 
f290()1630         default void f290() {}
1631 
f291()1632         default void f291() {}
1633 
f292()1634         default void f292() {}
1635 
f293()1636         default void f293() {}
1637 
f294()1638         default void f294() {}
1639 
f295()1640         default void f295() {}
1641 
f296()1642         default void f296() {}
1643 
f297()1644         default void f297() {}
1645 
f298()1646         default void f298() {}
1647 
f299()1648         default void f299() {}
1649 
f300()1650         default void f300() {}
1651 
f301()1652         default void f301() {}
1653 
f302()1654         default void f302() {}
1655 
f303()1656         default void f303() {}
1657     }
1658 
1659     interface I16 {
f304()1660         default void f304() {}
1661 
f305()1662         default void f305() {}
1663 
f306()1664         default void f306() {}
1665 
f307()1666         default void f307() {}
1667 
f308()1668         default void f308() {}
1669 
f309()1670         default void f309() {}
1671 
f310()1672         default void f310() {}
1673 
f311()1674         default void f311() {}
1675 
f312()1676         default void f312() {}
1677 
f313()1678         default void f313() {}
1679 
f314()1680         default void f314() {}
1681 
f315()1682         default void f315() {}
1683 
f316()1684         default void f316() {}
1685 
f317()1686         default void f317() {}
1687 
f318()1688         default void f318() {}
1689 
f319()1690         default void f319() {}
1691 
f320()1692         default void f320() {}
1693 
f321()1694         default void f321() {}
1695 
f322()1696         default void f322() {}
1697     }
1698 
1699     interface I17 {
f323()1700         default void f323() {}
1701 
f324()1702         default void f324() {}
1703 
f325()1704         default void f325() {}
1705 
f326()1706         default void f326() {}
1707 
f327()1708         default void f327() {}
1709 
f328()1710         default void f328() {}
1711 
f329()1712         default void f329() {}
1713 
f330()1714         default void f330() {}
1715 
f331()1716         default void f331() {}
1717 
f332()1718         default void f332() {}
1719 
f333()1720         default void f333() {}
1721 
f334()1722         default void f334() {}
1723 
f335()1724         default void f335() {}
1725 
f336()1726         default void f336() {}
1727 
f337()1728         default void f337() {}
1729 
f338()1730         default void f338() {}
1731 
f339()1732         default void f339() {}
1733 
f340()1734         default void f340() {}
1735 
f341()1736         default void f341() {}
1737     }
1738 
1739     interface I18 {
f342()1740         default void f342() {}
1741 
f343()1742         default void f343() {}
1743 
f344()1744         default void f344() {}
1745 
f345()1746         default void f345() {}
1747 
f346()1748         default void f346() {}
1749 
f347()1750         default void f347() {}
1751 
f348()1752         default void f348() {}
1753 
f349()1754         default void f349() {}
1755 
f350()1756         default void f350() {}
1757 
f351()1758         default void f351() {}
1759 
f352()1760         default void f352() {}
1761 
f353()1762         default void f353() {}
1763 
f354()1764         default void f354() {}
1765 
f355()1766         default void f355() {}
1767 
f356()1768         default void f356() {}
1769 
f357()1770         default void f357() {}
1771 
f358()1772         default void f358() {}
1773 
f359()1774         default void f359() {}
1775 
f360()1776         default void f360() {}
1777     }
1778 
1779     interface I19 {
f361()1780         default void f361() {}
1781 
f362()1782         default void f362() {}
1783 
f363()1784         default void f363() {}
1785 
f364()1786         default void f364() {}
1787 
f365()1788         default void f365() {}
1789 
f366()1790         default void f366() {}
1791 
f367()1792         default void f367() {}
1793 
f368()1794         default void f368() {}
1795 
f369()1796         default void f369() {}
1797 
f370()1798         default void f370() {}
1799 
f371()1800         default void f371() {}
1801 
f372()1802         default void f372() {}
1803 
f373()1804         default void f373() {}
1805 
f374()1806         default void f374() {}
1807 
f375()1808         default void f375() {}
1809 
f376()1810         default void f376() {}
1811 
f377()1812         default void f377() {}
1813 
f378()1814         default void f378() {}
1815 
f379()1816         default void f379() {}
1817     }
1818 }
1819