public override SyntaxNode VisitInvocationExpression(InvocationExpressionSyntax node)
            {
                var methodSymbol = semanticModel.GetSymbolInfo(node).Symbol as IMethodSymbol;
                var methodName   = methodSymbol?.Name;
                var methodType   = methodSymbol?.ReturnType.OriginalDefinition?.ToString();

                var acceptedArguments = new string[]
                {
                    "\"c#:LocalTime.UtcNow\"", "\"c#:LocalTime.Now\"",
                    "cs(\"LocalTime.UtcNow\")", "cs(\"LocalTime.Now\")"
                };

                if (methodName == "Default" && methodType == "MSharp.DateTimeProperty")
                {
                    if (node.ArgumentsCountShouldBe(1) &&
                        node.FirstArgumentShouldBeIn(acceptedArguments))
                    {
                        var lineSpan = node.GetFileLinePosSpan();

                        AddReport(new ChangesReport(node)
                        {
                            LineNumber = lineSpan.StartLinePosition.Line,
                            Column     = lineSpan.StartLinePosition.Character,
                            Message    = "use DefaultToNow instead.",
                            Generator  = nameof(LocalTimeRewriter)
                        });

                        return(SyntaxFactory.InvocationExpression(
                                   SyntaxFactory.MemberAccessExpression(
                                       SyntaxKind.SimpleMemberAccessExpression, node.GetLeftSideExpression(), SyntaxFactory.IdentifierName("DefaultToNow")),
                                   SyntaxFactory.ArgumentList()));
                    }
                }

                return(base.VisitInvocationExpression(node));
            }
            public override SyntaxNode VisitInvocationExpression(InvocationExpressionSyntax node)
            {
                var methodSymbol      = semanticModel.GetSymbolInfo(node).Symbol as IMethodSymbol;
                var methodName        = methodSymbol?.Name;
                var methodType        = methodSymbol?.ReturnType.OriginalDefinition?.ToString();
                var acceptedArguments = new string[]
                {
                    "\"c#:LocalTime.UtcNow\"", "\"c#:LocalTime.Now\"",
                    "cs(\"LocalTime.UtcNow\")", "cs(\"LocalTime.Now\")"
                };

                if (methodName == "Default" && methodType == "MSharp.DateTimeProperty")
                {
                    if (node.ArgumentsCountShouldBe(1) &&
                        node.FirstArgumentShouldBeIn(acceptedArguments))
                    {
                        return(SyntaxFactory.InvocationExpression(
                                   SyntaxFactory.MemberAccessExpression(
                                       SyntaxKind.SimpleMemberAccessExpression, node.GetLeftSideExpression(), SyntaxFactory.IdentifierName("DefaultToNow")),
                                   SyntaxFactory.ArgumentList()));
                    }
                }
                return(base.VisitInvocationExpression(node));
            }