extract state 方法