code: def __init__(self, feature_info: List[Dict], out_indices: Tuple[int]):
      prev_reduction = 1
      for i, fi in enumerate(feature_info):
          # sanity check the mandatory fields, there may be additional fields depending on the model
          assert "num_chs" in fi and fi["num_chs"] > 0
          assert "reduction" in fi and fi["reduction"] >= prev_reduction
          prev_reduction = fi["reduction"]
          assert "module" in fi
          fi.setdefault("index", i)
      self.out_indices = out_indices
      self.info = feature_info
  
imports: from collections import OrderedDict, defaultdict
  from copy import deepcopy
  from functools import partial
  from typing import Dict, List, Sequence, Tuple, Union
  import torch
  import torch.nn
  from torch.utils.checkpoint import checkpoint
  from timm.layers import Format
label_desc: Use image node_id 1 to create a new FeatureInfo object  with example: obj = FeatureInfo(feature_info, out_indices)