specify precedence