refactor validate_signals