atom separation
atom supports thenable interface