341.
What is the output:

public struct Africa
{
    public Africa(string name)
    {
        Console.WriteLine(name);
    }
}
public class Country : Africa
{
    public Country()
    {
        Console.WriteLine("Country");
    }
}
class Geography : Country
{
    static void Main()
    {
        Country southafrica = new Country();
    }
}

'Country': cannot derive from sealed type 'Africa'

Because it is the way structs are represented in .NET. They are value types and value types don't have a method table pointer allowing inheritance.