use Signaller interface