Fix: don't use chaining, use this.inherited() to preserve return value