using tpls