temporary added some comments and changed some identifier for better readability