updated for UIButton category