Galaxy S5 Stock Firmware

Here are the stock firmware for the Galaxy S5.  Stock firmware is basically the original firmware installed on the phone. It is the full factory firmware or  also called as stock ROM that are officially built and released by Samsung during the market launched of the Galaxy S5 and then followed by any OTA or Kies software updates from Samsung’s firmware server.  All of these stock firmware are unmodified or unrooted, it’s all untouched and stayed as original for which is very useful  for restoring back your Samsung Galaxy S5 phones to its original factory default settings.

When and Why We Use a Stock Firmware?

Stock firmware are being used by advanced users and after-market developers. Advanced users may only use it  every time when they are about to restore back their Galaxy S5 to its original firmware settings or the factory default state.  While Android is an Open Source Project (AOSP), after-market developers  are free to used the stock firmware as their based for making it into a custom made firmware, like removing  and adding some tweaks to the look and style of the original  design, including apps, UI settings, widgets bars and icons, theme, wallpapers, ringtones and even among other stuff  like injecting superuser access  or root.

Here are some few insights why you need the stock firmware.

  • Revert back to stock – Restore  or return back your Galaxy S5 from any custom ROM to stock official firmware.
  • Unroot – Remove root and restore the device to the original state.
  • Manually upgrade – One of your last resort to get the newest software update when the time comes that OTA update and even Kies update has blocked your Galaxy S5 when it finds out that your device has been modified.
  • Fix Soft-bricks – It will repair your Galaxy S5 when you ended-up into bootloops, stuck at welcome screen carrier logo or Samsung logo when you messed-up from customizing.
  • Pull and dump any individual system files such as Kernel, Boot image, Stock Recovery, CSC, Modem, Radio Interface Layer (RIL) etc. (developers method)

What does stock firmware cannot do?

Unlocking the Galaxy S5?

Stock firmware does not do for unlocking a locked Samsung Galaxy S5 from a certain network providers. Some folks might have thought that flashing an unbranded stock firmware on top on carrier branded and a locked Galaxy S5 will unlocked the phone so it can be used to other network providers SIM-cards, no it is not. Though it will only de-brand the phone like removing the carrier logo, ringtones, default apps but it will still remain locked.

Resetting the KNOX Warranty counter?

In recent Android 4.4.2 KitKat  Updates there is this KNOX app that secured the users personal data. The KNOX counter gets tripped from “0x0 to 0x1” once the Galaxy S5 has been gone into modification like rooting, installing custom recovery and any system images that are unofficially built by Samsung.

Important Note: You may only download and install the specified stock firmware according to your Galaxy S5 phone model number. As you may not know, there are numerous versions of the Galaxy S5 in each and every countries. Each of these Galaxy S5 versions uses different firmware build, flashing a non-specified stock firmware to other Galaxy S5 variants may result into bricks. Meaning it will also causes damage to your phone and you cannot recover it by your own.  So please don’t play around and messed with the stock firmware if you don’t know exactly how to use it.  Use of these Galaxy S5 stock firmware is solely at your own risk!

Before you download a stock firmware you may confirm first of  what Galaxy S5 version or model number you have in your hands right now. To do this just simply dial this code on the keypad *#12345# or go to Settings > About Device > then look for the model number along with general system information of your phone.

galaxy s5 G900F 4.4.2 G900FXXU1ANE2 firmware update

If you will use the stock firmware to unroot or return your Galaxy S5 to stock, you must only grab the firmware build version that matched  with the firmware build version of your rooted or modified Samsung Galaxy S5.  You may not downgrade to the older stock firmware if your Galaxy S5 already runs on the latest updates.

Disclaimer: Stock are to be used by advanced user only.  Do not play and mess-up with stock firmware if you do not exactly knew where and how to use it.  Use of the stock firmware is solely at your own risk.

Important Note: DO NOT DOWNGRADE or Revert Back to older software updates if you’re currently rooted firmware and custom ROM is based on latest updates.  You must only grab and install back the the stock firmware that matched with the build number of your phone is running now.

For fixing undesirable soft-bricks while modding, you may also try to remember of what was the firmware build number or version your phone was running before you ended-up into bootloops, stuck on welcome screen logo, and couldn’t boot normally.

SM-G900A (AT&T)

