modified sub_client