prepared to allow multiple templates