V5:  comments added
V6