Rather desperate attempt to get type parameter substitution with bounds working