public void OnPropertyChanged(PropertyChangedEventArgs a)
            {
                if (!AutoJoinActive)
                {
                    return;
                }

                if (Entry.IsAutoJoinReady(AutoJoinAnyCar))
                {
                    Logging.Here();
                    AutoJoinActive = false;

                    if (AutoJoinAnyCar && !Entry.FixedCar)
                    {
                        var av = Entry.Cars?.FirstOrDefault(x => x.IsAvailable);
                        if (av != null)
                        {
                            Logging.Write($"Available car: {av.DisplayName} (IsAvailable={Entry.IsAvailable})");
                            Entry.SetSelectedCarEntry(av);
                            Entry.AvailableUpdate();
                            Logging.Write($"IsAvailable={Entry.IsAvailable}");
                        }
                    }

                    Entry.JoinCommand.Execute(null);
                    // Entry.JoinCommand.Execute(ServerEntry.ForceJoin);
                }
                else if (AutoJoinAnyCar)
                {
                    if (a.PropertyName == nameof(Entry.AutoJoinAnyCarAvailable) && !Entry.AutoJoinAnyCarAvailable)
                    {
                        AutoJoinActive = false;
                    }
                }
                else
                {
                    if (a.PropertyName == nameof(Entry.AutoJoinAvailable) && !Entry.AutoJoinAvailable)
                    {
                        AutoJoinActive = false;
                    }
                }
            }