ROM Update went terribly wrong!!! please help - Mogul, XV6800 ROM Development

Hello all,
Last night, I tried updating my Rom on a sprint mogul to the recent dcd 2.2.6 and 3.27 radio.
I followed the steps of taking down the information, finding my unlock code, unlocking, and updating both roms.
It went with no problems. However my MSID was reset so i had to enter my unlock code that i got from get spc. before i reflashed my device, i checked to see if the code worked by trying to enter and edit epst.
But in windows 6.1 the unlock code didnt work, my msid and mdn were set to all 0.
I called sprint they gave me the same unlock code that didnt work.
So i tried reflashing back to the original sprint official release, that didnt work, i was getting an error 328 from the ruu.
I tried reflashing again dcd 2.2.6 rom, that worked but the radio wouldnt flash due to the same invalid command error 328 from the ruu.
So for a while i was stuck on the htc splash screen with a no radio display. I found a thread with a solution to the same problem. I flashed the leaked sprint rom 3.16, that worked and i was able to get up and running.
However in epst mode my hex and dec esn are all zeros. my original unlock code doesnt work, (the one from sprint), but when i enter in all 0 in getspc it generates the proper unlock code,
but i still can not connect to the sprint network even tho i am able to set my msid and msn to the correct values, my esn is still wrong (displays all zeros)
Can any please tell me if i can fix this, I was on the phone with sprint for 2 hrs with no avail. I need to set my esn on the phone to match my esn in hardware
Thank you,
Kevin

Okay, if I read your post right you do have your MSL number (unlock code) right? If you do, go to your keypad on the phone and dial ##3282# (##DATA#). It should ask you if you want to view or edit. Choose edit and type in your MSL number. On the main screen there should be an option on the left softkey that says "View Info". Choose that and then select "Advanced". At the top I believe you can edit your ESN number.
Hope that helps.
krazieintentz said:
Hello all,
Last night, I tried updating my Rom on a sprint mogul to the recent dcd 2.2.6 and 3.27 radio.
I followed the steps of taking down the information, finding my unlock code, unlocking, and updating both roms.
It went with no problems. However my MSID was reset so i had to enter my unlock code that i got from get spc. before i reflashed my device, i checked to see if the code worked by trying to enter and edit epst.
But in windows 6.1 the unlock code didnt work, my msid and mdn were set to all 0.
I called sprint they gave me the same unlock code that didnt work.
So i tried reflashing back to the original sprint official release, that didnt work, i was getting an error 328 from the ruu.
I tried reflashing again dcd 2.2.6 rom, that worked but the radio wouldnt flash due to the same invalid command error 328 from the ruu.
So for a while i was stuck on the htc splash screen with a no radio display. I found a thread with a solution to the same problem. I flashed the leaked sprint rom 3.16, that worked and i was able to get up and running.
However in epst mode my hex and dec esn are all zeros. my original unlock code doesnt work, (the one from sprint), but when i enter in all 0 in getspc it generates the proper unlock code,
but i still can not connect to the sprint network even tho i am able to set my msid and msn to the correct values, my esn is still wrong (displays all zeros)
Can any please tell me if i can fix this, I was on the phone with sprint for 2 hrs with no avail. I need to set my esn on the phone to match my esn in hardware
Thank you,
Kevin
Click to expand...
Click to collapse

thank you for your reply.
I do have my unlock code. the ##data# shows the esn in advanced settings, but the box is greyed out and will not allow me to edit it.
It still shows 00000000.
Thank you, any other ideas, maybe a registy edit?

It sounds like something happened during the flash process. I talked to a PCS rep and they said you would have to bring it in and get it swapped. I can't think on any other way to get that info updated. Sorry.

no there is another way, you can sniff for the spc, the original thread about getspc had directions @ ppcgeeks

dalvarez7 said:
Okay, if I read your post right you do have your MSL number (unlock code) right? If you do, go to your keypad on the phone and dial ##3282# (##DATA#). It should ask you if you want to view or edit. Choose edit and type in your MSL number. On the main screen there should be an option on the left softkey that says "View Info". Choose that and then select "Advanced". At the top I believe you can edit your ESN number.
Hope that helps.
Click to expand...
Click to collapse
You need ths link
http://forum.ppcgeeks.com/showthread.php?t=17495&highlight=getspc

