What is the difference between an antigen and an allergen?