Refactored mode field into two fields mode and kind to uncombine operation mode and application kind