initial commit of client logic