Follow doc  and require decorators