Pomoc w instalacji TP-Link Archer T2UH V2

Tutaj można zadać pytanie, jeśli Linuksa widzi się pierwszy raz w życiu ;)
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 26 maja 2018, 02:40

Witam serdecznie.

Potrzebuję pomocy w instalacji bezprzewodowej karty sieciowej na PC. Na początek może podam informacje, które mogą okazać się pomocne.

Link do sprzętu - oficjalne sterowniki
https://www.tp-link.com/pl/download/Arc ... tml#Driver

Karta sieciowa: TP-Link Archer T2UH V2

Mój problem próbowałem rozwiązać przy pomocy:
https://askubuntu.com/questions/674116/ ... le_rich_qa
oraz
Installation Guide For Linux Driver dołączonych do sterowników na stronie TP-Link

Karta sieciowa działa poprawnie na systemie Windows7. Na Ubuntu brak dostępu do internetu.

Kod: Zaznacz cały

nmcli device

DEVICE  TYPE      STATE        CONNECTION 
enp2s0  ethernet  unavailable  --         
lo      loopback  unmanaged    -- 

Kod: Zaznacz cały

sudo lshw -C network

	*-network                 
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: enp2s0
       version: 03
       serial: 1c:6f:65:55:fc:91
       size: 10Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half firmware=rtl_nic/rtl8168d-2.fw latency=0 link=no 

multicast=yes port=MII speed=10Mbit/s
       resources: irq:24 ioport:de00(size=256) memory:fdbff000-fdbfffff memory:fdbf8000-fdbfbfff memory:fde00000-fde1ffff

Kod: Zaznacz cały

lsusb

Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 148f:761a Ralink Technology, Corp. << wg instrukcji TP-LINK to chyba ta karta
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 003: ID 062a:4101 Creative Labs Wireless Keyboard/Mouse
Bus 004 Device 002: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Kod: Zaznacz cały

sudo linux-headers-$(uname -r)

ii  linux-headers-4.15.0-20-generic 4.15.0-20.21   amd64  Linux kernel headers for version 4.15.0 on 64 bit x86 SMP

Kod: Zaznacz cały

Wersja Ubuntu: 18.04 LTS

Kod: Zaznacz cały

lsmod

Module                  Size  Used by
joydev                 24576  0
input_leds             16384  0
snd_hda_codec_realtek   102400  1
edac_mce_amd           28672  0
snd_hda_codec_generic    73728  1 snd_hda_codec_realtek
snd_hda_codec_hdmi     49152  1
snd_hda_intel          40960  10
kvm                   593920  0
snd_hda_codec         126976  4 snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_seq_midi           16384  0
snd_seq_midi_event     16384  1 snd_seq_midi
snd_hda_core           81920  5 snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_rawmidi            32768  1 snd_seq_midi
snd_hwdep              20480  1 snd_hda_codec
wmi_bmof               16384  0
serio_raw              16384  0
snd_seq                65536  2 snd_seq_midi_event,snd_seq_midi
irqbypass              16384  1 kvm
snd_pcm                98304  4 snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_hdmi
snd_seq_device         16384  3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer              32768  2 snd_seq,snd_pcm
k10temp                16384  0
shpchp                 36864  0
snd                    81920  31 

snd_hda_intel,snd_hwdep,snd_seq,snd_hda_codec,snd_timer,snd_rawmidi,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_seq_device,snd_hda_codec_realtek,snd_pcm
soundcore              16384  1 snd
mac_hid                16384  0
sch_fq_codel           20480  2
parport_pc             36864  1
ppdev                  20480  0
lp                     20480  0
parport                49152  3 lp,parport_pc,ppdev
ip_tables              28672  0
x_tables               40960  1 ip_tables
autofs4                40960  2
hid_generic            16384  0
usbhid                 49152  0
hid                   118784  2 hid_generic,usbhid
pata_acpi              16384  0
radeon               1470464  21
i2c_algo_bit           16384  1 radeon
ttm                   106496  1 radeon
drm_kms_helper        167936  1 radeon
pata_atiixp            16384  0
r8169                  86016  0
i2c_piix4              24576  0
syscopyarea            16384  1 drm_kms_helper
sysfillrect            16384  1 drm_kms_helper
mii                    16384  1 r8169
sysimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
floppy                 77824  0
drm                   401408  16 radeon,ttm,drm_kms_helper
ahci                   36864  5
libahci                32768  1 ahci
wmi                    24576  1 wmi_bmof
Będę wdzięczny za każdą okazaną pomoc.
Awatar użytkownika
Spass
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 128
Rejestracja: 19 paź 2006, 01:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: Xfce
Kontakt:

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: Spass » 26 maja 2018, 05:22

