[Q] Locating Correct Stock Firmware - Galaxy S III Q&A, Help & Troubleshooting

Hi,
I recently purchased a Samsung Galaxy S3 GT-I9300. It has CyanogenMod installed. I would like to flash it back to stock firmware but I am having trouble locating the correct version.
*#1234# Does not display anything, only "Invalid Connection or MMI Code Error".
I have downloaded a version from samsung-updates.com, it is XXEMC2, BTU region. Can I flash this and it will be fine? Or do I need the actual version which came with the phone (which I don't know).
I have attached a screenshot of my phone details screen, in case it helps determine which firmware I need.
Also, I tried to run triangle Away, it said it successfully cleared the binary count, but in download mode it remains at 4, no idea if this is relevant or not though.
Thanks in advance for any help you can provide.

yeah just flash it with odin it will be fine but follow the instructions carefully though you will lose root

Flash firmware for your location and network .
jje

Related

[Q] CSC Query Since Debranding Phone

Seeing as I`m still a relatively noobish poster I`m unable to ask this question in the relevant thread. I`ve just debranded the phone following the 8 step guide but I had issues following step 8 where you change the CSC code. I couldnt quite figure it out so step 8 never got followed. As a result, despite losing the Three branding on the phone I now have a phone that displays the CSC as "unknown" and may well explain why Kies cannot pick up the firmware version on the phone. If I follow step 8 and key in *#272*<your IMEI># on my phone it then shows me a screen headed "Preconfig" with "Sales Code" underneath and "H3G" in the box to the right. Underneath is a radio button thats deselected. if I press to highlight it then press "install" at the bottom of the screen I keep getting an error saying "Must be THREE chars".
Can anyone shed any light on this and give me any hope of rectifying?
Will I need to manually input the Three APN settings once I successfuly change the CSC code?
Thanks in advance. I have spent ages scouring the web but there`s not a great deal of info out there about the CSC part of the debranding process.
id like some more info on how important the csc is too, im got told it hold some carrier information but i dont know if that is true or not.
the reason you cant pick on is probably as since debranding you havent flashed the csc you need, you could find the one you need for your firmware over in the dev section.
Cheers for the reply, interestingly i`ve just re-flashed the phone and this time it is showing my CSC as XEU. Even so, I still cannot follow step 8. When I input that code including my IMEI in it shows XEU but when I press "install" it gives me the same old error of "Must be THREE chars". So not sure whether its worked or not and what diference it makes. At least Kies now shows something in the firmware field, even if it doesnt show what I was expecting. Hopefully someone can assist with this at some point later.
RedAl said:
Cheers for the reply, interestingly i`ve just re-flashed the phone and this time it is showing my CSC as XEU. Even so, I still cannot follow step 8. When I input that code including my IMEI in it shows XEU but when I press "install" it gives me the same old error of "Must be THREE chars". So not sure whether its worked or not and what diference it makes. At least Kies now shows something in the firmware field, even if it doesnt show what I was expecting. Hopefully someone can assist with this at some point later.
Click to expand...
Click to collapse
Hi there
If it says XEU after inputting the imei then it's working fine. You're not supposed to have to press install at this stage. Also to make sure it's working fine, I always boot into recovery mode. If you look down the code as recovery is loading, it will say which csc is being used/implemented (xue etc). Always reset data in recovery after rom flash from (especially from different csc.
I've had issues in the past when I flashed back to T-Mobile (after originally flashing ke7 stock) and then back again to T-Mobile. When I re-flashed back to stock after this, I couldn't get it to change from tmu (t-mobile) csc back to xeu, no matter how I flashed it. In the end the only way I could revert csc back to xeu was using the jig I had purchased. Apart from resetting the customer binery counter, it seemed to reset other settings, as once I had done this, I was able to install stock ke7 with xeu csc.
redbullman said:
Hi there
If it says XEU after inputting the imei then it's working fine. You're not supposed to have to press install at this stage. Also to make sure it's working fine, I always boot into recovery mode. If you look down the code as recovery is loading, it will say which csc is being used/implemented (xue etc). Always reset data in recovery after rom flash from (especially from different csc.
I've had issues in the past when I flashed back to T-Mobile (after originally flashing ke7 stock) and then back again to T-Mobile. When I re-flashed back to stock after this, I couldn't get it to change from tmu (t-mobile) csc back to xeu, no matter how I flashed it. In the end the only way I could revert csc back to xeu was using the jig I had purchased. Apart from resetting the customer binery counter, it seemed to reset other settings, as once I had done this, I was able to install stock ke7 with xeu csc.
Click to expand...
Click to collapse
Cheers for that. I just did a recovery as you suggested and saw it was done using the Multi-CSC so hopefully that means its all sorted.
Does this mean I should now be able to see the latest Firmware update available in Kies?
RedAl said:
Cheers for that. I just did a recovery as you suggested and saw it was done using the Multi-CSC so hopefully that means its all sorted.
Does this mean I should now be able to see the latest Firmware update available in Kies?
Click to expand...
Click to collapse
Yes you should be able to see the latest available update for your csc via kies. Although kies seems much slower to get the updates. It's much easier to use Odin. Most people update by this method. It's really easy and pretty safe.
redbullman said:
Yes you should be able to see the latest available update for your csc via kies. Although kies seems much slower to get the updates. It's much easier to use Odin. Most people update by this method. It's really easy and pretty safe.
Click to expand...
Click to collapse
The csc will be sorted now. Also if you plug your phone into kies, this will confirm what csc you are using.
redbullman said:
The csc will be sorted now. Also if you plug your phone into kies, this will confirm what csc you are using.
Click to expand...
Click to collapse
Cheers Redbullman. I can get into Kies now but on the firmware information section it says "Current Firmware Version : PDA:KDD / PHONE:KDH / CSC:KD1 (H3G)"
Its not telling me there`s a firmware update available so I have a horrible feeling something`s still not quite right but I`ve flashed it twice now and done 2 factory resets.
Would it be easier to find the stock KE7 kernel (forgive me if I`m using the wrong words) in Odin to flash it that way? If I can manually do it then I`d rather do it that way. Only problem is I`ve not yet found any tutorials on doing that, unless its the same (mostly) as the tutorial for debranding, except using a different .tar file (KE7).

