add a modifiable decorator and start using it for program/ice