The software accompanying this license statement (the “Software”)
is the property of Moxa Inc. (the “Moxa”), and is protected by
United States and International Copyright Laws and International
treaty provisions. No ownership rights are granted by this
Agreement or possession of the Software. Therefore, you must treat
the Licensed Software like any other copyrighted material. Your
rights and obligations in its use are described as follows:

1. You may freely redistribute this software under this license.
2. You may freely download and use this software on Moxa's device.
3. You may not modify or attempt to reverse engineer the software, or
   make any attempt to change or even examine the source code of the
   software.
4. You may not re-license or sub-license the software to any person or
   business, using any other license.
5. Moxa(r) is worldwide registered trademark.
