增加chain预测方法, guess nice, 并重构一些代码.