All functions working for upload