Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 10 additions & 2 deletions ConfigurationManager.Shared/ConfigurationManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
/// </summary>
public const string Version = Constants.Version;

internal static ManualLogSource Logger;

Check warning on line 43 in ConfigurationManager.Shared/ConfigurationManager.cs

View workflow job for this annotation

GitHub Actions / build

'ConfigurationManager.Logger' hides inherited member 'BaseUnityPlugin.Logger'. Use the new keyword if hiding was intended.
private static SettingFieldDrawer _fieldDrawer;

private static readonly Color _advancedSettingColor = new Color(1f, 0.95f, 0.67f, 1f);
Expand Down Expand Up @@ -107,12 +107,15 @@
private bool _previousCursorVisible;

internal int LeftColumnWidth { get; private set; }
internal int RightColumnWidth { get; private set; }
internal int RightColumnWidth => _rightColumnBaseWidth - _resetButtonExtraWidth;
private int _rightColumnBaseWidth;
private int _resetButtonExtraWidth;
private static readonly GUIContent _resetUntranslated = new GUIContent("Reset");

private readonly ConfigEntry<bool> _showAdvanced;
private readonly ConfigEntry<bool> _showKeybinds;
private readonly ConfigEntry<bool> _showSettings;
private readonly ConfigEntry<KeyboardShortcut> _keybind;

Check warning on line 118 in ConfigurationManager.Shared/ConfigurationManager.cs

View workflow job for this annotation

GitHub Actions / build

'KeyboardShortcut' is obsolete: 'Update to BepInEx.Unity.IL2CPP 6.0.0-be.785 and use Unity.IL2CPP.Configuration.KeyboardShortcut instead'
private readonly ConfigEntry<bool> _hideSingleSection;
private readonly ConfigEntry<bool> _pluginConfigCollapsedDefault;
private bool _showDebug;
Expand All @@ -130,7 +133,7 @@
_showAdvanced = Config.Bind("Filtering", "Show advanced", false);
_showKeybinds = Config.Bind("Filtering", "Show keybinds", true);
_showSettings = Config.Bind("Filtering", "Show settings", true);
_keybind = Config.Bind("General", "Show config manager", new KeyboardShortcut(KeyCode.F1),

Check warning on line 136 in ConfigurationManager.Shared/ConfigurationManager.cs

View workflow job for this annotation

GitHub Actions / build

'KeyboardShortcut' is obsolete: 'Update to BepInEx.Unity.IL2CPP 6.0.0-be.785 and use Unity.IL2CPP.Configuration.KeyboardShortcut instead'
new ConfigDescription("The shortcut used to toggle the config manager window on and off.\n" +
"The key can be overridden by a game-specific plugin if necessary, in that case this setting is ignored."));
_hideSingleSection = Config.Bind("General", "Hide single sections", false, new ConfigDescription("Show section title for plugins with only one section"));
Expand Down Expand Up @@ -240,7 +243,7 @@
results = results.Where(x => x.IsAdvanced == true || IsKeyboardShortcut(x));
}

const string shortcutsCatName = "Keyboard shortcuts";

Check warning on line 246 in ConfigurationManager.Shared/ConfigurationManager.cs

View workflow job for this annotation

GitHub Actions / build

The variable 'shortcutsCatName' is assigned but its value is never used

Check warning on line 246 in ConfigurationManager.Shared/ConfigurationManager.cs

View workflow job for this annotation

GitHub Actions / build

The variable 'shortcutsCatName' is assigned but its value is never used

var settingsAreCollapsed = _pluginConfigCollapsedDefault.Value;

Expand Down Expand Up @@ -281,7 +284,7 @@

private static bool IsKeyboardShortcut(SettingEntryBase x)
{
return x.SettingType == typeof(KeyboardShortcut) || x.SettingType == typeof(KeyCode);

Check warning on line 287 in ConfigurationManager.Shared/ConfigurationManager.cs

View workflow job for this annotation

GitHub Actions / build

'KeyboardShortcut' is obsolete: 'Update to BepInEx.Unity.IL2CPP 6.0.0-be.785 and use Unity.IL2CPP.Configuration.KeyboardShortcut instead'
}

