Themes/MaterialDesignTheme.Clock.xaml

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:converters="clr-namespace:MaterialDesignThemes.Wpf.Converters"
                    xmlns:wpf="clr-namespace:MaterialDesignThemes.Wpf">
 
  <Style x:Key="MaterialDesignClockItemThumb" TargetType="{x:Type Thumb}">
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type Thumb}">
          <Ellipse Fill="{TemplateBinding Background}" />
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
 
  <Style x:Key="MaterialDesignCalendarMeridiemRadioButton" TargetType="{x:Type RadioButton}">
    <Setter Property="Background" Value="Transparent" />
    <Setter Property="FontSize" Value="14" />
    <Setter Property="FontWeight" Value="Medium" />
    <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Foreground}" />
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type RadioButton}">
          <Grid>
            <Ellipse Fill="{TemplateBinding Background}" />
            <ContentPresenter HorizontalAlignment="Center"
                              VerticalAlignment="Center"
                              Content="{TemplateBinding Content}" />
          </Grid>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
    <Style.Triggers>
      <Trigger Property="IsChecked" Value="True">
        <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
      </Trigger>
    </Style.Triggers>
  </Style>
 
  <Style x:Key="MaterialDesignCalendarMeridiemRadioButtonDefault" TargetType="{x:Type RadioButton}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
    <Setter Property="FontSize" Value="14" />
    <Setter Property="FontWeight" Value="Medium" />
    <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type RadioButton}">
          <Grid>
            <Border Background="{TemplateBinding Background}" Opacity=".12" />
            <ContentPresenter HorizontalAlignment="Center"
                              VerticalAlignment="Center"
                              Content="{TemplateBinding Content}" />
          </Grid>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
    <Style.Triggers>
      <Trigger Property="IsChecked" Value="True">
        <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
      </Trigger>
    </Style.Triggers>
  </Style>
 
  <Style x:Key="MaterialDesignCalendarMeridiemRadioButtonThemed" TargetType="{x:Type RadioButton}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
    <Setter Property="FontSize" Value="14" />
    <Setter Property="FontWeight" Value="Medium" />
    <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type RadioButton}">
          <Grid>
            <Border Background="{TemplateBinding Background}" />
            <ContentPresenter HorizontalAlignment="Center"
                              VerticalAlignment="Center"
                              Content="{TemplateBinding Content}" />
          </Grid>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
    <Style.Triggers>
      <Trigger Property="IsChecked" Value="True">
        <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
      </Trigger>
    </Style.Triggers>
  </Style>
 
  <Style x:Key="MaterialDesignClock" TargetType="{x:Type wpf:Clock}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Background}" />
    <Setter Property="BorderThickness" Value="1" />
    <Setter Property="ButtonRadiusInnerRatio" Value=".6" />
    <Setter Property="ButtonRadiusRatio" Value=".835" />
    <Setter Property="ButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="0" />
          <Setter Property="Height" Value="32" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity="23"
                         Style="{StaticResource MaterialDesignClockItemThumb}" />
                  <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                    VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                    Content="{TemplateBinding Content}"
                                    IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="32" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
              <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="FlowDirection" Value="LeftToRight" />
    <Setter Property="IsHeaderVisible" Value="True" />
    <Setter Property="LesserButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="1" />
          <Setter Property="Height" Value="12" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity=".52"
                         Style="{StaticResource MaterialDesignClockItemThumb}"
                         ToolTip="{TemplateBinding Content}" />
                  <Ellipse Width="6"
                           Height="6"
                           HorizontalAlignment="Center"
                           VerticalAlignment="Center"
                           Fill="{TemplateBinding Background}"
                           IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="12" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type wpf:Clock}">
          <Border Background="{TemplateBinding Background}"
                  BorderBrush="{TemplateBinding BorderBrush}"
                  BorderThickness="{TemplateBinding BorderThickness}"
                  CornerRadius="2">
            <VisualStateManager.VisualStateGroups>
              <VisualStateGroup x:Name="DisplayModeStates">
                <VisualStateGroup.Transitions>
                  <VisualTransition From="*" To="Hours">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Hours" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Minutes" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Hours" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Seconds" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                </VisualStateGroup.Transitions>
                <VisualState x:Name="Hours">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Minutes">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Seconds">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
              </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <Grid>
              <Grid.RowDefinitions>
                <RowDefinition Height="auto" />
                <RowDefinition Height="*" />
              </Grid.RowDefinitions>
              <Border Height="120"
                      Margin="0,0,0,12"
                      Background="{DynamicResource MaterialDesign.Brush.Primary}"
                      CornerRadius="2 2 0 0"
                      Visibility="{TemplateBinding IsHeaderVisible, Converter={x:Static converters:BooleanToVisibilityConverter.CollapsedInstance}}">
                <StackPanel x:Name="TimeReadoutStackPanel"
                            Margin="24"
                            HorizontalAlignment="Right"
                            VerticalAlignment="Center"
                            Orientation="Horizontal">
                  <StackPanel.Resources>
                    <Style x:Key="TimeTextBlock" TargetType="{x:Type TextBlock}">
                      <Setter Property="FontSize" Value="66" />
                      <Setter Property="FontWeight" Value="Normal" />
                      <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
                    </Style>
                  </StackPanel.Resources>
                  <Grid x:Name="PART_HourReadOut">
                    <TextBlock x:Name="PART_HourReadOutText" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:%h}}">
                      <TextBlock.Style>
                        <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                          <Setter Property="Opacity" Value=".56" />
                          <Style.Triggers>
                            <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                              <Setter Property="Opacity" Value="1" />
                            </DataTrigger>
                          </Style.Triggers>
                        </Style>
                      </TextBlock.Style>
                    </TextBlock>
                  </Grid>
 
                  <TextBlock Margin="-16,0,-16,0"
                             Style="{StaticResource TimeTextBlock}"
                             Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                  <Grid x:Name="PART_MinuteReadOut">
                    <TextBlock x:Name="PART_MinuteReadOutText" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:mm}}">
                      <TextBlock.Style>
                        <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                          <Setter Property="Opacity" Value=".56" />
                          <Style.Triggers>
                            <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                              <Setter Property="Opacity" Value="1" />
                            </DataTrigger>
                          </Style.Triggers>
                        </Style>
                      </TextBlock.Style>
                    </TextBlock>
                  </Grid>
 
                  <TextBlock x:Name="PART_SecondColonPrefix"
                             Margin="-16,0,-16,0"
                             Style="{StaticResource TimeTextBlock}"
                             Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                  <Grid x:Name="PART_SecondReadOut">
                    <TextBlock x:Name="PART_SecondReadOutText" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:ss}}">
                      <TextBlock.Style>
                        <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                          <Setter Property="Opacity" Value=".56" />
                          <Style.Triggers>
                            <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                              <Setter Property="Opacity" Value="1" />
                            </DataTrigger>
                          </Style.Triggers>
                        </Style>
                      </TextBlock.Style>
                    </TextBlock>
                  </Grid>
 
                  <TextBlock x:Name="AmPmReadout"
                             Margin="2,0,0,8"
                             VerticalAlignment="Bottom"
                             FontSize="20"
                             Foreground="{DynamicResource MaterialDesign.Brush.Primary.Foreground}"
                             Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:tt}}" />
                </StackPanel>
              </Border>
              <Grid Grid.Row="1"
                    Margin="24"
                    VerticalAlignment="Center">
                <Grid.RowDefinitions>
                  <RowDefinition Height="*" />
                  <RowDefinition Height="auto" />
                </Grid.RowDefinitions>
                <Ellipse x:Name="BackgroundEllipse"
                         Width="230"
                         Height="230"
                         Fill="{DynamicResource MaterialDesign.Brush.Primary.Light}"
                         Opacity=".23" />
                <Canvas x:Name="PART_HoursCanvas"
                        Width="230"
                        Height="230"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="HourLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.HoursInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="HoursScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_MinutesCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="MinuteLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.MinutesInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="MinutesScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_SecondsCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="SecondLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.SecondsInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="SecondsScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
 
                <UniformGrid Grid.Row="1" Rows="1">
                  <RadioButton x:Name="AMRadioButton"
                               Width="47.333"
                               Height="47.333"
                               Margin="0,0,30,0"
                               HorizontalAlignment="Center"
                               VerticalAlignment="Bottom"
                               Content="AM"
                               IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem, Converter={x:Static converters:NotConverter.Instance}}"
                               Style="{StaticResource MaterialDesignCalendarMeridiemRadioButton}" />
                  <RadioButton x:Name="PMRadioButton"
                               Width="47.333"
                               Height="47.333"
                               Margin="30,0,0,0"
                               HorizontalAlignment="Center"
                               VerticalAlignment="Bottom"
                               Content="PM"
                               IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem}"
                               Style="{StaticResource MaterialDesignCalendarMeridiemRadioButton}" />
                </UniformGrid>
              </Grid>
            </Grid>
          </Border>
          <ControlTemplate.Triggers>
            <Trigger Property="Is24Hours" Value="True">
              <Setter TargetName="AMRadioButton" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="AmPmReadout" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_HourReadOutText" Property="Text" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:HH}}" />
              <Setter TargetName="PMRadioButton" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsPostMeridiem" Value="False" />
                <Condition Property="IsMidnightHour" Value="False" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsMiddayHour" Value="True" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.None}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.Cycle}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToMinutesOnly}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToSeconds}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Visible" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Visible" />
            </Trigger>
          </ControlTemplate.Triggers>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
 
 
  <Style x:Key="MaterialDesignClockVertical" TargetType="{x:Type wpf:Clock}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Background}" />
    <Setter Property="BorderThickness" Value="1" />
    <Setter Property="ButtonRadiusInnerRatio" Value=".6" />
    <Setter Property="ButtonRadiusRatio" Value=".835" />
    <Setter Property="ButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="0" />
          <Setter Property="Height" Value="32" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity="23"
                         Style="{StaticResource MaterialDesignClockItemThumb}" />
                  <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                    VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                    Content="{TemplateBinding Content}"
                                    IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="32" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
              <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="CornerRadius" Value="8" />
    <Setter Property="FlowDirection" Value="LeftToRight" />
    <Setter Property="IsHeaderVisible" Value="True" />
    <Setter Property="LesserButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="1" />
          <Setter Property="Height" Value="12" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity=".52"
                         Style="{StaticResource MaterialDesignClockItemThumb}"
                         ToolTip="{TemplateBinding Content}" />
                  <Ellipse Width="6"
                           Height="6"
                           HorizontalAlignment="Center"
                           VerticalAlignment="Center"
                           Fill="{TemplateBinding Background}"
                           IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="12" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type wpf:Clock}">
          <Border Background="{TemplateBinding Background}"
                  BorderBrush="{TemplateBinding BorderBrush}"
                  BorderThickness="{TemplateBinding BorderThickness}"
                  CornerRadius="2">
            <VisualStateManager.VisualStateGroups>
              <VisualStateGroup x:Name="DisplayModeStates">
                <VisualStateGroup.Transitions>
                  <VisualTransition From="*" To="Hours">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Hours" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Minutes" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Hours" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Seconds" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                </VisualStateGroup.Transitions>
                <VisualState x:Name="Hours">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Minutes">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Seconds">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
              </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <Grid Margin="24">
              <Grid.RowDefinitions>
                <RowDefinition Height="auto" />
                <RowDefinition Height="*" />
              </Grid.RowDefinitions>
 
              <!--#region Time Display-->
 
              <Border Margin="0,0,0,36"
                      HorizontalAlignment="Center"
                      Visibility="{TemplateBinding IsHeaderVisible, Converter={x:Static converters:BooleanToVisibilityConverter.CollapsedInstance}}">
                <StackPanel Orientation="Horizontal">
                  <StackPanel x:Name="TimeReadoutStackPanel"
                              HorizontalAlignment="Right"
                              VerticalAlignment="Center"
                              Orientation="Horizontal">
                    <StackPanel.Resources>
                      <Style x:Key="TimeTextBlock" TargetType="{x:Type TextBlock}">
                        <Setter Property="FontSize" Value="48" />
                        <Setter Property="FontWeight" Value="Normal" />
                        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Foreground}" />
                      </Style>
                    </StackPanel.Resources>
 
                    <Grid x:Name="PART_HourReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_HourReadOutBorder"
                              CornerRadius="{TemplateBinding CornerRadius}"
                              Opacity=".12">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_HourReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:%h}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_MinuteReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_MinuteReadOutBorder"
                              CornerRadius="{TemplateBinding CornerRadius}"
                              Opacity=".12">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_MinuteReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:mm}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock x:Name="PART_SecondColonPrefix"
                               Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_SecondReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_SecondReadOutBorder"
                              CornerRadius="{TemplateBinding CornerRadius}"
                              Opacity=".12">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_SecondReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:ss}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
                  </StackPanel>
                  <Border x:Name="AmPmBorder"
                          Height="80"
                          Margin="12,0,0,0"
                          VerticalAlignment="Center"
                          CornerRadius="{TemplateBinding CornerRadius}">
                    <StackPanel>
                      <StackPanel.Clip>
                        <MultiBinding Converter="{x:Static converters:BorderClipConverter.Instance}">
                          <Binding ElementName="AmPmBorder" Path="ActualWidth" />
                          <Binding ElementName="AmPmBorder" Path="ActualHeight" />
                          <Binding ElementName="AmPmBorder" Path="CornerRadius" />
                          <Binding ElementName="AmPmBorder" Path="BorderThickness" />
                        </MultiBinding>
                      </StackPanel.Clip>
                      <RadioButton x:Name="AMRadioButton"
                                   Width="52"
                                   Height="40"
                                   Content="AM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem, Converter={x:Static converters:NotConverter.Instance}}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonDefault}" />
                      <RadioButton x:Name="PMRadioButton"
                                   Width="52"
                                   Height="40"
                                   Content="PM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonDefault}" />
                    </StackPanel>
                  </Border>
 
                </StackPanel>
 
              </Border>
 
              <!--#endregion-->
 
              <!--#region Clock circle-->
 
              <Grid Grid.Row="1" VerticalAlignment="Top">
                <Ellipse x:Name="BackgroundEllipse"
                         Width="230"
                         Height="230"
                         Fill="{DynamicResource MaterialDesign.Brush.ForegroundLight}"
                         Opacity=".12" />
                <Canvas x:Name="PART_HoursCanvas"
                        Width="230"
                        Height="230"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="HourLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.HoursInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="HoursScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_MinutesCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="MinuteLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.MinutesInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="MinutesScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_SecondsCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="SecondLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.SecondsInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="SecondsScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
              </Grid>
 
              <!--#endregion-->
 
            </Grid>
          </Border>
          <ControlTemplate.Triggers>
            <Trigger Property="Is24Hours" Value="True">
              <Setter TargetName="AmPmBorder" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_HourReadOutText" Property="Text" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:HH}}" />
            </Trigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsPostMeridiem" Value="False" />
                <Condition Property="IsMidnightHour" Value="False" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsMiddayHour" Value="True" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.None}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.Cycle}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToMinutesOnly}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToSeconds}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Visible" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Visible" />
            </Trigger>
          </ControlTemplate.Triggers>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
 
  <Style x:Key="MaterialDesignClockVerticalThemed" TargetType="{x:Type wpf:Clock}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Dark}" />
    <Setter Property="BorderThickness" Value="1" />
    <Setter Property="ButtonRadiusInnerRatio" Value=".6" />
    <Setter Property="ButtonRadiusRatio" Value=".835" />
    <Setter Property="ButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="0" />
          <Setter Property="Height" Value="32" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity="23"
                         Style="{StaticResource MaterialDesignClockItemThumb}" />
                  <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                    VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                    Content="{TemplateBinding Content}"
                                    IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="32" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
              <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="CornerRadius" Value="8" />
    <Setter Property="FlowDirection" Value="LeftToRight" />
    <Setter Property="IsHeaderVisible" Value="True" />
    <Setter Property="LesserButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="1" />
          <Setter Property="Height" Value="12" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity=".52"
                         Style="{StaticResource MaterialDesignClockItemThumb}"
                         ToolTip="{TemplateBinding Content}" />
                  <Ellipse Width="6"
                           Height="6"
                           HorizontalAlignment="Center"
                           VerticalAlignment="Center"
                           Fill="{TemplateBinding Background}"
                           IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="12" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type wpf:Clock}">
          <Border Background="{TemplateBinding Background}"
                  BorderBrush="{TemplateBinding BorderBrush}"
                  BorderThickness="{TemplateBinding BorderThickness}"
                  CornerRadius="2">
            <VisualStateManager.VisualStateGroups>
              <VisualStateGroup x:Name="DisplayModeStates">
                <VisualStateGroup.Transitions>
                  <VisualTransition From="*" To="Hours">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Hours" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Minutes" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Hours" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Seconds" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                </VisualStateGroup.Transitions>
                <VisualState x:Name="Hours">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Minutes">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Seconds">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
              </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <Grid Margin="24">
              <Grid.RowDefinitions>
                <RowDefinition Height="auto" />
                <RowDefinition Height="*" />
              </Grid.RowDefinitions>
 
              <!--#region Time Display-->
 
              <Border Margin="0,0,0,36"
                      HorizontalAlignment="Center"
                      Visibility="{TemplateBinding IsHeaderVisible, Converter={x:Static converters:BooleanToVisibilityConverter.CollapsedInstance}}">
                <StackPanel Orientation="Horizontal">
                  <StackPanel x:Name="TimeReadoutStackPanel"
                              HorizontalAlignment="Right"
                              VerticalAlignment="Center"
                              Orientation="Horizontal">
                    <StackPanel.Resources>
                      <Style x:Key="TimeTextBlock" TargetType="{x:Type TextBlock}">
                        <Setter Property="FontSize" Value="48" />
                        <Setter Property="FontWeight" Value="Normal" />
                        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
                      </Style>
                    </StackPanel.Resources>
 
                    <Grid x:Name="PART_HourReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_HourReadOutBorder" CornerRadius="{TemplateBinding CornerRadius}">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_HourReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:%h}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Primary.Dark.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_MinuteReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_MinuteReadOutBorder" CornerRadius="{TemplateBinding CornerRadius}">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_MinuteReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:mm}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock x:Name="PART_SecondColonPrefix"
                               Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Primary.Dark.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_SecondReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_SecondReadOutBorder" CornerRadius="{TemplateBinding CornerRadius}">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_SecondReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:ss}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
                  </StackPanel>
                  <Border x:Name="AmPmBorder"
                          Height="80"
                          Margin="12,0,0,0"
                          VerticalAlignment="Center"
                          CornerRadius="{TemplateBinding CornerRadius}">
                    <StackPanel>
                      <StackPanel.Clip>
                        <MultiBinding Converter="{x:Static converters:BorderClipConverter.Instance}">
                          <Binding ElementName="AmPmBorder" Path="ActualWidth" />
                          <Binding ElementName="AmPmBorder" Path="ActualHeight" />
                          <Binding ElementName="AmPmBorder" Path="CornerRadius" />
                          <Binding ElementName="AmPmBorder" Path="BorderThickness" />
                        </MultiBinding>
                      </StackPanel.Clip>
                      <RadioButton x:Name="AMRadioButton"
                                   Width="52"
                                   Height="40"
                                   Content="AM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem, Converter={x:Static converters:NotConverter.Instance}}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonThemed}" />
                      <RadioButton x:Name="PMRadioButton"
                                   Width="52"
                                   Height="40"
                                   Content="PM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonThemed}" />
                    </StackPanel>
                  </Border>
 
                </StackPanel>
 
              </Border>
 
              <!--#endregion-->
 
              <!--#region Clock circle-->
 
              <Grid Grid.Row="1" VerticalAlignment="Top">
                <Ellipse x:Name="BackgroundEllipse"
                         Width="230"
                         Height="230"
                         Fill="{DynamicResource MaterialDesign.Brush.Primary}" />
                <Canvas x:Name="PART_HoursCanvas"
                        Width="230"
                        Height="230"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="HourLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Secondary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Secondary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.HoursInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="HoursScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_MinutesCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="MinuteLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Secondary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Secondary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.MinutesInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="MinutesScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_SecondsCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="SecondLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Secondary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Secondary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.SecondsInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="SecondsScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
              </Grid>
 
              <!--#endregion-->
 
            </Grid>
          </Border>
          <ControlTemplate.Triggers>
            <Trigger Property="Is24Hours" Value="True">
              <Setter TargetName="AmPmBorder" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_HourReadOutText" Property="Text" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:HH}}" />
            </Trigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsPostMeridiem" Value="False" />
                <Condition Property="IsMidnightHour" Value="False" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsMiddayHour" Value="True" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.None}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.Cycle}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToMinutesOnly}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToSeconds}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Visible" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Visible" />
            </Trigger>
          </ControlTemplate.Triggers>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
 
  <Style x:Key="MaterialDesignClockHorizontal" TargetType="{x:Type wpf:Clock}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Background}" />
    <Setter Property="BorderThickness" Value="1" />
    <Setter Property="ButtonRadiusInnerRatio" Value=".6" />
    <Setter Property="ButtonRadiusRatio" Value=".835" />
    <Setter Property="ButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="0" />
          <Setter Property="Height" Value="32" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity="23"
                         Style="{StaticResource MaterialDesignClockItemThumb}" />
                  <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                    VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                    Content="{TemplateBinding Content}"
                                    IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="32" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
              <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="CornerRadius" Value="8" />
    <Setter Property="FlowDirection" Value="LeftToRight" />
    <Setter Property="IsHeaderVisible" Value="True" />
    <Setter Property="LesserButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="1" />
          <Setter Property="Height" Value="12" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity=".52"
                         Style="{StaticResource MaterialDesignClockItemThumb}"
                         ToolTip="{TemplateBinding Content}" />
                  <Ellipse Width="6"
                           Height="6"
                           HorizontalAlignment="Center"
                           VerticalAlignment="Center"
                           Fill="{TemplateBinding Background}"
                           IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="12" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type wpf:Clock}">
          <Border Background="{TemplateBinding Background}"
                  BorderBrush="{TemplateBinding BorderBrush}"
                  BorderThickness="{TemplateBinding BorderThickness}"
                  CornerRadius="2">
            <VisualStateManager.VisualStateGroups>
              <VisualStateGroup x:Name="DisplayModeStates">
                <VisualStateGroup.Transitions>
                  <VisualTransition From="*" To="Hours">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Hours" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Minutes" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Hours" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Seconds" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                </VisualStateGroup.Transitions>
                <VisualState x:Name="Hours">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Minutes">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Seconds">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
              </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <Grid Margin="24" VerticalAlignment="Center">
              <Grid.ColumnDefinitions>
                <ColumnDefinition Width="auto" />
                <ColumnDefinition Width="*" />
              </Grid.ColumnDefinitions>
 
              <!--#region Time Display-->
 
              <Border Margin="0,0,52,0"
                      VerticalAlignment="Center"
                      Visibility="{TemplateBinding IsHeaderVisible, Converter={x:Static converters:BooleanToVisibilityConverter.CollapsedInstance}}">
                <StackPanel>
                  <StackPanel x:Name="TimeReadoutStackPanel"
                              HorizontalAlignment="Right"
                              VerticalAlignment="Center"
                              Orientation="Horizontal">
                    <StackPanel.Resources>
                      <Style x:Key="TimeTextBlock" TargetType="{x:Type TextBlock}">
                        <Setter Property="FontSize" Value="48" />
                        <Setter Property="FontWeight" Value="Normal" />
                        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Foreground}" />
                      </Style>
                    </StackPanel.Resources>
 
                    <Grid x:Name="PART_HourReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_HourReadOutBorder"
                              CornerRadius="{TemplateBinding CornerRadius}"
                              Opacity=".12">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_HourReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:%h}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_MinuteReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_MinuteReadOutBorder"
                              CornerRadius="{TemplateBinding CornerRadius}"
                              Opacity=".12">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_MinuteReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:mm}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock x:Name="PART_SecondColonPrefix"
                               Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_SecondReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_SecondReadOutBorder"
                              CornerRadius="{TemplateBinding CornerRadius}"
                              Opacity=".12">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.ForegroundLight}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_SecondReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:ss}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
                  </StackPanel>
                  <Border x:Name="AmPmBorder"
                          Margin="0,12,0,0"
                          HorizontalAlignment="Stretch"
                          CornerRadius="{TemplateBinding CornerRadius}">
                    <Grid>
                      <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="*" />
                      </Grid.ColumnDefinitions>
                      <Grid.Clip>
                        <MultiBinding Converter="{x:Static converters:BorderClipConverter.Instance}">
                          <Binding ElementName="AmPmBorder" Path="ActualWidth" />
                          <Binding ElementName="AmPmBorder" Path="ActualHeight" />
                          <Binding ElementName="AmPmBorder" Path="CornerRadius" />
                          <Binding ElementName="AmPmBorder" Path="BorderThickness" />
                        </MultiBinding>
                      </Grid.Clip>
                      <RadioButton x:Name="AMRadioButton"
                                   Height="40"
                                   Content="AM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem, Converter={x:Static converters:NotConverter.Instance}}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonDefault}" />
                      <RadioButton x:Name="PMRadioButton"
                                   Grid.Column="1"
                                   Height="40"
                                   Content="PM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonDefault}" />
                    </Grid>
                  </Border>
 
                </StackPanel>
 
              </Border>
 
              <!--#endregion-->
 
              <!--#region Clock circle-->
 
              <Grid Grid.Column="1" VerticalAlignment="Top">
                <Ellipse x:Name="BackgroundEllipse"
                         Width="230"
                         Height="230"
                         Fill="{DynamicResource MaterialDesign.Brush.ForegroundLight}"
                         Opacity=".12" />
                <Canvas x:Name="PART_HoursCanvas"
                        Width="230"
                        Height="230"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="HourLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.HoursInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="HoursScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_MinutesCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="MinuteLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.MinutesInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="MinutesScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_SecondsCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="SecondLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Primary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Primary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.SecondsInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="SecondsScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
              </Grid>
 
              <!--#endregion-->
 
            </Grid>
          </Border>
          <ControlTemplate.Triggers>
            <Trigger Property="Is24Hours" Value="True">
              <Setter TargetName="AmPmBorder" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_HourReadOutText" Property="Text" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:HH}}" />
            </Trigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsPostMeridiem" Value="False" />
                <Condition Property="IsMidnightHour" Value="False" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsMiddayHour" Value="True" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.None}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.Cycle}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToMinutesOnly}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToSeconds}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Visible" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Visible" />
            </Trigger>
          </ControlTemplate.Triggers>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
 
  <Style x:Key="MaterialDesignClockHorizontalThemed" TargetType="{x:Type wpf:Clock}">
    <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary.Dark}" />
    <Setter Property="BorderThickness" Value="1" />
    <Setter Property="ButtonRadiusInnerRatio" Value=".6" />
    <Setter Property="ButtonRadiusRatio" Value=".835" />
    <Setter Property="ButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="0" />
          <Setter Property="Height" Value="32" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity="23"
                         Style="{StaticResource MaterialDesignClockItemThumb}" />
                  <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                    VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                    Content="{TemplateBinding Content}"
                                    IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="32" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
              <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="CornerRadius" Value="8" />
    <Setter Property="FlowDirection" Value="LeftToRight" />
    <Setter Property="IsHeaderVisible" Value="True" />
    <Setter Property="LesserButtonStyle">
      <Setter.Value>
        <Style TargetType="{x:Type wpf:ClockItemButton}">
          <Setter Property="Background" Value="Transparent" />
          <Setter Property="Canvas.ZIndex" Value="1" />
          <Setter Property="Height" Value="12" />
          <Setter Property="HorizontalContentAlignment" Value="Center" />
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type wpf:ClockItemButton}">
                <Grid>
                  <Thumb x:Name="PART_Thumb"
                         Background="{TemplateBinding Background}"
                         Opacity=".52"
                         Style="{StaticResource MaterialDesignClockItemThumb}"
                         ToolTip="{TemplateBinding Content}" />
                  <Ellipse Width="6"
                           Height="6"
                           HorizontalAlignment="Center"
                           VerticalAlignment="Center"
                           Fill="{TemplateBinding Background}"
                           IsHitTestVisible="False" />
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
          <Setter Property="VerticalContentAlignment" Value="Center" />
          <Setter Property="Width" Value="12" />
          <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary.Light}" />
            </Trigger>
            <Trigger Property="IsChecked" Value="True">
              <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
            </Trigger>
          </Style.Triggers>
        </Style>
      </Setter.Value>
    </Setter>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type wpf:Clock}">
          <Border Background="{TemplateBinding Background}"
                  BorderBrush="{TemplateBinding BorderBrush}"
                  BorderThickness="{TemplateBinding BorderThickness}"
                  CornerRadius="2">
            <VisualStateManager.VisualStateGroups>
              <VisualStateGroup x:Name="DisplayModeStates">
                <VisualStateGroup.Transitions>
                  <VisualTransition From="*" To="Hours">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
                  <VisualTransition From="Hours" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Minutes" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Hours" To="Seconds">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="HoursScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1.2">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0.85" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                  <VisualTransition From="Seconds" To="Minutes">
                    <Storyboard>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseIn" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="SecondsScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value=".85">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                      </BooleanAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="Opacity">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="0" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleX">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                      <DoubleAnimationUsingKeyFrames Storyboard.TargetName="MinutesScaleTransform" Storyboard.TargetProperty="ScaleY">
                        <DiscreteDoubleKeyFrame KeyTime="0" Value="1.2" />
                        <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1">
                          <EasingDoubleKeyFrame.EasingFunction>
                            <SineEase EasingMode="EaseOut" />
                          </EasingDoubleKeyFrame.EasingFunction>
                        </EasingDoubleKeyFrame>
                      </DoubleAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualTransition>
 
                </VisualStateGroup.Transitions>
                <VisualState x:Name="Hours">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To=".85"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To=".85"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Minutes">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Seconds">
                  <Storyboard>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_HoursCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_HoursCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="HoursScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="PART_MinutesCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="0"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1.2"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="MinutesScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1.2"
                                     Duration="0" />
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_MinutesCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="False" />
                    </BooleanAnimationUsingKeyFrames>
                    <BooleanAnimationUsingKeyFrames Storyboard.TargetName="PART_SecondsCanvas" Storyboard.TargetProperty="IsHitTestVisible">
                      <DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
                    </BooleanAnimationUsingKeyFrames>
                    <DoubleAnimation Storyboard.TargetName="PART_SecondsCanvas"
                                     Storyboard.TargetProperty="Opacity"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleX"
                                     To="1"
                                     Duration="0" />
                    <DoubleAnimation Storyboard.TargetName="SecondsScaleTransform"
                                     Storyboard.TargetProperty="ScaleY"
                                     To="1"
                                     Duration="0" />
                  </Storyboard>
                </VisualState>
              </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <Grid Margin="24" VerticalAlignment="Center">
              <Grid.ColumnDefinitions>
                <ColumnDefinition Width="auto" />
                <ColumnDefinition Width="*" />
              </Grid.ColumnDefinitions>
 
              <!--#region Time Display-->
 
              <Border Margin="0,0,52,0"
                      VerticalAlignment="Center"
                      Visibility="{TemplateBinding IsHeaderVisible, Converter={x:Static converters:BooleanToVisibilityConverter.CollapsedInstance}}">
                <StackPanel>
                  <StackPanel x:Name="TimeReadoutStackPanel"
                              HorizontalAlignment="Right"
                              VerticalAlignment="Center"
                              Orientation="Horizontal">
                    <StackPanel.Resources>
                      <Style x:Key="TimeTextBlock" TargetType="{x:Type TextBlock}">
                        <Setter Property="FontSize" Value="48" />
                        <Setter Property="FontWeight" Value="Normal" />
                        <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Primary.Foreground}" />
                      </Style>
                    </StackPanel.Resources>
 
                    <Grid x:Name="PART_HourReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_HourReadOutBorder" CornerRadius="{TemplateBinding CornerRadius}">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_HourReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:%h}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Hours}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Primary.Dark.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_MinuteReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_MinuteReadOutBorder" CornerRadius="{TemplateBinding CornerRadius}">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_MinuteReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:mm}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Minutes}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
 
                    <TextBlock x:Name="PART_SecondColonPrefix"
                               Margin="-6,0,-6,0"
                               VerticalAlignment="Center"
                               Foreground="{DynamicResource MaterialDesign.Brush.Primary.Dark.Foreground}"
                               Style="{StaticResource TimeTextBlock}"
                               Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0: : }}" />
 
                    <Grid x:Name="PART_SecondReadOut"
                          Width="96"
                          Height="80">
                      <Border x:Name="PART_SecondReadOutBorder" CornerRadius="{TemplateBinding CornerRadius}">
                        <Border.Style>
                          <Style TargetType="Border">
                            <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Primary}" />
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Background" Value="{DynamicResource MaterialDesign.Brush.Secondary}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </Border.Style>
                      </Border>
                      <TextBlock x:Name="PART_SecondReadOutText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
                                 Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:ss}}">
                        <TextBlock.Style>
                          <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource TimeTextBlock}">
                            <Style.Triggers>
                              <DataTrigger Binding="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DisplayMode}" Value="{x:Static wpf:ClockDisplayMode.Seconds}">
                                <Setter Property="Foreground" Value="{DynamicResource MaterialDesign.Brush.Secondary.Foreground}" />
                              </DataTrigger>
                            </Style.Triggers>
                          </Style>
                        </TextBlock.Style>
                      </TextBlock>
                    </Grid>
                  </StackPanel>
                  <Border x:Name="AmPmBorder"
                          Margin="0,12,0,0"
                          HorizontalAlignment="Stretch"
                          CornerRadius="{TemplateBinding CornerRadius}">
                    <Grid>
                      <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="*" />
                      </Grid.ColumnDefinitions>
                      <Grid.Clip>
                        <MultiBinding Converter="{x:Static converters:BorderClipConverter.Instance}">
                          <Binding ElementName="AmPmBorder" Path="ActualWidth" />
                          <Binding ElementName="AmPmBorder" Path="ActualHeight" />
                          <Binding ElementName="AmPmBorder" Path="CornerRadius" />
                          <Binding ElementName="AmPmBorder" Path="BorderThickness" />
                        </MultiBinding>
                      </Grid.Clip>
                      <RadioButton x:Name="AMRadioButton"
                                   Height="40"
                                   Content="AM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem, Converter={x:Static converters:NotConverter.Instance}}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonThemed}" />
                      <RadioButton x:Name="PMRadioButton"
                                   Grid.Column="1"
                                   Height="40"
                                   Content="PM"
                                   IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsPostMeridiem}"
                                   Style="{StaticResource MaterialDesignCalendarMeridiemRadioButtonThemed}" />
                    </Grid>
                  </Border>
 
                </StackPanel>
 
              </Border>
 
              <!--#endregion-->
 
              <!--#region Clock circle-->
 
              <Grid Grid.Column="1" VerticalAlignment="Top">
                <Ellipse x:Name="BackgroundEllipse"
                         Width="230"
                         Height="230"
                         Fill="{DynamicResource MaterialDesign.Brush.Primary}" />
                <Canvas x:Name="PART_HoursCanvas"
                        Width="230"
                        Height="230"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="HourLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Secondary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Secondary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.HoursInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="HoursScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_MinutesCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="MinuteLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Secondary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Secondary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.MinutesInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="MinutesScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
                <Canvas x:Name="PART_SecondsCanvas"
                        Width="230"
                        Height="230"
                        IsHitTestVisible="False"
                        Opacity="0"
                        RenderTransformOrigin=".5,.5">
                  <Path x:Name="SecondLine"
                        Canvas.Left="113.625"
                        Canvas.Top="19.047"
                        Width="3"
                        Height="96.959"
                        Data="M2.25,95.515 C2.25,96.036356 1.8582492,96.459 1.375,96.459 C0.89175084,96.459 0.5,96.036356 0.5,95.515 C0.5,94.993643 0.89175084,94.571 1.375,94.571 C1.8582492,94.571 2.25,94.993643 2.25,95.515 z M1.375,95.469003 L1.375,0.50000001"
                        Fill="{DynamicResource MaterialDesign.Brush.Secondary}"
                        RenderTransformOrigin="0.5,0.985"
                        Stretch="Fill"
                        Stroke="{DynamicResource MaterialDesign.Brush.Secondary}">
                    <Path.RenderTransform>
                      <RotateTransform Angle="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Converter={x:Static converters:ClockLineConverter.SecondsInstance}}" />
                    </Path.RenderTransform>
                  </Path>
                  <Canvas.RenderTransform>
                    <ScaleTransform x:Name="SecondsScaleTransform" ScaleX="1" ScaleY="1" />
                  </Canvas.RenderTransform>
                </Canvas>
              </Grid>
 
              <!--#endregion-->
 
            </Grid>
          </Border>
          <ControlTemplate.Triggers>
            <Trigger Property="Is24Hours" Value="True">
              <Setter TargetName="AmPmBorder" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_HourReadOutText" Property="Text" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Time, Mode=OneWay, StringFormat={}{0:HH}}" />
            </Trigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsPostMeridiem" Value="False" />
                <Condition Property="IsMidnightHour" Value="False" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <MultiTrigger>
              <MultiTrigger.Conditions>
                <Condition Property="Is24Hours" Value="True" />
                <Condition Property="IsMiddayHour" Value="True" />
              </MultiTrigger.Conditions>
              <Setter TargetName="HourLine" Property="Canvas.Top" Value="40" />
              <Setter TargetName="HourLine" Property="Height" Value="76" />
            </MultiTrigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.None}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.Cycle}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToMinutesOnly}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Collapsed" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Collapsed" />
            </Trigger>
            <Trigger Property="DisplayAutomation" Value="{x:Static wpf:ClockDisplayAutomation.ToSeconds}">
              <Setter TargetName="PART_SecondColonPrefix" Property="Visibility" Value="Visible" />
              <Setter TargetName="PART_SecondReadOut" Property="Visibility" Value="Visible" />
            </Trigger>
          </ControlTemplate.Triggers>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
 
</ResourceDictionary>