template
domain utils