thread local cleans on close remove unnecessary loop on set remove unnecessary get on set clean CFI cache on generate