diff --git a/src/test/examples/multidex002/IntermediateClass.java b/src/test/examples/multidex002/IntermediateClass.java
new file mode 100644
index 0000000..776ea63
--- /dev/null
+++ b/src/test/examples/multidex002/IntermediateClass.java
@@ -0,0 +1,48 @@
+// Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+package multidex002;
+
+public class IntermediateClass {
+
+    public static int get() {
+        return new multidex002.manymethods.Big045().get45()
+                + new multidex002.manymethods.Big046().get46()
+                + new multidex002.manymethods.Big047().get47()
+                + new multidex002.manymethods.Big048().get48()
+                + new multidex002.manymethods.Big049().get49()
+                + new multidex002.manymethods.Big050().get50()
+                + new multidex002.manymethods.Big051().get51()
+                + new multidex002.manymethods.Big052().get52()
+                + new multidex002.manymethods.Big053().get53()
+                + new multidex002.manymethods.Big054().get54()
+                + new multidex002.manymethods.Big055().get55()
+                + new multidex002.manymethods.Big056().get56()
+                + new multidex002.manymethods.Big057().get57()
+                + new multidex002.manymethods.Big058().get58()
+                + new multidex002.manymethods.Big059().get59()
+                + new multidex002.manymethods.Big060().get60()
+                + new multidex002.manymethods.Big061().get61()
+                + new multidex002.manymethods.Big062().get62()
+                + new multidex002.manymethods.Big063().get63()
+                + new multidex002.manymethods.Big064().get64()
+                + new multidex002.manymethods.Big065().get65()
+                + new multidex002.manymethods.Big066().get66()
+                + new multidex002.manymethods.Big067().get67()
+                + new multidex002.manymethods.Big068().get68()
+                + new multidex002.manymethods.Big069().get69()
+                + new multidex002.manymethods.Big070().get70()
+                + new multidex002.manymethods.Big071().get71()
+                + new multidex002.manymethods.Big072().get72()
+                + new multidex002.manymethods.Big073().get73()
+                + new multidex002.manymethods.Big074().get74()
+                + new multidex002.manymethods.Big075().get75()
+                + new multidex002.manymethods.Big076().get76()
+                + new multidex002.manymethods.Big077().get77()
+                + new multidex002.manymethods.Big078().get78()
+                + new multidex002.manymethods.Big079().get79()
+                + new multidex002.manymethods.Big080().get80();
+    }
+
+}
