implement the HPSeparation proposed by Derry FitzGerald