better decorator example