protected virtual void WriteGenericInstanceMethod(GenericInstanceMethod genericMethod)
		{
			MethodReference method = genericMethod.ElementMethod;
			string methodName = GetMethodName(method);
			WriteReference(methodName, method);

			if (genericMethod.HasAnonymousArgument())
			{
				return;
			}

			WriteToken(GenericLeftBracket);
			Mono.Collections.Generic.Collection<TypeReference> arguments = genericMethod.GenericArguments;
			for (int i = 0; i < arguments.Count; i++)
			{
				if (i > 0)
				{
					WriteToken(",");
					WriteSpace();
				}
				WriteReferenceAndNamespaceIfInCollision(arguments[i]);
			}
			WriteToken(GenericRightBracket);
			return;
		}
        protected override void WriteGenericInstanceMethod(GenericInstanceMethod genericMethod)
        {
            MethodReference method = genericMethod.ElementMethod;

            string methodName = GetMethodName(method);

            if (HasRefOrOutParameter(method))
            {
                MethodDefinition methodDef = genericMethod.ElementMethod.Resolve();
                if (methodDef == null)
                {
                    WriteNotResolvedReference(methodName, genericMethod, RefOutResolvementError);
                }
                else
                {
                    WriteReference(methodName, methodDef);
                }
            }
            else
            {
                WriteReference(methodName, genericMethod);
            }

            if (genericMethod.HasAnonymousArgument())
            {
                return;
            }

            WriteToken(GenericLeftBracket);

            Mono.Collections.Generic.Collection<TypeReference> arguments = genericMethod.GenericArguments;
            for (int i = 0; i < arguments.Count; i++)
            {
                if (i > 0)
                {
                    WriteToken(",");
                    WriteSpace();
                }
                WriteReferenceAndNamespaceIfInCollision(arguments[i]);
            }
            WriteToken(GenericRightBracket);
            return;
        }