OOP Homework 2 --- Due 11/14 before class Please email your solutions to Anupam Nandan at anupam.nandan@nyu.edu. Be sure to use "OOP HW1 Solution" as the subject line. Consider the following Java program: public class Base { public void m(Object o) { System.out.println("Base.m(Object)"); } public static void m(String s) { System.out.println("Base.m(String)"); } public void m(Class c) { System.out.println("Base.m(Class)"); } } public class Derived extends Base { public void m(Object o) { System.out.println("Derived.m(Object)"); } public static void m(String s) { System.out.println("Derived.m(String)"); } public static void main(String[] args) { Base b = new Derived(); b.m(new Object()); b.m(new Integer(5)); b.m("Hello"); b.m(b.getClass()); } } Assignment 1 (5 Points): What is the static type of b in Derived.main()? Assignment 2 (5 Points): What is the dynamic type of b in Derived.main()? Assignment 3 (20 Points): What are the correctly ordered entries in Derived's vtable for our translator? Please use "classname.methodname(typenames)" notation. Also, ignore the first entry, which is __isa.