clearer code with Signals.