class_docstr: level infrastructure is created by executor, and then shared to strategies on the same level
docstr: this will make the calendar access easier when crossing multi-levels
docstr_tok: ["this","will","make","the","calendar","access","easier","when","crossing","multi-levels"]
code: def set_sub_level_infra(
      self, sub_level_infra: LevelInfrastructure
  ) -> None:
      """this will make the calendar access easier when crossing multi-levels"""
      self.reset_infra(sub_level_infra=sub_level_infra)
  
imports: from __future__ import annotations
  from abc import abstractmethod
  from typing import Any, Set, Tuple, TYPE_CHECKING, Union
  import numpy
  from qlib.utils.time import epsilon_change
  import warnings
  import pandas
  from ..data.data import Cal
label_desc: Use image node_id 3 for calling the LevelInfrastructure obj's underlying member method code with example usage: obj.set_sub_level_infra(sub_level_infra) without return types