full pipeline TODO