public function upload(UploadedFile $uploadedFile, $newFilename = null, $path = null)
    {
        $this->prepareTargetUploadPath($path);

        $this->getUploadedOriginalFileProperties($uploadedFile);

        $this->setNewFilename($newFilename);

        $this->saveOriginalFile($uploadedFile);

        $this->createThumbnails($uploadedFile);

        return $this->returnOutput();
    }