some changes and add pre defined classes for later