update M's work