<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_component_info(self, comp):
 """Return the information about sub-component specific to a particular data selection Parameters comp : `binning.Component` object Specifies the sub-component Returns `ModelComponentInfo` object """

        if self.components is None:
            raise ValueError(
                'Model component %s does not have sub-components' % self.sourcekey)
        if self.moving:
            comp_key = "zmax%i" % (comp.zmax)
        elif self.selection_dependent:
            comp_key = comp.make_key('{ebin_name}_{evtype_name}')
        else:
            raise ValueError(
                'Model component %s is not moving or selection dependent' % self.sourcekey)
        return self.components[comp_key]