Cześć. Spóbuję pomóc. Bazowałem na tym sterowniku z GitHub- mt7610u-linksys-ae6000-wifi-fixes
. Dodałem patch naprawiający kompilację na nowszych jądrach (>= 4.15), czyli dokładnie ten.

Sterownik pobierz stąd (ikona pobierania jest w prawym górnym rogu) - https://drive.google.com/open?id=1XBH9C ... kdeqf4kw7I

Rozpakuj, wejdź w folder w terminalu i wykonaj po kolei:

Kod: Zaznacz cały

sudo apt-get install build-essential linux-headers-$(uname -r)
make clean
make
sudo make install
Następnie:

Kod: Zaznacz cały

sudo apt-get install dkms
sudo cp -R . /usr/src/mt7610u_sta-1.0
sudo dkms add mt7610u_sta/1.0
sudo dkms build mt7610u_sta/1.0
sudo dkms install mt7610u_sta/1.0
_____________________________________
"Bosy, ale dumny, wychodzę z Babilonu."
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 26 maja 2018, 11:33

Spass pisze:
26 maja 2018, 05:22
Cześć. Spóbuję pomóc.
I udało Ci się. :clap: Dziękuję.

Jedyną różnicę jaką musiałem wprowadzić w moim przypadku było zainstalowanie pakietu dkms poprzez

Kod: Zaznacz cały

dpkg -i
Gdyby ktoś jeszcze miał w przyszłości podobny problem zamieszczam jeszcze małą uwagę.

Aby poprawnie skompilować sterownik wymagany był pakiet build-essential. Na początku problem stanowiły zależności do instalacji pakietu i brak internetu na Ubuntu. Wymagane pakiety ściągnąłem wykorzystując Windows7 przy pomocy strony:
https://packages.ubuntu.com/pl/

Potrzebne zależności można sprawdzić używając:

Kod: Zaznacz cały

apt-cache depends [nazwa pakietu]
Ps. Czy przy aktualizacji kernela całą procedurę będzie trzeba powtarzać od początku?
Awatar użytkownika
Spass
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 128
Rejestracja: 19 paź 2006, 01:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: Xfce
Kontakt:

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: Spass » 26 maja 2018, 21:15

To fajnie, że pomogło. Fakt, założyłem nieco na wyrost, że na Linuksie masz dostęp do internetu z innego źródła (po kablu). Przy zmianie jądra nie powinno być problemów, po to właśnie były te polecenia korzystające z DKMS (Dynamic Kernel Module Support), ten moduł od karty sieciowej powinien dodawać się automatycznie za każdym razem.
_____________________________________
"Bosy, ale dumny, wychodzę z Babilonu."
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 26 maja 2018, 23:39

Jeszcze raz dziękuję za pomoc i wyjaśnienia. Z mojej strony temat uważam za zamknięty.

Pozdrawiam
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 27 maja 2018, 12:42

Spass pisze:
26 maja 2018, 21:15
Przy zmianie jądra nie powinno być problemów, po to właśnie były te polecenia korzystające z DKMS (Dynamic Kernel Module Support), ten moduł od karty sieciowej powinien dodawać się automatycznie za każdym razem.
Niestety muszę ponownie otworzyć wątek. Przy aktualizacji ubuntu do najnowszej wersji zaktualizowało mi również kernel. Po jego aktualizacji niestey Wifi ponownie nie działa więc obawiam się, że w przypadku tego jądra cały proces muszę przejść ponownie. Problem z internetem znika gdy przy starcie systemu w opcjach zaawansowanych wybiorę poprzedni kernel.

Kernel z działającym Wifi - linux-image-4.15.0-20-generic
Zaktualizowany kernel - linux-image-4.15.0-22-generic

Istnieje możliwość przejęcia ustawień Wifi z jednego kernela na drugi?
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 27 maja 2018, 23:16

