refactor SuperDict, create SyncSDict