I went to a sprint tech and they said they i had to replace the phone, and they would order me a new one. but right now i have to wait the warehouse doesnt have any instock.
there is another way however, if it was erased by software, it can be changed by software.
I did not find anything relevant on the link above, i will keep looking through it. If someone could point me in a closer direction.
I do have my unlock code, currently all zeros, so im not looking to get my MSL number, im looking to change my ESN back to what it was, somehow it was set to all 0's during the rom update process.
Thank you,
Kevin

Perhaps you should change the thread title to something more specific to separate yourself from the masses who can't boot because they didn't upgrade their radio.
Perhaps try an RTN reset? This is a hard reset that erases provisioning data. I don't know if it can restore an ESN, but worth a try.
Go to dialer
##786# (##RTN#)
Menu->reset

krazieintentz said:
Hello all,
I followed the steps of taking down the information, finding my unlock code, unlocking, and updating both roms.
Click to expand...
Click to collapse
Is it just me or does something seem wrong with this quote. Read the instructions here: http://forum.ppcgeeks.com/showthread.php?t=17667
The phone needs to have the unlocker program run to install a custom rom. The code from GetSPC allows you to edit the settings not unlock your phone.

hohnan said:
Is it just me or does something seem wrong with this quote. Read the instructions here: http://forum.ppcgeeks.com/showthread.php?t=17667
The phone needs to have the unlocker program run to install a custom rom. The code from GetSPC allows you to edit the settings not unlock your phone.
Click to expand...
Click to collapse
Look i dont need any smart comments.
Well actually for your information, the MSL code is used to unlock your phone. the unlocker program is used to unlock your bootloader to accept a custom rom.
MSL - master subsidy lock, this locks network settings so that a user can not change them, the code given by getspc is stored in nV ram on the phone and is used to gain access to these files, thus "unlocking" the phone. unlocking the bootloader is another story...
anywho, i was able to get my phone working, i reprogrammed my esn, reprogrammed my MSL from all zeros to the proper value, and now my phone is back on the sprint network.
if you guys are interested i will write a tutorial on how i did this, just to respond to the other post, a hard reset does not restore esn data.

Good for you! I'm glad you figured it out. I would be interested on how you got it working again.
krazieintentz said:
Look i dont need any smart comments.
Well actually for your information, the MSL code is used to unlock your phone. the unlocker program is used to unlock your bootloader to accept a custom rom.
MSL - master subsidy lock, this locks network settings so that a user can not change them, the code given by getspc is stored in nV ram on the phone and is used to gain access to these files, thus "unlocking" the phone. unlocking the bootloader is another story...
anywho, i was able to get my phone working, i reprogrammed my esn, reprogrammed my MSL from all zeros to the proper value, and now my phone is back on the sprint network.
if you guys are interested i will write a tutorial on how i did this, just to respond to the other post, a hard reset does not restore esn data.
Click to expand...
Click to collapse

I also would be interested
dalvarez7 said:
Good for you! I'm glad you figured it out. I would be interested on how you got it working again.
Click to expand...
Click to collapse
This would be a handy bit of knowledge as they go thru great lengths to keep it from being done. Ususally the filesystem for that section of the phone is locked and protected, requiring the QXDM (Qualcomm Extensible Diagnostic Monitor) software to get in. I have an older version that I used to use to play with older phones and it worked great, but a newer one would be needed for these phones. Old style glitch corruption will mess up any filesystem and even mess up protected areas, which is likely what happened to yours. I would love to know how you did it without QXDM ;-)Thanks.

krazieintentz said:
Look i dont need any smart comments.
Well actually for your information, the MSL code is used to unlock your phone. the unlocker program is used to unlock your bootloader to accept a custom rom.
MSL - master subsidy lock, this locks network settings so that a user can not change them, the code given by getspc is stored in nV ram on the phone and is used to gain access to these files, thus "unlocking" the phone. unlocking the bootloader is another story...
anywho.........
Click to expand...
Click to collapse
Wow. A pretty harsh response to someone who was trying to help out.

