This file contains the PGP keys of various developers.
Please don't use them for email unless you have to. Their main
purpose is code signing.

Examples of importing this file in your keystore:
 gpg --import KEYS
 (need pgp and other examples here)

Examples of adding your key to this file:
 pgp -kxa <your name> and append it to this file.
 (pgpk -ll <your name> && pgpk -xa <your name>) >> this file.
 (gpg --list-sigs <your name> && gpg --armor --export <your name>) >> this file.

-----------------------------------------------------------------------------------

pub   4096R/855D61B1 2015-11-21
uid                  Hao Chen <hao@apache.org>
sig 3        855D61B1 2015-11-21  Hao Chen <hao@apache.org>
sub   4096R/E8A36316 2015-11-21
sig          855D61B1 2015-11-21  Hao Chen <hao@apache.org>

-----BEGIN PGP PUBLIC KEY BLOCK-----

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
=KI+v
-----END PGP PUBLIC KEY BLOCK-----
