add HALO and some cleanup