分离esf 代码

修改分离了esf 的代码。

@otakustay 应该是加个boxClass改动小些； comment加好了。