Build version Android version Build/Release  date Download
G900AUCU4DQA1 Android 6.0.1 Marshmallow February 2017   (details)  n/a
G900AUCS4CPH4 Android 6.0.1 Marshmallow September 2016  (details) (link)
G900AUCS4CPH3 Android 6.0.1 Marshmallow September 2016  (details) (link)
G900AUCU4CPH2 Android 6.0.1 Marshmallow August 2016 (details)  n/a
G900AUCU4DPG3 Android 6.0.1 Marshmallow August  2016  n/a
G900AUCU4DPF3 Android 6.0.1 Marshmallow July 2016  n/a
G900AUCU4DPE3 Android 6.0.1 Marshmallow June 2016 – May Security Patch  n/a
G900AUCS4CPA6 5.1.1 Lollipop April 2016 (link)
G900AUCU4CPA2 5.1.1 Lollipop March 2016 (link)
G900AUCU4COI5 5.1.1 Lollipop October 2015
G900AUCU4BOF3 5.0 Lollipop August 2015
G900AUCU4BOF2 5.0 Lollipop July 2015
G900AUCU3BOC4 5.0 Lollipop April 2015
G900AUCU2AOA1 4.4.4 KitKat February 2015
G900AUCU2ANG3 4.4.2 KitKat September 2014 (details)   n/a
G900AUCU2AND3 4.4.2 KitKat May 2014 (details) (link)
G900AUCU1ANCE 4.4.2 KitKat April 2014 (full stock-link)
Note: Do not install on top of any new update)

SM-G900P  (Sprint)

Build version Android version Build/Release  date Download
G900PVPU3CPL2 6.0.1 Marshmallow January 2017
G900PVPS3CPK1 6.0.1 Marshmallow December 2016
G900PVPU3CPJ2 6.0.1  Marshmallow October 2016  (details) (link)
G900PVPU3CPH3 6.0.1  Marshmallow September 2016  (details) (link)
G900PVPU3CPG1 6.0.1  Marshmallow August 2016
G900PVPS3CPE2 6.0.1  Marshmallow July 2016
G900PVPU3CPE1 6.0.1  Marshmallow June 2016
G900PVPU3CPCA 6.0.1  Marshmallow April 2016
G900PVPU3BOK4 5.0   Lollipop December 2015
G900PVPU3BOG1 5.0   Lollipop August 2015
G900PVPU3BOF6 5.0  Lollipop July 2015
G900PVPU1BOD3 5.0 Lollipop May 2015 (details) (link)
G900PVPU1BOA6 5.0 Lollipop February 2015 (details) (link)
G900PVPU1ANK4 4.4.4 KitKat November 2014  (details) (link)
G900PVPU1ANE5 4.4.2 KitKat May 2014  (details) (link)
G900PVPU1AND2 4.4.2 KitKat April 2014 (details) (link)
G900PVPU1ANCB 4.4.2 KitKat March 2014 (link)

SM-G900T (T-Mobile)

Build version Android version Build/Release  date Download
G900TUVS1GQA2 6.0.1 Marshmallow February 2017 (details) (link)
G900TUVS1GPK3 6.0.1 Marshmallow December 2016 (details) (link)
G900TUVS1GPI1 6.0.1 Marshmallow October 2016  (details) (link)
G900TUVS1GPG2 6.0.1 Marshmallow July 2016  (details) (link)
G900TUVU1GPE1 6.0.1  Marshmallow May 2016
G900TUVS1FOL1 5.1.1  Lollipop December 2015
G900TUVS1FOJ4 5.1.1  Lollipop November 2015
G900TUVU1FOG6 5.1.1  Lollipop August 2015 (details) (link)
G900TUVU1FOF6 5.1.1  Lollipop February 2015 (details) (link)
G900TUVU1DOB1 5.0 Lollipop February 2015 (details) (link)
G900TUVU1CNK2 4.4.2 KitKat November 2014 (details) (link)
G900TUVU1BNH5 4.4.2 KitKat September 2014 (details) (link)
G900TUVUBNG4 4.4.2 KitKat August 2014  (details) (link)
G900TUVUBNG3 4.4.2 KitKat July 2014  (details) (link)
G900TUVU1BNF6 4.4.2 KitKat June 2014 (details) (link)
G900TUVU1ANE6 4.4.2 KitKat June 2014 (details) (link)
G900TUVU1ANE5 4.4.2 KitKat May 2014 (link)
G900TUVU1ANCH 4.4.2 KitKat March 2014 (link)

SM-G900T3 (T-Mobile)

Build version Android version Build/Release  date Download
G900T3UVS3GPK3 6.0.1 Marshmallow December 2016 (details) (link)
G900T3UVS3GPI1 6.0.1 Marshmallow October 2016(details) (link)
G900T3UVS2GPG2 6.0.1  Marshmallow August 2016
G900T3UVU1GPE1 6.0.1  Marshmallow May 2016
G900T3UVS1FOJ4 5.1.1  Lollipop November 2015
G900T3UVU1FOG6 5.1.1 Lollipop August 2015

