crossbrowser optimization, partial structure changed, breakpoints fixed