Fixed instantiation requires full template specification, not just a typedef