(less compiler sensitive)