make text templates abstract
check for null return