add s2w and diff