<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def lookup_genome_alignment_index(index_fh, indexed_fh, out_fh=sys.stdout, key=None, verbose=False):
 """Load a GA index and its indexed file and extract one or more blocks. :param index_fh: the index file to load. Can be a filename or a stream-like object. :param indexed_fh: the file that the index was built for, :param key: A single key, iterable of keys, or None. This key will be used for lookup. If None, user is prompted to enter keys interactively. """

  # load the genome alignment as a JIT object
  bound_iter = functools.partial(genome_alignment_iterator,
                                 reference_species="hg19", index_friendly=True)
  hash_func = JustInTimeGenomeAlignmentBlock.build_hash
  idx = IndexedFile(record_iterator=bound_iter, record_hash_function=hash_func)
  idx.read_index(index_fh, indexed_fh)

  if key is None:
    while key is None or key.strip() != "":
      sys.stderr.write("[WAITING FOR KEY ENTRY ON STDIN; " +
                       "END WITH EMPTY LINE]\n")
      key = raw_input()
      # we know keys for genome alignments have tabs as delims, so..
      key = '\t'.join(key.split()).strip()
      if key != "":
        out_fh.write(str(idx[key]) + "\n")
      sys.stderr.write("\n")
  else:
    # we know keys for genome alignments have tabs as delims, so..
    key = '\t'.join(key.split())
    out_fh.write(str(idx[key]) + "\n")