Deploying to gh-pages from @ hacks-guide/Guide_3DS@ac15f7fc85 🚀
This commit is contained in:
parent
1fc8573b67
commit
da095172e7
2 changed files with 67 additions and 48 deletions
2
feed.xml
2
feed.xml
|
@ -1 +1 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.2">Jekyll</generator><link href="https://3ds.hacks.guide/feed.xml" rel="self" type="application/atom+xml" /><link href="https://3ds.hacks.guide/" rel="alternate" type="text/html" /><updated>2023-07-22T21:12:33+00:00</updated><id>https://3ds.hacks.guide/feed.xml</id><title type="html">3DS Hacks Guide</title><subtitle>A complete guide to 3DS custom firmware</subtitle><author><name>Nintendo Homebrew</name></author></feed>
|
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.2">Jekyll</generator><link href="https://3ds.hacks.guide/feed.xml" rel="self" type="application/atom+xml" /><link href="https://3ds.hacks.guide/" rel="alternate" type="text/html" /><updated>2023-07-23T01:35:34+00:00</updated><id>https://3ds.hacks.guide/feed.xml</id><title type="html">3DS Hacks Guide</title><subtitle>A complete guide to 3DS custom firmware</subtitle><author><name>Nintendo Homebrew</name></author></feed>
|
|
@ -486,12 +486,13 @@ window.cookieconsent.initialise({
|
||||||
<ul class="toc__menu" id="markdown-toc">
|
<ul class="toc__menu" id="markdown-toc">
|
||||||
<li><a href="#compatibility-notes" id="markdown-toc-compatibility-notes">Compatibility Notes</a></li>
|
<li><a href="#compatibility-notes" id="markdown-toc-compatibility-notes">Compatibility Notes</a></li>
|
||||||
<li><a href="#what-you-need" id="markdown-toc-what-you-need">What You Need</a> <ul>
|
<li><a href="#what-you-need" id="markdown-toc-what-you-need">What You Need</a> <ul>
|
||||||
<li><a href="#section-i---prep-work-source-3ds" id="markdown-toc-section-i---prep-work-source-3ds">Section I - Prep Work (source 3DS)</a></li>
|
<li><a href="#section-i---hardware-button-check-target-3ds" id="markdown-toc-section-i---hardware-button-check-target-3ds">Section I - Hardware Button Check (target 3DS)</a></li>
|
||||||
<li><a href="#section-ii---prep-work-target-3ds" id="markdown-toc-section-ii---prep-work-target-3ds">Section II - Prep Work (target 3DS)</a></li>
|
<li><a href="#section-ii---prep-work-source-3ds" id="markdown-toc-section-ii---prep-work-source-3ds">Section II - Prep Work (source 3DS)</a></li>
|
||||||
<li><a href="#section-iii---kartdlphax" id="markdown-toc-section-iii---kartdlphax">Section III - kartdlphax</a></li>
|
<li><a href="#section-iii---prep-work-target-3ds" id="markdown-toc-section-iii---prep-work-target-3ds">Section III - Prep Work (target 3DS)</a></li>
|
||||||
<li><a href="#section-iv---installing-menuhax67" id="markdown-toc-section-iv---installing-menuhax67">Section IV - Installing menuhax67</a></li>
|
<li><a href="#section-iv---kartdlphax" id="markdown-toc-section-iv---kartdlphax">Section IV - kartdlphax</a></li>
|
||||||
<li><a href="#section-v---installing-boot9strap" id="markdown-toc-section-v---installing-boot9strap">Section V - Installing boot9strap</a></li>
|
<li><a href="#section-v---unsafe_mode" id="markdown-toc-section-v---unsafe_mode">Section V - unSAFE_MODE</a></li>
|
||||||
<li><a href="#section-vi---removing-menuhax67" id="markdown-toc-section-vi---removing-menuhax67">Section VI - Removing menuhax67</a></li>
|
<li><a href="#section-vi---installing-boot9strap" id="markdown-toc-section-vi---installing-boot9strap">Section VI - Installing boot9strap</a></li>
|
||||||
|
<li><a href="#section-vii---restoring-wifi-configuration-profiles" id="markdown-toc-section-vii---restoring-wifi-configuration-profiles">Section VII - Restoring WiFi Configuration Profiles</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="#continue-to-finalizing-setup" id="markdown-toc-continue-to-finalizing-setup">Continue to Finalizing Setup</a></li>
|
<li><a href="#continue-to-finalizing-setup" id="markdown-toc-continue-to-finalizing-setup">Continue to Finalizing Setup</a></li>
|
||||||
|
@ -503,15 +504,15 @@ window.cookieconsent.initialise({
|
||||||
<details class="notice--info">
|
<details class="notice--info">
|
||||||
<summary><em>Technical Details (optional)</em></summary>
|
<summary><em>Technical Details (optional)</em></summary>
|
||||||
|
|
||||||
<p>In order to install custom firmware on our console, we need to get Homebrew Launcher access.</p>
|
<p>In order to exploit the SAFE_MODE firmware of our system, we need to inject an exploited WiFi profile.</p>
|
||||||
|
|
||||||
<p>To accomplish this, we can use the Download Play functionality of the game Mario Kart 7, using a 3DS with custom firmware already installed along with a custom game plugin.</p>
|
<p>To accomplish this, we can use the Download Play functionality of the game Mario Kart 7, using a 3DS with custom firmware already installed along with a custom game plugin.</p>
|
||||||
|
|
||||||
<p>This custom plugin will send a hacked payload to an unhacked console, which then exploits the system in order to inject menuhax67, which will allow us to get Homebrew Launcher access.</p>
|
<p>This custom plugin will send a hacked payload to an unhacked console, which then exploits the system in order to inject the exploited WiFi profile into your connections list.</p>
|
||||||
|
|
||||||
<p>Once we have Homebrew Launcher access, we can run nimdsphax to install boot9strap.</p>
|
<p>Once the WiFi profile has been injected, we will use SAFE_MODE, which is a recovery feature present on all 3DS consoles, to activate the exploited WiFi profile.</p>
|
||||||
|
|
||||||
<p>See <a href="https://github.com/PabloMK7/kartdlphax">here</a> for information about kartdlphax, <a href="https://github.com/zoogie/menuhax67">here</a> for information about menuhax67, and <a href="https://github.com/luigoalma/nimdsphax">here</a> for information about nimdsphax.</p>
|
<p>For a more technical explanation, see the following links for information on the kartdlphax and unSAFE_MODE exploits: <a href="https://github.com/PabloMK7/kartdlphax">kartdlphax</a>, <a href="https://github.com/zoogie/unSAFE_MODE/">unSAFE_MODE</a>.</p>
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
@ -534,14 +535,28 @@ window.cookieconsent.initialise({
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>The latest release of <a href="https://github.com/PabloMK7/kartdlphax/releases/latest">kartdlphax</a> (<code class="language-plaintext highlighter-rouge">plugin.3gx</code>)</li>
|
<li>The latest release of <a href="https://github.com/PabloMK7/kartdlphax/releases/latest">kartdlphax</a> (<code class="language-plaintext highlighter-rouge">plugin.3gx</code>)</li>
|
||||||
<li>The latest release of <a href="https://github.com/SciresM/boot9strap/releases/download/1.4/boot9strap-1.4.zip">boot9strap</a> (direct download)</li>
|
|
||||||
<li>The latest release of <a href="https://github.com/d0k3/SafeB9SInstaller/releases/download/v0.0.7/SafeB9SInstaller-20170605-122940.zip">SafeB9SInstaller</a> (direct download)</li>
|
<li>The latest release of <a href="https://github.com/d0k3/SafeB9SInstaller/releases/download/v0.0.7/SafeB9SInstaller-20170605-122940.zip">SafeB9SInstaller</a> (direct download)</li>
|
||||||
<li>The latest release of <a href="https://github.com/luigoalma/nimdsphax/releases/download/v1.0/nimdsphax_v1.0.zip">nimdsphax</a> (direct download)</li>
|
|
||||||
<li>The latest release of <a href="https://github.com/zoogie/menuhax67/releases/latest">menuhax67</a></li>
|
|
||||||
<li>The latest release of <a href="https://github.com/LumaTeam/Luma3DS/releases/latest">Luma3DS</a> (the Luma3DS <code class="language-plaintext highlighter-rouge">.zip</code> file)</li>
|
<li>The latest release of <a href="https://github.com/LumaTeam/Luma3DS/releases/latest">Luma3DS</a> (the Luma3DS <code class="language-plaintext highlighter-rouge">.zip</code> file)</li>
|
||||||
|
<li>The latest release of <a href="https://github.com/zoogie/unSAFE_MODE/releases/latest">unSAFE_MODE</a> (the RELEASE <code class="language-plaintext highlighter-rouge">.zip</code> file)</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h4 id="section-i---prep-work-source-3ds">Section I - Prep Work (source 3DS)</h4>
|
<h4 id="section-i---hardware-button-check-target-3ds">Section I - Hardware Button Check (target 3DS)</h4>
|
||||||
|
|
||||||
|
<p>In this section, you will see whether your shoulder buttons are working on your console. This will determine which method you will follow on the next page.</p>
|
||||||
|
|
||||||
|
<ol>
|
||||||
|
<li>Power on your console</li>
|
||||||
|
<li>Once you see the HOME Menu, press the (Left Shoulder) and (Right Shoulder) buttons at the same time
|
||||||
|
<ul>
|
||||||
|
<li>The camera applet should appear</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>Power off your console</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<p class="notice--warning">If the camera does not open, you cannot follow this method. If this is the case, join <a href="https://discord.gg/MWxPgEp">Nintendo Homebrew on Discord</a> and ask, in English, for help.</p>
|
||||||
|
|
||||||
|
<h4 id="section-ii---prep-work-source-3ds">Section II - Prep Work (source 3DS)</h4>
|
||||||
|
|
||||||
<p>In this section, you will set up your source 3DS (the 3DS with custom firmware) for delivery of the exploit data to the target 3DS.</p>
|
<p>In this section, you will set up your source 3DS (the 3DS with custom firmware) for delivery of the exploit data to the target 3DS.</p>
|
||||||
|
|
||||||
|
@ -563,34 +578,25 @@ window.cookieconsent.initialise({
|
||||||
<li>Eject the SD card and put it in the <strong>source 3DS</strong></li>
|
<li>Eject the SD card and put it in the <strong>source 3DS</strong></li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<h4 id="section-ii---prep-work-target-3ds">Section II - Prep Work (target 3DS)</h4>
|
<h4 id="section-iii---prep-work-target-3ds">Section III - Prep Work (target 3DS)</h4>
|
||||||
|
|
||||||
<p>In this section, you will set up the files that the target 3DS will need to install custom firmware.</p>
|
<p>In this section, you will copy the files needed to trigger the unSAFE_MODE exploit onto your target 3DS (the 3DS that you are trying to modify)’s SD card.</p>
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>Insert the SD card of your <strong>target 3DS</strong> in your computer</li>
|
<li>Insert the SD card of your <strong>target 3DS</strong> in your computer</li>
|
||||||
<li>Copy <code class="language-plaintext highlighter-rouge">boot.firm</code> and <code class="language-plaintext highlighter-rouge">boot.3dsx</code> from the Luma3DS <code class="language-plaintext highlighter-rouge">.zip</code> to the root of the <strong>target 3DS’s</strong> SD card</li>
|
<li>Copy <code class="language-plaintext highlighter-rouge">boot.firm</code> and <code class="language-plaintext highlighter-rouge">boot.3dsx</code> from the Luma3DS <code class="language-plaintext highlighter-rouge">.zip</code> to the root of the <strong>target 3DS’s</strong> SD card</li>
|
||||||
<li>Create a folder named <code class="language-plaintext highlighter-rouge">boot9strap</code> on the root of your SD card</li>
|
<li>Create a folder named <code class="language-plaintext highlighter-rouge">boot9strap</code> on the root of your SD card</li>
|
||||||
<li>Copy <code class="language-plaintext highlighter-rouge">boot9strap.firm</code> and <code class="language-plaintext highlighter-rouge">boot9strap.firm.sha</code> from the boot9strap <code class="language-plaintext highlighter-rouge">.zip</code> to the <code class="language-plaintext highlighter-rouge">/boot9strap/</code> folder on your SD card</li>
|
<li>Copy <code class="language-plaintext highlighter-rouge">boot9strap.firm</code> and <code class="language-plaintext highlighter-rouge">boot9strap.firm.sha</code> from the RELEASE <code class="language-plaintext highlighter-rouge">.zip</code> to the <code class="language-plaintext highlighter-rouge">/boot9strap/</code> folder on your SD card</li>
|
||||||
<li>Copy <code class="language-plaintext highlighter-rouge">SafeB9SInstaller.bin</code> from the SafeB9SInstaller <code class="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
|
<li>Copy <code class="language-plaintext highlighter-rouge">SafeB9SInstaller.bin</code> from the SafeB9SInstaller <code class="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
|
||||||
<li>Create a folder named <code class="language-plaintext highlighter-rouge">3ds</code> on the root of your SD card if it does not already exist
|
<li>Copy <code class="language-plaintext highlighter-rouge">usm.bin</code> from the RELEASE <code class="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
|
||||||
<ul>
|
<li>Create a folder called <code class="language-plaintext highlighter-rouge">3ds</code> on the root of your SD card</li>
|
||||||
<li>This folder stores homebrew applications and data; it is different from the <code class="language-plaintext highlighter-rouge">Nintendo 3DS</code> folder that the console automatically generates</li>
|
<li>Copy <code class="language-plaintext highlighter-rouge">slotTool.3dsx</code> from the <code class="language-plaintext highlighter-rouge">slotTool</code> folder inside the RELEASE <code class="language-plaintext highlighter-rouge">.zip</code> to the <code class="language-plaintext highlighter-rouge">/3ds/</code> folder on your SD card</li>
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>Copy the <code class="language-plaintext highlighter-rouge">nimdsphax</code> folder from the nimdsphax<code class="language-plaintext highlighter-rouge">.zip</code> to the <code class="language-plaintext highlighter-rouge">/3ds/</code> folder on your SD card</li>
|
|
||||||
<li>Copy <code class="language-plaintext highlighter-rouge">menuhax67_installer.3dsx</code> from the menuhax <code class="language-plaintext highlighter-rouge">.zip</code> to the <code class="language-plaintext highlighter-rouge">/3ds/</code> folder on your SD card</li>
|
|
||||||
<li>Copy Launcher.dat from the folder for your model and region inside the menuhax <code class="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
|
|
||||||
<li>Eject the SD card and put it in the <strong>target 3DS</strong></li>
|
<li>Eject the SD card and put it in the <strong>target 3DS</strong></li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<p class="notice--info"><img src="https://3ds.hacks.guide/images/screenshots/kart-root-layout.png" alt="" /></p>
|
<h4 id="section-iv---kartdlphax">Section IV - kartdlphax</h4>
|
||||||
|
|
||||||
<p class="notice--info"><img src="https://3ds.hacks.guide/images/screenshots/kart-3ds-layout.png" alt="" /></p>
|
<p>In this section, you will use Download Play to transfer the exploit data from the source 3DS to the target 3DS, which can be used to overwrite your Wi-Fi slots with hacked data. Your Wi-Fi connection settings will be temporarily overwritten while the exploit is active.</p>
|
||||||
|
|
||||||
<h4 id="section-iii---kartdlphax">Section III - kartdlphax</h4>
|
|
||||||
|
|
||||||
<p>In this section, you will use Download Play to transfer the exploit data from the source 3DS to the target 3DS, which can be used to install menuhax67, a Homebrew Launcher entrypoint. Your HOME Menu settings will be temporarily inaccessible on the target 3DS while this exploit is active.</p>
|
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>Power on the <strong>source 3DS</strong>
|
<li>Power on the <strong>source 3DS</strong>
|
||||||
|
@ -644,32 +650,45 @@ window.cookieconsent.initialise({
|
||||||
<li>If the exploit was not successful, power off the <strong>source 3DS</strong> and <strong>target 3DS</strong> and start again from the beginning of <code class="language-plaintext highlighter-rouge">Section III - kartdlphax</code></li>
|
<li>If the exploit was not successful, power off the <strong>source 3DS</strong> and <strong>target 3DS</strong> and start again from the beginning of <code class="language-plaintext highlighter-rouge">Section III - kartdlphax</code></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
<li>Press (X) to inject unSAFE_MODE</li>
|
||||||
|
<li>If the injection was successful, the screen will turn green and the <strong>target 3DS</strong> will automatically power off
|
||||||
|
<ul>
|
||||||
|
<li>If the screen turns red, power off the target 3DS and start again from the beginning of <code class="language-plaintext highlighter-rouge">Section III - kartdlphax</code>. If this doesn’t work, ask for help at <a href="https://discord.gg/MWxPgEp">Nintendo Homebrew on Discord</a>)</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<h4 id="section-iv---installing-menuhax67">Section IV - Installing menuhax67</h4>
|
<p class="notice--info">You will <strong>not</strong> need to use your <strong>source 3DS</strong> to complete any further steps on this guide. Any further steps should only be completed on the <strong>target 3DS</strong>.</p>
|
||||||
|
|
||||||
|
<h4 id="section-v---unsafe_mode">Section V - unSAFE_MODE</h4>
|
||||||
|
|
||||||
|
<p>In this section, you will enter Safe Mode (a feature available on all 3DS family consoles) and navigate to a menu where unSAFE_MODE will be triggered, which will launch you into the boot9strap (custom firmware) installer.</p>
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>Press (Y) + (D-Pad Down) to install menuhax67
|
<li>With your console still powered off, hold the following buttons: (Left Shoulder) + (Right Shoulder) + (D-Pad Up) + (A), and while holding these buttons together, power on your console
|
||||||
<ul>
|
<ul>
|
||||||
<li>The console will automatically power off</li>
|
<li>Keep holding the buttons until the console boots into Safe Mode (a “system update” menu)</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>Power on your console</li>
|
<li>Press “OK” to accept the update
|
||||||
<li>Tap on the small HOME Menu settings icon in the top left of the bottom screen (<img src="https://3ds.hacks.guide/images/homemenuicon.png" alt="" height="32px" width="52px" />)
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>If the console freezes for a while and then crashes, make sure you have Launcher.dat on the root of your SD card</li>
|
<li>There is no update. This is part of the exploit</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>If the exploit was successful, your console will have booted into the Homebrew Launcher</li>
|
<li>Press “I accept” to accept the terms and conditions</li>
|
||||||
<li>Launch nimdsphax from the list of homebrew</li>
|
<li>The update will eventually fail, with the error code <code class="language-plaintext highlighter-rouge">003-1099</code>. This is intended behaviour</li>
|
||||||
<li>If the exploit was successful, you will have booted into SafeB9SInstaller
|
<li>When asked “Would you like to configure Internet settings?”, select “Yes”</li>
|
||||||
|
<li>On the following menu, navigate to <code class="language-plaintext highlighter-rouge">Connection 1</code> -> <code class="language-plaintext highlighter-rouge">Change Settings</code> -> <code class="language-plaintext highlighter-rouge">Next Page (right arrow)</code> -> <code class="language-plaintext highlighter-rouge">Proxy Settings</code> -> <code class="language-plaintext highlighter-rouge">Detailed Setup</code> (<a href="/images/screenshots/usm/safemode_highlighted.png">image</a>)</li>
|
||||||
|
<li>If the exploit was successful, your console will have booted into SafeB9SInstaller
|
||||||
<ul>
|
<ul>
|
||||||
<li>If your console freezes on a red screen, hold the POWER button until it turns off, then try running menuhax again by powering on your console and tapping on the HOME Menu settings icon</li>
|
<li>If your console instead freezes on a white screen, hold the POWER button until it turns off, then retry this section</li>
|
||||||
|
<li>If your console instead freezes on a red screen, you are missing <code class="language-plaintext highlighter-rouge">usm.bin</code> from the root of your SD card</li>
|
||||||
|
<li>If you get a different error, <a href="troubleshooting#installing-boot9strap-usm">follow this troubleshooting guide</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<h4 id="section-v---installing-boot9strap">Section V - Installing boot9strap</h4>
|
<h4 id="section-vi---installing-boot9strap">Section VI - Installing boot9strap</h4>
|
||||||
|
|
||||||
<p>In this section, you will install custom firmware onto your console.</p>
|
<p>In this section, you will install custom firmware onto your console.</p>
|
||||||
|
|
||||||
|
@ -696,9 +715,9 @@ window.cookieconsent.initialise({
|
||||||
<li>On the next page, you will install useful homebrew applications to complete your setup.</li>
|
<li>On the next page, you will install useful homebrew applications to complete your setup.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h4 id="section-vi---removing-menuhax67">Section VI - Removing menuhax67</h4>
|
<h4 id="section-vii---restoring-wifi-configuration-profiles">Section VII - Restoring WiFi Configuration Profiles</h4>
|
||||||
|
|
||||||
<p>In this section, you will use the Homebrew Launcher to remove menuhax67, which will let you access the HOME Menu Settings option normally.</p>
|
<p>In this section, you will enter the Homebrew Launcher (using custom firmware) so that you can restore the Wi-Fi connection slots that were overwritten in Section I.</p>
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>Launch the Download Play application (<img src="https://3ds.hacks.guide/images/download-play-icon.png" alt="" height="24px" width="24px" />)</li>
|
<li>Launch the Download Play application (<img src="https://3ds.hacks.guide/images/download-play-icon.png" alt="" height="24px" width="24px" />)</li>
|
||||||
|
@ -717,9 +736,9 @@ window.cookieconsent.initialise({
|
||||||
<li>If your console is stuck on the loading splash screen, you are missing <code class="language-plaintext highlighter-rouge">boot.3dsx</code> from the root of your SD card</li>
|
<li>If your console is stuck on the loading splash screen, you are missing <code class="language-plaintext highlighter-rouge">boot.3dsx</code> from the root of your SD card</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>Launch menuhax67_installer from the list of homebrew</li>
|
<li>Launch slotTool from the list of homebrew</li>
|
||||||
<li>Select REMOVE menuhax67</li>
|
<li>Select “RESTORE original wifi slots 1,2,3”</li>
|
||||||
<li>When you see “done.”, press (A), then press (A) on “EXIT to menu”</li>
|
<li>Your console will then reboot</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
Loading…
Reference in a new issue