"""Behaviour of ReceiverVendorA in the IMS co-verification twin.

Thin on purpose: the logic lives in ims_common.py so the whole system can be
read in one place. Every timing number it obeys comes from the Cameo model via
ims.params.json, and the scenario knobs come from ims.scenario.json, so a
campaign sweeps without a rebuild.
"""

import ims_common

_impl = ims_common.make("ReceiverVendorA")


def on_step(step, time_ns, inputs):
    return _impl.step(step, time_ns, inputs)
