update,add a factory