prec pattern