The module entry point