modify license and code optimize