A tutorial will be nice. if you have the time!
krazieintentz said:
Look i dont need any smart comments.
Well actually for your information, the MSL code is used to unlock your phone. the unlocker program is used to unlock your bootloader to accept a custom rom.
MSL - master subsidy lock, this locks network settings so that a user can not change them, the code given by getspc is stored in nV ram on the phone and is used to gain access to these files, thus "unlocking" the phone. unlocking the bootloader is another story...
anywho, i was able to get my phone working, i reprogrammed my esn, reprogrammed my MSL from all zeros to the proper value, and now my phone is back on the sprint network.
if you guys are interested i will write a tutorial on how i did this, just to respond to the other post, a hard reset does not restore esn data.
Click to expand...
Click to collapse

Krazeintentz,
I would be very interested in your final fix for this problem. The exact same thing happened to me a while back and my only way out at the time was a replacement titan under warranty from vzw.
If we had your steps to recovery then we would be a lot closer to having a disaster recovery wiki.
As another poster said, yours was a real rom flashing problem as opposed to the numerous "brick" cases that we see everyday from just half done flashes. So it makes it all the more relevant that we have a wiki for this problem.
Regards

Since he has not said, heres a theory
The filesystem is protected from editing in the address range where the ESN resides. The QXDM software shows the actual file structure of the chipsets flash and the files have actual attributes and the ESN file is read only, so the EPST is not supposed to be able to edit the ESN (as this would be cloneing a phone and not legal). If you follow the steps in a flash memory update, you would see that the contents of these protected files are read, saved, and then the flash is totally erased, then written with the new revision, and finally the protected storage is written and the attribute is set to read only. The QXDM is required to manually unlock these attributes, but there is a key that allows the flash utility to erase the stuff. if the flash was interrupted either by hardware or software error at the point after the erase and writeback but before the write of protected file area, the ESN would be blank and also the EPST in the phone would be able to edit it in edit mode because the attribute is the very last thing written. I bet thats how he fixed it and now has a cloneable phone too and can change his ESN any time he wants, at least until he flashes the radio again which will fix the glitch by process. Thats probably what he did.

Hey guys Im a noob and im having a bit of problems
Im stuck in the bootloader screen
TITA100 MFG
SPL-2.40 Olipro
CPLD-9
My comp has windows vista premium so instead of activesync i have windows device center 6.1 I have unclicked allow USB connections
but i think my comp doesnt recognize that they the phone is connected at all although i do here the sound that lets me know that a usb device is connected
exitbl.exe doesn't work keeps telling me
cannot open USB port
Please make sure that USB connection in Activesync is disabled
Also make sure that your USB cable is properly connected
if it helps im on a bell phone

Related

i need URGENT help

