CyanogenMod
===========

Maintainers (CyanogenMod 13.0):
-----------------------------
* __Acer A700:__ pawitp
* __Amazon Kindle Fire 1st Edition:__ Hashcode, FuZZ__
* __Amazon Kindle Fire 2nd Edition:__ Hashcode, FuZZ__
* __Asus EeePad Transformer (TF101):__ Bumble-Bee, EnJens
* __Asus EeePad Transformer Prime (TF201):__ Bumble-Bee, EnJens
* __Asus EeePad Transformer Pad TF300T:__  chrmhoffmann
* __Asus EeePad Transformer Pad Infinity TF700T:__ dasunsrule32
* __Asus EeePad Transformer Pad TF701T:__ pershoot
* __Asus Zenfone 2 ZE550ML (Z008):__ crpalmer, jrior001
* __Asus Zenfone 2 ZE551ML (Z00A):__ crpalmer, jrior001
* __Asus Zenfone 2 ZE550KL (Z00L):__ LuK1337, luca020400
* __Asus Zenfone 2 ZE551KL/ZD551KL (Z00T):__ LuK1337, luca020400
* __Asus ZenPad 8.0 Z380KL:__ vm03
* __B&N NookColor (encore):__ eyeballer, fattire, keyodi, krylon360, sluo (NookieDevs)
* __B&N Nook Tablet (acclaim):__  chrmhoffmann
* __Google Android One:__ varunchitre15
* __Google Galaxy Nexus:__ Ziyan, musical_chairs
* __Google Nexus S:__ burnsra, KalimochoAz, klusark
* __Google Nexus 4:__ ciwrl
* __Google Nexus 5:__ ciwrl
* __Google Nexus 5X:__ ciwrl, jakew02
* __Google Nexus 6:__ dhacker29
* __Google Nexus 6P:__ ciwrl, dhacker29, Sam Mortimer
* __Google Nexus 7:__ burnsra, fattire, Thömy, nemith, JoeyRizzoli (GSM)
* __Google Nexus 7 (2013):__ ciwrl, nardholio, zwliew
* __Google Nexus 9:__ simonsickle, ciwrl
* __Google Nexus 10:__ Tortel, ciwrl
* __Google Nexus Player:__ dhacker29, bmc08gt
* __HTC Desire 601(zara/zaracl):__ uberlaggydarwin, PatrikKT
* __HTC Desire 816:__ Grarak, v_superuser
* __HTC Desire Eye:__ uberlaggydarwin
* __HTC Droid DNA:__ crpalmer, invisiblek
* __HTC Droid Incredible 4G LTE:__ intervigil, mdmower
* __HTC Evo 4G LTE:__ kushdeck, toastcfh
* __HTC One (GSM):__ h8rift
* __HTC One M8:__ deck, h8rift, invisblek, toastcfh, u-ra, uberlaggydarwin
* __HTC One M8 Dual SIM (m8dug):__ bgcngm
* __HTC One M9 (hima):__ cyanogen, Rashed97, varunchitre15
* __HTC One Max (T6):__ Flyhalf205
* __HTC One (Sprint):__ kushdeck, toastcfh
* __HTC One (Verizon):__ flyhalf205, mdmower
* __HTC One S:__ intervigil, xkonni
* __HTC One X:__ gorbi16, mdeejay, tbalden, Thömy
* __HTC One X+:__ Lloir, tombriden
* __HTC One XL:__ h8rift, intervigil, jrior001
* __Huawei Ascend Mate 2:__ mdmower, u-ra
* __Huawei Honor 4/4X (cherry):__ dianlujitao, surdupetru, desalesouche
* __LG G2 (AT&T) (D800):__ arcee, Rashed97, Shelnutt2
* __LG G2 (T-Mobile) (D801):__ arcee, Rashed97, Shelnutt2
* __LG G2 (International) (D802):__ arcee, Rashed97, Shelnutt2
* __LG G2 (Canada) (D803):__ arcee, Rashed97, Shelnutt2
* __LG G2 (Sprint) (LS980):__ arcee, Rashed97, Shelnutt2
* __LG G2 (Verizon) (VS980):__ arcee, Rashed97, Shelnutt2
* __LG G2 Mini:__ Quarx2k, vm03, NikitaProAndroid
* __LG G3 (AT&T) (D850):__
* __LG G3 (T-Mobile) (D851):__ bryan2894
* __LG G3 (Canada) (D852):__ cuzz1369
* __LG G3 (International) (D855):__ finnq
* __LG G3 (Korea) (F400):__ TheNoFace
* __LG G3 (Sprint) (LS990):__ Kasual
* __LG G3 (Verizon) (VS985):__ invisiblek
* __LG G3 Beat (D722):__ Quarx2k, vm03, NikitaProAndroid
* __LG G3 s (D724):__ Quarx2k, vm03, NikitaProAndroid
* __LG G4 (T-Mobile) (H811):__ codeworkx, genesixxbf3
* __LG G4 (International) (H815):__ codeworkx, genesixxbf3
* __LG Optimus L70:__ Quarx2k, vm03, NikitaProAndroid
* __LG Optimus L90:__ Quarx2k, vm03, NikitaProAndroid
* __LG Optimus LTE (P930) / LG Nitro HD {P935):__ arcee
* __LG Optimus LTE (SK Telecom) (SU640):__ arcee
* __LG V10 (T-Mobile) (H901):__ genesixxbf3
* __Moto E 2014 (xt1021,xt1022,xt1023/condor):__
* __Moto G 2014 (xt1063,xt1064,xt1068,xt1069/titan):__ LuK1337, luca020400
* __Moto G 4G (xt1039,xt1040,xt1042,xt1045/peregrine):__ somcom3x, intervigil
* __Moto G 4G 2014 (xt1072,xt1077,xt1078,xt1079/thea):__ LuK1337, luca020400
* __Moto X (xt1053,xt1055,xt1056,xt1058,xt1060/ghost):__ Hashcode, Skrilax_CZ
* __Moto X 2014 (victara):__ crpalmer, invisiblek
* __Motorola Moto MAXX(quark) :__ Skrilax_CZ
* __Motorola Atrix HD (MB886/qinara):__ epinter, Hashcode, Skrilax_CZ, nadlabak
* __Motorola Droid 3 (solana):__ Hashcode, stargo
* __Motorola Droid 4 (maserati):__ Hashcode, stargo
* __Motorola Droid Bionic (targa):__ Hashcode, stargo
* __Motorola Droid Maxx (obake-maxx):__ Skrilax_CZ
* __Motorola Droid RAZR/RAZR Maxx (spyder) (CDMA):__ Hashcode, stargo
* __Motorola Droid RAZR HD/HD Maxx (xt926/vanquish) (CDMA):__ Hashcode,  epinter, Skrilax_CZ, nadlabak
* __Motorola Droid RAZR M (xt907/scorpion_mini):__ Hashcode, epinter, Skrilax_CZ, nadlabak
* __Motorola Photon Q (xt897/asanti) (GSM):__ Skrilax_CZ, nadlabak, epinter, Hashcode
* __Motorola Photon Q (xt897c/asanti_c) (CDMA):__ nadlabak, Skrilax_CZ, epinter, Hashcode
* __Motorola RAZR/RAZR Maxx (umts_spyder) (GSM):__ Hashcode, stargo
* __Motorola RAZR HD(xt925/vanquish) (GSM):__ epinter, Hashcode, Skrilax_CZ, nadlabak
* __Motorola Xoom (WiFi):__ bazar, SteadyHawkin, TDR (Team Rogue)
* __Motorola Xoom 3G (UMTS):__ bazar, SteadyHawkin, TDR (Team Rogue)
* __Motorola Xoom 4G LTE (Verizon):__ bazar, SteadyHawkin, TDR (Team Rogue)
* __OnePlus One:__ cyanogen, intervigil, inwotep, arcee
* __OnePlus Two:__ ciwrl, grarak, raymanfx
* __OnePlus X:__ ashwin007, MasterAwesome
* __Oppo Find 5:__ intervigil, nebkat, raymanfx
* __Oppo Find 7:__ intervigil, tdm, inwotep, mikeioannina
* __Oppo N1:__ raymanfx
* __Oppo N3:__ jrior001
* __Oppo R7:__ maniac103, mikeioannina, Rashed97
* __Oppo R7 Plus:__ maniac103, mikeioannina, Rashed97
* __Samsung Captivate (SGH-I896 / SGH-I897):__ pawitp
* __Samsung Epic 4G (SPH-D700):__ bbelos
* __Samsung Exhilarate (SGH-I577):__ mikeyman77, carvsdriver
* __Samsung Fascinate / Mesmerize (SCH-I500):__ jt1134, sbrissen
* __Samsung Galaxy Note (GT-N7000):__ Espenfjo
* __Samsung Galaxy Note II (GT-N7100):__ nebkat
* __Samsung Galaxy Note II LTE (AT&T) (SGH-I317):__ cyanogen, rogersb11
* __Samsung Galaxy Note II LTE (Verizon) (SCH-I605):__ sbrissen, rogersb11
* __Samsung Galaxy Note II LTE (Sprint) (SPH-L900):__ sbrissen, rogersb11
* __Samsung Galaxy Note II LTE (USCC) (SCH-R950):__ sbrissen, rogersb11
* __Samsung Galaxy Note III (hlte):__ cyanogen, noobnl, slayher
* __Samsung Galaxy Note IV Exynos (trelte):__ raymanfx
* __Samsung Galaxy Note IV Exynos (trhplte):__ raymanfx
* __Samsung Galaxy Note 8.0 3G (GT-N5100):__ sbrissen
* __Samsung Galaxy Note 8.0 WiFi (GT-N5110):__ sbrissen
* __Samsung Galaxy Note 10.1 (GT-N80XX):__ Espenfjo
* __Samsung Galaxy Note 10.1 LTE (Verizon) (SCH-I925):__ sbrissen
* __Samsung Galaxy Premier (GT-I9260):__ ljzyal
* __Samsung Galaxy R (GT-I9103):__ Adam77Root, Epsylon3
* __Samsung Galaxy S Blaze 4G (SGH-T769):__ UberPinguin
* __Samsung Galaxy S (GT-I9000):__ pawitp
* __Samsung Galaxy S (GT-I9000B):__ helvio88
* __Samsung Galaxy S II (GT-I9100):__ Caio Schnepper
* __Samsung Galaxy S II (intl) (GT-I9100G):__ Jiangyi, Ryuinferno
* __Samsung Galaxy S II (T-Mobile) (SGH-T989):__ mikeyman77
* __Samsung Galaxy S II (AT&T) (SGH-I727):__ topprospect
* __Samsung Galaxy S III (AT&T) (SGH-I747):__ nardholio
* __Samsung Galaxy S III (intl) (GT-I9300):__ forkbomb
* __Samsung Galaxy S III (Sprint) (SPH-L710):__ noobnl
* __Samsung Galaxy S III (Verizon) (SCH-I535):__ invisiblek
* __Samsung Galaxy S III LTE (GT-I9305):__ mcampbellsmith
* __Samsung Galaxy S IV 3G (GT-I9500):__ intervigil, Alberto96
* __Samsung Galaxy S IV (AT&T) (SGH-I337):__ FarmGeek4Life
* __Samsung Galaxy S IV (Sprint) (SPH-L720):__ noobnl
* __Samsung Galaxy S IV (T-Mobile) (SGH-M919):__ dcd
* __Samsung Galaxy S IV (Verizon) (SCH-I545):__ invisiblek
* __Samsung Galaxy S IV LTE (GT-I9505):__ AntaresOne, invisiblek, dcd, zwliew
* __Samsung Galaxy S IV LTE-A (GT-I9506):__ solk2
* __Samsung Galaxy S IV Mini 3G (GT-I9190):__ arco
* __Samsung Galaxy S IV Mini LTE (GT-I9195):__ arco
* __Samsung Galaxy S V (AU) (SCL23):__ scoty755
* __Samsung Galaxy S V (Vodafone) (SM-G900I):__ Regi24
* __Samsung Galaxy S V LTE (SM-G900F):__ haggertk, OzzysCmAcc
* __Samsung Galaxy Tab 7" (GSM):__ cdesai, humberos
* __Samsung Galaxy Tab 7" (CDMA):__ jt1134
* __Samsung Galaxy Tab 2 7" (GT-P31xx):__ codyf86
* __Samsung Galaxy Tab 2 10.1" (GT-P51xx):__ codyf86
* __Samsung Galaxy Tab Pro 8.4" (SM-T320):__ crpalmer
* __Samsung Galaxy Tab S2 9.7" (SM-T810):__ raymanfx, T_I
* __Samsung Galaxy Tab S2 9.7 (LTE)" (SM-T815):__ raymanfx
* __Samsung Vibrant (SGH-T959):__ FaultException
* __Sony Xperia E3  (flamingo):__ FreeXperia Team
* __Sony Xperia L (taoshan):__ olivieer, FreeXperia Team
* __Sony Xperia M (nicki):__ RonG, FreeXperia Team
* __Sony Xperia M2 (eagle):__ FreeXperia Team
* __Sony Xperia SP (huashan):__ AdrianDC
* __Sony Xperia T (mint):__ AdrianDC, FreeXperia Team
* __Sony Xperia T2 Ultra  (tianchi):__ FreeXperia Team
* __Sony Xperia T3  (seagull):__ FreeXperia Team
* __Sony Xperia TX (hayabusa):__ AdrianDC, FreeXperia Team
* __Sony Xperia V (tsubasa):__ AdrianDC, FreeXperia Team
* __Sony Xperia Z (yuga):__ FreeXperia Team, Turl, olivieer
* __Sony Xperia ZL (odin):__  FreeXperia Team
* __Sony Xperia ZR (dogo):__  FreeXperia Team
* __Sony Xperia Tablet Z LTE (pollux):__ FreeXperia Team, snc
* __Sony Xperia Tablet Z WiFi (pollux_windy):__ FreeXperia Team, snc
* __Sony Xperia Tablet Z2 LTE (castor):__ FreeXperia Team
* __Sony Xperia Tablet Z2 WiFi (castor_windy):__ FreeXperia Team
* __Sony Xperia Z3 Tablet Compact LTE (scorpion):__ FreeXperia Team
* __Sony Xperia Z Ultra (togari):__ FreeXperia Team
* __Sony Xperia Z1 (honami):__ FreeXperia Team
* __Sony Xperia Z1 compact (amami):__ FreeXperia Team, intervigil, championswimmer
* __Sony Xperia Z2 (sirius):__  FreeXperia Team
* __Sony Xperia Z3 (z3):__  FreeXperia Team
* __Sony Xperia Z3 Compact (z3c):__ FreeXperia Team
* __Sony Z Ultra GPE (togari_gpe):__ FreeXperia Team
* __Xiaomi Mi2(s) (aries):__ Michael Zimmermann
* __Xiaomi Mi3/4 (cancro):__ JoeyRizzoli
* __Xiaomi Redmi Note 3 (kenzo):__ TheStrix
* __ZTE Nubia Z9 Max (nx510j):__ dianlujitao

