I am upgrading code from Sitecore 8.2 to Sitecore 9.3.

In Sitecore 8.2 we have a code snippet:-

    public Contact GetCurrentContact()
        {
            if (Tracker.IsActive && Tracker.Current != null && Tracker.Current.Session != null)
            {
                return Tracker.Current.Session.Contact;
            }

            return null;
        }

        public Contact IdentifyContact(global::Sitecore.Security.Accounts.User user)
        {
            if (user == null)
                return null;

            string contactIdentifier = GetContactIdentifier(user);

            if (string.IsNullOrEmpty(contactIdentifier) || contactIdentifier.Contains("anonymous") || Tracker.Current == null || Tracker.Current.Session == null)
            {
                return null;
            }

            Tracker.Current.Contact.Identifiers.AuthenticationLevel = AuthenticationLevel.PasswordValidated;
            Tracker.Current.Session.Identify(contactIdentifier);

            return Tracker.Current.Contact;
        }

In this Sitecore 8.2 Contact object is coming from Sitecore.Analystics.Tracking but in Sitecore 9.3 do you need to convert Contact to Sitecore.XConnect.Contact?

     Contact contact = _contactProvider.GetCurrentContact();

    DocLanguageAndRegionPreferences docPreferences;

    _contactRepository.SetDocumentLanguageAndRegionPreference(contact, docPreferences);

I have another class using this contact to add item to facet and then communicating with Xdb in Sitecore 8.2

    public void SetDocumentLanguageAndRegionPreference(Contact contact, DocLanguageAndRegionPreferences docPreferences)
        {
            if (contact == null)
                return;

            IFacetData facet = contact.GetFacet<IFacetData>(FacetData.FacetName);
            
            if (docPreferences.Languages != null && docPreferences.Languages.Any())
            {
                foreach (var language in docPreferences.Languages)
                {
                    var docLanguage = facet.FacetCentralData.Preferences.DocumentLanguageFilters.Create();
                    docLanguage.Language = language;
                }
            }
        }

This is Sample code of that class.
Facet is working fine, just have some doubt:-
In this class also I am getting parameter contact in form on SItecore.Tracking.Analytics.Contact. How can I convert this contact to XConnect.Contact for Sitecore 9.3?