upload data and functions