new idea: decorators work also as function