FreeXperia Team:
-------------------
Team: Jerpelea, Bin4ry, Kali-, codeworkx, Bumble-Bee, cdesai, AdFad666, tilal6991, kholk

General developers:
-------------------
* __UI Team:__ blunden, prash
* __UX Team:__ blunden, ciwrl, daneshm, DvTonder, jackmu95, maniac103, Kaik541
* __Other:__ jruesga

Translators:
------------
* __Afrikaans:__ David van Tonder (DvTonder), Corrie Meyer (isimobile)
* __Arabic:__ Umar Omar (uomar8)
* __Asturian:__ esbardu (esbardu), ivarela (malditoastur), Xandru Martino Ruz (Xandru), Xuacu Saturio (Xuacu)
* __Catalan:__ Arnau (Arnau), Pau Galindo (Pau_Galindo)
* __Chinese Simplified:__ Matthew Humphrey (775405984), Contactfront (Contactfront), Easeman Wang (easeman9), jiveking (jiveking), Yun Liu (liuyun97), Hexchain Tong (richard0053), Ryan Chan (smartryan), Thomas Wang (ts0516)
* __Chinese Traditional:__ Hsiang Jung, CHENG (HJCHENG), Kelvin Cheong (kelvincheong), Bing-Hua Wang (louiswpf), npes87184 (npes87184), Ryan Chan (smartryan)
* __Chinese Traditional, Hong Kong:__ Kelvin Cheong (kelvincheong), Ryan Chan (smartryan), Li Chi Tung (tonyli1357)
* __Croatian:__ David Boca (davidboca), markan (markan), Robert Rozić (Rox), Josip Volf (Wuk)
* __Czech:__ Radovan Kepák (bckp), Štěpán Dalecký (daleckystepan), engy (engy), Keltek (Keltek), ScArSVK (ScArSVK), Snoop05 (Snoop05)
* __Danish:__ Morten Jørgensen (Fidoble), Jacob_DK (Jacob_DK), Ole Ingeman Christensen (OIChristensen)
* __Dutch:__ Eddy Witkamp (eddywitkamp), Frank Baeten (frankbaeten), Tom Heisterkamp (HappyFlow), Martin Coulon (martinusbe), Timo Viveen (Nadermane), ray1618 (ray1618), Marco Brohet (therbom)
* __Estonian:__ Rudolf Tammekivi (rtammekivi)
* __Finnish:__ Eero Hyrsky (EnergySnail), Jani Kinnunen (jkinnunen), Niko Koivu (niko0o), Sasu Lehtonen (zazza)
* __French:__ DelPETER (DelPETER), humpf (humpf), Julien Stephan (julienstephan29), laddass (laddass), .... (lemachinbidule), math Matmutant (matmutant), Micks29 (Micks29), opengillou (opengillou), Alexandre Bertrand (trandbert)
* __Galician:__ Daniel (canu7), Isaac Álvarez Veiga (Erithrym)
* __Georgian:__ Alexander (alexander_9)
* __German:__ Sascha Schroeder (c1ph4), Kim Le (elektroschmock78), Jacob Müller (jackmu95), Kilian von Pflugk (kilianvonpflugk), Kilowatt.W (kilowatt), Benjamin Huschle (kolsms), Danny Baumann (maniac103), Mardon (markusmenzel), maxee (maxee), michelsberg (michelsberg), Roman Ettlinger (romanett98), Stefan O. (stefanao), Thomas Reinhardt (tarreas), unpublished (unpublished), Yannik (yanniks)
* __Greek:__ Vasilis Akritas (billak75), Michael Bestas (mikeioannina)
* __Hebrew:__ Arthur Zamarin (arthurzam), evyatark2 (evyatark2), Mr_Guy (Mr_Guy), Oren Cohen (orenc17), sagi232123 (sagi232123)
* __Hindi:__ c0d3ripp3r (c0d3ripp3r), Solomon Sunder (solomonsunder)
* __Hungarian:__ Bálint Czobor (balint), Buga Dániel (BugaDániel), fischerandris (fischerandris), lazajnd (lazajnd), Tamás Tóth (tothtamassyman)
* __Indonesian:__ Vicky Sofyan (Arch9), famihyypia (famihyypia), Ilham Ibrahim (iiibrahim89), Ruswan Efendi (RuswanWu7), tohenk (tohenk)
* __Italian:__ Alessandro Preti (alessandropreti), Francesco Foresta (francescoforesta), Joey Rizzoli (linuxx), Lorenzo Faccini (lo97), rheeze (rheeze), Valdevies (Valdevies)
* __Japanese:__ Black Zigong (blackzigong), jiveking (jiveking), おたっく (otack), Sena Endo (senaforandroid), stmay30 (stmay30)
* __Korean:__ 이승렬 (toy0605)
* __Kurdish:__ falah (Dylan2785)
* __Latvian:__ Māris Rēdmanis (maaris)
* __Lithuanian:__ Liudas Ališauskas (liudas.alisauskas), Edmundas Plentauskas (plentauskas1992), HardLight (polizplz), Saulius Vyšniauskas (SauliusVy)
* __Luxembourgish:__ Michel Weimerskirch (michel_weimerskirch), soued031 (soued031)
* __Malay:__ tanakwagu (tanakwagu)
* __Norwegian Bokmal:__ Vegard Fladby (Allram), Sten Eikrem (Storesteinen)
* __Persian:__ Ali Niki (alinik), Mehdi HosseinZade (Arshen) (Arshen-2014), Yaser Rajabi (yrajabi)
* __Polish:__ Dawid (dawidohs), Kamil Jarosław (devloz1996), Michał Gątkowski (IreuN), Andrzej Ressel (jereksel), Michał Kamień (kamykowsky), lozohcum M (lozohcum), Tomasz Popielarczyk (popielarczyktomasz), Michał Jakubowski (revanmj)
* __Portuguese:__ João Pedro Luís (joaopluis), Sergio Borges (sergioborges99), André Pinela (sheffzor), Tercio Carvalho (tercioc)
* __Portuguese, Brazilian:__ Carlos Henrique Brendler Cabral (carloshbcabral), Gafanhotz (Gafanhotz), Gustavo Rosa (gustavogyn), Tercio Carvalho (tercioc)
* __Romanian:__ apolodor (apolodor), azzureux (azzureux), Marian-Mina Mihai (bboylalu), mihaitaus (mihaitaus)
* __Russian:__ Vladislav Koldobskiy (NeverGone), Alexey Kuznetsov (eeepc1016p), Artem Leshchev (matshch), Maxim Perepelitsa (N0xFF), Yaroslav Yadrishnikov (MrYadro)
* __Serbian (Cyrillic):__ Dragan Milenkovic (gagy187), Sava Mikalački (mikalackis), Драган (WD40)
* __Sinhala:__ Rananga Suraweera (rananga)
* __Slovak:__ Martin (mato), Bohuslav Oršula (orsulab), Peter Malík (PeterM), pyler (pyler), Snoop05 (Snoop05)
* __Spanish:__ Isaac Álvarez Veiga (Erithrym), Jorge Ruesga (jruesga), Lorenzo M (Lorenzo_M), luchomacedo92 (LuchoMacedo), Pau Galindo (Pau_Galindo)
* __Swedish:__ Simon Bäck (backsimon), elelinux (elelinux), Simon Danielsson (sad_88), Ted Lundwall (TedLundwall)
* __Tamil:__ Kishore Sheik Ahamed (kishoreinme), Solomon Sunder (solomonsunder), Stars Soft (starssoft), அருண் குமார் - Arun Kumar (thangamani-arun)
* __Thai:__ pureexe (pureexe)
* __Turkish:__ Arif GÜLER (ArF), Mesut Öztürk (doktormesut), Murat KOŞAK (muratkosak), okirat (okirat), Şenol (senoleker)
* __Ukrainian:__ Andriy Poznakhovskyy (Andrulko), Nazar Sokolovsky (nazar_sokolovsky), Maks (probil), xalich (xalich)
* __Uyghur:__ jiveking (jiveking)
* __Vietnamese:__ Bảo Quân (quan221295), Triet Bui Minh (x3cafe)

Graphics and Assets:
--------------------
* __Wallpapers:__ Matthew Hanley, Henry Mason
* __Icons:__ Bjorn Lunden, Henry Mason
* __Bootanimation:__ Dima Skvarskyi

Former Contributors:
--------------------
* __Devices:__ Entropy512, xplodwild
* __Features:__ mad-murdock, wysie, Ander Webbs, ChainsDD, xplodwild
