First working version (upload only)