add rule && bug fix