code: def compute_child(
      self,
      weak_child: "HistogramEncryptedValues",
      positions: List[Tuple[int, int, int, int, int, int, int, int]],
      size: int,
  ):
      data = self.evaluator.zeros(size * self.stride, self.dtype)
      for (
          target_weak_child_start,
          target_weak_child_end,
          target_strong_child_start,
          target_strong_child_end,
          parent_data_start,
          parent_data_end,
          weak_child_data_start,
          weak_child_data_end,
      ) in positions:
          s = (parent_data_end - parent_data_start) * self.stride
          self.evaluator.i_add(
              self.pk,
              data,
              weak_child.data,
              target_weak_child_start * self.stride,
              weak_child_data_start * self.stride,
              s,
          )
          self.evaluator.i_add(
              self.pk,
              data,
              self.data,
              target_strong_child_start * self.stride,
              parent_data_start * self.stride,
              s,
          )
          self.evaluator.i_sub(
              self.pk,
              data,
              weak_child.data,
              target_strong_child_start * self.stride,
              weak_child_data_start * self.stride,
              s,
          )
  
      return HistogramEncryptedValues(
          self.pk,
          self.evaluator,
          data,
          self.coder,
          self.dtype,
          self.size,
          self.stride,
      )
  
imports: import logging
  import typing
  from typing import List, Tuple
  import torch
  from ._encoded import HistogramEncodedValues
  from ._value import HistogramValues
  from ..indexer import Shuffler
label_desc: Use image node_id 11 for calling the HistogramEncryptedValues obj's underlying member method code with example usage: obj.compute_child(weak_child, positions, size) and returns: HistogramEncryptedValues