Implemented trait requirements and Trait requires() method