Apply decorator pattern