adding the JNA implementation.