final upload