distributed CAS in golang