exports.get_char_at = function() { return "foo".charAt; }; exports.Rectangle = class { constructor(x, y){ this.x = x, this.y = y } static eq(x, y) { return x === y; } }; exports.Rectangle2 = class { constructor(x, y){ this.x = x, this.y = y } static eq(x, y) { return x === y; } }; exports.throw_all_the_time = () => new Proxy({}, { getPrototypeOf() { throw new Error("nope"); }, setPrototypeOf() { throw new Error("nope"); }, isExtensible() { throw new Error("nope"); }, preventExtensions() { throw new Error("nope"); }, getOwnPropertyDescriptor() { throw new Error("nope"); }, defineProperty() { throw new Error("nope"); }, has() { throw new Error("nope"); }, get() { throw new Error("nope"); }, set() { throw new Error("nope"); }, deleteProperty() { throw new Error("nope"); }, ownKeys() { throw new Error("nope"); }, apply() { throw new Error("nope"); }, construct() { throw new Error("nope"); }, });