use mut_null, note TODOs