libpuzzle Erlang NIF