
                                Emeritus Request

Dear Apache Secretary,

Please change my status to emeritus, according to Section 4.3 of the bylaws.

Section 4.3. Voluntary Conversion of Membership to Emeritus Status. 
Members may convert their membership to emeritus status at any time
upon ten (10) days' written, signed notice delivered to an officer of
the corporation.



Full name: __________________________________________________________


Apache id: __________________________________________________________


Signed: __________________________________ 


Date: ____________________


After completing this form, print, sign, scan and email to secretary@apache.org

Or, use a pdf viewer and annotate your signature, save the file,
and email the pdf to to secretary@apache.org
https://s.apache.org/cla-printer

Alternatively, save this form and sign it with your digital key;
upload the public key to pgpkeys.mit.edu;
and email the file and detached signature to secretary@apache.org

This request will be effective ten days after receipt. Once effective,
you will no longer be counted for quorum purposes at Members Meetings,
and you will no longer be able to vote at Members Meetings, although
you will be notified of upcoming Member Meetings.

Your privileges to review the foundation records and subscribe to
members mail lists will continue. If you would like to become active again,
send email to secretary@apache.org requesting reinstatement, and your
request will be voted on at the next members meeting.
