Added in some type inference that got lost during macro switching