Let’s start with the first case and work our way down.
undefined, but why? Arrow functions can never have their own
this bound. Instead, they always delegate to the lexical scope. In the root scope of an ES6 module, the lexical scope in this case would have an undefined