Should we still use IntDef and StringDef in 2018?