This file contains the PGP keys of various developers.


pub   2048R/E80B8FFD 2012-03-05 [expires: 2018-03-05]
uid                  P. Taylor Goetz <ptgoetz@apache.org>
sig 3        E80B8FFD 2013-12-17  P. Taylor Goetz <ptgoetz@apache.org>
uid                  P. Taylor Goetz <ptgoetz@gmail.com>
sig 3        E80B8FFD 2012-03-05  P. Taylor Goetz <ptgoetz@apache.org>
sig          3D0C92B9 2013-12-05  Owen O'Malley (Code signing) <omalley@apache.org>
sig          ECB31663 2013-12-05  Matthew Foley (CODE SIGNING KEY) <mattf@apache.org>
sub   2048R/D830CE6C 2012-03-05 [expires: 2018-03-05]
sig          E80B8FFD 2012-03-05  P. Taylor Goetz <ptgoetz@apache.org>

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
Comment: GPGTools - https://gpgtools.org

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
Vw==
=E8Vm
-----END PGP PUBLIC KEY BLOCK-----
