first upload patch - 3 methods