I think you need to think about how boolean interacts with NATIVE_TYPES - this might not work in all cases