updates polymorphism