According to MIT license, add some modifications