Making type list on instantiation, not on the fly