Add decorator design pattern