code: def is_analysis_compatible(using):
      
      python_analysis = collect_analysis(using)
      es_analysis = existing_analysis(using)
      if es_analysis == DOES_NOT_EXIST:
          return True
  
      # we want to ensure everything defined in Python land is exactly matched in ES land
      for section in python_analysis:
          # there is an analysis section (analysis, tokenizers, filters, etc) defined in Python that isn't in ES
          if section not in es_analysis:
              return False
  
          # for this section of analysis (analysis, tokenizer, filter, etc), get
          # all the items defined in that section, and make sure they exist, and
          # are equal in Python land
          subdict_python = python_analysis[section]
          subdict_es = es_analysis[section]
          for name in subdict_python:
              # this analyzer, filter, etc isn't defined in ES
              if name not in subdict_es:
                  return False
              # this analyzer, filter etc doesn't match what is in ES
              if subdict_python[name] != subdict_es[name]:
                  return False
  
      return True
docs: Returns True if the analysis defined in Python land and ES for the connection `using` are compatible