Tag: abstraction in c#