Circle inversion interactive

H = (-1.1906459119129784, 5.499255131248916)
G = (-0.40261271708712837, 6.024610594466149)
F = (-0.8929444827565466, 5.534278828796731)
E = (-1.6634658288084894, 5.6393499214401785)
A = (-1.2256696094607942, 6.042122443240057)
k = Conic(A, E, F, G, H)
q = (-3.5229173277403145, 4.159696608263197)
B = (0.5214395913732772, 1.703534643687371)
c_1 = Circle(q, B)
D = (0.1352233839289133, 5.19704889953)
C = (-0.7873480346498852, 5.97750372126434)
d = Circle(C, 1)
d' = Mirror(d, c_1)
c = Point(d)
h = Ray(q, c)
i = Ray(q, C)
a = Intersect(d, i, 1)
b = Intersect(d, i, 2)
poly1, i_1, h_1, g = Polygon(a, c, b)
α, β, γ = Angle(poly1)
b' = Intersect(d', i, 1)
a' = Intersect(d', i, 2)
c' = Intersect(d', h, 1)
poly2, f, e, j = Polygon(b', c', a')
δ, ε, ζ = Angle(poly2)
η = Angle(c, a, q)
θ = Angle(q, c', a')
ι = Angle(c, b, a)
κ = Angle(b', c', c)
I: (x(c), y(c))