Update 51, 8/12/13 402.6MB - Shield Q&A

There is a new update out. Is there anything special we need to do to preserve root if we are rooted? I don't have CWM installed.
Would it be advisable to use OTA rootkeeper?
EDIT - OTA rootkeeper didn't work and root was lost. The update must wipe /system. I guess I'll have to try rooting when I get home again. Hopefully that remains the same. I didn't want to have to flash recovery and jump through hoops updating the Shield which is why I left the stock recovery on there... Oh well. Bootloader remains unlocked so I suppose it should be easy as entering the one fastboot line I used from Gnurou...
Edit 2 - Root using Gnurou's instructions worked.

Evo_Shift said:
There is a new update out. Is there anything special we need to do to preserve root if we are rooted? I don't have CWM installed.
Would it be advisable to use OTA rootkeeper?
EDIT - OTA rootkeeper didn't work and root was lost. The update must wipe /system. I guess I'll have to try rooting when I get home again. Hopefully that remains the same. I didn't want to have to flash recovery and jump through hoops updating the Shield which is why I left the stock recovery on there... Oh well. Bootloader remains unlocked so I suppose it should be easy as entering the one fastboot line I used from Gnurou...
Click to expand...
Click to collapse
I have an idea that might help keep root, let me check it out.
UPDATE
It won't work in this case. The update patches recovery and flashes a new boot.img
UPDATE2
If you have CWM Recovery installed, after flashing the update it will ask if you want to disable recovery flash and then if you want to root.

Yes, you will have to re-run the fastboot command after each OTA. Preserving root after an OTA would require a custom recovery (like CWM). I tried to apply this OTA with the version of CWM agrabren uploaded and it failed, so until this is fixed I guess the best thing to do it just re-root after each OTA

Gnurou said:
Yes, you will have to re-run the fastboot command after each OTA. Preserving root after an OTA would require a custom recovery (like CWM). I tried to apply this OTA with the version of CWM agrabren uploaded and it failed, so until this is fixed I guess the best thing to do it just re-root after each OTA
Click to expand...
Click to collapse
Did it fail with status 7?
EDIT
It would have (failed with status 7) agrabren called the shield thor in his recovery and nvidia called it roth in the update. So the update was expecting roth for the device name and got thor.
Thats why it worked for me because i renamed it roth when i modded the recovery.
IF agrabren complains I will remove the link but for now.
Modded version is here
The ota zip is here

Related

Still get OTAs while having ROOT?

If I root the latest stock 4.4.2, will I still be able to get future OTA Updates without braking the root or custom recovery, well if root gets lost I can always root it again. Just asking, maybe I won't be able to get OTA Updates at all after rooting but I don't know so that's why I'm asking it here.
KuGeL94 said:
If I root the latest stock 4.4.2, will I still be able to get future OTA Updates without braking the root or custom recovery, well if root gets lost I can always root it again. Just asking, maybe I won't be able to get OTA Updates at all after rooting but I don't know so that's why I'm asking it here.
Click to expand...
Click to collapse
Yes!
SWTR said:
Yes!
Click to expand...
Click to collapse
Indeed.
KuGeL94 said:
If I root the latest stock 4.4.2, will I still be able to get future OTA Updates without braking the root or custom recovery, well if root gets lost I can always root it again. Just asking, maybe I won't be able to get OTA Updates at all after rooting but I don't know so that's why I'm asking it here.
Click to expand...
Click to collapse
The OTA will download but not install. You need stock recovery AND any system file that is updated by the OTA needs to be stock as well otherwise OTA install will fail.
Plenty of threads on XDA speak of this.
If you look at the OTA updater file you will see if uses MD5 (or similar) to check each system file it updates to make sure its as it was originally.
When you root it alters some system files.
Best thing is to install custom recovery and take a backup before rooted. Then root. When you get an OTA just restore backup and flash stock recovery. Then OTA will re-download. Let it install, then flash custom recovery and re-root.
Thanks, well I'll just stay unrooted and make the best out of it, the Moto G is just as amazing as Motorola developed it to be.
No stock recovery it's no need. I updated last ota with Philz recovery without problems.
denzel09 said:
No stock recovery it's no need. I updated last ota with Philz recovery without problems.
Click to expand...
Click to collapse
Do you mean you downloaded OTA and flashed manually via recovery. You can do that I agree, but what you can't do is let OTA install naturally the way Motorola intended.
No. I had Philz recovery. System stock partition. Downloaded ota normally, reboot like ota update ask, phone reboots in philz recovery and this last flash ota automatically without any problem. There is not need to reflash stock recovery or flash ota update manually with custom rec, only need a non root stock system partition. I dont know if stock cwm or other rec like twrp work in same way but i doubt, always used only philz recovery.
You do not need stock recovery, I don't know who made this stupid rumour up. I use twrp and it flashes fine.
Sent from my Google Nexus G -

