polyfills, clean up