template lib