Updated with patterns for Label functions