code: def _build_bank_hier(bank, redis_pipe):
      '''
      Build the bank hierarchy from the root of the tree.
      If already exists, it won't rewrite.
      It's using the Redis pipeline,
      so there will be only one interaction with the remote server.
      '''
      bank_list = bank.split('/')
      parent_bank_path = bank_list[0]
      for bank_name in bank_list[1:]:
          prev_bank_redis_key = _get_bank_redis_key(parent_bank_path)
          redis_pipe.sadd(prev_bank_redis_key, bank_name)
          log.debug('Adding %s to %s', bank_name, prev_bank_redis_key)
          parent_bank_path = '{curr_path}/{bank_name}'.format(
              curr_path=parent_bank_path,
              bank_name=bank_name
          )  # this becomes the parent of the next
      return Truf _build_bank_hier(bank, redis_pipe):
      '''
      Build the bank hierarchy from the root of the tree.
      If already exists, it won't rewrite.
      It's using the Redis pipeline,
      so there will be only one interaction with the remote server.
      '''
      bank_list = bank.split('/')
      parent_bank_path = bank_list[0]
      for bank_name in bank_list[1:]:
          prev_bank_redis_key = _get_bank_redis_key(parent_bank_path)
          redis_pipe.sadd(prev_bank_redis_key, bank_name)
          log.debug('Adding %s to %s', bank_name, prev_bank_redis_key)
          parent_bank_path = '{curr_path}/{bank_name}'.format(
              curr_path=parent_bank_path,
              bank_name=bank_name
          )  # this becomes the parent of the next
      return True
docs: Build the bank hierarchy from the root of the tree.
      If already exists, it won't rewrite.
      It's using the Redis pipeline,
      so there will be only one interaction with the remote server.