generated new version of gen_arbiter