Updated ECMAScript compatibility & constructor