function get() {
var internal = 1;
return {
foo: function() { internal++; },
bar: function() { internal++; },
log: function() { print(internal); }
};
}
var obj = get();
obj.foo();
obj.log();
obj.bar();
obj.log();
ZnVuY3Rpb24gZ2V0KCkgewoJdmFyIGludGVybmFsID0gMTsKCXJldHVybiB7CgkJZm9vOiBmdW5jdGlvbigpIHsgaW50ZXJuYWwrKzsgfSwKCQliYXI6IGZ1bmN0aW9uKCkgeyBpbnRlcm5hbCsrOyB9LAoJCWxvZzogZnVuY3Rpb24oKSB7IHByaW50KGludGVybmFsKTsgfQoJfTsKfQoKdmFyIG9iaiA9IGdldCgpOwpvYmouZm9vKCk7Cm9iai5sb2coKTsKb2JqLmJhcigpOwpvYmoubG9nKCk7