commas added for self loops