for better understanding