Added contract to ensure that source is valid before uploading