[Q] Need Help Downgrading from 4.4 to 4.3 [SOLVED] - T-Mobile HTC One (M7)

So yesterday I decided to go ahead and flash the OTA update to 4.4. After messing around with it for a little bit I decided I wanted to go back to 4.3. My device is rooted, unlocked and I do have S – off.
So I decided to try to run the RUU for 4.3 but it failed with error 155. Does anybody know if this has anything to do with the fact that HBOOT was updated to 1.56?
Also I have a decrypted 4.3 stock T-Mobile ROM but when I try to use fast boot to erase system I receive the message remote not allowed. Can anybody help me out here?

Mark112887 said:
So yesterday I decided to go ahead and flash the OTA update to 4.4. After messing around with it for a little bit I decided I wanted to go back to 4.3. My device is rooted, unlocked and I do have S – off.
So I decided to try to run the RUU for 4.3 but it failed with error 155. Does anybody know if this has anything to do with the fact that HBOOT was updated to 1.56?
Also I have a decrypted 4.3 stock T-Mobile ROM but when I try to use fast boot to erase system I receive the message remote not allowed. Can anybody help me out here?
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=1655832

Mikey said:
http://forum.xda-developers.com/showthread.php?t=1655832
Click to expand...
Click to collapse
Thank you very much for the link Mikey but it did not help. I ended up fixing the problem myself. As it turns out the problem was caused by the fact that my version of H boot was 1.56 and the version in the T-Mobile 4.3 RUU was 1.55, that was the reason I was unable to restore. Luckily I was able to find an OTA update zip for 4.3, once I found that I was able to extract the firmware.zip file and flash it to my device because I had S – off. Once I had the correct version of H boot that corresponded with the version that was in the RUU I was able to flash back to 100% stock with no issues whatsoever.
Nobody informed me that the 4.4 OTA contained an update to H boot because well I guess nobody knew but hopefully now that information can be passed around. The other piece of information that I would like people to know is that rumrunner still works on 1.56.
Anyway my issue is now solved so I will go ahead and mark the thread accordingly

Related

[Q] Updating firmware with RUU - Recommended or no big deal

So i just got my One yesterday and it still has the .7 firmware / rom on it. I am going to root it and s-off right now, but just wondering a couple things.
1. Can or should i use an ruu to update the firmware to the more recent versions?
2. If yes, will this make me lose root or s-off? (i would imagine root would be easy enough to get back as long as i still have s-off)
thanks!!
At the moment, unless the situation has changed, there isn't an RUU for the TMo HTC One. One was released the other day, but it didn't work and HTC pulled the download. For now, I'd wait a couple of days to see if they release a fixed version. Your only other option would be to flash the .ZIP with the updated radio after going S-OFF.
Sisyphus306 said:
At the moment, unless the situation has changed, there isn't an RUU for the TMo HTC One. One was released the other day, but it didn't work and HTC pulled the download. For now, I'd wait a couple of days to see if they release a fixed version. Your only other option would be to flash the .ZIP with the updated radio after going S-OFF.
Click to expand...
Click to collapse
Ah.. ok. That makes sense. I downloaded one that was labeled for TMO, but i will just wait until it all gets sorted out. I am not to concerned about the radio, those are always easy to flash. Was wondering if there was anything else in the firmware i needed (like when the one s got jellybean there was WIFI partitions that needed to get flashed for everything to work properly)
For anyone else that is searching for this answer, here is what i ended up doing and it worked well.
My phone came with the .7 build install (this was the very first build before any updates). I rooted, and went s-off BEFORE ANY OTA's we taken. At this point i still had the original stock rom, it was just rooted. Since I always like to at least try the newest firmware out (cause you never know what benefits it may have) I flashed the STOCK TMO recovery back onto the phone.
Now you can boot into your OS, and go through the normal OTA process that you would get in any unrooted rom. Once those updates are complete you will be on the latest firmware and ROM from TMO, but no root access. Since you still are S-OFF, you have no problems here, flash TWRP back on (or CWM, i prefer TWRP) and flash whatever you want.
Hope that helps someone else that may be looking for the same answers.
frettfreak said:
For anyone else that is searching for this answer, here is what i ended up doing and it worked well.
My phone came with the .7 build install (this was the very first build before any updates). I rooted, and went s-off BEFORE ANY OTA's we taken. At this point i still had the original stock rom, it was just rooted. Since I always like to at least try the newest firmware out (cause you never know what benefits it may have) I flashed the STOCK TMO recovery back onto the phone.
Now you can boot into your OS, and go through the normal OTA process that you would get in any unrooted rom. Once those updates are complete you will be on the latest firmware and ROM from TMO, but no root access. Since you still are S-OFF, you have no problems here, flash TWRP back on (or CWM, i prefer TWRP) and flash whatever you want.
Hope that helps someone else that may be looking for the same answers.
Click to expand...
Click to collapse
Would you mind linking the T-mobile stock recovery that you flashed? I'm in about the same situation you were in.
FYI, there is a working TMOUS RUU available now, you can download it through the following link. I downloaded it yesterday and used it last night, I can confirm it works.
http://forum.xda-developers.com/showpost.php?p=43963285&postcount=9

