lua.cpp rework