register and upload