private static bool ContainsSearchString(SettingEntryBase setting, string[] searchStrings)
Expand All @@ -308,7 +311,7 @@
_screenRect = new Rect(0, 0, Screen.width, Screen.height);

LeftColumnWidth = Mathf.RoundToInt(SettingWindowRect.width / 2.5f);
RightColumnWidth = (int)SettingWindowRect.width - LeftColumnWidth - 115;
_rightColumnBaseWidth = (int)SettingWindowRect.width - LeftColumnWidth - 115;

_windowWasMoved = false;
}
Expand Down Expand Up @@ -383,6 +386,11 @@

private void SettingsWindow(int id)
{
// The right column leaves room for an untranslated "Reset" button. A translated label is usually longer, and the
// fixed-width fields then push the button past the right edge of the window, so grow the room by the difference.
var buttonStyle = GUI.skin.button;
_resetButtonExtraWidth = Mathf.Max(0, Mathf.CeilToInt(buttonStyle.CalcSize(ImguiUtils.Content("Reset")).x - buttonStyle.CalcSize(_resetUntranslated).x));

DrawWindowHeader();

_settingWindowScrollPos = GUILayout.BeginScrollView(_settingWindowScrollPos, false, true);
Expand Down
7 changes: 5 additions & 2 deletions ConfigurationManager.Shared/SettingFieldDrawer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
{
{ typeof(bool), DrawBoolField },
#if IL2CPP
{ typeof(BepInEx.Configuration.KeyboardShortcut), DrawKeyboardShortcutObsolete},

Check warning on line 40 in ConfigurationManager.Shared/SettingFieldDrawer.cs

View workflow job for this annotation

GitHub Actions / build

'KeyboardShortcut' is obsolete: 'Update to BepInEx.Unity.IL2CPP 6.0.0-be.785 and use Unity.IL2CPP.Configuration.KeyboardShortcut instead'
#endif
{ typeof(KeyboardShortcut), DrawKeyboardShortcut},
{ typeof(KeyCode), DrawKeyCode },
Expand Down Expand Up @@ -212,7 +212,9 @@
if (value.val != 0)
{
// Make sure this horizontal group doesn't extend over window width, if it does then start a new horiz group below
var textDimension = (int)GUI.skin.toggle.CalcSize(new GUIContent(value.name)).x;
// Count the spacing GUILayout puts between toggles too, or a line can end up wider than maxWidth
var toggleStyle = GUI.skin.toggle;
var textDimension = (int)toggleStyle.CalcSize(new GUIContent(value.name)).x + Mathf.Max(toggleStyle.margin.left, toggleStyle.margin.right);
currentWidth += textDimension;
if (currentWidth > maxWidth)
break;
Expand Down Expand Up @@ -445,7 +447,7 @@
{
if (input.GetKeyUp(key))
{
setting.Set(new BepInEx.Configuration.KeyboardShortcut(key, _keysToCheck.Where(input.GetKey).ToArray()));

Check warning on line 450 in ConfigurationManager.Shared/SettingFieldDrawer.cs

View workflow job for this annotation

GitHub Actions / build

'KeyboardShortcut' is obsolete: 'Update to BepInEx.Unity.IL2CPP 6.0.0-be.785 and use Unity.IL2CPP.Configuration.KeyboardShortcut instead'
_currentKeyboardShortcutToSet = null;
break;
}
Expand All @@ -460,7 +462,7 @@

if (GUILayout.Button(ImguiUtils.Content("Clear"), GUILayout.ExpandWidth(false)))
{
setting.Set(BepInEx.Configuration.KeyboardShortcut.Empty);

Check warning on line 465 in ConfigurationManager.Shared/SettingFieldDrawer.cs

View workflow job for this annotation

GitHub Actions / build

'KeyboardShortcut' is obsolete: 'Update to BepInEx.Unity.IL2CPP 6.0.0-be.785 and use Unity.IL2CPP.Configuration.KeyboardShortcut instead'
_currentKeyboardShortcutToSet = null;
}
}
Expand Down Expand Up @@ -537,7 +539,8 @@
GUILayout.Label(cacheEntry.Tex, GUILayout.ExpandWidth(false));

var colorStr = _drawColorHex ? "#" + ColorUtility.ToHtmlStringRGBA(colorValue) : $"{colorValue.r:F2} {colorValue.g:F2} {colorValue.b:F2} {colorValue.a:F2}";
var newColorStr = GUILayout.TextField(colorStr, GUILayout.ExpandWidth(true));
// Let the field shrink below its text width, or a longer (e.g. translated) Reset button is pushed out of the window
var newColorStr = GUILayout.TextField(colorStr, GUILayout.ExpandWidth(true), GUILayout.MinWidth(50));
if (GUI.changed && colorStr != newColorStr)
{
if (_drawColorHex)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Belarusian translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Налады модаў
Normal settings=Звычайныя
Keyboard shortcuts=Клавішы
Advanced settings=Пашыраныя
Debug info=Адладка
Open Log=Журнал
Close=Закрыць
Search:=Пошук:
Clear=Ачысціць
Expand All=Разгарнуць усе
Collapse All=Згарнуць усе
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Парада: пстрыкніце назву мода, каб адкрыць яго налады. Пстрыкніце наладу або групу, каб прачытаць апісанне.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Парада: акно можна перацягнуць мышшу. Яно застаецца адкрытым, пакуль вы гуляеце.
r:"^Plugins with no options available: (.+)$"="Моды без налад: $1"
Reset=Скінуць
Cancel=Скасаваць
Press any key=Націсніце клавішу
Press any key combination=Націсніце спалучэнне клавіш
Set...=Прызначыць…
Set the key by pressing any key on your keyboard.=Націсніце клавішу, каб прызначыць яе.
Enabled=Укл.
Disabled=Выкл.
Failed to draw this field, check log for details.=Не ўдалося паказаць поле, падрабязнасці ў журнале.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// German translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Plugin-/Mod-Einstellungen
Normal settings=Normal
Keyboard shortcuts=Tastenkürzel
Advanced settings=Erweitert
Debug info=Debug
Open Log=Log öffnen
Close=Schließen
Search:=Suche:
Clear=Leeren
Expand All=Alle ausklappen
Collapse All=Alle einklappen
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Tipp: Klicke auf den Namen eines Plugins, um seine Einstellungen zu sehen. Klicke auf eine Einstellung oder Gruppe, um die Beschreibung zu lesen.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Tipp: Du kannst dieses Fenster mit der Maus verschieben. Es bleibt geöffnet, während du spielst.
r:"^Plugins with no options available: (.+)$"="Plugins ohne Einstellungen: $1"
Reset=Zurücksetzen
Cancel=Abbrechen
Press any key=Taste drücken
Press any key combination=Tastenkombination drücken
Set...=Festlegen…
Set the key by pressing any key on your keyboard.=Drücke eine beliebige Taste, um sie festzulegen.
Enabled=An
Disabled=Aus
Failed to draw this field, check log for details.=Dieses Feld konnte nicht angezeigt werden, Details stehen im Log.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Spanish translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Ajustes de plugins / mods
Normal settings=Normales
Keyboard shortcuts=Atajos
Advanced settings=Avanzados
Debug info=Depuración
Open Log=Abrir registro
Close=Cerrar
Search:=Buscar:
Clear=Borrar
Expand All=Expandir todo
Collapse All=Contraer todo
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Consejo: haz clic en el nombre de un plugin para ver sus ajustes. Haz clic en un ajuste o grupo para leer su descripción.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Consejo: puedes arrastrar esta ventana para moverla. Sigue abierta mientras juegas.
r:"^Plugins with no options available: (.+)$"="Plugins sin ajustes: $1"
Reset=Restablecer
Cancel=Cancelar
Press any key=Pulsa una tecla
Press any key combination=Pulsa una combinación de teclas
Set...=Asignar…
Set the key by pressing any key on your keyboard.=Pulsa cualquier tecla del teclado para asignarla.
Enabled=Activado
Disabled=Desactivado
Failed to draw this field, check log for details.=No se pudo mostrar este campo; consulta el registro para más detalles.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Estonian translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Pistikprogrammide / modide seaded
Normal settings=Tavaseaded
Keyboard shortcuts=Kiirklahvid
Advanced settings=Täpsemad seaded
Debug info=Silumine
Open Log=Ava logi
Close=Sulge
Search:=Otsi:
Clear=Tühjenda
Expand All=Laienda kõik
Collapse All=Ahenda kõik
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Vihje: klõpsake pistikprogrammi nimel, et näha selle seadeid. Klõpsake seadel või rühmal, et lugeda kirjeldust.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Vihje: seda akent saab hiirega lohistades liigutada. See jääb mängimise ajal avatuks.
r:"^Plugins with no options available: (.+)$"="Pistikprogrammid ilma seadeteta: $1"
Reset=Lähtesta
Cancel=Loobu
Press any key=Vajutage suvalist klahvi
Press any key combination=Vajutage klahvikombinatsiooni
Set...=Määra…
Set the key by pressing any key on your keyboard.=Vajutage klaviatuuril suvalist klahvi, et see määrata.
Enabled=Sees
Disabled=Väljas
Failed to draw this field, check log for details.=Seda välja ei õnnestunud kuvada, üksikasjad on logis.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// French translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Paramètres des plugins / mods
Normal settings=Standard
Keyboard shortcuts=Raccourcis
Advanced settings=Avancés
Debug info=Débogage
Open Log=Ouvrir le journal
Close=Fermer
Search:=Rechercher :
Clear=Effacer
Expand All=Tout développer
Collapse All=Tout réduire
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Astuce : cliquez sur le nom d'un plugin pour afficher ses paramètres. Cliquez sur un paramètre ou un groupe pour lire sa description.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Astuce : faites glisser cette fenêtre pour la déplacer. Elle reste ouverte pendant que vous jouez.
r:"^Plugins with no options available: (.+)$"="Plugins sans paramètres : $1"
Reset=Réinitialiser
Cancel=Annuler
Press any key=Appuyez sur une touche
Press any key combination=Appuyez sur une combinaison de touches
Set...=Attribuer…
Set the key by pressing any key on your keyboard.=Appuyez sur une touche du clavier pour l'attribuer.
Enabled=Activé
Disabled=Désactivé
Failed to draw this field, check log for details.=Impossible d'afficher ce champ, consultez le journal pour plus de détails.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Indonesian translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Pengaturan plugin / mod
Normal settings=Biasa
Keyboard shortcuts=Pintasan
Advanced settings=Lanjutan
Debug info=Info debug
Open Log=Buka log
Close=Tutup
Search:=Cari:
Clear=Hapus
Expand All=Bentangkan semua
Collapse All=Ciutkan semua
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Tips: klik nama plugin untuk melihat pengaturannya. Klik nama pengaturan atau grup untuk membaca deskripsinya.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Tips: seret jendela ini untuk memindahkannya. Jendela tetap terbuka selama Anda bermain.
r:"^Plugins with no options available: (.+)$"="Plugin tanpa pengaturan: $1"
Reset=Atur ulang
Cancel=Batal
Press any key=Tekan tombol apa saja
Press any key combination=Tekan kombinasi tombol
Set...=Atur…
Set the key by pressing any key on your keyboard.=Tekan tombol apa saja pada keyboard untuk mengaturnya.
Enabled=Aktif
Disabled=Nonaktif
Failed to draw this field, check log for details.=Gagal menampilkan bidang ini, lihat log untuk detailnya.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Italian translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Impostazioni plugin / mod
Normal settings=Normali
Keyboard shortcuts=Scorciatoie
Advanced settings=Avanzate
Debug info=Debug
Open Log=Apri log
Close=Chiudi
Search:=Cerca:
Clear=Cancella
Expand All=Espandi tutto
Collapse All=Comprimi tutto
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Suggerimento: fai clic sul nome di un plugin per vederne le impostazioni. Fai clic su un'impostazione o un gruppo per leggerne la descrizione.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Suggerimento: puoi trascinare questa finestra per spostarla. Resta aperta mentre giochi.
r:"^Plugins with no options available: (.+)$"="Plugin senza impostazioni: $1"
Reset=Ripristina
Cancel=Annulla
Press any key=Premi un tasto
Press any key combination=Premi una combinazione di tasti
Set...=Assegna…
Set the key by pressing any key on your keyboard.=Premi un tasto qualsiasi per assegnarlo.
Enabled=Attivo
Disabled=Disattivo
Failed to draw this field, check log for details.=Impossibile mostrare questo campo, controlla il log per i dettagli.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Japanese translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=プラグイン/MOD設定
Normal settings=通常設定
Keyboard shortcuts=キー設定
Advanced settings=詳細設定
Debug info=デバッグ情報
Open Log=ログを開く
Close=閉じる
Search:=検索:
Clear=クリア
Expand All=すべて展開
Collapse All=すべて折りたたみ
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=ヒント:プラグイン名をクリックすると設定が開きます。設定名やグループ名をクリックすると説明が表示されます。
Tip: You can drag this window to move it. It will stay open while you interact with the game.=ヒント:このウィンドウはドラッグで移動できます。ゲームのプレイ中も開いたままです。
r:"^Plugins with no options available: (.+)$"="設定項目のないプラグイン:$1"
Reset=リセット
Cancel=キャンセル
Press any key=キーを押してください
Press any key combination=キーの組み合わせを押してください
Set...=割り当て…
Set the key by pressing any key on your keyboard.=キーボードの任意のキーを押して割り当てます。
Enabled=有効
Disabled=無効
Failed to draw this field, check log for details.=この項目を表示できませんでした。詳細はログを確認してください。
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Korean translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=플러그인/모드 설정
Normal settings=일반 설정
Keyboard shortcuts=단축키
Advanced settings=고급 설정
Debug info=디버그 정보
Open Log=로그 열기
Close=닫기
Search:=검색:
Clear=지우기
Expand All=모두 펼치기
Collapse All=모두 접기
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=팁: 플러그인 이름을 클릭하면 설정이 펼쳐집니다. 설정이나 그룹 이름을 클릭하면 설명을 볼 수 있습니다.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=팁: 이 창은 드래그해서 옮길 수 있습니다. 게임을 하는 동안에도 열려 있습니다.
r:"^Plugins with no options available: (.+)$"="설정이 없는 플러그인: $1"
Reset=초기화
Cancel=취소
Press any key=아무 키나 누르세요
Press any key combination=키 조합을 누르세요
Set...=지정…
Set the key by pressing any key on your keyboard.=키보드에서 아무 키나 눌러 지정하세요.
Enabled=켜짐
Disabled=꺼짐
Failed to draw this field, check log for details.=이 항목을 표시하지 못했습니다. 자세한 내용은 로그를 확인하세요.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Lithuanian translation of the Configuration Manager window for XUnity.AutoTranslator.
// Plugin-specific: applies only to text drawn by ConfigurationManager.dll, never to the game or other plugins.
// Plugin names, setting names and descriptions come from the plugins and are not translated here.
Plugin / mod settings=Įskiepių / modų nustatymai
Normal settings=Įprasti nustatymai
Keyboard shortcuts=Klavišai
Advanced settings=Išplėstiniai
Debug info=Derinimas
Open Log=Atidaryti žurnalą
Close=Uždaryti
Search:=Ieškoti:
Clear=Išvalyti
Expand All=Išskleisti viską
Collapse All=Sutraukti viską
Tip: Click plugin names to expand. Click setting and group names to see their descriptions.=Patarimas: spustelėkite įskiepio pavadinimą, kad pamatytumėte jo nustatymus. Spustelėkite nustatymą ar grupę, kad perskaitytumėte aprašymą.
Tip: You can drag this window to move it. It will stay open while you interact with the game.=Patarimas: šį langą galite perkelti tempdami pele. Jis lieka atidarytas, kol žaidžiate.
r:"^Plugins with no options available: (.+)$"="Įskiepiai be nustatymų: $1"
Reset=Atkurti
Cancel=Atšaukti
Press any key=Paspauskite bet kurį klavišą
Press any key combination=Paspauskite klavišų derinį
Set...=Priskirti…
Set the key by pressing any key on your keyboard.=Paspauskite bet kurį klaviatūros klavišą, kad jį priskirtumėte.
Enabled=Įjungta
Disabled=Išjungta
Failed to draw this field, check log for details.=Nepavyko parodyti šio lauko, išsamiau žr. žurnale.
Loading
Loading