分离esf 代码

修改分离了esf 的代码。

@otakustay 不是破坏性的。esui基本没有改动。