Please read the following table in HTML format from a webpage and then answer the question in detail according to the table. Each table cell is defined by a <td> and a </td> tag. Each table row starts with a <tr> and ends with a </tr> tag. 'rowspan=m' and 'colspan=n' represents a cell spaning over 'm' rows and 'n' columns.

Webpage title:
2019 Newport West by-election
Table title:
Previous result
Table:
<table id='hittask' contenteditable='False'>
<tr> <th colspan=2 rowspan=1 > Party </th><th colspan=1 rowspan=1 > Candidate </th><th colspan=1 rowspan=1 > Votes </th><th colspan=1 rowspan=1 > % </th><th colspan=1 rowspan=1 > ± </th></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td colspan=1 rowspan=1 > Labour </td><td class="highlighted"  colspan=1 rowspan=1 > Paul Flynn </td><td colspan=1 rowspan=1 > 22,723 </td><td colspan=1 rowspan=1 > 52.3 </td><td colspan=1 rowspan=1 > +11.1 </td></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td class="highlighted"  colspan=1 rowspan=1 > Conservative </td><td class="highlighted"  colspan=1 rowspan=1 > Angela Jones-Evans </td><td colspan=1 rowspan=1 > 17,065 </td><td colspan=1 rowspan=1 > 39.3 </td><td colspan=1 rowspan=1 > +6.8 </td></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td colspan=1 rowspan=1 > UKIP </td><td colspan=1 rowspan=1 > Stan Edwards </td><td colspan=1 rowspan=1 > 1,100 </td><td colspan=1 rowspan=1 > 2.5 </td><td colspan=1 rowspan=1 > 12.7 </td></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td colspan=1 rowspan=1 > Plaid Cymru </td><td colspan=1 rowspan=1 > Morgan Bowler-Brown </td><td colspan=1 rowspan=1 > 1,077 </td><td colspan=1 rowspan=1 > 2.5 </td><td colspan=1 rowspan=1 > 1.5 </td></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td colspan=1 rowspan=1 > Liberal Democrat </td><td colspan=1 rowspan=1 > Sarah Lockyer </td><td colspan=1 rowspan=1 > 976 </td><td colspan=1 rowspan=1 > 2.2 </td><td colspan=1 rowspan=1 > 1.7 </td></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td colspan=1 rowspan=1 > Green </td><td colspan=1 rowspan=1 > Pippa Bartolotti </td><td colspan=1 rowspan=1 > 497 </td><td colspan=1 rowspan=1 > 1.1 </td><td colspan=1 rowspan=1 > 2.0 </td></tr>
<tr> <th class="highlighted"  colspan=3 rowspan=1 > Majority </th><td class="highlighted"  colspan=1 rowspan=1 > 5,658 </td><td class="highlighted"  colspan=1 rowspan=1 > 13.0 </td><td colspan=1 rowspan=1 > +4.3 </td></tr>
<tr> <th colspan=3 rowspan=1 > Turnout </th><td colspan=1 rowspan=1 > 43,438 </td><td colspan=1 rowspan=1 > 67.5 </td><td colspan=1 rowspan=1 > +2.6 </td></tr>
<tr> <th colspan=3 rowspan=1 > Registered electors </th><td colspan=1 rowspan=1 > 64,399 </td><td colspan=1 rowspan=1 >  </td><td colspan=1 rowspan=1 >  </td></tr>
<tr> <td colspan=1 rowspan=1 >  </td><td colspan=2 rowspan=1 > Labour hold </td><th colspan=1 rowspan=1 > Swing </th><td colspan=1 rowspan=1 > +2.2 </td><td colspan=1 rowspan=1 >  </td></tr>
</table>
Question:
How did Paul Flynn do in the 2019 Newport West by-election compared to Angela Jones-Evans, and what was the margin of victory?
Answer:
Paul Flynn was elected with a majority of 5,658 over the Angela Jones-Evans.