new data set new function (S3) and assorted changes