Make a guess:

	Q_OBJECT

protected:
	explicit AvatarDownloader(QObject *parent = nullptr) : QObject(parent) {}
	virtual ~AvatarDownloader() {}

public:
	void start();

public slots:
	virtual void run();

signals:
	void avatarDownloaded();

};

#endif // AVATAR_DOWNLOADER_H