分离esf 代码

修改分离了esf 的代码。

@Justineo 怎么看