AT&T 4.4.2 update solution

These are the steps i took to get the Kit Kat update.
I couldnt get the update OTA like most people and i was completely stock.
So if you are in a similar position these steps may help.
DO AT YOUR OWN RISK!
1. Unlock your bootloader and get root access. I did by following these instructions from this video.
Credits goes to sakitech.
https://www.youtube.com/watch?v=kJYAS2KN17Y&feature=youtu.be
2. Gain S-OFF by following these instructions from this video.
Credits goes to sakitech.
https://www.youtube.com/watch?v=NeFwsqU4YL4
3. After you have completed these steps successfully head over to @clsA thread and download the AT&T 4.4.2 OTAPkg.zip and the
stock Recovery_Cingular_US_3.17.502.3.img. Link to the thread http://forum.xda-developers.com/showthread.php?t=2659374
4. Place the downloaded .zip on the root your phone storage.
5. follow the steps in @clsA post and flash Recovery_Cingular_US_3.17.502.3.img via fastboot.
6. Navigate to recovery from fastboot on your HTC ONE. If you see "Mount SDCard failed" ignore it. goto to phone storage and locate the update.zip and flash it.
Click to expand...
Click to collapse
this worked for me, it should also work for anyone else.
ALL CREDITS goes to the creator of the video - sakitech and Senior Member here on xda clsA
Click to expand...
Click to collapse
r3al_0g said:
These are the steps i took to get the Kit Kat update.
I couldnt get the update OTA like most people and i was completely stock.
So if you are in a similar position these steps may help.
DO AT YOUR OWN RISK!
this worked for me, it should also work for anyone else.
Click to expand...
Click to collapse
So am I the only person who went into settings and Clicked AT&T update and got the 4.4.2 update that way. I have never had a phone in all my life tell me an update was ready. I always had to check manually about once or twice a week out of boredom. Did the same with my ONE last week and sure enough there was an update and it downloaded and installed fine.
Solarenemy68 said:
So am I the only person who went into settings and Clicked AT&T update and got the 4.4.2 update that way. I have never had a phone in all my life tell me an update was ready. I always had to check manually about once or twice a week out of boredom. Did the same with my ONE last week and sure enough there was an update and it downloaded and installed fine.
Click to expand...
Click to collapse
i have been clicking the check for update link at least 10 times a day since the update was released and i didnt get it ota i had to do it manually
If you're stock, you should be able to get the update just by changing the date. I brought my phone back to stock (3.17.502.3) then just kept hitting Software Update. If it didn't update, advance the date and try again. After a few date changes, the update was offered.
chp said:
If you're stock, you should be able to get the update just by changing the date. I brought my phone back to stock (3.17.502.3) then just kept hitting Software Update. If it didn't update, advance the date and try again. After a few date changes, the update was offered.
Click to expand...
Click to collapse
ok thanks for the info.. ill add it to the post if its not a prob
r3al_0g said:
These are the steps i took to get the Kit Kat update.
I couldnt get the update OTA like most people and i was completely stock.
So if you are in a similar position these steps may help.
DO AT YOUR OWN RISK!
this worked for me, it should also work for anyone else.
Click to expand...
Click to collapse
Will it work if you are running a custom recovery like TWRP?
ExcelonGT said:
Will it work if you are running a custom recovery like TWRP?
Click to expand...
Click to collapse
Custom recovery won't work.. U will have to b on stock 4.3 and S-OFF with stock recovery thats mentioned above..
Sent from my LG-D801 using Tapatalk
r3al_0g said:
Custom recovery won't work.. U will have to b on stock 4.3 and S-OFF with stock recovery thats mentioned above..
Sent from my LG-D801 using Tapatalk
Click to expand...
Click to collapse
Anyone know if there are issues with S-Off and rooting since the update? I am 100% stock, non rooted, never installed a rom. Its been stock since the day I got it. I planned on getting the AT&T update to 4.4.2, rooting, making an update then testing some roms.
I know with other phones the update screwed some things up so I didn't know if rooting/s-off were an issue since the update.
Thanks ll!
Edit:
nevermind...found it: http://forum.xda-developers.com/showthread.php?t=2663122
So what exactly do we need to get OTA?
Stock recovery, android 4.3, locked bootloader?
I have all that, and still not finding an OTA update. Manually looking for the update, and I'm just not getting it.
lettuceman44 said:
So what exactly do we need to get OTA?
Stock recovery, android 4.3, locked bootloader?
I have all that, and still not finding an OTA update. Manually looking for the update, and I'm just not getting it.
Click to expand...
Click to collapse
unlocked bootloader, stock 4.3 and s-off, stock recovery.. download the ota place it on ur phone reboot into recovery and flash it.. that worked for me
r3al_0g said:
unlocked bootloader, stock 4.3 and s-off, stock recovery.. download the ota place it on ur phone reboot into recovery and flash it.. that worked for me
Click to expand...
Click to collapse
Oh, I meant from at&t over the air. I feel like I'm missing something, so trying to find out what the ota requirements are.
I can't flash it yet, I only have a windows 8.1 computer with usb 3.0 ports. Fastboot doesn't work.
lettuceman44 said:
Oh, I meant from at&t over the air. I feel like I'm missing something, so trying to find out what the ota requirements are.
I can't flash it yet, I only have a windows 8.1 computer with usb 3.0 ports. Fastboot doesn't work.
Click to expand...
Click to collapse
@chp recommend advancing your date and try and see if the update comes through. Try it a few times and see if it will work for you also
Sent from my LG-D801 using Tapatalk
Tried that with no luck. Had to do a factory reset because I went to far, and my OTA check was in -300 hours.
You guys are forgetting that to be able to update the OTA, you need to have an ACTIVE at&t sim card inserted to your phone. I think this is the reason for all the confusion around since not everybody lives in the US
Downgrade to 4.3
OK, so I was able to upgrade but now I messed it up trying to patch default.xml. :crying:
I am trying to revert to the 4.3 with RRU but I get error 155.
I am S-Off, HBOOT 1.56.
I tried with bootloader re-locked, unlocked, locked. I tried with stock recovery and with ClockWM recovery both locked and unlocked.
I also tried to re-apply the patch with stock recover but it fails verification...
Any ideas how do I go back or fix this?
Thanks
Adrian
Tutorial
How to Update HTC One AT&T android 4.4.2 and root:
http://forum.xda-developers.com/show...79356166999787
Gabe09196 said:
You guys are forgetting that to be able to update the OTA, you need to have an ACTIVE at&t sim card inserted to your phone. I think this is the reason for all the confusion around since not everybody lives in the US
Click to expand...
Click to collapse
i kinda figured n yea im not from the US so this was the only method that worked for me
agoyeneche said:
OK, so I was able to upgrade but now I messed it up trying to patch default.xml. :crying:
I am trying to revert to the 4.3 with RRU but I get error 155.
I am S-Off, HBOOT 1.56.
I tried with bootloader re-locked, unlocked, locked. I tried with stock recovery and with ClockWM recovery both locked and unlocked.
I also tried to re-apply the patch with stock recover but it fails verification...
Any ideas how do I go back or fix this?
Thanks
Adrian
Click to expand...
Click to collapse
The BEST way to make sure that you can run the RUU, whether it be the ATT version, or the Dev Edition is to make sure you downgrade the HBOOT to 1.44. You will never see than error again. No problems at all. Why on Earth though would you want the ATT version, when you can Dev it, and take the 4.4.2 OTA with no carrier BS?
hack14u said:
The BEST way to make sure that you can run the RUU, whether it be the ATT version, or the Dev Edition is to make sure you downgrade the HBOOT to 1.44. You will never see than error again. No problems at all. Why on Earth though would you want the ATT version, when you can Dev it, and take the 4.4.2 OTA with no carrier BS?
Click to expand...
Click to collapse
Thank you.
Actually that is what I did. After downgrading HBoot I was able to use the RRU.
Unfortunately I use my phone for work with Mobileiron and will flag it to IT if I'm rooted. I have tried a couple of workaround so but did not work very well. Every time I try to monkey with it IT starts getting emails every 30 min saying my device is not compliant and I am rooted.... So my best solution is to unlock boot loader and flash mods there. Which got me into this trouble....
I can't navigate to the recovery after I flashed Recovery_Cingular_US_3.17.502.3.img to install the OTA. I've tried going to recovery mode and then pressing Power + Vol. Up to no avail. Any help?

