to<Type> methods now virtual