main controler and uploader