improve compact tpl