Polymorphic object update