permits more scalar types