i flashed my p4000 to the new rom, and my pst info cleared, which i have written down, but when i go to enter the new info in, it asks me for a unlock code...
in all the tuts i read it never told me how to check it or anything i dont know what the unlock code would be, i also bought it used, anyone know?
i cant use my phone until i fix this, and i really need my phone tonight.
Unlock code for the SIM or the phone? I presume theres nothing on your device till now, why not hard-reset or upgrade to another ROM?
Regards,
Carty..
htc p4000 have no sim cards.
im doing the ##778 to get into the PST menu, then when i try to edit it, to input my #, it asks me for an unlock code... :S
have you tried all 0s or 123456 or your phone number?
yes i tried a couple.
000000
123456
654321
i havnt changed the code...anyone know how to change it through an app or the default code?
arg!
i need my phone tonight.
Berserk87 said:
yes i tried a couple.
000000
123456
654321
i havnt changed the code...anyone know how to change it through an app or the default code?
arg!
i need my phone tonight.
Click to expand...
Click to collapse
If it's anything like sprint, then a simple call to your carrier should remedy the problem. with sprint it's called an "MSL" and they give it to you when programming your phone. So if you call and tell them that you need to 'reprogram' your phone, they should walk you through the steps along with giving you the code.
if i reflash it with the nueROM v2 build 5022, its a sprint rom...so that would mean i could use the 000000 as the unlock code?
also, after flashing to the new roms, my phone continually reset...would go on for a minute then reset... thats why i went back to my default rom, but now its asking for an unlock code >.>
Unzip this to your phone. Take your battery off and write down your Hex ESN. Run GetSPC.exe. Type your Hex ESN in the first box. The second box will be your unlock code.
*edit - removed file, missing keygen and someone linked to it on the next page.
k ill try that out, thank you.
any reason why my phone would be constantly reseting after installing the new roms?
k.
my EST is
but when i type that in, its saying "could not link to dll"
?
If I were you I would edit that post and remove that ESN # ASAP, people can use that to steal your service.
jjlwork said:
If I were you I would edit that post and remove that ESN # ASAP, people can use that to steal your service.
Click to expand...
Click to collapse
****, i was worried something like that could happen.
it should be the hex of that number though right?
do i include the first 3 letters?
k i converter the esn to hex and its still not working >.>
Berserk87 said:
k i converter the esn to hex and its still not working >.>
Click to expand...
Click to collapse
you might try the program found here:
http://forum.xda-developers.com/showthread.php?p=1541466 (it's the program called GetSPC)
i tried it on my phone and it provided an MSL number. hafta admit, tho - the MSL it gave me didn't work (and it differs from the MSL i have written down for my phone).
i might also suggest that you SEARCH...it's what I did to find the above. you might also try calling your carrier and ask them what the unlock code is.
OH -- use a HEX version of the ESN, and use ALL CAPS for any letters in the HEX version. It still may provide you with an invalid MSL...but worth a shot.
Make sure you are using the correct number for ESN, just converting the number from the back of your phone to hex will not work. Click program settings and device information on the bottom it will say ESN followed by a 8 digit hex number..that is the hex esn, you then put that in GetSPC and it will give you your 6 digit master unlock code. Dial ##6digitcodeSEND and it will open up to a place with 2 settings that can be changed, enter your 10 digit phone number for these two settings.
If you still can't get it, call Telus & tell them you can't make any calls, they will walk you thru the reprogramming process.
jjlwork said:
Make sure you are using the correct number for ESN, just converting the number from the back of your phone to hex will not work. Click program settings and device information on the bottom it will say ESN followed by a 8 digit hex number..that is the hex esn, you then put that in GetSPC and it will give you your 6 digit master unlock code. Dial ##6digitcodeSEND and it will open up to a place with 2 settings that can be changed, enter your 10 digit phone number for these two settings.
If you still can't get it, call Telus & tell them you can't make any calls, they will walk you thru the reprogramming process.
Click to expand...
Click to collapse
ahhhh
thats what i was doing :loollll
k, i entered my hex number and its still saying "cant link to dll"
i got like 15 minutes to figure this out :O
k the "phonetools" the other guy linked too was missing files, so it wouldnt work either way, lets try the real one >.>
WORKED, AWESOME.
now to test it out
Berserk87 said:
k the "phonetools" the other guy linked too was missing files, so it wouldnt work either way, lets try the real one >.>
Click to expand...
Click to collapse
Don't know why it didn't work, it's the exact same program. The only thing I took out was the PPC 2003 version so you wouldn't run that by mistake.
*edit - just downloaded it & it's missing the keygen. I don't know how that happened, sorry. I would've just linked to the original but I couldn't remember where I'd gotten it initially.

EPST Unlock Code

