How it happened
Bruno Damiani scored twice and earned a match rating of 10, the highest on the pitch, as Philadelphia Union came from a goal down to beat Chicago Fire 3-1.
Chicago led at the break through Haile-Selassie in the 44th minute. Then the game turned. Elliott was sent off for the home side in first-half stoppage time, at 45+1', and Philadelphia scored three times after the restart.
Milan Iloski levelled in the 49th minute. Damiani put the visitors ahead in the 55th and added the third in the 67th.
The numbers
Philadelphia had 19 shots to Chicago's eight, with eight on target against four. The expected-goals count was 2.23 to 0.84, and the corners 7 to 2. Possession was almost level at 51% to 49%, so the visitors did their damage without dominating the ball.
Damiani had 52 touches in his 80 minutes, created two chances and set up one goal as well as scoring two. His own expected goals came to 0.37, so two goals from that was a sharp return. Iloski's expected goals were 1.3, and he and defender Neil Pierre each had a match rating of 8.1.
Chris Brady kept the score down for Chicago with four saves and a match rating of 7.4.
What it means
The result runs against the table. Chicago are fifth on 51 points; Philadelphia are 12th on 42, nine fewer. The red card is the obvious reason the gap did not show.
Philadelphia's league sequence reads five wins, and across their last 10 matches they have won eight and drawn two, scoring 31 and conceding 11. Chicago's last 10 brought three wins, three defeats and four draws, with 16 scored and 18 conceded.
The sides have met 39 times, with 10 draws and an average of 3.15 goals a game. This one produced four. Chicago won the previous meeting 2-1 in March.