use reference instead of datalistelement