The Butterfly Theorem

Given a circle centered at A through point B, let segment CD be any chord of circle A, and E be the midpoint of segment CD. Let segments FI and GH be any chords of circle A that pass through E, and construct two new chords using opposing endpoints of chords FI and GH ('opposing' wrt chord CD) so that the new chords intersect chord CD at J and K. Claim: Regardless of the choices made so far, E is also the midpoint of segment JK. (See )