should we just `return`? or setting the `value` and passing to `to_native` ok?