extend template