Hi, why this is not working ? class Base{ int a; } class BaseTemplate(E):Base{ E value; this(E value){ this.value=value; } } class Concrete:BaseTemplate!int{ this(int value){ super(value); } } unittest{ Algebraic!(Concrete) holder; Concrete a=new Concrete(4); holder =Algebraic!Concrete(a); }