improve esync