1. fix a factory create bug
2. change the interface of updateHeader