Hello everyone,
I'm a newbie, but a fairly tech-savvy newbie. I recently upgraded to a Mogul ( from a Treo 650 ) and after a bit of prevaricating, decided to upgrade the ROM. I've been researching all over this forum and PPCGeeks ( when they're up, at least ) and thought I had everything worked out about exactly what to do.
0 ) I wrote down the MSID, MDN, A-Key, and ran a program called GetSPC.
1 ) I unlocked the phone ( Olipro 2.40 )
2 ) I flashed the rom to DCD 2.2.6
briefly got stuck here, until I figured I needed to reset the phone to get back into the bootloader screen
3 ) I flashed the new radio.
4 ) After a bit of experimenting, I decided to try NeuROM, as it had more goodies on it. The .rar only had a single program, a .nbh file. ( unlike the DCD with the ROMupdateUtility.exe ) Further research led me to believe that I could move the .nbh file onto a Fat32 formatted microSD card and reset, and it would flash that rom. It seemed to work.
Now I have full access to everything, but the phone will not dial or anything. I typed in ##778# and tried to hit 'edit' and it pops up a screen demanding an unlock code, which I assumed was the six digit code I got from step 0, running GetSPC. That code doesn't work at all. Have I done something terribly wrong? Should I have not installed NeuROM with the microSD? I'm about to try to restore everything to factory settings and perhaps try again, but I'd really like to know where I went wrong. Any ideas? Thank you all for your great work here, and I appreciate any help you can provide.
when you ran GetSPC did you type in the ESN of your phone making sure to capitalize the letters? Try and run it again capitalizing the letters and make sure you type in the ESN exact.
Your issue could be that when you entered your hex code into GetSPC you did not capitalize, it will change the code.
guess I am late...
Wow, thanks for the very prompt response. I do believe that I did not capitalize the Hexadecimal number. I will try that.
EDIT
Yep, that did the trick. Thank you so much for your quick replies. Sheesh, Monday night and I get three replies within three minutes of posting. Ok, memo to myself; Hex code must always be capitalized.
hey... quick qustion do you have the 6 digit code needed for the epst code for the htc touch 6900
jenny_812 said:
hey... quick qustion do you have the 6 digit code needed for the epst code for the htc touch 6900
Click to expand...
Click to collapse
There is'nt one 6 digit code for every phone, each phone has it's unique 6 digit code.
Maybe I'm thinking of something different, but it was my understanding that the EPST unlock code was 000000 for everyone (unless changed through QPST or something).
Depends on your carrier. Verizon and Cellcom (small carrier I am with) use 000000. Sprint uses a piece of software (GetSPL) that generates a random 6 digit MSL code based on your phone's ESN. That is why sprint users need GetSPL. I am not sure of other carriers. We should start a thread that looks like the following....
MSL Unlock Code
Verizon = 000000
Cellcom = 000000
Sprint = (Use GetSPL)
Alltel = ??????
AT&T = ??????
Feel free to fill in the blanks if you are with these (or other carriers)
Ok, thank you for clearing that up. I'm on US Cellular and its 000000.
i always use the registry setting/log file method to get the SPC codes, since GetSPC hasn't ever worked for me. do a search for it on this site; it's easy
mine is a Quest XV6800 and it was locked with a random six digit code
Try a program call "baf msl grabber" worked great on my Qwest mogul
jjohnzon said:
Try a program call "baf msl grabber" worked great on my Qwest mogul
Click to expand...
Click to collapse
now he tells me...
programing my HTC Pro
I put in the ##778# and press edit now its asking me for a code...I got my phone flashed again to metro and that still didnt reset ...I tried calling sprint and asking them for the reprograming code... but they asking me for my acct.#.....Um dont have one with them......
any tips???
Thanks
EPST Code for Samsung SCH-i760
Does anyone know how to get an EPST Code for a Samusung SCH-i760...I fully flashed it to cricket and cant get my internet or pic messaging working cuz I cant program the phone...Can anyone help me...
If it is a verizon phone it should be 000000
this is how i got my code, using the ATDbg0.log file:
http://forum.ppcgeeks.com/showthread.php?p=523161
then i used CDMA Workshop to write the SPC/MSL to 000000. i got that program from a forum somewhere, just Google for it
Hi guys,
I used the tools which is attached. I found it in another website. Probably someone share it before. (NET CF must be installed)
Anyway it works great, it gave an unlock code even my ESN was 0000000.
Good luck!

Corrupted ESN. Errors when flashing ROMS. UPDATE: Phone is fixed