[Q] How do i convert an at&t One from Developer's Edition back to at&t stock

Hi all,
I was hoping for a little help. I got my phone last summer on At&t and immediately converted the Developer's Edition. The phone is currently rooted,
has s-off and is on a KitKat Rom.
The above said, would I be able to get back to stock? I've Googled it and can only find instructions on Stock to Developer's, not the other way around.
TIA
infg3570
infg3570 said:
Hi all,
I was hoping for a little help. I got my phone last summer on At&t and immediately converted the Developer's Edition. The phone is currently rooted,
has s-off and is on a KitKat Rom.
The above said, would I be able to get back to stock? I've Googled it and can only find instructions on Stock to Developer's, not the other way around.
TIA
infg3570
Click to expand...
Click to collapse
did you s-off ? did you change your CID ?
just change your CID back to AT&T
fastboot oem writecid CWS__001
and flash the AT&T RUU
http://www.androidruu.com/getdownlo...09_10.26.1718.01L_release_356565_signed_2.exe
clsA said:
did you s-off ? did you change your CID ?
just change your CID back to AT&T
fastboot oem writecid CWS__001
and flash the AT&T RUU
http://www.androidruu.com/getdownlo...09_10.26.1718.01L_release_356565_signed_2.exe
Click to expand...
Click to collapse
Thank you! All though I have email notification set up for replies, I never received one. Interesting is that my CID remains the At&t and i currently have s-off. When I RUU.exe (I downloaded the same the other night), I get an error and it restarts my phone. I'm wondering if it's because I have a KitKat Rom already installed and the software number is slightly higher than the RUU? The software number is 4.18.502.7 (my phone). I think the RUU is 502.1.
Thanks again,
infg3570
infg3570 said:
Thank you! All though I have email notification set up for replies, I never received one. Interesting is that my CID remains the At&t and i currently have s-off. When I RUU.exe (I downloaded the same the other night), I get an error and it restarts my phone. I'm wondering if it's because I have a KitKat Rom already installed and the software number is slightly higher than the RUU? The software number is 4.18.502.7 (my phone). I think the RUU is 502.1.
Thanks again,
infg3570
Click to expand...
Click to collapse
If your s-off use my decrypted RUU here
http://www.androidfilehost.com/?fid=23329332407580500
instructions are here
http://forum.xda-developers.com/showthread.php?t=2695749
clsA said:
If your s-off use my decrypted RUU here
http://www.androidfilehost.com/?fid=23329332407580500
instructions are here
http://forum.xda-developers.com/showthread.php?t=2695749
Click to expand...
Click to collapse
I tried as you have suggested your decrypted file. Unfortunately, I get an error when trying to run it via ADB in fastboot.
I've rooted when I first got the phone last summer using Revone method/tool. All worked fine and i had continued updating the OS a few times with stock rooted phones.
The last that i updated to was a stock rooted odex kitkat ROM found here http://forum.xda-developers.com/showthread.php?t=2676986
Only thing that seemed wrong was that I couldn't reinstall any of my apps requiring root. The error that would pop up is "Could not install to SD card".
Now, I have to say that I noticed that with some updates, it seems that new ROMS don't clean up the old files/framework even after fully wipes. It seems to back it up in some folders (sdcard0, sdcard00, sdcard000 etc). All though the sdcard folder seems clean and refreshed, the others mentioned had all my old files in there. Since I've updated to kitkat, I can no longer view these folders (I used to use Root Explorer, but now since the kitkat install - I can't). What caused me to notice was the fact that my storage, in the 'Other:' section, shows 20GB out of 32. So, I used ES File Mgr to see if I can create some space by deleting the so-called backup folders. I think that was a bad mistake because now, even after a full data wipe, I still can't:
* Install root-required apps
* flash the zip file you provided
* use the exe version of the zip you provided (still get an error with that as well)
* Clear the 20gb of data I don't need
* get back to the At&t carrier brand from the Developer's Edition that i switched it to back last summer.
Fortunately the phone works fine, but is this hopeless? Anything I can do to get this going again (really thing I messed things up)
Is there anything else I can try?
thank you,
infg3570

[Q] Help updating bootloader

I have a rooted and soff EVO LTE and in wanting to up to 4.3 ROM I understand I need to update my bootloader. When I try loading a couple 4.3 roms my phone starts ups but reboots after displaying the HTC white logo screen.
I currently have hboot 1.19.0000 and if I understand correctly I need to update to 2.10 It also has Team Win Recovery 2.2.1 which I'm not sure if that needs updating or not.
It has been awhile since I rooted or updated anything and when I did in the past I followed instructions for the entire root process so I'm a little stuck in getting things patched up.
Can anyone offer me the path to proceed? I'm only messing with my old phone as I plan to reactivate it as I'm having terrible issues with my new HTX M8 in not having any data nor able to make calls (due to the Spark support in my local towers throwing chucks since Sprint doesn't have their towers upgraded yet.
Perhaps I should ask, am I on the right path in needing to update my hboot to update to 4.3?
eBoyDog said:
I have a rooted and soff EVO LTE and in wanting to up to 4.3 ROM I understand I need to update my bootloader. When I try loading a couple 4.3 roms my phone starts ups but reboots after displaying the HTC white logo screen.
I currently have hboot 1.19.0000 and if I understand correctly I need to update to 2.10 It also has Team Win Recovery 2.2.1 which I'm not sure if that needs updating or not.
It has been awhile since I rooted or updated anything and when I did in the past I followed instructions for the entire root process so I'm a little stuck in getting things patched up.
Can anyone offer me the path to proceed? I'm only messing with my old phone as I plan to reactivate it as I'm having terrible issues with my new HTX M8 in not having any data nor able to make calls (due to the Spark support in my local towers throwing chucks since Sprint doesn't have their towers upgraded yet.
Perhaps I should ask, am I on the right path in needing to update my hboot to update to 4.3?
Click to expand...
Click to collapse
I think never mind, after more reading I believe my problem is I don't have s off which appears to be required, let me get that done and I will see were I'm at......
You can run the RUU for the latest update (Android 4.3). That will get you the latest bootloader and put you on the new partition layout, also. You will only be able to flash ROM's based on the new layout. You'll need to update your recovery version, also. For the RUU click the top link in my sig and scroll down to the bottom of the first post. You'll need to relock your bootloader to run the RUU. Running the RUU does not require S-off and there are instructions in the post I mentioned that detail how to run the RUU.
You should also read the first several posts in the thread linked below:
http://forum.xda-developers.com/showthread.php?t=2639180
Sent from my HTC M8

Cannot Update

Hi everyone,
I have an M8 that has been rooted and has s-off. One of my friends helped me do this. It is at version 4.4.2. When I download the OTA package, it boots to teamwin and when I try to flash the ota package it fails. Is there something that I am missing? Do I need to un-root it and turn s-on? Thanks in advance.
kmac212 said:
Hi everyone,
I have an M8 that has been rooted and has s-off. One of my friends helped me do this. It is at version 4.4.2. When I download the OTA package, it boots to teamwin and when I try to flash the ota package it fails. Is there something that I am missing? Do I need to un-root it and turn s-on? Thanks in advance.
Click to expand...
Click to collapse
You need to revert back to stock recovery. Stock recovery is required to install OTA.
Unrooting is not needed to OTA. Going back S-on is not needed either, and absolutely not recommended.
How would I go about going back to stock recovery? I think I tried this in the past but was never able to get it to work correctly.
kmac212 said:
How would I go about going back to stock recovery? I think I tried this in the past but was never able to get it to work correctly.
Click to expand...
Click to collapse
See is someone has posted it, then flash in fastboot.
You are still on the stock ROM? What software number in Settings>About>Software information?
Alternately, if you don't care about your personal data being wiped and setting up the phone again (there are various ways to backup and restore your data, especially since you are rooted) you can just RUU up to the current OS version.
redpoint73 said:
See is someone has posted it, then flash in fastboot.
You are still on the stock ROM? What software number in Settings>About>Software information?
Alternately, if you don't care about your personal data being wiped and setting up the phone again (there are various ways to backup and restore your data, especially since you are rooted) you can just RUU up to the current OS version.
Click to expand...
Click to collapse
As far as I know it is still the stock Rom. The software number is 1.58.502.1 I would prefer if I did not have to wipe my phone. Thanks for helping, I appreciate it
kmac212 said:
As far as I know it is still the stock Rom. The software number is 1.58.502.1 I would prefer if I did not have to wipe my phone.
Click to expand...
Click to collapse
You can get the stock recovery for that software number here: http://forum.xda-developers.com/att-htc-one-m8/development/att-stock-backups-recoveries-otas-t2855966
If the ROM isn't stock, the OTA will fail and tell you so. You can get the stock ROM backup from the same thread,
redpoint73 said:
You can get the stock recovery for that software number here: http://forum.xda-developers.com/att-htc-one-m8/development/att-stock-backups-recoveries-otas-t2855966
If the ROM isn't stock, the OTA will fail and tell you so. You can get the stock ROM backup from the same thread,
Click to expand...
Click to collapse
I used the stock recovery for the same version as my phone, but now when I go into recovery mode, it is a red triangle with an exclaimation mark. Any suggestions for how to get past this? Thanks!
kmac212 said:
I used the stock recovery for the same version as my phone, but now when I go into recovery mode, it is a red triangle with an exclaimation mark. Any suggestions for how to get past this? Thanks!
Click to expand...
Click to collapse
That is what stock recovery is. You can OTA by booting normally and checking for software update in settings.
redpoint73 said:
You can get the stock recovery for that software number here: http://forum.xda-developers.com/att-htc-one-m8/development/att-stock-backups-recoveries-otas-t2855966
If the ROM isn't stock, the OTA will fail and tell you so. You can get the stock ROM backup from the same thread,
Click to expand...
Click to collapse
So I got my recovery back to stock. I download the update fine but when it goes to reboot into recovery, it starts to update and a little into it, I get a red triangle and I have to reboot my phone. When it comes back up, I get the message saying "There was a problem with this software update that prevented installation." Any suggestions?
kmac212 said:
So I got my recovery back to stock. I download the update fine but when it goes to reboot into recovery, it starts to update and a little into it, I get a red triangle and I have to reboot my phone. When it comes back up, I get the message saying "There was a problem with this software update that prevented installation." Any suggestions?
Click to expand...
Click to collapse
Delete the OTA file (believe it should be in Downloads folder) and try to download the update again.
Or just RUU as I mentioned previously.
redpoint73 said:
Delete the OTA file (believe it should be in Downloads folder) and try to download the update again.
Or just RUU as I mentioned previously.
Click to expand...
Click to collapse
Hi Redpoint, I deleted the OTA file and tried again with the same results. How would I go about RUU? And you mentioned before that this will wipe my device, correct? Will it change me being rooted and having s-off? Thank you so much for the assistance, I really appreciate it
kmac212 said:
Hi Redpoint, I deleted the OTA file and tried again with the same results. How would I go about RUU? And you mentioned before that this will wipe my device, correct? Will it change me being rooted and having s-off?
Click to expand...
Click to collapse
RUUs are linked on my Index thread under "RUUs": http://forum.xda-developers.com/showthread.php?t=2751432
Yes, the RUU will wipe the device. So backup anything you want to keep accordingly.
You can RUU all the way up to Lollipop. Just download the RUU to a PC, connect the phone, and run the RUU executable. The rest is self-explanatory by the RUU program, and very easy.
Since you are s-off, no need to relock the bootloader to RUU. Relocking the bootloader is required to run the RUU with s-on. I know that you are s-off (and this doesn't apply to you), but just wanted to add that in case anyone else reads this and tries it (to avoid confusion).
S-off will remain after RUU.
You will lose root. So after RUU, just install custom recovery again, and root by your desire method again. The same would happen if you updated by OTA.

Categories

Resources