Add a supersized method to each of your geometric shape interfaces and classes that returns a new geometric shape, of the same type as the receiver, that is twice as large in each dimension as the receiver. for example, supersizing a cone with radius 10 and height 4 should return a new cone with radius 20 and height 8