added zip and enumerate