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

Maintainers (CyanogenMod 11.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:__
* __Asus EeePad Transformer Pad Infinity TF700T:__ dasunsrule32
* __B&N NookColor (encore):__ eyeballer, fattire, keyodi, krylon360, sluo (NookieDevs)
* __Google Galaxy Nexus:__ , bekit, Bumble-Bee, burnsra, KalimochoAz, something15525
* __Google Nexus S:__ burnsra, KalimochoAz, klusark
* __Google Nexus 4:__ rmcc
* __Google Nexus 5:__ fluxi
* __Google Nexus 7:__ burnsra, fattire, nemith (GSM)
* __Google Nexus 10:__ atinm, dalingrin, kornyone, gweedo767
* __HTC Droid DNA:__ crpalmer, invisiblek
* __HTC Droid Incredible 4G LTE:__ intervigil, mdmower
* __HTC Evo 4G LTE:__ kushdeck, toastcfh
* __HTC One (GSM):__ codeworkx, h8rift
* __HTC One (M8):__ deck, h8rift, invisblek, toastcfh
* __HTC One Max (T6):__ flyhalf205, sbrissen
* __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
* __LG Optimus LTE (P930) / LG Nitro HD {P935):__ arcee
* __LG Optimus LTE (SK Telecom) (SU640):__ arcee
* __Moto X (xt1053,xt1055,xt1056,xt1058,xt1060/ghost):__ Hashcode, 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
* __Oppo Find 5:__ intervigil, nebkat
* __Oppo Find 7:__ intervigil, tdm, inwotep
* __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 (GT-N7105):__ codeworkx
* __Samsung Galaxy Note II LTE (AT&T) (SGH-I317):__ codeworkx, cyanogen
* __Samsung Galaxy Note II LTE (T-Mobile) (SGH-T889):__ codeworkx
* __Samsung Galaxy Note II LTE (Verizon) (SCH-I605):__ sbrissen
* __Samsung Galaxy Note II LTE (Sprint) (SPH-L900):__ sbrissen
* __Samsung Galaxy Note II LTE (USCC) (SCH-R950):__ sbrissen
* __Samsung Galaxy Note III (hlte):__ cyanogen, noobnl, slayher
* __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 (T-Mobile) (SGH-T989):__ mikeyman77
* __Samsung Galaxy S II (AT&T) (SGH-I727):__ topprospect
* __Samsung Galaxy S II (AT&T) (SGH-I777):__
* __Samsung Galaxy S II (intl) (GT-I9100):__ codeworkx, Espenfjo
* __Samsung Galaxy S II (intl) (GT-I9100G):__ codeworkx, Jiangyi, Ryuinferno
* __Samsung Galaxy S III (AT&T) (SGH-I747):__ cyanogen, invisiblek, mkasick, noobnl
* __Samsung Galaxy S III (intl) (GT-I9300):__ codeworkx
* __Samsung Galaxy S III LTE (GT-I9305):__ mcampbellsmith, codeworkx
* __Samsung Galaxy S IV (AT&T) (SGH-I337):__ attn1
* __Samsung Galaxy S IV (Canada) (SGH-I337M):__ DvTonder
* __Samsung Galaxy S IV LTE (GT-I9505):__ invisiblek, noobnl
* __Samsung Galaxy S IV (Sprint) (SPH-L720):__ mkasick, noobnl
* __Samsung Galaxy S IV (T-Mobile) (SGH-M919):__ cyanogen
* __Samsung Galaxy S IV (US Cellular) (SCH-R540):__ noobnl
* __Samsung Galaxy S IV (Verizon) (SCH-I545):__ invisiblek
* __Samsung Galaxy S IV Mini 3G (GT-I9190):__ arco
* __Samsung Galaxy S IV Mini LTE (GT-I9195):__ arco
* __Samsung Galaxy S Relay 4G (SGH-T699):__
* __Samsung Galaxy Tab 7" (GSM):__ cdesai, humberos
* __Samsung Galaxy Tab 7" (CDMA):__ jt1134
* __Samsung Galaxy Tab 2 7" (GT-P31xx):__ codeworkx, codyf86
* __Samsung Galaxy Tab 2 10.1" (GT-P51xx):__ codeworkx, codyf86
* __Samsung Galaxy Tab Pro 8.4" (SM-T320):__ crpalmer
* __Samsung Vibrant (SGH-T959):__ FaultException
* __Sony Xperia L (taoshan):__ varunchitre15, jerpelea (FreeXperia team), Kali- (FreeXperia team)
* __Sony Xperia SP (huashan):__ jerpelea, Kali- (FreeXperia team), adfad666, uberlaggydarwin
* __Sony Xperia T (mint):__ jerpelea, Kali- (FreeXperia team), codeworkx, cdesai, tilal6991
* __Sony Xperia V (tsubasa):__ jerpelea, Kali- (FreeXperia team), codeworkx, tilal6991, championswimmer
* __Sony Xperia Z (yuga):__ jerpelea, Kali- (FreeXperia team), cdesai, codeworkx, championswimmer
* __Sony Xperia ZL (odin):__ jerpelea, Kali- (FreeXperia team), championswimmer
* __Sony Xperia ZR (dogo):__ jerpelea, Kali- (FreeXperia team), championswimmer
* __Sony Xperia Tablet Z LTE (pollux):__ jerpelea, Kali- (FreeXperia team), codeworkx
* __Sony Xperia Tablet Z Wifi (pollux_windy):__ jerpelea, Kali- (FreeXperia team), Bumble-Bee
* __Sony Xperia Tablet Z2 LTE (castor):__ Kali-, jerpelea, Binary (FreeXperia team)
* __Sony Xperia Tablet Z2 Wifi (castor_windy):__ Kali-, jerpelea, Binary (FreeXperia team)
* __Sony Xperia Z Ultra (togari):__ jerpelea, Kali- (FreeXperia team)
* __Sony Xperia Z1 (honami):__ jerpelea, Kali- (FreeXperia team), cdesai
* __Sony Xperia Z1 compact (amami):__ jerpelea, Kali- (FreeXperia team), intervigil, championswimmer, Bumble-Bee
* __Sony Xperia Z2 (sirius):__ Kali-, jerpelea (FreeXperia team), Bumble-Bee
* __Sony Z Ultra GPE (togari_gpe):__ jerpelea, Kali- (FreeXperia team), cdesai


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), Lorenzo Faccini (lo97), rheeze (rheeze), Valdevies (Valdevies)
* __Japanese:__ Black Zigong (blackzigong), jiveking (jiveking), おたっく (otack), 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, dhacker29, nardholio
* __Features:__ mad-murdock, wysie, Ander Webbs, ChainsDD, xplodwild
