working upload and submission