Java ME Embedded Client is designed for resource-constrained devices like e-book readers, printers, residential gateways and more. Java SE for Embedded Devices delivers a secure, optimized runtime environment ideal for network-based devices. Java TV provides a performant, secure, and easy-to-implement solution for developing Java applications that run on TV and set-top box devices. The Advanced Graphics and User Interface (AGUI) optional package for Java ME migrates many of the core APIs for advanced graphics and user interface facilities from the Java SE to the Java ME platform.