fix some bug to complie success