def METHOD_NAME(file_name, crystal_symmetry):
  if (not os.path.isfile(file_name)):
    raise RuntimeError("File not found: %s" % file_name)
  try:
    return get_emma_model_from_pdb(
      file_name=file_name,
      crystal_symmetry=crystal_symmetry)
  except KeyboardInterrupt: raise
  except Exception:
    if (iotbx.pdb.is_pdb_file(file_name)): raise
  try:
    return get_emma_model_from_sdb(
      file_name=file_name,
      crystal_symmetry=crystal_symmetry)
  except MultipleEntriesError:
    raise
  except KeyboardInterrupt: raise
  except Exception:
    pass
  try:
    return get_emma_model_from_solve(
      file_name=file_name,
      crystal_symmetry=crystal_symmetry)
  except KeyboardInterrupt: raise
  except Exception:
    pass
  try:
    return get_emma_model_from_ins(file_name=file_name)
  except KeyboardInterrupt: raise
  except Exception:
    pass
  try:
    return get_emma_model_from_strudat(file_name=file_name)
  except MultipleEntriesError:
    raise
  except KeyboardInterrupt: raise
  except Exception:
    pass
  raise RuntimeError("Coordinate file %s: unknown format." % file_name)