添加checktree功能，只实现部分代码，由于checker设计不好。可能要重构