added Tanner's Room algorithm