END-USER LICENSE AGREEMENT FOR "PAPERS, PLEASE"

IMPORTANT: PLEASE READ THE TERMS AND CONDITIONS OF THIS LICENSE AGREEMENT
CAREFULLY BEFORE CONTINUING WITH THIS PROGRAM INSTALL

3909 LLC's End-User License Agreement ("EULA") is a legal agreement between
you (either an individual or a single entity) and 3909 LLC for the 3909 LLC
software product(s) identified above which may include associated software
components, media, printed materials, and "online" or electronic documentation
("SOFTWARE PRODUCT"). By installing, copying, or otherwise using the SOFTWARE
PRODUCT, you agree to be bound by the terms of this EULA. This license
agreement represents the entire agreement concerning the program between you
and 3909 LLC, (referred to as "licenser"), and it supersedes any prior
proposal, representation, or understanding between the parties. If you do
not agree to the terms of this EULA, do not install or use the SOFTWARE
PRODUCT.

The SOFTWARE PRODUCT is protected by copyright laws and international
copyright treaties, as well as other intellectual property laws and treaties.
The SOFTWARE PRODUCT is licensed, not sold.

1. GRANT OF LICENSE.
The SOFTWARE PRODUCT is licensed as follows:
(a) Installation and Use.
3909 LLC grants you the right to install and use copies of the SOFTWARE
PRODUCT on your computer running a validly licensed copy of the operating
system for which the SOFTWARE PRODUCT was designed.
(b) Backup Copies.
You may also make copies of the SOFTWARE PRODUCT as may be necessary for
backup and archival purposes.

2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS.
(a) Maintenance of Copyright Notices.
You must not remove or alter any copyright notices on any and all copies
of the SOFTWARE PRODUCT.
(b) Distribution.
You may not distribute registered copies of the SOFTWARE PRODUCT to third
parties. Evaluation versions available for download from 3909 LLC's websites
may be freely distributed.
(c) Prohibition on Reverse Engineering, Decompilation, and Disassembly.
You may not reverse engineer, decompile, or disassemble the SOFTWARE PRODUCT,
except and only to the extent that such activity is expressly permitted by
applicable law notwithstanding this limitation.
(d) Rental.
You may not rent, lease, or lend the SOFTWARE PRODUCT.
(e) Support Services.
3909 LLC may provide you with support services related to the SOFTWARE
PRODUCT ("Support Services"). Any supplemental software code provided to you
as part of the Support Services shall be considered part of the SOFTWARE
PRODUCT and subject to the terms and conditions of this EULA.
(f) Compliance with Applicable Laws.
You must comply with all applicable laws regarding use of the SOFTWARE
PRODUCT.

3. TERMINATION
Without prejudice to any other rights, 3909 LLC may terminate this EULA if
you fail to comply with the terms and conditions of this EULA. In such event,
you must destroy all copies of the SOFTWARE PRODUCT in your possession.

4. COPYRIGHT
All title, including but not limited to copyrights, in and to the SOFTWARE
PRODUCT and any copies thereof are owned by 3909 LLC or its suppliers. All
title and intellectual property rights in and to the content which may be
accessed through use of the SOFTWARE PRODUCT is the property of the
respective content owner and may be protected by applicable copyright or
other intellectual property laws and treaties. This EULA grants you no
rights to use such content. All rights not expressly granted are reserved
by 3909 LLC.

5. NO WARRANTIES
3909 LLC expressly disclaims any warranty for the SOFTWARE PRODUCT. The
SOFTWARE PRODUCT is provided 'As Is' without any express or implied warranty
of any kind, including but not limited to any warranties of merchantability,
non-infringement, or fitness of a particular purpose. 3909 LLC does not
warrant or assume responsibility for the accuracy or completeness of any
information, text, graphics, links or other items contained within the
SOFTWARE PRODUCT. 3909 LLC makes no warranties respecting any harm that
may be caused by the transmission of a computer virus, worm, time bomb,
logic bomb, or other such computer program. 3909 LLC further expressly
disclaims any warranty or representation to Authorized Users or to any
third party.

6. LIMITATION OF LIABILITY
In no event shall 3909 LLC be liable for any damages (including, without
limitation, lost profits, business interruption, or lost information) rising
out of 'Authorized Users' use of or inability to use the SOFTWARE PRODUCT,
even if 3909 LLC has been advised of the possibility of such damages. In no
event will 3909 LLC be liable for loss of data or for indirect, special,
incidental, consequential (including lost profit), or other damages based
in contract, tort or otherwise. 3909 LLC shall have no liability with
respect to the content of the SOFTWARE PRODUCT or any part thereof, including
but not limited to errors or omissions contained therein, libel,
infringements of rights of publicity, privacy, trademark rights, business
interruption, personal injury, loss of privacy, moral rights or the
disclosure of confidential information.
