add synchornization