public static void OnHorizontalOffsetChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
        {
            ScrollViewerOffsetMediator viewerOffsetMediator = (ScrollViewerOffsetMediator)o;

            if (viewerOffsetMediator.ScrollViewer == null)
            {
                return;
            }
            viewerOffsetMediator.ScrollViewer.ScrollToHorizontalOffset((double)e.NewValue);
        }
        public static void OnVerticalOffsetChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
        {
            ScrollViewerOffsetMediator viewerOffsetMediator = (ScrollViewerOffsetMediator)o;

            if (viewerOffsetMediator.ScrollViewer == null)
            {
                return;
            }
            // ISSUE: explicit reference operation
            viewerOffsetMediator.ScrollViewer.ScrollToVerticalOffset((double)e.NewValue);
        }
        private static void OnScrollViewerChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
        {
            ScrollViewerOffsetMediator viewerOffsetMediator = (ScrollViewerOffsetMediator)o;
            ScrollViewer scrollViewer = (ScrollViewer)e.NewValue;

            if (scrollViewer == null)
            {
                return;
            }
            scrollViewer.ScrollToVerticalOffset(viewerOffsetMediator.VerticalOffset);
        }
        private static void OnScrollViewerChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
        {
            ScrollViewerOffsetMediator viewerOffsetMediator = (ScrollViewerOffsetMediator)o;
            // ISSUE: explicit reference operation
            ScrollViewer newValue = (ScrollViewer)e.NewValue;

            if (newValue == null)
            {
                return;
            }
            newValue.ScrollToVerticalOffset(viewerOffsetMediator.VerticalOffset);
        }