uses FF_ARRAY_ELEMS() where appropriate