[Q] Will I keep root after OTA?

I just got my Shield Tablet and rooted it. I keep getting two OTA notifications, one says ROM Update the other says Tegra Update. Will I keep root of I do the OTA updates?
I'd like to get a recovery added, but it seems that all the recoveries are incomplete. Is there a method to install recovery without a separate computer?
DFA1 said:
I just got my Shield Tablet and rooted it. I keep getting two OTA notifications, one says ROM Update the other says Tegra Update. Will I keep root of I do the OTA updates?
I'd like to get a recovery added, but it seems that all the recoveries are incomplete. Is there a method to install recovery without a separate computer?
Click to expand...
Click to collapse
You can try the paid version of SuperSU to preserve root or the THT Rootkeeper (the other big root keeper doesn't work past 4.2) If you update the device to the official OTA, you will need a PC to reflash the recovery but you will not need to unlock the bootloader again.
NapalmDawn said:
You can try the paid version of SuperSU to preserve root or the THT Rootkeeper (the other big root keeper doesn't work past 4.2) If you update the device to the official OTA, you will need a PC to reflash the recovery but you will not need to unlock the bootloader again.
Click to expand...
Click to collapse
yup, lost root but it's okay, lollipop was awful so unlocked, reflashed previous ota, rerooted. Thanks

Can't update with OTA zip.

I'm on the XT1540 and I got my OTA notification and went back to stock recovery (still rooted and unlocked bootloader) but it fails halfway through flashing everytime. I reflashed TWRP and captured the OTA into a zip but get an error about updating binary or something when flashing it. Is there something I need to delete from the OTA zip to allow it to flash in twrp?
Sent from my MotoG3 using xda premium
You cannot update your systems software using the OTA update if you are rooted and have modified the system in any way as there are checks of original system during the auto update over the OTA. This means having the original recovery too. Wont work on TWRP or CWM. So no root and no custom recovery for OTA. Unlocked bootloader is okay.
In case you want to try the OTA update then what I have noticed on my XT1550 dual sim APAC version is that even unrooting it using the SuperSu unroot option is not going to help. In my case I could download the OTA and waited till it replaced the system software but got stuck midway of the boot animation.
I had to flash the 23.72-33 version of the stock ROM and opt for the OTA update. This time though I was successful.
Hope this info helps.
Yes, what arunhebbare says. you need to back up al your data and restore your stock firmware and than update via ota.
that is the best way of doing it
HelpMeruth said:
Yes, what arunhebbare says. you need to back up al your data and restore your stock firmware and than update via ota.
that is the best way of doing it
Click to expand...
Click to collapse
This...do a full factory image restore, then adb sideload the ota file. It's signed. TWRP can't install it.
Just use fastboot to flash the factory image for the version you want ... screw wiping your user partition like the above recommends.
nikon120 said:
Just use fastboot to flash the factory image for the version you want ... screw wiping your user partition like the above recommends.
Click to expand...
Click to collapse
This...I can't understand, for the life of me, why everyone is wiping userdata with fastboot....that wipes your android data, and internal storage in one shot. Cache erasing is another totally unnecessary step. All that's necessary, at the most, is a factory reset with TWRP to wipe the android data and both caches....but even that shouldn't technically be necessary for an update like this. It's not like this is the marshmallow update!!
arunhebbare said:
You cannot update your systems software using the OTA update if you are rooted and have modified the system in any way as there are checks of original system during the auto update over the OTA. This means having the original recovery too. Wont work on TWRP or CWM. So no root and no custom recovery for OTA. Unlocked bootloader is okay.
In case you want to try the OTA update then what I have noticed on my XT1550 dual sim APAC version is that even unrooting it using the SuperSu unroot option is not going to help. In my case I could download the OTA and waited till it replaced the system software but got stuck midway of the boot animation.
I had to flash the 23.72-33 version of the stock ROM and opt for the OTA update. This time though I was successful.
Hope this info helps.
Click to expand...
Click to collapse
@arunhebbare I've got the APAC version of the G3 as well, which ROMs are you flashing? I could only find images of the India version, did you use those?

[Guide] XT1575 Update To NPH25.200-22 Nougat After Modifying Your System & Re-Root

[Guide] XT1575 Update To NPH25.200-22 Nougat After Modifying Your System & Re-Root
THIS GUIDE IS NOW DEPRECATED. THERE IS NO NEED ANYMORE TO GO THROUGH THE UPDATING PROCESS AS THERE IS A FULL NOUGAT FACTORY IMAGE AVAILABLE (Build NPH25.200-22). FIRMWARE AVAILABLE HERE: https://forum.xda-developers.com/moto-x-style/general/xt1575-moto-x-pure-edition-factory-t3704142 BE SURE TO THANK @acejavelin FOR TRACKING DOWN THE FIRMWARE PACKAGE FOR US.
Notes:
-YOU ATTEMPT THIS AT YOUR OWN RISK IF YOU FLASHED ANY FIRMWARE PREVIOUSLY NOT FOR THE XT1575 US VERSION
-This guide will have 2 parts. 1 for those that kept their systems read only/systemless, and 1 for those that did not.
-Whether you live booted TWRP or Installed TWRP, if you chose to allow system modifications your OTA will likely fail (you'll need part 2).
-Restoring a TWRP backup will not work and will cause an OTA to fail due to having to allow system write access in TWRP - You Need Part 2.
-This guide assumes you have basic ADB knowledge and already know what fastboot is and how it works.
-Thanks to @gokart2 for the OTA and @acejavelin for the return to stock guides
Part 1: Those That Tweaked Systemlessly Currently On 24.49-18-16 (Will only work if you kept TWRP read only/used systemless root):
1: Disable & Remove systemless Xposed within Magisk Manager and all other Magisk modules. Reboot and wait for Art cache to rebuild.
2: Remove any adblock hosts within your adblock app if installed, or any other root level system altering apps like Greenify (don't worry, you'll get them back).
3: Remove Magisk by booting into TWRP and flashing the current Magisk Removal zip. Reboot.
4: For systemless SuperSu you need to consult their thread as I do not use it. (I'll update this if someone knows the correct process).
5: ADB reboot bootloader and fastboot flash the stock recovery. Latest MM recovery links at the bottom of this post. (rename file to recovery.img).
6: Move the OTA Blur_Version.24.231.16.clark_retus.retus.en.US.zip to the root of your internal sd card (NOT in a folder). File links at the bottom of the post. Thanks @gokart2
7: ADB reboot recovery, when "no command" is listed, hold power + tap volume up then release to access recovery options. Choose "apply update from phone storage". Choose the file and wait for the flash. It's a large update so be patient (about 10-20min). Choose reboot manually in recovery after flash succeeds. Enjoy Nougat!
8: For root you can go ahead and flash TWRP again or live boot TWRP (fastboot boot twrp.img) and then flash Magisk 14.0 from TWRP. Works perfectly.
Part 2: Those That Have Done Everything - TWRP Write Access, Custom Roms, On Older Firmware, Etc (XT1572 Build Flashers Do This At Their Own Risk):
1: Flash the latest full factory image available (24.49-18-8) available here: https://forum.xda-developers.com/mo...de-return-to-stock-relock-bootloader-t3489110. Thank @acejavelin for the thread while your at it. Follow the directions in that guide, it's well detailed and accurate - however read my notes just below first:
NOTES:
-Omit the "fastboot oem lock begin" & "fastboot oem lock" commands to remain bootloader unlocked.
-Omit the "fastboot erase userdata" command if you want to dirty flash and keep all of your data. I recommend clean, you can always root & restore each apps data with Titanium after the Playstore installs everything.
-The "fastboot oem fb_mode_set" instead of "fastboot oem lock begin" & "fastboot oem fb_mode_clear" instead of "fastboot oem lock" I've found to be unnecessary if staying unlocked. Your choice.
-The "fastboot flash partition gpt.bin" & "fastboot flash bootloader bootloader.img" commands will likely fail due to version mismatches. This is ok.
-The "fastboot flash modem NON-HLOS.bin" tends to fail too. For this, just run the command again until it succeeds.
2: After flashing 24.49-18-8 take the OTA to 24.49-18-16. Reboot. OTA zip provided below if you prefer to sideload.
3: Either install the 7.0 OTA the normal way via the update center or just side load it using the directions above. I recommend side loading due to the file size being very close to 1GB.
4: For root you can go ahead and flash TWRP again or live boot TWRP (fastboot boot twrp.img) and then flash Magisk 14.0 from TWRP. Works perfectly!
For Xposed, See My Guide Here: https://forum.xda-developers.com/showpost.php?p=74014516&postcount=96
Stock MM 24.49-18-16 Recovery: https://mega.nz/#!aZpC2RzQ!Fy3GTo_XYPjB1lwuHffCUUERuvnsyvON3kS8kMJ9Cm8
Stock MM 24.49-18-16 Recovery Mirror: https://drive.google.com/file/d/0BxxRfNko9QDKNS1NdnAyZVp6dVU/view?usp=sharing
24.49-18-8 OTA to 24.49-18-16: https://mega.nz/#!yZx2FLzR!cWfKIAYe5VyuadLI55UNHJvwWU98CXUi1g0DO1pDoKg
NPH25.200-22 OTA: https://mega.nz/#!HVhWWLxK!h-8G3vO3Sye_YwypyIJyWb2_79Ow34vNiDnMl2Q8uJg
NPH25.200-22 OTA Mirror: https://drive.google.com/file/d/0B3gPYUZ4nRLwOHJKQnNYczNEMHc/view?usp=sharing
MD5 for NPH25.200-22 OTA: 74d1a4b135200661cc4efd248f99ce33
Stock 7.0 NPH25.200-22 Recovery: https://mega.nz/#!TNoHQAjI!5U2w4p_G7pHlW6Mak7LqFR_PeWUDpSLc7S3OiUs_Qf8
Alrighty. I got back to stock 6.0 with the 18-16 update. I couldn't get the OTA via the system update, so I tried doing it via ADB. That threw up a "status 7 error". I then copied the file to my internal storage and selected update via SD Card in recovery. It hung on "Patching System Files" for a while, but in the end it moved on and worked fine. Thanks for the awesome guide!
Thread updated with downloads for the 24.49-18-8 OTA to 24.49-18-16 zip.
I exctracted the 7.0 Stock recovery to replace if you decide to flash TWRP and want to go back to the stock recovery for future updates (HAHAHA yeah right!). Download link in OP. The 7.0 Recovery is different than the MM recovery. They are not interchangeable. Don't flash the 7.0 recovery on MM.
Question... can those of us who are rooted, custom roms, with TWRP, not just flash a stock unrooted TWRP backup from here: https://forum.xda-developers.com/moto-x-style/development/pure-firmware-tuff-wip-t3224833
Then, flash the stock recovery like it says... and take the update? Isn't that easier than this method?
Bwangster12 said:
Question... can those of us who are rooted, custom roms, with TWRP, not just flash a stock unrooted TWRP backup from here: https://forum.xda-developers.com/moto-x-style/development/pure-firmware-tuff-wip-t3224833
Then, flash the stock recovery like it says... and take the update? Isn't that easier than this method?
Click to expand...
Click to collapse
It probably won't work. Once TWRP is given write access to your system (which is required to flash a full rom or restore a backup) any OTA's will fail. Plus any modem/bluetooth mismatches will cause a failure too. Fastboot flashing a stock image is really very easy & pretty much a guarantee that everything will work properly. However, if your able to get it to work, please let us know...though I don't think it will.
annoyingduck said:
It probably won't work. Once TWRP is given write access to your system (which is required to flash a full rom or restore a backup) any OTA's will fail. Plus any modem/bluetooth mismatches will cause a failure too. Fastboot flashing a stock image is really very easy & pretty much a guarantee that everything will work properly. However, if your able to get it to work, please let us know...though I don't think it will.
Click to expand...
Click to collapse
Once I do this, I can just reinstall TWRP and Magisk, backup the stock 7.0 and if I ever decided, just flash a custom rom later on?
hey thanks for the help on this one. I was so worried because I got stuck on th May security update OTA-wise.
question: I messed with the LatAm version of Nougat, so when I tried to re-lock the bootloader, it game the preflash error.
After this proper update flash, is there a way to run the bootloader CMD to just re-lock the bootloader?
Here's the recovery before the 7.0 one, just incase.. Was bored. Ok, I won't lie....didn't see u posted the 7.0 recovery....lol.:good::highfive:
Bwangster12 said:
Once I do this, I can just reinstall TWRP and Magisk, backup the stock 7.0 and if I ever decided, just flash a custom rom later on?
Click to expand...
Click to collapse
Yup. TWRP flashes and works, magisk v14 works, and so far systemless xposed api24 is working.
EsteBandido4444 said:
hey thanks for the help on this one. I was so worried because I got stuck on th May security update OTA-wise.
question: I messed with the LatAm version of Nougat, so when I tried to re-lock the bootloader, it game the preflash error.
After this proper update flash, is there a way to run the bootloader CMD to just re-lock the bootloader?
Click to expand...
Click to collapse
What is everyone's fascination with relocking the bootloader? You do not need to relock your bootloader. You cannot relock the bootloader unless all your system partitions match. Use my part 2 section. Read the notes, skip the bootloader lock commands. Leave your bootloader unlocked, get up and running on nougat, then you can issue the lock commands if you really want a locked bootloader.
How exactly do you flash the 24.49-18-16 OTA? I'm stuck at this part
EDIT nevermind didn't read lol
Amp699435 said:
How exactly do you flash the 24.49-18-16 OTA? I'm stuck at this part
Click to expand...
Click to collapse
Copy the file to the root of your internal storage. Reboot into recovery. Hold power = volume up & release to access menu options. Choose apply update from storage. Select the OTA.zip package and let it install. (Directions are clearly written in OP.)
Does it matter which version you're on? I'm currently on MPSH24.49-18-4 with the May 2016 security update.
GrandAdmiral said:
Does it matter which version you're on? I'm currently on MPSH24.49-18-4 with the May 2016 security update.
Click to expand...
Click to collapse
Part 1 implies that you are on MPSH24.49-18-16 (dec), for part 2 - no it doesn't matter. Go ahead and start with the full firmware available MPSH24.49-18-8 and follow the steps from there.
annoyingduck said:
Part 1 implies that you are on MPSH24.49-18-16 (dec), for part 2 - no it doesn't matter. Go ahead and start with the full firmware available MPSH24.49-18-8 and follow the steps from there.
Click to expand...
Click to collapse
Ok. Was going to have to follow option two anyway because of how I rooted...
Now I also take it that flashing Magisk is recommended, but optional?
GrandAdmiral said:
Ok. Was going to have to follow option two anyway because of how I rooted...
Now I also take it that flashing Magisk is recommended, but optional?
Click to expand...
Click to collapse
Root is completely up to you. It's noted so users know that TWRP/Root are working. My logic with any XDA thread is that your bootloader is unlocked and you want root, but that's me...
annoyingduck said:
Root is completely up to you. It's noted so users know that TWRP/Root are working. My logic with any XDA thread is that your bootloader is unlocked and you want root, but that's me...
Click to expand...
Click to collapse
Gotcha. I know I'm going to root again, but I've never used Magisk before so I wasn't sure of that piece.
annoyingduck said:
Part 1 implies that you are on MPSH24.49-18-16 (dec), for part 2 - no it doesn't matter. Go ahead and start with the full firmware available MPSH24.49-18-8 and follow the steps from there.
Click to expand...
Click to collapse
I am running Dirty Unicorns right now and when i looked up what I'm on in fastboot, it showed MPSH24.49-18-16. Would I just follow part 2 and use MPSH24.49-18-8 or something? I thought I had to use at least the version I'm on or newer.
GrandAdmiral said:
Does it matter which version you're on? I'm currently on MPSH24.49-18-4 with the May 2016 security update.[/QUOTE
Your issue is that TWRP has modified your
System, any restoring of the stock rom will fail to update. So yes, you'll need to go through part 2 and downgrade and work your way back up.
Click to expand...
Click to collapse
I downloaded the zip (it took a while).
Restored to stock like 3 different ways but still hit a road block. I went the adb sideload route but got status error 7 because my build fingerprint wasn't correct. I tried searching for the right build I need, but I'm not an expert and couldn't find the right set of files that I was sure I knew how to restore. I ended up restoring my AICP backup.
If somebody could PM me and give me a hand (messaging through Hangouts or something) that would be AWESOME!
I'm planning trying to snag an XL 2 pre-order next week, but until then the less headache the better! Plus stock Nougat looks better on a Swappa listing
Trying to sideload via recovery 24.49-18-16 but I keep getting "("unexpected contents:EMMC:/dev/block/bootdevice/by-name/boot...". I've also tried installing from the phone but the same error appears in recovery. Any ideas?

Help with Sideload, installs

Unlocked, Magisk-rooted, TWRP 3.1.1 beta working. Updated from .010 to .018 to get rid of "System Update" notice that failed to install, but I had to "flash-all" factory image as I could NOT get .018 OTA image to sideload. Failed immediately.
Cannot sideload .011 (8.1) OTA image, tried with all versions of TWRP. Fails immediately.
And, TWRP 3.2 will both sideload and zip-install from 3.1.1 beta, but after reboot, I'm back to beta.
Please tell me what I'm missing: any help appreciated. TIA
You might try using flashfire to install the ota.zip image. It's worked for me on other rooted phones.
neuron617 said:
Unlocked, Magisk-rooted, TWRP 3.1.1 beta working. Updated from .010 to .018 to get rid of "System Update" notice that failed to install, but I had to "flash-all" factory image as I could NOT get .018 OTA image to sideload. Failed immediately.
Cannot sideload .011 (8.1) OTA image, tried with all versions of TWRP. Fails immediately.
And, TWRP 3.2 will both sideload and zip-install from 3.1.1 beta, but after reboot, I'm back to beta.
Please tell me what I'm missing: any help appreciated. TIA
Click to expand...
Click to collapse
- Uninstall Magisk to unroot
- Flash the system.img and boot.img from whatever version/factory image you're on to confirm you are stock (this should also uninstall twrp if you went with the install method over the temp boot)
- Then follow the instructions on Google's OTA page (download OTA, boot into Stock Android Recovery, hold power and press volume up, select Apply update from ADB to sideload OTA)
- Flash custom kernel if desired (via fastboot, I'm using Flash Kernel), temp boot twrp and sideload Magisk (14.3 worked for me with 8.1)
foosion said:
You might try using flashfire to install the ota.zip image. It's worked for me on other rooted phones.
Click to expand...
Click to collapse
Thanks; I'll check it out.
Ra6idr0y said:
- Uninstall Magisk to unroot
- Flash the system.img and boot.img from whatever version/factory image you're on to confirm you are stock (this should also uninstall twrp if you went with the install method over the temp boot)
- Then follow the instructions on Google's OTA page (download OTA, boot into Stock Android Recovery, hold power and press volume up, select Apply update from ADB to sideload OTA)
- Flash custom kernel if desired (via fastboot, I'm using Flash Kernel), temp boot twrp and sideload Magisk (14.3 worked for me with 8.1)
Click to expand...
Click to collapse
Thanks for confirming what I was coming to suspect: have to unroot and ditch TWRP to move ahead. I appreciate this.
What is point of "systemless" root, however, if you have to unroot to get OTA update?
neuron617 said:
Thanks for confirming what I was coming to suspect: have to unroot and ditch TWRP to move ahead. I appreciate this.
What is point of "systemless" root, however, if you have to unroot to get OTA update?
Click to expand...
Click to collapse
Systemless root shouldn't change anything on the system partition. All changes are made to the kernel. Note that when rooting with Magisk you provided a boot.img rather than the system.img. the suggestion to reflash the system image is to nuke any changes you may have made to it. An OTA will fall off you have done any tinkering.
Unrooting should be as simple as restoring the original boot image.
Sent from my Pixel 2 using Tapatalk
PiousInquisitor said:
Systemless root shouldn't change anything on the system partition. All changes are made to the kernel. Note that when rooting with Magisk you provided a boot.img rather than the system.img. the suggestion to reflash the system image is to nuke any changes you may have made to it. An OTA will fall off you have done any tinkering.
Unrooting should be as simple as restoring the original boot image.
Sent from my Pixel 2 using Tapatalk
Click to expand...
Click to collapse
Ahhh... I really appreciate that clarification.
Y'all are the best: @ foosion, @ Ra6idr0y, @PiousInquisitor
Many thanks and Happy Holidays!

Categories

Resources