add client logic: