simplify templates and blah blah blah