class_docstr: tracker for rabit
code: def _get_neighbor(rank: int, n_workers: int) -> List[int]:
      rank = rank + 1
      ret = []
      if rank > 1:
          ret.append(rank // 2 - 1)
      if rank * 2 - 1 < n_workers:
          ret.append(rank * 2 - 1)
      if rank * 2 < n_workers:
          ret.append(rank * 2)
      return ret
  
imports: import argparse
  import logging
  import socket
  import struct
  import sys
  from threading import Thread
  from typing import Dict, List, Optional, Set, Tuple, Union
label_desc: Use image node_id 3 for calling the RabitTracker obj's underlying member method code with example usage: obj._get_neighbor(rank, n_workers) and returns: ret