SM-G900V  (Verizon)

Build version Android version Build/Release  date Download
G900VVRS2DQA1 6.0.1 Marshmallow January 2017 (details) (link)
G900VVRS2DPL1 6.0.1 Marshmallow December 2016 (details) (link)
G900VVRU2DPJ2 6.0.1 Marshmallow December 2016 (details) (link)
G900VVRU2DPG2 6.0.1 Marshmallow October 2016 (details) (link)
G900VVRU2DPF4 6.0.1 Marshmallow July 2016  (details) (link)
G900VVRU2DPD1 6.0.1 Marshmallow June 2016 (details) (link)
G900VVRU2BPB1 5.0 Lollipop March 2016 (link)
G900VVRU2BOK3 5.0 Lollipop December 2015 (details) (link)
G900VVRU2BOG5 5.0 Lollipop August 2015 (details) (link)
G900VVRU2BOE1 5.0 Lollipop July 2015  (details) (link)
G900VVRU1BOD5 5.0 Lollipop March 2015 (details) (link)
G900VVRU1BOC4 5.0 Lollipop April 2015 (details) (link)
G900VVRU1BOA8 5.0 Lollipop February 2015 (details) (link)
G900VVRU1ANK2 4.4.4 KitKat December 2014 (details) (link)
G900VVRU1ANI2 4.4.4 KitKat September 2014 (details) (link)
G900VVRU1ANHA 4.4.4 KitKat August 2014 (details) (link)
G900VVRU1ANE9 4.4.2 KitKat July 2014 (details) (link)
G900VVRU1ANCG 4.4.2 KitKat April 2014 (link)

SM-G900R4 (US Cellular)

Build version Android version Build/Release  date Download
G900R4VXS2CPJ1 6.0.1 Marshmallow October 2016 (link)
G900R4VXU2CPF2 6.0.1 Marshmallow July 2016 (link)
G900R4VXU2CPD2 6.0.1 Marshmallow May 2016 (link)
G900R4VXU2BOG2 5.0 Lollipop August 2015 (link)
G900R4VXU2BOF3 5.0 Lollipop June 2015 (link)
G900R4VXU1BOC1 5.0 Lollipop April 2015 (link)
G900R4VXU1ANG3 4.4.2 KitKat July 2014 (link)
G900R4VXU1ANCF 4.4.2 KitKat April 2014 (link)

SM-G900W8 (Canada)

