In the following two cases, why are the assignments to $b parsed differently to the assignments to $a? % pz() { print -rl -- ${(qqqq)${(z)1}} } % pz 'a=() b=()' $'a=(' $')' $'b=' $'()' % pz 'a=(foo) b=(bar)' $'a=(' $'foo' $')' $'b=(bar)' Thanks, Daniel