class C1 { } class C2 { } class C3 { } class C4 { } class C5 { } class C6 { } class C7 { } class C8 { } class M { static int dupl (int cnt, T unused) { if (cnt < 0) return 1; else return dupl (cnt - 1, new C1 ()) + dupl (cnt - 1, new C2 ()) + dupl (cnt - 1, new C3 ()) + dupl (cnt - 1, new C4 ()) + dupl (cnt - 1, new C5 ()) + dupl (cnt - 1, new C6 ()) + dupl (cnt - 1, new C7 ()) + dupl (cnt - 1, new C8 ()); } public static void Main () { string a = System.Environment.GetCommandLineArgs () [1]; System.Console.WriteLine (dupl (int.Parse (a), "foo")); } }