Smart cities survey: Technologies, application domains and challenges for the cities of the future. (June 2019)