Major (Core) : refactored ITrain