tested in firefox, chrome, and ie 8,9,10