<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_child(self, injection_site_fn, binding):
 """Creates a child injection context. A "child" injection context is a context for a binding used to inject something into the current binding's provided value. Args: injection_site_fn: the child function being injected into binding: a Binding Returns: a new _InjectionContext """

        child_scope_id = binding.scope_id
        new_binding_stack = self._binding_stack + [binding]
        if binding in self._binding_stack:
            raise errors.CyclicInjectionError(new_binding_stack)
        if not self._is_scope_usable_from_scope_fn(
                child_scope_id, self._scope_id):
            raise errors.BadDependencyScopeError(
                self.get_injection_site_desc(),
                self._scope_id, child_scope_id, binding.binding_key)
        return _InjectionContext(
            injection_site_fn, new_binding_stack, child_scope_id,
            self._is_scope_usable_from_scope_fn)