merging sync with 'save'
sync now accepts custom data