adjusted lib entry point