A sequnece consensus algorithm implementation based on using directed acyclic graphs to encode multiple sequence alignment