code: def score_latent(zs, ys):
      model = HarmonicModel()
      with poutine.trace() as trace:
          with poutine.condition(
              data={"z_{}".format(t): z for t, z in enumerate(zs)}
          ):
              state = {}
              model.init(state)
              for y in ys[1:]:
                  model.step(state, y)
  
      return trace.trace.log_prob_sum()
  
imports: import pytest
  import torch
  import pyro
  import pyro.distributions
  import pyro.poutine
  from pyro.infer import SMCFilter
  from pyro.infer.smcfilter import _systematic_sample
  from tests.common import assert_close
label_desc: Use image node_id 4 for calling a global function with example usage: score_latent(zs, ys) and returns: trace