access scope in liquidjs filter

HTML

<script src="https://cdn.jsdelivr.net/npm/liquidjs/dist/liquid.browser.min.js"></script>
<div id="log"></div>

JavaScript

const { Liquid, toPromise } = liquidjs
const engine = new Liquid()

engine.registerTag('upper', {
    parse: function(tagToken, remainTokens) {
        this.str = tagToken.args; // name
    },
    * render(ctx) {
        var str = yield this.liquid._evalValue(this.str, ctx);
        return str.toUpperCase() // 'ALICE'
    }
});

const tpl = `{% upper name %}`
const scope = { name: "alice" }
engine.parseAndRender(tpl, scope).then(html => log(html))

function log(text) {
   document.querySelector("#log").innerText += text + '\n';
}