added triangle.h