Man donates more than 100 gallons of blood