The following authors have all licensed their contributions to Emscripten
under the licensing terms detailed in LICENSE.

(Authors keep copyright of their contributions, of course; they just grant
a license to everyone to use it as detailed in LICENSE.)

* Alon Zakai <alonzakai@gmail.com> (copyright owned by Mozilla Foundation)
* Tim Dawborn <tim.dawborn@gmail.com>
* Max Shawabkeh <max99x@gmail.com>
* Sigmund Vik <sigmund_vik@yahoo.com>
* Jeff Terrace <jterrace@gmail.com>
* Benoit Tremblay <trembl.ben@gmail.com>
* Andreas Bergmeier <abergmeier@gmx.net>
* Ben Schwartz <bens@alum.mit.edu>
* David Claughton <dave@eclecticdave.com>
* David Yip <yipdw@member.fsf.org>
* Julien Hamaide <julien.hamaide@gmail.com>
* Ehsan Akhgari <ehsan.akhgari@gmail.com> (copyright owned by Mozilla Foundation)
* Adrian Taylor <adrian@macrobug.com>
* Richard Assar <richard.assar@gmail.com>
* Nathan Hammond <emscripten@nathanhammond.com>
* Behdad Esfahbod <behdad@behdad.org>
* David Benjamin <davidben@mit.edu>
* Pierre Renaux <pierre@talansoft.com>
* Brian Anderson <banderson@mozilla.com>
* Jon Bardin <diclophis@gmail.com>
* Jukka Jylänki <jujjyl@gmail.com>
* Aleksander Guryanov <caiiiycuk@gmail.com>
* Chad Austin <chad@chadaustin.me> (copyright owned by IMVU)
* nandhp <nandhp@gmail.com>
* YeZhongWen <linghuye2.0@gmail.com>
* Xingxing Pan <forandom@gmail.com>
* Justin Kerk <dopefishjustin@gmail.com>
* Andrea Bedini <andrea.bedini@gmail.com>
* James Pike <totoro.friend@chilon.net>
* Mokhtar Naamani <mokhtar.naamani@gmail.com>
* Benjamin Stover <benjamin.stover@gmail.com>
* Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* Janus Troelsen <janus.troelsen@stud.tu-darmstadt.de>
* Lars Schneider <lars.schneider@autodesk.com> (copyright owned by Autodesk, Inc.)
* Joel Martin <github@martintribe.org>
* Manuel Wellmann <manuel.wellmann@autodesk.com> (copyright owned by Autodesk, Inc.)
* Xuejie Xiao <xxuejie@gmail.com>
* Dominic Wong <dom@slowbunyip.org>
* Alan Kligman <alan.kligman@gmail.com> (copyright owned by Mozilla Foundation)
* Anthony Liot <wolfviking0@yahoo.com>
* Michael Riss <Michael.Riss@gmx.de>
* Jasper St. Pierre <jstpierre@mecheye.net>
* Manuel Schölling <manuel.schoelling@gmx.de>
* Bruce Mitchener, Jr. <bruce.mitchener@gmail.com>
* Michael Bishop <mbtyke@gmail.com>
* Roger Braun <roger@rogerbraun.net>
* Vladimir Vukicevic <vladimir@pobox.com> (copyright owned by Mozilla Foundation)
* Lorant Pinter <lorant.pinter@prezi.com>
* Tobias Doerffel <tobias.doerffel@gmail.com>
* Martin von Gagern <martin@von-gagern.net>
* Ting-Yuan Huang <thuang@mozilla.com>
* Joshua Granick <jgranick@blackberry.com>
* Felix H. Dahlke <fhd@ubercode.de>
* Éloi Rivard <azmeuk@gmail.com>
* Alexander Gladysh <ag@logiceditor.com>
* Arlo Breault <arlolra@gmail.com>
* Jacob Lee <artdent@gmail.com> (copyright owned by Google, Inc.)
* Joe Lee <jlee@imvu.com> (copyright owned by IMVU)
* Andy Friesen <andy@imvu.com> (copyright owned by IMVU)
* Bill Welden <bwelden@imvu.com> (copyright owned by IMVU)
* Michael Ey <mey@imvu.com> (copyright owned by IMVU)
* Llorens Marti Garcia <lgarcia@imvu.com> (copyright owned by IMVU)
* Jinsuck Kim <jkim@imvu.com> (copyright owned by IMVU)
* Todd Lee <tlee@imvu.com> (copyright owned by IMVU)
* Anthony Pesch <inolen@gmail.com>
* Robert Bragg <robert.bragg@intel.com> (copyright owned by Intel Corporation)
* Sylvestre Ledru <sylvestre@debian.org>
* Tom Fairfield <fairfield@cs.xu.edu>
* Anthony J. Thibault <ajt@hyperlogic.org>
* John Allwine <jallwine86@gmail.com>
* Martin Gerhardy <martin.gerhardy@gmail.com>
* James Gregory <jgregory@zynga.com> (copyright owned by Zynga, Inc.)
* Dan Gohman <sunfish@google.com> (copyright owned by Google, Inc.)
* Jeff Gilbert <jgilbert@mozilla.com> (copyright owned by Mozilla Foundation)
* Frits Talbot <frits@metapathy.com>
* Onno Jongbloed <hey@onnoj.net>
* Jez Ng <me@jezng.com>
* Marc Feeley <mfeeley@mozilla.com> (copyright owned by Mozilla Foundation)
* Ludovic Perrine <jazzzz@gmail.com>
* David Barksdale <david.barksdale@adcedosolutions.com>
* Manfred Manik Nerurkar <nerurkar*at*made-apps.biz> (copyright owned by MADE, GmbH)
* Joseph Gentle <me@josephg.com>
* Douglas T. Crosher <dtc-moz@scieneer.com> (copyright owned by Mozilla Foundation)
* Douglas T. Crosher <info@jsstats.com> (copyright owned by Scieneer Pty Ltd.)
* Soeren Balko <soeren.balko@gmail.com> (copyright owned by Clipchamp Pty Ltd.)
* Ryan Kelly (ryan@rfk.id.au)
* Michael Lelli <toadking@toadking.com>
* Yu Kobayashi <yukoba@accelart.jp>
* Pin Zhang <zhangpin04@gmail.com>
* Nick Bray <ncbray@chromium.org> (copyright owned by Google, Inc.)
* Aidan Hobson Sayers <aidanhs@cantab.net>
* Charlie Birks <admin@daftgames.net>
* Ranger Harke <ranger.harke@autodesk.com> (copyright owned by Autodesk, Inc.)
* Tobias Vrinssen <tobias@vrinssen.de>
* Patrick R. Martin <patrick.martin.r@gmail.com>
* Richard Quirk <richard.quirk@gmail.com>
* Marcos Scriven <marcos@scriven.org>
* Antoine Lambert <antoine.lambert33@gmail.com>
* Daniel Aquino <mr.danielaquino@gmail.com>
* Remi Papillie <remi.papillie@gmail.com>
* Fraser Adams <fraser.adams@blueyonder.co.uk>
* Michael Tirado <icetooth333@gmail.com>
* Ben Noordhuis <info@bnoordhuis.nl>
* Bob Roberts <bobroberts177@gmail.com>
* John Vilk <jvilk@cs.umass.edu>
* Daniel Baulig <dbaulig@fb.com> (copyright owned by Facebook, Inc.)
* Lu Wang <coolwanglu@gmail.com>
* Heidi Pan <heidi.pan@intel.com> (copyright owned by Intel)
* Vasilis Kalintiris <ehostunreach@gmail.com>
* Adam C. Clifton <adam@hulkamaniac.com>
* Volo Zyko <volo.zyko@gmail.com>
* Andre Weissflog <floooh@gmail.com>
* Alexandre Perrot <alexandre.perrot@gmail.com>
* Emerson José Silveira da Costa <emerson.costa@gmail.com>
* Jari Vetoniemi <mailroxas@gmail.com>
* Sindre Sorhus <sindresorhus@gmail.com>
* James S Urquhart <jamesu@gmail.com>
* Boris Gjenero <boris.gjenero@gmail.com>
* jonas echterhoff <jonas@unity3d.com>
* Sami Vaarala <sami.vaarala@iki.fi>
* Jack A. Arrington <jack@epicpineapple.com>
* Richard Janicek <r@janicek.co>
* Joel Croteau <jcroteau@gmail.com>
* Haneef Mubarak <haneef503@gmail.com>
* Nicolas Peri <nicox@shivaengine.com> (copyright owned by ShiVa Technologies, SAS)
* Bernhard Fey <e-male@web.de>
* Dave Nicponski <dave.nicponski@gmail.com>
* Jonathan Jarri <noxalus@gmail.com>
* Daniele Di Proietto <daniele.di.proietto@gmail.com>
* Dan Dascalescu <dNOSPAMdascalescu@gmail.com>
* Thomas Borsos <thomasborsos@gmail.com>
* Ori Avtalion <ori@avtalion.name>
* Guillaume Blanc <guillaumeblanc.sc@gmail.com>
* Usagi Ito <usagi@WonderRabbitProject.net>
* Camilo Polymeris <cpolymeris@gmail.com>
* Markus Henschel <markus.henschel@yager.de>
* Ophir Lojkine <ophir.lojkine@eleves.ec-nantes.fr>
* Ryan Sturgell <ryan.sturgell@gmail.com> (copyright owned by Google, Inc.)
* Jason Green <jason@transgaming.com> (copyright owned by TransGaming, Inc.)
* Ningxin Hu <ningxin.hu@intel.com> (copyright owned by Intel)
* Nicolas Guillemot <nlguillemot@gmail.com>
* Sathyanarayanan Gunasekaran <gsathya.ceg@gmail.com> (copyright owned by Mozilla Foundation)
* Nikolay Vorobyov <nik.vorobyov@gmail.com>
* Jonas Platte <mail@jonasplatte.de>
* Sebastien Ronsse <sronsse@gmail.com>
* Glenn R. Wichman <gwichman@zynga.com>
* Hamish Willee <hamishwillee@gmail.com> (copyright owned by Mozilla Foundation)
* Sylvain Chevalier <sylvain.chevalier@gmail.com>
* Nathan Ross <nross.se@gmail.com>
* Zachary Pomerantz <zmp@umich.edu>
* Boris Tsarev <boristsarev@gmail.com>
* Mark Logan <mark@artillery.com> (copyright owned by Artillery Games, Inc.)
* Коренберг Марк <socketpair@gmail.com>
* Gauthier Billot <gogoprog@gmail.com>
* Árpád Goretity <h2co3@h2co3.org>
* Nicholas Wilson <nicholas@nicholaswilson.me.uk>
* Aaron Mandle <aaronmandle@gmail.com>
* Bailey Hayes <Bailey.Hayes@sas.com> (copyright owned by SAS Institute Inc.)
* Paul Holland <pholland@adobe.com>
* James Long <longster@gmail.com>
* David Anderson <danderson@mozilla.com> (copyright owned by Mozilla Foundation)
* Eric Rannaud <e@nanocritical.com> (copyright owned by Nanocritical Corp.)
* William Furr <wfurr@google.com> (copyright owned by Google, Inc.)
* Dan Glastonbury <dglastonbury@mozilla.com> (copyright owned by Mozilla Foundation)
* Warren Seine <warren.seine@aerys.in> (copyright owned by Aerys SAS)
* Petr Babicka <babcca@gmail.com>
* Akira Takahashi <faithandbrave@gmail.com>
* Victor Costan <costan@gmail.com>
* Pepijn Van Eeckhoudt <pepijn.vaneeckhoudt@luciad.com> (copyright owned by Luciad NV)
* Stevie Trujillo <stevie.trujillo@gmail.com>
* Edward Rudd <urkle@outoforder.cc>
* Rene Eichhorn <rene.eichhorn1@gmail.com>
* Nick Desaulniers <nick@mozilla.com> (copyright owned by Mozilla Foundation)
* Luke Wagner <luke@mozilla.com> (copyright owned by Mozilla Foundation)
* Matt McCormick <matt.mccormick@kitware.com>
* Thaddée Tyl <thaddee.tyl@gmail.com>
* Philipp Wiesemann <philipp.wiesemann@arcor.de>
* Jan Jongboom <janjongboom@gmail.com> (copyright owned by Telenor Digital AS)
* Tiago Quelhas <tiagoq@gmail.com>
* Reinier de Blois <rddeblois@gmail.com>
* Yuichi Nishiwaki <yuichi.nishiwaki@gmail.com>
* Jérôme Bernard <jerome.bernard@ercom.fr> (copyright owned by Ercom)
* Chanhwi Choi <ccwpc@hanmail.net>
* Fábio Santos <fabiosantosart@gmail.com>
* Thibaut Despoulain <thibaut@artillery.com> (copyright owned by Artillery Games, Inc.)
* Wei Tjong Yao <weitjong@gmail.com>
* Tim Guan-tin Chien <timdream@gmail.com>
* Krzysztof Jakubowski <nadult@fastmail.fm>
* Vladimír Vondruš <mosra@centrum.cz>
* Brion Vibber <brion@pobox.com>
* Philip Lafleur <sendsbeak@gmail.com>
* Javier Meseguer de Paz <j.meseguer@gmail.com>
* Michael A. Balazs <michael.balazs@gmail.com>
* Andreas Blixt <me@blixt.nyc>
* Haofeng Zhang <h.z@duke.edu>
* Cody Welsh <codyw@protonmail.com>
* Hoong Ern Ng <hoongern@gmail.com>
* Kagami Hiiragi <kagami@genshiken.org>
* Jan Bölsche <jan@lagomorph.de>
* Sebastian Matthes <sebastianmatthes@outlook.com> (copyright owned by Volkswagen AG)
* Robert Goulet <robert.goulet@autodesk.com> (copyright owned by Autodesk, Inc.)
* Juha Järvi <befunge@gmail.com>
* Louis Lagrange <lagrange.louis@gmail.com>
* Ying-Ruei Liang <thumbd03803@gmail.com>
* Stuart Geipel <lapimlu@gmail.com>
* Yeonjun Lim <yjroot@gmail.com>
* Andrew Karpushin <reven86@gmail.com>
* Felix Zimmermann <fzimmermann89@gmail.com>
* Sven-Hendrik Haase <svenstaro@gmail.com>
* Simon Sandström <simon@nikanor.nu>
* Khaled Sami <k.sami.mohammed@gmail.com>
* Omar El-Mohandes <omar.elmohandes90@gmail.com>
* Florian Rival <florian.rival@gmail.com>
* Mark Achée <mark@achee.com>
* Piotr Paczkowski <kontakt@trzeci.eu>
* Braden MacDonald <braden@bradenmacdonald.com>
* Kevin Cheung <kevin.cheung@autodesk.com> (copyright owned by Autodesk, Inc.)
* Josh Peterson <petersonjm1@gmail.com>
* eska <eska@eska.me>
* Nate Burr <nate.oo@gmail.com>
* Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
* Andreas Plesch <andreasplesch@gmail.com>
* Brian Armstrong <brian.armstrong.ece+github@gmail.com>
* Vincenzo Chianese <vincenz.chianese@icloud.com>
* Noam T.Cohen <noam@ecb.co.il>
* Nick Shin <nick.shin@gmail.com>
* Gregg Tavares <github@greggman.com>
* Tanner Rogalsky <tanner@tannerrogalsky.com>
* Richard Cook <rcook@tableau.com> (copyright owned by Tableau Software, Inc.)
* Arnab Choudhury <achoudhury@tableau.com> (copyright owned by Tableau Software, Inc.)
* Charles Vaughn <cvaughn@tableau.com> (copyright owned by Tableau Software, Inc.)
* Pierre Krieger <pierre.krieger1708@gmail.com>
* Jakob Stoklund Olesen <stoklund@2pi.dk>
* Jérémy Anger <angerj.dev@gmail.com>
* Derek Schuff <dschuff@chromium.org> (copyright owned by Google, Inc.)
* Ashley Sommer <flubba86@gmail.com>
* Dave Fletcher <graveyhead@gmail.com>
* Lars-Magnus Skog <ralphtheninja@riseup.net>
* Pieter Vantorre <pietervantorre@gmail.com>
* Maher Sallam <maher@sallam.me>
* Andrey Burov <burik666@gmail.com>
* Holland Schutte <hgschutte1@gmail.com>
* Kerby Geffrard <kerby.geffrard@gmail.com>
* cynecx <me@cynecx.net>
* Chris Gibson <cgibson@mrvoxel.com>
* Harald Reingruber <code*at*h-reingruber.at>
* Aiden Koss <madd0131@umn.edu>
* Dustin VanLerberghe <good_ol_dv@hotmail.com>
* Philip Bielby <pmb45-github@srcf.ucam.org> (copyright owned by Jagex Ltd.)
* Régis Fénéon <regis.feneon@gmail.com>
* Dominic Chen <d.c.ddcc@gmail.com> (copyright owned by Google, Inc.)
* Junji Hashimoto <junji.hashimoto@gmail.com>
* Heejin Ahn <aheejin@gmail.com> (copyright owned by Google, Inc.)
* Andras Kucsma <andras.kucsma@gmail.com>
* Mateusz Borycki <mateuszborycki@gmail.com>
* Franklin Ta <fta2012@gmail.com>
* Jacob Gravelle <jgravelle@google.com> (copyright owned by Google, Inc.)
* Kagami Sascha Rosylight <saschanaz@outlook.com>
* Benny Jacobs <benny@gmx.it>
* Ray Brown <code@liquibits.com>
* Christopher Serr <christopher.serr@gmail.com>
* Aaron Ruß <aaron.russ@dfki.de> (copyright owned by DFKI GmbH)
* Vilibald Wanča <vilibald@wvi.cz>
* Alex Hixon <alex@alexhixon.com>
* Vladimir Davidovich <thy.ringo@gmail.com>
* Yuriy Levchenko <irov13@mail.ru>
* Dmitry Tolmachov <dmitolm@gmail.com>
* Dylan McKay <me@dylanmckay.io>
* Christophe Gragnic <cgragnic@netc.fr>
* Murphy McCauley <murphy.mccauley@gmail.com>
* Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
* Brad Grantham <grantham@plunk.org>
* Sam Clegg <sbc@chromium.org> (copyright owned by Google, Inc.)
* Joshua Lind <joshualind007@hotmail.com>
* Hiroaki GOTO as "GORRY" <gorry@hauN.org>
* Mikhail Kremnyov <mkremnyov@gmail.com> (copyright owned by XCDS International)
* Tasuku SUENAGA a.k.a. gunyarakun <tasuku-s-github@titech.ac>
* Vitorio Miguel Prieto Cilia <vdrbandeiras@gmail.com>
* Evan Wallace <evan.exe@gmail.com>
* Henning Pohl <henning@still-hidden.de>
* Tim Neumann <mail@timnn.me>
* Ondrej Stava <ondrej.stava@gmail.com> (copyright owned by Google, Inc.)
* Jakub Jirutka <jakub@jirutka.cz>
* Loo Rong Jie <loorongjie@gmail.com>
* Jean-François Geyelin <jfgeyelin@gmail.com>
* Matthew Collins <thethinkofdeath@gmail.com>
* Satoshi N. M <snmatsutake@yahoo.co.jp>
* Ryan Speets <ryan@speets.ca>
* Fumiya Chiba <fumiya.chiba@nifty.com>
* Ryan C. Gordon <icculus@icculus.org>
* Inseok Lee <dlunch@gmail.com>
* Yair Levinson (copyright owned by Autodesk, Inc.)
* Matjaž Drolc <mdrolc@gmail.com>
* James Swift <james@3dengineer.com> (copyright owned by PSPDFKit GmbH)
* Ryan Lester <ryan@cyph.com> (copyright owned by Cyph, Inc.)
* Nikolay Zapolnov <zapolnov@gmail.com>
* Nazar Mokrynskyi <nazar@mokrynskyi.com>
* Yury Delendik <ydelendik@mozilla.com> (copyright owned by Mozilla Foundation)
* Kenneth Perry <thothonegan@gmail.com>
* Jim Mussared <jim.mussared@gmail.com>
* Dirk Vanden Boer <dirk.vdb@gmail.com>
* Mitchell Foley <mitchfoley@google.com> (copyright owned by Google, Inc.)
* Oleksandr Chekhovskyi <oleksandr.chekhovskyi@gmail.com>
* Michael Siebert <michael.siebert2k@gmail.com>
* Jonathan Hale <squareys@googlemail.com>
* Etienne Brateau <etienne.brateau@gmail.com>
* Zhiming Wang <zmwangx@gmail.com>
* Jameson Ernst <jameson@jpernst.com>
* Yoan Lecoq <yoanlecoq.io@gmail.com>
* Jiajie Hu <jiajie.hu@intel.com> (copyright owned by Intel Corporation)
* Kamil Klimek <naresh@tlen.pl>
* José Carlos Pujol <josecpujol(at)gmail.com>
* Dannii Willis <curiousdannii@gmail.com>
* Erik Dubbelboer <erik@dubbelboer.com>
* Sergey Tsatsulin <tsatsulin@gmail.com>
* varkor <github@varkor.com>
* Stuart Knightley <website@stuartk.com>
* Amadeus Guo <gliheng@foxmail.com>
* Nathan Froyd <froydnj@gmail.com> (copyright owned by Mozilla Foundation)
* Daniel Wirtz <dcode@dcode.io>
* Kibeom Kim <kk1674@nyu.edu>
* Marcel Klammer <m.klammer@tastenkunst.com>
* Axel Forsman <axelsfor@gmail.com>
* Ebrahim Byagowi <ebrahim@gnu.org>
* Thorsten Möller <thorsten.moeller@sbi.ch>
* Michael Droettboom <mdroettboom@mozilla.com>
* Nicolas Bouquet <hgy01@hieroglyphe.net>
* Miguel Saldivar <miguel.saldivar22@hotmail.com>
* Gert Van Hoey <gert.vanhoey@gmail.com>
* Valtteri Heikkilä <rnd@nic.fi>
* Daniel McNab <daniel.mcnab6+emcc(at)gmail.com>
* Tyler Limkemann <tslimkemann42 gmail.com>
* Ben Smith <binji@google.com> (copyright owned by Google, Inc.)
* Sylvain Beucler <beuc@beuc.net>
* Patrik Weiskircher <patrik@weiskircher.name>
* Tobias Widlund <widlundtobias(at)gmail.com>
* Rob Fors <mail@robfors.com>
* Mike Frysinger <vapier@chromium.org> (copyright owned by Google, Inc.)
* Sébasiten Crozet <developer@crozet.re>
* Andrey Nagikh <andrey@nagih.ru>
* Dzmitry Malyshau <dmalyshau@mozilla.com> (copyright owned by Mozilla Foundation)
* Bjorn Swenson <tie.372@gmail.com>
* Ryhor Spivak <grisha@rusteddreams.net>
* Jan Schär <jscissr@gmail.com>
* Ryhor Spivak <grisha@rusteddreams.net>
* Alexander Bich <quyse0@gmail.com>
* Ashleigh Thomas <ashleighbcthomas@gmail.com>
* Veniamin Petrenko <bjpbjpbjp10@gmail.com>
* Ian Henderson <ian@ianhenderson.org>
* Siim Kallas <siimkallas@gmail.com>
* Carl Woffenden <cwoffenden@gmail.com> (copyright owned by Numfum GmbH)
* Patrick Berger <patrick.berger@xmail.net> (copyright owned by Compusoft Group)
* Alexander Frank Lehmann <alexander.frank.lehmann@compusoftgroup.com> (copyright owned by Compusoft Group)
* Tommy Nguyen <tn0502@gmail.com>
* Thomas Schander <info@thomasschander.com> (copyright owned by Enscape GmbH)
* Benjamin S. Rodgers <acdimalev@gmail.com>
* Paul Shapiro <paul@mymonero.com>
* Elmo Todurov <elmo.todurov@eesti.ee>
* Zoltán Žarkov <zeko@freecivweb.org>
* Roman Yurchak <rth.yurchak@pm.me>
* Hampton Maxwell <me@hamptonmaxwell.com>
* Eric Fiselier <ericwf@google.com> (copyright owned by Google, Inc.)
* Sirapop Wongstapornpat <sirapop.wongstapornpat@student.oulu.fi>
* Matt Kane <m@mk.gg>
* Altan Özlü <altanozlu7@gmail.com>
* Mary S <ipadlover8322@gmail.com>
* Martin Birks <mbirks@gmail.com>
* Kirill Smelkov <kirr@nexedi.com> (copyright owned by Nexedi)
* Lutz Hören <laitch383@gmail.com>
* Pedro K Custodio <git@pedrokcustodio.com>
* Nicolas Allemand <contact@nicolasallemand.com>
* Gabriel Cuvillier <contact@gabrielcuvillier.pro>
* Thomas Lively <tlively@google.com> (copyright owned by Google, Inc.)
* Brandon Surmanski <b.surmanski@gmail.com>
* Rian Hunter <rian@alum.mit.edu>
* Kai Ninomiya <kainino@chromium.org> (copyright owned by Google, Inc.)
* Mickaël Schoentgen <contact@tiger-222.fr>
* Renaud Leroy <capitnflam@gmail.com>
* Florian Stellbrink <florian@stellbr.ink>
* Shane Peelar <lookatyouhacker@gmail.com>
* Alessandro Pignotti <alessandro@leaningtech.com>
* Zheng Tao Lee <zhengtao.lee@autodesk.com> (copyright owned by Autodesk, Inc.)
* Martina Kraus <kraus.martina.m@googlemail.com>
* Jacob Adelgren <jake@eevo.com>
* Ingvar Stepanyan <me@rreverser.com>
* Ben Trapani <ben.trapani1995@gmail.com> (copyright owned by Microsoft, Inc.)
* Tim Lander <tim57282＠hotmail.com>
* Jacob Greenfield <jacob@jacobgreenfield.me>
* Joseph Kogut <joseph.kogut@gmail.com>
* Yi Zhang <milizhang@gmail.com>
* Marc Abramowitz <msabramo@gmail.com>
* Daniel Ruf <daniel@daniel-ruf.de>
* Timothy Trindle <titrindl@microsoft.com> (copyright owned by Microsoft, Inc.)
* Matthew Andres Moreno <m.more500@gmail.com>
* Eric Mandel <eric@cfa.harvard.edu>
* Anthony Catel <paraboul@gmail.com>
* Simon Cooper <simon.d.cooper@hotmail.co.uk>
* Amir Rasouli <arasouli91@gmail.com>
* Nico Weber <thakis@chromium.org>
* Bas Doorn <code@keyn.app> (copyright owned by Keyn B.V.)
* Adam Bujalski <a.bujalski@samsung.com> (copyright owned by Samsung Electronics)
* Guanzhong Chen <gzchen@google.com> (copyright owned by Google, Inc.)
* Denis Serebro <densilver3000@gmail.com>
* Lucas Ramage <ramage.lucas@protonmail.com>
* Andy Wingo <wingo@igalia.com> (copyright owned by Igalia)
* Philipp Gloor <philipp.gloor@pdf-tools.com> (copyright owned by PDF Tools AG)
* Joshua Minter <josh@minteronline.com> (copyright owned by Clipchamp Pty Ltd.)
* Ferris Kwaijtaal <ferrispc@hotmail.com>
* Konstantin Podsvirov <konstantin@podsvirov.pro>
* Eduardo Bart <edub4rt@gmail.com>
* Zoltan Varga <vargaz@gmail.com> (copyright owned by Microsoft, Inc.)
* Fernando Serboncini <fserb@google.com>
* Christian Clauss <cclauss@me.com> (copyright owned by IBM)
* Henry Kleynhans <hkleynhans@bloomberg.net> (copyright owned by Bloomberg L.P.)
* FUJI Goro <g.psy.va@gmail.com>
* Egor Suvorov <esuvorov@think-cell.com> (copyright owned by think-cell Software GmbH)
* James Kuszmaul <jabukuszmaul@gmail.com>
* Wei Mingzhi <whistler_wmz@users.sourceforge.net>
* Sergey karchevsky <sergey.ext@gmail.com>
* Ajay Patel <patel.ajay285@gmail.com>
* Adrien Devresse <adev@adev.name>
* Petr Penzin <petr.penzin@intel.com> (copyright owned by Intel Corporation)
* Tayeb Al Karim <tay@google.com> (copyright owned by Google, Inc.)
* Andrei Alexeyev <akari@taisei-project.org>
* Cesar Guirao Robles <cesar@no2.es>
* Ricky Claven <ricksterhd123@gmail.com>
* Mehdi Sabwat <mehdisabwat@gmail.com>
* MinganMuon <mingan-muon@outlook.com>
* Jonathan Feinberg <feinberg@google.com>
* Osman Turan <osman@osmanturan.com>
* Jaikanth J <jaikanthjay46@gmail.com>
* Gernot Lassnig <gernot.lassnig@gmail.com>
* Christian Boos <cboos@bct-technology.com>
* Erik Scholz <greenNO@SPAMg-s.xyz>
* Michael de Lang <kingoipo@gmail.com>
* Gergely Nagy <ngg@tresorit.com>
* Jan Habermann <jan@habermann.io>
* John Granström <granstrom.john@gmail.com>
* Clemens Backes <clemensb@google.com> (copyright owned by Google, Inc.)
* Tibor Klajnscek <tiborkl@numfum.com>
* Benjamin Golinvaux <benjamin@golinvaux.com>
* Peter Salomonsen <pjsalomonsen@gmail.com>
* Niklas Fiekas <niklas.fiekas@backscattering.de>
* Martín Lucas Golini <spartanj@gmail.com>
* Bumsik Kim <k.bumsik@gmail.com>
* Corentin Wallez <cwallez@chromium.org> (copyright owned by Google, Inc.)
* Austin Eng <enga@chromium.org> (copyright owned by Google, Inc.)
* Hugo Amiard <hugo.amiard@laposte.net>
* Diego Casorran <dcasorran@gmail.com>
* sssooonnnggg <sssooonnnggg111@gmail.com>
* Guillaume Racicot <gufideg@gmail.com>
* SK Min <oranke@gmail.com>
* Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
* Kirill Gavrilov <kirill@sview.ru>
* Karl Semich <0xloem@gmail.com>
* Louis DeScioli <descioli@google.com> (copyright owned by Google, LLC)
* Kleis Auke Wolthuizen <info@kleisauke.nl>
* Michael Potthoff <michael@potthoff.eu>
* Abigail Bunyan <abigail@bold.claims> (copyright owned by Microsoft Corporation)
* David García Paredes <davidgparedes@gmail.com>
* Dan Field <dfield@gmail.com> (copyright owned by Google, Inc.)
* Mike Swierczek <mike@swierczek.io>
* Vasily <just.one.man@yandex.ru>
* Jānis Rūcis <parasti@gmail.com>
* rssqian <rssqian@gmail.com>
* Shachar Langbeheim <nihohit@gmail.com>
* Laurin Agostini <thevolut@gmail.com>
* David Carlier <devnexen@gmail.com>
* Paul Du <du.paul136@gmail.com> (copyright owned by ARSKAN)
* Piotr Doan <doanpiotr@gmail.com>
* Stuart Schechter <stuart.schechter@gmail.com>
* Brett Paterson <brett@fmod.com>
* Robert Aboukhalil <robert.aboukhalil@gmail.com>
* Jonathan Poelen <jonathan.poelen@gmail.com>
* Ashley Hauck <github@khyperia.com>
* Junyue Cao <junyuecao@gmail.com>
* Elías Serrano <feserr3@gmail.com>
* Philip Pfaffe <pfaffe@google.com> (copyright owned by Google, LLC)
* Troy Tae <tjy970721@gmail.com>
* Sky Wang <sky-wang@qq.com>
* popomen <nz_nuaa@163.com>
* Artyom Lebedev <vagran.ast@gmail.com>
* Sebastián Gurin (cancerberoSgx) <sebastigurin@gmail.com>
* Benedikt Meurer <bmeurer@google.com> (copyright owned by Google, LLC)
* Jiulong Wang <jiulongw@gmail.com>
* pudinha <rogi@skylittlesystem.org>
* Nicholas Phillips <nwp2@illinois.edu>
* Colin Guyon <colin.guyon@insimo.fr> (copyright owned by InSimo, SAS)
* Mathias Westerdahl <mwesterdahl76@gmail.com>
* Philip Rideout <prideout@google.com> (copyright owned by Google, LLC)
* Shrek Shao (shrekshao@google.com) (copyright owned by Google, LLC)
* Arran Ireland <ion92@protonmail.com>
* Jia Yuan Lo <jylo06g@gmail.com>
* Philip Lassen <philiplassen@gmail.com>
* Antoine du Hamel <duhamelantoine1995@gmail.com>
* Alexander Köplinger <alex.koeplinger@outlook.com> (copyright owned by Microsoft, Inc.)
* Kenneth Pouncey <kepounce@microsoft.com> (copyright owned by Microsoft, Inc.)
* Mitchell Hwang <mihw@microsoft.com> (copyright owned by Microsoft, Inc.)
* Sean Maher <seanptmaher@gmail.com> (copyright owned by Google, LLC)
* Paul Peny <pmpp.pub@gmail.com>
* Prashanth Nethi <prashant@adobe.com>
* Max Weisel <max@maxweisel.com>
* Georg Rottensteiner <georg@georg-rottensteiner.de>
* Tristan Griffin <tristan.griffin@hcl.com> (Copyright owned by HCL)
* Julien Jorge <julien.jorge@gmx.fr>
* Benjamin Lee <bnllee@ucdavis.edu>
* Attila Oláh <atl@google.com> (copyright owned by Google, LLC)
* Marat Dukhan <maratek@google.com> (copyright owned by Google, LLC)
* Raphael Siegel <siegel.raphael@gmail.com>
* Stephan Reiter <reste@google.com> (copyright owned by Google, LLC)
* kamenokonyokonyoko <kamenokonokotan@gmail.com>
* Lectem <lectem@gmail.com>
* Henrik Algestam <henrik@algestam.se>
* Rocco Musolino <roccomusolino92@gmail.com>
* Pawel Czarnecki <pawel@8thwall.com> (copyright owned by 8th Wall, Inc.)
* Dhairya Bahl < dhairyabahl5@gmail.com >
* Sam Gao <gaoshan274@gmail.com>
* Sebastian Mayr <me@sam.st>
* Vladimir Gamalyan <vladimir.gamalyan@gmail.com>
* Jean-Sébastien Nadeau <mundusnine@gmail.com> (copyright owned by Foundry Interactive Inc.)
* Wouter van Oortmerssen <wvo@google.com> (copyright owned by Google, LLC)
* Alexey Sokolov <sokolov@google.com> (copyright owned by Google, LLC)
* Lukas Rieger <rieger@progress-psd.com>
* Ivan Romanovski <ivan.romanovski@gmail.com>
* Max Brunsfeld <maxbrunsfeld@gmail.com>
* Basil Fierz <basil.fierz@hotmail.com>
* Rod Hyde <rod@badlydrawngames.com>
* Aleksey Kliger <aleksey@lambdageek.org> (copyright owned by Microsoft, Inc.)
* Nicolas Ollinger <nopid@free.fr>
* Michael R. Crusoe <crusoe@debian.org>
* Dexter Chua <dec41@srcf.net>
* Thomas Ballinger <thomasballinger@gmail.com>
* Mehdi Sadeghi <mehdi@mehdix.org>
* Amin Yahyaabadi <aminyahyaabadi74@gmail.com>
* Adam Leskis <leskis@gmail.com>
* Raffaele Pertile <raffarti@zoho.com>
* Patric Stout <github@truebrain.nl>
* Jinoh Kang <jinoh.kang.kr@gmail.com>
* Jorge Prendes <jorge.prendes@gmail.com>
* Alexey Shamrin <shamrin@gmail.com>
* Wirtos <wirtos.new@gmail.com>
* Ben den Hollander <bdenhollander@dynascape.com> (copyright owned by DynaScape Software Inc.)
* Akul Penugonda <akulvp@gmail.com>
* Jan Wolff <contact@jancc.de>
* Pawel Czarnecki <pawel@8thwall.com> (copyright owned by 8th Wall, Inc.)
* Camil Staps <info@camilstaps.nl>
* Michael Kircher <michael.kircher.github@gmail.com>
* Sharad Saxena <sharad.saxena@autodesk.com> (copyright owned by Autodesk, Inc.)
* Vasili Skurydzin <vasili.skurydzin@ibm.com>
* Jakub Nowakowski <jn925+emcc@o2.pl>
* Michael Taylor <mitaylor@adobe.com>
* Andrew Brown <andrew.brown@intel.com> (copyright owned by Intel Corporation)
* Benjamin Puzycki <bpuzycki@umich.edu>
* Marco Buono <marcobuono@invisionapp.com> (copyright owned by InVisionApp, Inc.)
* Philip Gossweiler <philip.gossweiler@outlook.com>
* Rafael Brune <mail@rbrune.de>
* Aleksi Sapon <aleksi.sapon@faro.com> (copyright owned by FARO Technologies, Inc.)
* Radek Doulik <radek.doulik@gmail.com> (copyright owned by Microsoft, Inc.)
* Érico Porto <ericoporto2008@gmail.com>
* Albert Vaca Cintora <albertvaka@gmail.com>
* Zhi An Ng <zhin@google.com> (copyright owned by Google, Inc.)
* Ian Jackson <ijackson@chiark.greenend.org.uk>
* Brian Gontowski <brian@gontowski.com>
* Bobbie Chen <bobbie.chen75@gmail.com>
* Nicholas Hollander <nhollander98@gmail.com>
* Camillo Lugaresi <camillol@google.com> (copyright owned by Google LLC)
* Chris Craig <emscripten@goldwave.com>
* Le Yao <le.yao@intel.com> (copyright owned by Intel Corporation)
