Erratum: Should have open(....) || ... with parens, since || binds more tightly than comma. Another fix is to use or instead of || , since or binds more loosely than comma.