refactored label and associated methods