Three dead, dozens hurt after rally