internal static PropertyDeclarationSyntax ReplaceAbstractWithVirtual(PropertyDeclarationSyntax propertyDeclaration) { SyntaxTokenList modifiers = propertyDeclaration.Modifiers; int index = modifiers.IndexOf(SyntaxKind.AbstractKeyword); if (index != -1) { propertyDeclaration = propertyDeclaration.WithModifiers(modifiers.ReplaceAt(index, CSharpFactory.VirtualKeyword().WithTriviaFrom(modifiers[index]))); } return(propertyDeclaration); }