todo: objectMap