With Inheritence and Polymorphism