# Mixed parity II

!distribute items $wims_read_parm into slib_n, slib_type, slib_formula
slib_1=!item 4 to -1 of $wims_read_parm

!default slib_static_random=!randint 1,6
slib_data=(x-1)*sLx[x],1,are both odd\
	x*(sLx[x]+1),1,are both even\
	(x-1)*sLx[x],0,are not both odd\
	x*(sLx[x]+1),0,are not both even\
	x+sLx[x],1,are of the same parity\
	x+sLx[x],0,are of different parity

slib_data=!line $slib_static_random of $slib_data
!distribute item $slib_data into slib_fm, slib_par, slib_txt

!exec pari sLx=[$slib_1]
slib_x=!exec pari vector($slib_n,x,($slib_fm)%2)
slib_x=!positionof item $slib_par in $slib_x
!if $slib_formula != $empty
 slib_list=!item $slib_x of $slib_1
 slib_sum=!sum $slib_formula for x in $slib_list
!else
 slib_sum=
!endif

slib_tq=!randitem such that, for which, where
slib_et=!randitem var_i and var_l[var_i], var_l[var_i] and var_i

slib_2=for all indices var_i $slib_tq $slib_et $slib_txt

slib_out=$slib_x\
$slib_2\
$slib_sum

