add singleton template