using System;

class Value<T>
{
	public static Value<T> Default = null;
}

class Test<T, U>
{
	public Value<T> Value {
		get { return null; }
	}

	public class B
	{
		public B (Value<U> arg)
		{
		}
		
		public static B Default = new B (Value<U>.Default);
	}
}

class C
{
	public static void Main ()
	{
		var v = Test<int, string>.B.Default;
	}
}