[Q] Rooted and trying to upgrade

Hi Guys,
My Galaxy S2 came with KE7 I bought it in the UK and it's not branded to any network, I flashed CF-Root-SGS2_XW_XEU_KE7-v4.0-CWM4 and then the stock kernel and all was good.
A while later I tried to flash the clockworkmod from http://forum.xda-developers.com/showthread.php?t=1118693 ... that flashed OK but I couldn't get into the CWM recovery so I flashed the CF-Root back.
The recovery menu now works, but I still have the warning triangle on boot (I have tried reflashing the stock kernel again). This in itself doesn't bother me too much - I did this a month or 2 ago.
I've been told by someone that there is an upgrade available via Kies, however when connecting the phone Kies on Windows just tries to connect for ages and then gives up. (I have disabled USB debugging). Not that it should be relevant but I have previously removed Kies.apk, KiesAir.apk and kieswifi.apk using g-script but I put these back before trying to do this.
My phone currently reports:
Android: 2.3.3
Baseband: I9100XXKE4
Kernel: 2.6.35.7-I9100XWKE7-CL215725 [email protected] #2
Build: GINGERBREAD.XWKE7
Looking at these values, is the mix of XX and XW correct? (It's possible that I might have downloaded the wrong CF-root version the second time)
All I would really like to do is get the official version Samsung version and then root the phone. I believe that the Kies upgrade would still keep all applications.
Any help would be much appreciated.
You can find official, stock roms in the development threads
Sent from my GT-I9100
Thanks.
I've seen the thread http://forum.xda-developers.com/showthread.php?t=1075278 but I'm not sure which is the correct stock firmware for me.
Given the other issues I've described above I'm a bit 'concerned' that I've already done something wrong :S
EDIT:Re-editting my post cos Im blind and cant read good
Sorry dude I got all screwed-up there I have ta apolagize.Anyway you can download the one i told you and all will be cool as its a UK+Europe generic as stated and its XWKF3 but you are indeed on KE7 and you will find it here
http://forum.xda-developers.com/showthread.php?t=1075278
its XWKE7 ,Build Date 18/05/2011 generic XEU
.TO root go to this link.
http://forum.xda-developers.com/showthread.php?t=1103399
its a kernel flash via odin that takes,from hitting the start button,about 10 seconds to complete.It roots and puts CWM on your phone.The kernel you want is one of the first ones (xx-xeu-ke7).You Cant go wrong its all explained.
EDIT: You can also check to see if it really is unbranded by checking your product code by typing this number and checking the last 3 letters of your code *2767*4387264636#
Thanks very much. The PCode I have is GT-I9100LKAXEU.
I'm going to try the latest KI3 and see how that goes, failing that I'll reflash the I9100XWKE7_I9100XXKE4_I9100XEUKD1 I've just got (I note that this lists KE4 and KE7 in the filename, which does match the version I currently have).
The important part about your code is the XEU which is your local CSC.this is recognized by kies when you connect.The first thing Kies does when you connect is rcognize this code to identify the phone and look for the appropriate firmware update.When you flash a new firmware if its not official obviously kies wont understand it cos it doesnt register.Your Product Code says your phone is a UK model (XEU) so for example if you flash an official firmware and by default the phone sets KOR then kies has 2 conflicting CSCs and thus might decide not to connect.If you want your phone to work properly on kies then when you flash an official FW make sure you have XEU selected as your CSC marking *#272*(IMEI)# this will then reboot your phone although its always good to do a factory rest too.Do this anyway although not on an official FW as it might not always set the CSC to your area so it pays to check.
This is what Kies looks at for an upgrade .
http://forum.xda-developers.com/showthread.php?t=1089874
Spoof FW Check Fus may be worth a search also.
jje

Help! Unsure of phone's firmware!

Hi, Thanks in advance for reading and helping me out with this issue.
Here are my phone information.
Model no: GT-I9100
Android Ver: 2.3.3
Baseband Ver: I9100CCKDH
Kernel Ver: [email protected]#2
Build no: GINGERBREAD.XWKDD
My phone is from Singapore so the original firmware should be the asian one (DXKI2). I wanted to root my phone so i followed instructions from this article.
Article url: androidadvices. com/ how-to-update-samsung-galaxy-s-ii-i9100-to-gingerbread-xwkdd-2-3-3-firmware
I followed everything it said, which was to first upgrade the firmware to XWKDD before rooting. I did not wipe any data before the upgrade. So at the end ODIN reflected a pass (green color) and i unplugged my phone. However it entered boot loop and i used the stock recovery mode to flash a stock kernel (DXKH2) to my phone. It seemed to have returned back to factory state but when i check my phone settings it reflected the different versions as mentioned in phone information above.
Please help as i have the conception that all version should be the same but mine is kinda all over the place. Am i wrong?
Secondly, KIES now does not recognise my phone's firmware when i plug it into the computer but i can still access my files through it. Why is that?
Thirdly, where should i go from here to root my phone? Please help provide me with answers and links so that i can eventually root my phone properly and install cyanogenmod onto my phone. I would really appreciate if someone could help answer my questions and give me step by step help for my problem. THANKS!!
Jephtath
Very old KDD firmware with looks like KH2 rooted kernel .
Secondly, KIES now does not recognise my phone's firmware when i plug it into the computer but i can still access my files through it. Why is that?
No codes match on Kies server .KDD and KH2 mix is not a known product .
One upgrade firmware to stock newer version Root phone if you need root to matching version as per instructions .
Stock Roms .and csc
http://forum.xda-developers.com/showthread.php?t=1075278
Root + CWM .
http://forum.xda-developers.com/showthread.php?t=1103399
jje
I am unsure of what do you mean.
However, what i did was to use ODIN and flash the stock kernel for DXKI2 for my phone. I made a mistake in telling you that my original firmware was DXKH2.
Now the phone's build number is still GINGERBREAD.XWKDD.
When I connected my phone back to the computer, KIES cannot read the phone as it says that i have to use the KIES PC studio mode to connect. This error did not take place before hand as KIES would automatically connect to my phone.
What should i do now? I don't know whether my phone is using the latest XWKDD firmware so it may not be ready for rooting. What should be displayed on my phone in order for me to know that the firmwares are ready to be rooted?
Please help me ASAP as I am afraid I have screwed up my phone. I dont even know how to bring it back to original factory settings and everything.
Jephtath
Goooooooooooogle
Jephtath said:
I am unsure of what do you mean.
However, what i did was to use ODIN and flash the stock kernel for DXKI2 for my phone. I made a mistake in telling you that my original firmware was DXKH2.
Now the phone's build number is still GINGERBREAD.XWKDD.
When I connected my phone back to the computer, KIES cannot read the phone as it says that i have to use the KIES PC studio mode to connect. This error did not take place before hand as KIES would automatically connect to my phone.
What should i do now? I don't know whether my phone is using the latest XWKDD firmware so it may not be ready for rooting. What should be displayed on my phone in order for me to know that the firmwares are ready to be rooted?
Please help me ASAP as I am afraid I have screwed up my phone. I dont even know how to bring it back to original factory settings and everything.
Jephtath
Click to expand...
Click to collapse
Mr. Egan showed you the links where to get your answers. Click on them and read and you will find everything you need, XWKDD is a firmware version that is ancient and outdated. You should flash new software for your country/region

[Q] JB Update query Samsung galaxy S3

Hi all....
I am an infrequent user of this site, the last time I pored over the information housed in here was a couple of years ago when I found the site and various threads invaluable for me when rooting my old and trusty HTC Desire.
I am now the owner of a fab and groovy galaxy S3 which I aquired in the UK from carphone warehouse.
I am using Vodafone as a carrier, but my understanding is that the stock phone was not tied in any way to a carrier.
It didn't take me long to root the phone, I only rooted the device because I wanted to get rid of various bits of samsung/bloatware, not in order to Flash a new rom to the phone.
I was more than happy with this until I received a notification that there was an OTA update, this I deemed to be the JB OS, which of course would not install due to the fact the phone was rooted and was using cwm etc.
After a week of cancelling the update and being reminded of it every three hours I decided that it was maybe time to update, I discovered that in order to do this I needed in effect to put the phone back to its factory state, soo I completed a factory reset on the phone and in no time at all I was up and running again with an unrooted S3....however, despite this in the last three weeks I have seen hide nor hair of the update that seemed to be banging at my door for so long!
My question therefore is:
is there something I am unaware of that is now stopping my phone from receiving the OTA update via settings/about device/software update/update(check for updates)?
To help those of you that know about this stuff here are the details from the phone that may help you to help me...and anyone else not in the know enough!
Device Status = Normal (while rooted this obviously showed as being modified)
Model Number GT-19300
Android version 4.0.4
baseband version - 19300XXLG8
kernel version - 3.0.15-928452-user [email protected] #1 SMP PREEMPT Thu Jul 26 12:06:08 KST 2012
Build Number IMM76D.19300XXBLGB
In addition prior to unrooting the phone the foillowing info was parsed and returned :
AP: 19300XXBLG8
CP: 19300XXLH1
CSC: 19300OXABLG8
Following unrooting and completing a factory reset.....the same process returns this information.....
AP: 19300XXBLG8
CP: 19300XXLG8
CSC: Unknown.
My apologies for the length of the post for what is probably a trivial matter, but as a Phone noob (but a systems pro) you can never have too much info!
many thanks in anticipation!
It's because your CSC was lost when you unrooted and hence OTA won't work. You would have been better off using the toolkit (see original development forum) to simply download and flash the JB ROM yourself, then no need to unroot etc.
You can still do this and you'll also get updates usually faster than OTA.
Regarding your bust CSC, try:
http://forum.xda-developers.com/showthread.php?t=1845103
Hmmm...well...
many thanks for the info re the cause of the issue, however, having looked at the following I still am having no joy.
1) downloaded a correct csc file and using odin flashed it to my phone, however, it is still showing the same information as before.
2) Found a stock Rom. the exact same Rom as that which is installed, that has been flashed using Odin and once again, upon reboot the information is exactly the same.
I'm not quite sure why you want to fix it, flashing jb yourself is much quicker, but a quick search found:
Q. I have flashed XXXX ROM and now my CSC is unknown?
A. Generally Speaking CSC does not make much of a difference. If you are really facing a problem which is related to CSC such as some specific apps not working, some language not there etc. Either:
Use
Type *#272*Device IMEI# at Phone dial pad.
Select the CSC that you want.
Click Install.
or Install CSC changer app from the Market and change the CSC
Both ways yopur device will be factory resetted.
Good luck.
I can....
...find all of that myself, It doesn't really help much if the person searching amongst the huge amount of disarticulated information liberally strewn around this forum is faced constantly with broken links or unhelpful replies and threads that vanish up their own orifice.
In order to decorticate that information it helps if some form of standardisation or common language is employed.
I have my reasons for asking the original question.
I am facing a problem and asking for advice and help in order to rectify the issue.
I have tried to flash the JB ROm myself, I am despite what you may consider not stupid, however, I am receiving errors when flashing the rom from the 'update' menu from the recovery menu within the phone.
Elsewhere on this forum I discover that it may be an issue with the csc being in an unknown state, hence my post in the first place, If I was able to follow the instructions and all was working as it should I would not bother anyone here or indeed waste my time doing so.
by querying the csc by using the dial pad it shows me that the correct one is still there, so installing it seems pointless, however, as stated at the very beginning of the question, when parsing the phone for detail info it tells me that the csc is 'UNKNOWN'
Greywolf907 said:
many thanks for the info re the cause of the issue, however, having looked at the following I still am having no joy.
1) downloaded a correct csc file and using odin flashed it to my phone, however, it is still showing the same information as before.
2) Found a stock Rom. the exact same Rom as that which is installed, that has been flashed using Odin and once again, upon reboot the information is exactly the same.
Click to expand...
Click to collapse
Try installing this from the Android Market
https://play.google.com/store/apps/details?id=com.manniakk.cscselector&
Run it and update your CSC to your correct one
EDIT :- Just looked at your phone info in post 1 again, this relates to UK unbranded version so your CSC should be BTU
You shouldn't normally have a problem updating a rooted phone to newer versions provided the base rom is still stock I have never had a problem with mine but everyone is different I guess, I did mine via Kies then just re-rooted afterwards.
...well...
ag4751 said:
Try installing this from the Android Market
Run it and update your CSC to your correct one
Click to expand...
Click to collapse
Hi and thank you also...however, I have checked the sales code and it is properly installed and shown as being BTU, which is correct, this is shown of course by typing into the dial pad...et al ad nausea....whatever, it is correctly displayed, the issue is that when typing into the dial pad *#1234# in order to retrieve the information contained there, it is returning CSC UNKNOWN.
Greywolf907 said:
Hi and thank you also...however, I have checked the sales code and it is properly installed and shown as being BTU, which is correct, this is shown of course by typing into the dial pad...et al ad nausea....whatever, it is correctly displayed, the issue is that when typing into the dial pad *#1234# in order to retrieve the information contained there, it is returning CSC UNKNOWN.
Click to expand...
Click to collapse
OK you wrote this while I was writing my edit in the previous post.
Have you tried just installing the latest 4.1.1 BTU version using Odin you can get it from the Sammobile web site its the PDA version I9300XXDLJ4
http://www.sammobile.com/firmware/?page=3&model=GT-I9300&pcode=BTU&os=1&type=1#firmware
......not
ag4751 said:
OK you wrote this while I was writing my edit in the previous post.
Have you tried just installing the latest 4.1.1 BTU version using Odin you can get it from the Sammobile web site its the PDA version I9300XXDLJ4
....that version no........I did d/l and try this version
United Kingdom 8 Sep 2012 4.1.1 I9300XXBLG8 I9300XXDLI4 283.2 MB Download
which seemed to be relevant to my original build, this is the one that I have been having issues with.
I am also somewhat confused as to how to install the zip file via Odin, I more or less think that the pda file needs to be a single tar/md5 file and of course these things are coming as zips...well..at least the last one I d/l'd did.....
I am as I type sucking the file you suggest down and as soon as hotfile finishes dribbling it into my machine I'll give it a bash and let you know what happens.....many many thanks for taking the time to help me and do it with such good grace and civility, it's refreshing.
Cheers for now!
PS: I tried Kies, on three different machines, two running XP and one running Seven, each time it just doesnt want to know that the phone is even connected...ie. it knows its there, but just doesnt want to actually connect to it...just whirrs and clicks until I get fed up and unplug it....hence the grief I am having one way or another trying to update the O/S...so I can root it again!
Click to expand...
Click to collapse
I am also somewhat confused as to how to install the zip file via Odin, I more or less think that the pda file needs to be a single tar/md5 file and of course these things are coming as zips...well..at least the last one I d/l'd did.....
Click to expand...
Click to collapse
You need to extract the file located inside the zip file, then start Odin, click the PDA button and find the extracted file, put your phone in download mode, connect to your PC, wait for Odin to connect then start the update.
mucho...
ag4751 said:
You need to extract the file located inside the zip file, then start Odin, click the PDA button and find the extracted file, put your phone in download mode, connect to your PC, wait for Odin to connect then start the update.
Click to expand...
Click to collapse
yes I understand all that bit, I didn't make myself clear maybe....The problem I had was that the file I had downloaded seemed to be a zip file containing the whole system, i.e a cloned image, it didn't work...however, the link you so very helpfully provided was just waht i was looking for and couldn't find myself, a single tar/md5 file which has been downloaded, installed and is up and running....I now have JB, but still the csc is classified as unknown...anyhow, that doesn't matter much until the next time I need to update.
My very best regards to you and huge thanks.
have a good 'un
:good:
Got there eventually, strange abut the CSC
If you want to root your phone use this thread, 3rd post if you don't already have it
http://forum.xda-developers.com/showthread.php?t=1957273
Then install this for easy access to recovery
http://forum.xda-developers.com/showthread.php?t=1768142

