adapter, unify with template-specs