def __get_overall_data(self, x):
        """
        (recursive) Collect all "sensorGenus" and "sensorSpecies" fields, set data to self
        :param any x: Any data type
        :return none:
        """
        if isinstance(x, dict):
            if "sensorGenus" in x:
                if x["sensorGenus"] and x["sensorGenus"] not in self.lsts_tmp["genus"]:
                    self.lsts_tmp["genus"].append(x["sensorGenus"])
            if "sensorSpecies" in x:
                if x["sensorSpecies"] and x["sensorSpecies"] not in self.lsts_tmp["species"]:
                    self.lsts_tmp["species"].append(x["sensorSpecies"])
            if "archiveType" in x:
                if x["archiveType"] and x["archiveType"] not in self.lsts_tmp["archive"]:
                    self.lsts_tmp["archive"].append(x["archiveType"])
            if "QCnotes" in x:
                if x["QCnotes"] and x["QCnotes"] not in self.lsts_tmp["qc"]:
                    self.lsts_tmp["qc"].append(x["QCnotes"])

            for k, v in x.items():
                if isinstance(v, dict):
                    self.__get_overall_data(v)
                elif isinstance(v, list):
                    self.__get_overall_data(v)
        elif isinstance(x, list):
            for i in x:
                self.__get_overall_data(i)

        return x