modified children to include type param