try to wrap reflection