// Compiler options: -r:../class/lib/net_4_x/Mono.Cecil.dll

using System;
using Mono.Cecil;

class Test
{
	public static string A
	{
		get { return ""; }
	}

	public string B
	{
		get { return ""; }
	}

	public static int Main ()
	{
		var assembly = AssemblyDefinition.ReadAssembly (typeof (Test).Assembly.Location);
		var t = assembly.MainModule.GetType ("Test");
		foreach (var p in t.Properties)
		{
			switch (p.Name) {
			case "A":
				if (!p.HasThis)
					break;
				
				return 1;
			case "B":
				if (p.HasThis)
					break;
				
				return 2;
			default:
				return 3;
			}
		}
		
		return 0;
	}
}