slight changes for better understanding :-)