Update translations
This commit is contained in:
@@ -565,7 +565,7 @@ msgstr "Tambah semua trek dari sebuah direktori dan semua subdirektorinya"
|
||||
msgid "Add directory..."
|
||||
msgstr "Tambah direktori..."
|
||||
|
||||
#: core/mainwindow.cpp:2201
|
||||
#: core/mainwindow.cpp:2210
|
||||
msgid "Add file"
|
||||
msgstr "Tambah berkas"
|
||||
|
||||
@@ -581,7 +581,7 @@ msgstr "Tambah berkas ke transkoder"
|
||||
msgid "Add files to transcode"
|
||||
msgstr "Tambah berkas untuk ditranskode"
|
||||
|
||||
#: core/mainwindow.cpp:2227 transcoder/transcodedialog.cpp:424
|
||||
#: core/mainwindow.cpp:2236 transcoder/transcodedialog.cpp:424
|
||||
msgid "Add folder"
|
||||
msgstr "Tambah folder"
|
||||
|
||||
@@ -691,7 +691,7 @@ msgstr ""
|
||||
msgid "Add to albums"
|
||||
msgstr "Tambahkan ke album"
|
||||
|
||||
#: core/mainwindow.cpp:2003
|
||||
#: core/mainwindow.cpp:2012
|
||||
msgid "Add to another playlist"
|
||||
msgstr "Tambahkan ke daftar putar lainnya"
|
||||
|
||||
@@ -813,7 +813,7 @@ msgstr "Album dengan sampul"
|
||||
msgid "Albums without covers"
|
||||
msgstr "Album tanpa sampul"
|
||||
|
||||
#: core/mainwindow.cpp:218
|
||||
#: core/mainwindow.cpp:219
|
||||
msgid "All Files (*)"
|
||||
msgstr "Semua Berkas (*)"
|
||||
|
||||
@@ -1212,7 +1212,7 @@ msgstr "Ganti lagu yang diputar saat ini"
|
||||
msgid "Change the language"
|
||||
msgstr "Ubah bahasa"
|
||||
|
||||
#: core/mainwindow.cpp:803
|
||||
#: core/mainwindow.cpp:804
|
||||
msgid "Check for updates..."
|
||||
msgstr "Periksa pembaruan..."
|
||||
|
||||
@@ -1261,7 +1261,7 @@ msgstr ""
|
||||
msgid "Clear cover"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:2292 ../build/src/ui_mainwindow.h:637
|
||||
#: core/mainwindow.cpp:2301 ../build/src/ui_mainwindow.h:637
|
||||
msgid "Clear playlist"
|
||||
msgstr "Bersihkan daftar putar"
|
||||
|
||||
@@ -1306,7 +1306,7 @@ msgstr "Menutup jendela ini akan menghentikan pencarian sampul album."
|
||||
msgid "Club"
|
||||
msgstr "Klub"
|
||||
|
||||
#: core/mainwindow.cpp:368 ../build/src/ui_collectionsettingspage.h:589
|
||||
#: core/mainwindow.cpp:369 ../build/src/ui_collectionsettingspage.h:589
|
||||
#: ../build/src/ui_scrobblersettingspage.h:418
|
||||
msgid "Collection"
|
||||
msgstr "Pustakascan"
|
||||
@@ -1319,7 +1319,7 @@ msgstr ""
|
||||
msgid "Collection advanced grouping"
|
||||
msgstr "Pengelompokan pustaka lanjutan"
|
||||
|
||||
#: core/mainwindow.cpp:2865
|
||||
#: core/mainwindow.cpp:2874
|
||||
msgid "Collection rescan notice"
|
||||
msgstr "Pemberitahuan pemindaian ulang pustaka"
|
||||
|
||||
@@ -1376,7 +1376,7 @@ msgstr "Konfigurasi %1..."
|
||||
msgid "Configure buttons"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:680
|
||||
#: core/mainwindow.cpp:681
|
||||
msgid "Configure collection..."
|
||||
msgstr "Konfigurasi pustaka..."
|
||||
|
||||
@@ -1392,7 +1392,7 @@ msgstr "Konsol"
|
||||
msgid "Constant bitrate"
|
||||
msgstr "Lajubit konstan"
|
||||
|
||||
#: core/mainwindow.cpp:367 ../build/src/ui_contextsettingspage.h:363
|
||||
#: core/mainwindow.cpp:368 ../build/src/ui_contextsettingspage.h:363
|
||||
msgid "Context"
|
||||
msgstr "Konteks"
|
||||
|
||||
@@ -1413,7 +1413,7 @@ msgstr "Konversi semua musik"
|
||||
msgid "Convert any music that the device can't play"
|
||||
msgstr "Konversi semua musik yang tidak dapat diputar oleh perangkat."
|
||||
|
||||
#: core/mainwindow.cpp:749
|
||||
#: core/mainwindow.cpp:750
|
||||
msgid "Copy URL(s)..."
|
||||
msgstr ""
|
||||
|
||||
@@ -1421,7 +1421,7 @@ msgstr ""
|
||||
msgid "Copy album cover artwork"
|
||||
msgstr "Salin sampul album"
|
||||
|
||||
#: core/mainwindow.cpp:753 widgets/fileviewlist.cpp:46
|
||||
#: core/mainwindow.cpp:754 widgets/fileviewlist.cpp:46
|
||||
#: device/deviceview.cpp:246
|
||||
msgid "Copy to collection..."
|
||||
msgstr "Salin ke pustaka..."
|
||||
@@ -1430,7 +1430,7 @@ msgstr "Salin ke pustaka..."
|
||||
msgid "Copy to device"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:756 collection/collectionview.cpp:359
|
||||
#: core/mainwindow.cpp:757 collection/collectionview.cpp:359
|
||||
#: playlist/playlistlistcontainer.cpp:89 widgets/fileviewlist.cpp:48
|
||||
msgid "Copy to device..."
|
||||
msgstr "Salin ke perangkat..."
|
||||
@@ -1714,7 +1714,7 @@ msgstr "Hapus berkas"
|
||||
msgid "Delete from device..."
|
||||
msgstr "Hapus dari perangkat..."
|
||||
|
||||
#: core/mainwindow.cpp:758 collection/collectionview.cpp:361
|
||||
#: core/mainwindow.cpp:759 collection/collectionview.cpp:361
|
||||
#: widgets/fileviewlist.cpp:49
|
||||
msgid "Delete from disk..."
|
||||
msgstr "Hapus dari diska..."
|
||||
@@ -1740,11 +1740,11 @@ msgstr "Hapus berkas yang asli"
|
||||
msgid "Deleting files"
|
||||
msgstr "Menghapus berkas"
|
||||
|
||||
#: core/mainwindow.cpp:1918
|
||||
#: core/mainwindow.cpp:1927
|
||||
msgid "Dequeue selected tracks"
|
||||
msgstr "Buang antrean trek terpilih"
|
||||
|
||||
#: core/mainwindow.cpp:1917
|
||||
#: core/mainwindow.cpp:1926
|
||||
msgid "Dequeue track"
|
||||
msgstr "Buang antrean trek"
|
||||
|
||||
@@ -1770,7 +1770,7 @@ msgstr "Properti Perangkat"
|
||||
msgid "Device properties..."
|
||||
msgstr "Properti perangkat..."
|
||||
|
||||
#: core/mainwindow.cpp:375
|
||||
#: core/mainwindow.cpp:376
|
||||
msgid "Devices"
|
||||
msgstr "Perangkat"
|
||||
|
||||
@@ -1907,7 +1907,7 @@ msgstr ""
|
||||
msgid "Edit smart playlist..."
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:1961
|
||||
#: core/mainwindow.cpp:1970
|
||||
#, qt-format
|
||||
msgid "Edit tag \"%1\"..."
|
||||
msgstr "Sunting tag \"%1\"..."
|
||||
@@ -2077,7 +2077,7 @@ msgstr "Setara dengan --log-level *: 1"
|
||||
msgid "Equivalent to --log-levels *:3"
|
||||
msgstr "Setara dengan --log-level *: 3"
|
||||
|
||||
#: core/mainwindow.cpp:2596 core/mainwindow.cpp:2747
|
||||
#: core/mainwindow.cpp:2605 core/mainwindow.cpp:2756
|
||||
#: collection/collectionview.cpp:586
|
||||
msgid "Error"
|
||||
msgstr "Kesalahan"
|
||||
@@ -2326,7 +2326,7 @@ msgstr "Nama berkas"
|
||||
msgid "Filename:"
|
||||
msgstr "Nama berkas:"
|
||||
|
||||
#: core/mainwindow.cpp:372
|
||||
#: core/mainwindow.cpp:373
|
||||
msgid "Files"
|
||||
msgstr "Berkas"
|
||||
|
||||
@@ -3163,7 +3163,7 @@ msgstr "Titik kait"
|
||||
msgid "Move down"
|
||||
msgstr "Pindah turun"
|
||||
|
||||
#: core/mainwindow.cpp:754 widgets/fileviewlist.cpp:47
|
||||
#: core/mainwindow.cpp:755 widgets/fileviewlist.cpp:47
|
||||
msgid "Move to collection..."
|
||||
msgstr "Pindah ke pustaka..."
|
||||
|
||||
@@ -3172,7 +3172,7 @@ msgstr "Pindah ke pustaka..."
|
||||
msgid "Move up"
|
||||
msgstr "Pindah naik"
|
||||
|
||||
#: core/mainwindow.cpp:2201 transcoder/transcodedialog.cpp:333
|
||||
#: core/mainwindow.cpp:2210 transcoder/transcodedialog.cpp:333
|
||||
msgid "Music"
|
||||
msgstr "Musik"
|
||||
|
||||
@@ -3216,7 +3216,7 @@ msgstr "Jangan mulai memutar"
|
||||
msgid "New folder"
|
||||
msgstr "Folder baru"
|
||||
|
||||
#: core/mainwindow.cpp:2019
|
||||
#: core/mainwindow.cpp:2028
|
||||
msgid "New playlist"
|
||||
msgstr "Daftar putar baru"
|
||||
|
||||
@@ -3293,7 +3293,7 @@ msgstr "Tidak ada lagu yang berputar"
|
||||
msgid "None"
|
||||
msgstr "Nihil"
|
||||
|
||||
#: core/mainwindow.cpp:2596 core/mainwindow.cpp:2747
|
||||
#: core/mainwindow.cpp:2605 core/mainwindow.cpp:2756
|
||||
#: collection/collectionview.cpp:586
|
||||
msgid "None of the selected songs were suitable for copying to a device"
|
||||
msgstr ""
|
||||
@@ -3437,7 +3437,7 @@ msgstr "Opus"
|
||||
msgid "Organize Files"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:752 collection/collectionview.cpp:357
|
||||
#: core/mainwindow.cpp:753 collection/collectionview.cpp:357
|
||||
msgid "Organize files..."
|
||||
msgstr ""
|
||||
|
||||
@@ -3525,7 +3525,7 @@ msgstr ""
|
||||
msgid "Pattern"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:1317 core/mainwindow.cpp:1816
|
||||
#: core/mainwindow.cpp:1326 core/mainwindow.cpp:1825
|
||||
#: core/qtsystemtrayicon.cpp:144 globalshortcuts/globalshortcutsmanager.cpp:62
|
||||
msgid "Pause"
|
||||
msgstr "Jeda"
|
||||
@@ -3553,8 +3553,8 @@ msgstr "Piksel"
|
||||
msgid "Plain sidebar"
|
||||
msgstr "Bilah sisi polos"
|
||||
|
||||
#: core/mainwindow.cpp:721 core/mainwindow.cpp:1274 core/mainwindow.cpp:1301
|
||||
#: core/mainwindow.cpp:1820 core/qtsystemtrayicon.cpp:157
|
||||
#: core/mainwindow.cpp:722 core/mainwindow.cpp:1283 core/mainwindow.cpp:1310
|
||||
#: core/mainwindow.cpp:1829 core/qtsystemtrayicon.cpp:157
|
||||
#: core/qtsystemtrayicon.cpp:171 globalshortcuts/globalshortcutsmanager.cpp:61
|
||||
msgid "Play"
|
||||
msgstr "Putar"
|
||||
@@ -3625,7 +3625,7 @@ msgstr ""
|
||||
msgid "Playlist finished"
|
||||
msgstr "Daftar putar selesai"
|
||||
|
||||
#: core/mainwindow.cpp:2292
|
||||
#: core/mainwindow.cpp:2301
|
||||
#, qt-format
|
||||
msgid ""
|
||||
"Playlist has %1 songs, too large to undo, are you sure you want to clear the "
|
||||
@@ -3649,7 +3649,7 @@ msgstr ""
|
||||
msgid "Playlist type"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:370
|
||||
#: core/mainwindow.cpp:371
|
||||
msgid "Playlists"
|
||||
msgstr "Daftar putar"
|
||||
|
||||
@@ -3770,7 +3770,7 @@ msgstr "Kemajuan"
|
||||
msgid "Put songs in a random order"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:384 ../build/src/ui_scrobblersettingspage.h:423
|
||||
#: core/mainwindow.cpp:385 ../build/src/ui_scrobblersettingspage.h:423
|
||||
#: ../build/src/ui_qobuzsettingspage.h:276
|
||||
msgid "Qobuz"
|
||||
msgstr "Qobuz"
|
||||
@@ -3793,24 +3793,24 @@ msgstr "Kualitas"
|
||||
msgid "Querying device..."
|
||||
msgstr "Meminta perangkat..."
|
||||
|
||||
#: core/mainwindow.cpp:369
|
||||
#: core/mainwindow.cpp:370
|
||||
msgid "Queue"
|
||||
msgstr "Antrean"
|
||||
|
||||
#: core/mainwindow.cpp:1920
|
||||
#: core/mainwindow.cpp:1929
|
||||
msgid "Queue selected tracks"
|
||||
msgstr "Antre trek terpilih"
|
||||
|
||||
#: core/mainwindow.cpp:727 core/mainwindow.cpp:1924
|
||||
#: core/mainwindow.cpp:728 core/mainwindow.cpp:1933
|
||||
msgid "Queue selected tracks to play next"
|
||||
msgstr "Antre trek terpilih untuk diputar selanjutnya"
|
||||
|
||||
#: core/mainwindow.cpp:1927 collection/collectionview.cpp:354
|
||||
#: core/mainwindow.cpp:1936 collection/collectionview.cpp:354
|
||||
#: internet/internetcollectionview.cpp:320
|
||||
msgid "Queue to play next"
|
||||
msgstr "Antre untuk diputar selanjutnya"
|
||||
|
||||
#: core/mainwindow.cpp:1919 collection/collectionview.cpp:353
|
||||
#: core/mainwindow.cpp:1928 collection/collectionview.cpp:353
|
||||
#: smartplaylists/smartplaylistsviewcontainer.cpp:72
|
||||
#: internet/internetsearchview.cpp:323 internet/internetcollectionview.cpp:319
|
||||
msgid "Queue track"
|
||||
@@ -3828,7 +3828,7 @@ msgstr "Radio (kenyaringan sama untuk semua trek)"
|
||||
msgid "Radio Paradise"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:373
|
||||
#: core/mainwindow.cpp:374
|
||||
msgid "Radios"
|
||||
msgstr ""
|
||||
|
||||
@@ -4080,7 +4080,7 @@ msgstr ""
|
||||
msgid "Rescan song(s)"
|
||||
msgstr "Pindai ulang lagu"
|
||||
|
||||
#: core/mainwindow.cpp:743
|
||||
#: core/mainwindow.cpp:744
|
||||
msgid "Rescan song(s)..."
|
||||
msgstr ""
|
||||
|
||||
@@ -4409,7 +4409,7 @@ msgstr "URL server tidak benar."
|
||||
msgid "Server-side scrobbling"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:1960
|
||||
#: core/mainwindow.cpp:1969
|
||||
#, qt-format
|
||||
msgid "Set %1 to \"%2\"..."
|
||||
msgstr "Tetapkan %1 ke \"%2\"..."
|
||||
@@ -4496,7 +4496,7 @@ msgstr ""
|
||||
msgid "Show album cover art in collection"
|
||||
msgstr "Tampilkan sampul album di pustaka"
|
||||
|
||||
#: core/mainwindow.cpp:669
|
||||
#: core/mainwindow.cpp:670
|
||||
msgid "Show all songs"
|
||||
msgstr "Tampilkan semua lagu"
|
||||
|
||||
@@ -4524,7 +4524,7 @@ msgstr "Tampilkan mesin dan perangkat"
|
||||
msgid "Show fullsize..."
|
||||
msgstr "Tampilkan ukuran penuh..."
|
||||
|
||||
#: core/mainwindow.cpp:750
|
||||
#: core/mainwindow.cpp:751
|
||||
msgid "Show in collection..."
|
||||
msgstr "Tampilkan di pustaka..."
|
||||
|
||||
@@ -4532,7 +4532,7 @@ msgstr "Tampilkan di pustaka..."
|
||||
msgid "Show in file browser"
|
||||
msgstr "Tampilkan di peramban berkas"
|
||||
|
||||
#: core/mainwindow.cpp:751 collection/collectionview.cpp:366
|
||||
#: core/mainwindow.cpp:752 collection/collectionview.cpp:366
|
||||
#: widgets/fileviewlist.cpp:53
|
||||
msgid "Show in file browser..."
|
||||
msgstr "Tampilkan di peramban berkas..."
|
||||
@@ -4549,11 +4549,11 @@ msgstr "Tampilkan tombol suka"
|
||||
msgid "Show moodbar"
|
||||
msgstr "Tampilkan moodbar"
|
||||
|
||||
#: core/mainwindow.cpp:670
|
||||
#: core/mainwindow.cpp:671
|
||||
msgid "Show only duplicates"
|
||||
msgstr "Tampilkan hanya duplikat"
|
||||
|
||||
#: core/mainwindow.cpp:671
|
||||
#: core/mainwindow.cpp:672
|
||||
msgid "Show only untagged"
|
||||
msgstr "Tampilkan hanya tidak bertag"
|
||||
|
||||
@@ -4650,11 +4650,11 @@ msgstr "Lewati hitungan"
|
||||
msgid "Skip forwards in playlist"
|
||||
msgstr "Lewati maju di dalam daftar putar"
|
||||
|
||||
#: core/mainwindow.cpp:1933
|
||||
#: core/mainwindow.cpp:1942
|
||||
msgid "Skip selected tracks"
|
||||
msgstr "Lewati trek yang dipilih"
|
||||
|
||||
#: core/mainwindow.cpp:1932
|
||||
#: core/mainwindow.cpp:1941
|
||||
msgid "Skip track"
|
||||
msgstr "Lewati trek"
|
||||
|
||||
@@ -4670,7 +4670,7 @@ msgstr "Bilah sisi kecil"
|
||||
msgid "Smart playlist"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:371
|
||||
#: core/mainwindow.cpp:372
|
||||
msgid "Smart playlists"
|
||||
msgstr ""
|
||||
|
||||
@@ -4778,7 +4778,7 @@ msgstr "Berhenti setelah masing-masing trek"
|
||||
msgid "Stop after every track"
|
||||
msgstr "Berhenti setelah setiap trek"
|
||||
|
||||
#: core/mainwindow.cpp:723 ../build/src/ui_mainwindow.h:630
|
||||
#: core/mainwindow.cpp:724 ../build/src/ui_mainwindow.h:630
|
||||
msgid "Stop after this track"
|
||||
msgstr "Berhenti setelah trek ini"
|
||||
|
||||
@@ -4882,7 +4882,7 @@ msgstr ""
|
||||
msgid "Submit scrobbles every"
|
||||
msgstr "Kirimkan scrobble setiap"
|
||||
|
||||
#: core/mainwindow.cpp:378 ../build/src/ui_scrobblersettingspage.h:419
|
||||
#: core/mainwindow.cpp:379 ../build/src/ui_scrobblersettingspage.h:419
|
||||
#: ../build/src/ui_subsonicsettingspage.h:243
|
||||
msgid "Subsonic"
|
||||
msgstr "Subsonic"
|
||||
@@ -5021,7 +5021,7 @@ msgstr "Situs yang Anda minta tidak ada!"
|
||||
msgid "The site you requested is not an image!"
|
||||
msgstr "Situs yang Anda minta bukan sebuah gambar!"
|
||||
|
||||
#: core/mainwindow.cpp:2860
|
||||
#: core/mainwindow.cpp:2869
|
||||
msgid ""
|
||||
"The version of Strawberry you've just updated to requires a full collection "
|
||||
"rescan because of the new features listed below:"
|
||||
@@ -5077,6 +5077,16 @@ msgstr "Level Ketiga"
|
||||
msgid "Third level"
|
||||
msgstr "Level ketiga"
|
||||
|
||||
#: core/mainwindow.cpp:1044
|
||||
#, qt-format
|
||||
msgid ""
|
||||
"This Strawberry binary was built for %1 CPU, but you are running on an %2 "
|
||||
"CPU. Strawberry currently have limited macOS support, and running this "
|
||||
"binary on the current CPU is unsupported. If you want to use Strawberry on "
|
||||
"the current CPU, you should build Strawberry from source. For instructions "
|
||||
"see.: https://wiki.strawberrymusicplayer.org/wiki/Compile"
|
||||
msgstr ""
|
||||
|
||||
#: ../build/src/ui_playlistsaveoptionsdialog.h:94
|
||||
msgid "This can be changed later through the preferences"
|
||||
msgstr "Ini dapat diubah kemudian melalui preferensi"
|
||||
@@ -5131,7 +5141,7 @@ msgstr "Tipe perangkat ini tidak didukung: %1"
|
||||
msgid "Thread priority"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:381 ../build/src/ui_scrobblersettingspage.h:421
|
||||
#: core/mainwindow.cpp:382 ../build/src/ui_scrobblersettingspage.h:421
|
||||
#: ../build/src/ui_tidalsettingspage.h:318
|
||||
msgid "Tidal"
|
||||
msgstr "Tidal"
|
||||
@@ -5161,7 +5171,7 @@ msgstr "Hari Ini"
|
||||
msgid "Toggle Pretty OSD"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:724 core/mainwindow.cpp:1921
|
||||
#: core/mainwindow.cpp:725 core/mainwindow.cpp:1930
|
||||
msgid "Toggle queue status"
|
||||
msgstr "Alihkan status antrean"
|
||||
|
||||
@@ -5169,7 +5179,7 @@ msgstr "Alihkan status antrean"
|
||||
msgid "Toggle scrobbling"
|
||||
msgstr "Alihkan scrobbling"
|
||||
|
||||
#: core/mainwindow.cpp:730 core/mainwindow.cpp:1934
|
||||
#: core/mainwindow.cpp:731 core/mainwindow.cpp:1943
|
||||
msgid "Toggle skip status"
|
||||
msgstr "Alihkan status melewati"
|
||||
|
||||
@@ -5286,11 +5296,11 @@ msgstr ""
|
||||
msgid "Unset cover"
|
||||
msgstr "Tak set sampul"
|
||||
|
||||
#: core/mainwindow.cpp:1931
|
||||
#: core/mainwindow.cpp:1940
|
||||
msgid "Unskip selected tracks"
|
||||
msgstr "Taklewati trek yang dipilih"
|
||||
|
||||
#: core/mainwindow.cpp:1930
|
||||
#: core/mainwindow.cpp:1939
|
||||
msgid "Unskip track"
|
||||
msgstr "Taklewati trek"
|
||||
|
||||
@@ -5539,7 +5549,7 @@ msgid ""
|
||||
"well?"
|
||||
msgstr ""
|
||||
|
||||
#: core/mainwindow.cpp:2864
|
||||
#: core/mainwindow.cpp:2873
|
||||
msgid "Would you like to run a full rescan right now?"
|
||||
msgstr "Apakah Anda ingin menjalankan pemindaian ulang menyeluruh sekarang?"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user