Why 6 points are concyclic?

Author:
Terry Tam
ABC is a triangle. From every vertice, extend its sides in two ways, with the length equal to the opposite side. The resulting points are D, E, F, G, H and I respectively. a) Why are points D, E, F, G, H and I concyclic? b) Slide to rotate the triangle ABC about point O. Although all the objects are rotated, the resulting points D', E', F', G', H' and I' reside on the same circle with a). What is the point O for triangle ABC?