I upgraded my new 6800 yesterday using the directions Here.
I upgraded to Olipro 2.40, CDMA Radio 3.42.02 , and DCD Titans 3.20 ROM. The upgrade went smooth enough. I was unable to use my 1GB microSD card but I was able to use USB. When I was finished I installed the verizon carrier cab. I called *228 to program my phone. Programming failed and it failed because my ESN was now set to all zeros. I attempted to reset the ESN using CDMA workshop and the instructions in the troubleshooting section of the wiki. It failed and now CDMA workshop is unable to access my ESN at all. See my previous post. When CDMA workshop reads from the phone it pulls all the info except for the ESN and the Number fields . It says ':: Failed ::" in the phone information box on the left for both of those fields. It also gives me an error "Cant read EFS" when I try to pull up the phones setting using ESF. It is like some portions of the phone are now locked (or deleted).
I decided to try to flash back to the original stock ROM and I am unable to do so. I am unable to reflash my bootloader, the radio, or the DCD ROM. I cant do it using the microSD and when I try doing it via USB I get an Error 328, Invalid Command. My phone boots fine but I cant change any of the ROMS. I can also see all my phones programming settings using ##3424, using CDMA workshop, and QPST) but I am unable to change any of them. It is like my phone is partially locked.
My current bootloader says
TITA100 MFG
SPL-2.40.Olipro
CPLD-9
and during startup it says:
M 09
B03
P DCAAXAM-4350H
R 3.42.30
D 3.20
Since I cant access the ESN to change it, my phone is not usable. Can anyone help me reset my esn to the correct value? Any suggestions on what to try myself or do I need to send it to someone with the correct tools? or is my phone beyond repair? If you need additional information, I can provide that as well. Thanks.
I'm looking into it for you. Give me a little.
gc14 said:
I'm looking into it for you. Give me a little.
Click to expand...
Click to collapse
Thank you very much for any assistance you can give me.
Have you tried ##778 enter 000000 for the unlock code. Use edit. Just a thought, we may be talking about 2 different things.
Ga. Medic said:
Have you tried ##778 enter 000000 for the unlock code. Use edit. Just a thought, we may be talking about 2 different things.
Click to expand...
Click to collapse
I did try that but when I had EPST in edit mode, I could only change a few of the values and the ESN was not one of them.
I was able to fix my phone. I tried to re-flash my phone again back to stock but this time I tried it using my laptop. I still could not get the microSD method to work but USB did work this time. When I was finished, my esn was reset again to all zeros (previously it had been a mix of my real esn and zeros like 35782000). I ran CDMA workshop again and this time the change from all zeros to the correct ESN was successful. My phone also activated successfully using *228.

[Q] HELPPPP evo3d roaming icon (page plus)

well i took my phone to "unlock wireless" in my area..had them set my phone up for page plus 55 dollar plan..get it going good..but data would not send at all..so i talked with page plus and they had ot do a few ## numbers to try to reprogram it..then it made it have the roaming icon and they said id have to reflash..ive been trying multiple work throughs from this site and i follow instructions to the T but im always getting error like (device not found) or when trying to write the recovery.img it says ok on sending then fails writing
i just want to be able to send picture messages and not have this roaming icon everytime i try to make a call
any suggestions?
oh and i believe im unlocked..my MSL (even tho i cant read it with anything) is 000000 which means unlocked right? im new to this..i rooted my old evo but this is a whole diff ball game not starting fresh
Dial ##3282# on the dialer and tap edit mode. And then type your msl . If all zeros does not work then your msl is different than that. And msl with all zeros does not mean you are unlocked. It can be anything and you can change it. And as for recovery.IMG, you cannot write it because it requires an unlocked boot loader . And unlocked boot loader again has nothing to do with your msl or network.
If the 000000 msl does not work after you dial ##3282# > edit mode, then you can find out your msl with msl reader app. It requires a rooted phone and to root your 3d you need a custom recovery which requires an unlocked boot loader.
If you just need your msl and don't want to try different aosp ROMs or GB, just unlock the boot loader from www.htcdev.com, then flash a recovery (I recommend 4ext, don't flash cwm it has issues) then flash superuser zip from recovery and install Msl reader from play store.
Simply put, you're going to have to flash in a custom PRL if you want the roaming indicator to go away. I'm not sure if I can post info on how to edit a PRL, or even flashing one into your phone, but the good new is, it's only an indicator in reference to sprint or virgin. So it may say roaming, but according to your pageplus plan, you're probably not actually roaming. Here's an example, I'm running my EVO3D on verizon wireless, and I get a roaming indicator, but my service/perfomance on my phone is not effected. Just make sure you have "data roaming" enabled and you should be good to go.

[Q] Is MSL tied to hardware or software?

Hello all:
I have an evo 3d that was modded to VM. Whoever did it did so incorrectly in some way, as the ESN in the phone appears to have been mistyped from the one on the phone itself (i.e. it is one digit off from what is printed). I am going through the process of correcting the issues with the phone, but i've hit what may be a snag.
The program menu in the phone asks for the MSL. I realize this is easily gotten from Sprint, however i'm assuming that this will somehow be tied to the ESN. My question is, when attempting to do this, do I give them the ESN on the back of the phone, or the one in the OS? I just want the phone to be back on a correct stock rom with the correct ESN and CID back into it, and I basically cant do any of that until I can get into diag mode. I cant RUU without either modifying the recovery image itself or changing back the CID. Which is fine, and I can do the CID as soon as I figure out what to do here. Thanks in advance.

Categories

Resources