record as map