=over =item $EFFECTIVE_GROUP_ID =item $EGID =item $) X<$)> X<$EGID> X<$EFFECTIVE_GROUP_ID> The effective gid of this process. If you are on a machine that supports membership in multiple groups simultaneously, gives a space separated list of groups you are in. The first number is the one returned by C, and the subsequent ones by C, one of which may be the same as the first number. Similarly, a value assigned to C<$)> must also be a space-separated list of numbers. The first number sets the effective gid, and the rest (if any) are passed to C. To get the effect of an empty list for C, just repeat the new effective gid; that is, to force an effective gid of 5 and an effectively empty C list, say C< $) = "5 5" >. You can change both the effective gid and the real gid at the same time by using C (use only a single numeric argument). Changes to C<$)> require a check to C<$!> to detect any possible errors after an attempted change. C<< $< >>, C<< $> >>, C<$(> and C<$)> can be set only on machines that support the corresponding I routine. C<$(> and C<$)> can be swapped only on machines supporting C. Mnemonic: parentheses are used to I things. The effective gid is the group that's I for you, if you're running setgid. =back