add algorithm section