public api, only provide rule
update README