Java low-level bindings with automatic (de)serialization.
Java high-level bindings use newly provided low-level bindings.