Finish through runtime polymorphism