modified version of  ngbp