public Result <bool> RemovePhone(Phone phoneToDelete)
        {
            var errors = new List <string>();

            if (phoneToDelete is null)
            {
                errors.Add(nameof(phoneToDelete));
            }
            if (Phones.All(phone => !phone.Number.Equals(phoneToDelete.Number, StringComparison.OrdinalIgnoreCase)))
            {
                errors.Add("Not exists");
            }

            if (errors.Any())
            {
                return(Result <bool> .Fail(errors));
            }

            PhoneInternal.Remove(phoneToDelete);
            return(Result <bool> .Success(true));
        }