template and new structure