difference between an abstract bolt and a templated bolt