dkms powinien się zająć automatycznym przebudowaniem sterownika na aktualny kernel.
Pokaż:

Kod: Zaznacz cały

dkms status
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 28 maja 2018, 08:31

Kod: Zaznacz cały

dkms status
mt7610u_sta, 1.0, 4.15.0-20-generic, x86_64: installed (WARNING! Diff between built and installed module!)
mt7610u_sta, 1.0, 4.15.0-22-generic, x86_64: installed
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 28 maja 2018, 20:02

Niby moduł się zbudował i zainstalował. Pokaż zawartość pliku /var/log/kern.log.1
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 29 maja 2018, 10:06

Ponieważ długość loga jest ogromna wkleiłem go na https://paste.gnome.org. Całość loga znajduje się pod adresem https://paste.gnome.org/pgr6r2l08. Podejrzewam, że Ciebie interesują głównie logi dotyczące sterownika więc wklejam wiersze, które udało mi się znaleźć na jego temat: https://paste.gnome.org/ptgeoxkjn. Dziękuję za poświęcony czas.
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 29 maja 2018, 22:11

Niestety nie ma tam logu z uruchomienia kernela linux-image-4.15.0-22-generic - uruchom system na tym kernelu i zapisz wynik polecenia dmesg, następnie wrzuć tutaj na forum (na ten serwis paste). Zobaczymy czym się różni od tego co działa.
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 29 maja 2018, 23:07

Oto wynik całego polecenia

Kod: Zaznacz cały

sudo dmesg
z kernela linux-image-4.15.0-22-generic: https://paste.gnome.org/prv74zhcr. Aby łatwiej było Ci analizować log tak jak poprzednio oddzielnie wklejam fragmenty, których wiersze dotyczą wspomnianego kernela: https://paste.gnome.org/pz4ngvewi
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 31 maja 2018, 15:19

Okazuje się, że problem jest z plikami Makefile, które nie są przystosowane do budowania przez dkms i w związku z tym moduł buduje się zawsze dla obecnie uruchomionej wersji kernela, zamiast dla wersji docelowej - i stąd widoczny jest błąd w logu:

Kod: Zaznacz cały

[   15.458714] mt7610u_sta: version magic '4.15.0-20-generic SMP mod_unload ' should be '4.15.0-22-generic SMP mod_unload '
Przygotowałem poprawkę, aby moduł budował się prawidłowo - teoretycznie powinna zadziałać, ale będziesz musiał ją przetestować.
Pobierz załącznik, rozpakuj, w terminalu przejdź do rozpakowanego katalogu i wykonaj te polecenia:

Kod: Zaznacz cały

# będąc w katalogu mt7610u-dkms-makefile-fix
sudo cp -r * /usr/src/mt7610u_sta-1.0/
sudo dkms remove mt7610u_sta/1.0 -k "4.15.0-22-generic/$(uname -p)"
sudo dkms build mt7610u_sta/1.0 -k "4.15.0-22-generic/$(uname -p)"
sudo dkms install mt7610u_sta/1.0 -k "4.15.0-22-generic/$(uname -p)"
Teoretycznie moduł powinien się zbudować na nowo dla kernela z końcówką 22 i tym razem mam nadzieję zadziała.
Załączniki
mt7610u-dkms-makefile-fix.tar.bz2
(6.69 KiB) Pobrany 24 razy
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 02 cze 2018, 02:31

Dzięki za wszelkie starania. Zrobiłem tak jak poradziłeś. Nie zauważyłem żadnych problemów przy wykonywaniu tych kroków jednak internet na tym kernelu wciąż nie działa. Trudno. Najważniejsze, że na Ubuntu mam już internet więc zautomatyzowanie tego procesu to już chęć wygody. Pozostanę przy obecnie działającym kernelu bądź całą procedurę spróbuję przejść od początku dla kernela linux-image-4.15.0-22-generic. Chciałbym tylko dla tego kernela pousuwać wszystkie poprawki jakie próbowaliśmy robić aby ponowna instalacja sterownika, który zadziałał przebiegła jak najsprawniej. Jestem ciekaw czy ręczna instalacja na nowo uruchomi wi-fi również na tym jądrze. Dziękuję Wam za pomoc.
Pozdrawiam
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 03 cze 2018, 11:15