[Help] / [Q] : Samsung Galaxy S2 (I9100G) - Stuck after Jelly Bean Update attempt

Hello Everyone,
Android OS downloaded an update file of Jelly Bean which I did not want to install but it kept coming back after pushing it forward.
Today, by mistake, I accidently pressed the Install button and the phone is now stuck at boot up screen.
I am (was) on ICS.
I tried connecting the phone with Samsung KIES, but the phone status shows as "Connecting"
I have downloaded ODIN and I would like to go to any rooted firmware (preferred). But I am not sure if I can root from this situation. I may have to recover to boot properly and then root, as I do not want to lose any data.
However, I have never done it and I get confused on which firmware to download for my phone based out of India.
The details I could fetch under the phone battery are :
-------------
Model : GT-I9100G
SSN : -I9100GGSMH
FCC ID : A3LGTI9100G
-------------
Can anyone direct me to the file URLs to download to recover from this position ?
Any thread giving a detailed procedure will be appreciated. I would not like to wipe the existing data over the phone, hence I have not tried the factory reset.
I have gone through :
http://forum.xda-developers.com/showthread.php?t=2345831&highlight=odin+won+t+flash
http://forum.xda-developers.com/showthread.php?t=1671969 >> Will this ODIN version work on my S2 model ?
Also, I do have an external SD card, if possible, can I load any rooted / normal firmware through it ?
Thanks a lot for all your help !!!
Regards,
Sam
187final said:
Hello Everyone,
Android OS downloaded an update file of Jelly Bean which I did not want to install but it kept coming back after pushing it forward.
Today, by mistake, I accidently pressed the Install button and the phone is now stuck at boot up screen.
I am (was) on ICS.
I tried connecting the phone with Samsung KIES, but the phone status shows as "Connecting"
I have downloaded ODIN and I would like to go to any rooted firmware (preferred). But I am not sure if I can root from this situation. I may have to recover to boot properly and then root, as I do not want to lose any data.
However, I have never done it and I get confused on which firmware to download for my phone based out of India.
The details I could fetch under the phone battery are :
-------------
Model : GT-I9100G
SSN : -I9100GGSMH
FCC ID : A3LGTI9100G
-------------
Can anyone direct me to the file URLs to download to recover from this position ?
Any thread giving a detailed procedure will be appreciated. I would not like to wipe the existing data over the phone, hence I have not tried the factory reset.
I have gone through :
http://forum.xda-developers.com/showthread.php?t=2345831&highlight=odin+won+t+flash
http://forum.xda-developers.com/showthread.php?t=1671969 >> Will this ODIN version work on my S2 model ?
Also, I do have an external SD card, if possible, can I load any rooted / normal firmware through it ?
Thanks a lot for all your help !!!
Regards,
Sam
Click to expand...
Click to collapse
I was able to flash with Jelly Bean from the sammobile.com and now the phone looks all good.
Thanks to ODIN and sammobile and not to mentione XDA!
/Sam
187final said:
I was able to flash with Jelly Bean from the sammobile.com and now the phone looks all good.
Thanks to ODIN and sammobile and not to mentione XDA!
/Sam
Click to expand...
Click to collapse
Good job mate!
Don't forget to add [SOLVED] to the title of your post! :good:

Categories

Resources