dependent types fixed