cross-browser fixes