decorator pattern is upped