Carrier Build version Android version Build/Release date Download
Rogers G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3 RWC 6.0.1 Marshmallow May 2016
G900W8VLU1COI4 RWC 5.1.1 Lollipop September 2015
G900W8VLU1BOC2 RWC 5.0 Lollipop August 2015 (details) (link)
G900W8VLU1BOC1_RWC 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_RWC 5.0 Lollipop March 2015 (link)
G900W8VLU1ANF3_RWC 4.4.2 KitKat June 2014 (link)
G900W8VLU1AND1_RWC 4.4.2 KitKat June 2014 (link)
G900W8OYA1ANCA_RWC 4.4.2 KitKat June 2014
Bell G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_BMC 6.0.1 Marshmallow May 2016
G900W8VLU1COI4_BMC 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_BMC 5.0 Lollipop August 2015 (link)
G900W8VLU1BOC1_BMC 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_BMC 5.0 Lollipop March 2015 (link)
G900W8VLU1ANF3_BMC 4.4.2 KitKat June 2014 (link)
G900W8VLU1AND1_BMC 4.4.2 KitKat June 2014 (link)
Telus G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_TLS 6.0.1 Marshmallow May 2016
G900W8VLU1COI4_TLS 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_TLS 5.0 Lollipop August 2015 (link)
G900W8VLU1BOC1_TLS 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_TLS 5.0 Lollipop March 2015 (link)
G900W8VLU1ANF3_TLS 4.4.2 KitKat June 2014 (link)
G900W8VLU1AND1_TLS 4.4.2 KitKat June 2014 (link)
G900W8OYA1ANCG_TLS 4.4.2 KitKat June 2014
Virgin-Mobile G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_VMC 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1COI4_VMC 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_VMC 5.0 Lollipop August 2015 (link)
G900W8VLU1BOC1_VMC 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_VMC 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_VMC 4.4.2 KitKat June 2014 (link)
G900W8OYA1ANCG_VMC 4.4.2 KitKat May 2014
Koodo G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_KDO 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1COI4_KDO 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_KDO 5.0 Lollipop August 2015 (link)
G900W8VLU1BOC1_KDO 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_KDO 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_KDO 4.4.2 KitKat May 2014 (link)
G900W8OYA1ANCG_KDO 4.4.2 KitKat May 2014
Fido G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_FMC 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1COI4_FMC 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_FMC 5.0 Lollipop August 2015 (link)
G900W8VLU1BOC1_FMC 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_FMC 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_FMC 4.4.2 KitKat May 2014 (link)
G900W8OYA1ANCA_FMC 4.4.2 KitKat March 2014
Wind G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_GLW 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1COI4_GLW 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_GLW 5.0 Lollipop August 2015
G900W8VLU1BOB3_GLW 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_GLW 4.4.2 KitKat March 2014 (link)
G900W8OYA1ANCG_GLW 4.4.2 KitKat March 2014
Videotron G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_VTR 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1COI4_VTR 5.1.1 Lollipop September 2015 (link)
G900W8VLU1BOC2_VTR 5.0 Lollipop August 2015 (link)
G900W8VLU1BOB3_VTR 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_VTR 4.4.2 KitKat March 2014 (link)
G900W8OYA1ANCG_VTR 4.4.2 KitKat March 2014
Eastlink G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_ESK 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1BOC2_ESK 5.0 Lollipop August 2015 (link)
G900W8VLU1BOB3_ESK 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_ESK 4.4.2 KitKat March 2014 (link)
G900W8OYA1ANCG_ESK 4.4.2 KitKat March 2014
Mobilicity G900W8VLU1BOC2_MCT 5.0 Lollipop August 2015  (link)
G900W8VLU1BOC1_MCT 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_MCT 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_MCT 4.4.2 KitKat March 2014 (link)
G900W8OYA1ANCG_MCT 4.4.2 KitKat March 2014
Sasktel  G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_BWA 6.0.1 Marshmallow May 2016 (link)
G900W8VLU1BOC2_BWA 5.0 Lollipop August 2015 (link)
G900W8VLU1BOC1_BWA 5.0 Lollipop March 2015 (link)
G900W8VLU1BOB3_BWA 5.0 Lollipop March 2015 (link)
G900W8VLU1AND1_BWA 4.4.2 KitKat March 2014 (link)
G900W8OYA1ANCG_BWA 4.4.2 KitKat March 2014
MTS G900W8VLS1DPF3 6.0.1 Marshmallow July 2016 (link)
G900W8VLU1DPD3_MTA 6.0.1 Marshmallow May 2016 (link)

SM-G900I  (Australia, New Zealand, India & Taiwan)

Build version Android version Build/Release date Download
G900IDVU1CPL1 Android 6.0.1 Marshmallow January 2017 Australia -(link)
Telstra AU –  (link)
Optus AU –  [OPS (link)
Vodafone AU –   (link)
India – (link)
G900IDVU1CPJ2 Android 6.0.1 Marshmallow November 2016 Australia  -(link)
Telstra AU –  (link)
Optus AU –   (link)]
Vodafone AU – (link)
G900IDVS1CPI2 6.0.1 Marshmallow October 2016 Australia – [XSA (link)]
Telstra AU – [TEL  (link)]
G900IDVS1CPH1 6.0.1 Marshmallow September 2016 Australia – [XSA (link)]
Telstra AU – [TEL  (link)]
Optus AU –  [OPS (link)]India – [INU (link)]
India -[INS (link)]
G900IDDS1CPG2 6.0.1 Marshmallow July 2016 India – [INU (link)]
India -[INS (link)]
G900IDVU1CPG2 6.0.1 Marshmallow July 2016 Australia – [XSA (link)]
Optus AU –  [OPS (link)
G900IDVU1CPF1 6.0.1 Marshmallow July 2016 New Zealand – [NZC (link)]
Vodafone NZ – [VNZ (link)]
Spark NZ – [TNZ  (link)]
G900IDDU1CPE2 6.0.1 Marshmallow May 2016 India – [INU (link)]
India -[INS (link)]
G900IDDU1CPD2 6.0.1 Marshmallow April 2016
India – [INU (link)]
India -[INS (link)]
G900IDDU1CPD1 6.0.1 Marshmallow April 2016
India – [INU (link)]
India -[INS (link)]
G900IDVU1BOJ1 5.0 Lollipop April 2016
Australia – [XSA (link)]
Telstra AU – [TEL  (link)]
Optus AU –  [OPS (link)]
New Zealand – [NZC (link)]
Vodafone NZ – [VNZ (link)]
Spark NZ – [TNZ  (link)]
G900IDDU1BOJ2 5.0 Lollipop October 2015 India – [INU (link)]
India -[INS (link)]
G900IDVU1BOH4 5.0 Lollipop October 2015 Australia – [XSA (link)]
Telstra AU – [TEL  (link)]
Spark – [TNZ (link)]
G900IDVU1BOE1 5.0 Lollipop June 2015 Australia – [XSA -(link)]
Telstra AU – [TEL (link)]
Optus AU –  [OPS (link)]
New Zealand – [NZC (link)]
Vodafone AU – [VAU (link)]
G900IDDU1BOD3 5.0 Lollipop May 2015 India – INU (link)
G900IZTU1BOA1 5.0 Lollipop March  2015  (details) Taiwan – BRI (link)
G900IDVU1ANK1 4.4.2 KitKat December 2014 (details) Australia – [XSA (link)]
Telstra AU – [TEL (link)]
Optus AU –  [OPS (link)]
Vodafone AU –  [VAU (link)]
New Zealand – [NZC  (link)]
Vodafone NZ – [VNZ (link)]
Spark NZ – [TNZ (link)]
G900IDVU1ANE2 4.4.2 KitKat June 2014 New Zealand – [NZC (link)]
Vodafone NZ – [VNZ (link))]
Spark NZ – [TNZ (link)]
G900IDVU1ANG3 4.4.2 KitKat June 2014 Australia – [XSA (link)]
Optus AU –  [OPS (link)]
Vodafone AU –  [VAU (link)]
G900IDVU1ANE1 4.4.2 KitKat June 2014 (details) Australia – [XSA (link)]
Telstra AU – [TEL (link)]
Optus AU –  [OPS (link)]
Vodafone AU –  [VAU (link)]
G900IDVU1AND2 4.4.2 KitKat May 2014 (details) Australia – XSA – (link)
G900IDVU1ANC6 4.4.2 KitKat March 2014  Australia – XSA – (link)