dmesg dalej pokazuje te same błędy co wcześniej? (w szczególności - błąd "mt7610u_sta: version magic"?)
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 03 cze 2018, 11:46

Wynik polecenia dotyczący sterownika mt7610u_sta:

Kod: Zaznacz cały

sudo dmesg
[   17.892664] mt7610u_sta: loading out-of-tree module taints kernel.
[   17.893160] mt7610u_sta: module verification failed: signature and/or required key missing - tainting kernel
[   17.893187] mt7610u_sta: Unknown symbol cfg80211_inform_bss_frame_data (err 0)
[   17.893208] mt7610u_sta: Unknown symbol cfg80211_scan_done (err 0)
[   17.893226] mt7610u_sta: Unknown symbol regulatory_hint (err 0)
[   17.893238] mt7610u_sta: Unknown symbol cfg80211_disconnected (err 0)
[   17.893248] mt7610u_sta: Unknown symbol wiphy_new_nm (err 0)
[   17.893257] mt7610u_sta: Unknown symbol wiphy_register (err 0)
[   17.893281] mt7610u_sta: Unknown symbol wiphy_unregister (err 0)
[   17.893504] mt7610u_sta: Unknown symbol ieee80211_channel_to_frequency (err 0)
[   17.893516] mt7610u_sta: Unknown symbol ieee80211_frequency_to_channel (err 0)
[   17.893525] mt7610u_sta: Unknown symbol cfg80211_connect_done (err 0)
[   17.893529] mt7610u_sta: Unknown symbol wiphy_free (err 0)
Cały log znajduje się tu: https://paste.gnome.org/pbifdpt6d
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 03 cze 2018, 11:58

Albo ja coś popsułem w skryptach, albo nie masz nagłówków kernela - czyli pakietu linux-headers-4.15.0-22-generic
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 03 cze 2018, 13:35

Kod: Zaznacz cały

dpkg -l | grep linux-headers-4.15.0-22
ii  linux-headers-4.15.0-22                    4.15.0-22.24                        all          Header files related to Linux kernel version 4.15.0
ii  linux-headers-4.15.0-22-generic            4.15.0-22.24                        amd64        Linux kernel headers for version 4.15.0 on 64 bit x86 SMP
Wygląda na to, że mam.
Awatar użytkownika
mario_7
Administrator
Administrator
Posty: 7512
Rejestracja: 30 sie 2006, 13:11
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: mario_7 » 03 cze 2018, 21:47

No to chyba coś pomieszałem...
W pliku /usr/src/mt7610u_sta-1.0/dkms.conf zmień linijkę zaczynającą się od MAKE[0], aby wyglądała tak:

Kod: Zaznacz cały

MAKE[0]="make -j$(nproc) KERNELVERSION=$kernelver && make install"
Może teraz zadziała jak powinno?
Czytelnia - poczytaj, Google - poszukaj
ariellew
Sędziwy Jeż
Sędziwy Jeż
Posty: 43
Rejestracja: 24 sty 2011, 11:54
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Architektura: x86_64

Re: Pomoc w instalacji TP-Link Archer T2UH V2

Post autor: ariellew » 04 cze 2018, 08:07

Zrobiłem tak jak wskazałeś ale niestety wifi na jądrze linux-headers-4.15.0-22 wciąż nie działa. Myślisz, że ponowne wykonanie podanych przez Ciebie wcześniej kroków coś pomoże po ostatniej zmianie? Mam na myśli te wskazówki:
mario_7 pisze:
31 maja 2018, 15:19
Pobierz załącznik, rozpakuj, w terminalu przejdź do rozpakowanego katalogu i wykonaj te polecenia:

Kod: Zaznacz cały

# będąc w katalogu mt7610u-dkms-makefile-fix
sudo cp -r * /usr/src/mt7610u_sta-1.0/
sudo dkms remove mt7610u_sta/1.0 -k "4.15.0-22-generic/$(uname -p)"
sudo dkms build mt7610u_sta/1.0 -k "4.15.0-22-generic/$(uname -p)"
sudo dkms install mt7610u_sta/1.0 -k "4.15.0-22-generic/$(uname -p)"
Teoretycznie moduł powinien się zbudować na nowo dla kernela z końcówką 22 i tym razem mam nadzieję zadziała.
ODPOWIEDZ

Wróć do „Przedszkole Linuksa”