msg : add decorator pattern