improve client2