The oxygen reduction reaction mechanism on Pt(111) from density functional theory calculations