refactoring decora.