fix function binding for `this`