updated with zip