refactor s.data