private void UpdateBottomFrets(Frets frets)
 {
     UpdateFrets(frets, false);
     try {
         Dispatcher.Invoke(() => {
             LabelBottomGreen.Foreground  = frets.Green ? Brushes.Green : Brushes.Black;
             LabelBottomRed.Foreground    = frets.Red ? Brushes.Green : Brushes.Black;
             LabelBottomYellow.Foreground = frets.Yellow ? Brushes.Green : Brushes.Black;
             LabelBottomBlue.Foreground   = frets.Blue ? Brushes.Green : Brushes.Black;
             LabelBottomOrange.Foreground = frets.Orange ? Brushes.Green : Brushes.Black;
         }, DispatcherPriority.Background);
     } catch (Exception ex) {
         Debug.WriteLine(ex.Message);
     }
 }
 void UpdateFrets(Frets frets, bool top = true)
 {
     if (top)
     {
         UpdateFret(FretColor.Green, frets.Green);
         UpdateFret(FretColor.Red, frets.Red);
         UpdateFret(FretColor.Yellow, frets.Yellow);
         UpdateFret(FretColor.Blue, frets.Blue);
         UpdateFret(FretColor.Orange, frets.Orange);
     }
     else
     {
         UpdateFret(FretColor.Green2, frets.Green);
         UpdateFret(FretColor.Red2, frets.Red);
         UpdateFret(FretColor.Yellow2, frets.Yellow);
         UpdateFret(FretColor.Blue2, frets.Blue);
         UpdateFret(FretColor.Orange2, frets.Orange);
     }
 }