wtf
generic update