revised cross-browser section
removed fail()