fix `this' bug