SM-G900F Snapdragon (International)

Official Android 6.0.1 Marshmallow firmware for both unlocked/unbranded, and the carrier branded Galaxy S5  SM-G900F were merged at this page:
– Galaxy S5 SM-G900F stock firmware

These are the latest updates

Build version Android version Build / release date Download
G900F S1CQAV 6.0.1 Marshmallow January 2017 UK (BTU) – (link)
G900F S1CPLV 6.0.1 Marshmallow  December 2016 UK (BTU) – (link)
G900F S1CPK1 6.0.1 Marshmallow  November 2016 UK (BTU) – (link)
G900F U1CPJ6  6.0.1 Marshmallow  October 2016  UK (BTU) – (link)

SM-G900H Exynos (International)

All Official firmware from Android 5.0 KitKat, Android 5.1.1 Lollipop to latest Android 6.0.1 Marshmallow were merged at this page:
– Galaxy S5 SM-G900H stock firmware

Here are the latest build version :

 Build version  Android version  Build / Release date  Region
G900H S1CPJ9 6.0.1 Marshmallow October 2016 Middle East, Africa
G900H S1CPJ7  6.0.1 Marshmallow October 2016 Europe
G900H S1CPJ5 6.0.1 Marshmallow October 2016 Southeast Asia
G900H U1CPJ1  6.0.1 Marshmallow October 2016  Latin America
G900H S1CPJA 6.0.1 Marshmallow October 2016  Asia

SM-G900T1 (Metro PCS)

Build version Android version Build/Release  date Download
G900T1UVS1GPK3 6.0.1 Marshmallow December 2016 (details) (link)
G900T1UVS1GPI1 6.0.1 Marshmallow October 2016 (details) (link)
G900T1UVS1GPG2 6.0.1  Marshmallow August 2016
G900T1UVU1GPE1 6.0.1  Marshmallow May 2016
G900T1UVS1BOL1 5.1.1  Lollipop December 2015 (link)
G900T1UVS1BOJ4 5.1.1  Lollipop November 2015 (link)
G900T1UVU1BOH1 5.1.1 Lollipop August 2015 (link)
G900T1UVU1ANK1 4.4.2 KitKat December 2014 (link)
G900T1UVU1ANE7 4.4.2 KitKat June 2014 (link)
G900T1UVU1ANCI 4.4.2 KitKat April 2014 (link)

Odin Flasher Tools

Odin3_v3.07 Download
Odin3_v3.09 Download
Odin3_v3.10.6 Download
Odin3_v3.10.7 Download
USB Driver (Download the latest Kies 3) or Download

Page updated on February 24, 2017