use join(), print fewer errors