meta functions