revamped OM_pattern selection
finished redo of iterate reco