restructure with new polyfills