c record/init/finalization work