code: def get_sub_comp_info(source_info, comp):
          
          sub_comps = source_info.get('components', None)
          if sub_comps is None:
              return source_info.copy()
          moving = source_info.get('moving', False)
          selection_dependent = source_info.get('selection_dependent', False)
          if selection_dependent:
              key = comp.make_key('{ebin_name}_{evtype_name}')
          elif moving:
              key = "zmax%i" % comp.zmax
          ret_dict = source_info.copy()
          ret_dict.update(sub_comps[key])
          return ret_dict
docs: Build and return information about a sub-component for a particular selection