decorator works