add additional logic to first robot to deal with sub-collections; bug fixes