code: def update_host(self, hostname, key_values, overwrite=True):
          
          default_empty_host = {
              'name': hostname,
              'hostvars': {},
          }
          host_info = self.hosts.get(hostname, default_empty_host)
          util.deepupdate(host_info, key_values, overwrite=overwrite)
          self.hosts[hostname] = host_info
docs: Update a hosts information. This is called by various collectors such
          as the ansible setup module output and the hosts parser to add
          informatio to a host. It does some deep inspection to make sure nested
          information can be updated.