First part of remodelling towards templated interface