What does this program print after the same handler is added twice and removed once?

from Event subscription and lifetime
C# 14 / .NET 10 intermediate 2 min

What does this program print after the same handler is added twice and removed once?

csharp
using System;

var signal = new Signal();
EventHandler handler = (_, _) => Console.WriteLine("called");

signal.Changed += handler;
signal.Changed += handler;
signal.Changed -= handler;
signal.Raise();

public sealed class Signal
{
    public event EventHandler? Changed;
    public void Raise() => Changed?.Invoke(this, EventArgs.Empty);
}
Open in playground
Report an error