Identify duplicates between leads and contacts to either delete or merge

Identify duplicates between leads and contacts to either delete or merge

What is the simplest way of....

Example 1: Identifying duplicates across leads and contacts

What is the simplest way to identify 'duplicate' records across leads and contacts based on email address? ie. identify all the records that exist as both a lead AND a contact.

Example 2: Merging / dedupe duplicates across leads and contacts

We have a contact with a deal. This 'contact' also exists as a 'lead'. All previous communication is within the 'lead'. I would like to merge these records into the 'contact' so communication is not lost. Is this possible? If so, how can we do it?

Thanks