提炼出基类
名字更通用一些，allow forbid
注释的位置
增加hack_paths参数