updated with non common-js versions