Include comments and corrections from @eteq