Added decorator pattern.