add Marco's gen IP code; CMSSW class def