class A:
    def __init__(self, txt: str):
        self.r: D = None
        self.q: C = None
        self.p: A = None
        self.v: A = None
        self.txt = txt

class B:
    def __init__(self, txt: str):
        self.t: D = None
        self.r: A = None
        self.txt = txt

class C:
    def __init__(self, txt: str):
        self.x: B = None
        self.t: A = None
        self.o: B = None
        self.s: A = None
        self.txt = txt

class D:
    def __init__(self, txt: str):
        self.v: C = None
        self.s: D = None
        self.q: D = None
        self.txt = txt

g = A("g")
e = B("e")
i = C("i")
d = D("d")
f = C("f")
l = B("l")
n = D("n")
m = C("m")
k = A("k")
a = B("a")

g.r = d
g.q = f
g.p = k
g.v = k
e.t = d
e.r = g
i.x = e
i.o = e
i.t = g
i.s = g
d.v = f
d.s = n
d.q = n
f.x = a
f.t = g
f.s = g
f.o = e
l.t = n
l.r = g
n.v = f
n.s = d
n.q = d
m.x = a
m.t = g
m.o = l
m.s = k
k.r = d
k.q = i
k.p = g
k.v = g
a.t = n
a.r = k
assert n.s.s.v.x.txt == "
class A:
    def __init__(self, txt: str):
        self.r: D = None
        self.q: C = None
        self.p: A = None
        self.v: A = None
        self.txt = txt

class B:
    def __init__(self, txt: str):
        self.t: D = None
        self.r: A = None
        self.txt = txt

class C:
    def __init__(self, txt: str):
        self.x: B = None
        self.t: A = None
        self.o: B = None
        self.s: A = None
        self.txt = txt

class D:
    def __init__(self, txt: str):
        self.v: C = None
        self.s: D = None
        self.q: D = None
        self.txt = txt

g = A("g")
e = B("e")
i = C("i")
d = D("d")
f = C("f")
l = B("l")
n = D("n")
m = C("m")
k = A("k")
a = B("a")

g.r = d
g.q = f
g.p = k
g.v = k
e.t = d
e.r = g
i.x = e
i.o = e
i.t = g
i.s = g
d.v = f
d.s = n
d.q = n
f.x = a
f.t = g
f.s = g
f.o = e
l.t = n
l.r = g
n.v = f
n.s = d
n.q = d
m.x = a
m.t = g
m.o = l
m.s = k
k.r = d
k.q = i
k.p = g
k.v = g
a.t = n
a.r = k
assert n.s.s.v.x.txt == "a"