conditional sync