code: def _update_policy_if_available(self) -> None:
      shared_policy_version_counter = (
          self.broadcasting_container.policy_version()
      )
      if self.policy_version_counter < shared_policy_version_counter:
          self.policy_version_counter = shared_policy_version_counter
          self.policy.load_state_dict(
              self.broadcasting_container.policy_state_dict()
          )
          self.aux_data = self.broadcasting_container.aux_data()
  
file_path: maze/maze/train/trainers/es/distributed/es_subproc_worker.py
imports: import multiprocessing
  import signal
  import cloudpickle
  import torch
  from maze.core.wrappers.log_stats_wrapper import LogStatsWrapper
  from maze.core.wrappers.time_limit_wrapper import TimeLimitWrapper
  from maze.train.parallelization.broadcasting_container import BroadcastingContainer
  from maze.train.trainers.es.distributed.es_rollout_wrapper import ESRolloutWorkerWrapper, ESAbortException
  from maze.train.trainers.es.es_shared_noise_table import SharedNoiseTable
label_desc: Use image node_id 3 for calling the ESSubprocWorker obj's underlying member method code with example usage: obj._update_policy_if_available() without return types