add dto and enum